Artikoli

X'inhu Laravel, kif jaħdem u arkitettura bażika għall-ħolqien ta 'applikazzjonijiet WEB

Laravel huwa qafas tal-web ibbażat fuq PHP għall-bini ta 'applikazzjonijiet web high-end, bl-użu tas-sintassi sempliċi iżda qawwija tiegħu.

Il-qafas Laravel PHP jiġi ma 'kollezzjoni solida ta' għodod, u jipprovdi l-arkitettura għall-applikazzjonijiet prodotti. Huwa qafas PHP ta' sors miftuħ, li juża l-arkitettura MVC:

  • Qafas: hija l-ġbir ta 'metodi, klassijiet jew fajls li juża l-programmatur, u jista' wkoll jestendi l-funzjonalità tagħhom billi juża l-kodiċi tiegħu stess.
  • Arkitettura: huwa l-mudell tad-disinn speċifiku li jsegwi l-qafas. Laravel isegwi l-arkitettura MVC.

mvc

Akronimu magħmul minn tliet ittri, it-tifsira hija kif ġej:

  • M: Mudell. Mudell huwa klassi li tittratta database. Pereżempju jekk ikollna utenti f'applikazzjoni allura jkollna mudell ta' utenti li jkun inkarigat li jfittex it-tabella tal-utenti, jekk ikollna mudell tal-utenti allura jkollna wkoll tabella tal-utenti.
  • V: Ara. Veduta hija klassi li tieħu ħsieb dak kollu li nistgħu naraw dwar l-applikazzjoni fil-browser.
  • C: Kontrolluri. Kontrollur huwa l-intermedjarju li jieħu ħsieb kemm il-mudell kif ukoll il-veduta. Kontrollur huwa l-klassi li ġġib id-dejta mill-mudell u tibgħatha lill-klassi tal-vista.

Benefiċċji u karatteristiċi

Ħolqien ta' sistemi ta' awtorizzazzjoni u awtentikazzjoni

Kull sid ta' applikazzjoni tal-web għandu jkun ċert li utenti mhux awtorizzati ma jaċċessawx riżorsi protetti. Laravel jipprovdi mod faċli biex timplimenta l-awtentikazzjoni. Jipprovdi wkoll mod faċli biex tiġi organizzata l-loġika tal-awtorizzazzjoni u tikkontrolla l-aċċess għar-riżorsi.

Integrazzjoni ma 'għodod

Laravel huwa integrat ma 'ħafna għodod li joħolqu app aktar mgħaġġla. Mhux biss meħtieġ li tinħoloq l-app, iżda wkoll li tinħoloq app aktar mgħaġġla. L-integrazzjoni mal-caching backend hija waħda mill-passi ewlenin biex tittejjeb il-prestazzjoni ta 'web app. Laravel huwa integrat ma' xi backends caching popolari bħal Redis u Memcached.

Integrazzjoni tas-servizz tal-posta

Laravel huwa integrat mas-servizz tal-posta. Dan is-servizz jintuża biex jintbagħtu emails ta’ notifika. Jipprovdi API nadifa u sempliċi li tippermettilek tibgħat email malajr permezz ta' servizz fuq il-post jew ibbażat fuq il-cloud.

Awtomazzjoni tat-test

L-ittestjar ta' prodott huwa importanti ħafna biex jiġi żgurat li s-softwer jaħdem mingħajr żbalji, bugs u ħabtiet - kull meta tiġi rilaxxata verżjoni ġdida. Aħna nafu li l-ittestjar awtomatizzat jieħu inqas ħin mill-ittestjar manwali, speċjalment għall-ittestjar mhux ta 'rigressjoni. Laravel ġie żviluppat bl-ittestjar f'moħħu wkoll.

Separazzjoni tal-kodiċi tal-loġika tan-negozju mill-kodiċi tal-preżentazzjoni

Is-separazzjoni tal-kodiċi tal-loġika tan-negozju u l-kodiċi tal-preżentazzjoni tippermetti lid-disinjaturi tat-tqassim HTML jibdlu d-dehra u t-tħossok mingħajr ma jinteraġixxu mal-iżviluppaturi. Bug jista 'jiġi ffissat mill-iżviluppaturi aktar malajr jekk tiġi pprovduta separazzjoni bejn il-kodiċi tal-loġika tan-negozju (Kontrollur) u l-kodiċi tal-preżentazzjoni (View). Aħna nafu li Laravel isegwi l-arkitettura MVC, għalhekk is-separazzjoni hija essenzjali.

Iffissar tal-vulnerabbiltajiet tekniċi l-aktar komuni

Laravel huwa qafas sigur peress li jipproteġi l-applikazzjoni tal-web mill-vulnerabbiltajiet kollha tas-sigurtà. Il-vulnerabbiltà hija waħda mill-aktar aspetti importanti fl-iżvilupp tal-applikazzjoni tal-web. L-organizzazzjoni Amerikana Fondazzjoni OWASP, definishes vulnerabbiltajiet kbar tas-sigurtà bħal injezzjoni SQL, falsifikazzjoni talba, scripting, eċċ.

CRON: ippjanar ta' attivitajiet ta' konfigurazzjoni u ġestjoni

L-applikazzjonijiet tal-WEB dejjem jeħtieġu mekkaniżmi tal-iskedar tal-kompiti biex jiġu skedati u teżegwiti l-kompiti fil-ħin. Pereżempju, meta tibgħat emails lill-abbonati jew meta tnaddaf it-tabelli tad-database fl-aħħar tal-ġurnata. Biex tiskeda l-kompiti, l-iżviluppaturi jeħtieġ li joħolqu l-entrata Cron għal kull kompitu, u l-iskedar tal-kmand Laravel defijispiċċa l-ippjanar tal-kmand.

Ħolqien tal-proġett Laravel

Biex toħloq l-ewwel proġett Laravel tiegħek, jeħtieġ li jkollok il- Composer installati. Jekk ma tkunx preżenti fuq il-magna tiegħek, ipproċedi biex tinstallaha kif deskritt fl-artiklu tagħna dwar kompożitur.

Wara dan oħloq direttorju ġdid fis-sistema tiegħek għall-proġett Laravel il-ġdid tiegħek. Sussegwentement, innaviga lejn il-mogħdija fejn ħloqt id-direttorju l-ġdid, u mexxi l-kmand tal-ħolqien tal-proġett composer create-projectbilli ttajpja l-kmand li ġej:

composer create-project laravel/laravel myex-app

Dan il-kmand (verżjoni 9.x) joħloq il-proġett imsemmi myex-app

Jew tista 'toħloq proġetti ġodda Laravel globalment tinstalla l-installatur ta Laravel proċedura Composer:

Newsletter dwar l-innovazzjoni
Titlifx l-aktar aħbarijiet importanti dwar l-innovazzjoni. Irreġistra biex tirċevihom bl-email.
composer global require laravel/installer
laravel new myex-app

Wara li toħloq il-proġett, ibda s-server lokali ta 'żvilupp Laravel billi tuża l-kmand serve dell "Artisan CLI ta' Laravel:

php artisan serve

Wara li tibda s-server tal-iżvilupp Artisan, l-applikazzjoni tiegħek tkun aċċessibbli fil-web browser tiegħek fuq http://localhost:8000. Issa, inti lest biex tużah Laravel. Naturalment, tista 'wkoll trid twaqqaf database.

Struttura tal-applikazzjoni f'Laravel

L-istruttura Laravel hija bażikament l-istruttura ta 'folders, subfolders u fajls inklużi fi proġett. Ladarba jinħoloq proġett f'Laravel, nistgħu naraw l-istruttura tal-applikazzjoni kif muri fl-immaġni tal-folder tal-għeruq ta 'Laravel:

Config

Il-folder tal-konfigurazzjoni jinkludi konfigurazzjonijiet u parametri assoċjati, li huma meħtieġa biex applikazzjoni Laravel taħdem sew. Il-fajls differenti inklużi fil-folder tal-konfigurazzjoni huma elenkati fl-immaġni hawn taħt. L-ismijiet tal-fajls jirrappreżentaw ambiti tal-konfigurazzjoni.

DataBase

Dan id-direttorju jinkludi diversi parametri għall-funzjonalità tad-database. Jinkludi tliet sottodirettorji:

  • Żrieragħ: fih il-klassijiet użati għad-database tat-test unitarju;
  • Migrazzjonijiet: dan il-folder jintuża għall-ġenerazzjoni u l-allinjament tal-istruttura tad-DB mal-applikazzjoni;
  • Fabbriki: Dan il-folder jintuża biex jiġġenera numru kbir ta 'rekords tad-dejta.
Pubblika

Huwa l-fowlder ta 'l-għeruq li jgħin biex jinizjalizza l-applikazzjoni Laravel, jiġifieri l-bidu ta' l-applikazzjoni. Jinkludi l-fajls u folders li ġejjin:

  • .htaccess: fajl li jipprovdi l-konfigurazzjoni tas-server;
  • javascript u css: fihom il-fajls tar-riżorsi kollha tal-applikazzjoni Laravel;
  • index.php: fajl meħtieġ biex tiġi inizjalizzata applikazzjoni tal-web.
riżorsi

Id-direttorju tar-Riżorsi fih fajls li jtejbu l-applikazzjoni tal-web. Is-subfolders inklużi f'dan id-direttorju u l-iskop tagħhom:

  • assi: folder jinkludi fajls bħal LESS u SCSS, li huma meħtieġa għall-istil tal-applikazzjoni tal-web;
  • lang: inkludi konfigurazzjoni għal lokalizzazzjoni jew internalizzazzjoni;
  • fehmiet: huma l-fajls HTML jew mudelli li jinteraġixxu mal-utenti finali u għandhom rwol primarju fl-arkitettura MVC.
Ħażna

Dan huwa l-folder li jaħżen ir-zkuk u l-fajls kollha li huma meħtieġa meta jkun qed jaħdem proġett Laravel. Hawn taħt jinsabu s-subfolders inklużi f'dan id-direttorju u l-iskop tagħhom −

  • app: dan il-folder fih il-fajls li jissejħu wara xulxin;
  • qafas: fih sessjonijiet, caches u fehmiet li jissejħu ta' spiss;
  • Zkuk: Fih fajls li jsegwu l-problemi tal-run-time, speċjalment ir-reġistri kollha tal-eċċezzjonijiet u tal-iżbalji.
Tests

Il-każijiet kollha tat-test unitarju jinsabu f'dan id-direttorju. L-ismijiet għall-klassijiet tal-każ tat-test huwa camel_case u jsegwi l-konvenzjoni tal-ismijiet ibbażata fuq il-funzjonalità tal-klassi.

Vendor

Laravel huwa bbażat fuq dipendenzi ġestiti kompożitur, pereżempju biex tinstalla setup ta 'Laravel jew biex tinkludi libreriji ta' partijiet terzi, eċċ.

Il-folder tal-Bejjiegħ fih id-dipendenzi kollha ta' kompożitur.

Ercole Palmeri

Newsletter dwar l-innovazzjoni
Titlifx l-aktar aħbarijiet importanti dwar l-innovazzjoni. Irreġistra biex tirċevihom bl-email.

Artikoli riċenti

Veeam għandu l-aktar appoġġ komprensiv għar-ransomware, mill-protezzjoni għar-rispons u l-irkupru

Coveware minn Veeam se jkompli jipprovdi servizzi ta' rispons għal inċidenti ta' estorsjoni ċibernetika. Coveware se joffri forensiċi u kapaċitajiet ta' rimedju...

April 23 2024

Rivoluzzjoni Ekoloġika u Diġitali: Kif il-Manutenzjoni Predittiva qed tittrasforma l-Industrija taż-Żejt u l-Gass

Il-manutenzjoni ta’ tbassir qed tirrivoluzzjona s-settur taż-żejt u l-gass, b’approċċ innovattiv u proattiv għall-ġestjoni tal-impjant...

April 22 2024

Ir-regolatur tal-antitrust tar-Renju Unit iqajjem allarm ta’ BigTech fuq GenAI

Is-CMA tar-Renju Unit ħarġet twissija dwar l-imġieba ta 'Big Tech fis-suq tal-intelliġenza artifiċjali. Hemm…

April 18 2024

Casa Green: rivoluzzjoni tal-enerġija għal futur sostenibbli fl-Italja

Id-Digriet "Case Green", ifformulat mill-Unjoni Ewropea biex itejjeb l-effiċjenza enerġetika tal-bini, ikkonkluda l-proċess leġiżlattiv tiegħu bi...

April 18 2024