StyleCop は更に有用なツールに進化していけるか?

2 週間ほど前のことになるが、Microsoft が StyleCop をオープンソース化することを決めたというアナウンスがあった。

 

StyleCop は C# のソースコードを分析し、コーディングルールに違反している部分がないか検査してくれるツールである。Visual Studio の拡張機能という位置づけで、インストールすると Visual Studio のメニューからソースコードの分析を実行できるようになる。似たようなツールとして FxCop があるが、こちらはソースコードをビルドしてできた中間言語 (IL) を分析するツールなので、守備範囲が異なっている。

 

StyleCop チームのブログによれば、ツールに対する好感と同時に、開発体制や機能についての改善要望も多かったようだ。

Since StyleCop was released publicly, there has been an overwhelmingly positive response from the C# development community. [...]  At the same time, many of you have complained about the slow pace of bugfixes and updates, about limitations in the license, and about some big things like a lack of support for VB.Net.

StyleCop を公開して以来、C# を使っている開発コミュニティから、圧倒的な好評を得ました。[...] 同時に、多くの利用者から、バグフィックスやアップデートの遅さ、ライセンスの制限、そして VB.NET をサポートしていないことへの不満があがっていました。

 

僕も StyleCop を使ってみたことがあるが、いくつか不満に思う点があった。

  • こちらからトリガーを与えないとソースコードの分析が実行されない。Eclipse + CheckStyle のように書いたそばから分析して欲しい。
  • 追加のルールを作るのが大変。
  • あと、知人に聞いた話だけど、Visual Studio のデフォルトのコーディングスタイル (Ctrl + E, D でフォーマットした時のコーディングスタイル) なのに、違反と判定されるものがあるらしい。

特に、最初に挙げた「書いたそばから分析」が欲しいと思っている。コードの分析にも、コーディングスタイル、他クラスのメンバーの使い方、クラスやメソッドの設計、セキュリティ上の懸念点など、いくつもの側面がある。その中で、コーディングスタイルのように、コードを書いているその場で指摘して欲しいものと、クラスやメソッドの設計のように、ある程度まとまった単位のコードを書いてから指摘してもらい、じっくり検討したいものとに分かれるはずだ。後者は、コードを書き終わった後にコンテキストメニューから実行するとか、ビルドのタイミングがちょうどいいが、前者の方は、少なくともファイル保存時、できれば書いている最中にすぐに分析してくれるとありがたい。前者のタイプの分析を StyleCop、後者のタイプの分析を FxCop という役割分担にするとよいのではないか、というのが個人的見解だ。

4/24 に、数週間で CodePlex に StyleCop プロジェクトをのせると言っていたので、そろそろコードが見れるようになるはず。ソースコードの分析・検証は自分にとって関心のある分野だし、開発にとって重要なものの 1 つなので、積極的にフィードバックしていこうと思っている。

Comments

  1. Visual Studio 2010用のStyleCopのメッセージを和訳してみました。まだ日本語には不適切なルールなども含まれていますが、もしよりしければ試してみて見ていただけるでしょうか?

    http://sourceforge.jp/projects/oss-ja-jpn/releases/?package_id=11170

    小沢

    ReplyDelete
  2. hozawaさん
    コメントありがとうございます。
    メッセージの和訳ですか、すばらしいですね。
    早速試してみます。

    ReplyDelete

Post a Comment

Popular posts from this blog

TFS: 別PCでのチェックアウトを取り消す

WPF の RichTextBox に文字列を設定する&取り出す

WPFアプリにアニメーションGIFを表示させる