Willkommen beim XUL School Tutorial!
Dieses Tutorial soll der entscheidene Schritt sein, welcher Sie in einen Firefox Extension Developer (Erweiterungsentwickler) verwandelt. Wir haben Jahre an Erfahrung mit XUL und während dieser Zeit alle Probleme kennengelernt, auf die Entwickler stoßen.
XUL School wurde erschaffen von Appcoast (ehemals Glaxstar), eine der wenigen Firmen, welche sich der Addon Entwicklung von Firefox verschrieben hat. Ein Team von über einem Dutzend XUL Entwickler entwickelten Glaxstar während dieses Tutorial geschrieben wurde. Sie sammelten jahrelang Erfahrung und diese reflektieren Sie hier.
In diesem Tutorial erfahren Sie, wie Sie Firefox-Erweiterungen entwickeln. Sie werden lernen, wie man schnell die häufigsten Aufgaben in der Extension-Entwicklung löst und vergleichen verschiedene Ansätze, sie zu lösen. In den meisten Fällen bieten wir Codebeispiele, die Sie leicht kopieren und an Ihre Bedürfnisse anpassen können, sowie einige funktionierende Beispiele von Erweiterungen. Das Tutorial soll so kurz wie möglich sein. Oft hilft das Zurückgreifen auf die Mozilla-Dokumentation für weitere Informationen. Sie können es als praktischen Reiseführer mit Infos durch die wachsende Welt, die die Mozilla-Plattform ist, nutzen. Die meisten Links in dieser Dokumentation sollten angeklickt und gelesen werden.
Wir starten mit einer Einführung in die Hauptkonzepte, falls Sie nicht mit Mozilla und Firefox vertraut sind.
Mozilla and Firefox
Der Term Mozilla wird benutzt, um folgende Konzepte zu beschreiben: das Mozilla Projekt, die Mozilla Foundation, die Mozilla Corporation und den alten Mozilla browser. Auch Firefox wird manchmal "Mozilla" genannt. Falls Ihnen die Begriffe nicht geläufig sind, ist es von Vorteil, sich etwas Zeit zu nehemen und mehr über Mozilla zu lernen. Dies hilft die Kultur und das Umfeld von Mozilla zu verstehen.
Mozilla hat mehrere Produkte und Projekte hervorgebracht. Das bemerkenswerteste ist der Mozilla Firefox Web-Browser. Firefox ist eines der erfolgreichsten Open-Source-Projekte in der Geschichte. Es kombiniert Offenheit, die Einhaltung von Standards und Raffinesse von Open Source mit dem Fokus auf Benutzerfreundlichkeit und leistungsstarke Vielseitigkeit, wie man es in weniger offenen Unternehmen nur selten sieht.
Version 1.0 von Firefox wurde im November 2004, Version 2.0 im Oktober 2006 und Version 3.0 im Juni 2008 veröffentlicht. Dieses Tutorial wurde geschrieben, nachdem Firefox 3 veröffentlicht wurde, und ist mit der Zeit aktualisiert worden. Obwohl noch für die Erstellung von Erweiterungen in Firefox 3 (und auch Firefox 2) gearbeitet wird, ist es dringend zu empfehlen, dass Sie moderne Firefox-Versionen unterstützen, um Nutzer zu motivieren, mit Sicherheitsupdates auf dem laufenden zu bleiben. Eine Version, die vor mehr als 6 Monaten veröffentlicht wurde, ist wahrscheinlich anfällig für Sicherheitslücken.
Firefox und andere Mozilla-Anwendungen kann man als zusammengesetzt ansehen aus zwei verschiedenen Teilen: eine Benutzeroberflächen-Schicht, die für jedes Projekt verschieden ist, und eine gemeinsame Plattform, worauf die Benutzeroberflächen-Schicht angesiedelt ist. Die Benutzeroberfläche ist mit der Technologie XUL entwickelt und die Plattform wird als XULRunner bezeichnet.
XUL
XUL (ausgesprochen "zool") ist eine von vielen Technologien für die Erstellung von Mozilla-basierten Produkten und wird auch für Erweiterungen verwendet. Sie ist nur ein Teil der Entwicklungslandschaft, aber da sie praktisch exklusiv für Mozilla ist, neigt man dazu, sie zu verwenden, um Mozilla-bezogene Entwicklungen zu identifizieren. Sie lesen manchmal Begriffe wie "XUL-Anwendungen" und "XUL-Erweiterungen", aber nur selten werden sie für Projekte benutzt, die ausschließlich mit XUL gebaut sind. Es bedeutet in der Regel, dass die Projekte mit Mozilla-Technologien gebaut wurden. Auch dieses Projekt, genannt XUL Schule, erstreckt sich über mehrere andere Technologien wie JavaScript, CSS, XBL und XPCOM.
XULRunner
XULRunner umfasst die Gecko-Rendering-Engine, die Necko Netzwerk-Bibliothek, und einige andere Komponenten, die unter anderem OS-unabhängiges Datei-Management, Zugänglichkeit und Lokalisierung bieten. Es ist eine sehr leistungsfähige Plattform, die ein solch schnelles Wachstum der Entwickler-Community rund um Mozilla und Firefox erlaubt hat.
XULRunner ist in binärer Form auf der XULRunner Seite verfügbar und sie ist die Basis für mehrere Projekte, wie zum Beispiel Songbird, Miro und Eudora. Es gibt eine sehr umfassende Liste von Anwendungen in der XULRunner Hall of Fame.
Gecko
Die Gecko-Engine ist der Teil von Firefox, der verwendet wird, um Web-Seiten und eine eigene Benutzeroberfläche zu gestalten. Sie erkennen den Grad der Kompatibilität von Web-Standards in Gecko-basierten Browsern, indem Sie sich ihren User Agent String ansehen, der die Gecko-Version enthalten sollte. Gecko-Versionen sind etwas unabhängig von Firefox-Versionen. Sie können eine Zuordnung von Firefox-Versionen und Gecko-Versionen auf der Gecko-Seite sehen. Der User Agent String für Firefox zum Zeitpunkt des Schreibens dieses Artikels (in US-Englisch, Mac OS X) ist:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:7.0.1) Gecko/20100101 Firefox/7.0.1
Der markierte Abschnitt ist die Gecko-Version: 7.0.1. Sie können den User-Agent-String lesen und kopieren in jedem beliebiegen Firefox-Fenster. Dazu wählen Sie "Hilfe> Informationen zur Fehlerbehebung" aus dem Hauptmenü.
Weiter im Tutorial
Mit den grundlegenden Konzepten können wir jetzt in die Entwicklung von Erweiterungen einsteigen. Sie werden sich wahrscheinlich immer noch fragen, was genau ist eine Erweiterung, was kann sie leisten und wie kann man sie erstellen. Nun, dieses ganze Tutorial verfolgt das Ziel, Ihnen das zu erklären.
Willkommen in der Welt der Extension-Entwicklung. Jetzt wollen wir uns dem zuwenden.
This tutorial translation was kindly donated to Mozilla by Sinn - IT mit Emotion