Apache flex Flex中的模块化

Apache flex Flex中的模块化,apache-flex,air,modularity,Apache Flex,Air,Modularity,我正在为Flex/Air开发一个相当大的应用程序。我们使用它与来自JavaEE服务器的模型进行交互 我一直在读Flex中的模块化和模块。应用程序已经构建好了,我正在想办法重新设计一些类和部分。从我到目前为止所读的内容来看,我理解模块是一种不同的swf,可以动态加载。大多数教程/文档面向使用Flex或Air的Flash“程序员”,而不是真正的开发人员,因此在线资源更难获取 我还不明白的是如何在这个模块下封装ActionScript类或MXML视图 我已经将一些代码分离到库中。例如,从Granite

我正在为Flex/Air开发一个相当大的应用程序。我们使用它与来自JavaEE服务器的模型进行交互

我一直在读Flex中的模块化和模块。应用程序已经构建好了,我正在想办法重新设计一些类和部分。从我到目前为止所读的内容来看,我理解模块是一种不同的swf,可以动态加载。大多数教程/文档面向使用Flex或Air的Flash“程序员”,而不是真正的开发人员,因此在线资源更难获取

我还不明白的是如何在这个模块下封装ActionScript类或MXML视图

我已经将一些代码分离到库中。例如,从Granite生成的代码位于“服务器”库中。但我想将逻辑的各个部分与其版主、控制器和视图分开。模块是一条路吗?是否有类似于教程的“傻瓜模块”或“程序员首选Flex模块”,以获得更好的视角来构建我的体系结构?何时选择库,何时选择模块


我使用的是Flex 3.5,迁移到Flex 4还有很长的路要走,所以请不要回答Flex 4,谢谢

模块是将UI封装到互不依赖的不同部分的答案。将它们视为应用程序内部的应用程序

如果您想要封装“代码”,即非ui actionscript,那么您实际上只需要类和类的包。您还可以将该代码打包到swc中,swc只是该代码的编译版本,可以包含在多个项目中(我认为这就是您所说的库)

您不会只想创建一个包含非ui代码的模块。您不希望在应用程序中使用模块来分离模型/视图/控制器

如果您的应用程序中有一部分完全独立运行,除了可能传入的一点点信息外,它与应用程序的其余部分没有真正的依赖关系,那么对于模块来说是有意义的

我们使用模块的地方主要是针对一个应用程序,它有不同的部分,您一次只在一个部分中工作。其他部分不需要占用资源,因此我们在模块中有不同的部分,并根据需要加载/卸载它们

这有用吗

编辑以回复以下评论:

我所说的库是指Flex库 项目,在其中封装 分类并使用swc。你能吃点什么吗 Flex项目中的这些库? (我使用一个单独的库项目 每个新图书馆)


是的,您可以在flex项目中使用这些swc(代码库)。只要将swc放在flex/FlashBuilder项目的lib目录中,代码就会自动添加到类路径中。只要确保单个swc中的代码所需的一切都在该swc中即可。不要让一个swc依赖另一个swc来运行。

模块是将UI封装到互不依赖的不同部分的答案。将它们视为应用程序内部的应用程序

如果您想要封装“代码”,即非ui actionscript,那么您实际上只需要类和类的包。您还可以将该代码打包到swc中,swc只是该代码的编译版本,可以包含在多个项目中(我认为这就是您所说的库)

您不会只想创建一个包含非ui代码的模块。您不希望在应用程序中使用模块来分离模型/视图/控制器

如果您的应用程序中有一部分完全独立运行,除了可能传入的一点点信息外,它与应用程序的其余部分没有真正的依赖关系,那么对于模块来说是有意义的

我们使用模块的地方主要是针对一个应用程序,它有不同的部分,您一次只在一个部分中工作。其他部分不需要占用资源,因此我们在模块中有不同的部分,并根据需要加载/卸载它们

这有用吗

编辑以回复以下评论:

我所说的库是指Flex库 项目,在其中封装 分类并使用swc。你能吃点什么吗 Flex项目中的这些库? (我使用一个单独的库项目 每个新图书馆)


是的,您可以在flex项目中使用这些swc(代码库)。只要将swc放在flex/FlashBuilder项目的lib目录中,代码就会自动添加到类路径中。只要确保单个swc中的代码所需的一切都在该swc中即可。不要让一个swc依赖另一个swc来运行。

在旁注中,您所说的“大多数教程/文档面向使用Flex或Air而不是真正开发人员的Flash”程序员,这使得在线资源更难获取,这到底是什么意思?就书籍而言,“flex 3食谱”中有几个关于模块的好章节(链接:),在web上有很多资源。我发现的大多数示例包括MXML中的所有逻辑,而不是代码。我发现他们中的大多数都是面向学习Flex的Flash设计师,而不是学习Flex的程序员。这是一个不同的观众,不同的视角。但是对于开发人员来说,有一些很好的资源(尽管更少)。也许“真正的开发人员”太苛刻了……另一方面,你所说的“大多数教程/文档面向使用Flex或Air而不是真正的开发人员的Flash”程序员,这使得在线资源更难获取,这到底是什么意思?就书籍而言,“Flex3食谱”中有两个关于模块的好章节(链接:)和