Maui: .net MAUI ์ €์žฅ์†Œ์— ๋Œ€ํ•œ ๊ตฌ์กฐ ์กฐ์ • ๊ณ„ํš

์— ๋งŒ๋“  2020๋…„ 06์›” 15์ผ  ยท  9์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: dotnet/maui

.net MAUI ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๋Œ€ํ•œ ์žฌ๊ตฌ์„ฑ ๊ณ„ํš์„ ํ†ตํ•ด ์ปค๋ฎค๋‹ˆํ‹ฐ ๊ธฐ์—ฌ๋„ ํ–ฅ์ƒ

ํ˜„์žฌ ์–‘์‹ ๊ฐค๋Ÿฌ๋ฆฌ๋Š” ๋ฐฉ๋Œ€ํ•˜๊ณ  ๊ธฐ์—ฌ์— ๋Œ€ํ•ด ์†Œํ™”ํ•˜๊ธฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ํ˜„์žฌ ์ƒˆ๋กœ์šด ๊ตฌ์กฐ์— ๋Œ€ํ•œ ์ œ์•ˆ์„ ์ž‘์—… ์ค‘์ž…๋‹ˆ๋‹ค. ๋ฉ€ํ‹ฐํƒ€๊ฒŸํŒ…์„ ์œ„ํ•œ .NET 6 ๋ฐ ๋” ๋‚˜์€ ์ผ๊ธ‰ IDE ์ง€์›์€ ์ด ์˜์—ญ์—์„œ ์ •๋ง ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋‹ค์ค‘ ํƒ€๊ฒŸํŒ…์˜ IDE ์ œํ•œ์œผ๋กœ ์ธํ•ด ํ˜„์žฌ ํ”Œ๋žซํผ ๋‹ค์ค‘ ํƒ€๊ฒŸํŒ…์„ ๋ฉ€๋ฆฌํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ œ์•ˆ์„ ๊ตฌ์ฒดํ™”ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋„๋ก ์—ฌ๊ธฐ์— ์ž์œ ๋กญ๊ฒŒ ์ œ์•ˆ์„ ๋‚จ๊ฒจ์ฃผ์„ธ์š”.

proposal-accepted

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์–ด๋Š ์‹œ์ ์—์„œ ์šฐ๋ฆฌ๋Š” ๋‹จ์ˆœํ™”๋œ SLN ์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉํ–ฅ์„ ํ…Œ์ŠคํŠธํ•˜๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

https://github.com/PureWeen/Xamarin.Forms.Sandbox

๊ธฐ์—ฌ์ž๊ฐ€ ์ˆ˜์ • ์‚ฌํ•ญ ๋˜๋Š” API๋ฅผ ์‹œ์—ฐํ•  ์ˆ˜ ์žˆ๋Š” ๋งค์šฐ ํ‘œ์ ํ™”๋œ "Contributor.sln"์„ ์ œ๊ณตํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

ํ˜„์žฌ ๊ฐค๋Ÿฌ๋ฆฌ๋ฅผ ๋ชจ๋‘ ์ œ๊ฑฐํ•˜๊ณ  ํ”Œ๋žซํผ๊ณผ MainPage์— ์ง‘์ค‘ํ•˜์‹ญ์‹œ์˜ค.

๋ชจ๋“  9 ๋Œ“๊ธ€

Xamarin.Forms ํŒ€์ด Github ๋˜๋Š” MS ๋ฌธ์„œ์—์„œ Xamarin.Forms ์•„ํ‚คํ…์ฒ˜, ๋””์ž์ธ ์›์น™ ๋ฐ ์›Œํฌํ”Œ๋กœ์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ๋ฌธ์„œ๋ฅผ ์ž‘์„ฑํ•˜๋ฉด ์ปค๋ฎค๋‹ˆํ‹ฐ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ๋„์›€์ด ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
๋‚ด ๊ด€์ ์—์„œ, ๋‚˜๋Š” Xamarin.Forms๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‚ด ์ œํ’ˆ์„ ๋งŒ๋“ค๊ณ , ๋ฒ„๊ทธ๋ฅผ ๋งŒ๋‚ฌ์„ ๋•Œ 2๊ฐ€์ง€ ์„ ํƒ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜๋‚˜๋Š” github์— ๋ฌธ์ œ๋ฅผ ์ œ์ถœํ•˜๊ณ  ์–ธ์  ๊ฐ€๋Š” ํ•ด๊ฒฐ๋  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๊ฒƒ์ด๊ณ  ๋‹ค๋ฅธ ํ•˜๋‚˜๋Š” github์— ๋ฌธ์ œ๋ฅผ ์ œ์ถœํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์Šค์Šค๋กœ ๊ณ ์ณค์Šต๋‹ˆ๋‹ค.
์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๋ณต์ œํ•˜๊ณ  ๋””๋ฒ„๊ทธํ•œ ํ›„์—๋Š” ๊ธฐ๋Šฅ์ด ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ์ดํ•ดํ•˜๊ธฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ์˜ˆ: https://github.com/xamarin/Xamarin.Forms/issues/8521
๋˜ ๋‹ค๋ฅธ ์˜ˆ๋Š” Android ์ธก์˜ Xamarin.Forms ํŽ˜์ด์ง€ ํƒ์ƒ‰ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. Native Android์˜ ์•กํ‹ฐ๋น„ํ‹ฐ ์ค‘ ํƒ์ƒ‰ ๊ธฐ๋Šฅ์„ ์‰ฝ๊ฒŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ Xamarin.Forms์—์„œ๋Š” ๋ชจ๋“  ํŽ˜์ด์ง€(์•„๋งˆ๋„)๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ํ•˜๋‚˜์˜ ๊ธฐ๋ณธ ํ™œ๋™์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค(๋„ค์ดํ‹ฐ๋ธŒ ์–‘์‹๊ณผ ๊ธฐ๋ณธ ๋ณด๊ธฐ ์ œ์™ธ).

๋‚˜๋Š” ์ด๊ฒƒ์ด ํ›Œ๋ฅญํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค.

์‚ฌ์–‘/๋ฌธ์ œ ๋“ฑ์— ๋Œ€ํ•œ ๊ฐค๋Ÿฌ๋ฆฌ์™€ ์‡ผ์ผ€์ด์Šค๋ฅผ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ๊ณ  ๋” ์‰ฝ๊ฒŒ ์ „์‹œํ•  ์ˆ˜ ์žˆ๋Š” ๋” ์ž‘์€ ํ”„๋กœ์ ํŠธ๋กœ ๋‚˜๋ˆ„๋Š” ๊ฒƒ์€ ๊ฐœ๋ฐœ ์ฃผ๊ธฐ์—์„œ ํฐ ์ด์ ์ž…๋‹ˆ๋‹ค.

๊ฐ€์žฅ ๋ฌธ์ œ๊ฐ€ ๋˜๋Š” ๊ฒƒ ์ค‘ ํ•˜๋‚˜๋Š” ๋ฒ„๊ทธ๊ฐ€ ์ˆ˜์ •๋˜๊ฑฐ๋‚˜ ๊ธฐ๋Šฅ์ด ๋„์ž…๋œ ๋‹ค์Œ ๊ฐœ์„ ์„ ๊ณ„์†ํ•  ๋•Œ ์—ฌ๋Ÿฌ ๋ฒ„์ „์„ ๊ฐ–๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ž‘์€ ์ธ์Šคํ„ด์Šค๋ฅผ ๊ฐ–๋Š” ๊ฒƒ์ด ๋งŽ์€ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ์ƒ๊ฐํ•˜๊ณ  ์žˆ๋Š” ๋˜ ๋‹ค๋ฅธ ์‚ฌํ•ญ์€ ์ฝ”๋“œ ๊ณต๊ฐ„๊ณผ ๋ฏธ๋ž˜์˜ github-codespaces๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋„ํŠธ ํŒŒ์ผ์„ ์ฒจ๋ถ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(์˜ฌ๋ฐ”๋ฅธ xamarin ๋ฒ„์ „ ๋“ฑ ํฌํ•จ). ๊ทธ๋Ÿฐ ๋‹ค์Œ ์ฝ”๋“œ ๊ณต๊ฐ„์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ํ•ด๋‹น ๋ฒ„์ „์„ ์ฒดํฌ์•„์›ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋” ์ž‘์€ ์ œ์–ด ๊ฐค๋Ÿฌ๋ฆฌ ๋ถ€๋ถ„์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ณ  ์ฝ”๋“œ ๊ณต๊ฐ„์—์„œ ์—ด ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ์ ํŠธ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ๊ฐ€์žฅ ์ข‹์Šต๋‹ˆ๋‹ค. ๋” ์ž‘์€ ์ œ์–ด ์•ฑ๊ณผ ์ฝ”๋“œ ๊ณต๊ฐ„์˜ ์กฐํ•ฉ์—์„œ ๋งŽ์€ ์ด์ ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ๋งํ•˜๋ ค๋Š” ๊ฒƒ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ๋ฉ€ํ‹ฐํŒŒํŠธ ์ปจํŠธ๋กค ๊ฐค๋Ÿฌ๋ฆฌ
  • ์ฝ”๋“œ์ŠคํŽ˜์ด์Šค ์ง€์›
  • ๋ฌธ์ œ์˜ ๋„ํŠธ ํŒŒ์ผ

ํŽธ์ง‘: ์„ธ ๋ฒˆ์งธ ํฌ์ธํŠธ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ํ•œ ๋ฒˆ์— ๋ช‡ ๋‹ฌ ๋™์•ˆ ๋ช‡ ๊ฐ€์ง€ ๋ฌธ์ œ๊ฐ€ ์—ด๋ ค ์žˆ๋‹ค๋Š” ๋ฐ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. XF๋ฅผ ๋ณต์ œํ–ˆ์ง€๋งŒ ๊ธธ์„ ์žƒ์—ˆ์Šต๋‹ˆ๋‹ค.
๋”ฐ๋ผ์„œ ์†”๋ฃจ์…˜์ด ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ๋ณด์—ฌ์ฃผ๋Š” ๋น„๋””์˜ค์šฉ ๋ฌธ์„œ๊ฐ€ ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

.Netty๊ฐ€ ๋งŽ์„์ˆ˜๋ก ์ข‹์Šต๋‹ˆ๋‹ค.

  1. ์ฝ”์–ด์—์„œ ๋งค์ง ๋ฌธ์ž์—ด๊ณผ ์œ ํ˜•์ด ์ง€์ •๋˜์ง€ ์•Š์€ ๋ฐ”์ธ๋”ฉ์„ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๊ธฐ์—ฌํ•˜๋Š” ์‚ฌ๋žŒ์ด ํ˜•์‹์ด ์ง€์ •๋˜์ง€ ์•Š์€ ๋ฐ”์ธ๋”ฉ์ด๋‚˜ ํ˜•์‹์ด ํ™•์ธ๋˜์ง€ ์•Š์€ ๋ฌธ์ž์—ด์„ ์ž‘์„ฑํ•˜๋„๋ก ์š”๊ตฌํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋ฒ„๊ทธ๊ฐ€ ํฌ๊ฒŒ ์ค„์–ด๋“ค๊ณ  ๋ฒ„๊ทธ ์ˆ˜์ •์ด ํ›จ์”ฌ ์‰ฌ์›Œ์ง€๋ฉฐ ์ƒˆ ๋ฒ„๊ทธ๊ฐ€ ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๋„๋ก ๋ฆฌํŒฉํ† ๋ง์ด ๋” ์‰ฌ์›Œ์ง‘๋‹ˆ๋‹ค.
  2. ๊ธฐ์—ฌ์ž๊ฐ€ ๋งˆํฌ์—… ๋ ˆ์ด์–ด๋ฅผ ์ฒ˜๋ฆฌํ•˜๋„๋ก ์š”๊ตฌํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. ์ผ๋ถ€ ๊ฐœ๋ฐœ์ž๋Š” XAML ๋˜๋Š” CSS๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ๋ฅผ ์›ํ•˜์ง€๋งŒ ๋ฒ„๊ทธ ์ˆ˜์ • ๊ธฐ์—ฌ์ž๋Š” ์ด๋Ÿฌํ•œ ์‚ฌํ•ญ์— ์‹ ๊ฒฝ์„ ์“ธ ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์‹ค์ œ .Net ํด๋ž˜์Šค ์œ„์— ๋ ˆ์ด์–ด๊ฐ€ ๋˜์–ด์•ผ ํ•˜๋Š” ๋งˆํฌ์—… ์–ธ์–ด๋กœ ์ž‘์—…ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค๋งŒ ์ด ๋ ˆ์ด์–ด์— ๊ด€์‹ฌ์„ ๊ฐ€์ ธ์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  3. ๋ Œ๋”๋Ÿฌ ์ ‘๊ทผ ๋ฐฉ์‹์€ ์†์„ฑ ๋ณ€๊ฒฝ ๊ตฌํ˜„ ์‹คํŒจ(๋˜๋Š” ์œ„์™€ ๊ฐ™์ด ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒฝ์šฐ ์œ ํ˜• ์˜ค๋ฅ˜)๊ฐ€ ์œ ํ˜• ์˜ค๋ฅ˜๊ฐ€ ๋˜๋„๋ก ๊ตฌ์กฐํ™”๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  4. ์ ์ ˆํ•œ ๊ฒฝ์šฐ, ๋™์ผํ•œ ๊ฒƒ์„ ํ‘œ์‹œํ•˜๊ณ  ์ƒˆ๋กœ์šด ๋ฒ„๊ทธ๋ฅผ ๋„์ž…ํ•˜์ง€ ์•Š๋Š” ์•ˆ์ •์ ์ธ ํ”Œ๋žซํผ ๊ฐ„ ๊ตฌํ˜„์„ ์œ„ํ•ด SkiaSharp ๋˜๋Š” Shapes ๋˜๋Š” ๋ณตํ•ฉ MAUI ๊ฐœ์ฒด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ”Œ๋žซํผ๋ณ„ ๋ฐ”์ธ๋”ฉ ์—†์ด ์ผ๋ถ€ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐ ํ—ˆ์šฉ ์˜ค์ฐจ๊ฐ€ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์–ด๋Š ์‹œ์ ์—์„œ ์šฐ๋ฆฌ๋Š” ๋‹จ์ˆœํ™”๋œ SLN ์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉํ–ฅ์„ ํ…Œ์ŠคํŠธํ•˜๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

https://github.com/PureWeen/Xamarin.Forms.Sandbox

๊ธฐ์—ฌ์ž๊ฐ€ ์ˆ˜์ • ์‚ฌํ•ญ ๋˜๋Š” API๋ฅผ ์‹œ์—ฐํ•  ์ˆ˜ ์žˆ๋Š” ๋งค์šฐ ํ‘œ์ ํ™”๋œ "Contributor.sln"์„ ์ œ๊ณตํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

ํ˜„์žฌ ๊ฐค๋Ÿฌ๋ฆฌ๋ฅผ ๋ชจ๋‘ ์ œ๊ฑฐํ•˜๊ณ  ํ”Œ๋žซํผ๊ณผ MainPage์— ์ง‘์ค‘ํ•˜์‹ญ์‹œ์˜ค.

์†”๋ฃจ์…˜ ํ•„ํ„ฐ๊ฐ€ ๋” ๋‚ซ์Šต๋‹ˆ๊นŒ? ๋‘ ๊ฐ€์ง€ ์†”๋ฃจ์…˜์„ ์œ ์ง€ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

Solution Filters๋กœ ๋ชจ๋“  ๊ฒƒ์ด ๊ฐœ๋ฐœ๋˜๋Š” ๊ฒƒ์„ ๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

AFAIK๋Š” ํ˜„์žฌ vsmac์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š์œผ๋ฉฐ ๋‹ค์ค‘ ๋Œ€์ƒ ํ”„๋กœ์ ํŠธ๊ฐ€ ์žˆ์„ ๋•Œ ์•ฝ๊ฐ„ ์ด์ƒํ•ฉ๋‹ˆ๋‹ค. ์ผ๋‹จ ์šฐ๋ฆฌ๊ฐ€ ๋‹ค์ค‘ ํƒ€๊ฒŸํŒ…์— ๋Œ€ํ•œ ์ตœ๊ณ  ์ˆ˜์ค€์˜ ์ง€์›์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๊ณ  ํ—ค๋“œ ํ”„๋กœ์ ํŠธ๊ฐ€ sdk ์Šคํƒ€์ผ์ด ๋  ์ˆ˜ ์žˆ์œผ๋ฉด ์†”๋ฃจ์…˜ ํ•„ํ„ฐ์˜ ํ•„์š”์„ฑ์ด ๊ทธ๋‹ค์ง€ ๋†’์ง€ ์•Š๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋‹ค๋ฅธ ์„ฑ๊ฐ€์‹  ์ ์€ Windows์šฉ VS๋Š” ํ˜„์žฌ ๋‹ค์ค‘ ๋Œ€์ƒ์ด ์žˆ์„ ๋•Œ ๋ชจ๋“  ๋Œ€์ƒ์„ ๋นŒ๋“œํ•˜๋Š” ๋ฐ˜๋ฉด vsmac์€ ์‹คํ–‰ ์ค‘์ธ ํ”Œ๋žซํผ ํ—ค๋“œ์— ๋Œ€ํ•œ ๋Œ€์ƒ๋งŒ ๋นŒ๋“œํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋‹ค๋ฅธ ์„ฑ๊ฐ€์‹  ์ ์€ Windows์šฉ VS๋Š” ํ˜„์žฌ ๋‹ค์ค‘ ๋Œ€์ƒ์ด ์žˆ์„ ๋•Œ ๋ชจ๋“  ๋Œ€์ƒ์„ ๋นŒ๋“œํ•˜๋Š” ๋ฐ˜๋ฉด vsmac์€ ์‹คํ–‰ ์ค‘์ธ ํ”Œ๋žซํผ ํ—ค๋“œ์— ๋Œ€ํ•œ ๋Œ€์ƒ๋งŒ ๋นŒ๋“œํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

Windows์šฉ VS์—์„œ ์ด์— ๋Œ€ํ•œ ์ง€์›์„ ๋ฐ›๋Š” ๊ฒƒ์€ ๊ต‰์žฅํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค! ํ˜„์žฌ ์ž‘์—…ํ•˜๊ณ  ์žˆ๋Š” ํ”Œ๋žซํผ๋งŒ ๊ตฌ์ถ•ํ•˜๊ธฐ ์œ„ํ•ด ๋งŒ๋“  ์ด๋Ÿฌํ•œ ๋ชจ๋“  ์ถ”๊ฐ€ ๊ตฌ์„ฑ์„ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
image

Mac์šฉ VS์˜ ํ˜„์žฌ ๋‹ค์ค‘ ํƒ€๊ฒŸํŒ… ์Šคํ† ๋ฆฌ๊ฐ€ ๋งค์šฐ ์‹ค๋ง์Šค๋Ÿฝ๋‹ค๋Š” ๋ฐ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. ๋ถˆํ–‰ํžˆ๋„ ๋‹ค์ค‘ ํƒ€๊ฒŸํŒ…์€ ๋งค์šฐ ํ›Œ๋ฅญํ•œ ์˜ต์…˜์ด๊ธฐ ๋•Œ๋ฌธ์— ์—ฌ์ „ํžˆ ์ ‘๊ทผ ๋ฐฉ์‹์œผ๋กœ ์„ ํƒํ•˜๊ณ  ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ํŒ€์˜ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์„ ์œ„ํ•œ ๊ธฐ์ˆ  ์ง€์› ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ๋์—†๋Š” ์ขŒ์ ˆ์˜ ์—ฐ์†์ด๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰