Laravel
Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den
version , der blev gennemgået den 13. februar 2022; checks kræver
7 redigeringer .
Laravel er en gratis open source webramme designet til udvikling ved hjælp af MVC ( Model View Controller ) arkitektoniske model . Laravel er udgivet under MIT-licensen .
Projektets kildekode er hostet på GitHub [6] . I en sitepoint.com- undersøgelse fra december 2013 af de mest populære PHP -frameworks blev Laravel rangeret som det mest lovende projekt for 2014 [7] .
I 2015, som et resultat af en sitepoint.com- undersøgelse om brugen af PHP- framework blandt programmører, indtog han førstepladsen i følgende kategorier:
- Enterprise Grade Framework
- Rammer for personlige projekter
- En skatkammer af antimønstre
Historie
Laravel blev skabt af Taylor Otwell som et mere funktionelt alternativ til CodeIgniter , som ikke gav forskellige ekstra funktioner. Den første beta-udgivelse af Laravel blev tilgængelig den 9. juni 2011, og Laravel 1 blev udgivet samme måned. Laravel 1 inkluderer indbygget understøttelse af godkendelse, lokalisering, model, visning, sessioner, routing og andre mekanismer.
Laravel 2 blev udgivet i september 2011. Nye nøglefunktioner omfatter understøttelse af controllere, som gjorde rammeværket fuldt MVC -kompatibelt, indbygget understøttelse af invertering af kontrol og Blade
-skabelonmotoren .
Laravel 3 blev udgivet i februar 2012 med et sæt nye funktioner, herunder en Command Line Interface (CLI) kaldet "Artisan", indbygget understøttelse af flere databasestyringssystemer , databasemigreringer som versionskontrol, hændelseshåndtering. Udgivelsen af Laravel 3 modtog en betydelig stigning i antallet af brugere, hvilket påvirkede dets popularitet.
Laravel 4 blev udgivet i maj 2013. Der blev foretaget væsentlige ændringer i strukturen af Laravel, og dets layout blev flyttet til et sæt separate pakker distribueret gennem Composer. Dette layout forbedrede udvidelsesmulighederne for Laravel 4, som blev kombineret med den officielle regulære udgivelsesplan på seks måneder mellem mindre udgivelser. Andre nye funktioner i Laravel 4-udgivelsen inkluderer dumping af databasetabeller for den indledende population, understøttelse af beskedkøer, indbygget understøttelse af afsendelse af forskellige typer e-mail og understøttelse af blød sletning af databaseposter.
Laravel 5 blev udgivet i februar 2015 som et resultat af interne ændringer, der endte med en omnummereret udgivelse af Laravel 4.3 fremover. Nye funktioner i Laravel 5-udgivelsen inkluderer understøttelse af planlægning af tilbagevendende opgaver via Scheduler-pakken, et Flysystem-abstraktionslag, der tillader fjernlagring at blive brugt på samme måde som lokale filsystemer, bedre håndtering af pakkeaktiver via Elixir og forenklet godkendelse fra ydersiden via den valgfri Socialite-pakke. Laravel 5 introducerede også en ny intern mappetræstruktur til udviklede applikationer.
Laravel 5.1 udgivet i juni 2015. Dette er den første Long Term Support (LTS) udgivelse af Laravel, med en planlagt fejlrettelse i tre år og sikkerhedsrettelser i tre år.
Laravel 5.3 udgivet den 23. august 2016. De nye funktioner i 5.3 fokuserer på at forbedre udviklingshastigheden ved at tilføje flere forbedringer til individuelle opgaver.
Laravel 5.4 udgivet den 24. januar 2017. Denne udgivelse har mange nye funktioner såsom Laravel Dusk, Laravel Mix, Blade Components and Slots, Markdown Emails, Automatic Facades, Route Improvements.
Laravel 5.5 udgivet den 30. august 2017. Gendannet Whoops-pakken til fejlfinding. Fra innovationerne, anmodningsbehandlingsmetoden, nye direktiver til Blade-skabelonmotoren, en ny kommando til databasemigrering - migrate: fresh [8] .
Laravel 7.2 udgivet 19. marts 2020 [9]
Laravel 8.3 blev udgivet den 16. september 2020. [ti]
Laravel 9 blev udgivet den 8. februar 2022. [elleve]
Laravel og designmønstre
Funktioner
Nøgletræk bag Laravel-arkitekturen [6] [12] :
- Pakker ( engelske pakker ) - giver dig mulighed for at oprette og forbinde moduler i Composer -format til en applikation på Laravel. Mange ekstra funktioner er allerede tilgængelige som sådanne moduler.
- Eloquent ORM er en PHP - implementering af ActiveRecord -designmønsteret . Giver dig mulighed for nøje at definere relationer mellem databaseobjekter . Laravels standard Fluent-forespørgselsbygger understøttes af Eloquent-kernen.
- Applikationslogik er en del af applikationen, der udvikles, erklæret enten ved hjælp af controllere eller ruter ( lukningsfunktioner ). Erklæringens syntaks ligner den syntaks, der bruges i Sinatra - rammen .
- Omvendt routing binder applikationsgenererede links og ruter sammen, så sidstnævnte kan ændres, mens de relaterede links automatisk opdateres. Når du opretter links ved hjælp af navngivne ruter, genererer Laravel automatisk endelige URL'er .
- REST - controllere er et ekstra lag til at adskille logikken til behandling af HTTP GET- og POST-anmodninger.
- Køer [13] (baggrundsjobbehandling) - giver dig mulighed for at udføre opgaver uden at bremse brugergrænsefladen eller API-svar, i en separat baggrundsproces (eller flere), med mulighed for at oprette flere køer og adskille dem efter prioritet.
- WebSockets broadcasting [14] (baggrundshændelsesudsendelse) - bruges til at implementere brugergrænseflader, der opdateres i realtid, giver et mere effektivt alternativ til konstant at polle din applikationsserver for dataændringer.
- Klasse autoloading er en mekanisme til automatisk indlæsning af PHP -klasser uden behov for at inkludere deres definitionsfiler i include . Download on demand forhindrer download af unødvendige komponenter; kun dem, der faktisk er brugt, indlæses.
- Visningskomponister er kodeblokke , der udføres, når en visning (skabelon) genereres.
- Inversion of Control -giver dig mulighed for at få forekomster af objekter efter princippet om omvendt kontrol. Denkan også bruges til at oprette og modtage singleton- objekter .
- Migrations er et versionskontrolsystem til databaser . Giver dig mulighed for at knytte ændringer i applikationskoden til ændringer, der skal foretages i databasestrukturen, hvilket forenkler implementeringen og opdateringen af applikationen.
- Unit testing ( unit tests ) - spiller en meget stor rolle i Laravel, som selv indeholder en lang række tests for at forhindre regression (fejl på grund af kodeopdateringer eller rettelse af andre fejl).
- Indbygget pakke til Docker [15] - giver dig mulighed for at udvikle og bruge webapplikationer uden at opsætte miljøet, du skal have installeret Docker-software for at fungere .
- Sideinddeling , sidedeling – forenkler sidegenerering ved at erstatte de forskellige måder at løse dette problem på med en enkelt mekanisme indbygget i Laravel .
- NoSQL - understøttelse af Redis DBMS med intuitiv ORM -visning .
- Masser af færdige admin paneler [16] , skabeloner og CRUD [17] .
- Understøttelse af Blade- og Twig-skabelonmotorer.
- Mulighed for at inkludere CSS- skabeloner.
Konferencer
Laracon er det almindelige navn for konferencer dedikeret til Laravel-rammen. Den første konference fandt sted i Washington , USA den 22.-23. februar 2013. Den anden fandt sted i Amsterdam , Holland den 30.-31. august 2013, og var den første europæiske Laracon. Den tredje konference blev afholdt i New York , USA , 15.-16. maj 2014. Alle disse konferencer er organiseret med aktiv deltagelse af UserScape og med hjælp fra forskellige sponsorer [18] [19] [20] .
Se også
Noter
- ↑ History of Laravel PHP framework, Eloquence emerging - 2013.
- ↑ Laravel Open Source-projektet på Open Hub: Languages-side - 2006.
- ↑ https://github.com/laravel/framework/releases/tag/v9.28.0 - 2022.
- ↑ Udgivelse 9.3.9 - 2022.
- ↑ Laravel Open Source-projektet på Open Hub: Licensside - 2006.
- ↑ 1 2 Daniel Gafitescu. Farvel CodeIgniter, hej Laravel . sitepoint.com (6. juni 2013). Hentet 21. december 2013. Arkiveret fra originalen 30. november 2020. (ubestemt)
- ↑ Bruno Skvorc. Bedste PHP Frameworks 2014 . sitepoint.com (28. december 2013). Hentet 2. januar 2014. Arkiveret fra originalen 6. juni 2014. (ubestemt)
- ↑ Laravel 5.5 LTS er nu udgivet , Laravel News ( 30. august 2017). Arkiveret fra originalen den 30. august 2017. Hentet 31. august 2017.
- ↑ Laravel 7.2 udgivet - Laravel News . Hentet 24. marts 2020. Arkiveret fra originalen 24. marts 2020. (ubestemt)
- ↑ Laravel 8.3 udgivet . Laravel Nyheder . Hentet 5. maj 2021. Arkiveret fra originalen 5. maj 2021.
- ↑ Paul Redmond . Laravel 9 er nu udgivet! , Laravel News (8. februar 2022). Arkiveret fra originalen den 17. februar 2022. Hentet 15. februar 2022.
- ↑ Jeffrey Way. Hvorfor Laravel overtager PHP -fællesskabet . tutsplus.com (29. november 2012). Dato for adgang: 21. december 2013. Arkiveret fra originalen 20. december 2013. (ubestemt)
- ↑ Køer - PHP-rammen for webhåndværkere . laravel.com . Hentet: 22. august 2022.
- ↑ Broadcasting - Laravel - PHP-rammen for webhåndværkere . (ubestemt)
- ↑ Laravel Sail - PHP-rammen for webhåndværkere . laravel.com . Hentet: 22. august 2022.
- ↑ 20+ Bedste Laravel Admin Panel Generators " CSS Author . Hentet 24. marts 2020. Arkiveret fra originalen 24. marts 2020. (ubestemt)
- ↑ Josh v7.1 - skabelon til Laravel (admin panel + hjemmeside + CRUD) " Alt til webmasteren. Oprettelse og promovering af webstedet, scripts, skabeloner og CMS . Dato for adgang: 24. marts 2020. Arkiveret den 24. marts, 2020. (ubestemt)
- ↑ Laravel wiki (engelsk) (downlink) . laravel.io. Hentet 2. januar 2014. Arkiveret fra originalen 6. februar 2014. (ubestemt)
- ↑ Laracon EU 2013 . laracon.eu. Hentet 2. januar 2014. Arkiveret fra originalen 26. december 2013. (ubestemt)
- ↑ Userscape hjemmeside . userscape.com. Dato for adgang: 2. januar 2014. Arkiveret fra originalen 4. januar 2014. (ubestemt)
Litteratur
- Shawn McCool. Laravel starter . — Packt Publishing, 2012. - 64 s. - ISBN 978-1-78216-091-5 .
- Luke Welling, Laura Thomson. Udvikling af webapplikationer med PHP og MySQL. - 5. udgave - Sankt Petersborg. : " Dialektik ", 2019. - S. 768. - ISBN 978-5-9908911-9-7 .
- Luke Welling, Laura Thomson. PHP & MySQL webudvikling. — femte udgave. - " Addison-Wesley ", 2017. - S. 687. - ISBN 978-0-321-83389-1 .
Links
I sociale netværk |
|
---|
Tematiske steder |
|
---|