YoVDO

Learning S.O.L.I.D. Programming Principles

Offered By: LinkedIn Learning

Tags

Software Design Courses Object-oriented programming Courses Liskov Substitution Principle Courses

Course Description

Overview

Learn the SOLID programming principles to write more stable, scalable code. Get detailed examples and real-world examples of SOLID in action.

Syllabus

Introduction to SOLID Programming
  • Benefits of SOLID Programming Principles
  • What could go wrong?
  • What could go wrong? Part 2
  • Overview of the SOLID principles
1. Interface Segregation Principle
  • Introduction to the Interface Segregation Principle
  • Problem domain objects: Individual data samples
  • Collections of samples
  • Reading and building samples
2. Liskov Substitution Principle
  • Introduction to the Liskov Substitution Principle
  • Duck Typing
  • Interface variations
  • Avoiding isinstance()
3. The Open/Closed Design Principle
  • Introduction to the Open/Closed Design Principle
  • Modifying a class and fixing bugs
  • OCP via inheritance and composition
  • More OCP extension techniques
4. Dependency Inversion Principle
  • Introduction to the Dependency Inversion Principle
  • Dependency injection and application configuration
  • Testing consequences
5. Single-Responsibility Principle
  • Introduction to single responsibility
  • GRASP patterns: High cohesion and indirection
  • More GRASP patterns
6. A Design Process
  • CRC cards
  • Test-driven design
Conclusion
  • Apply SOLID principles to your work

Taught by

Steven Lott

Related Courses

Learn to Program: Crafting Quality Code
University of Toronto via Coursera
Introduction to Agile Software Development: Tools & Techniques
University of California, Berkeley via edX
Software Architecture & Design
Georgia Institute of Technology via Udacity
Software Design for Non-Designers
mooc.house via Independent
Técnicas Avançadas para Projeto de Software
Instituto Tecnológico de Aeronáutica via Coursera