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
レガシーなPHPアプリケーションのリプレイスプロジェクトにおける取り組み / phpconse...
Search
blue_goheimochi
January 26, 2019
Technology
1.5k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
レガシーなPHPアプリケーションのリプレイスプロジェクトにおける取り組み / phpconsen2019
PHPカンファレンス仙台2019の登壇資料です。
https://phpcon-sendai.net/2019/
blue_goheimochi
January 26, 2019
More Decks by blue_goheimochi
See All by blue_goheimochi
最高のコーチになるためのスポーツコーチング学―知っておくべき「フレームワーク」と「スキル」― を紹介 / phperkaigi-mini-0
blue_goheimochi
0
78
「コントロールの三分法」で考える「コト」への向き合い方 / phperkaigi2026
blue_goheimochi
0
470
ISUCONにPHPで挑み続けてできるようになっ(てき)たこと / phperkaigi2025
blue_goheimochi
0
400
依存パッケージの更新はコツコツが勝つコツ! / phpcon_nagoya2025
blue_goheimochi
3
700
コミュニケーションを「パス」のやりとりと捉え大切にしていること / dai-kichijojipm-2024
blue_goheimochi
2
4.2k
「手動オペレーションに定評がある」と言われた私が心がけていること / phpcon_odawara2024
blue_goheimochi
4
2.4k
芝生の障害対応・メンテナンスについて語る / ya8-2024
blue_goheimochi
1
210
「わたしたちのコード」を安定させるためにフレームワークとの距離を保つ / phperkaigi2024
blue_goheimochi
5
3.2k
コードを計測することで捉える問題点 / phpcondo2024
blue_goheimochi
5
1.5k
Other Decks in Technology
See All in Technology
JSONataとAWS Step Functionsで目指すRuntimelessな世界
mu7889yoon
0
120
ADKで始める業務改善 - AIエージェント開発時の考えと設計
harappa80
2
170
え、こんなに早く改修できるの?──新人エンジニアとスクラムマスターの2人が語る、AI×アジャイル開発の現場
ysasago
1
250
CLIライブラリ開発を支える技術
htnabe
0
120
AI時代の「技術的負債」の変質ー概念の終焉と再解釈、エージェントと共に向かう先
nwiizo
1
2.8k
山手線を徒歩で一周してわかった、 位置情報アプリは「足」が最強のデバッガー
hinakko
0
160
積み重なった技術負債への挑戦 〜初手としての全社ゴト化〜
techtekt
PRO
0
1.3k
Issue 駆動でスペシャリストの意図を届ける、AI 実装のアクセシビリティ向上
thkt
0
120
DEFCON_CHV_CTF_Write-up.pdf
bata_24
0
150
OpenTelemetryのメトリクスをCloudWatchに送ってPromQLで見てみた
ota1022
0
150
Cloudflare Workers 向けアプリを C# で構築する ~WASM Native AOT への道~
nenonaninu
0
140
データ_AIの事業の勝敗をわけるもの
nek0128
1
430
Featured
See All Featured
How to Ace a Technical Interview
jacobian
281
24k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
470
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
290
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
280
A designer walks into a library…
pauljervisheath
211
25k
Building a Scalable Design System with Sketch
lauravandoore
464
34k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
260
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
2.9k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
65k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
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