Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Laravel の効率的な学び方

Laravel の効率的な学び方

Innocafe #21 での発表資料です。

http://innocafe.connpass.com/event/32137/

localdisk

June 17, 2016
Tweet

More Decks by localdisk

Other Decks in Programming

Transcript

  1. Laravelͷޮ཰తͳֶͼํ
    Innocafe #21
    @localdisk

    View Slide

  2. ࣗݾ঺հ
    দඌେ
    ·͓ͭ·͞Δ
    EEE
    ΤϯδχΞ
    Πϊϕʔλʔδϟύϯॴଐ ΤϯδχΞɾσβ
    ΠφɾσΟϨΫλΛืूத

    Laravel 3͔Βͷݹࢀ
    Ϣʔβʔ
    ޷ධൃചத
    @localdisk

    View Slide

  3. -BSBWFMͷಛ௃
    w ଟػೳ
    w جຊతͳMVC+ServiceContainer, Event, Queueʜ
    w มԽ͕ܹ͍͠
    w ݱࡏ
    w ͷϦϦʔε͸
    มԽΛ೺Ѳ͢Δʹ͸ޮ཰తʹֶͿඞཁ͕͋Δ

    View Slide

  4. ͦͷ·͑ʹ

    View Slide

  5. ޮ཰తʹֶͿ४උΛ͠Α͏
    w IDE࢖͓͏
    • PhpStorm/NetBeans
    w ΫϥεɺϑΝΠϧɺγϯϘϧΛ։͘
    w ఆٛઌʹඈͿɺ࢖༻͞Ε͍ͯΔՕॴʹඈͿ
    w ࣗ৴ͷ͋Δਓ͸IDE͡Όͳͯ͘΋OK

    View Slide

  6. ֶͿαΠΫϧ
    lಡΉzlࢼ͢ ॻ͘ಈ͔͢
    z

    View Slide

  7. ಡΉ

    View Slide

  8. ίΞΛಡΉ
    w Illuminate\Container\Container
    w ͍ΘΏΔαʔϏείϯςφ
    w ࡶʹݴ͑͹lͰ͔͍഑ྻz
    w Illuminate\Foundation\Application
    w αʔϏείϯςφΛܧঝɻΞϓϦέʔγϣϯͷॳظॲཧ
    w ศརϝιου΋͋Δ
    w Illuminate\Foundation\Application\Http\Kernel
    w App\Http\Kernel ΋߹Θͤͯ
    w ͜͜Β΁Μ·ͰಡΊ͹͍͍ͩͨΘ͔Δ

    View Slide

  9. ServiceProvider/FacadeΛಡΉ
    w Illuminate\Hashing\HashServiceProvider
    w Ұ൪୯७ɻॳΊͯಡΉͷʹ࠷ద
    w Illuminate\Support\Facade
    w ഑ྻ͔ΒऔΓग़͍ͯ͠Δ͚ͩ
    w Θ͔Ε͹୯७
    w ѱ͟͠·ʹݴΘΕΔ͜ͱ͕ଟ͍͕ɺMockΛखܰʹ࡞ΕΔͷ͸
    େ͖ͳϝϦοτ
    w helperʜ

    View Slide

  10. ΄͔΋ಡΉ
    w Eloquent, Http͸ಡΈࠐΜͰ͓͘ͱḿΔ
    w ࣮຿໘ͰҰ൪ॏๅ͞Εͦ͏
    w Queue/Event
    w ඇಉظॲཧ
    w ͜Ε΋த਎Λ஌ͬͯΔͱώʔϩʔѻ͍

    View Slide

  11. SymfonyComponent
    w ා͘ͳ͍
    w console, process͋ͨΓ͸஌͓ͬͯ͘ͱଞͷ-BSBWFM
    Ҏ֎ͷϓϩδΣΫτͰ࢖͍υίϩຬࡌ
    w dom-crawler, css-selector͸εΫϨΠϐϯάͷ͓
    ڙ
    w ΋ͷͷ͍ͭͰ͘Β͍ͷؾ࣋ͪͰಡΉ

    View Slide

  12. Changelog
    w Laravel͸όʔδϣϯΞοϓ͕සൟ
    w νΣϯδϩάͰ೺Ѳ͢Δɻ࠷͔ۙͳΓஸೡʹͳͬ
    ͨ
    • https://github.com/laravel/
    framework/blob/5.2/CHANGELOG.md

    View Slide

  13. ࢼ͢

    View Slide

  14. ࢼ͢
    w ॻ͘ಈ͔͢
    w Ͳ͏ಈ͔͢
    w artisan serve + ϒϥ΢β
    ΋ͬͱखܰʹࢼ͢ํ๏͕̎ͭʂ

    View Slide

  15. tinker
    w ߴੑೳͳREPL(Read-eval-print loop)
    w ࢼ͢ʹ͸े෼
    w ModelFactory Λ߹ΘͤΔͱศར͗ͯ͢ඓ݂ग़Δ
    ̎ͭ໨͸ʜ

    View Slide

  16. ςετΛॻ͘

    View Slide

  17. ໊ݴʂʂʂʂ

    View Slide

  18. ςετΛॻ͘
    w ಈ࡞֬ೝ͍ͭͰʹॻ͘
    w ΋ͪΖΜ࣮૷͢Δલʹॻ͘ͷ΋͍͍
    w ϋʔυϧΛԼ͛ͯ
    w ׬ᘳΛٻΊΔͳ
    w ೰ΜͩΒ࣭໰
    w ࣾ಺ʹ͍ͳ͔ͬͨΒTwitter΍phpusers-jaͷSlackͰ࣭
    ໰ͯ͠ΈΑ͏

    View Slide

  19. ςετΛॻ͘
    wίϯτϩʔϥʔ΍Ϟσϧʹdd ॻ͘ҐͳΒςετ
    Ͱॻ͜͏
    wୡ੒ײͰͯ͘Δ
    wςετॻ͘ͱઃܭྗ΋ͭ͘
    wςετͮ͠Β͍ίʔυΛॻ͚ͳ͘ͳΔ

    View Slide

  20. LaravelΛֶΜͩઌʹ͋Δ΋ͷ
    w SymfonyComponent౳
    w Α͘ग़དྷͨ֎෦ϥΠϒϥϦ
    w Laravel Elixir/Laravel Valet
    w ଞݴޠ
    w PHPʹͩ͜ΘΒͳ͍
    w Queue / Database
    w ϛυϧ΢ΣΞ

    View Slide

  21. LaravelΛֶΜͩઌʹ͋Δ΋ͷ
    w Laravel͸PHP੡ͷWebΞϓϦέʔγϣϯɾϑϨʔϜϫʔΫ
    w ͜Ε͚ͩͰ͸ϓϩμΫτ͸׬੒͠ͳ͍
    w ઃܭٕ๏ɾଞݴޠɾϛυϧ΢ΣΞ
    w ܨ͕Δ൶͸ͨ͘͞Μ͋Δ
    w ࣗ෼ͷڵຯͷ͋Δํ޲΁

    View Slide

  22. ؔ৺Λ޿͛Α͏ʂ

    View Slide

  23. Զୡͷษڧ͸͜Ε͔Βͩʂʂ

    View Slide

  24. ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ

    View Slide