Flutter - Tree
widget tree
์์ ฏ์ ๊ณ์ธต ๊ตฌ์กฐ
ํ๋ฌํฐ ์ ์ฒด์์ ์ฌ์ฉํ๋ ์์ ฏ ํธ๋ฆฌ๋ 1๊ฐ
main ํจ์์์ runApp์ ํ๋ผ๋ฏธํฐ๋ก ์ ๋ฌํ ์์ ฏ์ด ๋ฃจํธ ๋ ธ๋
์์์ ์์ ฏ์ด ๋น๋๊ฐ ๋๋ฉด ์์ ฏ ํธ๋ฆฌ์์๋ ์์ ๋ ธ๋๊ฐ ์๊น

build context
์์ ฏ ํธ๋ฆฌ์์ ํ์ฌ ์์ ฏ์ ์์น๋ฅผ ์๋ ค์ค
๋ชจ๋ ์์ ฏ์ BuildContext๋ฅผ ๊ฐ์ง๊ณ ์์
๋ถ๋ชจ์ context์๋ ๋ถ๋ชจ ์์ ฏ์ ์ ๋ณด๋ง ์ ์ ์์
element tree
widget tree๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ค์ ๋ก ๊ทธ๋ ค์ง instance๋ฅผ ์์ฑ
element tree์ ๋ ธ๋์ widget tree์ ๋ ธ๋๋ ์ผ๋์ผ๋ก ๋์
ComponentElement, RenderObjectElement ๊ฐ์ฒด๋ก ๊ตฌ์ฑ
ComponentElement : ๋ค๋ฅธ element๋ฅผ ํฌํจํ๋ ์ญํ ์ ํจ
RenderObjectElement : ์ค์ ํ๋ฉด์ ์ถ๋ ฅํ ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์์

render tree
element tree๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ค์ ํ๋ฉด์ ์ถ๋ ฅํ๋ render tree ์์ฑ
element tree์ RenderObjectElement ๊ฐ์ฒด๋ง ์ฐธ์กฐ
RenderObject ํด๋์ค๋ฅผ ์์๋ฐ์ ํด๋์ค๋ก ๊ตฌ์ฑ๋จ

Last updated