반응형 Service 인터페이스2 프로젝트를 더욱 S.O.L.I.D 하게 수정해보기 SOLID는 다음 5가지 원칙을 말합니다. SRP : 단일 책임 원칙(Single Responsibility Principle) OCP : 개방 폐쇄 원칙(Open Closed Principle) LSP : 리스코프 치환 원칙(Liskov Substitution Principle) ISP : 인터페이스 분리 원칙(Interface Segregation Principle) DIP : 의존관계 역전 원칙(Dependency Inversion Principle) 따라서 SOLID하게 라는 말이 맞지는 않지만 견고하게 만든다는 뜻에서 한번 사용해봤습니다 😅 오늘 수정해볼 부분은 Service 클래스와 그 구현체들을 SOLID 원칙, 특히 SRP 원칙에 맞춰 리팩토링 하는 시간을 가져보려고 합니다. ✅ 단일 책임.. 2022. 7. 12. 나는 ServiceImpl을 잘 활용했는가? ✅ 나는 ServiceImpl을 잘 활용했는가? 스프링 프로젝트를 진행할 때 비즈니스 계층(Business Layer)에서 Service 클래스를 만들어 사용했다. 이때 서비스 클래스는 1. Service Interface 2. Service Interface 구현 객체 로 나뉜다. 실제 내가 진행했던 프로젝트의 패키지이다. 모든 서비스 클래스는 인터페이스와 그 구현 객체로 나뉜다. 관습적으로 서비스 클래스를 '구현'과 '역할'로 나누어 설계한 점도 있지만 나누게 된 나름의 목표는 있었다. 우선 자바의 다형성을 살리는 것이 하나의 목표였다. 클래스를 설계하면서 때에 따라 필요한 인터페이스만을 가져와서 컨트롤러단의 코드를 깔끔하게 하면서 여러 부품을 필요할 때마다 갈아 끼우듯 코딩하는 것이 1차 목표였다... 2022. 7. 11. 이전 1 다음 반응형