pre-onboarding 006 | cardoc 회고

This Is Empty.·2021년 11월 30일
0

wanted-pre-onboarding

목록 보기
7/8
post-thumbnail

위와같은 이유로 과제 내용은 생략합니다.

Github Repository

Review

4주의 pre-onboarding 코스를 진행하면서 받은 과제 중 처음으로 혼자하는 과제가 되었다. 그 말은, 모든 것을 혼자해야한다는 뜻이다. 모델링부터 기획, 하다 못해 프레임워크 정하는 것 까지.

나는 python을 너무 좋아했고, 웹 프레임워크 써본것이라곤 django밖에 없었다. 물론 과제를 진행하면서 초반에 flask를 쓰긴 했지만 정말 처참하기 때문에(자료가 너무 없어서 울고싶었..) 써봤다고 하지는 않겠다. 중간에 fastAPI를 팀원들과 써보자고 도전 하기는 했지만 도전에서 그쳤다.(새로운 프레임워크를 도전하기에는 시간이 너무 없었으므로)

이번에는 나에게 도전할 수 있는 기회를 주고싶었다. 써보고싶기도 했고.. 실제로 기업에서 사용하는 언어와 프레임워크이기도 했으니까 Nest를 사용하기로 했다. (물론 위에 적힌 프레임워크를 반드시 사용해야하는 것은 아니였다. python으로 과제를 진행하던 팀은 django를 써도 된다고 말씀하셨다!)


써보면서 django와 nest의 다른 점을 꼽자면

django는 한 view에서 데이터와 통신하고, 프론트와 통신하고 거의 모든걸 view안에서 해결하지만 nest는 데이터베이스와 통신하는건 services(비즈니스 로직 담당)로, front와 통신하는것은 controller로 분리한다(url을 가져오고 함수를 실행하는 역할). 이 점이 처음에는 굉장히 당황스러웠다..

한 기능을 만들기 위해 생성할것도 되게 많았다.

일단 장고에서 없는것.. DTO!! 이 기능은 조금 편했던것 같다. validation을 해주면서 error처리도 알아서 해주기 때문!

그리고 보통 다른 서비스에서 다른 테이블의 데이터를 찾을때는 따로 함수를 만들어서 사용하는 것 같다(예를 들면 getUserById같은..?)

django에 비해 어려웠던 점은 error처리를 어떻게 해야할지.. django에서는 django에서 제공하는 orm으로 db랑 비교해서 json Response형태로 에러처리를 했는데 이부분은 아직도 감이 안와서 더 정리를 하면서 과제를 리팩토링 해 볼 생각이다. Response형태도 정의할 수 있는 것 같던데 한번 찾아봐야겠다!

1주일이라는 짧다면 짧은 시간동안, 프레임워크 익히고 과제 내용 파악하느라 약간 힘들기도 했고(월요일 아침 7시에 배포까지 마무리하고 제출..) 결과물이 django로 만들었을때에 비해 만족스럽지는 않지만 그래도 도전에 의의를 두며! 리팩토링을 열심히 해야겠다는 생각을 합니다! Nest도 공부를 열심히 해봐야겠다!

profile
Convinced myself, I seek not to convince.

0개의 댓글