Цитата:
Сообщение от
mazzy
для чего нужны эти модели? только для того, чтобы можно было генерить лицензии сторонним разработчикам?
Я так понял, чтобы группировать связанные объекты приложения в рамках одного слоя. Ведь в 2012-й было много сделано для устранения проблемы идентификаторов объектов и для возможности более "гранулярного" изменения объектов приложения (добавление кнопок на форму без перетаскивания всей формы на вышележащий слой - это просто фантастика!

). Целью всего этого, как я понимаю, было дать возможность клиентам относительно безболезненно совмещать на одном слое несколько различных решений сторонних разработчиков.
Механизм, позволяющий одним компаниям создать свое законченное решение для определенной задачи, упаковать его в модель и защитить лицензионным ключом, а другим компаниям - очень легко интегрировать это решение в существующую систему, видимо, должен подстегнуть развитие рынка "частных" решений на базе Аксапты и сделать ее более интересной для компаний, внедряющих ее у себя. Тем более заманчиво все это выглядит на фоне появления нового подхода к кастомизации приложения
на основе обработки событий. Для тех, кто пишет на C#, это, пожалуй, уже стало обыденностью, но в коде приложения Аксапты видеть, к примеру, тот же код сбора конфликтов обновления приложения в проекты для меня лично было сродни встречи с инопланетянами

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