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
Hiromi Hishida
March 30, 2019
Programming
3
6.5k
設計力を上げる!バリエーションの見極め術
Hiromi Hishida
March 30, 2019
Tweet
Share
More Decks by Hiromi Hishida
See All by Hiromi Hishida
PostgreSQLのRow Level SecurityをPHPのORMで扱う Eloquent vs Doctrine #phpcon #track2
77web
1
81
コード書くの好きな人向けAIコーディング活用tips #orestudy
77web
3
330
エンジニアのための 法規制への取り組み方 #healthtechmeetup
77web
6
2.4k
サービスクラスのありがたみを発見したときの思い出 #phpcon_odawara
77web
6
820
「それはhowなんよ〜」のガイドライン #orestudy
77web
9
2.7k
空が堕ち、大地が割れ、海が涸れた日~もしも愛用しているフレームワークが開発停止したら?~ #phperkaigi 2025
77web
2
1.3k
Beyond ORM
77web
11
2k
見せてあげますよ、「本物のLaravel批判」ってやつを。
77web
8
8.5k
DoctrineとPostgreSQLの便利な機能、どっちも諦めたくない!
77web
0
250
Other Decks in Programming
See All in Programming
Team topologies and the microservice architecture: a synergistic relationship
cer
PRO
0
920
都市をデータで見るってこういうこと PLATEAU属性情報入門
nokonoko1203
1
550
イベントストーミングから始めるドメイン駆動設計
jgeem
4
870
生成AIで日々のエラー調査を進めたい
yuyaabo
0
620
Bytecode Manipulation 으로 생산성 높이기
bigstark
2
360
Elixir で IoT 開発、 Nerves なら簡単にできる!?
pojiro
1
150
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
1
290
来たるべき 8.0 に備えて React 19 新機能と React Router 固有機能の取捨選択とすり合わせを考える
oukayuka
2
820
アンドパッドの Go 勉強会「 gopher 会」とその内容の紹介
andpad
0
250
XP, Testing and ninja testing
m_seki
2
120
今ならAmazon ECSのサービス間通信をどう選ぶか / Selection of ECS Interservice Communication 2025
tkikuc
11
2.8k
「ElixirでIoT!!」のこれまでとこれから
takasehideki
0
370
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
39
1.9k
Become a Pro
speakerdeck
PRO
28
5.4k
The Cult of Friendly URLs
andyhume
79
6.4k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.4k
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
How to Ace a Technical Interview
jacobian
277
23k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Transcript
ઃܭྗΛ্͛Δʂ όϦΤʔγϣϯͷݟۃΊज़ !XFC 1)1FS,BJHJEBZ
ɾ!XFC ɾϑϦʔϥϯεʢ͙Β͍ʣˠΧϧςοτίϛϡχέʔγϣϯζʢʣ ɾ໊ݹ ɾࣇͷ ɾຊ4ZNGPOZϢʔβʔձ ɾ$PEFS%PKP໊ݹॳνϟϯϐΦϯʢॾࣄ͋ͬͯҾୀʜʣ ɾ*—1)1
ɾӡ༻ܕࠂۀքΛϗϫΠτʹ͢ΔΈΛ࡞ͬͯ·͢ ɾؒืूதʂʢϑϧϦϞʔτɺύʔτλΠϜɺͪΖΜϑϧλΠϜਖ਼ࣾһܴʣ
͜ͷτʔΫͷత w όϦΤʔγϣϯͷൃੜݯͱൃੜύλʔϯ͕Θ͔Δ w όϦΤʔγϣϯ͔Βอޢ͍͢͠ίʔυΛॻͨ͘Ίʹඞཁͳͷ͕Θ͔Δ w όϦΤʔγϣϯ͔Βอޢ͍͢͠ίʔυΛॻͨ͘Ίʹඞཁͳͷͷ͍ํΛମݧ͢Δ
͜Μͳܦݧ͋Γ·ͤΜ͔ʁ ݱࡏͷফඅ੫ͩͧɻ ݹ͍จจ࣌ʹΑͬͯ ੫ࠐΈֹۚΛਖ਼͘͠ग़͢Α͏ʹɻ ΞΠΞΠαʔ JG PSEFS%BUFGPSNBU b:NE` \
SFUVSOQSJDF ^FMTFJG ʜ \ ʜ ^FMTF\ SFUVSOQSJDF ^ ͬͱɻ࣮ྃʂ
͑ͬʂ৯͚ͩ੫ҧ͏ͷʁ ࣮ΊΜͲ͍͘͞ͳʔɻ ͦ͏͍͏͜ͱ࠷ॳ͔Βݴͬͯ͘ΕΑʔʢྦʣ શ෦࡞Γͩ͠Αʔʢౖʣ ࠓˋʹ্͕Δ͔ΒରԠΑΖ͘͠ɻ Ͱ৯ͷ··Ͷɻ ͪͳΈʹ֎৯͔ͩΒͪΌΜͱ۠ผ͠ΖΑɻ
r!IJEFOPSJHPUP lόϦΤʔγϣϯ͔ΒίʔυΛอޢͤΑz
όϦΤʔγϣϯͱʁ
όϦΤʔγϣϯͱʁ w มԽɺมಈɺసͯ͡छྨ w ྫ͑ɿεϐʔΧʔ5γϟπͷαΠζ4 . - -- w ϓϩάϥϛϯάʹ͓͍ͯɺॲཧ͕ذ͢Δ͖͔͚ͬʹͳΔ
w ྫ͑ɿจ࣌ʹΑͬͯফඅ੫͕ҟͳΔ
ͳͥόϦΤʔγϣϯ͕ൃੜ͢ Δͷ͔ʁ
ͳͥόϦΤʔγϣϯ͕ൃੜ͢ Δͷ͔ʁ Ϗδωε͕มԽ͢Δ͔Β
ͭ·Γ όϦΤʔγϣϯͷൃੜݯʹϏδωεͷมԽ όϦΤʔγϣϯͷൃੜύλʔϯʹϏδωεͷมԽͷύλʔϯ
ϏδωεͷมԽͷύλʔϯΛݟۃΊΕɺόϦΤʔγϣϯ͕ݟۃΊΒΕΔ
ϏδωεͷมԽͷύλʔϯ
w ԣͷมԽ w ॎͷมԽ ϏδωεͷมԽͷύλʔϯ
ԣͷมԽ w ຊͱτΠϨοτϖʔύʔ w IUUQTKBXJLJQFEJBPSHXJLJ"NB[PODPN w ϙʔγϣϯͱϋΠϙʔγϣϯ w (PPHMF"ETͱ:BIPP4QPOTPSFE4FBSDI
ԣͷมԽͷ༧ଌ w ಉछͷผͷͷΛѻ͏͜ͱͳ͍͔ʁ૾͢Δ w ಉۀଞࣾͱऔҾ͢Δ͜ͱͳ͍͔ʁ૾͢Δ
ॎͷมԽ w ໌࣏ˠେਖ਼ˠতˠฏˠʁ w ফඅ੫ˠˠˠˠʁ
ॎͷมԽͷ༧ଌ w աڈͷྺ࢙͔Β૾͢Δ w ೋ͋Δ͜ͱࡾ͋Δ w ଞࠃͷઌߦࣄྫ͔Β૾͢Δ w ࠃͷ੍๏Λѻ͏߹
ͭ·Γɺ૾ྗ͕ඞཁ
͜͜·Ͱͷ·ͱΊ w όϦΤʔγϣϯͷൃੜݯͱൃੜύλʔϯ͕Θ͔Δ✔ w ൃੜݯϏδωεͷมԽ w ൃੜύλʔϯϏδωεͷมԽͷύλʔϯʢॎ·ͨԣʣ w όϦΤʔγϣϯ͔Βอޢ͍͢͠ίʔυΛॻͨ͘Ίʹඞཁͳͷ͕Θ͔Δ✔ w
มԽͷύλʔϯΛ༧ଌ͢ΔͨΊͷɺ૾ྗ w όϦΤʔγϣϯ͔Βอޢ͍͢͠ίʔυΛॻͨ͘Ίʹඞཁͳͷͷ͍ํΛମݧ͢Δ
݅ذېࢭΪϓε
݅ذېࢭΪϓε
݅ذېࢭΪϓε όϦΤʔγϣϯͬΆ͍ͷ͕ݱΕͨͱ͖ʹ ҆қʹ݅ذΛͤͣʹ Ұาཱͪࢭ·ͬͯ ࠓޙͷมԽͷύλʔϯΛ૾͢Δ
օ͞ΜΪϓε͚ͭ·͔ͨ͠ʁ ҰॹʹͬͯΈ·͠ΐ͏
ྫྐྵ ʮ݄͔Βݩ߸͕มΘΔ͡ΌΜɺ݄Ҏ߱ͷٻॻʹ৽͍͠ݩ߸Ͱग़ͯ͠Α Ͷʯ
ྫྐྵ ѱ͍ྫ JG EBUFGPSNBU b:NE` \ SFUVSObত` ^FMTFJG EBUFGPSNBU
b:NE` \ SFUVSObฏ` ^FMTF\ SFUVSObʢԾʣ৽ݩ߸` ^ ࠓޙมԽͦ͠͏ͳͱ͜Ζͳ͍ ͔ʁ
ྫྐྵ ྑ͍ྫ SFUVSOXBSFLJ1SPWJEFS3FTPMWFSSFTPMWF EBUB QSPWJEF তPSฏPSʜ
ྫۀऀͷૹྉ ʮࠓ·ͰϠϚτ͚ͩͩͬͨΜ͚ͩͲɺࠓࠤͱܖ͢Δ͜ͱʹͨ͠ΜͩΑͶʔɻ αΠζͷͦΕͧΕͷૹྉࣗಈͰग़ͯ͠ʯ
ྫۀऀͷૹྉ ѱ͍ྫ JG EFMJWFSZ.FUIPEbTBHBXB` \ SFUVSOTBHBXB'FF5BCMF<`TJ[F`> ^FMTF\ SFUVSOZBNBUP'FF5BCMF<bTJ[F`> ^ ࠓޙมԽͦ͠͏ͳͱ͜Ζͳ͍
͔ʁ
ྑ͍ྫ SFUVSOEFMJWFSZ'FF5BCMF3FTPMWFSSFTPMWF EFMJWFSZ.FUIPE HFU'FF'PS4J[F bTJ[F` ྫۀऀͷૹྉ
ྫ࠙ձͷҿΈ ʮ࠙ձҿΈ์ͩΑɻେਓΞϧίʔϧͱιϑτυϦϯΫɺະιϑτυϦϯ ΫͷΈɻ֤ࢀՃऀʹͲͬͪͷυϦϯΫνέοτΛ͍͍͔ͤɺ͍͍ײ͡ʹ࣮ΑΖ͠ ͘ʯ
ྫ࠙ձͷҿΈ JG QBSUJDJQBOUJT"EVMU \ SFUVSOb#FFS5JDLFU` ^FMTF\ SFUVSOb+VJDF5JDLFU` ^ ࠓޙมԽͦ͠͏ͳͱ͜Ζͳ͍ ͔ʁ
ྫ࠙ձͷҿΈ JG QBSUJDJQBOUJT"EVMU \ SFUVSOb#FFS5JDLFU` ^FMTF\ SFUVSOb+VJDF5JDLFU` ^ ࠓޙมԽͦ͠͏ͳͱ͜Ζͳ͍ ͔ʁ
ͨͩ͠ɺۀࣝΛΘͳ͍૾ྗɺໝྗͱԽ͢͜ͱ͕͋ΔͷͰཁҙ
·ͱΊ w όϦΤʔγϣϯͷൃੜݯͱൃੜύλʔϯ͕Θ͔Δ✔ w ൃੜݯϏδωεͷมԽ w ൃੜύλʔϯϏδωεͷมԽͷύλʔϯʢॎ·ͨԣʣ w όϦΤʔγϣϯ͔Βอޢ͍͢͠ίʔυΛॻͨ͘Ίʹඞཁͳͷ͕Θ͔Δ✔ w
มԽͷύλʔϯΛ༧ଌ͢Δʢ૾ྗʣ w όϦΤʔγϣϯ͔Βอޢ͍͢͠ίʔυΛॻͨ͘Ίʹඞཁͳͷͷ͍ํΛମݧ͢Δ✔ w ݅ذېࢭΪϓε
5IBOLZPV