注入依赖注入框架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。

CloudCone2核KVM美国洛杉矶MC机房机房2.89美元/月,美国洛杉矶MC机房KVM虚拟架构2核1.5G内存1Gbps带宽,国外便宜美国VPS七月特价优惠

近日CloudCone发布了七月的特价便宜优惠VPS云服务器产品,KVM虚拟架构,性价比最高的为2核心1.5G内存1Gbps带宽5TB月流量,2.89美元/月,稳定性还是非常不错的,有需要国外便宜VPS云服务器的朋友可以关注一下。CloudCone怎么样?CloudCone服务器好不好?CloudCone值不值得购买?CloudCone是一家成立于2017年的美国服务器提供商,国外实力大厂,自己开...

2022年腾讯云新春采购季代金券提前领 领取满减优惠券和域名优惠

2022年春节假期陆续结束,根据惯例在春节之后各大云服务商会继续开始一年的促销活动。今年二月中旬会开启新春采购季的活动,我们已经看到腾讯云商家在春节期间已经有预告活动。当时已经看到有抢先优惠促销活动,目前我们企业和个人可以领取腾讯云代金券满减活动,以及企业用户可以领取域名优惠低至.COM域名1元。 直达链接 - 腾讯云新春采购活动抢先看活动时间:2022年1月20日至2022年2月15日我们可以在...

RAKsmartCloud服务器,可自定义配置月$7.59

RAKsmart商家一直以来在独立服务器、站群服务器和G口和10G口大端口流量服务器上下功夫比较大,但是在VPS主机业务上仅仅是顺带,尤其是我们看到大部分主流商家都做云服务器,而RAKsmart商家终于开始做云服务器,这次试探性的新增美国硅谷机房一个方案。月付7.59美元起,支持自定义配置,KVM虚拟化,美国硅谷机房,VPC网络/经典网络,大陆优化/精品网线路,支持Linux或者Windows操作...

依赖注入为你推荐
手机游戏排行榜2015安卓手机单机游戏2015年排行榜?赵雨润星辰变电影是真的启动了吗?iphone5解锁iphone5怎么解锁怎么在qq空间里添加背景音乐怎么在QQ空间里插入背景音乐??自助建站自助建站到底好还是不好arm开发板新手入门应如何选择 ARM 开发板?qq空间装扮QQ空间装扮如何建立一个网站怎样能创建一个网站奇虎论坛奇虎论坛最新推荐歌曲列表·淘宝网页显示不正常淘宝网页不能正常显示
台湾虚拟主机 域名信息查询 美国linux主机 工信部域名备案查询 工信部域名备案 韩国加速器 日志分析软件 windows2003iso 申请空间 上海域名 建立邮箱 免费防火墙 超级服务器 atom处理器 稳定空间 腾讯网盘 博客域名 wordpress空间 sonya 西部主机 更多