Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Конференция «Технологии управления данными 2018»
СУБД, платформы, инструменты, реальные проекты.
29 ноября 2018 г.

Borland Delphi как инструмент корпоративного разработчика

С.Орлик, Borland


Может быть немало споров - они идут постоянно - по поводу
механизма эволюции, но никто не оспаривает самого факта.
Айзек Азимов
"В начале"

Говоря о том или ином средстве разработки приложений всегда хочется понять какие тенденции приводят к его появлению. Borland Delphi не является исключением из правил. Итак, что же мы имели к середине 90-х?
Одно направление - объектно-ориентированный подход, хорошо структурирующий задачу, как таковую, так и ее решение в виде прикладной системы.
Другое направление, возникшее во многом благодаря объектной ориентации, - визуальные средства быстрой разработки приложений (RAD - Rapid Application Development), основанные на компонентной архитектуре.
Третья тенденция - использование компиляции, а не интерпретации. Это объясняется тем, что скоростные характеристики компилируемых приложений в десятки раз лучше, чем у систем, использующих интерпретатор. При этом повышается легкость отчуждаемости готовых систем, так как отпадает необходимость "таскать за собой" сам интерпретатор (run-time), выполненный обычно в виде динамической библиотеки и занимающий в лучшем случае несколько сотен килобайт (а большинстве случаев - два-три мегабайта). Отсюда и меньшая ресурсоемкость у скомпилированных систем.
Четвертая тенденция - возможность работы с базами данных универсальными (единообразными) методами. Если мы попытаемся оценить процент систем, которые так или иначе требуют обработки структурированной информации (как для внутрикорпоративного использования, так и для коммерческого или иного распространения), то окажется, что цифра 60- 70% может представлять лишь нижнюю границу. Важным свойством средств обеспечения доступа к базам данных является их масштабируемость, как возможность не только количественного, но и качественного роста системы. Например, обеспечение перехода от локальных ,в том числе, файл-серверных данных к архитектуре клиент-сервер или тем более к многоуровневой N-tier схеме.

Delphi создавался как продукт, в полной мере реализующий описанные тенденции, с архитектурой, открытой для расширения спектра поддерживаемых стандартов и подходов.

Критерии выбора корпоративных инструментов в применении к Borland Delphi

Говоря об инструментах, ориентированных на создание систем корпоративных масштабов, мы должны абсолютно четко представлять предъявляемые к ним требования. Попытаемся сформулировать некоторые из них.

  1. Крупные информационные системы требуют гибкости инструмента, с точки зрения возможности наращивания функциональности повторно используемого программного кода и реализации нестандартных решений (пользовательский интерфейс, межпрограммное взаимодействие, интеграция с унаследованными системами - legacy systems, доступ к системным ресурсам и т.п.). Полнота реализации объектной модели (неограниченные возможности расширения иерархии наследования объектов) + возможность изменения функциональности объектов без создания новых объектных типов - классов (обработчики событий).
  2. Создание корпоративных систем требует коллективной работы Поддержка групповой разработки (системы контроля версий, разделяемые словари данных и репозитарии объектов) + разделение работ за счет абстрагирования задач и конструирования приложений из функционально полных объектов - компонентов, создаваемых членами коллектива для совместного использования.
  3. "Единство противоположностей": Нейтральность по отношению к используемым форматам БД + поддержка специфики конкретных способов хранения/доступа к данным Универсальный механизм доступа к данным.
  4. Требования к производительности Компиляция, в случае платформо-зависимых решений.
  5. Охватывание всех этапов разработки - от проектирования до создания отчуждаемых приложений (дистрибутивов), через кодирование и отладку Открытость среды разработки, в плане возможностей интеграции с другими продуктами.
Рассмотрим, насколько Delphi удовлетворяет выше перечисленным требованиям.
  1. Delphi использует язык 3-го поколения Object Pascal, обладающий полной реализаций основных признаков объектной ориентации (инкапсуляция, наследование, полиморфизм), поддержкой RTTI-RunTime Type Information и встроенной обработкой исключительных ситуаций (Exception handling). Компонентная архитектура Delphi является прямым развитием поддерживаемой объектной модели. Все компоненты являются объектными типами (классами), с возможностью неограниченного наследования. Компоненты Delphi поддерживают PME-модель (Property, Method, Events), позволяющую изменять поведение компонентов без необходимости создания новых классов.

    Компоненты Delphi
  2. Delphi 2 Client/Server Suite включает систему контроля версий Intersolv PVCS, поддерживает работу со словарем данных (Data Dictionary) и Репозитарием объектов (Object Repository). Среда визуальной разработки Delphi позволяет единообразно работать как с предопределенными, так и с пользовательскими компонентами, которые разрабатываются на том же языке (Object Pascal), на котором создаются и конечные приложения.

    Delphi 2 Client/Server Suite (GIF,12Kb)
  3. Borland Database Engine (BDE) обеспечивает единообразную работу с локальными данными (Paradox, dBase) и серверами БД (Oracle, Sybase, MS SQL Server, InterBase и т.д.), за счет применения навигационных методов доступа к серверным СУБД (двунаправленные курсоры, закладки и т.п.) и SQL - к локальным форматам (подмножество Local SQL).

    Borland Database Engine
  4. Компилятор Delphi является самым быстрым; имеет общий генератор кода с Borland C++ (Delphi 2 & BC++ 5). Компилятор Delphi (точнее, Object Pascal) является продолжением линии компиляторов Turbo Pascal / Borland Pascal.
  5. Открытые интерфейсы Delphi - Open Tools API - обеспечивают контроль над средой разработки "из вне" и доступ к информации о проекте.
    • Delphi 2.01 Client/Server Suite включает CASE Expert, позволяющий импортировать данные из ведущих CASE в словарь данных Delphi, интегрировать IDE (Integrated Development Environment) с генераторами кода (например, Silver Run RDM компании CSA, WithClass 3.0 и т.п.).
    • "Эксперты" (программные модули, встраиваемые в IDE) позволяют использовать Delphi как "скелет" - общую среду разработки - для всего комплекса используемых инструментов.
    • Delphi 2 включает "генератор дистрибутивов" Install Shield Express.

Интерфейсы - структура
Интерфейсы - структура


Интерфейсы - иллюстрация (GIF,15Kb)

Перспективы использования Delphi

При построении систем масштаба предприятия практически невозможно избежать неоднородности (разные ОС, СУБД, промежуточное ПО и т.п.). Встает вопрос о средствах объединения разных технологических платформ. Достаточно четко можно разбить архитектурно грамотную информационную систему на три "модуля" - клиентский, сервер приложений и БД.
В рамках новой инициативы Golden Gate, Borland объединяет уже имеющиеся технологии с достижениями Open Environment Corporation - OEC (приобретена компанией Borland) в области средств для построения многоуровневых, распределенных систем. Продукт OEC OLEnterprise обеспечивает распределенные вычисления на базе технологий OLE automation / RPC (Remote Procedure Call) поверх D-COM и в отсутствии такового на всех платформах Windows (в том числе Win16). Полная автоматизация импорта/экспорта объектов в сети позволяет избежать необходимости изменения кода приложений для их взаимодействия на разных участках сети.
В силу того, что Delphi полностью поддерживает OLE-automation и предоставляет высокоуровневые средства работы с этими механизмами (специализированные классы, эксперты, языковые расширения), вариант совместного использования Delphi & OLEnterprise может оказать решающее воздействие на архитектуру системы => распределенные вычисления и локальные рабочие места - все в одном коде.

OEC Architecture
OEC Architecture

Так как Delphi обеспечивает создание "чистого" (native) кода посредством компиляции (например в самодостаточную - без интерпретатора - динамическую библиотеку DLL), возможна тонкая интеграция полученных программных модулей не только с 3-ми клиентскими приложениями но и с серверами приложений и баз данных на платформах Windows (в большей степени Windows NT, как следствие ее приспособленности для поддержки серверных звеньев). В качестве примера можно привести построение определяемых пользователем функций UDF для серверов БД Borland InterBase (например, для специфической обработки BLOB-полей).
Главной целью Golden Gate является объединение лучших черт архитектуры клиент/сервер и модели intranet. И первым этапом ее реализации является добавление средств интеграции с Internet-технологиями в уже имеющиеся средства разработки. Delphi не является исключением. Выпущенная летом 1996 года обновленная версия Delphi 2.01 включает поддержку модулей сопряжения с Internet для Windows 95/NT - WinINET; возможность построения блоков расширения Microsoft Information Server через интерфейсы ISAPI & ISAPI Filter; 8 элементов ActiveX, полностью реализующих логику поддержки основных Internet-протоколов и HTML (обработка + отображение => построение броузеров) в виде повторно используемых компонентов.

ActiveX
С этих точек зрения, гибкость такого инструмента корпоративного разработчика, как Delphi становится не менее важным фактором, чем возможность стандартизации бизнес-логики и организации бизнес-процессов, но это уже тема для другого доклада.

Golden Gate

Delphi 2.0
Software Digest March 1996, NSTL
Client-Server Development Tools

RatingProductPerformanceVersatilityEase of Use

****

Delphi9.69.27.3

***

Visual Basic8.38.26.9

**

SQL Windows5.29.16.7

**

Power Builder5.47.86.8
"Delphi's performance is head and shoulders above all of its competitors"

[Назад] [Содержание] [Вперед]

Новости мира IT:

Архив новостей

Последние комментарии:

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 985 1945361
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2015 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...