plugins-intro.xml 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 24249 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="learning.plugins.intro">
  5. <title>Einführung</title>
  6. <para>
  7. Zend Framework verwendet sehr stark Plugin Architekturen. Plugins erlauben eine einfache
  8. Erweiterung und Anpassung vom Framework wärend der eigene Code vom Zend Framework Code
  9. seperiert bleibt.
  10. </para>
  11. <para>
  12. Typischerweise arbeiten Plugins im Zend Framework wie folgt:
  13. </para>
  14. <itemizedlist>
  15. <listitem>
  16. <para>
  17. Plugins sind Klassen. Die aktuelle Klassendefinition ist unterschiedlich basierend
  18. auf der Komponente -- man muss eine abstrakte Klasse erweitern oder ein Interface
  19. implementieren, aber der Fakt bleibt bestehen dass das Plugin selbst eine Klasse
  20. ist.
  21. </para>
  22. </listitem>
  23. <listitem>
  24. <para>
  25. Zusammengehörende Plugins teilen sich einen gemeinsamen Klassenpräfix. Zum Beispiel
  26. wenn man eine Anzahl von View Helfern erstellt, könnten alle den Klassenpräfix
  27. "<classname>Foo_View_Helper_</classname>" teilen.
  28. </para>
  29. </listitem>
  30. <listitem>
  31. <para>
  32. Alles nach dem gemeinsamen Präfix wird als <emphasis>Name des Plugins</emphasis>
  33. oder <emphasis>Kurzname</emphasis> angenommen (gegenüber dem "langen Namen" welcher
  34. der komplette Klassenname ist). Wenn der Plugin Präfix zum Beispiel
  35. "<classname>Foo_View_Helper_</classname>" ist, und der Klassenname
  36. "<classname>Foo_View_Helper_Bar</classname>", dann wird der Name des Plugins einfach
  37. "<classname>Bar</classname>" sein.
  38. </para>
  39. </listitem>
  40. <listitem>
  41. <para>
  42. Namen von Plugins sind typischerweise abhängig von der Schreibweise. Ein Nachteil
  43. ist, das der initiale Buchstabe ost entweder klein- oder großgeschrieben ist; in
  44. unserem vorherigen Beispiel würden beide, sowohl "bat" als auch "Bar" auf das
  45. gleiche Plugin verweisen.
  46. </para>
  47. </listitem>
  48. </itemizedlist>
  49. <para>
  50. Jetzt sehen wir uns die Verwendung von Plugins an.
  51. </para>
  52. </sect1>