首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是“栈”,不是推送/弹出,而是“软件栈”

什么是“栈”,不是推送/弹出,而是“软件栈”
EN

Stack Overflow用户
提问于 2015-05-04 13:31:39
回答 6查看 152关注 0票数 0

我经常看到这个工作“栈”被用在不同的上下文中,而不是我所熟悉的。我知道stack就像in一样,它是一个动态的后进先出列表,你可以通过它来推送和弹出东西。即使有了专用的堆栈指针,CPU寄存器也会回到汇编程序编程的旧时代。

但现在我经常看到人们谈论他们的“软件堆栈”(指的是,我不知道,他们的整个代码库?)或“Android堆栈”或“Microsoft堆栈”。我对这是什么意思有一种粗略的感觉,但我似乎找不到一个明确的、确凿的定义。有没有人?

EN

回答 6

Stack Overflow用户

发布于 2015-05-04 13:52:23

软件堆栈之所以被认为是这样的,是因为它们通常倾向于在彼此之间堆叠几层抽象层。

例如,“Microsoft stack”应该是这样的:

  • 可用语言之一(例如C#)
  • 使用某个版本的.NET
  • ,该语言在某些版本的
  • 上运行<代码>F29

可以说,如果您认为工具是软件堆栈的一部分,那么软件堆栈将继续下去,因此可能是某个版本的Visual Studio或任何类型的IDE、界面构建器和构建工具,以及您正在使用的任何工具。

其他人提到了LAMP堆栈,它也是一个堆栈,其中

您可以编写

  • ,它使用MySQL并由运行在Linux

上的Apache

  • 调用。

大多数时候,你都生活在生活愉快的地方。例如,您可以使用C#,而不必对CLR了解太多(尽管您最好了解它),或者处理.NET是如何实现的,或者必须直接进行内核调用。在PHP中,您也不必手动与MySQL服务器交互(打开套接字、写命令、读应答、反序列化等)。实际上,如果您的堆栈包含诸如Symfony之类的框架,那么在大多数情况下,您甚至不会处理SQL,因为该框架会处理这些问题。

票数 3
EN

Stack Overflow用户

发布于 2015-05-04 13:36:09

它通常指用于实现特定目的的程序的组合。

术语的流行用法是LAMP堆栈,指的是:

  • Linux
  • Apache
  • MySQL
  • PHP
票数 2
EN

Stack Overflow用户

发布于 2015-05-04 13:41:36

我们将有许多类型的堆栈,以防它们是

调用堆栈:存储有关计算机程序的活动子例程的信息的堆栈数据结构。基于堆栈的内存分配。

Stacks (软件):Mac上的文件夹视图。

协议栈:是计算机网络协议套件的特定软件实现。

解决方案堆栈:一组从下到上抽象递增的软件系统。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30023177

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档