不妨试着看下去,会有收获:
“架构”核心在于“构”字,指的是构成或者组成,描述了各个部分的构成,或者是由哪几部分组成。“设计架构”会用到各种架构设计理念、方法、原则等,例如熟知的“单一职责原则”就可以作为架构设计的原则。MVC等都属于软件架构设计的成品,具有通用性。
“框架”核心在于“架”,可以认为是架子,具有自定义性、通用性,例如我们可以放任何种类的书在书架上。MVC(Model、View、Controller)画成图就是架构,它与你选择开发技术和平台都无关。我们把MVC架构,也就是我们画的M、V、C三部分的构成图,落实到开发就是框架,例如ASP.NET MVC就是框架,它实现了抽象的MVC架构,包括View、Controller等,.NET帮我们实现了网络访问、视图展示与路由等功能,这是我们做软件的基础,也就是"架子",我们可以借助它做自己想要的,也就是我们可以在书架上放任何书,前提是“书架能放的下”。ASP.NET MVC这个框架只是MVC架构或者说抽象模型的一种实现,我们同样可以在Android开发或者其它开发中采用MVC架构。