日韩高清亚洲日韩精品一区二区三区,成熟人妻av无码专区,国产又A又黄又潮娇喘视频,男女猛烈无遮挡免费视频在线观看

如何快速簡單開發(fā)跨平臺桌面應用程序(適配麒麟系統+armv8)(跨平臺桌面開發(fā)用什么語言)

因公司有國產化(主要兼容麒麟操作系統 armV8架構的處理器)的項目的需求,為桌面應用程序,根據公司資源情況,在技術層面進行了一些選型調研。

一般來說,開發(fā)語言本身都是有跨平臺能力的,比如javajvm),c#(.net core),python(python解釋器),c 等等,所以要調研選型的方向主要是gui的跨平臺能力。

框架

語言

界面語言

性能

開發(fā)成本

文檔

Qt

C ,python等

Qml => xml

優(yōu)

Eto

C#

1. xaml => xml
2. Code => C#
3. json => Json

一般

一般

Electron

nodejs

vue,html

較差

一般

較多

Cef

java,python等

html,vue,js等

優(yōu)

較高

較少

如上所示:

如果對性能沒什么要求,而且要界面絢麗,能加載html,與底層交互少,那么electron為最佳選擇,而且electron開發(fā)簡單,上手快;

如果單純要求性能,那就是c 和qt了;

如果對性能要求不是很高,而且又要兼顧成本,還是建議eto c#。雖然eto的資料不是很多,但有官方demo和基于eto的一些開源項目,自己跑一下,學習一下發(fā)現還是很簡單的,業(yè)務邏輯使用c#,快速開發(fā)也不會有什么坑;

至于最后一種方案cef,這個是基于google的開源瀏覽器內核項目cef,業(yè)務端語言可以是python、java、c#、go語言等,界面交互直接用html js方案,實現了開發(fā)C/S程序的前后端分離,前端調用業(yè)務端使用jsbridge方式,業(yè)務端渲染界面使用websocket,保證實時高效。

根據公司資源情況,我選擇了c# eto技術方案。

eto的github地址:https://github.com/picoe/Eto,學習一下demo部分足夠上手開發(fā)了。

根據官方描述:此框架(Eto)可用于使用本地工具包(native toolkit)和簡單的API構建跨多個平臺運行的應用程序,說白了就是eto支持多種GUI渲染?;诖?,我選用gtk作為gui庫。

如何快速簡單開發(fā)跨平臺桌面應用程序(適配麒麟系統+armv8)(跨平臺桌面開發(fā)用什么語言)

圖1 Eto Demo示例

Windows下Eto C#開發(fā)環(huán)境的搭建:

1.安裝GTK3。https://www.gtk.org/docs/installations/windows/,我這里使用了 MSYS2方式 安裝,簡單快速;

  • 2.vs2019 安裝拓展 。下載擴展插件,下載地址:https://marketplace.visualstudio.com/items?itemName=CurtisWensley.EtoFormsVisualStudioAddin,下載完成后雙擊安裝即可;
  • 3. 安裝完成后重啟vs2019;
  • 4.創(chuàng)建項目,選擇Eto.Forms.Application,下一步創(chuàng)建項目,如下圖所示。
  • 如何快速簡單開發(fā)跨平臺桌面應用程序(適配麒麟系統+armv8)(跨平臺桌面開發(fā)用什么語言)

    圖2

  • 如何快速簡單開發(fā)跨平臺桌面應用程序(適配麒麟系統+armv8)(跨平臺桌面開發(fā)用什么語言)

    圖3

  • 如上面所說,界面展示有三種實現方式:json,code,xaml,這里我選擇的是code方式,主要是為了盡量保持與開發(fā)winform程序一致的代碼結構和體驗,更容易上手。
  • 如何快速簡單開發(fā)跨平臺桌面應用程序(適配麒麟系統+armv8)(跨平臺桌面開發(fā)用什么語言)

    圖4 Eto代碼結構

  • 如圖4所示,是不是感覺很熟悉,運行/發(fā)布程序,程序運行結果如下圖所示。
  • 如何快速簡單開發(fā)跨平臺桌面應用程序(適配麒麟系統+armv8)(跨平臺桌面開發(fā)用什么語言)

    圖5

  • 麒麟系統 arm處理器上運行,程序發(fā)布的時候,目標運行時選擇對應的平臺,點擊“確定”,“發(fā)布”即可,等待發(fā)布成功。
  • 如何快速簡單開發(fā)跨平臺桌面應用程序(適配麒麟系統+armv8)(跨平臺桌面開發(fā)用什么語言)

    圖5 程序發(fā)布

    相關新聞

    聯系我們
    聯系我們
    公眾號
    公眾號
    在線咨詢
    分享本頁
    返回頂部