적절한 객체에게 적절한 책임을 할당하여 서로 메시지를 주고 받으며 협력하도록 하는 것
점점 증가하는 sw 복잡도를 낮추기 위해 객체지향 패러다임 대두
높은 응집도, 낮은 결합도 -> 유지보수가 용이하다. 영향도를 파악할 수 있어야 한다.
중요한 포인트!
1. 클래스가 아닌 객체에 초점을 맞추는 것
2. 객체들에게 얼마나 적절한 역할과 책임을 할당하는지
절차지향 프로그래밍 vs 객체지향 프로그래밍
절차 지향 - 책임이 한곳에 집중해 있는 방식 (getter)
객체지향 - 책임이 여러 객체로 적절히 분산돼 있는 방식
객체지향 설계 시 고려할 것
1. 도메인을 구성하는 객체에는 어떤 것들이 있는지 고민
2. 객체들간의 관계를 고민
3. 동적인 객체를 정적인 타입으로 추상화해서 도메인 모델링 하기
4. 협력을 설계
5. 객체들을 포괄하는 타입에 적절한 책임을 할당
6. 구현하기
출처
10개 프로젝트로 완성하는 백엔드 웹개발(Java/Spring) 초격차 패키지 Online.
728x90
반응형
'개발공부 > JAVA Spring' 카테고리의 다른 글
[Spring Boot] JWT 튜토리얼 [chap.1~3] - 인프런 강의 (0) | 2023.07.01 |
---|---|
[SpringBoot 통신] RestTemplate, WebClient (0) | 2023.05.09 |
[Spring Boot] 예외처리 (0) | 2023.03.28 |
[Spring Boot] JPA 영속성 전이 cascade, 고아객체 (0) | 2023.03.27 |
[Spring Boot] JPA Auditing (0) | 2023.03.11 |
댓글