도메인 설계를 해보자
클라이언트가 회원서비스를 호출한다. - 회원 서비스는 두 가지 기능이 있다 - 회원 저장소도 별도로 만들어 준다.
즉 회원데이터에 접근하는 계층을 따로 만들어 주는 것이다.(회원 저장소라는 인터페이스를 만들어 준다.)
회원 저장소의 구현은
- 메모리 회원 저장소
- DB 회원 저장소
- 외부 시스템 연동 회원 저장소로 나누어 준다.
일단은 메모리 회원 저장소를 자바코드로 작성을 해준다.(테스트 할 때도 쓰이고 로컬에서 개발할 때도 쓰임)
재부팅을 하면 => 데이터가 다 날라간다. 즉 개발용으로만 쓴다.
회원 서비스의 구현체를 MemberServiceImpl로 구현을 해준다.
MemberRepository의 구현 클래스로 MemoryMemberRepository / DbMemberRepository 두 개를 만들어 준다.
아래는 회원 객체간의 메모리 참조 관계를 보여준다.
회원 객체 다이어그램
클래스 다이어그램은 실제 서버를 실행하지 않고 클래스만 분석해서 볼 수 있다
MemoryMemberRepository / DbMemberRepository 넣을지는 동적으로 결정되는 것이다.
(서버가 뜰 때 무엇을 넣을지 결정)
객체 다이어그램을 통해서 서버가 떠서 클라이언트가 실제 사용하는
MemberServiceImpl => MemoryMemberRepository 인스턴스 끼리의 참조라고 보면 된다.
<출처 김영한: 스프링 핵심 원리 - 기본편 >
스프링 핵심 원리 - 기본편 - 인프런 | 강의
스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다., - 강의 소개 | 인프런...
www.inflearn.com
'Spring > SpringCore' 카테고리의 다른 글
스프링 핵심 원리 이해1 - 주문과 할인 도메인 설계 (0) | 2022.03.24 |
---|---|
스프링 핵심 원리 이해1 - 회원 도메인 실행과 테스트 (0) | 2022.03.24 |
스프링 핵심 원리 이해1 - 비즈니스 요구사항 설계 (0) | 2022.03.24 |
스프링 핵심 원리 이해1 - 프로젝트 생성 (0) | 2022.03.23 |
좋은 객체 지향 프로그래밍 (0) | 2022.03.23 |