为什么Rest的出现影响今天的互联网,以及Web的发展历程

1.1  从胖客户端到瘦客户端

胖客户端指的是C/S架构中的Client。C/S时期是以Windows为代表的桌面应用时代。Java领域的Applet是这个时期的后起之秀,并成为引领C/S时期专项B/S。胖客户端明显的缺点是必须安装到客户端本地。我们为什么要让客户端做那么多事情呢?把它交给服务器吧。在Java领域,以Servlet和JSP为基础的瘦客户端开发逐渐成熟,Struts带来了MVC,Spring带来了Ioc和AOP,Hibernate带来了O/R-Mapping,“瘦小”的前端也引入了模板,标签等技术。

1.2  从瘦客户端到富客户端

时至今日,B/S仍然流行,但B/S结构并没有停留在开始的瘦客户端阶段。由于HTTP是无状态的,Session成为了服务器必要的“累赘”,用户的每一次交互都要交由服务器处理,甚至是验证输入框信息这么小的一个交互,这期间的时延带来的用户体验非常糟糕。时代的选择是让客户端“富”起来。AJAX的出现时这个阶段比较成功的代表。异步请求和DOM的动态改写带来了页面的局部舒心,Dojo和jquery为代表的Java Script库为客户端带来了丰富的组建和皮肤风格,良好的用户体验和更为轻松的愉快的开发过程让“富”起来的客户端活力四射。虽然富客户端的美学因素十分惬意,但跨浏览器开发中,样式和事件的调试和测试是极其专业的事情。从这时期开始,前端开发的技术含量逐日增加。另一个代表是JSF。JSF是java领域的一个标准,采用浏览器端的事件驱动的机制,它吸收了Spring和Ajax的精华,是Java领域中最具ASP.NET风范的技术框架。其全栈式的开发框架和组件的生命周期模式使得富客户端开发变得快速一致。需要提及的是XHTML在JSF领域得到了重视和推动。JSF缺点是不够轻量,入门起点高,广泛不如Spring。还有一组代表是JavaFX,Flex。以及微软公司的Silverlight这样的技术。富客户端时期并没有结束,由于市场原因,对开发团队和开发者来说,也许会考虑其投资回报率和风险。

1.3  从富客户端到平庸客户端

“平庸”的纯HTML网页可以做的事情主要是通过HTML标签来展示数据。纯HTML+AJAX的功能是发出HTTP请求并局部刷新页面,展示服务器返回的数据。这样的客户端在REST之前,似乎太有局限性,我们必须引用脚本语言(ASP,PHP,JSP等)来“壮大”客户端。而有了REST,这种平庸的客户端就可以完成更多的业务逻辑功能。因为REST式的Web服务公布的就是简单的HTTP请求。这看似变弱的变化,有什么意义呢?平庸的客户端带来的是一个Web发展的新时期。这个时期,客户端不仅是平台无关的,而且是语言无关的,这样的客户端可以实现对任何一种变成语言实现的REST服务器的请求。解耦是平庸客户端最明显的优势。松散的耦合使开发难度降低,系统的水平扩展能力增强。从代码的耦合上看,纯HTML的客户端开发并不关心服务器端使用的是哪一种语言,唯一需要和服务器端交互的是REST接口,其开发成本大大降低。从部署上看,纯HTML的客户端是静态页面,可以部署在Nginx为代表的HTTP服务器上,有效的降低应用服务器的负载。

 

我们所关注的不局限于Web页面如何解读复杂业务,而是关注服务器和客户端之间如何快速通信,快速响应。AJAX不是终点,它虽然解决了客户端异步请求问题,但网络IO依然是阻塞的,下一个主题回事什么呢?相信会覆盖HTML5以及与之并行的服务器推送技术和服务器异步,非阻塞IO。于此同时,平庸的客户端也会出现新的特性,尤其是作为配合服务器新特性的展示层,比如Web Socket以及与之并行的Server Push Taglib,JS库的Comet支持。在基于Jersey的实现中,REST风格的应用已经具备了异步处理请求,非阻塞式读写,动静分离等特征。同时,可以很好地与Web Socket,SSE等HTML5特征协同工作。

         
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
网页开发经历了以下四个主要的发展历程: 1. 静态网页时代:在互联网的早期,网页多数是以静态 HTML 页面的形式呈现。开发人员只需要使用 HTML、CSS 和 JavaScript 等前端技术,手写网页,然后将其上传至服务器,用户访问时通过网络传输到客户端浏览器。 2. 动态网页时代:随着互联网发展,用户对于网站的要求越来越高,需要网站能够提供更加丰富和复杂的交互功能。为了满足这些需求,开发人员开始使用后端技术,如 CGI、ASP、PHP、JSP 等实现动态网页。这些技术可以让网页根据用户的请求、数据库的查询等动态生成内容,从而提供更加丰富的交互体验。 3. Web 2.0 时代:Web 2.0 的出现为网页开发带来了新的思路和技术。Web 2.0 提倡用户参与、社交互动等概念,开发人员开始使用 AJAX 技术,实现无刷新更新网页内容,提供更加快速、自然的交互体验。此外,Web 2.0 还涌现了一些新的技术,如 RSS、REST、JSON 等,为网页开发提供了更加灵活和高效的解决方案。 4. 响应式设计时代:随着移动设备的普及,越来越多的用户开始使用手机、平板等移动设备访问网站。为了适应不同设备的屏幕大小和分辨率,开发人员开始使用响应式设计技术,实现网页的自适应布局和响应式交互。这种技术可以让网站在不同设备上呈现出最佳的用户体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值