Audience: programmers. You'll learn how to sustain a high-quality object-oriented design in your system by using TDD.
- Class size: 10 to 20
- Prerequisites: 6 months TDD experience
Please call +1-719-287-GEEK or email us to schedule now or ask questions.
Pricing / Details
Object-Oriented Design in Agile is a hands-on programming course that teaches design concepts through extensive exercises. All exercises are done via the application of test-driven development.
Upon completion of this course, you will:
- understand and be able to create core "agile" UML models
- class models
- sequence models
- state models
- collaboration models
- activity models
- understand the SOLID class design principles and how to apply them in code
- be able to know when to use UML to help solve problems
- understand how the refactoring step in TDD relates to design
- understand how to incorporate design patterns
- understand the concept of simple design
- learn several of the core design patterns
- understand how to approach OO design in the context of a software development process
- learn how to gather and analyze requirements with use cases
- understand the distinctions between use cases and user stories
Most importantly, you'll understand how TDD allows you to incrementally grow a system while ensuring it maintains an optimal design, one that promotes and sustains low-cost maintenance.
Currently this course is offered in Java. With reasonable advance notice, we can also deliver a comparable course for C++, C#, and Ruby.
Jeff Langr at LinkedIn
News: Beta Publication of Modern C++ Programming with TDD
New blog post, "A Story Isn't a Feature"
New blog post, "C++11: Using Lambdas to Support a Times-Repeat Loop"
New blog post, "C++11 Via TFL (Test-Focused Learning): The Range-Based For Loop"