タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

Javaとデザインパターンに関するrudo108のブックマーク (2)

  • nullという値は本当に必要か考えよう - かとじゅんの技術日誌

    今回は、nullの扱いは気をつけようねというお話。特にこれからの人に読んでもらいたい。 nullは変数を初期化する時などに、当たり前のように登場します。Javaではnullがないなんて考えられないわけです。(C#でも同様) しかし、nullの考案者のTony Hoareは「10億ドル単位の過ち」と発言しています。 null参照の考案は10億ドル単位の過ち?(スラッシュドット・ジャパン) - エキサイトニュース nullには、それだけの魔性があって使い方を考える必要があります。nullは”値が存在しない”という状態を表現する時に使われることが多いのですが、そのnullに対する注意が十分に払えずにトラブってしまうことが多いのです。Scalaではその"値が存在しない"という状態をOption型のNoneで表現することでnullを回避する手段が提供されています。JavaではScalaのようにはでき

    nullという値は本当に必要か考えよう - かとじゅんの技術日誌
    rudo108
    rudo108 2011/11/14
    遭遇してみて始めて実感がわくという事実。[todo]
  • サルでもわかる 逆引きデザインパターン 第4章 逆引きカタログ その他 Nullオブジェクト

    具体的な例 それではより具体的な例を見てみましょう。サンプルは商品の割引価格を計算するコードです。 割引価格には「会員の割引価格」「セール時の割引価格」「通常の割引価格」の3種類があります。 割引価格の種類を決定するのは、Mainクラス実行時のアプリケーション引数です。 Mainクラスは「java Main 価格 割引ロジック名(sale, member, 指定しないのいずれか)」の形式で実行します。 例えば「java Main 1000 member」で実行すると会員割引価格となり、「java Main 1000 sale」で実行するとセール時の割引価格となります。 「java Main 1000」と指定がない場合は、通常の割引価格になります。 各クラスの役割は次のようになります(図8~9)。 ◎DiscountLogic(リスト14) 割引計算のロジックのインタフェースです。各割引計算

    rudo108
    rudo108 2011/09/08
    new に対してnull対処しているといつの間にかロジックよりもnullチェックが多くなっていることがある。
  • 1