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
20220730[PHP]デザインパターン色々学んでみた
Search
kuma
July 30, 2022
Programming
0
130
20220730[PHP]デザインパターン色々学んでみた
kuma
July 30, 2022
Tweet
Share
More Decks by kuma
See All by kuma
エンジニアの輪スライド
kumainataku
0
240
20220227 可読性って大事
kumainataku
0
80
20220319[Laravel]想定外のN+1アラート
kumainataku
0
160
20211027_僕の転職活動の振り返り.pdf
kumainataku
0
110
オブジェクト指向(超基礎)
kumainataku
0
160
20210516 LT資料(PHP echo print)
kumainataku
0
54
20210425 LT会(基本情報技術者)
kumainataku
0
42
202104 読書LT会
kumainataku
0
190
Other Decks in Programming
See All in Programming
あなたとJIT, 今すぐアセンブ ル
sisshiki1969
0
490
Constant integer division faster than compiler-generated code
herumi
2
510
대규모 트래픽을 처리하는 프론트 개발자의 전략
maryang
0
120
あまり知られていない MCP 仕様たち / MCP specifications that aren’t widely known
ktr_0731
0
240
0から始めるモジュラーモノリス-クリーンなモノリスを目指して
sushi0120
0
250
React 使いじゃなくても知っておきたい教養としての React
oukayuka
18
5.4k
あのころの iPod を どうにか再生させたい
orumin
2
2.2k
書き捨てではなく継続開発可能なコードをAIコーディングエージェントで書くために意識していること
shuyakinjo
0
220
新しいモバイルアプリ勉強会(仮)について
uetyo
1
250
バイブコーディング超えてバイブデプロイ〜CloudflareMCPで実現する、未来のアプリケーションデリバリー〜
azukiazusa1
3
800
ZeroETLで始めるDynamoDBとS3の連携
afooooil
0
150
Amazon Q CLI開発で学んだAIコーディングツールの使い方
licux
3
180
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
GraphQLとの向き合い方2022年版
quramy
49
14k
KATA
mclloyd
32
14k
Thoughts on Productivity
jonyablonski
69
4.8k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
4 Signs Your Business is Dying
shpigford
184
22k
What's in a price? How to price your products and services
michaelherold
246
12k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Typedesign – Prime Four
hannesfritz
42
2.7k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Transcript
デザインパターンって何?を少し理解した 2022 / 7/ 30 クマ
自己紹介 • 名前 :稲熊琢椰(52画) • 出身 :名古屋出身 • 趣味 :ラーメン(半ばジロリアン)、甘いもの、テニス
• 実務経験:ちょうど1年 • 前職 :自動車部品の法人営業 • 使用言語:PHP(Laravel)、JavaScript(Vue) • 最近の目標 – サーバー周りいじれるようになること – 副業 – 新しい言語:副業で必要になりそうなやつを( TS, Go, Kotlin, etc…) – 副業のためにPCを購入…DELL Inspilon16を検討 • 現状:NEC製|CPU: Intel i5-8200Y(Passmarks 2262) |メモリ8GB P-01
目次 • 話すこと • やりたいこと • やったこと • 課題と今後の方針 •
おわりに P-01
話すこと P-01
話すこと • なぜデザインパターンだったのか • 何を使って学んだか • デザインパターンを学んでどうだったか – 学んでどうなったのか、実務で活かせたか •
自分の所感 – 今後の課題、活かし方 P-01
やりたいこと P-01
そもそもなぜデザインパターンだったのか 実務で進捗を出す一つのきっかけにしたかったから ➡藁にもすがる思いで学習開始 ※今のプロジェクトでは1クラスでたくさんの処理を書いてるなあ、 という点は気になっていた P-01
やったこと P-01
学習した書籍・サイト ①Java言語で学ぶ デザインパターン入門第3版 P-01 ②PHPによるデザインパター ン入門 https://shimooka.hateblo.jp/e ntry/20141211/1418298136
学習した内容 • 書籍の読み込み – そもそもデザインパターンって何?から始まったので概念理解 – 各パターンのインプット • サンプルコードでの実装 –
自分はPHPなので、サイトのサンプルコードを自分で書いて、各 クラスの役割と各パターンのメリットを理解 • 実務で使用 – 「テンプレートメソッドパターン」を使った処理の共通化を実際に 実務で使ってみた P-01
課題と今後の方針 P-01
課題 • 実際に学んだのは11/23個 – 本当は今月で終わる予定だった – メリットが理解できないパターンもよくあり具体的な利用シーンがイ メージできず苦戦 • 実務に取り入れられたのは1個だけ
– 他にも検討したが、使えそうなところが思い浮かばない • 実用レベルにインプットできていない – 上記同様、学習と実務が結びつかないジレンマ P-01
今後の方針 P-01 1. 引き続き学習 – 残りの12個は8月中に終了させる 1. 会社の上司の知見も借りながら、デザインパターンを使える ようなところ(リファクタできそうなところ)を見つける –
実際に使ってみないと自分のモノになっていない感が合って怖い 1. 少しづつリポジトリパターン学んでいく – ここは友人が 「デザインパターン➡リポジトリパターン➡DDDで学んだらプロジェ クト全体の中でのクラスの役割がよくわかるようになったからオスス メ」 と言っていたので、一旦は鵜呑みにしてみようかなという次第です
おわりに P-01
おわりに • オブジェクトのふるまい、構造、生成を意識するようになった 点はいい機会になった! – コード書いててオブジェクト指向を今まで以上に意識して書くように なったので、細々とコードには学習結果が表れている • まずはデザインパターンでの実装実績を5つほど作りたい –
使うパターンは限られるハズ。頻出パターンってあるんですかね? – 多くのエンジニアさんは意識せずに使っているケースが多いと推測 しています。。。 • 進捗出すためにデザインパターンに時間を費やすことが最適 解なのか? – オブジェクト指向の理解が進み、再利用性の高いクラスを書くこと を意識できるようになった P-01
ご清聴ありがとうございました。 遠慮なく、ご意見・アドバイス頂けますと 幸いです! P-01