O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Learning Path: Groovy

Video Description

Discover the simplicity and power of Groovy.

Groovy is a powerful, multi-faceted language for the Java platform that integrates smoothly with any Java program. In this Learning Path, you'll see how writing anything—from a simple build script to a full-scale application—is much easier with Groovy than with Java. Discover the many advantages of adding Groovy to projects written in Java and other object-oriented languages.

Table of Contents

  1. Welcome 00:01:08
  2. Groovy and Other Non-Java Languages On The JVM 00:05:07
  3. Installing Groovy 00:09:39
  4. Running a "Hello, World" Script 00:10:28
  5. Running Groovy from Java 00:10:38
  6. Asserts, Imports, and Def 00:10:58
  7. Integer and Floating Point Types 00:05:34
  8. Operator Overloading 00:06:31
  9. Strings and Groovy Strings 00:12:26
  10. Multiline Strings and the "Slashy" String Syntax for Regular Expressions 00:10:34
  11. A Lot of Power From Little Code 00:19:33
  12. Groovy Ranges and Lists 00:10:49
  13. Maps and Sets 00:13:09
  14. Iterating Using Closures 00:16:04
  15. Transforming Collections with the Collect Method 00:10:03
  16. Demo: Accessing the Google Geocoder Web Service 00:15:09
  17. Demo: Accessing the ICNDB Web Service 00:09:30
  18. Safe Navigation, Spaceship Operator, and Elvis 00:12:53
  19. Demo: Sorting Strings 00:16:47
  20. Demo: Summing Numbers 00:11:02
  21. Demo: Closures As A Filter 00:09:02
  22. Demo: Processing Web Pages 00:05:21
  23. Demo: Printing Padded Binary Strings 00:04:38
  24. A Quick Groovy Review 00:24:05
  25. Using Groovy POGOs in a Java Banking Example 00:14:35
  26. Using XmlSlurper and JsonSlurper 00:14:14
  27. Builders 00:16:30
  28. Demo: Using Flickr's API to Display Pictures 00:15:02
  29. Demo: Open Weather 00:22:07
  30. The Metaclass/Adding Properties and Methods 00:07:08
  31. Categories 00:08:10
  32. Demo: Enhancing Existing Java Classes 00:12:37
  33. Demo: Extra Logging Levels 00:13:16
  34. Introduction to AST Transforms 00:04:51
  35. @Delegate 00:08:30
  36. @Immutable 00:08:27
  37. @Singleton 00:03:32
  38. @Sortable 00:06:50
  39. @Builder, @TypeChecked, @Compile AST Transformations Wrap Up 00:13:00
  40. Methods on Collections 00:09:16
  41. Methods on Strings and Numbers 00:14:12
  42. Combinations and Permutations 00:06:19
  43. File I/O 00:13:43
  44. How Operators Map to Methods and Examples from the Groovy Libraries 00:08:42
  45. Adding Operator Methods 00:12:50
  46. Accessing Databases 00:12:57
  47. CRUD Methods 00:14:28
  48. Calling Stored Procedures 00:13:16
  49. A Quick Groovy Review 00:21:39
  50. Introduction to Spock 00:05:59
  51. Blocks: expect 00:07:07
  52. Blocks: when/then 00:10:09
  53. Blocks: setup, cleanup, the old Method, and Exception Handling 00:07:03
  54. Data-Driven Specs 00:09:48
  55. Database-Driven Specs and Processed Inputs 00:08:19
  56. Mocking Collaborators 00:15:40
  57. POGOs as Spring Beans 00:18:25
  58. Refreshable Beans 00:08:45
  59. Groovy Aspects and Inline Scripted Beans 00:12:23
  60. Grails and Spring 00:06:35
  61. Groovy and Spring Boot 00:08:35
  62. JPA and Groovy 00:10:27
  63. NoSQL and Groovy 00:24:33
  64. Closures, Lambdas, and Currying 00:18:52
  65. Map-filter-reduce and Inject 00:10:47
  66. Immutable Objects 00:08:03
  67. Composition, Method References, and Memoize 00:13:19
  68. Trait Basics 00:05:53
  69. Multiple Traits, Traits with Properties, Conflicts, Runtime Traits, and Other Features 00:11:57
  70. Demo: Creating a Range 00:09:49
  71. Demo: Basic Authentication 00:07:58
  72. Demo: Closure Coercion 00:13:16
  73. Demo: Returning from Closures 00:11:31
  74. Demo: Dates and Times 00:04:35
  75. REST Principles 00:11:45
  76. Groovy Clients for REST 00:08:03
  77. Implementing RESTful Services Using JAX-RS 00:18:09
  78. Customizing Messages with JsonBuilder and JsonSlurper 00:09:09
  79. REST with Ratpack and Grails 00:09:24
  80. Course Wrap Up 00:01:47