Adobe Air (wiwobooks.com Release)
Nachteile hinsichtlich des Benutzererlebnisses (stellen Sie sich nur einmal vor, z. B. Ihr Bildbearbeitungsprogramm würde sich jedes Mal neu aufbauen, wenn Sie einen Stift, ein Füllwerkzeug oder ein anderes Werkzeug auswählen).
Bereits Anfang 2002, als Macromedia Flash MX veröffentlichte, machten sich der damalige Chefentwickler Jeremy Allaire, heute CEO von Brightcove, und sein Team Gedanken über Clienttechnologien, die den seinerzeit bekannten Rahmen sprengen und dem Benutzer ein neues, reicheres Erlebnis bescheren sowie »Inhalt, Anwendungslogik und Kommunikation miteinander verbinden« sollten. Das Team von Macromedia prägte damals in einem White Paper 1 den Begriff der Rich Internet Application (RIA), also etwas frei übersetzt der »reichhaltigen Internetanwendung«, und meinte damit Webanwendungen, die von der Bedienung her mehr den Desktopanwendungen nahekamen und dennoch die zentrale, plattformunabhängige Natur des WWW bewahrten. Sie erinnern sich: Die Abkürzung RIA heißt rückwärts AIR – das ist kein Zufall.
RIA-Charakteristiken
Folgende Aspekte wurden bereits 2002 von Allaire und seinem Team als für RIAs kennzeichnend angesehen:
eine effiziente, hochperformante Laufzeitumgebung zur Ausführung von Code, Inhalt und Kommunikation
Integration von Inhalt, Kommunikation und Anwendungsschnittstellen in eine gemeinsame Umgebung
leistungsfähige und erweiterbare Objektmodelle für Interaktivität Ermöglichen von Rapid Application Development (RAD, ein Modell der Softwareentwicklung) durch Komponenten und Wiederverwertbarkeit von Code Möglichkeit der Nutzung von Web- und Datendiensten, die von Anwendungsservern angeboten werden
Berücksichtigung sowohl mit dem Internet verbundener als auch vom Internet getrennter Clients
Ermöglichen von einfacher Verteilung von Anwendungen auf unterschiedlichste Plattformen und Endgeräte
1 Jeremy Allaire: »Macromedia Flash MX – a next-generation rich client«, März 2002. http://download.macromedia.com/pub/flash/whitepapers/richclient.pdf
Interessanterweise meinte Allaire seinerzeit, dass Flash MX all diese Punkte abdecken würde. Heute, sieben Jahre später (im Kontext des Internets eine kleine Ewigkeit), können wir rückblickend feststellen, dass er sich darin zwar geirrt hat, sich die Flash-Plattform aber seither sehr eng an diesen Vorgaben weiterentwickelt hat.
Wiederverwertbarkeit von Code, OOP und Frameworks
Nicht nur bezogen auf die Umwelt ist die Produktion von Müll verpönt – auch in der Welt der Programmierung sind Wiederverwertbarkeit, Erweiterbarkeit und Wartbarkeit von Programmquelltext ein wichtiges und zentrales Anliegen. Diese Konzepte beinhalten den Ansatz, dass sich bei aller Unterschiedlichkeit der Projekte und damit zusammenhängender Programmieraufgaben wesentliche gleichartige Teile immer wiederholen bzw. dass sie nur gering voneinander abweichen.
Die Segmentierung des Programms in möglichst klar abgegrenzte Bestandteile ist daher nicht nur logische Folge, sondern auch wirtschaftliche Notwendigkeit – schließlich würden Sie z. B. von einem Automobilhersteller auch nicht erwarten, dass er bei jedem neuen Modell im wahrsten Sinne des Wortes »das Rad neu erfindet«.
Zwar kann man auch wie in einem Labyrinth eine Aufgabe nach der anderen »wegprogrammieren« und sich so Schritt für Schritt zum Ziel vortasten. Dieser Ansatz mag bei kleinen Projekten durchaus funktionieren, führt bei größeren (und besonders bei teamübergreifenden) Programmieraufgaben jedoch unweigerlich zu Spaghetti-Code , also mit anderen Worten zu einem unübersichtlichen Durcheinander von Abhängigkeiten, Verzweigungen und Verschachtelungen. Eine wichtige und verbreitete Methode, wiederverwertbaren Code zu gewährleisten, ist die o bjektorientierte Programmierung (OOP). Auch wenn dieses Buch nicht dazu dienen soll, fortgeschrittene Programmierkonzepte von Grund auf zu erklären, so werden wir in den Codebeispielen immer wieder grundlegenden OOP-Aspekten begegnen.
Sollten Sie OOP noch nie begegnet sein, empfehlen wir die Lektüre eines GrundlagenBuchs über OOP, da Sie sonst Schwierigkeiten bekommen könnten, den Beispielen im Buch zu folgen. Zumindest sollten Ihnen Konzepte wie Klassen, Instanzen und Vererbung bekannt sein. Ferner führt der Wunsch nach wiederverwertbaren Programmteilen und das wiederholte Auftreten von ähnlichen Aufgaben bei den meisten OOP-unterstützenden Programmiersprachen dazu, dass ein »Werkzeugsatz« für die gängigsten
Weitere Kostenlose Bücher