๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ(React Native)๋ iOS์ ์๋๋ก์ด๋ ์ฑ ๊ฐ๋ฐ์ ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค. ์๋ฐ์คํฌ๋ฆฝํธ๋ก ๊ตฌํ๋ ๊ธฐ์กด์ ๋ชจ๋ฐ์ผ์ฑ๋ค์ ์น๋ทฐ๋ฅผ ์ด์ฉํ ํ์ด๋ธ๋ฆฌ๋ ๋ฐฉ์์ด์๋ค. ํ์ง๋ง ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ๋ ์๋ฐ์คํฌ๋ฆฝํธ๋ก ๊ฐ๋ฐํ์ง๋ง, ํ๋ฉด ์ธํฐํ์ด์ค๋ ๋ค์ดํฐ๋ธ ์์ ฏ์ผ๋ก ์ปดํ์ผํ์ฌ ๋น๋๋๋ค. ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ๋ ๋ค์ดํฐ๋ธ UI๋ฅผ ์ฌ์ฉํ์ฌ ๋น ๋ฅธ ์ฌ์ฉ์ ๊ฒฝํ์ ์ ๊ณตํ๋ค.
CRNA(create-react-native-app)๋ ๊ธฐ์กด์ React Native CLI ๋ณด๋ค ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ ์ฑ๊ฐ๋ฐ์ ๋ ์ฝ๊ณ ๋น ๋ฅด๊ฒ ์์ํ ์ ์๊ฒ ํด์ค๋ค. ๊ทธ๋ฆฌ๊ณ CRNA๋ฅผ ์ฌ์ฉํ๋ฉด Xcode ๋๋ Android Studio๊ฐ ํ์์๋ค. Linux ๋๋ Windows์์๋ iOS ์ฑ์ ๊ฐ๋ฐํ ์ ์๋ค.
์๋ ๋ช ๋ น์ด๋ก CRNA๋ฅผ ์ค์นํ๋ค.
$ npm install -g create-react-native-app
CRNA๋ node v4,6,7,8์์๋ง ์๋ํ๋ค. ์ฐธ๊ณ ๋ก ๋๋ Node version management
n๋ฅผ ์ฌ์ฉํ์ฌ node v8.12.0๋ฅผ ์ถ๊ฐ ์ค์นํ์๋ค.
CRNA๋ฅผ ์ฌ์ฉํ์ฌ weather_app ์ฑ์ ์์ฑํ๋ค.
$ create-react-native-app weather_app
์ ๋ช
๋ น์ ์คํํ๊ณ ํ
ํ๋ฆฟ ์ ํ์ ํ๋ฉด ํ์ํ ๋ชจ๋์ ๋ค์ด๋ก๋ํ๊ธฐ ์์ํ๋ค. ๊ทธ๋ฆฌ๊ณ ์กฐ๊ธ ๊ธฐ๋ค๋ฆฌ๋ฉด ์๋์ ๊ฐ์ด ํ๋ก์ ํธ๊ฐ ์์ฑ๋๋ค.
Xcode ๋๋ Android Studio๋ฅผ ์ค์นํ์ง ์๊ณ ํ ์คํธ ํ๋ ค๋ฉด ๋๋ฐ์ด์ค์ Expo ์ฑ์ ์ค์นํด์ผํ๋ค. Expo์ฑ ๋ค์ด๋ก๋ ํ์ด์ง์์ Expo์ฑ์ ์ค์นํ๋ค.
๋ฐฉ๊ธ ์์ฑํ weather_app ํ๋ก์ ํธ๋ฅผ ์คํํ๋ค.
$ cd weather_app
$ expo start
๋น๋ ๊ณผ์ ์ด ๋๋๋ฉด ์ฝ์์ฐฝ์ ์๋์ ๊ฐ์ด QR์ฝ๋๊ฐ ์ถ๋ ฅ๋๋ค.
๋๋ฐ์ด์ค์์ Expo์ฑ์ ์คํํ์ฌ Scan QR Code ๋ฒํผ๋ฅผ ์ ํํ๋ค. ๊ทธ๋ฆฌ๊ณ ์ฝ์์ฐฝ์ ๋ณด์ด๋ QR์ฝ๋๋ฅผ ์ดฌ์ํ๋ค.

๊ทธ๋ผ ์๋์ ๊ฐ์ด ์ํ์ฑ์ด ์คํ๋์ด ๋ณด์ฌ์ง๋ค.

์ฝ๋๋ฅผ ์์ ํ๋ฉด Hot Reloding์ ์ํด ์์ ํ ๋ด์ฉ์ด ๋ฐ๋ก ๋ฐ์๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋๋ฐ์ด์ค๋ฅผ ์์ ์ฅ๊ณ ์ํค์ํค ํ๋ค๋ฉด, ์๋์ ๊ฐ์ด ํ์
๋ฉ๋ด๊ฐ ๋ํ๋๋ค. ํ์
๋ฉ๋ด๋ฅผ ์ด์ฉํ๋ฉด ์ฑ ์ ์ฒด๋ฅผ reloadํ๊ฑฐ๋, ์๊ฒฉ JS๋๋ฒ๊น
๋๋ Hot Reloding ๋ชจ๋๋ฅผ ๋์๋ ์๋ค.

๋ง์ง๋ง์ผ๋ก ๋ธ๋ผ์ฐ์ ์์ http://localhost:19003 ๋ฅผ ์ ์ํ๋ฉด, ๋๋ฐ์ด์ค ์ ๋ณด์ ๋ก๊ทธ๋ฅผ ํ์ธํ ์ ์๋ค.
์ฐธ๊ณ : https://jongmin92.github.io/2017/07/20/ReactNative/create-react-native-app/
์ค๋๋ง์ ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ ๋ฌธ์๋ฅผ ๋ดค๋๋ ์์ฒญ๋ ๋ฐ์ ์ด ์์ด์ ๋๋์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ฐ๋ฐํ๊ธฐ๊ฐ ์ ๋ง ์ฝ๊ณ ํธํด์ก์ต๋๋ค. Xcode ๋๋ Android Studio๋ฅผ ์ค์นํ์ง ์๊ณ ๋ ๊ฐ๋ฐํ ์ ์๋๊ฒ ์ ๋ง ๋๋๋ค์. ๊ทธ๋ฆฌ๊ณ ๊ฐ๋จํ ์ฝ๋๋ ํ๋ฉด์ ๊ฐ๋ฐํด ์์ด snack์ ์ด์ฉํ๋ฉด ์ฝ๊ฒ ํ ์คํธ ๊ฐ๋ฅํฉ๋๋ค.
์ฌ์ค ์ ๋ ๊ฐ์ธ์ ์ผ๋ก ๊ตฌ๊ธ์ ํ๋ฌํฐ๊ฐ ๋ ๋ง์์ ๋ค์ง๋ง, ๊ฐ๋ฐ์๋(๋๊ตฌ)/๋ ํผ๋ฐ์ค(์คํ์์ค, ์ปค๋ฎค๋ํฐ)/๊ฐ๋ฐ์ธ์ด(JS) ๋ฑ์ผ๋ก ์ธํด ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ๋ฅผ ๋์ ํ ๋ฒ๋ฆด ์๊ฐ ์๋ค์.
์๋ ํ์ธ์. ๋ถ์ถ์ ๋๋ค. ์ต๊ทผ์ ๋ฆฌ๋์ ๋ ํธ๋ฅผ ๊ตฌ๋ ํ๊ฒ ๋์๋๋ฐ์. ๊ฑฐ๊ธฐ์์ ํ๋ฒ๋๋น์ง๋์ค๋ฆฌ๋ทฐ ...