PDF de programación - Appendix A – Frameworks de Última Generación

Imágen de pdf Appendix A – Frameworks de Última Generación

Appendix A – Frameworks de Última Generacióngráfica de visualizaciones

Publicado el 7 de Noviembre del 2019
65 visualizaciones desde el 7 de Noviembre del 2019
3,5 MB
19 paginas
Creado hace 13a (31/05/2006)
Appendix A – Frameworks de Última
Generación

Dr. Diego Lz. de Ipiña Gz. de Artaza

http://paginaspesonales.deusto.es/dipina

http://www.morelab.deusto.es

http://www.ctme.deusto.es

Frameworks de Última Generación

 Visión Microsoft:

 ASP.NET 2.0, WSE 3.0 y Windows Communication Foundation

 Visión Java:

 Java EE 5.0, JSF y Spring

 Visión Open Source:
 LAMP y Ruby on Rails

2

1

Web Services Enhancements 3.0

 Extensión a la framework .NET que implementa los

últimos estándares WS-* especificados
 Nos permite experimentar con SOA, haciendo uso de los servicios

avanzados necesarios en aplicaciones empresariales

 http://msdn.microsoft.com/webservices/webservices/building/wse/defa

ult.aspx

Windows Communication Foundation (WCF)

 Modelo de programación propuesto por Microsoft para

desarrollar aplicaciones basadas en servicios
 Previamente conocido como Índigo
 Parte de WinFX, la API basada en .NET que substituirá a Win32

con Windows Vista

 Orientado a servicios
 Unifica varios mecanismos de programación distribuida:

 Servicios Web, .NET Remoting, Transacciones Distribuidas y Colas

de Mensajes

 Usa SOAP para comunicar dos procesos, por lo que es
interoperable con otros procesos que también usan este
estándar

3

4

2

ASP.NET Atlas

 ASP.NET Atlas es un paquete de extensión para

ASP.NET 2.0
 Desarrollado por Microsoft

 http://atlas.asp.net

 Pone en práctica el enfoque AJAX

 http://atlas.asp.net/docs/Default.aspx

Características ATLAS

 Atlas te ayuda a crear aplicaciones web AJAX:

 Un conjunto de APIs orientadas a objetos para desarrollo en

JavaScript

 Compatibilidad multi-navegador
 APIs basadas en la parte cliente y ricos componentes de interfaz
 Un modelo declarativo para el desarrollo en la parte cliente
 Facilita la integración de client-side scripting con el

desarrollo de la parte servidora de ASP.NET, mediante:
 Servicios web integrables con aplicaciones Atlas
 ASP.NET Web Server Controls que emiten el código de scripting

necesario en Atlas

 Herramientas de desarrollo integrado como Visual Studio

5

6

3

Arquitectura de ATLAS

 Consta de librerías en la parte cliente y componentes en

la parte servidora

 Componentes Atlas parte cliente:

 Consiste de un conjunto de ficheros .js que proveen facilidades

de desarrollo orientado a objetos:

 Una capa de compatibilidad del browser
 Servicios core de Atlas (clases, espacios de nombres, manejo de

eventos, herencia, tipos de datos y serialización de objetos)

 Una capa de red que gestiona peticiones asíncronas
 Una capa de UI con comportamientos y controles nuevos
 Una capa de controles específicos Atlas para la parte cliente

7

Arquitectura de ATLAS

 Componentes Atlas parte servidora:

 Consiste de servicios web y controles de ASP.NET. 'Atlas' usa

servicios web de ASP.NET como:

 Profiles service para persistir información en el servidor.
 Membership service para autenticación
 Roles service ofrece autorización basada en roles
 Personalization services para persistir detalles de personalización a

nivel de página o usuario

 Globalización y servicios específicos de cultura

 ASP.NET también incluye 'Atlas' server controls similares a los

ASP.NET server controls, que emiten 'Atlas' client script.

 Ideal para desarrolladores que quieren concentrar su desarrollo en

la parte servidora

8

4

Visión Java

 Java EE (Java Plataform Enterprise Edition) incluye varias APIs

importantes para el desarrollo de aplicaciones empresariales:
 EJBs, Servlets, Portlets, JSPs, Web Services

 Java EE 5.0, corrige algunos errores pasados:

 Desarrollo más sencillo – menos código y deployment descriptors, más

anotaciones

 EJB 3.0 – promueve uso Plain Old Java Beans (POJOs) e introduce

servicios del sistema mediante interceptores y anotaciones
(@Stateless)

 Servicios Web Mejorados – facilita el desarrollo de servicios web para

implementar arquitecturas SOA
 Incorpora APIs de presentación:

 Construir web sofisticadas es más sencillo con JavaServer Faces (JSF) y JSP

Standard Tag Library (JSTL)

 Soporta el desarrollo de aplicaciones Web 2.0 en AJAX

9

Anotaciones en Java EE 5

 Configura servicios de manera declarativa mediante

anotaciones:

@SecurityDomain("other")
public class Foo {

@RolesAllowed({"managers"})
@TransactionAttribute(TransactionAttributeType.RE
QUIRED)
public bar () {

// do something ...

}

}

10

5

Servicios Web en Java EE 5

 Antes se necesitaba: Java interfaz con API, clase Java

con implementación y deployment descriptor

 Ahora con un fichero Java fuente sobra:

package endpoint;
import javax.jws.WebService;

@@@@WebService
WebService
WebService
WebService
public class Hello {

public String sayHello(String param) {

return "Hello " + param;

}

}

11

Java Server Faces

 Framework para construir interfaces de usuario para aplicaciones

web:
 APIs para representar componentes UI y gestionar su estado
 Manejo de eventos y validación de formularios, definiendo navegación de

página y

 Internacionalización y accesibilidad
 Librería de etiquetas personalizadas para expresar interfaz JSF en JSP

 Aumenta la productividad de aplicaciones web:

 Ensamblando componentes UI reutilizables
 Conectando esos componentes a fuentes de datos
 Enlazando eventos de la parte cliente con eventos en la parte servidora
 JSF gestiona de manera sencilla y eficiente la interfaz en el servidor,

permitiendo que el usuario se centre en el código de la aplicación

12

6

Ventajas de JSF

 Facilidad de uso

 Clara separación entre presentación y lógica
 Gestión transparente de las complejidades de la gestión de

interfaces, incluyendo validación de entrada, gestión del estado
del componente, navegación de páginas y gestión de eventos

 Estandarización

 Desarrollado a través del Java Community Process, bajo JSR-127

 Independencia de dispositivo

 Separa la definición del componente de su renderización

13

Usuarios de JSF

 Autores de páginas  construyen UIs mediante tags de

JSF

 Desarrolladores de aplicaciones  escriben el código de
la aplicación (acceso a datos, manejo de eventos, lógica
de negocio)

 Desarrolladores de componentes  construyen o

extienden componentes UI

 Desarrolladores de herramientas  construyen

herramientas para facilitar la edición de interfaces con
JSF

14

7

Spring Application Framework

 Proyecto Open Source desde Febrero 2003
 ¿Por qué otra nueva framework J2EE?

 Infraestructura orientada a permitir la creación de aplicaciones

empresariales usando POJOs

 Sofisticada
 Simple

 Diseñada para simplificar desarrollo de aplicaciones Java EE

 No reinventa, hace lo existente más fácil de usar

 Utiliza varios conceptos noveles de Ingeniería del

Software:
 Inversion of Control/Dependency Injection

 La framework IoC llama a tu código en vez de al revés:

 Setter Injection
 Constructor Injection

 Usa AOP para proveer servicios J2EE a POJOs.

15

Características Spring

 Gestión de configuración basada en JavaBeans,

aplicando Inversion of Control

 Una factoría de objetos principal
 Capa de abstracción genérica para transacciones
 Capa de abstracción genérica para JDBC

 Se integra con Hibernate, JDO o iBATIS SQL Maps

 Framework MVC altamente flexible

 Se puede integrar con frameworks de vistas como JSP, Velocity o

Tiles

 Capa de negocio se puede integrar con Struts, WebWork o

Tapestry

 Framework basada en AOP

16

8

Instalando Spring

 Requisito: Java SDK 5.0
 Bajarse Spring Framework (spring-framework-1.2.7-with-

dependencies.zip) de:
 http://sourceforge.net/projects/springframework/

17

Ejemplo Spring

 En examples\Spring simpleexample\ se ha

colocado una aplicación que muestra cómo usar esta
framework:
 story_configuration.xml  fichero de configuración que

define beans y sus relaciones de forma declarativa

 Story.java y StoryList.java  beans que van a ser usados

desde una aplicación Spring

 StoryReader.java  ejemplo de aplicación usando Spring
 Fuente: http://en.wikibooks.org/wiki/Spring_framework

18

9

LAMP = Linux + Apache + MySQL +
[PHP|Perl|Python]

 Permite el desarrollo y explotación de portales web de alto

rendimiento
 Sólida y robusta

 Sólo hay que tomar Apache como referencia

 Muy popular

 Por medio de la herramienta Netcraft se puede comprobar que
muchas de las webs más populares usan Apache sobre Linux y
tienen mod_perl o mod_php instalados.

 En general hace referencia a cualquier combinación de

herramientas open source para desarrollo web
 Linux podría reemplazarse por OpenBSD
 MySQL por PostGreSQL
 La ‘P’ podría traducirse en PHP, Perl, Python o Ruby

19

LAMP = Open Source Web Platform

 Permite el desarrollo y explotación de portales web de alto

rendimiento
 Sólida y robusta

 Sólo hay que tomar Apache como referencia

 Muy popular

 Por medio de la herramienta Netcraft se puede comprobar que
muchas de las webs más populares usan Apache sobre Linux y
tienen mod_perl o mod_php instalados.

 En general hace referencia a cualquier combinación de

herramientas open source para desarrollo web
 Linux podría reemplazarse por OpenBSD
 MySQL por PostGreSQL
 La ‘P’ podría traducirse en PHP, Perl, Python o Ruby

20

10

Características LAMP

 LAMP es una alternativa open source de calidad a otras

plataformas de desarrollo web
 ASP.NET 2.0
 Java EE 5.0

 Su popularidad y fácil aprendizaje son argumentos para

considerarla
 El pago de licencias no siempre está ligado a la calidad de las

herramientas

 LAMP es gratuito y muy indicado para portales de tamaño medio

Ruby on Rails

 Rails es una framework Ruby para el desarrollo de

aplicaciones web que usan bases de datos
 Creada por David Heinemeier Hansson

 Version 1.0 en Diciembre 2005
 Version 1.1 en Marzo 2006

 Sin duda, la Framework web más productiva

 Hasta 10 veces más que otras frameworks, por:

 Elegancia
  • Links de descarga
http://lwp-l.com/pdf16865

Comentarios de: Appendix A – Frameworks de Última Generación (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad