SOLID, DRY, KISS, YAGNI는 무엇인가?
위 4가지는 코딩을 할 때 지키면 좋은 원칙이라 할 수 있다. 나누어서 보면 SOLID는 객체 지향 프로그래밍 및 설계의 5가지 원칙이고, DRY, KISS, YAGNI는 개발 원칙이라 보면 된다.
SOLID는 무엇인가?
위키 백과를 보면 다음과 같이 정리되어 있다.
두문자(약어) | 개념 |
---|---|
SRP | 단일 책임 원칙 (Single responsibility principle) - 한 클래스는 하나의 책임만 가져야 한다. |
OCP | 개방 - 폐쇄 원칙 (Open/closed principle) - 소프트웨어 요소는 확장에는 열려 있으나 변경에는 닫혀 있어야 한다. |
LSP | 리스코프 치환 원칙 (Liskov substitution principle) - 프로그램의 객체는 프로그램의 정확성을 깨뜨리지 않으면서 하위 타입의 인스턴스로 바꿀 수 있어야 한다. |
ISP | 인터페이스 분리 원칙 (Interface segregation principle) - 특정 클라이언트를 위한 인터페이스 여러 개가 범용 인터페이스 하나보다 낫다. |
DIP | 의존관계 역전 원칙 (Dependency inversion principle) - 프로그래머는 "추상화에 의존해야지, 구체화에 의존하면 안된다." |
그럼 나머지 3가지 원칙을 알아보자.
DRY (Don't Repeat Yourself) - 같은 코드를 반복하지마라.
KISS (Keep It Simple, Stupid.) - 단순하게 하라
YAGNI (You Ain't Gonna Need It) - 정말 필요할 때까지 해당 기능을 만들지 말라
사실 나도 개발을 하면서 중복되는 코드 쓰지 말아야지, 쉽게 만들어야지 등등 생각을 하는데 이런걸 약어로 해서 원칙으로 있다는 것도 알고 있자
'개발관련' 카테고리의 다른 글
개발자 추천 블로그 (0) | 2020.03.31 |
---|---|
IT 및 개발 용어 정리 (1) | 2019.11.04 |
댓글