SlideShare una empresa de Scribd logo
1 de 26
Descargar para leer sin conexión
DXAT
 Noemí Arbós
Ester Mengual
2



    1. Introducción
      1. ¿Qué es un framework web?
      2. Historia
      3. AJAX

    2. Servidor
      1. STRUTS
      2. SPRING
      3. WICKET

    3. Cliente
      1. JQUERY
      2. HTML5
3


           ¿Qué es un FRAMEWORK WEB?
               Estructura conceptual que facilita el desarrollo y mantenimiento
                de sitios web dinámicos, aplicaciones web y servicios web.
               Ahorra trabajo a bajo nivel.
               Promueve el reúso de código.
               Pueden incluir:
                 Librerías (por ejemplo para acceso a base de datos).
                 Estructuras para plantillas.
                 Gestión de sesiones (autenticación).
                 Abstracción de URLs.
                 Separación entre diseño y contenido.
                 AJAX.
4


       Historia de los frameworks web.
5


           AJAX  Asynchronous JavaScript and XML
               Conjunto de tecnologías (XHTML + CSS + DOM + XML + JavaScript)
                que permiten crear aplicaciones web interactivas:
                 Modificar la información de una página web sin tener que
                  recargarla completamente.
                 Agiliza la interacción con el usuario.
               Las aplicaciones pueden enviar o recibir datos del servidor
                de forma asíncrona  el intercambio no interfiere en la
                visualización y comportamiento de la web (concepto RIA).
               Ejemplos:
                 Validación de formularios.
                 Autocompletado de cuadros de texto…
6


           AJAX  Asynchronous JavaScript and XML
               Conjunto de tecnologías (XHTML + CSS + DOM + XML + JavaScript)
                que permiten crear aplicaciones web interactivas:
                 Modificar la información de una página web sin tener que
                  recargarla completamente.
                 Agiliza la interacción con el usuario.
               Las aplicaciones pueden enviar o recibir datos del servidor
                de forma asíncrona  el intercambio no interfiere en la
                visualización y comportamiento de la web (concepto RIA).
               Ejemplos:
                 Validación de formularios.
                 Autocompletado de cuadros de texto…
7


           AJAX  Asynchronous JavaScript and XML
               Conjunto de tecnologías (XHTML + CSS + DOM + XML + JavaScript)
                que permiten crear aplicaciones web interactivas:
                 Modificar la información de una página web sin tener que
                  recargarla completamente.
                 Agiliza la interacción con el usuario.
               Las aplicaciones pueden enviar o recibir datos del servidor
                de forma asíncrona  el intercambio no interfiere en la
                visualización y comportamiento de la web (concepto RIA).
               Ejemplos:
                 Validación de formularios.
                 Autocompletado de cuadros de texto…
8


           Framework web open-source para Java que permite separar
            Modelo, Vista y Controlador (Arquitectura MVC).
             Modelo (Action classes)  Sistema de gestión de los datos con los que
              el sistema opera.
             Vista (JSP Pages)  Responsable de la interfaz de usuario, presenta el
              modelo en un formato adecuado.
             Controlador (Servlets)  Responde a los eventos de entrada desde la
              vista (acciones del usuario). Invoca peticiones al Modelo y la Vista.


                    Asociación
                     indirecta
                                         Modelo                 Asociación
                                                                directa




                           Vista                         Controlador
9


           Características:
             Facilidad en diseño, creación y mantenimiento.
             Soporte para AJAX.
             Facilidad para añadir Plugins (REST, Hibernate…).

           Diagrama de flujo:
                                                    Browser
                                               Request   Response        web.xml


                          Server
                                                                        Strut Tag
                                        Controlador            Vista    Libraries

                           Struts-config.xml                              Resource
                                                                       Properties File
                                                      Modelo
10


            Framework web open-source para Java.
            Características:
                Basado en:
                  Inversión de Control(IoC): las librerías llaman al código (menos dependencias).
                  Orientación a Aspectos(AOP): modularizar las apliaciones.
                Modularidad  Integración entre APIs y frameworks.
                  Data Access Framework (usar APIs como JDBC, Hibernate…).
                  Spring Web MVC.
                  Remote Access Framework.
                  Etc.
11


            Framework open-source para desarrollo de aplicaciones web
             para Java.

            Modelo GUI (Graphical User Interface) basado en
             Componentes.
              Los componentes usan listeners que reaccionan ante peticiones HTTP a
               través de enlaces o formularios.

            Separa totalmente Vista (HTML) y Lógica (Java).
              Uso de un atributo HTML especial (wicket:id) para denotar los componentes
               Wicket en la vista.
              Cada clase .java tiene su plantilla homologa en HTML.

            Utiliza modelos de datos POJO.
12


        Arquitectura:
                                 MODELO
                               (POJOs Java)


                             CONTROLADORES
                               (Clases Java)

                Home.java                        Login.java
                 Listeners                        Listeners
                   HTTP




                                                    HTTP
                                   VISTA
                             (documentos HTML)


                Home.html                        Login.html
13


            Características:
                Seguro.
                Elimina la necesidad de gestionar sesiones a mano.
                Los componentes Wicket son reusables.
                  Con Java se puede extender de otros componentes.
                  Creación de Panels.
                El uso de validadores de formularios es simple y flexible.
                Agregar interacción con AJAX es muy simple.
                Manejo de eventos es muy transparente.
14


        Ejemplo:




        Más ejemplos: http://wicketstuff.org/wicket/index.html
15


            Es una librería open-source de JavaScript rápida y concisa.
              «Escribir menos, hacer más»
              Provee nuevas características a JavaScript.
              Sintaxis simple de aprender.

            Cross-browser: Compatible con la mayoría de navegadores.
              El código es independiente del navegador.

            Permite cambiar el contenido de una página web sin
             recargarla.

            Programación no invasiva: separa Código JavaScript y
             Código HTML.
16



                         JavaScript                                                     JQuery
     <td>                                                        <td>
       <script>                                                     <select name=“tipoPago” id=‘tipoPago_id’class=“input”>
                  function tipoPagoOnChangeEvent(value){                       <option value=“-1”>
                  //…                                                          </option>
                  }                                                 </select>
         </script>                                               </td>
        <select name=“tipoPago” id=‘tipoPago_id’class=“input”
        onChange=“tipoPagoOnChangeEvent(this.value);”>           <input type=“button” id=“btn-siguiente” class=“buttons”
        </select>                                                  value=“Siguiente ->”/>
     </td>
                                                                 <script>
     <input type=“button” id=“btn-siguiente” class=“buttons”       //cuando se recarga la página
       value=“Siguiente ->”onclick=“javascript:enviarReq();”/>     $ (document).ready(function(){
                                                                              $ (‘#tipoPago_id’).change(function(event)){
     <script>                                                                 //…
       //cuando se recarga la página                               }};
       window.onload=function(){                                 </script>
                  tipoPagoOnChangeEvent(1);
       }
     </script>
17


            Otras Características:
                Selección/Modificación/Interoperabilidad de elementos DOM
                 (Document Object Model).
                Simplifica el manejo de eventos.
                Crear efectos visuales: añadir efectos visuales y animaciones.
                Añadir componentes GUI.
                  Cuadros de dialogo, calendarios, sliders, tabs…
                Agregar interacción con AJAX.
                Manipular estilos CSS (Cascading Style Sheets).
                Añadir plugins de forma simple.

            Ejemplos: http://jqueryui.com/
18




     Test de HTML5: http://html5test.com/
19




                   HTML5 = HTML + CSS + JavaScript

        Idea: Estándar que recoja las necesidades de los
         desarrolladores web: redefine elementos (etiquetas) ya
         existentes en HTML.
        Objetivo: navegador estándar, abierto y único.
        Ventajas:
          Menos   recursos  Más eficiencia.
20


        Características principales:
          Offline    Storage
             Web    Storage: guardar datos en el navegador.

                 saveButton.addEventListener('click', function () {
                   window.localStorage.setItem('value', area.value);
                   window.localStorage.setItem('timestamp', (new Date()).getTime());
                 }, false);
                 textarea.value = window.localStorage.getItem('value');

         Link: http://slides.html5rocks.com/#web-storage
21


        Características principales:
          Realtime      communication
            Web     Sockets: comunicación directa con el servidor.
                 var socket = new WebSocket('ws://html5rocks.websocket.org/echo');
                 socket.onopen = function(event) {
                   socket.send('Hello, WebSocket');
                 };

           Link: http://slides.html5rocks.com/#web-sockets
            Notifications:

          window.webkitNotifications.createNotification(tweet.picture, tweet.title, tweet.text).show();


           Link: http://slides.html5rocks.com/#notifications-api
22


        Características principales:
          File/hardware           access
             Native     Drag&Drop
                 document.addEventListener('dragstart', function(event) {
                   event.dataTransfer.setData('text', 'Customized text');
                   event.dataTransfer.effectAllowed = 'copy';
                 }, false);
            Link: https://mozillademos.org/demos/motivational/demo.html#
            Link: http://slides.html5rocks.com/#drag-and-drop
             Geolocalization
          navigator.geolocation.getCurrentPosition(function(position) {
            var latLng = new google.maps.LatLng( position.coords.latitude, position.coords.longitude);
            //…
          }, errorHandler);
            Link: http://slides.html5rocks.com/#geolocation
23


        Características principales:
          Graphics     & multimedia content
            Audio    & Video
                <audio id="audio" src="sound.mp3" controls></audio>
                document.getElementById("audio").muted = false;

                <video id="video" src="movie.webm" autoplay controls></video>
                document.getElementById("video").play();
           Link: http://slides.html5rocks.com/#video-audio
            Canvas

                <canvas id="canvas" width="838" height="220"></canvas>
                var canvasContext = document.getElementById("canvas").getContext("2d");
                canvasContext.fillRect(250, 25, 150, 100);

           Link: http://slides.html5rocks.com/#canvas-2d
           Link: http://craftymind.com/factory/html5video/CanvasVideo.html
24


        Características principales:
          CSS3
            Nuevos    estilos y efectos.
                  Columnas.
                  Opacidad/Transparencia.
                  Rounded Corners.
                  Sombras.
                  Animaciones…

           Link: http://slides.html5rocks.com/#css-columns
           Link: http://slides.html5rocks.com/#rounded-corners
           Link: http://slides.html5rocks.com/#css-animation
25




Noemí Arbós & Ester Mengual
26

                 http://www.roseindia.net/struts/how-struts-works.shtml

     Struts      http://struts.apache.org/#Welcome
                 http://struts.apache.org/2.2.3.1/docs/home.html
                 http://www.springsource.org/

     Spring      http://www.springsource.org/features
                 http://www.springsource.org/get-started

                 http://wicket.apache.org/
                 http://wicket.apache.org/start/quickstart.html
     Wicket      http://wicketstuff.org/wicket/index.html
                 http://wicket.apache.org/learn/examples/

                 http://jquery.com/
     jQuery      http://www.slideshare.net/continuumslides/introduccin-a-jquery

                 http://www.html5rocks.com/en/
                 http://studio.html5rocks.com/
     HTML5       http://html5test.com/results.html
                 http://html5demos.com/

Más contenido relacionado

La actualidad más candente

Ejercicio basico jsf’s
Ejercicio basico jsf’sEjercicio basico jsf’s
Ejercicio basico jsf’sayreonmx
 
86535551 ciclo-de-vida-jsf
86535551 ciclo-de-vida-jsf86535551 ciclo-de-vida-jsf
86535551 ciclo-de-vida-jsfpablo lopez
 
Taller integracion jsf spring
Taller integracion jsf springTaller integracion jsf spring
Taller integracion jsf springIBM
 
5. Curso Java Struts I (Framework para Java) - Curso 2005-2006
5. Curso Java Struts I (Framework para Java) - Curso 2005-20065. Curso Java Struts I (Framework para Java) - Curso 2005-2006
5. Curso Java Struts I (Framework para Java) - Curso 2005-2006Samuel Marrero
 
Aplicaciones web con jakarta struts - Javier Oliver Fulguera
Aplicaciones web con jakarta struts  - Javier Oliver FulgueraAplicaciones web con jakarta struts  - Javier Oliver Fulguera
Aplicaciones web con jakarta struts - Javier Oliver FulgueraJavier Oliver Fulguera
 
Jsf Java Server Faces
Jsf   Java Server FacesJsf   Java Server Faces
Jsf Java Server Facescok12v
 
Desarrollo de Apps Web en Ruby on Rails
Desarrollo de Apps Web en Ruby on RailsDesarrollo de Apps Web en Ruby on Rails
Desarrollo de Apps Web en Ruby on RailsFreelancer
 
FMK Capa de Presentacion
FMK Capa de PresentacionFMK Capa de Presentacion
FMK Capa de Presentacionkaolong
 
Curso Java Resumen - Curso 2005-2006
Curso Java Resumen - Curso 2005-2006Curso Java Resumen - Curso 2005-2006
Curso Java Resumen - Curso 2005-2006Samuel Marrero
 
Introducción a java EE 7
Introducción a java EE 7Introducción a java EE 7
Introducción a java EE 7Carlos Camacho
 
Aplicaciones web
Aplicaciones webAplicaciones web
Aplicaciones webFelipe
 
[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con JavaEudris Cabrera
 
Introducción al desarrollo de aplicaciones web en Java
Introducción al desarrollo de aplicaciones web en JavaIntroducción al desarrollo de aplicaciones web en Java
Introducción al desarrollo de aplicaciones web en JavaEudris Cabrera
 

La actualidad más candente (20)

Frameworks J2EE
Frameworks J2EEFrameworks J2EE
Frameworks J2EE
 
Ejercicio basico jsf’s
Ejercicio basico jsf’sEjercicio basico jsf’s
Ejercicio basico jsf’s
 
Manual Basico De Struts
Manual Basico De StrutsManual Basico De Struts
Manual Basico De Struts
 
86535551 ciclo-de-vida-jsf
86535551 ciclo-de-vida-jsf86535551 ciclo-de-vida-jsf
86535551 ciclo-de-vida-jsf
 
Charla
CharlaCharla
Charla
 
Taller integracion jsf spring
Taller integracion jsf springTaller integracion jsf spring
Taller integracion jsf spring
 
5. Curso Java Struts I (Framework para Java) - Curso 2005-2006
5. Curso Java Struts I (Framework para Java) - Curso 2005-20065. Curso Java Struts I (Framework para Java) - Curso 2005-2006
5. Curso Java Struts I (Framework para Java) - Curso 2005-2006
 
Aplicaciones web con jakarta struts - Javier Oliver Fulguera
Aplicaciones web con jakarta struts  - Javier Oliver FulgueraAplicaciones web con jakarta struts  - Javier Oliver Fulguera
Aplicaciones web con jakarta struts - Javier Oliver Fulguera
 
Jsf Java Server Faces
Jsf   Java Server FacesJsf   Java Server Faces
Jsf Java Server Faces
 
Desarrollo de Apps Web en Ruby on Rails
Desarrollo de Apps Web en Ruby on RailsDesarrollo de Apps Web en Ruby on Rails
Desarrollo de Apps Web en Ruby on Rails
 
FMK Capa de Presentacion
FMK Capa de PresentacionFMK Capa de Presentacion
FMK Capa de Presentacion
 
Curso Java Resumen - Curso 2005-2006
Curso Java Resumen - Curso 2005-2006Curso Java Resumen - Curso 2005-2006
Curso Java Resumen - Curso 2005-2006
 
Introducción a java EE 7
Introducción a java EE 7Introducción a java EE 7
Introducción a java EE 7
 
Introducción a Java y BEA (2008)
Introducción a Java y BEA (2008)Introducción a Java y BEA (2008)
Introducción a Java y BEA (2008)
 
Aplicaciones web
Aplicaciones webAplicaciones web
Aplicaciones web
 
Framework
FrameworkFramework
Framework
 
Java Web - Introduccion
Java Web - IntroduccionJava Web - Introduccion
Java Web - Introduccion
 
Introducción a JEE
Introducción a JEEIntroducción a JEE
Introducción a JEE
 
[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java
 
Introducción al desarrollo de aplicaciones web en Java
Introducción al desarrollo de aplicaciones web en JavaIntroducción al desarrollo de aplicaciones web en Java
Introducción al desarrollo de aplicaciones web en Java
 

Similar a Tecnologias web

Similar a Tecnologias web (20)

Curso ajax
Curso ajaxCurso ajax
Curso ajax
 
Patron mvc struts
Patron mvc strutsPatron mvc struts
Patron mvc struts
 
introduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
introduccion-a-las-aplicaciones-web-y-tecnologia-java.pptintroduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
introduccion-a-las-aplicaciones-web-y-tecnologia-java.ppt
 
Ajax tsis
Ajax tsisAjax tsis
Ajax tsis
 
Arquitectura java web
Arquitectura java webArquitectura java web
Arquitectura java web
 
MVC & ASP.NET (Spanish)
MVC & ASP.NET (Spanish)MVC & ASP.NET (Spanish)
MVC & ASP.NET (Spanish)
 
5-Unidad 2: Diseño de Vista-2.2 Para Web
5-Unidad 2: Diseño de Vista-2.2 Para Web5-Unidad 2: Diseño de Vista-2.2 Para Web
5-Unidad 2: Diseño de Vista-2.2 Para Web
 
Asp
AspAsp
Asp
 
ASP.NET
ASP.NETASP.NET
ASP.NET
 
Ajax Atlas
Ajax AtlasAjax Atlas
Ajax Atlas
 
Intro a ASP.NET
Intro a ASP.NETIntro a ASP.NET
Intro a ASP.NET
 
Clase 4 JavaScript Básico
Clase 4 JavaScript BásicoClase 4 JavaScript Básico
Clase 4 JavaScript Básico
 
Ajax
AjaxAjax
Ajax
 
Jc Web20 Open Source Why Floss2007
Jc Web20 Open Source Why Floss2007Jc Web20 Open Source Why Floss2007
Jc Web20 Open Source Why Floss2007
 
Programacion de aplicaciones Web con ASP.NET
Programacion de aplicaciones Web con ASP.NETProgramacion de aplicaciones Web con ASP.NET
Programacion de aplicaciones Web con ASP.NET
 
Patrones Arquitecturales Para Aplicaciones Web
Patrones Arquitecturales Para Aplicaciones WebPatrones Arquitecturales Para Aplicaciones Web
Patrones Arquitecturales Para Aplicaciones Web
 
Aplicaciones en capas1
Aplicaciones en capas1Aplicaciones en capas1
Aplicaciones en capas1
 
Introducción a Tomcat
Introducción a TomcatIntroducción a Tomcat
Introducción a Tomcat
 
SERVLET BASICS
SERVLET BASICSSERVLET BASICS
SERVLET BASICS
 
AJAX
AJAXAJAX
AJAX
 

Último

ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxinformacionasapespu
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para eventoDiegoMtsS
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxPryhaSalam
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuaDANNYISAACCARVAJALGA
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
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
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 

Último (20)

ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para evento
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahua
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..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
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 

Tecnologias web

  • 2. 2 1. Introducción 1. ¿Qué es un framework web? 2. Historia 3. AJAX 2. Servidor 1. STRUTS 2. SPRING 3. WICKET 3. Cliente 1. JQUERY 2. HTML5
  • 3. 3  ¿Qué es un FRAMEWORK WEB?  Estructura conceptual que facilita el desarrollo y mantenimiento de sitios web dinámicos, aplicaciones web y servicios web.  Ahorra trabajo a bajo nivel.  Promueve el reúso de código.  Pueden incluir:  Librerías (por ejemplo para acceso a base de datos).  Estructuras para plantillas.  Gestión de sesiones (autenticación).  Abstracción de URLs.  Separación entre diseño y contenido.  AJAX.
  • 4. 4  Historia de los frameworks web.
  • 5. 5  AJAX  Asynchronous JavaScript and XML  Conjunto de tecnologías (XHTML + CSS + DOM + XML + JavaScript) que permiten crear aplicaciones web interactivas:  Modificar la información de una página web sin tener que recargarla completamente.  Agiliza la interacción con el usuario.  Las aplicaciones pueden enviar o recibir datos del servidor de forma asíncrona  el intercambio no interfiere en la visualización y comportamiento de la web (concepto RIA).  Ejemplos:  Validación de formularios.  Autocompletado de cuadros de texto…
  • 6. 6  AJAX  Asynchronous JavaScript and XML  Conjunto de tecnologías (XHTML + CSS + DOM + XML + JavaScript) que permiten crear aplicaciones web interactivas:  Modificar la información de una página web sin tener que recargarla completamente.  Agiliza la interacción con el usuario.  Las aplicaciones pueden enviar o recibir datos del servidor de forma asíncrona  el intercambio no interfiere en la visualización y comportamiento de la web (concepto RIA).  Ejemplos:  Validación de formularios.  Autocompletado de cuadros de texto…
  • 7. 7  AJAX  Asynchronous JavaScript and XML  Conjunto de tecnologías (XHTML + CSS + DOM + XML + JavaScript) que permiten crear aplicaciones web interactivas:  Modificar la información de una página web sin tener que recargarla completamente.  Agiliza la interacción con el usuario.  Las aplicaciones pueden enviar o recibir datos del servidor de forma asíncrona  el intercambio no interfiere en la visualización y comportamiento de la web (concepto RIA).  Ejemplos:  Validación de formularios.  Autocompletado de cuadros de texto…
  • 8. 8  Framework web open-source para Java que permite separar Modelo, Vista y Controlador (Arquitectura MVC).  Modelo (Action classes)  Sistema de gestión de los datos con los que el sistema opera.  Vista (JSP Pages)  Responsable de la interfaz de usuario, presenta el modelo en un formato adecuado.  Controlador (Servlets)  Responde a los eventos de entrada desde la vista (acciones del usuario). Invoca peticiones al Modelo y la Vista. Asociación indirecta Modelo Asociación directa Vista Controlador
  • 9. 9  Características:  Facilidad en diseño, creación y mantenimiento.  Soporte para AJAX.  Facilidad para añadir Plugins (REST, Hibernate…).  Diagrama de flujo: Browser Request Response web.xml Server Strut Tag Controlador Vista Libraries Struts-config.xml Resource Properties File Modelo
  • 10. 10  Framework web open-source para Java.  Características:  Basado en:  Inversión de Control(IoC): las librerías llaman al código (menos dependencias).  Orientación a Aspectos(AOP): modularizar las apliaciones.  Modularidad  Integración entre APIs y frameworks.  Data Access Framework (usar APIs como JDBC, Hibernate…).  Spring Web MVC.  Remote Access Framework.  Etc.
  • 11. 11  Framework open-source para desarrollo de aplicaciones web para Java.  Modelo GUI (Graphical User Interface) basado en Componentes.  Los componentes usan listeners que reaccionan ante peticiones HTTP a través de enlaces o formularios.  Separa totalmente Vista (HTML) y Lógica (Java).  Uso de un atributo HTML especial (wicket:id) para denotar los componentes Wicket en la vista.  Cada clase .java tiene su plantilla homologa en HTML.  Utiliza modelos de datos POJO.
  • 12. 12  Arquitectura: MODELO (POJOs Java) CONTROLADORES (Clases Java) Home.java Login.java Listeners Listeners HTTP HTTP VISTA (documentos HTML) Home.html Login.html
  • 13. 13  Características:  Seguro.  Elimina la necesidad de gestionar sesiones a mano.  Los componentes Wicket son reusables.  Con Java se puede extender de otros componentes.  Creación de Panels.  El uso de validadores de formularios es simple y flexible.  Agregar interacción con AJAX es muy simple.  Manejo de eventos es muy transparente.
  • 14. 14  Ejemplo:  Más ejemplos: http://wicketstuff.org/wicket/index.html
  • 15. 15  Es una librería open-source de JavaScript rápida y concisa.  «Escribir menos, hacer más»  Provee nuevas características a JavaScript.  Sintaxis simple de aprender.  Cross-browser: Compatible con la mayoría de navegadores.  El código es independiente del navegador.  Permite cambiar el contenido de una página web sin recargarla.  Programación no invasiva: separa Código JavaScript y Código HTML.
  • 16. 16 JavaScript JQuery <td> <td> <script> <select name=“tipoPago” id=‘tipoPago_id’class=“input”> function tipoPagoOnChangeEvent(value){ <option value=“-1”> //… </option> } </select> </script> </td> <select name=“tipoPago” id=‘tipoPago_id’class=“input” onChange=“tipoPagoOnChangeEvent(this.value);”> <input type=“button” id=“btn-siguiente” class=“buttons” </select> value=“Siguiente ->”/> </td> <script> <input type=“button” id=“btn-siguiente” class=“buttons” //cuando se recarga la página value=“Siguiente ->”onclick=“javascript:enviarReq();”/> $ (document).ready(function(){ $ (‘#tipoPago_id’).change(function(event)){ <script> //… //cuando se recarga la página }}; window.onload=function(){ </script> tipoPagoOnChangeEvent(1); } </script>
  • 17. 17  Otras Características:  Selección/Modificación/Interoperabilidad de elementos DOM (Document Object Model).  Simplifica el manejo de eventos.  Crear efectos visuales: añadir efectos visuales y animaciones.  Añadir componentes GUI.  Cuadros de dialogo, calendarios, sliders, tabs…  Agregar interacción con AJAX.  Manipular estilos CSS (Cascading Style Sheets).  Añadir plugins de forma simple.  Ejemplos: http://jqueryui.com/
  • 18. 18 Test de HTML5: http://html5test.com/
  • 19. 19 HTML5 = HTML + CSS + JavaScript  Idea: Estándar que recoja las necesidades de los desarrolladores web: redefine elementos (etiquetas) ya existentes en HTML.  Objetivo: navegador estándar, abierto y único.  Ventajas:  Menos recursos  Más eficiencia.
  • 20. 20  Características principales:  Offline Storage  Web Storage: guardar datos en el navegador. saveButton.addEventListener('click', function () { window.localStorage.setItem('value', area.value); window.localStorage.setItem('timestamp', (new Date()).getTime()); }, false); textarea.value = window.localStorage.getItem('value'); Link: http://slides.html5rocks.com/#web-storage
  • 21. 21  Características principales:  Realtime communication  Web Sockets: comunicación directa con el servidor. var socket = new WebSocket('ws://html5rocks.websocket.org/echo'); socket.onopen = function(event) { socket.send('Hello, WebSocket'); }; Link: http://slides.html5rocks.com/#web-sockets  Notifications: window.webkitNotifications.createNotification(tweet.picture, tweet.title, tweet.text).show(); Link: http://slides.html5rocks.com/#notifications-api
  • 22. 22  Características principales:  File/hardware access  Native Drag&Drop document.addEventListener('dragstart', function(event) { event.dataTransfer.setData('text', 'Customized text'); event.dataTransfer.effectAllowed = 'copy'; }, false); Link: https://mozillademos.org/demos/motivational/demo.html# Link: http://slides.html5rocks.com/#drag-and-drop  Geolocalization navigator.geolocation.getCurrentPosition(function(position) { var latLng = new google.maps.LatLng( position.coords.latitude, position.coords.longitude); //… }, errorHandler); Link: http://slides.html5rocks.com/#geolocation
  • 23. 23  Características principales:  Graphics & multimedia content  Audio & Video <audio id="audio" src="sound.mp3" controls></audio> document.getElementById("audio").muted = false; <video id="video" src="movie.webm" autoplay controls></video> document.getElementById("video").play(); Link: http://slides.html5rocks.com/#video-audio  Canvas <canvas id="canvas" width="838" height="220"></canvas> var canvasContext = document.getElementById("canvas").getContext("2d"); canvasContext.fillRect(250, 25, 150, 100); Link: http://slides.html5rocks.com/#canvas-2d Link: http://craftymind.com/factory/html5video/CanvasVideo.html
  • 24. 24  Características principales:  CSS3  Nuevos estilos y efectos.  Columnas.  Opacidad/Transparencia.  Rounded Corners.  Sombras.  Animaciones… Link: http://slides.html5rocks.com/#css-columns Link: http://slides.html5rocks.com/#rounded-corners Link: http://slides.html5rocks.com/#css-animation
  • 25. 25 Noemí Arbós & Ester Mengual
  • 26. 26  http://www.roseindia.net/struts/how-struts-works.shtml Struts  http://struts.apache.org/#Welcome  http://struts.apache.org/2.2.3.1/docs/home.html  http://www.springsource.org/ Spring  http://www.springsource.org/features  http://www.springsource.org/get-started  http://wicket.apache.org/  http://wicket.apache.org/start/quickstart.html Wicket  http://wicketstuff.org/wicket/index.html  http://wicket.apache.org/learn/examples/  http://jquery.com/ jQuery  http://www.slideshare.net/continuumslides/introduccin-a-jquery  http://www.html5rocks.com/en/  http://studio.html5rocks.com/ HTML5  http://html5test.com/results.html  http://html5demos.com/