我一直在努力区分Framework,(软件)产品和Library之间的区别。 因此,我决定遵循这些定义得出结论并与您分享!

产品
首先,什么是产品? 作为产品,我指的是软件产品,它是一款功能全面的软件,旨在在准备就绪时 自动运行,而无需额外的开发技能(通常)。 当然,如果我们购买产品,在某些情况下,我们仍然可以自定义程序中的功能,但是其主要目的是完全可用的,并且已经为我们准备好了。
图书馆
库也可以看作是自治代码,但尚未准备好使用。 它要求我们管理和调用其函数(或对象或模块),因此我们将运行将调用库代码的代码。 它主要是类定义的集合,并执行一组特定且定义明确的操作。
我们将要构建或使用一个库来重复使用代码 。 图书馆为用户提供了很多控制权 , 进入的门槛低 ,通常不需要大量的学习工作。
构架
框架是真实的或概念性的结构,旨在在我们构建将其结构扩展为有用的东西时用作支持或指导 。 它通常是分层的结构,指示可以或应该构建哪种程序以及它们之间如何相互关联。
它声称是一种产品,但要使其最终用户使用它,必须对其周围进行繁重的构造 。 它定义了一个框架 ,应用程序定义了自己的功能来填充框架。
框架与库
框架和库之间的主要区别是控制反转 (IoC) 。
我们观察到在使用框架与使用库之间的IoC,因为当我们从库中调用方法时,我们处于控制之中,而当我们使用框架时,就像框架调用我们时,控件是倒置的。

从框架进行的控制反转可以看作是限制,但另一方面,它可以帮助开发人员避免常见的错误,效率低下和骑车脱落。
框架与产品
框架和产品可以通过使用过程加以区分。
尽管框架在用户购买时需要组装,但产品不需要-它已经组装好并可以使用了。
框架的用例将由开发人员在其调用框架提供的功能时集成到他们的代码中,而产品的用例通常是针对特定产品使用该产品的最终用户(无论是否开发)最终无需集成或功能修改。

就是这样!
在这之后,对我来说更清楚了😊看到使用这些术语的困惑变得越来越普遍,我需要向我澄清这一点,希望也能对您有所帮助!
如果您想了解更多,请告诉我。 如果您喜欢它,请分享并成为我的客人发表评论,以便我知道您喜欢它
学分
(请参阅我的原始帖子)