Einzelnen Beitrag anzeigen

Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#35

AW: Wozu sind Attribute gut ?

  Alt 22. Jul 2013, 11:35
Warum nicht einfach Resource DLLs mit liefern? Gerade in .Net ist das doch sehr einfach.
aber das wird OT.

Zum Thema:
Attribute sind Metadaten direkt am zu beschreibenden Code-Element. (Eigenschaft, Typ, Methode, ...)
Das heißt, man kann die Mittel der Sprache/Runtime um zusätzliche Punkte erweitern, ohne dass es zu fremdartig wirkt.

AOP-Frameworks können Attribute nutzen um sehr einfach die zu erweiternden Teile zu finden. Derjenige, der den Code liest, kann aber auch sehr einfach sehen was passiert. (Solange diese Attribute sinnvolle Namen und Parameter haben)

Ich selbst habe einen Build Task für C# geschrieben, mit dem man ein exaktes Gegenstück zu DllImport bekommt.
Da es sich in der Bedienung und Benennung eng an das vom Framework gestellte DllImport hält, fällt es eigentlich gar nicht als etwas "fremdes" auf.

PostSharp nutzt Attribute um Aspekte an bestimmte Code-Elemente zu binden. Auch das ist IMO sehr leserlich und verständlich.

Lustigerweise finde ich es gerade bei ORMs ziemlich daneben. Da Attribute-basierte Mappings nicht beim Kunden vom Kunden oder einem Consultant angepasst werden können. Aber ich bin wohl einer der ganz wenigen, die Mapping by Code nur während der ersten Entwicklungsphasen einsetzen...

Da Delphi Maschinen-Code erzeugt sind die wirklich mächtigen Use-Cases sicherlich so sau schwer zu implementieren, dass man es besser sein lässt.
Aber nicht alle Metadaten werden zum Verändern des Kompilats benötigt.
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat