知识大全 在Delphi中应用AOP实现日志功能[1]
Posted 知
篇首语:不磨不炼,不成好汉。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 在Delphi中应用AOP实现日志功能[1]相关的知识,希望对你有一定的参考价值。
在Delphi中应用AOP实现日志功能[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
AOP现在很火 网上有这许多支持AOP的框架 对于Delphi来说同样也有MeAOP 不过觉得这些框架太复杂了
现在有一个系统 基本上都快结束了 整体上当然是没有采用什么AOP的框架 对于这样的系统能否用上AOP的一点点好处呢?
项目组提出在现有的系统上加入日志记录的需求 大家一起来看看我是怎么来实现这个功能的吧
AOP简要说明
根据网上对AOP的解释 它具有下面的特征
将通用功能从不相关类之中分离出来 能够使得很多类共享一个功能 一旦功能发生变化 不必修改很多类 只要修改这个功能就可以了 AOP的核心在于保持横切关注点的分离
日志功能
这是一个比较典型的MIS系统 现在编码基本结束 不过某个开发人员接到了一个繁琐又看上去没什么技术含量的任务——实现日志功能 这个开发者就是本人了
虽然没什么难度 但还是设计一下吧 谁让我是一个自诩为高水平的程序员呢
一个设计图就这么做出来了 其中设计一个接口ILog来封装日志实现的细节 模块甲乙丙只需要使用接口ILog就可以 满足了XXX面向对象的设计原则 太完美了!
泡杯茶 然后开始写代码实现这个简单而庞大的任务 开始编码了!
TLog ILog实现比较简单 在此略去不谈 稍微修改一下以前模块的代码 将ILog接口传入每一个模块中
接下来只需要实现日志功能的调用就可以了
模块甲
procedure TModule acAction Execute(Sender: TObject);begin……Flog LogCommand( 模块甲 操作一 );end;
procedure TModule acAction Execute(Sender: TObject);begin……Flog LogCommand( 模块甲 操作二 );end;
模块乙
procedure TModule acAction Execute(Sender: TObject);begin……Flog LogCommand( 模块乙 操作一 );end;就这样 写了大约二十几个地方 突然觉得自己太可悲了 作为一个高科技人才就干这种体力活吗? 坏味道的出现 在许许多多的地方都出现了Flog LogCommand这样的函数调用 正是这些函数调用让我崩溃 在这么做下去估计我撑不到周末了
CV大法 已经让我觉得羞愧加恼怒 系统中到处出现了这样的重复代码
无奈之中 我耷拉着脑袋走到一个同事桌前
嘿 救救我吧 我想解脱
怎么回事? 同事善意地问道
事情是这样子的……
cha138/Article/program/Delphi/201311/24869相关参考
问题 问题想要添加日志记录性能监控安全监测 最初解决方案 最初
SpringAOP在DWR安全上的应用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &
关于AOP的应用实例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 开发环境:Eclipse+J
SpringAOP实现原理与CGLIB应用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 简
在Delphi数据库应用程序中常见错误 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Delph
在Delphi中开发使用多显示器的应用程序 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Wind
知识大全 Delphi中ScriptControl的高级应用
Delphi中ScriptControl的高级应用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!在
在Delphi中有许多控件支持拖放操作但仅限于应用程序内部而不能实现从Windows环境里向应用程序拖放文件本文将要介绍的就是如何用Delphi编写支持文件拖放的应用程序由于主要使用Windows
AOP概念解析 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 为什么要区分JEE容器和JEE应用
知识大全 SSH集成框架下真正实现Spring AOP拦截功能
SSH集成框架下真正实现SpringAOP拦截功能 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!