在与开发人员交谈后,我有疑问,"您在应用中使用了什么框架?"和#34;你在前端使用了哪些网络技术?"。
因此,为了回答他们提出的确切问题,"框架"之间的区别是什么?和"技术"在这种背景下?我如何以不同的方式回答这两个问题,或者他们都有相同的答案?
例如,我认为在MEAN堆栈应用程序中,"技术"我使用的是mongoDB,expressJS,angularJS和nodeJS。什么是"框架"。
答案 0 :(得分:1)
框架是技术的一个子集。所有计算机语言都是技术。所有框架都是用计算机语言编写的,以解决具体问题。 MEAN堆栈由许多技术组成。 NodeJS是一个Web应用程序框架,允许JavaScript在服务器上运行。 Angular和express通常用于客户端以提供前端体验。 MongoDB是一种技术,但不是一种框架,它是一种允许应用程序保存数据的软件。
答案 1 :(得分:-1)
使用您的MEAN堆栈示例,有人可能会认为框架(例如 AngularJS )是给定技术堆栈的子集。我经常把框架想象成一套工具......你知道吗,我认为类比可能更能表达我对此的看法。
想想一个总承包商(你知道,你打电话来的人来修理你家/工作的东西)。因此,开发很像手工/建筑工作。他们解决问题,我们解决问题。他们让你成为一个新的房子或厨房柜台,我们提出申请... yada yada yada
现在想想制作房子的各个组成部分:
我将这些与我们在开发中使用的各个事物等同起来,以实现我们的最终目标:
就像水管工为他的工作提供了特殊工具一样,我将AngularJS这样的框架视为另一种服务于客户端UI工作专业的工具。 Bootstrap是一个样式框架/工具,就像一个完成工作的油漆滚筒一样。 CSS或Javascript是指甲和螺丝,但你不能只用钉子和螺丝建造房子,你需要工具和方法来组装你的零件。
我不知道如果这是最好的比喻,但它是我多年来用来向外行人解释我为自己的工作做什么的那个,它似乎很好地传达了这一点。
...我认为你可以摒弃技术包含你使用的任何框架的思路。通过提及一个框架(他们熟悉),你暗示着这项技术。