-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpublications.php
More file actions
536 lines (492 loc) · 27.9 KB
/
publications.php
File metadata and controls
536 lines (492 loc) · 27.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="https://www.w3.org/1999/xhtml">
<head>
<title>The AspectJ project at Eclipse.org: Publications</title>
<link rel="stylesheet" href="aspectj_style.css" type="text/css"/>
</head>
<body>
<div id="container">
<?php require("banner.html"); ?>
<div id="main">
<!-- ================ Page specific content starts here ================ -->
<table BORDER="0" CELLSPACING="5" CELLPADDING="2" WIDTH="100%">
<tr>
<td ALIGN="LEFT" width="60%" valign="top">
<h1>aspectj publications</h1>
</td>
<td WIDTH="40%" align="right"> <img src="https://eclipse.org/images/Idea.jpg" width="120" height="86"></td>
</tr>
</table>
<p>
Books and articles about AspectJ are listed below by date.
This list does not contain academic papers or publications we
haven't heard about. If you know of something not listed,
please email a description to
<a href="mailto:aspectj-users@eclipse.org">
aspectj-users@eclipse.org</a>.
</p>
<p>Jump straight to <a href="#articles">articles</a></p>
<h2>Books on AspectJ and related topics</h2>
<table width="100%" cellspacing="5" cellpadding="2" border="0">
<tbody>
<tr>
<td width="20%">
<a href="https://www.dpunkt.de/buch/3-89864-330-1.html">
<img width="200" src="images/aopaj5.jpg" alt="Aspektorientierte Programmierung mit AspectJ 5">
</a>
</td>
<td align="left"><p><b>
<a href="https://www.dpunkt.de/buch/3-89864-330-1.html">Aspektorientierte Programmierung mit AspectJ 5</a>
</b>,
by Oliver Böhm.</p>
<p> Nach der Objektorientierung ist ein neuer, bedeutender Trend in der
Softwareentwicklung in Sicht: die aspektorientierte Programmierung (AOP).
Schritt für Schritt vermittelt Oliver Böhm ihre Grundlagen und
zeigt den praktischen Einsatz anhand der führenden AO-Programmiersprache
AspectJ.
</p>
</td>
</tr>
<tr>
<td width="20%">
<a href="https://www.amazon.com/exec/obidos/ASIN/0321245873/qid=1112868888/sr=2-3/ref=pd_bbs_b_2_3/103-5274059-2049410">
<img width="200" src="images/eclipseaspectj.jpg" alt="Eclipse AspectJ">
</a>
</td>
<td align="left"><p><b>
<a href="https://www.amazon.com/exec/obidos/ASIN/0321245873/qid=1112868888/sr=2-3/ref=pd_bbs_b_2_3/103-5274059-2049410">Eclipse
AspectJ</a> :
Aspect-Oriented Programming in Eclipse with AspectJ and the AspectJ Development Tools</b>,
by Adrian Colyer, Andy Clement, George Harley and Matthew Webster.</p>
<p> In this book, the lead developers of AspectJ
"cover every facet of AOP development with
AspectJ and Eclipse, from creating new projects through extending and
documenting full-fledged applications. You'll find an authoritative
tutorial covering the entire AspectJ language, a complete API reference,
and realistic guidance on adopting AspectJ..."
</p>
</td>
</tr>
<tr>
<td width="20%">
<a href="https://www.amazon.com/exec/obidos/tg/detail/-/1930110936/ref=pd_bxgy_img_2/103-5274059-2049410?v=glance&s=books&n=507846">
<img width="200" src="images/aspectjinaction.jpg" alt="AspectJ in Action">
</a>
</td>
<td align="left">
<p><a target="_top" href="https://www.manning.com/laddad/">
"AspectJ in Action"</a>
(350 pages, July 2003, Manning)
by Ramnivas Laddad</p>
<p>It is time to move from AOP theory and toy examples to AOP practice and real applications.
With this unique book you can make that move. It teaches you AOP concepts, the AspectJ language,
and how to develop industrial-strength systems. It shows you examples which you can reuse.
It unleashes the true power of AOP through unique patterns of AOP design. When you are done,
you will be eager-and able-to build new systems, and enhance your existing ones, with the help of AOP.
</p>
</td>
</tr>
<tr>
<td width="20%">
<a href="https://www.amazon.com/exec/obidos/tg/detail/-/0596006543/qid=1112883594/sr=8-3/ref=pd_csp_3/103-5274059-2049410?v=glance&s=books&n=507846">
<img width="200" src="images/aspectjcookbook.gif" alt="AspectJ Cookbook">
</a>
</td>
<td align="left">
<p><a target="_top" href="https://www.oreilly.com/catalog/aspectjckbk/">
"The AspectJ Cookbook"</a>
by Russ Miles</p>
<p>The AspectJ Cookbook shows readers why, and how, common Java development problems
can be solved by using AOP techniques. With our popular problem-solution-discussion format,
the book presents real world examples to demonstrate that AOP is more than just a concept;
it's a development process that will benefit users in an immediate and visible manner.
</p>
</td>
</tr>
<tr>
<td width="20%">
<a href="https://www.amazon.com/exec/obidos/tg/detail/-/0471431044/qid=1112883856/sr=1-1/ref=sr_1_1/103-5274059-2049410?v=glance&s=books">
<img width="200" src="images/masteringaspectj.jpg" alt="Mastering AspectJ">
</a>
</td>
<td align="left">
<p><a target="_top" href="https://www.wiley.com/WileyCDA/WileyTitle/productCd-0471431044.html">
"Mastering AspectJ"</a>
(456 pages, March 2003, Wiley)
by Joseph Gradecki and Nicholas Lesiecki
</p>
<p>Aspect-oriented programming (AOP) promises to increase the power of OO applications by
modularizing functionality that cuts across classes (such as logging, transaction management,
design patterns, and security). If your application has this type of functionality,
you can benefit from using AspectJ, an AOP language that is a seamless extension to Java.</p>
<p>
In this code-intensive book, the authors present a detailed overview of the concepts of AOP and
AspectJ, and take you step-by-step through the process of building an application. </p>
</td>
</tr>
<tr>
<td width="20%">
<a href="https://www.amazon.co.jp/exec/obidos/ASIN/4797326387/qid=1112884110/sr=8-1/ref=sr_8_xs_ap_i1_xgl/249-9397178-5049905">
<img width="200" src="images/tatsubori.jpg" alt="Introduction to Aspect-Oriented Programming with AspectJ">
</a>
</td>
<td align="left">
<a href="https://www.amazon.co.jp/exec/obidos/ASIN/4797326387/qid=1112884110/sr=8-1/ref=sr_8_xs_ap_i1_xgl/249-9397178-5049905">
Introduction to Aspect-Oriented Programming with AspectJ</a> (Japanese)
</td>
</tr>
<tr>
<td width="20%">
<a href="https://www.amazon.com/exec/obidos/ASIN/0321219767/qid=1112884234/sr=2-1/ref=pd_bbs_b_2_1/103-5274059-2049410">
<img width="200" src="images/aosd.jpg" alt="AOSD">
</a>
</td>
<td align="left">
<p><a href="https://www.amazon.com/exec/obidos/ASIN/0321219767/qid=1112884234/sr=2-1/ref=pd_bbs_b_2_1/103-5274059-2049410">
Aspect-Oriented Software Development</a> edited by Robert Filman, Tzilla Elrad, Siobhan Clarke and Mehmet
Aksit.</p>
<p>In this book, four leaders in AOSD development bring together today's most significant advances.
Drawing on contributions from the field's leading researchers, they introduce fundamental AOSD concepts,
present new technologies for AOSD engineering and programming, and detail early application experiences
with AOSD methods.
</p>
</td>
</tr>
<tr>
<td width="20%">
<a href="https://www.amazon.com/exec/obidos/tg/detail/-/0321268881/qid=1112885840/sr=1-1/ref=sr_1_1/103-5274059-2049410?v=glance&s=books">
<img width="200" src="images/aosdusecases.jpg" alt="AOSD">
</a>
</td>
<td align="left">
<p><a href="https://www.amazon.com/exec/obidos/tg/detail/-/0321268881/qid=1112885840/sr=1-1/ref=sr_1_1/103-5274059-2049410?v=glance&s=books">
Aspect-Oriented Software Development with Use Cases</a></p>
<p>In this highly anticipated new book, Ivar Jacobson and Pan-Wei Ng demonstrate how to apply use cases�
a mature and systematic approach to focusing on stakeholder concerns�and
aspect-orientation in building robust and extensible systems. Throughout the book, the authors employ a
single,
real-world example of a hotel management information system to make the described theories and
practices concrete and understandable.
</p>
</td>
</tr>
<tr>
<td width="20%">
<a href="https://www.amazon.com/exec/obidos/tg/detail/-/0321246748/qid=1112885475/sr=1-2/ref=sr_1_2/103-5274059-2049410?v=glance&s=books">
<img width="200" src="images/aoad.jpg" alt="AOSD">
</a>
</td>
<td align="left">
<p><a href="https://www.amazon.com/exec/obidos/tg/detail/-/0321246748/qid=1112885475/sr=1-2/ref=sr_1_2/103-5274059-2049410?v=glance&s=books">Aspect-Oriented
Analysis and Design</a></p>
<p>In this new book, two AOSD experts apply theory to the practical realm of real-world development.
They explain the different kinds of aspects, help the reader identify them, and provide guidance on
successful design and implementation. The result is an applicable and easy-to-digest methodology for
simplifying and optimizing the development of software systems.</p>
</td>
</tr>
<tr>
<td width="20%">
<a href="https://www.amazon.com/exec/obidos/tg/detail/-/0672324105/qid=1112885592/sr=1-4/ref=sr_1_4/103-5274059-2049410?v=glance&s=books">
<img width="200" src="images/kiselev.jpg" alt="AOSD">
</a>
</td>
<td align="left">
<p>
<a href="https://www.amazon.com/exec/obidos/tg/detail/-/0672324105/qid=1112885592/sr=1-4/ref=sr_1_4/103-5274059-2049410?v=glance&s=books">
Aspect-Oriented Programming with AspectJ</a> (covers AspectJ 1.0x)</p>
<p>In a November 2001 Java Pro magazine article, noted Java pundit Daniel Savarese states,
"The days of Object-Oriented Programming may be numbered, One day we may all be using Aspect-Oriented
Programming ."
While this may be hyperbole, the AOP bring certain needed improvements to the OOP.
AspectJ is a Java-based tool that allows developers to apply standard Java syntax to AOP principles,
much as C++ allowed C programmers to use C syntax in an object-oriented manner.
There are AspectJ add-ons available for Borland's JBuilder, Sun's Forte for Java and for the EMACS text
editor.
Aspect-Oriented Programming with AspectJ introduces AOP and the AspectJ tool. The book also shows how,
by using existing Java programming knowledge, the developer can use AOP in meaningful development work.
</p>
</td>
</tr>
</tbody>
</table>
<a name="articles"></a>
<h2>Articles</h2>
<dl>
<dt><a href="https://www.builderau.com.au/architect/0,39024564,39183763,00.htm">
"A new aspect to programming"</a> by Simon Sharwood.
</dt>
<dd>
A review of the benefits of AOP and the current state of the practice, with contributions
from IBM, BEA, and Microsoft amongst others. "The AOP genie is well and truly out of the
bottle."
</dd>
<dt><a target="_top" href="https://www.ibm.com/developerworks/java/library/j-aopwork1/">
"AOP@Work: AOP tools comparison"</a> by Mik Kersten
</dt>
<dd>In this <a href="https://www.ibm.com/developerworks/java">developerWorks</a>
article, Mik compares AspectJ, AspectWerkz,
JBoss AOP and Spring AOP for power and usability, and touches
on the implications of the merger of AspectWerkz and AspectJ.
</dd>
<dt><a target="_top" href="https://www-106.ibm.com/developerworks/library/j-ajdt/">
"Develop aspect-oriented Java applications with Eclipse and AJDT"</a>
(Sep. 2004) by Matt Chapman and Helen Hawkins
</dt>
<dd>
In this article, AJDT contributors and IBM aspect-oriented software development team members
Matt Chapman and Helen Hawkins introduce you to AJDT. You'll learn how to install the tools;
how to create, run, and debug AspectJ applications; and how to visualize and navigate the crosscutting
structures inherent to aspect-oriented programming.
</dd>
<dt><a target="_top" href="https://www-106.ibm.com/developerworks/library/j-ceaop/">
"Contract enforcement with AOP"</a>
by Filippo Diotalevi
</dt>
<dd> Apply Design by Contract to Java software development with AspectJ
(Level: introductory)
</dd>
<dt><a target="_top" href="https://www.theserverside.com/resources/article.jsp?l=AspectOrientedRefactoringPart1">
"Aspect-Oriented Refactoring"</a>
by Ramnivas Laddad
</dt>
<dd> Aspect-oriented refactoring (AO refactoring) synergistically combines
refactoring and AOP to refactor crosscutting elements.
</dd>
<dt><a target="_top" href="https://www.theserverside.com/events/videos/GregorKiczalesText/interview.jsp">
"Aspect Oriented Programming"</a>
(July 2003 ServerSide interview of Gregor Kiczales)
by Dion Almaer
</dt>
<dd> "AOP technology and practice is now moving
from the invention phase to the innovation phase.
[...I]t is vital that the inventors and the innovators work to
try and build bridges to each other."
</dd>
<dt><a target="_top" href="https://www.fawcette.com/javapro/2003_03/magazine/columns/javatecture/default_pf.asp">
"Aspects, Concerns, and Java"</a>
(March 2003)
by James W. Cooper
</dt>
<dd>
</dd>
<dt><a target="_top" href="https://www.xprogramming.com/xpmag/virtualMockObjects.htm">
"Virtual Mock Objects using
AspectJ with JUnit"</a>
(October, 2002)
</dt>
<dd>by Simon Monk and Stephen Hall
</dd>
<dt><a target="_top" href="https://developers.sun.com/tools/javatools/articles/aspectJ.html">
"Aspect-Oriented Programming with Sun(tm) ONE Studio"</a> (October 2002, updated July 2003)
by Vaughn Spurlin
</dt>
<dd>"Aspect-oriented programming does involve deep
concepts in programming, but the basics are easy enough to yield immediate
benefit with relatively little effort. This fits well with both a fast paced
extreme programming style and a conservative style that requires proof of
benefits at each step before committing to the next step. The full value of
completely adopting AOP may be as profound as the transition from structured
programming to object-oriented programming, but with little or no cost for a
gradual and gentle transition."
</dd>
<dt><a target="_top" href="https://www.ddj.com/articles/2002/0208/">
"Aspect-Oriented Programming and AspectJ"</a> in the August 2002 Dr. Dobbs
Journal, by William Grosso
</dt>
<dd>"Aspect-oriented programming extends the
object-oriented paradigm by letting you write more maintainable code using
aspects. Additional resources include
<a target="_top" href="https://www.ddj.com/ftp/2002/2002_08/aop.txt">aop.txt</a> (listings)
and <a target="_top" href="https://www.ddj.com/ftp/2002/2002_08/aop.zip">aop.zip</a>
(source code).
</dd>
<dt><a target="_top" href="https://sdmagazine.com/articles/2002/0205/">"Get
Test-Inoculated!"</a> in the May 2002 issue of Software Development, by Wes
Isberg and the AspectJ Team
</dt>
<dd>
(Originally titled "Test-Inoculated: Programmers Love Not Writing Tests")
This introduces AspectJ using code snippets that
verify compile- and run-time invariants, capture and replay input,
and set up stubs and drivers for integration testing.
(<a href="dl/inoculated-src.zip">corresponding
sources are available</a>)
</dd>
<dt><a target="_top" href="https://www-106.ibm.com/developerworks/java/library/j-aspectj2/?open&l=007,t=gr">
"Test flexibly with AspectJ and mock objects"</a> in the May 2002 Java
Technology Zone of IBM's Developer Works, by Nicholas Lesiecki
</dt>
<dd>
"To keep the cost of test development low, unit
tests must run in isolation. Mock object testing isolates each unit by
providing mocked implementations of code on which the tested class depends.
But object-oriented techniques cannot successfully replace collaborating
code in situations where dependencies are retrieved from a globally
accessible source. AspectJ's ability to crosscut the structure of the tested
code allows you to cleanly replace code in these types of situations."
</dd>
<dt><a target="_top" href="https://www.javaworld.com/javaworld/jw-04-2002/jw-0412-aspect3.html">
"I want my AOP!, Part 3"</a> in the April 2002 issue of Java World, by
Ramnivas Laddad
</dt>
<dd>
"AOP and AspectJ solve real problems, and early
adopters are increasingly trying AOP concepts with AspectJ. Like any other
new programming paradigm, it will take time before both technologies reach
their full potential. As more developers use AspectJ, the experience gained
will guide the language's evolution. Simultaneously, design patterns and
anti-patterns will appear. AOP's adaptation as a mainstream programming
methodology will be a fun thing to watch and, better still, participate in."
</dd>
<dt><a target="_top" href="https://www.javaworld.com/javaworld/jw-03-2002/jw-0301-aspect2.html">
"I want my AOP!, Part 2"</a> in the March 2002 issue of Java World, by
Ramnivas Laddad
</dt>
<dd>"AspectJ provides a powerful and useful AOP
implementation for Java. AspectJ offers modularizing crosscutting concerns
by adding new joinpoint, pointcut, and advice concepts. Since AspectJ
extends Java, Java programmers will find it an easy language to learn."
</dd>
<dt><a target="_top" href="https://www.stepwise.com/Articles/AspectJ/index.html">
"Aspect-Oriented Programming with WebObjects"</a> in the March 2002 issue of
StepWise.com, by Christian Pekeler
</dt>
<dd>"AspectJ is a very stable compiler, and ready to
be used in production. It works flawlessly together with WebObjects.
Integration with Project Builder can certainly be improved, though."
</dd>
<dt><a target="_top" href="https://www-106.ibm.com/developerworks/java/library/j-aspectj/index.html?dwzone=java">
"Improve Modularity with Aspect-Oriented Programming"</a> in the January
2002 Java Technology Zone of IBM's Developer Works, by Nicholas Lesiecki
</dt>
<dd>"Aspect-oriented programming (AOP) is a new
programming technique that allows programmers to modularize <i>crosscutting
concerns</i> (behavior that cuts across the typical divisions of
responsibility, such as logging). AOP introduces <i>aspects,</i> which
encapsulate behaviors that affect multiple classes into reusable modules.
With the recent release of AspectJ by Xerox PARC, Java developers can now
take advantage of the modularization AOP can provide. This article
introduces AspectJ and illustrates the design benefits that result from its
use."
</dd>
<dt><a target="_top" href="https://www.javaworld.com/javaworld/jw-01-2002/jw-0118-aspect.html">
"I want my AOP!, Part 1"</a> in the January 2002 issue of Java World, by
Ramnivas Laddad
</dt>
<dd>"Most software systems consist of several concerns
that crosscut multiple modules. Object-oriented techniques for implementing
such concerns result in systems that are invasive to implement, tough to
understand, and difficult to evolve. The new aspect-oriented programming
(AOP) methodology facilitates modularization of crosscutting concerns. Using
AOP, you can create implementations that are easier to design, understand,
and maintain. Further, AOP promises higher productivity, improved quality,
and better ability to implement newer features. This article, the first in a
three-part series, introduces the AOP concept and the problems it attempts
to solve."
</dd>
<dt><a target="_top" href="https://www.devx.com/premier/mgznarch/javapro/2001/11nov01/ps0111/ps0111.asp">
"Aspect-Oriented Programming in Java"</a>, in the November 2001 issue of
JavaPro, by Daniel F. Savarese
</dt>
<dd>"AspectJ contains many very interesting language
features and you may start looking for excuses to use them in your programs
once you realize everything they make possible. AspectJ's authors recommend
that you get started using aspects for writing, testing, and profiling code
before moving on to make it an integral part of your production code base.
AOP has many years to go before it becomes a mainstream programming
methodology, but I have a feeling that aspects are here to stay, and that at
least some AOP features will eventually make their way into Java and other
programming languages."
</dd>
<dt><a target="_top"
href="https://portal.acm.org/toc.cfm?id=383845&type=issue&coll=portal&dl=ACM&idx=J79&part=magazine&WantType=Magazines&title=CACM">
Special Issue on Aspect-Oriented Programming</a>, October 2001
Communications of the ACM
</dt>
<dd>Several articles in this issue refer to AspectJ,
including "Getting Started with AspectJ" by the AspectJ Team.
</dd>
<dt><a target="_top" href="https://www.javareport.com/html/from_pages/article.asp?id=4712&mon=9&yr=2001">
"Real-world AOP Tool Simplifies OO Development"</a> in the September 2001
issue of Java Report, by Rich Price
</dt>
<dd>"We have tested AspectJ extensively and feel
confident enough in it that we use it in production. We have never had a bug
caused by the compiler-generated code. The tools are still rough around the
edges, but we have seen steady improvement in functionality and quality over
the past year. Support is excellent. Despite some minor annoyances and
limitations, I can't imagine not using AspectJ."
</dd>
<dt><a target="_top" href="https://www.sdmagazine.com/documents/s=1123/sdm0109e/0109e.htm">"The
First Aspect-Oriented Compiler"</a> in the September 2001 issue of Software
Development, by Larry O'Brien
</dt>
<dd>"It's not every day, or every year, that you come
across something that makes you rethink your entire approach to
programming. Mark my words, aspects are going to cause an epochal shift in
programming right up there with the object shift of a decade ago. . . there
is no question that within a few years, aspects will be as much a part of
the programming lexicon as objects are today. . . AspectJ is the best tool
to help Java programmers investigate an exciting programming concept whose
time on the main stage of software development has come. Do yourself a favor
- download it today."
</dd>
<dt><a target="_top" href="https://www.sdmagazine.com/documents/s=843/sdm0107i/0107i.htm">
"Through the Looking Glass"</a> in the July 2001 issue of Software
Development, by Grady Booch
</dt>
<dd>"The first time I really grasped the wonderful
power of object-oriented abstractions, I thought I'd seen the ultimate model
on which all kinds of complex systems could be grown. . . However, I was
wrong: There's something deeper, something that's truly beyond objects.
Admittedly, this isn't a concept that's easy to explain, because I'm still
so steeped in an object-oriented view of the world. However, just as a
sailor can sense a changing sea, I note subtle signs that point to a marked
transformation, a disruptive technology, on the horizon."
</dd>
<dt><a target="_top" href="https://www.technologyreview.com/magazine/jan01/TR10_kiczales.asp">
"The Technology Review Ten: Untangling Code"</a> in the January/February
2001 issue of the Technology Review, by Claire Tristram
</dt>
<dd>"Pity software engineers. With the touch of a
button, their programs let us make global fixes in a long text, say, or a
spreadsheet, yet programmers often need to correct their own work one
tedious line at a time. That irony isn't lost on Gregor Kiczales, principal
scientist at Xerox's Palo Alto Research Center (PARC) and professor at the
University of British Columbia in Vancouver�and he has a fix in mind.
Kiczales champions what he calls "aspect-oriented programming," a technique
that will allow software writers to make the same kinds of shortcuts that
those of us in other professions have been making for years. . ."
</dd>
<dt><a target="_top" href="https://www.computer.org/software/so2000/s6toc.htm">"Can
Aspect-Oriented Programming Lead to More Reliable Software?"</a> in the
November/December 2000 issue of IEEE Software, by John Viega and Jeffrey
Voas
</dt>
<dd>"Aspect-oriented programming is a novel topic in
the software engineering and languages communities. AOP appears to have the
potential to significantly improve the reliability of programs, particularly
by modularizing error-handling policies and allowing for easier maintenance
and better reuse. In this article we introduce AspectJ, the first
aspect-oriented programming language, and demonstrate how you can use it to
construct more reliable software."
</dd>
<dt><a target="_top" href="https://www.voelter.de/data/articles/aop/aop.html">"Aspectj-Oriented
Programming in Java"</a> in the January 2000 issue of the
<a target="_top" href="https://www.javareport.com">Java Report</a>, by Markus Voelter
</dt>
<dd>"Abstract: AOP defines a new program construct,
called an aspect, which is used to capture corsscutting aspects of a
software system in separate program entities. This article is divided into
three parts: first, an explanation of the concepts of AOP; second, an
introduction to AspectJ�, an implementation of the AOP concepts in Java;
finally, a comparison of the AOP approach to metalevel programming."
</dd>
</dl>
<!-- ================ End of page specific content ===================== -->
</div>
</div>
</body>
</html>