Гибкая структура проекта - PullRequest
0 голосов
/ 04 июня 2009

Я пытаюсь создать большой проект flex. Этот проект состоит из приложения CORE и других подпрограмм.

Приложение CORE должно содержать информацию, которая будет использоваться всеми другими проектами (например, ссылка на базу данных, менеджер данных, который загружает данные из базы данных, информация о приложении, например, шрифты высотой, шириной и т. Д.).

У каждого под-приложения есть определенная задача. Каждое вложенное приложение представляет собой большой проект, поэтому я не думаю, что стоит помещать весь код в один ОГРОМНЫЙ проект.

В проекте CORE должно быть запущено основное приложение, и через меню навигации я смогу щелкнуть и запустить другие подпрограммы.

Есть ли способ создать приложение CORE для ссылки на эти субприложения, чтобы я мог запустить их внутри CORE. В то же время эти субприложения должны ссылаться на приложения CORE, чтобы получить NetConnection к базе данных и другую важную информацию, которой они могут поделиться?

Как лучше всего структурировать этот проект?

Спасибо

Ответы [ 3 ]

0 голосов
/ 04 июня 2009

Есть два фактора, которые следует учитывать.

  1. Где живет код
  2. Где находится скомпилированный вывод этого кода.

Вероятно, хорошей идеей будет весь исходный код жить в одном дереве кода. Так легче поддерживать. Вы можете поместить каждое вложенное приложение в отдельный пакет AS3.

Также, вероятно, хорошей идеей будет разделить скомпилированный вывод этого кода. Сделайте ваше базовое приложение основным приложением flex, а затем сделайте каждое вспомогательное приложение модулем Flex. Базовое приложение может загружать модули и манипулировать ими, как и любой другой класс на основе AS3. Самое замечательное в том, что во время отладки вы можете создавать только ограниченный набор модулей, которые вам нужны в данный момент.

Я бы настоятельно рекомендовал создавать ваши релизы с помощью какого-либо сценария автоматической сборки ANT, а не через Flex Builder.

У нас есть один проект, который превышает 150 тыс. Строк кода, и который управляется именно так. С точки зрения программной инженерии это не так уж и много, но в мире Flex это довольно много.

0 голосов
/ 06 июня 2009

Звучит так, как будто вы хотите использовать модули Flex, чтобы ваши суб-приложения были автономными, но при этом могли взаимодействовать с основным приложением.

http://livedocs.adobe.com/flex/3/html/help.html?content=modular_2.html

Это позволит вам сохранить SWF-файл основного приложения достаточно маленьким и загружать субприложения по требованию.

Обычно модули хранятся в том же проекте, что и основное приложение, но каждое приложение / модуль компилируется в отдельный SWF-файл либо с помощью Flex Builder, либо с помощью инструмента автоматической сборки, такого как Ant или Maven.

0 голосов
/ 04 июня 2009

Лучше всего было бы поместить CORE-материал, который вы предлагаете, в библиотечный проект. Сохраните интерфейс приложения в проекте приложения Flex, но все данные и методы, которые должны быть использованы совместно, будут легко доступны для основного приложения и всех других модулей или приложений.

Затем в настройках проекта для вашего основного приложения и других приложений вы можете указать ссылку на проект библиотеки.

Если вы планируете использовать платформу, вы также можете заглянуть в многоядерную библиотеку PureMVC. Это немного сложнее, чем решение, которое я предоставил выше, но оно специально разработано для обмена данными и уведомлениями между отдельными приложениями.

...