注入依赖注入框架Parsley在Flex中技术开发

依赖注入  时间:2021-02-08  阅读:()

依赖注入框架Paley在Flex中技术开发

目录

1依赖注入的简述

1 首先把Paley框架的核心库文件拷贝至工程项目的libs目录中

2 其次在项目的默认包中建立MXML格式的配置文件

3

1

2 方法注入方式将[Inject]元标签放到声明方法之前

4 根据ID属性来注入在配置文件中

5 直接在配置文件中声明依赖关系

5结束语

正文

1依赖注入的简述

依赖注入最初由Martin Fowler描述的一种设计模式。所谓依赖注入是指程序运行过程中如果需要调用另一个对象协助时无须在代码中创建被调用者而是依赖于外部的注入。 目的是达到软件组件之间的解耦降低各层的依赖性提高软件组件的灵活性、可重用性以及可扩展性减少不必要的重复性开发工作最终达到降低软件开发成本。

2 Paley框架的概述

Paley是一个专门为Flex和Flash设计的IOC容器和消息框架使用它可以创建高解耦的构架它允许你用M e t a dat a、 MXML、 XML来配置对象对象由一个容器来统一管理而且Paley是非常容易扩展的。基于Flash平台的依赖注入框架有些是基于纯Flex SDK开发的不能脱离Flex SDK而独立存在还有一些框架是基于Actiocript开发的能独立于Flex SDK而存在但是又不能Flex SDK深度集成。但是Paley两者的功能都兼备该框架的核心是基于IOC容器与消息子系统并不依赖于Flex SDK  同时部分额外的功能模块是专为Flex设计的 为MXML配置、视图注入依赖对象和Fl ex模块开发提供了良好的支持。

1 首先把Paley框架的核心库文件拷贝至工程项目的libs 目录中并让项目引用这些库文件。

2 其次在项目的默认包中建立M XML格式的配置文件该文件中可以直接以的方式配置注入对象也可以用Paley里面的Object标签配置注入对象。以下代码以Paley自带的Object标签来演示配置注入对象样例代码以配置RemoteObject为例子

3 最后在FLex项目主文件内加上Paley的Conf igure、

ContextBuilder、 FlexConfig标签初始化Paley的配置文件加载I OC容器和消息子系统。样例代码如下

Conf igure标签的作用是为了在视图组件中实现对象的依赖注入而FlexConfig标签的作用是在Flex主文件加载配置文件。 xxxConfig为去掉mx m l后缀的配置文件。

4 Paley框架依赖注入的五种方式

1 构造器注入方式直接把[InjectCotructor]元标签放在类的声明上面来告诉Paley框架产生构造器方式的注入。之所以要把该元标签放在类声明上面是因为目前的Flash虚拟机会忽略构造方法上面的元标签。

[InjectCotructor]class UserLoginDao {

private var service Logiervicepublic function UserLoginDao service Logiervice {this. service = service

2 方法注入方式将[Inject]元标签放到声明方法之前。class UserLoginDao {private var service Logiervice

[Inject] public function initLogiervice serviceLogiervice  void{this. service = serviceclass UserLoginDao {

[Inject]private var service Logiervice

/*[Inject] public set service service Logiervice void{this. service = service

4 根据ID属性来注入在配置文件中托管的对象需声明一个对应的ID属性。此时注入就直接根据ID来注入依赖而不再根据类型来注入。class UserLoginDao {

[Inject id=” logiervice”  ] private var serviceLogiervice

5 直接在配置文件中声明依赖关系此时可不用在类的方法或属性前面加上[Inject]元标签。

5结束语

通过在FLEX开发中使用Paley框架的依赖注入技术实现了对象的动态注入使软件各层得到解耦提升软件开发的灵活性 同时也达到降低软件开发和维护成本的目的。

参考文献

[1] Shivprasad koirala Design pattern. Inveion ofcontrol and Dependency injection[EB/OL] . http

KB/aspnet/IOCDI.aspx.

[2] Martin Fowler. Inveion of Control Containe and theDependency Injection pattern[EB/OL] . httparticles/injection.html.

[3] Paul. IoC Types[EB/OL] . http display/PICO/IoC+Types。

新网,域名7月盛夏1核心2G内存.COM域名仅19.9元/首年,主机9.9元/月,企业邮箱0元体验

新网好不好?新网域名便宜吗?新网怎么样?新网是国内老牌知名域名注册商,企业正规化运营,资质齐全,与阿里云万网和腾讯云DNSPOD同为国内服务商巨头。近日新网发布了最新的七月放价季优惠活动,主要针对域名、云主机、企业邮箱、SSL证书等多款云产品推送了超值的优惠,其中.com顶级域名仅19.9元/首年,.cn域名仅16元/首年,云主机1核心2G内存3Mbps带宽仅9.9元/月,企业邮箱更是免费送1年,...

织梦DEDECMS即将授权收费和维权模式 站长应对的几个方法

这两天在站长群里看到不少有使用DEDECMS织梦程序的朋友比较着急,因为前两天有看到来自DEDECMS,我们熟悉的织梦程序官方发布的公告,将会在10月25日开始全面商业用途的使用DEDECMS内容管理程序的会采用授权收费模式,如果我们有在个人或者企业商业用途的,需要联系且得到授权才可以使用,否则后面会通过维权的方式。对于这个事情,我们可能有些站长经历过,比如字体、图片的版权。以及有一些国内的CMS...

JustHost俄罗斯VPS有HDD、SSD、NVMe SSD,不限流量低至约9.6元/月

justhost怎么样?justhost服务器好不好?JustHost是一家成立于2006年的俄罗斯服务器提供商,支持支付宝付款,服务器价格便宜,200Mbps大带宽不限流量,支持免费更换5次IP,支持控制面板自由切换机房,目前JustHost有俄罗斯6个机房可以自由切换选择,最重要的还是价格真的特别便宜,最低只需要87卢布/月,约8.5元/月起!总体来说,性价比很高,性价比不错,有需要的朋友可以...

依赖注入为你推荐
百度k站百度k站为什么无线路由器限速设置无线路由器能设置限速吗?或者说那个牌子的能。公章制作如何制作公章怎么点亮qq空间图标QQ空间图标怎么点亮?服务器连接异常主服务器连接异常网站营运网络运营主要做些什么?域名库求解:请将您的域名:别名(CNAME)主机解析到idc1.xiaodoutao.com网页窗口最大化怎样才能打开网页窗口自己最大化nokia最新手机诺基亚最新款手机都那些qq签名设置手机qq怎么设置个性签名
国际域名 老域名失效请用户记下 山东vps 如何注册网站域名 warez 域名商 香港机房 NetSpeeder lamp配置 hnyd 灵动鬼影 ftp教程 t云 移动服务器托管 西安服务器托管 湖南idc 西安主机 photobucket 阿里云邮箱怎么注册 magento主机 更多