概要
どうも、@daiki1003です!昨朝、 Flutter2.8.0がリリースされました!
現在進行している小さなプロジェクトで導入してみたのですが、その時に変更した内容などを
軽くまとめてみたので誰かの参考になると嬉しいです。
結論から言うと、簡単な割にメリットがでかい!です。
もしこの記事に載っていること以外で対応したことがあれば教えていただけると幸いです。
Flutter自体のアップデートは割愛
Flutter
自体のアップデートは今回の記事からは割愛させていただいています。
アップデートに手こずっている方はこれを機に、asdf
辺りを導入していただくと
幸せになれるかもしれません。
depend_on_referenced_packages
プロジェクト内で依存しているパッケージは全てpubspec.yaml
に書きましょう、という警告になります。
例えば、 intl
パッケージに依存しているプロジェクトがあるとします。
このintl
パッケージはpath
パッケージに依存しています。
この場合、 今までだとpubspec.yaml
に path
の記述がなくともimport 'package:path/path.dart';
が可能でした。
しかし、今回からは警告が出る、ということです。
直し方
警告が出ている全てのパッケージを直接pubspec.yaml
に記述しましょう。
FIXME警告の抑制
プロジェクト内に、 FIXME:
の記述があると警告が出るようになっています。
今までもTODO: (ashdik) ...
などは出るようになっていたので特に驚きはないですね。
直し方
analysis_options.yaml
に
analyzer: errors: fixme: ignore
の様に記述します。
たぶん、警告が出ている時点でanalysis_options.yaml
はあると思いますがなければ追加してください 👍
unnecessary_import
不要なimportが不要になったようです。
いや、何を言ってるんだって話なんですが笑
下記のようなimport
で警告が出るようになりました。
// hoge.dart export 'fuga.dart';
// xxx_screen.dart import 'hoge.dart'; import 'fuga.dart'; // WARNING!!
今までは二重import
は警告されていましたが、export
とimport
が
重なっても警告は出ませんでした。
今回からこのような内容は警告となるようです。
直し方
警告でてるimport
文を消すだけです笑
補足
気になったので、以下の場合を検証してみました。
// hoge.dart export 'a.dart'; export 'b.dart'; // fuga.dart export 'a.dart'; // hoge.dartに全て含まれている状態
// xxx_screen.dart import 'hoge.dart'; import 'fuga.dart';
fuga.dartのimport
を消せと怒られました。
// hoge.dart export 'a.dart'; export 'b.dart'; // fuga.dart export 'a.dart'; export 'b.dart'; // hoge.dartと同じ内容の場合
// xxx_screen.dart import 'hoge.dart'; import 'fuga.dart';
何も怒られない!
何かの役に立つと嬉しいのだけど…笑
eol_at_end_of_file
ファイル末尾に改行がないと警告が出るようです。
unnecessary_type_check
その名の通りですが、明らかにその型とわかっているのにis
でチェックしていると怒られます。
final hoge = 'hoge'; if (hoge is String) { // }
で怒られると言うことですね。
直し方
if
文を削除しましょう 💪
Xcodeビルドが死ぬほど早くなっている…?
これは対応内容ではないのですが、感じた変化です。
実行環境はM1 Max
メモリ32GBです。
一度キャッシュした状態とは言え、早すぎでは?
こういう地味なところが効いてくるんですよねー 😎
ちなみに、アップデート前は平均すると10秒半ばくらいでした。
大体僕の50m走と同じくらいですね。
最後に
実は直した内容はこれくらいでした。
メリットの割に対応する内容は少ないのでぜひお手元の環境でも試してみてはいかがでしょうか?
Twitterフォローお願いします
「次回以降も記事を読んでみたい!」「この辺分からなかったから質問したい!」
そんな時は、是非Twitter (@daiki1003)やInstagram (@ashdik_flutter)のフォローお願いします♪
Twitterコミュニティ参加お願いします
Twitterコミュニティ「Flutter lovers」を開設しました!参加お待ちしております😁
☕️ Buy me a coffee
また、記事がとても役に立ったと思う人はコーヒーを奢っていただけると非常に嬉しいです!
コメント