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
350
デザインパターン勉強法
サポーターズ 秋の終わりの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
250
Linux初心者に3時間でLinuxを教えるときに考えたこと
sardine_bird
1
130
Dockerネットワーク入門
sardine_bird
1
83
Other Decks in Programming
See All in Programming
データの整合性を保つ非同期処理アーキテクチャパターン / Async Architecture Patterns
mokuo
41
15k
最近のVS Codeで気になるニュース 2025/01
74th
1
250
なぜイベント駆動が必要なのか - CQRS/ESで解く複雑系システムの課題 -
j5ik2o
7
2.5k
Pulsar2 を雰囲気で使ってみよう
anoken
0
230
技術を根付かせる / How to make technology take root
kubode
1
240
Introduction to kotlinx.rpc
arawn
0
630
[Fin-JAWS 第38回 ~re:Invent 2024 金融re:Cap~]FaultInjectionServiceアップデート@pre:Invent2024
shintaro_fukatsu
0
400
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
110
『GO』アプリ バックエンドサーバのコスト削減
mot_techtalk
0
130
富山発の個人開発サービスで日本中の学校の業務を改善した話
krpk1900
4
370
知られざるDMMデータエンジニアの生態 〜かつてツチノコと呼ばれし者〜
takaha4k
4
1.3k
SRE、開発、QAが協業して挑んだリリースプロセス改革@SRE Kaigi 2025
nealle
3
4.1k
Featured
See All Featured
Visualization
eitanlees
146
15k
A better future with KSS
kneath
238
17k
Code Review Best Practice
trishagee
66
17k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Adopting Sorbet at Scale
ufuk
74
9.2k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
A Tale of Four Properties
chriscoyier
158
23k
Docker and Python
trallard
44
3.3k
BBQ
matthewcrist
86
9.5k
The Invisible Side of Design
smashingmag
299
50k
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つで良いから続ける
デザインパターン勉強法 本も読もう 以下、個人的なおすすめ本