(Beta) Software Design Principles
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.
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.
Codecademy courses have been taken by employees at
— Madelyn, Pinterest“I know from first-hand experience that you can go in knowing zero, nothing, and just get a grasp on everything as you go and start building right away.”