Entity와 객체, 비즈니스 로직

min·2025년 1월 5일
existingProduct.setStock(existingProduct.getStock() - 1);
productRepository.save(existingProduct);

존재하는 Product에서 재고 감소하게 하는 로직에서, stock에 setter를 설정하는 것이 별로여서 고민하다가 다른 분들 코드 보고 Product 객체 자체에 재고 처리 하는 메소드를 추가 하신 것을 봤음.

내가 생각했던 Entity는 데이터베이스 테이블 구조 그 자체여서 이런 개념이 맞는건지 궁금했다.
김영한 강사님께서 정리해주신 내용이 있어서 확인해봄.


https://www.inflearn.com/community/questions/117315/%EB%B9%84%EC%A7%80%EB%8B%88%EC%8A%A4-%EB%A1%9C%EC%A7%81%EA%B5%AC%ED%98%84-entity-vs-service

도메인 주도 개발을 위한 방법으로 보임.
서비스의 로직들 중에서 Entity에 종속적인 경우에는 Entity에 명시해서 사용하는 것이 좀 더 명확하다는 개념으로 받아진다.
변경이 가능한 개념들의 경우에는 서비스 로직에서 개발하고 Entity 종속적이면 해당 내부에서 개발하는 것이 명확할 듯.

profile
기록으로 기억하기

0개의 댓글