March 2023
Intermediate to advanced
384 pages
5h 30m
Japanese
テストに入る前に、まず静的解析について話したい。静的解析はコードを実行せずにコードベースを検査して潜在的なエラーや矛盾を探す手法である。静的解析はよくあるミスを発見するのに便利な道具だ。本書でもすでに静的解析ツールとしてmypyを使った。mypy(および型チェッカ)はコードベースを検査してデータ型に関するエラーを探す。その他の静的解析ツールはそれ以外のエラーを調べる。この章ではリント、複雑度、セキュリティのための静的解析ツールを取り上げる。
最初に取り上げるツールはリンターである。リンターはコードベースに含まれるプログラミングミスやスタイル違反を検査する。リンターの名前の由来はC言語のプログラムのエラーを検査するツールlintである。lintは「ファジー」なロジックを探してそれを取り除くことからその名がついた†1。Pythonでもっとも広く使われているリンターはPylintだ。Pylintは、ありがちなコードミスとして次のものを検査する。
[†1] 訳注:英語のfuzzyには、「曖昧な」という意味以前に、「毛羽立った」という元の意味がある。また、fuzzyの元になったfuzzという名詞は「毛羽、綿毛」という意味であり、lintは「綿ぼこり、糸くず」という意味の名詞である。
return文の後のコードなど)selfが使われていない、パブリックメソッドが多すぎるなど)Read now
Unlock full access