Make Your DESIGN More Testable (Jan 2022)

Four half-days: 10:00-13:30 PST (1800-2130 UTC)

About This Class

This is the follow-on class for Make Your Code More Testable, where we step back and look at how to make your DESIGN more testable. This class focuses on leveraging Domain-Driven Design with the Hexagonal Architecture (aka Ports & Adapters), and how separation of concerns with clear boundaries help make your code more testable.

See below for more details

Purchasing Power Parity

If you are in a country where the cost of this class is out of your reach, you are unemployed, or are an underrepresented minority, please contact me for a special discount code: mydmt@tedmyoung.com

Tickets Prices in USD

Additional Information

Prerequisites

You don't need to be a Java expert, but you will need to be able to read and write straightforward Java code as all exercises and code samples are in Java. Since we won't be using any complex Java libraries, if you know C#, you'll also be able to get a lot out of this class. For JavaScript/TypeScript you won't get as much as we'll lean a lot on automated refactorings that can't be easily done in JS/TS, however all of the concepts still apply to object-oriented code.

Class Format & Schedule

This is an online, real-time, interactive class taught through Zoom, starting at 10am PST (1800 UTC) for 3 1/2 hours (including breaks). The class is spread across 4 days to fit in your day, as well as provide lots of sleep cycles in between to improve your learning.

Bonus Chat

After each day's session, we'll have a 1-hour free-form chat and Q&A session. It's completely optional and included as part of your registration fee.

The Content

This class focuses on higher-level code design and organization issues, where classes and packages interact with each other, and look at ways to make "legacy code" more testable by separating concerns. We’ll refactor "messy" code in small, safe steps towards the Hexagonal Architecture. You'll see how to drive new implementation via the Test-Driven Development process, diving deeper into different kinds of Test Doubles.

Parting Gifts

After the class is over, you will get:

  • Copies of all slides
  • Code shown and worked on during class
  • Video recording of the entire class for your review
  • Additional readings and resources for learning more
  • Access to a private Discord community to ask questions and discuss testable code with peers