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
実例から学ぶ、最後まで諦めない決済サービス移行方法/phperkaigi-2020
Search
litencatt
February 11, 2020
Technology
2
1.4k
実例から学ぶ、最後まで諦めない決済サービス移行方法/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
870
201612_一歩踏み出した先にあったもの
litencatt
4
1.3k
Other Decks in Technology
See All in Technology
2025年夏 コーディングエージェントを統べる者
nwiizo
0
170
初めてAWSを使うときのセキュリティ覚書〜初心者支部編〜
cmusudakeisuke
1
250
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
5
630
La gouvernance territoriale des données grâce à la plateforme Terreze
bluehats
0
180
自作JSエンジンに推しプロポーザルを実装したい!
sajikix
1
180
Language Update: Java
skrb
2
300
COVESA VSSによる車両データモデルの標準化とAWS IoT FleetWiseの活用
osawa
1
290
Evolución del razonamiento matemático de GPT-4.1 a GPT-5 - Data Aventura Summit 2025 & VSCode DevDays
lauchacarro
0
190
エラーとアクセシビリティ
schktjm
1
1.3k
DDD集約とサービスコンテキスト境界との関係性
pandayumi
3
280
Django's GeneratedField by example - DjangoCon US 2025
pauloxnet
0
150
Terraformで構築する セルフサービス型データプラットフォーム / terraform-self-service-data-platform
pei0804
1
180
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Documentation Writing (for coders)
carmenintech
74
5k
The Language of Interfaces
destraynor
161
25k
Making Projects Easy
brettharned
117
6.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Agile that works and the tools we love
rasmusluckow
330
21k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Balancing Empowerment & Direction
lara
3
620
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