생성자 생성 getter , setter 생성 (private filed값을 세팅하기 위함) 회원저장 회원 아이디로 회원 찾는 기능 인터페이스와 구현체를 다른 패키지에 두면 설계 상 좋음 DB확정 안된 상태에서 MemoryMemberRepository만 만들어놓은 상태 개발 진행은 할 수 있음 HaspMap 동시성 이슈가 발생할 수 있으므로 실무에서는 ConcorrentHashMap사용 권장 구현체가 하나만 있는 경우 인터페이스 명뒤에 impl 관례상 많이 씀 가입을 하고 회원을 찾으려면 memberRepository 인터페이스 필요 구현 객체를 선택해 주어야함 join에서 save호출하면 다형성에 의해 MemoryMemberRepository에 있는 save호출 됨 순수한 자바 코드로 자바 메서드 실행..