AOP in supposed to aid programmers in the separation of concerns, specifically cross-cutting concerns . The base class behavior is modified by aspect class that applies advice (additional behavior) at various join points (points in the base class) based on query or quantification called pointcut . To be more specific it allows a simple class ( POCO ) to have additional behavior that can be added declarative (not in the base class but in some external definition - from software engineering perspectives...
Almost every application needs to store all the errors, debugging outputs, warnings, audits and etc for the usual needs. It's common to develop some kind of a library that will enable us to write all the logged information in one (or more) repository the common ones are simple files and even log entries. There are two dominating open source libraries – one, more common in my opinion, from Microsoft ( Logging Application Block ). And one from apache java port log4j – log4net . I will focus on...