|
Fall 2002 Programming Language Seminar: |
|
| Synopsis | Information | Code Examples | Calendar | Resources | Links |
Synopsis:
The focus for this seminar is
aspect-oriented programming
(AOP). The seminar will give participants a feel for what
AOP is, when it can be useful, and
will also gain hands-on experience with aspect-oriented software
development in AspectJ, an
aspect extension for Java. It is
intended primarily for junior- and senior-level undergraduate students
interested in learning about AOP.
The seminar will introduce AspectJ and several lectures will focus on syntax and use of the language in software development projects. Regular homework will be assigned, and after the language has been covered larger class projects will be modularly built from classes and aspects involving design, implementation, and presentation in class.
There will be no in-class quizzes or examinations.
|
* You pass the seminar by attending and participating. |
Code Examples:
An index of code referred to in class is
available.
Seminar Calendar:
The Fall 2002 programming language seminar meets Wednesdays at
1pm in Lopata 103.
| Date | Topic | Lecture Notes | Homework |
|---|---|---|---|
| 28 August 1pm, Bryan 509C |
Organizational Meeting Handout: How to set up AspectJ |
HTML | Homework 1 assigned |
| 4 September | Class cancelled (Conflict with thesis defense) |
||
| 11 September | AspectJ syntax and examples | HTML | Homework 1 due Homework 2 assigned |
| 18 September | More AspectJ syntax and examples Handout: TraceCounter |
HTML | Homework 2 due |
| 25 September | Advice Precedence, Introduction, Aspect Extension, Observer design pattern Handout: Observer design pattern code |
HTML (code only at present) |
Homework 3 assigned |
| 2 October | Class discussions: Gang of Four design patterns with aspects | See the homework #3 page |
Homework 3 due |
| 9 October | |||
| 16 October | Control flow, aspect instantiation, finish up AspectJ |
... | |
| 23 October | Nuts and Bolts: Some "aspect idioms" in Java | ... | Project proposals due |
| 30 October | Aspect Design: Network and Concurrency Patterns | HTML (partial) | |
| 6 November | Other Advanced Separation of Concerns (ASoC) technologies | HTML (links) | |
| 13 November | Future of AOP and AspectJ | HTML (links) | |
| 20 November | Final project presentations: Bicycling, Blackjack, Aircraft Design, and Aspectified Distributed Collaboration Tool | Presentation schedule | Final projects |
| 27 November | THANKSGIVING BREAK | ||
| 4 December | Final project presentations: Proxy Server, Web Browser, and PCESGraph/Clazzer | Presentation schedule | Final projects |
Looking for something else?