Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
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.138 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
  • Als Erste(r) kommentieren

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 />

×