具体描述
《Sun公司核心技术丛书·Java脚本编程语言、框架与模式》讲解了脚本语言的基本概念和使用方法,概括了Java开发人员可以使用的解决方案,并探讨了在Java应用程序中应用脚本语言的用例和设计模式。内容分为五部分:第一部分介绍脚本语言的基本特征及适合用脚本语言的应用程序;第二部分介绍Java平台实际的技术和解决方案,详细讲解了Groovy脚本语言;第三部分介绍脚本语言在实际项目中的使用;第四部分介绍Java平台的脚本编程规范;第五部分提供了关于文中涉及的技术的安装和使用细节。
《Sun公司核心技术丛书·Java脚本编程语言、框架与模式》内容丰富,讲解清晰,适合作为软件开发人员的参考书。
作者简介
Dejan Bosanac是一名专业的软件开发人员和技术顾问。他致力于各种技术的整合和互用,尤其是与Java和Web相关的应用。他花了几年的时间开发复杂的软件项目,从高流量的网站到企业级应用程序。他是JSR 223专家组的成员之一。
目录信息
前言
致谢
第一部分
第1章 脚本简介 1
1.1 背景 1
1.2 脚本语言的定义 3
1.2.1 编译器与解释器 3
1.2.2 产品中的源代码 5
1.2.3 类型策略 6
1.2.4 数据结构 8
1.2.5 代码作为数据 9
1.2.6 小结 11
1.3 脚本语言和虚拟机 12
1.4 脚本和系统编程的对比 12
1.4.1 运行时性能 13
1.4.2 开发速度 13
1.4.3 健壮性 14
1.4.4 维护 16
1.4.5 极限编程 16
1.5 混合法 17
1.6 一个脚本案例 18
1.7 小结 18
第2章 适用脚本语言的应用程序 19
2.1 组装 19
2.1.1 UNIX Shell语言 20
2.1.2 Perl 20
2.1.3 Tcl 21
2.2 原型 21
2.3 定制 23
2.4 软件开发支持 24
2.4.1 项目构建 25
2.4.2 测试 26
2.5 运维与管理 27
2.6 用户界面编程 28
2.7 用例 29
2.7.1 Web应用程序 29
2.7.2 脚本和UNIX 33
2.7.3 游戏中的脚本 33
2.8 其他特征 34
2.8.1 可嵌入 34
2.8.2 可扩展 34
2.8.3 易于学习和使用 34
2.9 小结 35
第二部分
第3章 JVM内部的脚本语言 37
3.1 帽底乾坤 38
3.2 脚本语言概念 40
3.3 BeanShell 40
3.3.1 入门 40
3.3.2 基本语法 42
3.3.3 松类型的语法 42
3.3.4 语法风格 43
3.3.5 命令 45
3.3.6 方法 45
3.3.7 对象 46
3.3.8 实现接口 46
3.3.9 嵌入Java 47
3.4 Jython 50
3.4.1 入门 50
3.4.2 基本语法 52
3.4.3 使用Java 53
3.4.4 实现接口 54
3.4.5 异常处理 56
3.4.6 嵌入Java 56
3.4.7 小结 57
3.5 Rhino 58
3.5.1 入门 58
3.5.2 使用Java 59
3.5.3 实现接口 59
3.5.4 JavaAdapter 60
3.5.5 嵌入Java 60
3.5.6 Host Object 63
3.5.7 小结 65
3.6 Groovy 65
3.7 其他脚本语言 65
3.7.1 JRuby 65
3.7.2 Tcl/Java 66
3.7.3 JudoScript 66
3.7.4 ObjectScript 66
3.8 小结 66
第4章 Groovy 67
4.1 为什么需要Groovy 67
4.2 安装 67
4.3 运行Groovy脚本 68
4.3.1 用交互式的Shell 68
4.3.2 用交互式的控制台 69
4.3.3 执行脚本文件 69
4.4 编译Groovy脚本 70
4.4.1 依赖 70
4.4.2 Classpath 70
4.4.3 Ant Task 71
4.5 脚本结构 72
4.6 语言语法 74
4.6.1 Java兼容性 74
4.6.2 语句 74
4.6.3 松类型 75
4.6.4 类型技巧 76
4.6.5 String 78
4.6.6 GString 79
4.6.7 正则表达式 80
4.6.8 集合 81
4.6.9 逻辑分支 84
4.6.10 循环 86
4.6.11 类 88
4.6.12 操作符重载 90
4.6.13 GroovyBean 92
4.6.14 闭包 94
4.7 系统操作 101
4.7.1 文件 101
4.7.2 进程 104
4.8 嵌入Java 105
4.9 安全性 109
4.10 小结 112
第5章 高级的Groovy编程 113
5.1 GroovySQL 113
5.1.1 groovy.sql.Sql 115
5.1.2 groovy.sql.DataSet 122
5.2 Groovlet 124
5.3 Groovy模板 129
5.4 GroovyMarkup 131
5.4.1 groovy.xml.MarkupBuilder 132
5.4.2 groovy.util.NodeBuilder 134
5.4.3 groovy.xml.SaxBuilder 136
5.4.4 groovy.xml.DomBuilder 137
5.4.5 groovy.xml.Namespace 139
5.4.6 groovy.util.BuilderSupport 139
5.5 Groovy和Swing 141
5.5.1 TableLayout 142
5.5.2 TableModel 144
5.6 小结 145
第6章 Bean Scripting Framework 146
6.1 Bean Scripting Framework简介 146
6.2 入门 147
6.3 基本概念 147
6.3.1 架构 147
6.3.2 脚本语言的注册 148
6.3.3 管理器和引擎初始化 149
6.3.4 使用脚本 150
6.4 使用脚本文件 153
6.5 方法和函数 154
6.5.1 call() 154
6.5.2 apply() 156
6.6 数据绑定 158
6.6.1 注册Bean 158
6.6.2 声明Bean 160
6.7 编译 161
6.8 应用程序 165
6.8.1 JSP 166
6.8.2 Xalan-J(XSLT) 169
6.9 小结 174
第三部分
第7章 在Java实践脚本 175
7.1 单元测试 175
7.1.1 JUnit基础知识 176
7.1.2 GroovyTestCase类 178
7.1.3 断言方法 179
7.1.4 测试套件 181
7.1.5 用脚本作为单元测试案例 183
7.1.6 小结 183
7.2 交互式调试 183
7.3 构建工具 186
7.3.1 BSF支持 189
7.3.2 GroovyMarkup(AntBuilder) 191
7.3.3 小结 195
7.4 Shell Scripting 196
7.4.1 Classpath 196
7.4.2 实例 197
7.5 管控和管理 199
7.6 小结 204
第8章 脚本模式 205
8.1 脚本化组件模式 206
8.1.1 问题 206
8.1.2 解决方案 206
8.1.3 结果 207
8.1.4 范例代码 207
8.1.5 相关模式 208
8.2 中介者模式(胶合代码模式) 208
8.2.1 问题 208
8.2.2 解决方案 209
8.2.3 结果 210
8.2.4 范例代码 210
8.2.5 相关模式 217
8.3 脚本对象工厂模式 217
8.3.1 问题 217
8.3.2 解决方案 218
8.3.3 结果 218
8.3.4 范例代码 218
8.3.5 相关模式 220
8.4 观察者(广播)模式 220
8.4.1 问题 220
8.4.2 解决方案 221
8.4.3 结果 221
8.4.4 范例代码 222
8.4.5 相关模式 227
8.5 扩展点模式 227
8.5.1 问题 227
8.5.2 解决方案 227
8.5.3 结果 228
8.5.4 范例代码 228
8.5.5 相关模式 231
8.6 Active File模式 231
8.6.1 问题 231
8.6.2 解决方案 231
8.6.3 结果 231
8.6.4 范例代码 231
8.7 小结 235
第四部分
第9章 Scripting API 237
9.1 动机和历史 237
9.2 简介 238
9.3 入门 239
9.4 架构 239
9.5 发现机制 240
9.6 引擎元数据 241
9.7 创建和注册脚本引擎 242
9.7.1 创建方法 243
9.7.2 注册方法 245
9.8 执行求值 245
9.9 ScriptException 248
9.10 绑定 249
9.10.1 引擎范围 249
9.10.2 全局范围 253
9.10.3 脚本上下文 256
9.11 代码生成 265
9.11.1 输出语句 265
9.11.2 方法调用语法 266
9.11.3 程序 267
9.12 其他引擎接口 268
9.12.1 可调用 268
9.12.2 可编译 271
9.13 线程 273
9.14 动态绑定 274
9.15 小结 276
第10章 Web Scripting Framework 277
10.1 架构 277
10.1.1 上下文 277
10.1.2 Servlet 278
10.1.3 交互 279
10.2 入门 280
10.3 配置 282
10.3.1 取消脚本 282
10.3.2 脚本路径 283
10.3.3 脚本方法 283
10.3.4 语言许可 284
10.3.5 显示结果 284
10.4 绑定 286
10.4.1 应用程序 286
10.4.2 请求 287
10.4.3 响应 289
10.4.4 Servlet 290
10.5 include方法 290
10.6 forward方法 292
10.7 会话共享 293
10.8 语言标签 296
10.9 线程问题 298
10.10 架构挑战 298
10.10.1 Java与PHP应用程序的整合 299
10.10.2 PHP Web应用程序中的Java业务逻辑 299
10.10.3 Java Web应用程序中的PHP视图 301
10.11 小结 302
第五部分
附录A Groovy的安装 303
附录B Groovy的IDE支持 305
附录C 安装JSR 223 307
· · · · · · (收起)
读后感
感觉里面涉及到的技术比较老了, 现在说到java脚本语言, 谁会提到beanshell之流, 我只看了里面关于groovy相关的内容, 感觉里面介绍的groovy都比较过时了, 比如不支持for循环, 我不知道groovy哪个版本不支持和的, 反正我使用的几个版本(1.6+)没有这样的问题. 翻译的一般, 而且有...
感觉里面涉及到的技术比较老了, 现在说到java脚本语言, 谁会提到beanshell之流, 我只看了里面关于groovy相关的内容, 感觉里面介绍的groovy都比较过时了, 比如不支持for循环, 我不知道groovy哪个版本不支持和的, 反正我使用的几个版本(1.6+)没有这样的问题. 翻译的一般, 而且有...
感觉里面涉及到的技术比较老了, 现在说到java脚本语言, 谁会提到beanshell之流, 我只看了里面关于groovy相关的内容, 感觉里面介绍的groovy都比较过时了, 比如不支持for循环, 我不知道groovy哪个版本不支持和的, 反正我使用的几个版本(1.6+)没有这样的问题. 翻译的一般, 而且有...
感觉里面涉及到的技术比较老了, 现在说到java脚本语言, 谁会提到beanshell之流, 我只看了里面关于groovy相关的内容, 感觉里面介绍的groovy都比较过时了, 比如不支持for循环, 我不知道groovy哪个版本不支持和的, 反正我使用的几个版本(1.6+)没有这样的问题. 翻译的一般, 而且有...
感觉里面涉及到的技术比较老了, 现在说到java脚本语言, 谁会提到beanshell之流, 我只看了里面关于groovy相关的内容, 感觉里面介绍的groovy都比较过时了, 比如不支持for循环, 我不知道groovy哪个版本不支持和的, 反正我使用的几个版本(1.6+)没有这样的问题. 翻译的一般, 而且有...
用户评价
一本厚实的书,封面设计简洁大方,光是看着就让人对里面的内容充满期待。拿到手沉甸甸的,页码很多,预感这会是一次深入学习之旅。翻开第一页,字体清晰,排版舒适,这种细节的处理总是能提升阅读的愉悦感。我是一名刚刚接触编程的新手,之前尝试过一些在线教程,但总是感觉碎片化,缺乏系统性。我希望这本书能够从最基础的概念讲起,一步一步地引导我理解编程的逻辑,而不是简单地罗列语法。我尤其关注书中是否有清晰的代码示例,以及是否能解释清楚这些代码背后的原理,这样我才能真正掌握知识,而不是死记硬背。对于那些初学者容易混淆的概念,比如变量的声明和赋值、数据类型的转换、作用域等等,我希望书中能有详细的对比和深入的剖析,帮助我构建扎实的知识体系。同时,这本书的厚度也让我看到了其内容的丰富性,我期待里面能包含一些进阶的内容,比如函数式编程的思想,或者一些常用的设计模式,这样在我掌握了基础之后,还能有更广阔的学习空间。我希望这本书能成为我学习Java脚本的得力助手,陪伴我走过从新手到熟练的每一个阶段。
我是一名在校大学生,学习计算机科学专业,课程中涉及到了很多编程语言,其中Java脚本也是非常重要的一环。我希望这本书能够作为我课程学习的有力补充,为我提供更系统、更深入的讲解。我特别关注书中是否能够解释清楚Java脚本的语言特性,例如它是一种动态类型语言,并且是弱类型的,这与一些强类型语言有很大的不同,我希望书中能有详细的对比和解释,帮助我理解其带来的优势和潜在的风险。对于面向对象编程的思想在Java脚本中的体现,比如原型继承和类继承,我也希望书中能有清晰的讲解和示例。此外,在数据结构和算法方面,我也希望书中能介绍一些在Java脚本中实现常见数据结构和算法的方法,并探讨其性能特点。我期待这本书能够帮助我理解Java脚本的底层原理,为我未来的深入学习打下坚实的基础,甚至能够帮助我理解一些更复杂的概念,比如内存管理和垃圾回收机制。
这本书的内容可能涵盖了Java脚本语言在不同场景下的应用,例如它在服务器端(Node.js)的开发,以及在移动端(React Native等)的开发。我是一名已经有一定编程经验的开发者,但之前主要集中在后端语言,对于JavaScript的生态系统了解不多。我希望这本书能够让我快速地了解JavaScript在现代Web开发中的地位和重要性,并快速掌握其核心的语法和特性。我尤其关心书中是否会介绍一些主流的JavaScript框架和库,例如React、Vue或者Angular,并阐述它们的设计理念和使用方法。同时,对于一些更高级的主题,比如WebAssembly、GraphQL的集成,或者如何利用JavaScript实现高性能的动画效果,我也希望能有相关的介绍。我希望这本书能够帮助我拓展我的技术栈,让我能够更加全面地理解Web开发的整个流程,并有机会尝试跨平台开发。这本书的篇幅似乎预示着其内容的深度和广度,我期待它能够为我提供一个系统性的学习框架,让我能够快速地切入到JavaScript的实际应用开发中去。
最近对前端开发产生了浓厚的兴趣,而Java脚本无疑是前端开发的核心。这本书的书名直接点明了主题,让我眼前一亮。我一直认为,学习编程最重要的是理解“为什么”,而不仅仅是“怎么做”。因此,我非常期待书中能够深入地探讨Java脚本的运行机制,例如事件循环、原型链、闭包等等这些概念,这些是很多教程往往一带而过,但却是理解Java脚本精髓的关键。我希望能通过这本书,真正理解JavaScript的强大之处,以及它如何驱动复杂的Web应用。另外,对于书中提到的“编程”,我更倾向于它能涵盖实际项目开发中的一些常见问题和解决方案,比如如何进行有效的调试,如何优化代码性能,以及如何与HTML和CSS协同工作。对于那些总是困扰我的异步编程问题,我希望书中能有更清晰的讲解,比如Promise和async/await的使用场景和优缺点。我也会关注书中是否有关于模块化开发的讨论,这对于构建大型项目至关重要。总而言之,我希望这本书能够让我从“会写”Java脚本,变成“懂”Java脚本,并且能够独立地解决实际开发中的难题。
这本书的名字虽然是Java脚本编程,但我猜测其内容可能不仅仅局限于语言本身,或许还会涉及一些与Java脚本开发相关的工具链和最佳实践。我是一名对Web开发充满热情的业余爱好者,已经自学了一些前端基础知识,但常常在实际项目开发中遇到瓶颈。我希望这本书能够为我提供一些实用的指导,例如如何选择合适的开发工具,如何进行项目构建和打包(如Webpack、Vite),以及如何进行代码的版本控制(Git)。我更希望书中能介绍一些关于代码质量保证的方法,比如单元测试、集成测试,以及如何编写可维护、可读性强的代码。对于常见的Web安全问题,比如跨站脚本攻击(XSS)、跨站请求伪造(CSRF)等,我也希望能有相关的介绍和防范措施。这本书的出现,让我看到了一个更完整的Web开发视角,我期待它能够帮助我解决在实际开发中遇到的各种挑战,让我能够更自信地构建出高质量的Web应用。
感觉一般般,冲着Groovy章节买得
唯一一本讲解java脚本的书籍.涵盖groovy,rihno,jython等等.很不错.一口气读完了.因为自己的项目也一直在用rihno!
唯一一本讲解java脚本的书籍.涵盖groovy,rihno,jython等等.很不错.一口气读完了.因为自己的项目也一直在用rihno!
感觉一般般,冲着Groovy章节买得
感觉一般般,冲着Groovy章节买得