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
About Strict Memoization
Search
kenkaton
October 24, 2019
Programming
0
440
About Strict Memoization
How to run Strict Memoization
kenkaton
October 24, 2019
Tweet
Share
More Decks by kenkaton
See All by kenkaton
When we should use stub and mock
kenkaton
0
300
How to manage data inconsistency
kenkaton
1
240
Other Decks in Programming
See All in Programming
Six and a half ridiculous things to do with Quarkus
hollycummins
0
140
Back to the Future: Let me tell you about the ACP protocol
terhechte
0
140
非同期jobをtransaction内で 呼ぶなよ!絶対に呼ぶなよ!
alstrocrack
0
610
複雑化したリポジトリをなんとかした話 pipenvからuvによるモノレポ構成への移行
satoshi256kbyte
1
990
なぜGoのジェネリクスはこの形なのか? Featherweight Goが明かす設計の核心
ryotaros
7
1.1k
SpecKitでどこまでできる? コストはどれくらい?
leveragestech
0
640
オープンソースソフトウェアへの解像度🔬
utam0k
11
2.3k
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
210
明日から始めるリファクタリング
ryounasso
0
130
Pythonスレッドとは結局何なのか? CPython実装から見るNoGIL時代の変化
curekoshimizu
5
1.7k
Cursorハンズオン実践!
eltociear
2
690
チームの境界をブチ抜いていけ
tokai235
0
140
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
27
2k
The World Runs on Bad Software
bkeepers
PRO
71
11k
Building Adaptive Systems
keathley
43
2.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Making Projects Easy
brettharned
119
6.4k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Scaling GitHub
holman
463
140k
A Tale of Four Properties
chriscoyier
160
23k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
54
3k
Transcript
Re:valua t ion https://fril.jp/ L ead & Delight User F
irst Ownership Fail Smart ϝϞԽΛݫີʹߦͬͯΈΔ͓
ࣗݾհ
!LFOLBUPO !LFOLBUPO ϥΫϚͰαʔόʔαΠυΛ த৺ʹΤϯδχΞͬͯΔຽ ࣗݾհ ͔ͱ͚Μ
ࣗݾհ ͏ͪΐͬ͜ͱ͚ͩৄࣗ͘͠ݾհ͢Δͱʜ
ࣗݾհ ɾֶੜ࣌ಓ͔ͨ͠͠هԱ͕ͳ͍ʑΛૹΓʜ
ࣗݾհ ৽ଔೖࣾͨ͠ձࣾͰʜ ɹɾञ͚ͷجװγεςϜΛ ɹɹɹӦۀ։ൃೲαϙʔτͳͲશ෦ͬͯΈͨΓ
ࣗݾհ γεςϜͷอकӡ༻͕ϝΠϯͷձࣾͰ ɹࣾγεςϜΛ։ൃͯ͠ΈͨΓ͔ͯ͠Βʜ
ࣗݾհ ݱࡏϥΫϚͰ ɹαʔόʔαΠυΤϯδχΞΛͯ͠ΔຽʹͳΓ·ͨ͠
ࣗݾհ͜ͷ͘Β͍ʹ͓͍ͯͯ͠
lϝϞԽzͷ
lϝϞԽzͱͳΜͧʁ
lϝϞԽzͱͳΜͧʁ ϝϞԽʢӳ.FNPJ[BUJPOʣͱɺ ϓϩάϥϜͷߴԽͷͨΊͷ࠷దԽٕ๏ͷҰछͰ͋Γɺ αϒϧʔνϯݺͼग़͠ͷ݁ՌΛޙͰ࠶ར༻͢ΔͨΊʹอ ࣋͠ɺͦͷαϒϧʔνϯʢؔʣͷݺͼग़͠ຖͷ࠶ܭࢉ Λ͙ख๏Ͱ͋Δɻ
lϝϞԽzͱͳΜͧʁ ʜͱ8JLJQFEJBʹॻ͍ͯ͋Γ·͕͢ 3VCZͰઆ໌͢Δͱ͜͏͍͏ͭ
lϝϞԽzͱͳΜͧʁ ϑΟϘφονྻΛྫʹ͢Δͱɺ7FSϝϞԽͯ͠ͳ͍ ʢ
ʜΈ͍ͨͳͷʣ
lϝϞԽzͱͳΜͧʁ 7FSϝϞԽͨ͠
lϝϞԽzͱͳΜͧʁ ϝϞԽͰͲΕ͘Β͍ޮՌಘΒΕΔͷʁ
lϝϞԽzͱͳΜͧʁ ̓ ̒ ̑ ̐ ̏ ̎ ̎
̏ ̑ ̐ ̍ ̎ ̍ ̏ ̎ ̎ ̍ ̐ ̏ ̎ ̎ ̏ ̍ ̎ ̍ 7FSϝϞԽͯ͠ͳ͍ʢOʣ
lϝϞԽzͱͳΜͧʁ ̓ ̒ ̑ ̐ ̏ ̎ ̎
̏ ̑ ̐ ̍ ̎ ̍ ̏ ̎ ̎ ̍ ̐ ̏ ̎ ̎ ̏ ̍ ̎ ̍ 7FSϝϞԽͨ͠ʢOʣ
lϝϞԽzͱͳΜͧʁ ͜Μͳײ͡Ͱ #FODINBSLೖΕͯ ಈ͔͢ͱʜ
lϝϞԽzͱͳΜͧʁ Oͷͱ͖ ɹϝϞԽ͍ͯ͠Δͱ ɹɹɹඵɹ ɹϝϞԽ͍ͯ͠ͳ͍ͱ ɹɹɹඵ ɹ
lϝϞԽzͱͳΜͧʁ Oͷͱ͖ ɹϝϞԽ͍ͯ͠Δͱ ɹɹɹඵɹ ɹϝϞԽ͍ͯ͠ͳ͍ͱ ɹɹɹඵ ɹ
lϝϞԽzͱͳΜͧʁ ͭ·Γ ʮ͋ΕɺͳΜ͔ແବͳܭࢉΊͬͪΌͯ͠ͳ͍ʁʯ ɹɹɹ͍ͬͯ͏࣌ʹϝϞԽͰղܾ͢Δ͜ͱʜ
lϝϞԽzͱͳΜͧʁ ͋Δ͚ΕͲʜ
lϝϞԽzͱͳΜͧʁ ࠓ͏ͪΐͬͱݫີʹϝϞԽͯ͠ΈΔ
͏ͪΐͬͱ͚ͩݫີͳϝϞԽ
͏ͪΐͬͱ͚ͩݫີͳϝϞԽ ྫ͑͜Μͳ࣌ʢJO3BJMTʣ ɾ"SUJDMFϞσϧ͕͋ͬͯ ɾͦͷ"SUJDMFʹؔ࿈͚͞Εͨ ɹɹDPNNFOUT͕͋Δ͔֬ೝ͍ͨ͠
͏ͪΐͬͱ͚ͩݫີͳϝϞԽ
͏ͪΐͬͱ͚ͩݫີͳϝϞԽ ͓͓ʔʂϝϞԽ͞Ε͍͍ͯͯײ͡ʔʂ
͏ͪΐͬͱ͚ͩݫີͳϝϞԽ ͔ͱࢥ͍͖ɺ͜Μͳ߹Ͳ͏Ͱ͠ΐ͏ʁ
͏ͪΐͬͱ͚ͩݫີͳϝϞԽ TFMGDPNNFOUTTJ[F͕GBMTFͷͱ͖ ɹ!IBT@DPNNFOUGBMTF ࠶IBT@DPNNFOU ϝιουΛݺͿͱʜ
͏ͪΐͬͱ͚ͩݫີͳϝϞԽ ͋ΕʜʜϝϞԽʜʜͰ͖ͯʜʜͳ͍ʜʜ
͏ͪΐͬͱ͚ͩݫີͳϝϞԽ ͍ɻ੯͍͚͠ΕͲɺग़དྷͯ·ͤΜͶɻ ɹɹͰɺͲ͏͢Εʜ
͏ͪΐͬͱ͚ͩݫີͳϝϞԽ
͏ͪΐͬͱ͚ͩݫີͳϝϞԽ
͏ͪΐͬͱ͚ͩݫີͳϝϞԽ EFGJOFE ϝιουͱ ɹ͕ࣜఆٛ͞Ε͍ͯͳ͚ΕɺِΛฦ͢ɻ ɹఆٛ͞Ε͍ͯΕࣜͷछผΛද͢จࣈྻΛฦ͢ɻ IUUQTEPDTSVCZMBOHPSHKBMBUFTUEPDTQFDGEFGIUNMEFGJOFE
͏ͪΐͬͱ͚ͩݫີͳϝϞԽ JSCͰ ɹͪΐͬͱ ɹɹ༡ΜͰΈΔ
͏ͪΐͬͱ͚ͩݫີͳϝϞԽ TFMGDPNNFOUTTJ[F͕GBMTFͰ ɹEFGJOFE !IBT@DPNNFOUlJOTUBODFWBSJBCMF
͏ͪΐͬͱ͚ͩݫີͳϝϞԽ ݫີͳϝϞԽɺͬͨͬͨʂʂ
͏ͪΐͬͱ͚ͩݫີͳϝϞԽ ิɿ"DUJWF3FDPSEͰRVFSZDBDIFಇͨ͘Ίɺ ɹϝϞԽͯ͠ޮՌബ͍͔
·ͱΊ ϝϞԽ·ͱΊ ɾαΫοͱಋೖͰ͖ͯޮՌൈ܈ ɾॏ͍ͨॲཧԿߦΘͳ͍Α͏ʹ ɹʢ֎෦αʔϏεͱ"1*࿈ܞ͍ͯ͠ΔΑ͏ͳʣ ɾͨͩ͠ɺϝϞϦΛͦͦ͜͜৯͏ͷͰ ɹΓ͗͢ʹ͝ҙΛ
None