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.3k
レガシーな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
210
依存パッケージの更新はコツコツが勝つコツ! / phpcon_nagoya2025
blue_goheimochi
3
370
コミュニケーションを「パス」のやりとりと捉え大切にしていること / dai-kichijojipm-2024
blue_goheimochi
2
3.3k
「手動オペレーションに定評がある」と言われた私が心がけていること / phpcon_odawara2024
blue_goheimochi
4
1.9k
芝生の障害対応・メンテナンスについて語る / ya8-2024
blue_goheimochi
1
130
「わたしたちのコード」を安定させるためにフレームワークとの距離を保つ / phperkaigi2024
blue_goheimochi
5
2.4k
コードを計測することで捉える問題点 / phpcondo2024
blue_goheimochi
5
1.2k
Laravelのコードとわたしたちのコードとの距離を保つ / phpcon2023
blue_goheimochi
1
2.2k
リンケージにおけるアプリケーションコードとの付き合い方とそれを支えるコミュニケーション / drobe_pixiv_linkage-20230905
blue_goheimochi
1
600
Other Decks in Technology
See All in Technology
リリース2ヶ月で収益化した話
kent_code3
1
310
オブザーバビリティ文化を組織に浸透させるには / install observability culture
mackerelio
0
110
Intro to Software Startups: Spring 2025
arnabdotorg
0
270
Amazon Bedrock AgentCoreのフロントエンドを探す旅 (Next.js編)
kmiya84377
1
160
PL/pgSQLの基本と使い所
tameguro
2
230
UDDのススメ - 拡張版 -
maguroalternative
1
600
【新卒研修資料】数理最適化 / Mathematical Optimization
brainpadpr
28
13k
Autonomous Database Serverless 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
18
52k
工業高校で学習したとあるエンジニアのキャリアの話
shirayanagiryuji
0
110
GISエンジニアよ 現場に行け!
sudataka
1
130
九州の人に知ってもらいたいGISスポット / gis spot in kyushu 2025
sakaik
0
180
AI時代の大規模データ活用とセキュリティ戦略
ken5scal
0
160
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
KATA
mclloyd
32
14k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Agile that works and the tools we love
rasmusluckow
329
21k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
4 Signs Your Business is Dying
shpigford
184
22k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
How to train your dragon (web standard)
notwaldorf
96
6.2k
The Invisible Side of Design
smashingmag
301
51k
Code Reviewing Like a Champion
maltzj
524
40k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
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