Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
実例から学ぶ、最後まで諦めない決済サービス移行方法/phperkaigi-2020
Search
litencatt
February 11, 2020
Technology
2
1.5k
実例から学ぶ、最後まで諦めない決済サービス移行方法/phperkaigi-2020
https://phperkaigi.jp/2020/
02/11 10:55〜 Track B
litencatt
February 11, 2020
Tweet
Share
More Decks by litencatt
See All by litencatt
chrome-extention-development-start-with-template
litencatt
1
89
15年続くWebサービスの開発現場のイマ/muumu-development-env
litencatt
0
74
オブジェクト指向×思考×試行 / OOP x Study x Try
litencatt
1
470
とあるペパボカレッジ1期生がこの1年間で学習してきたこと / Studying to be a web engineer
litencatt
4
540
ムームードメイン ショッピングカートを支える技術! / muumuu-shopping-cart-tech
litencatt
2
5.5k
CI環境をDockerで再現する/Build the testing containers
litencatt
0
880
201612_一歩踏み出した先にあったもの
litencatt
4
1.3k
Other Decks in Technology
See All in Technology
M5UnifiedとPicoRubyで楽しむM5シリーズ
kishima
0
110
useEffectってなんで非推奨みたいなこと言われてるの?
maguroalternative
9
6.2k
“決まらない”NSM設計への処方箋 〜ビットキーにおける現実的な指標デザイン事例〜 / A Prescription for "Stuck" NSM Design: Bitkey’s Practical Case Study
bitkey
PRO
1
350
シンプルを極める。アンチパターンなDB設計の本質
facilo_inc
1
1k
.NET 10 のパフォーマンス改善
nenonaninu
2
4.8k
一億総業務改善を支える社内AIエージェント基盤の要諦
yukukotani
8
2.8k
HIG学習用スライド
yuukiw00w
0
110
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
pmconf2025 - 他社事例を"自社仕様化"する技術_iRAFT法
daichi_yamashita
0
530
Ryzen NPUにおけるAI Engineプログラミング
anjn
0
220
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
0
650
その設計、 本当に価値を生んでますか?
shimomura
3
180
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Designing Experiences People Love
moore
142
24k
Statistics for Hackers
jakevdp
799
230k
Producing Creativity
orderedlist
PRO
348
40k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Unsuck your backbone
ammeep
671
58k
The Cult of Friendly URLs
andyhume
79
6.7k
A Modern Web Designer's Workflow
chriscoyier
697
190k
A designer walks into a library…
pauljervisheath
210
24k
Documentation Writing (for coders)
carmenintech
76
5.2k
Transcript
தଜޫ༎(.01FQBCP *OD 1)1FS,BJHJ ࣮ྫ͔ΒֶͿɺ ࠷ޙ·ͰఘΊͳ͍ܾࡁαʔ ϏεҠߦํ๏
ΤϯδχΞ தଜޫ༎!MJUFODBUU ϗεςΟϯάࣄۀ෦ϗεςΟϯάάϧʔϓ$9νʔϜ
w ܾࡁαʔϏεҠߦΛܦݧͯ͠ΈͯΘ͔ͬͨ wҠߦΛఘΊͣޭͤ͞ΔʹԿΛ͢ΕΑ͍ͷ͔ʁ wͦͷֶͼʹࢸͬͨʮఘΊͦ͏ʹͳͬͨग़དྷࣄʯ w Λ͓͠·͢ ͜ͷൃදͰ͍͑ͨ͜ͱ
ܾࡁαʔϏεҠߦͷഎܠ ܾࡁαʔϏεҠߦΛޭͤ͞Δʹʁ ·ͱΊ ࣍
ܾࡁαʔϏεҠߦͷഎܠ
w ʮ͓͍͞Άʂʯͱ͍͏αʔϏεΛͬͯ·͔͢ʁ w ϖύϘ͕ӡӦ͢ΔҰ෦ͷαʔϏεͰར༻ྉࢧ͍ʹ͑Δ ΥϨοταʔϏε ܾࡁαʔϏεҠߦͷഎܠ IUUQTPTBJQPKQ
w ʮ͓͍͞Άʂʯͱ͍͏αʔϏεΛͬͯ·͔͢ʁ w ϖύϘ͕ӡӦ͢ΔҰ෦ͷαʔϏεͰར༻ྉࢧ͍ʹ͑Δ ΥϨοταʔϏε w ϖύϘαʔϏε͚ʹΫϨΧܾࡁߦػೳ"1*ఏڙ ܾࡁαʔϏεҠߦͷഎܠ αʔϏε" αʔϏε#
αʔϏε$ αʔϏε% ͓͍͞Άʂ ܾࡁαʔϏε
ܾࡁαʔϏεҠߦͷഎܠ ͓͍͞Άʂͷར༻͢ΔΫϨΧܾࡁαʔϏεΛʹ ಉӡӦձ͕ࣾఏڙ͢Δ৽ܾࡁαʔϏεҠߦ͢Δ
w ݱࡏར༻͍ͯ͠ΔچܾࡁαʔϏεͷऴྃͷ͓Βͤ w ݄Ͱऴྃ w ෆਖ਼ͳΫϨΧܾࡁͰͷνϟʔδόοΫ͕ʑ૿Ճ͍ͯ͠Δ w ෆਖ਼ࢭαʔϏεΛૣ͘ಋೖ͍ͨ͠ ܾࡁαʔϏεҠߦͷഎܠ ͓͍͞Άʂͷར༻͢ΔΫϨΧܾࡁαʔϏεΛʹ
ಉӡӦձ͕ࣾఏڙ͢Δ৽ܾࡁαʔϏεҠߦ͢Δ ͳ͔ͥʁ
ܾࡁαʔϏεҠߦΛޭͤ͞Δ ʹʁ
w ૣظʹଧͪ߹ΘͤΛ࣮ࢪ͢Δ w ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ͓ͯ͘͠ w ສ͕ҰͷࡍͷରԠϑϩʔΛ༻ҙ͓ͯ͘͠ ܾࡁαʔϏεҠߦΛޭͤ͞Δʹʁ
w ૣظʹଧͪ߹ΘͤΛ࣮ࢪ͢Δ w ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ͓ͯ͘͠ w ສ͕ҰͷࡍͷରԠϑϩʔΛ༻ҙ͓ͯ͘͠ ܾࡁαʔϏεҠߦΛޭͤ͞Δʹʁ
ૣظʹଧͪ߹ΘͤΛ࣮ࢪ͢Δ
ϖύϘ ࠓճͷҠߦʹඞཁͳରԠ αʔϏε" αʔϏε# αʔϏε$ αʔϏε% ͓͍͞Άʂ "1* ܾࡁαʔϏεӡӦձࣾ چܾࡁαʔϏε
৽ܾࡁαʔϏε ձһσʔλҠߦ͕ඞཁ ΫϨΧܾࡁߦ"1*Λ ࣾαʔϏεʹఏڙ w ܾࡁαʔϏεӡӦଆͰͷձһσʔλҠߦಉ࣌ظʹ࣮ࢪ͠ ͯΒ͏ඞཁ͕͋ͬͨ w ͦͷͨΊҠߦ࣮ࢪʹ͍ͭͯͷଧͪ߹ΘͤΛ࣮ࢪͨ͠
w ܭըҊΛ࡞͢Δஈ֊ʹ͓͍ͯ w ҠߦܭըҊΛ͚ࣗͨͪͩͰߟ͑͗͢ͳ͍ w ૣظʹܾࡁαʔϏεӡӦଆͱଧͪ߹ΘͤΛ࣮ࢪ͢Δ ૣظʹଧͪ߹ΘͤΛ࣮ࢪ͢Δ
͜ͷֶͼʹࢸΔࠓճఘΊͦ͏ʹ ͳͬͨग़དྷࣄͦͷ
w ҠߦܭըཱҊॳͷҠߦํ w αʔϏεແఀࢭͰ͔ͭ҆શʹܾࡁαʔϏεҠߦ͍ͨ͠ w ͦ͜Ͱஈ֊తͳҠߦܭըҊΛ࡞ͨ͠ ໖ີͳҠߦܭըΛཱ͍ͯͯͨ چܾࡁαʔϏε ৽چܾࡁαʔϏε ฒߦӡ༻
৽ܾࡁαʔϏε ..:: ".)).. ..:: ".))..
w ࣌ؒΛ͔͚ͯௐࠪɾݕ౼ͯ͠Ҡߦํ๏Λܭըͨ͠ w ܾࡁαʔϏεӡӦଆͱͷଧͪ߹Θͤ࣌ʹ͜ͷܭըΛఏҊ w ͔͠͠૬खଆͷγεςϜͷ্༷ͷ੍ʹҾ͔͔ͬͬͨ w ܭըҊΛݟ͟͞ΔΛ͑ͳ͔ͬͨ ఘΊͦ͏ʹͳͬͨग़དྷࣄ
w ࠷ऴతʹҎԼͷํ๏ɾఔͰҎ߱Λ࣮ࢪ w ϝϯςφϯεΛڬΈܾࡁαʔϏεΛશҠߦ͢Δ w ͔͠(8લͷ ۚ ʹҠߦΛ࣮ࢪ͢Δ ఘΊͦ͏ʹͳͬͨग़དྷࣄ چܾࡁαʔϏε
ϝϯςφϯε ͦͷؒʹձһσʔλҠߦ ৽ܾࡁαʔϏεରԠϦϦʔε ৽ܾࡁαʔϏε ". ".
w ͳ͔ͥʁ w ࡞ͨ͠Ҡߦܭը͕ඞ࣮ͣ͠ࢪͰ͖ΔͱݶΒͳ͍ w ͦͷࡍͷਫ਼ਆతμϝʔδΛݮΒͨ͢Ίʹ ૣظʹଧͪ߹ΘͤΛ࣮ࢪ͢Δ
શҠߦͤ͟ΔΛಘͳ͍ੈքઢʹ ౸ୡͨ͠զʑɺͲ͏ͬͯ͜ͷ ঢ়گΛΓͬͨͷ͔ʁ
w ૣظʹଧͪ߹ΘͤΛ࣮ࢪ͢Δ w ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ͓ͯ͘͠ w ສ͕ҰͷࡍͷରԠϑϩʔΛ༻ҙ͓ͯ͘͠ ܾࡁαʔϏεҠߦΛޭͤ͞Δʹʁ
ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ ࢪ͓ͯ͘͠
w ςετڥͰेʹಈ࡞֬ೝΛߦ্ͬͨͰ w ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪɾ͓ྃͯ͘͠ ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ
ςετڥͰͷಈ࡞֬ೝ "1*ςετ 1)17$3Λར༻ Ϣχοτςετ w ·ͣςετڥͰҎԼΛ࣮ࢪɾྃͤͨ͞ w Ϣχοτςετ "1*ςετ w
"1*ར༻αʔϏε͔Βͷಈ࡞֬ೝ ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ αʔϏε" αʔϏε# αʔϏε$ αʔϏε% ͓͍͞Άʂ "1* ܾࡁαʔϏεӡӦଆ چܾࡁαʔϏε ৽ܾࡁαʔϏε
ࣄલҠߦʹຊ൪ڥͰಈ࡞֬ೝ w ͞Βʹຊ൪ڥͰҎԼΛ࣮ࢪɾྃͤͨ͞ w Ҡߦલʹࣄલʹ"1*ར༻αʔϏε͔Βͷಈ࡞֬ೝ w ೦ͷҝɺҠߦ࠷ऴಈ࡞֬ೝ ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ αʔϏε" αʔϏε#
αʔϏε$ αʔϏε% ͓͍͞Άʂ "1* ܾࡁαʔϏεӡӦଆ چܾࡁαʔϏε ৽ܾࡁαʔϏε
w αʔϏεଆͰͷಈ࡞֬ೝ͕࣌ؒతʹҰ൪ͷϘτϧωοΫ w ಈ࡞֬ೝΛ૬खʹؙ͛ͤͣ࠷ޙ·Ͱαϙʔτͨ͠ w 4MBDLʹઐ༻νϟϯωϧΛ༻ҙ͢Δ w ҰॹʹΤϥʔௐࠪ͢Δ w ࣭ʹର͢Δૣ͍Ϩεϙϯε
ಈ࡞֬ೝΛظؒͰྃͤ͞Δҝʹ
ࠓճఘΊͦ͏ʹͳͬͨ ग़དྷࣄͦͷ
Ҡߦ લ
w Ҡߦલʹࣄલʹຊ൪ڥͰಈ࡞֬ೝத w %ηΩϡΞΧʔυΛར༻ܾͨ͠ࡁॲཧ͕͏·͍͔͘ͳ͍ w ݪҼ৽ܾࡁαʔϏεܖ࣌ͷਃࠐΈ༰ϛε ఘΊͦ͏ʹͳͬͨग़དྷࣄ αʔϏε" αʔϏε# αʔϏε$
αʔϏε% ͓͍͞Άʂ "1* ܾࡁαʔϏεӡӦଆ چܾࡁαʔϏε ৽ܾࡁαʔϏε ❌ ⭕ ❌ ❌
͜ͷઃఆϛεʹؾ͍͙ͮͯ͢Ӧۀ୲ͷํʹి࿈བྷ w Ӧۀͷํʮ͜ͷઃఆมߋɺ௨ৗि͔͔ؒΓ·͢ʜʯ w ࣗͨͪʮ ऴΘͬͨʜԆظͩΘ͜Εʜ ʯ ఘΊͦ͏ʹͳͬͨग़དྷࣄ
ʜ࣌ؒޙ w Ӧۀͷํʮมߋؒʹ߹͏Α͏Ͷ͡ࠐΈ·ͨ͠ʂʯ w ࣗͨͪʮ ͏͓ʔʔʔʂʂʂʂ ʯ ఘΊͦ͏ʹͳͬͨग़དྷࣄ
w ͳ͔ͥʁ w ຊ൪ڥͰͷෆ۩߹ʹࣄલʹؾ͚ͮΔ w ࣗΛ࣋ͬͯҠߦΛܴ͑Δ͜ͱ͕Ͱ͖Δ ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ
w ૣظʹଧͪ߹ΘͤΛ࣮ࢪ͢Δ w ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ͓ͯ͘͠ w ສ͕ҰͷࡍͷରԠϑϩʔΛ༻ҙ͓ͯ͘͠ ܾࡁαʔϏεҠߦΛޭͤ͞Δʹʁ
ສ͕ҰͷࡍͷରԠϑϩʔΛ༻ҙ͠ ͓ͯ͘
w લ·Ͱʹͷ࡞ۀ༧ఆΛ࡞ w ࡞ۀ߲ຖʹສ͕ҰͷࡍʹͲ͏ରԠ͢Δ͔ߟ͓͑ͯ͘ w ͷ࡞ۀͷਐḿঢ়گʹԠ͍ͯ͡ΖΜͳέʔεΛ ສ͕ҰͷࡍͷରԠϑϩʔΛ༻ҙ͓ͯ͘͠
ࠓճఘΊͦ͏ʹͳͬͨ ग़དྷࣄͦͷ
Ҡߦ
Ҡߦ࣮ࢪͷεέδϡʔϧ ". ϝϯςφϯε։࢝ ". ϝϯςφϯεऴྃ چܾࡁαʔϏε ձһσʔλҠߦ ৽ܾࡁαʔϏεରԠϦϦʔε ࠷ऴಈ࡞֬ೝ ৽ܾࡁαʔϏε
Ҡߦ࣮ࢪͷεέδϡʔϧ ". ϝϯςφϯε։࢝ ". ϝϯςφϯεऴྃ αʔϏε" αʔϏε# αʔϏε$ αʔϏε% ͓͍͞Άʂ
ܾࡁαʔϏεӡӦଆ چܾࡁαʔϏε ৽ܾࡁαʔϏε چܾࡁαʔϏε ձһσʔλҠߦ ৽ܾࡁαʔϏεରԠϦϦʔε ࠷ऴಈ࡞֬ೝ ৽ܾࡁαʔϏε ձһσʔλ Ҡߦ
w ϝϯςφϯεதͷ࡞ۀॱௐʹਐΜͩ w ༧ఆ௨Γϝϯςφϯεऴྃͯ͠αʔϏε࠶։ w Ϣʔβʔͷܾࡁॲཧͳͦ͞͏ʂ Ҡߦ࣮ࢪͷεέδϡʔϧ
શ উར
ͦΜͳ;͏ʹߟ ͍͑ͯͨ࣌ظ͕ ʹ͋Γ·͠ ͨʜ
w ͓னલʹϝϯγϣϯ͕ඈΜͰ͖ͨʜ w ฦۚॲཧͰΤϥʔ͕ग़ΔΒ͍͠ w ʮ͓͔͍͠ͳʜฦۚॲཧಈ࡞֬ೝͯ͠ແ͔ͬͨͣ ͚ͨͲͳʜʯ શউར ͦΜͳ;͏ʹ SZ
w چܾࡁαʔϏεͰͷܾࡁʹର͢Δฦ͕ۚΤϥʔͱͳΔ w ࠓճچܾࡁαʔϏε্ͷܾࡁཤྺҠߦ͞Ε͍ͯͳ͍ w چܾࡁαʔϏεͷฦۚॲཧΛߟྀͰ͖͍ͯͳ͔ͬͨʜ શউར ͦΜͳ;͏ʹ SZ αʔϏε"
αʔϏε# αʔϏε$ αʔϏε% ͓͍͞Άʂ ܾࡁαʔϏεӡӦଆ چܾࡁαʔϏε ৽ܾࡁαʔϏε
Ͳ͏͢Δʁ
w ࣄલʹఆ͍ͯͨ͠શମΛϩʔϧόοΫ͢ΔϨϕϧͷෆ۩ ߹Ͱͳ͍ͱஅ w ͳͷͰچܾࡁαʔϏεͣ͞ରԠ͢Δ͜ͱΛܾஅ બΜͩߦಈ
w εςʔδϯάڥΛچܾࡁαʔϏεʹϩʔϧόοΫ w ඞཁ࠷খݶରԠ͔ͭͬͱ࣮֬ͳํ๏ w ฦۚॲཧͷܾࡁ࣌ͰϦΫΤετઌΛৼΓ͚ͨ w Ҏ߱ͷܾࡁ৽ܾࡁαʔϏε w ҎલͷܾࡁچܾࡁαʔϏε
Ұ෦ϩʔϧόοΫ͢Δ αʔϏε" αʔϏε# αʔϏε$ αʔϏε% ͓͍͞Άʂ ܾࡁαʔϏεӡӦଆ چܾࡁαʔϏε ৽ܾࡁαʔϏε ͓͍͞Άʂ εςʔδϯάڥ ˞ݱࡏ͓͍͞Άʂଆͷ ຊ൪ڥͷॲཧͰٵऩͯ͠मਖ਼ࡁΈ
ͱ͍͏ ͜ͱͰ
Ҡߦ ྃ
None
w ͳ͔ͥʁ w ϩʔϧόοΫ͢Δ͔Ͳ͏͔ͳͲͷஅج४͕ͯΔ w ͦͷ࣌ͷঢ়گʹԠͯ͡దͳஅ͕Մೳ ສ͕ҰͷࡍͷରԠϑϩʔΛ༻ҙ͓ͯ͘͠
·ͱΊ
w ૣظʹଧͪ߹ΘͤΛ࣮ࢪ͢Δ w ࣄલʹຊ൪ڥͰಈ࡞֬ೝΛ࣮ࢪ͓ͯ͘͠ w ສ͕ҰͷࡍͷରԠϑϩʔΛ༻ҙ͓ͯ͘͠ ܾࡁαʔϏεҠߦΛޭͤ͞Δʹʁ
w ҠߦΛఘΊͦ͏ʹͳͬͨͭͷग़དྷࣄ͕͋Γ·ͨ͠ w ͔͜͠͠ͷҠߦϓϩδΣΫτʹܞΘ͍༷ͬͯͨʑͳਓͨͪ ͷڠྗͷ͓͔͛ͰܾࡁαʔϏεΛҠߦͤ͞Δ͜ͱ͕ग़དྷ· ͨ͠ ·ͱΊ
܅ϖύϘͰಇ͔ͳ͍͔ʁ ࠷৽ͷ࠾༻ใΛνΣοΫˠ !QC@SFDSVJU