Scripting in Java: Languages, Frameworks, and Patterns (Paperback)
Dejan Bosanac
- 出版商: Addison Wesley
- 出版日期: 2007-08-01
- 定價: $1,980
- 售價: 6.0 折 $1,188
- 語言: 英文
- 頁數: 552
- 裝訂: Paperback
- ISBN: 0321321936
- ISBN-13: 9780321321930
-
相關分類:
Java 程式語言
立即出貨(限量) (庫存=2)
買這商品的人也買了...
-
$400$316 -
$550$468 -
$990$891 -
$600$480 -
$980$774 -
$680$530 -
$620$527 -
$580$493 -
$680$537 -
$780$616 -
$480$379 -
$750$638 -
$690$587 -
$1,000$950 -
$250$225 -
$780$616 -
$550$468 -
$450$356 -
$680$537 -
$620$558 -
$590$460 -
$580$458 -
$320$272 -
$490$417 -
$780$663
相關主題
商品描述
Description
Groovy and Beyond: Leverage the Full Power of Scripting on the JavaTM Platform!
Using the JavaTM platform’s new scripting support, you can improve efficiency, streamline your development processes, and solve problems ranging from prototyping to Web application programming. In Scripting in Java, Dejan Bosanac covers key aspects of scripting with Java, from the exciting new Groovy scripting language to Java’s new Scripting and Web Scripting APIs.
Bosanac begins by reviewing the role and value of scripting languages, and then systematically introduces today’s best scripting solutions for the Java platform. He introduces Java scripting frameworks, identifies proven patterns for integrating scripting into Java applications, and presents practical techniques for everything from unit testing to project builds. He supports key concepts with extensive code examples that demonstrate scripting at work in real-world Java projects. Coverage includes
· Why scripting languages offer surprising value to Java programmers
· Scripting languages that run inside the JVM: BeanShell, JavaScript, and Python
· Groovy in depth: installation, configuration, Java-like syntax, Java integration, security, and more
· Groovy extensions: accessing databases, working with XML, and building simple Web applications and Swing-based UIs
· Bean Scripting Framework: implementation, basic abstractions, and usage examples
· Traditional and new patterns for Java-based scripting
· JSR 223 Scripting API: language bindings, discovery mechanisms, threading, pluggable namespaces, and more
· JSR 223 Web Scripting Framework: scripting the generation of Web content within servlet containers
About the Web Site
All code examples are available for download at this book’s companion Web site.
Table of Contents
PREFACE XVII
PART I 1
CHAPTER 1 INTRODUCTION TO SCRIPTING 3
BACKGROUND 4
DEFINITION OF A SCRIPTING LANGUAGE 8
COMPILERS VERSUS INTERPRETERS 8
SOURCE CODE IN PRODUCTION 12
TYPING STRATEGIES 13
DATA STRUCTURES 17
CODE AS DATA 19
SUMMARY 23
SCRIPTING LANGUAGES AND VIRTUAL MACHINES 24
A COMPARISON OF SCRIPTING AND SYSTEM PROGRAMMING 26
RUNTIME PERFORMANCE 26
DEVELOPMENT SPEED 28
ROBUSTNESS 29
MAINTENANCE 32
EXTREME PROGRAMMING 33
THE HYBRID APPROACH 35
A CASE FOR SCRIPTING 37
CONCLUSION 38
CHAPTER 2 APPROPRIATE APPLICATIONS FOR SCRIPTING LANGUAGES 39
WIRING 40
UNIX SHELL LANGUAGES 41
PERL 43
TCL 43
PROTOTYPING 44
PYTHON 47
CUSTOMIZATION 49
VISUAL BASIC FOR APPLICATIONS (VBA) 50
SOFTWARE DEVELOPMENT SUPPORT 51
PROJECT BUILDING 51
TESTING 53
ADMINISTRATION AND MANAGEMENT 55
USER INTERFACE PROGRAMMING 58
TK 58
USE CASES 59
WEB APPLICATIONS 59
SCRIPTING AND UNIX 68
SCRIPTING IN GAMES 68
ADDITIONAL CHARACTERISTICS 69
EMBEDDABLE 70
EXTENSIBLE 70
EASY TO LEARN AND USE 71
CONCLUSION 72
PART II 75
CHAPTER 3 SCRIPTING LANGUAGES INSIDE THE JVM 77
UNDER THE HOOD 80
SCRIPTING LANGUAGE CONCEPTS 82
BEANSHELL 83
GETTING STARTED 83
BASIC SYNTAX 86
LOOSELY TYPED SYNTAX 87
SYNTAX FLAVORS 88
COMMANDS 91
METHODS 91
OBJECTS 92
IMPLEMENTING INTERFACES 93
EMBEDDING WITH JAVA 94
JYTHON 98
GETTING STARTED 98
BASIC SYNTAX 101
WORKING WITH JAVA 103
IMPLEMENTING INTERFACES 105
EXCEPTION HANDLING 107
EMBEDDING WITH JAVA 108
CONCLUSION 109
RHINO 110
GETTING STARTED 110
WORKING WITH JAVA 111
IMPLEMENTING INTERFACES 112
JAVAADAPTER 114
EMBEDDING WITH JAVA 114
HOST OBJECTS 117
CONCLUSION 120
GROOVY 120
OTHER SCRIPTING LANGUAGES 122
JRUBY 122
TCL/JAVA 122
JUDOSCRIPT 122
OBJECTSCRIPT 123
CONCLUSION 123
CHAPTER 4 GROOVY 125
WHY GROOVY? 126
INSTALLATION 127
RUNNING GROOVY SCRIPTS 127
USING THE INTERACTIVE SHELL 127
USING THE INTERACTIVE CONSOLE 128
EVALUATING THE SCRIPT FILE 129
COMPILING GROOVY SCRIPTS 130
DEPENDENCIES 131
CLASSPATH 131
ANT TASK 132
SCRIPT STRUCTURE 133
COMMAND-LINE ARGUMENTS 136
LANGUAGE SYNTAX 137
JAVA COMPATIBILITY 137
STATEMENTS 138
LOOSE TYPING 138
TYPE JUGGLING 140
STRINGS 143
GSTRINGS 145
REGULAR EXPRESSIONS 146
COLLECTIONS 148
LOGICAL BRANCHING 154
LOOPING 156
CLASSES 159
OPERATOR OVERLOADING 162
GROOVYBEANS 165
CLOSURES 168
SYSTEM OPERATIONS 178
FILES 178
PROCESSES 182
EMBEDDING WITH JAVA 184
SECURITY 190
CONCLUSION 194
CHAPTER 5 ADVANCED GROOVY PROGRAMMING 195
GROOVYSQL 196
groovy.sql.Sql 198
groovy.sql.DataSet 209
GROOVLETS 212
GROOVY TEMPLATES 220
GROOVYMARKUP 223
groovy.xml.MarkupBuilder 224
groovy.util.NodeBuilder 227
groovy.xml.SaxBuilder 230
groovy.xml.DomBuilder 232
groovy.xml.Namespace 234
groovy.util.BuilderSupport 235
GROOVY AND SWING 236
TableLayout 239
TableModel 241
CONCLUSION 243
CHAPTER 6 BEAN SCRIPTING FRAMEWORK 245
INTRODUCTION TO THE BEAN SCRIPTING FRAMEWORK 246
GETTING STARTED 247
BASIC CONCEPTS 248
ARCHITECTURE 248
REGISTRATION OF SCRIPTING LANGUAGES 249
MANAGER AND ENGINE INITIALIZATION 252
WORKING WITH SCRIPTS 253
WORKING WITH SCRIPT FILES 257
METHODS AND FUNCTIONS 259
call() 259
apply() 263
DATA BINDING 264
REGISTERING BEANS 265
DECLARING BEANS 268
COMPILATION 270
APPLICATIONS 275
JSP 275
XALAN-J (XSLT) 280
CONCLUSION 288
PART III 289
CHAPTER 7 PRACTICAL SCRIPTING IN JAVA 291
UNIT TESTING 292JUNIT BASICS 293
THE GroovyTestCase CLASS 296
ASSERTION METHODS 297
TEST SUITES 300
SCRIPTS AS UNIT TEST CASES 303
SUMMARY 304
INTERACTIVE DEBUGGING 304
BUILD TOOLS (ANT SCRIPTING) 309
BSF SUPPORT 313
GROOVYMARKUP (ANTBUILDER) 316
SUMMARY 322
SHELL SCRIPTING 323
CLASSPATH 324
EXAMPLE 325
ADMINISTRATION AND MANAGEMENT 328
CONCLUSION 334
CHAPTER 8 SCRIPTING PATTERNS 335
SCRIPTED COMPONENTS PATTERN 337
PROBLEM 337
SOLUTION 338
CONSEQUENCES 339
SAMPLE CODE 340
RELATED PATTERNS 341
MEDIATOR PATTERN (GLUE CODE PATTERN) 341
PROBLEM 341
SOLUTION 342
CONSEQUENCES 345
SAMPLE CODE 345
RELATED PATTERNS 354
SCRIPT OBJECT FACTORY PATTERN 354
PROBLEM 355
SOLUTION 355
CONSEQUENCES 356
SAMPLE CODE 356
RELATED PATTERNS 359
OBSERVER (BROADCASTERS) PATTERN 359
PROBLEM 359
SOLUTION 360
CONSEQUENCES 362
SAMPLE CODE 362
RELATED PATTERNS 369
EXTENSION POINT PATTERN 369
PROBLEM 369
SOLUTION 370
CONSEQUENCES 370
SAMPLE CODE 371
RELATED PATTERNS 374
ACTIVE FILE PATTERN 375
PROBLEM 375
SOLUTION 375
CONSEQUENCES 375
SAMPLE CODE 376
CONCLUSION 380
PART IV 383
CHAPTER 9 SCRIPTING API 385
MOTIVATION AND HISTORY 386
INTRODUCTION 388
GETTING STARTED 390
ARCHITECTURE 391
DISCOVERY MECHANISM 391
ENGINE METADATA 393
CREATING AND REGISTERING SCRIPTING ENGINES 395
CREATION METHODS 396
REGISTRATION METHODS 399
EVALUATION 400
ScriptException 403
BINDING 404
ENGINE SCOPE 405
GLOBAL SCOPE 411
SCRIPT CONTEXT 416
CODE GENERATION 428
OUTPUT STATEMENT 429
METHOD CALL SYNTAX 429
PROGRAM 431
ADDITIONAL ENGINE INTERFACES 432
INVOCABLE 432
COMPILABLE 437
THREADING 440
DYNAMIC BINDINGS 442
CONCLUSION 445
CHAPTER 10 WEB SCRIPTING FRAMEWORK 447
ARCHITECTURE 448
CONTEXT 448
SERVLET 449
INTERACTION 451
GETTING STARTED 453
CONFIGURATION 456
DISABLE SCRIPTING 456
SCRIPT DIRECTORY 457
SCRIPT METHODS 458
ALLOW LANGUAGES 459
DISPLAY RESULT 460
BINDINGS 462
APPLICATION 462
REQUEST 464
RESPONSE 468
SERVLET 468
INCLUDE METHOD 469
FORWARD METHOD 471
SESSION SHARING 473
LANGUAGE TAGS 478
THREADING ISSUES 481
ARCHITECTURAL CHALLENGES 482
INTEGRATION OF JAVA AND PHP APPLICATIONS 482
JAVA BUSINESS LOGIC IN PHP WEB APPLICATIONS 484
PHP VIEWS IN JAVA WEB APPLICATIONS 487
CONCLUSION 488
PART V 489
APPENDIX A GROOVY INSTALLATION 491
DOWNLOAD INSTRUCTIONS 491
INSTALLING GROOVY 492
CONFIGURING GROOVY 492
TESTING GROOVY 492
APPENDIX B GROOVY IDE SUPPORT 495
INSTALLATION 495
USAGE 497
APPENDIX C INSTALLING JSR 223 499
REQUIREMENTS 500
INSTALLATION 500
INDEX 503
商品描述(中文翻譯)
描述
Groovy and Beyond: 在Java平台上充分利用腳本的力量!
利用Java平台的新腳本支援,您可以提高效率,簡化開發流程,並解決從原型開發到Web應用程式編程的各種問題。在《Scripting in Java》中,Dejan Bosanac介紹了使用Java腳本的關鍵方面,從令人興奮的新Groovy腳本語言到Java的新腳本和Web腳本API。
Bosanac首先回顧了腳本語言的角色和價值,然後系統地介紹了當今Java平台上最佳的腳本解決方案。他介紹了Java腳本框架,確定了將腳本整合到Java應用程式中的成熟模式,並提供了從單元測試到專案建置的實用技巧。他通過大量的代碼示例支持關鍵概念,展示了腳本在真實世界Java專案中的應用。內容包括:
- 為什麼腳本語言對Java程序員提供了意想不到的價值
- 在JVM內運行的腳本語言:BeanShell、JavaScript和Python
- 深入了解Groovy:安裝、配置、類似Java的語法、Java整合、安全性等
- Groovy擴展:訪問數據庫、處理XML,以及構建簡單的Web應用程式和基於Swing的UI
- Bean Scripting Framework:實現、基本抽象和使用示例
- 基於Java的腳本的傳統和新模式
- JSR 223腳本API:語言綁定、發現機制、線程、可插入的命名空間等
- JSR 223 Web腳本框架:在servlet容器中腳本生成Web內容
關於網站
本書的所有代碼示例都可以在附帶網站上下載。
目錄
前言
```