Yii2 - kengayuvchan va barqaror web ilovalar qurishda ishlatiladigan PHP freymwork hisoblanib so'nggi yillarda bu freymworkda ishlovchi dasturchilarga bo'lgan talab oshib bormoqda.
Bekend - biror bir veb yoki mobil ilovaning server tarafi - barcha ma’lumotlar qayta ishlanadigan va biznes jarayonlar ishlaydigan qismi hisoblanadi. Bekend dasturchi esa vebsayt, internet servislar yoki mobil ilovalarning bekend qismini quradi, dasturlaydi.
Bu turdagi dasturchi vazifalariga quyidagilar kiradi:
Bekend dasturchilar yaratilayotgan loyiha ko'lami va qo'llaniladigan texnologik steklardan kelib chiqib Python, Java, PHP, NodeJS, Ruby kabi dasturlash (yoki skriptlash) tillaridan foydalanadi. Ushbu kursimizda biz ulardan biri - yurtimizda eng keng tarqalgani hamda talab yuqori bo'lgan PHP veb dasturlash tilining Yii2 freymvorkida veb/mobil ilovalarning bekend qismini yaratishni o'rganamiz.
Kurs avvalida OOP (Object orientated porgramming - obyektga yo'naltirilgan dasturlash) va ilovalar qurishdagi MVC (model/view/controller - model/ko'rinish/boshqaruvchi) konsepsiyasini PHP yordamida batafsil tadqiq etamiz, kursning asosiy moduli esa PHP ning eng qulay va rivojlanib borayotgan freymvorki - Yii2 da dasturlash mavzularini qamrab oladi. Bundan tashqari NoSql ma'lumotlar bazasidan biri - MongoDb bilan ishlash o'rganiladi va bekend ilovamizga tadbiq etiladi.
Ushbu kurs davomida tinglovchilar bilan kelishgan holda yurtimizda tobora talab ko'payib borayotgan internet servislardan biri tanlanadi va uning bekend qismi yaratiladi. Kurs natijasida biror bir internet servislar, internet startuplar yoki mobil ilovalarning bekend qismni mustaqil ravishda noldan qurishni o'rganasiz.
Mahalliy ish beruvchilar PHP/Yii2 bekend dasturchilarga xozirda 2 000 000 so'mdan 12 000 000 so'mgacha oylik maosh taklif qilishayotganligini hamda yildan yilga bu profildagi mutaxassislarga talab oshib borayotganligini bilasizmi? Demak, bu kurs aynan shu oqimga kirib olishingizda sizga ko'mak beradi!
Kursni mukammal o'zlashtirganlar sohadagi firma va korxonalarga tavsiya etiladi. Real loyihalar va startuplarga jalb etiladi.
Kliyent-server texnologiyasi nima?
Ilova bekendi va uning arxitekturasi
Linuxda veb ilovalarni sozlash: Apache, PHP va MongoDB servislari
OOP ga kirish: PHP da klasslar va obyektlar
OOP qoidalari: Vorislik - obyektlar iyerarxiyasi. PHP da reusable coding.
OOP qoidalari: Abstraksiya - murakkabni soddalashtirish. PHP da abstrakt klasslar
OOP qoidalari: Polimorfizm - yagona qoidalar asosida koʻpvazifalilik. PHP da interfeyslar
Ilovalarning biznes logikasi, OOP yordamida ularni shakllantirish
Ilovalarni yaratishda MVC shabloni. Veb ilovalarda obyektlar (model), obyektlarni boshqarish (controller) va obyektlarni tasvirlash (view)
Versiyalarni boshqarish tizimlari: Git bilan ishlash. Gitlab va Github servislarida loyihalarni yaratish, sozlash va boshqarish.
Barqaror va kengayuvchan veb ilovalar qurishda PHP freymorklar.
Bekend dasturchi qurollari: PhpStorm, composer, LAMP
Yii2 ni oʻrnatish va sozlash.
Veb ilovaning strukturasi
Yii2 da routing: controller, action, view
Yii2 da komponentalar: standart va 3rd party komponentalar, ular oʻrnatish va sozlash.
Ilovaning maʼlumotlar bazasini qurish: Yii2 da migratsiyalar.
Yii2 da maʼlumotlar bazasi bilan ishlash: Model va ActiveRecord, ORM
Model attributlari, validatsiya, ssenariylar. Modellarni xavfsiz saqlash.
Modellarda biznes logika. Obyektlarning bogʻliqligi. OOP qoidalarini modellarga joriy etish.
Collection, DataProvider
Ilova interfeysi: koʻptilli interfeysni qurish, tarjimalarni dinamik boshqarish, internalizatsiya
Ilova interfeysi: layout, view, widget, grid, PJAX, ActiveForm
UI temalarni boshqarish: asset manager, asset bundle
Sessiya bilan ishlash, flash xabarlar, sessiyaning xavfsizligi
Cookie bilan ishlash, cookie xavfsizligi
Xavfsizlik: avtorizatisya va autentifikatsiya
Xavfsizlik: maʼlumotlarni himoyalash, kriptografiya va heshlash
RBAC - resurslarga murojaatlarni cheklash
RESTful API - maʼlumotlar almashishni tashkil qilish
RESTful API da autentifikatsiya va versiyalash
Dasturlash uskunalari: dasturchi paneli, hodisalarni loglash
Yii2 da keshlash, keshlash sathlari, PageCache, HttpCache, FragmentCache, DbCache
Assetlarni optimallashtirish, klient qurilmalarda keshlash qoidalari
Ma'lumotlarni indekslash, kesh va sessiya maʼlumotlarini tezkor saqlash
Profayling, kodlarni optimallashtirish. MB soʻrovlarini sozlash.
MongoDb va dinamik attributli modellar - MB dagi jadvallarni loyihalashni unutamiz!
Dinamik RBAC, resurslarga murojaatni dinamik boshqarish
Xavfsizlik tajribalari: SQL injection, XSS, CSRF, SSL, Captcha, RateLimiter
Veb ilovalarni testlash. Unit Testing
Cloud/VPS serverlarni tanlash, sozlash va veb ilovalarni joylashtirish
Ilovalarni PayMe toʻlov tizimi bilan integratsiya qilish
Yii 2 da console komandalar, mikrofreymowrk
Dasturlash bu san'atdir, chunki u mavjud bilimlarni amaliy qo'llaydi, u yaratuvchanlik va tajribalarni talab etgan holda go'zallikni yaratadi.
O'rganishni boshlang Biz bilan bog'laning