~ Today I Learned ~
โ๏ธ Android ๊ฐ๋ฐ ์ข
ํฉ๋ฐ 1์ฃผ์ฐจ - BMI Calculator ์ ์
โ๏ธ ๋ฐ์ผ๋ฆฌ Algorithm ๋ฌธ์ ํ์ด (1๋ฒ ~ 8๋ฒ)
<๊ฒฐ๊ณผ๋ฌผ ๋ฏธ๋ฆฌ๋ณด๊ธฐ>
1. Android ๊ฐ๋ฐ ์ข ํฉ๋ฐ 1์ฃผ์ฐจ - BMI Calculator ์ ์
Android Studio
- Android Studio๋ Android ์ฑ ๊ฐ๋ฐ์ ์ํ ๊ณต์ ํตํฉ ๊ฐ๋ฐ ํ๊ฒฝ(IDE)์ด๋ฉฐ, IntelliJ IDEA๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํจ
- IntelliJ์ ๊ฐ๋ ฅํ ์ฝ๋ ํธ์ง๊ธฐ์ ๊ฐ๋ฐ์ ๋๊ตฌ ์ธ์๋, Android Studio๋ Android ์ฑ์ ๋น๋ํ ๋ ์์ฐ์ฑ์ ๋์
๐ช Android Studio ๊ฐ์
1. ์ ์ฐํ Gradle ๊ธฐ๋ฐ ๋น๋ ์์คํ
2. ๋น ๋ฅด๊ณ ๊ธฐ๋ฅ์ด ํ๋ถํ ์๋ฎฌ๋ ์ดํฐ
3. ๋ชจ๋ Android ๊ธฐ๊ธฐ๋ฅผ ๊ฐ๋ฐํ ์ ์๋ ํตํฉ ํ๊ฒฝ
4. ๋ณ๊ฒฝ์ฌํญ์ ์ ์ฉํ์ฌ ์ฑ์ ๋ค์ ์์ํ์ง ์๊ณ ์คํ ์ค์ธ ์ฑ์ ์ฝ๋ ๋ฐ ๋ฆฌ์์ค ๋ณ๊ฒฝ์ฌํญ์ ํธ์ํ ์ ์์
5. ์ผ๋ฐ์ ์ธ ์ฑ ๊ธฐ๋ฅ์ ๋น๋ํ๊ณ ์ํ ์ฝ๋๋ฅผ ๊ฐ์ ธ์ค๋ ๋ฐ ๋์์ด ๋๋ ์ฝ๋ ํ
ํ๋ฆฟ๊ณผ GitHub ํตํฉ
6. ๊ด๋ฒ์ํ ํ
์คํธ ๋๊ตฌ ๋ฐ ํ๋ ์์ํฌ
7. ์ฑ๋ฅ, ์ ์ฉ์ฑ, ๋ฒ์ ํธํ์ฑ ๋ฐ ๊ธฐํ ๋ฌธ์ ๋ฅผ ํ์
ํ๋ Lint ๋๊ตฌ
8. C++ ๋ฐ NDK ์ง์
9. Google ํด๋ผ์ฐ๋ ๋ฉ์์ง๊ณผ App Engine์ ํตํฉ์ ๋์์ฃผ๋ Google Cloud Platform์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ง์
BMI Calculator ์ ์
(1) Activity์ xml ํ์ผ์ ํ์์ด๋ค.
(2) Activity๋ ํ๋ฉด์ ์๋ํ๊ฒ ํด์ฃผ๊ณ , xml์ ํ๋ฉด์ ui๋ฅผ ๊ตฌ์ฑํ๋ค.
(3) xmlํ์ผ์ ์์ ํ ๋ design ํด์ ์ด์ฉํ์ฌ ์์ฝ๊ฒ ๋ฐฐ์น ๊ฐ๋ฅํ๊ณ , ๊ฐ ์ปดํฌ๋ํธ์ ๋
ธ๋๋ฅผ ์ฐ๊ฒฐํด ์ ๋ ฌํ๊ธฐ๋ ํธ๋ฆฌํ๋ค.
(4) ์ปดํฌ๋ํธ๋ฅผ ๋ง๋ค ๋ ์์ผ๋ก ํ์ฉํ ์ปดํฌ๋ํธ๋ผ๋ฉด id๋ช
์ ์ ๋๋ก ์ ์ธํ๋ ๊ฒ ์ค์ํ๋๋ฐ, xml์ ์๋ฉ ์์ ํ๋ค๊ฐ ๋ค๋ฆ๊ฒ ๊ทธ ๋ถ๋ถ์ ๋์น ๊ฑธ ์๊ฒ๋๋ฉด ์์ ํ๊ธฐ ๊ต์ฅํ ๋ฒ๊ฑฐ๋ก์ธ ๊ฒ ๊ฐ์๋ค.
(5) activity์ activity๋ฅผ ์ฐ๊ฒฐํ๊ธฐ ์ํด์๋ intent๊ฐ ํ์ํ๊ณ , intent๋ก ๋ณ์๋ฅผ ๋๊ฒจ์ค์ ๋ค๋ฅธ activity์์๋ ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค.
2. ๋ฐ์ผ๋ฆฌ Algorithm ๋ฌธ์ ํ์ด (1๋ฒ ~ 8๋ฒ)
~ Trouble Shooting ~
1. Kotlin ๋ฌธ๋ฒ - ๋ณ์ ์ ์ธ ํ์์ ๋ฌธ์
ํ์ด์ฌ๊ณผ ๋ฌ๋ฆฌ ์ฝํ๋ฆฐ์ ๋ฐ๋์ ๋ณ์๋ก ์ ์ธ๋ ํ์์ ์ง์ผ์ฃผ์ด์ผ ํ๋ค.
ํ์ฌ resImage์ resColor๋ " "๋ก ์ด๊ธฐํ๋์ด ์์ผ๋ฏ๋ก, ์๋์ผ๋ก String ํ์์ด ํ ๋น๋์๋ค.
์๋ if๋ฌธ์์ resImage์ int๊ฐ์ ๋ฃ์์ผ๋ฏ๋ก ์ ์ ํ์ง ์์ ์ค๋ฅ๊ฐ ์๊ธด๋ค.
๋ฐ๋ผ์ ์์ ๋ณ์ ์ด๊ธฐํ๋ฅผ var resImage = 0 ๊ณผ ๊ฐ์ด ๋ฐ๊พธ๋ฉด ์ค๋ฅ๊ฐ ์ฌ๋ผ์ง๋ค.
2. Resource ํ์ผ ์ ๋ชฉ์ ๋ฌธ์
๋ฆฌ์์ค ํ์ผ์ ์ด๋ฆ์ ๋๋ฌธ์ ์ฌ์ฉ์ด ๋ถ๊ฐ๋ฅํ๊ณ , a-z, 0-9๋ underscore๋ง ๊ฐ๋ฅํ๋ค.
ํฐํธ ํด๋์ ๋ฃ์ ttf ํ์ผ์ ์ด๋ฆ์ ์์ ํ๋๋ ํด๊ฒฐ๋์๋ค.
~ ETC ~
์๊ฐ ์ฒซ๋ ์ด๋ค. ์ฃผ์ด์ง ๋๋ก ๋ฐ๋ผํ๋ ค๋ ๋ด ์
๋ง์ ๋ง๋ UI์ ์๋ฐฐ์น๊ฐ ์๋์ด์, ํฐํธ๋ผ๋ ๋ฐ๊ฟ๋ดค๋๋ฐ ์ญ๋ถ์กฑ์ด๋ค.
์ผ๋ฅธ ๋ ์ด์์์ ๋ค ๋ฏ์ด๊ณ ์น๊ณ ์ถ๋ค.