首页 >
观点导向
✍ dations ◷ 2025-10-12 06:17:20 #观点导向
面向切面的程序设计(Aspect-oriented programming,AOP,又译作面向方面的程序设计、剖面导向程序设计)是计算机科学中的一种程序设计思想,旨在将横切关注点与业务主体进行进一步分离,以提高程序代码的模块化程度。通过在现有代码基础上增加额外的通知(Advice)机制,能够对被声明为“切点(Pointcut)”的代码块进行统一管理与装饰,如“对所有方法名以‘set*’开头的方法添加后台日志”。该思想使得开发人员能够将与代码核心业务逻辑关系不那么密切的功能(如日志功能)添加至程序中,同时又不降低业务代码的可读性。面向切面的程序设计思想也是面向切面软件开发的基础。面向切面的程序设计将代码逻辑切分为不同的模块(即关注点(Concern),一段特定的逻辑功能)。几乎所有的编程思想都涉及代码功能的分类,将各个关注点封装成独立的抽象模块(如函数、过程、模块、类以及方法等),后者又可供进一步实现、封装和重写。部分关注点“横切”程序代码中的数个模块,即在多个模块中都有出现,它们即被称作“横切关注点(Cross-cutting concerns, Horizontal concerns)”。日志功能即是横切关注点的一个典型案例,因为日志功能往往横跨系统中的每个业务模块,即“横切”所有有日志需求的类及方法体。而对于一个信用卡应用程序来说,存款、取款、帐单管理是它的核心关注点,日志和持久化将成为横切整个对象结构的横切关注点。切面的概念源于对面向对象的程序设计的改进,但并不只限于此,它还可以用来改进传统的函数。与切面相关的编程概念还包括元对象协议、主题(Subject)、混入(Mixin)和委托(Delegate)。从核心关注点中分离出横切关注点是面向切面的程序设计的核心概念。分离关注点使得解决特定领域问题的代码从业务逻辑中独立出来,业务逻辑的代码中不再含有针对特定领域问题代码的调用,业务逻辑同特定领域问题的关系通过切面来封装、维护,这样原本分散在在整个应用程序中的变动就可以很好的管理起来。最广为人知的面向切面的编程库是由施乐帕洛阿尔托研究中心开发的AspectJ,该语言可以和Java编程语言结合在一起使用。在.NET Framework的环境,则有透过MSIL动态注入来实现AOP的PostSharp库,但是到3.0版为为止,官方文件中只注明适用于C#与VB.NET,不适用于C++/CLI。“面向切面的程序设计”这一术语出现的具体时间已经不可考证了,但该词是由施乐帕洛阿尔托研究中心的Chris Maeda首先提出的。术语“横切”是由Gregor Kiczales提出的。同许多重大的技术创新一样,面向切面的程序设计也是在不同的地方被独立发展出来。面向切面编程的早期工作主要是由下面几个机构和人员作出的。
相关
- 古生物学古生物学是研究古地质时代中的生物及其发展的科学。它是生物学和地质学的交叉科学。既是生命科学中唯一具有历史科学性质的时间尺度的一个独特分支,研究生命起源、发展历史、
- 千代田区千代田区(日语:千代田区/ちよだく Chiyoda ku */?)是日本东京都的特别区之一,位于东京都区部的中心位置,在1947年(昭和22年)3月15日由麹町区与神田区(日语:神田区)合并而来,名称来自于
- 麻醉药麻醉药(英语:anesthetic、或anaesthetic)是一种麻醉学所用的麻醉药品,可暂时、可逆性的使人丧失知觉。麻醉药分为两大类:全身麻醉药导致可逆的意识丧失;局部麻醉药导致身体的有限
- +国际冠码是要拨打国际电话时,在键入受话地区的国际电话区号前,所须键入发话地区的输出(前缀)码,以转接至国际电话线路用的数字。在拨打国际电话时,通常会将国际冠码放在国际电话区
- 管晓宏管晓宏(1955年11月3日-),中国科学院院士,网络化系统特别是能源电力系统优化与安全理论与应用方面的研究学者。1955年出生于四川泸州,毕业于清华大学,后留学美国康乃狄克大学。他目
- 福田敏男福田敏男(1948年12月12日-),日本机器人专家,主要从事微纳操作机器人与仿生机器人的研究,被誉为“微纳机器人之父”。福田敏男出生于日本富山县,于1971年毕业于早稻田大学机械工程专
- 泡澡泡澡是指把身体浸泡于水中的一种洗澡方式。根据人的生理状况,40℃是一个重要界限。37℃到39℃左右的水温,对于皮肤的刺激较少,此时副交感神经会发挥使身心放松的作用。
- 铣刀铣刀是通常用于铣床或加工机的切削工具,以执行铣削操作(有时在其他机床中)。它们通过其在机器内固定的进给率进行移除材料。铣刀具有几种形状和许多尺寸。 还可以选择涂层,以及
- 人口增长人口自然增长率指一定时期内人口自然增长数(出生人数减死亡人数)与该时期内平均人口数之比,通常以年为单位计算,用千分比来表示,计算公式为:人口自然增长率 = (年内出生人数 - 年内死
- 人群男男性行为者(英文:men who have sex with men,缩写MSM,又称男男性接触者、男男性行为人群)是指与同性发生性关系的男性,而不管他们自我认定为何种性向。这个术语主要用于美国,用以