ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

框架VS架构,看两者异同

2020-12-27 19:02:29  阅读:132  来源: 互联网

标签:架构 框架 异同 Spring 规范 VS MVC 信息管理系统


框架是和架构比较相似的概念,而且两者有着较强的关联关系,所以在实际工作中,很多时候这两个概念并不是分得那么清晰,参考维基百科,框架的定义如下:

软件框架(Software Framework)

通常指的是为了实现某个业界标准或者完成特定基本任务的软件组件规范,也指为了实现某某个软件组件规范时,提供规范做要求之基础功能的软件产品。

框架

是组件规范,比如:MVC就是一种常见的开发规范,类似的有MVP、MVVM、J2EE等框架。

框架提供基础功能的产品。比如:Spring MVC是MVC的开发框架,除了满足MVC的规范,Spring提供了很多基础功能来帮助我们实现功能,包括注解@Controller,Spring Security,Spring JPA等很多功能。

参考维基百科,这里简单的翻译为软件架构师指软件系统的“基础结构”,创造这些基础结构的准则,以及对这些结构的描述。

单从定义的角度来看,框架和架构的区别还是比较明显的,框架关注的是规范,架构关注的是结构。框架的英文是Framework ,架构的英文是Architecture。Spring MVC的英文文档标题是Web Framework,包目录也有framework。

尽管如此,在实际工作中我们却经常碰到一些似而非似的说法,比如:

我们的系统吃MVC架构 我们需要将Android App重构 MVP架构 我们的系统基于SHH框架开发 我们的系统是SHH的架构

以上几种说法到底是对还是错呢?

其实以上说法都是对的,造成这种现象的根本原因隐藏于架构的定义中,关键字“基础结构”,这个概念并没有很明确的说清楚从什么角度来讲的,从不同的角度或者维度,可以将系统划分为不同的结构,其实我们再“模块与组件”中的样例已经暗含了这点,继续以学生信息管理系统为例。

从业务逻辑的角度分解,”学生信息管理系统“的架构如下:

从物理部署的角度分解,“学生信息管理系统”的架构如下:

从开发规范的角度分解,“学生信息管理系统”可以采用标准的MVC来开发,因此架构又变成了MVC架构了,如下图:

以上这些架构 ,都是学生信息管理系统正确的架构,只是从不同的角度来分解而已。

标签:架构,框架,异同,Spring,规范,VS,MVC,信息管理系统
来源: https://www.cnblogs.com/tianweichang/p/14198192.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有