库与框架的区别

来源:互联网 发布:淘宝店铺短连接怎么弄 编辑:程序博客网 时间:2024/06/05 18:41

以下内容转自:https://segmentfault.com/q/1010000000752015

Library和framework最大的区别是: inversion of control. 也就是,

your code calls a library but a framework calls your code.

什么意思?也就是,

  • 当你在调用library的时候, 你按照自己的意愿来control他(比如jQuery)。
  • 而,对于framework, 那么control就是倒转过来了,是他在调用你(比如bootstrap), 就像是Hollywood的一个principle: Don't call Us, We'll call You.

以下内容转自:http://www.jianshu.com/p/99d19a4d10d8

库和框架都是一种有别于软件、面向程序开发者的产品形式。正因为如此,也有很多人误以为库就是框架,或者认为指定语言的库就是框架。

库的英语为 Library ( 简写 Lib ),框架的英语为 Framework。

库是将代码集合成的一个产品,供程序员调用。面向对象的代码组织形式而成的库也叫类库。面向过程的代码组织形式而成的库也叫函数库。
在函数库中的可直接使用的函数叫库函数。开发者在使用库的时候,只需要使用库的一部分类或函数,然后继续实现自己的功能。

框架则是为解决一个(一类)问题而开发的产品,框架用户一般只需要使用框架提供的类或函数,即可实现全部功能。可以说,框架是库的升级版。
开发者在使用框架的时候,必须使用这个框架的全部代码。

框架和库的比较可以想像为:

假如我们要买一台电脑。框架为我们提供了已经装好的电脑,我们只要买回来就能用,但你必须把整个电脑买回来。这样用户自然轻松许多,但会导致
很多人用一样的电脑,或你想自定义某个部件将需要修改这个框架。而库就如自己组装的电脑。库为我们提供了很多部件,我们需要自己组装,如果某个部件

库未提供,我们也可以自己做。库的使用非常灵活,但没有框架方便。

0 0
原创粉丝点击