タグ

javaとcodingに関するkiyo_hikoのブックマーク (5)

  • オブジェクト指向のプログラムに込める「意図」 - 都元ダイスケ IT-PRESS

    その昔、プログラムを覚えたての頃、プログラムってのは単に「処理」を記述するものだと考えていた。処理を1ステップごとに記述し、場合によってはサブルーチンに切り出し、再利用する。 今振り返ると、オブジェクト指向を覚え始めてしばらくして、その意識は変わっていた。当然「処理」を落とし込まなければプログラムは動かない。だから「処理」はプログラムに込める。ただ、オブジェクト指向言語を使うと、これに加えて「意図」を落とし込むことができる。 オブジェクト指向を学び始めた当初、Javaのインターフェイスの存在意義がわからなかった。プログラムは「処理」を記述するものだという視点で見ると、インターフェイスには「処理」を書くことができない。インターフェイスだけでは何も起こらないからだった。 さらに、IDEを使ってコードを追っていると、途中でインターフェイスのソースを開くことになり、「なんだよ、中で何やってっかわか

    オブジェクト指向のプログラムに込める「意図」 - 都元ダイスケ IT-PRESS
    kiyo_hiko
    kiyo_hiko 2011/04/11
    Javadocで意図を残す…「「意図の落とし込み」が有効に作用するためには「ドキュメンテーションコメント(Javadoc)がきっちり書かれている」場合に限る。このインターフェイスの「責務」を明示する必要がある。」
  • Defineアレルギー

    baristaはDefineアレルギーである。新しいプロジェクトに参画して、既存モジュールの中にDefine.javaを発見した瞬間、全身に発疹ができる。これはbarista体内のDefineに対するIgE抗体が肥満細胞を活性化、ヒスタミン,ロイトコリエンなどの化学伝達物質が体内に放出されるためである。酷い場合にはアナフィラキシーショックを引き起こし、血圧の低下と上気道の浮腫による呼吸困難に苦しむ羽目になる。この場合、エピネフリン(アドレナリン)の皮下注がfirst aidだ。ここで静注を行なってはいけない。不整脈の原因になることがあるからだ。緊急時には気管挿管を行ない....しつこいですか? 抗ヒスタミン剤を服用しつつ説明するが、C言語における.hファイルの感覚でpublic static finalな定数値を定義しまくった、巨大なDefineクラスを作ってはならない。これは有名なアン

    kiyo_hiko
    kiyo_hiko 2011/04/07
    「hファイルの感覚でpublic static finalな定数値を定義しまくった、巨大なDefineクラスを作ってはならない。これは有名なアンチパターン」なるほど。クラス内で完結可能ならprivate static定数、広く使うならpropertiesが良さそう。
  • Javaプログラムからプロパティファイルを参照する

    Javaでは、定数やファイルパスなどの情報を「プロパティファイル」と呼ばれる、プログラムとは別のファイルにまとめておくことが推奨されています。こうすることで、汎用性の高いプログラムを作成できます。さらに、プロパティファイルを修正するだけで、再コンパイルをしなくても値の変更を反映させることができるので便利です。 プロパティファイルは「.properties」という拡張子を持つファイルで、キーと値のペアを「=」または「:」で区切った形式で記述します。また、行頭が「#」または「!」で始まる行は、コメント行として扱われます。以下は、円周率の値などを定義したサンプルのプロパティファイル「calculator.properties」です。 プロパティファイルを使用するには、JavaのコアAPIとして用意されているjava.util.Propertiesクラスを利用します。このPropertiesクラス

    Javaプログラムからプロパティファイルを参照する
    kiyo_hiko
    kiyo_hiko 2011/04/07
    再コンパイルが不要で定数値が柔軟に変えられる。会社でひたすらpublic static final Stringしか書かれていないクラスを見たが、こうして読んでみるとpropertiesの方がいい気がする
  • コードから情報を追い出せ!プロパティファイルの常識

    今回は「プロパティファイル」の常識について、Java言語を通じて学んでいきます。 多くの場合、プロパティはプロパティファイルという物理的なファイルと関連付けられて私たちの前に現れます。プログラミング言語内では完結せずに外部の物理ファイルとのかかわりが強く出てくる話題であるため、初心者のうちはなかなかなじみにくい技術かもしれません。しかし、プログラミングにおいて重要ですので、しっかり習得してしまいましょう。 「プロパティファイル」ってどんなもの? 私たちがJava関連のソフトウェアを扱っていると、ファイルの拡張子が「.properties」となっているファイルを見掛けたり、あるいはその内容を編集することがあります。この「.properties」拡張子のテキストファイルが、プロパティファイルです(違う拡張子を付ける場合もありますが)。 テキストエディタなどを利用してプロパティファイルの中身を見

    コードから情報を追い出せ!プロパティファイルの常識
    kiyo_hiko
    kiyo_hiko 2011/04/07
    注意点:ISO-8859-1である必要がある、と。java.util以下、PropertiesかResourceBundleでアクセスする。
  • Javaプロジェクトのソースコードリーディングツール、Sorcererを試してみた - cactusman日誌

    Javaのソースコードリーディングのツールとして、いいものがないかなと思っていました。 それで、以前、川口さんが会社のほうに遊びに来られた時にプレゼンで紹介されたのが、Sorcererというツールです。 これはJavaのコードを解析して、HTML(+JavaScript)へ出力してくれるものです。 Eclipse風な見た目は単に見た目だけでなく、参照やクラスへのジャンプといったIDEが持ってる機能を備えてる優れものです。 今のところ、バージョンが0.6で2年ほど何もない状態ですが、Hudsonと絡めるとかなり面白くなるのではないかなと、期待しているところです。 実際の使い方は、公式のところを参考にしていただいて、自分はMaven2で試してみました。 注意としまして、Sorcerer自体はJDK6じゃないと動きません。 Maven2から使うには、以下の部分をPOMに追加して、「mvn sit

    Javaプロジェクトのソースコードリーディングツール、Sorcererを試してみた - cactusman日誌
  • 1