タグ: オブジェクト指向

開発

DDDをまとめる to be 最強

  【最強の技術者集団】を謳う倍率200倍のアプリ会社に転職した。 転職は入ってみないとわからない チョコレートの箱のようなもの👦🎁✨   転職後に初めて携わったプロジェクトが2名の技術者によるバックエンドで、DDDの思想を受けて作られたものであった。 ソースコードを見た この会社に入って良かった。 「当たりを引いたな🎁✨」と確信。*1   他の既存のシステムを拡張す …

開発

Switchとif elseif クソコード動画「Switch」から学ぶ

  クソコード動画「switch文」 #ooc_2020 pic.twitter.com/USTrFcRCAS — ミノ駆動 (@MinoDriven) February 16, 2020 switch文, if elseif書くぞ! → Factory, Strategy, Stateを考える 毎日5分程でも開発定例MTG設ける(動画17秒付近) コミュニケーション大事   …

開発

Managerクラス クソコード動画から学ぶ

  クソコード動画「Managerクラス」#すえなみチャンス暑気払い pic.twitter.com/3FSQDkXfHu — ミノ駆動 (@MinoDriven) August 3, 2019 クラスの命名が悪い →命名はそのクラスの範囲 (スコープ)を表現する 1つのクラスは小さく、堅牢に保つ そのクラスをいじって他のクラスに影響を与えてはいけない ・Interface、Facade …

開発

共通化モジュール クソコード動画から学ぶ

  クソコード動画「共通化の罠」 pic.twitter.com/MM750CNXc2 — ミノ駆動 (@MinoDriven) May 12, 2019 共通モジュールに特定クラスの分岐処理を入れてはいけない あってはいけない…😨 1分30秒付近でPMが個別に別れとけ!って言われてからクラスFがさらっと、分岐処理を追加するのが闇が深い。   分岐処理が未来で共通処 …

PHP

イミュータブルPHP クソコード動画「カプセル化」から学ぶ

  クソコード動画「カプセル化」 pic.twitter.com/kAhXCEHYVT — ミノ駆動 (@MinoDriven) June 23, 2019   問題 データが書き換わってしまってしまう。   対応 イミュータブルにする getter/setterをつくらない     ミュータブル(可変)   client.php [cr …

PHP

デザパタ本を読んでオブジェクト脳ができるまで

  オブジェクト脳ができるまで クラスの修飾子を把握する public protected privateの違い abstract, interfaceの違いを把握する デザパタ本を写経する Facadeあたりがわかるようになる 関連と集約の意味を把握する 関連・・・newで呼び出すが、呼び出したインスタンスはプロパティに保持しない 集約・・・プロパティにインスタンスを保持する UMLの …

PHP

Laravel リポジトリパターン

  リポジトリパターンのスタイルにするのが勝ちパターンみたいなので覚える。 確かにわかりやすいし、テストしやすくなる。 テストの切り分け 本来はコントローラのテストだけ、DBのテストと別でテストできるものでなくてはならない   下記サイトを参考にやってみました。 https://www.ritolab.com/entry/165   /database/factori …

SEノウハウ

デザインパターン まとめ

    Template Method abstract classして親は抽象クラスとして定義し、共通メソッドとクラス毎に処理が変わる処理をabstract methodを定義する 継承した子クラスは親クラスでabstractで指定したメソッドを実装することで、共通処理を保証しクラス毎に異なる処理を定義できる。   Singleton 1つのクラスに1インスタンスし …

PHP

PHP Facadeパターン

      BuyController.class.php ※Facade適用前

コントローラが肥大化する! コントローラにModel部分の処理が入ってきている…。       Facadeパターンを適用する   Controllerで行っていたMod …

PHP

PHP Adapterパターン

  使いどころ 既存のクラスに変更を加えたいが、直接ソースの変更を行いたくない。       WatchYoukai.class.php

  client.php

        …

PHP

PHP Template Methodパターン [PHPによるデザインパターン入門]

絶版されているけれど、Google booksで公開されているのが見れます。 https://books.google.co.jp/books?id=sXNh4TeQeBIC&printsec=frontcover&hl=ja#v=onepage&q&f=false 1日1パターンってことで演習してアウトプットしていきます。   使いどころ 似たような処理 …

PHP

PHPの継承 Interface 抽象クラスabstract 多重継承Trait

  interface 使いどころ 継承先が不特定な場合 特徴 多重継承ができる。 interfaceで用意した関数は実装先で定義しなければならない。   abstractクラス 使いどころ 特定の派生先で一部の実装が異なる場合   特徴 abstractの修飾子をつけたものは、継承先で定義しなくてはいけない。   [crayon-5ecdad3c58a19 …