▶ Controller
- 컨트롤러 클래스 안에서 메서드 명을 작성 할 때는 아래와 같은 접미사를 붙인다.
orderList() – 목록 조회 유형의 서비스
orderDetails() – 단 건 상세 조회 유형의 controller 메서드
orderSave() – 등록/수정/삭제 가 동시에 일어나는 유형의 controller 메서드
orderAdd() – 등록만 하는 유형의 controller 메서드
orderModify() – 수정만 하는 유형의 controller 메서드
orderRemove() – 삭제만 하는 유형의 controller 메서드
# Web API Design Guide (정리하여 포스팅 할 예정)
https://cloud.google.com/files/apigee/apigee-web-api-design-the-missing-link-ebook.pdf
▶ Service
- 서비스 클래스 안에서 메서드 명을 작성 할 때는 아래와 같은 접두사를 붙인다.
findOrder() - 조회 유형의 service 메서드
addOrder() - 등록 유형의 service 메서드
modifyOrder() - 변경 유형의 service 메서드
removeOrder() - 삭제 유형의 service 메서드
saveOrder() – 등록/수정/삭제 가 동시에 일어나는 유형의 service 메서드
▶ Mapper
- Mapper 클래스 안에서 메서드 명을 작성 할 때는 아래와 같은 접두사를 붙인다.
selectOrder(); - 조회 유형의 mapper 메서드
insertOrder(); - 등록 유형의 mapper 메서드
updateOrder(); – 변경 유형의 mapper 메서드
deleteOrder(); - 삭제 유형의 mapper 메서드
▶ Structure
1. 패키지는 목적별로 묶어 생성한다.
- common(공통기능 관련), user(유저 관련), Order(주문관련) ....
2. Controller에서는 Service 호출과 Exception 처리만을 담당한다.
- Controller에서의 비즈니스 로직 구현은 최대한 피한다.
3. 메소드와 클래스는 하나의 목적만을 위해 생성한다.
- 한개의 메소드는 한가지의 기능만을 가져야 한다.
- 한개의 클래스 내부에는 같은 목적만을 가진 코드가 존재하여야한다.
4. 메소드와 클래스는 가능한 작게만든다.
- 여러 기능이 모인 적은수의 큰 클래스보다는 목적이 뚜렷한 작은 클래스 여러개로 이루어진 시스템이 바람직하다.
5. 도메인명의 Service 생성은 피한다.
- Order 라는 도메인이 있을 때 OrderService 로 만드는 것은 피한다.
- OrderService로 만들 경우 그 안에 도메인과 관련된 여러 기능을 넣을 가능성이 높다.
- 도메인 관련 기능을 세분화하여 Service를 만든다(ex. OrderRegisretService, OrderStatusService .....)
아래 사이트는 오라클에서 권장하는 자바 코드 컨벤션이다.
https://www.oracle.com/java/technologies/javase/codeconventions-introduction.html
'Backend > Java (Spring)' 카테고리의 다른 글
[JAVA] 래퍼 클래스와 박싱, 언박싱 (0) | 2021.09.18 |
---|---|
[JAVA] Enum 클래스 선언 및 사용방법 (1) | 2021.09.18 |
[JAVA] 객체지향의 5가지 원칙 (SOLID 원칙) (0) | 2021.09.16 |
[JAVA] Gson Date format 변경하기 (0) | 2021.07.20 |
[JAVA] List를 Json으로 변환하기 (0) | 2021.06.01 |
최근댓글