Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Programacion Web U1

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 40

UNIDAD I

INTRODUCCIÓN A LAS APLICACIONES WEB


1.1 Evolución de las aplicaciones web.

› Internet es un conjunto descentralizado de redes de


comunicación interconectadas que utilizan la familia de
protocolos TCP/IP, garantizando que las redes físicas
heterogéneas que la componen funcionen como una red
lógica única, de alcance mundial.

› La WWW es un conjunto de protocolos que permite, de


forma sencilla, la consulta remota de archivos de
hipertexto.
1.1 Evolución de las aplicaciones web.
1.1 Evolución de las aplicaciones web.
1.1 Evolución de las aplicaciones web.
1.1 Evolución de las aplicaciones web.
W
1.1 Evolución de las aplicaciones web.
1.1 Evolución de las aplicaciones web.

Ejemplo:
1.1 Evolución de las aplicaciones web.
1.1 Evolución de las aplicaciones web.
1.1 Evolución de las aplicaciones web.
1.1 Evolución de las aplicaciones web.
1.1 Evolución de las aplicaciones web.
1.1 Evolución de las aplicaciones web.
1.1 Evolución de las aplicaciones web.

Web 1.0:

La 'Web 1.0 (1991-2003) es la forma mas básica que existe, con


navegadores de solo texto bastante rápidos. Después surgió el HTML que
hizo las paginas web mas agradables a la vista, así como los primeros
navegadores visuales tales como IE, Netscape, explorer (en versiones
antiguas), etc.

La Web 1.0 es de solo lectura. El usuario no puede interactuar con el


contenido de la pagina (nada de comentarios,
respuestas, citas, etc), estando totalmente limitado a lo que el Webmaster
sube a esta.
1.1 Evolución de las aplicaciones web.

Web 2.0:

El termino Web 2.0 (2004–actualidad) esta comúnmente asociado con un


fenómeno social, basado en la interacción que se logra a partir de diferentes
aplicaciones en la web, que facilitan el compartir información, la
interoperabilidad, el diseño centrado en el usuario y la colaboración en la World
Wide Web.
1.1 Evolución de las aplicaciones web.

Web 2.0:

Ejemplos de la Web 2.0 son las comunidades web, los servicios web, las
aplicaciones Web, los servicios de red social, los servicios de alojamiento de
videos, las wikis, blogs.

Un sitio Web 2.0 permite a sus usuarios interactuar con otros usuarios o cambiar
contenido del sitio web, en contraste a sitios web no-interactivos donde los
usuarios se limitan a la visualización pasiva de información que se les
proporciona.
1.1 Evolución de las aplicaciones web.

Web 3.0:

Web 3.0 es un neologismo que se utiliza para describir la evolución del uso y la
interacción en la red a través de diferentes caminos.
1.1 Evolución de las aplicaciones web.

Web 3.0:

Ello incluye, la transformación de la red en una base de datos, un movimiento


hacia hacer los contenidos accesibles por múltiples aplicaciones non-browser, el
empuje de las tecnologías de inteligencia artificial, la web semántica, la Web
Geoespacial, o la Web 3D.
1.2 ARQUITECTURA DE LAS APLICACIONES WEB
1.2 ARQUITECTURA DE LAS APLICACIONES WEB

Arquitectura de capas

El objetivo principal de
esta arquitectura se basa
en la separación de Capa Web Capa Negocio
lógica de negocio y
presentación. Presenta el sistema al Recibe y responde a
usuario. Debe contemplar todas las peticiones
Cuando existe un principios de usabilidad, de usuario. Se
problema sólo se ataca accesibilidad, sencillez y establecen las reglas
al nivel afectado. limpieza. y filtrados o se
realizan peticiones a
Permite un entorno sistemas externos.
colaborativo, en el que
los desarrolladores
pueden trabajaren
paralelo sin perjudicarse.
1.2 ARQUITECTURA DE LAS APLICACIONES WEB
1.2 ARQUITECTURA DE LAS APLICACIONES WEB
1.3 TECNOLOGÍAS PARA EL DESARROLLO DE APLICACIONES WEB

Tecnologías de desarrollo web


1.3 TECNOLOGÍAS PARA EL DESARROLLO DE APLICACIONES WEB

Arquitectura básica de una aplicación web

› Para que un sitio o aplicación web funcione mostrándose al público es necesaria


una arquitectura que disponga como mínimo los siguientes elementos:

› El navegador: Representa el concepto de cliente realizando peticiones


solicitando recursos a diferentes servidores web a través de URL.
› El Servidor: Almacena de forma organizada la estructura de la información del
sitio web para servir los contenidos en relación a las peticiones del navegador.
› El protocolo http: Es el protocolo basado en TCP/IP a través del cual el
navegador realiza peticiones al servidor para que este responda.
› HTML: Es el formato básico de los documentos que componen las páginas web,
está basado en etiquetas y sirve para estructurar la forma de mostrar los
contenidos de las páginas.
› CSS: Las hojas de estilo en cascada sirven para favorecer estéticamente los
elementos y contenidos estructurados a través de las etiquetas HTML,
dotándoles de personalidad en cuanto a su diseño, forma y colores.
1.3 TECNOLOGÍAS PARA EL DESARROLLO DE APLICACIONES WEB

Tecnologías del lado del cliente o del lado del servidor


› Además de reunir los requisitos anteriores básicos para funcionar, un sitio o
aplicación web puede crearse utilizando diferentes tecnologías que se dividen en
dos grandes categorías:

› Tecnologías de cliente: Son aquellas que permiten crear interfaces de usuario y


establecer comunicación con el servidor basadas en HTML, CSS y JavaScript, en
este caso, el navegador actúa como intérprete.
› Tecnologías de servidor: Permiten implementar comportamientos de la aplicación
web en el servidor, los lenguajes de programación más utilizados son Java EE, .NET,
PHP, Ruby on Rails, Python, Django, Groovy, Node.js, etc.
1.3 TECNOLOGÍAS PARA EL DESARROLLO DE APLICACIONES WEB

Arquitecturas web de contenido estático o dinámico


› Se dice que el contenido que muestra una determinada página o sitio web al
completo es contenido estático cuando no permite la interacción del usuario de
ninguna forma, por el contrario las páginas que invitan a interactuar con el visitante
a través de diferentes elementos como formularios, botones, mapas, etc… ofrecen
contenido dinámico.

› Cliente estático y servidor estático: En este modelo el navegador hace una petición
al servidor mediante el protocolo http, el servidor transforma la URL a ruta de disco
y devuelve el fichero al navegador que lo dibuja o renderiza mostrando la estructura
de la página en HTML y su contenido como fotos y vídeos, también la estética de su
diseño gracias a los estilos CSS.

› En este caso no existe ningún tipo de interacción utilizando JavaScript, el servidor


devuelve siempre los mismos recursos, así que desde este punto de vista la web es
estática.
1.3 TECNOLOGÍAS PARA EL DESARROLLO DE APLICACIONES WEB

Arquitecturas web de contenido estático o dinámico


› Cliente estático y servidor dinámico: Este modelo se compone de 3 capas, ya
que intervienen por un lado el navegador y el servidor web, pero también una
base de datos asociada a este último.
› Cuándo el servidor recibe una petición, devuelve contenido del disco o ejecuta
código para generar el recurso dinámicamente, este código normalmente realiza
consultas a la base de datos para recuperar la información, generando la página
HTML y contenidos de forma dinámica.
› Cliente dinámico y servidor estático: En contenido está alojado en el disco duro
del servidor de forma estática, pero el cliente es dinámico porque las páginas
incluyen código JavaScript que se ejecuta en el navegador.
› Este código JavaScript puede realizar acciones y efectos gráficos, mostrar y
ocultar información, desplegar elementos interactivos, adaptar los contenidos,
etc…
› Cliente dinámico y servidor dinámico: Se combinan los conceptos de los dos
casos anteriores, utilizando JavaScript para efectos gráficos y
comportamientos interactivos, pero también para realizar peticiones en segundo
plano (AJAX) y aplicaciones de página única con API REST.
1.3 TECNOLOGÍAS PARA EL DESARROLLO DE APLICACIONES WEB

› JavaScript se puede utilizar para no tener que recargar completamente la página al


pulsar un enlace, realizando peticiones al servidor web en segundo plano (ocultas al
usuario). Cuando llega al navegador el resultado de la petición, el código JavaScript
actualiza solo las partes necesarias de la página.

› A esta técnica se la conoce como AJAX (Asynchronous JavaScript And XML) y


mejora mucho la experiencia de usuario ya que al realizar las peticiones el servidor
puede devolver fragmentos de HTML generados dinámicamente, recursos estáticos
en disco como imágenes, PDF, mostrar errores, cambiar colores, información
estructurada en XML o JSON, etc…
1.3 TECNOLOGÍAS PARA EL DESARROLLO DE APLICACIONES WEB

Tecnologías estándar del lado cliente


› El W3C (World Wide Web Consortium) es una comunidad internacional que
desarrolla estándares abiertos que aseguran el crecimiento de la web a largo plazo,
tales como HTML5&CSS, Scripting and AJAX, normas de accesibilidad, gráficos,
audio y vídeo, web semántica, XML y muchos más.

› HTML: (Hypertext Markup Languaje) proporciona la información estructurada en


secciones, párrafos, título, imágenes, etc… la versión actual el HTML5, y ofrece
muchas librerías avanzadas para la inserción de contenidos multimedia, canvas,
comunicaciones y concurrencia.

› CSS: (Cascading Style Sheets) se encarga de la distribución de los elementos y su


estilo con colores, tipos de letra, fondos, efectos, etc…en documentos HTML, XML,
SVG o incluso interfaces de usuario de otras tecnologías.
1.3 TECNOLOGÍAS PARA EL DESARROLLO DE APLICACIONES WEB

Tecnologías estándar del lado cliente


› Scripting: Gracias al scripting las páginas pueden programarse con distintos lenguajes de
script, aunque principalmente se utiliza JavaScript, que modifica la página gracias a su
capacidad de ejecutar código cuando se interactúa con ella.

› JavaScript inicialmente era un lenguaje interpretado pero actualmente también se


ejecuta con máquinas virtuales en los navegadores aumentando la velocidad de
ejecución y eficiencia de memoria. Es de tipado dinámico y funcionalmente orientado a
objetos (basado en prototipos).

› Existen multitud de bibliotecas (APIS) para el desarrollo web y de aplicaciones, pero las
más utilizadas son JQuery y Underscore.js.

› DOM: Es el modelo de objetos del documento (Document Object Model) y consta de una
librería (API) para manipular el documento HTML cargado en el navegador, permitiendo
la gestión de eventos, o la inserción y eliminación de elementos.
1.3 TECNOLOGÍAS PARA EL DESARROLLO DE APLICACIONES WEB

Tecnologías no estándar para desarrollo web


› Adobe Flash: Se trata de una tecnología utilizada para incrustar contenido
multimedia interactivo en páginas web que predominó durante mucho tiempo,
gratuita para el usuario pero de carácter propietario y cerrado para los
desarrolladores, que deben pagar licencia para poder usarla, motivo principal por el
que está cada vez más en desuso.

› Java Applets: Los Applets de Java fueron los precursores de Flash, pero debido a
prácticas anticompetitivas de Microsoft y de Sun Microsystems estaba más centrada
en los servidores de aplicaciones, así que también hace tiempo que se encuentra
en desuso.

› Microsoft Silverligth: Fué durante tiempo la apuesta de Microsoft para competir con
Adobe Flashs, pero el soporte era muy limitado en plataformas diferentes a
Windows.
1.3 TECNOLOGÍAS PARA EL DESARROLLO DE APLICACIONES WEB

Tecnologías de servidor
› Java EE: Es una tecnología basada en Java desarrollada por una coalición de
empresas lideradas por Oracle, IBM, Red Hat, etc… muy utilizada a nivel empresarial,
la mayoría de implementaciones y herramientas para desarrollo son software libre, y
existen comunidades de desarrolladores y empresas que realizan complementos.

› PHP: Es una tecnología con lenguaje propio, desarrollada por PHP Group y con
licencia libre. Es la tecnología de lado de servidor con la que se han implementado
más servidores en Internet, es multiplataforma y se integra normalmente con Apache
y MySQL en entornos Linux gracias a un paquete llamado LAMP.

› ASP.NET: Se trata de una versión evolucionada del ASP clásico, está integrada en la
tecnología .NET de Microsoft junto con el lenguaje C#, tiene licencia propietaria y
para plataformas Windows y una comunidad de desarrolladores má limitada que
otras alternativas.
1.3 TECNOLOGÍAS PARA EL DESARROLLO DE APLICACIONES WEB

Bases de datos
› Las bases de datos más populares y utilizadas para el desarrollo de aplicaciones
web son las bases de datos relacionales. Hay muchas bases de datos relacionales
tanto comerciales como de software libre como MySQL, Derby, Oracle, MS SQL
Server, PostgreSQL.

› Actualmente el sistema gestor de bases de datos más utilizado es MySQL, es


multiplataforma y está desarrollado en C, tiene licencia de código abierto GPL y
consta de una herramienta interactiva para hacer consultas y crear bases de datos,
en su conjunto se ha hecho muy popular en el desarrollo web.

› Las aplicaciones web tienen necesidad de escalabilidad y tolerancia a fallos, es por


esto que se está haciendo hueco una nueva familia de bases de datos denominadas
NoSQL, entre las que se encuentran Cassandra, mongoDB, riak, redis.
1.3 TECNOLOGÍAS PARA EL DESARROLLO DE APLICACIONES WEB

Sistemas gestores de contenidos


› Desde hace tiempo se imponen los sistemas de gestión de contenidos o CMS
(Content Management System), que son de aplicaciones web prediseñadas y
configuradas inicialmente para crear y administrar contenidos online.

› Los CMS utilizan conjuntamente varias de las tecnologías anteriormente descritas, y


han evolucionado para convertirse en un nuevo modelo de desarrollo de sitios web,
configurando y adaptando módulos por medio de una interfaz web.

› El sistema también permite manejar de manera independiente el diseño y el


contenido, modificando su estructura por medio de plantillas o temas.

› Existen multitud de CMS con enfoques y objetivos diferentes como Drupal (PHP),
Joomla (PHP), WordPress (PHP), Plone (JavaScript), Moodle (PHP), Liferay (Java),
PrestaShop (PHP), etc…
1.4 PLANIFICACIÓN DE APLICACIONES WEB
1.4 PLANIFICACIÓN DE APLICACIONES WEB
1.4 PLANIFICACIÓN DE APLICACIONES WEB

El Método para Creación de Sitios Web comprende las fases de:

❑ Análisis
❑ Planificación
❑ Contenido
❑ Diseño
❑ Programación
❑ Testeo
❑ Mercadeo
❑ Publicidad

Consultar el archivo en formato pdf con el nombre 1.4 PLANIFICACION DE


APLICACIONES WEB para profundizar en el tema.

También podría gustarte