库,平台和框架之间的区别?

Difference between library, platform and framework?

我遇到了术语 frameworklibraryplatform。例如,我们说 Spring framework 而不是 Spring library;我们也说 Java Platform 而不是 Java LibraryJava Framework.

我试着在网上进一步了解,但他们之间的区别还不是很清楚。谁能帮我理解一下它们之间的区别。

库只是一组供您使用的工具。它通常不会对您强制执行工作流程,您的代码将执行库代码。数学是图书馆的一个很好的例子。

框架强制执行工作流,因为它是一个工作的东西,只给你扩展点来放置你的代码,它会 运行 你的代码并为你控制事情。例如,您无法控制 spring 框架何时调用您的控制器。您将获得关于您需要做什么才能使 Spring 认为您的 class 是控制器的指南。

该平台定义了可以围绕其开发系统的标准。它将有一组标准 API,公开特定组件(流、文件系统、端口等)供您使用。 JVM 是平台和操作系统的一个很好的例子。