Reusing Cached Data for Rendering (part. 2)
๋ถ๋ถ์ ์ผ๋ก ์บ์๋ ๋ฐ์ดํฐ ๋ ๋๋งํ๊ธฐ
์์ ์ค๋ช ํ๋ฏ, ๋ฆด๋ ์ด์์๋ ์บ์๋ ๋ฐ์ดํฐ๋ฅผ ์ด์ฉํด ๋ถ๋ถ์ ์ผ๋ก ๋ ๋๋ง ํ ์ ์๋ค. ์ฐ๋ฆฌ๋ **โ๋ถ๋ถ์ ๋ ๋๋งโ**์ ๋ถ๋ถ์ ์ผ๋ก ์บ์๋ ์ฟผ๋ฆฌ๋ฅผ ์ฆ์ ๋ ๋๋ง ํ ์ ์๋ ability ๋ผ๊ณ ์ ์ํ๋ค. ์ฆ, ์ฟผ๋ฆฌ์ ์ผ๋ถ๊ฐ ๋น ์ง ์ ์์ง๋ง, ์ฟผ๋ฆฌ์ ๋๋จธ์ง ๋ถ๋ถ์ ์ด๋ฏธ ์บ์๋์์ ๊ฒ์ด๋ผ๋ ์๋ฏธ์ด๋ค. ์ด๋ฌํ ๊ฒฝ์ฐ, ์ฟผ๋ฆฌ์ ์ ์ฒด๊ฐ ํจ์น๋๊ธฐ๋ฅผ ๊ธฐ๋ค๋ฆฌ์ง ์์๋ ์ด๋ฏธ ์บ์๋ ์ฟผ๋ฆฌ๋ฅผ ์ฆ์ ๋ ๋๋ง ํ ์ ์๋ค.
์ด๋ ํ๋ฉด์ด๋ ํ์ด์ง๋ฅผ ๊ฐ๋ฅํ ํ ๋นจ๋ฆฌ ๋ ๋๋งํ๊ณ ์ถ์ ์๋๋ฆฌ์ค์ ์ ์ฉํ๊ฒ ์ฌ์ฉ๋ ์ ์๋ค. ํด๋น ํ์ด์ง์ ์ผ๋ถ ๋ฐ์ดํฐ๋ ์ด๋ฏธ ์บ์๋์ด ์๊ธฐ ๋๋ฌธ์ ๋ก๋ฉ ์ํ๋ฅผ ์คํตํ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค. ์๋ฅผ ๋ค์ด, ํ๋กํ ํ์ด์ง ๋ฅผ ์๊ฐํด๋ณด์:
์ ์ ์ ์ด๋ฆ์ ์ฑ์ ์ฌ์ฉํ๋ ๋์ ์บ์๋ ๊ฐ๋ฅ์ฑ์ด ๋๊ธฐ ๋๋ฌธ์, ํ๋กํ ํ์ด์ง๋ฅผ ๋ฐฉ๋ฌธํ ๋ ์ด๋ฏธ ์ ์ ์ ์ด๋ฆ์ด ์บ์๋ ์ํ๋ผ๋ฉด, ํด๋น ํ์ด์ง์ ๋ค๋ฅธ ๋ฐ์ดํฐ๊ฐ ์ฌ์ฉ ๋ถ๊ฐ๋ฅํ ์ํ์์๋ ์ด๋ฆ์ด๋ผ๋ ์ฆ์ ๋ ๋๋ง ํ๋ ๊ฒ์ด ์ด์์ ์ด๋ค.
๋ถ๋ถ์ ์ธ ๋ ๋๋ง์ ์ํด Fragments๋ฅผ ๋ฐ์ด๋๋ฆฌ๋ก ์ฌ์ฉํ๊ธฐ
๋ถ๋ถ์ ์ผ๋ก ์บ์๋ ๋ฐ์ดํฐ๋ฅผ ๋ ๋๋งํ๊ธฐ ์ํด์๋, fragment ์ปดํฌ๋ํธ๋ฅผ suspend ํ๋ฉด ๋๋ค. Fragment Component ๋ ํด๋น ์ปดํฌ๋ํธ์ ์ ์ธ๋ ์ด๋ค ๋ฐ์ดํฐ๊ฐ ๋ ๋๋ง ํ ๋ ์๋ ๊ฒฝ์ฐ suspend ํ ๊ฒ์ด๋ค. ๊ตฌ์ฒด์ ์ผ๋ก, ํด๋น ์ปดํฌ๋ํธ๊ฐ ํ์๋ก ํ๋ ๋ฐ์ดํฐ๊ฐ ํจ์น๋ ๋๊น์ง ์ปดํฌ๋ํธ๋ suspend ๋ ๊ฒ์ด๊ณ , ํด๋น ์ปดํฌ๋ํธ๋ฅผ ํฌํจํ๋ ์ฟผ๋ฆฌ๊ฐ ํจ์น ์๋ฃํ ๊น์ง ๊ณ์ ๊ทธ ์ํ๋ฅผ ์ง์ํ ๊ฒ์ด๋ค.
์๋์ ๊ฐ์ *UsernameComponent
fragment component* ๊ฐ ์๋ค๊ณ ๊ฐ์ ํด๋ณด์:
๊ทธ๋ฆฌ๊ณ ๋ค์๊ณผ ๊ฐ์ *AppTabs
์ฟผ๋ฆฌ ๋ก๋ ์ปดํฌ๋ํธ์,*
*HomeTab
์ฟผ๋ฆฌ ์ปดํฌ๋ํธ* ๊ฐ ์๋ค๊ณ ํด๋ณด์. ์ด ์ฟผ๋ฆฌ๋ ์์ ํ๋๊ทธ๋จผํธ์ ํฌํจ๋ ๋ฐ์ดํฐ(...UsernameComponent_user
)๋ฅผ ํฌํจํ์ฌ ๊ฐ์ ธ์จ๋ค.
์์ HomeTab
์ปดํฌ๋ํธ๊ฐ ๋ ๋๋ง ๋์์ ๋๋ฉด, ์ด๋ฏธ {id: 4}
๋ฅผ ๊ฐ์ง User
์ name
๊ฐ ํจ์น๋์๊ธฐ ๋๋ฌธ์ Relay ์คํ ์ด์ locally ์บ์๋์ด ์๊ฒ ๋๋ค.
๋ง์ฝ ๋ก์ปฌ์ ์บ์๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฌ์ฉํ ์ ์๊ฒ ํด์ฃผ๋('**store**-or-network'
/ '**store**-and-network'
) fetchPolicy
๋ฅผ ์ด์ฉํด ์ฟผ๋ฆฌ๋ฅผ ๋ ๋๋งํ๋ ค๊ณ ํ๋ฉด, ๋ค์๊ณผ ๊ฐ์ ์ผ์ด ๋ฐ์ํ๋ค:
์ฟผ๋ฆฌ๋ ๋ก์ปฌ์์ (ํ๋๊ทธ๋จผํธ์์) ํ์๋ก ํ๋ ๋ฐ์ดํฐ๊ฐ ์๋์ง ํ์ธํ๋๋ฐ, ์์ ๊ฒฝ์ฐ ๋ชจ๋ ๋ฐ์ดํฐ๊ฐ ์กด์ฌํ๋ค.
์์ ๊ฒฝ์ฐ, ์ฟผ๋ฆฌ๋
name
๋ง์ ์ง์ ์ ์ผ๋ก ์ฟผ๋ฆฌํ๊ณ ์๊ณ , name์ ์ด์ฉ ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์, ํด๋น ์ฟผ๋ฆฌ์ ์ฐ๊ด์ด ์๋ ํ ๋น ์ง ๋ฐ์ดํฐ๋ ์๋ค๊ณ ํ๋จ๋๋ค. Relay๋ ์ฟผ๋ฆฌ๋ฅผ ๋ ๋๋ง ํ ๋, ํด๋น ์ฟผ๋ฆฌ์ ๋ชจ๋ ๋ฐ์ดํฐ๊ฐ ํจ์น๋ ๋๊น์ง (์ค์ฒฉ๋ ํ๋๊ทธ๋จผํธ๋ฅผ ํฌํจํ์ฌ) ํธ๋ฆฌ ์ ์ฒด๋ฅผ blocking ํ๋ ๋์ , ๋ฐ์ดํฐ์ ๋ฐ๋ผ ํธ๋ฆฌ๋ฅผ ๋ ๋๋งํ๋ค. Relay๊ฐ ์ปดํฌ๋ํธ์ ํ์ํ ๋ฐ์ดํฐ๊ฐ ๋น ์ก๋ค๊ณ ํ๋จํ ๋๋ ๋ฐ์ดํฐ๊ฐ ํ๋๊ทธ๋จผํธ(๋ก์ปฌ)์ ์กด์ฌํ์ง ์๋ ์ํ์ผ ๋๋ค. ์ฆ, ๋ง์ฝ ํ์ฌ์ ์ปดํฌ๋ํธ๋ฅผ ๋ ๋๋งํ๊ธฐ ์ํด ํ์ํ ๋ฐ์ดํฐ๊ฐ ๋น ์ง ๊ฒฝ์ฐ๋ ์กด์ฌํ์ง ์๋๋ค๊ณ ํ๋จํ์ง๋ง, ์์ ์ปดํฌ๋ํธ์ ํ์ํ ๋ฐ์ดํฐ๋ ๋ชจ๋ ์กด์ฌํ๋ ๊ฒฝ์ฐ๋ ๋ฐ์ดํฐ๊ฐ ๋น ์ก๋ค๊ณ ํ๋จํ์ง ์๋๋ค.์ฟผ๋ฆฌ๊ฐ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ์๋ค๊ณ ๊ฐ์ ํ๋ฉด, ์ฟผ๋ฆฌ ์ปดํฌ๋ํธ๋ฅผ ๋จผ์ ๋ ๋๋งํ๊ณ ์์ ์ปดํฌ๋ํธ์ธ
UsernameComponent
๋ฅผ ๋ ๋๋ง ํ ๊ฒ์ด๋ค.UsernameComponent
๊ฐUsernameComponent_user
ํ๋๊ทธ๋จผํธ๋ฅผ ๋ ๋๋งํ๋ ค๊ณ ํ ๋,UsernameComponent
๋ ๋ณธ์ธ์ด ํ์๋ก ํ๋ ๋ฐ์ดํฐ์ ๋ถ๋ถ์ด ๋น ์ก๋ค๋ ๊ฒ์ ์ ๊ฒ์ด๋ค. ๊ตฌ์ฒด์ ์ผ๋ก, ์์ ๊ฒฝ์ฐ์๋username
์ด ๋น ์ก๋ค. ์ฌ๊ธฐ์,UsernameComponent
๋ ์ผ๋ถ๊ฐ ๋น ์ง ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ์๊ธฐ ๋๋ฌธ์ ๋คํธ์ํฌ ์์ฒญ์ด ๋๋ ๋๊น์ง ๋ ๋๋ง์ suspend ํ ๊ฒ์ด๋ค. ์ด๋คfetchPolicy
๋ฅผ ๊ณจ๋๋์ง์ ๊ด๊ณ์์ด, ๋คํธ์ํฌ ์์ฒญ์ ํ๋๊ทธ๋จผํธ๋ฅผ ํฌํจํด ์ ์ฒด ์ฟผ๋ฆฌ๋ฅผ ์ํ ์ผ๋ถ ๋ฐ์ดํฐ๊ฐ ๋น ์ง ๊ฒฝ์ฐ๋ผ๋ฉด ์ธ์ ๋ ์์๋ ๊ฒ์ด๋ค.์ฐธ๊ณ . [Fetch Policies]
store-or-network
(๊ธฐ๋ณธ) : ๋ก์ปฌ์ ์บ์๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฌ์ฉํ๊ณ , ์ฟผ๋ฆฌ์ ๋ํ ๋ฐ์ดํฐ์ ์ผ๋ถ๊ฐ ๋น๊ฑฐ๋ ์ฌ์ฉ ๋ถ๊ฐ๋ฅ ํ ๊ฒฝ์ฐ์๋ง ๋คํธ์ํฌ ์์ฒญ์ ๋ณด๋ธ๋ค. ๋ง์ฝ ์ฟผ๋ฆฌ๊ฐ ๋ชจ๋ ์บ์๋ ์ํ๋ผ๋ฉด, ๋คํธ์ํฌ ์์ฒญ์ ์ผ์ด๋์ง ์๋๋ค.store-and-network
: ๋ก์ปฌ์ ์บ์๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฌ์ฉํ๊ณ ๋ฐ์ดํฐ์ ์ผ๋ถ๊ฐ ๋น์๋ ์ง ์คํ ์ด์ ์๋ ์ง์ ์๊ด ์์ด ํญ์ ๋คํธ์ํฌ ์์ฒญ์ ๋ณด๋ธ๋ค.network-only
: ๋ก์ปฌ์ ์บ์๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฌ์ฉํ์ง ์๊ณ , ์ฟผ๋ฆฌ๋ฅผ ํจ์นํ๊ธฐ ์ํด ํญ์ ๋คํธ์ํฌ ์์ฒญ์ ๋ณด๋ธ๋ค. ์ด ๋ ๋ฐ์ดํฐ์ ์ผ๋ถ๊ฐ ๋ก์ปฌ์ ์บ์๋์๋์ง, ๋น์๊ฑฐ๋ ์ฌ์ฉ ๋ถ๊ฐ๋ฅํ์ง ํ์ธํ์ง ์๊ณ ํญ์ ๋ณด๋ธ๋ค.store-only
: ๋ก์ปฌ์ ์บ์๋ ๋ฐ์ดํฐ๋ง์ ์ฌ์ฉํ๊ณ , ์ ๋ ์ฟผ๋ฆฌ๋ฅผ ํจ์นํ๊ธฐ ์ํด ๋คํธ์ํฌ ์์ฒญ์ ์ ์กํ์ง ์๋๋ค. ์ด ๊ฒฝ์ฐ, ์ฟผ๋ฆฌ๋ฅผ ํจ์นํ๊ธฐ ์ํ ์ฑ ์์ caller์๊ฒ ์์ผ๋, ์ฌ๊ธฐ์ ๊ทธ์น์ง ์๊ณ ์ฟผ๋ฆฌ ๋ฐ์ดํฐ๊ฐ fully locally ์ด์ฉ ๊ฐ๋ฅํ ๋๋ง ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ณ ์ฌ์ฉํ ์ ์๋ค.
์ฌ๊ธฐ์ UsernameComponent
๊ฐ ๋น ์ง username
๋ก ์ธํด suspend ๋ ๊ฒฝ์ฐ, ์ด์์ ์ผ๋ก๋ User
์ name
์ ์ด๋ฏธ ๋ก์ปฌ์ ์บ์๋ ๋ฐ์ดํฐ์ด๋ฏ๋ก ์ฆ์ ๋ ๋๋ง ๋์ด์ผ ํ๋ค. ๊ทธ๋ฌ๋, Suspense
์ปดํฌ๋ํธ๋ฅผ ์ฌ์ฉํ์ฌ ํ๋๊ทธ๋จผํธ์ suspension์ ์ก๊ณ ์์ง ์๊ธฐ ๋๋ฌธ์, suspension์ ๋ฒ๋ธ๋ง ๋์ด App
์ปดํฌ๋ํธ๊น์ง suspend ์ํค๊ฒ ๋๋ค.
username
์ด ์๋๋ผ๋ App
์ ๋ค๋ฅธ ์ปดํฌ๋ํธ๋ name
์ด ์ฌ์ฉ ๊ฐ๋ฅํ ๋ ๋ ๋๋ง ๋ ์ ์๋๋ก, UsernameComponent
๋ฅผ Suspense
๋ก ๊ฐ์ธ๊ธฐ๋ง ํ๋ฉด ๋๋ค.
์์ ์์๋ฅผ ํตํด ์ป๊ณ ์ ํ๋ ๊ฒฐ๊ณผ๋ ์ค์ฒฉ๋ ํ๋๊ทธ๋จผํธ๋ฅผ ๋ ๋๋ง ํ ๋์ ๋๊ฐ์ ๊ณผ์ ์ ์ง๋๋ค. ์ด๋ ํ๋๊ทธ๋จผํธ๋ฅผ ๋ ๋๋งํ ๋ ํ์ํ ๋ฐ์ดํฐ๊ฐ ๋ก์ปฌ์ ์บ์๋์ด ์๋ ๊ฒฝ์ฐ, ํ๋๊ทธ๋จผํธ ์ปดํฌ๋ํธ๋ ๊ทธ๊ฐ ์ง๋ ์์ ํ๋๊ทธ๋จผํธ์ ๋ฐ์ดํฐ๊ฐ ๋น ์ก๋์ง์ ๊ด๊ณ ์์ด ๋ ๋๋ง ๋ ์ ์๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค. ๋ง์ฝ ์์ ํ๋๊ทธ๋จผํธ๋ฅผ ์ํ ๋ฐ์ดํฐ๊ฐ ๋น ์ง ๊ฒฝ์ฐ, Suspense
์ปดํฌ๋ํธ๋ก ๋ํํ์ฌ ๋ค๋ฅธ ํ๋๊ทธ๋จผํธ์ ์ฑ์ ๋๋จธ์ง ๋ถ๋ถ์ ๊ณ์ํด์ ๋ ๋๋ง ๋ ์ ์๋๋ก ํ ์ ์๋ค.
์์ ๋ชจ๋ ๊ณผ์ ์ ์ฑ ์ ์ฒด๊ฐ ๋ก๋ฉ ์ํ์ ๋น ์ง๋ ๊ฒ์ ๋ฐฉ์งํ๊ณ , ๋ถ๋ถ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ ๋๋ง ํ ์ ์๊ธฐ ๋๋ฌธ์ ์ค๊ฐ ๋จ๊ณ์ UI ์ํ๋ฅผ ๋ ๋๋ง ํ์ฌ ์ต์ข ์ ์ผ๋ก ๋ชจ๋ ๋ฐ์ดํฐ๊ฐ ๋ ๋๋ง ๋ ๊ฒฐ๊ณผ์ ๋น์ทํ ํ๋ฉด์ ๋ ๋๋ง ํ ์ ์๋๋ก ํ๋ค.
ํ๋ ํธ๋ค๋ฌ: ๋น ์ง ๋ฐ์ดํฐ ์ฑ์๋ฃ๊ธฐ
์ด์ ํํธ์์ ์ ์ฒด/ ๋ถ๋ถ์ ์ผ๋ก ์บ์๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํด์๋ ์์๋ดค์ง๋ง, ๊ฐ๋ Relay๊ฐ ํน์ ์ฟผ๋ฆฌ๋ฅผ ๋ง์กฑํ๊ธฐ ์ํด ์๋์ ์ผ๋ก ๋ค๋ฅธ ์ฟผ๋ฆฌ์์ ์ด๋ฏธ ๊ฐ์ ธ์จ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฌ์ฉํ ์ ์๋๋ก ์ ๊ณตํ์ง ๋ชป ํ ๋๊ฐ ์๋ค. ๊ตฌ์ฒด์ ์ผ๋ก, Relay๋ ์ด์ ์ ํจ์น๋ ์ฟผ๋ฆฌ์์ ๊ฐ์ ธ์ ์บ์๋์ด ์๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฌ์ฉ ํ ์ ์๋ ๋ฐฉ๋ฒ์ ์๋ค. ์ฆ, ๋ง์ฝ ๊ฐ์ ์ฟผ๋ฆฌ๋ฅผ ๋ ๋ฒ ํจ์นํ๊ฒ ๋ ๊ฒฝ์ฐ, Relay๋ ๋๋ฒ์งธ์ ๊ฒฝ์ฐ ํด๋น ์ฟผ๋ฆฌ๊ฐ ๊ฐ์ ธ์ค๋ ๋ฐ์ดํฐ๋ฅผ ์บ์๋ ๋ฐ์ดํฐ ์ค ๊ณจ๋ผ๋ผ ์ ์๋ค.
ํ์ง๋ง, ๋ค๋ฅธ ์ฟผ๋ฆฌ์์๋ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ๋ฆฌํค๋ ๊ฒฝ์ฐ, ์บ์๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฌ์ฉํ๋ ๊ฒ์ด ์ด์์ ์ด๋ค. ์๋ฅผ ๋ค์ด, ๋ค์๊ณผ ๊ฐ์ 2๊ฐ์ ์ฟผ๋ฆฌ๊ฐ ์๋ค๊ณ ๊ฐ์ ํด๋ณด์:
2๊ฐ์ ์ฟผ๋ฆฌ๋ ๋ค๋ฅด์ง๋ง, ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ๋ฆฌํจ๋ค. ๊ฐ์ ธ์ค๋ ๋ฐฉ๋ฒ, ์ฆ, ์ฟผ๋ฆฌ๋ง ๋ค๋ฅผ ๋ฟ์ด๋ค. ์ด์์ ์ผ๋ก, ๋ง์ฝ ํ๋์ ์ฟผ๋ฆฌ๊ฐ ์ด๋ฏธ ์คํ ์ด์ ์บ์๋ ๊ฒฝ์ฐ, ๋ค๋ฅธ ์ฟผ๋ฆฌ๋ฅผ ๋ ๋๋ง ํ ๋ ํด๋น ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฌ์ฉ ํด์ผํ๋ค. ๊ทธ๋ฌ๋, Relay๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ด๋ฌํ ๋ก์ง์ ๋ํ ์ง์์ด ์๊ธฐ ๋๋ฌธ์, ์ฐ๋ฆฌ๊ฐ ๋์ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ๋ฆฌํจ๋ค๋ ์ง์์ ์ธ์ฝ๋ฉ ํ ์ ์๋๋ก node(id: 4)
๋ user(id: 4)
๋ผ๋ ์ค์ ์ ์ ๊ณตํด์ฃผ์ด์ผ ํ๋ค.
๊ทธ๋ฌ๊ธฐ ์ํด์๋, missingFieldHandlers
๋ฅผ RelayEnvironment
์ ์ ๊ณตํ์ฌ ํด๋น ์ง์์ ๊ตฌ์ฒดํํ๋ค.
ROOT_TYPE
: ์คํ ์ด์ ๋ฃจํธ์ ๋ด๊ธดtype_name
missingFieldHandlers
๋ handlers๋ฅผ ๋ด์ ๋ฐฐ์ด์ด๋ค. ๊ฐ๊ฐ์ ํธ๋ค๋ฌ๋**handle
๋ฉ์๋**๋ฅผ ๊ตฌ์ฒดํํ๊ณ ๋น ์ง ํ๋๋ฅผ ํธ๋ค๋งํ๋ ๋ฐฉ๋ฒ(kind
) ๋ฅผ ์ง๋ ์ผ ํ๋ค. ํธ๋ค๋งํ๊ณ ์ ํ๋ 2๊ฐ์ ์ฃผ์ ํ๋ ํ์ ์:**scalar**
: ์ค์นผ๋ผ ๊ฐ์ ๊ฐ๋ ํ๋ e.g. number, string**linked**
: ๋ค๋ฅธ ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํ๋ ํ๋ e.g. scalar๊ฐ ์๋ ๊ฐ
handle
๋ฉ์๋๋(๋น ์ง ํ๋, ํด๋น ํ๋๊ฐ ์ํ๋ record, ๊ทธ๋ฆฌ๊ณ ํ์ฌ ์ฟผ๋ฆฌ๋ฅผ ์คํํ๊ธฐ ์ํด ํ๋์ ์ ๊ณต๋๋ arguments)
๋ฅผ ๋งค๊ฐ๋ณ์๋ก ๊ฐ๋๋ค.scalar
ํ๋๋ฅผ ํธ๋ค๋ง ํ ๊ฒฝ์ฐ, ํธ๋ค๋ฌ ํจ์๋ ๋น ์ง ํ๋์ ๊ฐ์ผ๋ก ์ฌ์ฉํ ์ ์๋๋ก ์ค์นผ๋ผ ๊ฐ์ ๋ฐํํด์ผ ํ๋ค.linked
ํ๋๋ฅผ ํธ๋ค๋ง ํ ๊ฒฝ์ฐ, ํธ๋ค๋ฌ ํจ์๋ ๋น ์ง ํ๋์ ๋ฃ์ ์ ์๋๋ก ์คํ ์ด์ ์๋ ๋ค๋ฅธ ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํ๋ID
๋ฅผ ๋ฐํํด์ผ ํ๋ค.
Relay๊ฐ ๋ก์ปฌ ์บ์๋ฅผ ์ด์ฉํด ์ฟผ๋ฆฌ๋ฅผ ์คํํ๋ฉด์ ๋น ์ง ๋ฐ์ดํฐ๋ฅผ ๋ง๋๋ ๊ฒฝ์ฐ์๋, ๋ช ์์ ์ผ๋ก ๋ฐ์ดํฐ๊ฐ ์๋ค๊ณ ํ์ํ๊ธฐ ์ ์ ์ ๊ณต๋ ํธ๋ค๋ฌ ํจ์ ์ค ๋น ์ง ํ๋์ ํ์ ์ ๋ง๋ ํธ๋ค๋ฌ๋ฅผ ์คํ์ํจ๋ค.
Last updated