Руководство разработчика. Какой код в каких модулях размещать: различия между версиями
Перейти к навигации
Перейти к поиску
Irit (обсуждение | вклад) (Новая страница: «Назад к руководству В процессе разработки весь код и бизнес-логику можно разделить на следующие типы: * Клиентские вызовы формы - бизнес-логика в '''модуле формы''', размещенная '''&НаКлиенте'''. К таким вызовам относя...») |
Irit (обсуждение | вклад) Нет описания правки |
||
Строка 21: | Строка 21: | ||
* Общий программный интерфейс подсистемы - размещается в '''общих модулях''', как правило принадлежит конкретной подсистеме и предоставляет программный интерфейс по работе с подсистемой, которая может включать в себя множество объектов метаданных. Общий программный интерфейс в свою очередь обращается к программным интерфейсам объектов метаданных. | * Общий программный интерфейс подсистемы - размещается в '''общих модулях''', как правило принадлежит конкретной подсистеме и предоставляет программный интерфейс по работе с подсистемой, которая может включать в себя множество объектов метаданных. Общий программный интерфейс в свою очередь обращается к программным интерфейсам объектов метаданных. | ||
* Обработчики объекта данных. Размещаются в '''модулях объекта''' и предназначены исключительно для обработки самого объекта данных и тесно связанных с ним элементов: регистров движений, связанных регистров сведений, табличных частей. | * Обработчики объекта данных. Размещаются в '''модулях объекта''' и предназначены исключительно для обработки самого объекта данных и тесно связанных с ним элементов: регистров движений, связанных регистров сведений, табличных частей. | ||
[[Файл:20240205 1.png|без|обрамить|Общая схема последовательности вызовов]] |
Текущая версия от 19:49, 5 февраля 2024
Назад к руководству
В процессе разработки весь код и бизнес-логику можно разделить на следующие типы:
- Клиентские вызовы формы - бизнес-логика в модуле формы, размещенная &НаКлиенте. К таким вызовам относятся:
- Обработчики управления видимостью и доступностью элементов формы в зависимости от значений реквизитов формы и реквизитов объекта.
- Вызов диалоговых окон и обработка результатов работы с ним.
- Проверка вводимых данных пользователем
- Вывод сообщений пользователю
- Очистка значений на форме и т.п.
Особенностью клиентских вызовов формы является то, что они все так или иначе связаны с визуальным интерфейсом клиента и его окружением. Такая логика размещается в модуле формы и связана исключительно с работой с формой. Эта логика не применима к другим формам.
- Клиентские общие модули - общая бизнес-логика, связанная с работой с окружением клиента, но напрямую не связанная с пользовательским интерфейсом. Обычно в данных модулях размещаются:
- Обработчики работы с оборудованием, с криптографией и другими внешними по отношению к клиенту системами.
- Работа с файловой системой на клиенте
- Обработчики оповещений и асинхронные операции, выполняемые на клиенте
- Другие действия, используемые больше чем в одной форме
- Серверные вызовы формы - бизнес-логика формы, размещенная модуле формы в параметром &НаСервере и &НаСервереБезКонтекста. Как правило, в таких методах размещаются обращения к остальным серверным модулям. Также в данных серверных вызовах формы размещается бизнес-логика, связанная с конвертацией данных формы в объекты метаданных, с чтением данных, с установкой условного оформления, с отборами и т.д.. Данный код не может использоваться в других формах и является специализированным под конкретную форму.
- Программный интерфейс объекта метаданных - размещается в модулях менеджера объектов и представляет определенный программный интерфейс по работе ТОЛЬКО С КОНКРЕТНЫМ объектом метаданных. Это может быть получение данных объекта по ссылке (в оптимальном с т.з. получения данных режиме), поиск ссылки на объект по значениям его реквизитов, получение данных табличных частей или связанных с объектом регистров сведений. Кроме этого, в модуле менеджера могут размещаться обработчики, связанные с формированием данных для движений конкретного объекта или же дополнительные вызовы из других подсистем.
- Общий программный интерфейс подсистемы - размещается в общих модулях, как правило принадлежит конкретной подсистеме и предоставляет программный интерфейс по работе с подсистемой, которая может включать в себя множество объектов метаданных. Общий программный интерфейс в свою очередь обращается к программным интерфейсам объектов метаданных.
- Обработчики объекта данных. Размещаются в модулях объекта и предназначены исключительно для обработки самого объекта данных и тесно связанных с ним элементов: регистров движений, связанных регистров сведений, табличных частей.