.NET Core๋ ๋ฐ์คํฌํฑ ๋๋ ๋ชจ๋ฐ์ผ UI๋ฅผ ์ง์ ์ง์ํ์ง ์์ต๋๋ค. ์ ์ด๋ v2.1.0๊น์ง๋ ๊ทธ๋ฐ ๋ชฉํ ์์ด ์ค๊ณ ๋ฐ ๊ตฌํ๋์์ต๋๋ค. ๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ ์ ์ฌ์ ์ผ๋ก ์ฌ์ฉ ์๋๋ฆฌ์ค๋ฅผ ๋งค์ฐ ํฌ๊ฒ ํ์ฅํ ์ ์๋ ๊ธฐ๋ฅ์ ๋๋ค. Visual Studio UserVoice์์๋ ๊ฐ์ฅ ์ค๋๋๊ณ ๊ฐ์ฅ ๋ง์ด ํฌํ๋ ๊ธฐ๋ฅ ์ค ํ๋์ ๋๋ค.
Android ๋ฐ iOS 3์ Windows 10 ์ ๋๋ฒ์ค ์ฑ ๊ฐ์ ธ์ค๊ธฐ 658 ํฌํ
์ ๋น์ฟผํฐ์ค .NET ํด๋ผ์ด์ธํธ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ ๋ชจ๋ธ ์์ฑ 11 213 ํฌํ
Microsoft์ Xamarin์ .NET 5 UX ์คํ์ ๊ธฐ๋ฐ์ ํ์ฑํ ์ ์๋ XAML ๊ธฐ๋ฐ UX ์ฝ๋ ์คํ(WPF, UWP, Xamarin Forms, WinUI)์ ๊ณต๋์ผ๋ก ์์ ํ๊ณ ์์ต๋๋ค. ๋ถํํ๋ XAML-Standard ์ ๋ํ ์์ ์ IMHO๊ฐ .NET 5์์ UX์ ๋ํ ๊ฒฐ์ ์ ๋ด๋ฆฌ๊ธฐ์ ์ข์ ์ฅ์๊ฐ ๋์์์๋ ๋ถ๊ตฌํ๊ณ ์ค๋จ๋์์ต๋๋ค.
ํจ์ฌ ๋ ์ค์ํ Microsoft Fluent Design ์ ๋ค๋ฅธ ํ๋ซํผ์์๋ ์ ์ด๋ ๋ถ๋ถ์ ์ผ๋ก๋ ์๋๋๋ผ๋ ์ต์ํ Windows์์๋ Core UX์ ์ฑํ๋ ์ ์์ต๋๋ค. ์ด๊ฒ์ .NET Core๋ฅผ ํ๋์ ์ด๊ณ ๋ณดํธ์ ์ธ xplat ํ๋ ์์ํฌ ๊ฐ๋ฐ์ ์ต์ฒจ๋จ์ ๋์ด๊ฒ ํ ๊ฒ์ ๋๋ค. ํ์ฌ ์ ๋ Mac์์ Microsoft Fluent API ๊ธฐ๋ฐ ์ฑ์ ์คํํ๋ ๊ฒ์ ์ ํธํฉ๋๋ค. Windows Vista์ 7์์๋ ์๋นํ ๋ฌ๋์ต๋๋ค(์ ๋ Mac๊ณผ Windows์์ ๋งค์ผ ์์ ํฉ๋๋ค).
๊ฐ์ฅ ์ค์ํ ์๊ตฌ ์ฌํญ ์ค ํ๋๋ ํ๋์จ์ด ์ง์์ ๋๋ค. MSFT์ Xamarin์ด ํ์ฌ DirectX ๋ฐ OpenGL ๊ธฐ๋ฐ ๊ธฐ์ ์ ์ฌ์ฉํ๋ค๋ฉด ์๋นํ ํฌ์๋ฅผ ํตํด ์ต์ ํ๋์จ์ด ๊ฐ์ ๊ทธ๋ํฝ/๋ฏธ๋์ด ํฌ๋ก์ค ํ๋ซํผ ๋ฐฑ์๋๋ฅผ ๋ง๋ค ์ ์์ด์ผ ํฉ๋๋ค. ์ด๋ .NET Core v2.1.0์ฉ์ผ๋ก ๋ถํ๋ ์ค๋๋ System.Drawing API ์ ๋ํ ๋์์ผ๋ก ์ต์ ๊ทธ๋ํฝ API๋ฅผ ์ ๊ณตํ ์ ์๋ ์ถ๊ฐ์ ์ธ ์ด์ ์ ๋๋ค.
DotNet ๋ฌธ์ ๋ฟ๋ง ์๋๋ผ ๊ด๋ จ:
System.Xaml์ .NET Core๋ก ํฌํ
ํ์ค์ WPF ํฌํจ(XAML ํ์ค)
WinUI 3.0 ๋ก๋๋งต - ๊ทํ์ ์๊ฒฌ์ด ํ์ํฉ๋๋ค!
๋๋ ์ด ์์ด๋์ด๋ฅผ ์ข์ํ๋ค. ๊ทธ๋ฌ๋ ์ค์ ๋ก๋ Xamarin.Forms ํ์์ ์ฒ๋ฆฌํ ๊ฐ๋ฅ์ฑ์ด ๋ ๋์ ํญ๋ชฉ์
๋๋ค.
์๋ง๋ Core ํ์ UX ํ๋ ์์ํฌ๋ฅผ "๋ ๋์"(CoreFxLab์ด ํ๋ ๊ฒ๊ณผ ๊ฐ์ด)์ ๋ง๋ค๊ธฐ ์ํด ๋ช ๊ฐ์ง ์ ์์ค ๊ตฌ์ฑ์ ๊ธฐ์ฌํ ๊ฒ์
๋๋ค.
ํธ์ง: WebAssembly๋ ์ง์๋๋ ํ๋ซํผ์ด ๋ ์ ์์ต๋๊น?
์์ด๋์ด๊ฐ ๋ง์์ ๋ญ๋๋ค. ์ฌ๋ฌ ํ๊ฒฝ์์ ์ฌ๋ฌ UI ๊ธฐ์ ๋ก ๊ณ ํต๋ฐ๋ ์ฌ๋๋ค(์ ๋ฅผ ํฌํจํ์ฌ)์ ๋ณด์์ต๋๋ค.
๋๋ ์์ธก ๊ฐ๋ฅํ ๋ฏธ๋์ corehost
์ ๋์ฒดํ์ผ๋ก ๋ค์ดํฐ๋ธ ์ ํ๋ฆฌ์ผ์ด์
์ ์ฌ์ฉํ์ฌ Android ๋ฐ iOS ๊ธฐ๊ธฐ๋ก ์ด์๋ .net ์ฝ์ด๋ฅผ ๋ณด๊ฒ ๋ ๊ฒ์ด๋ผ๊ณ ํ์ ํฉ๋๋ค. ์ฆ, UI ๊ธฐ๋ฅ์ด ํ์ํฉ๋๋ค.
2D xplat ๋๋ก์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ(๊ฐ์ ๋๋ก์ ํฌํจ)์ ๊ฒฝ์ฐ ์๋ฅผ ๋ค์ด Skia๊ฐ ์์ต๋๋ค.
๋ชจ๋ ์๋๋ฆฌ์ค์์ XAML-Standard๋ Fluent Design ์ง์นจ๊ณผ ํจ๊ป UI๋ฅผ "์ค๋ช "ํ๋ ํ์ค ๋ฐฉ๋ฒ์ ๋ฌ์ฑํ๊ธฐ ์ํด ์ด๋ํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
๊ทธ๋ฌ๋ .Net Team์์ xplat System.Drawing.X
ํ๋ฆฌ๋ฏธํฐ๋ธ๋ฅผ ๋ค์ ๊ฐ์ ธ์ค๋ ๊ฒ๋ณด๋ค ๋ ๋ง์ ์๊ฐ์ ํฌ์ํ ๊ณํ์ด ์๋์ง ํ์์ ์
๋๋ค...
@4creators ์๋ง๋ ์ด ํ ๋ก ์ด ๋น์ ์๊ฒ ํฅ๋ฏธ๋ก์ธ ๊ฒ์ ๋๋ค
@vibeeshan025 WebAssembly๋ JavaScript๋ฅผ ๋์ฒดํ๋ ๊ฒ์ด ์๋๋ฏ ๋ก ๋๋ถ๋ถ์ ์๊ฒฌ์ด ์๋ฏธ๊ฐ ์์ต๋๋ค. WebAssembly๋ฅผ DOM๊ณผ ์ฐ๊ฒฐํ๋ ค๋ฉด ์ฌ์ ํ JavaScript๊ฐ ํ์ํฉ๋๋ค. ๋ฐ๋ผ์, ์๋์. ๋จ์ํ ๋ฌด์ธ๊ฐ๋ฅผ wasm์ผ๋ก ์ปดํ์ผํ๊ณ ์ด์ ์ JavaScript๋ก ์ํํ ์์ ์ ๋์ฒดํ ๊ฒ์ผ๋ก ๊ธฐ๋ํ ์ ์์ต๋๋ค. ๊ทธ๊ฒ์ ์๋ ๋ฐฉ์์ด ์๋๋๋ค. UI ๊ธฐ์ ์ด ์๋๋๋ค.
์๋ค์, ์ฌ๊ธฐ ๋ด 5c๋ฅผ ๋ฃ๊ณ ์ถ๋ค.
System.Drawing.X๋ .NET Core ๊ฐ๋ฐ์ ํ์์ ์
๋๋ค. (๋ฐฉ๊ธ https://github.com/dotnet/corefx/issues/20325์์ ์์ต๋๋ค)
UI ํ์ฌ - ์น(ํ๋ก ํธ ์๋) ๊ฐ๋ฐ์์๊ฒ ๋ฌธ์ํ์ญ์์ค. ๊ทธ๋ค์ ํซ ๋ฆฌ๋ก๋์ ๊ฐ์ ํ๋์ ์ธ ํธ๋ฆญ์ ๋ง์ด ์ฌ์ฉํฉ๋๋ค.
์ ๋ ๊ฐ์ธ์ ์ผ๋ก React/ReactNative์์ ์งํ๋๋ ์ํฉ์ ์ข์ํฉ๋๋ค. C#์ ์ฌ์ฉํ์ฌ React๋ฅผ ์์ฑํ ๋ค์ ๋ค์ํ ํ๋ซํผ์ ๋ํด ๋ค์ํ ๋ ๋ ์์ง์ ์ฌ์ฉํ๋ ๊ฒ์ ์ ๋ง ๋ฉ์ง ์ผ์
๋๋ค.
FWIW, Mono๋ WebAssembly๋ฅผ ์ฑํํ๊ณ ์์ผ๋ฏ๋ก Mono์์ ์๋ํ๋ฉด WebAssembly์์ ์๋ํฉ๋๋ค(๋๋ ์๋ํ ๊ฒ์ ๋๋ค). ๊ทธ๊ฒ์ด ์ ์ด๋ ํ์ฌ์ ์๊ฐ/์ดํด์ ๋๋ค.
๋ํ .NET/MSFT๊ฐ ์ด ์์ ์ ์ํํ ํ๋ฅ ์ ๋ํ ๊ฐ์ ์ ๋ฐ์ํด์ผ ํฉ๋๋ค. ๊ทธ๋ค์ ๋ชจ๋ ์ด์ /IQ๋ ํต์ฌ/๋ด๋ถ/ํ๋ ์์ํฌ/๊ทธ๋ฅ ์์ ์ ๋ฐฐ์น๋์์ผ๋ฉฐ ์์ผ๋ก 1๋ ์ ๋๋ ์ด๋ฌํ ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. ๊ทธ๋ฌ๋ ๋๊ฐ ์๊ฒ ์ต๋๊น? (๊ธฐ๋ถ ์ข๊ฒ) ๋๋ ์ ์์ต๋๋ค.
์ด์ ๋ํ ๋ด ๊ฒฌํด๋ ์ผ๋ถ ์ธ๋ถ ๋ ธ๋ ฅ์ด ์ถ์ง๋ ฅ์ ์ป๊ณ ์๋ง๋ MSFT, ala Xamarin์ ์ํด ๊ตฌ๋งค๋ ๊ฒ์ด์ง๋ง ๋ UI ์ค์ฌ์ ๋๋ค(Xamarin์ ํต์ฌ ๊ฐ์ ์ธ IMO์ธ ํ๋ ์์ํฌ/๋๊ตฌ ์ค์ฌ๊ณผ ๋ฐ๋). ๋ฐ๋ผ์ ๊ฐ๊ฐ ์คํ ์์ค ๋ฐ ์ ๋ฃ ์ฑ๋์ ํตํด ๊ฐ์น ์ ์์ ์ ๊ณตํ๋ Avalonia ๋๋ Noesis ์ ๊ฐ์ ๊ฒ์ ๋๋ค. ๋ง๋ถ์ฌ์, ๋ ๋ค ๋ด์ฅ/์ง์ Mono์ ๋๋ค.
Xaml Standard๋ Xamarin.Forms์ฉ XAML Standard(๋ฏธ๋ฆฌ ๋ณด๊ธฐ) ๋ฆด๋ฆฌ์ค์ ํ๋ก์ ํธ ์งํ ์ํฉ์ ๋ํ ๊ธฐํ์ด ์ง๋ ์ ๋ฐ์ดํธ ๋ก ์ฝ๊ฐ ์ด๋ํ์ต๋๋ค. PR dotnet/designs#111์๋ ์ด ์ ์์ ๋์์ด ๋๋ ๋ฐฉํฅ์ผ๋ก ๊ฐ๊ณ ์๋ ๊ฒ์ผ๋ก ๋ณด์ด๋ ํ๋ก์ ํธ ๋ชฉํ์ ๋ํ ๋งค์ฐ ํฅ๋ฏธ๋ก์ด ํ ๋ก ์ด ์์ต๋๋ค.
Silverlight๋ ์ฝ๋๊ฐ ์ด๋ฏธ ์กด์ฌํ๋ ํ๋ฅญํ ์๋ฃจ์ ์ ๋๋ค.
๊ด๋ จ์ฑ์ ์ฐพ์์ต๋๋ค- http://platform.uno
@gulshan ํฅ๋ฏธ๋กญ๊ณ ํ๋ฅญํ ํ๋ก์ ํธ์ ๋๋ค. UWP ๊ธฐ๋ฅ์ ๋๋ถ๋ถ์ ์ง์ํ๊ณ ์์ต๋๊น? ๋จ 4๋ช ์ ๊ธฐ์ฌ์๋ก ๋งค์ฐ ์งง์ ์๊ฐ์ ์ด๋ ๊ฒ ํ๋ถํ ๊ธฐ๋ฅ์ ๊ตฌํํ ์ ์์๋ ๋ฐฉ๋ฒ์ ๋ฌด์์ ๋๊น?
@vibeeshan025 IIRC์ ์๊ธ์ ์ง์ํ๋ ํ์ฌ๊ฐ ์์ต๋๋ค...
ํ์ํ ๊ฐ์น๊ฐ ์๋ ๋ ๋ค๋ฅธ ๋ฏธ๋ - HTML/CSS + .net(JS/TS ๋์ ). ์ฌ๊ธฐ์์ ์ด๋ฏธ ์๋ ์ค์
๋๋ค-
https://github.com/SteveSandersonMS/BlazorElectronExperiment.Sample
์กฐ์ฌํ ๊ฒฐ๊ณผ tcl/tk๋ ๋ชจ๋ ํ๋ซํผ์ ๋ํ GUI ์ต์ ์ด ๋ ์ ์์ต๋๋ค. Windows์์ tcl/tk๊ฐ ์ค์ gdiplus ํญ๋ชฉ์ ํธ์ถํ๋์ง ํ์คํ์ง ์์ง๋ง WPF ๋ฐ Winforms๋ฅผ Linux, Mac, Windows, Android, iOS, ๊ทธ๋ฆฌ๊ณ ์๋ง๋ webforms๋ก ๊ฐ์ ธ์ค๋ ์ต์ ์ด ๋ ์ ์์ต๋๋ค. tcl/tk๊ฐ ๋ง์ง๋ง 3๊ฐ์ง๋ฅผ ์์ง ์ง์ํ๋์ง ํ์คํ์ง ์์ต๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด GUI ์ง์ฅ์ ๋จ์ผ ์ฝ๋ ๊ธฐ๋ฐ์ผ๋ก ์ ์ง ๊ด๋ฆฌํ๊ธฐ๊ฐ ํจ์ฌ ์ฌ์์ง๋๋ค.
์ฌ์ฉํ ์ ์๋ GUI ๋ผ์ด๋ธ๋ฌ๋ฆฌ:
cpython์ tkinner ๋ชจ๋์์ tcl/tk๋ฅผ ์ฌ์ฉํ๋ ์์ด๋์ด๋ฅผ ์ป์์ต๋๋ค.
๋ํ .NET Core๊ฐ *.resources(์ปดํ์ผ๋ resx) ๋๋ *.resx์์ ๋ฆฌ์์ค ๋ก๋๋ฅผ ์ง์ํ๋์ง ์ฌ๋ถ๋ ์์ง ํ์คํ์ง ์์ต๋๋ค. ๊ทธ๋ ๊ฒ ํ๋ฉด ํ๋ฅญํ ๊ฒ์ ๋๋ค.
Microsoft.DesktopUI.App
ํ์ฌ v3.0.0-alpha-26921-3์ Windows .NET Core SDK ์ ์ผ์ผ ๋น๋์์ ์ฌ์ฉํ ์ ์์ต๋๋ค. GDC ๋ฐ DirectX์ ๋ํ ์ผ๋ถ ๋ฒ์ญ ๊ณ์ธต์์ Linux์์ ์คํํ๊ณ ์คํํ๋ ค๋ฉด ๋ฌด์์ด ํ์ํ์ง ๊ถ๊ธํฉ๋๋ค.
ํฌ๋ก์ค ํ๋ซํผ UX ๊ทธ ์ด์์ ํ์๋ก ํ๋ฉฐ ํฌ๋ก์ค ํ๋ซํผ ์ ํ๋ฆฌ์ผ์ด์
๊ฐ๋ฐ ํ๋ ์์ํฌ์ฌ์ผ ํฉ๋๋ค.
UX์๋ง ๊ตญํํ๋ ๊ฒ์ ์ค์์
๋๋ค. ์ต์ํ SilverLight + RIA-Services์ ๋ชจ๋ ๊ธฐ๋ฅ์ด ์์ด์ผ ํฉ๋๋ค.
์์ญ ๋
๋์ ์ง์๋ ๋๊ธฐ์
์ ์ํ ๊ฑฐ๋ํ ๋ง์ถคํ ์์คํ
์ ์์ฑํ ๋๋ 1๋
(๋๋ 10๋
) ํ์ ์ด๋ค ์๊ตฌ ์ฌํญ์ด ์ถ๊ฐ๋ ์ง ์ ํ ์ ์ ์์ผ๋ฏ๋ก ๋ชจ๋ ์ต์
์ ์ด์ด ๋์ด์ผ ํฉ๋๋ค. UWP์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ธ๋ผ์ฐ์ ๋ด๋ถ์์ ์คํ๋๋ ๊ฒ๊ณผ ๋์ผํ๊ฒ ๊ณ ๋ ค๋์ง ์์ต๋๋ค. ์๋ก ๋ค๋ฅธ ํ๋ซํผ์ ๋ชจ๋ ๋จ์ผ ๊ธฐ๋ฅ, API ๋ฐ ์๋น์ค์ ๋ํ ์์ ํ๊ณ ๋ฌด์ ํ์ ์ธ ๊ธฐ๋ณธ ์ก์ธ์ค ๊ถํ์ด ์์ด์ผ ํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์๋ฒ์ ํด๋ผ์ด์ธํธ๋ฅผ ๋ชจ๋ ์์ฑํ๋ ์์คํ
์ ๊ฐ๋ฐํ ๋ REST ๋๋ ์ด์ ์ ์ฌํ ๊ฒ์ ์ฌ์ฉํ๊ณ ์ถ์ง ์์ต๋๋ค(์ด๋ ์๋ฒ๋ฅผ ์์ฑํ๊ณ ๋ค๋ฅธ ์ฌ๋์ด ํด๋ผ์ด์ธํธ๋ฅผ ์์ฑํ ๋ ์ฌ์ฉํ๋๋ก ์๋๋จ). ๋์ ์๋ฒ API๋ฅผ ์ ์ํ ๋ค์ ์๋ฒ์ ์๋ ๊ฒ๊ณผ ๋์ผํ(===) ํด๋์ค ๋ฐ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ํด๋ผ์ด์ธํธ์์ ์๋์ผ๋ก ํธ์ถํ๋ RIA์ ์ ์ ์ด์ด์ผ ํฉ๋๋ค. ๋ชจ๋ ๊ฒ์ ๊ฐ๋ ฅํ๊ฒ ์
๋ ฅํด์ผ ํฉ๋๋ค. ๋ฐ์ดํฐ ์ ํจ์ฑ ๊ฒ์ฌ๋ SQL ์๋ฒ์ ํ๋(๋๋ ์ฌ์ฉ ์ค์ธ ๋ชจ๋ ๋ฐ์ดํฐ ์์ค)์์ ์ป์ ์๊ฒฉํ ์ ํ์ผ๋ก ์์ํ๊ณ DataAnnotations์ ์ํด ํ์ฅ๋ฉ๋๋ค. ์ด ์ ํ์ ์๋์ผ๋ก ํด๋ผ์ด์ธํธ์ ๋๊น์ง ์ ํ๋ฉ๋๋ค(ํ์งํ ๊ณ ๋ ค).
์ด๊ฒ์ด ํ์ํ ๊ฒ์ด๋ฉฐ ๊ทธ ์ดํ๋ ํ์ฉ๋์ง ์์ต๋๋ค.
์ ๋น์ฟผํฐ์ค .NET ํด๋ผ์ด์ธํธ ์ ํ๋ฆฌ์ผ์ด์
๊ฐ๋ฐ ๋ชจ๋ธ ์์ฑ
์ด์ Visual Basic 6์ด ์ถ์๋ ์ง 20๋ ์ด ์ง๋ฌ๊ณ 1998๋ ๋น์์ ์์ฐ์ฑ์ ๊ทผ์ ํ์ง ์์ต๋๋ค.Microsoft๋ "Microsoft ์ธ๊ณ"์์ ๋ ํฐ ์ฌ์ฉ์ ์ง์ ์์คํ ์ ์ํํ๋ ๋ฐฉ๋ฒ๊ณผ 20๋ ์ ์ ์์ฐ์ฑ์ ๋ค์ ๊ฐ์ ธ์ฌ ๋ฐฉ๋ฒ์ ๋ํ ๋น์ ์ ์ ์ํด์ผ ํฉ๋๋ค.
๋ง์ดํฌ๋ก์ํํธ๋ ๊ทธ๋ค์ ๋ฅ์ ํ๋ฐ ๋ชจ์ ํ๋ฐ ๋ ๋์๊ฐ ๊ทธ๋ค์ด ๊ฐ์ง ์ฑ ์์ ๋ฐ์๋ค์ฌ์ผ ํฉ๋๋ค. Microsoft๋ ์์ญ ๋ ๋์ MS ๊ธฐ์ ์ ๋ง๋ํ ํฌ์๋ฅผ ํ ๋ชจ๋ ๊ณ ๊ฐ, ํํธ๋ ๋ฐ ๊ฐ๋ฐ์๊ฐ ํฌ๊ฒ ์ค๋งํ์ผ๋ฉฐ MS์ ๋ํ ์ ๋ขฐ๊ฐ ๋งค์ฐ ๋ฎ๋ค๋ ์ฌ์ค์ ์ธ์ํด์ผ ํฉ๋๋ค. MS๋ ๊ณ ๊ฐ, ํํธ๋ ๋ฐ ๊ฐ๋ฐ์๋ฅผ ์กด์คํ๊ธฐ ์์ํ๊ณ ๋ช ์ฑ๊ณผ ์กด๊ฒฝ์ ์ฌ๊ฑดํด์ผ ํ์ง๋ง ํ์ฌ Skype๋ก ๋ฌด์์ ํ๊ณ ์๊ณ Skype ๊ณ ๊ฐ๊ณผ ์ฌ์ฉ์๋ฅผ ๋ํ๋ ๋ฐฉ๋ฒ์ ๋ณด๋ฉด ์ด๋ฐ ์ผ์ด ์ผ์ด๋๊ธฐ๋ฅผ ๊ฑฐ์ ํฌ๋งํ์ง ์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ Xamarin์ ์์ด๋ฒ๋ฆฌ์ธ์. Microsoft๋ ์์ฒด์ ์ผ๋ก ์ฌ์ฉํ์ง๋ ์๊ณ , ์์ ํ๊ณ ์๋ Xamarin์ ์ฌ์ฉํ๋ ๊ฒ๋ณด๋ค ElectronJS ํ๋ ์์ํฌ(Chromium, Node.js, JavaScript ๋ฐ CSS ๊ธฐ๋ฐ)์ ๊ฐ์ ๋จ์ผ ์ค๋ ๋ ๋ฉ๋ชจ๋ฆฌ ํธ๊น ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๊ฐ ํ๋ซํผ์ ๋ํ ์ค์ ๋ค์ดํฐ๋ธ ์ฝ๋๋ฅผ ์์ฑํ๋ ๋ชจ๋ ๊ถํ์ ๊ฐ์ต๋๋ค.
@Bartolomeus-649
์ด์ Visual Basic 6์ด ์ถ์๋ ์ง 20๋ ์ด ์ง๋ฌ๊ณ 1998๋ ๋น์์ ์์ฐ์ฑ์ ๊ทผ์ ํ์ง ์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ปดํจํฐ์ ์ธํฐ๋ท ์ฌ์ฉ์ ํ์ฐ๊ณผ ํ๋ซํผ์ ๋ค์์ฑ(OS/์ด๋์ฑ/ํผํฉํฐ)์ 1998๋ ๋งํผ ๋ฎ์ง ์์ต๋๋ค.
๋๋ ๋น์ ์ด ์๊ตฌํ๋ ๊ฒ์ด "๋น์ ์ ๋ชจ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด ์ค ์ฌ๋"์ ์๊ตฌํ๋ค๊ณ ์๊ฐํฉ๋๋ค. ์ด๋ฌํ ๋ค์์ฑ์ด ์กด์ฌํ๋ ์ด์ ๋ ์ฌ๋ฌ ๊ฐ์ง๊ฐ ์์ต๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ์ฐ๋ฆฌ ๋ชจ๋๋ ๋์ผํ ์ด์ ์ฒด์ ์์ ๋์ผํ ์ฅ์น๋ฅผ ์ฌ์ฉํ๊ฒ ๋ ๊ฒ์ ๋๋ค. "๋ชจ๋ ๊ฒ์ ๋ํ ์ถ์ํ"๋ฅผ ๊ตฌ์ถํ๋ ๊ฒ์ ์ด๋ ต๊ณ ์ผ๋ฐ์ ์ผ๋ก ๊ฐ๋ฅํ ๊ฐ์ฅ ์์ ๊ธฐ๋ฅ ์ธํธ๋ง ์ ๊ณตํฉ๋๋ค. Xamarin์ ๊ฐ๋ฅํ ๊ฒฝ์ฐ ํ๋ซํผ๋ณ API๋ฅผ ์ฌ์ฉํ ์ ์๋๋ก ํ๋ ์ต์์ ์ ๊ทผ ๋ฐฉ์์ ์ ๊ณตํฉ๋๋ค. ๊ทธ๋ฌ๋ ๋ชจ๋ฐ์ผ ์์ฉ ํ๋ก๊ทธ๋จ์ ๋ํ ์ฐ์ํ ์ถ์ํ๋ผ๋ ์์ฐ์ฑ์ด ๋์ ๋ฐ์คํฌํฑ ์์ฉ ํ๋ก๊ทธ๋จ์๋ ๋์์ด ๋์ง ์์ ์ ์์ต๋๋ค.
๋น์ ์ด ๋งํ๊ณ ์๋ ๋ค๋ฅธ ์์ ์ ์ผ๋ฐ์ ์ผ๋ก ์ ์ฉ ๊ฐ๋ฅํ ์ง์ ์ด ์๋ ํน์ ์์ ์ ์ ์ฉ๋๋ ๋๋ถ๋ถ์ ๊ฐ์ธ์ ์ธ ์๊ฒฌ์ด๋ ๊ด์ฐฐ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค.
๋๋ ์ฐ๋ฆฌ๊ฐ ๋ ๋์ ํฌ๋ก์ค ํ๋ซํผ ๊ฒฝํ์ ํ๊ธฐ๋ฅผ ํฌ๋งํ์ง๋ง ๊ทธ๊ฒ์ด ์ฝ๊ฑฐ๋ ์๊ฐ์ ์ํ์ ๊ฒฌ๋์ง ๋ชปํ ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. WebAssembly ๋ฐ Electron๊ณผ ๊ฐ์ ์ ธ, PWA ๋ฐ ์น๊ตฌ๋ค์ด ํฅํ 5๋ ์์ ์ต๊ณ ์ ์๋ฃจ์ ์ผ๋ก ๋ฐ์ ํ๋๋ผ๋ 20๋ ํ์๋ ์์ ํ ๋ค๋ฅธ ์ผ์ ํ๊ฒ ๋ ๊ฒ์ ๋๋ค. ).
Microsoft๋ ์ฐ๋ฆฌ์ ๊ธฐ๋์ ์คํ ์์ค UX ํ๋ ์์ํฌ์ ๋ถ์ํ์ต๋๋ค. ์ด์ ์ปค๋ฎค๋ํฐ ํ๋ก์ ํธ๋ฅผ ์์ํ์ฌ ๋ค๋ฅธ ํ๋ซํผ์ผ๋ก ์ด์ํ ์ ์์ต๋๋ค. ๋ถํํ๋ MSFT๋ ์ด๋ค ํฌํธ์์๋ ์์ ํ ๊ณํ์ด ์๋ค๊ณ ๋ช ์์ ์ผ๋ก ๋ฐํ์ผ๋ฏ๋ก ์ด ์์ ์ ์ปค๋ฎค๋ํฐ์ ๋งก๊ฒจ์ง ๊ฒ ๊ฐ์ต๋๋ค.
@Richlander @karelz @AdamYoblick @llongley @kmahone
์ ์ง๋ฌธ์ ์ปค๋ฎค๋ํฐ๊ฐ ๊ธฐ์กด ๋ฆฌํฌ์งํ ๋ฆฌ ๋ด์ Linux ๋ฐ macOS ํฌํธ, ์ฆ ๋ณ๋์ ๋ถ๊ธฐ์์ ์์ ํ ์ ์๋์ง ์๋๋ฉด ์ด๋ฌํ ํ๋ก์ ํธ๋ฅผ ์ง์ํ๊ธฐ ์ํด ๋ณ๋์ ๋ฆฌํฌ์งํ ๋ฆฌ๋ฅผ ๋ง๋ค์ด์ผ ํ๋์ง์ ๋๋ค. ๊ธฐ์กด ๋ฆฌํฌ์งํ ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ฉด ์ปค๋ฎค๋ํฐ์์ ์ฒ์๋ถํฐ ์ค์ ํด์ผ ํ๋ MSFT CI ์ธํ๋ผ์ ํฌํธ๋ฅผ ํตํฉํ ์ ์์ผ๋ฏ๋ก ์ด๋ ๋งค์ฐ ์ค์ํ ๊ฒฐ์ ์ ๋๋ค.
Xamarin.Forms/Avalonia/Platform.Uno๊ฐ ์๊ตฌ ์ฌํญ์ ๋ง์ง ์๋ ์ด์ ๊ฐ ์์ต๋๊น? ํ๋ซํผ ๊ฐ XAML์ ๊ฐ์ ธ์ค๋ ค๋ ์๋ก์ด ์๋๋ ์ปค๋ฎค๋ํฐ ์ ์ฒด์ ๊ฑฐ์ ๊ฐ์น๋ฅผ ์ ๊ณตํ์ง ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
4creators๊ฐ ์๋๋ผ 2ยข/impressions:
์ฌ๊ธฐ์ WPF ๋๋ Winforms์ ํ๋ซํผ ๊ฐ ํฌํธ๊ฐ ์๋ฃจ์ ์ด๋ผ๊ณ ๋งํ๋ ๊ฒ์ด ์๋๋๋ค. (IMO, Winforms์ API ํธํ ํฌ๋ก์ค ํ๋ซํผ ํฌํธ๋ ์ ์ด์ ์ข์ ์์ด๋์ด๋ ์๋๋๋ค. WPF์ ๋ํ ์ธ๊ธ์ ์์ต๋๋ค.) ๊ทธ๋ฌ๋ ๊ธฐ์กด ์๋ฃจ์ ๋ ๋ฐ์คํฌํฑ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์ ์ ํฉํ์ง ์๋ค๊ณ ์๊ฐํฉ๋๋ค.
์ข์ ์ . ๊ทธ๋ฌ๋ ์ฐ๋ฆฌ๋ ๋ค๋ฅธ ์๋ฃจ์ ์ ๊ตฌ์ถํ๋ ๊ฒ๋ณด๋ค ๊ธฐ์กด ์๋ฃจ์ ์ ๊ฐ์ ํ๋ ๋ฐ ์ง์คํด์ผ ํฉ๋๋ค. ์ด๋ ์ด์ ์๋ฃจ์ ๋ณด๋ค ๋น์ฉ์ด ํจ์ฌ ๋ง์ด ๋ญ๋๋ค.
๊ทธ๋ฐ๋ฐ NoesisGUI์ ๋ฌธ์ ์ ์ ๋ฌด์์ ๋๊น?
์ปค๋ฎค๋ํฐ๋ Linux ๋ฐ macOS ํฌํธ์์ ์๋ํ ์ ์์ต๋๋ค.
@4creators ์์ ์ด ์์ ํ๊ณ ์์ ํ ์ ์ดํ ์ ์๋ ํฌํฌ๋ฅผ ๋ง๋ญ๋๋ค.
CI ์ธํ๋ผ
.NET Core CI ์ธํ๋ผ๋ ํ์ฌ ์ฌ์ฉ์ ์ง์ Jenkins ๊ธฐ๋ฐ ์๋ฃจ์ ๋์ ์ผ๋ฐ Azure DevOps๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉํฅ์ผ๋ก ์ด๋ํ๊ณ ์์ต๋๋ค. Azure DevOps์๋ ํ์ฉํ ์ ์๋ ์คํ ์์ค ํ๋ก์ ํธ์ ๋ํ ๋ฌด๋ฃ ์ ํ ์ด ์์ต๋๋ค.
dotnet/winforms์ ๋ํด์๋ง ๋งํ๊ธฐ:
Winforms๋ ์ด๋ฏธ AzureDevOps๋ฅผ ์ฌ์ฉํ๊ณ ์์ผ๋ฉฐ ๋ง์คํฐ์ ๋ํ ๋ชจ๋ PR์ PR CI ๋น๋๋ฅผ ์๋์ผ๋ก ์คํํฉ๋๋ค.
๊ทธ๋ฌ๋ ๋ชจ๋ ์์ ์ ํฌํฌ์์ ์ํ๋์ด์ผ ํ๋ค๊ณ ํ์ ํฉ๋๋ค. ์ฐ๋ฆฌ๋ ์ฌ๋๋ค์ด ์์ ์ ๋ถ๊ธฐ๋ฅผ ๋ง๋ค ์ ์๋๋ก dotnet/winforms์ ๋ํ ์ฐ๊ธฐ ์ก์ธ์ค ๊ถํ์ ๋ถ์ฌํ ๊ณํ์ด ์์ต๋๋ค. ๋ชจ๋ ๊ณต๊ฐ ๊ธฐ๋ถ๋ก ์ธํด ์ ์ฅ์๊ฐ ์๋นํ ์ค์ผ๋ ๊ฒ์ ๋๋ค. :)
๊ทธ๋ฐ๋ฐ NoesisGUI์ ๋ฌธ์ ์ ์ ๋ฌด์์ ๋๊น?
์ด์ฉ์ง ๋ค์ค์์คGUI๋ ๋ค์ํ UI ํ๋ ์์ํฌ์ ๋ํ ๋ฉ๋ชจ์์ ์ ์ธ๋์ด ๋ค์ ์ดํด๋ด์ผ ํ์ต๋๋ค.
๋๋ ๊ทธ๊ฒ์ ์ฌ์ฉํ์ง ์์์ง๋ง ๊ทธ๊ฒ์ ์๋ํ๋ ค๊ณ ํ์ต๋๋ค. ๋ด ์ธ์์ ๊ฒ์ ๋ด UI๋ฅผ ์ง์ํ๊ธฐ ์ํ ๊ฒ์ด๋ฏ๋ก ๋๊ตฌ์๋ ์ ํฉํ์ง ์์ ์ ์์ต๋๋ค. (์ปจํธ๋กค ๋ชฉ๋ก์ ๋ณด๋ฉด ์ด๊ฒ์ ์๋ชป๋ ๊ฐ์ ์ผ ์ ์์ต๋๋ค.) ๊ฒ์ ๋ด UI์ ๊ฒฝ์ฐ ์ฐ๋ฆฌ์ ์๊ตฌ๊ฐ ๋ฏธ๋ ๋น์ฉ์ ์ ๋นํํ์ง ์์ต๋๋ค. ๋ํ ์ด๋ค ์ด์ ๋ก๋ Nintendo Switch๋ฅผ ์ง์ํ์ง ์์ต๋๋ค. (๋ถ๋ช ํ ๊ทธ๊ฒ์ ์งํ์ค์ธ ์์ ์ ๋๋ค .)
@4creators ์ด ๋ฌธ์ ๋ ๋ ๊ฐ์ง ๋ฌธ์ ์ ํผ๋์ผ๋ก ์ธํด ์ ๋ชฉ์ด ์๋ชป๋์๋ค๊ณ ์๊ฐํฉ๋๋ค.
์ฒซ์งธ, .Net UI ํ๋ ์์ํฌ๊ฐ ๋ค๋ฅธ .Net ๋ฐํ์ ๋์ .Net Core๋ฅผ ์ฌ์ฉํ๋๋ก ํ์ฉ ํฉ๋๋ค. WPF๋ ์ด์ .Net Core์์ ์คํํ ์ ์์ผ๋ฉฐ Xamarin.iOS/Android/Mac/GTK๋ .Net Core์์ ์คํํ ์ ์์ต๋๋ค. Mono ๋๋ .Net Framework๋ฅผ ์ฌ์ฉํ๋ ๊ฒ๊ณผ ๋น๊ตํ์ฌ ์ฑ๋ฅ ๋ฐ ์ ์ง ๊ด๋ฆฌ ์ด์ ์ด ์์ต๋๋ค.
๊ทธ๋ฌ๋ ๊ทธ๋ ๊ฒ ํ๋ฉด ์๋ก์ด ํ๋ซํผ ๊ฐ UI ํ๋ ์์ํฌ๊ฐ ์์ฑ ๋์ง ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฌ๊ธฐ์์ ์ฐธ์กฐํ๋ ์ค๋ ๋์ ๋๋ถ๋ถ์ ๊ฒ์๋ฌผ์ ์๋ก์ด ํ๋ซํผ ๊ฐ UI ํ๋ ์์ํฌ๋ฅผ ๋ง๋๋ ๊ฒ์ ๊ดํ ๊ฒ์ ๋๋ค. ์ฌ๊ธฐ์ ๋ฐํ์์ ์ฃผ์ ๋ฌธ์ ๊ฐ ์๋๋๋ค. ๊ทธ๋ฌ๋ ์ด๋ฌํ ์ค๋ ๋๋ ์ค์ ๊ตฌํ(๋๋ถ๋ถ ๊ธฐ๋ณธ ์ปจํธ๋กค์ ์ฌ์ฉํ๋ Xamarin.Forms ๋ฐ ๊ณตํต ๋ ๋๋ง์ ์ฌ์ฉํ๋ Avalonia)์ด ํด๊ฒฐํ ํ๋ซํผ ๊ฐ UI ๊ตฌํ์ ์ค์ ์ด๋ ค์์ ํด๊ฒฐํ์ง ์๊ธฐ ๋๋ฌธ์ ๋งค์ฐ ํผ๋์ค๋ฝ์ต๋๋ค.
๊ด๋ จ ๋ฐ์คํฌํฑ ์ปจํธ๋กค(ํ๋ ์๋)์ ์ถ๊ฐํ์ฌ Xamarin.Forms ๋ฐ์คํฌํฑ ๊ธฐ๋ฅ์ ๊ฐ์ ํ๊ฑฐ๋ ์ํ๋ ๊ฒฝ์ฐ Avalonia๋ฅผ ์์ ์ ์ผ๋ก ๋ง๋๋ ๋ฐ ๊ธฐ์ฌํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ๋ชจ๋ ์๋ก์ด ํ๋ซํผ(๊ธฐ์กด ๋จ์ผ ํ๋ซํผ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ๊ฒฝ์ฐ์๋)์ ์ํ ํ์ง์ ๋๋ฌํ๋ ๋ฐ ์๋ ์ด ๊ฑธ๋ฆด ๊ฒ์ด๋ฉฐ Xamarin.Forms & Avalonia์ ๊ธฐ์ฌํ๋ ๋์ ๋ค์ ์ํํ๋ ์ ์ผํ ์ ๋น์ฑ์ ๋ ๋ค ์ํํ๊ณ ์๋ค๋ ๊ฒ์ ๋๋ค. ์๋ชป๋.
์ด ๋ฌธ์ ๋ ๋ ๊ฐ์ง ๋ฌธ์ ์ ํผ๋์ผ๋ก ์ธํด ์ ๋ชฉ์ด ์๋ชป๋์๋ค๊ณ ์๊ฐํฉ๋๋ค.
@charlesroddie IMO, ์ค์ ๋ก๋ ์๋๋๋ค. ์์ ์ .NET Core ํ๋ซํผ์์ ์ฌ์ฉํ ์ ์๋ UX ํ๋ ์์ํฌ๊ฐ ์๋๋ผ DotNet ์ํ๊ณ์ ์ผ๋ถ์ธ UX๋ฅผ ๋ค๋ฅธ ๋ถ๋ถ๊ณผ ๊ณต๋์ผ๋ก ๋ง๋ค๊ณ ์ ์ง ๊ด๋ฆฌํ๋ ๊ฒ์ ๋๋ค. .NET ์์ฝ์์คํ ์ ๋ํ MSFT์ ํฅํ ๊ณํ์ ์ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์ ๊ถ์ฅ๋์ง ์๋ ๋ ๊ฑฐ์ Windows ๊ตฌ์ฑ ์์๋ก ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ .NET Framework ๊ธฐ๋ฐ .NET Core์ ๋๋ค. ์์ @Happypig375 ๋ก ํ์๋ ๋ช ๊ฐ์ง ์ด์ ์ ๋ชจ๋ฐ์ผ์์ xplat ์ง์์ ์งํํ๋ ๋ฐฉ๋ฒ์ ๋ํ ๊ฒฐ์ ์ด ๋ถ์กฑํ๊ธฐ ๋๋ฌธ์ ํ์ฌ Xamarin.Forms๋ฅผ .NET Core๋ก ์ด์ํ ๊ณํ์ด ์์ต๋๋ค. ๊ทธ๋ฌ๋ .NET Core์ ํฌ์๋ ๊ฐ๋ฐ ๋ ธ๋ ฅ์ผ๋ก ์ธํด MSFT์์ ์ฌ์ฉํ๋ ๋ฏธ๋ xplat ํ๋ซํผ์ .NET Core ๊ธฐ๋ฐ์ด ๋ ๊ฒ์ด๋ผ๊ณ ๊ฐ์ ํฉ๋๋ค.
Mono๋ Linux์์๋ ๋ง์ ์์ ๋ถํ์ ๋ํด ์ถฉ๋ถํ ์ต์ ํ๋์ง ์์์ผ๋ฉฐ ๋ ์ด์ ํด๋น ๋ฐํ์์ ๊ธฐ๋ฐ์ผ๋ก ๊ฐ๋ฐ๋ ์ฃผ์ ์ ๊ธฐ๋ฅ์ด ์์ต๋๋ค. BCL์ ํ์ฌ Mono์ .NET Core ๊ฐ์ ๊ณต์ ๋ฉ๋๋ค. ์ด๊ฒ์ ๋ฏธ๋์ Mono๊ฐ ๋ ์ด์ ์ฌ์ฉ๋์ง ์์ ๊ฐ๋ฅ์ฑ์ด ๋๋ค๋ ๊ฒ์ ๋ํ๋ ๋๋ค.
์ด ๊ฐ์ ์ ๋ฐํ์ผ๋ก ์์ฝ์์คํ ์ ์ผ๋ถ๋ก .NET Core ๊ธฐ๋ฐ ๋จ์ผ UX ํ๋ซํผ์ ๋ณด์ ํ๋ ๊ฒ์ด ๊ฐ์น๊ฐ ์๋ค๊ณ ์๊ฐํฉ๋๋ค. ๋ฐ๋ผ์ xplat ๋ฐ ๊ธฐ๋ฐ CLI ํ์ค์ธ ์ผ๋ถ UX ํ๋ ์์ํฌ๋ฅผ ์์ฒญํ์ง ์๊ณ DotNet ํ์์ ์ค๊ณ ๋ฐ ์ง์ํ๋ .NET Core ์ํ๊ณ์ ์ผ๋ถ์ธ UX ํ๋ ์์ํฌ์ ๋ํด ๋ฌธ์ ์ ๋ชฉ์ ์ง์ ํด์ผ ํฉ๋๋ค.
.Net Standard๋ UI ๋ค๋ฅธ ๋ฐํ์์ด ๋ฌธ์ ์์ด ๋์ผํ ์์ฝ์์คํ ์ ์ผ๋ถ๊ฐ ๋ ์ ์๋๋ก ํฉ๋๋ค. .Net Core๊ฐ ๋ค๋ฅธ ๋ฐํ์์ ๋นํด ์ฅ์ ์ด ์์ง๋ง ๊ฒฐ๊ตญ์๋ ๊ฐ์น๊ฐ ๋จ์ด์ง ์ ์์ง๋ง ํ๋ซํผ ๊ฐ UI์ ๋ํ ์ฌ๋ฐ๋ฅธ ์ ๊ทผ ๋ฐฉ์์ ์ฐพ๋ ๋ฐ ๋ฐํ์์ ์ฐ๊ฒฐํ ํ์๋ ์์ต๋๋ค. ์ง๋ฌธ์ ๋ณต์กํ๊ฒ ๋ง๋ค ๋ฟ์ ๋๋ค.
UX ํ๋ซํผ์ด ํน์ ๋ฐํ์์ "๊ธฐ๋ฐ์ผ๋ก" ํ๋ค๊ณ ๋งํ๋ ๊ฒ์ ๋๋ฌด ์ง๋์นฉ๋๋ค. @ Happypig375 ํ์ฌ Xamarin์ .Net Core๋ก ์ ํํ ๊ณํ์ด ์๋๋๋ค(๋์ ์ฝ๋๋ฅผ ๊ณต์ ํ์ฌ Mono๊ฐ .Net Core์ ๋ ์ ์ฌํด์ง๋๋ก ํ๋ ๊ณํ). ๊ทธ๋ฌ๋ WPF๋ฅผ .Net Core๋ก ์ฎ๊ธฐ๋ ๊ฒ๋ณด๋ค ์ด๋ ต์ง ์์์ผ ํฉ๋๋ค.
(BTW, .Net Standard 2.1์ ์ง์ํ๋๋ก ์ ๋ฐ์ดํธ๋๊ณ ์๋ Mono์ ์๋ก์ด ๊ธฐ๋ฅ์ด ์๋ค๋ ๊ฒ์ ์ฌ์ค์ด ์๋๋ฉฐ, ํ์ฌ ์น ์ด์ ๋ธ๋ฆฌ ์์ ์ .Net Core๊ฐ ์๋ Mono์์ ์ํ๋๊ณ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ด ์์ ์ ํฌํ ๋ ์ ์์ผ๋ฏ๋ก ์ ์ณ๋๊ณ ์์ต๋๋ค. .Net Core๋ก.)
WinUI 3.0 ๋ก๋๋งต - ๊ทํ์ ์๊ฒฌ์ด ํ์ํฉ๋๋ค!
์ด ๊ฐ๋ฐ ์ ์์ ํ์ํ ๋ชจ๋ ๊ตฌ์ฑ ์์๊ฐ ์์ค๊ฐ ๊ณต๊ฐ๋๋ฉด ์๋ก์ด xplat ๊ฐ๋ฅ์ฑ์ ์ด ์ ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
๊ทธ๋ ๋ค๋ฉด MicrosoftUI 1.0
๋ผ๊ณ ๋ถ๋ฅด๋ ๊ฒ์ ๊ณ ๋ คํด์ผ ํฉ๋๋ค. @4creators. ๐
> * https://github.com/Microsoft/microsoft-ui-xam
-------------------------------------------------^ missing l
์ด ๋ฌธ์ ๋ ์ด ๋ฆฌํฌ์งํ ๋ฆฌ์์ ํด๊ฒฐ๋์๋ค๊ณ ์๊ฐํฉ๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
@4creators ์์ ์ด ์์ ํ๊ณ ์์ ํ ์ ์ดํ ์ ์๋ ํฌํฌ๋ฅผ ๋ง๋ญ๋๋ค.
.NET Core CI ์ธํ๋ผ๋ ํ์ฌ ์ฌ์ฉ์ ์ง์ Jenkins ๊ธฐ๋ฐ ์๋ฃจ์ ๋์ ์ผ๋ฐ Azure DevOps๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉํฅ์ผ๋ก ์ด๋ํ๊ณ ์์ต๋๋ค. Azure DevOps์๋ ํ์ฉํ ์ ์๋ ์คํ ์์ค ํ๋ก์ ํธ์ ๋ํ ๋ฌด๋ฃ ์ ํ ์ด ์์ต๋๋ค.