From the course: Learning SOLID Programming Principles
Unlock the full course today
Join today to access over 24,500 courses taught by industry experts.
CRC cards - Python Tutorial
From the course: Learning SOLID Programming Principles
CRC cards
- [Instructor] What's a good approach to creating a solid design? Each class needs to have a single responsibility, be open to extension while closed to modification, support Liskov off substitution have segregated interfaces and be dependent on abstractions. There are a lot of considerations. Here are two suggestions for tools that can help move from a story to a design. It can help to make paper cards. Yes paper, showing a class described by the responsibilities and collaborators. These CRC cards can be used to gather ideas and details of the class design. Automated test code is just as important as the application code. And I'll describe that separately. I'd like to start by looking at an old technique called CRC, class responsibility collaborators. The definitive guide to this is a white paper by Scott Ambler written way back in 1998. The CRC process is designed to be simple and flexible. The goal is to refine…
Practice while you learn with exercise files
Download the files the instructor uses to teach the course. Follow along and learn by watching, listening and practicing.