Audience: Software Developers
Prerequisite: Successful completion of TDD-01.3: Emergent Design and Test Organization.
Duration: 3 hours live online instruction, plus about 30 minutes of preparation.
This micro-class covers:
- Core Software Design Principles
- Modularity and Isolation
- Handling External Dependencies with TDD
This is the fourth of five modules in the larger course, TDD-1: Fundamentals of Test-Driven Development.
This class is heavily hands-on, experiential, and interactive. You will practice using TDD for emergent design by writing a text-based adventure game with guidance from the instructor. You will learn explore several core software design principles through hands-on application of TDD. You will learn how to isolate code to enable fine-grained testing as well as for other design benefits. You will learn about test doubles, stubbing, mocking, and minimizing dependencies between code units through clean design. You also receive original written information and links to curated online content with the instructor’s explanatory notes.
Programming exercises are done collaboratively using remote Mob Programming.
Each presentation of the class uses a single programming language. Register for a presentation that uses the language you need to work with. Please see the course calendar to find an appropriate version for your needs.
On successful completion of the course you earn the microcredential for Code Isolation and External Dependencies, which is the fourth of five toward the TDD Fundamentals microcredential.