偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

效率王者!五大工具軟件包助力高效Flutter開發(fā)

開發(fā) 開發(fā)工具
開發(fā)Flutter應(yīng)用程序時,無法讀取日志是一個大問題,因為我們無法根據(jù)問題的嚴(yán)重性來快速過濾日志。

本文轉(zhuǎn)載自公眾號“讀芯術(shù)”(ID:AI_Discovery)。

1. 需要更好、更干凈、更分散的日志?

開發(fā)Flutter應(yīng)用程序時,無法讀取日志是一個大問題,因為我們無法根據(jù)問題的嚴(yán)重性來快速過濾日志。拋出異常還是記錄簡單的調(diào)試信息?看起來好像都一樣。

[[352239]]

如果要在Flutter應(yīng)用程序中做好日志記錄,由Simon Leier設(shè)計的Logger軟件包絕對是寶藏級工具。

(https://pub.dev/packages/logger)

它的靈感來自于Java的日志級別,可在日志中添加級別。目前,其級別如下:

  1. logger.v("Add more detailed debug messages," 
  2.     "can contain sensitiveinformation, never enable it in production"); 
  3. logger.d("Fine grained informationto debug an application"); 
  4. logger.i("Track the flow of theapplication"); 
  5. logger.w("A potential but expectedproblem"); 
  6. logger.e("A real failure that mayimpact the application state"); 

出于某些原因,也會有如下意外收獲:

  1. logger.wtf("WTF logs??") 

效率王者!五大工具軟件包助力高效Flutter開發(fā)

圖源:GitHub

不僅如此,你還可以打開設(shè)備在屏幕上看到日志。

2. 后臺API未就位或根本沒有API?應(yīng)用中裝滿了硬編碼字符串?

如果你也在為代碼中硬編碼值太滿而苦惱,后臺的API(應(yīng)用程序接口)還沒有就位,或者根本沒有任何API,卻又希望UI(用戶界面)有用,你可以用Jesper Håkansson開發(fā)的faker,它能為應(yīng)用程序生成假數(shù)據(jù)。(https://pub.dev/packages/faker)

受到Python軟件包faker和Ruby軟件包ffaker的啟發(fā),該軟件包可提供各類數(shù)據(jù),從假人名到假日期,甚至是任一假URL(統(tǒng)一資源定位器)。只需創(chuàng)建一個簡單的對象,比如:

  1. varfaker = new Faker(); 

并開始使用faker對象,如下:

  1. faker.date.month(); 
  2. faker.conference.name(); 
  3. faker.company.position(); 
  4. faker.lorem.sentences(8); 
  5. faker.internet.httpsUrl(); 
  6. faker.currency.name(); 
  7. faker.sport.name() 

在該軟件包中還有很多類別的數(shù)據(jù),所以當(dāng)項目變得復(fù)雜,很難替換整個項目的硬編碼值時,這絕對是一個很好的備選方案。

3. API 響應(yīng)復(fù)雜時,需要快速的模型類別?

早在2018年我就分享過這篇關(guān)于解析復(fù)雜JSON的文章,如今仍然相當(dāng)有用。

(https://medium.com/flutter-community/parsing-complex-json-in-flutter-747c46655f51)

有一點需要注意的是,這是對JSON和Dart中解析的一個很好的理論復(fù)習(xí),但不建議在構(gòu)建實際復(fù)雜項目的時候進(jìn)行手動解析。原因是什么呢?

  • 手動肯定要花很長的時間。
  • 更容易出錯。

我經(jīng)常建議人們用轉(zhuǎn)換器工具或解析器。與手動解析相比,解析器可以在幾秒鐘內(nèi)迅速完成解析。說到JSON序列化,有幾個方法推薦給大家,這些方法可以在Flutter文檔中找到。

代碼生成庫是其一,可生成編碼樣板。但這仍然需要一些初始設(shè)置,我個人不是很喜歡。所以我常用工具是由一群開源開發(fā)者所構(gòu)建的quicktype.io在線工具。只需進(jìn)入網(wǎng)站,選擇Dart作為你的輸出語言。

在左邊粘貼你的JSON假響應(yīng),右邊快速創(chuàng)建Dart模型類和JSON序列化邏輯。

將這一類添加到Flutter項目中,然后就可以開始使用它們啦。

效率王者!五大工具軟件包助力高效Flutter開發(fā)

4. 從運(yùn)行模擬器/設(shè)備中預(yù)覽應(yīng)用程序響應(yīng)

作為一個Android開發(fā)者,光是為不同的屏幕尺寸創(chuàng)建XML就得好幾天,因為Android設(shè)備形狀和尺寸不一,而適配各種設(shè)備是很重要的。對于iOS開發(fā)者亦是如此,蘋果公司的iPhone屏幕尺寸列表各不相同,有時我們也要為平板電腦或iPad設(shè)備提供支持。

那么這是否意味著,我需要為我的團(tuán)隊下載各種模擬器或仿真器,購買不同的手機(jī),這樣我們就可以在不同的設(shè)備上測試應(yīng)用的UI?去年,在 Flutter Interact 2019 中,Zoey Fan 和 Chris Sells 談到了 Flutter Octopus,你可以在多個平臺和設(shè)備中同時調(diào)試應(yīng)用。

[[352240]]

Flutter Interact 2019

但這主要是為了觀察應(yīng)用程序在不同設(shè)備上的性能。你真的會安裝那么多設(shè)備只為檢查UI的響應(yīng)速度嗎?我覺得不會。

由Alois Daniel設(shè)計的 Flutter Device Preview (Flutter設(shè)備預(yù)覽)可以幫助我們。這個寶藏工具,可從單一運(yùn)行模擬器/設(shè)備中預(yù)覽大小不同的設(shè)備上的應(yīng)用程序運(yùn)行情況。

(https://pub.dev/packages/device_preview)

從普通手機(jī)的尺寸到平板電腦的尺寸,甚至是表盤的尺寸,你可在不同屏幕與平臺上輕松預(yù)覽應(yīng)用程序。對于檢查應(yīng)用程序有無缺口時的情況,這是一個了不起的方法。它還有其他很棒的功能,比如:

  • 更改應(yīng)用程序的方向,并預(yù)覽應(yīng)用程序在不同方向上的響應(yīng)速度。
  • 更新配置,如文字比例系數(shù)、應(yīng)用程序主題、區(qū)域設(shè)置。
  • 截圖與團(tuán)隊分享功能。

這些都不會影響應(yīng)用程序的狀態(tài)!

5. 試用BetaFlutter版本,在穩(wěn)定版中建立項目

在Flutter中構(gòu)建生產(chǎn)應(yīng)用程序,你很有可能會使用穩(wěn)定的Flutter版本來開發(fā)和部署應(yīng)用程序。誰會冒著風(fēng)險在試驗的Flutter版本上開發(fā)客戶項目呢?

但是作為熱情的開發(fā)者,很難不會產(chǎn)生嘗試測試版體驗新功能的沖動但這就意味著要卸載當(dāng)前的穩(wěn)定版,再安裝測試版,花費(fèi)大量時間下載新版本的資源。再回到客戶端項目工作時,你又要卸載該版本再安裝穩(wěn)定版?

我不會這樣做。所以,另一個好工具就是fvm——Leo Farias設(shè)計的flutter版本管理器。你可以用這個工具來管理多個flutter版本,而不必每次切換時都要下載。這個設(shè)置裝一次就夠了,可以下載所有版本,如下:

  1. fvm install beta 

  1. fvm install <version> 

只需要一個指令就可以在不同的版本之間進(jìn)行切換,就像這樣:

  1. fvm use stable 

其實可以根據(jù)項目使用不同的Flutter版本。當(dāng)你自己在試驗一些項目時,這個工具是很好用的。

  1. cdDocuments/FlutterProjects/ExperimentalProjectfvmuse beta 

  1. cdDocuments/FlutterProjects/ClientProjectfvmuse stable 

安裝了fvm后,唯一的變化就是所有的命令會有些改動。就像flutter doctor變成了fvmflutter doctor;或是flutterrun變成fvm flutter run。這些我覺得還是比較容易記住的。

本文的內(nèi)容足夠你好好消化一陣兒啦。

 

責(zé)任編輯:趙寧寧 來源: 今日頭條
相關(guān)推薦

2018-06-21 07:32:23

云技術(shù)云開發(fā)SaaS

2010-04-23 15:18:51

Oracle性能優(yōu)化

2015-01-06 13:42:45

跨平臺開發(fā)APP工具

2010-10-27 09:33:18

MVC開發(fā)

2013-08-09 09:44:30

云服務(wù)云數(shù)據(jù)備份云災(zāi)難恢復(fù)

2025-06-03 01:43:00

2022-09-02 15:25:59

程序員工具項目

2022-11-25 08:00:00

人工智能工具Grammarly

2011-12-12 09:43:28

微軟工具服務(wù)器管理下載

2013-08-09 10:06:18

工作負(fù)載云計算郵件服務(wù)

2018-10-26 08:59:17

Linux開發(fā)工具

2009-02-11 08:58:50

常用軟件.NET開發(fā)

2022-11-09 10:18:14

工業(yè)物聯(lián)網(wǎng)智能

2024-04-03 07:16:46

CSS前端開發(fā)Bootstrap

2024-10-21 16:34:15

2013-08-15 11:31:25

2010-07-16 09:00:00

.NET

2019-10-18 09:13:54

安全容器工具

2010-07-01 10:55:58

UML建模工具

2009-03-02 09:14:00

點贊
收藏

51CTO技術(shù)棧公眾號