架构与框架-MVC和N-Tier之间的区别

时间:2011-04-26 08:41:53

标签: architecture terminology

架构,设计模式和框架之间有什么区别。我们如何关联N层和MVC框架?

有人能指出一些好的演示吗?

谢谢

3 个答案:

答案 0 :(得分:4)

  

架构,设计模式和框架之间有什么区别。我们如何关联N层和MVC框架?

这是两个相当不同的问题。

  • 架构是您设计应用程序的方式
  • 设计模式是特定编程问题的解决方案
  • 框架解决了一个更大的问题(见下文)

框架通常解决了一个更大的问题,比如如何使用数据库(nhibernate)或如何创建网站(ASP.NET MVC),而设计模式解决了较小的问题,如如何通知所有类当事情发生时依赖于我(观察者模式)

N层与MVC框架

MVC框架只是表示层。您仍然可以使用服务层和数据层(或之前使用过的任何内容)。

但是,我建议您开始使用ORM和控制容器的反转,因为您显然是在切换技术。

文章链接:

答案 1 :(得分:2)

男人 - 这是一个很大的问题(就范围而言)。 :)

架构是“一切”:包括:

  • 您经历的流程(创建要构建的内容的初始愿景,进行沟通,确定限制架构的关键因素,确定重要的系统质量属性(和NFR)系统必须满足等)。
  • “架构”的正式和非正式表示 - 描述系统内容的静态人工制品 - 蓝图。

Design Patterns(引用维基百科)a:

  

一般可重用的解决方案   常见的问题。

如果你不喜欢重新发明轮子,它们是一个很好的起点 - 至少从概念或逻辑的角度来看。它们是针对较小特定问题的迷你蓝图(其中“架构”是整个解决方案和大问题)。

MVC框架是MVC设计模式的实现。它带来了“纸质”设计模式所没有的实现(和社区等)。

N-Tier 是一种建筑风格 - 它是(某种)设计模式的一种,但是在顶级“建筑师”/大问题层面。

查看:http://en.wikipedia.org/wiki/Multitier_architecture

值得注意的是,“层”是物理分离;一个经常与“层”形成对比的术语,它只是代码中的逻辑层(并且通常也可以用于物理边界)。

答案 2 :(得分:1)

框架是一组工具,用于体系结构实现。(例如:.NET Framework)

N-Tier是一种架构风格,用于为建筑设计元素,Ruls,分析工具创建块,......

MVC是一种设计模式,用于解决架构风格的某些问题。 (MVC创建了3种设计模式:策略,复合和观察者模式