데브허브 | DEVHUB | 액티비티를 구현하는 internal Service액티비티를 구현하는 internal Service
- 테스트 코드를 도메인 모델 학습 도구로 활용하며, 자동화 목적을 넘어 개발자의 이해를 돕는 데 중점을 둡니다. 🧠
- 액티비티 인터페이스는 유스케이스 기반으로 세분화하여 변경 파악을 용이하게 합니다. 🧩
- 여러 액티비티 인터페이스를 하나의 서비스 클래스에서 구현하여 유연성을 확보하고, 변경의 단일 이유 원칙을 따릅니다. 🏗️
- 외부 인프라(클라이언트)는 '포트' 인터페이스로 추상화하여 서비스와 분리하고, 목 테스트 및 후속 구현을 가능하게 합니다. 🚢
- 서비스 레이어의 로직이 단순할 경우, 더 큰 효과를 볼 수 있는 다른 계층(예: REST 클라이언트)에서 테스트 코드를 작성하는 유연한 접근 방식을 제안합니다. ⚖️
- PlantUML 다이어그램을 활용하여 액티비티 흐름을 시각화하고, 개발 과정에서 모델을 쉽게 재학습할 수 있도록 돕습니다. 📊
- 개발 공정은 반복적인 개선을 고려하여 설계되었으며, 초기 완벽함보다는 점진적인 완성도를 추구합니다. 🔄
- 포스트 상세 조회 시 댓글 포함 여부와 같은 비즈니스 로직 결정은 개발자의 판단과 고객과의 소통이 중요함을 강조합니다. 💬
Optional 처리는 서비스 도메인 내부보다는 포트 인터페이스 레벨에서 이루어지도록 설계하여 도메인 로직의 간결성을 유지합니다. 🎁