Symfonyと抽象クラス
by
matsu_hide
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Symfonyと 抽象クラス Symfony Meetup Kansai #2 松藤 秀治 (2019-08-07)
Slide 2
Slide 2 text
自己紹介 ● 松藤 秀治(まつふじ ひではる) ● matsu_hide ● フリーエンジニア ● Symfonyをよく使う
Slide 3
Slide 3 text
抽象クラスとは?
Slide 4
Slide 4 text
特定の視点から対象を見たときに 導き出される型と振る舞い (自説)
Slide 5
Slide 5 text
抽象クラス 実装寄り → インスタンスとかテンプレートメソッドとか 設計寄り → 抽象とか 今日は設計寄りの話です。
Slide 6
Slide 6 text
抽象クラスは悪者? ・確かに共通処理をくくりだすという理由だけで使うと失敗しや すい。 ・でもうまくいっている例もあるはず。 ・一体何が違うんだろう?
Slide 7
Slide 7 text
[Symfonyでの使用例1] フォームタイプ
Slide 8
Slide 8 text
[Symfonyでの使用例2] バリデーター(制約)
Slide 9
Slide 9 text
[Symfonyでの使用例3] ダンプ
Slide 10
Slide 10 text
どうしてSymfony(フレームワーク)では 使われているのか?
Slide 11
Slide 11 text
AbstractType → フォームの要素をどう扱うか? Constraint → Nullや文字数の制約をどう扱うか? AbstractDumper → オブジェクトなどをどう出力するか? 解決したい問題に着目(特定の視点)
Slide 12
Slide 12 text
そうは言ってもフレームワーク は特別でしょう?
Slide 13
Slide 13 text
・ソフトウェアで問題を解決するという点でフレームワークも自分 が作るものも同じ。 ・それならフレームワークで使われている技術は自分が作るとき も有用なはず。 ・自分が作るものをフレームワークにするとしたら?という視点。
Slide 14
Slide 14 text
まとめ ● 解決したい問題に焦点をあて、必要であれば抽象クラスを 使う。(再利用される頻度と複雑さのバランスは大事。) ● 自分が作るものをフレームワークにするとしたら?という 視点は大事。 ● 抽象クラスだけでなくさまざまな技術は問題を解決する(捉 える)ためにある。