首页 >
观点导向
✍ dations ◷ 2025-04-04 05:41:42 #观点导向
面向切面的程序设计(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提出的。同许多重大的技术创新一样,面向切面的程序设计也是在不同的地方被独立发展出来。面向切面编程的早期工作主要是由下面几个机构和人员作出的。
相关
- 溶细胞素溶细胞素(Cytolysin),亦作溶胞素,是一类由微生物、植物或动物分泌的对特定细胞有毒性的物质。这类物质通常是通过让靶细胞因裂解而溶解而起效的。通常,溶细胞素会因对某一类细胞
- 咸丰帝清朝第9位皇帝孝钦显皇后叶赫那拉氏咸丰帝(1831年7月17日-1861年8月22日),爱新觉罗氏,名奕
- Gilead Sciences吉利德科学公司(Gilead Sciences, Inc.)是一家美国大型生物制药公司,成立于1987年,总部位于加州旧金山湾区的福斯特城。在台湾注册的名称为“吉立亚”。主要生产和研发针对艾滋
- 南苏丹面积以下资讯是以2019年估计国家领袖国内生产总值(购买力平价) 以下资讯是以2016年估计国内生产总值(国际汇率) 以下资讯是以2016年估计人类发展指数 以下资讯是以2018年估计立
- 热疗热疗(thermal therapy),又名熏蒸,是一种将人的组织加热以达到治疗的效果的治疗方式。热疗是一种常见的物理治疗方式,可以对于一些软组织的伤害有治疗的效果。而在癌症的治疗上亦
- 花序花序(inflorescence)是花梗上的一群、或一丛花,依固定的方式排列,是植物的固定特征之一。花序可以分为:无限花序和有限花序。严格的说,花朵着生的分枝(stem)是种子植物的幼芽变异而
- 鐠4f3 6s22, 8, 18, 21, 8, 2蒸气压第一:527 kJ·mol−1 第二:1020 kJ·mol−1 第三:2086 kJ·mol主条目:镨的同位素镨(拼音:pǔ,注音:ㄆㄨˇ,粤拼:pou2)是一种化学元素,它的化学符号是Pr
- 约翰·希南约翰·费利克斯·安东尼·塞纳(英语:John Felix Anthony Cena,1977年4月23日-),是一名美国男演员、饶舌歌手及职业摔角选手。受聘于世界摔角娱乐(WWE),同时也是真人实境秀主持人。他
- 王铁冠王铁冠(1937年12-),中国石油地质学家。出生于上海。中国石油大学(北京)教授。1956年毕业于北京石油地质学校。1965年毕业于北京石油学院。1994年起在石油大学(北京)任教,现兼任国家自
- 埃癸斯埃癸斯(希腊语:Αιγίς;英文拼法Aegis)是古希腊神话中的神盾,据说有两面,一面为宙斯所有,而另一面为雅典娜所有。据说两面都为赫淮斯托斯(Hephaestus)所打造。