Web开发技术发展历程
发表时间:2017-2-9
发布人:葵宇科技
浏览次数:57
Web开发技术发展历程
- 互联网就是指通过TCP/IP协议族互相连接在一起的计算机网络。而Web是运行在互联网上的一个超大规模的分布式系统。
- Web设计初衷是一个静态信息资源发布媒介,通过超文本标记语言(HTML)描述信息资源,通过统一资源标识符(URI)定位信息资源,通过超文本转移协议(HTTP)请求信息资源。HTML、URL和HTTP三个规范构成了Web的核心体系结构,是支撑着Web运行的基石。
Web静态网页阶段
- 浏览器向服务器请求静态HTML信息
CGI(Common Gateway Interface)公共网关接口
- CGI定义了Web服务器与外部应用程序之间的通信接口标准,因此Web服务器可以通过CGI执行外部程序,让外部程序根据Web请求内容生成动态的内容。
Web编程脚本语言:PHP/ASP/JSP
- CGI对每个请求都会启动一个进程来处理,因此性能上的扩展性不高。
- 为了处理更复杂的应用,
- 一种方法是把HTML返回中固定的部分存起来(我们称之为模版),把动态的部分标记出来,Web请求处理的时候,你的程序先生成那部分动态的内容,再把模版读入进来,把动态内容填充进去,形成最终返回。
分布式企业计算平台:J2EE/.Net
- Web开始广泛用于构建大型应用时,在分布式、安全性、事务性等方面的要求催生了J2EE(现在已更名为Java EE)平台在1999年的诞生,从那时开始为企业应用提供支撑平台的各种应用服务器也开始大行其道。
- Java Servlet、Java Server Pages (JSP)和Enterprise Java Bean (EJB )是Java EE中的核心规范,
- Servlet和JSP是运行在服务器端的Web组件,
- EJB运行在服务器端的业务组件,是一种分布式组件技术。
框架横飞的年代:MVC,ORM
- 在架构层面上解决维护性和扩展性等问题;
- Web应用上,MVC模型:
- Model用于封装与业务逻辑相关的数据和数据处理方法,
- 视图View是数据的HTML展现,
- 控制器Controller负责响应请求,协调Model和View。
Model,View和Controller的分开,是一种典型的关注点分离的思想,不仅使得代码复用性和组织性更好,使得Web应用的配置性和灵活性更好。这是Spring MVC的示意图,典型的MVC架构。
数据访问也逐渐通过面向对象的方式来替代直接的SQL访问,出现了ORM(Object Relation Mapping)的概念。
- 2001年出现的Hibernate就是其中的佼佼者,已经成为Java持久层的规范JPA的主要参考和实现。
- 2003年出现的Java开发框架Spring,同时更多的动态语言也被加入到Web编程语言的阵营中
- 2004年出现的Ruby开发框架Rails,2005出现的Python开发框架Django,都提供了全栈开发框架,或者自身提供Web开发的各种组件,或者可以方便的集成各种组件。
回归Web本质:REST
- REST(Representation State Transformation)也成为一种流行的Web架构风格。
- REST鼓励基于URL来组织系统功能,充分利用HTTP本身的语义,而不是仅仅将HTTP作为一种远程数据传输协议。Web应用的开发应该回归Web的本质特征。
- Rails在发展过程中也完全拥抱REST,成为REST的坚定支持者。