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
pattern
Search
kanayannet
December 07, 2019
Programming
0
240
pattern
kanayannet
December 07, 2019
Tweet
Share
More Decks by kanayannet
See All by kanayannet
TDDと今まで
kanayannet
0
200
個人開発 稼げなくてもいいアプリ
kanayannet
0
320
システムの堅牢性
kanayannet
0
160
Agile的学習方法
kanayannet
0
180
GUIをエンジニアが考える
kanayannet
0
150
http2http3
kanayannet
0
130
old typeからのクラウドインフラ
kanayannet
0
280
疎結合と認知
kanayannet
0
300
クリーンアーキテクチャを活かす考察
kanayannet
1
180
Other Decks in Programming
See All in Programming
AWS CDKコントリビュートTIPS / aws-cdk-contribution-tips
gotok365
4
480
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
12
4.2k
禅の心を手に入れよ
eltociear
1
420
Git Rebase
bkuhlmann
11
1.6k
Azure OpenAI Serviceのプロンプトエンジニアリング入門
tomokusaba
3
930
CDKコントリビュートの最初の壁を越えよう! -簡単issueの見つけ方-
badmintoncryer
3
300
Open AI APIを使う前に知っておきたいアカウントTier の話
akki_megane
0
100
PHPはいつから死んでいるかの調査
chiroruxx
2
420
障害対応を起点としたもっといい開発と運用のサイクル作りのためにできること / Hatena Enginner Seminar #29
polamjag
0
410
Scalable Customer Journey Orchestration (CJO)
lewuathe
0
450
Apache Hive 4 on Treasure Data
ryukobayashi
1
450
Ruby GitHub Packages
bkuhlmann
0
650
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
79
44k
Scaling GitHub
holman
457
140k
How to name files
jennybc
65
93k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
0
36
Making Projects Easy
brettharned
109
5.5k
No one is an island. Learnings from fostering a developers community.
thoeni
16
2.1k
Gamification - CAS2011
davidbonilla
77
4.6k
Testing 201, or: Great Expectations
jmmastey
30
6.4k
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
22
1.6k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
66
14k
Designing for Performance
lara
601
67k
Transcript
XX パターン XX パターン Gunma.web #37 @kanayannet
⾊んなパターンありますよね ⾊んなパターンありますよね デザインパターン
今⽇はこんなパターンをやります。 今⽇はこんなパターンをやります。 アントワネットパターン ほととぎすパターン アズナブルパターン
アントワネットパターン アントワネットパターン
マリー・アントワネット マリー・アントワネット
パンがないなら パンがないなら お菓⼦を⾷べればいいじゃない お菓⼦を⾷べればいいじゃない
つまり つまり
xx が xxx なら xx じゃない xx が xxx なら
xx じゃない というパターン
その1 その1 while(true){ break; }
無限ループは break すればいいじゃな 無限ループは break すればいいじゃな い い
その2 その2 try{ // 落 ? etc(); }catch(e){ // 握
潰 }
None
エラーなんて握り潰せばいいじゃない エラーなんて握り潰せばいいじゃない
多⽤は要注意 多⽤は要注意
ほととぎすパターン ほととぎすパターン
鳴かぬなら鳴かせてみせようホトトギス 鳴かぬなら鳴かせてみせようホトトギス
その 1 その 1
ハングって Ctrl + C も効かない ハングって Ctrl + C も効かない
落ちぬなら KILL してしまえホトトギス 落ちぬなら KILL してしまえホトトギス
アンチパターン アンチパターン while(true){ // 無限 }
落ちるまで待とうホトトギス 落ちるまで待とうホトトギス
待っても落ちないですから ! 待っても落ちないですから !
アズナブルパターン アズナブルパターン
シャア・アズナブル シャア・アズナブル
その1 その1 function main(){ //.....1万行以上 return; }
None
その2 その2 # 終 sleep(10); exit;
なぞの wait 10 なぞの wait 10
きわめつけ きわめつけ // 3倍早 ? char aznable = '';
⾚くもないし早くもないから! ⾚くもないし早くもないから!
お粗末様でした! お粗末様でした!