1ilsang

Developer who will be a Legend

GraphQL 소모임 5회차 참여

2020-01-07 1ilsangSeminar

Cover

항상 와보고 싶던 당근마켓에서 지혁님이 GraphQL 세미나를 하셨다. 지혁님처럼 잘 하고싶다…

index

오늘 그래프큐엘 소모임에서 하는 세션은 위와 같다. 내가 참여한 이유는 새해 목표중 하나인 그래프큐엘을 좀 더 잘 알고 어떤 프레임워크들이 있는지 알아보기 위해서였다.

목차에서와 같이 그래프큐엘 소개와 Nexus 와 TypeGraphQL 의 차이를 설명해 주셨다.

나는 아폴로 서버로 튜토리얼 한번 해본게 전부라 잘 이해가 안되는 부분이 많았는데 라이브 코딩을 해주셔서 코드 조각이 어떻게 이어지고 리졸버가 어떻게 돌아가는지 자세하게 알게되서 좋았다.

간략 요약을 하자면, TypeGraphQL 이 클래스와 데코레이터를 사용한 reflect-metadata 주입을 한다면 Nexus 는 함수형으로 타입을 잡아준다. 그래서 AWS lambda 등에 사용하기 위해 Webpack 으로 말때 TypeGraphQL 은 깨질 위험이 있는 반면 Nexus 는 안전하다. 하지만 데코레이터로 주입하는 TypeGraphQL 에 비해 Nexus 는 dist 파일이 나와서 path 를 넣어줘야 한다는 단점이 있다.

서로 상충하는 부분이 있긴 한데 나는 함수형을 쓰는 Nexus 코드가 더 보기 좋았다. 다만 typegenAutoConfig 설정이라던가 —transpileOnly 옵션 등 뭔가 조금 더 공부해야할게 많아 보였다.

둘 다 쌩 Apollo 쿼리를 타입으로 조금 더 추상화해 한번 말아준다는 점에서 장점이 있는 듯 하다.

타입스크립트랑 그래프큐엘 열심히 해봐야지!

배울게 많은 하루였다.