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
ほりしょー
May 31, 2023
Technology
2
310
デザインパターンを学んだら世界が広がった話
「めぐろLT#3」にて発表
https://raksul.connpass.com/event/281666/
ほりしょー
May 31, 2023
Tweet
Share
More Decks by ほりしょー
See All by ほりしょー
開発プロセスを継続的に改善する仕組み作り ~ 強いスクラムをいかに維持するか ~
h0r15h0
0
78
ドメインイベント増えすぎ問題
h0r15h0
2
720
LLM(Copilot)を最大限活用するための取り組みとその副産物
h0r15h0
1
160
現実世界の事象から学ぶSOLID原則
h0r15h0
28
19k
集団意思決定の落とし穴と誰も望まない技術的負債
h0r15h0
1
4.9k
Goのパーサ作ってvscode拡張作ってみた!
h0r15h0
0
150
Other Decks in Technology
See All in Technology
In Praise of "Normal" Engineers (LDX3)
charity
2
1.1k
讓測試不再 BB! 從 BDD 到 CI/CD, 不靠人力也能 MVP
line_developers_tw
PRO
0
270
TODAY 看世界(?) 是我們在看扣啦!
line_developers_tw
PRO
0
280
OTFSG勉強会 / Introduction to the History of Delta Lake + Iceberg
databricksjapan
0
100
OCI Oracle Database Services新機能アップデート(2025/03-2025/05)
oracle4engineer
PRO
1
190
「実体」で築く共通認識: 開発現場のコミュニケーション最適化 / Let's Get on the Same Page with Concrete Artifacts: Optimization of Communication in dev teams
kazizi55
0
150
今からでも間に合う! 生成AI「RAG」再入門 / Re-introduction to RAG in Generative AI
hideakiaoyagi
1
190
JSX - 歴史を振り返り、⾯⽩がって、エモくなろう
pal4de
3
1k
BigQuery Remote FunctionでLooker Studioをインタラクティブ化
cuebic9bic
2
110
Create a Rails8 responsive app with Gemini and RubyLLM
palladius
0
130
QAはソフトウェアエンジニアリングを学んで実践するのが大事なの
ymty
1
480
活きてなかったデータを活かしてみた話 / Shirokane Kougyou vol 19
sansan_randd
1
380
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
39
1.8k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
We Have a Design System, Now What?
morganepeng
52
7.6k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
5.9k
Music & Morning Musume
bryan
46
6.6k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.8k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Building Adaptive Systems
keathley
43
2.6k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
16
930
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 ・設計の理解に大きく貢献 不要だとは全く思わない
デザインパターンを学んで 見える世界を広げよう