О п роекте и решении
Разработка приложения на базе Атомкод связана с понятиями проект и решение.
Проект
Проект — папка с набором файлов, необходимых для разработки приложения или области функциональности приложения на базе Атомкод.
Разрабатываемое приложение может включать один и более проектов, созданных на базе одной версии Атомкод.
Вы самостоятельно принимаете решение о количестве создаваемых проектов. При проектировании приложения рекомендуется руководствоваться следующими соображениями:
- чем большее количество функций приложение должно выполнять, тем больше оснований разрабатывать это приложение на базе множества проектов;
- управление проектом с меньшим набором функций требует меньших трудозатрат и проще с точки зрения отладки;
- проект с меньшим набором функций можно в дальнейшем использовать как к омпонент других разрабатываемых приложений.
В Атомкод различают следующие типы проектов:
-
Пользовательский: проект, который вы разрабатываете согласно бизнес-требованиям к приложению.
DevTools содержит шаблон проекта с набором файлов и папок. Вы создаете проект на основе шаблона или путем импорта и модификации импортированного проекта.
Пользовательский проект, который использует файлы других проектов, называется зависимым. Зависимый проект может использовать следующие файлы:
*.mdmodel;*.mddict;*.mdfunctions;*.css;- файлы из папки
static.
-
Системный: проект, который поставляется в составе дистрибутива Атомкод. В списке проектов отображается как Main.
Системный проект запрещено удалять.
Системный проект содержит следующие файлы, которые используются пользовательскими проектами:
-
в папке
containersнаходятся следующие файлы описания системных экранных форм:login.mdcontainer: отображает пользовательскую форму входа в приложение. Управление отображением пользовательской формы входа или формы входа по умолчанию производится в консоли администрирования AdminTools.lockout.mdcontainer: отображает информацию о блокировке пользователя.error.mdcontainer: отображает информацию об ошибке.errorPage.mdcontainer: отображает ошибку HTTP 404.changePassword.mdcontainer: отображает форму смены пароля.alert.mdcontainer: отображается при вызове метода Alert() библиотеки FrontendCore.AccessDenied.mdcontainer: отображает информацию о запрете доступа к странице приложения.selectProvider.mdcontainer: отображается до момента отображенияlogin.mdcontainerдля выбора поставщика политик авторизации — Active Directory или локальный.waiting.mdcontainer: отображает индикатор загрузки после отправки пользователем запроса.masterPage.mdcontainer: описывает структуру экранной формы, отображаемой при открытии любого приложения на базе Атомкод. В левой части экранной формы masterPage отображается меню.mainPage.mdcontainer: отображает с тартовую страницуhttps://<Atomcode_instance_URL>/demo.UserProfile.mdcontainer: отображает пример страницы с информацией о пользователе.
-
в папке
containers\fragmentsнаходятся следующие файлы описания фрагментов экранных форм:ChangePasswordCustom.mdcontainer: отображает пример страницы, используемый вUserProfile.mdcontainer.FileExplorer.mdcontainer: отображает проводник файлов.FilePreview.mdcontainer: отображает содержимое файла, выбранного в проводнике файлов.TechSupport.mdcontainer: отображает форму обращения в Службу технической поддержки.
-
в папке
dictionariesнаходится файлindex.mddict, содержащий словари Platform, Menu и TechSupport, которые используются для отображения локализованных строк на перечисленных экранных формах. -
в папке
staticнаходятся значки и изображения, которые используются на перечисленных экранных формах. -
в файле
Static.assetперечислены значки и изображения, находящиеся в папкеstatic, с присвоенными псевдонимами. -
в папке
stylesнаходится файлStyle.mdtheme, который описывает основную тему приложения, цветовые палитры, отступы, кратность отступов, размер шрифта. Также в этой папке находится файлCSS.css, описывающий каскадные таблицы стилей системного проекта. -
в папке
utilsнаходится файлvalidations.mdvalidations, который описывает правила валидации данных на перечисленных экранных формах.
Пользовательские проекты также используют локали, указанные в файле
Main.mdproj. -
-
Служебный. В списке проектов отображается как System. Служебный проект запрещено изменять и удалять.
Артефакты служебного проекта используются для настройки доступа к хранилищу данных Атомкод.
Все файлы проекта хранятся в файловой системе бэкенд-сервиса DevTools. Также файлы проекта могут быть сохранены в репозитории системы управления версиями.
В процессе разработки приложения к проекту применимы следующие оп ерации:
- сборка — проверка файлов проекта на соответствие определенным правилам и формирование набора файлов на основе исходных файлов;
- публикация — доставка определенных файлов на сервер Атомкод для последующего запуска разработанного проекта.
Решение
Решение — группа проектов, содержащая один или более пользовательских проектов, один системный проект и один служебный проект, которые хранятся в одной ветви репозитория системы управления версиями. Решение имеет имя и URL-адрес, начало которого совпадает с URL-адресом экземпляра Атомкод. Решения в Атомкод позволяют изолировать проекты или группы проектов друг от друга.
В одном экземпляре Атомкод можно создавать несколько решений. Плитки с и менами решений отображаются на странице https://<Atomcode_instance_URL>.
Параметры решения хранятся в скрытом файле.