タグ

ブックマーク / blog.kengo-toda.jp (6)

  • FindBugsコミュニティにおける例の件の顛末、そしてSpotBugsとは何か - Kengo's blog

    先週、FindBugsのメーリスに興味深い宣言が流れました。今のFindBugsはメンテ困難であり現体制での継続保守が難しいとするものです。 ただこれをもってFindBugsはおしまいだ、としてしまうのはちょっと違います。コミュニティ自体はまだ活発で、プロジェクトのあるべき姿について話し合っています。私はコミッタでもなんでもないのですが、1週間経ったこともあり日語で簡単に経緯を紹介したいと思います。 出典明示のため細かくリンクを張りますが、リンク先を見ずともエントリだけで理解できるよう努めます。 現体制最大の問題はプロジェクトリーダーの不在 1年以上前から、プロジェクトリーダーのBill Pugh氏はコミュニティ開発者からの連絡に返信しなくなりました。メールもそうですがGitHubTwitterでのmentionにも返信しません。私もこの5月にTwitterで連絡を取ろうとしましたが

    FindBugsコミュニティにおける例の件の顛末、そしてSpotBugsとは何か - Kengo's blog
  • SLF4Jの使い方をfindbugsで自動検証する - Kengo's blog

    今日、拙作findbugs-slf4jのGitHub Pageを作りました。このブログではこのプロジェクトについて日語で紹介したいと思います。 概要 拙作PMDプラグインをもとに、2012年8月から実装を開始したfindbugsプラグイン SLF4J利用時のよくあるトラブルを未然に防ぎ、コードの品質を担保する 全自動なので、開発者各々の個性に影響されずに品質の底上を実現できる 既存の課題:SLF4Jの直感的ではないインタフェース SLF4J(Simple Logging Facade for Java)はJava向けに開発された、ログ用のFacadeです。開発者はSLF4Jが提供するインタフェースを利用することで、「高パフォーマンスなログ処理」と「利用者に好きなログ基盤を選ばせる自由」を提供することができます。例えばLog4j 2のような新しいログ基盤でも、プログラムがSLF4Jを使って

    SLF4Jの使い方をfindbugsで自動検証する - Kengo's blog
  • 2010-07-11 - ellerの日記

    jps, jstack, jmap, jstackといったJDK6に付属するツール群の使い方をA4用紙1枚にまとめたものです。 Java Profiling Cheat Sheet スレッドダンプとヒープダンプだけでも使えるようになると、Javaプログラムの理解と問題判別にずいぶん役に立つと思います。普段の開発にぜひお役立てください。

    2010-07-11 - ellerの日記
  • Maven使いのためのPMD入門(2012年夏) - Kengo's blog

    PMDは「枯れた技術」だと思うしネット上にも日語情報は多いですが、わりと古いものが多い気がするし1箇所にまとまってたほうが便利だと思うのでまとめてみます。 なお著者のスペックの都合上、SBTのようなナウでヤングなビルドツールは対象にしていませんすみません。ご存知でしたらぜひ教えてください。 PMDとは PMDはJavaコードを分析して潜在的なバグを探すツールです。コピペ検知ツールCPDを含んでいます。開発への基的な適用方法としては以下の2パターンがあるでしょう。 ビルド手順に組み込む 潜在的なバグが見つかった段階でビルドを中断する(あるいは警告する) 常時監視によるエンバグ予防に 不定期に実行する クセや課題の確認に使う、ブラッシュアップの参考にする 潜在バグ一掃タスク、品質向上月間などに 第3者の視点で自動的にコードを確認するPMDは、スキルの異なる複数人数による開発で強力な支援ツー

  • Goodbye, checkNotNull - Kengo's blog

    Precondition checking like null-checking is very important element for program, but sometimes it becomes boring because it's a defensive technique and far apart from our purpose -- hacking. nullチェックのような前提条件確認はプログラムにおいて非常に大切な要素ではありますが、防御的であり目的を実現するためのコードではないため、時につまらない作業になりがちです。 public MyClass(String name) { if (name == null) { throw new IllegalArgumentException(); } this.name = name; } Yes, I know

    Goodbye, checkNotNull - Kengo's blog
  • SLF4JのポカミスをPMDで自動検出する - Kengo's blog

    記事は昨日世に出た個人プロダクトruleset-for-SLF4Jの宣伝と解説です。 SLF4Jをお使いの方はで有用でコントロールしやすいログを出すための工夫の一貫として、Logger生成時に生成元クラスを渡しているはずです。 private final Logger logger = LoggerFactory.getLogger(Hoge.class); ここで「いや、こう書くべきだろう」と思った方もきっといらっしゃるでしょう。 private final Logger logger = LoggerFactory.getLogger(getClass()); 私もこう書くべきだと思っているひとりです。なぜならコピペ耐性が高いからです(コピペ抑制は諦めてます)。前者の書き方ではコピペが発生した時に正しいLoggerが生成されません。 しかしstaticなLoggerが一般的だったり

    SLF4JのポカミスをPMDで自動検出する - Kengo's blog
    yass
    yass 2012/08/04
  • 1