arquitectura- programacion web

21
Instituto Tecnológico del Norte de Nayarit Programación Web Unidad I: Arquitectura Ing. TIC´s Gustavo Yael Guerra Aguayo

Upload: yael21

Post on 01-Jul-2015

280 views

Category:

Software


1 download

TRANSCRIPT

Page 1: Arquitectura- Programacion WEB

Instituto Tecnológico del Norte de Nayarit

Programación Web

Unidad I: Arquitectura

Ing. TIC´s Gustavo Yael Guerra Aguayo

Page 2: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

¿Que es una aplicación web?

Page 3: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

¿Que es una aplicación web?

"un programa o conjunto de programas para ayudar al usuario de un ordenador para procesar una tarea

específica"

Page 4: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

Las aplicaciones Web interactivas poco a poco han revolucionado la forma deutilizar internet, aumentando el contenido de las páginas con texto estático(texto que no evoluciona, sino que permanecen como es) a un contenido rico einteractivo, por lo tanto escalable.

Evolución de las Aplicaciones Web

El concepto de la aplicación web no es nuevo. De hecho, uno de los primerlenguaje de programación para el desarrollo de aplicaciones web es el "Perl". Fueinventado por Larry Wall en 1987 antes de que internet se convirtiera enaccesible para el público en general.

Pero fue en 1995 cuando el programador Rasmus Lerdorf puso a disposición ellenguaje PHP con lo que todo el desarrollo de aplicaciones web realmentedespegó. Hoy en día, incluso muchas de estas aplicaciones se han desarrolladoen PHP, como Google, Facebook y Wikipedia.

Page 5: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

http://www.evolutionoftheweb.com/?hl=es#/growth/day

Page 6: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

Aplicación Web = Pagina Web

¿Que tipos de paginas web conoces?

Page 7: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

Pagina Web Estática

Las páginas web estáticas son básicamente informativas y están enfocadas principalmente a mostrar una información permanente, donde el navegante se limita a obtener dicha información sin poder interactuar con la página visitada.

En las páginas web estáticas no se utilizan bases de datos ni se requiere programación.

Para desarrollarlas es suficiente utilizar código HTML y construirlas principalmente con hipervínculos o enlaces (links) entre las páginas que conforman el sitio.

Page 8: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

Pagina Web Estática

Page 9: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

Ventajas

Portabilidad, funcionan en cualquier servidor. Tiempos de acceso óptimos, tardan muy poco en cargarse. Máximo desempeño y funcionalidad. Facilitan el posicionamiento. Diversidad de aplicaciones y componentes existentes. Costos de alojamiento menores. Mínimos requerimientos técnicos para su operación. No se requiere ninguna instalación ni configuración de software.

Pagina Web Estática

Page 10: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

Ausencia de movimiento y funcionalidades Absoluta opacidad a los deseos o búsquedas del visitante a la página. El visitante no tiene ninguna posibilidad de seleccionar, ordenar o modificar

los contenidos o el diseño de la página a su gusto. El administrador web debe acceder al servidor donde está alojada la página

para cambiar los contenidos de la página. El proceso de actualización es lento, tedioso y esencialmente manual. No se pueden utilizar funcionalidades tales como bases de datos, foros, etc.

Desventajas

Pagina Web Estática

Page 11: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

Pagina Web Dinámica

Las páginas web dinámicas son aquellas en las que la información presentada se genera a partir de una petición del usuario de la página.

Contrariamente a lo que ocurre con las páginas estáticas, en las que sucontenido se encuentra predeterminado, en las páginas dinámicas lainformación aparece inmediatamente después de una solicitud echa por elusuario. Esto se hace posible porque una página dinámica tiene asociada unaBase de Datos desde la que se permite visualizar la información contenida enella.

Para la creación de este tipo de páginas, además de la existencia de una Base deDatos asociada a las mismas deberán utilizarse etiquetas HTML y algún lenguajede programación que se ejecute “del lado del servidor”, es decir, que estéalojado en el mismo servidor en el que está alojada la página web.

Page 12: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

Pagina Web Dinámica

Los lenguajes utilizados para la generación de este tipo de páginas son principalmente: Perl CGI, PHP , JSP y ASP .

Los manejadores de bases de datos que pueden trabajar con páginas dinámicas son principalmente: PostgresSQL, MySQL , Oracle y Microsoft SQL Server.

Page 13: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

Pagina Web Dinámica

• Una mayor interactividad con el usuario ya que este puede alterar en parteel diseño, contenidos o presentación de la página a su gusto (tipos de letra,colores o fondos, tamaño de pantalla, etc.) siempre y cuando losdesarrolladores de la página hayan activado dichas funcionalidades.

Ventajas

• Enorme número de posibilidades en su diseño, desarrollo y sobre todo… mantenimiento.

• Gran número de funcionalidades tales como bases de datos, foros, contenido dinámico, etc.

• Control total sobre la administración de contenidos.

Page 14: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

• Mayores requerimientos técnicos para su alojamiento en Servidores de pago. • Costos de alojamiento mayores.• En algunos casos, un mayor costo de desarrollo.

Pagina Web DinámicaDesventajas

Page 15: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

Modelado por capasModelo de 2 capas

Generalidades:

• Llamado Modelo Cliente/Servidor• El cliente principal son los Browsers• El servidor son los que proporcionan el

contenido

• Funciones por peticiones• Existen Distintos tipos de servidores

Es aquella red de comunicaciones en la que todos los clientes están conectados aun servidor, en el que se centralizan los diversos recursos y aplicaciones con quese cuenta; y que los pone a disposición de los clientes cada vez que estos sonsolicitados.

Red Cliente/Servidor:

Page 16: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

Modelado por capasModelo de 2 capas

Page 17: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

Modelado por capasModelo de 2 capas

Quien es el cliente:

• Inicia las peticiones• Espera las respuestas del servidor• Es multiconexion.• Interactúa con los usuarios finales mediante una interfaz grafica.

Quien es el Servidor:

• Recibe las peticiones• Procesa las solicitudes y envía la respuesta al cliente• Puede existir mas de un servidor.• Puede aceptar conexiones de múltiples clientes.• Se puede considerar como dispositivo “Esclavo” al esperar peticiones del cliente.• No es frecuente que interactúe con los usuarios finales.

Page 18: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

Modelado por capasModelo de 2 capas

Ventajas:

Centralización del control: los accesos, recursos y la integridad de los datos soncontrolados por el servidor de forma que un programa cliente defectuoso o noautorizado no pueda dañar el sistema.

Escalabilidad: se puede aumentar la capacidad de clientes y servidores porseparado. Cualquier elemento puede ser aumentado (o mejorado) en cualquiermomento, o se pueden añadir nuevos nodos a la red (clientes y/o servidores).

Fácil mantenimiento: al estar distribuidas las funciones y responsabilidades entre varios ordenadores independientes, es posible reemplazar, reparar, actualizar, o incluso trasladar un servidor, mientras que sus clientes no se verán afectados por ese cambio

Page 19: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

Modelado por capasModelo de 2 capas

Desventajas:

Trafico Limitado: Cuando una gran cantidad de clientes envían peticiones simultáneas al mismo servidor, puede ser que cause muchos problemas para éste (a mayor número de clientes, más problemas para el servidor).

Especificaciones Técnicas: El software y el hardware de un servidor songeneralmente muy determinantes. Un hardware regular de un ordenador personalpuede no poder servir a cierta cantidad de clientes. Normalmente se necesitasoftware y hardware específico, sobre todo en el lado del servidor, para satisfacer eltrabajo.

Disposición de Recursos: El cliente no dispone de los recursos que puedan existir en el servidor. Por ejemplo, si la aplicación es una Web, no podemos escribir en el disco duro del cliente o imprimir directamente sobre las impresoras sin sacar antes la ventana previa de impresión de los navegadores.

Page 20: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

Modelado por capasModelo de 3 capas

Page 21: Arquitectura- Programacion WEB

Evolución de las Aplicaciones Web

Programación Web Unidad I: Arquitectura

Modelado por capasModelo de 3 capas

Que es la capa de Presentación:

• Es la que el usuario maneja, comunica la información por medio de un proceso en el que se filtró de errores

• Es conocida también como la “capa grafica”• Se comunica exclusivamente con la capa de Negocio

Que es la capa de Negocio:

• Se encuentran todos los programas que se ejecutan en la capa de datos• Recibe las peticiones del usuario y envía las respuestas.• Se comunica con la capa de presentación para mostrar los resultados al usuario

Que es la capa de Datos:

• Residen todos los datos y es la encargada de acceder a ellos• Esta formado por uno o mas gestores de Base de Datos.• Reciben solicitudes de almacenamiento desde la capa de negocio