Мартин Фаулер « Архитектура корпоративных программных приложений » Подготовила Ст. ПС - 41 Лукиных Н. А.

Презентация:



Advertisements
Похожие презентации
Трехслойная архитектура приложений, основанных на использовании баз данных.
Advertisements

ОБЕКТНО - РЕЛЯЦИОННЫЕ ТИПОВЫЕ РЕШЕНИЯ, ПРЕДНАЗНАЧЕННЫЕ ДЛЯ МОДЕЛИРОВАНИЯ СТРУКТУРЫ Выполнил : Олейник Павел ПС -41 Глава 12.
Лекция 22 Лекция 22 Локальные, сетевые и распределенные базы данных. Архитектура «файл- сервер». Двух и трехуровневая архитектура «клиент-сервер». Модель.
Информационные системы. Базы данных. Информационная система – любая система обработки информации (шир)
Разработка пользовательских интерфейсов Выполнил: Бредихин Юрий Вячеславович студент 3 курса, 31-И группы Старый Оскол, 2015.
Организация распределенных прикладных систем. Попытаемся ответить на вопросы Как устроены распределенные прикладные системы? Каковы наиболее важные их.
Классификация БД. СУБД и ее компоненты. Логическое и физическое описание данных.
БАЗА ДАННЫХ – ОСНОВА ИНФОРМАЦИОННОЙ СИСТЕМЫ ТЕХНОЛОГИЯ ИСПЛЬЗОВАНИЯ И РАЗРАБОТКА ИНФОРМАЦИОННЫХ СИСТЕМ.
Технические возможности. Наши цели Максимальная гибкость Максимальная скорость считывания и обработки данных Стабильность работы Максимальная простота.
Архитектура сервиса С3 Автор: Малыгин М.В. Руководитель: Тимченко Б.Д.
Докладчик: Бульёнов А. В., аспирант Научный руководитель: Шалыто А. А., д. т. н., профессор, зав. кафедрой КТ Методы автоматного программирования в разработке.
Базы данных MICROSOFT ACCESS. Оглавление Введение Microsoft Access. Основные понятия. Таблицы Связи между таблицами. Формы Запросы Отчёты Создание базы.
Архитектура операционных систем Семестр 2, Лекция 1.
Лекция 2. Модель клиент- сервер. УЧЕБНЫЕ ВОПРСЫ 1.Клиенты и серверы 2.Разделение приложений по уровням 3.Варианты архитектуры клиент-сервер.
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ СТАВРОПОЛЬСКИЙ ГОСУДАРСТВЕННЫЙ АГРАРНЫЙ УНИВЕРСИТЕТ.
Архитектура операционных систем. Архитектура ОС Состав модулей (компонент) ОС Структура связей между отдельными модулями ОС Принципы взаимодействия модулей.
Программное обеспечение за полвека своего существования претерпело огромные изменения, пройдя путь от программ, способных выполнять только простейшие.
Архитектура операционной системы. Ядро и вспомогательные модули операционной системы При функциональной декомпозиции ОС модули разделяются на две группы:
1. Краткая характеристика MS Access1. Краткая характеристика MS Access 2. Достоинства и недостатки 3. Типы БД 4. Базы данных и системы управления базами.
Структуры базы данных Иерархическая сетевая реляционная наиболее распространенная.
Транксрипт:

Мартин Фаулер « Архитектура корпоративных программных приложений » Подготовила Ст. ПС - 41 Лукиных Н. А.

Глава 1. « Расслоение системы » Система как « слоеный пирог »: слой более высокого уровня пользуется службами, предоставляемыми нижележащим слоем, но тот « не осведомлен » о наличии соседнего верхнего слоя. А каждый промежуточный слой « скрывает » нижний слой от верхнего Достоинства : Отдельный слой – как целое, единое содержимое. Можно выбирать альтернативную реализацию базовых слоев Зависимость между слоями можно свести к минимуму Каждый слой стандартизирован Созданный слой может служить основой нескольким слоям более высокого уровня Недостатки : Слои способны инкапсулировать многое, но не все : модификация одного слоя связана с необходимостью внесения в другие слои Наличие избыточных слоев снижает производительность системы.

Три основных слоя Представление – представление услуг, отображение данных, обработка событий пользовательского интерфейса, обслуживание запросов HTTP, поддержка функций командной строки, А PI пакетного выполнения Домен – бизнес - логика приложения Источник данных – обращение к БД, обмен сообщениями, управление транзакциями и т. д.

Глава 2. Организация бизнес - логики Три типовых решения : Сценарий транзакции (Transaction Script) Модель предметной области (Domain Model) Модуль таблицы (Table Module)

Сценарий транзакции - процедура, которая получает на вход информацию от верхнего слоя представления, обрабатывает ее, проводя необходимые проверки и вычисления, сохраняет в БД и активизирует операции других систем. Преимущества : Удобная процедурная модель, которая легко воспринимается разработчиками Удачно сочетается с простыми схемами организации слоя источника данных на основе типовых решений « шлюз записи данных » и « шлюз таблицы данных » Определяет четкие границы транзакции Недостатки : Возможно дублирование кода Сложная логика

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

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

Глава 3. Объектные модели и реляционные базы данных

Типовое решение « шлюз » Создание экземпляра шлюза для каждой записи, возвращаемой в результате обработки запроса к базе данных. Модель множества записей – имитирует табличную форму представления содержимого БД.

Типовые решения для модели предметной области Решение « активная запись » = шлюз записи данных + бизнес - логика ( особенно при повторении фрагментов кода в сценариях транзакции ) Решение с « преобразователем данных » – обслуживает все операции загрузки и сохранения информации, инициируемые бизнес - логикой, позволяет независимо использовать как модель предметной области, так и схему БД

Функциональные проблемы как обеспечить загрузку различных объектов и сохранение в БД ? Активная запись (Active Record): объект снабжается соответствующими методами загрузки ( load) и сохранения (save) Единица работы (Unit of Work) – позволяет отследить, какие объекты считываются, а какие – модифицируются, и обслужить операции обновления содержимого БД. Модель предметной области (Domain Model) – связанные объекты загружаются совместно таким образом, что операция считывания одного объекта инициирует загрузку другого Загрузка по требованию (Lazy Load) – предполагает использование специальных меток вместо ссылок на реальные объекты.

Другие вопросы : Считывание данных Взаимное отображение объектов и реляционных структур – обеспечение взаимно однозначного соответствия между объектами в памяти и табличными структурами БД на диске Реализация отображения Использование метаданных Соединение с базой данных

Глава 4. Представление данных в Web Разработка Web- приложения начинается с настройки программного обеспечения Web- сервера. Функции Web- сервера состоят в интерпретации адреса URL запроса и передаче управления соответствующей программе. Формы представления программы Web- сервера : сценарий (scrypt) и страница сервера (serverpage)

Модель - Представление - Контроллер

Контроллер приложения Промежуточный слой между объектами представления и объектами доменов. Назначение : управление потоком функций приложения и выбор порядка демонстрации интерфейсных экранов тест на целесообразность использования : если потоком функций системы управляет машина – ответ положительный, если пользователь – отрицательный.

Типовые решения представления Представление с преобразованием Представление по шаблону Двухэтапное представление : Формируется логический экран Трансформируется в код HTML

Типовые решения контроллеров Контроллер страниц – наиболее общий подход состоит в создании объекта входного контроллера для каждой страницы web- сайта. Контроллер запросов предусматривает использование единственного объекта, предназначенного для обработки всех запросов.

Типовые решения контроллеров Контроллер страниц – наиболее общий подход состоит в создании объекта входного контроллера для каждой страницы web- сайта. Контроллер запросов предусматривает использование единственного объекта, предназначенного для обработки всех запросов.