软件开发好学吗广州seo外包公司
如大家所熟悉的,AOP(面向切面编程)的主要作用是把一些跟核心业务逻辑模块无关的功能抽离出来,这些跟业务逻辑无关的功能通常包括日志统计、安全控制、异常处理等。
把这些功能抽离出来之后,再通过“动态织入”的方式掺入业务逻辑模块中。这样做的好处首先是可以保持业务逻辑模块的纯净和高内聚行,其次就是可以很方便地复用日志统计等功能模块。
通常,在 JavaScript 中实现 AOP,是指把一个函数“动态织入”到另一个函数中,可以通过扩展 Function.prototype 来实现:
使用效果,如下:
这种使用 AOP 的方式来给函数添加职责,也是 JavaScript 语言中一种非常特别和巧妙的装饰者模式实现。