시스템 아키텍처
소프트웨어 아키텍처 - 소프트웨어의 구성을 큰 그림으로 표현한 것
[그림] Java SE 아키텍쳐(출처: https://docs.oracle.com/javase/1.5.0/docs/index.html)
애플리케이션: 소프트웨어 종류 중 하나, 좁게는 PC나 모바일에서 사용하는 응용 프로그램을 말하고 넓게는 클라이언트의 요청을 처리하는 서버 애플리케이션을 말함
REST API 기반 웹 애플리케이션의 계층은 크게 API 계층(API Layer), 비즈니스 계층(Business Layer), 데이터 액세스 계층(Data Access Layer)으로 구분된다.
API 계층: 클라이언트의 요청을 받아들이는 계층
비즈니스(서비스) 계층: API 계층에서 전달 받은 요청을 업무 도메인의 요구 사항에 맞게 비즈니스적으로 처리하는 계층
데이터 액세스 계층: 비즈니스 계층에서 처리된 데이터를 데이터베이스 등의 데이터 저장소에 저장하기 위한 계층
출처: https://docs.spring.io/spring-framework/docs/5.0.0.M5/spring-framework-reference/html/overview.html