买了一本关于AOP方面的书,也看了好些天了。有些收获,谈谈吧,好像是这个blog的第一篇技术性文章了。
第一次接触面向方面编程,大概在两年前。那可是真正的接触啊,只知道了这个名字和一些名词,什么关注点啊,横切啊,组合过滤器等等,其他的就不是很清楚了。近几天看了一些关于AOP的文章,发现对AOP的思想有了一些认识,加上今天加班挺累,还没吃饭,所以有必要纪念一下。
我觉得首先要理解的一个问题是,为什么要面向方面。这个涉及到关注点分离的问题。在经典的面向对象程序设计中,使用了类继承的方法来进行关注点的分离,这是一大进步,但是似乎还不够。
之所以说“似乎”,是因为我认为,在关注点的分离这一方面,面向对象也可以做到面向方面,只是代价比较大,要求比较高而已,这点我后面再说(不知这样的看法是否完全正确,欢迎和我讨论啊)。
经典的面向对象编程中的类继承的关注点分离办法,事实上实现了一种一维的分离。比如说一个customer类,其所关注的,就是一个顾客的一些事情。这样的缺点是这个customer需要和其他的类进行交互的时候,就来的非常麻烦和缺乏灵活性,比如它需要与log类进行交互,需要对自身进行很多的修改,如果需要加入持久化功能,也需要对code进行比较大的改动(这种称为“入侵式的改动”)。
面向方面的一个目的是,希望能够在语言层面提供对N维关注点的分离方式,伴随的就是提供能够接受的非入侵式的改动能力。有个说法是人同时只能关注七件事情,所以面向方面的方向就是要减少人同时需要关注的事情,每次只对一个关注方面,最后再对各个方面进行组合。
上面我说面向对象也可以有代价地实现这种关注点的分离,比如说以小粒度组件以及他们的库的形式来对方面进行模拟。只要粒度够小,加以组合,多维终究也是可以用一维的方式来表达的。这样的方式的一个不足就是就是他们并不能阻止你去考虑别的方面。灵活性上,需要看借助什么语言实现了,要是加上范型和反射,估计...就太容易出乱子了,sigh~
其实从面向对象的单一职责的观点来看,AO只不过是OO的一种合理延伸而已。正如AspectJ也只是在Java上套了一个pre-pre-processor而已。
嗯,先写这么多,等有了积累再写~呵呵。
两百年前 means long long time ago...
2006/09/28
我看AOP
Labels: Technology
2006/09/27
原来生活是这样
我得承认,我确实有些浮躁了。
晚上一睡觉,就开始不由自主想事情,搞得睡不着,只好神经质似的起来看书,如同在发泄一种什么情绪。
我现在还是沉默的,结局无非两种,要么一直沉默下去,要么有一天开始说话了。这样的情绪,让我平日的生活确实多了许多烦恼(我还不敢说它是无谓的烦恼)。
虽然烦恼,至少说明我还不是一个麻木了的人。我有点儿庆幸,但是也有点儿担心,沉默到麻木的距离,是否已经近到让我不能察觉?
开心的事情仍然有,虾米来北京玩儿,十一可以回家过中秋,这些仿佛都是淹没在生活中的我的一丝希望,仿佛困在深井中的人看到的一线阳光……
钱花得太快,终于发现生活给了我一些教训,同学朋友之间戏称月光,月月光,下月光,各种机巧层出不穷,算是穷开心了吧。
生活的命令,如此严肃而让人难以违抗,聚也是它,散也是它。人只如同巨浪中一片树叶,唯一的努力就是紧紧黏在浪尖上,不要被抛了出去,至于被推向何处,却无从知晓。
世界确实精彩的,也是残酷的,但是归根结底是残酷的,因为人归根结底还是自私且懒惰的,而且与懒惰相比,自私乃是美德。
我的沉默,也许是出于自我保护。在一个新的环境,我不由的这么做。这也许是本性使然吧……很难说这样做是好是坏……
我没有放弃思考,相反,我的思考似乎从来没有这样多过。也许生活的魅力就是来自这里,生活给了我难以想象的体验,真切到让我的行为发生了改变。考交大失利后我有些沮丧,但是比起现在的感受,那种简单的心情简直像童话一样不可思议。
生活已经向我我初步表明了它的认真态度,我却还在思考,思考我应该向它表明一种什么态度。
Labels: My Life
2006/09/23
十一&中秋
大学到现在了,基本没有怎么过节.可谓惨淡啊.
今年有机会回家,十一中秋一起过了,终于了了一桩心愿吧.
十一,国庆么,国家势头好,咱也就高兴.
中秋可是意义不同啊,传统节日对于我这样一个传统的人来说,那份特别的感觉...
我对中秋的记忆,永远停留在十岁左右,在奶奶家过中秋的那一次.那是我永远不能抹去的记忆,每年中秋的时候,我总是会想起.清楚的记得那时全家人都在,包括远道回来的叔叔.爷爷奶奶当然高兴了.奶奶还很隆重的在院子里摆了供品给月亮,我们小孩儿都给月亮磕头,当时傻,也听话,就糊里糊涂都磕了.
不知道是因为磕了头,还是当时记忆力好,这一幕就再也没有忘掉过:深深的夜幕,亮亮的窗格,头顶的月亮和奶奶略驼的身影...
我自认是一个传统的人,对团圆这个东西还是比较在意.这次回去,应该说是家里少有的团圆了吧.要珍惜!
生活对我够宽容了,确实如此.
Labels: My Life
2006/09/20
日子过的难受
晚上经常失眠,我尽力控制自己,不过这确实很难.
脑子里想的乱七八糟的东西很多,有对未来的,有对当下的,总之是不满意现在的我,想改变.
想找个人聊聊,想到了dodo,这哥们儿外表一副不紧不慢的样子,心里想的东西却总让你大吃一惊.找了他几次,好过多了.还有chenjinn,虽然六月之后再没见过他,但笑笑的样子确总是浮现出来.还有smant,小牛,boyben,这些朋友,虽然没有怎么见了,我却总是能想起他们给我的启发和我从他们身上学习到的东西.
还有没有代沟的一帮,az&han,apple啦,小宇,大刘,aw,null,晗晗,虾米,benson和他的lala,等等等等,想想他们让我感到很亲切.
除却这些,其余的我已经很欣慰了,十一快来了,公司有假放,我终于可以回去看看家人了,妹妹读大学了,全家人都高兴,更加上有中秋,十月六号,好长时间没有和家人一起过中秋了吧,以后机会可能也不多了,这次是一定要过好的.
Labels: My Life