首页 >
观点导向
✍ dations ◷ 2025-07-01 11:13:41 #观点导向
面向切面的程序设计(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提出的。同许多重大的技术创新一样,面向切面的程序设计也是在不同的地方被独立发展出来。面向切面编程的早期工作主要是由下面几个机构和人员作出的。
相关
- 胃及十二指肠溃疡消化性溃疡(英语:peptic ulcer disease,简称PUD),又称胃及十二指肠溃疡。这是指胃、小肠前段(十二指肠)或幽门,有时也包含了食道下端的黏膜损伤(溃疡)。在胃发生的溃疡称作胃溃疡(英语:s
- 路易吉·伽伐尼路易吉·阿洛伊西奥·伽伐尼(意大利文:Luigi Aloisio Galvani, 拉丁文:Aloysius Galvani)1737年9月9日-1798年12月4日)是意大利医生、物理学家与哲学家,现代产科学的先驱者。他在意
- 塞萨洛尼基塞萨洛尼基(英语: Thessaloniki; 希腊语: Θεσσαλονίκη),又译作萨洛尼卡、塞萨洛尼卡、萨罗尼加,旧译作帖撒罗尼迦或忒萨洛尼卡(按古希腊语发音),是希腊第二大城市,也是
- 中脑中脑(英语:Midbrain)长约1.5公分,其腹面由桥脑延伸至间脑的乳头体(英语:Mammillary body),在两侧明显的突起称基脚(basis pedunculi),是由锥体运动系统及皮质桥脑径的纤维所组成。位于
- 树木学树木学(英文:Dendrology,dendro源自古希腊语:δένδρον,其意义为dendron,表示“树木”的意思;logy源自古希腊语:-λογία,意义为-logia(英语:-logy),表示“科学”或者“研究”的
- 议会制议会制又称内阁制、议会民主制(英语:Parliamentary system),是一种政治制度,特点是“议会无上”,政府首脑(总理或首相)权力来自议会,授权有两种途径:第一是议会改选后的多数议席支持,第
- 塞缪尔·古德斯米特塞缪尔·亚伯拉罕·古德斯米特(英语:Samuel Abraham Goudsmit,1902年7月11日-1978年12月4日),荷兰-美国物理学家,他和乔治·乌伦贝克于1925年提出了电子自旋概念。1935年至1966年间
- 孙孙是指子女的子女,男性称孙儿或孙子,女性称孙女。在父系社会,儿子的子女称为“内孙”或者“孙”,女儿的子女称为“外孙”。而自己的孙或外孙就称自己为祖父母或外祖父母。另外,闽
- 高雄左营孔子庙坐标:22°41′20″N 120°17′54″E / 22.6889832°N 120.2983510°E / 22.6889832; 120.2983510高雄孔子庙位于高雄市左营区莲潭路400号,莲池潭北岸,毗邻半屏山,占地六千余平方
- 双眼视觉双眼视觉,英文Binocular vision,是指生物在双眼视野范围互相重叠下,所产生的视觉。英文binocular的两个词根均来自于拉丁文,bini的意思是双,colulous的意思是眼睛。 其成因为双眼