SOLID Software Design Principles in Java

Learn how to apply the SOLID principles of object-oriented design in Java applications to create loosely coupled systems that are easy to change, test, and maintain.
Course info
Rating
(43)
Level
Intermediate
Updated
Jun 25, 2019
Duration
2h 0m
Table of contents
Course Overview
Saving the Day with SOLID
Understanding the Single Responsibility Principle (SRP)
Evolving Code with the Open Closed Principle (OCP)
Applying Liskov Substitution Principle (LSP)
Modularizing Abstractions with the Interface Segregation Principle (ISP)
Decoupling Components with the Dependency Inversion Principle (DIP)
Description
Course info
Rating
(43)
Level
Intermediate
Updated
Jun 25, 2019
Duration
2h 0m
Description

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.

About the author
About the author

Dan is a passionate software developer, clean code enthusiast, and blogger. He loves to write code and to create software courses for aspiring programmers.

Section Introduction Transcripts
Section Introduction Transcripts

Course Overview
Hi everyone, and welcome to my course, SOLID Software Design Principles in Java. My name is Dan Geabunea, aka the Romanian Coder. I'm a passionate software developer, clean code enthusiast, and blogger. You can find me on line at romaniancoder.com. This course is all about improving the quality, design, and maintainability of your Java applications by applying the five SOLID principles of object-oriented design, principles that each professional Java developer should understand. During this course, you'll see why technical debt is the number one challenge that many software projects face. You'll learn about the five SOLID principles. Then you'll see how to correctly identify violations of these principles and how to refactor code and correct these violations. By the end of this course, you'll be able to understand the SOLID principles of object-oriented design and apply them to create more robust systems that are easy to change and maintain over time. Before beginning this course, you should be familiar with the Java programming language at an intermediate level. From here you should feel comfortable diving into more code quality courses on design patterns and test-driven development. I hope you'll join me on this journey to create clear code with the SOLID Software Design Principles in Java course here, at Pluralsight.