【Flutter/Dart】静的解析ツールの導入と使い方!flutter_lints

この記事からわかること
- Flutter/iOS/Androidで静的解析ツールの導入方法
- flutter_lintsの使い方
\ アプリをリリースしました /
環境
- Android Studio:Meerkat
- Xcode:16.3
- Flutter:3.32.5
- Dart:3.7.2
- flutter_lints:6.0.0
- Mac M1:Sequoia 15.4
静的解析ツールとは?
「静的解析ツール」とはプログラムが記法や規約に則って記述されているかを自動で解析するためのツールです。これを使用することでルールに準じていないコードを特定でき、修正箇所を簡単に識別できるようになります。
プログラムが一定のルールに則って記述されることで冗長なコードのリファクタリングによるコンパイル時間の短縮や可動性向上による複雑性の緩和と保守しやすいコードを保つことができます。
iOS
Android
Flutterに静的解析ツールを導入する:flutter_lints
Flutterではflutter_lints
という公式推奨の静的解析ツールが用意されています。Flutter2.5.0以降からプロジェクトを立ち上げた場合にデフォルトで導入されるようになったので特に導入手順を踏む必要はありません。
未導入のプロジェクトが存在することも考慮して導入手順をまとめて行きます。Flutter2.5.0以降の場合は不要ですのでスキップしてください。まずは以下のコマンドを実行してパッケージを導入します。開発環境のみに入れておくのがスタンダードです。
「pubspec.yam」に以下のように記載してあれば導入済みになります。
続いてルートディレクトリに「analysis_options.yaml」を作成します。この中にinclude: package:flutter_lints/flutter.yaml
を追加することでプロジェクト全体で静的解析ツールが動作するようになります。linter
は設定周りを記述する場所になります。
警告を確認する:Android Studio
IDEに「Android Studio」を使っている場合として解説して行きます。導入が完了すれば静的解析自体はプロジェクト全体に動作します。解析で違反した警告やエラーは各ファイルの該当行に警告やエラーとして下線の~~でハイライトされます。
またAndroid Studio上部メニュー「View」>「Tool Window」>「Dart Analysis」をクリックすることで表示されるようになります。

またコマンドからflutter analyze
を実行することでも確認可能です。
静的解析のルールを設定する
静的解析によりチェックするルールは「analysis_options.yaml」で行います。linter
>rules
に適応させたいルールを追加していく形になります。
ルールはたくさんあるので公式を参考にしてください。個人的にすごく便利だと思うのはprefer_const_constructors
です。これによりconst
の付け忘れを検知してくれ後述している自動修正で一括で修正できるのでおすすめです。
自動修正
静的解析で引っかかった部分はdart fix --apply
コマンドを実行することで一括で自動修正してくれます。これはrules
に記載したルールのものが反映されるので自動修正対象もそこで制御されています。
まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。
ご覧いただきありがとうございました。