Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Модульная архитектура на чистом actionscript (http://www.flasher.ru/forum/showthread.php?t=191296)

inozemcev 02.01.2013 21:28

Модульная архитектура на чистом actionscript
 
C новым годом, уважаемые коллеги.

Стоит задача разделить монолитный проект на несколько модулей. Модуль создает картинку на основе пользовательских данных. В общем, таких модулей будет много поэтому есть цель подгружать модули динамически. Хотелось бы понять каким образом организовать взаимодействие модуля с ядром.

Пока вижу два варианта, осуществить поддержку некого интерфейса IModule всеми модулями, либо организовать взаимодействие на основе двух объектов LocalConnection.

Чтобы вы посоветовали?

caseyryan 02.01.2013 21:40

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

inozemcev 02.01.2013 22:49

Так хорошо. Попробую сделать с интерфейсами.

КорДум 04.01.2013 13:26

Соклашаюсь с камрадом caseyryan: вопрос слишком расплывяатый. Каждый понимает под модулями разное. Может быть имеется в виду похожая система на плагины FD, где каждый кастомный плагин наследует интерфейс IPlugin (вроде так его зовут), а ядро (оно же сама IDE FD) вызывает методы, диктуемые интерфейсом, передает необходимые параметры, чтобы плагин мог взаимодействовать с редактором.
А может имеется в виду, что модули все разные и общие черты в них не выделить (или это просто не нужно), тогда каждый интерфейс для каждого модуля свой.
Ну и плюс нужно учесть, будет ли проект масштабироваться, будут ли модули заменяться со временем и так далее.

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

terbooter 04.01.2013 17:50

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


Часовой пояс GMT +4, время: 22:07.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.