Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
У страуструпа есть целая глава про частые ошибки при разработке программ на С++ 28.07.03 15:45 Число просмотров: 1663
Автор: amirul <Serge> Статус: The Elderman
|
> За Microsoft С++ серьёзно пока не брался, но даже на этом > форуме многие плюются на его MFC. К примеру я плююсь на MFC из-за его монстрообразности. Но ведь еще большая монстрообразность борландовских продуктов и библиотек не мешает людям их юзать. Просто для некоторых это не является главным.
> Предвижу возражения типа «раньше писали код в обычном > редакторе и запускали компилер из командной строки», но > ведь XXI век на дворе, насколько я понял ;-) Гы, об этом ниже. :-)
> объектные библиотеки, пошёл бардак. А то, что писали не > они, вообще никуда не годится ;-) Тут особо сказать нечего, можно писать на CPP но не использовать обертки для WinAPI. То бишь строить свою иерархию классов, а не встраиваться в чужую.
> кода, как таковое ;-) Ведь в принципе, «кирпичики» кода по > своему смыслу одинаковы, неважно на каком языке они > пишутся. Операции с данными, доступы к методам или полям и > проч. Объекты тоже штука достаточно абстрактная… > Я вот всё это к чему. Когда наконец появится среда > программирования, отвязанная от языка как такового — некий > конструктор приложений, в котором наглядно и динамично > представлена логика будущего приложения? А теперь о сабже. Среди таких ошибок как "использование C++ в стиле C", "отказ от наследования" и т.д., есть такая интересная ошибка "отказ от программирования" :-) Не помню всех аргументов и последствий, но предостерегается именно от такого "гипер-визуального программирования". Кому интересно, может почитать у страуструпа.
Я же могу сказать, что если такая визуальная среда программирования достигнет уровня универсальности C/C++, программировать на ней станет не легче, чем на самих C/C++. Потому как сейчас все визуально-ориентированные среды (RAD-среды) удобны для новичков только тем, что ограждают его от лишних сложностей. Но вот когде человек уже и сам в состоянии контроллировать это "лишние сложности", среда чаще всего продолжает ограждать. И тогда приходится или отказываться от среды или находить извращенные способы обхода препятствий.
> В котором объекты являются просто шаблонами будущей логики, > с возможностью гибкого изменения этой логики «на лету»? > Вот, к примеру Проводник M$ Windows (не плюйтесь, плз) — > типичный пример браузера логических структур (в котором > объекты это ресурсы компьютера). Разве нельзя подобным > образом «браузить» и создавать абстрактную логику будущего > приложения? Кстати, пример довольно показательный. Проводник в винде может показывать самые разнообразные типы объектов, но если попробовать на основе того же проводника сделать например калькулятор или криптопакет, то возникнут сложности, которые обойти то можно, но с гораздо большими затратами, чем если использовать нечто более универсальное.
> А то вот что получается — компилятор разбирают текстовый > код на логические структуры, потом из этих структур генерит > низкоуровневый код, а потом эдакая штука, называемая > «компоновщиком», генерит исполняемый файл. А у программиста > в голове уже есть эти логические структуры, когда он пишет > софт, но ему их надо кодировать в языке. Налицо «лишний» > этап создания приложения. Для большинства более-менее нужных предметных областей есть ОО-библиотеки, моделирующие сущности этой предметной области. Если такой библиотеки нет, ничто не мешает писать все с нуля. А если она действительно нужна человечеству, но почему то до сих пор не была написана - она уйдет за большие деньги (это в том смысле что написание своих библиотек довольно оправданно). А если никому не нужна, так незачем и обвинять кого-то что не написали.
> Народ, выскажитесь, плз, кто что думает. Получилось довольно сумбурно, но общая идея понятна.
> Сегодня понедельник, наверное просто тяжёлый день ;-) Да уж %-/
|
|
|