БОЛЬШОЙ ШКОДИНГ, ИЛИ ВЫБИРАЕМ СРЕДСТВО РАЗРАБОТЧИКА

Tony (tony@nifti.unn.ru)

Спецвыпуск Xakep, номер #017, стр. 017-106-2


В КРАСНОМ УГЛУ РИНГА - VISUAL C++

VC++ входит в состав огромной девелоперской среды MS Visual Studio (MSVS). Кроме сабжа, здесь еще тусуются с приставкой Visual: Java, Interdev (используется для разработки интернет-файлов: html, xml, asp и прочих), Fox Pro (для работы с базами данных), Basic (о нем чуть ниже) и куча утилей. Впрочем, речь не о них, а именно о VC++. Возможно, фанаты Delphi сейчас скривятся в кислой гримасе и побегут за тухлыми яйцами и гнилыми помидорами. Тем не менее я обязан перечислить достоинства VC++ (тем более, что за это мне платят деньги, и к несчастью, пока только редакция... ау!.. Билли! :))

БОЧКА МЕДА

Visual C++ - самое демократичное и универсальное из всех представленных сегодня на рынке средств разработки. Хотя бы потому, что изначально эта среда предназначалась для разработки системного софта и библиотек. С его помощью разрабатываются абсолютно все громадные проекты, такие как MS Office, всевозможные игры, сервера, компоненты и так далее. Любая фирма, которая занимается разработкой чего-либо крупного (исключая базы данных, но об этом чуть позже), требует при найме на работу обязательное знание VC. Программер сам волен выбирать, как ему работать - среда относится к этому монопеннисуально. Можно использовать MFC, а можно и не использовать и обращаться напрямую к функциям win32 API; линковку можно осуществлять как статически, так и динамически - это по барабану, mfc42.dll есть теперь в любой виндузе. Можно опускаться на самый нижний уровень, разрабатывая критические к скорости исполнения участки кода на ассемблере, используя инструкции MMX, SSE и 3DNow!, обращаясь напрямую к нужной области памяти, а можно работать и на уровне COM-интерфейсов, полностью абстрагируясь от платформы. Большинство библиотек, не входящих в MSVS, разрабатывается на Си* и в своей поставке, соответственно, имеет Си*'шные заголовочные файлы и шаблон библиотеки (lib); портирование для пасквиля либо вовсе не осуществляется, либо осуществляется позднее, а в худшем случае - вообще сторонними разработчиками. В нормальных условиях набора стандартных элементов (Common Controls) управления достаточно для реализации пользовательского интерфейса. Если не хватает - к услугам девелопера пара сотен элементов управления ActiveX или возможность самому разработать нужный ему уникальный контрол. Что-то хочешь сказать? А, ну да, инкапсуляция, наследование, полиморфизм... как все это сложно - VC++ не удобен для прикладного программирования. Бред! Я знаю полно людей, которые ни ухом ни рылом ни черта не понимают (и, видимо, уже никогда не поймут :( ) в этих трех терминах, тем не менее вот уже пять лет колбасятся на VC++ (привет группе 554 ННГУ). Но если серьезно, то, действительно, для нормальной работы эта среда разработчика предъявляет к пользователю достаточно серьезные требования как в знании самого языка С++, так и в понимании основных концепций Windows. Системная ориентированность среды накладывает серьезный отпечаток обуви 46-го размера на работе, и в основном пользователю приходится взаимодействовать с кодом. В общем, все это на самом деле вторично, а первично то, что С++ является системным стандартом виндузы, а object pascal (я имею в виду, конечно, Delphi и косвенно C++ Builder) таким стандартом не является и, видимо, являться уже не будет никогда. Ну да ладно, шоколада хватит, пора подавать другое вещество такого же цвета...

Назад на стр. 017-106-1  Содержание  Вперед на стр. 017-106-3