Для понимания работы технологии Certis Platform необходимо учитывать её терминологию. На данной страницы представлены основные понятия, используемые для описания работы платформы.
MVC (Model-View-Controller, «Модель-Представление-Контроллер») — паттерн проектирования веб-приложений являющийся современным промышленным стандартом. Основой паттерна является разделение приложения на три составляющих — модель, представление (вид), контроллер. Модель предоставляет данные и реагирует на команды контроллера, изменяя своё состояние, представление отвечает за отображение данных модели пользователю, реагируя на изменения модели, контроллер интерпретирует действия пользователя, оповещая модель о необходимости изменений. Данный паттерн характерен для любых приложений, написанных на Laravel, в том числе и Certis Platform. Используя данный паттерн, проектировщики архитектуры могут условится о дополнительных ограничениях, например в Certis Platform принято делать контроллеры тонкими, а всю бизнес логику размещать в моделях.
Тонкий контроллер (Thin Controller) — это архитектурный принцип, согласно которому код в контроллере должен быть максимально простым и минималистичным. Его главная задача — координировать взаимодействие между пользовательским запросом и бизнес-логикой приложения, но не содержать саму эту логику.
Сущность (Entity) в Certis Platform — это расширенная версия модели данных, которая наследует базовый функционал Eloquent ORM, но дополнена специфическими требованиями платформы.
Ключевые особенности:
Таким образом, Сущность является основным строительным блоком для данных в Certis Platform, обеспечивая безопасность и контроль на уровне платформы, без ущерба для гибкости и мощи стандартного ORM.
Групповая политика доступа к сущностям — это механизм управления правами внутри Certis Platform, при котором права на выполнение операций (запрещен, чтение, запись) с сущностями (объектами данных) назначаются не отдельным пользователям, а целым группам. Все пользователи, входящие в группу, автоматически наследуют её права, что обеспечивает централизованное, масштабируемое и согласованное управление доступом.
Модуль в Certis Platform — это автономный программный компонент, который расширяет функционал системного ядра. Вся бизнес-логика платформы должна быть реализована исключительно в виде модулей, что обеспечивает высокую степень модульности, сопровождаемости и позволяет динамически подключать новые возможности.
Ключевые характеристики модулей:
Экспортируемый API модуля — это его публичный интерфейс, который могут использовать другие модули. Он включает в себя классы и методы, предназначенные для вызова извне. Версионирование существует прежде всего для публичного API модулей, чтобы его потребители могли контролировать свои зависимости и быть уверенными в стабильности взаимодействия.