0. antecedentes asp

40
DIPLOMADO DESARROLLO DE APLICACIONES EN PLATAFORMA .NET Instructor: Gerardo Gálvez Gámez Mayo-Junio 2008 Informá tica UNIVERSIDAD AUTÓNOMA DE SINALOA

Upload: ruben-marquez

Post on 22-Jan-2015

1.325 views

Category:

Technology


1 download

DESCRIPTION

Breve historia sobre los antecedentes de ASP.NET

TRANSCRIPT

Page 1: 0. Antecedentes Asp

DIPLOMADODESARROLLO DE APLICACIONES EN

PLATAFORMA .NET

Instructor: Gerardo Gálvez GámezMayo-Junio 2008

Informática

UNIVERSIDAD AUTÓNOMA DE SINALOA

Page 2: 0. Antecedentes Asp

ASP .NET

DESARROLLO DE APLICACIONES PARA INTERNET (WEB)

Page 3: 0. Antecedentes Asp

Temas

ASP.NET Breve historia de la programación Web Programación ASP en plataforma .NET Instalación del equipo de cómputo El servidor Web

Page 4: 0. Antecedentes Asp

Objetivo

Proporcionar al alumno de conocimientos teóricos y prácticos, para que le permitan el desarrollo de habilidades en la construcción de aplicaciones Web (Programación por Capas), utilizando la plataforma .NET de Microsoft.

Se enseñará detalladamente al alumno la arquitectura de la plataforma .NET y cómo crear aplicaciones .NET con C#. Entre ellas, se prestará una especial atención a la creación de aplicaciones Web con ASP .NET, una tecnología destinada a cambiar muy positivamente la forma de realización de sitios Web dinámicos.

Page 5: 0. Antecedentes Asp

El curso culminará

Con la creación del proyecto indicado por el instructor, donde el alumno podrá aplicar a un caso práctico todos los conocimientos adquiridos.

Page 6: 0. Antecedentes Asp

El alumno deberá conocer dos áreas distintas:

HTML: Otros lenguajes de programación informan al usuario a través de ventanas. ASP .NET lo hace por medio de HTML, de páginas Web, de modo que para poder realizar este curso es necesario conocer este lenguaje, no en profundidad, pero sí los rudimentos básicos (estructura, formato de texto, tablas, etc.).

Programación: Deberá conocer la base de la metodología de la programación.

Page 7: 0. Antecedentes Asp

ASP.NET

La tecnología ASP .NET es la nueva apuesta de Microsoft para la creación de páginas Web dinámicas.

Sustituye a su predecesor ASP, en el intento de desbancar a PHP como lenguaje estrella para la creación de sitios dinámicos.

ASP .NET es la nueva versión de la tecnología de Microsoft para la creación dinámica de páginas Web, conocida como ASP (Active Server Pages).

Page 8: 0. Antecedentes Asp

Breve historia de la programación Web

Page 9: 0. Antecedentes Asp

La WWW estática

La base del éxito del fenómeno que es hoy en día Internet se encuentra en:

El sistema de intercambio de información conocido como:

WWW (World Wide Web),

Permite a sus usuarios acceder a documentos con los que pueden interactuar y que aparte de texto pueden incluir toda clase de contenido multimedia:

imágenes, vídeo, sonidos, etc.

Page 10: 0. Antecedentes Asp

Su origen

se remonta al año 1989,

Cuando: Tim Berners-Lee, investigador de los laboratorios

suizos del CERN (Conseil Europeen pour le Recherche Nucleaire) desarrolló un sistema de intercambio de datos científicos entre los investigadores, basado en el uso de documentos de texto llamados:

páginas web - enlazados entre sí por hipervínculos y escritos en un subconjunto sencillo del complejo lenguaje SGML (Standard Generalized Markup Language) llamado :

HTML (HyperText Markup Language).

Page 11: 0. Antecedentes Asp

Hipervínculos

Son secciones especiales en los documentos con las que los usuarios podían interactuar típicamente pulsando sobre ellos con el teclado o el ratón - para ir saltando de unos documentos a otros.

Page 12: 0. Antecedentes Asp

Historia de la Web (continuación)

Poco podía imaginarse entonces que HTML, iba a terminar popularizándose y tener el tremendo éxito que ha alcanzado hoy en día.

Fue necesario también ir mejorando el lenguaje HTML inicial para incluir funcionalidades que sus usuarios iban demandando, como la capacidad de mostrar contenido multimedia.

Page 13: 0. Antecedentes Asp

Historia de la Web (continuación)

Esto fue dando lugar a la aparición de sucesivas versiones del lenguaje cada vez más potentes hasta llegarse a su actual versión:

4.01; o a XHTML 1.0

Que es el resultado de reescribirlo siguiendo las reglas del lenguaje estándar de marcas conocido como:

XML (eXtensible Markup Language)

Page 14: 0. Antecedentes Asp

La principal debilidad

Consistía en que las páginas HTML eran:

Simples ficheros colocados en un servidor Web que se las enviaba a sus clientes tal cual, sin ninguna posibilidad de interacción con los mismos; excepto, claro está, la utilización de sus hipervínculos - y forzando a que cualquier actualización de ellos tuviese que ser realizada editando su contenido en el servidor.

Page 15: 0. Antecedentes Asp

Historia de la Web (continuación)

A medida que fue creciendo la red y utilizándose profesionalmente como vehículo con el que realizar operaciones de comercio electrónico, fue volviéndose inadmisible y se empezaron a pedir mayores posibilidades de interacción que permitiesen realizar aplicaciones Web con capacidades similares a las de las aplicaciones tradicionales, así como mecanismos con que actualizar programáticamente su contenido.

Page 16: 0. Antecedentes Asp

Historia de la Web (continuación)

Por lo anterior, a lo largo de las diferentes revisiones que se fueron haciendo de HTML, se fue introduciendo en el lenguaje y en el funcionamiento de los servidores Web diferentes mecanismos destinados a permitir la modificación y generación dinámica del contenido de las páginas Web.

Page 17: 0. Antecedentes Asp

Tecnologías en el lado cliente

Una forma de conseguir aumentar el dinamismo de los sitios Web consistió:

Dotar al lenguaje HTML de la capacidad de poder incluir scripts de código escritos en diversos lenguajes como:

Javascript VBScript

que los navegadores interpretarían para, a través de ellos, modificar el aspecto de las páginas e interactuar con el navegador, denominado:

como DHTML

Page 18: 0. Antecedentes Asp

Tecnologías en el lado cliente

DHTML (Dynamic HTML) forma parte de las denominadas tecnologías en el lado del cliente, pues requiere de un soporte directo por parte del navegador del cliente.

Ahí es precisamente donde radica su principal problema.

Page 19: 0. Antecedentes Asp

Tecnologías en el lado cliente

Los fabricantes de navegadores nunca han llegado a un acuerdo a la hora de implementar esto, y cada uno soporta tanto diferentes lenguajes de scripts como diversas capacidades dentro de un mismo lenguaje, lo que hace que sea difícil la creación y mantenimiento de páginas DHTML compatibles con los navegadores más utilizados (léase Internet Explorer y Netscape Navigator).

Page 20: 0. Antecedentes Asp

Tecnologías en el lado servidor

Es Otra alternativa mucho más compatible ,que se basan en la ejecución de código en el servidor que se encargue de generar dinámicamente el contenido (páginas Web, imágenes o cualquier otro tipo de información binaria) a enviar a cada cliente.

se realiza de forma completamente transparente al cliente, quien recibe los contenidos tal como si fuesen ficheros estáticos almacenados en el servidor, por lo que no necesita ninguna clase de soporte especial para tratarlos.

Page 21: 0. Antecedentes Asp

Tecnologías en el lado servidor

Problema: Esta opción provoca un aumento en la carga de

trabajo del servidor.

Justificación: El alto nivel de compatibilidad que proporciona está

haciendo que se convierta en la tendencia actual en el desarrollo de aplicaciones Web, sobre todo debido a la proliferación de todo tipo de dispositivos con acceso a Internet (teléfonos móviles, agendas electrónicas, etc.) y con capacidades de visualización y procesamiento muy heterogéneas, cuyos navegadores suelen ser muy simples y no admitir scripts.

Page 22: 0. Antecedentes Asp

Tecnologías en el lado servidor

El primer tipo de tecnología surgida en el lado del servidor fue:

La posibilidad de que los servidores Web pudiesen interactuar con ejecutables escritos en prácticamente cualquier lenguaje de programación:

Los más usados para estos menesteres: C, Python y Perl

Que siguiesen una serie de reglas conocidas como: Interfaz CGI (Common Gateway Interface).

Page 23: 0. Antecedentes Asp

Tecnologías en el lado servidor

En ellas se define cómo les pasaría el servidor la información (mediante la línea de comandos y ciertas variables de entorno) y cómo proporcionaría al servidor el contenido a enviar al cliente (mediante su salida estándar.

Por ejemplo, en C esto se traduciría en usar printfs). Su gran problema es que cada vez que llegue una nueva petición CGI al servidor, éste tendrá que lanzar un nuevo ejecutable para tratarla y descargarlo de memoria tras ello, lo que resulta un proceso muy costoso y que tiende a degradar mucho el rendimiento y la escalabilidad de la aplicación Web.

Page 24: 0. Antecedentes Asp

Tecnologías en el lado servidor

Como solución a este problema se inició la tendencia de sustituir los programas CGIs por:

Librerías que el servidor enlazase dinámicamente en su mismo espacio de memoria (DLLs).

Cuyos tiempos de carga y ejecución serán muy inferiores que los de programas que se ejecutan en espacios de memoria independientes, no siendo además necesaria descargarlas tras atender a cada cliente.

Page 25: 0. Antecedentes Asp

Tecnologías en el lado servidor

Entre este tipo de tecnologías destaca la llamada:

ISAPI (Information Server Application Program Interface) de Microsoft,

Admitida por:

su servidor IIS (Internet Information Server) y por servidores de otras empresas.

Sin embargo, la implementación de estas librerías tiene el problema de ser relativamente complicada, requiriendo de personal especialmente cualificado para ello.

Page 26: 0. Antecedentes Asp

Tecnologías en el lado servidor Como alternativa:

Muchas empresas empezaron a ofrecer sus propias soluciones con las que facilitar el desarrollo de sitios Web con contenido dinámico, como:

JSP, ColdFusion, PHP o JTHML.

Entre ellas destaca:

ASP (Active Server Pages),

Que es la proporcionada por Microsoft a partir de la versión 3.0 de su servidor Web IIS y posteriormente actualizada en las sucesivas versiones del mismo hasta llegarse a ASP 3.0 en IIS 5.0.

Page 27: 0. Antecedentes Asp

Tecnologías en el lado servidor

Sin duda, esta solución es una de las que más éxito ha alcanzado entre la competencia debido a factores tales como:

su facilidad de aprendizaje e instalación, sus reducidos requisitos de hardware, el excelente soporte tanto técnico como bibliográfico

proporcionado por Microsoft, los entornos de desarrollo potentes y cómodos con

los que cuenta y su fácil integración con el resto de productos de

Microsoft.

Page 28: 0. Antecedentes Asp

Programación Web con ASP .NET

Page 29: 0. Antecedentes Asp

La plataforma .NET

Se presentó durante la conferencia llamada PDC (Professional Developers Conference) celebrada por Microsoft en Orlando en Julio de 2000.

Nuevo entorno de programación especialmente diseñado para la creación de aplicaciones y de servicios Web.

Supone un cambio tan grande en el modo de programar como en su día lo fue la transición desde MS-DOS a Windows.

Page 30: 0. Antecedentes Asp

La plataforma .NET

Ahora el programador:

1. No trabaja directamente contra un sistema operativo concreto como Windows,

2. Lo hace frente a una máquina virtual (el CLR o Common Language Runtime) que:

1. Le ofrece los servicios que antes le proporcionaba el sistema operativo de forma:

1. más simplificada y

2. adecuada a los tiempos actual.

Page 31: 0. Antecedentes Asp

La plataforma .NET

Por tanto:

1. .NET se presenta como el principal competidor de J2EE, la plataforma de Sun basada en Java, cuya principal aportación ha sido la de crear un entorno común desde el que crear tanto aplicaciones tradicionales como aplicaciones Web.

Page 32: 0. Antecedentes Asp

Características de la plataforma .NET

Basados en los servicios que proporciona el CLR:

Sencillo modelo de programación Tratamiento homogéneo de errores mediante

excepciones Desarrollo interlenguaje Ejecución multiplataforma Gestión automática de memoria con recolección de

basura Aislamiento de procesos Soporte multihilo Seguridad avanzada basada en el usuario y la

procedencia del código Interoperabilidad con código antiguo

Page 33: 0. Antecedentes Asp

El lenguaje C# Se han adaptado a .NET la inmensa mayoría de lenguajes de programación

existentes, como:

C++, JScript, Visual Basic, Java, Eiffel, Cobol, Perl, Python, Fortran, Pascal, Smalltalk, etc.

Sin embargo, Microsoft también ha creado un nuevo lenguaje llamado C# especialmente recomendado para la programación de las aplicaciones .NET y al que se suele bautizar como el lenguaje estrella de .NET.

Page 34: 0. Antecedentes Asp

ASP .NET

Como parte de la plataforma .NET se incluye una nueva versión de la tecnología en el lado cliente de Microsoft denominada ASP .NET.

Ésta ofrece unas muy sustanciales mejoras frente a su predecesora ASP 3.0, entre las que cabe destacar:

Compilación Programación multilenguaje Separación lógica-presentación Programación visual

Page 35: 0. Antecedentes Asp

Compilación

En las páginas ASP tradicionales se consigue el dinamismo mediante la inserción de código escrito en lenguajes de script como:

JScript o VBScript

que se encarga de generar el contenido Web, a enviar al cliente.

Sin embargo, este código es interpretado por el servidor por cada petición que reciba, lo que es un proceso lento.

En ASP .NET, para mejorar el rendimiento se opta por compilarlo la primera vez que algún cliente lo pida, y así el resto de peticiones del mismo se atenderán más rápido

Page 36: 0. Antecedentes Asp

Programación multilenguaje

En ASP. NET el programador ya no se encuentra restringido a la utilización de VBScript o JScript para programar las páginas ASP.

Puede utilizar cualquiera admitido por la plataforma .NET, lo que incluye un gran abanico de lenguajes como:

C#, Visual Basic.NET, JScript.NET, COBOL.NET y otros.

Page 37: 0. Antecedentes Asp

Programación multilenguaje

Esto significa que en un proyecto .NET puede escribirse cada clase en cualquiera de los diferentes lenguajes que se han adaptado para funcionar en .NET y la integración entre las clases escritas en los diversos lenguajes se hará perfecta y transparentemente, siendo incluso posible definir en cualquier lenguaje clases derivadas de clases escritas en cualquiera otro lenguaje..

Page 38: 0. Antecedentes Asp

Separación lógica-presentación Los desarrolladores siempre se ha quejado de que el código

ASP carece de estructuración, mezclando indiscriminadamente HTML con código en lenguajes de script a ejecutar en el servidor.

Esto daba lugar al fenómeno conocido como “código espagueti”, que resulta en páginas ASP muy difíciles de leer y mantener que en cierto sentido incluso pueden recordar a los primeros tiempos del lenguaje BASIC en los que se carecía de cualquier tipo de estructuración.

ASP .NET soluciona esto mediante una técnica denominada Codebehind

, con la que pueden separarse en ficheros independientes la presentación y el código de las páginas.

Page 39: 0. Antecedentes Asp

Programación visual

La arquitectura de ASP.NET se ha diseñado de manera que el desarrollo de las interfaces de las aplicaciones Web sea análogo a la forma en que se hace en las aplicaciones de ventanas estándar, representándose cada uno de sus controles (botones, casillas, listas, etc.) como objetos que programáticamente se pueden manipular análogamente a como se hace en librerías de ventanas orientadas a objetos (MFC de Microsoft para C++, o Swing de Java, etc.).

Esto además permite que con herramientas de desarrollo visuales, diseñarlas sea tan fácil como arrastrar los componentes necesarios sobre la superficie de la página y hacer doble clic sobre cada uno para escribir la lógica de respuesta a los eventos que puedan producirse sobre ellos (pulsación de botones, selección de elementos en listas, etc.), de forma parecida a como se hace en entornos RAD (Rapid Application Development) como Visual Basic o Delphi.

Page 40: 0. Antecedentes Asp

FIN