Hinausgehende OO Mit Aspect-Oriented Programming

Die objektorientierte (OO) Techniken sind auf dem Prinzip aufgebaut, dass wie Verantwortlichkeiten und Anliegen können stoffschlüssig zusammen und zu einer Einheit gekapselt gruppiert werden - wie zum Beispiel eine Klasse. Allerdings können einige Aufgaben nicht mit den Standardtechniken in OO-Sprachen verfügbar verkapselt werden. Diese Verantwortlichkeiten sind Ablängen Bedenken genannt, weil sie mehrere Teile eines Programms "durchschnitten". Die Protokollierung ist so ein Ablängen Sorge, weil Sie die Protokollierung in jedem Teil des Systems implementieren müssen. Allerdings machen die einzige Möglichkeit, alle Systemkomponenten loggt sich sicher, und in einem Standard-Weg, ist die manuelle Code einzufügen, wo angemessen.

Aspektorientierte Programmierung (AOP) Tools können Sie angeben, an einem Ort in Ihrem Programm wie Sie planen sie ein generelles Interesse zu erörtern. Die Werkzeuge, dann die Umsetzung generieren und sie in allen notwendigen Stellen im Code einzufügen.

Das folgende Beispiel zeigt die Verwendung von AOP bei der Umsetzung eines Stapels.

Aspekt AddLogging {- push (ItemType * item) {AddLogging.info (@ "Pushing Punkt", item)} - (ItemType *) pop {AddLogging.Info (@ "Popping Punkt", returnedItem) -} // Andere Ablängen Code .}

Menü