锁定老帖子 主题:什么是.NET Attribute
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2004-09-08
Aop作用的metadata是不被推荐的一种,无他,死板
|
|
返回顶楼 | |
发表时间:2004-09-08
sevenbamboos 写道 Aop作用的metadata是不被推荐的一种,无他,死板
???? 不懂。“AOP作用的metadata”是什么意思?举个例子来看看? |
|
返回顶楼 | |
发表时间:2004-09-08
* @spring.transaction
* level="READONLY" 请问这个标记是给什么程序用的? |
|
返回顶楼 | |
发表时间:2004-09-08
元语言可以干很多事情,比方说用来产生类的持续化映射文件,或者用来声明事务安全之类的。后者可以看作是AOP的一种实现方式。听听Rod Johnson怎么说:
AOP driven by source-level metadata is not “classic” AOP. Classes are not oblivious of the aspects that may be used to address crosscutting concerns; metadata annotations (but not code to interpret them) are applied to multiple classes. And it often doesn’t involve developers working directly with AOP concepts.[/b] |
|
返回顶楼 | |
发表时间:2004-09-08
sevenbamboos 写道 元语言可以干很多事情,比方说用来产生类的持续化映射文件,或者用来声明事务安全之类的。后者可以看作是AOP的一种实现方式。听听Rod Johnson怎么说:
AOP driven by source-level metadata is not “classic” AOP. Classes are not oblivious of the aspects that may be used to address crosscutting concerns; metadata annotations (but not code to interpret them) are applied to multiple classes. And it often doesn’t involve developers working directly with AOP concepts.[/b] 这个我知道。但我还是不知道你说的“AOP作用的metadata”是个什么意思。你要实现AOP,就必须要提供一些metadata,起码你得说明哪里是pointcut,要织入哪些aspect。那你说的到底是什么概念呢? |
|
返回顶楼 | |
发表时间:2004-09-08
gigix 写道 agilecat 写道 关键是元数据能否通过某种机制自动类的行为产生影响,而不是通过另外的厂来构造.如日志属性,new 的对象的方法调用会自动写日志,说白了,有一个内置于语言的隐含厂.
你觉得把这种feature内置在语言里很好?我倒觉得耦合太强了。很明显这个问题我只要用动态代理就可以解决,干吗要在语言里给我加上这些不必要的玩意?我需要倒也罢了,如果我不需要,岂不是还要为这些附加的复杂度买单? 哈,语言总是会变得越来越复杂的,现在的Java和5,6年以前比复杂多了,那你是不是也不因为不想为复杂度买单,而坚持用JDK1.2? |
|
返回顶楼 | |
发表时间:2004-09-08
hubdog 写道 现在的Java和5,6年以前比复杂多了
这话可不是真的。作为一种语言来说,Java从最初到现在并没有太多的变化,直到现在它仍然是一种非常简单的语言——如果跟C++和C#比的话。Tiger真正是在语言层面上有一些变化,但变的也多是语法,而且依然兼容着1.4。 |
|
返回顶楼 | |
发表时间:2004-09-09
改变代码中的metadata往往需要重新编译,并且维护嵌在代码中的实现AOP功能的metadata不如放在代码外面方便,所以没太大意义。
|
|
返回顶楼 | |
发表时间:2004-09-13
大家可不可以用代码来说明呢?我仔细看过.net的文档,关于Attribute,文档上的用法只能体现出它是一个表示元数据的类。它是能不能影响代码的生成和如何影响代码的生成,我还没有搞明白它的工作机制,不过我知道,的确有人利用attribute的特性做了visual studio的插件,实现了一些代码自动生成的功能。aop现在在java上还没有官方的支持,.net毕竟是有了一些类似的实现(可能叫不同的名字),先研究研究也好。
不过,大家这样谈哲学谈理想没有意思,这样讨论下去,再翻十页也看不到实在东西。不如正方和反方各自拿代码说话,如何? 对于Aop和Attribute,我都是不懂的,我先搬个板凳看看热闹。 |
|
返回顶楼 | |
发表时间:2004-09-14
to mooniscrazy, 看这里我写的attribute 的例子
http://forum.iteye.com/viewtopic.php?p=38169#38169 |
|
返回顶楼 | |