`
zyl
  • 浏览: 485507 次
社区版块
存档分类
最新评论

ext 之我见

    博客分类:
  • ajax
阅读更多
    最近的这段时间,感觉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,希望这个框架能够越走越好。

分享到:
评论
2 楼 InnocentBoy 2008-02-19  
祝愿ext越走越远,把效率问题解决一下。
1 楼 Cabo 2007-12-28  
支持:)

这个框架应该可以走得远一些,因为有那么多的Fans 在支持。
很多UI框架都会产生大量的HTML代码和JavaScript脚本,不是ExtJS独有的,不妨用Firefox +Firebug 看一下 .NET 生成的页面源码

性能问题,不推荐做Internet 应用,只推荐做企业宽带 Intranet Application。

至于js文件的大小,可以通过 JS 压缩/紧凑器,尽可能地减少;然后通过缓存,使js脚本一次加载,处处使用;

至于源代码的保护问题,可以通过 JS 混淆器,把变量和函数名称混淆成毫无意义的字母、数字和下划线,使脚本像天书一样难读懂。

相关推荐

    ext-2.2.zip

    在CDH使用oozie 的时候需要安装ext-...我用之前的ext版本 当只有一页数据时,页码导航不会灰色,换成ext2.2就正常了。页码导航条中的刷新按钮也有小变化。 另外界面美化了很多。Ext.form.ComboBox 的样式就很漂亮!

    EXT 选择年月 插件

    Ext中控件非常丰富,有各种格式的日期选择DateField,但是要选择月份,非常麻烦.往往是需要修改源码的方法 我添加了一个插件 代码及调用见 下载资源 本人已测 无问题

    myeclipse下使用ext.,简单的但见环境,

    在MyEclipse中使用EXT.js库进行Web开发时,通常需要借助特定的插件来实现代码辅助和增强开发体验。EXT是一个流行的JavaScript框架,用于构建富客户端应用。本教程将介绍在MyEclipse中配置EXT插件的三种方法,帮助...

    ol-ext插件,具体实现过程见使用openlayers的扩展插件实现矢量图层的3D渲染

    本文将深入探讨“ol-ext”插件,它为OpenLayers提供了丰富的额外特性,尤其是对于矢量图层的3D渲染,极大地提升了地图的展示效果。 **ol-ext插件简介** ol-ext是专门为OpenLayers设计的一系列扩展组件,它包含了很...

    EXT2.0example

    EXT2.0作为EXT2的一个版本或扩展,它在原版EXT2的基础上可能进行了某些优化或功能增强,尽管具体EXT2.0的细节在公开资料中并不多见。EXT2文件系统是Linux在1993年由Remy Card开发的,旨在替代当时存在的FAT和Minix...

    EXT中文手册8

    在EXT 2.0中,布局系统的改进是其最显著的特点之一。相比之前的版本,新布局系统提供了更强大、更灵活的布局管理能力,支持多达10种不同的布局管理器,包括: - **BorderLayout**:一种常见的布局方式,用于构建带...

    webext入门介绍

    WebEx的最大优点是性能出众。WebEx 软件并不是个人开发或面向个人的小软件,而是完整的商业解决方案中...因此,它在效率和稳定性方面非常出色,称得上是善用佳软见过的录屏软件(包括几款共享软件)中性能最好的一款。

    fuse-ext2:Fuse-ext2是一个多操作系统FUSE模块,用于安装具有读写支持的ext2,ext3和ext4文件系统设备和_或映像。

    Fuse-ext2是用于的EXT2 / EXT3 / EXT4文件系统,并构建为可与一起。 依存关系 Fuse-ext2至少需要Linux的Fuse版本2.6.0。 对于macOS 2.7.5或更高版本, Fuse-ext2至少需要Fuse 。 Linux: macOS: 适用于macOS的...

    Ext例子及布局问题

    即:Ext.window 4.mainPage.html为tab布局,右面为tree中间为tab页面。 5.tz-normal-test.html为普通拖拽的练习。 6.tree-asynch-test.html为异步加载的树 7.tree-edit-test.html为节点可以编辑的树 8.tree-tz-test....

    HelloWorld.ext4

    Ext4测试镜像,镜像内有一个名为HelloExt4.txt文件,内容为"Hello Ext4"。主要用于Ext4文件测试,更多见:http://blog.csdn.net/kangear/article/details/49386823

    F:\工具\Ext2Fsd-0.51.7z

    至于压缩包中的"教程说明见这里.txt"文件,它很可能是Ext2Fsd的使用指南,包含了详细的安装步骤、配置选项以及常见问题解答。用户在使用过程中遇到任何困难,都可以参考这个文档来获取帮助。 总的来说,Ext2Fsd是...

    基于EXT技术的网上订单管理系统

    EXT是一个专注于用户界面的JavaScript框架,它通过提供一系列不断扩展和完善的JavaScript类结构,解决了许多在开发RIA(Rich Internet Applications,丰富的网络应用)时常见的问题。EXT为开发者提供了一个稳定且...

    EXT 布局 tab布局 普通拖拽 异步加载的树 节点可以编辑的树

    即:Ext.window 4.mainPage.html为tab布局,右面为tree中间为tab页面。 5.tz-normal-test.html为普通拖拽的练习。 6.tree-asynch-test.html为异步加载的树 7.tree-edit-test.html为节点可以编辑的树 8.tree-tz-...

    DIV经典滑动收缩与展开效果【参考Ext效果】

    见过Ext的panel滑动隐藏效果(点击panel右上角小三角图标实现的那个效果)吗,该功能是通过深入解读Ext源码后,实现的div滑动隐藏效果,代码简洁,极为经典,方便追求效果的前台爱好者们研究。 想要的快来下,5分...

    ext-imageannotation:图像注释编辑器

    ext-imageannotation 一种基于 Web 的图像注释工具。 它是svg-edit的扩展,svg-edit是通用的SVG-Editor( )。 它的主要应用是将手稿传真与转录文本进行通用且高效的链接。 在线演示 带有打开的示例注释的编辑器...

    ranger-ext:我的https扩展名

    游侠-ext 我对扩展 入门 最简单的方法是 克隆此存储库 复制commands.py的内容到您自己的 在您的护林员配置目录(通常是~/.config/ranger )内创建指向克隆文件夹的符号链接 添加键盘映射以方便使用 广告3:几乎所有...

    关于Ext中form移除textfield方法:hide(),setVisible(false),remove()

    下面是一个我遇到问题代码的简化版本,没有经过测试,大概意思是要是在form里想控制不显示表单,用remove()方法有效 代码如下: new Ext.form.FormPanel({ id : ‘ReportForm’,items : [{ {id:”001″}, {id:”002″...

    internationalNumberField:ExtJs Ext.field.Number覆盖以进行国际化。 见https

    本文将深入探讨如何在ExtJs框架中,特别是针对`Ext.field.Number`字段进行国际化改造,以适应不同国家和地区的数字格式。 首先,`Ext.field.Number`是ExtJs框架中用于创建数字输入字段的类。它提供了诸如限制输入值...

    Embarcadero.Delphi.10.2.2.v25.0.29039.2004.Lite.v14.3完整版

    至于用 Lite/Repack 还是原版,见人见智啦。 2、这个版本的来源? 这个版本的来源于官方 Beta/RTM 正式试用版,版权归 Embarcadero 所有,请在下载后 24 小时内删除。重新打包纯粹个人兴趣所致,希望能方便网友...

    ExtAspNet v2.2.1 (2009-4-1) 值得一看

    ExtAspNet v2.2.1 ExtAspNet是一组专业的Asp.net控件库,拥有原生的AJAX支持和丰富的UI效果, 目标是创建没有JavaScript,没有CSS,没有UpdatePanel,没有WebServices的Web应用程序。 支持的浏览器: IE 7.0+, ...

Global site tag (gtag.js) - Google Analytics