ASP.NET 4将在开发简便性上大作文章,更加适合快速开发和各种场景。同时,HTML 5的一些新特性,将使性能得到更大的提升。
在上月举办的PDC 2009大会中,微软ASP.NET团队的Jonathan Carter和Scott Hunter演示了为ASP.NET 4以后版本设计的一些功能,其主要方向是简化应用程序的开发,支持Web标准,以及提高性能提升。
在简化应用程序开发方面,ASP.NET团队正在考虑以下几个功能:
可用于ASP.NET MVC和WebForms的Action Record模式支持,基于Entity Framework,方便快速建模,快速开发。
#T#
更易于使用的Route规则:能结合各种信息(如硬盘上的文件路径)自动判断路由目标及相关参数。
可扩展的,基于常见任务/场景的辅助方法,例如:
图片处理,如缩放,水印等常用操作。
OpenID支持,这样开发人员可以轻松将ASP.NET认证与OpenID集成。
后台计划任务,如“每10分钟”或“每天凌晨2点”执行某个任务。
Email发送,以及使用Email进行验证的注册流程。
真实的文件上传进度提示,目前实现这个功能需要使用某些危险的技巧,而今后ASP.NET可能会释放更多接口来进行支持。
HTML 5带来了许多新特性,例如新的HTML标记,原生的视频和音频支持,以及拖放操作等等。未来的ASP.NET首先会支持HTML 5中更符合语义的标记。如在ASP.NET 2.0中,<asp:Menu />控件会生成复杂的table标记,在ASP.NET 4中则会变成符合目前语义的ul/il嵌套,而在未来的ASP.NET中,便可能会生成<menu />标记。此外,HTML 5的Web Storage功能允许将数据储存在浏览器上,未来的Microsoft AJAX库中将会提供一个可选的IntermediateDataContext用于替换目前的AdoNetDataContext,后者将数据通过WCF接口存放在服务器端,而前者则将数据保存在本地。
在性能提高方面,ASP.NET团队会在在微软的分布式缓存Velocity发布之后,为ASP.NET提供相应的各类provider。这样ASP.NET便可以将数据缓存,会话状态等各种信息存放在进程外的的分布式缓存中,以此得到更好的性能和健壮性。这些provider实现可以与ASP.NET现有的扩展方式良好集成,对开发人员的使用保持透明。
由于Web应用程序的显示效果越来越丰富,网页前端性能优化的重要性也随之提高。未来的ASP.NET将会内置CSS或JavaScript文件的压缩及合并,并对CSS Sprites等复杂优化方式提供支持。CSS Sprite的优化原理是将页面上大量的小图片合并成一个文件,然后使用CSS定位机制来显示其中的一部分,这么做的好处是大大减少了浏览器与服务器端的通信次数,往往可以使页面加载速度有明显提高。ASP.NET在未来可以根据开发人员的需求,自动将一组图片进行合并,并通过一些接口将单独某幅图片的信息(如位置,尺寸)暴露出来,甚至直接在页面上生成包含特定属性的HTML标签。