PC跨平台

C# 跨平台技术

C# 跨平台UI 技术

1、现代运行时:Mono/Xamarin.NET CoreWebAssembly

  • Xamarin:该平台允许C#代码在iOS,Android和其他平台上运,底层是Mono支撑。
  • .NET Core:是类似于.NET Framework的现代桌面运行时环境。它可以在OSX,Linux和Windows等操作系统上运行。
  • Web Assembly(Wasm):是浏览器内置的一项新兴技术,并得到W3C的支持。从本质上讲,这项技术使开发人员能够以与JavaScript一样安全的方式编译可以在浏览器中运行的代码。

2、UI技术如下

以下是基于这些运行时的UI技术

  • Uno Platform:是基于XAML的开源UI库和平台,可在iOSAndroidWeb Assembly上运行。它呈现本机原生控件,但尝试在非Windows 10平台上模拟Windows UWP图形库。
  • Xamarin.Forms:是基于XAML的开源工具包,支持AndroidiOSWindows UWP,开箱即用的预览OSX,并且将来可能会支持Linux
  • Avalonia:是基于XAML的开源UI库和平台,可在WindowsLinuxOSX上运行。社区基于Windows WPF UI框架。因此,它主要针对台式机使用,可能不太适合移动应用程序。

3、怎么选择

  • 你是否需要浏览器支持?

如果是这样,Uno Platform显然是这里的做好的选择。这是唯一一个完全支持Wasm的平台。从头开始构建具有浏览器支持的应用程序是一个明智的选择,因为它可以确保最大程度的渗透。用户不必从应用商店下载应用程序即可使用您的应用程序,但可以免受恶意软件的侵害。注意:Xamarin.Forms和Uno Platform可以一起使用。

  • 您需要原生的外观和感觉吗?

如果是这样,Xamarin.Forms可能是正确的选择。像Uno平台一样,Xamarin.Forms允许在各个平台之间以声明方式定义UI,但基于本机平台呈现UI。默认情况下,样式近似于平台的本机外观,

Uno Platform则更像Windows 10。但是,Xamarin.FormsUno Platform都允许为其本机平台设置样式。

  • 用户是否可以在应用商店以外下载应用程序,目标机器为台式机?

若需要在LinuxWindowsOSX上都是像素完美的自定义适合桌面的体验。在这种情况下,Avalonia是您最好的选择。

Electron

官网

如果你可以建一个网站,你就可以建一个桌面应用程序。 Electron 是一个使用 JavaScript, HTML 和 CSS 等 Web 技术创建原生程序的框架,它负责比较难搞的部分,你只需把精力放在你的应用的核心上即可。

Web 技术

Electron 基于 Chromium 和 Node.js, 让你可以使用 HTML, CSS 和 JavaScript 构建应用。

开源

Electron 是一个由 GitHub 及众多贡献者组成的活跃社区共同维护的开源项目。

跨平台

Electron 兼容 Mac、Windows 和 Linux,可以构建出三个平台的应用程序。

什么时候用Electron?

(用于开发一些 效率应用或者开发者工具),eg:VS Code、美图大象(办公OA)

 

 

 

 

posted @ 2021-06-17 17:37  peterYong  阅读(211)  评论(0编辑  收藏  举报