클래스는 변경해야할 이유가 하나만 있어야 한다.
책임이란 해야 하는것
객체에 책임을 할당해 작업을 시키는데 단 하나의 책임만 가지는게 좋다.
단일 책임 원칙의 이점?
소프트웨어를 구현하기 쉽게 만들고, 향후 변경될때 부작용을 방지 할 수 있다.
요구사항은 시간이 지나면서 변경을 하게 되는데
이런 요구사항이 클래스의 책임을 변경할수있다.
이렇게 책임을 변경하게 되면 클래스를 다시 책임이 하나가 되도록 변경해줘야한다.
변경하지 않으면 더 복잡하고 부작용이 많아질수 있어 더 많은 작업이 필요하게 된다.
또한, 클래스의 책임이 하나라면 이해하기도 쉬워진다.
변경 사례
하나의 책임이 여러 클래스에 분산되어있는 경우
부가 기능을 별개의 클래스로 분리해 책임을 담당하게 한다.
공통 책임을 한 곳으로 모아준다.
이 공통 책임을 AOP 를 이용해 실행 시킬 수 있다.
기존 코드를 변경 시키지 않고 효과적으로 이용 할 수있다.
'Java > 객체지향 설계' 카테고리의 다른 글
객체지향 설계 - 개방 폐쇄 원칙 (0) | 2021.03.05 |
---|---|
객체지향 특징 - 다형성 (0) | 2021.03.05 |
객체지향 특징 - 상속 (0) | 2021.03.05 |
객체지향 특징 - 캡슐화 (0) | 2021.03.05 |
객체지향의 특징 - 추상화 (0) | 2021.03.03 |