워밍업 클럽 - BE 클린코드 & 테스트코드 DAY4 과제
1개월 전
코드 리팩토링
public boolean validateOrder(Order order) { // 주문 항목이 없는 경우 if (order.getItems().isEmpty()) { log.info("주문 항목이 없습니다."); return false; } // 총 가격이 올바르지 않은 경우 if (order.getTotalPrice() <= 0) { log.info("올바르지 않은 총 가격입니다."); return false; } // 사용자 정보가 없는 경우 if (!order.hasCustomerInfo()) { log.info("사용자 정보가 없습니다."); return false; } // 모든 검증 통과 return true; }
SOLID 정리
SRP : Single Responsibility Principle 단일 책임의 원칙 -> 객체는 하나의 역할만을 수행해야 한다
OCP : Open-Closed Principle 개방-폐쇄의 원칙 ->기존 코드의 변경없이 새로운 기능을 추가하거나 확장할 수 있어야 한다
LSP :Liskov Substitution Principle 리스코브 치환의 원칙 -> 부모 클래스를 자식 클래스로 대체해도 문제가 발생하면 안된다
ISP : Interface Segregation Principle 인터페이스 분리의 원칙 -> 구현체들은 자신이 필요한 기능만을 가진 인터페이스에게 의존해야 한다
DIP : Dependency Inversion Principle 의존성 역전의 원칙 -> 저수준 모듈을 변경하더라도 고수준 모듈에는 영향이 없어야 한다
댓글을 작성해보세요.