En Visual Studio existe una funcionalidad llamada "Scaffolding" que permite crear pantallas de edición, visualización, creación y eliminación de los registros de la base de datos. En un par de clics tienes montada la típica pantalla de mantenimiento de una tabla.
Suelo utilizar esta funcionalidad cuando estoy empezando a desarrollar una aplicación porque consigo avanzar muy rápido, ¡pero ojo al dato! Si la aplicación crece y se mantiene el mismo patrón de diseño para las demás pantallas, se corre el peligro de entrar en el lado oscuro de la programación, aquel que te lleva inevitablemente a repetir una y otra vez las mismas líneas de código ;).
Por eso, cuando utilices estos poderes, ten presente que a largo plazo deberás volver al código autogenerado y rediseñarlo para delegar cada funcionalidad a su clase adecuada.
En las primeras versiones ASP.NET lo normal era crear una base de datos y posteriormente crear las clases de .NET que representaban las tablas y los registro de la base de datos.
No fue hasta que apareció la versión 3.5 de Entity Framework que se creó la funcionalidad que permitía invertir este flujo. Es decir, poder modificar la base de datos desde las clases de .NET. A este nuevo flujo se le llamó Code-first.
Justamente este flujo es el que he utilizado para crear la base de datos de este blog.
El Modelo, el Dominio, la BLL, el Motor, Core, Servicios, Business y una infinidad de nombres más para un mismo concepto: lugar de la aplicación donde hay que situar la parte más importante del código.
Esta parte puede estar dentro de un mismo proyecto de Visual Studio o segregada entre varios, pero lo importante es centralizar en sus clases toda la lógica del negocio, todo el conocimiento, todo lo importante.
En este post voy a explicar dónde coloqué el "Modelo" de este blog y sus dos clases más importantes.
Mi primera preocupación al iniciar un proyecto es publicarlo pase lo que pase. Si es una aplicación web, como es el caso, significa publicarlo en el servidor y si se trata de una aplicación de escritorio (o app) instalarla en un pc. Para ello creo una aplicación con lo mínimo imprescindible para ejecutarla y la publico. Es mi manera de aplicar el principio "release early, release often" comentado en el post anterior.
¿No os ha pasado que después de un largo y laborioso trabajo de desarrollo habéis desplegado-publicado por primera vez vuestra aplicación y no funcionaba? Menos mal que podemos escudarnos tras aquello de “¡Pero si en mi máquina funciona!”.
A mí me ha sucedido varias veces, y en muchas de ellas, la solución ha pasado por crear otro proyecto de cero e ir “copiando” código del proyecto original al nuevo. Quien esté libre de culpa que tire la primera piedra.
Voy a empezar este blog explicando paso a paso cómo he creado este blog con ASP.Net MVC5 desde cero y qué herramientas he utilizado para publicarlo. Mostraré algunos de los pasos y decisiones que he ido tomando, así como las dificultades que me he ido encontrando.
La intención es aprender y compartir el proceso de creación de una aplicación web. Siempre tengo muy presente eso de "no reinventar la rueda", pero si voy a iniciar un blog sobre programación web con ASP.Net qué menos que el propio blog utilice dicha tecnología.
Probando..., probando, 1,2,3. ¿Se guarda este post?