|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
最后更新时间:2005-04-05
刚初初读了一下Ivar Jacobson的大作 Aspect-Oriented Software Development with Use Cases,收获良多。
无疑我的开发方法将会很大的变化。最初接触AOP知道它能够横切有关对象的不同方面,而且仅仅局限于同业务关系不大的其他方面,如持久化事务、Log、Remoting、Cache等等。 然而Ivar Jacobson的使我大开眼界,原来业务层中Aspect也无处不在。正如普鲁斯特的《追忆似水年华》“原来软件还可以这样来写”。老人家确实是值得钦佩,这样的年纪还热情依旧!对于我们这些后生可以一个不小的鼓舞啊。做技术的也可以常青。 还没来得及仔细的研究。 但将用例贯穿软件开发的整个过程,而不光是需求阶段; 通过Aspect实现控制类; 通过Aspect实现扩展; 对于关注点如何分离的论述。 已经使我感到震撼了。 还在等什么?通向未来的大门就在这里。“芝麻开门啊~~~” 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
最后更新时间:2005-04-05
谢谢提供这个资源,我也要看!
|
|
| 返回顶楼 | |
|
最后更新时间:2005-04-05
老早下载了电子书,看着很费劲亚,不如partech给大家讲讲。
|
|
| 返回顶楼 | |
|
最后更新时间:2005-04-05
gigix 写道 老早下载了电子书,看着很费劲亚,不如partech给大家讲讲。
呵呵,还没有这个能力乐。刚敖夜读了一遍。大家多交流才会进步快。 以Minimal Use-case Design Slice 组成的“洋葱”式软件开发模式确实很吸引人, 关键在于如何来清晰的拨开这些构成洋葱的皮。 另外我担心性能上会不会影响很大?得做些测试。 |
|
| 返回顶楼 | |
|
最后更新时间:2005-04-05
partech 写道 gigix 写道 老早下载了电子书,看着很费劲亚,不如partech给大家讲讲。
呵呵,还没有这个能力乐。刚敖夜读了一遍。大家多交流才会进步快。 以Minimal Use-case Design Slice 组成的“洋葱”式软件开发模式确实很吸引人, 关键在于如何来清晰的拨开这些构成洋葱的皮。 另外我担心性能上会不会影响很大?得做些测试。 说性能上有很大影响肯定是站不住脚的,你细想想就知道,没有哪个环节是本质上严重影响性能的。 |
|
| 返回顶楼 | |
|
最后更新时间:2005-04-05
gigix 写道 说性能上有很大影响肯定是站不住脚的,你细想想就知道,没有哪个环节是本质上严重影响性能的。
有一种情况,原来的实现抛出一个异常,扩展是基于捕获该异常的实现。 |
|
| 返回顶楼 | |
|
最后更新时间:2005-04-05
另外如果是基于反射的实现,会不会也有些影响效率呢?会影响多少?
http://docs.codehaus.org/display/AW/AOP+Benchmark |
|
| 返回顶楼 | |
|
最后更新时间:2005-04-06
继续学习
把用例看作横切关注点 因为一个关注点影响多个类,用例实现会涉及多个类,所以可以把用例看作横切关注点。 如何鉴别和描述Aspect? 软件最终是为了实现涉众关注,交付给用户价值的。Aspect也就由此产生。通过用例来描述不同涉众(包括最终用户,项目发起人,开发人员等)分散的关注点,使用Aspect技术来 组合这些关注点得到一个完整的系统。 一个例子: 设想你刚买了一套新房,由于建筑商的遗忘,它一个空房子,没有电线,没水管,没有电话线,没有煤气管道并且没有Internet接入。每一个缺少的设施和服务就好比一个不同的关注点,很明显需要不同的专家来安装各自的设施或服务。这些专家在你提供的房子结构图上分别提供了电线,水管,电话线,煤气,Internet接入的计划图纸。这好比是不同的Aspect。把这些图纸都做成幻灯片,在幻灯机上叠加,会看到完整的效果。这就好比整个系统。假如发现电话线需要改动,只需要抽出电话线的幻灯,修改它就行了。 |
|
| 返回顶楼 | |
|
最后更新时间:2005-04-06
等我搬凳子来先。
老师好! :D |
|
| 返回顶楼 | |
|
最后更新时间:2005-04-06
partech 写道 一个例子: 设想你刚买了一套新房,由于建筑商的遗忘,它一个空房子,没有电线,没水管,没有电话线,没有煤气管道并且没有Internet接入。每一个缺少的设施和服务就好比一个不同的关注点,很明显需要不同的专家来安装各自的设施或服务。这些专家在你提供的房子结构图上分别提供了电线,水管,电话线,煤气,Internet接入的计划图纸。这好比是不同的Aspect。把这些图纸都做成幻灯片,在幻灯机上叠加,会看到完整的效果。这就好比整个系统。假如发现电话线需要改动,只需要抽出电话线的幻灯,修改它就行了。 这和TransactionScript不是一样了吗?对象退化为数据包,在一层层Script中传递,每个Script为数据设置一类属性。 |
|
| 返回顶楼 | |








