Ajax und Webentwicklung mit Prototype

Slides:



Advertisements
Ähnliche Präsentationen
HTML5 Die Zukunft von OpenROAD
Advertisements

GWT - google Web Toolkit
Web 2.0 Ringelmann Arthur.
WWW World Wide Web.
Inhalt – Technische Grundlagen
Basis-Architekturen für Web-Anwendungen
Seminar Internetdienste Web 2.0 und Rich Internet Applications (RIA) JavaFX Rainer Scholz.
Ruby on Rails im Überblick
NATURAL Web-Integration 1 / 27/28-Feb-98 TST NATURAL Web-Integration Arbeitskreis NATURAL Süd Theo Straeten SAG Systemhaus GmbH Technologieberater Stuttgart.
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Pascal Busch, WWI00B – Vergleich CORBA vs. Web Services hinsichtlich der Applikationsintegration Web Services vs CORBA Web Services vs CORBA Ein Vergleich.
Web 3.0 – Programmierung – Semantic Web / CIDOC CRM
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil2.
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
Projekt Web Engineering
Zukunft des Webs? Dennis Beer Christian Blinde
Web-Anwendungsentwicklung à la MVC. Übersicht Über Georg Heeg Ein industrielles Beispiel Web-Anwendungen aus Smalltalker-Sicht MVC für das Web Programmierdemo.
Ralf KüstersDagstuhl 2008/11/30 2 Ralf KüstersDagstuhl 2008/11/30 3.
YouTube5 .0 Projektpräsentation
Open Services Gateway Initiative
Bild 1.1 Copyright © Alfred Mertins | Signaltheorie, 2. Auflage Vieweg+Teubner PLUS Zusatzmaterialien Vieweg+Teubner Verlag | Wiesbaden.
20:00.
JavaScript Object Notation
Lutz Rabe | Koordinierungsstelle für IT-Standards (KoSIT)
Ergebnisse Technologie Analyse St. Gallen, 02/2011
JavaScript.
...ich seh´es kommen !.
UNIVERSITÄT ZU KÖLN HISTORISCH-KULTURWISSENSCHAFTLICHE INFORMATIONSVERARBEITUNG REUSABLE - CONTENT SS 2013 MARIA WAGNER ReST.
Generalisierung/Spezialisierung Subtypisierung/Vererbung
Bedeutung von Internet-Technologien
App-Entwicklung mit HTML5, CSS und JavaScript
Your name Bedeutung von Internet- Technologien Gruppe 1 Andreas Feuerstein Philipp Hochratner Christian Weinzinger.
Technische Universität München BDE! Mobile Entwicklung einer mobilen Webanwendung für einen auf ältere Menschen zugeschnittenen sozialen Marktplatz Bearbeiter:
RATEME Suchen und Bewerten von Ausgangsorten. Inhalt RateMe - Pirmin Schürmann, Thomas Junghans - Hochschule für Technik Zürich 2 Unser Ziel.
Clientseitig Session IDs Erweiterungen wie NoScript Cookies verbieten Serverseitig Tokens HTML Entities verwenden 1.
Developer Day Office APPs entwicklen Simon Amrein Trivadis AG Die ersten Schritte in eine neue Office-Welt.
Auslegung eines Vorschubantriebes
Daniel Franke Tim Benedict Jagla Matthias Thimm
RATEME Suchen und Bewerten von Ausgangsorten. Inhalt RateMe - Pirmin Schürmann, Thomas Junghans - Hochschule für Technik Zürich 2 Unser Ziel.
JavaScript-Bibliotheken
Oliver Spritzendorfer Thomas Fekete
Agenda Rückblick 2. Aufbau der Software Benutzeroberfläche 4. Ausblick
Analyseprodukte numerischer Modelle
Web 2.0 & AJAX (A)sysnchrones (J)avaScript (A)nd (X)ML
RATEME Suchen und Bewerten von Ausgangsorten. Inhalt RateMe - Pirmin Schürmann, Thomas Junghans - Hochschule für Technik Zürich 2 Unser Ziel.
RATEME Suchen und Bewerten von Ausgangsorten. Inhalt RateMe - Pirmin Schürmann, Thomas Junghans - Hochschule für Technik Zürich 2 Unser Ziel.
RATEME Suchen und Bewerten von Ausgangsorten. Inhalt RateMe - Pirmin Schürmann, Thomas Junghans - Hochschule für Technik Zürich 2 Unser Ziel.
Infoscreen 2.0.
Infoscreen 2.0.
Aufzeichnung von Usability-Daten im www. Client-Side Log : automatisch (maschinell) generiertes Protokoll Client : Rechner mit dem Browser des Users Server:
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
Vortrag von Rechtsanwältin Verena Nedden, Fachanwältin für Steuerrecht zur Veranstaltung Wege zum bedingungslosen Grundeinkommen der Piratenpartei Rhein-Hessen.
Daniel Franke Tim Benedict Jagla Matthias Thimm.
Der Erotik Kalender 2005.
Begrüßung und Abschied
W W W - World Wide Web. Das World Wide Web kommt aus dem Englischen und bedeutet ‚Weltweites Netz‘ ist ein über das Internet abrufbares Hypertext-System.
© Fink/Spengler/AINF-Lehrgang 2003 – Folie 1 AINF/3. Jahrgang Netzwerke Anwendungen (Clientseitig) Karl Brenner, Andreas Fink, Gerhard Jüngling, Albert.
JavaScript-Bibliotheken
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
Kay Herzam IT Consulting GmbH Webentwicklung mit ASP.NET 4, Ajax und jQuery.
Web und Mobile Apps Programmieren Marco Jakob Kurzvortrag OSS an Schulen
Exploiting Web Applications
Datenbanken im Web 1.
JQuery Maya Kindler 5c. Entwickler/ Autor John Resig hat jQuery entwickelt. jQuery ist eine Javascript Bibliothek die das programmieren in Javascript.
JQuery: New Wave Javascript Seite 1 jQuery: New Wave Javascript Jörn Zaefferer TIMETOACT Software & Consulting GmbHT: Im Mediapark 2F:
Microsoft Silverlight Autor: Christian Pirker. Inhalt Einführung Silverlight Einführung XAML Silverlight 1.0 und 1.1 Silverlight 2.0 Silverlight 3.0 Ausblick.
Ressourcenoptimierung von Webapplikationen am Beispiel einer Rich Internet Applikation Sergej Becker Betreuender Prüfer: Prof. Dr. Olaf Zukunft KolloquiumZweitgutachter:Prof.
Inhaltsverzeichnis  Motivation  Kurzbeschreibung  Benutzte Technologien HTML 5 / Javascript / Geolocation API AJAX PHP MYSQL GPS  Datenbankstruktur.
 Präsentation transkript:

Ajax und Webentwicklung mit Prototype Einführung in Ajax, Vorstellung und Bewertung von Prototype.js, einer JavaScript Bibliothek für Ajax und Vorstellung der Webanwendung „Rent a bike“ (Prototyp) In kommenden 60 Minuten über 2 Dinge Konzept AJAX, „Async…“ zur asynchronen Datenübertragung vorstellen Prototype.js, das ehemals populärste JS-Bibliothek für Ajax Funktionalität Am Ende eigene Anwendung vorstellen, die wir auf Basis Ajax und Prototype.js entwickelt haben Aussprache Ajax deutsch englisch, nicht immer konsistent Test 11:36 F6 11:46 F12 12:00 http://t3n.de/news/jquery-javascript-nutzungszahlen-270720/

Motivation (Relevanz von Ajax sollte jedem bekannt sein. Man braucht sich nur das Blackboard ansehen, wie viele Stellenanzeigen dort von Webanwendungen handeln) Um besser über Motivation von Ajax reden zu können, haben wir uns Anwendungsbeispiel ausgedacht Hineinversetzen in Bob, Sekretär, bekommt von Chef jeden Tag Belege auf den Tisch mit Ausgaben Anwendungsfall: Am Monatsende Belege einpflegen, mehrere Einträge schnell hintereinander einfügen Firma von Bob verwendet seit kurzem Google Docs, und Bob ist sehr zufrieden damit, hat gar keinen Unterschied zu Excel bemerkt, als er umgestiegen ist. Wir werden heute sehen: 1) Warum ist Firma von Bob auf eine Webanwendung umgestiegen 2) wie hat Ajax dazu beigetragen Unternehmen ist schlau, nutzt kostenloses Google Docs und Bob ist damit sehr zufrieden Das war nicht immer so: Früher hat Bob mit Excel gearbeitet. Werden sehen anhand von diesem Beispiel, warum Webanwendungen heute so nah an Desktop-Anwendungen sind wie nie zuvor, und welchen Anteil Ajax daran hatte. Anwendungsfall: Tabellenkalkulation, mehrere Einträge nacheinander hinzufügen Inhalt soll: - Warum ist das Thema interessant/wichtig? - Wenn möglich anhand eines Beispiels Ideen: Hygenefaktoren bei Nutzung von Ajax = welche bei positiver Ausprägung die Entstehung von Unzufriedenheit verhindern, aber nicht zur Zufriedenheit beitragen bzw. diese erzeugen. „Ich bin voll auf Ajax“, aber leider mit Nebenwirkungen;-( TODO: Blackboard Analyse (wie viele % Stellenauschreibungen sind über Webanwendungen?) AJAX und Webentwicklung mit Prototype, 09.12.2011

Gliederung Einführung – Motivation Ajax Ajax Funktionsweise Nebenwirkungen Prototype Motivation Elementare Funktionen Bewertung Rent a bike Zusammenfassung und Ausblick - Was kann ich erwarten? - Welche inhaltlichen Punkte werden angesprochen - Wiederholt einblenden Text Einführung zu Ajax, was ist Motivation dahinter, welche Ziele werden damit verfolgt Funktionsweise Ajax (Technologien hinter Ajax) aber auch Nebenwirkungen (typische Fallstricke, Grenzen) von Ajax Prototype: Rent a bike: Gehen auf Erfahrungen ein Ausblick: Was wir noch alles gerne besprochen hätten, was den Rahmen sprengt Später: Prototype in erster Linie als Ajax-Implementierung, obwohl es noch mehr kann AJAX und Webentwicklung mit Prototype, 09.12.2011

1. Einführung Erwartete Kenntnisse HTTP, HTML, CSS, XML JavaScript & DOM JSON Fragen dennoch erlaubt und erwünscht! Fragen generell erlaubt und erwünscht! Auch zu diesen Themen, weil Vorträge ausgefallen sind AJAX und Webentwicklung mit Prototype, 09.12.2011

1. Einführung – Motivation Ajax 1991 – Geburt WWW HTTP, HTML und URLs Ziel: Informationsaustausch (Webseiten) Dann: Web-Anwendungen Ausführung auf Webserver Browser = User Interface Großer Durchbruch im vergangenen Jahrzehnt (soziale Netzwerke, Collaboration, Online Text/Tabellenbearbeitung,…) Jetzt: Motivation und Ziele von Ajax Ausholen: Jahr 1991, Veröffentlichung WWW durch Tim-Berners Lee WWW /= Internet!... Ursprüngliches Ziel: Forschungsergebnisse einfach austauschen = Informationsaustausch = Webseiten Relativ schnell klar, dass mit Formularen und Logik/Datenbank auf Server Anwendungen möglich sind. Neue Gattung Unglaublicher Durchbruch und Verbreitung. Warum? 1991 WWW = HTTP, HTML & URLs Achtung: Nicht Internet. Internet ist älter, und nur darunterliegendes Netz Überleitung: Wissen alle, das großer Durchbruch der Webanwendungen, aber warum? Laut Vorlage: Wo ist das Thema einzuordnen? AJAX und Webentwicklung mit Prototype, 09.12.2011

1. Einführung – Motivation Ajax Vorteile Webanwendungen (Anbietersicht) Plattformunabhängig, nur Browser Leichtere Aktualisierung Zentrale Datenhaltung (Nutzungsstatistik, etc.) Vorteile Webanwendungen (Nutzersicht) Aktualität Plattformunabhängig Auf allen Geräten nutzbar (z.B. Urlaub, bei Freunden) Keine Installation = Sofortige Nutzung Thin-Client = Rechenpower des Servers nutzen Frage: Welche Vorteile haben Webanwendungen ggü Desktop-Anwendungen? Aktualität: Hat neuste Funktionalität, Fehler werden vom Anbieter schneller korrigiert Plattformunabhängigkeit … Keine Installation = Geringere Nutzungshürde, Webanwendungen können sich schneller verbreiten Thin Client: Wolfram Alpha Sofortige Nutzung => Ermöglicht schnelle Verbreitung, z.B. durch Empfehlung. Geringe Nutzungshürde. Thin-Client => Weil Anwendung läuft ja auf Webserver… AJAX und Webentwicklung mit Prototype, 09.12.2011

1. Einführung – Motivation Ajax Nachteile „traditioneller “ Webanwendungen für Nutzer Neu-Laden nach Aktion Temporär nicht bedienbar, schlechte Usability Latenz durch Internetübertragung Schlechtere Performance als nativ  Große Diskrepanz zwischen Desktop-Anwendungen und Web-Anwendungen Warum ist Bobs Firma nicht schon früher zur Webanwendung gewechselt? Webanwendungen der 1ten Stunde, vor Ajax, hatten Nachteile Wichtigster Nachteil: Nach jeder Aktion wird die ganze Seite neu geladen. Für Bob würde das heißen, er würde einen Beleg abtippen, Enter klicken, warten. Temporär nicht bedienbar Vorstellung Excel: Jedesmal wenn Eintrag hinzugefügt wird, wird Datei geschlossen und wieder neu geöffnet. Verrückt! Aber das war damals die Wahrheit von Webanwendungen. Zusammenfassend kann man sagen: … AJAX und Webentwicklung mit Prototype, 09.12.2011

1. Einführung – Motivation Ajax Neue Technologien 1996: JavaScript & DOM & CSS Webanw. jetzt auf Webserver UND Browser Dynamisches Verändern der Seite 1999: XmlHttpRequest API Asynchrone http-Abfragen im Hintergrund mit JavaScript 2005: Kombination = Ajax = „Asynchronous JavaScript with XML“ Daher wurden neue Technologien eingeführt! JavaScript Webanwendung jetzt auch im Browser ausgeführt Jetzt möglich, dynamisch Seiteninhalte zu verändern, ohne Seite neu zu laden XMLHttpRequest Ajax Begriff ist erstmals 2005 gefallen, Ajax hat es davor aber defakto bereits gegeben Übergang: Schauen wir uns an, ob und wie Ajax die Probleme von traditionellen Webanwendungen (vorhin identifiziert) löst… Dezember 1996: CSS Level 1 Recommendation AJAX und Webentwicklung mit Prototype, 09.12.2011

1. Einführung – Motivation Ajax Webanwendungen mit Ajax Neu-Laden nach Aktion nebenläufig & asynchron im Hintergrund Temporär nicht bedienbar, schlechte Usability nur relevante Teile aktualisiert (Latenz durch Internetübertragung) (Schlechtere Performance als nativ) Latenz: 1) schnelle Anschlüsse (DSL) 2) Beispiel Excel aufgreifen: Jetzt möglich, mehrere Zeilen hinzuzufügen, ohne warten zu müssen bis bei Server angekommen. Performance: 1) Browser sehr optimiert 2) Chrome Native Client, WebGL, Adobe AIR, etc. AJAX und Webentwicklung mit Prototype, 09.12.2011

1. Einführung – Motivation Ajax Zusammenfassung Ajax = Kombination alter Technologien Ziel: Diskrepanz zwischen Web-Anwendungen und Desktop-Anwendungen minimieren (insb. Usability) Vorteile kommen voll zu Geltung  großer Durchbruch der Webanwendungen Ajax = Konzept, auf das wir gleich noch näher eingehen, das bestehende Technologien kombiniert Diskrepanz jetzt wesentlich geringer Vorteile von Webanwendungen kommen jetzt voll zur Geltung. schnellste Verbreitung einer Technologie in der gesamten Menschheitsgeschichte ungeahntes Wachstum/Popularität, schnellste Verbreitung einer Technologie in der gesamten Menschheitsgeschichte. Ideen: „Enabling Technology“, allerdings nur in Zusammenspiel mit dem Internet Fast wie Desktop Anwendungen (Native Code) AJAX und Webentwicklung mit Prototype, 09.12.2011

Gliederung Einführung – Motivation Ajax Ajax Funktionsweise Nebenwirkungen Prototype Motivation Elementare Funktionen Bewertung Rent a bike Zusammenfassung und Ausblick Bisher: Warum Ajax wichtig ist, welche Probleme es löst Jetzt: Detail, wie es Probleme löst AJAX und Webentwicklung mit Prototype, 09.12.2011

Ajax - Funktionsweise Asynchronous JavaScript with XML Jesse James Garrett, A new approach to webapplications, 2005: Asynchrone Übertragung JavaScript clientseitig: Reaktion auf Nutzer & Nachladen von Inhalten (Datenübertragung in XML) … 1. 2. 3. Trennung von Logik und Oberfläche AJAX und Webentwicklung mit Prototype, 09.12.2011

Ajax - Funktionsweise Abstrakte Darstellung, Stand 2005, Kern immer noch aktuell Erklären: Links, rechts. Unterschied Entscheidende Stelle (einziger Unterschied) ist bei „JavaScript call“, weil hier wird Anfrage jetzt nicht direkt an Server geschickt (Neuladen der Seite), sondern im Hintergrund, nebenläufig, behandelt. Die Webanwendung läuft also zum Teil lokal. AJAX und Webentwicklung mit Prototype, 09.12.2011

Ajax - Funktionsweise Jetzt vergleichen wir das aus zeitlicher Sicht und schauen uns zuerst klassische Webanwendung an Für Bob ist das verlorene Zeit, er könnte kontinuierlich tippen Beispiel Online-Tabelle. Nach jedem Einfügen warten… AJAX und Webentwicklung mit Prototype, 09.12.2011

Ajax - Funktionsweise User Activity jetzt durchgezogen, Bob kann ununterbrochen tippen Online Tabellenkalkulation: Nicht warten, direkt weiterarbeiten… Problem 1: Allerdings nicht Normallfall! Meist Eingabeformular, dann muss man warten. Problem 2 (Publikum): Anzeige schon vor der Bestätigung. Nutzer denkt es wäre schon eingetragen, ist aber evtl. nicht  Komplex für Oberflächenentwickler AJAX und Webentwicklung mit Prototype, 09.12.2011

XML, JSON, BJSON oder Custom Ajax - Funktionsweise Browser XmlHttpRequest API API für Datenaustausch über HTTP(s) Für Microsoft Outlook Web Access 1999 in IE5.0 eingeführt Standardisierung W3C in Arbeit Wrapper nutzen (Prototype.js) User Interface/ DOM JavaScript XMLHttpRequest XML, JSON, BJSON oder Custom Im Detail die einzelnen Komponenten an, aus denen Ajax heute besteht JavaScript und DOM erklären wir nicht weiter XMLHttpRequest: Name irreführend. API für senden von HTTP(s) Anfragen aus JavaScript Erfunden Microsoft: Wollte Outlook als Webanwendung anbieten Haben gesehen, dass Ajax Name irreführend ist, XMLHttpRequest ebenso! Beispiel: var client = new XMLHttpRequest(); client.onreadystatechange = handler; client.open("GET", „admin/getbikes"); client.send(); http(s) transport Server AJAX und Webentwicklung mit Prototype, 09.12.2011

Gliederung Einführung – Motivation Ajax Ajax Funktionsweise Nebenwirkungen Prototype Motivation Elementare Funktionen Bewertung Rent a bike Zusammenfassung und Ausblick AJAX und Webentwicklung mit Prototype, 09.12.2011

Ajax - Nebenwirkungen Zurück Button Lesezeichen Polling Problem / Server Push Suchmaschinen und Barrierefreiheit Hohe Anforderungen an Client Transparenz (ggü. Nutzer) AJAX und Webentwicklung mit Prototype, 09.12.2011

Gliederung Einführung – Motivation Ajax Ajax Funktionsweise Nebenwirkungen Prototype Motivation Elementare Funktionen Bewertung Rent a bike Zusammenfassung und Ausblick AJAX und Webentwicklung mit Prototype, 09.12.2011

Prototype Einführung und Motivation Prototype wurde im Zuge von Ruby on Rails entwickelt und als eigenständiges clientseitiges JavaScript „Framework“ veröffentlich Hauptaufgaben: Convenience Funktionen wie die Selektoren für die DOM- Elemente Browserunabhängig entwickeln von Ajax, Events und mehr. AJAX und Webentwicklung mit Prototype, 09.12.2011

Prototype und die Convenience Funktionen HTML: <html> … <body> <div id=„foo“ class=„clsFoo“>bar</div> <div class=„clsFoo“>bar</div> </body> </html> Prototype: $(„foo“).innerHTML //gibt „bar“ zurück $$(„.clsFoo“) //gibt die beiden DOM- // Elemente zurück AJAX und Webentwicklung mit Prototype, 09.12.2011

Prototype und Ajax new Ajax.Request('/your/url', { onSuccess: function(response) { var obj = response.responseText.evalJSON(); alert(“Der gesendete Name lautet” + obj.name); } onFailure: function(response) { alert(“Verbindungs Probleme.”); }); AJAX und Webentwicklung mit Prototype, 09.12.2011

Gliederung Einführung – Motivation Ajax Ajax Funktionsweise Nebenwirkungen Prototype Motivation Elementare Funktionen Bewertung Rent a bike Zusammenfassung und Ausblick AJAX und Webentwicklung mit Prototype, 09.12.2011

Prototype Bewertung: Verbreitungsgrad Der Verbreitungsgrad ist nicht unbedingt ausschlaggeben für ein gute oder schlechte Bibliothek aber ob es in der Zukunft noch getragen wird von einer Community. Zeigt aber auch die Relevanz AJAX und Webentwicklung mit Prototype, 09.12.2011

Prototype Bewertung: Effizienz Benchmark mit Slickspeed (http://mootools.net/slickspeed/). Dabei werden die Selektoren auf Zuverlässigkeit und Zugriffgeschwindigkeit geprüft. selectors jQuery 1.5.1 Prototype 1.7 … final time (less is better) 40   40 Die Aussagekräftigkeit fehlt bei der Abbildung. Es muss mündlich erwähnt werden, dass es bei den Selektoren zu jQuery und Prototype keine unterschiede gibt. AJAX und Webentwicklung mit Prototype, 09.12.2011

Prototype Bewertung: Überblick jQuery 1.5.1 Prototype 1.7 Dokumentation ++ + Effizienz von den Selektoren Verbreitungsgrad - - Einarbeitungsaufwand Funktionsumfang Erweiterungen - Größe der Basis Bibliothek 92 KByte (minified), 242 KByte (uncompressed) 160 Kbyte (uncompressed) Skala geht von ++, +, 0, -, bis - - AJAX und Webentwicklung mit Prototype, 09.12.2011

Gliederung Einführung – Motivation Ajax Ajax Funktionsweise Nebenwirkungen Prototype Motivation Elementare Funktionen Bewertung Rent a bike Zusammenfassung und Ausblick AJAX und Webentwicklung mit Prototype, 09.12.2011

Rent a bike Wir zeigen jetzt wie man sich bei unser Applikation registriert, ein Fahrrad leiht und zurückgibt und als Admin die Fahrräder anlegt. Dabei werden wir immer den Ajax-Counter auf unserer Seite im Auge behalten. Hier geht es zu unser Applikation: http://localhost:3000/ AJAX und Webentwicklung mit Prototype, 09.12.2011

Gliederung Einführung – Motivation Ajax Ajax Funktionsweise Nebenwirkungen Prototype Motivation Elementare Funktionen Bewertung Rent a bike Zusammenfassung und Ausblick AJAX und Webentwicklung mit Prototype, 09.12.2011

Zusammenfassung Ajax ist eine Schlüsseltechnologie für Webanwendungen geworden und nicht mehr weg zudenken. Bedeutung von Prototype nimmt stark ab löst alle grundlegende Probleme mit einer angemessener Effizienz aber die Verbreitung ist nicht groß und die Erweiterungen sind nicht umfänglich. -Wichtigste Erkenntisse prägnant zusammenfassen Gedächtnisstütze Kurz - Was konnte heute nicht vorgestellt werden? - Was gibt es in diesem Rahmen noch? These: Die Entwicklung (Anwendungen->Webanwendungen) ist bei Mobiltelefonen gerade erst am entstehen. Etwas rückständig, dass wir noch apps haben! Nur teilweise nötig (siehe ARM Native App framework für Android) AJAX und Webentwicklung mit Prototype, 09.12.2011

Ausblick Wie werden Nebenwirkungen von Web Application Frameworks gelöst? Neue Technologien / Trends Websockets Web-Anwendungen optimiert für Mobile Native Code AJAX und Webentwicklung mit Prototype, 09.12.2011

Diskussion Mobile: Gleiche Entwicklung von nativen Apps zu Webanwendung? Was haltet ihr von dem Trend, Apps durch mobile-optimierte Webanwendungen zu ersetzen (z.B. jQuery Mobile)? Simons Idee: Warum wird Ajax sehr oft als Synonym für Web2.0 genutzt? Gilt die Aussage: Von Users Freund zum Admins Feind? Wann ist Ajax ein muss und wo ein „no go“? André Websockets: Polling Problem, ist Kommunikation mit Websockets noch Ajax? Nativer Code im Browser: Was haltet ihr davon? Mobile: Gleiche Entwicklung von nativen Apps zu Webanwendung: Was haltet ihr von dem Trend, Apps durch mobile-optimierte Webanwendungen zu ersetzen (z.B. jQuery Mobile)? Wann kann Ajax überhaupt Vorteil bringen(Parallelisierung der Eingaben des Nutzers)? Wenn Abhängigkeiten zwischen Eingaben, dann hilft Ajax nicht viel, weil dann Wartesymbol… Ajax vs. web2.0 (und web3.0) Woher kommt Dominanz der Webanwendungen noch? Trend AJAX und Webentwicklung mit Prototype, 09.12.2011

BACKUP- FOLIEN Simons Idee: Warum wird Ajax sehr oft als Synonym für Web2.0 genutzt? Gilt die Aussage: Von Users Freund zum Admins Feind? Wann ist Ajax ein muss und wo ein „no go“? André Websockets: Polling Problem, ist Kommunikation mit Websockets noch Ajax? Nativer Code im Browser: Was haltet ihr davon? Mobile: Gleiche Entwicklung von nativen Apps zu Webanwendung: Was haltet ihr von dem Trend, Apps durch mobile-optimierte Webanwendungen zu ersetzen (z.B. jQuery Mobile)? Wann kann Ajax überhaupt Vorteil bringen(Parallelisierung der Eingaben des Nutzers)? Wenn Abhängigkeiten zwischen Eingaben, dann hilft Ajax nicht viel, weil dann Wartesymbol… Ajax vs. web2.0 (und web3.0) Woher kommt Dominanz der Webanwendungen noch? Trend AJAX und Webentwicklung mit Prototype, 09.12.2011

MVC mit Ajax View Browser Window (DOM, HTML) Controller JavaScript Event Handlers (onload, onclick,…) Model Proxy JavaScript Stub Objects Client (Browser) Server Model Http Ajax Requests Ziel MVC: spätere Änderung oder Erweiterung erleichtert und eine Wiederverwendbarkeit der einzelnen Komponenten ermöglicht. Z.B: Oberfläche auswechseln Zentrale Frage: Wo ist Geschäftslogik? Model: Darzustellende Daten (und Geschäftslogik). Änderungsmitteilung über PS. Model = Publisher View: Stellt Daten dar. Wird als Subscriber informiert über Änderungen. Eingaben des Nutzers werden von Controller verarbeitet Controller: Verwaltet und „steuert“ View, verarbeitet Eingaben, kommuniziert mit Model und gibt Antworten zurück Geschäftslogik: Im Controller oder Model (lässt MVC offen) AJAX und Webentwicklung mit Prototype, 09.12.2011

JSON object {} { members } members pair pair , members Pair string : value array [] [ elements ] elements value value , elements AJAX und Webentwicklung mit Prototype, 09.12.2011