ハマログ

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

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のphpMyAdminを最新版にアップグレード

XAMPP for WindowsのphpMyAdminを最新版にアップデートす…

MySQLのSELECT結果をCSV出力

MySQLのSELECT結果をCSV出力するには以下のようにSELECT文に「I…

Laravel Novaつかってみる

はじめに 管理画面にlaravel-adminを使っていたのですが、あまり更新さ…


← 前の投稿

次の投稿 →