はじめに
MonoDevelopにはSource Analysisという機能があり、有効にしておくとMonoDevelopがソースコードの改善箇所を指摘してくれるようになります。今回はその設定方法と具体的な指摘内容を実例を交えて紹介したいと思います。
確認環境
- OSはMacのOS X El Capitan (10.11.6) を使用
- MonoDevelopはバージョン5.9.6を使用
設定方法
MonoDevelopのメニューの「MonoDevelop-Unity」→「Preferences...」→「Text Editor」→「Source Analysis」の「Enable source analysis of open files」にチェックを入れ「OK」をクリックします。これでSource Analysis機能が有効になります。
Source Analysis機能を有効にすると、MonoDevelopの右側にスクロールバーが表示されるようになります。緑色/青色の箇所にマウスのカーソルを合わせ、改善箇所の内容を確認してみてください。以下の例では不要なusingが指摘されており、ソースコードの該当箇所は色が薄くなって表示されます。(この場合はUnityEngine.UIが不要)
具体的にどのようなコード改善箇所が検出できるのか?
試しに個人で開発しているプロジェクトで確認してみた結果、以下のようなコード改善箇所が検出されました。(あくまでも一例なので参考までに)
不要なusingの検出
var宣言の使用
フィールドに対するデフォルト値での冗長な初期化
冗長なToString()メソッドの呼び出し
コメント・トークン
ソース上に残っている FIXME/TODO/HACK/UNDONE など
個人的に不要だったルール
staticメソッドへの変更
Unityのイベントコールバックでシーン遷移のような単純なコードも引っかかったため不要という判断です。
未使用のフィールド
SerializeFieldにして、Inspectorからオブジェクトを割り当ててスクリプトから操作するだけだと検出対象となるようです。ただし、ルールを無効にすると本当に未使用なフィールドが検出されなくなるためルールとしては残しておいてほうが良さそうです。
三項演算子への変更
可読性が下がる場合もあるためHint→Suggestionに変更しました。
ルールの調整
上記のようにルールの調整が必要な場合は、指摘箇所で右クリック→「Fix」→「Options for "(指摘内容)"」→「Configure Rule」から調整するようにしましょう。