YoVDO

Software Design Principles

Offered By: Codecademy

Tags

Software Development Courses Object-oriented programming Courses Software Engineering Courses Software Design Courses Design Patterns Courses

Course Description

Overview

Start designing more complex systems with techniques such as design patterns, SOLID principles, and UML.

### Why Learn Software Design Principles?

As we create increasingly complex projects, we worry not just about writing new code, but how that code is going to fit in with the rest of our application. When we stop being able to add new code effectively, we stop being able to solve new problems, grinding progress to a halt. Software design helps us to create software that can adapt to change over time. This allows us to create software that can continuously improve and adapt to our users' changing needs.

### Take-Away Skills

This course is a great introduction to fundamental principles of software design. You will learn to apply the principles of Object-Oriented Programming, Design Patterns, the SOLID principles, and high-level architectures to guide the implementation of your projects. These concepts are a necessity for dealing with professional-level codebases, working with other engineers, and will greatly enhance your software engineering skillset.

### Note on Prerequisites

This course assumes that you have experience with an Object-Oriented Programming language and that you are familiar with concepts such as classes and methods.

Syllabus

  • Welcome to Software Design Principles: Learn about what the Software Design Principles course has in store!
    • Article: Welcome to Software Design Principles
  • Software Design Principles: Get familiar with designing software systems!
    • Article: Introduction to Software Design
    • VideoContentItem: Why Object-Oriented Programming?
    • Article: Introduction to OOP and UML
    • Article: The SOLID Principles
    • Article: Introduction to Design Patterns
    • Article: Introduction to Model View Controller
  • Software Design Principles: Next Steps: You've completed the Software Design Principles course! What's next?
    • Article: Software Design Principles: Next Steps

Taught by

Zoe Bachman

Related Courses

Introduction à la programmation orientée objet (en Java)
École Polytechnique Fédérale de Lausanne via Coursera
C++ For C Programmers, Part A
University of California, Santa Cruz via Coursera
Introduction to Programming for Musicians and Digital Artists
California Institute of the Arts via Coursera
Beginning Game Programming with C#
University of Colorado System via Coursera
Paradigms of Computer Programming
Université catholique de Louvain via edX