为啥要使用框架

365 阅读3分钟

前言

很久木有写文章,主要在沸点 - 力扣 - 面经游走。今天约到Leader面谈,哇!清晰了好多方向。

就面谈时的一个没有回答上来的问题,延申下:为什么要使用框架?

leader: 你觉得既然有了dom,为什么还要使用框架?
me: 不太了解这方面,但是认为既然出现了框架,一定是会给前端带来性能以及其他方面的优化提升(不懂,就扯大的概念)
leader: 像类似vue/react的框架,它是有限制的,去规定了一套规则,让使用的人按照这套规范去编写代码,而不是东写一句西写一句,弄的谁也看不懂... (记得不太全了,但是说的东西很实用)


觉得没回答好,所以回来后就这个问题,分出几个方向

  1. 什么是框架 (定义、通俗理解)
  2. 为什么使用框架
  3. 合理的使用框架可以带来的好处
  4. 是不是框架的功能越强大就越好呢?

1. 什么是框架 (定义、理解)

定义: 是一个框子——指其约束性,也是一个架子——指其支撑性。 是一个基本概念上的结构,用于去解决或者处理复杂的问题。 框架这个广泛的定义使用的十分流行,尤其在软件概念。

理解:框架用来替你把程序内部细节完成,你只需要关注你自己的业务逻辑。


2. 为什么使用框架

目前的软件系统随着业务的发展,变得越来越复杂。所涉及到的范围非常广(人力越来越难已维护),由于没有统一调用规范,很难看懂别人写的代码。

或者比如很多项目的耦合度很高,为了避免重复开发,所以需要将一些事情交给框架处理。

框架来替你把程序内部细节完成,框架的代码规范让使用者能看懂其他开发人员所写的代码


3. 合理的使用框架可以带来的好处

分工明细
  1. 经验丰富的人员去设计框架和领域构件,而不必限于低层编程
  2. 使用者根据文档可以更好的使用框架
  3. 软件设计人员要专注于对领域的了解,使需求分析更充分;
  4. 虽然提升了学习门槛,但是只要熟读源码,提升表现在绩效与薪资
规则化
  1. 代码结构的规范化,降低程序员之间沟通以及日后维护的成本;
  2. 允许采用快速原型技术; 有利于在一个项目内多人协同工作;
  3. 根据开源等渠道,大大提升框架代码的质量与影响度
  4. 使得平均开发费用降低,开发速度加快,开发人员减少,维护费用降低,提升了适应性、灵活性增强

4. 是不是框架的功能越强大就越好呢?

好的框架是相对的,它都有自己特定的应用领域,合适才是最好。