Course
Software Design Principles
Start designing more complex systems with techniques such as design patterns, SOLID principles, and UML.
Skill level
IntermediateTime to complete
Average based on combined completion rates — individual pacing in lessons, projects, and quizzes may vary1 hourCertificate of completion
Included with paid plansPrerequisites
None
About this course
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.
Syllabus
Meet the creator of the course
Nik Stern
Nik holds a Bachelors and Masters of Science in Computer Science. They are also certified as a Scrum Master, Product Owner, and Online Adult Educator. Software Design Principles course ratings and reviews
191 ratings
- 5 stars
- 4 stars
- 3 stars
- 2 stars
- 1 star
- The progress I have made since starting to use codecademy is immense! I can study for short periods or long periods at my own convenience - mostly late in the evenings.ChrisCodecademy Learner @ USA
- I felt like I learned months in a week. I love how Codecademy uses learning by practice and gives great challenges to help the learner to understand a new concept and subject.RodrigoCodecademy Learner @ UK
- Brilliant learning experience. Very interactive. Literally a game changer if you're learning on your own.John-AndrewCodecademy Learner @ USA
Our learners work at
Join over 50 million learners and start Software Design Principles today!
Looking for something else?
Related resources
- Article
What are UI and UX Design?
Understand the differences between User Interface (UI) design and User Experience (UX) design. - Article
Introduction to User Centered Design
This article provides an introduction to user centered design. - Article
Basics of Software Installation
Learn about how to safely install software on your computer.
Related courses and paths
- Free course
Introduction to UI and UX Design
Get started with User Interface (UI) and User Experience (UX) Design and learn how to wireframe and prototype using Figma.Beginner Friendly2 hours - Course
API Development with Swagger and OpenAPI
Learn how to develop APIs using Swagger tooling and the OpenAPI specification.With CertificateIntermediate< 1 hour - Course
Learn CSS: Responsive Design
Create websites viewable on devices of all sizes using responsive design techniques, such as relative sizing units and media queries.With CertificateIntermediate2 hours
Browse more topics
- Web Development6,971,190 learners enrolled
- JavaScript3,780,230 learners enrolled
- Code Foundations13,348,259 learners enrolled
- For Business9,835,892 learners enrolled
- Computer Science7,576,742 learners enrolled
- Data Science5,886,759 learners enrolled
- Python4,614,864 learners enrolled
- Cloud Computing4,179,709 learners enrolled
- Data Analytics3,988,812 learners enrolled
Unlock additional features with a paid plan
Practice Projects
Guided projects that help you solidify the skills and concepts you're learning.Assessments
Auto-graded quizzes and immediate feedback help you reinforce your skills as you learn.Certificate of Completion
Earn a document to prove you've completed a course or path that you can share with your network.