端開發技術—5個高效的Flutter開發工具


1. 你是否需要更好,更簡潔的日志?

當你在開發Flutter應用程序時,難以理解的日志是一個大問題,因為沒有快速的方法來根據問題的嚴重程度過濾你的日志。拋出異常或記錄一條簡單的調試消息?他們看起來都一樣。

如果你的Flutter app需要更好的日志系統,Logger 軟件包絕對是個好東西。

Logger包地址:https://pub.dev/packages/logger

它受到Java分級日志的啟發,允許您向日志添加級別。

日志級別,目前有:

logger.v("Add more detailed debug messages, "
    "can contain sensitive information, never enable it in production");

logger.d("Fine grained information to debug an application");

logger.i("Track the flow of the application");

logger.w("A potential but expected problem");

logger.e("A real failure that may impact the application state");

由於某些原因,另外一個特別的是

logger.wtf("WTF logs??")

DDnGHx.png
不僅如此,你還可以晃動你的設備來查看屏幕上的日志。(PS:需要導入logger_flutter包)

2. API還沒有從后端准備好,或者根本沒有API ?應用程序靠自己硬編數據?

如果你還在艱難的coding,全是自己硬編數據因為后台沒有准備好他們的API或者根本沒有任何API,如果你仍然希望UI有意義,您可以使用faker包——Jesper Hakansson為應用程序生成有意義的數據。

受Python包faker和Ruby包ffaker的啟發,這個包可以提供各種類型的數據,從虛假的人名到虛假的日期,甚至是隨機的虛假url。

只需創建一個簡單的對象,像這樣-

var faker = new Faker();

下面是使用faker對象的例子

faker.date.month();
faker.conference.name();
faker.company.position();
faker.lorem.sentences(8);
faker.internet.httpsUrl();
faker.currency.name();
faker.sport.name()

在這個包下還有更多種類的數據可用,這是自己硬編數據的一個很好的替代品,當項目變得更復雜時,自己硬編數據是很難替換的。

faker包地址:https://pub.dev/packages/faker/example

3. 當API返回的數據結構復雜,你需要快速構建model?

雖然我在2018年已經分享過這篇解析復雜JSON的文章,在今天它仍然非常流行。

值得一提的是,這篇文章是對Dart解析json的一個很好的理論回顧,但我不建議在構建實際復雜項目時進行手動解析。

為什么不建議?

.手動操作肯定要花很長時間。

.而且你更容易犯錯誤。

我更建議使用轉換器工具或解析器,與手動解析相比,它只需幾秒鍾就能完成。

當涉及到JSON序列化時,你可以在Flutter文檔中找到一些推薦的方法。

當然,推薦之一是代碼生成庫,它將為您生成編碼樣板。但這仍然需要一些初始設置,而我並不喜歡。

所以,我的首選工具一直是quicktype.io。一群開源開發者維護的在線工具。

只需進入網站,選擇Dart作為輸出語言。

將JSON粘貼到左側,Dart model類和JSON序列化邏輯將很快在右側創建。

添加這個類到你的flutter項目,你就可以使用了。

4. 從一個運行着的模擬器/設備預覽你的應用程序

作為一名Android開發人員,僅僅為不同的屏幕大小創建xml就需要花費好幾天的時間,因為Android設備有不同的形狀和大小,而且重要的是你需要讓你的應用程序在不同的設備上表現一致。iOS開發人員的情況也沒有什么不同,蘋果公司的iPhone屏幕大小不一。有時,我們還必須支持平板電腦或iPad設備。

這是否意味着,我需要下載大量的模擬器或為我的團隊購買不同的手機,以便在不同的設備上測試我們的應用的UI ?

去年,在Flutter interactive 2019, Zoey Fan和Chris Sells談到了Flutter Octopus,在那里你可以同時在多個平台和設備調試你的應用程序。

這對於觀察你的應用在不同設備上的性能是很有用的。但是你真的會設置這么多設備僅僅用來來檢查UI的響應性嗎?

我不這么想

來挽救我們的的是Alois Daniel的Flutter Device Preview。 超好用的工具,可讓您從單個運行的模擬器/設備上預覽不同大小的設備中的應用程序。

輕松預覽在不同的屏幕大小和平台的應用程序,從普通的手機大小到平板電腦,甚至手表屏幕大小。這是檢查你的應用程序有沒有溢出的好方法。不僅如此,還有其他很酷的功能

★改變你的應用程序的方向,並預覽你的應用程序在不同方向上的響應能力。

★更新配置,如文本縮放因子,應用的主題,地區

★能夠進行截圖,便於你分享給你的團隊。

所有這些,不影響應用程序的狀態!

device_preview 包地址:https://pub.dev/packages/device_preview

5. 使用測試版本學習,使用穩定版本工作

如果你使用Flutter中構建應用程序,你很有可能使用穩定的Flutter版本來開發和部署你的應用程序。誰會冒險在一個實驗性的flutter版本上開發一個客戶項目,對嗎?

但是,你是一個愛嘗試的的開發人員,你在你的客戶或公司項目之外創建項目,你很想嘗試新的beta版本,並嘗試使用新特性。

但這就意味着,卸載當前的穩定版,再安裝測試版,又要花費大量的時間去下載新版本的資源。

而當你重新在客戶項目上工作時,你將不得不卸載測試版,並重新安裝穩定版。


無奈

所以,另一個來拯救你的工具 — Flutter Version Manager by Leo Farias.

您可以使用這個工具來管理多個flutter版本,而不必每次在你切換的時候下載這些版本。這只是一個一次性的設置,你一次下載所有的版本像這樣-

fvm install beta

或者指定的版本

 fvm install <version>

只需一條命令就可以在不同版本之間切換,就像這樣

fvm use stable

你可以為你的每個項目指定一個flutter版本。

cd Documents/FlutterProjects/ExperimentalProject
fvm use beta

or

cd Documents/FlutterProjects/ClientProjectfvm use stable

在你安裝fvm之后唯一改變的是你所有的命令都會稍微修改一下。

就像 flutter doctor , 變成fvm flutter doctor

這是很容易記住的。

FVM包地址:https://pub.dev/packages/fvm


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM