タグ

2009年11月17日のブックマーク (5件)

  • その他のデザインパターン - 自分用メモとか

    GoFパターンでは、抽象的かつ汎用的なパターンが多く扱われていますが。 ここでは、抽象に依らないパターンや、あまり汎用的とは言えないパターンも扱います。 ↑ Uncopyable(Noncopyable)パターン † 役立ち度:★★☆ C++における、クラスのコピー抑止のためのパターン。 このパターンを用いると、コード中にコピーを行う記述がある際に、 コンパイラがコピーコンストラクタを生成しようとして、コンパイルエラーとなります。 private 継承をすることで、コピー抑止のロジックについてサブクラス側に意識させずに済んでいます。 /// コピー抑止機能を持つクラス class Uncopyable { private: /// コピーコンストラクタ Uncopyable(const Uncopyable&); /// 代入演算子 Uncopyable& operator=(con

  • ドメイン駆動設計の概要

    目次 プラトン的モデル 言うべきことを言う コンテキスト 価値提案を把握する 単一責任システム エンティティは ID とライフサイクルを持つ 値オブジェクトは記述する 集計ルートによりエンティティを結合する ドメイン サービス モデルの主要な操作 リポジトリにより集計ルートを省略する データベースの関連事項 DDD の使用を開始する ドメイン駆動設計 (DDD) とは、洗練されたオブジェクト システムの設計に役立つ原則とパターンをまとめたものです。設計に DDD を適切に適用することで、ドメイン モデルと呼ばれるソフトウェア抽象化を実現できます。このモデルにより複雑なビジネス ロジックをカプセル化できるため、実際の業務とコードとの間に存在するギャップを小さくすることができます。 この記事では、DDD に関連する基的な概念と設計パターンについて解説します。機能豊富なドメイン モデルを設計し

    ドメイン駆動設計の概要
    j5ik2o
    j5ik2o 2009/11/17
    読みやすい
  • アトラシアンにおけるアジャイル開発 (agile at ATLASSIAN) - アトラシアン ジャパン サポート ポータル

    アジャイルスクラムの方法論について実践的な洞察 アトラシアンは "ルールに従う" ソフトウェア企業ではありませんし、アジャイル開発を実行するためのたった一つのレシピなど無いことも知っています。かつて私たちは実践的なヒントに飢えていました。いまは、アジャイル開発の話を皆様と共有すべきだと考えています。 アトラシアンがどのようにアジャイル開発を実践しているかについて紹介ビデオを見る (2:05)

  • Facebook、オープンソースのノンブロッキングなWebフレームワーク「Tornado」を公開 | gihyo.jp

    濃縮還元オレンジニュース Facebook、オープンソースのノンブロッキングなWebフレームワーク「Tornado」を公開 2009年9月11日、SNSサービスを運営するFacebookは、Pythonで書かれたWebフレームワーク「Tornado」をオープンソースで公開しました。Tornadoは、Facebookによって買収されたフィードアグリゲーションサービスFriendFeedにて使われているWebフレームワークをベースに、依存関係を減らすようリファクタリングしたものです。 Tornadoの大きな特徴として、FriendFeedのようなリアルタイム性、大量接続の要件に応えるべく、ノンブロッキングI/O、epollを用いたアプリケーションを作成できます。ほかにもGoogle App Engine対応、サードパーティ認証、CSRF(Cross-Site Request Forgeries

    Facebook、オープンソースのノンブロッキングなWebフレームワーク「Tornado」を公開 | gihyo.jp
  • GoFのデザインパターン - Strategic Choice

    オブジェクト指向設計でよく出会う問題とそのスマートな解決策のカタログ集一覧結城さんののカテゴライズと順番で。デザインパターンに慣れる 第1章 Iterator ― 1つ1つ数え上げる 第2章 Adapter ― 一皮かぶせて再利用 サブクラスにまかせる 第3章 Template Method ― 具体的な処理をサブクラスにまかせる 第4章 Factory Method ― インスタンス作成をサブクラスにまかせる インスタンスを作る 第5章 Singleton ― たった1つのインスタンス第6章 Prototype ― コピーしてインスタンスを作る 第7章 Builder ― 複雑なインスタンスを組み立てる 第8章 Abstract Factory ― 関連する部品を組み合わせて製品を作る 分けて考える 第9章 Bridge ― 機能の階層と実装の階層を分ける 第10章 Strategy