Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
How to manage data inconsistency
Search
kenkaton
January 29, 2020
Programming
260
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
How to manage data inconsistency
kenkaton
January 29, 2020
More Decks by kenkaton
See All by kenkaton
When we should use stub and mock
kenkaton
0
310
About Strict Memoization
kenkaton
0
480
Other Decks in Programming
See All in Programming
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
460
残高管理から台帳サービスへの進化
artoy
0
160
SalesForceを内製化!? ~ HR事業を支える顧客管理基盤のインフラを大公開 ~
oku053
0
140
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Rails World 2026, Austin, Texas
marcoroth
0
190
Heart of Swift Concurrency
koher
0
1.2k
AI時代のコードレビューは人に向けるな、仕組みに向けろ
texmeijin
5
3.5k
wkhtmltopdfの次どうするか問題2026
willnet
2
1.9k
Verilogで学ぶCPU自作入門.pdf
uyuki234
8
4k
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
34
15k
mrbgem 三角測量 開発
ogom
0
200
外から家のPCの電源入れたい!をPHPで解決する
kawashimo0
1
110
20260914 AIエージェント時代のPlatform Engineering LLM基盤とプロダクトの責務境界線
kanfab1
7
2.4k
Featured
See All Featured
Music & Morning Musume
bryan
48
7.4k
WCS-LA-2024
lcolladotor
0
850
A better future with KSS
kneath
240
18k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
The Language of Interfaces
destraynor
162
27k
Context Engineering - Making Every Token Count
addyosmani
9
1.2k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
390
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
The Spectacular Lies of Maps
axbom
PRO
1
1.1k
The browser strikes back
jonoalderson
0
1.8k
Scaling GitHub
holman
464
140k
Transcript
Re:valua t ion https://fril.jp/ L ead & Delight User F
irst Ownership Fail Smart σʔλෆ߹ͱͷઓ͍
ࣗݾհ
!LFOLBUPO !LFOLBUPO ϥΫϚͰαʔόʔαΠυΛ த৺ʹΤϯδχΞͬͯΔຽ ࣗݾհ ͔ͱ͚Μ
ࣗݾհ ɾֶੜ࣌ ɹɹɹಓ͔ͨ͠͠هԱ͕ͳ͍ʑΛૹ͍͕ͬͯͨʜ
ࣗݾհ ɾͳ͔ͥͪΌ͔ͬΓͱ ɹɹɹɹอ݈ମҭͷڭһ໔ڐ͚ͩऔಘͯ͠ʜ
ࣗݾհ ɾؾ͍ͨΒ*5ۀքͰXFCΤϯδχΞΛ͍ͯͨ͠
ࣗݾհ͜ͷ͘Β͍ʹ͓͍ͯͯ͠
σʔλෆ߹ͱͷઓ͍
ࠓ͢͜ͱ w σʔλෆ߹ͷى͜Γͦ͏ͳέʔε w σʔλෆ߹Λम෮͢Δ w 8SJUF3FQBJS w
"TZODISPOPVT3FQBJS w ͓ΘΓʹ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε όοΫΤϯυ ϑϩϯτΤϯυ %# αʔϏε" αʔϏε#
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε όοΫΤϯυ ϑϩϯτΤϯυ %# αʔϏε" αʔϏε# /8Τϥʔ͡Όᶃ
ᶃ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε όοΫΤϯυ ϑϩϯτΤϯυ %# αʔϏε" αʔϏε# /8Τϥʔ͡Όᶃᶄ
ᶃ ᶄ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε όοΫΤϯυ ϑϩϯτΤϯυ %# αʔϏε" αʔϏε# /8Τϥʔ͡Όᶃᶄ
ᶃ ᶄ %#Τϥʔ͡Όᶅ ᶅ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε όοΫΤϯυ ϑϩϯτΤϯυ %# αʔϏε" αʔϏε# /8Τϥʔ͡Όᶃᶄᶆ
ᶃ ᶄ %#Τϥʔ͡Όᶅ ᶅ ᶆ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε όοΫΤϯυ ϑϩϯτΤϯυ %# αʔϏε" αʔϏε# /8Τϥʔ͡Όᶃᶄᶆᶇ
ᶃ ᶄ %#Τϥʔ͡Όᶅ ᶅ ᶆ ᶇ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε όοΫΤϯυ ϑϩϯτΤϯυ %# αʔϏε" αʔϏε# /8Τϥʔ͡Όᶃᶄᶆᶇᶈ
ᶃ ᶄ %#Τϥʔ͡Όᶅ ᶅ ᶆ ᶇ ᶈ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε όοΫΤϯυ ϑϩϯτΤϯυ %# αʔϏε" αʔϏε# /8Τϥʔ͡Όᶃᶄᶆᶇᶈ
ᶃ ᶄ %#Τϥʔ͡Όᶅ ᶅ ᶆ ᶇ ᶈ ॻ͖ࠐΈ͕ޭ͍ͯ͠Δͷʹࣦഊʂʁ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε Ϣʔβʔେࠞཚͷঢ়گΛ࡞Δ͜ͱʹޭ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε ͏ͪΐ͍ෳࡶͳͷʜ όοΫΤϯυ ϑϩϯτΤϯυ %#ᶄ αʔϏε" αʔϏε#
%#ᶃ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε ͏ͪΐ͍ෳࡶͳͷʜ όοΫΤϯυ ϑϩϯτΤϯυ %#ᶄ αʔϏε" αʔϏε#
%#ᶃ ᶃ /8Τϥʔ͡Όᶃ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε ͏ͪΐ͍ෳࡶͳͷʜ όοΫΤϯυ ϑϩϯτΤϯυ %#ᶄ αʔϏε" αʔϏε#
%#ᶃ ᶃ /8Τϥʔ͡Όᶃ ᶄ %#Τϥʔ͡Όᶄ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε ͏ͪΐ͍ෳࡶͳͷʜ όοΫΤϯυ ϑϩϯτΤϯυ %#ᶄ αʔϏε" αʔϏε#
%#ᶃ ᶃ /8Τϥʔ͡Όᶃᶅ ᶄ %#Τϥʔ͡Όᶄ ᶅ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε ͏ͪΐ͍ෳࡶͳͷʜ όοΫΤϯυ ϑϩϯτΤϯυ %#ᶄ αʔϏε" αʔϏε#
%#ᶃ ᶃ /8Τϥʔ͡Όᶃᶅ ᶄ %#Τϥʔ͡Όᶄᶆ ᶅ ᶆ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε ͏ͪΐ͍ෳࡶͳͷʜ όοΫΤϯυ ϑϩϯτΤϯυ %#ᶄ αʔϏε" αʔϏε#
%#ᶃ ᶃ /8Τϥʔ͡Όᶃᶅᶇ ᶄ %#Τϥʔ͡Όᶄᶆ ᶅ ᶆ ᶇ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε ͏ͪΐ͍ෳࡶͳͷʜ όοΫΤϯυ ϑϩϯτΤϯυ %#ᶄ αʔϏε" αʔϏε#
%#ᶃ ᶃ /8Τϥʔ͡Όᶃᶅᶇᶈ ᶄ %#Τϥʔ͡Όᶄᶆ ᶅ ᶆ ᶇ ᶈ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε ͏ͪΐ͍ෳࡶͳͷʜ όοΫΤϯυ ϑϩϯτΤϯυ %#ᶄ αʔϏε" αʔϏε#
%#ᶃ ᶃ /8Τϥʔ͡Όᶃᶅᶇᶈᶉ ᶄ %#Τϥʔ͡Όᶄᶆ ᶅ ᶆ ᶇ ᶈ ᶉ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε ͏ͪΐ͍ෳࡶͳͷʜ όοΫΤϯυ ϑϩϯτΤϯυ αʔϏε" αʔϏε# ᶃ
/8Τϥʔ͡Όᶃᶅᶇᶈᶉᶊ ᶄ %#Τϥʔ͡Όᶄᶆ ᶅ ᶆ ᶇ ᶈ ᶉ ᶊ %#ᶃ %#ᶄ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε ͏ͪΐ͍ෳࡶͳͷʜ όοΫΤϯυ ϑϩϯτΤϯυ αʔϏε" αʔϏε# ᶃ
/8Τϥʔ͡Όᶃᶅᶇᶈᶉᶊ ᶄ %#Τϥʔ͡Όᶄᶆ ᶅ ᶆ ᶇ ᶈ ᶉ ᶊ %#ᶃ %#ᶄ ᶅᶆᶇ%#ᶃʹॻ͖ࠐΈޭˍ%#ᶄະॻ͖ࠐΈ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε ͍ɺݟࣄʹσʔλෆ߹ͷͰ͢
ࠓ͢͜ͱ w σʔλෆ߹ͷى͜Γͦ͏ͳέʔε w σʔλෆ߹Λम෮͢Δ w 8SJUF3FQBJS w
"TZODISPOPVT3FQBJS w ͓ΘΓʹ
σʔλෆ߹Λम෮͢Δ
σʔλෆ߹Λम෮͢Δ w 8SJUF3FQBJS w ϦτϥΠ w ଟॏϦΫΤετͱಉҰੑ w
*EFNQPUFOU3FRVFTUT w τϥϯβΫγϣϯͷঢ়ଶཧ w "TZODISPOPVT3FQBJS w σʔλڝ߹ͷճආ
σʔλෆ߹Λम෮͢Δ w 8SJUF3FQBJS w ϦτϥΠ w ଟॏϦΫΤετͱಉҰੑ w
*EFNQPUFOU3FRVFTUT w τϥϯβΫγϣϯͷঢ়ଶཧ w "TZODISPOPVT3FQBJS w σʔλڝ߹ͷճආ
σʔλෆ߹Λम෮͢Δ w 8SJUF3FQBJS w ϦτϥΠ w ଟॏϦΫΤετͱಉҰੑ w
*EFNQPUFOU3FRVFTUT w τϥϯβΫγϣϯͷঢ়ଶཧ w "TZODISPOPVT3FQBJS w σʔλڝ߹ͷճආ
σʔλෆ߹Λम෮͢ΔʢϦτϥΠʣ όοΫΤϯυ ϑϩϯτΤϯυ %#ᶄ αʔϏε" αʔϏε# %#ᶃ ॲཧʹࣦഊͨ͠ͷͳΒɺ"1*ϦΫΤετΛϦτϥΠͯ͠ΈΔͷ͡Ό
˞ͨͩ͠ɺΫϥΠΞϯτΤϥʔͷΑ͏ͳɺ ɹɹɹͦͦϦΫΤετࣗମ͕ޡ͍ͬͯΔ߹ແҙຯͳͷͰҙ
σʔλෆ߹Λम෮͢ΔʢϦτϥΠʣ SFUSZɺ SFTDVFઅͰCFHJOࣜΛ ͡Ί͔Β͏Ұ࣮ߦ͢Δͷʹ ༻͢Δͷ͡Ό IUUQTEPDTSVCZMBOHPSHKBMBUFTUEPDTQFDGDPOUSPMIUNMSFUSZ
σʔλෆ߹Λम෮͢ΔʢϦτϥΠʣ ͋ΕɺͰ%#ͷॻ͖ࠐΈޭͯ͠Δ͚Ͳ Ϩεϙϯε͚ͩਖ਼ৗʹฦ͖ͬͯͯͳ͍߹͋ΔΑͶʜ
σʔλෆ߹ͷى͜Γͦ͏ͳέʔε ͏ͪΐ͍ෳࡶͳͷʜ όοΫΤϯυ ϑϩϯτΤϯυ αʔϏε" αʔϏε# ᶃ
/8Τϥʔ͡Όᶃᶅᶇᶈᶉᶊ ᶄ %#Τϥʔ͡Όᶄᶆ ᶅ ᶆ ᶇ ᶈ ᶉ ᶊ %#ᶃ %#ᶄ
σʔλෆ߹Λम෮͢ΔʢଟॏϦΫΤετͱಉҰੑʣ όοΫΤϯυ ϑϩϯτΤϯυ %#ᶄ αʔϏε" αʔϏε# %#ᶃ ޭͷϨεϙϯε͕ฦͬͯ͜ͳ͍߹Ͱɺ
ϦτϥΠʹΑͬͯσʔλ͕ෳ࡞͞ΕΔՄೳੑʜ
σʔλෆ߹Λम෮͢ΔʢଟॏϦΫΤετͱಉҰੑʣ ෳͷಉҰσʔλ͕࡞ΒΕΔ͔͠Εͳ͍ͱ͍͏͜ͱʜ ɹྫ͑ɺଟॏܾࡁ͕ߦΘΕͯ͠·͏ʜʂʂʂ ਂࠁͳຄൃʂlϦτϥΠzΊͬͪΌ͐ͭʂʂʂ
σʔλෆ߹Λम෮͢ΔʢଟॏϦΫΤετͱಉҰੑʣ ͱɺͳΒͳ͍ΜͰ͢ΑͶʔX ͦ͜Ͱग़ͯ͘Δͷ͕
σʔλෆ߹Λम෮͢Δ w 8SJUF3FQBJS w ϦτϥΠ w ଟॏϦΫΤετͱಉҰੑ w
*EFNQPUFOU3FRVFTUT w τϥϯβΫγϣϯͷঢ়ଶཧ w "TZODISPOPVT3FQBJS w σʔλڝ߹ͷճආ
σʔλෆ߹Λम෮͢Δʢ*EFNQPUFOU3FRVFTUTʣ *EFNQPUFOUͱ ɹႈੑ ͖ͱ͏͍ͤ ͷ͜ͱ ႈੑͱ ɹಉ͡ૢ࡞ΛԿ܁Γฦͯ͠ɺಉ݁͡Ռ͕ಘΒΕΔ ΄΄͒ʔ
σʔλෆ߹Λम෮͢Δʢ*EFNQPUFOU3FRVFTUTʣ ͭ·Γ*EFNQPUFOU3FRVFTUTͱ ͋ΔϦΫΤετΛԿճϦτϥΠͯ͠ɺৗʹ݁ՌҰॹʂ
σʔλෆ߹Λम෮͢Δʢ*EFNQPUFOU3FRVFTUTʣ ͭ·Γ*EFNQPUFOU3FRVFTUTͱ ͋ΔϦΫΤετΛԿճϦτϥΠͯ͠ɺৗʹ݁ՌҰॹʂ ͍ɺ͜Ε༏উͰ͢
σʔλෆ߹Λम෮͢Δʢ*EFNQPUFOU3FRVFTUTʣ *EFNQPUFOU3FRVFTUTʹ͍ͭͯ ɾΫϥΠΞϯτ͕ϢʔβͷೖྗΛͱʹ*EFNQPUFODZ,FZΛੜ ɾαʔό*EFNQPUFODZ,FZͰطଘͷσʔλͱॏෳ͠ͳ͍͔֬ೝ ɾಉҰͷ*EFNQPUFODZ,FZ͕ͳ͍߹৽ن࡞ɺ ɹɹಉҰͷͷ͕͋Δ߹σʔλ࡞͕ޭͷϨεϙϯεΛฦ͢
σʔλෆ߹Λम෮͢Δ w 8SJUF3FQBJS w ϦτϥΠ w ଟॏϦΫΤετͱಉҰੑ w
*EFNQPUFOU3FRVFTUT w τϥϯβΫγϣϯͷঢ়ଶཧ w "TZODISPOPVT3FQBJS w σʔλڝ߹ͷճආ
σʔλෆ߹Λम෮͢ΔʢτϥϯβΫγϣϯͷঢ়ଶཧʣ ͰੈͷதͷγεςϜ ɹͦΜͳʹ୯७͡Όͳ͍͜ͱ͕ଟ͍ͷ͡Ό ɹɹɹྫ͑ʜ ͱ΄΄
σʔλෆ߹Λम෮͢ΔʢτϥϯβΫγϣϯͷঢ়ଶཧʣ όοΫΤϯυ ϑϩϯτΤϯυ αʔϏε" αʔϏε# %#ᶃ %#ᶄ ֎෦"1*
%#ᶅ
σʔλෆ߹Λम෮͢ΔʢτϥϯβΫγϣϯͷঢ়ଶཧʣ ɾόοΫΤϯυႈੑΛ୲อ͢Δ࣮͕ඞཁ ɾҰॲཧશ͕ͯҰτϥϯβΫγϣϯͰ ɹɹྃͤ͞ΒΕΕ͍͍͕ݱ࣮తͳ࣮Ͱͳ͍
σʔλෆ߹Λम෮͢ΔʢτϥϯβΫγϣϯͷঢ়ଶཧʣ όοΫΤϯυ ϑϩϯτΤϯυ αʔϏε" αʔϏε# %#ᶃ %#ᶄ ֎෦"1*
%#ᶅ ˋ ˋ ˋ ʷʷ ͘Β͍
σʔλෆ߹Λम෮͢ΔʢτϥϯβΫγϣϯͷঢ়ଶཧʣ ղܾࡦͱͯ͠ʜ ɾτϥϯβΫγϣϯΛΑΓཻͷࡉ͔͍୯Ґʹׂ ɾͦΕʹ߹ΘͤͯϦτϥΠͷ୯Ґׂ ɾͲͷॲཧ·ͰਐΜͩͷ͔ஈ֊తʹཧͰ͖Δʂ
σʔλෆ߹Λम෮͢ΔʢτϥϯβΫγϣϯͷঢ়ଶཧʣ όοΫΤϯυ ϑϩϯτΤϯυ αʔϏε" αʔϏε# %#ᶃ %#ᶄ ֎෦"1*
%#ᶅ ˋ ˋ ˋ ʷʷ ͘Β͍
σʔλෆ߹Λम෮͢Δ w 8SJUF3FQBJS w ϦτϥΠ w ଟॏϦΫΤετͱಉҰੑ w
*EFNQPUFOU3FRVFTUT w τϥϯβΫγϣϯͷঢ়ଶཧ w "TZODISPOPVT3FQBJS w σʔλڝ߹ͷճආ
σʔλෆ߹Λम෮͢Δʢ"TZODISPOPVT3FQBJSʣ "TZODISPOPVTͱඇಉظͰ͋Δ ͭ·Γɺ ɾϦτϥΠΊͬͪΌ͚ͨ͠Ͳࠓແཧʂ ɾ͏ϦτϥΠͯ͠ҙຯͳ͍ͱݴΘΕ͔ͨΒ์ஔதʂ ͳॲཧΛޙ͔Βσʔλमਖ਼͢Δͷ͡Ό ͖ͬ͞τϥϯβΫγϣϯΛஈ֊తʹߦ͑ΔΑ͏ʹ͔ͨ͠Βͷ
σʔλෆ߹Λम෮͢Δʢ"TZODISPOPVT3FQBJSʣ όοΫΤϯυ ϑϩϯτΤϯυ αʔϏε" αʔϏε# %#ᶃ %#ᶄ ֎෦"1*
%#ᶅ ඇಉظ࣮ߦʹ ɾ"DUJWF+PC ɾ4JEFLJRͳͲ͏
σʔλෆ߹Λम෮͢Δʢσʔλڝ߹ͷճආʣ ҙ ɾඇಉظͰߦ͏ॲཧͱɺγεςϜͷϝΠϯͷ ɹॲཧͰσʔλ͕ڝ߹͠ͳ͍Α͏ʹ͢Δ ɾόονॲཧ͕ෳճॲཧΛͯ͠େৎͳΑ͏ʹ͢Δ ɹͬͱ͍͑ɺόον͕ෳಉ࣮࣌ߦͷ߹Ͱʜ
σʔλෆ߹Λम෮͢Δʢσʔλڝ߹ͷճආʣ ͳͥͳΒʜ $MPVE4DIFEVMFSͷυΩϡϝϯτ Ͳͷ࣌Λͱͬͯಉ͡δϣϒͷෳΠϯελϯε͕ಉ࣌ʹ࣮ߦ͞Εͳ͍Α͏ʹ͍ͯͩ͘͠͞ɻ·ͨɺ$MPVE4DIFEVMFS ɺʮগͳ͘ͱճʯΛجຊʹॲཧΛߦ͏Α͏ઃܭ͞Ε͍ͯ·͢ɻͭ·Γɺδϣϒ͕εέδϡʔϧ͞ΕΔͱɺ$MPVE 4DIFEVMFSͦͷδϣϒͷϦΫΤετΛগͳ͘ͱճૹ৴͠·͢ɻ·Εʹɺಉ͡δϣϒͷෳͷΠϯελϯε͕ϦΫ Τετ͞ΕΔՄೳੑ͕͋Γ·͢ɻ͜ͷͨΊϦΫΤετϋϯυϥ͖Ͱ͋Δඞཁ͕͋Γ·͢ɻ·ͨίʔυΛهड़͢Δࡍ ɺ͜ͷΑ͏ͳঢ়ଶ͕ൃੜͨ͠߹ʹ༗ͳ෭࡞༻͕ൃੜ͠ͳ͍Α͏ʹ͢Δඞཁ͕͋Γ·͢ɻ
ͱ͍͏͜ͱΒ͍͠ ͏Ή
ࠓ͢͜ͱ w σʔλෆ߹ͷى͜Γͦ͏ͳέʔε w σʔλෆ߹Λम෮͢Δ w 8SJUF3FQBJS w
"TZODISPOPVT3FQBJS w ͓ΘΓʹ
͓ΘΓʹ ·ͱΊΔͱ ɾσʔλෆ߹Λճආɾमਖ਼͢ΔͷΊͬͪΌେม ɾͰॲཧΛ࣮֬ʹ࣮ߦ͍ͨ͠ͱ͖ʹඞཁͳࣝ ɾΘͨ͠ઋਓʹͳΓ͍ͨ ͏Ή
͓ΘΓʹ ࢀߟࢿྉɿ IUUQTTZGNIBUFOBCMPHDPNFOUSZ ˢࢲ͕ࠓͨ͜͠ͱͷશ͕ͯ͜͜ʹॻ͍ͯ͋Γ·͢
None