Co to jest Laravel

Programowanie to względnie nowa dziedzina, a przynajmniej za taką jest uważana. Jednakowoż minęło już kilkadziesiąt lat odkąd zaczęto pisać pierwsze linijki kodu mniej więcej w sposób, który uznajemy dziś za programowanie.

Kilkadziesiąt lat to dużo, szczególnie w programowaniu. Fakt, że programowanie aplikacji internetowych jest trochę młodsze, bo i sam internet wynaleziono trochę później niż komputery. Jednak programowanie aplikacji internetowych ma już dziś sporą historię i różni się znacząco od tego, jak wyglądało na początku, czy nawet 10-15 lat temu.

Dzisiaj pisząc kod, programiści mogą skupić się na UNIKALNYCH celach biznesowych projektu – dostarczeniu odpowiednich funkcji do aplikacji wyjątkowych dla konkretnego biznesu. Kiedyś natomiast, oprócz tego, masę czasu programisty pochłaniało pisanie funkcjonalności „wspólnych” dla aplikacji internetowych, czyli takich, które są typowe dla oprogramowania webowego:

  • rejestracja użytkownika, logowanie, uwierzytelnianie
  • walidacja danych przesyłanych do aplikacji
  • przesyłanie danych z backendu do frontendu,
  • wyświetlanie danych na urządzeniu końcowym (templating)
  • dostęp do informacji w bazie danych i sposób ich wyłuskiwania

Praktycznie żadna aplikacja internetowa nie może obejść się bez przynajmniej jednej z powyższych funkcjonalności. Z tego też powodu powstało i powstaje szereg gotowych skryptów, bibliotek, komponentów itd., poświęconych tym popularnym funkcjom.

Oprócz nich, powstają też frameworki. One z kolei podchodzą do tematu całościowo – proponują określony sposoby rozwiązania architektury aplikacji szczególnie uwzględniając te popularne funkcjonalności. Laravel jest to właśnie taki framework. Ściągając Laravela otrzymujemy gotowy szkielet aplikacji z gotowymi rozwiązaniami na popularne aspekty aplikacji, które rozwiązane są w sposób obmyślony przez autorów frameworka, lub też wykorzystują zewnętrzne biblioteki (o którym pisałem wyżej) na które zdecydowali się autorzy.

Nie trzeba dodawać, że frameworki rozwijają się wraz z rozwojem języków programowania i technologii, a w czasie gdy zdążysz opanować jeden framework, z pewnością pojawi się kilka następnych, stworzonych z zamiarem jego zastąpienia. Zatem, czy warto uczyć się Laravela, czy warto uczyć się w ogóle jakiegokolwiek frameworka? Jak mawiał pewien bardzo pomocny architekt systemowy, z którym niegdyś pracowałem: i tak, i nie. Zależy to od wielu indywidualnych czynników. Ale można to pytanie zadać trochę w inny sposób, aby pokusić się o poszukanie odpowiedzi. Mianowicie: po co mi framework? Wyjaśniam to w kolejnej części: Jak działa Laravel?