SlideShare una empresa de Scribd logo
1 de 12
• Qué es Scala?
• Qué es Play 2?
• Play 2
  •   Arquitectura conceptual
  •   Arquitectura
  •   Características
  •   Anatomía
  •   Demo
  •   Preguntas




Agenda
• Scala es un lenguaje de programación híbrido basado en
  los paradigmas de Orientación a Objetos y Programación
  Funcional complementándolos de manera armoniosa
  inventado por Martin Oderesky.




Que es Scala?
• Play 2 es un framework de alta productividad para crear
  aplicaciones web en Java y Scala.
• Esta basado en una arquitectura ligera, sin estado y con
  poco consumo de recursos como CPU, memoria y
  threads.
• Su arquitectura esta basada en un modelo dirigido por
  eventos.




Que es Play 2?
Play 2
Arquitectura conceptual
Arquitectura
• Configuración de URL’s de manera declarativa.
• Mapeo de tipos seguro desde HTTP a un API idiomática
  de Scala.
• Arquitectura que soporta los tecnologías HTML5 en el
  cliente.
• Cambios en vivo con tan solo refrescar el Browser.
• Características completos de un framework web
  incluyendo persistencia, seguridad e internacionalización.




Características
app                      →   Fuentes de la aplicación
    └ assets                →   Fuentes compiladas de assets
       └ stylesheets        →   CSS
       └ javascripts        →   CoffeScripts
    └ controllers           →   Controladores
    └ models                →   Modelo de negocio
    └ views                 →   Plantillas (Vistas)
   conf                     →   Archivos de configuration
    └ application.conf      →   Archivo de configuración principal
    └ routes                →   Definición de rutas
   public                   →   Assets públicos
    └ stylesheets           →   Archivos CSS
    └ javascripts           →   Archivos JavaScript
    └ images                →   Archivos de imagen.
   project                  →   Archivos de configuración de SBT
    └ build.properties      →   Propiedades del proyecto
    └ Build.scala           →   Script de construcción
    └ plugins.sbt           →   Plugins de SBT
   lib                      →   Bibliotecas no-manejadas
   logs                     →   Logs
    └ application.log       →   Archivo Log por defecto
   target                   →   Archivos binrios generados
    └ scala-2.9.1
       └ cache
       └ classes
       └ classes_managed
       └ resource_managed
       └ src_managed
   test                     → Archivos de pruebas de unidad y funcionales




Anatomía
Demo
Preguntas?
Gracias…

Más contenido relacionado

Similar a Desarrollo Web con Scala

Ingeniería Inversa en Android. Rooted Labs. Rooted CON 2012.
Ingeniería Inversa en Android.  Rooted Labs. Rooted CON 2012.Ingeniería Inversa en Android.  Rooted Labs. Rooted CON 2012.
Ingeniería Inversa en Android. Rooted Labs. Rooted CON 2012.Internet Security Auditors
 
Persistencia de datos_hibernate_arquitecturas_de_software
Persistencia de datos_hibernate_arquitecturas_de_softwarePersistencia de datos_hibernate_arquitecturas_de_software
Persistencia de datos_hibernate_arquitecturas_de_softwareJose Luis Bugarin Peche
 
Symfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony FrameworkSymfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony Frameworkexcedesoft
 
Desarrollo de aplicaciones realmente nativas con NDK
Desarrollo de aplicaciones realmente nativas con NDKDesarrollo de aplicaciones realmente nativas con NDK
Desarrollo de aplicaciones realmente nativas con NDKSoftware Guru
 
Tecnologias de java usando netbeans por gio
Tecnologias de java usando netbeans por gioTecnologias de java usando netbeans por gio
Tecnologias de java usando netbeans por gioRobert Wolf
 
Frameworks de Desarrollo Web Grails
Frameworks de Desarrollo Web GrailsFrameworks de Desarrollo Web Grails
Frameworks de Desarrollo Web GrailsEsteban Saavedra
 
Gwt seminario java_hispano_manolocarrasco
Gwt seminario java_hispano_manolocarrascoGwt seminario java_hispano_manolocarrasco
Gwt seminario java_hispano_manolocarrascoManuel Carrasco Moñino
 
Arquitectura 63583.pptx
Arquitectura 63583.pptxArquitectura 63583.pptx
Arquitectura 63583.pptxlvaroTorres26
 
SonarQube: ¿cómo de malo es mi software?
SonarQube: ¿cómo de malo es mi software?SonarQube: ¿cómo de malo es mi software?
SonarQube: ¿cómo de malo es mi software?Tomás Moreno Bernal
 
Programación visual con VB.NET
Programación visual con VB.NETProgramación visual con VB.NET
Programación visual con VB.NETYamil Lambert
 
Depuración de aplicaciones en visual studio
Depuración de aplicaciones en visual studioDepuración de aplicaciones en visual studio
Depuración de aplicaciones en visual studioJavier Hermoso Blanco
 
Configurig and Customizing ArcGIS Viewer for Silverlight and ArcGIS Viewer fo...
Configurig and Customizing ArcGIS Viewer for Silverlight and ArcGIS Viewer fo...Configurig and Customizing ArcGIS Viewer for Silverlight and ArcGIS Viewer fo...
Configurig and Customizing ArcGIS Viewer for Silverlight and ArcGIS Viewer fo...Esri
 
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...RootedCON
 
Tema1 seleccion de_arquitecturas_y_herramientas_de_programacion
Tema1 seleccion de_arquitecturas_y_herramientas_de_programacionTema1 seleccion de_arquitecturas_y_herramientas_de_programacion
Tema1 seleccion de_arquitecturas_y_herramientas_de_programacionJuana Sánchez
 
OpenProdoc Visión General
OpenProdoc Visión GeneralOpenProdoc Visión General
OpenProdoc Visión Generaljhierrot
 
Primeros pasos con git
Primeros pasos con gitPrimeros pasos con git
Primeros pasos con gitJuan Vladimir
 

Similar a Desarrollo Web con Scala (20)

Ingeniería Inversa en Android. Rooted Labs. Rooted CON 2012.
Ingeniería Inversa en Android.  Rooted Labs. Rooted CON 2012.Ingeniería Inversa en Android.  Rooted Labs. Rooted CON 2012.
Ingeniería Inversa en Android. Rooted Labs. Rooted CON 2012.
 
Persistencia de datos_hibernate_arquitecturas_de_software
Persistencia de datos_hibernate_arquitecturas_de_softwarePersistencia de datos_hibernate_arquitecturas_de_software
Persistencia de datos_hibernate_arquitecturas_de_software
 
Symfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony FrameworkSymfony-Community: Introducción a Symfony Framework
Symfony-Community: Introducción a Symfony Framework
 
Curso avanzado de capacitación en DSpace
Curso avanzado de capacitación en DSpaceCurso avanzado de capacitación en DSpace
Curso avanzado de capacitación en DSpace
 
Dbdeployer
DbdeployerDbdeployer
Dbdeployer
 
Documento Web2Py
Documento Web2PyDocumento Web2Py
Documento Web2Py
 
Presentacion web2py
Presentacion web2pyPresentacion web2py
Presentacion web2py
 
Desarrollo de aplicaciones realmente nativas con NDK
Desarrollo de aplicaciones realmente nativas con NDKDesarrollo de aplicaciones realmente nativas con NDK
Desarrollo de aplicaciones realmente nativas con NDK
 
Tecnologias de java usando netbeans por gio
Tecnologias de java usando netbeans por gioTecnologias de java usando netbeans por gio
Tecnologias de java usando netbeans por gio
 
Frameworks de Desarrollo Web Grails
Frameworks de Desarrollo Web GrailsFrameworks de Desarrollo Web Grails
Frameworks de Desarrollo Web Grails
 
Gwt seminario java_hispano_manolocarrasco
Gwt seminario java_hispano_manolocarrascoGwt seminario java_hispano_manolocarrasco
Gwt seminario java_hispano_manolocarrasco
 
Arquitectura 63583.pptx
Arquitectura 63583.pptxArquitectura 63583.pptx
Arquitectura 63583.pptx
 
SonarQube: ¿cómo de malo es mi software?
SonarQube: ¿cómo de malo es mi software?SonarQube: ¿cómo de malo es mi software?
SonarQube: ¿cómo de malo es mi software?
 
Programación visual con VB.NET
Programación visual con VB.NETProgramación visual con VB.NET
Programación visual con VB.NET
 
Depuración de aplicaciones en visual studio
Depuración de aplicaciones en visual studioDepuración de aplicaciones en visual studio
Depuración de aplicaciones en visual studio
 
Configurig and Customizing ArcGIS Viewer for Silverlight and ArcGIS Viewer fo...
Configurig and Customizing ArcGIS Viewer for Silverlight and ArcGIS Viewer fo...Configurig and Customizing ArcGIS Viewer for Silverlight and ArcGIS Viewer fo...
Configurig and Customizing ArcGIS Viewer for Silverlight and ArcGIS Viewer fo...
 
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...
rooted2020 Sandbox fingerprinting -_evadiendo_entornos_de_analisis_-_victor_c...
 
Tema1 seleccion de_arquitecturas_y_herramientas_de_programacion
Tema1 seleccion de_arquitecturas_y_herramientas_de_programacionTema1 seleccion de_arquitecturas_y_herramientas_de_programacion
Tema1 seleccion de_arquitecturas_y_herramientas_de_programacion
 
OpenProdoc Visión General
OpenProdoc Visión GeneralOpenProdoc Visión General
OpenProdoc Visión General
 
Primeros pasos con git
Primeros pasos con gitPrimeros pasos con git
Primeros pasos con git
 

Último

Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosJhonJairoRodriguezCe
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIhmpuellon
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxFederico Castellari
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativanicho110
 

Último (10)

Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 

Desarrollo Web con Scala

  • 1.
  • 2. • Qué es Scala? • Qué es Play 2? • Play 2 • Arquitectura conceptual • Arquitectura • Características • Anatomía • Demo • Preguntas Agenda
  • 3. • Scala es un lenguaje de programación híbrido basado en los paradigmas de Orientación a Objetos y Programación Funcional complementándolos de manera armoniosa inventado por Martin Oderesky. Que es Scala?
  • 4. • Play 2 es un framework de alta productividad para crear aplicaciones web en Java y Scala. • Esta basado en una arquitectura ligera, sin estado y con poco consumo de recursos como CPU, memoria y threads. • Su arquitectura esta basada en un modelo dirigido por eventos. Que es Play 2?
  • 8. • Configuración de URL’s de manera declarativa. • Mapeo de tipos seguro desde HTTP a un API idiomática de Scala. • Arquitectura que soporta los tecnologías HTML5 en el cliente. • Cambios en vivo con tan solo refrescar el Browser. • Características completos de un framework web incluyendo persistencia, seguridad e internacionalización. Características
  • 9. app → Fuentes de la aplicación └ assets → Fuentes compiladas de assets └ stylesheets → CSS └ javascripts → CoffeScripts └ controllers → Controladores └ models → Modelo de negocio └ views → Plantillas (Vistas) conf → Archivos de configuration └ application.conf → Archivo de configuración principal └ routes → Definición de rutas public → Assets públicos └ stylesheets → Archivos CSS └ javascripts → Archivos JavaScript └ images → Archivos de imagen. project → Archivos de configuración de SBT └ build.properties → Propiedades del proyecto └ Build.scala → Script de construcción └ plugins.sbt → Plugins de SBT lib → Bibliotecas no-manejadas logs → Logs └ application.log → Archivo Log por defecto target → Archivos binrios generados └ scala-2.9.1 └ cache └ classes └ classes_managed └ resource_managed └ src_managed test → Archivos de pruebas de unidad y funcionales Anatomía
  • 10. Demo