Stefan ScheidtSolution Architect<br />OPITZ CONSULTING GmbH<br />Spring-basierte Backends<br />für iOS-Applikationen<br />...
Wer bin ich?<br />Software-Entwickler und Architekt<br />Trainer und Coach<br />Sprecher und Autor<br />
Wer sind Sie?<br />
Apps für iOS-Geräte<br />
Apps fürs iOS-Geräte<br />browserbasiert<br />vs.<br />nativ<br />
Apps fürs iOS-Geräte<br />plattformspezifisch<br />vs.<br />„cross plattform“<br />
Backend für iOS Apps<br />Viele Apps benötigen ein Backend:<br />Mail<br />Kalender<br />Kontakte<br />Karten <br />Twitte...
Gängige Kommunikationsformen<br />Kommunikationsprotokolle:<br />HTTP(S), FTP<br />Payload:<br />HTML, XML, JSON<br />
Backends für iOS-Apps<br />Viele Möglichkeiten<br />für die Backend-Entwicklung:<br />Java (EE)<br />Groovy/Grails<br />Ru...
In unseremBeispiel…<br />+ Hibernate (ORM)<br />+ HSQLDB (rel. DB)<br />
Warum Spring?<br />
Warum Spring?<br />It‘stheworld‘s<br />mostpopular<br />javadevelopment<br />framework.<br />
Warum Spring?<br />Es ist wirklich ein sehr gutes Framework!<br />Es bietet viele Integrationsmöglichkeiten!<br />
Warum Spring?<br />...weil ich es kann...<br />
Die Beispiel-App: SampleNewsApp<br />
Entwicklung des Backends<br />Mit Spring Roo...<br />„Spring Roois a lightweightdevelopertoolthat<br />makesit fast and ea...
Entwicklung des Backend<br />Projekt anlegen<br />Persistenzframework auswählen<br />Fachklasse „NewsItem“ mit Attributen ...
Demo… (bitteDaumendrücken!)<br />
Entwicklung des Frontend<br />Mit Xcode<br />Als „Navigation BasedApplication“<br />Mit „Core Data forStorage“<br />
Entwicklung des Frontend<br />Projekt anlegen<br />Datenmodell inkl. Zugriffe anpassen<br />UI anpassen<br />TouchJSON erg...
Das Frontend… (noch mal Daumendrücken!)<br />
Bemerkenswertes – iOS-Entwicklung<br />
Bemerkenswertes – iOS-Entwicklung<br />Ein „geschlossenes“ System...<br />iOS SDK<br />Xcode<br />Mac OS zur Entwicklung<b...
Bemerkenswertes – iOS-Entwicklung<br />Objective C?<br />Header Files?<br />Memory Management?<br />
Bemerkenswertes – iOS-Entwicklung<br />TDD?<br />Automatisierter Build?<br />Continuous Integration?<br />
Die echten Herausforderungen<br />
Die echten Herausforderungen<br />Native Apps sind „anders“:<br />Screen real-estate<br />UI Design<br />Benutzerverhalten...
Die echten Herausforderungen<br />Native Apps sind „anders“:<br />„An appisinstalled on a device<br />and ownedbytheuser!<...
Die echten Herausforderungen<br />Native Apps sind „anders“:<br />
Die Konsequenz...<br />Native Apps benötigen<br />einen „dedizierten Endpoint“<br />
Nocheinmal: Warum Spring?<br />
Spring verbindet…<br />Spring REST Support<br />Spring Template<br />Spring Message DrivenPOJOs<br />Spring Integration<br...
Fazit<br />
Im Netz...<br />Beispielcode:<br />https://github.com/stefanscheidt/SampleNewsApp<br />Screencast der Demo:<br />http://ww...
Fragen und Antworten<br />
Ansprechpartner bei OPITZ CONSULTING<br />Stefan Scheidt<br />Solution Architect<br />OPITZ CONSULTING GmbHKirchstr. 6, 51...
Nächste SlideShare
Wird geladen in …5
×

Spring - Frühling fürs iPhone - Spring-basierte Backends für iOS-Applikationen - OPITZ CONSULTING - Stefan Scheidt

1.038 Aufrufe

Veröffentlicht am

Spring-basierte Backends für iOS-Applikationen: Stefan Scheidt, Solution Architect bei OPITZ CONSULTING, demonstriert die Entwicklung einer beispielhaften iPhone-App: der Sample News App. Diese Applikation zeigt News-Items an, die von einem Spring-Backend bereitgestellt werden. Das Spring-Backend wird mit Spring Roo entwickelt, einem Toolset zur Entwicklung Spring-basierter Applikationen. F Stefan Scheidt entwickelt das Frontend mit Xcode als „Navigation Based Application“, die Core Data für lokales Datenspeichern verwendet.

Veröffentlicht in: Technologie, News & Politik
0 Kommentare
1 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

Keine Downloads
Aufrufe
Aufrufe insgesamt
1.038
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
3
Aktionen
Geteilt
0
Downloads
0
Kommentare
0
Gefällt mir
1
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Spring - Frühling fürs iPhone - Spring-basierte Backends für iOS-Applikationen - OPITZ CONSULTING - Stefan Scheidt

  1. 1. Stefan ScheidtSolution Architect<br />OPITZ CONSULTING GmbH<br />Spring-basierte Backends<br />für iOS-Applikationen<br />Frühling für iPhone-Apps<br />
  2. 2. Wer bin ich?<br />Software-Entwickler und Architekt<br />Trainer und Coach<br />Sprecher und Autor<br />
  3. 3.
  4. 4. Wer sind Sie?<br />
  5. 5. Apps für iOS-Geräte<br />
  6. 6. Apps fürs iOS-Geräte<br />browserbasiert<br />vs.<br />nativ<br />
  7. 7. Apps fürs iOS-Geräte<br />plattformspezifisch<br />vs.<br />„cross plattform“<br />
  8. 8. Backend für iOS Apps<br />Viele Apps benötigen ein Backend:<br />Mail<br />Kalender<br />Kontakte<br />Karten <br />Twitter-Client<br />RSS-Reader<br />...<br />
  9. 9. Gängige Kommunikationsformen<br />Kommunikationsprotokolle:<br />HTTP(S), FTP<br />Payload:<br />HTML, XML, JSON<br />
  10. 10. Backends für iOS-Apps<br />Viele Möglichkeiten<br />für die Backend-Entwicklung:<br />Java (EE)<br />Groovy/Grails<br />Ruby (on Rails)<br />Microsoft .net<br />Python<br />...<br />
  11. 11. In unseremBeispiel…<br />+ Hibernate (ORM)<br />+ HSQLDB (rel. DB)<br />
  12. 12. Warum Spring?<br />
  13. 13. Warum Spring?<br />It‘stheworld‘s<br />mostpopular<br />javadevelopment<br />framework.<br />
  14. 14. Warum Spring?<br />Es ist wirklich ein sehr gutes Framework!<br />Es bietet viele Integrationsmöglichkeiten!<br />
  15. 15. Warum Spring?<br />...weil ich es kann...<br />
  16. 16. Die Beispiel-App: SampleNewsApp<br />
  17. 17. Entwicklung des Backends<br />Mit Spring Roo...<br />„Spring Roois a lightweightdevelopertoolthat<br />makesit fast and easy to deliver instant results.“<br />...und der SpringSource Tool Suite<br />„The bestdevelopmenttoolforenterprisejava“<br />
  18. 18. Entwicklung des Backend<br />Projekt anlegen<br />Persistenzframework auswählen<br />Fachklasse „NewsItem“ mit Attributen anlegen<br />Finder „ByItemNumberGreaterThan“ anlegen<br />Web Controller anlegen und anpassen<br />
  19. 19. Demo… (bitteDaumendrücken!)<br />
  20. 20. Entwicklung des Frontend<br />Mit Xcode<br />Als „Navigation BasedApplication“<br />Mit „Core Data forStorage“<br />
  21. 21. Entwicklung des Frontend<br />Projekt anlegen<br />Datenmodell inkl. Zugriffe anpassen<br />UI anpassen<br />TouchJSON ergänzen<br />News Items per HTTP GET laden<br />
  22. 22. Das Frontend… (noch mal Daumendrücken!)<br />
  23. 23. Bemerkenswertes – iOS-Entwicklung<br />
  24. 24. Bemerkenswertes – iOS-Entwicklung<br />Ein „geschlossenes“ System...<br />iOS SDK<br />Xcode<br />Mac OS zur Entwicklung<br />App Store<br />
  25. 25. Bemerkenswertes – iOS-Entwicklung<br />Objective C?<br />Header Files?<br />Memory Management?<br />
  26. 26. Bemerkenswertes – iOS-Entwicklung<br />TDD?<br />Automatisierter Build?<br />Continuous Integration?<br />
  27. 27. Die echten Herausforderungen<br />
  28. 28. Die echten Herausforderungen<br />Native Apps sind „anders“:<br />Screen real-estate<br />UI Design<br />Benutzerverhalten<br />
  29. 29. Die echten Herausforderungen<br />Native Apps sind „anders“:<br />„An appisinstalled on a device<br />and ownedbytheuser!<br />Any update/modification<br />istriggeredbytheuser<br />and requiresaffirmation.“<br />André Neubauer<br />„Mobile ApplicationDevelopment in an Enterprise Context“<br />
  30. 30. Die echten Herausforderungen<br />Native Apps sind „anders“:<br />
  31. 31. Die Konsequenz...<br />Native Apps benötigen<br />einen „dedizierten Endpoint“<br />
  32. 32. Nocheinmal: Warum Spring?<br />
  33. 33. Spring verbindet…<br />Spring REST Support<br />Spring Template<br />Spring Message DrivenPOJOs<br />Spring Integration<br />Spring Batch<br />...<br />
  34. 34. Fazit<br />
  35. 35. Im Netz...<br />Beispielcode:<br />https://github.com/stefanscheidt/SampleNewsApp<br />Screencast der Demo:<br />http://www.youtube.com/watch?v=Qel-T-NegBk<br />http://www.youtube.com/watch?v=hxkrlU6sBq4<br />Twitter:<br />@beezlebug<br />
  36. 36. Fragen und Antworten<br />
  37. 37. Ansprechpartner bei OPITZ CONSULTING<br />Stefan Scheidt<br />Solution Architect<br />OPITZ CONSULTING GmbHKirchstr. 6, 51647 GummersbachTel. +49 (2261) 6001 - 0stefan.scheidt@opitz-consulting.com<br />

×