Showing posts with label laravel. Show all posts
Showing posts with label laravel. Show all posts

Sunday, November 12, 2023

Od haosa do jasnoće, objašnjenje strukture Laravel projekta

Laravel je popularni PHP radni okvir za razvoj veb aplikacija koji se ističe svojom elegantnom sintaksom, obiljem alatki i moćnim funkcijama. Pre nego što pređete na studiranje ovog posta; obavezno prvo pogledajte uvod i instalaciju Laravel radnog okvira; pogledajte ovde; zatim se upoznajte na čemu se temelji Laravel radni okvir; pogledajte ovde; pa tek onda se vratite na ovaj post da se upoznate i sa strukturom foldera i datoteka. Tako da i pre neko što praktično počnete da koristite Laravel radni okvir; otklonite zbunjenost, neznanje i nejasnoće. Sve što vam nije jasno i pre kodiranja neophodno je da razjasnite sami sebi. Svaki profesionalan programer, svaki svoj projekat započinje pravim pitanjima. Tako ponašanje će vam u svakom slučaju uštedeti mnogo izazova i vremena. Kada kreirate novi Laravel projekat, radni okvir automatski generiše osnovnu strukturu direktorijuma i datoteka koja vam pomaže da organizujete i razvijate svoju veb aplikaciju na efikasan način. U ovom tekstu ćemo istražiti osnovnu strukturu Laravel projekta, razmatrajući glavne direktorijume i datoteke sa kojima ćete se sresti kad god započinjete novi projekat u ovom efikasno organizovanom Laravel  radnom okviru. U zavisnosti od verzije Laravel  radnog okvira; Laravel vam pruža jasnu i dobro organizovanu strukturu projekta koja olakšava razvoj i održavanje veb aplikacija. Razumevanje svih ovih direktorijuma i datoteka je ključno za efikasan razvoj u Laravel radnom okviru. Kroz ovu osnovnu strukturu, možete lako organizovati svoj kôd i razvijati visokokvalitetne veb aplikacije. Zato ćemo prvo pogledati foldere koje su se kreirali kada smo započeli novi Laravel projekat.


( Razumevanje strukture Laravel projekta je od ključnog značaja za razvoj projekta )

Pokrenite vaš terminal, izvršite update i upgrade vašeg Linux operativnog sistema, zatim sa vašeg home direktorijuma skočite na /opt/lampp/ i pokrenite XAMPP menadžer; sledećom Linux  komandom.
 
sudo ./manager-linux-x64.run

Otvoriće vam se XAMPP menadžer; i kroz njega pokrenute Apache Web Server i MySQL Database. Ovo ćete da uvek radite kada kreirate ili otvarate već gotov Laravel projekat. Zatim pokrenite Visual Studio Code i u njemu otvorite folder laravel_tutorial koji ćete pronaći u direktorijumu /opt/lampp/htdocs/ i otkucajte sledeću Linux komandu u Terminal panelu Visual Studio Code-a :

php artisan serve

Na Terminal panelu će vam se prikazati:

 INFO  Server running on [http://127.0.0.1:8000]   

Press Ctrl+C to stop the server

Sad proverite u pretraživaču da li je vaš projekat pokrenut na lokalnom serveru i portu 8000. Ukoliko je sve u redu, vratite se sa pretraživača na Visual Studio Code; i sa vaše leve strane koncentrišite se na Explorer panel. Dobro pogledajte da li vaš Laravel projekat sadrži sledeće osnovne foldere: 

app

bootstrap

config

database

public

resources

routes

storage

tests

vendor

Starije verzije Laravel radnog okvira, uglavnom sadrže iste foldere, osim folder database. Ukoliko pogledate neki Laravel  projekat na GIT hubu; onda verovatno nećete videti ni folder vendor jer ga GIT sa razlogom ignoriše; jer očekuje da se na udaljenim serverima izvršava Composer radni okvir kao deo procesa implementacije. Sve u svemu pogledajte čemu služe osnovni folderi koji čine Laravel projekat.

Osnovni folderi u Laravel projektu

Thursday, November 09, 2023

Temelji Laravel razvoja, sve što trebate znati o MVC, HTTP glagolima i REST-u

U prethodnom postu, pogledajte ovde; smo se maksimalno posvetili da razumete zašto Laravel framework - radni okvir služi, koliko je koristan i onda smo svu pažnju usmerili na instalaciju istog zbog kompleksnosti i prethodnih instalacija koje ovaj radni okvir zahteva. Pre nego što počnemo uopšte da koristimo Laravel neophodno je da vas bar delimično upoznamo sa osnovama ili temeljom na kom je baziran Laravel radni okvir. Ali prvo da vidimo na kom principu radi Laravel radni okvir. Pojavom AI – veštačke inteligencije, došlo je do pometnje u svetu programera, gubljenje poslova i to je definitivno dovelo do toga da mnogi programeri shvate da biti stručnjak za jedan programski jezik ili jedan framework – radni okvir; više nije dovoljno. Zato se danas i pored korišćenja AI – veštačke inteligencije neke stvari rade brže i lakše; masovno uče i drugi programski jezici i radni okvirovi. Tako da nije slučajnost na primer da neko ko poznaje Angular radni okvir traži neke stvari koje ovaj radni okvir sadrži u Laravel radnom okviru i obratno. Međutim, tih stvari nema jer je Laravel frontend framework koji je baziran na TypeScript-u i radi na strani klijenta dok Laravel je backend framework koji je baziran na Symfony; takođe radnom okviru baziranom na backend i radi na strani servera kao i što koristi PHP programski jezik. Znači da ponovimo, Laravel framework – radni okvir je backend i radi na strani servera. On može da radi neke stvari koji mogu takođe da rade neki radni okvirovi ali koji rade na strani servera, može da ne radi druge stvari ili može da radi neke stvari ali na drugačiji način. Laravel radni okvir je pre svega najpopularniji radni okvir među PHP programerima i to pre svega zbog mogućnsti koje može da odradi i zbog toga na koji način i šta sve sadrži ovaj radni okvir.


( Laravel web framework - radni okvir, najpopularniji među PHP programerima )

Laravel je poznat po svojoj elegantnoj i čitljivoj sintaksi koja olakšava razvoj veb aplikacija. Ima mnoge ugrađene alate i funkcionalnosti koje programerima štede vreme i trud. Laravel dolazi sa Eloquent ORM-om, koji omogućava jednostavno i efikasno upravljanje bazama podataka. Ovo olakšava rad s bazama podataka i ubrzava razvoj. Laravel radni okvir dolazi s brojnim ugrađenim mehanizmima sigurnosti kao što su zaštita od CSRF napada, kontrola sesija i autentikacija. To olakšava programerima održavanje sigurnih aplikacija. On takođe ima moćan alat za upravljanje aplikacijama koji se zove Artisan. Pomoću njega možete brzo generisati kod, izvoditi migracije, testirati aplikacije i još mnogo toga. Laravel podržava modularni pristup razvoju, što znači da možete koristiti komponente i pakete razvijene od strane zajednice ili napraviti svoje, kako biste ubrzali razvoj aplikacija. On se lako integriše s drugim popularnim alatima i servisima, kao što su Redis, Memcached, Elasticsearch i drugi. On takođe prati najnovije trendove u razvoju veb aplikacija, uključujući podršku za RESTful API-je, WebSocket-e i druge moderne tehnologije. Laravel  je pristupačan i moćan radni okvir koji je pogodan kako za manje projekte tako i za kompleksne aplikacije, što ga čini jednim od najpopularnijih radnih okvira u PHP ekosistemu. Može da radi i na drugim operativnim sistemima ali Linux operativni sistem je njegovo prirodno okruženje. Imajte to u vidu kada imate mogućnost da birate OS na kom ćete raditi sa Laravel radnim okvirom.

Šta je MVC i zašto se koristi u Laravel-u?

Saturday, February 18, 2023

Pokrenite svoje putovanje veb razvoja, uvod u Laravel radni okvir

Ukoliko učite PHP programski jezik, čiji tutorijal možete pogledati ovde; možete se pitati šta je to Laravel i zašto bi ste i to učili. Zar PHP programski jezik nije dovoljan da iskodirate kakav god hoćete veb sajt, pa ukoliko je neophodno ako zatreba možete ubaciti i JavaScript i Ajax. Pa, vidite ovako; Laravel je open-source framework; na Srpskom jeziku radni okvir; za PHP programski jezik. On vam pomaže tako što preuzima odgovornost umesto vas za veliki deo poslovne logike vaših aplikacija, za mnoge uobičajene komponente kao što su validacija unosa, pristup bazi podataka, autentifikacija korisnika, izrada šablona itd. Danas programeri koriste mnogobrojne radne okvire za razvoj aplikacija, veb sajtova, biblioteke i komponente koje su drugi programeri iskodirali i testirali da vi to ne morate isto kodirati. Radni okviri održavaju konzistentnost i fleksibilnost i dok vi razmišljate, gde i kako nešto iskodirati u PHP programskom jeziku u vašem projektu koji postaje sve veći i kompleksniji; radni okvir razmatra samo: "Koju komponentu treba da koristim ovde?" Ako se pitate zašto baš Laravel; onda je moj odgovor zato što je trenutno jedan od najboljih za PHP developere. Ako se vratimo u prošlost; jedan od prvih radnih okvira je bio 2004 godine Ruby on Rails. Brzo je postao popularan jer je takođe popularizovao MVC, konvenciju nad konfiguracijom i mnoge alatke koje su doprinosile programerima brz razvoj aplikacija. Zatim se pojavio CakePHP 2005 godine i onda se razvoj nastavio u vidu CodeIgniter, Simfony, Kohana, Zend Framework itd. Još, 2010 godine CodeIgniter je postao veoma popularan radni okvir za PHP programere ali je kasnije počeo da zaostaje u tehnološkom razvoju i postao je previše spor. Zato je u junu 2011 godine, Taylor Otwella ponudio svoj radni okvir; napredniju alternativu CodeIgniter-a koju danas zovemo Laravel 


( Laravel je trenutno jedan od najboljih radni okvira za PHP programere )

Laravel 1 je doneo autentifikaciju, lokalizaciju, modele, views, sesije i rutiranje. Sve je iskodirano od nule. Laravel 2 je bio zaslužan za kontrolore, IoC i Blade. Laravel 3 je doneo Artisan i Bundles. Laravel 4 je otišao još dalje sa distribucijom paketa preko Composer radnog okvira. Zato se i kaže da je Laravel baziran na PHP programskom jeziku ali i na drugom radnom okviru Composer-u. Laravel 4 je još 2013 godine doneo još mnogo divnih stvari koje PHP programerima olakšavaju posao poput database seeding, automatsko upravljanje sa konekcijama baza podataka, 2014-te upravljanje PHP Cloud serverima, Vargrant okruženje, upravljanje pretplatama itd. Laravel 5 je još 2015 godine doneo novu strukturu direktorijuma i keširanje ruta itd. Od prekjuče; tačnije 16 februara 2023 godineLaravel je izbacio 10.2 stabilnu verziju koji zahteva minimum PHP 8.1 verziju. Svake godine se u prvih 6 meseci u SAD-u održava konferencija Laracon dok se ista održava u Evropi; tačnije Amsterdam-u u drugoj polovini godine; gde možete uvek saznati skoro sve o razvoju Laravel radnog okvira. E sad se možete pitati, ako je Laravel toliko dobar radni okvir zašto ga svi ne koriste? Mislim da postoje više razloga. Promene se često dešavaju u različitim verzijama, komponentama, kodu i postoje neke knjige i odlična dokumentacija o Laravel-u ali ponekad je komplikovano sve to uklopiti i ispratiti. Ukoliko koristite Share Hosting kod nekog provajdera; možda on jednostavno neće raditi. Druga stvar je ako vi zakupite vaš server. Tad možete da kontrolišete i da instalirate svašta na vaš hosting. Možete kompletan projekat da održavate i menjate kad se nešto promeni. Ali to zahteva mnogo više učenja i strašno je kad nad nekom komponentom nemate kontrolu. Zbog toga neki stariji iskusniji PHP programeri se drže čistog PHP  programskog jezika bez bilo čega što to može narušiti. Sve u svemu, što se mene tiče u svemu trebate biti fleksibilni; potrebno vam je vreme i mnoge greške da bi ste bili iskusniji u PHP  kodiranju ali jednostavno nema odustajanja. Uvek napredujete i učite. Još pre par meseci nije bilo šanse da instaliram Laravel na noviju verziju Linux distribucije Ubuntu-a zbog grešaka koje nisam razumeo dok je to danas druga priča.

Kako da instaliram Laravel?