СТАТЬЯ
13.09.01

Предыдущая часть

Средства разработки приложений

Алексей Федоров,
Наталия Елманова

Статья была опубликована в КомпьютерПресс #2 2001
как часть статьи "Введение в базы данных" (www.cpress.ru)

Классификация приложений, использующих базы данных

Приложения в архитектуре «клиент-сервер»

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

Для создания клиентских приложений в этом случае чаще всего применяются средства разработки, обладающие развитыми визуальными инструментами, такие как Microsoft Visual Basic, Borland Delphi, Sybase PowerBuilder, Borland C++Builder.

Отметим, однако, что выбор архитектур современных приложений в настоящее время достаточно широк и не исчерпывается «классической» архитектурой «клиент-сервер», подразумевающей, что приложение состоит из сервера баз данных и клиентских приложений, взаимодействующих с этим сервером. Поэтому ниже мы обсудим, какие средства разработки удобно применять при создании распределенных приложений.

Распределенные приложения

Распределенные (или многозвенные) приложения обычно состоят из презентационных сервисов (или «тонких» клиентов, с которыми обычно взаимодействуют конечные пользователи), сервисов бизнес-логики, реализуемых в виде бизнес-объектов (или сервисов промежуточного слоя — middle tier; нередко для описания совокупности таких сервисов применяется термин middleware), и сервисов данных (обычно состоящих из сервера баз данных и механизмов доступа к данным). Сервисы бизнес-логики предназначены для получения введенных пользователем данных от презентационных сервисов, взаимодействия с сервисами данных для выполнения бизнес-операций (например, обработки заказов или расчета бухгалтерского баланса) и возврата результатов этих операций презентационным сервисам.

В отличие от обычных приложений в архитектуре «клиент-сервер», в многозвенных системах «тонкие» клиенты, как правило, не имеют непосредственного доступа к данным. Вместо этого клиенты посылают запросы к специально предназначенным для этой цели бизнес-объектам. Те, в свою очередь, могут выполнять запрошенные клиентом бизнес-операции (такие как обработка заказа, выполнение банковской транзакции и т.д.).

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

Для создания бизнес-объектов применяются как средства разработки с развитыми визуальными инструментами, так и средства разработки, ориентированные на «ручное» создание кода приложений (такие как Visual C++). Отметим, что новейшие версии почти всех наиболее популярных средств разработки Windows-приложений (Microsoft Visual Basic, Visual FoxPro и Visual C++, Borland Delphi и C++Builder, Sybase PowerBuilder) поддерживают создание различных типов бизнес-объектов (Web-приложений, ASP-объектов, COM-серверов и др.), за исключением, пожалуй, Microsoft Access — этот продукт рассчитан скорее на квалифицированных пользователей, нежели на разработчиков распределенных систем. Нередко для этой цели используются и средства создания Java-приложений (такие как Borland JBuilder).

Отметим, что, кроме перечисленных выше «универсальных» средств создания как приложений в архитектуре «клиент-сервер», так и бизнес-объектов для распределенных систем, на рынке средств разработки имеются и специализированные средства, предназначенные именно для создания бизнес-объектов (как правило, Web-приложений). Из средств разработки такого класса для платформы Windows наиболее популярен Microsoft Visual InterDev, первая версия которого появилась в 1998 году. Можно также упомянуть еще один интересный продукт, относящийся к той же категории средств разработки, — Borland IntraBuilder, появившийся двумя годами раньше, но почему-то, несмотря на растущую потребность в продуктах такого класса, не получивший дальнейшего развития. Средства разработки подобного класса, как правило, позволяют создавать приложения, динамически генерирующие HTML-код либо код на одном из скриптовых языков (VBScript или JavaScript), который передается Web-сервером в браузер пользователя в составе Web-страницы, и воспринимающие данные, введенные пользователем в HTML-форме и переданные браузером Web-серверу.

Заключение

В настоящей статье мы обсудили процесс создания приложений, использующих базы данных, а также различные категории средств, применяемых при их разработке. Мы убедились, что средства разработки можно условно разделить, с одной стороны, на инструменты, ориентированные на применение конкретных СУБД, инструменты, универсальные по отношению к СУБД, и среды настольных СУБД, применяемые для разработки приложений. С другой стороны, их можно разделить на средства, ориентированные на визуальное проектирование пользовательского интерфейса (к этой категории относятся Microsoft Visual Basic, Borland Delphi, Sybase PowerBuilder, Borland C++Builder), и на средства, ориентированные на написание кода приложения (Visual C++).

Рассмотрев несколько наиболее популярных средств разработки приложений, мы убедились, что большинство подобных продуктов, как правило, поддерживают:

Мы также обсудили, чем приложения в архитектуре «клиент-сервер» отличаются от распределенных систем и какие средства разработки можно применять при создании обоих типов приложений.

Жизненный цикл информационной системы не завершается разработкой приложений. После создания их полагается тестировать, внедрять, обучать пользователей их применению, и наконец, эксплуатировать их в течение ряда лет. В результате подобной эксплуатации накапливаются данные, которые, как правило, являются гораздо более ценными, чем собственно приложения. Эти данные нередко представляют собой необходимый для принятия важных управленческих решений материал, поэтому важно уметь преобразовывать их к виду, пригодному для подобной цели. Для этого существуют средства, относящиеся к категории Business Intelligence — генераторы отчетов, средства аналитической обработки данных и поиска закономерностей. О них мы поговорим в следующей статье данного цикла.

Дополнительная информация

Дополнительную информацию Вы можете получить в компании Interface Ltd.

Отправить ссылку на страницу по e-mail
Обсудить на форуме


Interface Ltd.
Тel/Fax: +7(095) 105-0049 (многоканальный)
Отправить E-Mail
http://www.interface.ru
Ваши замечания и предложения отправляйте автору
По техническим вопросам обращайтесь к вебмастеру
Документ опубликован: 13.09.01