๐งโ๐ป ๋ชจ๊ฐ์ฝ 4์ฃผ์ฐจ
์ด์ ๊ธ ๐งโ๐ป ๋ชจ๊ฐ์ฝ 3์ฃผ์ฐจ ๋ณด๋ฌ๊ฐ๊ธฐ.
๐ ์ค๋์ ํ ์ผ
- ๐คฆโโ๏ธ react-native VS Swift
- ๐จโ๐ป ์ ํํ ๋ฐฉ์์ผ๋ก ๊ณต๋ถํ๊ธฐ
์ค๋๋ถํฐ ์ฌ์ ๋จ์์ ์ฟ ํฐ์ ๋๋์ด์ค ๋ค๊ณผ๋ฅผ ๋จน์ ์ ์๊ฒ ๋๋ค.
๐คฆโโ๏ธ react-native VS Swift
๊ทธ๊ฐ ์ฌ๋ฌ๊ฐ์ง ์๋๋ฅผ ํด๋ณด๋ฉด์ ์ด์ฉ๋ค๋ณด๋ react-native์ Swift๋ก ์ฑ์ ๋ชจ๋ ๋น๋ํด๋ณด๊ฒ ๋๋ฉด์ ๋ ๋ฐฉ์ ์ฌ์ด์์ ๊ณ ๋ฏผ์ ํ๊ฒ ๋์๋ค. react-native์ ์ฅ์ ์ iOS์ android ๋ชจ๋ ์์ ์๋ํ๋๋ก ๋จ์ผ ์ธ์ด์ธ JavaScript๋ฅผ ํตํด ๋ง๋ค์ด๋ผ ์ ์๊ณ , react๋ฅผ ์ฌ์ฉํด ๋ง๋ ์น๊ณผ ๋์ผํ ๊ฒฐ๊ณผ๋ฌผ์ ๋ณด์ฌ์ฃผ๊ธฐ์ ์ ํฉํ๊ธฐ ๋๋ฌธ์ ์น๊ณผ ์ฑ์น์ ํจ๊ป ๋ง๋ ๋ค๋ฉด ์์ฃผ ์ข๋ค๋ ์ฅ์ ์ด ์์์ง๋ง, iOS์ ์ฝ์ดํ ๊ธฐ๋ฅ๋ค์ ์ฌ์ฉ์ ์ ์ฝ์ด ์์๋ค. ์๋ฅผ๋ค๋ฉด ์นด๋ฉ๋ผ, ๋ง์ดํฌ ๋ฑ์ ์ฌ์ฉ์ ์์ด์ ์ ํ์ด ์๋ ๊ฒ์ด๋ค. ๋ xcode์์ ์ ๊ณตํ๋ ์คํ ๋ฆฌ๋ณด๋๊ฐ์ ๊ธฐ๋ฅ์ด ์๊ธฐ ๋๋ฌธ์ ์ธํฐํ์ด์ค๋ฅผ ๋ชจ๋ ์ง์ ์ ์ํด์ค์ผํ๋ค๋ ๋จ์ ๋ ์์๋ค. ์น์ ๊ณต๋ถํด๋ณธ ์ฌ๋์๊ฒ๋ ๋ถํธํจ์ด ์๊ฒ ์ง๋ง, ๋๋ ์ด์ ์ JavaScript๋ ์น์ ๊ณต๋ถํด๋ณธ์ ์ด ์์๊ณ , ์ฑ ๊ฐ๋ฐ ๋ํ ์ด๋ฒ ๋ฐฉํ iOS๋ก ์ ๋ฌธํ ์ํฉ์ด์๊ธฐ์ ์ด๋ค ๋ฐฉ์์ ์ ํํด์ ๋ ๊ณต๋ถํด๋ณด์์ผํ ์ง ๊ณ ๋ฏผ์ด๋์๋ค. ๊ด๋ จํด์ ๊ตฌ๊ธ์ ํตํด ์ฐพ์๋ณด๋ ์ค ์ด๊ณณ์์ react-native์ Swift๊ฐ์ ์ฐ๋์ด ๊ฐ๋ฅํ๋ค๋ ์ด์ผ๊ธฐ๋ฅผ ์ฐพ์๊ณ , ์ด๊ณณ์์ Swift์ react-native๋ฅผ ๋น๊ตํ ๋ด์ฉ์ ์ฝ์ด๋ณด๋ฉฐ ์ผ๋จ์ Swift๋ฅผ ๋ ๊น๊ฒ ๊ณต๋ถํด ์ฑ ๊ฐ๋ฐ์ ๋ํ ์ ๋ฐ์ ์ธ ์ดํด๋ฅผ ๊ฐ์ถ๊ณ , ์น์ ๊ณต๋ถํ๋ฉด์ react์ react-native ๊ทธ๋ฆฌ๊ณ JavaScript๋ฅผ ํจ๊นจ ๊ณต๋ถํ๋ํธ์ด ์ข์๊ฒ ๊ฐ๋ค๋ ๊ฒฐ๋ก ์ ๋๋ฌํ๋ค. ๋ฐ๋ผ์ ๊ทธ๋์ ์ง์คํ์ง ๋ชปํ๋ Swift๊ณต๋ถ์ ๋ ์ง์คํ๊ธฐ๋ก ๊ฒฐ์ ํ๋ค.
๐จโ๐ป ์ ํํ ๋ฐฉ์์ผ๋ก ๊ณต๋ถํ๊ธฐ
์ด์ ์ App Development With Swift ๋ฅผ ์ด์ฉํด ๊ณต๋ถํ๋๊ฒ์ ์ด์ด์ ๊ณ์ ๊ณต๋ถํ๋ค.
Stack View
์ฑ์ View์์ ์ฌ๋ฌ Label์ ๋ณด์ฌ์ค ๋ ์ฌ๋ฌ๊ฐ์ Label์ ๊ฐ์ ธ์ ๊ฐ๊ฐ Constraints๋ฅผ ์ ์ฉํด์ฃผ๋ ๊ฒ ๋ณด๋ค Stack View๋ฅผ ํตํด ํ๋์ ์์๋ก ํตํฉํ์ฌ ๊ด๋ฆฌํ๋ํธ์ด ๊ด๋ฆฌ ์์ ์ ์์ด์ ์ ๋ฆฌํ๋ค. ์ฌ๋ฌ Label๋ค์ ์ ํํ์ฌ ์ฐ์ธก ํ๋จ์ ๋ฒํผ์ ํตํด Stack View๋ก ํตํฉํด์ค ์ ์๋ค.
Vary Traits
iOS๋ ๋ค์ํ ๊ธฐ๊ธฐ์์์ ๋์ํ๋ค. ๋ค์ํ iPhone๊ณผ iPad๋ ๊ฐ๊ฐ ๋ค๋ฅธ ํ๋ฉด ๋น์จ์ ๊ฐ์ง๊ณ ์๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ํ๊ฒฝ์์ ์ ๋นํ View๋ฅผ ๋ณด์ฌ์ฃผ๊ธฐ ์ํด์๋ ๋ค์ํ ํ๊ฒฝ์ ๋ฐ๋ผ ๋ค๋ฅธ View๋ฅผ ๋ณด์ฌ์ฃผ์ด์ผํ๋ค. xcode๋ ์ฑ์ ์ฌ๋ฌ ๋ฒ์ ์ผ๋ก ๋น๋ํ๋ ๋ฒ๊ฑฐ๋ก์ ๋์ , Vary Traits๋ผ๋๊ฒ์ ์ ๊ณตํ๋ค. iOS๊ธฐ๊ธฐ์์ ํ๋ฉด์ ๋น์จ์ compect์ regular๋ก ๋๋์ด์ง๋ค. iPhone11 ๊ธฐ์ค ๊ฐ๋ก๋ compect, ์๋ก๋ regular์ด๊ณ , iPad Pro 9.7 ๊ธฐ์ค์ผ๋ก๋ ๊ฐ๋ก์ ์๋ก ๋ชจ๋ regular์ด๋ค. ์ด๋ฅผ ํตํด์ ๋ค์ํ ์ต์ ๋ค์ compect์ regular์กฐ๊ฑด์ ํตํด ๋ณํ๋ฅผ ์ค ์ ์๋ค. spacing์ ๊ฒฝ์ฐ๋ก ์๋ฅผ ๋ค๋ฉด, ์ฌ๋ฌ Label๋ค์ Stack์์ ๋ฃ์์ ๋ ๊ฐ Label๊ฐ์ ์ฌ์ด ๊ฑฐ๋ฆฌ๋ฅผ ์ ์ํ๋ ์์ฑ์ธ๋ฐ, ์ด๋ฅผ ํ๋ฉด ๋น์จ์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ์ ์ํด์ค ์ ์๋ค.
Installed
Vary Traits์์ ํ๋ฉด๋น์จ์ ๋ฐ๋ผ ์์ฑ์ ๋ณ๊ฒฝํด์คฌ๋ฏ์ด, ํ๋ฉด ๋น์จ์ ๋ฐ๋ผ ์์๊ฐ ๋ณด์ฌ์ง์ง ๋ณด์ฌ์ง์ง ์์์ง๋ฅผ ๊ฒฐ์ ํด์ค ์ ์๋ค.
View Hierarchy
์ฑ์ debugging ์์ View๋ฅผ ๊ณ์ธต๋ณ๋ก ๋ถ๋ฆฌํด ํ์ธํ ์ ์๋ค. ์ฑ์ ๋ค์ํ ์์๋ค์ด ์ถ๊ฐ๋๊ณ ๋ณต์กํด์ง ์๋ก ์ค์ํ๋ค.
๋ค์ ๊ธ ๐งโ๐ป ๋ชจ๊ฐ์ฝ 5์ฃผ์ฐจ๋ณด๋ฌ๊ฐ๊ธฐ.
Comments