且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《HTML5和JavaScript Web应用开发》——1.2 在客户端放置更多代码

更新时间:2022-06-05 00:13:12

本节书摘来自异步社区《HTML5和JavaScript Web应用开发》一书中的第1章,第1.2节,作者:【美】Wesley Hales著,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.2 在客户端放置更多代码

不可否认,传统的服务器端模板正逐渐被JavaScript模板所取代。随着许多新JavaScript框架的出现,我们似乎也有些反应过度,但这就是技术发展过程中所出现的现象:由于浏览器变得更加容易移动,并且通过JavaScript API得到更多硬件访问能力,因此驱动UI的技术也在变化。从某种程度来说,客户端和服务器端方法中用户界面的构件是相通的,它们都需要显示和收集数据。我们仍然需要在代码中添加框架专有的标记或者属性,以便知道数据在哪里显示,但是不再需要依赖服务器。现在,我们从间歇性的REST风格和WebSocket连接得到对象和数据,这些连接通过客户端的JavaScript框架自动与UI绑定。我们的应用程序现在能够偶然同步数据,并且拥有离线工作的能力。

为了加强这种能力,处理应用程序的不同状态,我们必须考虑使用新的客户端代码管理方法。jQuery和Prototype之类的JavaScript程序库不能定义前端开发模式,我们应该认真考虑使用跨浏览器DOM来操纵程序库,但是可伸缩客户端架构比以前更复杂了。利用Erich Gamma等人的经典著作《Design Patterns:Elements of Reusable Object-Oriented Software》(_Addison-
Wesley Professional,1995)中收集的成熟技术组织代码和应用程序结构只是一个开始。现在,超过40个MVC JavaScript框架自认为是MVC框架,但是它们应该叫做MV*。它们都使用了不同的技术管理模式、视图和控制器,许多框架与原始的Smalltalk MVC概念已经有了很大的不同。尽管JavaScript框架为我们提供了很好的代码组织和构造手段,我们仍然必须自己处理输出硬件级访问的浏览器API,例如Geolocation或者Web Workers。重量级的HTML5驱动用户界面架构仍然处于探索期,但是你很幸运,因为本书能够帮助你看清前方的道路。