“全栈”是一个外来词,由“全栈”翻译而来,意思是完成一个项目所需的一系列技术的集合。“栈”是指一系列模块的集合。
整个栈中的“栈”和计算机数据结构中的“栈”不是一个概念。后者指的是先进后出的串行数据结构。“队列”是指先进先出的串行数据结构。
计算机从业者天生就有“全栈光环”。
比如你要开发一个WEB项目,工程师需要掌握的知识至少包括:
服务器、数据库、服务器端编程语言
前端标记语言、脚本语言等。这些技术都需要几年的学习和实践才能精通。
服务器、数据库、服务器端编程语言、前端标记语言、脚本语言的组合就是一个“栈”。这个“栈”是用来做网站的,所以也叫WEB stack。
如果要开发一个运行在手机中的应用,开发者需要的知识包括:服务器、数据库、服务器端编程语言、IOS或Android开发技术。这些技术的集合称为应用堆栈。
对于一个全栈工程师,业内并没有严格的定义。这并不意味着一个人必须有很多知识才能被称为全栈工程师。他们大多更倾向于从能力和思维方式两个方面来判断一个人是否是合格的全栈工程师。
国外是怎么定义全栈工程师的?
有人在著名问答网站Quora上提出这个问题,有一个得到很高答案的是:
全栈工程师是指能处理数据库、服务器、系统工程、客户端所有工作的工程师。根据项目的不同,客户可能需要移动堆栈、Web堆栈或本机应用程序堆栈。
简单来说:全栈工程师就是能独立完成一个产品的人。
注:以上内容摘自郭玉《Web全栈工程师的自我修养》一书。
免责声明:本平台仅供信息发布交流之途,请谨慎判断信息真伪。如遇虚假诈骗信息,请立即举报
举报