Članci

Što je Laravel, kako radi i osnovna arhitektura za izradu WEB aplikacija

Laravel je web okvir temeljen na PHP-u za izradu vrhunskih web aplikacija, koristeći jednostavnu, ali moćnu sintaksu.

Laravel PHP okvir dolazi sa solidnom kolekcijom alata i pruža arhitekturu za proizvedene aplikacije. To je PHP okvir otvorenog koda koji koristi MVC arhitekturu:

  • Okvir: je zbirka metoda, klasa ili datoteka koje programer koristi, a također može proširiti njihovu funkcionalnost korištenjem vlastitog koda.
  • arhitektura: je specifičan obrazac dizajna koji okvir slijedi. Laravel slijedi MVC arhitekturu.

mvc

Akronim se sastoji od tri slova, a značenje je sljedeće:

  • M: Predložak. Model je klasa koja se bavi bazom podataka. Na primjer, ako imamo korisnike u aplikaciji tada ćemo imati model korisnika koji je zadužen za postavljanje upita tablici korisnika, ako imamo model korisnika tada ćemo također imati tablicu korisnika.
  • V: Pogled. Pogled je klasa koja se brine o svemu što možemo vidjeti o aplikaciji u pregledniku.
  • C: Upravljači. Kontroler je posrednik koji se brine i za model i za prikaz. Kontroler je klasa koja dohvaća podatke iz modela i šalje ih klasi pogleda.

Prednosti i značajke

Izrada sustava autorizacije i autentifikacije

Svaki vlasnik web aplikacije mora biti siguran da neovlašteni korisnici ne pristupaju zaštićenim resursima. Laravel pruža jednostavan način za implementaciju autentifikacije. Također pruža jednostavan način organiziranja logike autorizacije i kontrole pristupa resursima.

Integracija s alatima

Laravel je integriran s mnogim alatima koji stvaraju bržu aplikaciju. Nije potrebno samo izraditi aplikaciju, već i izraditi bržu aplikaciju. Integracija s pozadinom za predmemoriranje jedan je od glavnih koraka za poboljšanje performansi web-aplikacije. Laravel je integriran s nekim popularnim pozadinama za predmemoriranje kao što su Redis i Memcached.

Integracija usluge pošte

Laravel je integriran s uslugom pošte. Ova se usluga koristi za slanje obavijesti e-poštom. Pruža čist i jednostavan API koji vam omogućuje brzo slanje e-pošte putem lokalne usluge ili usluge temeljene na oblaku.

Automatizacija testiranja

Testiranje proizvoda vrlo je važno kako bismo bili sigurni da softver radi bez grešaka, grešaka i padova - kad god se izda nova verzija. Znamo da automatsko testiranje traje kraće od ručnog testiranja, posebno za neregresijsko testiranje. Laravel je razvijen imajući na umu i testiranje.

Odvajanje koda poslovne logike od koda prezentacije

Odvajanje koda poslovne logike i prezentacijskog koda omogućuje dizajnerima HTML izgleda da promijene izgled i dojam bez interakcije s programerima. Programeri mogu brže popraviti pogrešku ako je omogućeno odvajanje koda poslovne logike (Kontroler) i prezentacijskog koda (Pogled). Znamo da Laravel slijedi MVC arhitekturu, tako da je odvajanje ključno.

Popravak najčešćih tehničkih propusta

Laravel je siguran okvir jer štiti web aplikaciju od svih sigurnosnih propusta. Ranjivost je jedan od najvažnijih aspekata u razvoju web aplikacija. Američka organizacija OWASP Foundation, defiuklanja glavne sigurnosne propuste kao što su SQL injection, krivotvorenje zahtjeva, skriptiranje itd.

CRON: planiranje konfiguracije i aktivnosti upravljanja

WEB aplikacije uvijek zahtijevaju mehanizme raspoređivanja zadataka za planiranje i izvršavanje zadataka na vrijeme. Na primjer, kada poslati e-poštu pretplatnicima ili kada očistiti tablice baze podataka na kraju dana. Kako bi rasporedili zadatke, programeri trebaju stvoriti Cron unos za svaki zadatak i planer naredbi Laravel defizavršava zapovjedno planiranje.

Stvaranje Laravel projekta

Da biste kreirali svoj prvi Laravel projekt, morate imati Composer instaliran. Ako nije prisutan na vašem računalu, nastavite s instalacijom kako je opisano u našem članku o kompozitor.

Nakon toga stvorite novi direktorij u svom sustavu za svoj novi Laravel projekt. Zatim idite na stazu na kojoj ste stvorili novi direktorij i pokrenite naredbu create project composer create-projectupisivanjem sljedeće naredbe:

composer create-project laravel/laravel myex-app

Ova naredba (verzija 9.x) stvara projekt pod nazivom myex-app

Ili možete kreirati nove projekte Laravel globalno instaliranje programa za instalaciju Laravel sredstva Composer:

Innovation newsletter
Ne propustite najvažnije vijesti o inovacijama. Prijavite se da ih primate e-poštom.
composer global require laravel/installer
laravel new myex-app

Nakon izrade projekta, pokrenite lokalni Laravel razvojni poslužitelj pomoću naredbe serve Dell 'Artisan CLI od Laravel:

php artisan serve

Nakon pokretanja razvojnog poslužitelja Artisan, vaša će aplikacija biti dostupna u vašem web pregledniku na adresi http://localhost:8000. Sada ste spremni za korištenje Laravel. Naravno, možete također htjeti postaviti bazu podataka.

Struktura aplikacije u Laravelu

Laravel struktura je u osnovi struktura mapa, podmapa i datoteka uključenih u projekt. Nakon što je projekt kreiran u Laravel-u, možemo vidjeti strukturu aplikacije kao što je prikazano na slici Laravel korijenske mape:

config

Konfiguracijska mapa uključuje konfiguracije i pridružene parametre koji su potrebni za ispravno funkcioniranje Laravel aplikacije. Različite datoteke uključene u konfiguracijsku mapu navedene su na slici ispod. Imena datoteka predstavljaju opseg konfiguracije.

baza podataka

Ovaj direktorij uključuje razne parametre za funkcionalnost baze podataka. Sadrži tri poddirektorija:

  • Seeds: sadrži klase koje se koriste za jediničnu test bazu podataka;
  • Migracije: ova se mapa koristi za generiranje i usklađivanje strukture baze podataka s aplikacijom;
  • Tvornice: Ova se mapa koristi za generiranje velikog broja zapisa podataka.
javnost

To je korijenska mapa koja pomaže inicijalizirati Laravel aplikaciju, tj. početak aplikacije. Uključuje sljedeće datoteke i mape:

  • .htaccess: datoteka koja pruža konfiguraciju poslužitelja;
  • javascript i css: sadrže sve resursne datoteke Laravel aplikacije;
  • index.php: datoteka potrebna za pokretanje web aplikacije.
Resursi

Direktorij Resursi sadrži datoteke koje poboljšavaju web aplikaciju. Podmape uključene u ovaj direktorij i njihova svrha:

  • sredstva: mapa uključuje datoteke kao što su LESS i SCSS, koje su potrebne za stil web aplikacije;
  • jezik: uključi konfiguraciju za lokalizaciju ili internalizaciju;
  • pogledi: su HTML datoteke ili predlošci koji komuniciraju s krajnjim korisnicima i igraju primarnu ulogu u MVC arhitekturi.
skladištenje

Ovo je mapa koja pohranjuje sve zapisnike i datoteke koje su potrebne kada se izvodi Laravel projekt. Ispod su podmape uključene u ovaj direktorij i njihova svrha −

  • app: ova mapa sadrži datoteke koje se uzastopno pozivaju;
  • okvir: sadrži sesije, predmemorije i poglede koji se često pozivaju;
  • Dnevnici: Sadrži datoteke koje prate probleme tijekom izvođenja, posebno sve zapisnike izuzetaka i pogrešaka.
tests

Svi slučajevi jediničnog testiranja nalaze se u ovom direktoriju. Imenovanje klasa testnih slučajeva je camel_case i slijedi konvenciju imenovanja temeljenu na funkcionalnosti klase.

Prodavač

Laravel se temelji na upravljanim ovisnostima kompozitor, na primjer za instaliranje postavki Laravela ili za uključivanje biblioteka treće strane, itd.

Mapa dobavljača sadrži sve ovisnosti o kompozitor.

Ercole Palmeri

Innovation newsletter
Ne propustite najvažnije vijesti o inovacijama. Prijavite se da ih primate e-poštom.

Nedavni članci

Budućnost je ovdje: Kako pomorska industrija revolucionira globalnu ekonomiju

Pomorski sektor je prava globalna gospodarska sila, koja je krenula prema tržištu od 150 milijardi...

1 svibnja 2024

Izdavači i OpenAI potpisuju ugovore za reguliranje protoka informacija koje obrađuje umjetna inteligencija

Prošlog ponedjeljka, Financial Times je najavio dogovor s OpenAI-jem. FT licencira svoje novinarstvo svjetske klase...

Travnja 30 2024

Online plaćanja: Evo kako vas usluge strujanja tjeraju da plaćate zauvijek

Milijuni ljudi plaćaju usluge strujanja, plaćajući mjesečne pretplate. Uvriježeno je mišljenje da ste…

Travnja 29 2024

Veeam nudi najopsežniju podršku za ransomware, od zaštite do odgovora i oporavka

Coveware by Veeam nastavit će pružati usluge odgovora na incidente cyber iznude. Coveware će ponuditi forenziku i mogućnosti sanacije...

Travnja 23 2024