1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-OAM-spec

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
9.design_principles.md 5.2 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 26.11.2024 07:33 76d68d8

9. Принципы проектирования

Модель Open Application Model (OAM) следует набору принципов проектирования, которые обеспечивают ясность, богатство и расширяемость модели.

Разделение задач

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

Независимость от среды выполнения

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

Баланс (элегантность)

Обеспечивая разделение задач, OAM стремится избежать ненужной сложности для пользователей, которые выполняют несколько ролей в небольших командах. Простые сценарии должны быть достижимы с минимальными затратами времени и энергии, а сложные сценарии должны учитываться без необходимости перестройки платформы.

OAM предлагает несколько уровней абстракции, так что операционные проблемы могут быть решены независимо от проблем разработчиков.

Возможность повторного использования

Компоненты в схемах OAM разработаны таким образом, чтобы их можно было повторно использовать и совместно применять. Кроме того, они остаются независимыми от кода, который они описывают, что позволяет повторно использовать код (контейнеры) и предотвращает условия «блокировки».

Модель в целом предназначена для предоставления «дистрибутивов» приложений, где одно и то же приложение может выполняться на разных платформах без изменений. Такая переносимость приложения призвана сделать следующие сценарии не только возможными, но и лёгкими:

  • перенос приложения с рабочей станции разработчика в производственный кластер или сервис;
  • миграция с одной реализации на другую без изменения кода;
  • создание сред, подобных рынку, где приложения могут быть развёрнуты на клиентских платформах.

Модели приложений не являются моделями программирования

Существует чёткое различие между моделью приложения и моделью программирования. Модель приложения описывает состав приложения и топологию его компонентов. Она не касается того, как каждый компонент реализован (язык, шаблоны проектирования и т. д.).

С другой стороны, модель программирования описывает, как составляется отдельный фрагмент программного обеспечения. Она используется разработчиком для реализации компонентов приложения. Модель Open Application Model предлагает модель приложения, которая не имеет никаких требований к модели программирования.

Предыдущий
8. Практические соображения

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/mirrors-OAM-spec.git
git@api.gitlife.ru:oschina-mirror/mirrors-OAM-spec.git
oschina-mirror
mirrors-OAM-spec
mirrors-OAM-spec
master