> Моё первое знакомство с subj началось с Delphi. Сперва были > трудности с освоением, потом восторг типа «ну вот, окошки > хлопают, есть in-line assembler, мощный отладчик и VCL. > Потом начала потихоньку брать злоба вроде «нет функций > in-line», «нет перегрузки функций» и проч., а VCL оказался > пародией на нормальное объектно-ориентированное > программирование. Кое-что со временем улучшалось (к > примеру, появилась перегрузка функций), но главная проблема > в плане невозможности сколько-нибудь серьёзного изменения > работы встроенных классов осталась — к примеру, однажды > написанный борландовский компонент почти невозможно > изменить коренным образом, не открывая его исходники и не > переписывая его заново, потом добавляешь «свой» компонент в > палитру и вот, наслаждайся… Новый, но уже свой геморрой ;-) > Потом послушал советы бывалых зубров, типа «Паскаль это > ламерство» и надо, мол, тебе переходить на C++. Ладно, > думаю, пусть будет поменьше крови в процессе переучивания, > попробую C++ Builder… Ага, вот вам вся мощь C++, но там > VCL, который взят из Delphi, да ещё и в объектных > библиотеках, так что всем понятно, что для изменения > компонент запускаешь Delphi и вперёд ;-))) > За Microsoft С++ серьёзно пока не брался, но даже на этом > форуме многие плюются на его MFC. > Из бесплатных компилеров попробовал легендарный Watcom C, и > всё в нём хорошо, исключая IDE, который хоть и облегчает > программирование (ну там редактор с подстветкой операторов > и визуальное управление параметрами командной строки > компилятора\линкера). Но вот формы создавать более-менее > быстро или палитры обектов кода там нет, > Предвижу возражения типа «раньше писали код в обычном > редакторе и запускали компилер из командной строки», но > ведь XXI век на дворе, насколько я понял ;-) > Всё больше склоняюсь к выводу, что компиляторы на самом > деле круты, неважно, Delphi это или C++, поскольку писали > их умные люди, технари, которые отменно знают > низкоуровневые особенности компьютера и которым на > «обычного» человека наплевать, поскольку у них всё работает > отменно ;-) Но вот потом, когда эти же люди начали писать > объектные библиотеки, пошёл бардак. А то, что писали не > они, вообще никуда не годится ;-) > И ещё у меня есть сильное подозрение, что «трёхкитовая» > модель (инкапсулирование, наследование, полиморфизм) до сих > пор «хромает» в третьем ките — полиморфизме, по крайней > мере, его поддержка в современных средах IDE. Я максималист > по натуре, меня вообще раздражает текстовое окно редактора > кода, как таковое ;-) Ведь в принципе, «кирпичики» кода по > своему смыслу одинаковы, неважно на каком языке они > пишутся. Операции с данными, доступы к методам или полям и > проч. Объекты тоже штука достаточно абстрактная… > Я вот всё это к чему. Когда наконец появится среда > программирования, отвязанная от языка как такового — некий > конструктор приложений, в котором наглядно и динамично > представлена логика будущего приложения? > В котором объекты являются просто шаблонами будущей логики, > с возможностью гибкого изменения этой логики «на лету»? > Вот, к примеру Проводник M$ Windows (не плюйтесь, плз) — > типичный пример браузера логических структур (в котором > объекты это ресурсы компьютера). Разве нельзя подобным > образом «браузить» и создавать абстрактную логику будущего > приложения? > А то вот что получается — компилятор разбирают текстовый > код на логические структуры, потом из этих структур генерит > низкоуровневый код, а потом эдакая штука, называемая > «компоновщиком», генерит исполняемый файл. А у программиста > в голове уже есть эти логические структуры, когда он пишет > софт, но ему их надо кодировать в языке. Налицо «лишний» > этап создания приложения. лексический анализ необходимый этап создания программы по той простой причине, что человек должен иметь формальный
> Народ, выскажитесь, плз, кто что думает. > > Сегодня понедельник, наверное просто тяжёлый день ;-)
|