Artikler

Hva er Laravel, hvordan det fungerer og grunnleggende arkitektur for å lage WEB-applikasjoner

Laravel er et PHP-basert nettrammeverk for å bygge avanserte nettapplikasjoner ved å bruke de enkle, men kraftige syntaksene.

Laravel PHP-rammeverket kommer med en solid samling av verktøy, og gir arkitekturen til applikasjonene som produseres. Det er et åpen kildekode PHP-rammeverk som bruker MVC-arkitekturen:

  • Rammeverk: er samlingen av metoder, klasser eller filer som programmereren bruker, og kan også utvide funksjonaliteten ved hjelp av sin egen kode.
  • arkitektur: er det spesifikke designmønsteret som rammeverket følger. Laravel følger MVC-arkitekturen.

mvc

Akronym består av tre bokstaver, betydningen er som følger:

  • M: Mal. En modell er en klasse som omhandler en database. For eksempel hvis vi har brukere i en applikasjon, vil vi ha en brukermodell som har ansvaret for å spørre brukertabellen, hvis vi har en brukermodell vil vi også ha en brukertabell.
  • V: Visning. En visning er en klasse som tar seg av alt vi kan se om applikasjonen i nettleseren.
  • C: Kontrollere. En kontroller er mellomleddet som tar seg av både modellen og utsikten. En kontroller er klassen som henter data fra modellen og sender den til visningsklassen.

Fordeler og funksjoner

Oppretting av autorisasjons- og autentiseringssystemer

Hver webapplikasjonseier må være sikker på at uautoriserte brukere ikke får tilgang til beskyttede ressurser. Laravel gir en enkel måte å implementere autentisering på. Det gir også en enkel måte å organisere autorisasjonslogikk og kontrollere tilgang til ressurser.

Integrasjon med verktøy

Laravel er integrert med mange verktøy som skaper en raskere app. Det er ikke bare nødvendig å lage appen, men også å lage en raskere app. Integrering med caching-backend er et av hovedtrinnene for å forbedre ytelsen til en nettapp. Laravel er integrert med noen populære caching-backends som Redis og Memcached.

Posttjenesteintegrasjon

Laravel er integrert med posttjenesten. Denne tjenesten brukes til å sende e-postvarsler. Det gir et rent og enkelt API som lar deg raskt sende e-post via en lokal eller skybasert tjeneste.

Test automatisering

Å teste et produkt er svært viktig for å sikre at programvaren fungerer uten feil, bugs og krasj - hver gang en ny versjon utgis. Vi vet at automatisert testing tar mindre tid enn manuell testing, spesielt for ikke-regresjonstesting. Laravel ble utviklet med tanke på testing også.

Separasjon av forretningslogikkkode fra presentasjonskode

Separasjonen av forretningslogikkkode og presentasjonskode gjør at HTML-layoutdesignere kan endre utseendet og følelsen uten å samhandle med utviklere. En feil kan fikses av utviklere raskere hvis separasjon mellom forretningslogikkkode (kontroller) og presentasjonskode (visning) er gitt. Vi vet at Laravel følger MVC-arkitekturen, så separasjon er nøkkelen.

Retting av de vanligste tekniske sårbarhetene

Laravel er et sikkert rammeverk da det beskytter nettapplikasjonen mot alle sikkerhetssårbarheter. Sårbarhet er et av de viktigste aspektene ved utvikling av nettapplikasjoner. Den amerikanske organisasjonen OWASP Foundation, defieliminerer store sikkerhetssårbarheter som SQL-injeksjon, forespørselsforfalskning, skripting og så videre.

CRON: planlegging av konfigurasjons- og administrasjonsaktiviteter

WEB-applikasjoner krever alltid oppgaveplanleggingsmekanismer for å planlegge og utføre oppgaver i tide. For eksempel når du skal sende e-post til abonnenter eller når du skal rydde opp i databasetabeller på slutten av dagen. For å planlegge oppgaver, må utviklere opprette Cron-oppføringen for hver oppgave, og Laravel-kommandoplanleggeren defiavslutter kommandoplanlegging.

Laravel-prosjektoppretting

For å lage ditt første Laravel-prosjekt, må du ha Composer installert. Hvis den ikke finnes på maskinen din, fortsett å installere den som beskrevet i vår artikkel om Komponer.

Deretter oppretter du en ny katalog i systemet for ditt nye Laravel-prosjekt. Naviger deretter til banen der du opprettet den nye katalogen, og kjør kommandoen create project composer create-projectved å skrive følgende kommando:

composer create-project laravel/laravel myex-app

Denne kommandoen (versjon 9.x) oppretter prosjektet med navn myex-app

Eller du kan lage nye prosjekter Laravel globalt installere installasjonsprogrammet til Laravel tramite Composer:

Nyhetsbrev for innovasjon
Ikke gå glipp av de viktigste nyhetene om innovasjon. Registrer deg for å motta dem på e-post.
composer global require laravel/installer
laravel new myex-app

Etter å ha opprettet prosjektet, start den lokale Laravel-utviklingsserveren ved å bruke kommandoen serve dell 'Artisan CLI av Laravel:

php artisan serve

Etter å ha startet utviklingsserveren Artisan, vil applikasjonen din være tilgjengelig i nettleseren din på http://localhost:8000. Nå er du klar til bruk Laravel. Det kan selvfølgelig også være lurt å sette opp en database.

Søknadsstruktur i Laravel

Laravel-strukturen er i utgangspunktet strukturen til mapper, undermapper og filer som er inkludert i et prosjekt. Når et prosjekt er opprettet i Laravel, kan vi se strukturen til applikasjonen som vist i Laravel-rotmappen:

Config

Konfigurasjonsmappen inneholder konfigurasjoner og tilhørende parametere, som kreves for at en Laravel-applikasjon skal fungere skikkelig. De forskjellige filene som er inkludert i konfigurasjonsmappen er oppført i bildet nedenfor. Filnavn representerer konfigurasjonsomfang.

DataBase

Denne katalogen inneholder ulike parametere for databasefunksjonalitet. Den inkluderer tre underkataloger:

  • Seeds: inneholder klassene som brukes for enhetstestdatabasen;
  • Migreringer: denne mappen brukes for generering og justering av DB-strukturen med applikasjonen;
  • Fabrikker: Denne mappen brukes til å generere et stort antall dataposter.
offentlig

Det er rotmappen som hjelper til med å initialisere Laravel-applikasjonen, dvs. starten av applikasjonen. Inkluderer følgende filer og mapper:

  • .htaccess: fil som gir serverkonfigurasjonen;
  • javascript og css: inneholder alle ressursfilene til Laravel-applikasjonen;
  • index.php: fil nødvendig for å initialisere en webapplikasjon.
Ressurser

Ressurskatalogen inneholder filer som forbedrer webapplikasjonen. Undermappene som er inkludert i denne katalogen og deres formål:

  • eiendeler: mappen inneholder filer som LESS og SCSS, som er nødvendige for stilen til webapplikasjonen;
  • lang: inkludere konfigurasjon for lokalisering eller internalisering;
  • visninger: er HTML-filene eller malene som samhandler med sluttbrukere og spiller en primær rolle i MVC-arkitekturen.
oppbevaring

Dette er mappen som lagrer alle loggene og filene som trengs når et Laravel-prosjekt kjører. Nedenfor er undermappene inkludert i denne katalogen og deres formål −

  • app: denne mappen inneholder filene som kalles etter hverandre;
  • rammeverk: inneholder økter, cacher og visninger som kalles ofte;
  • Logger: Inneholder filer som sporer kjøretidsproblemer, spesielt alle unntaks- og feillogger.
Tests

Alle enhetstesttilfeller finnes i denne katalogen. Navngivningen for testcase-klasser er camel_case og følger navnekonvensjonen basert på funksjonaliteten til klassen.

Leverandør

Laravel er basert på administrerte avhengigheter Komponer, for eksempel for å installere Laravel-oppsett eller for å inkludere tredjepartsbiblioteker osv.

Leverandørmappen inneholder alle avhengighetene til Komponer.

Ercole Palmeri

Nyhetsbrev for innovasjon
Ikke gå glipp av de viktigste nyhetene om innovasjon. Registrer deg for å motta dem på e-post.

Siste artikler

Fremtiden er her: Hvordan shippingindustrien revolusjonerer den globale økonomien

Marinesektoren er en ekte global økonomisk makt, som har navigert mot et 150 milliarder marked...

1 mai 2024

Utgivere og OpenAI signerer avtaler for å regulere flyten av informasjon som behandles av kunstig intelligens

Sist mandag kunngjorde Financial Times en avtale med OpenAI. FT lisensierer sin journalistikk i verdensklasse...

30 april 2024

Nettbetalinger: Her er hvordan strømmetjenester får deg til å betale for alltid

Millioner av mennesker betaler for strømmetjenester og betaler månedlige abonnementsavgifter. Det er vanlig oppfatning at du...

29 april 2024

Veeam har den mest omfattende støtten for løsepengevare, fra beskyttelse til respons og gjenoppretting

Coveware by Veeam vil fortsette å tilby responstjenester for cyberutpressing. Coveware vil tilby kriminaltekniske og utbedringsmuligheter...

23 april 2024