Aspect oriented Everything?

N

New_aspect

Hello,

Aspect oriented Software development seems to be expanding in the
popular vision of developers, with more and more IDE 'add-ons' and
even more specialized tools,Jboss etc.
I've seen more and more languages integrate AOP,AspectJ (Java),
AspectR(Ruby)etc.Aspect oriented does seem to be the place to go from
a developer standpoint.What I want to know is,if anybody on a
commercial scale is using AOSD to develop commercial products? Is an
Open Source development ever going to gain the trust of industry? It
may be ok for personal projects and other Open Source material but
will your bank ever accept it? Is it the fact that AOP is new and, for
most,confusing or is it the fact that AOP has developed in the
environment it has.i.e Open Source,that may dissuade commercial
development shops from accepting AOP.

What are the main features that may lead to AOSD adoption? Is AOP the
next step on from OOP? Is it another chance for some of the lesser
utilised languages to step up to Java and C++? Your opinions on the
subject would be appreciated? Design features are one thing but
widespread adoption is another, or is it?

Anything you care to add on the subject would be appreciated on this
short questionnaire.
http://www.geocities.com/aspect505

Thank you for your participation.


Shane Hassan.


http://www.geocities.com/aspect505
 
L

Lothar Scholz

Aspect oriented Software development seems to be expanding in the
popular vision of developers, with more and more IDE 'add-ons' and
even more specialized tools,Jboss etc.

I'm not sure if this is a the way to go. I've only seen proof of
concept but no real use. But only in the latter case you can see the
problems.

I don't like it because it breaks encapsulation and splitters the code
over a few files. Maybe that can be solved with new kind of editors
but it is much more easy to result in a big confusion.

The most important use cases that i've seen so far are:

- Logging facilities
- Debugging code
- Pre/Postconditions
- Threading synchronization

1+2+3 can be embedded in a language. This is already done in Eiffel.
I don't know if i really want to see something as difficult as
"threading synchronization" as an aspect.
 
W

Will Stuyvesant

[[email protected] (New_aspect)]
Aspect oriented Software development seems to be expanding ...
...some of the lesser
utilised languages to step up to Java and C++?

How about stepping from Java or C++. AOP is just a contrived way to
get around the static typing restrictions that Java and C++ have. You
need Python.
 
?

=?ISO-8859-1?Q?Sascha_D=F6rdelmann?=

What I want to know is,if anybody on a
commercial scale is using AOSD to develop commercial products?

I know about AOP for quite a while now but I've actually never used it
in a commercial product.

One reason I can offer you is, that it was always easy to get around
using it. You know most of the "vertical" and "horizontal" needs from
the beginning of the project and are free to include them in your UML
model.

One strategy to get around AOP at design time ist multiple inheritance
(MI). Even if the language doesn't support MI directly there are many
ways to implement an UML model which includes MI. Other strategies
include the visitor pattern or some other form of delegation to
specialized objects.

There are some things which could make AOP more attractive:
- discussions like this one
- integration in some language would of course make some people use it
(but who would use this brand new language?)
- find a "killer app" (e. g. show that it's better to use AOP to
profile
than to use the standard profiling tools)
- make it either as simple as possible or very difficult but with
enormous power
- build a refactoring browser which refactors aspects to where they
belong
;-)

Generic programming is gaining more and more attention in the world of
statically typed languages. AOP could be part of that. On the other
hand it's a lot easier to implement AOP in a dynamic language like
Ruby. And as people like the nature of their favorite language, they
might like the dynamic aspect of AOP, too.

Cheers
Sascha
 
R

Robert Will

I'm not sure if this is a the way to go. I've only seen proof of
concept but no real use. But only in the latter case you can see the
problems.

I don't like it because it breaks encapsulation and splitters the code
over a few files. Maybe that can be solved with new kind of editors
but it is much more easy to result in a big confusion.

The most important use cases that i've seen so far are:

- Logging facilities
- Debugging code
- Pre/Postconditions
- Threading synchronization

1+2+3 can be embedded in a language. This is already done in Eiffel.
I don't know if i really want to see something as difficult as
"threading synchronization" as an aspect.

I see, you watched the trend the closely. Incidentally I have the
same opinion, except that I don't consider their dysfunctional
examples as proof of concepts.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,580
Members
45,054
Latest member
TrimKetoBoost

Latest Threads

Top