基石---web开发技术发展史
开始
Web的诞生
Web是World Wild Web的简称,中文翻译为互联网。
互联网就是指通过TCP/IP协议族互相连接在一起的计算机网络。
Web是运行在互联网上的一个超大规模的「分布式」系统。
Web设计「初衷」是一个「静态信息资源发布媒介」,
通过超文本标记语言「HTML」描述信息资源,
通过统一资源标识符「URI」 定位信息资源,
通过超文本传输协议「HTTP」请求信息资源
「HTML」「URL」「HTTP」三个规范构成了Web的核心体系结构,是支撑Web运行的基石
分布式企业计算平台:J2EE/.Net
Web开始构建大型应用时,在分布式,安全性,事务性等方面的要求催生了J2EE(现在已更名为JAVA EE)平台在1999年诞生,
从那时起为企业应用提供支撑平台的应用服务器开始发展
Java Servlet,Java Server Pages(JSP)和Enterprise Java Bean(EJB)是Java EE的核心规范,
Servlet和JSP是运行在服务器端的Web组件
EJB运行在服务器端的业务组件 是一种分布式组件技术
web的本质:REST
REST鼓励基于URL组织系统功能,
充分利用HTTP本身的语义,
而不仅仅将HTTP作为一种远程数据传输协议。
Web应用的开发应该回归「Web的本质特征」
浏览器端的魔术:AJAX
web应用
JavaScript在服务器端:node
各大浏览器的竞争,使其引擎的性能不断提升,至今google v8引擎的性能已经足以运行大型JavaScript程序
在v8上加以网络,文件系统等内置模块,形成了如今的node.js
javascript的异步本质使得node.js在处理I/O密集型业务中有优势,
而大多数web业务中I/O性能都是瓶颈。
总结
Web技术依然在发展,Web本身的基础规范也在不断完善,HTML5和CSS3引入了很多特性。
回顾Web的发展历史,从某个角度看,就是「抽象层次」不断提高的一个过程,
更高的抽象层次屏蔽更低层的复杂性,从而提高开发效率。
每当技术发展到一定程度,出现某些局限性的时候,就会有更优秀的技术出来突破这些局限性。
其实这是计算机技术发展的一个普遍规律,比如高级语言的出现屏蔽了汇编语言的复杂性,帮助我们更加快速的编程;
数据库技术的出现使得我们无需关心物理存储和访问细节,写简单的SQL语句就能搞定,
更进一步,ORM框架使得我们通过一条语句调用一个类的一个方法就能够方便的进行数据操作。
我们应该让自己的技术视野具备一定的高度和广度,看到一门技术的发展规律和发展历程,这是一种技术修养的体现,其实跟人文修养是一样的。
同时也应具有一定的深度,因为我们往往站在比较高的抽象层次,
比如今天你写几行代码就能把数据库建好,增删改查的功能也自动生成好了,但是要成为高手需要你对底层的原理机制有更透彻的理解,真正遇到问题的时候才能抽丝剥茧迎刃而解。