This course is targeted at intermediate to advanced Java developers looking to move to the “next level”. Delivered by Java craftsmen with a minimum of ten years experience, the workshop explores the techniques, idioms and tools available to the modern developer and how best to apply them in live situations.
This is not a one-size-fits-all course - in fact, no two deliveries are ever identical. Listed below are topics that have been used successfully on previous iterations. We recommend cherry-picking the modules most appropriate for your needs, both from those below and those included on any of our other offerings. If you require something that you cannot find listed, please let us know and we will endeavour to provide it.
- Agile best practices such as Refactoring, TDD, BDD and Mocking
- Understanding Generics in-depth and correcting common anti-patterns
- Functional programming using the features introduced in Java 8
- Parallel programming using the Java 8 streams and functional principles
- Using the thread friendly collections and fork-join framework from Java 7
- Crafting representative benchmarks using JMH and optimising Java code
- Scripting on the JVM using the Groovy language and popular libraries
- Writing Domain Specific Languages and Fluid Interfaces in Java and Groovy
- Automating your build process using the Gradle framework and Groovy
- Applying and enhancing Object Oriented Design Patterns in Java 7 and 8
- Modularising your Java code with OSGi or the Java 9 module system
- Exploring new JVM languages like Scala, Clojure and Kotlin