ExtJS 如何实现优美的代码结构

问题描述

学习Extjs也有两个多月了,感觉复用性不好,一个模块一个js,js里面既有表现,又有数据,又有处理,感觉好乱好杂啊,一个store由于reader的关系只能处理特定的数据请求或响应,reader不能动态定义,这个很麻烦啊,这样有多少种请求的数据构成,就要写出多少种reader来,天哪,后期维护成本太大啊,真想自己写一个根据xml架构或DTO自动生成reader的服务端方法,初始化的时候一口气全部载入,只是自己水平不够,也不知道是否有意义,唉,研究了一下flex,好像也是这样,代码杂乱的很啊,真纠结啊 问题补充:clue 写道

解决方案

参考这篇 http://nickevin.iteye.com/admin/blogs/691340
解决方案二:
这有些视频感觉不错,不知道看过没有?http://www.verycd.com/topics/2806750/有几个视频13、14稍微讲了下代码整理
解决方案三:
在JE论坛上看到过一句很经典的话:试图在变化的世界中寻找永恒的解决方案。其实你不必做一个所有情况都通用的reader,据我所知reader可以不用定义,只用在store中定义fields就可以了。永恒的方案是不可能存在的,但接近永恒的方案是能够提炼出来的,一个是针对未知,一个是针对已知。ExtJS只是基础组件库,它自身的复用性是很好的,你基本很难看到有重复代码。自己写的程序复用性不好那很正常,好的程序不是我们这样的凡人能一次写出来的。可以看看“重构”方面的书籍,好代码是能够通过重构浮现出的。

时间: 2024-09-17 04:55:28

ExtJS 如何实现优美的代码结构的相关文章

代码结构优化工作中的细节

咱们说到程序优化,立马想到的是什么内容呢?一般情况下我们想到的可能是 程序执行速度 页面载入时间 内存占用 网络流量消耗 牺牲空间来换取执行速度的提升 执行重复操作来换取内存消耗的优化 以及用各种办法减少对数据库的查询 今天我们主要说的是另种优化,那就是代码结构的优化,而这一点往往更加重要. 优化可读性以及可扩展性 硬件足够,系统复杂的时代,让代码易于阅读和调试,易于维护和扩展更重要.才能更好的团队合作,才能适应需求变化. 咱们的代码,写1次,调试5次,修改10次,阅读50次. 连续不断的变化会

语法分析 编译-动态分析java代码结构

问题描述 动态分析java代码结构 首先非常感谢您来到这里, 我最近需要实现一个功能模块,这个模块的功能和ecplise的大纲视图类似. 用户在JTextArea中连续编码,程序需要动态分析用户当前正在编辑的类,通过一个树形结构来显示这个类的结构. 这个树形结构以类名为根,根下节点为类属性和方法,甚至内部类,当用户键入一个新的成员时,就在树中插入一个相应的节点. 我只是一个大三学生,这个任务对我来说实在有点困难,所以希望得到您的指点或者创意. 我接收到的想法有: 1.通过JDK中提供的API实现

Javascript的一种代码结构方式——插件式

上几周一直在做公司的webos的前端代码的重构,之中对javascript的代码进行了重构(之前的代码耦合严重.拓展.修改起来比较困难),这里总结一下当中使用的一种代码结构--插件式(听起来怎么像独孤九剑一样.....). 代码结构  这直接上代码结构图(Javascript部分) ps:箭头的指向A->B,表示A调用B 由上面可以看到四种类型的东西: 控制类:提供一个全局的命名空间.保存上下文信息.组件.组件提供的全局方法,负责调用组件初始化. 代码示例如下(不完整): var webos=

ExtJs使用IFrame的实现代码

Iframe 有的时候还是须要的,比如在Tab中嵌入报表.嵌入其它系统的界面.下面代码是项目中一段.希望对用ExtJS开发的兄弟做个参考. 环境: Microsoft Visual Studio 2008 Sp1 Asp.net MVC ExtJs 3.1.1 使用IFrame须要一个ExtJS的一个插件ManagedIFrame(miframe.js),用了这个插件可以使用 xtype:'iframepanel' 下载 代码段: var p_center = new Ext.TabPanel(

[MySQL5.6 新特性] 并行复制代码结构(1)

相关文件: rpl_slave.cc  rpl_slave.h rpl_rli_pdb.cc rpl_rli_pdb.h 1.启动slave. init_slave    |->start_slave_threads                          |->handle_slave_io(IO thread) 启动IO线程                        |->handle_slave_sql(SQL thread) 启动SQL线程(作为协调者)      

Java使用设计模式中迭代器模式构建项目的代码结构示例_java

迭代器(Iterator)模式,又叫做游标(Cursor)模式.GOF给出的定义为:提供一种方法访问一个容器(container)对象中各个元素,而又不需暴露该对象的内部细节.  迭代器模式由以下角色组成:迭代器角色(Iterator):迭代器角色负责定义访问和遍历元素的接口. 具体迭代器角色(Concrete Iterator):具体迭代器角色要实现迭代器接口,并要记录遍历中的当前位置. 容器角色(Container):容器角色负责提供创建具体迭代器角色的接口. 具体容器角色(Concrete

Extjs优化(一)删除冗余代码提高运行速度_extjs

Extjs 本身是一个加载慢的JS框架,这个需要程序员的多去优化,之前说过了JS的打包的优化 这次来写写怎么减少冗余代码,也是提高运行速度,包含了1.删除代码通用2.提交表单通用3.初始化Gird通用化 本次只写 删除代码优化 先贴出代码 复制代码 代码如下: /** * 获取个GridPanel的选择的记录 */ function $getGdSelectedIds(grid, idName) { var selRs = grid.getSelectionModel().getSelectio

ExtJs使用IFrame的实现代码_extjs

环境: Microsoft Visual Studio 2008 Sp1 Asp.net MVC ExtJs 3.1.1 使用IFrame须要一个ExtJS的一个插件ManagedIFrame(miframe.js),用了这个插件可以使用 xtype:'iframepanel' 下载 代码段: 复制代码 代码如下: var p_center = new Ext.TabPanel({ region: "center", resizeTabs: true, // turn on tab r

ExtJS扩展 垂直tabLayout实现代码_extjs

但ExtJS中的TabPanel只能水平显示,搜索了一下Ext论坛,发现有垂直TabLayout的扩展,但垂直tab的页签内容是水平显示的,且页签多了之后也不能通过设置enableScroll属性使其能滚动,为了适应项目的需求,本人对TabLayout进行了扩展,使其支持垂直页签显示,支持页签很多时的滚动.效果如下: 该组件有两种使用方式,一是扩展方式,二是复写方式.其中第一种方式需要引入附件中的TabPanel.js以及ext-patch.css,同时需要将两个图片放在ext-patch.cs