Objectteams

Objectteams

ObjectTeams ist eine aspekt-orientierte Erweiterung von Java, welche in Zusammenarbeit der TU Berlin und Fraunhofer FIRST entwickelt wird.

ObjectTeams besteht (derzeit) aus einem Compiler, der auf ObjectTeams-Code für die Java-Laufzeitumgebung übersetzt, einem Laufzeitpaket sowie einer vollständigen Integration in Eclipse. ObjectTeams basiert im Wesentlichen auf dem Konzept von Teams und Rollen. Eine Pointcut-Sprache, wie sie (in anderer Form) auch in AspectJ eingesetzt wird, befindet sich derzeit in Entwicklung.

Teams

Teams sind quasi intelligente Packages: Sie fassen Klassen wie Packages zusammen, erlauben aber zusätzlich eigene Member und auch Vererbung.

Rollen

Rollen leben innerhalb von Teams und sind Java-Klassen, die an andere Klassen gebunden werden können - diese werden als Basis bezeichnet. Über diese Bindung kann eine Rolle callin- und callout-Methoden definieren. Callin-Methoden sind Methoden, die in einer von drei Arten an Methoden der Basis-Klasse gebunden werden können. Die callin-Methode wird aufgerufen

  • bei "before": unmittelbar vor dem Aufruf der Basis-Methode,
  • bei "after": unmittelbar nach dem Aufruf der Basis-Methode und
  • bei "replace": anstatt dem Aufruf der Basis-Methode

Das Basis-Objekt wird gewissermaßen geschützt. Aufrufe auf dem Basis-Objekt sind der Rolle nicht direkt möglich. Solche Aufrufe müssen in Form von callout-Methoden explizit deklariert werden.

Derzeit in der Entwicklung ist eine Pointcut-Sprache, um ähnlich wie bei AspectJ die Selektion der Basis-Klassen und -Methoden besser steuern zu können.

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем решить контрольную работу

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Aspekt-orientierte Programmierung — Die Artikel Aspektorientierte Programmierung und Cross Cutting Concern überschneiden sich thematisch. Hilf mit, die Artikel besser voneinander abzugrenzen oder zu vereinigen. Beteilige dich dazu an der Diskussion über diese Überschneidungen.… …   Deutsch Wikipedia

  • Aspektorientierung — Die Artikel Aspektorientierte Programmierung und Cross Cutting Concern überschneiden sich thematisch. Hilf mit, die Artikel besser voneinander abzugrenzen oder zu vereinigen. Beteilige dich dazu an der Diskussion über diese Überschneidungen.… …   Deutsch Wikipedia

  • List of programming languages by category — Programming language lists Alphabetical Categorical Chronological Generational This is a list of programming languages grouped by category. Some languages are listed in multiple categories. Contents …   Wikipedia

  • Aspect-oriented programming — (AOP) is a programming paradigm that increases modularity by allowing the separation of cross cutting concerns.Separation of concerns entails breaking down a program into distinct parts (so called concerns , cohesive areas of functionality). All… …   Wikipedia

  • Role-Oriented Programming — is a form of computer programming aimed at expressing things in terms which are analogous to our conceptual understanding of the world. This should make programs easier to understand and maintain. The main idea of role oriented programming is… …   Wikipedia

  • Список языков программирования по категориям — Списки языков программирования По категориям Хронологический Генеалогический Приведён список языков программирования, сгруппированных по категориям. Некоторые языки попали в несколько категорий. Содержание …   Википедия

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”