wildcatsの日記

赤羽在住でIT関係の会社の社長やってます。

OO

そうか。

確かにjarに実装ファイルを入れておいて オブジェクト指向設計原則のISPを実現するのは有りだな。 問題は同パッケージで同クラス名のJavaファイルを如何に管理するかか。

トラックバックに対するレス

インターフェイスそのものの効果はない場合(パターンとか)でも、単純にC++のヘッダファイルのような役割を果たせる。インターフェイスを必ず書いて、そこにjavadocを書く。具象にはコメントしか書かない。これは私も良くやります。具象クラスには@seeコメ…

失敗

ちょっとしたツールを自社で作ってて ドメインモデルへの責務の持たせ方でSRP違反なクラスでかつ依存関係が双方向になるモデルを作っちゃいました。 うーん。いかんな。。。かなり勘が鈍ってる。気づくのが遅すぎる。

Domain-Driven Designのエッセンス

OO

(via オレンジニュース) これすごくうれしいテーマかも。オージスさんやるな。 つーか、いきなりキタ─wwヘ√レvv〜(゚∀゚)─wwヘ√レvv〜─ !! こうしたドメインモデル探究の過程では、当然ドメイン知識をもった専門家との対話が不可欠です。開発者と専門家の間…

レイヤ

OO

ボクはレイヤって関心の分離とか抽象化を促す目的で採用しています。 もし再利用性を高めたいのであればレイヤ化するだけではなくパッケージの依存関係に目を向けないとダメかもしれません。 というかシステム境界を超えた再利用ってユーティリティパッケー…

インタフェイスの事後条件と多様性について

オブジェクト指向入門第二版発売を記念してちょっと書いておく。

オブジェクト指向入門 第2版 原則・コンセプト

第2版は、第1版の約3倍、1900ページ以上のボリュームで、「原則・コンセプ ト」と「方法論・実践」の2分冊(1分冊約960ページ)になりました。1900ページかぁ。。。。。(^^;;;;;

ブックマークに反応

2006年12月06日 ELLEGARDEN java, program ていうかゴミのような空クラスが大量に生成されているのはダサいよね。そうそう。Interfaceの抽出がどうこうよりも過去に見かけたことがあるのですが 更に空クラスを継承してたりするのはもっとゴミですかね。

業務系のクラスでインタフェイスの実装クラス名に「インタフェイス名+Impl」って名前をつけるのはダサいよね。

実装に特性があるからインタフェイスと実装を分離するわけで*1 インタフェイスに対して実装が1クラスになる場合にはインタフェイスと実装を分離する必要が無いとボクは思うね。 *1:例外としてはDynamic Proxyを用いたいから分離するケースはあると思う

「オブジェクト指向入門」

池袋のジュンク堂に先々週に2冊程あったと言う情報があり。 買ってない人は急げ!

そろそろ書いとくか

OO

「ネタにマジレスせんでもええか」と思ってたけど一応書いとく。 何が「まずい」と思ったのか。 自動販売機と商品の関連についてです。 ・自動販売機を生成するために商品は必ず必要なのでしょうか?(これはシステム範囲によるのかも) ・自動販売機内に内…

第2回 オブジェクト指向、本当に分かってる?

OO

また@ITか!と言う話はおいといて とりあえず Vending drink = new Vending("Coffee", 130);これは例としてまずいと思う。 後で時間があったらコメントを書く。 追記:ちょwwwww誰だよ。コメントを書く前にはてぶに追加したのはwwwww

オブジェクト倶楽部 2006夏イベント

OO

とても参加したいのですが、リリース前日なので無理です。。。。。

「Gof本を知らないは設計者として話にならない。」

OO

id:chung-zeeさんのコメントから うん。これはそう思いますね。 この前もウチの会社で私達が作業をした後の作業を 自称「設計ができる外注エンジニア」が対応した話ですが 「Facadeパターン」を使って実現している部分を何度説明しても 「Facadeを実現するた…

【中級】基礎からのオブジェクト指向 第4部 設計品質向上の切り札「デザインパターン」(前編)

OO

(via JavaBlackさんの日記) これはひどい...... JavaBlackさんの日記でかなり叩かれてるけど 一番ひどいな〜と思ったのはこの部分。 ここでは,オブジェクト指向設計を支える「デザインパターン」とは何かオブジェクト指向の特性(多態性とか)が「デザインパ…

プログラミング技法の発展

OO

なお、当初「オブジェクト指向」は、この“オブジェクトへのメッセージ送信”を意味するものであったが、後に C++ の設計者であるビアルネ・ストラウストラップが 1986年に発表した“抽象データ型のスーパーセット”という「カプセル化、継承、多態性」に代表さ…

ソフトウェア原則[3] - SRP(Single Responsibility Principle)

OO

ぐぐってて見つけた。 さて、Robert C. Martinは、この原則をさらに現代的に言い換えています。 クラスに変更が起こる理由は、一つであるべき。 A class should have only one reason to change. 「変更」に焦点を当てた定義は、より具体的です。もし、変更…

Tell, Don't Ask

OO

(via ちくわプログラマの作業履歴) なんか昔メモったような記憶があるな....

返り値の型だけ変えてメソッドをオーバーライドする

JavaとC++のどちらも引数の型をcontravariantにしてオーバーライドすることはできないためList30はコンパイル・エラーとなってしまう。 これはたまにTigerでサポートされているものと思って書いてみて あれ?なんで?って思っちゃいます。 引数の型を反変に…

共変性について

OO

izuオフの時にid:koichikさんから話がありました。 あとできっちり読んでおきますです。

オブジェクト指向の再定義

(via たかはしさんの日記) 連休中に読むことにする。

DIの説明

OO

現場でDepenjency Injectionパターンの説明を行う場合に 最初は依存関係有りまくりのコードを書いておき欠点を挙げておいて 依存関係を外に出してから仕様と実装の分離を適用して Factoryメソッドに置き換える説明をしてました。しかし、この図はいただきで…

パターン化の弊害

OO

どっかのえろい人が考えたソフトウェアパターン通りに設計や実装を行う人達がいる それ以前になぜプログラムが必要かを考えさせるのが重要だと思った

Re:オブジェクト指向入門

取り上げていただきありがとうございます。 でも、全体的にはあまり理解できていなかったかも。自分もおそらくあまり理解できてないと思います。 1人で読んでも理解が乏しいのでいろんな人の見解が得られる 読書会を開催しているというわけです(^^;

オブジェクト指向入門

反応ありがとうございますm(__)m まだ3章までですが、かなり良書の雰囲気。圧巻は7章です(某id:koichikさんと同じやなぁ)。自分は本を読む前と読んだ後で価値観が変わってしまいました。 あとは10章と11章ですかね。

オブジェクト指向入門読書会

OO

今日、第一回の開催予定です。 id:egapさんとid:nasobemeさんと語り合ってきます。

DIなんてフツーのJavaプログラマには理解できっこない

OO

分かってる人達が「これはいいね」「今度こそいいパラダイムだ」とか言って満足してるだけ.あはははは(^^; ちょっと前に同じようなことを考えていました。 新しいパラダイムって理解してもらえないと現場から激しく抵抗されるだけなんで 提案する意味がない…

オブジェクト指向入門読書会

OO

やべ。。。幹事なんだから場所の予約取らなきゃ(^^;;;;;;;;;

Template Method

OO

スーパークラスがアルゴリズムの不変な部分を定義するためだけに存在するのなら Template Method パターンの適用は妥当と言える。これで納得。以前のプロジェクトでTemplate Methodパターンの適用箇所を間違えていたということだと思いました。 でもid:m-has…

Re:Template Method パターンは必要か?

OO

個人的にずいぶん昔に業務のフレームワークを作っていてひどい目にあったことがあります。 あまり深く考えずにTemplate Methodパターンを用いて 親クラスの責務で制御を行い 子クラスの責務で業務部分の差分実装という形にしたのですが 子クラスが肥大化し重…