论文部分内容阅读
Web应用离不开数据的持久化。持久化是用来保证数据值的生命周期满足应用程序的要求,具体而言,是将应用程序中的数据值保存到非易失性存储介质(如硬盘、闪存等等)中。传统的Web应用,由服务器端完成所有的业务逻辑和数据持久化操作,客户端通常仅负责页面渲染;随着客户端浏览器能力的增强,以及AJAX、Flash等客户端技术的不断完善,富互联网应用(Rich:Internet Application)逐渐成为Web应用的一种重要应用形态。在富互联网应用中,客户端程序除了实现传统的页面渲染、输入验证等功能之外,还会处理一些相对复杂的业务逻辑(如搜索、排序),因此需要进行相应的数据增删改查等操作,Web客户端也就有了数据持久化的需求。然而,在富互联网应用程序开发中,客户端数据持久化面临着一些挑战,主要表现在:开发者需要处理编程语言与数据源操作之间的阻抗不匹配、形式各异的客户端数据源之间的异构性、以及不断变化的数据语用需求等问题。因此,需要一套持久化框架屏蔽掉这些复杂的细节。
本文认为,客户端持久化框架的需求包括:(1)正交性,即屏蔽开发语言与数据持久化操作之间的阻抗不匹配;(2)透明性,即屏蔽各种数据源的异构性;(3)动态性,即支持数据语用的动态调整。目前已有的客户端持久化框架解决了不同侧面的问题,但缺乏针对上述需求较为全面的解决方案。
本文的主要工作包括:
(1)基于已有的研究工作:基于数据语用的持久化方法,将其应用到客户端持久化的场景中,为客户端持久化提供了原理上的指导。
(2)在基于数据语用的持久化方法的指导下,设计并实现了一个用于支持Web应用客户端持久化的框架POD4JS。该框架提供了较优的客户端持久化方案以及动态数据语用的支撑机制,具有易用、易扩展等特点。
(3)利用POD4JS框架进行实例研究,并完成相关评测。