| por david flores zafra |
DESARROLLANDO APLICACIONES WEB CON ASP .NET
INTRODUCCIÓN A ASP.NET
OBJETIVOS DEL CAPÍTULO:
Después de completar este capítulo Ud. estará en condición de:
1.Comprender la filosofía que ASP .NET propone para el desarrollo de aplicaciones web.
2.Comprender y aprovechar las ventajas que proporciona el .NET Framework, así como el entorno de Visual Studio .NET para el desarrollo de aplicaciones web.
INTRODUCCIÓN
ASP .NET es un marco (framework) de programación que ha sido construido sobre el .NET Framework y que nos permitirá construir aplicaciones web de gran performance y a nivel empresarial. Esto se logra gracias al aprovechamiento que hace de otras tecnologías constituyentes del Framework: XML y ADO .NET principalmente. ASP .NET no es, entonces, una nueva versión de ASP, sino una nueva filosofía de programación a la que apuesta Microsoft con Visual Studio .NET.
¿POR QUÉ CAMBIAR?
ASP se lanzó como una alternativa flexible para el desarrollo Web, que fue ganando aceptación rápidamente. Sin embargo, sincerémonos, tenía varios puntos en contra con relación a sus competidores más cercanos:
1) ES UN LENGUAJE DE SCRIPTS: es decir, básicamente interpretado y con dos sabores para escoger un lenguaje: VBScript o JavaScript. El problema con esto también viene en dos sabores: no existen tipos (como en Visual Basic o C++) y el código no se compila. Estos factores conllevan a una pérdida de performance y poca escalabilidad (a menos que usemos componentes).
2) CÓDIGO MUY EXTENSO: por más simple que sea una tarea, esta muchas veces requiere de varias líneas de código, dando como resultado un pequeño engendro viviendo en nuestra página. Código poco legible y difícil de mantener que llevó al uso de los archivos de inclusión como una solución salvadora.
3) PRESENTACIÓN Y LÓGICA UNIDOS: ¿Qué desarrollador de ASP no ha pasado por el suplicio al trabajar en equipo, que un colega (léase diseñador gráfico) ha “modificado” o “borrado” accidentalmente parte de su código? ¿Cuánto tiempo perdido buscando la manera de no estropear el trabajo del otro y lograr un resultado consistente y coordinado?
4) INCOMPATIBILIDAD DE BROWSERS / DISPOSITIVOS: el mundo actual necesita de soluciones multi-browser, multi-dispositivo, multi-plataforma (y mientras más multis mejor). Parece difícil lograr un producto que sirva para todos, sin embargo, ¿acaso no se podrían aprovechar los estándares existentes (entre ellos XML como el más reconocido)?
5) ¿DEBO SEGUIR?
¿QUÉ HA CAMBIADO?
Digamos que explicar en uno o dos párrafos los cambios que trae ASP .NET es una empresa poco menos que imposible, así que resumamos: ASP .NET mejora muchas de las cosas que ya sabíamos hacer con ASP e incluye muchas novedades (y ojo que cuando menciono mejoras, son ¡REALMENTE MEJORAS!)
En este material se buscará una explicación lo más detallada posible sobre los puntos básicos de ASP .NET tomando como premisa que el lector no conoce nada de ASP. Ahora bien, para los que conocen les sugirió de todas formas tomarse la molestia de leer los temas “conocidos” ya que encontraran muchas novedades y datos interesantes, “cómo” deben hacer ahora las cosas que ya sabían hacer.
ASP vs. ASP.NET
Tranquilos desarrolladores ASP, ASP .NET permite combinar en una aplicación web páginas con extensión .ASP y .ASPX. Además, el tiempo invertido en aprender ASP les servirá pues, como se indicó anteriormente, existen características que no han cambiado.
BENEFICIOS
ASP .NET trae un paquete interesante de ventajas para nosotros los sufridos desarrolladores:
A) CÓDIGO MÁS LIMPIO. Ahora la programación se realiza en un archivo separado al que aloja la presentación. Estos archivos de código son conocidos como “code-behind” y tienen la extensión .aspx.vb. Ahora bien, si Ud. lo desea ASP .NET aún permite la creación de páginas con todo mezclado. Esto permitirá sin duda la transición suave para los que desarrollan con ASP, aunque, si este no es su caso, le rogamos evitar esta opción en lo posible.
B) SOPORTE PARA MÚLTIPLES LENGUAJES. Ya que ASP .NET esta construido bajo el .NET Framework permite el uso de múltiples lenguajes como VB .NET, C#, JScript y C++. Ahora bien, esto lleva consigo otras ventajas adicionales como el hecho de disponer por fin de lenguajes compilados (más que interpretados) y con una capacidad muy superior a lo que uno tenía acceso antes (si ya conoce VB .NET debe entender esto fácilmente).
C) PROCESAMIENTO EN EL SERVIDOR. ASP nos tenía acostumbrados a la ejecución secuencial (arriba-abajo) del código. ASP .NET propone al desarrollador la programación al estilo “Visual Basic”, esto es, definición de la interfaz y luego realización del código. Para esto ingresa a nuestro mundo el concepto de controles que corren en el servidor. Así tenemos que, si en ASP un control de tipo texto se definía de la siguiente manera:
Ahora deberá escribir lo siguiente:
¿Notó los cambios? Disculpe si la pregunta fue ofensiva, estoy seguro que si:
· Los controles ahora se identifican por ID, como en DHTML.
· El atributo runat permite indicar que el control correrá en el servidor.
D) SOPORTE PARA MÚLTIPLES BROWSERS Y DISPOSITIVOS. En ASP .NET existen 2 tipos de controles de servidor: HTML server (el que se mostró en el ejemplo anterior) y Web server:
Este último es mucho más “inteligente” ya que puede generar su propio código HTML, el cual puede variar dependiendo del browser que tenga el cliente. Sí, es cierto, pellízquese si es necesario, atrás quedan entonces los clásicos códigos para verificar el tipo de browser y en base a este ejecutar uno u otro código.
Más sobre estos controles en la siguiente sección.
ASP .NET WEB FORMS
Un web form es un archivo con la extensión .aspx, que contiene una combinación de HTML, controles y código que se ejecuta sobre un servidor ejecutando Internet Information Services (IIS). Muestran al cliente una UI generada con HTML específico que se envía al browser del que navega, mientras los controles y código se ejecutan en el servidor. Esta división entre interfaz de usuario y código es una diferencia importante con relación a las páginas ASP tradicionales, la cual permite mayor seguridad, funcionalidad y soporte para múltiples browsers.
Los web forms también son conocidos como páginas ASP .NET o páginas .aspx. Esta extensión hace la diferencia con sus antecesoras, lo cual posibilita la integración de páginas .asp y .aspx en una misma aplicación web.
ATRIBUTOS DE PÁGINA, BODY Y FORMULARIO
Los web forms pueden tener atributos, los cuales pueden definirse en 3 niveles distintos:
A) PAGE: Indica valores que serán usados por el parser y el compilador. Se incluyen dentro de la etiqueta <@Page>, la cual puede incluirse solo una vez por web form:
Atributo
|
Significado
|
Language
|
Define el lenguaje en el cual el script esta escrito. Pueden usarse: vb, csharp y JScript.
|
Codebehind
|
Identifica la página que tiene el código (lógica) asociada al web form. Esta página se crea en forma automática cuando se agrega un web form.
|
SmartNavigation
|
False por defecto. Cuando vale True indica al browser que refresque sólo las secciones del web form que han cambiado. Esto evita el efecto de parpadeo que ocurre al refrescar una página. Sólo funciona con IE 5.0 o superior.
|
AutoEventWireUp
|
False por defecto. Este atributo permite que el nombre del procedimiento de evento pueda ser diferente al nombre del evento que maneja. Es decir, podemos tener procedimiento llamado “MiCodigo” el cual responda al evento txtBasico.Click. Esto rompe con la costumbre VB6 de tener un procedimiento con un nombre asociado al evento. Se recomienda no cambiar el valor por defecto.
|
Inherits
|
Indica el nombre de la clase de la cual hereda el código. Esta clase esta definida en la página code-behind y se crea en forma automática. Si Ud. crea una aplicación llamada MiWeb y agrega una página Login.aspx el nombre de la clase será MiWeb.Login ya que la clase se crea con el nombre del web form.
|
B) BODY: Define la apariencia de los objetos que son mostrados en el browser del cliente:
Atributo
|
Significado
|
PageLayout
|
Determina cómo los controles y texto serán posicionados sobre la página. Este atributo es implementado con el tag ms_positioning y tiene dos valores posibles:
· GridLayout: La opción por defecto. Los controles de la página pueden ser diseñados de una manera totalmente flexible (tipo los forms de VB6), aunque a cambio se agrega un atributo Style con valores de posicionamiento absoluto.
· FlowLayout: Los controles y texto son acomodados en el browser de acuerdo al ancho de la ventana. El contenido fluye de arriba hacia abajo de tal forma que se deben posicionar usando espacios en blanco y pulsaciones de Enter. Recomendado cuando desee incluir user controls (archivos .asmx) o hacer trace a la página.
|
C) FORM: El tag
Atributo
|
Significado
|
Method
|
Identifica cómo serán enviados los valores de vuelta al servidor. Las opciones son:
· Post: Los datos son pasados en pares nombre/valor dentro del body.
· Get: Los datos son pasados como una cadena concatenada (querystring).
|
Runat
|
Este atributo causa que el formulario ponga (post) los datos de vuelta al servidor, dónde el código será ejecutado. De no indicarse, el formulario será tratado como un form HTML regular.
|
david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra david flores zafra, david flores, David Flores Zafra, Flores Zafra David, david flores, flores zafra
No hay comentarios:
Publicar un comentario