出版时间:2010-1 出版社:机械工业出版社 作者:黄灯桥,徐会生 页数:483
Tag标签:无
前言
经过两年的发展,Ext JS从2.0版开始,功能逐渐完善,越来越受用户欢迎。现在的框架如此之多,相比其他框架,为什么只有Ext JS那么火?笔者认为,其主要原因大概有以下几点:·架构简单,容易扩展。·控件比较完整。·数据管理与界面显示分离。·代码书写简单,易于掌握。今年,Ext JS不但推出了3.0版本,而且推出了Ext Core,准备在Web 2.0网站开发中占一席之地。Ext Core目前的亮点不多,但经过一段时间的发展后,应该会有不错的成绩。Ext JS 3.0有相当大的改进,譬如在Ext JS 2.x版本中为人所诟病的速度问题在Ext JS 3.0中就有所改善。不过,最革命性的改变还是Ext JS中新增的Ext.Direct功能,它实现了服务器端的无关性。Ext JS的未来根据Ext JS的开发路线图,在Ext JS 3.1版中将增加可分组的列标题-一个非常值得期待的功能。在3.1版中,还将增加Tree Grid控件,Store将增加多字段过滤功能,这些都是非常实用的功能。这将使Ext的控件越来越接近C/S时代的RAD工具的控件。在3.2版本中,Ext将增加移动组件,进军移动市场,这将是一次革命性的改进。同时在4.0版本中,除了对HTML 5的支持外,还增加画布功能。还有一点更值得期待,就是Ext的RAD开发工具也在开发当中。估计不久之后,也可以像Delphi、VB一样,通过拖拽的方式即可轻松开发Web应用。Ext JS在发展过程中不仅一步步地巩固着自己在HTML、CSS、JavaScript领域无可比拟的优势,而且已经开始向相关领域发展扩张。例如,它从2.0.2版开始为Adobe的RIA技术AIR提供支持,并且为GWT开发了Ext GWT 2.0,这些都体现了Ext JS的强大活力和生命力。在可预见的未来,Ext JS将会甩开对手,大踏步向前。不过,从3.1版本开始,Ext JS开始收费,这个对开发社团会造成什么样的影响,以及是否会影响Ext JS的未来,还有待观察。为什么写这本书Ext Core是Ext小组新推出的用于Web 2.0网站开发的核心包,其包含什么功能以及如何使用这些功能,是大家比较关心的。本书将通过实例的形式为大家详细讲述Ext Core的功能及其使用方法。在Ext JS 3.0版中,还增加了不少新的控件和功能,如何熟练地运用它们,也是大家比较关心的,本书也将通过实例的形式为大家详细讲述这些功能及其使用方法。尤其是Ext.Direct,它将是本书介绍的重中之重。在目前的Ext书籍中,涉及Ext完整示例的书少之又少,尤其是单页面应用的示例,可以说,基本上没有。鉴于这种现状,笔者萌生了写一本以示例为主的书的想法,以解读者之渴。为了顾及.NET和Java两大技术阵营的读者,本书的主要实例都将使用C#和Java两种语言实现。本书面向的读者·有一定使用Ext JS经验的中高级读者。·想利用Ext Core进行Web开发的读者。·网站建设及网站维护人员。·网页设计和制作人员。·大中专院校的学生。如何阅读本书如果你只对Ext 3.0版本中的内容感兴趣,可直接从第5章开始阅读。如果只对Ext Core有兴趣,建议重点阅读前面4章。如果只对Ext JS 3.0新增的Ext.Direct有兴趣,可直接从第二部分开始阅读,然后阅读第六部分。在阅读与Ext JS调试相关的章节时,建议边读边在电脑上进行测试,这样可以加深对书中内容的理解。Java或.NET的开发人员可根据自己掌握的语言选择相应的章节阅读。
内容概要
《Ext JS高级程序设计》对Ext JS的核心知识以及中高级开发者在开发过程中会经常遇到的疑难问题进行了深入分析和探讨。《ExtJS高级程序设计》不仅详细讲解了Ext JS 3.0中新增的用于Web 2.0网站开发的核心包Ext Core,以及给Ext JS带来革命性变化的Ext.Direct,而且还全面透彻地介绍了Ext.Data.Store、Ext UI、Ext扩展、Ext插件和调试等知识。实用性和可操作性强,各个知识点都配有实用的案例,并给出了最佳实践。全书最后以一个单页面的大型案例结束,以迭代的方式重现了该案例的实现过程,有助于读者融会贯通,将理论与实践完美结合。 尤为值得一提的是,《ExtJS高级程序设计》中的主要实例同时包含.NET和Java两个版本,适合所有.NET开发者和Java软件开发人员阅读。
作者简介
黄灯桥,网名“上将军”,Ext专家,从事开发10余年,经验极其丰富,致力于Ext的研究与推广。2002年开始从事Web开发与相关技术的研究,对各种Web开发技术都有深入了解。不仅是VB和Delphi等的忠实拥趸,而且还擅长C#、ASP.NET和.NET。活跃于各大技术社区,是CSDN的认证专家。个人博客:Http://blog.csdn.net/tiarlxiaode。徐会生,网名“临远”,Ext专家,Family 168创始人之一,高级软件工程师兼系统架构师,有丰富的Java EE开发经验。他在社区里非常活跃,曾经编写和翻译了大量关于Ext和jBPM的资料,深受社区欢迎。同时,他还擅长Web开发,对UI开发有一定的研究。
书籍目录
前 言第一部分 Ext Core第1章 Ext Core重要概念 21.1 Ext.Element 21.1.1 获取HTMLElement节点的Ext.Element实例 21.1.2 CSS样式操作 31.1.3 DOM查询与遍历 41.1.4 DOM操作 61.1.5 事件处理 91.1.6 尺寸大小 131.1.7 定位功能 141.1.8 动画功能 161.1.9 杂项 191.2 Ajax介绍 191.3 DomQuery介绍 201.4 模板介绍 231.5 实用功能 241.6 定时执行代码 251.7 本章小结 26第2章 Ext Core实例系统设计 272.1 需求分析 272.2 系统设计 282.3 功能结构图 292.4 开发与运行环境 312.5 数据库设计 312.6 本章小结 34第3章 Ext Core实例讲解——.NET语言实现 353.1 创建应用并设置开发环境 353.2 自定义Membership提供程序 373.3 创建母版页 383.4 首页设计 423.5 产品列表页 473.6 产品详细信息页 513.7 登录对话框 563.8 用户注册对话框 613.9 购物车对话框 653.10 结算 703.11 为产品详细页添加评论 773.12 本章小结 84第4章 Ext Core实例讲解-Java语言实现 854.1 技术选型 854.2 搭建开发环境 854.3 设计页面布局 874.4 网上商店首页 904.5 产品列表页面 984.6 产品详细信息页面 1054.7 登录对话框 1134.8 用户注册对话框 1184.9 购物车对话框 1234.10 结算页面 1264.11 为产品添加评论功能 1334.12 小结 139第二部分 Store和Direct第5章 在.NET中使用Ext.Direct 1505.1 路由器包(Router-0.6.zip)的内容 1505.2 DIY一个Ext.Direct实例 1515.3 NewtonSoft.JSON 1545.3.1 JSON的序列化和反序列化 1545.3.2 LINQ to JSON 1575.3.3 JSON文本的输出 1615.4 本章小结 162第6章 在Java中使用Ext.Direct 1636.1 在Java平台上配置Ext.Direct 1636.1.1 下载directjngine 1636.1.2 配置主控servlet 1646.1.3 配置客户端 1696.1.4 编写JavaScript调用远程方法 1716.2 为Ext.Direct自定义远程方法 1726.3 Ext.Direct中的高级应用 1776.3.1 批量请求和批量响应 1776.3.2 在tree中使用Ext.Direct 1806.3.3 为grid设置DirectStore 1826.3.4 在form中使用Ext.Direct加载数据 1846.3.5 在form中使用Ext.Direct提交数据 1866.3.6 使用polling方式进行轮询 1886.4 本章小结 190第7章 Store 1917.1 Store的结构 1917.2 Ext.data.Field 1967.3 Ext.data.Record 1977.4 ArrayReader、JsonReader和XmlReader 1987.4.1 JsonReader 1997.4.2 ArrayReader 1997.4.3 XmlReader 2007.5 Store的加载数据 2007.6 Store的数据操作 2027.6.1 添加数据 2027.6.2 删除数据 2027.6.3 搜索、定位和统计 2027.6.4 更新数据 2057.6.5 排序 2067.7 DataProxy 2077.8 DirectStore 2087.9 DataWriter 2117.10 Ext.data.Api 2117.11 本章小结 212第三部分 第8章 Ext用户界面控件 2148.1 布局 2148.1.1 在FormPanel中使用HBoxLayout进行布局 2148.1.2 在FormPanel中使用HboxLayout和VboxLayout进行布局 2178.1.3 Panel的body的样式范围 2228.2 Form表单组件 2248.2.1 DisplayField控件 2248.2.2 在FormPanel中使用TabPanel 2278.2.3 DirectLoad与DirectSubmit 2308.2.4 使用DirectSubmit上传文件 2338.3 Grid组件 2368.3.1 一个结合DataWrite和RowEditor的Grid示例 2368.3.2 在CRUD操作中restful的设置以及使用Ext.Direct的问题 2458.4 ListView控件 2468.5 本章小结 249第四部分 Ext 扩展和Ext插件第9章 Ext 扩展 2519.1 利用Ext.extend实现继承 2519.2 与Ext扩展相关的预备知识 2539.2.1 定义命名空间 2539.2.2 重写构造函数 2549.2.3 继承组件的一些准备 2549.2.4 常用的辅助函数 2559.2.5 使用xtype 2559.3 实现一个功能完整的增、删、查、改表格控件 2569.3.1 扩展GridPanel 2569.3.2 配置列模型 2569.3.3 配置显示数据 2579.3.4 点缀EasyGrid 2589.3.5 实现添加一条记录的功能 2599.3.6 实现修改一条记录的功能 2619.3.7 实现删除一条记录的功能 2639.4 从头实现 Ext扩展 2679.5 本章小结 271第10章 Ext插件 27210.1 插件的用法 27210.2 标签页右键菜单TabCloseMenu 27310.3 面板最大化MaximizeTool 27510.4 分页设置PageSizePlugin 27910.5 行数据扩展RowExpander 28110.6 本章小结 287第五部分 调试第11章 调试 28911.1 测试Ext.Element的功能 28911.1.1 获取Ext.Element实例 28911.1.2 测试CSS样式操作 29111.1.3 测试DOM操作 29311.1.4 测试DOM查询与遍历 29711.1.5 测试事件处理 29911.2 结合DataWrite和RowEditor的Grid的调试过程 30011.3 本章小结 303第六部分 实例第12章 单页面应用实例系统分析 30512.1 系统分析 30512.2 系统设计 30512.2.1 单页面应用设计的难点 30512.2.2 开发与运行环境 30612.2.3 数据库设计 30612.3 各个模块的详细功能说明 30812.3.1 登录页面 30812.3.2 主页面 30812.3.3 角色管理 30812.3.4 用户管理 30912.3.5 进仓管理 30912.3.6 出仓管理 31012.3.7 产品管理 31012.3.8 库存统计 31112.3.9 修改密码 31112.4 本章小结 311第13章 单页面应用实例-.NET语言实现 31213.1 创建应用并设置开发环境 31213.2 自定义Membership提供程序 31413.3 登录页 31613.4 主页面 32113.5 Ext.Direct的API句柄 32613.6 修改密码对话框 32713.7 角色管理模块 33013.8 用户管理 34213.9 产品管理 35313.10 进仓管理 36413.11 出仓管理 38513.12 库存统计 40013.13 退出页 40413.14 权限设置 40513.15 本章小结 406第14章 单页面应用实例——Java语言实现 40714.1 技术选型 40714.2 搭建开发环境 40814.3 配置Ext.Direct 41014.4 用户登录页面 41414.5 系统主页面与动态菜单 41814.6 用户管理模块 42414.7 角色管理模块 43614.8 产品管理模块 44414.9 进仓管理模块 44714.10 出仓管理模块 45714.11 库存统计模块 47114.12 用户修改密码窗口 47614.13 用户注销 47914.14 本章小结 480
章节摘录
插图:在经历了一年多的等待,Ext官方出人意料地推出了一个只有25KB大小的Ext Core 3,此举说明Ext官方己不满足于使用Ext构建wleb应用平台,还要在Web 2.0网站开发中与jQuery一较高低。Ext Core为了实现轻量化,将Ext中的UI部分和与之相关的数据处理部分都剔除了,只保留了DOM操作和遍历、Ajax、事件处理(包括自定义事件)、动画、模板、面向对象机制等内容。本章将重点讲解Ext Core的核心功能。1.1 Ext.Element在一个网页文档里包含了许多HTML标签,而这些HTML标签在DOM树中会转换成一个个的HTML Element,从而便于脚本引用。由于浏览器DOM操作的差异,为了实现web框架的跨浏览器特性,每个框架都会构建一个新类,用来操作和遍历DOM树,而在Ext框架中实现该功能的类就是Ext. Element。Ext.E1ement类是Ext Core库中方法最多的类,其主要方法大致可归纳为以下几类:CSS样式操作(例如:set Style、addClass)。DOM查询与遍历(例如:query、select、findParent)。DOM操作(例如:createChild、remove)。尺寸大小操作(例如:get Height、get Width)。下面几小节将简要介绍Ext. Element类的使用和方法。1.1.1获取HTML Element节点的Ext. Element实例
编辑推荐
《Ext JS高级程序设计》特色·权威:两位资深Ext专家亲自执笔,4大专业网站联袂推荐。·新颖:基于Ext 3.x最新版撰写,各种新特性一览无余。·深入:透彻阐述Ext Core、Store和Ext. Direct等杀手锏应用的各种功能和特性。·全面:Ext UI、Ext扩展、Ext插件、调试等的原理与方法尽含其中。·实用:包含两个极具商业价值的完整实例,同时用Java和.NET实现。如果你也在思考下面的问题,也许《ExtJS高级程序设计》就是你想要的!·试与jQuery一争高下的Ext Core有何过人之处?用Ext Core构建网站与jQuery有什么不同?·为什么说Ext. Direct是Ext的革命性变化?它如何保证无论服务器端使用何种平台,客户端都无需进行修改?·数据与界面分离的优势已经被广大开发者所认可,Ext是如何做到这一点的?·你还在为自己没有美术功底而苦恼?你领略过Ext UI的迷人魅力吗?它在Ext 3.x中又有哪些超凡脱俗的表现?·易于扩展是Ext的最大特色之一,如何才能将它的这一功能发挥到极致?·在应用Web化的大潮中,单页面应用越来越受追捧,如何使用Ext,陕速而简单地开发单页面应用?·Web开发中最让开发者头疼的是脚本调试,如何才能很好地利用目前公认最好的调试工具Firebug发现并解决开发中遇到的各种Bug?国内第一本基于Ext3.x的经典著作,4大专业网站联袂推荐
图书封面
图书标签Tags
无
评论、评分、阅读与下载