Главная » C++, C++ Builder » Обзор C++ Builder

0

Что такое C++ Builder?

Вокруг C++ Builder, настоящего  инструмента RAD (Rapid Application Development, быстрой разработки приложений) на C++ для Windows, в программистской среде поднят большой шум. Без сомнения, до вас дошли его отголоски, и то, что вы открыли эту книгу, похоже означает, что вы достаточно сильно заинтересованы, чтобы попробовать его на вкус. Название книги предполагает, что вы, по крайней мере, немного знакомы с предметом и хотите узнать о нем побольше. Перед тем как перейти к детальному  описанию  системы,  рассмотрим  общую  картину:  что  делает C++ Builder таким мощным инструментом и почему это так важно в индустрии программных средств? Для начала давайте избавимся от неудобоваримо длинного имени и во всей книге будем называть интегрированную среду разработки C++ Builder просто CBuilder. Мы, конечно, могли бы сократить название и просто до Builder, но это вызовет  проблемы при  разговоре о  JBuilder — среде фирмы Borland для создания приложений Java.

CBuilder —  один  из самых  первых   инструментов  RAD  для  C++,  и  единственный  инструмент

RAD, который предоставляет возможность программирования в стиле drag-and-drop (перенести-и-

бросить), основанного на компонентах. Трудно переоценить влияние, которое приобрел этот стиль программирования под Windows в последние несколько лет. Изначально программирование под Windows было полным ошибок кошмаром, включавшим в себя редактирование текстов под MS- DOS, компиляцию, компоновку и использование SDK (Software Development  Kit,  прикладной пакет разработки). Неудивительно поэтому, что первые программы под Windows были полны ошибок и требовали годы на разработку. Современные программы пишутся за недели вместо лет (и по-прежнему полны ошибок, но это отдельный разговор). CBuilder, как вы  узнаете  из  этой книги, поможет разрабатывать приложения не только быстрее, но и с меньшим количеством ошибок.

Первой    ступенью    эволюции    программирования    под    Windows    стало    появление    языка

программирования C++ и библиотек классов C++, которые  заключали в себе сотни строк кода, необходимых даже для простейшего отображения окна на экране, и представлялись в программе на C++ всего несколькими строчками. Этот код попросту заключает несколько сот строк кода на С в классы С++. Теперь мы не только избавлены от необходимости писать эти сотни строк, но и количество ошибок в коде, заключенном в классах С++, уменьшается фантастическим образом. В конце концов, после того, как код единожды написан и отлажен, его не надо переписывать заново. Код, который не переписывался, вряд ли станет источником новых ошибок. Запомните  этот момент — в дальнейшем он станет очень важен!

Вторым поколением средств разработки для Windows стало появление средств интегрированной среды разработки (Integrated Development Environment, IDE). Эти средства позволяют программисту редактировать, компилировать и компоновать программы непосредственно в одном приложении. Интегрированные средства отладки появились чуть позже и были быстро взяты на вооружение программистами. Трудно объяснить вам, насколько эти новые средства были великолепны, если вы никогда не писали программы под Windows, используя раздельные специализированные средства. Если у вас есть знакомые, которые занимались этим в  старые добрые времена (скажем, до 1990 года), спросите у них, и я уверен, что они с радостью поведают вам, насколько это было ужасно (даже если опустить подробности о  прогулках под  дождем  в другое здание, чтобы откомпилировать там программу).

Следующий  шаг  эволюции  средств  разработки  стал  результатом  развития  концепции  каркасов

(framework). Каркас — это основа, скелет вашего приложения,  который  объединяет  в  себе  все части Вашего приложения. Каркасы кода действительно очень похожи  на  стены,  балки, водопровод и электрические коммуникации строительных каркасов зданий. В ретроспективе, концепция каркасов кода, пожалуй, была шагом назад или скорее в сторону, хотя многие с этим не согласны и остаются верными приверженцами средств программирования, поддерживающих данную концепцию. Опять же, до сих пор найдется немало людей, утверждающих, что MS-DOS — вполне жизнеспособная операционная система. Причина, по которой мы считаем каркасы шагом назад, проста. Вместо того, чтобы сделать программирование более простым и гибким, каркасы вынуждают нас писать программы по заранее определенным жестким правилам.

Настоящей проблемой технологии каркасов является их ограничения. Несмотря на то, что каркасы действительно ускоряют разработку приложений, предоставляя в распоряжение разработчика многие из основных функций нормального Windows – приложения, они сразу же встают на пути приложения, которое не укладывается в привычные рамки. Если вы когда-нибудь пытались сделать что-то, что каркас не предоставляет (или хуже того, делает не так, как вам бы хотелось), вы меня, конечно, поймете. Как только вы пытаетесь сделать что-то нетривиальное, каркас тут же становится похож на модные красивые ботинки, которые жмут.

Замечание

Если вы не верите в проблемы, возникающие при использовании средств разработки, использующих каркасы, примите во внимание следующее: фирма Microsoft  практически отказалась от усовершенствования своей библиотеки классов — MFC в пользу новых технологий ActiveX и COM (которые основаны на компонентах). Мне кажется, что все технологии, основанные на каркасах (MFC, OWL и другие), исчезнут в не очень отдаленном будущем.

Так что же, отказаться от каркасов и вернуться к старому прямолинейному стилю программирования с сотнями строк на C и миллионами ошибок? Конечно нет. Есть кое-что получше каркасов: программирование, основанное на компонентах. Компоненты — это строительные блоки для приложений. Вы используете специализированные объекты-компоненты со своими возможностями и объединяете их так, как вам нужно для достижения ваших целей. Не важно, какое приложение вы разрабатываете — компоненты сами по себе не навязывают вам никакой структуры. Компоненты, например, являются основой ActiveX-технологии, являющейся краеугольным камнем Интернета.

В  CBuilder  работа  с  компонентами  организована  очень  хорошо.  Просто  и  понятно.  Как  и

большинство хороших программ, CBuilder работает просто и  последовательно,  во  многом благодаря тому, что сам построен на компонентах. Каждая часть системы выполняет свою функцию и делает это настолько просто и легко, насколько  возможно.  Компоненты  настолько близки к «чистому» программированию на C++, насколько  вы только  можете пожелать и существенно облегчают весь процесс разработки. Вот главная черта CBuilder: это первый по- настоящему основанный на компонентах инструмент RAD.

Подождите, это еще не все

Есть еще один аспект CBuilder, на который многие программисты не обращают внимания в усердных попытках освоить мир визуальных форм CBuilder. Не слишком глубоко в системе CBuilder зашита невероятно мощная и чрезвычайно гибкая среда программирования баз данных. CBuilder является по существу первой системой программирования баз данных для C++.

Во многих системах разработки приложений на C++ интерфейс с базами данных часто выглядит как запоздалая идея сделать некоторые фрагменты баз данных доступными программисту в виде жестко навязанного узкого круга объектов. Интерфейс с базами данных во многих системах C++ состоит из набора объектов, которые являются лишь тонкими  обложками,  скрывающими  под собой низкоуровневые функции баз данных. Вовсе не является необычным для объектов  баз данных содержать в себе методы, требующие десятков параметров для открытия и инициализации присоединения к базе данных ODBC (Open Database Connectivity, базы данных с открытой связью). Сравните это с полным набором drag-and-drop компонентов баз данных, встроенным в систему CBuilder. CBuilder содержит полный набор управляющих элементов для работы с данными (data-aware controls), которые вообще не требуют программирования. Можно написать вполне законченный редактор баз данных, который бы добавлял новые , редактировал существующие и удалял ненужные записи, не написав ни единой  строчки кода на C++. Попробуйте-ка написать такое на Visual Basic или Visual C++.

В  конце  концов,  CBuilder  может  стать  известен  за  то,  что  вы  можете  проделывать  с  базами

данных, таблицами  и  запросами  SQL (Structured Query Language, язык структурированных запросов) более, чем за возможности работы с формами и другими визуальными компонентами системы.

Итак  что  же  такое  CBuilder?  Это —  законченный,  гибкий  инструмент  RAD,  предоставляющий

высочайшие возможности в работе с базами данных, основанная на компонентах технология, простота использования и мощное средство разработки. О да. Он содержит превосходный компилятор стандарта ANSI C++, при полной поддержке таких новых технологий, как шаблоны (templates), именованные области видимости (namespaces), обработка исключительных ситуаций (exception handling), и библиотека стандартных шаблонов (Standard Template Library, STL).

Источник: Теллес М. – Borland C++ Builder. Библиотека программиста – 1998

По теме:

  • Комментарии