SlideShare ist ein Scribd-Unternehmen logo
1 von 11
Framework
Framework
Los objetivos principales que persigue un framework son: acelerar el
proceso de desarrollo, reutilizar código ya existente y promover
buenas prácticas de desarrollo como el uso de patrones.
Un framework Web, por tanto, podemos definirlo como un
conjunto de componentes (por ejemplo clases en java y
descriptores y archivos de configuración en XML) que componen
un diseño reutilizable que facilita y agiliza el desarrollo de
sistemas Web.
Patrón MVC y Model 2.
Para comprender como trabajan los frameworks Web existentes
es imprescindible conocer el patrón MVC.
El patrón Modelo-Vista-Controlador es una guía para el diseño de
arquitecturas de aplicaciones que ofrezcan una fuerte interactividad
con usuarios. Este patrón organiza la aplicación en tres modelos
separados, el primero es un modelo que representa los datos de la
aplicación y sus reglas de negocio, el segundo es un conjunto de vistas
que representa los formularios de entrada y salida de información, el
tercero es un conjunto de controladores que procesa las peticiones de
los usuarios y controla el flujo de ejecución del sistema.
La mayoría, por no decir todos, de los framewroks para Web
implementan este patrón. Una aplicación de este patrón en entornos
Java para programación Web es lo que se conoce con el nombre de
arquitectura model 2.
Esta arquitectura consiste, a grandes rasgos, en la utilización de
servlets para procesar las peticiones (controladores) y páginas
JSP para mostrar la interfaz de usuario (vistas), implementando la
parte del modelo mediante JavaBeans o POJOs.
Tipos de framework Web.
Existen varios tipos de frameworks Web: orientados a la interfaz
de usuario, como Java Server Faces, orientados a aplicaciones de
publicación de documentos, como Coocon, orientados a la parte
de control de eventos, como Struts y algunos que incluyen varios
elementos como Tapestry. La mayoría de frameworks Web se
encargan de ofrecer una capa de controladores de acuerdo con el
patrón MVC o con el modelo 2 de Servlets y JSP, ofreciendo
mecanismos para facilitar la integración con otras herramientas
para la implementación de las capas de negocio y presentación.
Características.
A continuación enunciamos una serie de características que podemos
encontrar en prácticamente todos los frameworks existentes.
• Abstracción de URLs y sesiones. No es necesario manipular directamente las
URLs ni las sesiones, el framework ya se encarga de hacerlo.
• Acceso a datos. Incluyen las herramientas e interfaces necesarias para
integrarse con herramientas de acceso a datos, en BBDD, XML, etc..
• Controladores. La mayoría de frameworks implementa una serie de
controladores para gestionar eventos, como una introducción de datos
mediante un formulario o el acceso a una página. Estos controladores
suelen ser fácilmente adaptables a las necesidades de un proyecto concreto.
• Autentificación y control de acceso. Incluyen mecanismos para la
identificación de usuarios mediante login y password y permiten restringir
el acceso a determinas páginas a determinados usuarios.
• Internacionalización.
• Separación entre diseño y contenido.
• Un ejemplo: Struts
El framwrok open-source Struts ha sido desarrollado en Java mediante
servlets y está basado en el Modelo 2, el cual es una variante del
patrón MVC.
• Struts ofrece su propio componente controlador y proporciona
integración con otras tecnologías para implementar el modelo,
mediante tecnologías de acceso a datos como JDBC o Hibernate, y
la vista, mediante JSP, Velocity o XSLT. Struts ofrece un sistema de
tuberías que permite la comunicación entre el modelo que contiene
los datos y las vistas que ofrecen estos datos a los usuarios y
reciben sus órdenes.
• URLs.
• Cocoon http://cocoon.apache.org/
• Java Server Faces
http://java.sun.com/j2ee/javaserverfaces/index.jsp
• JetSpeed http://portals.apache.org/jetspeed-2/
• Maverick http://mav.sourceforge.net/
• Struts http://struts.apache.org/
• Tapestry http://jakarta.apache.org/tapestry/
• Wicket http://wicket.codehaus.org/

Weitere ähnliche Inhalte

Was ist angesagt?

Conceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónConceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónjusto morales
 
Framework Laravel
Framework LaravelFramework Laravel
Framework LaravelRafael Lobo
 
Curso Uml 2.5 Diagramas De ImplementacióN
Curso Uml   2.5 Diagramas De ImplementacióNCurso Uml   2.5 Diagramas De ImplementacióN
Curso Uml 2.5 Diagramas De ImplementacióNEmilio Aviles Avila
 
metodologia de prototipos
metodologia de prototiposmetodologia de prototipos
metodologia de prototiposKeiner Valerio
 
Documentación de sistemas
Documentación de sistemasDocumentación de sistemas
Documentación de sistemasGladys Rodriguez
 
Algebra relacional fundamentos de base de datos
Algebra relacional fundamentos de base de datosAlgebra relacional fundamentos de base de datos
Algebra relacional fundamentos de base de datosJosepSalvadorSotoObregon
 
Diagramas estados
Diagramas estadosDiagramas estados
Diagramas estadosloco8888
 
4.2 mecanismos y_funciones_de_los_manejadores_de_dispositivos
4.2 mecanismos y_funciones_de_los_manejadores_de_dispositivos4.2 mecanismos y_funciones_de_los_manejadores_de_dispositivos
4.2 mecanismos y_funciones_de_los_manejadores_de_dispositivosbeymarlopez
 
Extensiones UML para aplicaciones web - Rocío Santiago
Extensiones UML para aplicaciones web - Rocío SantiagoExtensiones UML para aplicaciones web - Rocío Santiago
Extensiones UML para aplicaciones web - Rocío Santiago2008PA2Info3
 
Unidad III procedimientos
Unidad III procedimientosUnidad III procedimientos
Unidad III procedimientosaaronastorga4
 
PostgreSQL
PostgreSQLPostgreSQL
PostgreSQLbrobelo
 
5.5 mecanismos de acceso a los archivos
5.5 mecanismos de acceso a los archivos5.5 mecanismos de acceso a los archivos
5.5 mecanismos de acceso a los archivosRey JOaquin
 
administracion de entrada, salida y procesos
administracion de entrada, salida y procesosadministracion de entrada, salida y procesos
administracion de entrada, salida y procesosSamir Barrios
 
Factibilidad Tecnica, Operativa y Economica
Factibilidad Tecnica, Operativa y EconomicaFactibilidad Tecnica, Operativa y Economica
Factibilidad Tecnica, Operativa y EconomicaSistemas UDC
 

Was ist angesagt? (20)

MySQL
MySQLMySQL
MySQL
 
Conceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónConceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programación
 
Framework Laravel
Framework LaravelFramework Laravel
Framework Laravel
 
Curso Uml 2.5 Diagramas De ImplementacióN
Curso Uml   2.5 Diagramas De ImplementacióNCurso Uml   2.5 Diagramas De ImplementacióN
Curso Uml 2.5 Diagramas De ImplementacióN
 
Uml
UmlUml
Uml
 
Metodologia orientada a objeto
Metodologia orientada a objetoMetodologia orientada a objeto
Metodologia orientada a objeto
 
metodologia de prototipos
metodologia de prototiposmetodologia de prototipos
metodologia de prototipos
 
Herramientas case
Herramientas caseHerramientas case
Herramientas case
 
Documentación de sistemas
Documentación de sistemasDocumentación de sistemas
Documentación de sistemas
 
Algebra relacional fundamentos de base de datos
Algebra relacional fundamentos de base de datosAlgebra relacional fundamentos de base de datos
Algebra relacional fundamentos de base de datos
 
Diagramas estados
Diagramas estadosDiagramas estados
Diagramas estados
 
4.2 mecanismos y_funciones_de_los_manejadores_de_dispositivos
4.2 mecanismos y_funciones_de_los_manejadores_de_dispositivos4.2 mecanismos y_funciones_de_los_manejadores_de_dispositivos
4.2 mecanismos y_funciones_de_los_manejadores_de_dispositivos
 
Extensiones UML para aplicaciones web - Rocío Santiago
Extensiones UML para aplicaciones web - Rocío SantiagoExtensiones UML para aplicaciones web - Rocío Santiago
Extensiones UML para aplicaciones web - Rocío Santiago
 
Unidad III procedimientos
Unidad III procedimientosUnidad III procedimientos
Unidad III procedimientos
 
PostgreSQL
PostgreSQLPostgreSQL
PostgreSQL
 
DIAGRAMAS DE CLASE
DIAGRAMAS DE CLASEDIAGRAMAS DE CLASE
DIAGRAMAS DE CLASE
 
5.5 mecanismos de acceso a los archivos
5.5 mecanismos de acceso a los archivos5.5 mecanismos de acceso a los archivos
5.5 mecanismos de acceso a los archivos
 
administracion de entrada, salida y procesos
administracion de entrada, salida y procesosadministracion de entrada, salida y procesos
administracion de entrada, salida y procesos
 
Factibilidad Tecnica, Operativa y Economica
Factibilidad Tecnica, Operativa y EconomicaFactibilidad Tecnica, Operativa y Economica
Factibilidad Tecnica, Operativa y Economica
 
Postgre sql
Postgre sqlPostgre sql
Postgre sql
 

Ähnlich wie Framework (20)

Framework
FrameworkFramework
Framework
 
Framework
FrameworkFramework
Framework
 
Documentacion struts2
Documentacion struts2Documentacion struts2
Documentacion struts2
 
Documentacion struts2 laura.palma
Documentacion struts2 laura.palmaDocumentacion struts2 laura.palma
Documentacion struts2 laura.palma
 
Struts en Java
Struts en JavaStruts en Java
Struts en Java
 
Documentacion struts 2
Documentacion struts 2Documentacion struts 2
Documentacion struts 2
 
Documentacionstruts2 luiggi
Documentacionstruts2 luiggiDocumentacionstruts2 luiggi
Documentacionstruts2 luiggi
 
Patron mvc struts
Patron mvc strutsPatron mvc struts
Patron mvc struts
 
Aplicaciones en capas1
Aplicaciones en capas1Aplicaciones en capas1
Aplicaciones en capas1
 
MVC & ASP.NET (Spanish)
MVC & ASP.NET (Spanish)MVC & ASP.NET (Spanish)
MVC & ASP.NET (Spanish)
 
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
 
FMK Capa de Presentacion
FMK Capa de PresentacionFMK Capa de Presentacion
FMK Capa de Presentacion
 
Implementacion de un portal web para la automatización del proceso de consult...
Implementacion de un portal web para la automatización del proceso de consult...Implementacion de un portal web para la automatización del proceso de consult...
Implementacion de un portal web para la automatización del proceso de consult...
 
MVC
MVCMVC
MVC
 
PPT-S08-MMIRANDA-2022-01.pptx
PPT-S08-MMIRANDA-2022-01.pptxPPT-S08-MMIRANDA-2022-01.pptx
PPT-S08-MMIRANDA-2022-01.pptx
 
patrón MVC.pdf
patrón MVC.pdfpatrón MVC.pdf
patrón MVC.pdf
 
Frameworks MVC para desarrollo de UITES
Frameworks MVC para desarrollo de UITESFrameworks MVC para desarrollo de UITES
Frameworks MVC para desarrollo de UITES
 
Java Web - Struts
Java Web - StrutsJava Web - Struts
Java Web - Struts
 
3-Unidad 1. Arquitectura de Diseño
3-Unidad 1. Arquitectura de Diseño3-Unidad 1. Arquitectura de Diseño
3-Unidad 1. Arquitectura de Diseño
 
CakePHP
CakePHPCakePHP
CakePHP
 

Framework

  • 2. Framework Los objetivos principales que persigue un framework son: acelerar el proceso de desarrollo, reutilizar código ya existente y promover buenas prácticas de desarrollo como el uso de patrones.
  • 3. Un framework Web, por tanto, podemos definirlo como un conjunto de componentes (por ejemplo clases en java y descriptores y archivos de configuración en XML) que componen un diseño reutilizable que facilita y agiliza el desarrollo de sistemas Web.
  • 4. Patrón MVC y Model 2. Para comprender como trabajan los frameworks Web existentes es imprescindible conocer el patrón MVC.
  • 5. El patrón Modelo-Vista-Controlador es una guía para el diseño de arquitecturas de aplicaciones que ofrezcan una fuerte interactividad con usuarios. Este patrón organiza la aplicación en tres modelos separados, el primero es un modelo que representa los datos de la aplicación y sus reglas de negocio, el segundo es un conjunto de vistas que representa los formularios de entrada y salida de información, el tercero es un conjunto de controladores que procesa las peticiones de los usuarios y controla el flujo de ejecución del sistema.
  • 6. La mayoría, por no decir todos, de los framewroks para Web implementan este patrón. Una aplicación de este patrón en entornos Java para programación Web es lo que se conoce con el nombre de arquitectura model 2.
  • 7. Esta arquitectura consiste, a grandes rasgos, en la utilización de servlets para procesar las peticiones (controladores) y páginas JSP para mostrar la interfaz de usuario (vistas), implementando la parte del modelo mediante JavaBeans o POJOs.
  • 8. Tipos de framework Web. Existen varios tipos de frameworks Web: orientados a la interfaz de usuario, como Java Server Faces, orientados a aplicaciones de publicación de documentos, como Coocon, orientados a la parte de control de eventos, como Struts y algunos que incluyen varios elementos como Tapestry. La mayoría de frameworks Web se encargan de ofrecer una capa de controladores de acuerdo con el patrón MVC o con el modelo 2 de Servlets y JSP, ofreciendo mecanismos para facilitar la integración con otras herramientas para la implementación de las capas de negocio y presentación.
  • 9. Características. A continuación enunciamos una serie de características que podemos encontrar en prácticamente todos los frameworks existentes. • Abstracción de URLs y sesiones. No es necesario manipular directamente las URLs ni las sesiones, el framework ya se encarga de hacerlo. • Acceso a datos. Incluyen las herramientas e interfaces necesarias para integrarse con herramientas de acceso a datos, en BBDD, XML, etc.. • Controladores. La mayoría de frameworks implementa una serie de controladores para gestionar eventos, como una introducción de datos mediante un formulario o el acceso a una página. Estos controladores suelen ser fácilmente adaptables a las necesidades de un proyecto concreto. • Autentificación y control de acceso. Incluyen mecanismos para la identificación de usuarios mediante login y password y permiten restringir el acceso a determinas páginas a determinados usuarios. • Internacionalización. • Separación entre diseño y contenido.
  • 10. • Un ejemplo: Struts El framwrok open-source Struts ha sido desarrollado en Java mediante servlets y está basado en el Modelo 2, el cual es una variante del patrón MVC.
  • 11. • Struts ofrece su propio componente controlador y proporciona integración con otras tecnologías para implementar el modelo, mediante tecnologías de acceso a datos como JDBC o Hibernate, y la vista, mediante JSP, Velocity o XSLT. Struts ofrece un sistema de tuberías que permite la comunicación entre el modelo que contiene los datos y las vistas que ofrecen estos datos a los usuarios y reciben sus órdenes. • URLs. • Cocoon http://cocoon.apache.org/ • Java Server Faces http://java.sun.com/j2ee/javaserverfaces/index.jsp • JetSpeed http://portals.apache.org/jetspeed-2/ • Maverick http://mav.sourceforge.net/ • Struts http://struts.apache.org/ • Tapestry http://jakarta.apache.org/tapestry/ • Wicket http://wicket.codehaus.org/