前言
上一篇介绍了前端技术的诞生及人类历史上第一个WWW页面,以及Web技术体系的概况。这一篇主要介绍前端技术从诞生后,是如何进化的。
进化
Web技术进化时间线.png人类的演进,很大程度上是随着资源的变化而进行演进,Web技术进化,也是如此。
1 春秋战国(1994-2000)
春秋战国(公元前770年-公元前221年),是百家争鸣、群雄争霸、人才辈出、学术风气活跃的时代。1994年-2000年这段时间Web技术也是百家争鸣、群雄争霸的时代。
1.1 百家争鸣
Web技术自从1994年之后,慢慢被社会所接受,从1997年发布的HTML4.0到1999年ECMAScript3.0标准的发布,这两个标准存活至今。那时硬件资源还是相对匮乏,例如99年那时组装的机器,CPU是单核433MHz,显卡TNT2 M64,内存128m,硬盘15G,运行着win98的系统,这配置放现在就是一套中高端的吃鸡配置了。因为个人终端计算机的硬件资源较为紧张,所以,那时浏览器对前端脚本的功能及使用都做了较为严格的限制。那时的前端脚本,在浏览器端只能做一些基础的运算和操作DOM,这种静态页面不能读取后台数据库中的数据,为了使得 Web 更加充满活力,同时,服务器的资源相比个人PC机器的资源更加的充俗,因此,各种动态Web页面技术相继诞生,其中以 PHP、Servlet、ASP为代表。
-
PHP:
PHP是一种开源的通用计算机脚本语言,允许网络开发人员快速编写动态页面,适用于网络开发并可嵌入HTML中使用。PHP的语法借鉴了当时流行的计算机语言的特点,例如 C 语言、Java 和 Perl 等,降低学习门槛。 -
ASP:
ASP(Active Server Pages)是MicroSoft公司开发的服务器端脚本环境,可用来创建动态交互式网页并建立强大的web应用程序。ASP 1.0 在 1996 年随着 IIS 3.0 而发布。用VBScript、JScript(微软自己的JavaScript)等简单容易的脚本语言。结合HTML代码,即可快速完成网站的应用程序,实现动态网页技术。ASP文件是包含在HTML代码所组成的文件中的,易于修改和测试,无须编译或链接就可以解释执行。
ASP的编写是将ASP后端程序与前端脚本都写在ASP文件里,这种方式带来一个坏处就是后端程序及前端脚本混在一块,可读性及可维护性较差。微软后面在意识到问题后,吸收了ASP以前版本的优点并参照Java(Servlet1.2),于2002 年,微软发布了ASP.NET,用于替代 ASP。ASP.NET具备开发网站应用程序的一切解决方案,包括验证、缓存、状态管理、调试和部署等全部功能。在代码撰写方面特色是将页面逻辑和业务逻辑分开,它分离程序代码与显示的内容,让丰富多彩的网页更容易撰写。同时使程序代码看起来更洁净、更简单。 -
Servlet:
Sun公司在Web技术刚发展的初期,先推出了applet技术。applet是浏览器中的Java插件,把Java代码从服务器下载到浏览器中,然后通过applet插件运行起来。这样子的解决方案,一方面是客户需要去安装JRE并手动配置环境变量,其次,客户还需要在浏览器中打开applet功能,再者,客户不能禁用applet的服务,明显效果是不好的。
Sun公司在1997年6月份推出了Servlet1.0,Servlet1.0是允许逻辑在服务器运行,在服务端,使用out命令,将HTML和CSS和JS输出返回到浏览器。Sun很快就发现Servlet1.0存在大量冗余的代码,于是在借鉴了ASP的技术后,Sun快速推出了JSP(Java Server Page---实际也是Servlet1.1),减少大量使用out命令输出页面的情况,允许将页面内容写在JSP文件中。很快,Sun又发现了Servlet1.1虽然解决了大量冗余代码的问题,但是又带来了新的问题,就是Java代码和页面内容混杂在一起,开发体验不友好,可维护性较差。
为了取悦程序猿位的欢心,Sun公司又进行了调整,推出了Servlet1.2版本,这一版本的Servlet提倡及引入了MVC模式,彻底的将页面和后台逻辑进行了分离,增强了前后端分工,也增强了可维护性。这也是明确了Servlet的发展方向,随后Servlet也发展壮大,直至今日,Servlet的版本已是4.0(2019年1月14日)。可见,学好设计模式是何等的重要。
关于各技术公司的互相借鉴、攻击竞争,其实无非就是为了得民心,得民心者得天下。
1.2 第一次浏览器之争
在1994年至2000年,网景的Navigator与微软的IE(Internet Explore)爆发了旷日持久的浏览器第一次战争。
霸主
在1993年底,Navigator的前身Mosaic浏览器全球使用者超过了上百万人,有着良好的群众基础,改版后的Navigator在1994年推出,网景尝试了从未有人尝试过的方法----提出允许所有人免费下载Navigator,但使用它从事商业活动必须支付许可费的商业模式。推出后一年半,Navigator的用户超过了6500万人,Navigator就是一方霸主。
星星之火
在Navigator推出后不久,微软推出了万众期待的Windows95,里面自带了一个免费的软件----IE1.0(果然财大气粗,你们任性用,收费算我输),虽然当时IE1.0的功能很差、速度也慢。这是Navigator的第一个竞争对手,虽然IE1.0与Navigator浏览器比起来弱到掉渣,可当时微软的市值已近2000亿美元,最后也正是这个看似毫无竞争力的IE,在几年间就扳倒了Navigator这个霸主(大家可以理解为什么微信要打压头条、抖音等这些竞争对手了吧,正如伟大领袖毛主席说过,星星之火可以燎原)。
IE1.0的推出之后没多久,1996年,微软宣布了公司的Internet的战略:公司从所有方向出击,提供更好,更快,免费的浏览器,并支持Mac,WIN31,WinNT,在NT上提供企业内部网的服务器软件。(又一次体现出了财大气粗)
反击
网景公司要单靠一己之力显然是不够抗衡微软的,因此,网景公司积极寻求联盟,人多力量大嘛,与Apple、Adobe等公司合作,深挖企业服务,一时之间也给网景公司带了一笔可观的收入,看似Navigator这个霸主地位更加牢固了。兵法有讲,一鼓作气,兵贵神速,网景公司的基于自己的成功经验(开发或者确定标准,寻求合作伙伴支持标准,宣布标准并公布规格是其他公司能采用),开发基于标准的产品。在Internet的标准上网景已经占了先机,LDAP用来管理企业内部网用户和权限,Netscape集结了40多个软件厂商支持这一标准,包括IBM/Lotus,Novell,Banyan.公司策略是通过LDAP确立在公司在企业内部网的标准,打算给微软来个致命一击。
然而,微软当时的Windows系统在PC上已占了绝对的统治,正如前面提到的,流量入口历来乃兵家必争之地,借助Windows这个流量入口,微软针对IE进行了捆绑销售(不正当竞争),并且由于财大气粗,IE依旧免费,不是微软的收入来源(浏览器是网景的全部收入),再一次因为财大气粗,IE的开发人员超过了2500人。随着人力物力大量的投入,IE3.0的各项指标已经与Navigate3.0的不相上下了,Navigator的霸主地位开始动摇。微软在1997年8月,推出了IE4.0,新王微软开始成为了一方霸主。直到到2002年,IE浏览器以市场占有率95%的优异成绩赢得了这块浏览器之战,而兵败麦城的网景公司最终被美国在线收购,Navigator退出了历史舞台。
1.3 学术风气活跃
Web技术体系在这段期间,不停的在完善标准及规范,在1997年发布的HTML4.0规范、1998年发布的CSS2.0规范以及1999年发布的ECMAScript3.0规范,这三个规范被长时间广泛使用,特别是ECMAScript3.0,从发布到今,成为当今主流浏览器最广泛使用和实现的语言规范基础。
此时的Web技术,通常大家都称之为Web1.0。但是,随着浏览器新霸主微软,在1999年推出的一项用于异步传输数据的ActiveX组件对象XMLHttpRequest,开启了下一个Web时代--Web2.0。
网友评论