Me parece que todavía no hay un nombre para este tipo de marco del que están hablando en este hilo. Por el momento, los llamo marcos similares a RAILS : marcos que incrementan la productividad al organizar otros marcos existentes con el propósito de resolver las necesidades básicas de la mayoría de las aplicaciones web, pero al mismo tiempo ocultar todas las complejidades del desarrollador.
Por necesidades básicas me refiero a la implementación de un proveedor de persistencia, un contenedor de inyección de dependencia, una herramienta de registro, una plataforma MVC, un motor de plantillas HTML, un kit de inicio de plantillas de sitios web con ajustes preestablecidos de CSS, un marco de seguridad y algunas bibliotecas de Javascript para las características de AJAX y otras cosas geniales. Los marcos similares a RAILS organizan todos estos marcos y herramientas sobre la base del modelo de dominio (las entidades de su sistema con sus atributos).
Gracias al principio de Convención sobre configuración, estos marcos evitan la necesidad de definir muchos archivos de configuración generalmente requeridos por los marcos que organizan (como Spring, Spring MVC, Hibernate, Log4J, etc.), asumiendo configuraciones por defecto basadas en nombres , estructura y metadatos incluidos en las mismas definiciones de clases.
Gracias a los lenguajes dinámicos que utilizan estos marcos (como Ruby, Groovy, Python, Clojure, etc.), con la excepción de SpringRoo que implementa el comportamiento dinámico en Java mediante AspectJ, la funcionalidad que pertenece a los marcos debajo se extiende y se ponen a disposición del desarrollador de una manera tan uniforme y elegante que él / ella es consciente de las tecnologías subyacentes.
Finalmente, gracias a la técnica Scaffold, las pruebas unitarias, las pruebas de integración, los controladores y las vistas se generan automáticamente para las funciones principales (CRUD) sobre cada uno de los objetos de dominio definidos por el desarrollador.
En el mundo .NET todavía no se ha desarrollado nada, siguiendo todas las definiciones anteriores. Pero nada impide que eso ocurra pronto. Hay grandes frameworks, herramientas y bibliotecas ya disponibles en el mundo .NET que pueden ser orquestados por un nuevo framework similar a RAILS hecho para CLR. Hay Unity, Spring.NET y Castle Windsor entre otros para las necesidades de Inyección de dependencia. Entity Framework 4, NHibernate e iBatis.NET son proveedores de persistencia de .NET bastante buenos. ASP.NET MVC ha llegado fuertemente con soporte para varios motores de plantillas además del ASP.NET tradicional.
Incluso si nadie logra usar un lenguaje DLR para construir este tipo de marco, cualquiera con suficiente voluntad puede seguir el camino SpringSource e implementar un marco similar a RAILS con algún lenguaje estático como F #, C # o VB.NET, haciendo uso de un Aspecto Contenedor orientado (como AspectSharp o Gripper-LOOM.NET) para obtener un comportamiento dinámico.
Me encantaría saber acerca de cualquier grupo de personas que intente desarrollar dicho marco en .NET.
grails generate-all
y Grails produce controladores, vistas y gestionará la persistencia.Puede ingresar a Visual Studio y arrastrar y soltar controles en una página web y conectarlos a una base de datos con poco o ningún código. Un clic para probar / ver. Y un clic para subir a un sitio web (ok, ingrese las credenciales).
No es que esta sea la forma más utilizada o incluso recomendada de hacerlo, pero realmente no es mucho más fácil que esto.
fuente
Porque las aplicaciones web .NET tienen un ciclo de compilación.
Ruby / Python resultan ser lenguajes muy ágiles / ágiles y dinámicos.
Donde trabajo, tenemos una gran aplicación web .NET, y los tiempos de compilación son comparables a los de un programa C ++ típico de mediano a grande.
En mi tiempo libre desarrollo aplicaciones web en python, y el tiempo de compilación es 0. Simplemente no hay ningún paso de compilación. El intérprete en ejecución solo recarga los archivos .py a medida que los guarda.
fuente