✍학습 키워드
정의
개발에 앞서 알면 좋은 기초 지식
주의
- 비즈니스 로직은 도메인 계층에서 담당하는 것이 일반적이다
- 스프링에서 JPA를 사용하면 @Entity를 정의한 클래스가 도메인 객체가 되며, 이곳에서 비즈니스 로직을 설계함 좋다.
- 서비스 레이어에서 비즈니스 로직을 담당하는 경우도 있으므로 잘 설계해야 한다.
📝새로 배운 개념
MSA
- 서버간 통신은 한 서버가 다른 서버에 통신을 요청하는 것을 의미한다
- 주로 HTTP 통신을 사용한다
3-Tier-Architecture
레이어드 아키텍처란 애플리케이션의 컴포넌트를 유사 관심사를 기준으로 묶어 수평적으로 구성한 구조를 의미한다.(AOP 같은 너낌)
3 계층 아키텍쳐는 이렇게 이루어진다
- 프레젠테이션 계층(컨트롤러, 뷰)
- 애플리케이션의 최상단 계층으로, 클라이언트의 요청을 해석하고 응답하는 역할이다.
- UI나 API를 제공한다.
- 별도의 비즈니스 로직을 포함하고 있지 않으므로 비즈니스 계층으로 요청을 위임하고 받은 결과를 응답하는 역할만 한다.
- 비즈니스 계층 (서비스 계층)
- 세부 작업을 수행하는 도메인 객체를 통해 업무를 위임하는 역할을 수행한다.
- DDD 아키텍쳐에서는 비즈니스 로직에 도메인이 포함되기도 하고 별도로 도메인 계층을 두기도 한다.
- 데이터 접근 계층(DAO)
- DB에 접근하는 일련의 작업을 수행한다.
- JPA에서는 DAO 역할을 리포지토리가 수행하기 때문에 리포지토리로 대체할 수 있다
REST API
API란 애플리케이션에서 제공하는 인터페이스를 의미하며, 서버 또는 프로그램 사이를 연결 할 수 있다.
REST URL 규칙
- URI의 마지막에는 “/”를 포함하지 않는다.
- 언더바(_) 대신 하이픈(-)을 사용한다.
- URL에는 행위(ehdtk)가 아닌 결과(audtk)를 포함한다.
- URI는 소문자로 작성해야한다.
✨느낀 점&자기 선언
스프링부트는 자동 설정을 지원하기 떄문에 애플리케이션을 편하게 개발할 수 있으나, 심도 있는 개발을 위해서는 스프링의 동작 원리를 파악해야 한다.
스프링 모듈만으로 개발을 진행해보면 동작 원리를 파악하는 데 큰 도움이 된다.
GOF 공부해야할거같다
728x90
'개발 공부 기록 > 07. TIL' 카테고리의 다른 글
스프링 부트 핵심가이드 TIL - 6장 (Spring Data JPA 활용하기) (1) | 2023.10.09 |
---|---|
스프링 부트 핵심가이드 TIL - 5장 (테스트 코드 작성하기) (0) | 2023.10.07 |
스프링 부트 핵심가이드 TIL - 4장 (ORM) (0) | 2023.09.29 |
스프링 부트 핵심가이드 TIL - 3장 (기본 API 개발) (0) | 2023.09.29 |
스프링 부트 핵심가이드 TIL - 1장 (스프링부트란?) (0) | 2023.09.29 |