SOLID Software Design Principles in Java
Offered By: Pluralsight
Course Description
Overview
Apply the SOLID principles of object-oriented design in Java applications.
All software developers know the burden of working with brittle systems that acquire lots of technical debt over time. Those applications are fragile, rigid, and almost impossible to evolve. In this course, SOLID Software Design Principles in Java, you will gain the ability to create applications that are less coupled, easier to test, and more maintainable. First, you will learn why it is better to keep your methods and classes small and focused. Next, you will discover how to effectively extend functionality and create correct relationships between your classes. Finally, you will explore how to design proper interfaces and how to decouple your system by depending on abstractions. When you are finished with this course, you will have the skills and knowledge needed to build robust, maintainable applications in Java.
All software developers know the burden of working with brittle systems that acquire lots of technical debt over time. Those applications are fragile, rigid, and almost impossible to evolve. In this course, SOLID Software Design Principles in Java, you will gain the ability to create applications that are less coupled, easier to test, and more maintainable. First, you will learn why it is better to keep your methods and classes small and focused. Next, you will discover how to effectively extend functionality and create correct relationships between your classes. Finally, you will explore how to design proper interfaces and how to decouple your system by depending on abstractions. When you are finished with this course, you will have the skills and knowledge needed to build robust, maintainable applications in Java.
Syllabus
- Course Overview 1min
- Saving the Day with SOLID 10mins
- Understanding the Single Responsibility Principle (SRP) 18mins
- Evolving Code with the Open Closed Principle (OCP) 21mins
- Applying Liskov Substitution Principle (LSP) 19mins
- Modularizing Abstractions with the Interface Segregation Principle (ISP) 18mins
- Decoupling Components with the Dependency Inversion Principle (DIP) 30mins
Taught by
Dan Geabunea
Related Courses
Algorithms, Part IPrinceton University via Coursera Introduction à la programmation orientée objet (en Java)
École Polytechnique Fédérale de Lausanne via Coursera MongoDB for Java Developers
MongoDB University Initiation à la programmation (en Java)
École Polytechnique Fédérale de Lausanne via Coursera Intro to Java Programming
San Jose State University via Udacity