Инициализация приложения ======================== Инициализация приложения происходит в несколько этапов. Все этапы выполняются в рамках выполнения метода ``AppLoader.load``. 1 этап. Загрузка конфигурации ----------------------------- Сначала загружается конфигурация приложения из rt-файла. Обычно он имеет имя ``app.rt``. .. code-block:: java App app = AppLoader.load("app.rt") При загрузке приложения можно указать каталог приложения, если он не будет указан (как в примере выше), то он определяется по атрибуту ``app:appdir`` в загруженной rt: .. code-block:: java App app = AppLoader.load("d:\apps\myapp", "app.rt") Перед загрузкой конфигурации создается экземпляр приложения ``jandcode.app.App``, который возвращает методом ``load`` после удачной загрузки. Загруженная конфигурация доступна через ``App.getRt()``. 2 этап. Создание сервисов ------------------------- После загрузки конфигурации приложения создаются экземпляры всех описанных :ref:`сервисов `. .. _app-load_activate: 3 этап. Активация сервисов -------------------------- Для каждого сервиса, который реализует интерфейс ``jandcode.app.IBeforeActivate``, вызывается метод ``beforeActivate``. Для каждого сервиса, который реализует интерфейс ``jandcode.app.IActivate``, вызывается метод ``activate``. Для каждого сервиса, который реализует интерфейс ``jandcode.app.IAfterActivate``, вызывается метод ``afterActivate``.