# 로그인

## 요구사항

* 로그인 전 홈 화면
  * 회원 가입
  * 로그인
* 로그인 후 홈 화면
  * 본인 이름
    * \*\*\*님 환영합니다.
  * 상품 관리
  * 로그 아웃
* 보안 요구사항
  * 로그인 사용자만 상품에 접근하고 관리할 수 있다.
  * 로그인 하지 않은 사용자가 상품 관리에 접근하면 로그인 화면으로 이동한다.
* 회원 가입
* 상품 관리

## 패키지 구조 설계

* hello.login
  * domain
    * item
    * member
    * login
  * web
    * item
    * member
    * login

### 도메인

* 화면, UI, 기술 인프라를 제외한, 시스템이 구현해야 하는 핵심 비즈니스 업무 영역
* 다른 기술로 바꿔도 도메인은 계속 유지할 수 있어야 한다.
  * web은 domain은 알고 있지만, domain은 web을 모르게 설계해야 한다.
  * web 패키지를 모두 삭제해도 domain에는 영향이 전혀 없게 의존 관계를 설정해야 한다.
  * 즉, domain은 web을 참조하면 안된다.
