Laravelの基礎を知っている方向けに、Webアーキテクチャの視点からLaravel解説します。
Laravel Web
View Slide
8,6$● -13*● 2.'5/+● 70 ● )(4 &"%#○ ■ GCP / AWS■ laravel / rails / .net■ nuxt○ IT ■ ERP○ HP !■ wordpress
'-%,:● Laravel*6 &710● #Laravel /) ● Laravel20'-%(.● Web "!3● MVC$+Web 98045
&)%( ● Laravel,*● Laravel- ● !$ Web$!$#● Laravel$"$#'+
/ 1● ") ○ *,! ○ %+.-○ '($0
$+'● Laravel MVC (%)!● DI" ) #● readable 1/10,&● Laravel *. -
"!1. Laravel$○ 2. Laravel ○ 1 Laravel3. Laravel #○ MVC○ MVVM○ Flux
Laravel
LaravelconfigF@FW● LaravelconfigF@=;?○ config*0%6*0config○ !-2':config94 E8■ php artisan config:cache○ Laravelconfig*06envBD■ config = envAC● configB7"3)#,1(%○ configenv<#$+'/( .& 5>
● config. !5_ZMBODIQW● DI]G. !5HY#3&T]\NU● Laravel DIAIR'!/,7*08&○ %8-&/6+!(DHb!7&'7&TG ○ IR!7'8."8& PG ● DI^@;:924)*○ `RIRESC?=EKZ■ D=IR[ ○ aJX/6$317$KZ■ #3&!7'8."8&HYDependency Injection()
DI -*81: (Route.php +)● (')# (# )(.○ readable● ,0<75)(. ○ Route.php@getController● $ &"( (# #!)96○ Container.php@build● #!))(%● ;(# 24 /(3=
)& ("$● ("$' ○ Container.php● =A("$' - 6B0I.*F○ 3<@' 2( !( H:I.○ ("$' ' 28;( !( G● ("$composite%!)( 7C○ ("$/("$,5E>41○ ( #'!8;● DI+)& ("$ 0' ?J9D
● .%- "DK * ● +!$.49I○ @GIlluminate¥Http¥Request$.4 ○ php?A$_get 0B6H● config1'..%- "DK○ DI0 8>E2.%*DK ;● Application.php39I○ Application.php- " ○ composite$.-9J● FacadeDK9<○ Facade(+!*7FC)/:=5.%&,#
Tips: "5,$0$● .#(?;'5%8JI● "5,$0$9E8JI 0$● /'20$GetterSetterHA<:;○ 4%5-5$BF ○ "5,$0$4%5-5$=* FD6● DB$(35#@G1$(+5$'5%7> 9EC● Laravel<:"5,$!4&)
Laravel● !"& '$%(○ https://readouble.com/laravel/6.x/ja/lifecycle.html● !"2#) ○ HTTPConsole■ public/index.php■ artisan● HTTPConsole
● Laravel%$+(,public/index.php.-● public/index.php,○ public/index.php● Request!,○ Request.php@capture○ SymfonyRequest.php@createFromGlobals● '/Global #(32○ Kernel.php@handle○ PipeLine.php@then● )"+10+*,&#(32○ Router.php@dispatch● readable HTTP, (
Console*"' ● artinsan/.○ php artisanartisan#';<○ artisann+=34 ○ artisan● 058SymphonyConsole)%*")$*● -297Artisan&) (* ○ Kernel.php@handle○ Artisan&) )! ● )!34&) ,1:6○ Application.php@run○ SymphonyApplication.php@run
HKernel6G7B● 2?+."-!#:/● bootstrap/app.php+."-!#8@9 ○ bootstrap/app.php○ (-.&',%;● 0F31I.&-!#C> ○ HTTP.$+○ Console.$+○ ExceptionHandler● 5○ .&',%*.) EA=
MVC (Model, View, Controller)● 3I+$-2*&21● ModelViewControllerR ● 5K BN*&21● Laravel<9ModelController?● ;FJ/"!%(OQ<9*&216○ /"!%(C7H=● LaravelP02(,'0) 1'1#@:○ *.+2&*2%EGDA○ Route::bindBN■ Eloquent4>BM8L
MVVM (Model, View, ViewModel)● $*++ FW &', ● Model,"(6● ViewModelViewModel> 9● Graphql.) 32 &● Vuejs+%,!+85○ ViewComposer.1,7/&,○ 1+%,!+Blade (#+● Controller-=○ Route::view.○ Route::view32php artisan route cache4;0:
Flux● ,67(7) 0"18 ● Facebook LE '!7+%87○ Facebook● 4#(MGFC##0● 7(683 emit/5+8;● @W28)3* ?RJO○ YDQ?R PH04&(○ 9N .6$#TRZ=● -3!> I:XSBA?RJUKV○ UXWebSocketX<KV○ laravel-echo-server
)● " '+● "!*% ● Laravel#&($3"!! ○ MVC○ MVVM○ Flux
DI9B● DI9B● PHP75 (#*&+/%,● G=630 G=631@A5○ +,#,:9B?24'● -D>.H4';C○ '!○ $○ E8#)",,○ +