- Kompanija: ICT Cortex
- Broj modula: 45
Šta ćeš naučiti na kursu
- Eloquent - ORM za interakciju sa bazama podataka
- Napredne funkcionalnosti kao što su Queues, Polymorphic relacije, Service Container
- Cjelokupnu teoriju kako napredujete sa izradom prave aplikacije!
- Podešavanje PHP-a sa Apache-om na Windows i Mac OS
- Kako da koristite Visual Studio Code efektivno
- Kreiranje API-ja, seralizaciju podataka, API resursi i API testiranje
- Rute i Kontrolere
- Laravel Tinker - komandnu liniju za Laravel
- Blade šablone
- Blade komponente
- Kreiranje formi, CSRF tokene
- Polimorfne relacije
- Testiranje
- Lokalni i globalni elokventni opseg upita
- Migracije baze podataka
- Database seeding i factories
- Autentifikacija (čuvar)
- Autorizacija (smernice i kapije)
- Keširanje podataka
- Kako da koristite redove i nizove
- Fajlovi i otpremanje fajlova
- Kako da pošaljete e-mail
- Posmatrači, događaji, slušaoci i pretplatnici (Observers, Events, Listeners and Subscribers)
- Lokalizacija
- Usluge, Servisni kontejner, Ugovori i fasade
- Korišćenje osobina u Laravel-u.
- Sposobnost da koristite računar i instalirate softver;
- Pristup Windows PC ili Mac-u;
- Engleski jezik
- Osnovno poznavanje PHP-a i objektno orjentisanog programiranja
Opis kursa
Naučite Laravel sa ovim kursom od A do Z za početnike!
Laravel je najpopularniji izbor među PHP programerima ovih dana. Lak je za učenje, zabavan za korišćenje, a sadrži brojne alate koji vam olakšavaju posao.
Laravel može da promijeni način na koji posmatrate PHP uopšteno. Od verzije 8 nadalje, to je potpuno drugačiji jezik nego što je bio.
Laravel je kao Ruby on Rails u PHP svijetu. Ili čak i bolji.
Laravel is like Ruby on Rails in the PHP world. Or even better. Izražajan je, zabavan, tečan, lak za učenje, lak za korišćenje. Vole ga i početnici i profesionalci! Imate priliku da se pridružite ovoj grupi srećnih ljudi, da se zabavljate dok radite stvari i da budete plaćeni za to
🙂
Ovaj kurs je jedini resurs koji će vam trebati da naučite sve o Laravel-u. Kako da ga podesite, započnete sa radim i zatim, kako da postignete sve moćne stvari koje pruža moderni razvoj web aplikacija.
Kome je ovaj kurs namjenjen?
- Studentima početnicima i naprednim programerima koji se bave web razvojem;
- Studentima koji nemaju apsolutno nikakvo iskustvo u razvoju web-a i žele da postanu web programeri;
- Iskusnim web programerima kojima je potrebna sveobuhvatna referenca ili žele da zarone u naprednije teme, kao i da osveže osnove;
- Svim studentima koji su zainteresovani za istraživanje brojnih primjera kurseva i vježbi;
Plan i program
- Dobrodošli na kurs
- Verzije Laravel-a (opciono)
- Preporuke za podešavanja i preduslovi za kurs
- Kod editor: Visual studio code podešavanja i preporuke
- Izvorni kod kursa
- Dodatni resursi za učenje
- Windows – Podešavanje XAMPP (PHP/Apache/MySQL)
- Windows – PHP u komadnoj liniji
- Windows – Composer
- Mac – Podešavanje XAMPP (PHP/Apache/MySQL)
- Mac – PHP PHP u komadnoj liniji
- Mac – Composer
- Kreiranje novog Laravel projekta korišćenjem Composer-a
- Windows – podešavanje virtual host-a u Apache-u
- Windows – Podešavanje hosta na sistemu
- Mac – podešavanje virtual host-a u Apache-u
- Mac – Podešavanje hosta na sistemu
- Pregled strukture Laravel projekta
- Artisan komande
- Razumijevanje rutiranja u Laravel-u
- Definisanje ruta
- Upravljanje i imenovanje ruta
- Parametri ruta
- Opcioni parametri ruta
- Ograničavanje mogućih vrijednosti parametara rute
- Razumijevanje Templating, Views i Blade
- Template nasleđivanje i rasporedi
- Prosleđivanje i prikazivanje podataka u Template-u
- Simple View Rendering Routes
- Uslovno prikazivanje
- Pregled
- Alternative uslovnom prikazivanju
- Petlje u Template-ima
- Dodatna kontrola u petljama
- Djelimični Template-i (uključujući Template-i)
- Djelimični Template-i u petljama
- Odgovori, kodovi, zaglavlja i kolačići
- Preusmjereni odgovori
- Vraćanje JSON
- Vraćanje preuzimanja datoteka
- Grupisanje ruta
- Zahtijevaj unos (čitanje korisničkog unosa)
- Zahtijevaj unos – Pregled opcija
- Middleware – Pokretanje koda prije i poslije zahtjeva
- Kontroleri
- Single Action Kontroleri
- Resource Kontroleri
- Primjena Resource Kontrolera
- Konfiguracija i okruženje pregled
- Konfiguracija konekcije na bazu podataka
- Pregled baza podataka
- Pregled migracija
- Kreiranje i pokretanje migracija
- Razumijevanje Eloquent ORM modela
- Modeli – kreiranje i ažuriranje, predstavljamo Tinker
- Modeli – Preuzimanje pojedinačnog modela
- Modeli – Preuzimanje više modela i pregled konekcija
- Modeli – Korišćenje Query Builder-a
- Vježba – Lista Blog postova i pojedinačni post
- Obrasci formi
- Objašnjeno falsifikovanje zahteva za više lokacija
- Pregled
- Forme – Čuvanje poslatih podataka
- Forme – Validacija unosa
- Forme – Prikazivanje validacijske greške
- Forme – Form Request Classes
- Flash poruke sesije
- Forme – pomoćnik za unos
- Forme/Modeli – Model Mass Assignment
- CRUD – Uredi formu
- CRUD – Ažuriraj akciju
- CRUD – Brisanje pomoću formi
- CRUD – Brisanje modela
- Uvod u Laravel Mix
- Instaliranje Bootstrap CSS Framework-a
- Korišćenje NPM i Compiling Assets With Mix/Webpack
- Uključivanje Assets u Views
- Versioned Assets (Cache Improvements)
- Uvod u Bootstrap CSS
- Razumijevanje CSS Flexbox generalno i u Bootstrap-u
- Mrežni raspored i oblikovanje zaglavlja
- Oblikovanje formi
- Oblikovanje stranice postovi
- Oblikovanje stranice pojedinačni post
- Oblikovanje fleš poruka i poruka greške
- Testiranje
- Testiranje podešavanja i okruženja
- Pisanje prvog funkcionalnog testa
- Testiranje interakcija sa bazom podataka
- Testiranje akcije čuvanja
- Testiranje za grešku
- Testiranje akcije ažuriranja
- Testiranje akcije brisanja
- Jedan na jedan relacije sa migracijom
- Jedan na jedan dodjeljivanje relacija
- Upiti u vezama jedan na jedan
- Jedan na više relacije sa migracijom
- Jedan na više dodjeljivanje relacija
- Upiti u vezama jedan na više
- Lazy Loading vs Eager Loading
- Ispitivanje postojanja odnosa
- Ispitivanje odsustva odnosa
- Brojanje povezanih modela
- Korišćenje withCount() u praksi
- Model Factory uvod
- Model Factory stanja
- Model Factory callbacks (afterCreating, afterMaking)
- Aplikacija: Implementacija liste komentara
- Pregled autentifikacije
- Kako funkcioniše registracija korisnika u Laravel-u?
- Zaštitna komponenta i kako funkcioniše prijavljivanje korisnika
- Prilagođeni obrazac za registraciju i rute za autentifikaciju
- Formatiranje greške validacije
- RedirectIfAuthenticated middleware
- Obrazac za prijavu sa karakteristikom “zapamti me”
- Odjava, @guest direktiva, otklanjanje grešaka u CSRF tokenu
- Preuzimanje trenutno autentifikovanog korisnika
- Zaštita ruta (zahtijeva autentifikaciju)
- Testiranje ruta koje zahtevaju autentifikaciju
- Osvežavanje baze podataka, stranih ključeva baze podataka i postojećih podataka
- Problem: SKLite test baza podataka NOT NULL problem
- Database seeding basics
- Korišćenje Model Factory-ja unutar Seeder-a
- Relacije modela unutar seeder-a
- Pojedinačne seeder klase
- Kreiranje interaktivnog seeder-a
- Brisanje povezanog modela korišćenjem događaja modela
- Brisanje povezanih modela korišćenjem kaskade
- Privremeno (meko) brisanje
- Upiti za privremeno (meko) brisanje
- Vraćanje privremeno izbrisanih modela
- Testiranje privremeno izbrisanih modela
- Uvod u autorizaciju
- Uvod u kapije
- Korišćenje authorize() pomoćnika
- Provjera dozvola korisnika
- Admin korisnici i prevladavajuće dozvole
- Uvod u politike
- Politike ili Kapije?
- Provjera dozvola u Blade šablonima
- Korišćenje middleware za autorizaciju ruta
- Primjena: ažuriranje testova
- Aplikacija: podešavanje user_id za novi BlogPost
- Uvod u globalne opsege upita
- Globalni opsezi upita i potencijalni problemi
- Uvod u lokalne opsege upita
- Primjena: Lokalni opseg upita – najviše komentarisani postovi
- Primjena: Lokalni opseg upita – najaktivniji korisnici
- Primjena: Lokalni opseg upita – najaktivniji korisnici poslednjeg mjeseca
- Primjena: Globalni opseg upita – Administrator može da pregleda obrisane postove
- Uvod u Blade komponente
- Alijasi komponenti
- Uslovno prikazivanje u komponentama
- Primjena: kreiranje komponente za višekratnu upotrebu za datume
- Komplikovan primjer uslovnog prikazivanja
- Aplikacija: Rješavanje problema sa klauzulom HAVING
- Uvod u keširanje
- Laravel Debugbar
- Čuvanje podataka u keš memoriji
- Uklanjanje podataka iz keš memorije
- Keš memorija fasada
- Primjena: korišćenje keš memorije kao skladišta
- Primjena: korišćenje keša za implementaciju skladištenja
- Korišćenje i podešavanje Redis-a kao keš memorije
- Uvod u keš oznake
- Primjena: korišćenje keš oznaka
- Uvod u relacije više na više
- Više na više migracije
- Relacije više na više na modelima
- Povezivanje modela u relacijama više na više
- Upiti u relacijama više na više i pivot tabele
- Primjena: prikazivanje liste oznaka upotrebom Blade komponenti
- Primjena: lista blog postova po oznakama
- Blade View Composers
- View Composer sa @include
- ManyToMany seeding
- Primjena: Korisnik – Komentar jedan na više relacija i migracija
- Primjena: Obrazac za komentare i komponenta Greške za višekratnu upotrebu
- Route Model Binding
- Eager učitavanje ugniježdenih odnosa
- Pretvaranje ponavljajućih upita u opsege upita
- Uvod u skladištenje fajlova
- Obrazac za otpremanje fajlova
- Rukovanje otpremanjem fajlova
- Korišćenje fasade za skladištenje za skladištenje datoteka
- Dobijanje URL-a sačuvanog fajla
- Primjena: Model slika, Jedan na jedan relacije i migracije
- URL otpremljene slike
- Primjena: Prikaz otpremljene slike i stilizovanje
- Brisanje fajlova
- Validacija otpremljenih fajlova (veličina, tip, dimenzije)
- Uvod u modul
- Primjena: Slaganje UserController and UserPolicy, korišćenjem authorizeResource
- Primjena: Views za prikaz/ažuriranje profila korisnika
- Pojašnjenje jedan na jedan Polimorfne relacije
- Jedan na jedan Polimorfne migracije
- Definisanje jedan na jedan Polimorfnih relacija
- Jedan na jedan Polimorfno povezivanje
- Primjena: Jedan na jedan polimorfne relacije sa Blog Post i Slika komponentama
- Pojašnjenje jedan na više Polimorfnih relacija
- Jedan na više Polimorfne migracije i relacije
- Jedan na više Polimorfno povezivanje
- Primjena: Jedan na više Polimorfni views-i
- Primjena: Pokretanje testova na MySQL bazi podataka
- Jedan na više Polimorfni seeder
- Pojašnjenje više na više Polimorfnih relacija
- Više na više Polimorfne migracije
- Više na više Polimorfne relacije
- Razumijevanje modela osobina
- Kreiranje Taggable modela osobina
- Razvojna podešavanja za salnje e-mailova
- Pojašnjenje Mail klase
- Prikazivanje sadržaja i slanje e-maila
- Prilaganje datoteka i podataka e-mailovima
- Ubacivanje fotografije unutar e-maila
- Objašnjenje klase Markdown Mailable
- Kreiranje Markdown Mailable klase
- Prilagođena Markdown e-mail komponenta i stilizovanje
- Prikazivanje pregleda e-pošte u pretraživaču
- Uvod u redove i pozadinsku obradu podataka
- Podešavanje redova, kreiranje i pokretanje prvog posla
- Opcionalno čekanje e-maila i odlaganje izvršenja
- Suočavanje sa neupsjelim poslovima
- Kreiranje i slanje prilagođenih poslova
- Implementacija prilagođenog posla koji šalje druge poslove
- Redovi za ograničavanje brzine
- Imenovani redovi i određivanje prioriteta
- Posmatrači modela
- Događaji i slušaoci
- Primjena: Prilagodljivi događaj i slušaoc
- Drugi primjer događaja i slušaoca
- Osnove prijave (log in-a) u Laravel-u
- Rukovanje ugrađenim događajima u Laravel-u sa pretplatnikom
- Uvod u lokalizaciju i demonstracija
- Pregled podešavanja lokalizacije i prevoda
- Prevođenje većeg broja obrazaca, prosleđivanje podataka
- Čuvanje prevoda u JSON-u
- Prevođenje aplikacije
- Čuvanje jezika po izboru korisnika u bazi podataka
- Kreiranje prilagođenog lokalnog Middleware-a
- Dodavanje jezika u URL kroz Apache podešavanja
- Šta je usluga i kreiranje prilagođene usluge
- Uslužni kontejner u praksi
- Osnove Inekcije zavisnosti
- Inekcija zavisnosti i Ugovori
- Pojašnjenje ugovora
- Pojašnjenje fasada
- Postman – uvod
- Kako funkcioniše serijalizacija modela
- Skrivanje atributa modela
- Serijalizacija veza između modela
- Uvod u API resurse
- Serijalizacija veza između modela korišćenjem Resource klase
- Ograničavanje serijalizacije samo na željno učitane relacije
- Uslovna serijalizacija svojstava
- API rute i kontroleri
- Vježbanje definisanje API ruta
- Vraćanje zbirke resursa i objedninjavanje odgovora
- Paginacija kolekcije
- Paginacija kolekcije i prilagođeni parametri
- Skladištenje novog resursa
- Objašnjenje i primjena API tokena
- Vraćanje, ažuriranje i brisanje resursa
- 404 (stranica nije pronađena)
- API autorizacija
- Testiranje API GET metoda, provjera JSON strukture
- Testiranje API GET metoda, provjera JSON strukture II
- Testiranje API POST resursa, autentikacije i validacije