Trait (Programmierung)Ein Trait (Deutsch: Eigenschaft, Charakteristik) ist ein Begriff aus der objektorientierten Programmierung und beschreibt eine wiederverwendbare Sammlung von Methoden und Attributen, ähnlich einer Klasse. Die Idee der Traits entspringt der Programmiersprache Self und findet mittlerweile in vielen modernen objektorientierten Sprachen Verwendung. Die Verwendung von Traits erlaubt das horizontale Wiederverwenden einer Methodensammlung. Bei dem Prinzip der Mehrfachvererbung, das einige objektorientierte Programmiersprachen anbieten, ist das gleiche Vorgehen möglich; jedoch umgehen Traits (so wie auch Mixins) das Diamond-Problem, eine speziell durch die Mehrfachvererbung hervorgerufene Beziehungsproblematik unter verschiedenen Klassen. Traits als besondere Variante der MixinsTraits sind bei der Einbindung in andere Klassen viel flexibler als Mixins:[1]
BeispielePHPIn der Programmiersprache PHP können Traits ab der Version 5.4 benutzt werden:[2] trait Hello
{
public function sayHello()
{
echo 'Hello ';
}
}
trait World
{
public function sayWorld()
{
echo 'World';
}
}
class HelloWorld
{
use Hello, World;
public function sayExclamationMark()
{
echo '!';
}
}
$objHelloWorld = new HelloWorld;
$objHelloWorld->sayHello();
$objHelloWorld->sayWorld();
$objHelloWorld->sayExclamationMark();
Das obige Beispiel gibt „Hello World!“ aus. Programmiersprachen, die Traits unterstützen
Weblinks
Einzelnachweise
|