PHP frameworks

Introduktion

PHP er et af de ældste og mest populære webudviklingssprog, og Laravel er dets mest populære framework (værktøj). I denne artikel diskuterer vi hvorfor.

At vælge det rigtige framework til dit projekt er et af de mest vanskelige aspekter af de indledende stadier af projektudvikling. Selvom de generelle kriterier for et udviklingshold til at vælge frameworks er – omkostningerne ved udvikling, deres erfaringer med det, populariteten af frameworket osv. Der er flere andre faktorer som tredjepartsintegrationer, implementering, test og mange flere som har brug for overvejelse.

PHP-scriptsproget har en række frameworks med robuste tekniske egenskaber såsom – Laravel, Symfony, CodeIgniter, Yii, Phalcon, CakePHP, Zend, Slim osv. (en liste over PHP frameworks gennem tiden kan ses her). Alligevel har Laravel bevaret den øverste placering på listen over toppen af PHP MVC frameworks.

Her er beviset:

Billedkilde: Google. Følgende billede viser tendensen i de sidste fem år for valg af PHP Frameworks på Google Trends. (I ovenstående graf er værdien 100 den største popularitet for udtrykket. En værdi på 50 betyder, at udtrykket er halvdelen så populært)

Grafen ovenfor viser tydeligt, hvordan Laravel i stigende grad er blevet populært sammenlignet med de andre PHP-frameworks i de sidste fem år. Laravel er helt klart den bedste framework i 2018.

Laravel er også et af de mest trendy på GitHub med næsten 45.000 stjerner (og stadigt stigende).

Så hvad er grunden til at få en så enorm popularitet, og hvordan dækker det alle de ting, som din webapplikation har brug for?

Lad os finde ud af i denne artikel, hvad Laravel præcist er og grundene til, at Laravel forbliver den førende PHP-frameworks – selv i dag!

Hvad er Laravel?

Laravel er et open source PHP-framework udviklet og vedligeholdt af Taylor Otwell som et forsøg på at give et mere avanceret alternativ til CodeIgniter-frameworket. Dets arkitektoniske mønstre er hovedsageligt baseret på Symfony.

Dette framework fik mere popularitet efter frigivelsen af version 3, der inkluderede funktioner som kommandolinje-grænsefladen kaldet Artisan, support til databasesystemer og migrationer. Det introducerede også et pakkesystem kaldet bundles.

Laravels første stabile version blev frigivet i juni 2011. Følgende er en oversigt over senere udgivelser:

Version Udgivelse Bug Fixes Indtil Security Fixes Indtil
5.5 (LTS) August 30th, 2017 August 30th, 2019 August 30th, 2020
5.6 February 7th, 2018 August 7th, 2018 February 7th, 2019
5.7 September 4th, 2018 March 4th, 2019 September 4th, 2019
5.8 February 26th, 2019 August 26th, 2019 February 26th, 2020
6 (LTS) September 3rd, 2019 September 3rd, 2021 September 3rd, 2022

Hvorfor Laravel?

Vi vil skitsere nogle af de interessante funktioner i Laravel-frameworket her, som vil forklare, hvorfor det vinder så stor popularitet.

1. MVC-support og objektorienteret tilgang

Den første og bedste fordel ved at bruge Laravel-rammen er, at den følger – Model, View og Controller-baseret arkitektonisk mønster, og det har en udtryksfuld smuk syntaks, der gør det objektorienteret.

2. Indbygget godkendelse og godkendelse

Laravel leverer en out-of-the-box-konfiguration til godkendelses- og autorisationssystemet. Det vil sige, i kun få håndværkskommandoer er din applikation udstyret med sikker godkendelse og autorisation.

3. Pakkesystem

Et pakkesystem omhandler flere software eller biblioteker, der hjælper webapplikationen med at automatisere processen. Laravel bruger en komponist som en afhængighedsadministrator, som administrerer al den information, der er nødvendig for at administrere pakker. Pakker er en fantastisk måde at fremskynde udviklingen på er at give den funktionalitet, vi har brug for, ude af kassen. Image, Laravel Debug bar og Laravel IDE-hjælper er nogle af de bedste Laravel-pakker.

4. Understøttelse af forskellige Fil Systemer

Laravel har også en indbygget support til skylagringssystemet som Amazon S3 og Rack space Cloud Storage og selvfølgelig til lokal opbevaring. Det er utroligt enkelt at skifte mellem disse lagringsmuligheder, da API’en forbliver den samme for hvert system. Man kan bruge alle tre systemer i en applikation til at tjene filer fra flere steder, som i et distribueret miljø.

5. Artisan konsol

Laravel har sin egen kommandolinjegrænseflade kaldet Artisan. Almindelige anvendelser af Artisan inkluderer udgivelse af pakkeaktiver, styring af databasemigrering, podning og generering af kedelplade-kode til nye controllere, modeller og migrationer. Denne funktion frigør udvikleren fra at oprette korrekte kodeskeletter. Man kan udvide Artisans funktionalitet og funktioner ved at implementere nye brugerdefinerede kommandoer.

6. Veltalende ORM

Eloquent ORM er Laravels indbyggede ORM-implementering. Laravel har den bedste Object-relationelle Mapper sammenlignet med de andre rammer derude. Denne objekt-relationelle kortlægning giver dig mulighed for at interagere med dine databaseobjekter og databaseforhold ved hjælp af ekspressiv syntaks.

7. Skabelons-motor

Laravel kommer med den indbyggede skabelonmotor kendt som Blade Template Engine. Bladetempleringsmotor kombinerer en eller flere skabeloner med en datamodel for at frembringe resulterende visninger, gør det ved at transportere skabelonerne i cache-PHP-kode for forbedret ydelse. Blade leverer også et sæt af sine egne kontrolstrukturer såsom betingede udsagn og sløjfer, som internt er kortlagt til deres PHP-kolleger.

8. Opgaveskema

Scheduler, der blev introduceret i Laravel 5.0, er en tilføjelse til Artisan-kommandolinjeværktøjet, der tillader programmatisk planlægning af periodisk udførte opgaver. Internt afhænger planlæggeren af ​​cron-dæmonen for at køre et enkelt Artisan-job, der igen udfører de konfigurerede opgaver.

9. Begivenheder og udsendelser

Laravel har et koncept kaldet transmission, som er nyttigt i den moderne webapplikation til at implementere data i realtid, der viser live feeds osv. Broadcasting giver dig mulighed for at dele samme begivenhedsnavn mellem din serverside og klientsiden, så du vil kunne trække data i realtid fra applikationen.

10. Testning

Når det kommer til test af applikationen, leverer Laravel som standard enhedstest for applikationen, som i sig selv indeholder test, der registrerer og forhindrer regressioner i rammen. Integration af PHP-enhed, såsom en testramme, er meget let i Laravel-applikationen. Derudover kan tests køres gennem det medfølgende håndværks kommandolinjeprogram.

Bortset fra disse funktioner har Laravel også officielle pakker, der er nyttige, når de integrerer forskellige funktioner i applikationen.

Officielle pakker

1. Cashier introduceret i Laravel 4.2, den indeholder grænseflader til styring af abonnementsfaktureringstjenester leveret af Stripe, såsom håndtering af kuponer og generering af fakturaer.

2. Socialite introduceret i Laravel 5.0, det giver en forenklet godkendelsesmekanisme til forskellige sociale websteder, herunder Google, Facebook, GitHub, Twitter og Bitbucket. Så din applikation kan effektivt implementere disse socialite-logins på mindst mulig tid. Envoy giver dig en mulighed for at automatisere de fælles opgaver ved hjælp af minimal syntaks. Den bruger Blade-skabelonen som syntaks til let at opsætte opgaver til distribution, håndværkskommandoer og mange flere.

3. Horizon bruges til at overvåge køen på dit system, da det giver det smukke dashboard og kodedrevet konfiguration. Hovedformålet med Horizon er at overvåge joboutput, den tid, der kræves for at udføre jobbet og for at spore jobfejlene.

4. Passport bruges til godkendelse af brug via API ved hjælp af OAuth server AS API opretholder ikke HTTP-sessionen. API bruger typisk tokenet til at autentificere brugeren, og Laravel-pas giver den fulde OAuth-serverimplementering til webapplikation på et par minutter.

5. Scout er ude af pakke leveret af Laravel til fuldtekstsøgning ved hjælp af Eloquent-modellerne. Angola er standarddriveren, der bruges til fuldtekstsøgning, og den giver den fantastiske service, også kan du vælge en anden driver som en brugerdefineret driver, da den er enkel og kan udvide søgefunktionen.

Alle disse out-of-the-box-funktioner i Laravel-frameworket er mest velegnede til alle former for webapplikationsudvikling – lige fra lille til stor virksomhed. Det giver også masser af indbyggede funktionaliteter, der giver udviklere mulighed for at arbejde let. Desuden er de officielle pakker leveret af Laravel et kirsebær ovenpå kagen.

Konklusion

Uanset hvilket projekt du skal i gang med, vil Laravel stort set altid være det rette til opgaven. Men vær dog opmærksom på, at Laravel kun er lige så godt, som personen der udvikler i det. Derfor er det kun et anbefalet system til dem, som har god erfaring med objektorienteret PHP og standarder, og selv har prøvet erfaring med at lave projekter i andre systemer eller selv.

Hvis du mangler viden eller inspiration, er vores samling af projekter et godt udgangspunkt: https://github.com/datalaere/

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *