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
レガシーなPHPアプリケーションのリプレイスプロジェクトにおける取り組み / phpconse...
Search
blue_goheimochi
January 26, 2019
Technology
1
1.4k
レガシーなPHPアプリケーションのリプレイスプロジェクトにおける取り組み / phpconsen2019
PHPカンファレンス仙台2019の登壇資料です。
https://phpcon-sendai.net/2019/
blue_goheimochi
January 26, 2019
Tweet
Share
More Decks by blue_goheimochi
See All by blue_goheimochi
ISUCONにPHPで挑み続けてできるようになっ(てき)たこと / phperkaigi2025
blue_goheimochi
0
270
依存パッケージの更新はコツコツが勝つコツ! / phpcon_nagoya2025
blue_goheimochi
3
470
コミュニケーションを「パス」のやりとりと捉え大切にしていること / dai-kichijojipm-2024
blue_goheimochi
2
3.6k
「手動オペレーションに定評がある」と言われた私が心がけていること / phpcon_odawara2024
blue_goheimochi
4
2k
芝生の障害対応・メンテナンスについて語る / ya8-2024
blue_goheimochi
1
140
「わたしたちのコード」を安定させるためにフレームワークとの距離を保つ / phperkaigi2024
blue_goheimochi
5
2.6k
コードを計測することで捉える問題点 / phpcondo2024
blue_goheimochi
5
1.3k
Laravelのコードとわたしたちのコードとの距離を保つ / phpcon2023
blue_goheimochi
1
2.3k
リンケージにおけるアプリケーションコードとの付き合い方とそれを支えるコミュニケーション / drobe_pixiv_linkage-20230905
blue_goheimochi
1
630
Other Decks in Technology
See All in Technology
[続・営業向け 誰でも話せるOCI セールストーク] AWSよりOCIの優位性が分からない編(2025年11月21日開催)
oracle4engineer
PRO
1
130
AIで加速する次世代のBill Oneアーキテクチャ〜成長の先にある軌道修正〜
sansantech
PRO
1
130
Android Studio Otter の最新 Gemini 機能 / Latest Gemini features in Android Studio Otter
yanzm
0
460
組織の“見えない壁”を越えよ!エンタープライズシフトに必須な3つのPMの「在り方」変革 #pmconf2025
masakazu178
1
1k
Digitization部 紹介資料
sansan33
PRO
1
6k
『ソフトウェア』で『リアル』を動かす:クレーンゲームからデータ基盤までの統一アーキテクチャ / アーキテクチャConference 2025
genda
0
1.2k
機械学習を「社会実装」するということ 2025年冬版 / Social Implementation of Machine Learning November 2025 Version
moepy_stats
4
530
ブラウザ拡張のセキュリティの話 / Browser Extension Security
flatt_security
0
200
小規模チームによる衛星管制システムの開発とスケーラビリティの実現
sankichi92
0
150
生成AIシステムとAIエージェントに関する性能や安全性の評価
shibuiwilliam
2
220
.NET 10のASP. NET Core注目の新機能
tomokusaba
0
140
マルチドライブアーキテクチャ: 複数の駆動力でプロダクトを前進させる
knih
0
11k
Featured
See All Featured
It's Worth the Effort
3n
187
29k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
Navigating Team Friction
lara
190
16k
A better future with KSS
kneath
239
18k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Into the Great Unknown - MozCon
thekraken
40
2.2k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
A designer walks into a library…
pauljervisheath
210
24k
Transcript
PHP 2019 2019.01.26
2
3 5.x → 7.x
4 5.x → 7.x
5 • +%,41 9=; • +%, •
+%,%*. • <0A7$&" '/:#(.6@ • %-"C625 • *'%*!7 C6 B>; • 3%+).8?
6 blue_goheimochi PHP(Laravel),
Javascript(Vue.js/Nuxt.js) Golang, DDD, Scrum …
7 C / / M B B K I R
& & & R S I A
8 &
9 &
10 & Q Q Q Q Q
Q A A A A A
11 & Q Q Q Q Q
Q A A A A A A 1
12 & . ' • -#&$ %"!( .
• , . • +)* •
13 Q Q Q
Q Q Q A A A A A & & &
14
15 • !" •
•
16 • !" •
•
17 • % )1 • %+ $'
• ,*(SVN)20107! • . OS • 1/#(PHP-" • 32& 04
18 • !" •
•
19 • # $&+42( •
*13, • "%8 • ! . • 0 5-7 /)'6
20 • !'$"(*/86, • .570
• #&)< • % 2 • 4 91;3-+: →
21 • !" •
•
22 • $ +
• &( ## • Twitter"" %!"" ' • *)
23 • !" •
•
24
25
26 • . -0 •
)' • "!*/%+)' # • $& (,
27 • . -0 •
)' • "!*/%+)' # • $& (,
28 ( ) • . -0 •
)' • "!*/%+)' # • $& (, "&#! $ → ' %
29 $%6-7 • . -0 •
)' • "!*/%+)' # • $& (, # 04&1. 2 →$*, 5 + 3 + →)'!"/ 6-(
30
31 • !" •
•
32
33
34
35
36
37
38 •
7A/6!'"!)$#*&,. • 7A>5< >5< • /6(- 0=1 ;/ • 39!'"!)$#*+.%;/24 • 39B; • 8@:?
39
40
41 • 69#"/-? B8 • 3HAG7 •
E#*02&=G $-4 ')! ,2#F 8; • % 0#"/-#*02&1(. +2&D< @:8C >5
42 • •
• • • •
43 #*)',/
+%+5.&*+$%+ +!( $13 !' "420 -
44 • $!.,@ 12 5A • ?C>; •
*0%$3:=D B8 • *0'!( )$!.,+$&96F< • $!., 74 • $"#-/E
45 %'$0+)* /-, • $!.,@ 12 5A • ?C>; •
*0%$3:=D B8 • *0'!( )$!.,+$&96F< • $!., 74 • $"#-/E →%&# $%"$%'!$ 2. (1
46
47 Laravel
48 Laravel
49 • LTS" (Laravel5.5) •
(#$) • Web • !
50 ! # • $% "- &+$3 • 1275
) • "!#', 6*. • - • % /0(4. Vuejs Laravel MySQL &' $
51 • ! • DDDADR •
Laravel$ • Facade Eloquent • " #
52
53 • DDD% • ADR#
• Vue.jsLaravel$ • " • !& • etc…etc…
54 DDD • -2#") • %(+2
,0 • Infrastructure*' $*&!+ • 1/ .
55 ADR • Action Domain Responder • URI%*#(1,1 •
(/: )7<?0;= • #(23 !$' " • *")&>2%*4 +- 86 91.5
56 • qlhWc` $
' ! • $5A85D<:GT *Qe )CK/6C;1E1 'm,( p\CK/6SNjfV(kO YoV* ) • g *a & ( • U_b$' B.=?;1$'n[ • * ' )"5D<:GOR@-LM2%PX • IA098^i+:G]#$4FH>37JM dZ
57
58 • • DDD()ADR()
• Fat ActionFat Repository • Fat SFC(Single File Component) • Test • etc…etc…etc…etc…etc…etc…etc…etc…etc…
59 ! • 3 • ')Eloquent.Vue.js.
• Eloquent • Vue.jsSPA/ • ADR& $" • "(#,!- • % + * !
60 DDD( )ADR( ) • "$# !
• • UseCaseService • ADRController • Model • etc…etc…etc…etc…
61 • #
" • • $( pt+! " • #2% • DDD .1 • # -'/)& 0 ,*
62 • 718"*B>HMK • 718"* • 718"*16;
• L=RF'/*'2-+3<J.4";EQ • 19)#$-VE?C • *$6316$,!*FVESNK • A 17%(5;GO • 083:$D@PTUWI&. •
63
64 • •
65