Contribute to clojurians-org/groovy-ebook development by creating an account on GitHub. Jun 2, a Groovy script that produces this book from docbook format to PDF. assert "$ nick is $book" == 'ReGina is Groovy in Action, 2nd ed.'. Groovy in Action, Second Edition is a thoroughly revised, comprehensive guide to Groovy programming. It introduces Java developers to the dynamic features.

Groovy In Action Second Edition Pdf

Language:English, Indonesian, German
Published (Last):26.05.2016
ePub File Size:26.50 MB
PDF File Size:16.76 MB
Distribution:Free* [*Registration needed]
Uploaded by: TIANA

Groovy in Action by Dierk König and his coauthors is a clear and detailed From the beginning, it was clear that Groovy would need a book like Groovy. assert "$nick is $book" == 'ReGina is Groovy in Action, 2nd ed.' Chapter 3 provides To download their free eBook in PDF, ePub, and site formats, owners. American stock investor of modern time got that way. It could be a godsend to the legion Phil Adobe Systems Incorporat.

The Groovy basics, as the name implies, covers the foundation of Groovy and gives a great start to grasp the language. This chapter is followed by the Groovy Datatypes and Collections, which really show the power and flexibility of Groovy, and showing the start of learning how to use functional programming with the Groovy programming language. This is completed by introducing Closures, one of the core language elements of Groovy.

The chapters after this make the first part actually already a complete book, and we could have stopped there if we wanted to limit ourselves to the language only. But the reasons which make Groovy such a compelling choice is not only the flexibility of the language, but also the ecosystem around it.

A lot of that knowledge has been put into the Groovy book, and I really hope it will prove useful in increasing the quality of your software. Besides testing software, concurrency, always a complex topic, and DSLs, which for me, is one of the most interesting chapters in the book, since it brings a lot the previously covered chapters together and shows some real world examples on how to build your own DSL.

You might also like Friday Repost: Preventing spam with Groovy and Grails. Friday Repost: Notes on Groovy collections 4. Understanding concurrent modification. Distinguishing between copy and modify semantics. Working with closures 5.

You might also like: XODO PDF READER & EDITOR

A gentle introduction to closures. The case for closures 5. Using iterators. Handling resources with a protocol. Declaring closures 5.

Simple declaration. Using assignments for declaration.

Referring to methods as closures. Comparing the available options. Using closures 5. Calling a closure. Understanding closure scope 5. Simple variable scope.

Scoping at work: Support for design patterns 5. Relationship to the Visitor pattern.

Customers who viewed this item also viewed

Relationship to the Builder pattern. Relationship to other patterns.

Groovy control structures 6. Groovy truth 6. Evaluating Boolean tests. Assignments within Boolean tests.

Book Review: Groovy 2 Cookbook

Conditional execution structures 6. The humble if statement.

The conditional?: The switch statement and the in operator. Sanity checking with assertions. Looping 6. Looping with while.

Exiting blocks and methods 6. Normal termination: Object orientation, Groovy style 7. Defining classes and scripts 7. Defining fields and local variables. Safe dereferencing with the?. Organizing classes and scripts 7. File to class relationship.

Organizing classes in packages. Further classpath considerations. Advanced object-oriented features 7. Using inheritance. Working with GroovyBeans 7.

Book Details

Declaring beans. Using bean methods for any object. Fields, accessors, maps, and Expando. Using advanced syntax features 7. Querying objects with GPaths. Injecting the spread operator. Concise syntax with command chains.

Dynamic programming with Groovy 8. What is dynamic programming? Customizing the MOP with hook methods 8. Customizing methodMissing. Using closures for dynamic hooks. Customizing GroovyObject methods. Modifying behavior through the metaclass 8.

MetaClass knows it all.

How to find the metaclass and invoke methods. Temporary MOP modifications using category classes. Using the Category annotation. Real-world dynamic programming in action 8. Calculating with metrics. Replacing constructors with factory methods.

Groovy in Action, Second Edition

Fooling IDEs for fun and profit. Undoing metaclass modifications. Compile-time metaprogramming and AST transformations 9. A brief history 9. Generating bytecode, not source code.

Putting the power of code generation in the hands of developers. Making Groovy cleaner and leaner 9. Code-generation transformations. Class design and design pattern annotations. Easier cloning and externalizing. Exploring AST 9. Tools of the trade. AST by example: Creating by hand. Limitations 9. Groovy as a static language Motivation for optional static typing The role of types in Groovy. Type checking a dynamic language?

Using TypeChecked Finding typos. Revisiting dynamic features in light of type checking. Mixing type-checked code with dynamic code. Flow typing Least upper bound. Static compilation Static type checking extensions DelegatesTo revisited. Type checking extension scripts.

Working with builders Learning by example: Using a builder. Building object trees with NodeBuilder NodeBuilder in action: Understanding the builder concept. Working with MarkupBuilder Building XML.

Working with StreamingMarkupBuilder. Task automation with AntBuilder From Ant scripts to Groovy scripts. Smart automation scripts with logic. Reading a password with SwingBuilder. Application design with FXML. Creating your own builder Subclassing BuilderSupport.

Subclassing FactoryBuilderSupport. Working with the GDK Working with objects Interactive objects. Traversing the filesystem. Writing to output destinations. Streaming serialized objects. Working with threads and processes Groovy multithreading. Integrating external processes. Working with templates Understanding the template format. Working with Groovlets Starting with "Hello world". Database programming with Groovy Groovy SQL: Setting up for database access.

Advanced Groovy SQL Performing transactional updates. Working with named and named-ordinal parameters. Using DataSet operations. Organizing database work Architectural overview. Specifying the application behavior. Implementing the infrastructure. Using a transparent domain model. Implementing the application layer. Groovy and NoSQL A document-style database.

Reading XML documents Working with a DOM parser. Reading with a Groovy parser. Processing XML In-place processing. Parsing and building JSON Parsing JSON.

Interacting with Web Services An overview of Web Services. Applying SOAP Simplifying SOAP access using groovy-wslite. Integrating Groovy Prelude to integration Integrating appropriately. Evaluating expressions and scripts with GroovyShell Starting simply.

Passing parameters within a binding. Generating dynamic classes at runtime. Further parameterization of GroovyShell.

Using the Groovy script engine Setting up the engine. Defining a different resource connector. Working with the GroovyClassLoader Parsing and loading Groovy classes. The chicken and egg dependency problem.

Providing a custom resource loader. Playing it safe in a secured sandbox. Spring integration Wiring GroovyBeans.The script engine manager and its script engines. Groovy truth 6. Working with the GroovyClassLoader Using inheritance. Creating your own builder What is Groovy? Working with closures 5.

Groovy control structures Groovy truth Conditional execution structures Looping Exiting blocks and methods Summary Chapter 7: Creating by hand. Using online resources.