Groovy Programming
An Introduction for Java Developers
- 1st Edition - December 6, 2006
- Authors: Kenneth Barclay, John Savage
- Language: English
- Paperback ISBN:9 7 8 - 0 - 1 2 - 3 7 2 5 0 7 - 3
- eBook ISBN:9 7 8 - 0 - 0 8 - 0 4 7 1 5 9 - 4
Groovy Programming is an introduction to the Java-based scripting language Groovy. Groovy has much in common with popular scripting languages such as Perl, Python, and Ruby, but is… Read more
Purchase options
Institutional subscription on ScienceDirect
Request a sales quote- The first comprehensive book on Groovy programming that shows how writing applications and scripts for the Java platform is fast and easy
- Written by leading software engineers and acclaimed computing instructors
- Offers numerous programming examples, code samples, detailed case studies, exercises for self-study, and a companion website with a Windows-based Groovy editor
Dedication
Foreword
Preface
About the authors
Chapter 1: Groovy
1.1 Why Scripting?
1.2 Why Groovy?
Chapter 2: Numbers and Expressions
2.1 Numbers
2.2 Expressions
2.3 Operator Precedence
2.4 Assignment
2.5 Increment and Decrement Operators
2.6 Object References
2.7 Relational and Equality Operators
2.8 Exercises
Chapter 3: Strings and Regular Expressions
3.1 String Literals
3.2 String Indexing and Slicing
3.3 Basic Operations
3.4 String Methods
3.5 String Comparison
3.6 Regular Expressions
3.7 Exercises
Chapter 4: Lists, Maps, and Ranges
4.1 Lists
4.2 List Methods
4.3 Maps
4.4 Map Methods
4.5 Ranges
4.6 Exercises
Chapter 5: Simple Input and Output
5.1 Simple Output
5.2 Formatted Output
5.3 Simple Input
5.4 Exercises
Chapter 6: Case study
6.1 Iteration I: Specification and List Implementation
6.2 Iteration 2: Map Implementation
6.3 Exercises
Chapter 7: Methods
7.1 Methods
7.2 Method Parameters
7.3 Default Parameters
7.4 Method Return Values
7.5 Parameter Passing
7.6 Scope
7.7 Collections as Method Parameters and Return Values
7.8 Exercises
Chapter 8: Flow of Control
8.1 While Statement
8.2 For Statement
8.3 If Statement
8.4 Switch Statement
8.5 Break Statement
8.6 Continue Statement
8.7 Exercises
Chapter 9: Closures
9.1 Closures
9.2 Closures, Collections, and Strings
9.3 Other Closure Features
9.4 Exercises
Chapter 10: Files
10.1 Command Line Arguments
10.2 File Class
10.3 Exercises
Chapter 11: Case study
11.1 Iteration I: Specification and Map Implementation
11.2 Iteration 2: Implementation of a Text-Based User Interface
11.3 Iteration 3: Implementation with Closures
11.4 Exercises
Chapter 12: Classes
12.1 Classes
12.2 Composition
12.3 Exercises
Chapter 13: Case study
13.1 Specification
13.2 Iteration 1: An Initial Model
13.3 Iteration 2: Augment the Model
13.4 Iteration 3: Reinstate the User Interface
13.5 Exercises
Chapter 14: Inheritance
14.1 Inheritance
14.2 Inherited Methods
14.3 Redefined Methods
14.4 Polymorphism
14.5 The Abstract Class
14.6 The Interface Class
14.7 Exercises
Chapter 15: Unit testing (junit)
15.1 Unit Testing
15.2 The Groovytestcase and Junit Testcase Classes
15.3 The Groovytestsuite and Junit Testsuite Classes
15.4 The Role of Unit Testing
15.5 Exercises
Chapter 16: Case study
16.1 Specification
16.2 Iteration 1: Confirm the Polymorphic Effect
16.3 Iteration 2: Demonstrate the Required Functionality
16.4 Iteration 3: Provide User Feedback
16.5 Iteration 4: Enforce Constraints
16.6 Exercises
Chapter 17: Persistence
17.1 Simple Queries
17.2 Relations
17.3 Database Updates
17.4 Objects From Tables
17.5 Inheritance
17.6 The Spring Framework
17.7 Exercises
Chapter 18: Case study
18.1 Iteration 1: Persist the Domain Model
18.2 Iteration 2: The Impact of Persistence
18.3 Exercises
Chapter 19: XML Builders and Parsers
19.1 Groovy Markup
19.2 Markupbuilder
19.3 Xml Parsing
19.4 Exercises
Chapter 20: GUI Builders
20.1 Swingbuilder
20.2 Lists and Tables
20.3 Box and Boxlayout Classes
20.4 Exercises
Chapter 21: Template Engines
21.1 Strings
21.2 Templates
21.3 Exercises
Chapter 22: Case study
22.1 Iteration I: Prototype the Gui
22.2 Iteration 2: Implement the Handlers
22.3 Exercises
Chapter 23: Server-side Programming
23.1 Servlets
23.2 Groovlets
23.3 Gsp Pages
23.4 Exercises
Chapter 24: Case study
24.1 Iteration I: Web Implementation
24.2 Exercise
Chapter 25: Epilogue
Software Distribution
A.1 The Java Development Kit
A.2 The Groovy Development Kit
A.3 Ant
A.4 The Derby/Cloudscape Database
A.5 The Spring Framework
A.6 The Tomcat Server
A.7 Eclipse Ide
A.8 The Textbook Sources
Groovy
B.1 Simple and Elegant
B.2 Methods
B.3 Lists
B.4 Classes
B.5 Polymorphism
B.6 Closures
B.7 Exceptions
More on Numbers and Expressions
C.1 Classes
C.2 Expressions
C.3 Operator Associativity
C.4 Variable Definitions
C.5 Compound Assignment Operators
C.6 Logical Operators
C.7 Conditional Operator
C.8 Qualified Numeric Literals
C.9 Conversions
C.10 Static Typing
C.11 Testing
More on Strings and Regular Expressions
D.1 Regular Expressions
D.2 Single Character Match
D.3 Match at the Beginning
D.4 Match at the End
D.5 Match Zero or More
D.6 Match One or More
D.7 Match None or One
D.8 Match Number
D.9 Character Classes
D.10 Alternation
D.11 Miscellaneous Notations
D.12 Grouping
More on Lists, Maps, and Ranges
E.1 Classes
E.2 Lists
E.3 Ranges
E.4 The Spread Operator
E.5 Testing
More on Simple Input and Output
F.1 Formatted Output
F.2 Console Class
More on Methods
G.1 Recursive Methods
G.2 Static Typing
G.3 Actual Parameter Agreement
G.4 Method Overloading
G.5 Default Parameter Ambiguity
G.6 Collections as Method Parameters and Return Values
More on Closures
H.1 Closures and Ambiguity
H.2 Closures and Methods
H.3 Default Parameters
H.4 Closures and Scope
H.5 Recursive Closures
H.6 Static Typing
H.7 Actual Parameter Agreement
H.8 Closures, Collections, and Ranges
H.9 Return Statement
H.10 Testing
More on Classes
I.1 Properties and Visibility
I.2 Object Navigation
I.3 Static Members
I.4 Operator Overloading
I.5 The Invokemethod
I.6 Exercises
Advanced Closures
J.1 Simple Closures
J.2 Partial Application
J.3 Composition
J.4 Patterns of Computation
J.5 Business Rules
J.6 Packaging
J.7 List Reduction
J.8 Exercises
More on Builders
K.1 Antbuilder
K.2 Specialized Builders
More on GUI Builders
L.1 Menus and Toolbars
L.2 Dialogs
Bibliography
Index
- No. of pages: 496
- Language: English
- Edition: 1
- Published: December 6, 2006
- Imprint: Morgan Kaufmann
- Paperback ISBN: 9780123725073
- eBook ISBN: 9780080471594
KB
Kenneth Barclay
JS