¿Qué es ASP.net?
El 20 de Enero del 2002 una nueva versión del tradicional
Active Server Pages se ha lanzado al público, no es ASP 4.0 sino ASP.net. ASP.net
forma parte del .NET Framework de Microsoft, junto con VB.net, C++.net, C# (algo
así como una versión mejorada de C++) hasta incluso JScript.net.
Pero ¿cúal es la diferencia de ASP.net con el
ASP común que conocemos?
Mucha, realmente es mucha. Mientras ASP se escribía en VBScript,
ASP.net puede ser escrito en cualquier lenguaje soportado por el .net Framework,
es decir: VB.net; C# y JScript.net. Si, como has leído, ya no puedes utilizar
VBScript sino que debes utilizar VB.net que es lo que más se aproxima. Otro
cambio radical es que ASP.net es un lenguaje totalmente orientado a objetos.
¿Que mejoras trae ASP.net? ¿Es realmente mejor
que ASP?
Sin duda, es mucho mejor que el ASP tradicional, ASP.net
trae diversas mejoras entre las cuales se destacan:
- Rendimiento: la aplicación de compila
en una sola vez al lenguaje nativo, y luego, en cada petición tiene una compilación
Just In Time, es decir se compila desde el código nativo, lo que permite mucho
mejor rendimiento. También permite el almacenamiento del caché en el servidor
- Rapidez en programación: mediante diversos
controles, podemos con unas pocas líneas y en menos de 5 minutos mostrar toda
una base de datos y hacer rutinas complejas.
- Servicios Web: trae herramientas para
compartir datos e información entre distintos sitios.
- Seguridad: tiene diversas herramientas
que garantizan la seguridad de nuestras aplicaciones.
¿Qué diferencias de sintaxis hay con respecto
de ASP 3.0?
Partiendo de la base de que el lenguaje es otro, muchas,
al ser programación orientada a objetos y al ser lenguaje de Visual Basic .net
todo es muy diferente. Hay que cambiar el pensamiento y todos los viejos conceptos
que teníamos de ASP 3.0.
ASP.net es más bien parecido a Visual Basic, en la página, todos los elementos
son objetos, activos de servidor (que se generan ahí) y tienen propiedades y
métodos.
Vale aclarar que en ASP.net existen los formularios activos del servidor ¿qué
es esto?, son como los formularios tradicionales de HTML, pero se le agrega
en el TAG FORM el atributo runat=server, y dentro del formulario se agregan
los controles activos de servidor. Cuando ocurre un evento, la página se auto
envía a si misma y se procesa el controlador para ese evento. EJ:
<%@ Page language="VB"%>
<%@ Import Namespace="System.data.oledb" %>
<script runat="server">
Sub Nombre_change(sender as object, e as EventArgs)
Mensaje.text = "Buenos días " + Nombre.text
End sub
</script>
<html>
<body>
<font face="verdana" size=2>Esta es la página de
Pablo!</font><br><br>
<form runat="server">
Tu nombre: <asp:TextBox id="Nombre" OnTextChanged="Nombre_change"
runat="server" autopostback="true"/>
<asp:label id="Mensaje" runat="server" />
</form>
</body>
</html>
Tal vez parezca un poco complicado al principio. Pero analicemos
el código. Primero si quieren experimentar, copien y peguen el código en el
bloc de notas y guárdenlo en su WWWROOT como bienvenida.aspx, tomen nota de
que para correr ASP.net deben tener el .NET Framework instalado en su PC, de
otra manera no funcionará. Vayan a http://localhost/bienvenida.aspx. Tecleen
su nombre y sitúen el cursor fuera del casillero de texto, como por arte de
magia aparece un mensaje que nos da buenos días. Pero no es magia en realidad,
veamos como funciona realmente.
En el código hay tres colores marcados: verde, rojo y azul.
- En las declaraciones del color verde podemos ver que le
dan dos instrucciones, la primera, dice al compilador que el lenguaje utilizado
es VB.net, de otra manera diría "C#", nótese la ausencia del ".net".
En la segunda instrucción, vemos que importa el espacio de nombre System.Data.OleDB,
que sirve para trabajar con bases de datos, innecesario en esta página claro,
pero lo incluí para que vean como se incluye un espacio de nombre. Un espacio
de nombre es algo que te permite realizar determinada función, por ejemplo,
si queremos utilizar las poderosas características que trae ASP.net para trabajar
con XML, importaríamos el espacio de nombre "System.XML".
- En el color rojo podemos observar sólo el método Nombre_change,
correspondiente al evento del campo de texto Nombre, o sea, se ejecuta
cuando el campo de texto Nombre cambia. Lo único que hace es poner
en la etiqueta Mensaje el valor "Buenos días " más el valor
que contenga el campo de texto Nombre.
- El color azul es el conocido HTML, pero con un formulario
con RunAt="Server", o sea, estos controles se ejecutan
en el servidor y luego procesados traen código HTML común, o sea por ej: <input
name="Nombre" type="text" id="Nombre">
Una vez procesado todo el código, envía el siguiente resultado
al navegador:
<html>
<body>
<font face="verdana" size=2>Esta es la página de
Pablo!</font><br><br>
<form name="_ctl0" method="post" action="bienvenida.aspx"
id="_ctl0">
<input type="hidden" name="__EVENTTARGET" value="" />
<input type="hidden" name="__EVENTARGUMENT" value=""
/>
<input type="hidden" name="__VIEWSTATE"
value="dDwxMTU3NzQ3OTc0Ozs+jxrUecWhDY6AanZbrFANP9MYypQ=" />
<script language="javascript">
<!--
function __doPostBack(eventTarget, eventArgument) {
var theform = document._ctl0;
theform.__EVENTTARGET.value = eventTarget;
theform.__EVENTARGUMENT.value = eventArgument;
theform.submit();
}
// -->
</script>
Tu nombre: <input name="Nombre" type="text" id="Nombre"
onchange="__doPostBack('Nombre','')" language="javascript" />
<span id="Mensaje"></span>
</form>
</body>
</html>
Bueno, espero que les haya gustado el tema, y a seguir empapándose
de ASP.net!
|