SlideShare uma empresa Scribd logo
1 de 39
Baixar para ler offline
Mi Primera Aplicación
utilizando el Cloud de Google

    Google App Engine

            Niger Arce
     Equipo de Tecnologías Google
             USMP Virtual
              @narce90
Antes de empezar...
 ●   Eclipse JEE http://www.eclipse.org/downloads/
 ●   JDK (Java Development Kit) http://goo.gl/8zusM
 ●   App Engine Plugin para Eclipse http://dl.google.com/eclipse/plugin/4.2
 ●   App Engine SDK
 ●   Cuenta Google
 ●   Paciencia
 ●   Una Computadora =)
     ...y un Celular...



Referencia: https://developers.google.
   com/appengine/docs/java/gettingstarted/installing
...y una cosa más

Es importante familiarizarse con la documentación:




  https://developers.google.com/appengine/docs/
¿Qué es Cloud Computing?
¿Cloud? ¿Cloud Computing?

               Se denomina «Cloud» al conjunto
               de servidores que se encuentra en
               aquel mundo llamado internet.


               «Cloud Computing» es un
               paradigma que permite ofrecer
               servicios de computación a través
               de internet.
                                   Fuente: Wikipedia
¿Cloud? ¿Cloud Computing?
Google App Engine
¿Qué es?
¿Qué es?

           Google App Engine (GAE)
           es una plataforma de cloud
           computing para el desarrollo
           y hosteo de aplicaciones web
           en datacenters administrados
           por Google.
¿Qué me ofrece?

           ●   Entorno de ejecución para Java, Python y Go.
           ●   Servicios web, con soporte a las tecnologías
               web más comunes.
           ●   Almacenamiento persistente con queries,
               ordenamiento y transacciones.
           ●   Escalamiento automático y balanceo de
               carga.
           ●   APIs para la autenticación de usuarios y
               envío de correo a través de Google Accounts.
           ●   Un completo entorno de desarrollo que nos
               permite simular Google App Engine de forma
               local.
           ●   …y otras características más.
Instalación
Antes de empezar… ¬¬
Nos registramos en GAE
     http://appengine.google.com/
Nos registramos en GAE
     http://appengine.google.com/
Nos registramos en GAE
     http://appengine.google.com/
¿Problemas con el SMS?




https://appengine.google.com/waitlist/sms_issues
Vamos a la acción!!
Creando mi primera aplicación

● Pulsamos el botón
● Escogemos la opción
  «New Web Application Project»
Creando mi primera aplicación
● Le ponemos un nombre
  a nuestro proyecto.
● Declaramos el paquete
  del proyecto.
● Desactivamos el
  checkbox
«Use Google Web Toolkit»
● Pulsamos «Finish»
OK! Y ahora?

…lo vamos a ejecutar
         …WHAT? Tan pronto?
No pasa nada!
…tranquilidad
hermano!

Entremos a:
http://localhost:8888/

…hazle click a
«Mi_Primer_App»
…y ya tenemos un «Hello, world»
Veamos que hay detrás de la magia
Veamos que hay detrás de la magia
web.xml
● Empleado para mapear URLs de los servlets
  que empleará la aplicación
appengine-web.xml
Un archivo de configuración adicional.
Incluye:
● ID registrado de la aplicación.
● El número de versión de la aplicación.
● Las listas de archivos estáticos.
Bueno… bueno… hagamos
algo mejor :D
Agregando links de login/logout

UserService userService = UserServiceFactory.getUserService();
User user = userService.getCurrentUser();
if (user != null) {
%>
<p>Hola, <%= user.getNickname() %>!
<p> <a href="<%= userService.createLogoutURL(request.getRequestURI()) %>">Salir </a></p>
<%
} else {
%>
<p><a href="<%= userService.createLoginURL(request.getRequestURI()) %>">Ingresar</a</p>

...
....
Sobre DataStore
●   Hay que tener en cuenta lo siguiente, cuando trabajamos
    con el DataStore:
●   No es una base de datos relacional
●   No existe un programa para crear tablas
●   No se necesita crear tablas. Al persistir una entidad se
    crean registros de entidades con un tipo propio y con los
    atributos establecidos para dicha entidad
●   Alternativamente se puede interactuar a través de JDO y
    JPA.
¿Qué es
   un
Entidad?
●   Es una representación en forma de objeto de una fila del
    DataStore.
●   Cada Entidad tiene propiedades(Ejm: Entidad Alumno,
    tiene propiedades ‘nombre’, ‘apellido’, ‘fecha de
    nacimiento’,etc…)
●   Las propiedades tienen un tipo de Dato, ya sea String,
    Entero, Date, etc… (Google App Engine tipos especiales
    como PhoneNumber, Email, etc)
●   Cada Entidad tiene un Key, el cual es un identificador
    único. Este se puede autogenerar o asignar como String
    o valor numérico.
●   Cata entidad tiene un tipo. Por ejemplo, tipos de
    entidades serían : ‘Persona’, ´País’, ‘Recibo’, ‘Orden de
    Compra’.
Deploy...
¿Y la nube?
Para subir la aplicación a la nube solo
necesitamos hacer unos cuantos pasos:
●   Loggearnos desde Eclipse a AppEngine.
●   Damos click en Sign in to Google en la parte
    inferior derecha de Eclipse
¿Y la nube?
●   Para subir la aplicación a la nube solo
    necesitamos seguir dos pasos:
    ●   Hacer click en Deploy to App Engine…
●   Aparecerá la pantalla de abajo y luego
    seleccionamos ‘App Engine project settings…’
    Para configurar el nombre y versión de
    nuestra aplicación en la nube.
O también…

Utilizando el archivo de configuración appengine-
web.xml, podemos ver las siguientes etiquetas:

  <application>miaplicacion</application>
  <version>1</version>
Creando la aplicación
No podremos seguir subiendo la aplicación sin antes
haber creado una en nuestra cuenta de App Engine.
Entramos a http://appengine.google.com nos
logueamos y seleccionamos ‘Create Aplication’. Nos
aparecerá lo siguiente:
¡ Y Listo !
●   Regresamos a Eclipse y en la ventana de abajo
    colocamos el id de nuestra aplicación ingresado en el
    paso anterior; además ingresaremos la versión de la
    aplicación que para este caso es la primera ‘1’.
    Aceptamos los datos y seleccionamos Deploy.
¿Preguntas?
http://gplus.to/narce
ng.arce90@gmail.com
@narce90

Mais conteúdo relacionado

Mais procurados (14)

Como crear una aplicación para facebook
Como crear una aplicación para facebookComo crear una aplicación para facebook
Como crear una aplicación para facebook
 
Los navegadores 2
Los navegadores 2Los navegadores 2
Los navegadores 2
 
Trabajo de power point luis
Trabajo de power point luisTrabajo de power point luis
Trabajo de power point luis
 
Como insertar una_imagen_en_eclipse
Como insertar una_imagen_en_eclipseComo insertar una_imagen_en_eclipse
Como insertar una_imagen_en_eclipse
 
Blogg
BloggBlogg
Blogg
 
Presentacion de la Aplicacion frases motivadoras GLD
Presentacion de la Aplicacion frases motivadoras GLDPresentacion de la Aplicacion frases motivadoras GLD
Presentacion de la Aplicacion frases motivadoras GLD
 
Blogger
BloggerBlogger
Blogger
 
Blogger
BloggerBlogger
Blogger
 
Crear una aplicación android
Crear una aplicación androidCrear una aplicación android
Crear una aplicación android
 
Aplicación android mediante goolge
Aplicación android mediante goolgeAplicación android mediante goolge
Aplicación android mediante goolge
 
Mi app-asp-net-mvc2
Mi app-asp-net-mvc2Mi app-asp-net-mvc2
Mi app-asp-net-mvc2
 
Alfredo
AlfredoAlfredo
Alfredo
 
Crear una aplicacion android
Crear una aplicacion androidCrear una aplicacion android
Crear una aplicacion android
 
imgecl
imgeclimgecl
imgecl
 

Destaque

Performance im Fokus
Performance im FokusPerformance im Fokus
Performance im FokusInxmail GmbH
 
Open Source BPM - iteratec Architekturtag
Open Source BPM - iteratec ArchitekturtagOpen Source BPM - iteratec Architekturtag
Open Source BPM - iteratec Architekturtagcamunda services GmbH
 
Tecnicas SEO
Tecnicas SEOTecnicas SEO
Tecnicas SEObluekiu
 
produção de games com tecnologia livre ou proprietária, Qual usar?
produção de games com tecnologia livre ou proprietária, Qual usar?produção de games com tecnologia livre ou proprietária, Qual usar?
produção de games com tecnologia livre ou proprietária, Qual usar?Renan Nespolo
 
Linkbaiting - SEMSEO 2011
Linkbaiting - SEMSEO 2011Linkbaiting - SEMSEO 2011
Linkbaiting - SEMSEO 2011get on top gmbh
 
Mehr Wert für Gesellschaft und Unternehmen - Ratgeber für wirkungsvolle Unter...
Mehr Wert für Gesellschaft und Unternehmen - Ratgeber für wirkungsvolle Unter...Mehr Wert für Gesellschaft und Unternehmen - Ratgeber für wirkungsvolle Unter...
Mehr Wert für Gesellschaft und Unternehmen - Ratgeber für wirkungsvolle Unter...PHINEO gemeinnützige AG
 
Presentation SEO/SEM
Presentation SEO/SEMPresentation SEO/SEM
Presentation SEO/SEMHicham SBINI
 
Adforallprsentation 100914100808 Phpapp02
Adforallprsentation 100914100808 Phpapp02Adforallprsentation 100914100808 Phpapp02
Adforallprsentation 100914100808 Phpapp02fabrice_TALAZAC
 
Cloud Computing - Java no Google App Engine
Cloud Computing - Java no Google App EngineCloud Computing - Java no Google App Engine
Cloud Computing - Java no Google App EngineFrederico Maia Arantes
 
Social Media für Unternehmen und Institutionen
Social Media für Unternehmen und InstitutionenSocial Media für Unternehmen und Institutionen
Social Media für Unternehmen und InstitutionenChristian Moeller
 
Google app engine para lean startups: the good, the bad and the ugly
Google app engine para lean startups: the good, the bad and the uglyGoogle app engine para lean startups: the good, the bad and the ugly
Google app engine para lean startups: the good, the bad and the uglyPET Computação
 
Digital Training (SEO: search engine optimization)
Digital Training (SEO: search engine optimization)Digital Training (SEO: search engine optimization)
Digital Training (SEO: search engine optimization)Carlos De La Ossa
 
Introducción al desarrollo de videojuegos 2D con Wave Engine
Introducción al desarrollo de videojuegos 2D con Wave EngineIntroducción al desarrollo de videojuegos 2D con Wave Engine
Introducción al desarrollo de videojuegos 2D con Wave EngineEduard Tomàs
 
TDD com Python e App Engine
TDD com Python e App EngineTDD com Python e App Engine
TDD com Python e App EngineRicardo Bánffy
 
Werksverzeichnis Hans Martin 1916
Werksverzeichnis Hans Martin 1916Werksverzeichnis Hans Martin 1916
Werksverzeichnis Hans Martin 1916Hugo E Martin
 

Destaque (20)

Performance im Fokus
Performance im FokusPerformance im Fokus
Performance im Fokus
 
Open Source BPM - iteratec Architekturtag
Open Source BPM - iteratec ArchitekturtagOpen Source BPM - iteratec Architekturtag
Open Source BPM - iteratec Architekturtag
 
Tecnicas SEO
Tecnicas SEOTecnicas SEO
Tecnicas SEO
 
SMM-SEO.SEM
SMM-SEO.SEMSMM-SEO.SEM
SMM-SEO.SEM
 
produção de games com tecnologia livre ou proprietária, Qual usar?
produção de games com tecnologia livre ou proprietária, Qual usar?produção de games com tecnologia livre ou proprietária, Qual usar?
produção de games com tecnologia livre ou proprietária, Qual usar?
 
eind presentatie
eind presentatieeind presentatie
eind presentatie
 
Linkbaiting - SEMSEO 2011
Linkbaiting - SEMSEO 2011Linkbaiting - SEMSEO 2011
Linkbaiting - SEMSEO 2011
 
Mehr Wert für Gesellschaft und Unternehmen - Ratgeber für wirkungsvolle Unter...
Mehr Wert für Gesellschaft und Unternehmen - Ratgeber für wirkungsvolle Unter...Mehr Wert für Gesellschaft und Unternehmen - Ratgeber für wirkungsvolle Unter...
Mehr Wert für Gesellschaft und Unternehmen - Ratgeber für wirkungsvolle Unter...
 
Presentation SEO/SEM
Presentation SEO/SEMPresentation SEO/SEM
Presentation SEO/SEM
 
Adforallprsentation 100914100808 Phpapp02
Adforallprsentation 100914100808 Phpapp02Adforallprsentation 100914100808 Phpapp02
Adforallprsentation 100914100808 Phpapp02
 
20100506 JAX BPMN 2.0 in der Praxis
20100506 JAX BPMN 2.0 in der Praxis20100506 JAX BPMN 2.0 in der Praxis
20100506 JAX BPMN 2.0 in der Praxis
 
Aula de Risoto
Aula de Risoto Aula de Risoto
Aula de Risoto
 
Cloud Computing - Java no Google App Engine
Cloud Computing - Java no Google App EngineCloud Computing - Java no Google App Engine
Cloud Computing - Java no Google App Engine
 
Social Media für Unternehmen und Institutionen
Social Media für Unternehmen und InstitutionenSocial Media für Unternehmen und Institutionen
Social Media für Unternehmen und Institutionen
 
Google app engine para lean startups: the good, the bad and the ugly
Google app engine para lean startups: the good, the bad and the uglyGoogle app engine para lean startups: the good, the bad and the ugly
Google app engine para lean startups: the good, the bad and the ugly
 
Digital Training (SEO: search engine optimization)
Digital Training (SEO: search engine optimization)Digital Training (SEO: search engine optimization)
Digital Training (SEO: search engine optimization)
 
Smart Industry
Smart IndustrySmart Industry
Smart Industry
 
Introducción al desarrollo de videojuegos 2D con Wave Engine
Introducción al desarrollo de videojuegos 2D con Wave EngineIntroducción al desarrollo de videojuegos 2D con Wave Engine
Introducción al desarrollo de videojuegos 2D con Wave Engine
 
TDD com Python e App Engine
TDD com Python e App EngineTDD com Python e App Engine
TDD com Python e App Engine
 
Werksverzeichnis Hans Martin 1916
Werksverzeichnis Hans Martin 1916Werksverzeichnis Hans Martin 1916
Werksverzeichnis Hans Martin 1916
 

Semelhante a Congreso visión 2012 - taller introducción app engine

Construyendo una app Android sobre la nube App Engine
Construyendo una app Android sobre la nube App EngineConstruyendo una app Android sobre la nube App Engine
Construyendo una app Android sobre la nube App EngineGDG Lima
 
"Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore""Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore"www.encamina.com
 
Guía para desplegar una aplicación Java en AppEngine de Google Cloud Platform...
Guía para desplegar una aplicación Java en AppEngine de Google Cloud Platform...Guía para desplegar una aplicación Java en AppEngine de Google Cloud Platform...
Guía para desplegar una aplicación Java en AppEngine de Google Cloud Platform...Omar Diaz Esquivel
 
Proyect Evenge. Event manager
Proyect Evenge. Event managerProyect Evenge. Event manager
Proyect Evenge. Event managerIvan Ortega
 
Appcircus Academy: Integración de Social Media en Android
Appcircus Academy: Integración de Social Media en AndroidAppcircus Academy: Integración de Social Media en Android
Appcircus Academy: Integración de Social Media en AndroidAlberto Ruibal
 
App engine
App engineApp engine
App engineThirdWay
 
Mi Primera Aplicacion en Google App Engine
Mi Primera Aplicacion en Google App EngineMi Primera Aplicacion en Google App Engine
Mi Primera Aplicacion en Google App Engineykro
 
Configuración y uso Google Drive en Android
Configuración y uso Google Drive en AndroidConfiguración y uso Google Drive en Android
Configuración y uso Google Drive en AndroidJosé López Pérez
 
Servicios en la nube, desafíos de la evolución arquitectónica
Servicios en la nube, desafíos de la evolución arquitectónicaServicios en la nube, desafíos de la evolución arquitectónica
Servicios en la nube, desafíos de la evolución arquitectónicaGeneXus
 
Android camp 2017 google cloud platform + firebase + android
Android camp 2017   google cloud platform + firebase + androidAndroid camp 2017   google cloud platform + firebase + android
Android camp 2017 google cloud platform + firebase + androidSergio Antonio Ochoa Martinez
 
Google cloud endpoints
Google cloud endpointsGoogle cloud endpoints
Google cloud endpointsGDG Lima
 
Usando Google Maps en tu Android App
Usando Google Maps en tu Android AppUsando Google Maps en tu Android App
Usando Google Maps en tu Android AppOscar Salguero
 

Semelhante a Congreso visión 2012 - taller introducción app engine (20)

Google App Engine1
Google App Engine1Google App Engine1
Google App Engine1
 
Construyendo una app Android sobre la nube App Engine
Construyendo una app Android sobre la nube App EngineConstruyendo una app Android sobre la nube App Engine
Construyendo una app Android sobre la nube App Engine
 
"Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore""Los Imprescindibles de .NetCore"
"Los Imprescindibles de .NetCore"
 
Curso Cloud Computing, Parte 2: Google App Engine
Curso Cloud Computing, Parte 2: Google App EngineCurso Cloud Computing, Parte 2: Google App Engine
Curso Cloud Computing, Parte 2: Google App Engine
 
Guía para desplegar una aplicación Java en AppEngine de Google Cloud Platform...
Guía para desplegar una aplicación Java en AppEngine de Google Cloud Platform...Guía para desplegar una aplicación Java en AppEngine de Google Cloud Platform...
Guía para desplegar una aplicación Java en AppEngine de Google Cloud Platform...
 
Python Gae django
Python Gae djangoPython Gae django
Python Gae django
 
Proyect Evenge. Event manager
Proyect Evenge. Event managerProyect Evenge. Event manager
Proyect Evenge. Event manager
 
Cetis 109
Cetis 109Cetis 109
Cetis 109
 
Cetis 109(2)
Cetis 109(2)Cetis 109(2)
Cetis 109(2)
 
Appcircus Academy: Integración de Social Media en Android
Appcircus Academy: Integración de Social Media en AndroidAppcircus Academy: Integración de Social Media en Android
Appcircus Academy: Integración de Social Media en Android
 
App engine
App engineApp engine
App engine
 
Mi Primera Aplicacion en Google App Engine
Mi Primera Aplicacion en Google App EngineMi Primera Aplicacion en Google App Engine
Mi Primera Aplicacion en Google App Engine
 
Gadget review
Gadget reviewGadget review
Gadget review
 
Gadget review
Gadget reviewGadget review
Gadget review
 
Configuración y uso Google Drive en Android
Configuración y uso Google Drive en AndroidConfiguración y uso Google Drive en Android
Configuración y uso Google Drive en Android
 
Servicios en la nube, desafíos de la evolución arquitectónica
Servicios en la nube, desafíos de la evolución arquitectónicaServicios en la nube, desafíos de la evolución arquitectónica
Servicios en la nube, desafíos de la evolución arquitectónica
 
Angular 6
Angular 6Angular 6
Angular 6
 
Android camp 2017 google cloud platform + firebase + android
Android camp 2017   google cloud platform + firebase + androidAndroid camp 2017   google cloud platform + firebase + android
Android camp 2017 google cloud platform + firebase + android
 
Google cloud endpoints
Google cloud endpointsGoogle cloud endpoints
Google cloud endpoints
 
Usando Google Maps en tu Android App
Usando Google Maps en tu Android AppUsando Google Maps en tu Android App
Usando Google Maps en tu Android App
 

Último

plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdfenelcielosiempre
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaDecaunlz
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioELIASAURELIOCHAVEZCA1
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxKarlaMassielMartinez
 
CLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfCLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfJonathanCovena1
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxlupitavic
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Alejandrino Halire Ccahuana
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 

Último (20)

plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdf
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
 
CLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfCLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdf
 
PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 

Congreso visión 2012 - taller introducción app engine

  • 1. Mi Primera Aplicación utilizando el Cloud de Google Google App Engine Niger Arce Equipo de Tecnologías Google USMP Virtual @narce90
  • 2. Antes de empezar... ● Eclipse JEE http://www.eclipse.org/downloads/ ● JDK (Java Development Kit) http://goo.gl/8zusM ● App Engine Plugin para Eclipse http://dl.google.com/eclipse/plugin/4.2 ● App Engine SDK ● Cuenta Google ● Paciencia ● Una Computadora =) ...y un Celular... Referencia: https://developers.google. com/appengine/docs/java/gettingstarted/installing
  • 3. ...y una cosa más Es importante familiarizarse con la documentación: https://developers.google.com/appengine/docs/
  • 4. ¿Qué es Cloud Computing?
  • 5. ¿Cloud? ¿Cloud Computing? Se denomina «Cloud» al conjunto de servidores que se encuentra en aquel mundo llamado internet. «Cloud Computing» es un paradigma que permite ofrecer servicios de computación a través de internet. Fuente: Wikipedia
  • 9. ¿Qué es? Google App Engine (GAE) es una plataforma de cloud computing para el desarrollo y hosteo de aplicaciones web en datacenters administrados por Google.
  • 10. ¿Qué me ofrece? ● Entorno de ejecución para Java, Python y Go. ● Servicios web, con soporte a las tecnologías web más comunes. ● Almacenamiento persistente con queries, ordenamiento y transacciones. ● Escalamiento automático y balanceo de carga. ● APIs para la autenticación de usuarios y envío de correo a través de Google Accounts. ● Un completo entorno de desarrollo que nos permite simular Google App Engine de forma local. ● …y otras características más.
  • 13. Nos registramos en GAE http://appengine.google.com/
  • 14. Nos registramos en GAE http://appengine.google.com/
  • 15. Nos registramos en GAE http://appengine.google.com/
  • 16. ¿Problemas con el SMS? https://appengine.google.com/waitlist/sms_issues
  • 17. Vamos a la acción!!
  • 18. Creando mi primera aplicación ● Pulsamos el botón ● Escogemos la opción «New Web Application Project»
  • 19. Creando mi primera aplicación ● Le ponemos un nombre a nuestro proyecto. ● Declaramos el paquete del proyecto. ● Desactivamos el checkbox «Use Google Web Toolkit» ● Pulsamos «Finish»
  • 20. OK! Y ahora? …lo vamos a ejecutar …WHAT? Tan pronto?
  • 21. No pasa nada! …tranquilidad hermano! Entremos a: http://localhost:8888/ …hazle click a «Mi_Primer_App»
  • 22. …y ya tenemos un «Hello, world»
  • 23. Veamos que hay detrás de la magia
  • 24. Veamos que hay detrás de la magia
  • 25. web.xml ● Empleado para mapear URLs de los servlets que empleará la aplicación
  • 26. appengine-web.xml Un archivo de configuración adicional. Incluye: ● ID registrado de la aplicación. ● El número de versión de la aplicación. ● Las listas de archivos estáticos.
  • 28. Agregando links de login/logout UserService userService = UserServiceFactory.getUserService(); User user = userService.getCurrentUser(); if (user != null) { %> <p>Hola, <%= user.getNickname() %>! <p> <a href="<%= userService.createLogoutURL(request.getRequestURI()) %>">Salir </a></p> <% } else { %> <p><a href="<%= userService.createLoginURL(request.getRequestURI()) %>">Ingresar</a</p> ... ....
  • 29. Sobre DataStore ● Hay que tener en cuenta lo siguiente, cuando trabajamos con el DataStore: ● No es una base de datos relacional ● No existe un programa para crear tablas ● No se necesita crear tablas. Al persistir una entidad se crean registros de entidades con un tipo propio y con los atributos establecidos para dicha entidad ● Alternativamente se puede interactuar a través de JDO y JPA.
  • 30. ¿Qué es un Entidad?
  • 31. Es una representación en forma de objeto de una fila del DataStore. ● Cada Entidad tiene propiedades(Ejm: Entidad Alumno, tiene propiedades ‘nombre’, ‘apellido’, ‘fecha de nacimiento’,etc…) ● Las propiedades tienen un tipo de Dato, ya sea String, Entero, Date, etc… (Google App Engine tipos especiales como PhoneNumber, Email, etc) ● Cada Entidad tiene un Key, el cual es un identificador único. Este se puede autogenerar o asignar como String o valor numérico. ● Cata entidad tiene un tipo. Por ejemplo, tipos de entidades serían : ‘Persona’, ´País’, ‘Recibo’, ‘Orden de Compra’.
  • 33. ¿Y la nube? Para subir la aplicación a la nube solo necesitamos hacer unos cuantos pasos: ● Loggearnos desde Eclipse a AppEngine. ● Damos click en Sign in to Google en la parte inferior derecha de Eclipse
  • 34. ¿Y la nube? ● Para subir la aplicación a la nube solo necesitamos seguir dos pasos: ● Hacer click en Deploy to App Engine…
  • 35. Aparecerá la pantalla de abajo y luego seleccionamos ‘App Engine project settings…’ Para configurar el nombre y versión de nuestra aplicación en la nube.
  • 36. O también… Utilizando el archivo de configuración appengine- web.xml, podemos ver las siguientes etiquetas: <application>miaplicacion</application> <version>1</version>
  • 37. Creando la aplicación No podremos seguir subiendo la aplicación sin antes haber creado una en nuestra cuenta de App Engine. Entramos a http://appengine.google.com nos logueamos y seleccionamos ‘Create Aplication’. Nos aparecerá lo siguiente:
  • 38. ¡ Y Listo ! ● Regresamos a Eclipse y en la ventana de abajo colocamos el id de nuestra aplicación ingresado en el paso anterior; además ingresaremos la versión de la aplicación que para este caso es la primera ‘1’. Aceptamos los datos y seleccionamos Deploy.