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
sardine_bird
November 04, 2021
Programming
0
290
デザインパターン勉強法
サポーターズ 秋の終わりのLT会での登壇に使用。
https://talent.supporterz.jp/events/d618540f-6eaa-4972-9a6a-9538d453ecf4/
sardine_bird
November 04, 2021
Tweet
Share
More Decks by sardine_bird
See All by sardine_bird
エンジニア面談自己紹介
sardine_bird
0
200
Linux初心者に3時間でLinuxを教えるときに考えたこと
sardine_bird
1
120
Dockerネットワーク入門
sardine_bird
1
71
Other Decks in Programming
See All in Programming
Namespace, What and Why
tagomoris
4
1.1k
TypeScriptの型とパフォーマンス (TSKaigi 2024)
ypresto
14
5.2k
Documentation testsの恩恵 / Documentation testing benefits
ssssota
1
570
Go製Webアプリケーションのエラーとの向き合い方大全、あるいはやっぱりスタックトレース欲しいやん / Kyoto.go #50
utgwkk
6
2k
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
13
4.4k
WinActorの勉強を継続する方法
tamai_63
0
130
ts-morphを使ってコードリプレイスとASTへのハードルを下げる!
nyawach
5
330
Deep Dive into React Stream/Serialize
mugi_uno
4
880
FoodGram
iseruuuuu
0
230
ソースコードを美しくたもつために ~コードレビューの認知限界を突破し、年間400リリースを達成する~
kotauchisunsun
1
790
『WordPressコミュニティで学ぶ』OSS貢献の多様性
ippey
0
290
CREってこういうこと? 体験入社 - 提案資料 - / what-is-cre-trial-employment
shinden
1
620
Featured
See All Featured
Making Projects Easy
brettharned
109
5.5k
Build your cross-platform service in a week with App Engine
jlugia
226
17k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
242
1.2M
The MySQL Ecosystem @ GitHub 2015
samlambert
244
12k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.7k
Imperfection Machines: The Place of Print at Facebook
scottboms
261
12k
jQuery: Nuts, Bolts and Bling
dougneiner
60
7.2k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
155
14k
Clear Off the Table
cherdarchuk
86
310k
Why Our Code Smells
bkeepers
PRO
331
56k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
18
7k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
22
1.4k
Transcript
デザインパターン勉強法 サポーターズ LT会 2021104 (ヘビク)イワシ
自己紹介 - 大学生 - 長期インターンでシステムエンジニアとして勤務中 - Python - 機械学習 -
業務自動化のための Webアプリ作成 - 大学の中でちょっとサーバ管理 - Linux - Docker - Apache - Python, Ruby, JavaScript, Cが書ける - プログラミング全般は始めてから1年半くらい - twitterによく生息 (ヘビク)イワシ twitter: @sardine_bird
デザインパターンとは - 様々なプログラムで再利用できる汎用的な設計パターン - 最も有名なものはGoF(The Gang Of Four) - GoFのデザインパターンは23種類
- Abstract Factory - Builder - Factory Method - Prototype - Singleton - Adapter - Bridge - Composite - Decorator - Facade - Flywight - Proxy - Chain of Responsibility - Command - Interpreter - Iterator - Mediator - Memento - Observer - State - Strategy - Template Method - Visitor
デザインパターンをなぜ学ぶのか - デザインパターンはエンジニア達がこれまでの設計の苦労を何度も繰り返さない (車輪の再発明をしない)ために考えられたもの - デザインパターンを知らずに設計をするのは、説明書を読まずに家具を組み立てて いるのと変わらない - 結論:楽をするために学ぶ
デザインパターン勉強法 書く、ひたすら書く。 デザインパターンに則ってコードを書きまくって身につけるしかない。 「身についた」=「設計をするときに自然と適切なパターンを使いこなせる」
デザインパターン勉強法 リファクタリング・グルーのデザインパターン https://refactoring.guru/design-patterns
デザインパターン勉強法 1. GitHubで”design patterns”を検索 a. https://github.com/search?q=design+patterns 2. 気に入ったリポジトリをfork 3. 自分が書きやすいように変更
a. https://github.com/sardine-bird/design-patterns-python 4. 毎日デザインパターンを実装する a. 1日1つで良いから続ける
デザインパターン勉強法 本も読もう 以下、個人的なおすすめ本