- - PR -
Javaコードスタイル
«前のページへ
1|2|3
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2002-02-26 01:55
> staticに大きなオブジェクトを入れながら、
> nullでオブジェクトを消しに行くようなケースがあるのですか? コードスタイルには直接関係しませんが、私のケースを。Javaアプリケーションの場合です。 JFileChooserはファイルを読み込むときにも保存するときにも使用するのでアプリケーションの staticフィールドに入れて使い回すことがありますが、ある処理の後はもう当分使わないという ことが分かっていることも結構あります。例えばファイルを最後に指定した後は単にそのファイルに フィルターをかけてレポートをコマンドラインに出して終了する場合など。 JFileChooserオブジェクト自体は重くなくともsetAccessoryメソッドで思わぬ 大きなオブジェクトの参照を抱えていることもあるので、そのような場合はGCに処理してもらい たいというケースがありました。(例えば画像ファイルのプレビューを表示させているとき) (万一次回JFileChooserオブジェクトが必要とされたときの場合に使用する前にstatic メソッドでインスタンス化を保証してNullPointerExceptionを吐かないようにはさせています) これ以外でもいくつか仕様変更で妥協せざるを得なかった汚い書き方の場合とかがありましたが それらは説明するのも思い出すのも難しいのでご勘弁下さい | ||||
|
投稿日時: 2002-02-26 09:50
リファクタリングでは、テンポラリ変数の乱用によってメソッドが長くなることを防ぐという背景があって即時returnを使っていたように思います。if elseの各ブロックをそれぞれ小さなメソッドにして、if elseの全体を簡潔なメソッドにしてしまうというのも一つのやり方では。各メソッドは短いので複数returnがあっても、(プログラムを人間が読む上で)少しも問題にならないと思います。
H2さん、枝別れさせてごめんなさい。この話題はまたの機会に。 ただ、フォーマットに関しては、グループ開発において各自の趣味指向が入らないようにするのがスタイルの役目だと思います。 [code] | ||||
«前のページへ
1|2|3
