[toc]

连接是一件单纯的事情,让连接能够产生绚丽多彩的东西就是不简单的事情。Web开发,差不多就是在干绚丽多彩的事情,重点不在connected的结果,而是connected后的画面。

1 架构的转变

在以前的应用软件都是运行在大型机上面,要使用软件就要通过“哑终端”登录到大型机上去操作软件。什么叫做哑终端呢?就是字符终端,只具备输入输出字符的功能。这时候软件和数据都集中在大型机上。

后来兴起了Personal Computer,软件开始运行在桌面上,和现在的情况类似。而那些软件需要的数据则由远程的服务器存储,服务器端运行像数据库这样的软件。这种模式称为CS架构,也就是客户端和服务器(Client/Server)架构

客户端和服务器(Client/Server)架构

随着互联网的不断发展,发现CS架构并不是太适合Web应用。主要原因是Web内容更新太快,而若是采用CS架构则需要客户端不停地同步更新桌面应用。后来的浏览器和服务器模式(Brower/Server)应用广泛,在客户端下只要通过浏览器向服务器请求,获取Web内容,并将其显示在浏览器上即可。

浏览器和服务器模式(Brower/Server)

2 Web开发是组啥的?

还记得我之前说的一个词“绚丽多彩”吗,Web开发就是干绚丽多彩的事情的。然而并不是全部。可以把Web分为前端后端,但我觉得要是从事Web开发,一定要冲着全栈的方向去发展自己。表面来看,Web前端更加能够接近绚丽多彩的意思,而后端,甚至是一些Web框架的开发,都是枯燥无味的。但是没有框架也就没有绚丽多彩了。这之间的关系相信读者能够十分轻易的揣摩出来。

3 Web应用开发阶段

3.1 静态阶段

直接编写html文件,如果需要更新则要重新修改原html文件

3.2 交互阶段

静态阶段的网页无法和用户进行交互,如果用户在某个网站上有注册用户的需求,必定会提交一个注册表单。但是静态页面是无法处理这样的数据。CGI(Common Gateway Interface)通用网关接口的出现,使得网页处理动态数据成为了可能。

3.3 脚本阶段

Web应用的特点在前面也提到过,就是更新频繁。在交互阶段的CGI中编写语言都是采用C/C++这样的低级语言,使得开发非常不方便。而因为脚本语言和html结合紧密,且本身非常适合用来开发,因而迅速取代了CGI。常见的脚本语言有ASP/JSP/PHP。

ASP(Active Server Pages)是微软自家开发的服务器端脚本环境,JSP(Java Server Pages)实现了html语法中的Java扩展,PHP(Hypertext Preprocessor)这是一种通用的开源脚本语言。

3.4 MVC阶段

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写。MVC解决的脚本语言直接嵌入html所带来的开发问题,实现了业务逻辑、数据和界面相分离的方法。将业务逻辑全部聚集在一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑,因此可以显著简化Web开发。目前的脚本语言都有很多兼容的MVC框架。

MVC

3.5 现阶段

Web开发不断发展中,诸如MVVC、MVVM、异步开发层出不穷。

MVVM

Melancholy.