dnn ddn cms .net design architecture frameworks dotnetnuke

.net - ddn - ¿Cuál es la diferencia entre el marco y la arquitectura?



ddn cms (12)

Me gustaría saber la diferencia entre el marco y la arquitectura.
por ejemplo: dotnetnuke es el marco y mvc es la arquitectura.

entonces, si tomamos ambos como ejemplo, ¿alguien puede decirme la diferencia entre ellos?
¿Quiere saber cuál está usando cuándo y dónde?
¿Cuál es bueno en términos de satisfacción del requisito del usuario?


Creo que el marco es algo creado por alguien y disponible para lograr un objetivo. Al igual que MFC es un marco para escribir aplicaciones de GUI. Frameworks toma el control total de usted, pero le da la ventaja de no tratar de hacer todo desde cero. En la mayoría de los casos, es mejor utilizar un marco bien diseñado y probado, en lugar de escribir uno propio.
En este contexto, la arquitectura es la forma en que se ha diseñado el marco y posiblemente la forma de utilizar el marco desde su aplicación manteniendo la visión de los diseñadores del marco.

Pero, en términos generales, la arquitectura es el principio de diseño y puede abarcar no solo el software, sino también los sistemas completos. Pensar en seguridad, integración, informes, aspectos de infraestructura, etc.


Déjame ilustrar la diferencia.

Marco de referencia:

Arquitectura:


Déjame intentarlo:

Marco de referencia:
El marco no es más que una copia impresa de la solución que se proporcionará para una tarea o trabajo. La impresión azul debe tener información como:
1. ¿Cuáles son los componentes (herramientas) involucrados o desarrollados? Y cómo están conectados
2. cómo se van a mantener los componentes
3. ¿Cuál es la entrada para todos los componentes y qué devuelven?
4. cómo se inician los componentes y cuál es el resultado final al integrar todo el componente

Arquitectura: la arquitectura es un diseño que nos dice cómo el framework (o) given_solution se va a implementar en el entorno esperado.


El marco es parte de la implementación de la arquitectura. Digamos, nuestra aplicación se organizará de acuerdo con la arquitectura de MVC y usará el marco SpringMVC para eso. Diferentes marcos están organizados de acuerdo a diferentes patrones arquitectónicos. Alguien puede decir que ese término "marco" es en sí mismo un patrón arquitectónico. Su "opuesto" es "biblioteca", porque las bibliotecas están controladas directamente por su aplicación, mientras que los marcos utilizan la inversión de control y controlan la ejecución de su código. Sin embargo, existen controversias al usar el término "marco".


En pocas palabras: la arquitectura es teoría, el marco es la implementación.


Es común hacer esta distinción:

  • Una biblioteca es un conjunto reutilizable de tipos / funciones que puede usar desde una amplia variedad de aplicaciones. El código de la aplicación inicia la comunicación con la biblioteca y la invoca.
  • Un Framework consta de una o más bibliotecas, pero la diferencia es que se aplica Inversion of Control . La aplicación se registra con el marco (a menudo mediante la implementación de una o más interfaces) y las llamadas al marco en la aplicación, que pueden volver a llamar al marco. A menudo existe un marco para abordar un dominio particular de propósito general (como aplicaciones web o flujos de trabajo, etc.).
  • La arquitectura consiste en los principios rectores detrás de una aplicación determinada. No está fuertemente vinculado a un marco o biblioteca particular.

Frameworks es una colección de clases y herramientas que lo ayudan a desarrollar software de gran calidad ... como .net framework o Qt .
La arquitectura es completamente diferente: se refiere a un patrón de diseño o a cómo se organiza una aplicación o un marco. ¿Cuáles son los módulos que lo componen y cómo se comunican juntos?


La arquitectura es una vista lógica, significa que no tiene ninguna implementación (clases Java), simplemente tiene una idea de dónde colocar cada componente (jsp, servlet y componente de modelo para MVC architecure). También podemos llamarlo como patrón de diseño.

Framework es una implementación de una Arquitectura. Al igual que Spring (Arquitectura de aplicaciones), Struts (MVS web App Architecture) son algunos framework.


La arquitectura se trata de estilo, idea abstracta, flujo, metodología, concepto. El marco es algo que implementa el estilo, la idea, el concepto, etc. o hace que sea más fácil implementarlo. ejemplo,

Arquitectura : cada componente debe tener interfaces conectables estándar y debe ser posible conectar cualquier componente a cualquier otro.

Marco : Entonces, los bloques de construcción lego pueden ser el marco.

Biblioteca : algunas combinaciones de bloques confeccionadas que funcionarían como pilares.

Aplicación : una estructura de construcción usando los pilares y otros bloques de construcción (aplicación).


Los marcos generalmente son parte de su arquitectura. Normalmente son parte de la infraestructura de su código. MVC es un framework, como es ASP.NET, WinForms y muchas bibliotecas (NHibernate, PostSharp y más).

La arquitectura se refiere a cómo se armó su software: cómo se organiza, cómo interactúan las diferentes clases y módulos.


MVC es un patrón como se supone para una arquitectura, sin embargo, puede ser utilizado como una técnica en su arquitectura. El marco, como han dicho otros, es una colección de herramientas que utiliza para implementar su arquitectura. En otras palabras, el marco es el cinturón de herramientas.


También para notar la diferencia entre el diseño y la arquitectura:

Diseño : ¿Cuándo habla de qué hacer cuando un usuario inicia sesión?
Ex. Usabilidad, portabilidad, accesibilidad, etc.

Arquitectura : ¿Cuándo habla de qué hacer cuando 5000 usuarios inician sesión simultáneamente?
Ex. Escalabilidad, fiabilidad, disponibilidad, rendimiento, etc.