二、Component组件与实现
下面详细说说Component组件与实现。
SCA允许在很宽的implementation types(实现类型)中选择任何一种实现,例如象Java、BPEL或者C++等都是implementation types(实现类型),每一种类型都描述一个明确的实现技术。这些技术不仅可以是一种语言,象Java,还可以是特殊的框架或者运行环境,象Java技术中的Spring框架和J2EE技术中的EJB环境。
目前,SCA提供了Spring、EJB、JavaScript、Groovy、Ruby、BPEL等的实现技术,可以将已有的程序实现加入到SCA系统中,为SCA提供具体的功能实现。也可以根据实际需要,通过SCA提供的扩展机制,将新的技术增加到SCA系统中。
Component组件的Implement联接到一个某种技术的具体实现,这些实现通过Component组件联接到SCA系统中。每个Component组件仅对应一个实现。如图:
图中以.ComponentType为扩展名的文件是SCA提供的机制,对Component的实现提供可扩展的、可配置的实现机制。每个Component组件的细节,包括service、reference和property通过.ComponentType配置实现。
经过Component组件的封装,形成一个格式一致、描述规范、统一的Component组件实现层。Component组件为Composite组件提供了服务—功能实现,分离了具体技术实现和Composite组件层,也将业务层、架构层与实现层分开。
三、Component组件和实现机制带来的益处:
1、实现层和架构业务层分离,使实现层不必受架构层和业务层的限制和影响,专注与实现。开发人员只需关注实现,架构设计和业务人员也只需关心各自的层面的事情。
2、每一个Component组件实现一个功能,实现的功能职责清晰,目标明确。每一个实现将精力集中在目标功能上,只做与它相关的事情。
3、清晰的责任和明确的目的,使代码量变得很少。几百k甚至几十k的代码量就可以完成功能的实现。
4、代码量的减少,增加了可测试性和可调试性。编码、测试和维护都变得相对简单,提高了开发效率和代码质量。
5、Component组件的实现粒度非常的小,可以提供很小的独立的接口,提高可复用的程度。
6、Component组件的实例通过XML格式文件的描述进行装配,以依赖注入模式的松散的耦合方式实现对具体实现的注入。
7、通过Component组件的配置和依赖注入模式可以非常容易的扩展和替换具体实现。
8、可以用不同的语言和技术实现相同的功能,充分发挥已有资源的作用,人近其才,物近其用,节省投资。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
相关推荐
-
事件驱动框架和SOA在空军的应用
空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。
-
揭秘New Relic APM技术细节
New Relic应性能管理(APM)套件主要用于Web软件开发。它允许用户在面向服务的架构(SOA)上跟踪关键事务性能,并且支持代码级别的可见性来评估特定代码段和SQL语句对性能的影响
-
仅凭SOA和云无法解决业务数据管理风险问题
SOA和云可以是某些恼人问题高效的解决方案;这一点我们已经知道了。但是也要记住它们并不是所有事情的直接答案,特别是当你的问题是业务数据管理风险,而不是技术问题时。
-
如何避免云计算与SOA冲突