Объективно, каковы плюсы и минусы Cairngorm по сравнению с PureMVC?

Есть так много причин, по которым использование фреймворка MVC в Flex скачет, но выбор правильного кажется сложным. Мне интересно, что вы все думаете о своем опыте реализации того или иного (или другого).

Сэм

Этот вопрос уже задавали: stackoverflow.com/questions/37043/flex-mvc-frameworks

Theo 20.09.2008 22:46
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
1
3 127
1

Ответы 1

Вопрос уже задан, однако, поскольку вы конкретно спрашиваете о преимуществах Cairngorm и PureMVC, я так думаю:

  • И PureMVC, и Cairngorm затрудняют написание тестируемого кода. В основном это связано с использованием глобальных переменных, которые плотно связывают код вашего приложения, что затрудняет изоляцию какой-либо части для тестирования. Это больше относится к Cairngorm, чем к PureMVC, но оба они довольно плохи.

  • PureMVC более агрессивен, чем Cairngorm (это означает, что ваш код сильно зависит от фреймворка, например, вы должны создать подкласс / реализовать классы / интерфейсы фреймворка), но это не означает, что Cairngorm не является.

  • Cairngorm полон антишаблонов, таких как интенсивное использование глобальных переменных, PureMVC скрывает худшие части себя.

  • PureMVC является анти-Flex, Cairngorm просто не использует многие из хороших частей Flex. Под этим я подразумеваю, что PureMVC заново изобретает многие вещи, которые уже есть у Flex, потому что он хочет быть независимым от платформы, и из-за своей архитектуры, в частности посредников, усложняет использование привязок в полную силу. Cairngorm просто пропускает такие вещи, как всплытие событий, и вместо этого выбирает решения, включающие глобальную переменную.

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

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

Если вам по какой-то причине не нравится Mate, попробуйте Swiz, который является большим улучшением по сравнению с Cairngorm, но все же имеет некоторые странные предпочтения в использовании глобальных переменных для центральной диспетчеризации событий (что совершенно странно, учитывая, что одна из точек фреймворка заключается в том, чтобы избежать злых глобальных переменных Кэрнгорма).

Вы того же мнения о расширенной каирнгорме? umcairngorm.riaforge.org

Srikar Doddi 10.06.2009 18:14

Расширения Universal Mind подобны помаде на свинье. Они являются улучшением по сравнению с ванильным Cairngorm, но проблемы фундаментальные, а не поверхностные. Расширения единой системы обмена сообщениями делают Cairngorm более удобным в использовании, чем отсутствие фреймворка приложений (чего нельзя сказать о обычном Cairngorm), но не более того.

Theo 12.06.2009 16:45

Другие вопросы по теме