Aspect-oriented programming - CompWisdom
About us  |  Why use us?  |  Press  |  Contact us

 

Topic: Aspect-oriented programming


  
 Aspect-oriented programming - Wikipedia, the free encyclopedia
AspectJ is an aspect-oriented extension to the Java programming language.
In software engineering, the programming paradigm of aspect-oriented programming (AOP), also called aspect-oriented software development (AOSD), attempts to aid programmers in the separation of concerns, or the breaking down of a program into distinct parts that overlap in functionality as little as possible.
Pointcuts are specified by a query over the program.
http://en.wikipedia.org/wiki/Aspect-oriented_programming   (1915 words)

  
 Computer programming/Aspect oriented programming - Wikibooks, collection of open-content textbooks
Aspect Oriented Programming (AOP) is a follow-on development to Object Oriented Programming (OOP), developed with the intention of solving some of the practical limitations of OOP.
AOP aims to reduce dependencies and complexity by moving the code handling those crosscuts into seperate programming constructs that can then be woven back into the OOP source code in an automated fashion by a weaver.
The essential problem here that AOP tries to solve is that the code is repeated in several places, making it difficult to maintain, and increasing dependencies across different constructs.
http://en.wikibooks.org/wiki/Programming:Aspect_oriented_programming   (1019 words)

  
 Introduction to Aspect Oriented Programming
Aspect Oriented Programming (AOP) is a new programming paradigm which aims to capture cross-cutting concerns in large programs in a cleanly localised way.
AspectJ is an aspect oriented extension of the Java programming language, originally developed at Xerox PARC, and now maintained by the Eclipse project.
We call some concern cross-cutting, if it has to be implemented in such a way that many of the hierarchical components of a piece of software are affected.
http://www.cs.chalmers.se/~giese/AOP.html   (248 words)

  
 Aspect-Oriented Programming and Adaptive Programming
Evolution of a program requires understanding of the aspects the program is made of.
Adaptive Programming is the special case of Aspect-Oriented Programming where one of the aspects is expressible in terms of graphs and where the other aspects or components refer to the graphs using traversal strategies.
In other words: One special case of aspect-oriented programming is 'adaptive programming', in which one of the aspects is expressible in terms of graphs and the other aspects or components follow 'strategies' to control and interpret references to these graphs.
http://www.ccs.neu.edu/home/lieber/AOP.html   (1074 words)

  
 AOP: Aspect-Oriented Programming Enables Better Code Encapsulation and Reuse -- MSDN Magazine, March 2002
SUMMARY Aspect-oriented Programming (AOP), a paradigm invented at Xerox PARC in the 1990s, lets the developer better separate tasks that should not be inextricably tangled, such as mathematical operations and exception handling.
This is the simplest form of aspect-oriented programming, a paradigm invented in the 1990s at Xerox PARC by Gregor Kiczales (see http://www.parc.xerox.com/csl/groups/ sda/publications/papers/Kiczales-ECOOP97/for-web.pdf).
In component activation, the AOP framework builds the stack of aspect implementation objects and returns a reference to an interceptor instead of a reference to the actual object.
http://msdn.microsoft.com/msdnmag/issues/02/03/AOP/default.aspx   (4061 words)

  
 Aspect-Oriented Programming
In programming paradigms based on functional decomposition (left), the code that is part of a functional unit in the source program (i.e.
As a first example of AOP, we present a small part of one of the projects we have been working on-using AOP to handle a representative class of distributed applications.
We are working on a new programming paradigm, Aspect-Oriented Programming (AOP), that does just this.
http://www2.umassd.edu/SWSoC/papers/kiczales-cs1996.html   (1318 words)

  
 Results in
AOP is a term used to describe a programming technique and a way of thinking about the construction of software applications that complements the forms of expression found in object-oriented programming.
Aspect-oriented programs comprise of a mixture of objects and aspects.
The goal of AOP is to improve the modularity of software applications, making them easier to develop, test, and maintain.
http://www.findarticles.com/p/articles/mi_m0ISJ/is_2_44/ai_n14707720   (372 words)

  
 A look at aspect-oriented programming
AOP does not replace existing programming paradigms and languages; instead, it works with them to improve their expressiveness and utility.
One of the latest entrants in this lineup is aspect-oriented programming (AOP), which represents one facet of aspect-oriented software development (AOSD).
In fact, the way to think about correctness in AOP code is the inverse of how we consider it for object-oriented programming (OOP) code.
http://www-128.ibm.com/developerworks/rational/library/2782.html   (3406 words)

  
 Aspect Oriented Programming
Aspect Oriented Programming (AOP) is a promising new technology for separating crosscutting concerns that are usually hard to do in object-oriented programming.
AOP assumes that crosscutting concerns may exist in programs and can't be re-factored out of the design in all situations.
AOP is a concept, so it is not bound to a specific programming language.
http://www.developer.com/design/article.php/3308941   (1322 words)

  
 Improve modularity with aspect-oriented programming
In object-oriented programming, for instance, the natural unit of modularity is the class, and a crosscutting concern is a concern that spans multiple classes.
Aspect-oriented programming (AOP) grew out of a recognition that typical programs often exhibit behavior that does not fit naturally into a single program module, or even several closely related program modules.
One of the founding papers on AOP, "Aspect Oriented Programming" (PDF), offers an early look at the development of a new way of programming.
http://www-128.ibm.com/developerworks/java/library/j-aspectj   (3184 words)

  
 Attribute Oriented Programming != Aspect Oriented Programming
Aspects are defined at the same level as classes, and are the basic modular units of aspect-oriented programming.
We call this cross-cutting because the modularization we are seeking cross-cuts the hierarchical structure of OO (actually AOP complements procedural languages as well…but that is another topic).
Now, I do believe this moves us in the right direction of a feature rich implementation of AOP in.Net; however, we as a community need to evolve how we think of AOP and what it promises...and that is so much more then Attributes and Interception.
http://weblogs.asp.net/Mnolton/archive/2004/04/23/119181.aspx   (1652 words)

  
 Aspect oriented programming in C#, Attribute programming, AOP in C#, AOP in VB.net, AOP in .NET
Ok that was a theoretical definition lets try to understand why do we really need AOP when we have decent methodology like "Object oriented programming" and "Procedural Oriented programming".
Aspect oriented programming in C:- Part 2
In AOP you can specify the advice code to execute before, around or after the joint point is matched.
http://www.geocities.com/aspectdotnet   (1546 words)

  
 Enterprise Java Community: Tech Talk Interview
So programming with AOP involves programming with both classes and aspects as natural units of functionality, and aspects, like classes are really a generic concept.
AOP can complement other paradigms, like procedural programming.
But AOP will not make all software simple.
http://www.theserverside.com/events/videos/GregorKiczalesText/interview.jsp   (4720 words)

  
 ONJava.com -- Introduction to Aspect-Oriented Programming
When Object-Oriented (OO) programming entered the mainstream of software development, it had a dramatic effect on how software was developed.
The only problem with OO programming is that it is essentially static, and a change in requirements can have a profound impact on development timelines.
When you are familiar with the concepts presented here, I would recommend that you continue to investigate AOP and see how the other facets may be of use to you in your development environment.
http://www.onjava.com/pub/a/onjava/2004/01/14/aop.html   (1278 words)

  
 Developer Pipeline Trends Aspect Oriented Programming: An Introduction
Structured programming and Object Oriented Programming (OOP) are both among the approaches to SOC that emerged in decades past.
Aspect Oriented Programming (AOP) is an effort to combat this kind of code entropy.
One important feelgood moment of the object oriented design cycle is when the objects and their relationships are conceptualized.
http://www.developerpipeline.com/showArticle.jhtml?articleId=18900159   (1217 words)

  
 TWiki . Javapedia . AspectOrientedProgramming
AOP is growing from a programming perspective into a comprehensive methodology for AOSD (aspect-oriented software development).
The aspect specifies join points in the running program using pointcuts, and permits advice code to run around the join point, to join the advice behavior to the program semantics.
Aspect-Oriented programming (AOP) addresses the problem of encapsulating cross-cutting concerns, which cut across program modules.
http://wiki.java.net/bin/view/Javapedia/AspectOrientedProgramming   (533 words)

  
 Open Directory - Computers: Programming: Methodologies: Aspect-Oriented
AOP: Aspect-Oriented Programming - Methodology enabling modularizing of crosscutting concerns.
Aspectual Components - Paper on the integration of work on aspect-oriented programming, software architecture and component-based software development.
XWeaver - An overview of the aspect weaver that operates on XML representation of the C/C++ source code.
http://dmoz.org/Computers/Programming/Methodologies/Aspect-Oriented   (390 words)

  
 Eric Gunnerson's C# Compendium : C# and Aspect Oriented Programming
One of my concerns is that AOP adds a whole new level of complexity to reading code, in that the code that is executed in a method isn't all in the method.
I'm no expert on AOP, but the main examples I've seen are things like logging - where you have to do something at the start and end of a method.
"One of my concerns is that AOP adds a whole new level of complexity to reading code, in that the code that is executed in a method isn't all in the method."
http://blogs.msdn.com/ericgu/archive/2004/06/29/169394.aspx   (1877 words)

  
 Manageability - Aspect Oriented Programming
Also, AOP should be done at the object level and not at the class level as many are proposing.
Also, by the same line of reasoning, you can always build IDE technology that when you add a tag then it creates a new aspect or is added to an existing one.
In other-words, modularity as defined by design operators appears as the modularity of aspects.
http://www.manageability.org/blog/aspects   (1614 words)

  
 Josh Christie's Weblog: Aspect Oriented Programming
A separate XML file must contain a mapping for each method to which an aspect is applied even though the aspect attribute exists on the method's source code.
The first page in particular gives a pretty good background that should answer the questions, "What is aspect oriented programming?" and "Why would I want to use it".
Overall, an interesting article that should at least enable you to speak intelligently about aspect oriented programming next time it comes up.
http://www.joshchristie.com/weblog/archives/000088.html   (294 words)

  
 Palo Alto Research Center
After developing several special-purpose aspect-oriented programming (AOP) languages, the attention shifted to making a general-purpose AOP language, and AspectJ was born.
The PARC work on aspect-oriented programming emerged from a longstanding goal of making it possible to cleanly capture complex design structures in software implementations.
More information on Aspect-Oriented Software Development can be found at http://aosd.net
http://www.parc.com/research/projects/aspectj   (413 words)

  
 Chapter 6. Spring AOP: Aspect Oriented Programming with Spring
While it's best to program to interfaces, rather than classes, the ability to advise classes that don't implement interfaces can be useful when working with legacy code.
One of the key components of Spring is the AOP framework.
Aspect: A modularization of a concern for which the implementation might otherwise cut across multiple objects.
http://www.springframework.org/docs/reference/aop.html#d0e3707   (8640 words)

  
 Amazon.com: AspectJ in Action: Practical Aspect-Oriented Programming: Books: Ramnivas Laddad
First it delves into design patterns and idioms of AOP; it's not by any means AspectJ-specific, so would be useful for any AOP implementation.
Subjects > Computers & Internet > Programming > General
On the downside I would have liked to have seen more information about where AOP is being used in production today.
http://www.amazon.com/exec/obidos/tg/detail/-/1930110936?v=glance   (1596 words)

  
 Aspect-Oriented Programming - Kiczales, Lamping, Mendhekar, Maeda, Lopes, Loingtier, Irwin (ResearchIndex)
Abstract: this paper, we present an overview of our recent research on programming language expressivity.
0.4: D: A Language Framework For Distributed Programming - Lopes (1997)
In ECOOP'97---Object-Oriented Programming, 11th European Conference, LNCS 1241, pages 220--242, 1997.
http://citeseer.ist.psu.edu/kiczales97aspectoriented.html   (451 words)

  
 InformationWeek Software Tools Retooling The Programmers November 18, 2002
Modern programming languages are designed in a way that's object oriented: Related data and instructions are grouped together in hierarchies of reusable modules that represent entities in a program--say, employees, or products for sale on an E-commerce site.
Just as bad, there's no simple way in popular computer languages such as Java and C++ to incorporate into the code the ideas of the nonprogrammers who'll end up using a piece of software.
Add a new object, and a lot of the program's knowledge about it gets generated automatically.
http://www.informationweek.com/story/IWK20021114S0020   (796 words)

  
 The AspectJ project at Eclipse.org
A podcast interview with Gregor Kiczales recorded at this year's AOSD conference is now available at Software Engineering Radio.
Popular AspectJ docs: the AspectJ 5 Developer's Notebook, and the AspectJ Programming Guide.
This release contains a number of bug fixes and minor enhancements from 1.5.0, together with performance and memory usage improvements resulting in greatly reduced memory usage when building from within AJDT (and noticeable improvements outside of AJDT too).
http://www.eclipse.org/aspectj   (807 words)

  
 Aspect Programming
Aspect Programming is an advocacy site for Aspect-Oriented Software Development, sometimes just called Aspect-Oriented Programming.
We explore the role that AOSD plays in many facets of software development, especially architecture, design, and implementation.
We also explore the practical challenges of using existing AOSD tools and techniques
http://www.aspectprogramming.com   (46 words)

  
 Sun Microsystems - SunFlash News Report: "A Primer for Aspect-Oriented Programming in Java"
Aspect-Oriented Programming (AOP) has attracted enough enthusiasts that some developers consider the model a successor to object-oriented programming (OOP).
Not so fast, suggests Tim Stevens in his informIT article "A Primer for Aspect-Oriented Programming in Java[tm]." [...read more...]
Sun Microsystems - SunFlash News Report: "A Primer for Aspect-Oriented Programming in Java"
http://sunflash.sun.com/articles/76/5/opt-dev/13331   (144 words)

  
 Aspect-Oriented Programming Home Page
If you're looking for information on Aspect-Oriented Programming (AOP) or Aspect Oriented Software Development (AOSD) please visit:
The contents of the PARC AOP page have moved.
If you're looking for Xerox PARC's research on AOP please visit:
http://www2.parc.com/csl/projects/aop   (115 words)

  
 Aspect-Oriented Software Development Community & Conference :: AOSD
For a good overview of AOSD and aspect-oriented programming (AOP), the October 2001 issue issue of Communications of the ACM is a good place to start.
To add yourself to these lists, or to view the archives, use the links at the bottom of the page.
It has a nice collection of articles that cover representative work in AOSD.
http://aosd.net   (280 words)

Compwisdom
 About us   |  Why use us?   |  Press   |  Contact us

 Copyright © 2006 CompWisdom.com Usage implies agreement with terms.