2007-06-01から1ヶ月間の記事一覧

ASTParser

Eclipseに、Javaのソースを解析してくれるASTParserという機能がある。 Javaを木構造のように分解してくれて、解析できるようになっている。 使うときはこんなイメージ。 ICompilationUnit compUnit = ・・・ ASTParser parser = ASTParser.newParser(AST.JL…

Eclipse用のメトリクスプラグインすげー

Eclipseのプラグインで、ソフトウェアメトリクスを取得できるツールがある。 # メジャーなのが2つあるけど、こっちのほう。 で、すげーというのは、メトリクスが取得できるのがすごいんじゃなくて、 簡単にメトリクスを追加できるようになってるのがすげー。…

CSVファイル用のライブラリ

最近、CSVファイルを出力する機能を付ける作業が何回かあった。 で、CSVファイル用のJavaのライブラリが何個かあるみたいだけど、 どーもイメージしているのと違う。 自分のイメージとしては JavaBeansのCollectionを渡すと、CSVファイルで出力してくれる。 …

i18nって・・・

たまーに目にするi18nという単語。 これってinternationalizationのことらしいけど、 18ってなんのことかと思いきや、iとnの間の文字数なんだってさ。 略語がてきとーすぎると思うんだが・・・。

コンストラクタのリファクタリングで度忘れ

クラスにインスタンスフィールドが追加になって、コンストラクタの引数を 追加するような変更をよくやるんだが、追加した変数をフィールドに設定する処理を いっつも忘れてしまう。 引数を追加した際、それがフィールド変数と同名だったら、 設定する処理も…

ワークスペースの場所が保持されていることろ

Eclipseって一度ワークスペースを指定して実行すると 以降はそのワークスペースで勝手に起動してくれる。 (ただし、以降は表示しないとかいうチェックを付けた場合) だとすると、ワークスペースの場所をどっかで保持しているはずだー! ということでちょっ…

用意されているLabelProvider

独自のDialogとか表示する際に、いちいちLabelProviderを作るのって めんどうだなーと思ってたら、すでに準備されてるLabelProviderがあった。 WorkbenchLabelProvider : リソースパースペクティブっぽい表示 JavaElementLabelProvider : パッケージエクス…

Fileと相対パス

Fileクラスには、"..(1つ上のディレクトリ)"とかも解決できる方法があったみたい。 前にAntのソースを見たときは自力でやっていた(ような気がする)ので、 デフォルトではできないんだと思ってた。 で、コードはこんな感じ。 単にFile#getCanonicalFileを使…

Fileの地味な罠

Fileクラスは、相対パスでも作成できる。 で、その際はシステムプロパティのuser.dirをベースにパスが解決される。 という考えを持っていたので、 こんなコードでOKかと思ってた。 File file = new File("abc.txt"); File parent = file.getParentFile(); //…

failタスク

Ant

Antにfailタスクというものがある。 名前の通りJUnitのアサーションのfailみたいな動作をするけど、 failとする場合の条件を指定できる。 たとえば、こんな感じ。 ファイルがなかったら失敗 <fail message="ファイルねーよ!!!"> <condition> <not><available file="hoge.txt" /></not> </condition> </fail> Cドライブで動かさなかったら失敗 <fail message="C:\じゃねーのかよ!"> <condition> <not></not></condition></fail>