๊ฐ๋ฐ ์ง์์ด ์์ด๋ ๊ด์ฐฎ์์!
์
๋ฌธ์๋ ํ ์ ์๋ Flutter ์ฑ ๊ฐ๋ฐ ๊ธฐ์ด ๐โโ๏ธ
์์ด๋ณด๋ ๋ฐฐ์ธ ์ ์๋
Flutter ์ฑ ๊ฐ๋ฐ ๊ธฐ์ด
์ฑ ๊ฐ๋ฐ์ ๋ฐฐ์ฐ๋ฉด ๊ทธ๋์ ์์๋ง ํด์ค๋ ๋๋ง์ ์ฑ ์๋น์ค๋ฅผ ์ ์ธ๊ณ์ ์ถ์ํ ์ ์์ด์. ์ฌ์ค ์ฑ์ ๋ง๋๋ ๋ฐฉ๋ฒ์ ์ธํฐ๋ท์ ๋ค ์์ง๋ง, ์
๋ฌธ์๊ฐ ์ง์ ํ์ํ ์ ๋ณด๋ฅผ ๊ฒ์ํด ์ฑ์ ๋ง๋ค๋ ค๋ฉด ๊ต์ฅํ ๋ง์ ์ํ์ฐฉ์ค์ ๋ฐฐ๊ฒฝ์ง์์ ํ์๋ก ํฉ๋๋ค. ๋ค๋ฅธ ๋ถ๋ค์ ์ ์ ๋์ผํ ์ํ์ฐฉ์ค๋ฅผ ๊ฒช์ง ์์์ผ๋ฉด ํ๋ ๋ฐ๋์ผ๋ก ๊ฐ์๋ฅผ ์ค๋นํ์์ต๋๋ค.
์ด๋ค ํด๋์ค์ธ๊ฐ์?
๋ค์ํ ์ฑ์ ์ง์ ๋ง๋ค๋ฉฐ, ์ค์ ์ฝ๋ ๋ ๋ฒจ์์ ์ด๋ค ๋ฐฉ์์ผ๋ก ์๊ฐํ๊ณ ์ฝ๋๋ฅผ ์์ฑํ๋์ง ๊ฒฝํํ ์ ์๋ ์์ด๋ณด ๋์ Flutter ์
๋ฌธ ํด๋์ค์
๋๋ค. ๋งค ํ์ฐจ๋ณ ์ด๋ก (30%)๊ณผ ์ค์ต(70%)๋ก ๊ตฌ์ฑ๋์ด ์๊ณ , ๋ฐฐ์ด ๋ด์ฉ์ ์ค์ค๋ก ๋ณต์ตํ๊ฑฐ๋ ํ ๊ฑธ์ ๋ ๋์๊ฐ ์ ์๋๋ก ์ค์ต ์๋ฃ๋ฅผ ์ค๋นํ์์ต๋๋ค. (Flutter ์ต์ ๋ฒ์ ์ผ๋ก ์๊ฐ ๊ฐ๋ฅํด์ ๐)
๐ ์๊ฐ ์ ํ์ธํด ์ฃผ์ธ์!
๋ณธ ๊ฐ์๋ Flutter ์ฑ ๊ฐ๋ฐ ์๋ฆฌ์ฆ์ ์ฒซ ๋ฒ์งธ ๊ฐ์์
๋๋ค. Flutter ์ฑ ๊ฐ๋ฐ ๊ธฐ์ด ์ค์ ๋ ์๋ ๊ฐ์๋ฅผ ์ฐธ๊ณ ํด ์ฃผ์ธ์.
ํน๋ณํ ์ค๋นํ์ด์ โจ
์ค์ค๋ก ์ ๊ฒํ ์ ์๋
์ค์ต ์๋ฃ ์ ๊ณต
๋๊ตฌ๋ ์ดํดํ ์ ์๋
๋ช
์พํ ์ด๋ก ์ค๋ช
์ด๋ฐ ๊ฑธ ๋ฐฐ์์ ๐
- 1ํ์ฐจ : Flutter ์ฑ ๊ฐ๋ฐ ๋ง๋ณด๊ธฐ & Dart ๋ฌธ๋ฒ ์ตํ๊ธฐ
- 2ํ์ฐจ : ํ๋ฉด ๋ง๋ค๊ธฐ
- 3ํ์ฐจ : ํจํค์ง ์ฌ์ฉ๋ฒ ์ตํ๊ธฐ & ์ฑ ๊ธฐ๋ฅ(CRUD) ๋ง๋ค๊ธฐ & ์ํ ๊ด๋ฆฌ(Provider)
- 4ํ์ฐจ : ๋คํธ์ํฌ & ๋น๋๊ธฐ ๋ค๋ฃจ๋ ๋ฒ & API ์ฌ์ฉ๋ฒ ์ตํ๊ธฐ
- 5ํ์ฐจ : Firebase ๋ก๊ทธ์ธ ๋ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๋
๋ค์ํ ์ฑ์
์ง์ ๋ง๋ค์ด ๋ณผ ์ ์์ด์!
ํ ๊ฑธ์ ๋ ๋์๊ฐ ์ ์๋๋ก
์ค์ต ์๋ฃ๋ ์ค๋นํ์ด์ ๐ซ
Dart ์ธ์ด๋ถํฐ
Flutter ์ฑ ๊ฐ๋ฐ ์ค์ต๊น์ง!
- ํ๋ก๊ทธ๋๋ฐ ์ธ์ด Dart ์ฌ์ฉ๋ฒ์ ์ตํ ์ ์์ด์.
- Widget์ ์ดํดํ๊ณ , ์ํ๋ ํ๋ฉด์ ๋ง๋ค ์ ์์ด์.
- HTTP, API, ์ํ ๊ด๋ฆฌ ๋ฑ ๊ธฐ๋ณธ์ ์ธ IT ๋ฐฐ๊ฒฝ์ง์์ ์์ ์ ์์ด์.
- Provider ํจํค์ง๋ฅผ ์ด์ฉํ์ฌ ์ฑ์ ์ํ๋ฅผ ๊ด๋ฆฌํ ์ ์์ด์.
- Firebase Authentication & Firestore๋ฅผ ์ฌ์ฉํ ์ ์์ด์.
- Flutter ์ฑ ๊ฐ๋ฐ ๊ธฐ์ด๋ฅผ ํผํผํ๊ฒ ๋ค์ง ์ ์์ด์.
์๊ฐ ์ ํ์ธํด์ฃผ์ธ์.
๋ค์ ๋ด์ฉ์ ๊ฐ์์์ ๋ค๋ฃจ์ง ์์์ ๐
๐ปโโ๏ธ
- Provider, setState ์ด์ธ์ ์ํ ๊ด๋ฆฌ ํจํค์ง(Bloc, GetX, Riverpod...)
- Play Store๋ App Store์ ์ฑ์ ์ถ์ํ๋ ๋ฐฉ๋ฒ
- ์์
๋ก๊ทธ์ธ ์ฐ๋
- ๋์์ธ ํจํด ๋ฐ ์ํคํ
์ณ์ ๊ดํ ๋ด์ฉ
์์ ์ง๋ฌธ Q&A ๐ฌ
Q. Flutter๋ฅผ ์ ํํ ์ด์ ๊ฐ ๋ฌด์์ธ๊ฐ์?
์ฑ ์๋น์ค๋ฅผ ํ๋ ค๋ฉด Android์ iOS ๋ ํ๋ซํผ์ ๋ชจ๋ ๊ฐ๋ฐํด์ผ ํ๋๋ฐ, ํผ์์ ๋ ํ๋ซํผ์ ๋ฐ๋ก ๋ง๋๋ ๊ณผ์ ์ ๊ต์ฅํ ๋ฐฐ์ธ ๊ฒ๋ ๋ง๊ณ ์๊ฐ๋ ์ค๋ ๊ฑธ๋ฆฝ๋๋ค. ํ์ง๋ง Flutter๋ฅผ ์ด์ฉํ๋ฉด ํ๋์ ์ฝ๋๋ก ๋ ํ๋ซํผ์ ๋ชจ๋ ์ง์ํ ์ ์์ด ํจ์ฌ ๋น ๋ฅด๊ณ ํจ์จ์ ์ด๊ฒ ์ฑ ์๋น์ค๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค.
Q. ๋น์ ๊ณต์ ์์ด๋ณด๋ ์๊ฐ ๊ฐ๋ฅํ๊ฐ์?
์์ด๋ณด ๋๋์ด์ ๋ง์ถ์ด ๊ธฐ์ด ๋ฌธ๋ฒ๋ถํฐ ์ฑ ๊ฐ๋ฐ์ ํ์ํ ๋ฐฐ๊ฒฝ์ง์๊น์ง ์์ ์ ์๋๋ก ์ค๋นํ๊ธฐ ๋๋ฌธ์ ์ด์ ๊ณผ ๋
ธํธ๋ถ์ด ์์ผ์๋ค๋ฉด ์ถฉ๋ถํ ์๊ฐํ์ค ์ ์์ต๋๋ค. ๐
Q. Flutter ์ต์ ๋ฒ์ ์ผ๋ก ์๊ฐ ๊ฐ๋ฅํ๊ฐ์?
๋ค! Flutter ์ต์ ๋ฒ์ ์์ ์๊ฐํ์ค ์ ์๋๋ก ๋
ธ์
ํ์ต ์๋ฃ๋ฅผ ์์ ์
๋ฐ์ดํธํ๊ณ ์์ต๋๋ค :) ๊ฐ์ ์์๊ณผ ๋ค๋ฅธ ๋ถ๋ถ์ ๊ฐ์ ์๋ฃ๋ฅผ ์ฐธ๊ณ ํด ์ฃผ์๊ณ , ๋ง์ฝ ์๊ฐํ์๋ค๊ฐ ๋ฌธ์ ๊ฐ ์๊ธฐ์๋ ๊ฒฝ์ฐ ์ธ์ ๋ ์ง ์คํ ์นด์นด์คํก์ผ๋ก ๋ฌธ์์ฃผ์๋ฉด ์ ์ํ ๋์๋๋ฆฌ๊ณ ์์ต๋๋ค. (26.03.03 : ์ต์ข
ํ์ธ ๋ฒ์ Flutter 3.41.3)
Q. ์๊ฐ ์ ์ค๋นํด์ผ ํ ๊ฒ์ด ์๋์?
์๊ฐ์ ์ ๊ณต๋๋ฆฌ๋ ์๋ฃ์ ์๋ "Flutter ์ค์น ๊ฐ์ด๋"๋ฅผ ๋ฐ๋ผ ์ค์น๋ฅผ ์๋ฃํด ์ฃผ์ธ์!
(์ค์นํ๋ค๊ฐ ๋งํ์ ๋์์ด ํ์ํ์ ๊ฒฝ์ฐ ์คํ ์นด์นด์คํก์ผ๋ก ๋ฌธ์ ์ฃผ์ธ์ โญ๏ธ)
Q. ์๋์ฐ ์ปดํจํฐ๋ก iOS ์ฑ๋ ์ถ์ํ ์ ์๋์?
์ ํ์์ iOS ์ฑ์ ๋งฅ ์ด์์ฒด์ ์์๋ง ๊ฐ๋ฐํ ์ ์๋๋ก ๋ง๋ค์๊ธฐ ๋๋ฌธ์ ๋ถ๊ฐ๋ฅํด์. ํ์ง๋ง ์๋์ฐ์์ Flutter๋ก ๋ง๋ ์ฑ์ iOS์์ ๋์ฐ๋ฉด ์ผ๋ถ ์ฌํญ์ ์ ์ธํ๊ณ ๊ฑฐ์ ๋์ผํ๊ฒ ๋ณด์
๋๋ค. ๋ค๋ฅด๊ฒ ๋ณด์ด๋ ์ฌํญ๋ค์ ๊ฐ์์์ ์ธ๊ธํด ๋๋ฆฌ๋ ์ผ๋จ ์๋์ฐ์์ Android ์ฑ์ ๋จผ์ ์ถ์ํ๊ณ , ์ดํ ์ฌ์ ๊ฐ ๋ ๋ ๋งฅ๋ถ์ ๊ตฌ๋งคํ์ฌ iOS๋ฅผ ์ถ์ํ์๋ฉด ๋ฉ๋๋ค.
Q. Flutter ์ฑ ๊ฐ๋ฐ์ ์ํ ์ปดํจํฐ ์๊ตฌ ์ฌํญ์ ์ด๋ป๊ฒ ๋๋์?
window : ์๋์ฐ7 ์ด์ / ์ฌ์ ์ฉ๋ 10GB / ๋จ 4G ์ด์ / 64bit (์์ธํ ์ฌํญ์ ๊ณต์๋ฌธ์๋ฅผ ์ฐธ๊ณ )
macOS : ์ฌ์ ์ฉ๋ 50GB / 64bit (์์ธํ ์ฌํญ์ ๊ณต์๋ฌธ์๋ฅผ ์ฐธ๊ณ )
์ ์ฉ๋์ Flutter ๊ฐ๋ฐ์ ํ์ํ ๋ชจ๋ ํด ์ค์น์ ๊ธฐ์ค์
๋๋ค.
Q. ์๊ฐ ๊ธฐํ์ด ๋ฌด์ ํ์ด ์๋ ์ด์ ๊ถ๊ธํด์?
๊ฐ์ ๊ตฌ๋งค ํ ๋ฏธ๋ฃจ์ง ์๊ณ ์๊ฐํ์๋๋ก ๊ธฐํ์ ๋์์ผ๋ฉฐ, ์๊ฐ ๊ธฐํ ์ฐ์ฅ์ ์ํ์ ๋ค๋ฉด ์ธ์ ๋ ์ง devstory.co.kr@gmail.com๋ก ์ธํ๋ฐ ์ด๋ฉ์ผ์ ์๋ ค์ฃผ์ธ์! ๊ฐ์ ์๋ฃ๋ ํ์ ์์ฅ ๊ฐ๋ฅํฉ๋๋ค :)