- 浏览: 57476 次
- 来自: 北京
文章分类
最新评论
-
pengylfighting:
太感谢了
tomcat启动慢问题 -
shoushou2001:
很好很强大,
项目在tomcat中能运行,可是在WebLogic中部署就跑错的解决方案 -
java风:
严重错误 主要是程序的错误
WARN 为一般警告,比如ses ...
配置Log4j
今天要记录一下技术上的事情,根据我这两个月来的学习把module、component这两个用来解耦的东西做下较为详细的说明,以及这两个与主程序的 关系还有我所了解的通信方式做一下总结。
首先,module和components都可以把一个比较大的程序分成几个“部分”,这样每个部分可以单独开发和测试,更符合软件工程的“分而治之”思 想,也会大大减少开发的难度和尽可能的减少认为错误,而且还都可以复用。
module是可以动态加载和卸载的,也就是说它不是编译到主程序中的,可以做到想要的时候拿来,不想要的时候卸掉。因为module是预先编译的,但是 module不可以独立执行,一定要嵌到一个Application中才可以运行。注意:用它的时候用的是.swf,也就是编译之后的代码。简单的应用可 以用<mx:ModuleLoader>标签,在里面把url属性赋值就可以了,例如url="******.swf",复杂一点的就要用 moduleManager类来进行管理和控制了,跟其他的Manager是差不多,详细的根据Api吧。
component是静态的,它的用于自定义一个组件(类似于Button、dataGrid等),只要包含了定义好component的包,在Flex Builder中的Design模式下就可以像拖拽Button一样来应用它,会非常的方便。它在应用的时候相当于把自己嵌进Application中, 要随着Application进行编译。这从某种意义上说有点像import和include的区别。在代码应用上,在Application中的 xmlns属性中引入定义好的component所在的包就可以了,例如:xmlns:something="components.*",标签中可以这 样引用<something:yourComponent>,yourComponent就像一个自定义的button。
建立module和component只需要在IDE中右键,其余的就自然明白了。下面趁热打铁,说一说通信上的事情。
首先,调用主程序的方法或者属性,都可以用parentApplication.sth来调用。理论上来说只要module可以调用主程序中的方法,那么 module和Application之间的所有数据交互任务就都可以完成了,只是实现起来会比较麻烦,我这样做过,包括module和module之间 通信,可以通过Application作为桥。而更为高级一点的技术是通过自定义事件和接口契约来进行更为随意的通信。比如说Application要和 Module通信,那么首先要明确module要提供出什么方法A(),然后定义一个接口,这个接口要继承IEventDispatcher,然后此接口 声明module想要提供的方法A(),之后module要实现这个接口,把A()方法实现,还要声明一个特定类型的事件,然后Application中 声明一个ModuleLoader,要通信的Module跟其关联,然后通过child as 接口的名字获得接口就可以监听特定事件,也可通过那个接口调用Module的方法了。听起来挺复杂的,其实确实挺复杂的。要比较了解接口和自定义事件,要 不挺难整明白到底怎么回事的。总之就是通过接口
和自定义事件来完成很随意的通信,不过实现起来还真是挺有难度的。
上面听起来挺蒙的,缕一下,就是通过一个接口(Module实现它,主程序通过Module获得它),来监听Module的事件和调用Module的方 法。对,就是这个意思。
通信上总结一下,Module和component都是可以parentApplication来调用主程序的方法和属性的;component可以指定 id,然后Application可以通过id直接调用component中的对外方法;Module貌似是行不通的,我没实现过,有人弄通了指教一下 哈;通过自定义事件是可以进行比较方便的通信,component和Module都可以;如果中间加上接口的话会更好,结构更清晰,解耦性更好,但同时实 现起来也相对麻烦些。本人经验尚浅,如有不妥,敬请指正~
-----转载
首先,module和components都可以把一个比较大的程序分成几个“部分”,这样每个部分可以单独开发和测试,更符合软件工程的“分而治之”思 想,也会大大减少开发的难度和尽可能的减少认为错误,而且还都可以复用。
module是可以动态加载和卸载的,也就是说它不是编译到主程序中的,可以做到想要的时候拿来,不想要的时候卸掉。因为module是预先编译的,但是 module不可以独立执行,一定要嵌到一个Application中才可以运行。注意:用它的时候用的是.swf,也就是编译之后的代码。简单的应用可 以用<mx:ModuleLoader>标签,在里面把url属性赋值就可以了,例如url="******.swf",复杂一点的就要用 moduleManager类来进行管理和控制了,跟其他的Manager是差不多,详细的根据Api吧。
component是静态的,它的用于自定义一个组件(类似于Button、dataGrid等),只要包含了定义好component的包,在Flex Builder中的Design模式下就可以像拖拽Button一样来应用它,会非常的方便。它在应用的时候相当于把自己嵌进Application中, 要随着Application进行编译。这从某种意义上说有点像import和include的区别。在代码应用上,在Application中的 xmlns属性中引入定义好的component所在的包就可以了,例如:xmlns:something="components.*",标签中可以这 样引用<something:yourComponent>,yourComponent就像一个自定义的button。
建立module和component只需要在IDE中右键,其余的就自然明白了。下面趁热打铁,说一说通信上的事情。
首先,调用主程序的方法或者属性,都可以用parentApplication.sth来调用。理论上来说只要module可以调用主程序中的方法,那么 module和Application之间的所有数据交互任务就都可以完成了,只是实现起来会比较麻烦,我这样做过,包括module和module之间 通信,可以通过Application作为桥。而更为高级一点的技术是通过自定义事件和接口契约来进行更为随意的通信。比如说Application要和 Module通信,那么首先要明确module要提供出什么方法A(),然后定义一个接口,这个接口要继承IEventDispatcher,然后此接口 声明module想要提供的方法A(),之后module要实现这个接口,把A()方法实现,还要声明一个特定类型的事件,然后Application中 声明一个ModuleLoader,要通信的Module跟其关联,然后通过child as 接口的名字获得接口就可以监听特定事件,也可通过那个接口调用Module的方法了。听起来挺复杂的,其实确实挺复杂的。要比较了解接口和自定义事件,要 不挺难整明白到底怎么回事的。总之就是通过接口
和自定义事件来完成很随意的通信,不过实现起来还真是挺有难度的。
上面听起来挺蒙的,缕一下,就是通过一个接口(Module实现它,主程序通过Module获得它),来监听Module的事件和调用Module的方 法。对,就是这个意思。
通信上总结一下,Module和component都是可以parentApplication来调用主程序的方法和属性的;component可以指定 id,然后Application可以通过id直接调用component中的对外方法;Module貌似是行不通的,我没实现过,有人弄通了指教一下 哈;通过自定义事件是可以进行比较方便的通信,component和Module都可以;如果中间加上接口的话会更好,结构更清晰,解耦性更好,但同时实 现起来也相对麻烦些。本人经验尚浅,如有不妥,敬请指正~
-----转载
发表评论
-
Flex事件效果与渲染
2011-11-28 15:38 800触发器名称 对 ... -
SystemManager: Every Flex application’s best friend
2011-11-16 09:54 611SystemManager: Every Flex appli ... -
preloader
2011-11-14 15:55 434Flex 的默认的 Preloader, 平心而论,不是很 ... -
xml小心障眼
2011-11-11 18:13 0test.xml: <?xml version=& ... -
itemRenderer
2011-11-11 16:15 1198理解itemRenderer Flex中提供了大 ... -
Flex的注释
2011-11-11 15:28 563一.在<mx:script>标签中写注释 1.用 ... -
flex与js交互
2011-11-09 16:47 468一、在JavaScript中调用Flex方法在Flex中可以用 ... -
Flex Data Binding详解
2011-11-09 15:33 509转载-- Data BindIng简单的说就是当绑定源 ... -
callLater解析
2011-11-09 11:10 617转载-- Flash的fl组件和Flex的mx组件 ... -
在Flex中让Tree绑定数据后自动展开树节点
2011-11-09 11:00 603转载-- 用Flex/Flash做开发的同志们应该会 ... -
flex百条常用知识
2011-11-07 11:12 0flex百条常用知识 【 ... -
Flex 自定义事件
2011-11-07 11:09 548Flex 自定义事件 public static co ... -
AS3 数据类型转换 (转)
2011-11-07 10:22 1112AS3 数据类型转换 (转) ... -
AS3中遍历xml
2011-11-07 10:16 587AS3中遍历xml ... -
flex 数据基础-使用XML和XMLList
2011-11-07 10:08 609flex 数据基础-使用XML和XMLList ... -
flex 数据基础-使用XML和XMLList
2011-11-07 10:07 827flex 数据基础-使用XML和XMLList ... -
Flex自定义事件用法指南
2011-11-06 11:09 572Flex自定义事件用法指南 本文向大家介绍一下Fle ... -
Flex的Array和ArrayCollection
2011-11-06 10:39 4481.array作为控件使用 FLEX3写法: ... -
flex命名空间
2011-11-04 11:17 0Flex 4带给我们的,是全新的命名空间。了解这些命名空间必 ... -
沙箱安全
2011-11-04 11:08 0Flex的最重要两个文件:MXML文件与AS文件。 M ...
相关推荐
the Flex 3 compiler module for J2EE application servers.
最近在学Flex时遇到一个比较烦人的问题,就是题目所说的。 更郁闷的是GOOGLE了挺久还是没筛选到合适的东西,好在后来有群主的帮助,才搞定了这个问题。自己也简单演示了一下。
Flex Module间通信 此例给大家展示一个使用了模块(Module)的简单的Flex程序,你可以从中获得启示。
在Flex3的Module模块程序设计中,在Google中进行了大量的资料查找,综合比较各个资源后,将我认为最有价值的资料放在这里(全英文的)。 下载包中包括: 1、Adobe Creating Mudule Application.pdf 2、相似例子的源...
flex中moduleLoader动态加载module时传递参数源代码
不要以为我要5分很高,这个绝对是官网资源,其中包含各位最一直在寻找却找不到即使找到也不好用的 flex-bootstrap-jsp.jar flex-bootstrap.jar flex-webtier-jsp.jar flex-webtier.jar
Flex基于Module模块的开发文档主要介绍涵盖基本所有: 1、模块化的定义与原理; 2、模块化的作用; 3、模块化的优点; 4、flex与模块通信,直接调用模块(module)方法及示例代码; 5、flex基本控件用法及示例代码;...
在Flex工程中添加Module的方法是:在FlashBuilder中右键工程目录->Porperties->Flex Modules, 然后就可以add/edit/remove需要的module了, 但问题 是无论添加多少module都要点击add按钮一个一个添加! 像我们的项目一...
flex 火焰字 flex 火焰字flex 火焰字flex 火焰字flex 火焰字
Adobe+Flex+Component+Explore
FlexModule_j2ee Flex 与JSP 整合用的.jar 文件 Jsp 中引用Flex 标签
flex中文帮助flex中文帮助flex中文帮助flex中文帮助
Flex动态CSS,设定整个application的CSS样式
Flex 3 Component Explorer 不用多解释吧~~学习Flex 3控件的好手册,分了三个压缩卷,这是第一卷,请下齐三个卷
Flex 3学习参考工具,页面分为两大块,上面为页面显示效果,下面为源码
通过这个工程可以实现flex页面嵌入到jsp中。
the Flex 3 compiler module for J2EE application servers.
flex 的基础入门书+flex组建大全(component explorer),帮你尽快走进flex
Apress.FriendsofED.AdvancED.Flex.Application.Development.Aug.2008.pdf