Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Java Graphql
- WildFly
- Reading HttpServletRequest Multiple Times
- try - with - resources
- requestheaderdto
- Graphql Client
- 이중정렬
- Java Singleton
- Jndi DataSource
- AfterMapping
- Checked Exception
- Sub Bytes
- Request Body 여러 번 사용
- 개방 폐쇄 원칙
- java
- graphql
- HandlerMethodArgumentResolver
- 바이트 절삭
- Tomcat DBCP
- Java Rest
- mapstruct
- Open Close Principal
- tomcat jndi
- NoUniqueBeanDefinitionException
- Srping MVC
- Unchecked Exception
- 데이터 압축
- 상호 인증
- Socket is closed
- mTLS
Archives
- Today
- Total
Developer Sang Guy
프로젝트 패키지 구조 본문
프로젝트 패키지 구조
- 도메인 분리 구조
- 장점
- 독립적으로 모듈화 되어 있는 도메인은 각 도메인에서 발생하는 변경 사항에 대한 영향을 최소화 하며 이는 시스템을 확장하고 유지 보수하기 쉽게 한다.
- 모듈화 (마이크로 서비스 아키텍처) 전환 시 도메인 별로 분리 작업이 용이하다.
- 단점
- 작은 규모의 프로젝트에서는 도메인 분리가 오히려 복잡성을 증가시킬 수 있다.
- 서로 다른 도메인에서 비슷한 기능이 필요한 경우 중복 코드의 가능성이 있다.
- 장점
- 계층 분리 구조
- 장점
- 프로젝트에 대한 이해도가 낮아도 계층 별로 분리 된 패키지 구조만 보고 어느정도 구조 파악이 가능하다.
- 각 계층 간 코드 재사용 가능하며, 중복 코드를 최소화하고 일관성을 유지할 수 있다.
- 단점
- 계층 구조 아래 여러 도메인이 섞여 있어 특정 도메인 흐름 파악이 어렵다.
- 도메인이 많아지면 계층 별 패키지 안에 너무 많은 클래스가 생겨 구분이 어렵다.
- 장점
계층형 구조가 필요한 경우
- 프로젝트 규모가 작고 도메인이 많지 않은 경우
- 도메인간 분리가 명확하지 않을 경우
- 각 도메인을 모듈화(마이크로 서비스 아키텍처)하여 분리할 일이 없는 경우
도메인형 구조가 필요한 경우
- 프로젝트 규모가 크고, 도메인이 많은 경우
- 도메인간 분리가 명확한 경우
- 각 도메인을 모듈화(마이크로 서비스 아키텍처) 하여 분리할 일이 있는 경우
상황에 따라 알맞게 사용하면 될 것으로 보인다.
'Others' 카테고리의 다른 글
[Apache] 서버 MTLS(상호 인증) 적용 (서버) (0) | 2024.02.08 |
---|---|
[ELK] 키바나 서버 내 설치 후 외부 접근 (0) | 2024.01.04 |
[Tomcat] 여러 애플리케이션 실행 시 Tomcat jndi Datasource 이슈(Tomcat DBCP) (1) | 2023.12.08 |
[리눅스 Java] jstat를 활용한GC 모니터링 (0) | 2023.06.16 |
[Wildfly] 로그가 안나와요(sl4j 충돌) (0) | 2023.03.30 |
Comments