На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Название темы должно быть информативным !
Прежде чем задать вопрос, воспользуйтесь Поиском. и проверьте в FAQ (ЧАВО) Паскаля
Чтобы получить вразумительный ответ, подробно опишите проблему: что надо сделать, что не получается и номер ошибки (если есть), которую выводит компилятор.
Для вставки кода ваших программ используйте, пожалуйста, кнопку СODE=pas или выпадающий список СODE для других языков (подсветка синтаксиса).
[!] Как правильно задавать вопросы | Руководство по языку B.Pascal 7 & Objects/LR | Borland Pascal. Руководство пользователя
Модераторы: volvo877
Закрыто volvo877 09-08-2007: Хватит уже раздувать эти темы. Не нравится - не пользуйся. Нравится - пользуйся. Точка...

Страницы: (4) 1 2 [3] 4  все  ( Перейти к последнему сообщению )  
> Перспектива Паскаля , Работа
    All

    Хочу сказать и свои пять копеек.
    ИМХО Паскаль не умрет никогда, т.к. создавался для обучения программированию. То есть он осваивается достаточно легко (я бы сказал, очень легко), в сжатые сроки. И на нем можно писать самые серьезные исследовательские вещи.

    А вот Ansi C я несколько раз брался учить, но так и не сдвинулся с мертвой точки (не говоря уже о С++). Никак к симантике привыкнуть не могу :angry: Создается ощущение, что симантика С сохранилась со времен, когда жесткие диски были по 360 Килобайт. И приходилось сильно экономить на объемах кода. И перлов симантики С можно привести на порядок больше, нежели перлов Паскаля (знаменитые a:=b вместо a=b, а больше и в голову ничего не приходит).
    Поэтому лично для меня не понятно, почему до сих пор есть люди, которые радуются, что на ansi C можно написать группу операторов из 30 символов, со смыслом которых можно полдня разбираться (близко к тексту по Кэрнигану/Ричи). Вообще непонятно, зачем такие группы операторов нужны и зачем так писать программы.
    Обяснить это можно 360 Килобайтными винчестерами. Тут наверное есть разница, занимает фрагмент кода 30 байт или 300 байт (в последнем случае понятный код, как на Паскале).
    В общем, не скрою, язык ansi С вызывает лично у меня довольно большое раздражение.

    Итак, мое мнение таково.
    1. Язык Паскаль незаменим для людей, которые не занимаются программированием профессионально, но тем не менее часто программируют по роду своей профессиональной деятельности. Кто эти люди? К ним можно отнести большинство студентов и, например, ... обширную группу научных сотрудников. Сам являюсь научным сотрудником.
    Мне нравится Паскаль тем, что 95% времени я занимаюсь исследованиями и только 5% времени непосредственно программированием (язык легко учится и применяется!) для проверки результатов исследований.
    Я пытался перейти на Delphi, но счел это нецелесообразным, ибо изучение объектов и мотодов их использования жрет много времени. Тут соотношение примерно таково: 45% времени уделяется исследованиям и 55% - программированию, которое зачастую помимо изучения объектов Delphi требует еще и изучения API функций Windows. КПД по роду основной деятельности снижается!
    Про ansi C я уже помолчу.

    2. Теперь насчет языка С. ИМХО это язык для системщиков и для людей, создающих нестандартные объекты Windows (да и стандартные объекты Windows). Также ИМХО невозможно стать грамотным системщиком без знания С. Возьмем, например, любой *nix (Linux, FreeBSD, ...). Ведь там даже элементарная Shell есть выжимка С.
    Существует большое количество цифровых устройств, для которых существует С. Я вот давным-давно увлекаюсь КПК и был поражен, что существуют компиляторы С для всех платформ КПК: Newton Message Pad, Psion (Symbain), Palm, Win CE (PPC), Sharp (тут понятно - Linux). А вот компиляторы Pascal есть только для Palm и Sharp, да и то не от Вендоров железа, а от энтузиастов.
    Тут народ поднимал вопрос - а что это такое может ansi C, чего не может classic Pascal? (Кстати, тут как раз примеры привести можно).
    А вот найти принципиальное преимущество, скажем, GNU C перед GNU Pascal уже на порядок сложнее.
    Кстати, у Паскаля с моей точки зрения есть заметное преимущество перед С с точки зрения простого смертного - граздо более понятная симантика. И если бы ОС писались на Паскале, то ИМХО ошибок в них было бы на порядок меньше. Эти ошибки кричали бы в глаза прямо в тексте программ, чего, думаю, нет в С.
    Ansi C стал языком системщиков скорее всего только потому, что он гораздо раньше Паскаля появился на свет и лучше распорядился своей форой во времени.
    Это как с Microsoft. Почему они монополисты? Потому что начали одни из первых и потому, что грамотно распорядились своими прибылями. Хотя всегда были и есть ОС, потенциально лучшие, чем Windows (это OS2, Mac OS десять лет назад или *nix сегодня). Но к Win уже привыкли сотни миллионов людей, как и десятки тысяч системщиков привыкли к ansi C.

    P.S. Заранее прошу прощения за некоторый каламбур в мыслях. Я не профессиональный программист и не системщик, но иногда соприкасался по жизни и с необходимостью писать программы, и с системным администрированием. И тут меня всегда раздражали пару вещей - симантика С и 5000 API-функций Windows, которыми должен овладеть системный программист.
    Ну а в этой ветке, как мне показалось, великолепный язык Pascal незаслуженно принижен.
      Читая учебник по Яве наткнулся на мнение, что все навороты С++ полный никому не нужный изврат, и для виндовс-приложений достаточно самого минимума. По-моему в этом есть очень-очень большое рациональное зерно.
      Да вот еще, не очень догнал как Паскаль может спасти от необходимости знать API.

      ________________________________________________________________________________
      Нас багато і нас не подолати!!!
      Сообщение отредактировано: ZenIA -
        Цитата ZenIA,7.12.04, 01:58 @
        Читая учебник по Яве наткнулся на мнение, что все навороты С++ полный никому не нужный изврат, и для виндовс-приложений достаточно самого минимума. По-моему в этом есть очень-очень большое рациональное зерно.
        Да вот еще, не очень догнал как Паскаль может спасти от необходимости знать API.

        ________________________________________________________________________________
        Нас багато і нас не подолати!!!

        > Да вот еще, не очень догнал как Паскаль может спасти от необходимости знать API

        Никак :)
        Просто ИМХО надо грамотно выбирать среды разработки приложений. Можно, конечно, ваять прикладные программы в Delphi или еще чего доброго на C++, но я пока выбрал для себя следующий путь разработки прикладных приложений.
        Итак, из чего состоит прикладная программа (игры и прочую красоту не беру в счет)?
        1. База данных, для хранения пользовательских данных. Средства для набора, изменения, удаления данных.
        2. Интерфейс программы.
        3. Набор отрабатываемых документов.
        4. Алгоритмы преобразования и исходных данных в документы (конечные данные).
        5. Печать документации.
        Когда я попытался такую, в принципе ИМХО типовую прикладную программу наваять в Delphi, то столкнулся с МАССОЙ проблем. В Borland Pascal Turbo Vision таких проблем было в 100 раз меньше.

        Сейчас я пробую разрабатывать такую типовую программу по-другому, а именно в виде типового web-сайта.
        1. База хранения пользовательских данных - MySQL.
        2. Шаблоны документов хранятся и представляются пользователю Apache-сервером. Документы и интерфейс - типовая web-страница.
        То бишь все документы отображаются в виде типовой HTML-страницы.
        3. Данные для выдаваемых документов вычисляются либо препроцессором PhP, либо, если алгоритм расчета выдаваемых данных сложен, то - компилятором (ansi С или classic Pascal без всяких API) в виде CGI-скрипта.

        При создании такой программы используется одна классика, я бы сказал стандарты - языки SQL, HTML, ansi C, Pascal. Правда, к этой когорте классики трудно отнести PhP и может быть Perl.
        К сожалению, от ansi C мне будет трудно избавиться, ибо JavaScript, PhP, Perl - ИМХО выжимки С с похожей симантикой.
        Тем не менее, несмотря на наличие выжимок классического С, от объектов API-Windows при таком подходе удается избавиться.

        При помощи такого набора софта скорее всего будет невозможно создавать компьютерные игры и прочие сложные и красивые графические программы. Но речь идет о серьезном прикладном софте со сложными алгоритмами обработки исходных данных и с табличными выходными документами...

        Что мы получаем.
        1. Кроссплатформенность. Написанный код HTML, PhP, программы для CGI-скриптов, MySQL-запросы и т.п. скорее всего не придется перепысывать при переходе от одной системы к другой (Linux, Win, FreeBSD). Более того, серверная часть софта может работать под одной операционкой, а пользователь - под другой.
        Максимум, что придется сделать, - откомпилировать CGI-скрипты в новой ОС.
        2. Изначально софт будет сетевым. Без всякого дополнительного геморроя и ухищрений. Правда, сетевой протокол - ИМХО только TCP/IP.
        3. Документы (в т.ч. и сложные табличные) без всякого геморроя втягиваются в любые современные офисные пакеты в HTML-формате. Это MS Office, OpenOffice.
        По этому пункту, помнится, я испытал "эстетическое" наслаждение, передавая документ из Delphi-программы в MS Excel...
        4. Открытость исходного кода перечисленного серверного софта и средств разработки. Это важно для некоторых режимных организаций РФ.
        5. Защита данных и программы от несанкционированного использования достаточно просто делается...

        При такой подборке софта я рассчитываю процентов 60 времени уделять разработке алгоритмов обработки данных, и только 40% - рисованию таблиц и прочей галиматьи.

        P.S. 1. Просьба покритиковать такую точку зрения.
        2. Эти проблемы свойственны ИМХО только России и только бюджетным организациям с их постоянным дефицитом финансирования. Если дело поставлено нормально, то, скажем, алгоритм игры в шахматы разрабатывает одна группа людей (фактически ученых), а рисованием фигурок, интерфейса и прочей лабуды занимаются другие люди, которых можно назвать инженерами.
        А у нас кое-где приходится совмещать в одном лице и инженера, и научного работника...
          Полезно знать хоть какой-то язык программирования. паскаль легче учится чем СИ и в вузах(до институтских) в оснавном изучают Паскаль. Переходить с паскаля на Си трудно.
          Сообщение отредактировано: DimA3 -
            Цитата DimA3,9.12.04, 13:28 @
            Переходить с паскаля на Си трудно.

            Трудно привыкнуть к дурацкой симантике ansi C. Например, кто придумал для логического И писать && ? ИМХО гораздо проще написать and.
            Или символ НЕ РАВНО !=
            Что за язык пляшущих человечков, как в Конан-Дойле? Понятнее <> (хотя этот набор символов, наряду с := есть один из недостатков Паскаля).
            То есть Паскаль гораздо ближе у обычному, человеческому языку. А форматирование сторки вывода в С - отдельная песня. С непривычки выглядит как нечто !$&^/*(S^^# - очень понятно! Конечно, если к этому маразму привыкнуть, то можно творить чудеса. Это то, что я говорил выше - написать 30 символов, чтобы твой последователь полдня разбирался с работой такого кода.

            Ну а учить ansi C придется, если захочешь поглубже разобраться в Linux (shell, командная строка, скрипты запуска системы), изучить Perl, JavaScript, PhP, Java. Это все С-подобные языки.
            Но есть здесь и исколючения, например, стандарт SQL гораздо ближе к Паскалю, чем к С. Тут, слава Богу, разработчики не страдали маразмом.
            M
            Сообщения были разделены в тему "Вычисление таблицы значений функции"
            Сообщение отредактировано: Song_Bot -
              Будущее у Паскаля несомненно есть, и называется оно Delphi ;)
                Два слова по поводу семантики ANSI C. На данный момент времени, именно она (семантика ANSI C) является стандартом de-facto, на основе которой разрабатывались многие популярные языки программирования начиная с Java и заканчивая PHP, JavaScript, Action Script (Macromedia Flash) и т.д. Т.е. без знания семантики ANSI C сейчас никуда. Стало быть, знать ее необходимо каждому, кто хочет изучать другие языки программирования.
                  Я не знаю, как насчет Ansi C, а в C++ (вроде должно быть одно и тоже, но лучше оговориться) есть мелкие недостатки, которые ИМХО портят весь вид. А именно - невозможность вложения функций. Затем объявлять переменную в цикле - это просто гениально придумано, но вот объявлять переменную в блоке где угодно - это не для меня - только в начале. В C-шном синтаксисе есть очень много хорошего (и даже "язык пляшущих человечков" не сильно мешает), но вышеперечисленные (имхо) недостатки портят весь процесс отладки, обнаружения ошибок. Кто программировал и там (на паскале) и там (на С) знает, где ошибка указывается точно на 100%. С очень хороший язык с его симантикой. Почему? Потому что программист понимает компьютер с полуслова, с одной буквы, но опять же, это только профессионал.

                  P.S. Люди, учите сразу С, с Паскаля ОЧЕНЬ сложно перейти на С.
                    Цитата Hubba-Bubba @
                    P.S. Люди, учите сразу С, с Паскаля ОЧЕНЬ сложно перейти на С.

                    Полностью согласен. Благо литературы для изучения С полно.
                    Вот мне тоже придется учить "нелюбимый" С, ибо придется ваять сложную программу-веб сайт. Там будут и JavaScript, и CGI-модули.
                    В виде веб-сайта софт хочу делать потому, что очень неохота учить C++ и Delphi. Хочется обойтись изучением языков, максимально приближенных к классическим.
                    Мне там математических засад хватает и дополнительно учить API-функции ну крайне не хочется. Времени просто нет.

                    Вот после С на Паскаль переходить на порядок проще...
                      mkudritsky, Pascal Server Pages ;)
                        Цитата Hubba-Bubba, 17.01.2005, 20:30:27, 580608
                        P.S. Люди, учите сразу С, с Паскаля ОЧЕНЬ сложно перейти на С.


                        Hubba-Bubba, где ж ты раньше был? :D Я учил BAS, потом PAS, потом ASM, а вот теперь с C - ужасно мучаюсь, и знание асмы не помогает - слишком к Паскалю привык... :wacko:
                          Цитата --= Eagle =-- @
                          учил BAS

                          Ну вот это совсем уж зря...
                            Цитата Eiden @
                            Ну вот это совсем уж зря...

                            А почему зря? Аргументы хотелось бы слышать.
                            Я прошел такой путь развития:
                            Примерно одновременно меня начали потчевать BASIC-ом и LISP-ом. Потом пришел Pascal. Далее - Prolog, Mercury. Вот сейчас изучается SmallTalk, C++ и LISP с объектными добавками
                              [I]Я бы сказал проще что каждый программирует в своем стиле если он программирует на с++ то зачем ему изучать паскаль ?? :whistle:
                                Насчет перспективы паскаля
                                посмотрите эту ветку форума и вам кое-что прояснится Язык программирования Алмаз
                                кто хочет может прокоментировать.
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (4) 1 2 [3] 4  все
                                Закрыто volvo877 09-08-2007: Хватит уже раздувать эти темы. Не нравится - не пользуйся. Нравится - пользуйся. Точка...



                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0478 ]   [ 16 queries used ]   [ Generated: 28.03.24, 22:41 GMT ]