全栈工程师是未来(技术的革新史)

技术在过去的几十年里进步很快,也将在未来的几十年里发展得更快。今天技术的门槛下降得越来越快,原本需要一个团队做出来的 Web 应用,现在只需要一两个人就可以了。

同时,由于公司组织结构的变迁,以及到变化的适应度,也决定了赋予每个人的职责将会越来越多。尽管我们看到工厂化生产带来的优势,但是我们也看到了精益思想带来的变革。正是这种变革让越来越多的专家走向全栈,让组织内部有更好的交流。

你还将看到专家和全栈的两种不同的学习模式,以及全栈工程师的未来。

技术的革新史

从开始的 CGI 到 MVC 模式,再到前后端分离的架构模式,都在不断地降低技术的门槛。而这些门槛的降低,已经足以让一两个人来完成大部分的工作了。

CGI

二十年前的网站以静态的形式出现,这样的网站并不需要太多的人去维护、管理。接着,人们发明了 CGI (通用网关接口,英语:Common Gateway Interface)来实现动态的网站。下图是一个早期网站的架构图:

CGI 网站架构
CGI 网站架构

当时这种网站的URL类似于:

https://www.phodal.com/cgi-bin/getblog

(PS:这个链接是为了讲解而存在的,并没有真实存在。)

用户访问上面的网页的时候就会访问,cgi-bin 的路径下对应的 getblog 脚本。你可以用 Shell 返回这个网页:

#!/bin/sh
echo Content-type: text/plain
echo hello,world

Blabla,各种代码混乱地夹杂在一起。不得不说一句:这样的代码在2012年,我也看了有一些。简单地来说,这个时代的代码结构就是这样的:

CGI脚本文件
CGI脚本文件

这简直就是一场恶梦。不过,在今天好似那些 PHP 新手也是这样写代码的。

好了,这时候我们就可以讨论讨论 MVC 模式了。

MVC架构

我有理由相信 Martin Fowler 的《企业应用架构模式》在当时一定非常受欢迎。代码从上面的耦合状态变成了:

MVC 架构
MVC 架构

相似大家也已经对这样的架构很熟悉了,我们就不多解释了。如果你还不是非常了解的话,可以看看这本书后面的部分。

后台服务化与前端一致化架构

在今天看来,我们可以看到如下图所示的架构:

后台服务化与前台一致化架构
后台服务化与前台一致化架构

后台在不知不觉中已经被服务化了,即只提供API接口和服务。前端在这时已经尽量地和 APP 端在结合,使得他们可以保持一致。

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注