yeon's blog

[Spring] 프로그램 구조 설계 본문

Spring/Spring 개념

[Spring] 프로그램 구조 설계

yeonii 2023. 12. 12. 16:02

패키지 구조에 정답이 있다고 생각하진 않지만,
기본적으로 사용하는 구조는 계층형도메인형이라고 생각한다.

 

계층형 구조

아래와 같이 계층별로 클래스를 모아두는 방법이다.
(Controller는 Controller끼리, Service는 Service끼리)

계층형 구조는 프로젝트에 대한 이해가 낮아도 전체적인 구조를 빠르게 파악할 수 있는 장점이 있지만,
디렉터리에 클래스들이 너무 많이 모이게 되는 문제점이 있다.

 

도메인형 구조

아래와 같이 하나의 도메인 아래 관련 controller, service, repository 등 패키지를
각각 만들어 넣는 방법이다.

도메인형 구조의 경우 관련된 코드들이 응집해 있다는 장점이 있지만,
프로젝트에 대한 이해도가 낮을 경우 전체적인 구조를 파악하기 어렵다.

'Spring > Spring 개념' 카테고리의 다른 글

[Spring] Spring Security 처리 과정  (0) 2023.12.12
[Spring] Spring Security 개념  (0) 2023.12.12
[Spring] 스프링 컨테이너  (0) 2023.11.30
[Spring] Annotation?  (0) 2023.11.30
[Spring] Spring? Spring Boot?  (2) 2023.11.30