Presentation is loading. Please wait.

Presentation is loading. Please wait.

aspectj tools new and noteworthy Mik Kersten University of British Columbia Andy Clement, George Harley IBM Hursley Labs.

Similar presentations


Presentation on theme: "aspectj tools new and noteworthy Mik Kersten University of British Columbia Andy Clement, George Harley IBM Hursley Labs."— Presentation transcript:

1 http://eclipse.org/aspectj1..19 aspectj tools new and noteworthy Mik Kersten University of British Columbia Andy Clement, George Harley IBM Hursley Labs

2 1. aspectj tools suite 3. new crosscutting views 2. next generation ajdt

3 http://eclipse.org/aspectj3..19 demo 1.1 tools demo Figures –Core language Spacewar –Build configs Monitorlib –Aspect libraries & bytecode weaving WSIF –Visualizer AJDoc

4 http://eclipse.org/aspectj4..19 jbuilder screenshot…

5 http://eclipse.org/aspectj5..19 netbeans screenshot…

6 http://eclipse.org/aspectj6..19 ajbrowser screenshot…

7 http://eclipse.org/aspectj7..19 emacs

8 http://eclipse.org/aspectj8..19 AspectJ 1.2 tools suite IDE plugins –Eclipse (up to 3.0m4) –JBuilder (up to X) –NetBeans (up to 3.4.2) –Emacs Other tools –Command line incremental compiler –Bytecode weaver –AJDoc –Ant task –AspectJ Browser

9 1. aspectj tools suite 3. new crosscutting views 2. next generation ajdt

10 http://eclipse.org/aspectj10..19 Engineering challenges Eclipse sets the bar high Need tight integration with the JDT Users expect advanced features –Eager parsing –Code assist –Refactoring But the Java model is not inherently extensible

11 http://eclipse.org/aspectj11..19 demo Lancaster demo Eagerness –Document outline updating –Content assist –Error –Declare error Debugging –Set and run to breakpoint

12 1. aspectj tools suite 3. new crosscutting views 2. next generation ajdt

13 http://eclipse.org/aspectj13..19 Listening to user feedback When working with large systems –Dynamic effects of crosscutting can be unclear –Composition of advice can be important Participatory design –UI design page and bugzilla reports linked from http://eclipse.org/ajdt I wasn't seeing an advice being executed and the that part of code was little unfamiliar to me. So I had to perform a search to find out the subaspects. If I had the proposed feature, navigating to those aspects would be so much easier. Bugzilla report 50931

14 http://eclipse.org/aspectj14..19 Control flow pointcuts cflow(execution(* WSIFMessage.*(..))) && handler(WSIFException) || execution(* WSIFRequest.*(..))); ( Where will the advice apply?

15 http://eclipse.org/aspectj15..19 Control flow pointcuts cflow(execution(* WSIFMessage.*(..))) && handler(WSIFException) || execution(* WSIFRequest.*(..))); ( Show as graph view Based on Eclipse call graph

16 http://eclipse.org/aspectj16..19 Multiple advice at same join point What if my system has many aspects? What if their order of execution is relevant? declare precedence: Debug, Coordinator;

17 1. aspectj tools suite 3. new crosscutting structure views wrap-up 2. next generation ajdt

18 http://eclipse.org/aspectj18..19 Extensibility and contribution Open source project Open APIs for IDE plugins and other tools IDE plugins need contributors Model and views can be reused

19 http://eclipse.org/aspectj19..19 AspectJ credits Versions 0.1-1.1 developed at PARC Eclipse.org Technology project AspectJ team –Adrian Colyer, Erik Hilsdale, Jim Hugunin, Wes Isberg and Mik Kersten AJDT team –Adrian Colyer, Andy Clement, Mik Kersten and Julie Waterhouse http://eclipse.org/aspectj http://eclipse.org/ajdt

20 http://eclipse.org/aspectj20..19


Download ppt "aspectj tools new and noteworthy Mik Kersten University of British Columbia Andy Clement, George Harley IBM Hursley Labs."

Similar presentations


Ads by Google