库:一个通用术语,用来指第三方制作的代码集合。库可以包含供开发人员使用的函数、类或者其他代码片段。Python库可能包含一个或一组包,甚至只是一个模块。库通常是限于特定语言的。开发人员不需要知道库的代码如何工作,只需要知道如何调用或者接入库中的代码。标准库(比如Python标准库)是指适用于该语言的所有实现的代码库。

框架:是代码的集合,通过控制反转的方式运行。框架会根据需要调用开发人员创建的函数,而不是开发人员调用框架中的函数。举例来说,使用Web应用框架编写代码时需要为网页创建函数,以便Web请求进入时框架会调用这些函数。

软件开发套件:(software development kit,SDK)包括代码库、文档和软件工具,它们用来协助为特定的操作系统或平台创建应用程序。比如Android SDK和iOS SDK分别用于为Android和iOS创建移动应用程序,Java开发工具包(JDK)是Java虚拟机创建应用程序的SDK。

引擎:是一个大型、独立的系统,开发人员的软件可以对其进行外部控制。开发人员通常调用引擎中的函数执行大型的复杂任务。引擎包括游戏引擎、物理引擎、推荐引擎、数据库引擎、国际象棋引擎和搜索引擎等。

应用程序接口:(application programming interface,API)是库、SDK、框架或引擎的对外接口。API规定了如何调用函数或向库提出访问资源的请求。库的作者会提供API文档。许多流行的社交类或其他类型的网站提供了HTTPAPI,允许程序访问它们的服务,而不是由人使用浏览器访问。