Python静的分析に最適なツールは何ですか?


ベストアンサー

Pythonプログラミングの静的分析を実行するためのツールは複数あります。

  1. Pylint→オープンソースツール
  2. Kiuwan→商用ツール
  3. Pyflakesなど。

PylintとKiuwanを使用しました。

Pylintは以下を見つけることができます:

  • 行コードの長さのチェック、
  • 変数名がコーディング標準に従って整形式であるかどうかのチェック
  • インポートされたモジュールが使用されているかどうかの確認
  • 宣言されたインターフェースが本当に実装されているかどうかの確認
  • モジュールがインポートされているかどうかの確認

Kiuwan以下のルールセットをサポートできます:

  • IPアドレスのハードコーディングを避ける
  • 重複したコード
  • デフォルトの可変パラメータの使用を避ける
  • 使用を避けるexec()関数
  • TrueまたはFalseへの割り当てを回避する
  • 等価演算子を含む連鎖比較を回避する
  • 複雑すぎる関数を回避する
  • ファイルを開くusin gwithステートメント
  • 非推奨のモジュールの使用を避ける
  • \_init\_メソッドをジェネレーターにすることはできません

複数のツールをチェックすることをお勧めします。どのツールが要件に完全に適合するかを決定します。

回答

Vim内のコードチェックにpyflakesを使用しており、非常に便利です。しかし、それでも、コミット前のコードチェックにはpylintの方が適しています。コードチェックには2つのレベルが必要です。コミットできないエラーと、コードの臭いはあるがコミットできる警告です。 pylintを使用して、それや他の多くのことを構成できます。

pylintはうるさすぎると思うことがあります。それは、完全に問題ないと思うことについて不平を言うかもしれません。それについてよく考えてください。非常に頻繁に、数か月前に過度に保守的であるとわかった警告は、実際には非常に良いアドバイスであることがわかりました。

したがって、私の答えは、pylintは信頼性が高く、堅牢であり、はるかに優れたコードを認識していないということです。アナライザー。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です