ํ์ฌ์์ ๊ฐ ์คํํ ๋ชจ๋ฐ์ผ ์๋น์ค๋ฅผ ์ด์ํด์จ์ง ์ด๋๋ง 1๋ ์ด ์ง๋ฌ์ง๋ง ์น ๋ทฐ(Web View) ํํ์ ์ดํ๋ฆฌ์ผ์ด์ ์ ์ธํ์ฐ์ค ๋ฐฐํฌํ๊ณ ์๋ค๋ณด๋ ๋ณ๋๋ก ๋ฒ์ ๊ด๋ฆฌ ๊ท์น์ ์ธ์๋์ง ์์์ฑ ์คํ์ ํ๊ฒ ๋์์ต๋๋ค.
์ด๋ ๋คํ ๊ท์น์ด ์์ด์ ๋น๋ํ๋ ๋๋ก.. ์์ ์ด ํ์ํ๋๋ก.. ์๋๋ก์ด๋/iOS ์ค์น ํ์ผ์ ์น ์๋ฒ์ ์ฌ๋ ค๋๊ธฐ๋ง ํ์ต๋๋ค.
ํ์ง๋ง ์์ ์ด ์ฆ์์ง๋ฉด์ ํน๋ณํ ๊ท์น์ด ์๊ณ ์ด๋ค ๋ถ๋ถ์ ์์ ํ๋์ง์ ๋ํ ๊ธฐ๋ก์ด ์์ด ์ ์ ๊ด๋ฆฌ๊ฐ ์ด๋ ค์์ ธ์ ์ ๊ฐ ์ง์ ํ๊ตฌํ๊ณ ์ฐพ์๊ฐ๋ฉฐ ๊ท์น์ ์ธ์๋ณด๋ฉด์ ๋์์ด ๋ ์๋ฃ๋ ๋ด์ฉ์ ์ ๋ฆฌํ๋ ค๊ณ ํฉ๋๋ค.
๋ฒ์ (version)
๋ฒ์ ์ด ์กด์ฌํด์ผ ํ๋ ์ด์ ๋ ๋ฌด์์ผ๊น์? ์ ์ฌ์ง์ฒ๋ผ ์ต์ข ์ผ ๊ฒ๋ง ๊ฐ์ ๋ด ์ํ์ด ๋ ์์ ๋๋ฉด ๊ทธ๊ฒ ๋ํ ์ต์ข ... ์ด ์์ฌ๋ฅผ ๋ฐ๋ณตํ๋ ์ด์ ๋ ํ์คํ ๋ฆฌ ๊ด๋ฆฌ ๊ท์น์ด ์๊ธฐ ๋๋ฌธ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค.
๋ฒ์ (verison)์ ์ํํธ์จ์ด ๊ฐ๋ฐ ๋ฐ ๋ฌธ์ ๊ด๋ฆฌ ๋ถ์ผ์์ ๋ฐ์ ํ์์ต๋๋ค. ์ด๊ธฐ์๋ ์ํํธ์จ์ด ๋ฒ์ ์ ๊ด๋ฆฌํ๊ณ ๋ฌธ์ ๋ฒ์ ์ ์ถ์ ํ๋ ๋ฐฉ๋ฒ์ผ๋ก ์ฃผ๋ก ์๋์ ์ธ ๋ฐฉ์์ด ์ฌ์ฉ๋์์ง๋ง, ์ดํ ์๋ํ๋ ๋ฒ์ ๊ด๋ฆฌ ์์คํ
์ด ๊ฐ๋ฐ๋์์ต๋๋ค.
์ด๊ธฐ์๋ ์ํํธ์จ์ด ๊ฐ๋ฐ์๊ฐ ์์ค ์ฝ๋์ ๋ณต์ฌ๋ณธ์ ๋ง๋ค์ด ์์ ํ ๋ค, ๋ฒ์ ๋ฒํธ๋ฅผ ํ์ํ๋ ๋ฐฉ์์ผ๋ก ๋ฒ์ ์ ๊ด๋ฆฌํ์ต๋๋ค. 1970๋
๋ ํ๋ฐ๊ณผ 1980๋
๋ ์ด๋ฐ์๋ CVS (Concurrent Versions System)์ RCS (Revision Control System)์ ๊ฐ์ ๋ฒ์ ๊ด๋ฆฌ ๋๊ตฌ๊ฐ ๋ฑ์ฅํ์ฌ ์ํํธ์จ์ด ๊ฐ๋ฐ์์ ๋ฒ์ ๊ด๋ฆฌ๋ฅผ ํจ๊ณผ์ ์ผ๋ก ์ํํ ์ ์๊ฒ ๋์์ต๋๋ค. ์ดํ, ๋ถ์ฐ ๋ฒ์ ๊ด๋ฆฌ ์์คํ
(Distributed Version Control System, DVCS)์ธ Git๊ณผ Mercurial๊ณผ ๊ฐ์ ๋๊ตฌ๊ฐ ๋ฑ์ฅํ์ฌ ํ๋์ ์ธ ๋ฒ์ ๊ด๋ฆฌ ๋ฐฉ์์ ์ ๋ฆฝํ๊ฒ ๋์์ต๋๋ค.
์๋งจํฑ ๋ฒ์ ๊ด๋ฆฌ (Sementic Versioning)
์๋งจํฑ ๋ฒ์ ๊ด๋ฆฌ๋ ์ค์ฌ์ SemVer๋ผ๊ณ ๋ ๋ถ๋ฆ ๋๋ค,์ ์ํํธ์จ์ด ๋ฒ์ ๊ด๋ฆฌ์ ์ฌ์ฉ๋๋ ๊ท์น ๋ฐ ์ฒด๊ณ์ ๋๋ค. ์๋งจํฑ ๋ฒ์ ์ ๋ฒ์ ๋ฒํธ๋ฅผ ํตํด ์ํํธ์จ์ด์ ๋ณ๊ฒฝ ๋ด์ฉ์ ๋ช ํํ๊ฒ ํํํ๊ณ , ๋ฒ์ ๊ฐ์ ํธํ์ฑ์ ๊ด๋ฆฌํ๊ธฐ ์ํ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค.
์ฌ๊ธฐ์ ์๋งจํฑ์ด๋? ๋ป์ “๋ฑ ๋ด๋ ์๋ค” ์ ๋๋ค. ๊ทธ๋งํผ ๋ฒ์ ์ ๊ฐ๊ฒฐํ๊ฒ ํํํ๋ค๋ ์๋ฏธ์ ๋๋ค.
ํน์ง์ผ๋ก๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ๋ฒ์ ๋ฒํธ๋ฅผ ํตํด ์ํํธ์จ์ด ๋ณ๊ฒฝ ๋ด์ฉ์ ์ดํดํ๊ณ ์์ธกํ ์ ์๋๋ก ํฉ๋๋ค.
- ํธํ์ฑ์ ๊ด๋ฆฌํ๋ฉฐ, ์ด์ ๋ฒ์ ๊ณผ ์๋ก์ด ๋ฒ์ ๊ฐ์ ํธํ์ฑ ์ฌ๋ถ๋ฅผ ๋ช ํํ๊ฒ ์ ์ํฉ๋๋ค.
- ๊ฐ๋ฐ์ ๋ฐ ์ฌ์ฉ์์๊ฒ ์์ ์ ์ธ ์ ๊ทธ๋ ์ด๋ ๊ฒฝ๋ก๋ฅผ ์ ๊ณตํฉ๋๋ค.
์ ๊ทธ๋ฆผ์์ ๋ณด์ฌ์ฃผ๋ ์ซ์๋ค์ด ๊ฐ๊ฐ ์ด๋ค ์๋ฏธ์ธ์ง๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
1) ์ฃผ ๋ฒ์ (Major Version)
๋ณํ๊ฐ ์ปค์ ์ฌ์ฉ์์๊ฒ ์์ ํ ๋ค๋ฅธ ๊ฒฝํ์ ์ ๊ณตํ ์ ๋์ ์
๋ฐ์ดํธ
๋ธ๋ ์ดํน ์ฒด์ธ์ง ๊ธ ๋ณํ
ํ์ํธํ์ฑ์ ์ง์ํ์ง ์์
2) ๋ถ ๋ฒ์ (Minor Version)
์ ๊ธฐ์ ์ธ ์ด๋ฒคํธ๋ ๊ท๋ชจ๊ฐ ํฐ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋ ์
๋ฐ์ดํธ
์๋น์ค ๋ด ์บ ํ์ธ ์์ ๋๋ ์ฑ๋ฅ ํฅ์
ํ์ํธํ์ฑ์ ์ง์ํ ์๋ ์์
3) ์ ๋ฒ์ (Patch Version)
๋ฐ๊ฒฌ๋ ๋ฒ๊ทธ๋ ๊ธฐ์กด์ ๊ธฐ๋ฅ ๋์์ ์์ ํ ์
๋ฐ์ดํธ
ํ์ํธํ์ฑ์ ์ง์
์ต์ ๊ตฌ๋ ๋ฒ์ ๊ณผ ๊ถ์ฅ ๊ตฌ๋ ๋ฒ์
์ต์ ๊ตฌ๋ ๋ฒ์
์ฑ์ ์ฌ์ฉํ๊ธฐ ์ํ ์ต์ ๋ฒ์ ์ ์ง์ ํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ด ๋ฒ์ ๋ณด๋ค ๋ฎ์ผ๋ฉด ์ฑ์ ์ฌ์ฉํ ์ ์๊ณ , ์ฑ ์ง์ ์ ๊ฐ์ ์ ๋ฐ์ดํธ๋ฅผ ์งํํ๊ฒ๋ ํ๋ ์กฐ์ ์ด ํ์ํฉ๋๋ค. ์ ๋ฐ์ดํธ๋ฅผ ์งํํ์ง ์์ผ๋ฉด ์ฑ์ ์ฌ์ฉํ ์ ์๊ฒ ์กฐ์นํ ์ ๋ฐ์ ์๋ ์ด์ ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ์ฑ์ ์ต์ ๊ตฌ๋ SDK ๋ฒ์ ํฅ์
์๋๋ก์ด๋/iOS์์ ํด๋น ์ฑ์ ์ง์ํ์ง ์์ SDK ๋ฒ์ ์ ์ ์งํํ๋ ๊ฒฝ์ฐ - ์น๋ช
์ ์ธ ๋ฒ๊ทธ ์์
์์ฃผ ์ฌ์ฉํ๋ ๋ฉ์ธ ๊ธฐ๋ฅ/ํ๋ฉด์ ์ค๋ฅ๊ฐ ์์ด์ ์๋น์ค์ ์น๋ช ์ ์ธ ์ํฅ์ด ๊ฐ๋ ๊ฒฝ์ฐ - ์ด์ ์ ์ฑ
๋ณ๊ฒฝ
์๋ฅผ ๋ค์ด ์๋๋ก์ด๋ ๊ฐ์ ๊ฒฝ์ฐ ๊ตฌ๊ธ ์ ์ฑ ์ด ๋ณ๊ฒฝ๋๋ฉด์ ํน์ OS ๋ฒ์ ๋ถํฐ permission์ ์ถ๊ฐํด์ค์ผ ํ๋ ๊ฒฝ์ฐ - ๋ธ๋ ์ดํน ์ฒด์ธ์ง
์ฌ์ฉ์์๊ฒ ์๋ค๋ฅธ ๊ฒฝํ์ ์ ๊ณตํ๊ธฐ ์ํด ๊ธฐ๋ฅ์ ์ถ๊ฐ/์์ ํ ๊ฒฝ์ฐ
๊ถ์ฅ ๊ตฌ๋ ๋ฒ์
๋ฉ์ธ ๊ธฐ๋ฅ ์ด์ฉ์ ๋ฌธ์ ๋ ์์ง๋ง ํน์ ๊ธฐ๋ฅ์์ ๋ณ๊ฒฝ๋ ๋ถ๋ถ์ ๊ฒฝํํ๊ธฐ ์ํด์๋ ์ต์ ๋ฒ์ ์ผ๋ก ์ ๋ฐ์ดํธ๊ฐ ํ์ํ ๋ฒ์ ์ผ๋ก, ์ ๋ฐ์ดํธ๋ฅผ ๊ฐ์ ๋ก ์งํํ์ง ์๊ณ ์ฌ์ฉ์์ ์์ง์ ๋ฐ๋ผ ์ ๋ฐ์ดํธ๋ฅผ ํ ์ ์๋ ์ํ์ ๋๋ค.
์ต์์ ๊ถ์ฅ์ ์ฐจ์ด๋ฅผ ์ดํดํ๊ธฐ ์ฝ๊ฒ ์๋ฅผ ๋ค์๋ฉด,
1.0.0 → 1.0.1 → 1.0.2 → 1.1.0
1.0.0์ ์ต์ด ์คํ ์ํ์ด๋ฉฐ, 1.0.1์์๋ ๋ฉ์ธ ๊ธฐ๋ฅ์์ ์ฌ์ฉ์๊ฐ ์คํดํ ๋งํ ๋์์ด ์์ด ์ ๊ฑฐํ์ต๋๋ค.
1.0.2์์๋ ๋ฉ์ธ ํ๋ฉด์์ ์ด์ํ ๋ถ๋ถ์ ๋ ์ด์์์ ์์ ํ์๊ณ , ์ด์ด์ 1.1.0์ ์๋ก์ด ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋์์ ๋ฟ ๋ฉ์ธ ๊ธฐ๋ฅ ์ฌ์ฉ์๋ ์ํฅ์ ๋ผ์น์ง ์์ต๋๋ค.
์ด ๊ฒฝ์ฐ์ ์ต์ ๋ฒ์ ์ธ 1.1.0์ ๋ฐ๋์ ์ฌ์ฉํ ํ์๋ ์์ต๋๋ค.
๋ค๋ง ๋ฉ์ธ ๊ธฐ๋ฅ์ ๋ํ ์์ ์ด ๋ค์ด๊ฐ 1.0.1 ๋ฒ์ ๋ถํฐ๋ ๋ฐ๋์ ์ฌ์ฉํด์ผ ํ๋ฏ๋ก
์ด ์ฑ์ ์ต์ ๊ตฌ๋ ๋ฒ์ ์ 1.0.1 ๋ฒ์ ์
๋๋ค.
๋ค๋ง, ๋ถํธํ๋ ๋ฉ์ธ ํ๋ฉด UI๋ฅผ ์์ ํ์๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ์์๊ฒ ์ต์ ์ ๊ฒฝํ์ ์ ๊ณตํ๊ธฐ ์ํด์๋ 1.0.2 ๋ฒ์ ์ด์ ์ฌ์ฉ์ ๊ถ์ฅํด์ผํฉ๋๋ค.
๋ฐ๋ผ์ ์ด ๊ฒฝ์ฐ์๋ ์ต์ ๊ตฌ๋ ๋ฒ์ ์ 1.0.1, ๊ถ์ฅ ๊ตฌ๋ ๋ฒ์ ์ 1.0.2 ์ด์์
๋๋ค.
1.0.0 ๋ฒ์ ์ ๊ฐ๊ณ ์๋ค๋ฉด ์ฑ ์คํ ์ 2.0.0์ผ๋ก ๊ฐ์ ์
๋ฐ์ดํธ ์๋ด๋ฅผ ํด์ผํ ์ ์์ต๋๋ค.
๋์ ๋ฒ์ ๊ด๋ฆฌ ๊ท์น์...
ํ์ฌ์์ ๋ด๋น ์ค์ธ ์ฑ์ ์๋๋ก์ด๋์ iOS ๊ฐ๊ฐ ๋ฒ์ ๊ด๋ฆฌ๊ฐ ํ์ํ๋ค ์๊ฐํด DB์์ ๋ฒ์ ์ด๋ ฅ์ ๊ด๋ฆฌํ๊ณ ์์ต๋๋ค.
์๋น์ค๋ง๋ค ๊ท์น์ด ์กฐ๊ธ์ ์์ดํ๋ฏ์ด ์ ํฌ๋ ์ฃผ ๋ฒ์ ์ ๊ธฐ์ค์ผ๋ก ํ
์ด๋ธ์ ํ๋ ์์ฑํ์๊ณ , ๊ฐ OS ๋ณ๋ก ๋ฒ์ ์ ๊ด๋ฆฌํ๋ ํ
์ด๋ธ ๋ ๊ฐ๋ฅผ ์์ฑํ์ต๋๋ค.
์ฃผ ๋ฒ์ ์ ๋ํด ๋ถ, ์ ๋ฒ์ ๋ณ๊ฒฝ์ ๋ฐ๋ผ ์ต์ ๊ตฌ๋ ๋ฒ์ ๊ณผ ๊ถ์ฅ ๊ตฌ๋ ๋ฒ์ ์ ์ง์ ํ๊ณ
์ต์ ๊ตฌ๋ ๋ฒ์ ๋ฏธ๋ง์ธ ๊ฒฝ์ฐ์๋ ๊ฐ์ ์
๋ฐ์ดํธ๋ฅผ ์งํํ๋๋ก, ๊ถ์ฅ ๊ตฌ๋ ๋ฒ์ ์ค ์ต์ ๋ฒ์ ๋ฏธ๋ง์ธ ๊ฒฝ์ฐ์๋ ์
๋ฐ์ดํธ ์๋ด ๋ฌธ๊ตฌ๊ฐ ๋จ์ง ์์ง๋ง ์ค์ ์ฐฝ์์ ์
๋ฐ์ดํธ๋ฅผ ์งํํ ์ ์๊ฒ๋ ๊ตฌํํ์ต๋๋ค.
์ฑ ๊ฐ๋ฐ์๊ฐ ์๋๊ธฐ ๋๋ฌธ์ ์ฌ๋ฌ ์๋ฃ๋ฅผ ์ฐธ๊ณ ํด๊ฐ๋ฉฐ ๋๋ฆ ๋ฒ์ ๊ด๋ฆฌ ๊ท์น์ ์ธ์๋ดค์ต๋๋ค.
ํ์ฌ์์ ๋ฌด์์ ์ ๋ฅผ ๋ง๋ค์ด๋ด๋ ๊ฑด ๋ถ๋ด์ด ๋๊ธฐ๋ ํ์ง๋ง ๋ฐฐ์ธ ์ ์๋ ๊ธฐํ๊ฐ ๋๊ธฐ๋ ํ๋ ๊ฒ ๊ฐ์ต๋๋ค.
'๐ Programming > Android' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
#10 ๋ค๋น๊ฒ์ด์ ๋ฉ๋ด(Navigation Menu) Custom(DrawerLayout ์ปค์คํ ์์ ) (0) | 2020.05.05 |
---|---|
#9 WebView(์น ๋ทฐ) - err_cleartext_not_permitted ํด๊ฒฐ๋ฒ (0) | 2020.05.05 |
#8 SharedPreference(์์ด๋ ํ๋ฆฌํผ๋ฐ์ค) (0) | 2020.05.05 |