์๋ , ํ๋ธ๋ฅด! ์ค๋ ์ฐ๋ฆฌ๋ Microsoft์์ ์ ๊ณตํ๋ 5๊ฐ์ง ๋ฌด๋ฃ ๊ต์ก ๊ณผ์ ์ปฌ๋ ์ ์ ํฌํจํ๋ ์ผ๋ จ์ ๊ธฐ์ฌ๋ฅผ ์์ํฉ๋๋ค. ์ด ๊ธ์์๋ ํ๋ก๊ทธ๋๋จธ๊ฐ ๊ฐ์ฅ ์ข์ํ๋ ๊ฐ๋ฐ์๋ฅผ ์ํ ๊ฐ์ฅ ๋ฉ์ง ๊ฐ์ข๋ฅผ ์๊ฐํฉ๋๋ค.
๊ทธ๊ฑด ๊ทธ๋ ๊ณ !
- ๋ชจ๋ ๊ณผ์ ์ ๋ฌด๋ฃ์ ๋๋ค(์ ๋ฃ ์ ํ์ ๋ฌด๋ฃ๋ก ์ฌ์ฉํด ๋ณผ ์๋ ์์).
- ๋ฌ์์์ด๋ก 6/7;
- ์ฆ์ ํ๋ จ์ ์์ํ ์ ์์ต๋๋ค.
- ๊ณผ์ ์ ์๋ฃํ๋ฉด ๊ณผ์ ์ ์ฑ๊ณต์ ์ผ๋ก ์๋ฃํ์์ ํ์ธํ๋ ๋ฐฐ์ง๋ฅผ ๋ฐ๊ฒ ๋ฉ๋๋ค.
์ปท ์๋ ์ธ๋ถ ์ฌํญ์ ๊ฐ์ ํ์ญ์์ค!
์๋ฆฌ์ฆ์ ๋ชจ๋ ๊ธฐ์ฌ
์ด ๋ธ๋ก์ ์ ๊ธฐ์ฌ๊ฐ ์ถ์๋๋ฉด ์ ๋ฐ์ดํธ๋ฉ๋๋ค.
๊ฐ๋ฐ์๋ฅผ ์ํ 7๊ฐ์ง ๋ฌด๋ฃ ๊ฐ์ข - * *T-A***n*******rov๋ฅผ ์ํ ๋ฌด๋ฃ ๊ฐ์ข
- ************ *******๋ฅผ ์ํ 7๊ฐ์ง ๋ฌด๋ฃ ๊ฐ์ข
- 6 ***** ****** ****** by Azure
- ** ***** ********* ****** ** ********* ** *******
1. Windows 10์ฉ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ
์ฐ๋ฆฌ์ ์๊ท๋ชจ ์ฝ์ค๋ ์ ์ฒด ํ์ต์ ์ฝ 4-5์๊ฐ์ด ์์๋ฉ๋๋ค. ๊ณผ์ ์ค์ ๊ทํ๋ ๋ค์์ ์ํํฉ๋๋ค.
- ๋จผ์ Windows 10์ฉ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์ ๊ธฐ๋ณธ ์ฌํญ์ ์์งํ์ธ์.
- ๊ทธ๋ฐ ๋ค์ Visual Studio ์์ ์ ๋ง์คํฐํ์ธ์.
- ๊ทธ๋ฐ ๋ค์ ๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋๋ Windows์ฉ ๊ฐ๋ฐ ํ๊ฒฝ์ธ UWP, WPF ๋ฐ Windows Forms์์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ฐ๊ฒ ๋ฉ๋๋ค.
- ๋ง์ง๋ง์ผ๋ก ์ธํฐ๋ท์ ์ฐ๊ฒฐ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋๋ ๋ฐฉ๋ฒ์ ์์๋ณด์ธ์.
์ด ๊ณผ์ ์ ์๊ฐํ๋ ๋ฐ ํ์ํ ๊ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ์๋์ฐ 10 ์ปดํจํฐ
- C# ๋๋ ์ ์ฌํ ์ธ์ด์ ๋ํ ๊ธฐ๋ณธ ์ง์
์์ธํ ๋ด์ฉ์ ํ์ธํ๊ณ ๊ต์ก์ ์์ํ ์ ์์ต๋๋ค.
2. Xamarin.Forms๋ก ๋ชจ๋ฐ์ผ ์ฑ ๊ตฌ์ถ
์ด ๊ณผ์ ์ ์ด๋ฏธ ๋๊ตฌ์ ๋ชจ๋ ๊ธฐ๋ฅ์ ์์ ํ ๋๋ ๊ฑฐ์ ์์ ํ ๋ค๋ฃจ๊ณ ์์ผ๋ฉฐ 10์๊ฐ์ ๊ต์ก์ ์ํด ์ค๊ณ๋์์ต๋๋ค. Xamarin.Forms๋ก ์์ ํ๋ ๋ฐฉ๋ฒ๊ณผ C# ๋ฐ Visual Studio๋ฅผ ์ฌ์ฉํ์ฌ iOS ๋ฐ Android ๋๋ฐ์ด์ค์์ ์คํ๋๋ ์ฑ์ ๋ง๋๋ ๋ฐฉ๋ฒ์ ์๋ ค์ค๋๋ค. ๋ฐ๋ผ์ ํ์ต์ ์์ํ๋ ค๋ฉด Visual Studio 2019๊ฐ ์์ด์ผ ํ๊ณ C# ๋ฐ .NET ์์ ๊ธฐ์ ์ด ์์ด์ผ ํฉ๋๋ค.
๊ณผ์ ๋ชจ๋:
- Xamarin.Forms๋ก ๋ชจ๋ฐ์ผ ์ฑ ๊ตฌ์ถ
- Xamarin.Android ์๊ฐ;
- Xamarin.iOS ์๊ฐ;
- XAML์ ์ฌ์ฉํ์ฌ Xamarin.Forms ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ฌ์ฉ์ ์ธํฐํ์ด์ค๋ฅผ ๋ง๋ญ๋๋ค.
- Xamarin.Forms์ XAML ํ์ด์ง์์ ๋ ์ด์์ ์ฌ์ฉ์ ์ง์
- ๊ณต์ ๋ฆฌ์์ค ๋ฐ ์คํ์ผ์ ์ฌ์ฉํ์ฌ ์ผ๊ด๋ Xamarin.Forms XAML ํ์ด์ง ๋์์ธ
- ๊ฒ์๋ฅผ ์ํด Xamarin ์ ํ๋ฆฌ์ผ์ด์ ์ค๋น
- Xamarin ์ ํ๋ฆฌ์ผ์ด์ ์์ REST ์น ์๋น์ค ์ฌ์ฉ
- Xamarin.Forms ์ ํ๋ฆฌ์ผ์ด์ ์์ SQLite๋ฅผ ์ฌ์ฉํ์ฌ ๋ก์ปฌ ๋ฐ์ดํฐ ์ ์ฅ
- ์คํ ๋ฐ ํญ ํ์์ ์ฌ์ฉํ์ฌ ๋ค์ค ํ์ด์ง Xamarin.Forms ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น๋ํฉ๋๋ค.
3. Azure์ ๋ฐ์ดํฐ ์ ์ฅ์
Azure๋ ๊ตฌ์กฐํ๋์ง ์์ ๋ฐ์ดํฐ ์ ์ฅ์, ๋ณด๊ด ์ ์ฅ์, ๊ด๊ณํ ์ ์ฅ์ ๋ฑ์ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๋ค์ํ ๋ฐฉ๋ฒ์ ์ ๊ณตํฉ๋๋ค. 3,5์๊ฐ 4๋ถ~XNUMX์๊ฐ ์์ Azure์์ ์ ์ฅ์๋ฅผ ๊ด๋ฆฌํ๊ณ , ์ ์ฅ์ ๊ณ์ ์ ๋ง๋ค๊ณ , ํด๋ผ์ฐ๋์ ์ ์ฅํ๋ ค๋ ๋ฐ์ดํฐ์ ์ ํฉํ ๋ชจ๋ธ์ ์ ํํ๋ ๋ฐฉ๋ฒ์ ๋ํ ๊ธฐ๋ณธ ์ง์์ ์ป๊ฒ ๋ฉ๋๋ค.
๊ณผ์ ๋ชจ๋:
- ๋ฐ์ดํฐ ์ ์ฅ์ ๋ํ ์ ๊ทผ ๋ฐฉ์ ์ ํ
- ์คํ ๋ฆฌ์ง ๊ณ์ ์ ๋ง๋ญ๋๋ค.
- ์ ํ๋ฆฌ์ผ์ด์ ์ Azure Storage์ ์ฐ๊ฒฐํฉ๋๋ค.
- Azure Storage ๊ณ์ ๋ณดํธ(์ด ๋ชจ๋์ ํด๋ผ์ฐ๋ ๋ฐ์ดํฐ ๋ณดํธ ๊ณผ์ ์๋ ํฌํจ๋์ด ์์ต๋๋ค)
- Blob Storage๋ฅผ ์ฌ์ฉํฉ๋๋ค.
4. Python ๋ฐ Azure Notebook์ ์ฌ์ฉํ ๊ธฐ๊ณ ํ์ต ์๊ฐ
์ด ๊ณผ์ ์ ์ฝ 2~3์๊ฐ ์ ๋ ์์๋์ง๋ง ๋ง์ ์ ์ฉํ ์ค๋ฌด ๊ธฐ์ ์ ์ ๊ณตํฉ๋๋ค. ๊ฒฐ๊ตญ, ์ด๋ฅผ ์ฐ๊ตฌํจ์ผ๋ก์จ Azure Notebooks์์ ์คํ๋๋ Jupyter Notebook์์ Python ๋ฐ ๊ด๋ จ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ํจํด์ ์์ธกํ๊ณ ์ถ์ธ๋ฅผ ์๋ณํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ฐ๊ฒ ๋ฉ๋๋ค.
๊ณผ์ ์ค์ ๊ธฐํ ๋ฐ์ดํฐ๋ฅผ ๋ ๋ฆฝ์ ์ผ๋ก ๋ถ์ํ๊ณ , ๋นํ ์ง์ฐ ๊ฐ๋ฅ์ฑ์ ์์ธกํ๊ณ , ์ฌ์ฉ์ ๋ฆฌ๋ทฐ์ ๊ฐ์ ์ ๋ถ์ํ๊ฒ ๋ฉ๋๋ค. ์ด ๋ชจ๋ ๊ฒ์ ๋จธ์ ๋ฌ๋๊ณผ Python์ ์ฌ์ฉํ์ฌ ์ํ๋ฉ๋๋ค.
ํฉ๊ฒฉํ๋ ค๋ฉด Python ํ๋ก๊ทธ๋๋ฐ์ ๋ํ ๊ธฐ๋ณธ ์ง์์ด ํ์ํฉ๋๋ค.
5. ํด๋ผ์ฐ๋์ ๋ฐ์ดํฐ ๋ณดํธ
๊ทธ๋ฆฌ๊ณ ์ฌ๊ธฐ์๋ ๋ณด์์ ๊ดํ ์๋นํ ํฐ ๊ณผ์ ์ด ์์ต๋๋ค. ์ด๋ฅผ ํ์ตํ๋ ๋ฐ ์ฝ 6-7์๊ฐ์ด ํ์ํฉ๋๋ค. ์ฌ๊ธฐ์์๋ ๊ถํ ์๋ ์๋น์ค์ ํด๋ผ์ด์ธํธ๋ง ๋ฐ์ดํฐ์ ์ก์ธ์คํ ์ ์๋๋ก ๊ธฐ๋ณธ ์ ๊ณต Azure ์๋น์ค๋ฅผ ์ฌ์ฉํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ๋ฐ์ดํฐ๋ฅผ ์์ ํ๊ฒ ์ ์ฅํ๋ ๋ฐฉ๋ฒ์ ์์๋ด ๋๋ค.
๊ณผ์ ๋ชจ๋:
- Azure์ ๋ณด์ ์ํคํ ์ฒ
- ๊ตฌํ ์ ๊ณ ๋ คํด์ผ ํ XNUMX๊ฐ์ง ํ์ ๋ณด์ ์์
- Azure ์ ์ฅ์ ๊ณ์ ๋ณดํธ(์ด ๋ชจ๋์ Azure ๋ฐ์ดํฐ ์ ์ฅ์ ๊ณผ์ ์๋ ํฌํจ๋์ด ์์ต๋๋ค)
- Azure Key Vault๋ฅผ ์ฌ์ฉํ์ฌ ์๋ฒ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น๋ฐ์ ๊ด๋ฆฌํฉ๋๋ค.
- Azure App Services๋ฅผ ์ฌ์ฉํ์ฌ ๋ธ๋ผ์ฐ์ ๊ธฐ๋ฐ ์ฑ์ ์ธ์ฆํฉ๋๋ค.
- ์กฐ๊ฑด๋ถ ์ก์ธ์ค๋ฅผ ์ฌ์ฉํ์ฌ Azure ๋ฆฌ์์ค๋ฅผ ๋ณดํธํฉ๋๋ค.
- RBAC(์ญํ ๊ธฐ๋ฐ ์ก์ธ์ค ์ ์ด)๋ก Azure ๋ฆฌ์์ค๋ฅผ ๋ณดํธํฉ๋๋ค.
- Azure SQL ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ณดํธ.
6. ์๋ฒ๋ฆฌ์ค ์ ํ๋ฆฌ์ผ์ด์ ์์ฑ
Azure Functions๋ฅผ ์ฌ์ฉํ๋ฉด ์ด๋ฒคํธ ๊ธฐ๋ฐ์ด๊ณ ๋ค์ํ ์ธ๋ถ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ ๋ ํธ๋ฆฌ๊ฑฐ๋๋ ์ฃผ๋ฌธํ ์ปดํจํ ์์คํ ์ ๋ง๋ค ์ ์์ต๋๋ค. 6~7์๊ฐ ์์ Azure Functions๋ฅผ ์ฌ์ฉํ์ฌ ์๋ฒ ์ธก ๋ ผ๋ฆฌ๋ฅผ ์คํํ๊ณ ์๋ฒ๋ฆฌ์ค ์ํคํ ์ฒ๋ฅผ ๊ตฌ์ถํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ฐ๊ฒ ๋ฉ๋๋ค.
๊ณผ์ ๋ชจ๋:
- ๋น์ฆ๋์ค ํ๋ก์ธ์ค๋ฅผ ์๋ํํ๊ธฐ ์ํ ์ต์ ์ Azure ์๋น์ค ์ ํ
- Azure Functions๋ฅผ ์ฌ์ฉํ์ฌ ์๋ฒ๋ฆฌ์ค ๋ ผ๋ฆฌ๋ฅผ ๋ง๋ญ๋๋ค.
- ํธ๋ฆฌ๊ฑฐ๋ฅผ ์ฌ์ฉํ์ฌ Azure ํจ์๋ฅผ ์คํํฉ๋๋ค.
- ์ ๋ ฅ ๋ฐ ์ถ๋ ฅ ๋ฐ์ธ๋ฉ์ ์ฌ์ฉํ์ฌ Azure ํจ์๋ฅผ ๊ฒฐํฉํฉ๋๋ค.
- ์ง์์ฑ ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ฌ ์ค๋ ์ง์๋๋ ์๋ฒ๋ฆฌ์ค ์ํฌํ๋ก๋ฅผ ๋ง๋ญ๋๋ค.
- Visual Studio๋ฅผ ์ฌ์ฉํ์ฌ Azure ๊ธฐ๋ฅ์ ๊ฐ๋ฐ, ํ ์คํธ ๋ฐ ๋ฐฐํฌํฉ๋๋ค.
- Azure Functions์์ ์นํํฌ๋ฅผ ์ฌ์ฉํ์ฌ GitHub ์ด๋ฒคํธ๋ฅผ ๋ชจ๋ํฐ๋งํฉ๋๋ค.
7. DevOps ์ฌ๋ก ๊ฐ๋ฐ [ํ๊ตญ์ด]
์ด์ ์ฐ๋ฆฌ๋ ๊ฐ๋ฐ์๋ฅผ ์ํ ์ด ์ปฌ๋ ์ ์ ๋ง์ง๋ง ๊ณผ์ ์ ๋๋ฌํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ ์์ด๋ก ๋ ์ ์ผํ ๊ฒ์ ๋๋ค. ๊ทธ๋ค์ ์์ง ๊ทธ๊ฒ์ ๋ฌ์์์ด๋ก ๋ฒ์ญํ์ง ๋ชปํ์ต๋๋ค. ์ด ๊ณผ์ ์ 1~1.5์๊ฐ ์ ๋ ์์๋๋ฉฐ DevOps์ ๋ํ ์ ๋ฌธ ์ง์์ ์ ๊ณตํฉ๋๋ค.
DevOps๋ ์ฌ๋, ํ๋ก์ธ์ค, ์ ํ์ ์ฐ๊ฒฐํ์ฌ ์ต์ข ์ฌ์ฉ์์๊ฒ ์ง์์ ์ผ๋ก ๊ฐ์น๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ ๋๋ค. Azure DevOps๋ ์ด ๊ธฐ๋ฅ์ ์ง์ํ๋ ์๋น์ค ์งํฉ์ ๋๋ค. Azure DevOps๋ฅผ ์ฌ์ฉํ๋ฉด ํด๋ผ์ฐ๋ ๋๋ ์จ-ํ๋ ๋ฏธ์ค์์ ๋ชจ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น๋, ํ ์คํธ ๋ฐ ๋ฐฐํฌํ ์ ์์ต๋๋ค. ํฌ๋ช ์ฑ, ํ์ , ์ง์์ ์ธ ์ ๊ณต ๋ฐ ์ง์์ ์ธ ๋ฐฐํฌ๋ฅผ ๊ฐ๋ฅํ๊ฒ ํ๋ DevOps ๋ฐฉ์์ด ์ํํธ์จ์ด ๊ฐ๋ฐ ์ฃผ๊ธฐ์ ํตํฉ๋๊ณ ์์ต๋๋ค.
์ด ํ์ต ๊ฒฝ๋ก๋ฅผ ํตํด DevOps๋ก์ ์ฌ์ ์ ์์ํ๊ณ ๋ค์์ ๋ฐฐ์ฐ๊ฒ ๋ฉ๋๋ค.
- ๊ฐ์น ํ๋ฆ ๋ค์ด์ด๊ทธ๋จ์ด ํ์ฌ ํ๋ก์ธ์ค์ ๊ธฐ์ ์ ํ๊ฐํ๋ ๋ฐ ์ด๋ป๊ฒ ๋์์ด ๋ ์ ์๋์ง,
- ๋ฌด๋ฃ Azure DevOps ๊ณ์ ์ ๋ฑ๋กํ๋ ๋ฐฉ๋ฒ
- Azure Boards๋ฅผ ์ฌ์ฉํ์ฌ ์์ ํญ๋ชฉ์ ๊ณํํ๊ณ ์ถ์ ํ๋ ๋ฐฉ๋ฒ.
๊ฒฐ๋ก
์ค๋ ์ฐ๋ฆฌ๋ ๊ฐ๋ฐ์์๊ฒ ์ ์ฉํ ์ ์๋ 7๊ฐ์ง ๋ฌด๋ฃ ๊ฐ์ข์ ๋ํด ์๋ ค๋๋ ธ์ต๋๋ค. ๊ณง ์ฐ๋ฆฌ๋ ์๋ก์ด ์ปฌ๋ ์ ์ผ๋ก ์ด ๊ธฐ์ฌ ์๋ฆฌ์ฆ๋ฅผ ๊ณ์ํ ๊ฒ์ ๋๋ค. ๊ธ์, ๊ทธ๊ฒ์ด ๋ฌด์์ธ์ง-๋๊ธ์์ ์ถ์ธกํด ๋ณผ ์ ์์ต๋๋ค. ๊ฒฐ๊ตญ, ์ด ์ผ๋ จ์ ๊ธฐ์ฌ์ ๋ชฉ์ฐจ์ ๋ณํ๊ฐ ์๋ ๋ฐ์๋ ์ด์ ๊ฐ ์์ต๋๋ค.
*์ผ๋ถ ๋ชจ๋์ ์๋ฃํ๋ ค๋ฉด ๋ณด์ ์ฐ๊ฒฐ์ด ํ์ํ ์ ์์ต๋๋ค.
์ถ์ฒ : habr.com