Bosh sahifa Wiki Full-stack dasturchi

Full-stack dasturchi

Full-stack dasturchi — web yoki dasturiy ilovaning frontend va backend qismlari bilan ishlay oladigan dasturchi. U foydalanuvchiga ko‘rinadigan interfeys, server logikasi, database, API va deployment jarayonlari haqida umumiy yoki amaliy bilimga ega bo‘ladi.

Full-stack dasturchi bitta loyihaning bir nechta texnik qatlamida ishlashi mumkin. Masalan, u frontend sahifani yaratadi, backend API yozadi, database modelini tuzadi va ilovani serverga joylashtirishda qatnashadi.

Vazifasi

Full-stack dasturchi ilovaning turli qismlarini bog‘lab ishlashini ta’minlaydi.

Full-stack dasturchi quyidagi vazifalarni bajarishi mumkin:

Masalan, internet do‘kon loyihasida full-stack dasturchi mahsulotlar sahifasini yaratishi, mahsulotlar API’sini yozishi va mahsulotlarni database’dan chiqarishi mumkin.

Full-stack qanday ishlaydi?

Full-stack dasturchi ilovaning client va server tomonlarini birgalikda tushunadi. U foydalanuvchi brauzerda nima ko‘rayotganini va server ichida bu ma’lumot qanday qayta ishlanayotganini bog‘lay oladi.

Oddiy jarayon:

Full-stack dasturchi shu jarayonning bir nechta bosqichida ishlay oladi.

Frontend qismi

Full-stack dasturchi frontend qismida foydalanuvchiga ko‘rinadigan interfeys bilan ishlaydi.

Frontend qismiga quyidagilar kiradi:

  • sahifa tuzilmasi;
  • dizayn va layout;
  • responsive ko‘rinish;
  • forma va tugmalar;
  • API’dan ma’lumot olish;
  • sahifa holatini boshqarish;
  • foydalanuvchi harakatlarini qayta ishlash;
  • xatolik va natijalarni ko‘rsatish.

Frontend uchun ko‘p ishlatiladigan texnologiyalar:

Masalan, foydalanuvchi profil sahifasini ko‘rsa, uning ko‘rinishi va interaktiv qismlari frontend orqali yaratiladi.

Backend qismi

Full-stack dasturchi backend qismida server logikasi, API, database va xavfsizlik bilan ishlaydi.

Backend qismiga quyidagilar kiradi:

  • API endpointlar;
  • database modellari;
  • foydalanuvchi autentifikatsiyasi;
  • ruxsatlarni tekshirish;
  • biznes logika;
  • fayl yuklash;
  • email yoki notification yuborish;
  • to‘lov integratsiyasi;
  • server xatoliklarini qayta ishlash.

Backend uchun ko‘p ishlatiladigan texnologiyalar:

Masalan, foydalanuvchi login qilganda email va parolni tekshirish backend orqali bajariladi.

Database bilan ishlash

Full-stack dasturchi ma’lumotlar bazasi bilan ham ishlashi mumkin. U ma’lumotlar qanday saqlanishi, qaysi jadvallar bo‘lishi va ular qanday bog‘lanishini tushunadi.

Database bilan bog‘liq ishlar:

  • jadval yoki model yaratish;
  • relationlarni sozlash;
  • query yozish;
  • migration bajarish;
  • indexlardan foydalanish;
  • ma’lumot qo‘shish;
  • ma’lumot o‘qish;
  • ma’lumot yangilash;
  • ma’lumot o‘chirish.

Full-stack loyihalarda keng ishlatiladigan database tizimlari:

Masalan, blog saytida maqola, kategoriya, foydalanuvchi va kommentlar database’da saqlanadi.

API bilan ishlash

Full-stack dasturchi frontend va backend o‘rtasidagi aloqani API orqali tashkil qiladi.

API bilan ishlashda quyidagilar uchraydi:

Masalan, frontend GET /api/articles endpointiga so‘rov yuboradi, backend esa maqolalar ro‘yxatini JSON formatida qaytaradi.

Authentication va authorization

Full-stack dasturchi foydalanuvchi tizimga qanday kirishi va qaysi amallarni bajarishi mumkinligini boshqaradigan mexanizmlar bilan ishlaydi.

Bu jarayonda quyidagilar ishlatiladi:

Masalan, oddiy foydalanuvchi faqat o‘z profilini tahrirlashi mumkin, admin esa barcha foydalanuvchilarni boshqarishi mumkin.

Deployment

Full-stack dasturchi ilovani local muhitdan serverga joylash jarayonida ham qatnashishi mumkin. Bu jarayon deployment deb ataladi.

Deployment jarayonida quyidagilar uchraydi:

Masalan, backend API serverda ishlaydi, frontend build fayllari esa Nginx yoki CDN orqali foydalanuvchiga yetkazilishi mumkin.

Full-stack va frontend farqi

Frontend dasturchi asosan foydalanuvchiga ko‘rinadigan qism bilan ishlaydi. Full-stack dasturchi esa frontend bilan birga backend va database qismlarini ham tushunadi.

Farqlar:

Masalan, frontend dasturchi login formasini yaratadi, full-stack dasturchi esa login formasi, API, database va token tizimini birgalikda ishlata oladi.

Full-stack va backend farqi

Backend dasturchi server tomoni, API, database va biznes logika bilan chuqurroq ishlaydi. Full-stack dasturchi esa backend bilan birga frontend qismini ham bajara oladi.

Farqlar:

  • Backend dasturchi server, database va API’ga ko‘proq e’tibor beradi;
  • Full-stack dasturchi server va frontendni birgalikda bog‘laydi;
  • Backend ichki logika va ma’lumotlar bilan ishlaydi;
  • Full-stack foydalanuvchi interfeysidan database’gacha bo‘lgan oqimni tushunadi.

Masalan, backend dasturchi buyurtma API’sini yozadi, full-stack dasturchi esa buyurtma sahifasi, API va database jarayonini birgalikda ishlatishi mumkin.

Full-stack texnologiya stacklari

Full-stack loyihalarda frontend, backend va database birgalikda ishlatiladi. Bunday texnologiyalar to‘plami stack deb ataladi.

Mashhur stacklar:

Har bir stack loyiha talabi, jamoa tajribasi va tizim arxitekturasiga qarab tanlanadi.

Dasturlashdagi o‘rni

Full-stack dasturchi kichik va o‘rta loyihalarda ko‘p uchraydi. U loyiha qismlarini tez bog‘lash, prototip yaratish va to‘liq web ilova ishlab chiqishda qatnashadi.

Full-stack dasturchi ishlaydigan loyihalar:

  • korporativ sayt;
  • internet do‘kon;
  • blog platforma;
  • admin panel;
  • CRM;
  • SaaS loyiha;
  • marketplace;
  • dashboard;
  • Telegram bot web paneli;
  • ichki biznes tizimlari.

Full-stack yondashuv web ilovaning frontend, backend va database qatlamlarini birgalikda tushunishga asoslanadi.

Bog‘liq tushunchalar

Frontend, Backend, API, REST API, Database, SQL, PostgreSQL, JavaScript, TypeScript, React, Docker, Deployment