Encapsulation and SOLID
This course teaches how to write maintainable and flexible object-oriented code.
What you'll learn
Learn how to write maintainable software that can easily respond to changing requirements using object-oriented design principles. First, you'll learn about the fundamental object-oriented design principle of Encapsulation, and then you'll learn about the five SOLID principles, also known as 'the principles of object-oriented design.' While this course is aimed at beginner to intermediate developers, it's based on decades of experience, so even advanced programmers can learn a thing or two. There are plenty of code examples along the way; while they're written in C#, they should be easily understandable to readers of Java or other curly-brace-based languages.
Table of contents
- Introduction 0m
- Reusable Components 2m
- Most Code Sucks 1m
- Example: Code That Sucks 4m
- Why Care About Code That Sucks? 5m
- Classic OO Definition of Encapsulation 6m
- Alternative Encapsulation Techniques 4m
- Commands and Queries 8m
- Queries 4m
- Commands 4m
- CQS Makes it Easier to Reason About Code 1m
- Postel's Law 5m
- Input 6m
- Nullable References Are Evil 2m
- Fail Fast 3m
- Output 11m
- Tester/Doer 4m
- TryRead 5m
- Maybe 8m
- Synthesis 8m