www.wikidata.de-de.nina.az
Ein Trait Deutsch Eigenschaft Charakteristik ist ein Begriff aus der objektorientierten Programmierung und beschreibt eine wiederverwendbare Sammlung von Methoden und Attributen ahnlich 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 moglich jedoch umgehen Traits so wie auch Mixins das Diamond Problem eine speziell durch die Mehrfachvererbung hervorgerufene Beziehungsproblematik unter verschiedenen Klassen Inhaltsverzeichnis 1 Traits als besondere Variante der Mixins 2 Beispiele 2 1 PHP 3 Programmiersprachen die Traits unterstutzen 4 Weblinks 5 EinzelnachweiseTraits als besondere Variante der Mixins BearbeitenTraits sind bei der Einbindung in andere Klassen viel flexibler als Mixins 1 einzelne Methoden eines Traits lassen sich ausschliessen oder durch eine andere ersetzen mehrere Traits konnen in eine Klasse inkludiert werden wobei sich Namenskonflikte d h gleichbenannte Methoden mit Hilfe von Aliasen losen lassen ein Trait kann Methoden benutzen die nicht in ihm selbst definiert wurden sondern in der inkludierenden Klasse ein Trait bietet die Moglichkeit auch Klassenattribute zu definieren Beispiele BearbeitenPHP Bearbeiten In der Programmiersprache PHP konnen 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 gt sayHello objHelloWorld gt sayWorld objHelloWorld gt sayExclamationMark Das obige Beispiel gibt Hello World aus Programmiersprachen die Traits unterstutzen BearbeitenCurl Fortress 3 Groovy ab Release 2 3 Haxe mit der Zusatzbibliothek Composure moglich 4 JavaScript Delegation Funktionsobjekte als Rollen Traits und Mixins Kotlin Perl 5 roles durch das Modul Moose 5 Pharo Smalltalk PHP ab Version 5 4 Python z B durch das Modul Traits 6 Raku auch dort roles genannt 7 Rust 8 Scala SelfWeblinks BearbeitenTraits Composable Units of Behavior Auswahl von Artikeln uber Traits englisch Einzelnachweise Bearbeiten kingcrunch de PHP5 4 Traits aka Horizontal Reuse Einfuhrung in Traits auf php net Traits in Fortress englisch PDF Datei 2 5 MB Introducing Composure for Haxe with Dependency Injection Moose Role Dokumentation PyPI traits 4 4 0 Perl 6 roles und traits Memento des Originals vom 21 September 2011 im Internet Archive nbsp Info Der Archivlink wurde automatisch eingesetzt und noch nicht gepruft Bitte prufe Original und Archivlink gemass Anleitung und entferne dann diesen Hinweis 1 2 Vorlage Webachiv IABot chris prather org Rust Reference Manual Traits Abgerufen von https de wikipedia org w index php title Trait Programmierung amp oldid 236831700