ハマログ

株式会社イーツー・インフォの社員ブログ

Laravelの勉強中

入社して1か月ちょっと経ちました。最初はgitと戦ってましたが、最近はLaravelとも戦っています。Laravelの本を読んでいるとDI( Dependency Injection =依存性注入)という言葉が結構出てきました。

例えば

interface Hello{
  function sayHello();
}

class EnglishHello implements Hello{
  public function sayHello(){
    echo “Hello”;
  }
}

class JapaneseHello implements Hello{
  public function sayHello(){
    echo “こんにちは”;
  }
}

のような作りにしておいてこれを利用するメソッド側で

function something(HelloInterface $hello){
  $hello->sayHello();
}

としておけば引数として渡すインスタンスに応じてsayHelloの振る舞いが変わるのでもしsomethingの中で呼び出す$helloのメソッドがもっと増えてから処理をごっそり入れ替えたくなってもHelloInterfaceを実装したクラスを引数として渡してあげればよいのでsomething側は特に修正しなくて済むし、機能ごとに処理をまとめておけばその機能がいらなくなったときも安心して消せるということらしいです。とっても便利ですね。ぜひ使っていきたいです!

あんまりタイトルと直接の関係はないですがLaravelの本を読んで便利だなーと感じたのでこのタイトルにしました。

実務でも使いつつ、綺麗にコードかけたらいいなぁと思います。

LaravelPHP

  to   2020年9月29日


関連記事

XAMPPのバージョン一覧

XAMPPを利用して開発するときに、レンタルサーバに設置されているPHPとかMy…

TextWranglerと正規表現で大量ファイルを一括置換

大量のHTMLファイル内に記述されたjsのパスを一括で置換したくなりました。 自…

composer updateのメモリ不足エラーに対応する

composer updateの実行時にメモリエラーが発生しました。 ./com…


← 前の投稿

次の投稿 →