SOLID 설계 원칙은 객체 지향 설계의 다섯 가지 기본 원칙을 의미하며, 이를 잘 준수하여 소프트웨어를 설계하면 유지보수와 확장성이 좋은 코드를 작성할 수 있다.
객체 지향 프로그래밍은 현실 세계의 모든 사물들을 소프트웨어의 코드로 표현하기 위해 각 사물들을 객체(Object)로 보고, 해당 객체의 핵심적인 개념 및 기능만을 추출하는 추상화(Abstraction)을 통해 소프트웨어를 모델링하는 패러다임을 말한다.