我很多次遇到过这个问题并再次看过这些术语,并不知道他们在计算机工程中的真实概念。
平台和框架是指什么?
我看到许多术语,如平台独立和开发平台,以及框架相同,但我不能悄悄地理解它们。他们是指图书馆吗?他们是指不同类型的操作系统吗?
答案 0 :(得分:3)
平台是一个无定形的术语,可能意味着:
框架通常是工具的集合:可以是软件,硬件,方法/模式(虽然不一定是所有这些在任何特定框架中),它们结合起来提供构建应用程序(或应用程序的特定层)的方法
框架的一些例子是:
<强>软件强>
<强>硬件/软件强>
方法/模式(或流程)
答案 1 :(得分:3)
术语 framework 定义非常明确:框架与库非常相似,只是Control是Inverted。 (Inversion Of Control是 定义构成框架的特征。)IOW:你调用一个库,但框架会调用你。
考虑它的另一种方法是你编写一个应用程序,但将所有不感兴趣的细节留空并使用库来填充它们。框架OTOH 是应用程序。这是一个应用程序,其中所有有趣的详细信息留空,你填写。(当然,在您用来填写空白的代码中,您可以依次填写空白自己调用库。此外,框架本身将调用库来实现其内部工作。而且,框架通常捆绑了一组与框架紧密集成的丰富库。但是,区别在于仍然很清楚。仅仅因为框架和库一起装在一个包中并不意味着没有区别。)
然而,术语 platform 的定义并不是很明确。它也严重超载。在移植本机应用程序的上下文中,它通常指CPU ISA(例如x86,AMD64,IA-64,POWER,MIPS,ARMv9,Sparc),硬件架构(PC,CHRP,PReP,Mac),内核( Linux,NT)和基础库(POSIX,Win32,Core Foundation)。
在更广泛的软件开发环境中,“平台”通常的字面意思是“代码所代表的”。对于本机应用程序,它可以与上面的基本相同,对于JVM应用程序,它可以是JVM加上JRE加OSGI。
基本上,你可以把这个比喻用于字面意义:一个平台可以让你(即你的代码)站在比没有它的情况下更高的地位。
答案 2 :(得分:2)
平台通常意味着与运行软件的环境有关。因此它通常意味着操作系统(例如Windows或Linux),但有时是架构(x86可能是平台,或java虚拟机)。框架通常是函数或类的集合,因此通常与库相同,或者可以以相同的方式粗略理解。
答案 3 :(得分:1)
您可以在此处阅读有关平台和软件框架的信息: link text
答案 4 :(得分:1)
我将尝试平台部分:平台用于谈论你“建立在”的东西,或者你可以认为是“站立”的文字类比来完成某些事情。我使用过“电话平台” - 它由软件和硬件组件组成,可以开发交互式语音应答系统。