Advanced Design Patterns: Design Principles

Advanced Design Patterns: Design Principles

English | MP4 | AVC 1280×720 | AAC 48KHz 2ch | 0h 53m | 162 MB

You may be familiar with the fundamental concepts of object-oriented design—inheritance, encapsulation, polymorphism, and abstraction—but there is a set of higher-level design principles that can be used to take your design to the next level. Design principles guide your design decisions to produce software that is more reliable, flexible, and maintainable. Join instructor Eric Freeman as he goes beyond the standard concepts of object-oriented programming to introduce you to the most notable design principles, including encapsulate what varies, favor composition over inheritance, loose coupling, and the SOLID principles. Each lesson includes examples that show how these principles can be used to avoid costly design mistakes and create more maintainable, high-quality software.

Table of Contents

1 Take your design to the next level
2 What are design principles
3 How many design principles are there
4 Design principles and design patterns
5 Encapsulate what varies
6 Favor composition over inheritance
7 Loose coupling
8 Program to interfaces
9 Single responsibility principle
10 Open-closed principle
11 Liskov’s substitution principle
12 Interface segregation principle
13 Dependency inversion principle
14 Continuing your studies