jueves, febrero 23, 2006

Porque Code Beside?

En un foro de discusión, se planteo una pregunta mas que interesante, la pregunta era porque ahora los archivos de código de asp.net van a parar a otra carpeta diferente en lugar de como veníamos trabajando con Asp.Net 1.0 y 1.1.
Llama la atención a primera vista este cambio ya que el modelo propuesto por asp.net en sus inicios, promovía una nueva forma de trabajo y de estructurar el código mas que interesante.
Pero para todo hay una razón, en este caso son varias.

1 - Errores pasados del IDE
Si se fijan en asp.net del framework 1.0 y 1.1, cuando crean una pagina con Visual Studio genera varios atributos en la directiva page de la pagina.
Por un lado Src para indicar donde esta el code behind y por otro lado CodeBehind para repetir otra vez lo mismo!!! solo que este ultimo, el runtime de asp.net ni lo ve, solo lo usa el IDE de visual studio que necesita ir compilando esto para entenderlo.
En Visual studio .net 2005 y el nuevo runtime repensaron el modelo para evitar entre otras cosas esto, ahora solo usa el CompileWith y crea en tiempo de ejecución una clase con el nombre indicado en el atributo classname a partir de la pagina y su code beside.

2 - Se mejoro el modelo de compilación por demanda
En asp.net 1.0 y 1.1 para aplicar un cambio en producción, copias el assembly nuevo del sitio al bin, al cambiar el timestamp del mismo asp.net se da cuenta que tiene que reiniciar el appdomain, lo cual tiene su costo si la aplicación es grande.

Ahora hay varias cosas, primero no solo soporta compilación dinámica de archivos aspx, ascx,asmx, ashx y global.asax, sino que tambien, asp.net soporta compilación por demanda para archivos .vb, .cs, .xsd, .wsdl, .resx

Lo que hace ahora ademas es monitorear los cambios en esta carpeta app_code y solo recompila lo nuevo o lo cambiado en la misma y no recompila todo el assembly del code behind.

Bueno, para lograr todos estos cambios, cambiaron el modelo de compilación y la forma de estructurar el código.

1 Comments:

At 9:49 PM, Beto said...

Muy bien chuequito eh. Queremos mas info. Voy a entrar seguido a ver si se actualiza eh. Te sigo los pasos de cerca.

Saludos y felicitaciones.

Betito

 

Publicar un comentario en la entrada

<< Home