๐ GraphQL?
GraphQL์ ํ์ด์ค๋ถ์์ ๋ง๋ ์ฟผ๋ฆฌ ์ธ์ด์ด๋ฉฐ,
ํ์ ์์คํ ์ ์ฌ์ฉํ์ฌ ์ฟผ๋ฆฌ๋ฅผ ์คํํ๋ ์๋ฒ์ฌ์ด๋ ๋ฐํ์์ด๋ค.
GraphQL์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ธฐ์ ๊ณผ ํผ๋๋ ์ ์๋๋ฐ, ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์๋๋ผ
API๋ฅผ ์ํ ์ฟผ๋ฆฌ ์ธ์ด์ด๋ค.
๐ฅ ์ฅ์
A query language for your API
GraphQL์ API๋ฅผ ์ํ ์ฟผ๋ฆฌ ์ธ์ด์ด๋ฉฐ ์ด๋ฏธ ์กด์ฌํ๋ ๋ฐ์ดํฐ๋ก ์ฟผ๋ฆฌ๋ฅผ ์ํํ๊ธฐ
์ํ ๋ฐํ์์ด๋ค. ํด๋ผ์ด์ธํธ๊ฐ ํ์ํ ๋ฐ์ดํฐ๋ฅผ ์ ํํ๊ฒ ์์ฒญํ ์ ์๋ ๊ธฐ๋ฅ์
์ ๊ณตํ๋ฉฐ, ์ฌ์ฉํ๊ธฐ ์ฝ๋ค.
GraphQL์ ํน์ ์ธ์ด์ ์ ํ๋ ๊ฒ์ด ์๋๋ค.
๊ณต์ ๋ฌธ์๋ฅผ ๋ณด๋ฉด ๋ง์ ์ธ์ด๋ฅผ ์ง์ํ๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
C#/.NET, Clojure, Elixir, Erlang, Go, Groovy, Java, JavaScript, PHP, Python, Scala, Ruby
๊ฐ์ ์ฌ๋ฌ ์ธ์ด์์ GraphQL์ ์ด์ฉํ ์ ์๋ค.
Ask for what you need, get exactly that
API์ ์ฟผ๋ฆฌ๋ฅผ ๋ณด๋ด๋ฉด ํ์ํ ๊ฒ๋ง ์ ํํ ์ป์ ์ ์๋ค.
๋ถํ์ํ ๊ฒ์ ์ ์ธํ๊ณ , ํ์ํ ๊ฒ๋ง ๋ฐ์ ์ ์๊ธฐ ๋๋ฌธ์
๋น ๋ฅด๋ค.
Get many resources in a single request
๊ธฐ์กด REST API์ ๋จ์ ์ด๋ผ๊ณ ํ ์ ์๋ ์ฌ๋ฌ URL(์๋ํฌ์ธํธ)์์
๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ฌ ํ์ ์์ด ํ๋ฒ์ ์์ฒญ์ผ๋ก, ํ๋์ ์๋ํฌ์ธํธ์์ ํ์ํ
๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ฌ ์ ์๋ค.
Describe what’s possible with a type system
GraphQL์ REST API์ ๋ค๋ฅด๊ฒ ์๋ํฌ์ธํธ๊ฐ ์๋ ํ์ ๊ณผ ํ๋๋ก
๊ตฌ์ฑ๋๋ค. ๋จ์ผ ์๋ํฌ์ธํธ์์ ๋ฐ์ดํฐ์ ๋ชจ๋ ๊ธฐ๋ฅ์ ์ ๊ทผํ ์ ์๋ค.
Move faster with powerful developer tools
๊ฐ๋ ฅํ ๊ฐ๋ฐ์ ๋๊ตฌ๋ฅผ ์ง์ํ๋ค.
GraphiQL ๊ฐ์ ๋๊ตฌ๋ฅผ ํ์ฉํ์ฌ ํ ์คํธํด๋ณผ ์ ์๋ค.
Evolve your API without versions
๊ธฐ์กด ์ฟผ๋ฆฌ์ ์ํฅ์ ์ฃผ์ง ์๊ณ ์๋ก์ด ํ๋์ ํ์ ์ ์ถ๊ฐํ ์ ์๋ค.
Bring your own data and code
ํน์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ํ์ ๋ฐ์ง ์๊ธฐ ๋๋ฌธ์
๊ธฐ์กด ๋ฐ์ดํฐ ๋ฐ ์ฝ๋๋ฅผ ํ์ฉํ GraphQL API๋ฅผ ์์ฑํ ์ ์๋ค.
Who’s using GraphQL?
์ฌ๋ฌ ํ์ฌ์์ GraphQL์ ์ฌ์ฉํ๊ณ ์๋ค(ํ์ด์ค๋ถ, ๊นํ๋ธ, ํธ์ํฐ ๋ฑ).
'GraphQL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[GraphQL] Apollo boost vs Apollo Client (0) | 2021.10.27 |
---|---|
[GraphQL] ๋์ ์ฝ์ง1 - makeExecutableSchema (0) | 2021.10.26 |