ハマログ

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

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日


関連記事

PhpSpreadsheetとTcpdfでExcelファイルから日本語PDFを作成してみる(そして失敗する)

はじめに PDFの帳票をLaravelから作成したかったので、いろいろ試していま…

Bootstrapのcollapseコントロールでアコーディオンの実装

collapseコントロールは、クリックすると、その内容を折り畳むことができるコ…

Windows PowerShellの文字コードを変更する(コマンドプロンプトも)

Windows7以降標準で搭載されているWindows PowerShellを従…


← 前の投稿

次の投稿 →