Я нахожусь в середине создания довольно большого приложения flex, и со временем он начинает опускаться к неподдерживаемости.Лучшие практики для больших приложений Flex?
Я использую 3 проекта внешней библиотеки, которые по-прежнему достаточно малы, чтобы оставаться ремонтопригодными и многоразовыми, но основной проект, похоже, невозможно организовать организованно.
Часть проблемы, похоже, состоит в том, что у меня есть около 30 объектов, наследуемых от одного абстрактного объекта типа суперкласса. Все дочерние объекты имеют как логический компонент, так и компонент ui, которые тесно интегрированы друг с другом. Объект суперкласса имеет около 60 общих методов и свойств, большинство из которых можно переопределить в любом из дочерних классов, некоторые из которых должны быть переопределены во всех дочерних классах.
Чтобы добавить к сложности, они должны связываться между собой, и это обычно происходит через объект-контейнер, в котором они находятся. Кроме того, основной проект должен создавать объекты ценности из них, чтобы их можно было отправить в FlourineFX бэкэнд для хранения и дополнительную логику аутентификации/авторизации.
Я создал гораздо большие проекты на языках от старых MS BASIC (pre VB), Ada, VB (от 3 до .Net 1), C++ и C# без этой проблемы. (ну, старый VB имел тенденцию к этой проблеме из-за такой же тесной интеграции между UI и логикой) Итак, есть ли что-то, чего я не вижу, или есть ли какие-либо лучшие практики, которые я могу реализовать? (даже если это означает переписывание целых строк кода)
И да, это может быть расширение до this.
FWIW, мы используем pureMVC для некоторых частей нашего пакета приложений, и я считаю, что он добавляет много ненужной сложности и косвенности. Части, которые не используют фреймворк, легче создавать, проще поддерживать. И это большой пакет SaaS с множеством приложений и модулей в приложениях. YMMV. – Robusto
Я тоже не массивный поклонник PureMvc, но, в основном, до его тестируемости. RobotLegs гораздо более склонна к тестированию на единицу. Работая над крупными проектами как с рамками, так и без них, я определенно вижу преимущества их использования, особенно, когда они будут сохранены в будущем. Любые проекты, над которыми работает мой отдел, теперь подписываются на какую-то структуру, поэтому у нас есть стандартная реализация, которая упрощает переход из одного проекта в другой. –
Я на самом деле не использую фреймворк, и, посмотрев на это, он может быть хорошим куском решения. Спасибо –