This article is the third part of the series of articles in this journal to
describe our Aspect.NET project – an aspect-oriented programming (AOP)
framework for Microsoft.NET based on a number of new ideas (for the first two
articles, see #4 and 5 in the References section). This article analyzes the
advantages of using AOP, presents the current status of Aspect.NET –
its design principles, its working version – and gives some practical
examples.
The evolution of software and the customers’ for it, as well as the
needs of the everyday fixing, update, and enhancement of software often lead
to poorly understandable and tangled code, with fragments of implementation
of quite different functionalities unclearly intermixed in the same software
modules... (more)
This article presents a new approach to aspect-oriented programming (AOP) -
an advanced programming paradigm and technology that supports the separation,
design, implementation, location, and updating of crosscutting concerns
implemented as aspects. The most common AOP tools - AspectJ, HyperJ, etc.,
contain a lot of AOP foundation ideas and useful features, but they are
focused on Java t... (more)
This article is devoted to my SPBU.NET educational project supported by
Microsoft Research in 2004 and accomplished in 2004-2005. The goal of the
project was to develop a complex of educational materials on Microsoft.NET,
compilers, software engineering, and operating systems, based on my 28 years
of teaching and R&D experience at St. Petersburg University. The results of
the project [1-... (more)
Aspect-oriented programming (AOP) is a new programming paradigm that supports
software component reuse and modification. Each application can be regarded
as a collection of implementations of ideas or concerns.
Some concerns can be implemented as a programming module or a collection of
modules. We'll refer to these as modular concerns. Other concerns are
referred to as crosscutting concer... (more)
This article continues the series devoted to principles of teaching .NET and
other modern technologies. The first article described my SPBU.NET
educational project and the ERATO (Experience - Retrospective - Analysis -
Theory - Oncoming perspectives) teaching paradigm that I use in my courses
and seminars on .NET, compilers, software engineering, and operating systems,
parts of my SPBU.N... (more)