91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何搞定PC/Mac端開發

發布時間:2020-07-15 15:08:31 來源:億速云 閱讀:166 作者:小豬 欄目:開發技術

小編這次要給大家分享的是如何搞定PC/Mac端開發,文章內容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。

如果你是一位前端開發工程師,對“跨平臺”一詞應該不會感到陌生。像常見的前端框架:比如React、Vue、Angular,它們可以做網頁端,也可以做移動端,但很少能做到跨PC、Mac端,也就是我們熟知的Windows、Linux以及macOS上的應用程序。即使有,受限于JS的性能瓶頸,當有大量的科學計算需求時,則會略顯疲態。
有沒有一個理想的UI框架能夠通殺它們所有呢?答案是——Flutter。

Flutter的性能優勢

做為一個通用的跨平臺的UI框架,Flutter在性能方面的突出表現是非常引人奪目的。拿Android舉例,一個安卓的原生APP在繪圖的時候,要先調用Android框架的Java代碼,然后再調用skia(C/C++)繪圖引擎代碼,最后生成的CPU或者gpu的指令,在設備上完成繪圖。而Flutter的APP在繪圖的時候,是先調用Flutter框架的Dart代碼,然后直接調用skia(C/C++)代碼。所以只要Flutter框架Dart代碼的效率可以媲美原生框架的Java代碼的時候,那么Flutter的性能就可以媲美原生APP。
而如React Native,它首先要調用框架本身的JavaScript代碼,然后再調用Android框架的Java代碼,然后調用skia,這比原生的App運行過程多出了一個步驟,所以它的這個性能肯定是不及原生的。
國內知名的“閑魚”技術團隊對于Flutter在性能上逼近原生App的解釋如下:

1.預先(AOT)編譯,運行時直接執行Native(arm)代碼;
2.必需的同Native通信(channel)是C++層次,性能好;
3.其線程模型中Dart代碼執行(在UI TaskRunner),圖片下載(IO TaskRunner),真正的渲染(GPU TaskRunner),同平臺的通信等(Platform TaskRunner即Native概念下的主線程)是互相隔離的。透過將耗時的邏輯放入IO TaskRunner或新開Isolate(會在Dart線程池中執行);GPU TaskRunner可以將幀數據提交給GPU時UI TaskRunner已在準備下一幀數據這種流水線的機制提高了渲染速度;
4.Flutter層面針對布局等的優化:布局計算時單次樹走動即可完成;Relayout Boundary機制:如果Child 的size是固定的,那么不會因為Child的Relayout導致Parent ReLayout;Repaint Boundry機制:如果樹的某個子樹如果同樹的其他部分不同頻地重繪,那么RenderRepaintBoundary可以改善性能。
5.Skia團隊針對Flutter的優化。
6.框架的布局優化對上層開發透明。

如果你有一定的前端開發經驗,特別是移動端的開發經驗,或者深入探究過Flutter,上述內容應該不難理解。
如今,使用Flutter開發移動端App的教程鋪天蓋地,我來手把手教你如何使用Flutter搞定PC、Mac端開發,從此徹底打通前端跨平臺。

PC端實戰

1. 準備工作

首先我們要確保Flutter開發環境準備就緒。有關搭建開發環境的步驟,可參閱:
https://flutter.cn/docs/get-started/install
此處不再贅述,我們重點關注下面的操作:
到今天為止,在Stable分支上的Flutter SDK可以設置啟用PC端開發的能力,但實際上是無法使用的。因此,我們需要將其切換到master分支上。切換的方法是在命令行窗口執行下面的語句:

flutter channel master

或許也可以直接git方式切換,但我沒有嘗試,感興趣的朋友可以自行嘗試。
在回顯切換成功的提示后,記得執行

flutter upgrade

升級到最新的SDK(包含Dart)版本。
另外,如果你使用的是Windows的話,還需要安裝Visual Studio開發軟件,并安裝Desktop development with C++的Workload(中文名為:工作負載)。如果是macOS,則無需安裝Visual Studio。

2. 啟用PC端開發支持

在命令行執行

flutter config --enable-windows-desktop

稍等幾秒后即可完成。控制臺將如下輸出:

Setting "enable-windows-desktop" value to "true".
You may need to restart any open editors for them to read new settings.

成功啟用后,執行

flutter devices

列出已連接的調試設備列表,首次執行可能會花費一些時間下載必要的開發工具包。隨后,可以看到如下類似的輸出結果:

1 connected device:
Windows (desktop) • windows • windows-x64 • Microsoft Windows [Version 10.0.18363.900]

其他操作系統環境類似。
另外,我們也可以隨時執行

flutter config

查看目前的配置。還可以隨時還原為默認設定。

Settings:
enable-windows-desktop: true

3. 創建項目

這一步無需多言,在相應的目錄下執行

flutter create [項目名]

即可。

4. 遷移項目

對于之前沒有啟用PC端開發支持的工程,或者需要遷移到PC、Mac端的工程,需要在項目根目錄下執行

flutter create .

(注意最后的點)

5. 運行程序

這一步無需多言,進入項目根目錄,然后執行

flutter run

即可看到運行結果。

看完這篇關于如何搞定PC/Mac端開發的文章,如果覺得文章內容寫得不錯的話,可以把它分享出去給更多人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

枣强县| 和林格尔县| 望城县| 盘锦市| 京山县| 竹山县| 德格县| 江川县| 怀化市| 高邮市| 五大连池市| 瓦房店市| 侯马市| 兰考县| 庆安县| 博客| 日照市| 乌兰浩特市| 喀喇| 樟树市| 台南市| 汾阳市| 迁安市| 南丹县| 电白县| 湘阴县| 禹州市| 茶陵县| 平和县| 海安县| 抚州市| 奉贤区| 鄄城县| 大冶市| 郎溪县| 汾阳市| 咸阳市| 遂宁市| 定陶县| 城固县| 沅陵县|