Successfully reported this slideshow.

Google Cloud Endpoints - DevFest - Nantes 2012

1,701 views

Published on

Les slides de ma présentation sur Google Cloud Endpoints au DevFest de Nantes en Nov. 2012.
A la fin des slides, vous pouvez visualisez la vidéo de la conférence.

  • Be the first to comment

Google Cloud Endpoints - DevFest - Nantes 2012

  1. 1. Google Cloud EndpointsDévelopper un backend sur App Engine pour des applicationsAndroid, iOS et WebMaxime Gréau, Architecte Technique, Ministère des Finances
  2. 2. Pourquoi sommes nous là Utiliser Google App Engine en tant que backend pour de multiples clients Introduire Google Cloud Endpoints #devfestnantes
  3. 3. Donc vous souhaitez créer une application #devfestnantes
  4. 4. Donc vous souhaitez créer une application... car vous avez une super idée ! #devfestnantes
  5. 5. Donc vous souhaitez créer une application... vous voyez, lidée qui va vous rendre millionnaire #devfestnantes
  6. 6. Donc vous souhaitez créer une application... elle doit donc être disponible sur plusieurs plate-formes #devfestnantes
  7. 7. Donc vous souhaitez créer une application... elle doit également être capable de gérer des montées en charge #devfestnantes
  8. 8. Vous pensez larchitectureça ressemblerait à quelque chose dans ce genre #devfestnantes
  9. 9. Vous commencez à limplémenterVous choisissez votre stack open source #devfestnantes
  10. 10. Vous commencez à limplémenterVous décidez du fonctionnement de votre API #devfestnantes
  11. 11. Vous commencez à limplémenterVous décidez du fonctionnement de votre API #devfestnantes
  12. 12. Vous commencez à limplémenterVous commencer à développer vos applications clientes #devfestnantes
  13. 13. Et vous lancez votre application !La gestion des ressources, du load balancing... va devenir un travail à temps plein #devfestnantes
  14. 14. Que faisons nous VS Quest ce que nous voulions faire #devfestnantes
  15. 15. App EngineUn framework web et une plate-forme de déploiement Facile à coder/déployer Scalabilité simplifiée Administration triviale 1 mois dactivité sur App Engine 1,000,000 applications actives 2 Trillion dopérations dans le datastore #devfestnantes
  16. 16. Google App Engine: Principales caractéristiques Stockage Calcul ServicesDatastore, Cloud SQL, Frontends, Backends, Users, Mail, Images, Memcache Task Queues, Cron UrlFetch, MapReduce, TrafficSplitting, Search #devfestnantes
  17. 17. Utiliser App Engine en tant que Backend, et le reste ? #devfestnantes
  18. 18. Présentation de Google Cloud Endpoints Available for Trusted Testers #devfestnantes
  19. 19. Endpoints: Comment ça marcheEcrire son code Annoter les Générer les Développer lescôté backend méthodes de bibliothèques applications lAPI clientes clientes #devfestnantes
  20. 20. Endpoints: Comment ça marcheWrite your codeEcrire son Annoter les Générer les Développer lescôté backendbackend code méthodes de bibliothèques applications lAPI clientes clientes Java public class HotelEndpoint { public List<Hotel> searchHotel(String term) { // method logic here return hotelList; } } #devfestnantes
  21. 21. Endpoints: Comment ça marcheEcrire son code Annotate API Annoter les Générer les Développer lescôté backend methods de méthodes bibliothèques applications lAPI clientes clientes Java @Api(name = "bookingendpoint") public class HotelEndpoint { public List<Hotel> searchHotel(@Named("term") String term) { // method logic here return hotelList; } } #devfestnantes
  22. 22. Endpoints: Comment ça marcheEcrire son code Annoter les Generate client Générer les Développer lescôté backend méthodes de libraries bibliothèques applications lAPI clientes clientes localhost:home user$ ./endpoints.sh get-java-client-lib HotelEndpoint Java ========================================================== .. API configuration written to war/WEB-INF/bookingendpoint-v1.api API Discovery Document written to war/WEB-INF/bookingendpoint-v1-rest. discovery API client library written to war/WEB-INF/bookingendpoint-v1-java.zip #devfestnantes
  23. 23. Endpoints: Comment ça marcheEcrire son code Annoter les Générer les Write client apps Développer lescôté backend méthodes de bibliothèques applications lAPI clientes clientes import com.appspot.api.services.bookingendpoint.Bookingendpoint; Java Bookingendpoint service = new Bookingendpoint(transport, jsonFactory, null); List<Hotel> list = service.searchHotel(term).execute().getItems(); JS <script src="https://apis.google.com/js/client.js?onload=loadGapi"></script> gapi.client.load(bookingendpoint, v1, function() { gapi.client.bookingendpoint.hotels.search({term: term}).execute(function(resp) { console.log(resp); }); }, https://cloud-booking.appspot.com/_ah/api); #devfestnantes
  24. 24. Cloud Booking Application #devfestnantes
  25. 25. Google Cloud Endpoints pour "Cloud Booking" ● Filtre ● Recherche ● Authentification #devfestnantes
  26. 26. DémoCloud Booking Application- Web : https://cloud-booking-client.appspot.com/client-js/- Android : https://cloud-booking-client.appspot.com/client-android/booking-client-android.apk
  27. 27. Caractéristiques API Client OutilsPython ou Java backend Génération du code client App Engine Dev AppServerConfiguration basée sur des iOS (Objective C) Google Plugin for Eclipseannotations Android (Java) Discovery et APIs ExplorerOAuth2 support Browser (Javascript)GZip #devfestnantes
  28. 28. Google App Engine et Google Cloud Endpoints Scalabilité Flexibilité Simplicité #devfestnantes
  29. 29. Merci !Merci à Thomas Delhoménie pour lapplication AndroidThank you to Dan Holevoet for slides +Maxime Gréau @mgreau github.com/mgreau
  30. 30. Web AndroidQuestions? Code source: http://github.com/mgreau Formulaire dinscription en tant que testeur endpoints-trusted-tester.appspot.com
  31. 31. #devfestnantes

×