如今,在使用任何构建的Web应用程序时,都需要做出许多架构决策,并且需要做出正确的选择:能够实现快速开发、持续迭代、最大效率、速度和健壮性等的开发技术。
全栈工程师是Web应用开发中最重要的角色之一。这里我们将概述为什么全栈Javascript更适合全栈开发。

自1998年以来,我们在大多数服务器端开发中使用Perl。也就是Perl占据了大部分市场,但是我们在客户端也有Javascript。之后,Web服务器技术发生了巨大的变化:我们经历了一波又一波的语言和技术,如PHP、ASP、JSP、。NET,Ruby,Python等。,开发人员开始意识到在客户机和服务器环境中使用两种不同的语言会使事情变得复杂。

在PHP和ASP的早期阶段,当模板引擎还只是一个想法的时候,开发者就将应用程序代码嵌入到它的HTML中。这种嵌入式脚本并不少见:
或者,更糟糕的代码是这样的:
对于初学者来说,语言之间存在典型的错误和易混淆的语句,比如For和foreach。此外,即使在今天,在服务器和客户机上编写这样的代码来处理相同的数据结构也是令人不舒服的:
用单一语言统一的第一次尝试是在服务器端创建客户端组件,也就是Javascript。我们都知道大多数编程语言无法统一成一种语言。
Javascript实际上是Netscape Enterprise Server中的服务器端,但当时语言还没有准备好。经过多年的试错,Node.js终于出现了。它不仅把Javascript放到了服务器上,还推广了非阻塞编程的思想,把它从nginx的世界里带了出来,这要归功于Node创始人的nginx背景,归功于Javascript的事件循环特性。
Node.js永远改变了我们处理I/O访问的方式。作为Web开发人员,我们在访问数据库时习惯了以下几行:var resultset = db.querydrawTable通过Node.js和非阻塞编程,可以更好的控制程序流程。
MongoDB是基于NoSQL文档的数据库,使用nodejs作为查询语言,从而完成服务器与前端的数据对接过程。
全栈Javascript开发技术未来还有很长的路要走。使用Javascript,可以用一种语言创建和统一可扩展和可维护的应用程序。毫无疑问,这是一股不可忽视的力量。


