タグ

DIに関するtksthdnrのブックマーク (5)

  • iOSアプリの設計とDependency Injection

    iOSオールスターズ2 https://eventdots.jp/event/602872

    iOSアプリの設計とDependency Injection
  • 作って理解するDIコンテナ - きしだのHatena

    DIコンテナ使ってるけど、アノテーションってなんなの!って聞かれて、作ってみたらわかるよと答えてみたので、自分でも作ってみました。 よくわかった。 「DIコンテナ使うと何がいいの?」ということも、作ってみるとわかります。あと「DIって何がいいの?」に関しては、「DIはちょっとコードを書くのが楽になるだけで、それだけあっても仕方ない、大事なのはコンテナ」と答えるようにしてますが、コード比率からもそれがよくわかります。 続編としてWebフレームワークも作っているので参考まで。 作って理解するWebフレームワーク - きしだのHatena まずはコンテナを作る とりあえず1ソースの状態で。 こんな感じで、管理する型を登録できるようにします。 static Map<String, Class> types = new HashMap<>(); static void register(String

    作って理解するDIコンテナ - きしだのHatena
  • 要するに DI って何なのという話 - 猫型の蓄音機は 1 分間に 45 回にゃあと鳴く

    友人から「しんぺいさん DI について書いてほしい」みたいな話をだいぶ前からされてたんだけど書く気力ずっとなかった。でも仕事の気分転換にちょっとずつ書いたやつがいい量まとまったので公開するです。たいしたことは書いてないっていうか知ってるひとにはあたりまえのことしか書いてない。サンプルコードはわたしの趣味Scala で書いてあるが、Java が読めればなんとなく読めると思います。 DI ってなに Dependency Injection、日語で言えば依存性の注入です。おしまい。 で記事を終えてもいいんだけど、そもそも依存性とはなんなのか、それを注入するとはどういうことなのか、なぜ DI が必要となるのかみたいな話をこれからします。 そもそも依存性ってなあに 例を出します。入力された文字列をもとにおみくじをひいて、その結果を twitter に投稿するプログラムにしましょう。 まずは普通

    要するに DI って何なのという話 - 猫型の蓄音機は 1 分間に 45 回にゃあと鳴く
  • Symfony 2のアプリケーション構成を読む

    HelloKernel.php  cache/  config/  console  logs/ 先ほど説明をしたKernelというものが出てきます。Kernelの中にはいくつかのメソッドが実装されています。簡単に説明します。 ◆registerRootDir() Kernelのルートとなるディレクトリです。またカーネルを配置してあるディレクトリ、ここではhelloがカーネルの名称、つまりアプリケーションの名称となります。 ◆registerBundles() Bundleとは日語にすると束とか1つにまとめたものという意味です。このBundleはSymfony 2では非常に重要な役割を持ちます。 このメソッドの中でZendBundleやDoctrineBundleを返しているのをみると、Bundleは従来のPluginのように思われるかもしれませんが、あながち間違いではないでしょう。 こ

    Symfony 2のアプリケーション構成を読む
  • Dependency Injection with PHP 5.3

    This document provides an overview of dependency injection and describes how to build a simple dependency injection container in PHP 5.3 using anonymous functions (lambdas). It discusses how the container can be used to manage parameters, describe object creation through lambdas, handle object scoping, and provide a unified interface. The container allows decoupling object dependencies and makes c

    Dependency Injection with PHP 5.3
  • 1