Anda di halaman 1dari 8

Desarrollo de Aplicaciones Web

Unidad I. Introducción a las Aplicaciones Web..................................................................................2


Introducción a Internet..................................................................................................................2
La www como servicio de Internet.................................................................................................2
Breve historia de la www...........................................................................................................2
Estándares web..........................................................................................................................4
Fundamentos de la web.............................................................................................................4
Historia de las aplicaciones web.....................................................................................................6
Unidad II. Servidores Web..................................................................................................................8
Unidad I. Introducción a las Aplicaciones Web
Introducción a Internet
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.

Sus orígenes se remontan a 1969, cuando se estableció la primera conexión de


computadoras, conocida como ARPANET, entre tres universidades en California y una en Utah,
Estados Unidos.

El género de la palabra Internet es ambiguo, según el Diccionario de la Real Academia


Española.

La www como servicio de Internet


Uno de los servicios que más éxito ha tenido en Internet ha sido la World Wide Web
(www, o "la Web"), hasta tal punto que es habitual la confusión entre ambos términos. La www es
un conjunto de protocolos que permite, de forma sencilla, la consulta remota de archivos de
hipertexto. Esta fue un desarrollo posterior (1990) y utiliza Internet como medio de transmisión.

Existen, por tanto, muchos otros servicios y protocolos en Internet, aparte de la Web: el
envío de correo electrónico (SMTP), la transmisión de archivos (FTP y P2P), las conversaciones en
línea (IRC), la mensajería instantánea y presencia, la transmisión de contenido y comunicación
multimedia -telefonía (VoIP), televisión (IPTV)-, los boletines electrónicos (NNTP), el acceso
remoto a otras maquinas (SSH y Telnet) o los juegos en línea.

Breve historia de la www


La idea subyacente de la Web se remonta a la propuesta de Vannevar Bush en los años 40
sobre un sistema similar: a grandes rasgos, un entramado de información distribuida con una
interfaz operativa que permitía el acceso tanto a la misma como a otros artículos relevantes
determinados por claves. Este proyecto nunca fue materializado, quedando relegado al plano
teórico bajo el nombre de Memex.

Es en los años 50 cuando Ted Nelson realiza la primera referencia a un sistema de


hipertexto, donde la información es enlazada de forma libre. Pero no es hasta 1980, con un
soporte operativo tecnológico para la distribución de información en redes informáticas, cuando
Tim Berners-Lee propone ENQUIRE al CERN (refiriéndose a Enquire Within Upon Everything, en
castellano Preguntando de Todo Sobre Todo), donde se materializa la realización práctica de este
concepto de incipientes nociones de la Web.

En marzo de 1989, Tim Berners Lee, redacta la propuesta que referenciaba a ENQUIRE y
describía un sistema de gestión de información más elaborado. No hubo un bautizo oficial o un
acuñamiento del término web en esas referencias iniciales utilizándose para tal efecto el término
mesh. Sin embargo, el World Wide Web ya había nacido. Con la ayuda de Robert Cailliau, se
publicó una propuesta más formal para la World Wide Web el 12 de noviembre de 1990.
Berners-Lee usó un NeXTcube como el primer servidor web del mundo y también escribió
el primer navegador web, WorldWideWeb en 1990. En las Navidades del mismo año, Berners-Lee
había creado todas las herramientas necesarias para que una web funcionase: el primer
navegador web (el cual también era un editor web), el primer servidor web y las primeras páginas
web que al mismo tiempo describían el proyecto.

El 6 de agosto de 1991, envió un pequeño resumen del proyecto World Wide Web al
newsgroup alt.hypertext. Esta fecha también señala el debut de la web como un servicio
disponible públicamente en Internet.

El concepto, subyacente y crucial, del hipertexto tiene sus orígenes en viejos proyectos de
la década de los 60, como el Proyecto Xanadu de Ted Nelson y el sistema on-line NLS de Douglas
Engelbart. Los dos, Nelson y Engelbart, estaban a su vez inspirados por el ya citado sistema basado
en microfilm "Memex", de Vannevar Bush.

El gran avance de Berners-Lee fue unir hipertexto e Internet. En su libro Weaving the Web
(en castellano, Tejiendo la Red), explica que él había sugerido repetidamente que la unión entre
las dos tecnologías era posible para miembros de las dos comunidades tecnológicas, pero como
nadie aceptó su invitación, decidió, finalmente, hacer frente al proyecto él mismo. En el proceso,
desarrolló un sistema de identificadores únicos globales para los recursos web y también: el
Uniform Resource Identifier.

World Wide Web tenía algunas diferencias de los otros sistemas de hipertexto que
estaban disponibles en aquel momento:

WWW sólo requería enlaces unidireccionales en vez de los bidireccionales. Esto hacía
posible que una persona enlazara a otro recurso sin necesidad de ninguna acción del propietario
de ese recurso. Con ello se reducía significativamente la dificultad de implementar servidores web
y navegadores (en comparación con los sistemas anteriores), pero en cambio presentaba el
problema crónico de los enlaces rotos.

A diferencia de sus predecesores, como HyperCard, World Wide Web era no-propietario,
haciendo posible desarrollar servidores y clientes independientemente y añadir extensiones sin
restricciones de licencia.

El 30 de abril de 1993, el CERN anunció que la web sería gratuita para todos, sin ningún
tipo de honorarios.

ViolaWWW fue un navegador bastante popular en los comienzos de la web que estaba
basado en el concepto de la herramienta hipertextual de software de Mac denominada
HyperCard. Sin embargo, los investigadores generalmente están de acuerdo en que el punto de
inflexión de la World Wide Web comenzó con la introducción del navegador web Mosaic en 1993,
un navegador gráfico desarrollado por un equipo del NCSA en la Universidad de Illinois en Urbana-
Champaign (NCSA-UIUC), dirigido por Marc Andreessen. Funding para Mosaic vino del High-
Performance Computing and Communications Initiative, un programa de fondos iniciado por el
entonces gobernador Al Gore High Performance Computing and Communication Act of 1991,
también conocida como la Gore Bill. Antes del lanzamiento de Mosaic, las páginas web no
integraban un amplio entorno gráfico y su popularidad fue menor que otros protocolos anteriores
ya en uso sobre Internet, como el protocolo Gopher y WAIS. La interfaz gráfica de usuario de
Mosaic permitió a la WWW convertirse en el protocolo de Internet más popular de una manera
fulgurante.

Estándares web
Destacamos los siguientes estándares:

 el Identificador de Recurso Uniforme (URI), que es un sistema universal para referenciar


recursos en la Web, como páginas web,
 el Protocolo de Transferencia de Hipertexto (HTTP), que especifica cómo se comunican el
navegador y el servidor entre ellos,
 el Lenguaje de Marcado de Hipertexto (HTML), usado para definir la estructura y
contenido de documentos de hipertexto,
 el Lenguaje de Marcado Extensible (XML), usado para describir la estructura de los
documentos de texto.

Berners Lee dirige desde 2007 el World Wide Web Consortium (W3C), el cual desarrolla y
mantiene esos y otros estándares que permiten a los ordenadores de la Web almacenar y
comunicar efectivamente diferentes formas de información.

Fundamentos de la web
El éxito de la web se basa en dos factores fundamentales: el protocolo HTTP y el lenguaje
HTML. El primero permite una implementación sencilla de un sistema de comunicaciones que
permite enviar cualquier archivo de forma fácil, simplificando el funcionamiento del servidor y
posibilitando que servidores poco potentes atiendan cientos o miles de peticiones y reduzcan de
este modo los costes de despliegue. El segundo, el lenguaje HTML, proporciona un mecanismo
sencillo y muy eficiente de creación de páginas enlazadas.

El protocolo HTTP (Hypertext Tranfer Protocol) es el protocolo principal de la World Wide


Web. Es un protocolo simple, orientado a conexión y sin estado. Está orientado a conexión porque
emplea para su funcionamiento un protocolo de comunicaciones (TCP, o Transport Control
Protocol) de modo conectado, que establece un canal de comunicaciones entre el cliente y el
servidor, por el cual pasan los bytes que constituyen los datos de la transferencia, en
contraposición a los protocolos denominados de datagrama (o no orientados a conexión) que
dividen la serie de datos en pequeños paquetes (o datagramas) antes de enviarlos, pudiendo llegar
por diversas vías del servidor al cliente. Este protocolo no mantiene estado o, dicho de otro modo,
cada transferencia de datos es una conexión diferente a la anterior, sin relación entre ellas. Por
ejemplo, para transferir una página web debemos enviar el código HTML del texto, por un lado, y
las imágenes que la componen por otro, pues en la especificación inicial 1.0 del protocolo HTTP se
abrían y utilizaban tantas conexiones como componentes tenía la página, trasfiriendo cada
componente por conexiones diferentes .
Existe una variante de HTTP denominada HTTPS (S significa "secure", o "seguro") que
utiliza el protocolo de seguridad SSL (o "Secure Socket Layer") para cifrar y autenticar el tráfico de
datos, muy utilizada por los servidores web orientados al comercio electrónico o por aquellos que
albergan información de tipo personal o confidencial. De forma esquemática, el funcionamiento
de HTTP es como sigue: el cliente establece una conexión TCP con el servidor, hacia el puerto por
defecto para el protocolo HTTP (o el indicado expresamente en la conexión), envía una orden
HTTP de solicitud de un recurso (añadiendo algunas cabeceras con información) y, utilizando la
misma conexión, el servidor responde enviando los datos solicitados y, además, añadiendo
algunas cabeceras con información.

El protocolo también define la forma de codificar el paso de parámetros entre dos páginas,
la tunelización de las conexiones (para sistemas de firewall), define la posible existencia de
servidores intermedios de caché, etc. Las directivas que se utilizan para la petición de información
según se definen en HTTP 1.1 (la versión considerada estable y ampliamente utilizada) son:

GET: Petición de un recurso.


POST: Petición de un recurso enviando parámetros.
HEAD: Petición de algunos datos sobre un recurso.
PUT: Creación o envío de un recurso.
DELETE: Borrado de un recurso.
TRACE: Devolución de la petición a su origen tal como la había recibido el receptor, para la
depuración de errores.
OPTIONS: Comprueba la capacidad del servidor.
CONNECT: Se reserva para su uso en servidores intermedios con capacidad para funcionar
como túneles entre otros servidores.

Se debe destacar que todos los recursos servidos mediante HTTP deberán ser
referenciados utilizando una URL ("Universal Resource Locators").

Las peticiones en HTTP se pueden realizar utilizando 2 métodos. El método GET, cuando
envía parámetros con la petición, lo hace codificándolos en la URL. El método POST lo hace como
parte del cuerpo de la petición.

Una petición HTTP puede contener parámetros, por ejemplo, como respuesta a un
formulario de registro o a una selección de entre los productos en una tienda virtual. Tales
parámetros pueden pasarse de 2 formas:

Formando parte de la propia cadena de la petición, codificados como parte de la misma


URL.
Como datos añadidos a la petición.

Para codificar los parámetros como parte incluida en la URL, éstos deben añadirse a la URL
detrás del nombre del recurso, separándolos de éste mediante el carácter "?". Los parámetros se
separan entre sí mediante el carácter "&". Los espacios se sustituyen por el carácter "+". Los
caracteres especiales (los mencionados antes de "&", "+" y "?", y los caracteres que no son
imprimibles, etc.) se representan mediante "%xx", donde "xx" representa el código en codificación
ASCII en hexadecimal del carácter en cuestión.

El otro factor principal del éxito del World Wide Web ha sido el lenguaje HTML ("Hypertext
Mark-up Language", o "Lenguaje de Marcado de Hipertexto"), que es un lenguaje de marcas (se
insertan marcas o etiquetas en el texto) que permite representar de forma rica el contenido y
referenciar otros recursos (por ejemplo, imágenes), o enlaces a otros documentos (que es,
precisamente, la característica más destacada de la web), mostrar formularios para su posterior
procesamiento, etc.

El lenguaje HTML se encuentra en la actualidad en la versión 4.01 y empieza a


proporcionar algunas funcionalidades más avanzadas. Se ha definido una especificación
compatible con HTML, llamada XHTML ("Extensible Hypertext Markup Language" o "Lenguaje
Extensible de Marcado de Hipertexto") que se define a menudo como una versión XML validable
de HTML, que proporciona un "XML Schema" contra el cual es posible validar el documento con el
objeto de comprobar si está bien formado.

Historia de las aplicaciones web


En un principio la web era sencillamente una colección de páginas estáticas, documentos,
etc., para su consulta o descarga. El paso inmediatamente posterior en su evolución fue la
inclusión de un método para elaborar paginas dinámicas que permitieran que lo mostrado tuviese
carácter dinámico (es decir, generado a partir de los datos de la petición). Este método fue
conocido como CGI ("Common Gateway Interface") y definía un mecanismo mediante el que se
podía pasar información entre el servidor y ciertos programas externos. Los CGIs siguen
utilizándose ampliamente; la mayoría de los servidores web permiten su uso debido a su sencillez.
Además, dan total libertad para elegir el lenguaje de programación que se desea emplear.

El funcionamiento de los CGIs tenía un punto débil: cada vez que se recibía una petición, el
servidor debía lanzar un proceso para ejecutar el programa CGI. Como la mayoría de CGIs estaban
escritos en lenguajes interpretados, como Perl o Python, o en lenguajes que requerían "run-time
environment", como Java o Visual Basic, el servidor se veía sometido a una gran carga. La
concurrencia de múltiples accesos al CGI podía ocasionar problemas graves.

Por eso se empezaron a desarrollar alternativas a los CGIs que solucionaran el problema
del rendimiento. Las soluciones llegan básicamente por 2 vías: 1) se diseñan sistemas de ejecución
de módulos mejor integrados con el servidor, que evitan la instanciación y ejecución de varios
programas, y 2) se dota a los servidores un intérprete de algún lenguaje de programación que
permita incluir el código en las páginas de forma que lo ejecute el servidor, reduciendo el intervalo
de respuesta.

Entonces se experimenta un aumento del número de arquitecturas y lenguajes que


permiten desarrollar aplicaciones web. Todas siguen alguna de estas vías. Las más útiles y las más
utilizadas son las que permiten mezclar los 2 sistemas: un lenguaje integrado que permita al
servidor interpretar comandos "incrustados" en las páginas HTML y, además, un sistema de
ejecución de programas mejor enlazado con el servidor, que no implique los problemas de
rendimiento propios de los CGIs.

Una de las más potentes es la seguida por Sun Microsystems con su Java, integrado por 2
componentes; un lenguaje que permite la incrustación de código en las paginas HTML que el
servidor convierte en programas ejecutables, JSP ("Java Server Pages" o "Paginas de Servidor de
Java"), y un método de programación muy ligado al servidor, con un rendimiento superior a los
CGIs, denominado "Java Servlet".

Otra tecnología de éxito y una de las más utilizadas es el lenguaje PHP. Se trata de un
lenguaje interpretado que permite la incrustación de HTML en los programas, con una sintaxis
derivada de C y Perl. El hecho de ser sencillo y potente ha contribuido a hacer de PHP una
herramienta muy apropiada para determinados desarrollos.

Tareas
Crear una aplicación ASP. Net en donde se ocupen 2 páginas y una página maestra (la
misma para las dos páginas). La página maestra deberá contener una sección para el título de la
aplicación (tema), una sección para el menú y una sección para visualizar los contenidos (páginas).
El tema de la aplicación será sobre el servicio social de los alumnos del 8° semestre de L.I. En la
primera página se deberá dar de alta la siguiente información: clave del alumno, nombre completo
del alumno, lugar en donde realiza/realizó el servicio social, y labores realizadas. Para esto último,
se deberá crear una base de datos llamada Servicio_TuNombre. Tú definirás el nombre de la tabla,
nombres y tipos de datos de los campos. La segunda página deberá implementar un objeto
GridView para visualizar el contenido de la única tabla de la base de datos. Todas las páginas
deberán estar estandarizadas.

Práctica
Crear una aplicación web ASP.Net en donde se ocupen 3 páginas y una página maestra (la
misma para las tres páginas). La página maestra deberá contener una sección para el título de la
aplicación (tema), una sección para el menú y una sección para visualizar los contenidos (páginas).
El tema de la aplicación será describir la comunidad en donde vives. La primera página deberá
contener la descripción de la comunidad, la cual no deberá ser menor a una cuartilla de un
documento de Word (fuente calibri de tamaño 12). La segunda página deberá contener una
galería de imágenes (no menor a 10 imágenes). La tercera página deberá contener una tabla de
enlaces externos (mínimo 10) relacionados con tu comunidad. Todas las páginas deberán estar
estandarizadas.
Unidad II. Servidores Web

Tarea para Evaluación de la Unidad II.

El Instituto Tecnológico Superior de Zacapoaxtla requiere un sitio web para la


administración de la bolsa de trabajo para los alumnos egresados. Se requiere que los alumnos
tengan sus propias cuentas de usuario dentro del sitio. Los alumnos podrán crear sus propias
cuentas en el caso de que no tengan una, además de poder actualizar las cuentas existentes.

El sitio deberá tener una sección en donde se ofrezcan empleos y el perfil de la persona
que podría ocupar el empleo ofrecido. Ahí mismo se deberá presentar la lista de candidatos para
cada uno de esos empleos.

También se deberá tener una sección para agregar, actualizar o modificar los empleos
ofrecidos en el sitio. Se deberá indicar el estatus de cada empleo: disponible, no disponible,
ocupado. Esto sólo podrá hacerlo el administrador del sitio. El alumno sólo podrá agregarse a sí
mismo como candidato a un empleo.

El proyecto deberá ser elaborado individualmente o en equipos de 2 a 5 personas


empleando ASP.Net y SQL Server, para ser entregado el día 6 de mayo.

Los datos a tomar en cuenta para el alumno son: Clave, Nombre, Apellidos, Carrera,
Semestre, Promedio General, Currículo Resumido.

Posteriormente, el sitio deberá ser publicado en una intranet.

Anda mungkin juga menyukai