Slide 1

Slide 1 text

"QPMMPה(SBQI2- !NJOFHJTIJ ؎ٓأزתְתְ ,BJ.JOFHJTIJ

Slide 2

Slide 2 text

鑧ׅ✲ XFCؙٓ؎،ٝزך(SBQI2-鸐⥋חאְג ! 㹋ꥷח⢪׏גծ葺ְ䨽٥؎و؎ثז䨽 ! "QPMMPחאְגך酡駈 ! ְ׹ְ׹ךתה׭ !

Slide 3

Slide 3 text

8FCדך(SBQI2-鸐⥋חאְג

Slide 4

Slide 4 text

8FCؙٓ؎،ٝزד(SBQI2-ה䨝׸׷חכ (SBQI2-ך)551鸐⥋כծ$36%ׅץגָ1045鸐⥋חז׶תׅկ את׶ծؒٝسه؎ٝزהCPEZ ֿֿחؙؒٔ ׾ְ׸׸לծ (SBQI2-؟٦غ٦ךٖأهٝأָ「ֽ《׸תׅկ 1VSF+BWBTDSJQU4BNQMF fetch('/graphql', {method: 'POST',headers: { 'Content-Type': 'application/json', 'Accept': 'application/json', }, body: JSON.stringify({query: "{ hello }"}) }).then(r => r.json()) .then(data => console.log('data returned:', data)); +BWBTDSJQU'FUDI"1* +40/TUSJOHJGZָ䗳銲 +40/ًاحسדػ٦أ

Slide 5

Slide 5 text

٥QVSF ٥BYJPT ٥FUD )UUQ$MJFOU 銲嗚鎢 41"ך㜥さכ 㛇劤涸חכծ⟃♴ך״ֲז鼅䫛肇חז׷ה䙼ְתׅ ٥㼔欽ؙٓ؎،ٝز׾ؿٖ٦يٙ٦ؙ➿׻׶ח⢪ֲ ٥"QPMMPSFMBZ ٥ؿٖ٦يٙ٦ؙח穈׫鴥׬ ٥⽃ז׷)UUQ鸐⥋הずׄ״ֲח׃ג穈׫鴥׬ ٥؎؛ג׷䠬ׄח41"ؿٖ٦يٙ٦ؙהず㽿ׇׁ׷ كأزفؙٓذ؍أ֮׸ל侄ִג妜׃ְדׅ

Slide 6

Slide 6 text

"QPMMPחאְגך酡駈

Slide 7

Slide 7 text

"QPMMPה3FMBZכו׏׍⢪ֲך 㥨׫ך倯דְְה䙼ְתָׅծ3FBDU⟃㢩ד׃׋׵"QPMMPך倯ָ葺ְַהկ SFMBZכGBDFCPPL醡זךד➭ךWJFXٓ؎ـٓٔ׾䠐陎׃גזְדׅ SFMBZزحفل٦آ״׶ ⦐➂涸חSFMBZך剅ֹ倯ָ㥨ֹחז׸זַ׏׋ךהծ ➙㔐MBSBCFMהך穈׫さ׻ׇדWVF׾鼅׿׌ךד"QPMMPח׃ת׃׋կ WVFSFMBZ׮OQNחכ♧䘔֮׷ ֲ׏ׅ

Slide 8

Slide 8 text

import { Environment, Network, RecordSource, Store, } from 'relay-runtime'; function fetchQuery( operation, variables, ) { return fetch('/graphql', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ query: operation.text, variables, }), }).then(response => { return response.json(); }); } const environment = new Environment({ network: Network.create(fetchQuery), store: new Store(new RecordSource()), }); import { ApolloClient } from 'apollo-client'; import { HttpLink } from 'apollo-link-http'; import { InMemoryCache } from 'apollo-cache- inmemory'; const cache = new InMemoryCache(); const httpLink = new HttpLink({ uri: https://api.github.com/graphql, headers: { authorization: `Bearer ${ process.env.REACT_APP_GITHUB_PERSONAL_ACCESS_TOKE N}`, }, }); const client = new ApolloClient({ link: httpLink, cache, }); // relay // apollo

Slide 9

Slide 9 text

"QPMMP׾⢪ֲ䠐㄂כ֮׷ ⟃♴ך״ֲז朐屣׌׏׋׶ׅ׷ה㼪Ⰵך堣麊ַזה䙼ְתׅ ٥ٗ٦ٕؕر٦ة׮ؙؒٔ盖椚׃׋ְ ٥ؿٖ٦يٙ٦ؙ׾ٔصُ٦،ٕׅ׷堣⠓ח֮׷ ٥XFCTPDLFUה鸬䵿׃׋ְ ٥4UPSF盖椚ַ׵膴⽱׃׋ְ ٥鋉垷ָ㣐ֹֻז׶ծؙؒٔך갫䎷זו׾ⵖ䖴׃׋ְ ٥غحثⳢ椚ָ׃׋ְ ֿ׸כת׌⹈䓼דֹגזְדׅ

Slide 10

Slide 10 text

"QPMMPך⚅歲錁 "1*MPDBM4UPSBHFFUD "1*MPDBM4UPSBHFFUD "QPMMP$MJFOU TUPSF "DUJPO "DUJPO 7JFX 7JFX ⢽ 'MVY ،٦ؗذؙثٍ "QPMMP$MJFOUך ،٦ؗذؙثٍ

Slide 11

Slide 11 text

"QPMMPך劤殢㹋鄲דך䧄䙀 BQPMMPMJOLTUBUFדٗ٦ٕؕر٦ة׾⥂䭯דֹ׷ָؿٗٝزח 㣐ꆀךٔبٕغָדֹ׷ .VUBUJPO䖓ךٍؗحءُפך剅ֹ鴥׫Ⳣ椚ָהג׮꬗⦜荍ְ GFUDI1PMJDZ׾וֲׅ׷ַ ! ! ! ׃׳ֲָזְָծ׮׏ה知僒涸ח剅ֹ׋ְ ꧟זر٦ة♳剅ֹח׮㼎䘔׃גק׃ְկ 穠卓涸חSFGFUDI׃ג׃ת׏׋կְְ倯岀֮׏׋׵侄ִגֻ׌ְׁ איחOFUXPSLPOMZד׮ְְָծ㣐鋉垷חז׷הֹ׍׿ה׃זֽ׸לז׵ז׉ֲ "QQ4ZODךثٍحز؟ٝفٕדכծ穠圓GFUDIQPMJDZָ׍ׯ׿ה鎸鯹ׁ׸ג׋ ̔ ̔ ̔

Slide 12

Slide 12 text

(SBQI2-׾鍗׏ג䠬ׄ׋✲

Slide 13

Slide 13 text

ؙٓ؎،ٝز؟؎سד䠬ׄ׋葺ְֿה 1MBZ(SPVOE (6*ذأز橆㞮 ָ馄⤑ⵃ ! ➙תדכفٗآؙؑز嫣ד麩ֲ➬圫剅٥(6*خ٦ٕזודךⰟ剣׌׏׋ָծ (SBQI2-ך㜥さծ(6*ָ麩׏׋ה׃ג׮ָؙׅؒٔץגזךד鶳׻זְ ̔ (SBQI2-׾剅ֻ ؎؝٦ٕ ➬圫剅ך䕵湡ח׮ז׷ ! 倜׃ֻⰅ׏׋➂חכծ"1*铡僇ָ䗳銲׌ָ(SBQI2-׌ה➬圫剅涸ח堣腉ׅ׷ךדծ 铡僇؝أزָ♴ָ׷ ̔ ؒٝسه؎ٝزָאחז׷ךדءٝفٕ ! ➙תדכ"1*ָ㟓ִ׷הծؒٝسه؎ٝزך63-㹀纏ؿ؋؎ָٕ肍㣐⻉׃גְ׏ג׋ ̔ 搀꼽זر٦ة《׏גזְַ♧湡澗搫 ! ٖأهٝأך䕎ָ鋅ִזְךדծ➙תדؙٔؒأز׌ה搀꼽זٖأهٝأر٦ة׮ה׷ךד ̔

Slide 14

Slide 14 text

ؙٓ؎،ٝز؟؎سד䠬ׄ׋؎و؎ث ׅ׀ְ剅ֹװֻׅז׷ַה鎉׻׸׷ה3&45ה׉׿זח㢌׻׵זְ +4ך㜥さٗ٦ت٦׾⢪׻זְהծ׋׌ךذٝفٖ٦زٔذٕٓזךד ءٝةحؙأؕٓ٦ָ⸬ַזְ ! ! ٖأهٝأ׾ׅץג㹀纏ׅ׷ךד穠卓涸ח儗瀉הַחכז׵זְ ת֭ծ׉׶ׯ׉ֲדׅ״יկٗ٦ت٦ְ׸ת׃׳ֲ ̔ ̔ 㛇劤ًٔحز׾䠬ׄ׷ֿהך倯ָ㢳ַ׏׋ָ䓼ְג鎉ֲז׵

Slide 15

Slide 15 text

ְ׹ְ׹ךתה׭

Slide 16

Slide 16 text

ְ׹ְ׹ךתה׭ (SBQI2-כ؟٦غ٦הך秈勲٥➬圫 ! ׉׸ָؙؒٔה׃ג㹀纏ׁ׸׷ךד鋅װֻׅծٖأهٝأך䕎ָ鋅ִג㴍׃ְ ؙٓ؎،ٝزך㼪Ⰵחכת׌㠖ָ֮׶׉ֲ " ؚٗ؎ٝⳢ椚װٕ٦ذ؍ؚٝⳢ椚זוծ"QPMMPװSFMBZ׌ֽ׌ה㔭׷ֿה׮㢳׉ֲ "QQ4ZOD鑐׃ג׫״׏ה ! ؟٦غ٦⩎תדغغ׏ה⡲׷ך㣐㢌׉ֲזךדؿٕوط٦آسז؟٦غ٦橆㞮ד 鑐׃גְֹ׋ְה䙼ְתׅ '*4.ד׮鑐遤ꐪ铎דֹ׷הְְז ! ➙䖓姻䒭ח鹌׭ג遤ֻ♳דծת׋濼鋅׾׋׭גְֹ׋ְדׅ

Slide 17

Slide 17 text

5IBOLZPV