de_DEen_USes_ESfa_IRfr_FRid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW

Введение

Архитектура шестиугольника, также известная как архитектура портов и адаптеров, — это мощный архитектурный паттерн, используемый при проектировании программного обеспечения. Она предназначена для создания программных систем с компонентами, слабо связанными между собой, которые могут легко взаимодействовать со своей средой через порты и адаптеры. Такой подход способствует гибкости, тестированию и поддержке программных систем. В этом руководстве для начинающих мы познакомим вас с архитектурой шестиугольника с помощью простых объяснений и примеров, с фокусом на поток данных.

Hexagonal Architecture Diagram Tool

Понимание основ

Происхождение

Архитектура шестиугольника была представлена Алистером Кокберном в 2005 году в ответ на распространённые проблемы при проектировании объектно-ориентированного программного обеспечения. Она направлена на устранение таких проблем, как жёсткие зависимости между различными частями системы и смешение бизнес-логики с кодом пользовательского интерфейса.

Представление в виде шестиугольника

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

Ключевые принципы

Разделение компонентов

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

Порты и протоколы

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

Гранулярность портов

Гранулярность портов является гибкой. Компонент может иметь:

  • Один порт для простого потребления сервиса.
  • Порты для источников событий (например, пользовательский интерфейс и автоматическое питание).
  • Порты для уведомлений (исходящие уведомления).
  • Порты для взаимодействия с базой данных (для взаимодействия с системой управления базами данных).
  • Порты для администрирования (для управления компонентом).
  • В некоторых случаях могут быть разные порты для каждого случая использования, при необходимости.

Адаптеры

Адаптеры выступают посредниками между компонентами и внешним миром. Они устраняют разрыв между внешними системами и портами, представляющими внутренние требования компонента приложения. К одному порту может быть привязано несколько адаптеров. Например, данные могут быть введены пользователем через графический пользовательский интерфейс (GUI), интерфейс командной строки, автоматический источник данных или тестовые скрипты.

Изучение на примерах с помощью Visual Paradigm Online

Чтобы глубже понять архитектуру шестиугольника и создать диаграммы архитектуры шестиугольника, иллюстрирующие поток данных, вы можете использоватьVisual Paradigm Onlineготовые шаблоны. Вот как:

  1. Перейдите на Visual Paradigm Online: Перейдите на сайт Visual Paradigm Online и создайте учётную запись, если у вас её ещё нет.
  2. Выберите шаблон архитектуры шестиугольника: Ознакомьтесь с библиотекой шаблонов и выберите шаблон диаграммы архитектуры шестиугольника, подходящий для вашего проекта. Эти шаблоны часто включают заранее определенные компоненты, порты и адаптеры.
  3. Настройте свою диаграмму: Измените шаблон, чтобы отобразить вашу конкретную программную систему. Добавьте или удалите компоненты, измените количество и типы портов, а также определите протоколы связи.
  4. Подключите порты и адаптеры: Используйте стрелки или соединители, чтобы показать поток данных между портами и адаптерами. Это помогает визуализировать, как информация перемещается внутри вашей системы.
  5. Документируйте свой дизайн: Добавьте комментарии или описания к своей диаграмме, чтобы объяснить назначение каждого компонента, порта и адаптера. Эта документация имеет большое значение для вашей команды и будущего использования.
  6. Сотрудничайте и делитесь: Visual Paradigm Online позволяет сотрудничать с членами вашей команды. Вы также можете делиться своими диаграммами с заинтересованными сторонами для получения обратной связи и проверки.
  7. Итерируйте и улучшайте: По мере развития вашей архитектуры программного обеспечения вы можете легко вносить изменения в диаграммы архитектуры шестиугольника, чтобы отразить любые изменения в структуре системы и потоке данных.

Изучая на примерах и используя инструменты, такие как Visual Paradigm Online, вы приобретете практическое понимание архитектуры шестиугольника и ее преимуществ для проектирования надежных и гибких программных систем.