タグ

diに関するcnomiyaのブックマーク (6)

  • 次世代のモックフレームワークであるJMockitの基本的な使い方 - 達人プログラマーを目指して

    以前のモックフレームワークの技術的制約 今まで私が担当してきたプロジェクトにおいては、モックオブジェクトを使ったJUnitの単体試験はjMockとEasyMockのいずれかのフレームワークを利用して行ってきました。しかし、これらのフレームワークはJavaプラットフォームにおけるコード自動生成の考え方の変遷で説明したように動的プロキシーに基づいているため、以下のような制約がありました。 モック化する対象の型はインターフェースを実装しているか、継承可能なクラスであること モック化するメソッドはfinal、static、privateでないこと*1 モック化するロジックはコンストラクターの呼び出しではないこと モックオブジェクトをテスト対象クラスにDIかパラメーター経由で引き渡すことが可能であること モック化する場合はクラス全体をモック化する必要があること(getterやsetterなどは物の

    次世代のモックフレームワークであるJMockitの基本的な使い方 - 達人プログラマーを目指して
  • InfoQ: 依存性注入(DI)は成功したか?

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    InfoQ: 依存性注入(DI)は成功したか?
    cnomiya
    cnomiya 2007/12/26
    DIとは=あなたがGoFのファンであるなら、これは実際Strategyパターンなのです。 依存性注入は(私の見るところ)基本的にひとまとめに使われるStrategyパターンです。
  • DIxAOP時代のデザインパターンの検討 - レベルエンター山本大のブログ

    DIxAOP時代のDesign Patternについて記事のためにアイデアを絞っている。 その中で浮かんだパターンの1つ 「Implicit Interface Injection」パターンというのをご紹介。 対象とする問題 DIコンテナを使う場合「インターフェイスベースのプログラミングを行う」ことは1つの原則のようになっている。 インターフェイスベースプログラミングによって疎結合なモデルになる。これにより、再利用性と拡張性が向上する。 しかし、部品の再利用が主目的ではない企業システムの開発では、インターフェイスベースにすることのメリットよりも、開発の効率低下や、コードの追跡のしやすさの面でのデメリットの方が大きいと感じることが多い。 Implicit Interface Injection(暗黙のインターフェイスへの注入)パターンによる解決策 「Implicit Interface In

    DIxAOP時代のデザインパターンの検討 - レベルエンター山本大のブログ
    cnomiya
    cnomiya 2007/11/28
    DIxAOP時代のDesign Patternについて記事のためにアイデアを絞っている。その中で浮かんだパターンの1つ「Implicit Interface Injection」パターンというのをご紹介。
  • Apache Composer (arclamp.jp アークランプ)

    なんか、面白そうなプロジェクトが始まりそうです。昨日付けでApache ComposerというプロジェクトがApacheに提案されました(提案なので、この後、Incubatorを通ってから正式プロジェクトなので先は長い)。 Apache Composer is an embeddable Inversion of Control (IoC) container for general components (Java initially). Its characterizing elements are that it is small, favors Dependency Injection (over other IoC variants) and tries to remain agnostic when it comes to the need for its components

    cnomiya
    cnomiya 2007/10/11
    これからのアプリケーション・アーキテクチャが「イベント指向」に向かう中で、試金石的なプロジェクトなればうれしーなー/Apache Composer, PicoContainer, Plexus, Avalon, Spring, Seasar, Guice, TapestryのHiveMind
  • Martin Fowler's Bliki in Japanese - InversionOfControl

    cnomiya
    cnomiya 2007/10/11
    イベントを検知すると、クロージャのコードを呼び出す。クロージャをこのように使うのは大変便利だが、サポートしている実装言語は多くない/delegateを使って、メソッドをイベントにbind。
  • 階層化アーキテクチャと依存性注入・依存性逆転:CodeZine

    .NET 1.0のベータ1から.NET Frameworkに従事してきた.NET開発のエキスパートで、アプリケーションのアーキテクチャ作成と設計と開発で7年以上の経験がある。アジャイルプラクティスと実際的なビヘイビア駆動開発(BDD)テクニックを通じてチームの成功を支援する独立コンサルタントとして活躍している。BDDを.NETに応用する記事をVisual Studio Magazine、DevX、MSDNに寄稿。ポッドキャスト/スクリーンキャストとして人気のある.NET Rocks!とDNRTVに登場したことがあり、実際のデザインパターンというトピックについてMicrosoftのためのウェブキャストを配信。MSDN Canada Speakers BureauおよびMicrosoft Most Valuable Professional(MVP)のメンバ。自分のブログも継続的に更新中。

  • 1