본문 바로가기
개발관련

SOLID, DRY, KISS, YAGNI

by TheWhisperOfLeaves 2019. 11. 21.

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

댓글