GraphQL과 Apollo 첫번째 이야기 - 개념 익히기

2023. 11. 16. 17:27Back-End 작업실/기타 참고 자료

728x90
반응형

 

 

카카오페이 | 마음 놓고 금융하다

여기를 눌러 링크를 확인하세요.

qr.kakaopay.com

 

 

 

GraphQL과 타입스크립트로 개발하는 웹 서비스:설계부터 개발·배포까지 따라 하며 완성하는 웹 풀

COUPANG

www.coupang.com

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

 




🗂 목차

✅ GraphQL과 Apollo 첫번째 이야기 - 개념 익히기
 GraphQL과 Apollo 두번째 이야기 - REST API란?
 GraphQL과 Apollo 세번째 이야기 - GraphQL의 정보 주고 받는 방식

 GraphQL과 Apollo 네번째 이야기 - Apollo란?
✅ GraphQL과 Apollo 다섯번째 이야기 - GraphQL을 간단하게 구현해 보아요 😀
 GraphQL과 Apollo 여섯번째 이야기 - GraphQL Module화에 대해 알아보아요 😀
 GraphQL과 Apollo 일곱번째 이야기 - GraphQL Data Type에 대해 알아보아요 😀
 GraphQL과 Apollo 여덟번째 이야기 - GraphQL Union과 Interface 그리고 인자와 인풋 타입에 대해 알아보아요 😀
 GraphQL과 Apollo 아홉번째 이야기 - Java + Spring Boot에서 GraphQL 사용해 보기 - 실습 환경 구성
 GraphQL과 Apollo 열번째 이야기 - Java + Spring Boot에서 GraphQL 사용해 보기 - 실습 해보기
✅ GraphQL과 Apollo 열 한번째 이야기 - TypeScript + Nest.js에서 GraphQL 사용해 보기 - 실습 환경 구성
✅ 
GraphQL과 Apollo 열 두번째 이야기 - TypeScript + Nest.js에서 GraphQL 사용해 보기 - 실습 환경 테스트
 GraphQL과 Apollo 열 세번째 이야기 - TypeScript + Nest에서 GraphQL 사용해 보기 - 실습 해보기
 
GraphQL과 Apollo 열 네번째 이야기 - React와 Apollo Client
 GraphQL과 Apollo 열다섯번째 이야기 - React와 Apollo Client - Query와 Mutation 사용하여 웹 페이지 만들기
 GraphQL과 Apollo 열 여섯번째 이야기 - Kotlin + Spring Boot에서 GraphQL 사용해 보기 - 실습 환경 구성
 GraphQL과 Apollo 열 일곱번째 이야기 - Kotlin + Spring Boot에서 GraphQL 사용해 보기 - 실습 해보기


🤔 내가 만난 문제

⚠️ [Nest.js] TypeORM Table 관계가 맺어졌을 때, Seeding (feat. Migration)
⚠️ [Spring Boot 3.0] Could not resolve org.springframework.boot:spring-boot-gradle-plugin
⚠️ [Spring Boot 3] Spring Doc(Swagger) White Label Error


📋 부록

🔍 [Nest.js] 초기 환경 구성 (feat. TypeORM, QueryBuilder, GraphQL, Apollo)
🔍 [SOLID][Nest.js][Java + Spring] Interface를 활용한 결합도 분리 (Interface를 이용한 Dependency Injection - DI)

 

 

 

🚀 GraphQL과 Apollo 이야기

    🔽 개요

        📦 소개

안녕하세요?

오늘 주니가 가져온 이야기는 GraphQLAppllo에 대한 이야기에요.

GraphQL은 2012년에 Facebook(페이스북) 즉, Meta(메타)에서 개발하여 2015년에 공개적으로 발표된 Data Query(데이터 질의어)에요.

당시 메타에서는 Web(웹) 및 Mobile Application(모바일 어플리케이션)의 데이터 통신을 위해 새로운 Query Language(쿼리 언어) 및 Runtime(런타임)을 찾고 있었고, 이러한 필요성에 따라 GraphQL을 만들었다고 해요.

Apollo는 2012년에 개발 되었고, Meteor 개발 팀에서 시작되었으며, 처음에는 Meteor용으로 만들어진 GraphQL Client(클라이언트) Library(라이브러리)로 출발 했다고 해요.

이 후 다양한 Framwork(프레임워크)와 라이브러리로 사용할 수 있는 독립형 GraphQL 클라이언트로 성장하였어요.

728x90

 

 

 

 

 

    🔽 GraphQL

        📦 그래서 GraphQL이 뭔데?

GraphQLAPI를 위한 Query Language(쿼리 언어)라고 위에서 이야기 했어요. 이것은 타입 시스템을 사용하여 쿼리를 실행하는 Server side Runtime(서버 사이드 런타임)이에요. GraphQL은 특정 Database(데이터베이트)나, 특정 Storage Engine(스토리지 엔진)과 관계되어 있지 않고, 기존 코드와 데이터에 의해 대체 되게 돼요.

반응형

그렇다면 쿼리 언어가 무엇일까요? 쿼리 언어는 정보를 얻기 위해 보내는 Query(질의문)을 만들기 위해 사용하는 컴퓨터 언어에요. 가장 잘 알려져 있는 예시는 바로 데이터베이스에서 사용되는 SQL이 있어요.
SQL이 데이터베이스로부터 데이터를 처리하기 위한 목적을 가지고 있다면 GraphQL은 클라이언트가 서버로 부터 데이터 처리를 요청할 때 쓰기 위한 목적을 가지고 있어요.

서비스를 구성하는 소프트웨어들끼리는 수 없이 많은 데이터가 오고가며, 소통을 하게 돼요. GraphQL은 그동안 널리 사용되던 REST API와는 다른 방식의 정보 교환 방식이에요. 서비스 특정에 따라, 보다 효율적이고 간편하고도 강력한 방식으로 Frontend(프론트엔드)와 Backend(백엔드), Server(서버)와 Mobile Applicaion(모바일 앱) 등 요소들간의 소통을 구현할 수 있게 해준답니다.

 

 

        📦 그래서  Apollo는 뭔데?

GraphQL로 서비스를 만들기 위해서는 그 형식에 따라 프론트엔드에서 데이터 요청 시 백엔드에서 이를 받아 작업을 처리할 수 있도록 해주는 무언가가 필요하게 돼요. 그 역할을 바로 Apollo가 수행하고, Apollo는 각각의 백엔드 그리고, React 등의 프론트 웹 혹은 모바일 앱에서 GraphQL을 사용한 정보 교환을 간편하게 구현할 수 있도록 해 주는 친구에요.

 

 

 

 

GraphQL과 타입스크립트로 개발하는 웹 서비스:설계부터 개발·배포까지 따라 하며 완성하는 웹 풀

COUPANG

www.coupang.com

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

 

 

 

🧐 참고 자료

해당 내용은 아래 강의를 공부하면서 정리한 내용임을 알려 드립니다.

 

[무료] 얄팍한 GraphQL과 Apollo - 인프런 | 강의

⚡ 짧고 굵은 전체 90분 강좌! 사이트의 코드들을 복붙하며 빠르게 GraphQL을 배우고 아폴로 사용법을 익히세요., ⏱ 여러분의 시간은 소중합니다. [사진] 🎢  GraphQL이 뭔가요? 서비스를 구성하는

www.inflearn.com

 

 

 

 

 

카카오페이 | 마음 놓고 금융하다

여기를 눌러 링크를 확인하세요.

qr.kakaopay.com

 

 

 

728x90
반응형