ext 之我见

    最近的这段时间,感觉Ext挺火的。接触Ext还是半年前的事情了,那时候就想对Ext进行封装,做一个服务端的Ajax框架出来。可由于身体的原因,还是搁浅了。
    使用Ext是从1.1开始的,那时候觉得Ext,几乎已经简化了所有的客户端脚本。就算不会js,不会Ajax,使用Ext也可以很容易的搭建不错的页 面。而且Ext在兼容性上面做的也算不错,至少我在ie 6,ie 7 ff和opera 9上运行demo的时候基本上没有什么问题。当然最主要的一个吸引我的因素是,和其他的框架相比,Ext的界面做的比较的出色,就美观而言,算是 perfect了。
    随着Ext 2.0的正式发布,关注Ext的人也越来越多。Ext变得越来越大众化,这是一件值得高兴的事情,毕竟使用Ext能够帮助简化不少的js代码,而且对于html代码的编写,是数量级的减少。
    让数据和内容分离,一直是Ajax所提倡的,而Ext可以完全做到这些。Grid作为表示组件而Store作为数据存储,数据可以通过Reader来读取,包括xml和json,或者其它的自定义实现。
    组件化,这是Ext最大的特色。所有的组件都继承Ext.Component这个基础类。而Ext.Component继承 Ext.util.Observable,让组件事件的处理变得更为的强大和灵活。Ext可以模拟所有的桌面事件,如双击,拖拽,这些只有在桌面程序中才 见到的,而这些事件的处理变得和桌面程序一样的简捷。
    动画以及控件的resize和drag,这些比较难处理的js,在Ext中变得实在很简洁。基本的Window都有drag和resize行为,动画更是简单。当然这些功能只是次要的。不过在ria中,这些功能又都是不能缺少的。
    当然Ext的诟病也不少,如性能,这个在浏览器中关键的因素。完整的Ext.js需要400多k,随着宽带的普及,以及Ajax技术的应用,这个应该不成 为问题。真正的问题在于Ext都是使用js构建页面,其中的html代码,可能比较的繁琐,过多的div的使用,可能也会是一个灾难。如 Ext.Button这个组件的表现层一样。当然Ext也提供了自定义的html模板功能,这个问题也就可能不是问题了。最后毕竟Ext只是一个客户端的 组件实现,和服务端的集成,还需要自己实现。不过Ext在这个方面,也提供了很多的简化功能,如延迟装载,数据读取等。
    当然,个人还是比较的看好Ext,希望这个框架能够越走越好。

你可能感兴趣的:(Ajax,框架,ext,IE,脚本)