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

The Laravel Core - Demystify The Beast (LaravelLive UK)

The Laravel Core - Demystify The Beast (LaravelLive UK)

Laravel is a fascinating and complex piece of software. It helps us to work fast, solid and secure on our modern PHP applications. But how often do you find yourself taking a look under the hood of Laravel?

Knowing your framework is not something you need to learn right away. Maybe you’re even fine without knowing it at all. But the day you start asking questions about how it works, is the day you start improving. Knowing your framework will make you a better developer.

In this talk, I want to take you on a little journey through the core of the Laravel framework. It is like the best-of compilation of my free video-series Laravel Core Adventures, where I dig with you through the main concepts and implementations of the Laravel framework.

This talk is for everyone who works with Laravel and is interested in learning more about this powerful PHP framework. You will come away with a better understanding of Laravel's core.

14d39e65f615fd6dcb9dd44ea7f7995b?s=128

Christoph Rumpel

June 10, 2019
Tweet

Transcript

  1. The Laravel Core Demystify The Beast

  2. @christophrumpel Expressive syntax Easy to start You can develop fast

    Developer UX LARAVEL IS AWESOME
  3. @christophrumpel Huge and complex Uses Tricks Confusing BUT

  4. @christophrumpel OUR JOURNEY LifeCycle Facades Eloquent

  5. @christophrumpel WHY DO I CARE ABOUT THE CORE?

  6. @christophrumpel It is a tool It takes a lot of

    time It can be overwhelming COMMON EXCUSES
  7. @christophrumpel It speaks to you Debugging Learn from the best

    Become a better dev WHY YOU SHOULD CARE
  8. @christophrumpel OUR JOURNEY LifeCycle Facades Eloquent

  9. Send It Back Handle Request Boot Laravel HTTP Request

  10. @christophrumpel LET IT BEGIN public/index.php

  11. @christophrumpel

  12. @christophrumpel

  13. @christophrumpel

  14. @christophrumpel Application instance Also serves as DIC Bind kernels to

    the container Register Base Providers Set base paths
  15. @christophrumpel

  16. @christophrumpel

  17. @christophrumpel

  18. @christophrumpel

  19. @christophrumpel REQUEST & ROUTER Illuminate/Foundation/Http/Kernel.php

  20. @christophrumpel

  21. @christophrumpel

  22. @christophrumpel

  23. @christophrumpel REQUEST & ROUTER Illuminate/Routing/Router.php

  24. @christophrumpel REQUEST & ROUTER Illuminate/Routing/Router.php

  25. @christophrumpel OUR JOURNEY LifeCycle Facades Eloquent

  26. @christophrumpel Magic Proxies Helpers Static interfaces Service Container FACADES ARE

  27. @christophrumpel Misleading Hard to test Tightly coupled Bad practice OR

  28. @christophrumpel OUR EXAMPLE

  29. @christophrumpel REQUEST FACADE Illuminate/Support/Facades/Request.php

  30. @christophrumpel BASE FACADE Illuminate/Support/Facades/Facade.php

  31. @christophrumpel BASE FACADE Illuminate/Support/Facades/Facade.php

  32. @christophrumpel BASE FACADE Illuminate/Support/Facades/Facade.php

  33. @christophrumpel FOUND IT Illuminate/Http/Request.php

  34. @christophrumpel OUR EXAMPLE

  35. @christophrumpel Misleading Hard to test Tightly coupled Bad practice TRUE

    OR FALSE
  36. @christophrumpel OUR JOURNEY LifeCycle Facades Eloquent

  37. @christophrumpel ORM Active Record Models Builder ELOQUENT

  38. @christophrumpel DATABASE

  39. @christophrumpel OUR EXAMPLE

  40. @christophrumpel OUR EXAMPLE

  41. @christophrumpel CONFERENCE MODEL

  42. @christophrumpel STATIC WHERE METHOD DOES NOT EXIST Illuminate/Database/Eloquent/Model.php

  43. @christophrumpel STILL NO WHERE METHOD Illuminate/Database/Eloquent/Model.php

  44. @christophrumpel STILL NO WHERE METHOD Illuminate/Database/Eloquent/Model.php

  45. @christophrumpel FOUND IT Eloquent/Builder.php

  46. @christophrumpel OUR EXAMPLE

  47. @christophrumpel GET FIRST CONFERENCE Eloquent/Builder trait BuildsQueries

  48. @christophrumpel GET FIRST CONFERENCE Eloquent/Builder trait BuildsQueries

  49. @christophrumpel GET FIRST CONFERENCE Eloquent/Builder trait BuildsQueries

  50. @christophrumpel OUR EXAMPLE

  51. @christophrumpel NO SPEAKERS PROPERTY

  52. @christophrumpel Content-Security-Policy: policy NO SPEAKERS PROPERTY Illuminate/Database/Eloquent/Model.php

  53. @christophrumpel CHECK ATTRIBUTES Base Eloquent Model HasAttribute concern

  54. @christophrumpel CHECK ATTRIBUTES Base Eloquent Model HasAttribute concern

  55. @christophrumpel

  56. @christophrumpel

  57. @christophrumpel OUR EXAMPLE

  58. @christophrumpel OUR JOURNEY LifeCycle Facades Eloquent

  59. @christophrumpel Master your tools. Laravel is one of them.

  60. @christophrumpel NO SPEAKERS PROPERTY Base Eloquent Model Laravel Core Adventures

    https://laravelcoreadventures.com @christophrumpel
  61. @christophrumpel A Conference is about people.

  62. @christophrumpel QUESTIONS?

  63. @christophrumpel https://laravelcoreadventures.com https://christoph-rumpel.com https://speakerdeck.com/christophrumpel https://store.christoph-rumpel.com RESOURCES