Эта книга Delphi и Model Driven Architecture. Разработка приложений баз данных. Грибачев. 2004 посвящена новейшей технологии разработки приложений баз данных в Delphi, основанной на концепции архитектуры, управляемой моделями (Model Driven Architecture ? MDA). Читатель познакомится с идеологией MDA в целом, освоит базовые основы языка UML, познакомится с мощным и лаконичным диалектом языка OCL, благодаря которому намного проще и скорее решаются задачи доступа к данным, чем при классической создании с применением SQL-запросов. В книжке детально, с разбором множества определенных примеров, описываются практические шаги по созданию MDA-приложений в Delphi. Читатель на практике убедится, как с большой скоростью и просто возможно делать сложные приложения, работающие почти с каждый СУБД, при том чаще всего вообще не применяя SQL и в ряде случаев даже не прибегая к написанию программного кода. Книга прежде всего адресована читателям, знакомым с традиционными подходами создания приложений баз данных в Delphi, хотя она может оказаться полезна и всем тем, кто желает познакомиться с принципиально новой технологией создания приложений в XXI веке ? MDA.
Об авторе: Константин Грибачев Окончил Московский физико-технический институт в 1981 г., в течении ряда лет работал в области систем управления космическими аппаратами. Программист с 20-летним стажем, начинал с разработки ПО для бортовых ЭВМ. Прошел путь от работы в кодах, ассемблера, ФОРТРАНА, до разработок многозвенных информационных систем и MDA-технологии. Последние несколько лет работает ведущим инженером-программистом, отвечая за внедрение и создание информационных технологий в подразделении компании. Автор 12 патентов на изобретения. В 2003-2004 гг. размещены 8 статей в журнале "Компьютер Пресс" по тематике Bold for Delphi и 2 статьи по базам данных. Живет и работает в Подмосковье.
Содержание книги Delphi и Model Driven Architecture. Разработка приложений баз данных. Грибачев. 2004
Предисловие
От автора
Как появилась эта книга
Благодарности
Введение
Для кого написана книга
Преодоление трудностей
Обзор содержания
От издательства Часть I. Обзор MDA-архитектуры Глава 1. MDA-архитектура и язык UML
История
Структура и состав
Предпосылки появления MDA
Модель приложения. Типы моделей
Этапы разработки MDA-приложений
Недостатки традиционного подхода
Преимущества MDA
Состояние и перспективы MDA
Концепции реализации
Возможные последствия внедрения MDA
Унифицированный язык моделирования UML
Общие сведения
Бизнес-правила
Диаграмма классов
Классы
Отношения
Классы-ассоциации
Пакеты
UML-модель и схема БД
UML-редакторы
Основы работы в Rational Rose
Другие UML-редакторы
Резюме Глава 2. Обзор Borland MDA
Что такое Borland MDA (BMDA)
История развития
Borland Enterprise Studio
Borland Delphi 7 Studio Architect
C#Builder Architect
Возможности и специфика
Преимущества для разработчиков
Последовательность изучения
Возможные трудности
Bold for Delphi - основа Borland MDA
Инсталляция и обзор инструментов
Резюме Глава 3. Быстрый старт
Создание простого MDA-приложения
Создание бизнес-уровня
Создание модели приложения
Создание графического интерфейса
Создание уровня данных
Работа с Приложением
Модификация модели приложения
Обсуждение результатов
Создание стандартных приложений
Резюме Глава 4. Модель приложения
Роль модели в Borland MDA
Тег-параметры (tagged values)
Rational Rose как средство разработки моделей для Borland MDA
Настройка Rational Rose
Создание модели в Rational Rose и ее импорт в Borland MDA
Настройка тег-параметров модели в Rational Rose
Настройка тег-параметров модели во встроенном UML-редакторе
Экспорт модели из встроенного редактора в Rational Rose
Другие способы импорта-экспорта моделей
Инструменты встроенного редактора моделей
Средства настройки свойств модели
Средства настройки атрибутов класса
Настройка ролей ассоциаций
Резюме Глава 5. OCL - язык объектных ограничений
Общие сведения
Роль OCL в Borland MDA
Модель для изучения
Доступ к классам и атрибутам из OCL
Базовые элементы и понятия
Типы данных
Операции сравнения в OCL
Типы возвращаемых выражений
Арифметические операторы
Коллекции
Навигация по модели
Операции над коллекциями
Навигация по коллекции
Выборка (фильтрация) и исключение
Операции с несколькими множествами
Сортировка элементов коллекции
Логические операции над коллекциями
Операция Collect
Вычисления над коллекциями
Работа с типами в OCL
Обработка типов для элементов
Обработка типов для коллекций
Операции логического выбора
Прочие операции
Операции над строками
Операции с датами и временем
Форматы дат и времени
Использование OCL
Задание выражений для вычисляемых атрибутов
Вычисляемые ассоциации
Формирование ограничений (Constraints)
Особенности диалекта OCL в среде Bold for Delphi
Расширяемость диалекта OCL в Bold
Резюме Часть II. Создание MDA-приложений Глава 6. Объектное пространство
Понятие Object Space
Состав и структура ОП
Класс TBoldElement
Свойства TBoldElement
Методы TBoldElement
Класс TBoldSystem
Свойства TBoldSystem
Методы TBoldSystem
Работа с объектным пространством
Программное управление атрибутами объектами ОП
Программное управление объектами ОП
Резюме Глава 7. Дескрипторы (Handles)
Роль дескрипторов
Классификация дескрипторов
BoldSystemHandle
BoldSystemTypeInfoHandle
BoldExpressionHandle
BoldDerivedHandle
BoldVariableHandle и BoldOCLVariables
BoldListHandle
BoldCursorHandle
BoldReferenceHandle
BoldUnloaderHandle
Резюме
Глава 8. Использование OCL
Роль Object Constraint Language в Borland MDA
Условная модель
Создание приложения
Встроенный OCL-редактор
Формирование цепочек дескрипторов
Связь OCL и графического интерфейса
OCL и вычисляемые данные
Использование OCL в программе
Программная работа с классом TBoldElement и его наследниками
с использованием OCL?вычислений
OCL-репозиторий
Резюме Глава 9. Графический интерфейс
Особенности визуальных MDA-компонентов
BoldLabel
BoldEdit
BoldGrid
BoldSortingGrid
BoldComboBox
BoldListBox
BoldCheckBox
BoldPageControl
BoldTreeView
BoldImage
Рендереры
Автоформы
Общие сведения. Структура автоформы
Ограничения
Генерация автоформ
Управление отображением атрибутов
Дополнительные инструменты
BoldCaptionController
Резюме Глава 10. Работа с уровнем данных
Функции уровня данных
Структура и состав компонентов
Работа с СУБД
Подключение уровня данных
Генерация схемы базы данных
Состав системных таблиц
Структура генерируемых таблиц
Использование адаптеров СУБД
Создание собственных адаптеров СУБД
Требования к СУБД
Состав программных модулей адаптера СУБД
Преимущества использования адаптеров
Использование BoldActions для работы с БД
Язык SQL в MDA-приложениях
Идеология применения SQL
Использование дескриптора BoldSQLHandle
Механизм OCL2SQL
Оптимизация работы в клиент-серверной архитектуре
Bold и "тонкие базы данных"
Работа с несколькими СУБД
Использование XML-документов
Сохранение данных в XML-файлах
Практический пример использования XML
Резюме Глава 11. Использование сторонних визуальных компонентов
Средства управления внешними компонентами
BoldDataSet - шлюз для использования DB?компонентов
Использование механизма подписки и программного кода
Резюме Глава 12. Генерация кода
Процедура генерации
Структура и состав генерируемых модулей
Практическое использование кода модели
Работа с классами и атрибутами
Работа с ассоциациями
Операции
Резюме Глава 13. Механизм "подписки"
Описание и реализация
События и подписка
Основные классы и реализация
Программное использование подписки
Использование BoldPlaceableSubscriber
Программирование вычисляемых атрибутов
Обратно-вычисляемые атрибуты
Резюме Глава 14. Обзор дополнительных возможностей
Регионы
Жизненный цикл связанных объектов
Трехзвенная архитектура
Удаленное подключение к БД посредством SOAP
Синхронизация объектных пространств
Сервер управления блокировками
Object Lending Library (OLLE)
Эволюция модели и БД
Многоязыковая поддержка
Средства отладки
Резюме Глава 15. Продукты сторонних производителей
BoldExpress Studio
BoldGridPro
OCL Extensions
Bold TCP OSS
Bold SOAP Server (BSS)
BoldRave
deBold
pHGantTimePackage и phGrid_BA
Резюме
Заключение
Приложение А. Скрипт для транслитерации имен UML-модели
Особенности
Создание и установка:
Использование
Исходный текст скрипта
Приложение Б. ECO - развитие Borland MDA для платформы
Microsoft .NET
О продукте C#Builder Architect
Основные возможности ECO
Создание простого ECO-приложения
Генерация шаблона
Разработка UML-модели
Формирование бизнес-уровня
Создание графического интерфейса
Автоформы
Создание уровня данных
Специфика ECO и отличия от Bold
Графический интерфейс
Бизнес-уровень и UML-моделирование
Уровень данных
Резюме
Приложение В. Библиотека для работы с Object Space
Назначение
Причины и цели создания
Описание
Основные процедуры и функции
Вспомогательные процедуры и функции
Примеры использования
Добавление и изменение объектов ОП
Поиск и связывание объектов
Предупреждения
Приложение Г. Часто задаваемые вопросы
Общие вопросы
СУБД
Компоненты и OCL
Приложение Д. Интернет-источники
Список литературы
АЛФАВИТНЫЙ УКАЗАТЕЛЬ
В книге Самоучитель Delphi Изд.2 + CD. Хомоненко описываются интерфейс системы Delphi на примере версии 7., состав и характеристика элементов проекта приложения, приемы программирования на языке Delphi. Рассматриваются визуальные компоненты, применяемые для создания интерфейса приложений; компоненты и техника работы с текстовой информацией
Рассмотрен широкий круг практических вопросов по программированию в Delphi: трюки и хитрости использования стандартных компонентов, готовые решения для повседневных задач, работа с СУБД (ORACLE, Interbase/Firebird, MySQL, MS SQL Server), взаимодействие с мультимедиа, разработка приложений для Интернета, работа с оборудованием, защита программ и шифрование данных, программирование в .NET, использование дополнительных компонентов и многое другое.