SOLID 원칙의 역사와 중요성을 면접 상황 예시를 통해 설명함
SRP, OCP, LSP, ISP, DIP 등 5가지 원칙의 핵심 내용과 오해를 정리함
클린 아키텍처 및 안드로이드 개발 사례를 통해 실질적인 적용 방법 제시
SRP(단일 책임 원칙)은 클래스가 변경될 이유가 단 하나여야 함을 강조한다. 수신/여신 금리 계산 예시에서, 책임 분리 실패는 유지보수성 저하와 예상치 못한 버그 발생으로 이어진다. 따라서, 각 모듈의 책임 분리를 통해 코드의 응집도를 높여야 한다.
OCP(개방-폐쇄 원칙)은 기존 코드 수정 없이 확장을 가능하게 한다. 상하/좌우 스크롤 화면 전환 예시에서, 템플릿 메서드 패턴 또는 전략 패턴을 활용하여 유연한 구조를 설계한다. 를 통해 을 적용하면 및 가 가능하다.
DIP(의존성 역전 원칙)은 추상화에 의존하고 구체화에 의존하지 않도록 한다. 클린 아키텍처에서 Use Cases는 Presenter를 참조하기 위해 DIP를 활용한다. 인터페이스를 정의하고 구현체를 주입함으로써, 제어 흐름 역전을 통해 유연한 아키텍처를 구축하고 변경에 강한 시스템을 설계할 수 있다.