给JavaScript一个体面的外表
在Ajax体验大会上,微软的UI框架部门的开发经理Matt Gibbs谈到了微软对JavaScript开发支持的一些计划,核心内容就是从面向对象化特征、Visual Studio.NET开发工具和.NET Framework等几个层次对JS进行包装,并进一步提升其对Web UI体验的支持能力。这个计划的需求来源于Ajax的快速发展,JS作为Ajax的中心技术,通过改造它可以较大程度提高Ajax开发的产能。
对开发人员而言,开发JS往往并不是什么愉快的经历,很多时候被称为“Write Once, Won’t read a life(一次写成,终生不读)”,就是在ASP.Net Ajax团队自己进行产品开发的过程中,他们也在调试JS时也饱受煎熬。痛定思痛,微软觉得必须要为JS增加面向对象特征,按照“急用先上”的原则,首先要增加命名空间和继承的支持。前者是实施大规模项目的基础,如果所有的对象都散落在一个个function里面,那几乎等于直接倒退到10~15年前的结构化开发,在快速变化的业务面前,管理和组织这些代码就只能对“敏捷”取非了,通过命名空间的梳理作用起码可以给对象一个有效的组织,在这之后再去考虑重用、架构优化之类的事情;后者的作用更明显,没有继承的JS代码适合做“一锤子买卖”的项目,虽然有很多现成的框架,但开发过程和早期的VB差不多,项目迭代2、3个版本后,重写恐怕比“重用”划算的多。
除了面向对象的封装之外,微软还要推出一个面向JS的UI对象模型,旨在尽量解决现有浏览器兼容性问题和JS执行效率问题的基础上,向JS开发人员提供类似C#一样简便的富客户端开发体验,其中包括Ajax Web客户端的数据绑定机制和客户端事件多播机制(Multicast)。不过现阶段能够提供开发人员的还仅限于Visual Studio.NET环境中的JS代码感知能力和ASP.NET Ajax 1.0所提供的运行时服务,包括最基本的安全服务:
读取用户安全信息;
浏览器客户端的远端认证;
用户角色信息。
在此次会议上,针对现有Ajax框架对浏览历史记录支持不够的情况,微软也着重阐明了要在ASP.NET Ajax中增加相应支持的意见,务求让用户在点击Back按钮的时候,可以比较的有效的恢复现场,确保不会因为Ajax令用户直观上感到困惑。
相信借Windows占领绝对用户市场的微软也意识到如果不紧随RIA的趋势,那么用户、商业平台和项目机会将会很快被竞争对手夺取,很大程度上来说用户是应用导向型,谁可以把更大比例的Web开发人员聚集到自己的平台,谁就更有可能通过技术因素占领市场。既然现在很多Web开发人员最关心的是Ajax和JS,那该出手就要出手了。
| 感谢原创者的辛勤劳动,希望对您有所帮助,转载请注明原出处。 |