首页
电子ESOP
ESOP作业指导书
PTL仓库亮灯分拣
ESD静电监控系统
质量反追溯系统
点检巡检首检
智能电子看板
WMS智能货仓
MES生产执行系统
APS计划与排程
文档管理系统
加密管理系统
数字工厂
致远智能硬件开发
云业务伙伴
智能电视appH5开发
蓝牙传输
wifi远程控制
蓝牙APP定制
智能家居wifi
云平台开发
嵌入式Linux系统
组网方案设计
PCB硬件设计
医疗家电工业玩具
VR开发
智能遥控方案
管理软件
商城ERP
电商ERP
连锁超市电商ERP
跨境电商ERP
协同办公OA
房地产OA
IT数码OA
医药医院OA
教育培训OA
科研单位OA
酒店餐饮OA
连锁店OA
金融保险OA
政府事业单位OA
工厂企业OA
广告传媒OA
品牌ERP
K3
U8
易飞
HR人力资源
人力外包管理
支持服务AMS
中小企业ERP
美业管理
电商ERP
呼叫中心
SOP可视化管理
软件定制
保险中介系统
ehr人力资源软件
行业ERP
贸易公司ERP
机械设备ERP
手袋皮具ERP
触摸屏ERP
数码电子ERP
平板电脑ERP
电子电器ERP
塑胶制品ERP
五金制品ERP
手机ERP
移动电源ERP
背光源ERP
膜贴ERP
家具ERP
连锁店ERP
装修工程ERP
纸箱ERP
印刷ERP
鞋业ERP
财务公司erp
LED行业ERP
检测认证ERP
五金塑胶行业ERP
移动客户管理CRM
科创致远CRM
工厂企业crm
医药CRM
手机CRM
智能设备
ESD静电监控
仓库亮灯分拣
ESD静电监控
条码系统
工时采集
APP设计
设备管理系统
商城网站设计
数据采集
注塑机数据采集
仪器数据采集
设备数据采集
远程数据采集
游戏开发
关于我们
关于我们
联系我们
在线留言
法律声明
合作伙伴
企业文化
荣誉资质
销售热线:
4000-900-632
科创致远软件
>
新闻中心
>
行业新闻
>
颠覆C#王权的“魔比斯环”
一、 AOP的概念和原理
AOP(Aspect Oriented Programming)的中文意思是“面向方面编程”。它是10年前由施乐公司提出的。这种技术并不是一种新的编程技术,和OOP(Object Oriented Programming)并不是平级的。它只是OOP的一种扩展。
一个典型的软件系统由核心功能和系统功能组成。所谓核心功能就是和这个系统相关的业务功能,如在mail服务器中的核心功能是接收和发送电子邮件。系统功能则可以看成是系统的可选功能,如日志、安全等。如果没有了这些功能,mail服务器仍可以照常工作,只是不太安全了,并且无法查找以往的记录。实现这些系统功能,一般的作法是将系统功能的代码和核心功能的代码混在一起。这样做不仅加大了系统设计和实现的难度,而且使设计系统核心功能的程序员必须要考虑这些系统的功能,分散了他们的注意力。
由于在软件开发中遇到以上问题,人们开始设想是否能将软件中的核心功能和系统功能分开,达到单独设计、实现、维护的目的。于是就有人提出在设计和实现时单独进行,当编译时将单独编写的系统功能的代码织入(weaves)到核心功能的代码中,将代码织入的工具叫织入器(weaver)。这种思想经过长期的实践,就逐渐形成了AOP的核心思想,同时也形成了AOP最早的一个实现:AspectJ。
AOP构建在已有的技术基础之上,同时提供了自己的一套额外机制,也就是Aspect机制,对系统进行描述、设计和实现。AOP要保证这些机制在概念上简洁,执行效率高。其基本思想是通过分别描述系统的不同关注点(属性或者兴趣)及其关系,以一种松耦合的方式实现单个关注点,然后依靠AOP环境的支撑机制,将这些关注点组织或编排成最终的可运行程序。关注点包括普通关注点和系统的贯穿特性。通常可以使用传统的结构化方法和面向对象方法提供的机制,对普通关注点进行处理;使用Aspect机制,对贯穿特性进行处理。 系统的贯穿特性范围包括了从高层的关注目标,比如安全和服务质量,到低层的关注目标比如缓存处理等。贯穿特性可以是功能性的,比如事务规则,也可以是非功能的,比如同步和交易管理等。AOP将传统方法学中分散处理的贯穿特性实现为系统的一类元素—Aspect,并将它们从类结构中独立了出来,成为单独的模块。
为了支持上述的系统实现和运行过程,AOP系统首先必须提供一种声明Aspect的机制,包括Aspect如何声明,连接点(Aspect代码与其它代码的交互点)如何定义,Aspect代码如何定义,Aspect的参数化程度和可定制性等。 其次,需要提供一种将Aspect代码和基础代码组合编排(Weaving)在一起的机制,包括定义编排语言和规则,解决Aspect之间潜在的冲突,为组装和执行建立外部约束等。 最后,必须有生成可运行系统的实现机制,包括系统提供什么组合机制,是编译时刻静态组装,还是运行时动态组装;对程序单元分别进行编译的模块化编译机制;对AOP机制和现有系统兼容性的规约;对组装结果的验证机制等。
上一篇:
在C#中建立复杂的、灵活的SQL查询/命令
下一篇:
食品行业通过OA系统管控营销费用
产品方案
预约演示
价格咨询