类库和框架有什么区别

我听到整天的术语类库,基类库,框架,...
什么突出了框架和什么是基类库?


类库和软件框架的区别在于,在框架中,控制流不是由用户的代码来确定的,而是由框架决定的。

这也被称为好莱坞原则(不要打电话给我们,我们称之为你)。

顺便说一下,这个主题还有一个很好的维基百科文章。


您在编写代码时使用类库,但是在框架中编码。

术语“框架”意在引起“在环境中”的感觉。 如果我以(有限的)比喻来说,我认为一个类图书馆就像能够吃奶酪和喝葡萄酒一样,而一个框架就像访问法国; 体验文化。 框架是围绕其构建程序的结构。 类库是您使用的工具(可能在框架内)。

当然,框架通常会包含类库。 例如,.NET有整个框架中包含的大量类库。


图书馆:

它只是一些例程(函数式编程)或类定义(面向对象编程)的集合。 背后的原因只是代码重用,即获得已由其他开发人员编写的代码。 类或例程通常定义特定领域的特定操作。 例如,有一些数学库可以让开发人员调用函数,而不用重新执行算法的工作方式。

框架:

在框架中,所有的控制流程已经存在,并且我们应该使用我们的代码填写一堆预定义的白点。 框架通常更复杂。 它定义了应用程序定义自己的特征以填充骨架的骨架。 通过这种方式,您的代码将在适当时由框架调用。 好处是开发人员不必担心设计是否好,而只是实现特定于域的功能。

库,框架和你的代码图像表示:

库,框架和你的代码图像关系

KeyDifference:

库和框架之间的关键区别是“控制反转” 。 当你从库中调用一个方法时,你就可以控制。 但是对于一个框架来说,控制是相反的:框架调用你。 资源。

关系:

他们都定义了API,供程序员使用。 为了将它们放在一起,我们可以将库视为应用程序的某个功能,将框架视为应用程序的框架,并且API是将它们放在一起的连接器。 典型的开发过程通常以框架开始,并通过API填写库中定义的函数。

原始答案

链接地址: http://www.djcxy.com/p/22953.html

上一篇: What is the difference between a class library and a framework

下一篇: jQuery how to find an element based on a data