저번에 Pipe를 공부하고 나서 드는 궁금증이 왜 따로 파일까지 빼면서 사용하는 것일까라는 생각이 들었다.
형태 변환이나 입력을 확인하고 예외를 발생시키는데 Exception Filter나 MiddleWare가 대신 해줄 수 있지 않을까 하는 생각에 유능한 개발자 분께 물어봤고 답변해주셨다! (참고 사이트)
내용이 한번에 이해가 가지 않아 공부한 후 글을 써본다.
우선 Nest는 OOP에 SOLID원칙을 적용하여 설계하는데, 이 때
단일 책임 원칙, 개방-폐쇄 원칙, 리스코프 치환 원칙, 의존 역전 원칙, 인터페이스 분리 원칙 등이 있다고합니다.
Pipe는 형태 변환이나 입력값 검증 및 예외 처리 역할을 가지고있습니다.
하지만 중요한 부분은 Pipe는 특정 핸들러에서만 사용한 후 필요 데이터만 검증한다고 합니다!
즉 특정핸들러에서만 검증된 값을 전달하니 단일 책임 원칙에 따라 사용하는 것이라고 합니다.
사실.. 공부하기 귀찮아서.. 복습 차원으로 적어봤습니다..
알려주신 손지민 개발자님께 정말 감사합니다! 이해 잘되게 알려주셔서 감사했습니다!