[PLEFDS] Inline, beside, behind, Web Site Project, Web Application Project, y bla bla bla...
Todo acerca de Inline, beside, behind, Web Site Project y Web Application Project.
De ahora en adelante [PLEFDS = para leer el fin de semana]. Digamos que hay dos maneras de tener el código de página: código "Inline", ósea dentro del mismo archivo aspx, y el modelo separado del código de la aspx, ósea hablamos de Behind y de Beside. La primera pregunta es ¿Inline o código de separado?.
Ahora si escogo código separado, Behind o Beside?. En VS 2003 sólo teníamos Behind (Web Application Project). En VS2005 sólo teníamos Beside (Web Site Project), pero si a VS2005 le poníamos SP1, tenemos disponible los tipos de proyectos, en VS2008 tenemos los dos también, y ahora la segunda pregunta es: ¿Web Site Project o Web Application Project?.
Por cierto, y antes de que salte alguien, estos temas no son nuevos y no es mi intención presentarlos como una novedad, la idea es presentar un resumen de estos, y como va esto ahora con VS2008.
Leyendo todos los artículos de abajo, tengan por seguro que no les quedará ninguna duda. Si estamos nuevos en esto, y vamos a iniciar un nuevo tipo de proyecto este tipo de decisiones puede darte satisfacciones o dolores de cabeza si no tomas una decisión correcta respecto a tu escenario.
Voy a dar una aproximación rápida, aunque primero quería leer los principales artículos de abajo cuando hubiera un tiempito libre, pero si ese tiempito no llega (cosa muy común), quería dejar la lista para los interesados, y dejar una rápida opinión de acuerdo a la pequeña experiencia que llevo :D.
Inline o código separado?, pues, puedes tener los dos en un mismo sitio web, ya que esto es por página, y puedes usarlo en un Web Site Project, como en un Web Application Project. Ahora Inline puede recargar mucho el código de página, convirtiendo el mantenimiento de la misma en una tarea compleja. Yo recomendaría Inline, para cosas simples como una página que haga un redirect, y cosas así, cosas que no comprometan la seguridad, porque es más fácil que vean el aspx (sólo con notepad), que una dll (necesitan Reflector).
Ahora la pregunta Web Site o Web Application?, a ver decir que en VS2005 eliminaron Web Application, pero después con el SP1 agregaron nuevamente Web Application. Y en VS2008 tenemos disponibles los dos: Web Site Project o Web Application Project. Me quedo con esta frase del primer artículo de Patrick MacKay:
"Como ya había mencionado, en Visual Studio 2005, la forma de compilación y entrega para proyectos web cambió considerablemente. Sin entrar en justificaciones como tampoco en detalles, sólo agregaré que Microsoft enmendó el rumbo proveyendo algo similar a como funcionaba en Visual Studio 2003. Éste se llama Visual Studio 2005 Web Application Projects"
No voy a comentar cual es mejor entre Web Site o Web Application, con respecto si uno es más fácil de abrir, o si con el otro es más fácil migrar aplicaciones desde VS2003, si no con respecto al modo de compilación, por lo que pude ver el modo de compilación de Web Application Project es mas ordenado que Web Site Project... pero esto hay que sustentarlo como lo hace Patrick en la serie de artículos que tiene, y también hay que leer un poco de como funciona todo esto de la compilación... cuando llegue ese tiempo libre espero poner screenshoots de las pantallas con los diversos modos, pero si quieren ir adelantándose pueden probar esto: Creen dos Webs: Web Site Project y Web Application Project, dentro de cada uno agreguen una página Inline a la ya existente (en Web Site habrá una página Code-Beside, y en Web Application una página Code-Behind), agreguen código simple, botones, cajas de texto, y labels. Publiquen las dos web, y revisen esta carpeta: C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\. Después de navegar en la web, verán como se construyen las carpetas de compilación, las pruebas que pueden hacer en los web Site es: Cambiar el código de la página Inline (C# o VB), y vean como afecta en cada Web, y después de esto cambien el código en una página con el archivo de código separado, y también como afecta... esta son las primeras cosas que se me ocurren probar...
P.D.: Y yo que quería dejar un comentario de unas pocas líneas :S.
Espero que llegue ese tiempito, pero por mientras la pequeña lista de artículos:
Introducción:
- ¿Por qué debo definir "debug=false" en web.config?, Parte I - http://msmvps.com/blogs/pmackay/archive/2007/05/08/post0c.aspx
- ¿Por qué debo definir "debug=false" en web.config?, Parte II - http://msmvps.com/blogs/pmackay/archive/2007/05/23/post0e.aspx
- ¿Por qué no debo compilar en modo debug?, Parte III - http://msmvps.com/blogs/pmackay/archive/2007/07/12/post13.aspx
- El debugging es solo para eso: Depuración - http://msmvps.com/blogs/cwalzer/archive/2007/09/11/el-debugging-es-solo-para-eso-depuraci-243-n.aspx
Web Site vs Web Projects:
- Compatibility Testing with ASP.NET 2.0 - http://weblogs.asp.net/scottgu/archive/2005/05/11/406515.aspx
- Looking for People to Help Test the new Web Project Migration Wizard in VS 2005 - http://weblogs.asp.net/scottgu/archive/2005/08/07/421827.aspx
- Quick Web Project System Post - http://weblogs.asp.net/scottgu/archive/2005/08/13/422476.aspx
- VS 2005 Web Project System: What is it and why did we do it? - http://weblogs.asp.net/scottgu/archive/2005/08/21/423201.aspx
- Using IIS with VS 2005 and the new Web Project system - http://weblogs.asp.net/scottgu/archive/2005/08/23/423409.aspx
- Some techniques for better managing files in VS 2005 Web Projects - http://weblogs.asp.net/scottgu/archive/2005/08/26/423730.aspx
- Building Re-Usable ASP.NET User Control and Page Libraries with VS 2005 - http://weblogs.asp.net/scottgu/archive/2005/08/28/423888.aspx
- VS 2005 Web Deployment Projects - http://weblogs.asp.net/scottgu/archive/2005/11/06/429723.aspx
- Visual Studio 2005 Web Deployment Project support available for Download - http://weblogs.asp.net/scottgu/archive/2005/11/10/430283.aspx
- New Web Project Model Option Coming for VS 2005 - http://weblogs.asp.net/scottgu/archive/2005/12/07/432630.aspx
- First Preview Download of VS 2005 Web Application Project Model Now Available - http://weblogs.asp.net/scottgu/archive/2005/12/16/433374.aspx
- Optimizing C# Refactoring Performance with Web Projects in VS 2005 - http://weblogs.asp.net/scottgu/archive/2006/01/02/434355.aspx
- Coming Soon: VS 2005 Web Application Project and VS 2005 Web Deployment Project Updates - http://weblogs.asp.net/scottgu/archive/2006/02/05/437439.aspx
- Second release of the VS 2005 Web Application Project Preview now available - http://weblogs.asp.net/scottgu/archive/2006/02/10/437943.aspx
- Visual Studio 2005 Web Deployment Project Update - http://weblogs.asp.net/scottgu/archive/2006/02/12/438060.aspx
- New Publish Feature with VS 2005 Web Application Projects - http://weblogs.asp.net/scottgu/archive/2006/03/27/441147.aspx
- VS 2005 Web Application Project Release Candidate Now Available - http://weblogs.asp.net/scottgu/archive/2006/04/05/442032.aspx
- VS 2005 Web Application Project V1.0 Release Coming Shortly - http://weblogs.asp.net/scottgu/archive/2006/05/02/VS-2005-Web-Application-Project-V1.0-Release-Coming-Shortly.aspx
- VS 2005 Web Application Project V1.0 Released - http://weblogs.asp.net/scottgu/archive/2006/05/08/445742.aspx
- VS 2005 Web Application Projects, MSBuild, and Continuous Integrations - http://weblogs.asp.net/scottgu/archive/2006/06/02/VS-2005-Web-Application-Projects_2C00_-MSBuild_2C00_-and-Continuous-Integrations.aspx
- Common Gotcha: Slow VS 2005 Web Site Build Performance Because of “Dueling Assembly References” - http://weblogs.asp.net/scottgu/archive/2006/07/30/Common-Gotcha_3A00_-Slow-VS-2005-Web-Site-Build-Performance-Because-of-_1C20_Dueling-Assembly-References_1D20_.aspx
- Tip/Trick: Creating Sub-Web Projects using the VS 2005 Web Application Project Option - http://weblogs.asp.net/scottgu/archive/2006/08/16/Tip_2F00_Trick_3A00_-Creating-Sub_2D00_Web-Projects-using-the-VS-2005-Web-Application-Project-Option.aspx
- Tip/Trick: Optimizing ASP.NET 2.0 Web Project Build Performance with VS 2005 - http://weblogs.asp.net/scottgu/archive/2006/09/22/Tip_2F00_Trick_3A00_-Optimizing-ASP.NET-2.0-Web-Project-Build-Performance-with-VS-2005.aspx
- VS 2008 Web Deployment Project Support Released - http://weblogs.asp.net/scottgu/archive/2008/01/28/vs-2008-web-deployment-project-support-released.aspx
- -- fin scottgu --
- Introduction to Web Application Projects - http://msdn2.microsoft.com/en-us/library/aa730880.aspx
- Visual Studio 2005 Web Application Projects - http://msdn2.microsoft.com/en-us/asp.net/aa336618.aspx
- Tip/Trick: Optimizing ASP.NET 2.0 Web Project Build Performance with VS 2005 - http://aspalliance.com/1029_TipTrick_Optimizing_ASPNET_20_Web_Project_Build_Performance_with_VS_2005
- Giving ASP.NET 2.0 Web Application Projects a spin - http://www.west-wind.com/WebLog/posts/4525.aspx
- Taking the ASP.NET 2.0 Web Deployment Projects for a Spin - http://www.west-wind.com/WebLog/posts/3496.aspx
- Why should you move to ASP.NET 2.0? - http://www.testingreflections.com/node/view/1846
- Why I like Web Application Projects vs. WebSite Projects in Visual Studio 2005 - http://petesbloggerama.blogspot.com/2006/11/why-i-like-web-application-projects-vs.html
- Web Site Projects vs. Web Application Projects - http://blogs.vertigosoftware.com/teamsystem/archive/2006/11/03/4057.aspx
- ASP.NET 2.0 - Web Site vs Web Application project - http://blogs.microsoft.co.il/blogs/maordavid/archive/2007/06/03/ASP.NET-2.0-_2D00_-Web-Site-vs-Web-Application-project.aspx
- Web Site Vs. Web Application - http://nazul.net/blogs/marioc/archive/2006/05/08/WebsiteVsWebApp.aspx
Code-Behind vs Code-Inline vs Code-Beside:
- Spaghetti, CodeInPage, CodeBehind, and CodeBeside - http://weblogs.asp.net/asmith/archive/2004/04/14/112916.aspx
- Code Behind vs. Code Inline - http://quickstarts.asp.net/QuickStartv20/aspnet/doc/pages/codebehind.aspx
- Inline (Single File) vs. CodeBehind - http://www.codeproject.com/KB/aspnet/InlineCodeVSCodeBehind.aspx
- The Codebehind vs. Inline Code ASP.NET Debate - http://www.eggheadcafe.com/articles/20030518.asp
- ASP.NET v2.0: Code-Beside Replaces Code-Behind - http://aspalliance.com/244_ASPNET_v20_CodeBeside_Replaces_CodeBehind
- To Code-Behind or Not to Code-Behind: That is the Question! - http://scottonwriting.net/sowblog/posts/1005.aspx
- Code behind and code beside living in harmony - http://www.pluralsight.com/blogs/fritz/archive/2004/11/03/3161.aspx
- More details on code behind v2 - http://www.pluralsight.com/blogs/fritz/archive/2005/01/18/5111.aspx
- Code InLine Verses CodeBehind - http://www.codeprof.com/dev-archive/160/12-44-1609348.shtm
- Code-Behind vs. Inline Code - http://www.codinghorror.com/blog/archives/000174.html
- Code inline or Code behind ? - http://weblogs.asp.net/pleloup/archive/2004/07/28/199718.aspx
- New code separation model coming in beta 2 - http://www.pluralsight.com/blogs/fritz/archive/2004/11/17/3544.aspx
- VS 2005 not compiling ASPX Code Beside files weirdness - http://www.west-wind.com/WebLog/posts/4942.aspx
- Porque Code Beside? - http://blogs.quadratica.com.ar/alan/2006/02/porque-code-beside.html
- The Visual Studio 2005 Code-Beside Dilemma! - http://blogs.msdn.com/crisag/archive/2006/09/29/The-Visual-Studio-2005-Code_2D00_Beside-Dilemma_2100_.aspx
- ASP.NET v2.0: Code-Beside Replaces Code-Behind - http://weblogs.asp.net/pwilson/archive/2003/10/27/33768.aspx
- There is NO performance different between code-behind and in-line code. - level 200 - http://codebetter.com/blogs/jeffrey.palermo/archive/2004/06/01/14942.aspx
- Explanation of dynamic ASPX compilation and recompilation - level 300 - http://codebetter.com/blogs/jeffrey.palermo/archive/2004/06/02/15124.aspx
Model Compilation ASP.NET 2.0:
- Codebehind and Compilation in ASP.NET 2.0 - http://msdn.microsoft.com/msdnmag/issues/06/01/ExtremeASPNET/
- ASP.NET 2.0 Internals - http://msdn2.microsoft.com/en-us/library/ms379581.aspx
- Inside the ASP.NET 2.0 Code Compilation Model - http://www.codeguru.com/columns/experts/article.php/c5365/
- Feature Changes in ASP.NET 2.0 - http://msdn2.microsoft.com/en-us/library/aa479401.aspx
- Asp.Net Performance: Use explicit cast instead of using Eval - http://geekswithblogs.net/shahed/archive/2006/11/23/97944.aspx
MSBuild:
- http://msdn.microsoft.com/msdnmag/issues/06/06/InsideMSBuild/default.aspx
- http://blogs.msdn.com/msbuild/
- http://msdn2.microsoft.com/es-es/library/0k6kkbsd(VS.80).aspx
Fuente del Articulo: Sergio Tarrillo
No hay comentarios.:
Publicar un comentario