The Artima Developer Community
Sponsored Link

Java Buzz Forum
AOP Requirements

0 replies on 1 page.

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 0 replies on 1 page
Talip Ozturk

Posts: 103
Nickname: talip
Registered: May, 2003

Talip Ozturk is founder of Hazelcast, distributed queue, set, map and lock implementation.
AOP Requirements Posted: Jul 29, 2003 6:52 PM
Reply to this message Reply

This post originated from an RSS feed registered with Java Buzz by Talip Ozturk.
Original Post: AOP Requirements
Feed Title: Shared Memory
Feed URL: http://sedoparking.com/search/registrar.php?domain=®istrar=sedopark
Feed Description: about java, jini, javaspaces, programming, aop and a little bit of me and life.
Latest Java Buzz Posts
Latest Java Buzz Posts by Talip Ozturk
Latest Posts From Shared Memory

Advertisement
I am currently trying to pick the best AOP implementation available for my new project. I like Nanning. It is very simple, and I like simple things. I also like AspectWerkz. I think it is quite comprehensive but things that I don't like about AspectWerkz are
1. You have start your application with 'aspectwerkz' executable. I like to be able to run/debug my application from my IDEA. There must be another way of running it.
2. If you have introductions (I cannot think of AOP without introductions), then you have to run a weaver (ClassFileMetaDataCompiler). I cannot imagine running this thing every time I change/add introduction.
3. I don't see any documentation on configuring the system via a configuration API. There is only XML configuration available.
4. It is not as simple and clean as Nanning.

Unfortunately I cannot convince myself to use AspectWerkz or Nanning. they both are almost there but not quite. I felt the same thing for Eclipse. Eclipse is good, very good. It is almost there but when IntelliJ IDEA is another choice then IDEA would be my ideal IDE. AOP is still new. Good things are happening but I am so impatient to wait for my favorite one. AspectJ? AspectJ might be the most complete AOP solution in terms of implementing every aspect of AOP but it is not practicable with its new lingo and concepts so to me it is not an option. My requirements for AOP framework.
1. Rich set of pattern matching. good examples AspectJ, AspectWerkz
2. Usage of asterisk (*) in configuration. This little thing makes configuration super easy. Good example is AspectWerkz. Here is an example

<introduction class="domain.*">
            <introduction-ref name="serializable"/>
            <introduction-ref name="persistant"/>
</introduction>

3. Minimum XML configuration. good example AspectWerkz, bad example JBossAOP
4. Support for run-time attributes.
5. On runtime, I should be able to add/remove
    *  introduction or advise of an aspect
    *  an aspect with its all advice and introductions
to/from an aspected object.
6. Support for configuration API. good example Nanning
7. Dynamic Proxy support. Support for POJOs is good but not required.
8. I should still be able to develop on my IDE. Plain java solution. Good example Nanning, bad example AspectJ
9. Being able to declare the scope (jvm, thread, instance, singleton) of an Advice. good example AspectWerkz, JBossAOP.
10. API for managing, inspecting AOPfied system. good example Nanning

Read: AOP Requirements

Topic: One last sprint... Previous Topic   Next Topic Topic: London foxes

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use