[8강]
2023. 1. 30. 15:36ㆍSpring 강의/section3
회원 관리 예제 - 백엔드 개발
- 비즈니스 요구사항을 정리하자.
- 회원 도메인과 회원 도메인을 저장하고 불러올 수 있는 레파지토리를 만들자.
- 회원 레파지토리가 정상 작동하는지 테스트 케이스를 작성하자.
- 실제 비즈니스 로직이 있는 회원 서비스를 개발하자.
- 정상 작동하는지 회원 서비스 테스트를 만들자. - junit이라는 테스트 프레임 워크로 만들 것
1. 비즈니스 요구사항 정리
- 데이터 : 회원id, 이름
- 기능 : 회원 등록, 조회
- 아직 데이터 저장소가 선정되지 않음(가상의 시나리오)
- 컨트롤러 : 웹 MVC의 컨트롤러 역할
- 서비스 : 핵심 비즈니스 로직 구현 ex) 중복 가입 불가
- 리포지토리 : DB에 접근, 도메인 객체를 DB에 저장하고 관리
- 도메인 : 비즈니스 도메인 객체, ex) 회원, 주문, 쿠폰 등등 주로 db에 저장하고 관리됨
- MemberService : 회원 비즈니스 로직
- MemberRepository를 인터페이스로 설계 -> 아직 데이터 저장소가 선정되지 않았다는 시나리오가 있었기 때문
- 메모리 구현체로 만들 것
- 향후에 RDB로 할지, JPA로 할지 구체적인 기술이 선정되고 나면 바꿔끼울 거라서 인터페이스로 한다.