Yii2 da backend dasturlash

Yii2 da backend dasturlash

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:

  • veb-sayt yoki ilovaning boshqaruv panelini yaratish;
  • ma’lumotlarni kiritish/chiqarish/qayta ishlash uchun tizim boshqaruvchilariga qulay formalar qurish;
  • boshqa internet servislar bilan integratsiya qilish;
  • mobil ilovalar, kliyent ilovalar integratsiya qilish uchun API qismlarni dasturlash;
  • umumiy tizim uchun zarur bo'lgan arxitektura, biznes logikalarni dasturlash.

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!

Kursda nimalarni o'rganasiz?

  • OOP va MVC konsepsiyalari;
  • Yii2 da veb ilovalar yaratish;
  • REST API lar yaratish;
  • NoSQL ma'lumotlar bazasi va MongoDB bilan ishlash;
  • Git tizimi, Github va Gitlab servislari bilan ishlash;
  • Ilovalarni klient va server tarafdan optimallashtirish;
  • Veb ilovalar xavfsizligini ta'minlash;
  • Loyiha ishi va portfolio;

Bonus masterklaslar

  • VPS/Cloud serverlarni Debian Linuxda sozlash va bekend ilovalarni joylashtirish;
  • Veb ilovalarni testlash, stress testing;
  • PayMe to'lov tizimi bilan integratsiya qilish;
  • Bepul SSL sertifikat olish va domenga sozlash;

Kursni mukammal o'zlashtirganlar sohadagi firma va korxonalarga tavsiya etiladi. Real loyihalar va startuplarga jalb etiladi.

Sizdan nima talab etiladi?

  • PHP da o’rtacha qiyinlikdagi veb-saytlar qila olishingiz;
  • Linux da bazaviy tajriba;
  • O'rganishga va yaratishga bo'lgan ishtiyoq;

Modul I - Umumiy tushunchalar

  • 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

Modul II - Yii2 da ilovalar yaratish

  • 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

Modul III - Veb ilovani optimallashtirish va xavfsizlik

  • 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

Bonus darslar

  • 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

Kurs detallari

  • Daraja Professional
  • Narxi bepul / oy
  • Davomiyligi 1 oy (48 soat)

Dars kunlari

  • 14:00 - 17:00 Du - Ch - Ju

Kursga yozilish

Ushbu kursga qabul yakunlangan

Batafsil

  • Web dasturlash
  • Daraja Professional
  • Narxi bepul / oy
  • Davomiyligi 1 oy (48 soat)

Dars kunlari

  • 17:00 dan - Se, Pa, Sha

Javaharlal Neru nomidagi
O'zbek-Hind axborot texnologiyalari markazi

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