[QuoteWidget] Package Separation (exp.)

dia·2024년 12월 3일

Issue

명언 프로그램 구현 중 클래스가 많아져서 패키지 분리가 필요하다고 판단

특히 데이터를 저장하는 방식을 변경하고자 하여
Repository를 방식 별로 각각 구현하고 싶었기 때문에 정리가 필요해짐


Solution

패키지 분리

default 패키지

default 패키지에 있는 클래스는
다른 패키지에 있는 클래스에서 import 할 수 없음

(여태까지 개발하면서 몰랐다는게 충격)

exception 패키지

예외 클래스의 개수가 다른 클래스에 비해 많아서 따로 만들어주었다

constant 패키지

상수 클래스를 관리하기 위해 만들었다


Results

    (default)
    ├── constant
    │   └── Command.java
    ├── controller
    │   └── QuoteController.java
    ├── exception
    │   └── InvalidCommandException.java
    │   └── InvalidNumberException.java
    │   └── QuoteNotFoundException.java
    ├── model
    │   └── Quote.java
    ├── repository
    │   └── QuoteRepository.java
    │   └── MapQuoteRepository.java
    ├── service
    │   └── QuoteService.java
    └── view
        └── QuoteView.java
        


참고글: 실무에서 패키지 분리를 어떻게 하는가

date: 2024-12-03

profile
CS 메모장

0개의 댓글