Модули и RSL служат для разных целей.
RSL могут содержать код и ресурсы и загружаться в память при загрузке основного SWF-файла, как если бы они были частью одного и того же файла.
Основной целью RSL является разделение кода или ресурсов, которые могут использоваться в нескольких приложениях , чтобы веб-браузер мог его кэшировать и загружать только один раз.RSL не требуют инфраструктуры Flex и могут использоваться в любом проекте Flash / ActionScript.Вы не получаете никакого контроля над тем, как загружается RSL, и вы не можете выгрузить его.
Модули - это, по сути, внешний SWF, который может быть загружен по требованию с добавлением большого количества специфичного для Flex кода., чтобы убедиться, что функции Flex работают как положено.Например, наследование стилей и встроенные шрифты могут быть проблематичными в загруженных SWF, если они не обрабатываются правильно.Компоненты Flex UI имеют особую логику, чтобы убедиться, что эти вещи работают правильно с модулями.Модули также имеют дело с междоменными проблемами (например, вы не можете нормально получать события мыши, когда мышь находится над SWF из другого домена, но модули работают вокруг этого).
Модули загружаются по требованию, и обычно содержит представления. Основная цель модуля - отложить загрузку вида до тех пор, пока он не понадобится .Это ускоряет первоначальную загрузку приложения, и пользователь должен загружать это представление только в том случае, если он действительно хочет на него смотреть.
Модули имеют значительные накладные расходы по сравнению с простой загрузкой SWF, но вам потребуетсяиспользуйте модуль, чтобы гарантировать, что все функции Flex работают должным образом.
Модули и RSL можно оптимизировать для удаления кода, который уже включен в конкретное приложение.Тем не менее, для модулей это имеет больше смысла, поскольку в большинстве случаев он побеждает основной сценарий использования RSL, делая его пригодным для использования только с этим единственным приложением.