Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
デザインパターンを学んだら世界が広がった話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
ほりしょー
May 31, 2023
Technology
2
400
デザインパターンを学んだら世界が広がった話
「めぐろLT#3」にて発表
https://raksul.connpass.com/event/281666/
ほりしょー
May 31, 2023
Tweet
Share
More Decks by ほりしょー
See All by ほりしょー
開発プロセスを継続的に改善する仕組み作り ~ 強いスクラムをいかに維持するか ~
h0r15h0
0
110
ドメインイベント増えすぎ問題
h0r15h0
2
840
LLM(Copilot)を最大限活用するための取り組みとその副産物
h0r15h0
1
200
現実世界の事象から学ぶSOLID原則
h0r15h0
29
21k
集団意思決定の落とし穴と誰も望まない技術的負債
h0r15h0
1
5.2k
Goのパーサ作ってvscode拡張作ってみた!
h0r15h0
0
200
Other Decks in Technology
See All in Technology
~Everything as Codeを諦めない~ 後からCDK
mu7889yoon
3
530
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
270
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
150
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
170
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
3
230
顧客の言葉を、そのまま信じない勇気
yamatai1212
1
370
Why Organizations Fail: ノーベル経済学賞「国家はなぜ衰退するのか」から考えるアジャイル組織論
kawaguti
PRO
1
220
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
登壇駆動学習のすすめ — CfPのネタの見つけ方と書くときに意識していること
bicstone
3
130
【Oracle Cloud ウェビナー】[Oracle AI Database + AWS] Oracle Database@AWSで広がるクラウドの新たな選択肢とAI時代のデータ戦略
oracle4engineer
PRO
2
190
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
580
プロポーザルに込める段取り八分
shoheimitani
1
670
Featured
See All Featured
The Invisible Side of Design
smashingmag
302
51k
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Utilizing Notion as your number one productivity tool
mfonobong
3
220
First, design no harm
axbom
PRO
2
1.1k
Making Projects Easy
brettharned
120
6.6k
GitHub's CSS Performance
jonrohan
1032
470k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
300
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Statistics for Hackers
jakevdp
799
230k
ラッコキーワード サービス紹介資料
rakko
1
2.3M
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.7k
Transcript
堀崎祥 デザインパターンを学んだら 世界が広がった話
Template Method パターン Bridge パターン 堀崎祥 ラクスル23 新卒入社 ハコベル所属 好きなデザインパターン
自己紹介
デザインパタ ーンとは? ソフトウェア開発における設計パターンに ついての経験やノウハウをまとめたもの。 再利用しやすく機能拡張しやすいソフトウ ェアを作るための有益な技法。 GoF(the Gang of Four)
が 書籍『オブジェクト指向における再利用の ためのデザインパターン』に整理。
今の若者には 理解できない そもそもOOP が 廃れつつある 複雑度に対して わずかな恩恵 時代遅れ デザインパターン不要論
デザインパターンは 不要なのか?
実際に学んで感じた世界の変化を 若手( 新卒) 目線で語ってみる
デザインパターン学習後の変化 コードから見える情報が増加 情報A 情報B 情報C
Rails のとあるコントローラー デザパタを学ぶ前の世界 継承 諸々親が担ってそう メソッド引き継いでそう いい感じにDB から取 り出してくれる
継承 委譲より強い結びつき Observer パターン 各アクションの呼び出 しを監視 機能の追加 Template Method パターン
実行順を子が制御 しなくて良い Facade パターン DB の制御を隠し 簡単なAPI を提供 デザパタを学んだ後の世界
情報量の増加による恩恵 OOP への 深い理解 01 創造性の 刺激 03 設計意図を 汲み取れる
02 情報が多いほど 学びになる。 コーディングに 迷いにくくなる。 OSS も読めるように 他者のコードから いくつもの新発見
OOP ・設計の理解に大きく貢献 不要だとは全く思わない
デザインパターンを学んで 見える世界を広げよう