Mais conteúdo relacionado
Mais de Yahoo!デベロッパーネットワーク (20)
JSの品質 #scripty02
- 13. Plato
• Maintainability
-> メンテナンス性
• Lines of code
-> ソースコードの行数(LoC)
• Estimated errors in implementation
-> 見積もりエラー数
• Lint errors
-> JSHintエラー数
Platoが出せるのは
Copyright (C) 2014 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 14. Maintainability -メンテナンス性
計算式
Maintainability Index = MAX(0,(171 - 5.2 * ln(Halstead Volume) - 0.23 *
(Cyclomatic Complexity) - 16.2 * ln(Lines of Code))*100 / 171)
• サイクロマティック複雑度
制御フローの数から算出されるコードの構造上の複雑さ。(if文等の多さ)
• コード行
コードの行数
• Halstead Volume
ソースコード中の演算子と非演算子の種類数、出現回数の総和から算出
上記を使って、0から100で表す係数。
(数値が高いほうがメンテナンスしやすい)
Copyright (C) 2014 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 24. 2. PlatoとJSHint をインストール
Windows なら、コマンドプロンプト
Macならターミナルで以下を入力
$ npm install -g plato
$ npm install -g jshint
Copyright (C) 2014 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 25. 3. Platoを実行
$ plato -r -d plato-report develop
対象ディレクトリで上記を実行すると、
「develop」ディレクトリの中身をチェックして
「plato-report」に結果のHTMLを出力
Copyright (C) 2014 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止
- 28. @echo off
rem
rem Platoを実行し、reportディレクトリに出力する
rem
rem このバッチが存在するフォルダをカレントに
pushd %0¥..
cls
echo "完了したら自動でウィンドウが閉じます。数秒お待
ちください。"
plato -r -l .jshintrc -x vendor -d plato-report develop
pause
exit
test.bat
ダブルクリック
するだけで実行
テキストエディタで、以下を「○○.bat」と保存し、
対象ディレクトリで実行すると、全自動で結果を出力
(windowsに限る)
Copyright (C) 2014 Yahoo Japan Corporation. All Rights Reserved. 無断引用・転載禁止