백엔드 화면 기획
- 기술적 지식이 필요한 부분에서 백엔드 개발자가 활약할 수 있다
- (기능적인 부분에서의) 커뮤니케이션, 시각화 => 로직 이해도 UP
정규화, 역정규화
- best case는 정규화
- But 고려사항 : Cost, 비즈니스 로직 리소스(DB 리소스는 최근 서비스 향상으로 거의 큰 걸림돌이 아님), 유지보수
ORM
: 데이터베이스를 객체 지향적으로 다룰 수 있게 해주는 도구
- 장점 : 객체지향, DB 종속 제거, 유지보수
- 단점 : 객체지향, 예외 케이스, DB 설계 종속
JPA
: 자바의 ORM
- vs MyBatis : SQL 지향이다 => 복잡한 쿼리를 만들 수 있음 => SQL 의존
미니프로젝트 실습 : 화면기획
- 손으로 간단히 그리기
- 화면을 개발하는 것이 아님
- 어떤 데이터들을 BE와 주고 받아야 하는지 시각화
미니프로젝트 실습 : 데이터 설계
- 출력데이터
- 관리 데이터
- Entity, feature
- 관계
미니프로젝트 실습 : 프로젝트 구조 잡기
- project 하위 구조 설정
- 정답 X, 자신만의 논리
미니프로젝트 실습 : API - 사용자 CRUD
- 사용자 등록/조회/수정/삭제 API
- 사용자 등록 API 개발