タグ: オブジェクト指向

開発

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秒付近) コミュニケーション大事 &nbsp …

開発

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

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

開発

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

  クソコード動画「共通化の罠」 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 &lt …

PHP

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

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

PHP

Laravel リポジトリパターン

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

SEノウハウ

Abstarctとinterfaceの違い

  interface ポリモーフィズムでの利用で使える @see ポリモーフィズムとはなにか?超わかりやすく解説します!(外部サイト) 外向け 不特定数       Abstract 継承の拡張 いくつも継承できる 複数の派生先クラスで一部の実装が異なる場合 @see interfaceとabstractの特徴と違いを捉える(外部サイト) 内部向け仕様   …

SEノウハウ

デザインパターン まとめ

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

PHP

PHP Adapterパターン

  使いどころ 既存のクラスに変更を加えたいが、直接ソースの変更を行いたくない。       WatchYoukai.class.php <?php /** * 指定されたファイルを表示するクラスです */ class WatchYoukai { private $filename; public function __construct($filen …

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パターンってことで演習してアウトプットしていきます。   使いどころ 似たような処理 …