タグ

abcとdddに関するishideoのブックマーク (2)

  • Hexagonal Architecture の実践には zope.interface が便利 - Qiita

    追記: 2017-02-12 実は、自分のプロジェクトでは最近、この方法を利用していません。inject による紐付けが出来ていて、必要なメソッドが定義されていれば(duck typing)、必ずしもドメイン層のモデルとインフラ層の実装が継承関係になくても良い、というゆるい考えです。 http://qiita.com/ledmonster/items/3b108be6f0967bfe1093 また、最近の自分のプロジェクトでは、インフラ層を置く代わりに、port, adapter のモジュールを定義しています。adapter には、ドメイン層または port で定義されたインタフェースの実装を書く感じです。ドメインモデルにある概念はドメイン層に置き、外部シストムとの連携インタフェースは port に置く感じです。 時間のあるときにまた記事を書こうと思います。 概要 ドメイン駆動開発にHex

    Hexagonal Architecture の実践には zope.interface が便利 - Qiita
  • Python で DDD するなら Inject がオススメ - Qiita

    概要 やや古い記事だけど、InfoQ のドメイン駆動設計・開発の実践には次のように書かれています。 ドメイン・クラスがData Access Object(DAO:データ・アクセス・オブジェクト)クラスに依存し、サービス・クラスがドメイン・クラスに依存するという設計上の依存関係がDDDによる実装に際してDIを"なくてはならない"ものにしています。 Python の場合、DI(依存性の注入)の実現には Inject が便利です。 利用例 ざっと100行程度でサンプルを書くと、このような形になります。 # -*- coding: utf-8 -*- import uuid from abc import ABCMeta, abstractmethod import inject def config(binder): binder.bind(UserRepository, UserMemory

    Python で DDD するなら Inject がオススメ - Qiita
  • 1