2-bo'lim

Texnologiyalar to'plami

"Stack" (to'plam) — bitta loyihani qurish uchun ishlatilgan barcha vositalar yig'indisi. Xuddi uy qurishda g'isht, sement, armatura kerak bo'lgani kabi, veb-sayt qurishda ham bir nechta "qurilish materiali" kerak bo'ladi.

1To'rtta asosiy qatlam

🖥️
FrontendKo'rinadigan qism
⚙️
Backend"Miya", hisob-kitob
🗄️
BazaDoimiy xotira
☁️
Server (hosting)Hammasi shu yerda ishlaydi

Keyingi bo'limlarda har birini alohida ochib beramiz. Hozircha — TOBB ETÜ Sport'da har bir qatlam uchun aynan nima ishlatilgani:

2Frontend — Next.js (React)

Next.js — foydalanuvchi ko'radigan sahifalarni (bosh sahifa, sport turlari, turnirlar va h.k.) yaratish uchun ishlatilgan. U React nomli mashhur texnologiya asosida qurilgan.

🧱

Nega "framework" (qolip/asos)? Har bir saytda menyu, tugmalar, kartochkalar bir xil uslubda takrorlanadi. React/Next.js bunday takrorlanadigan qismlarni bir marta "komponent" sifatida yasab, keyin xohlagan joyda qayta ishlatish imkonini beradi — xuddi Lego detali kabi: bitta "tugma" detalini yasaysiz, keyin saytning har joyida shu detaldan foydalanasiz.

Yozish tili: TypeScript — bu JavaScript'ning "tekshiruvchi" versiyasi: kod ishga tushishidan OLDIN xatolarni topib beradi (masalan, raqam kutilgan joyga so'z yozib qo'yilsa, darhol ogohlantiradi).

3Backend — Django (Python)

Django — Python tilida yozilgan, ma'lumotlarni saqlash, hisoblash va xavfsizlikni ta'minlash uchun ishlatiladigan tizim. Masalan: "kim tizimga kirdi", "turnir g'olibi kim", "reyting qanday hisoblanadi" — bularning barchasini Django hal qiladi. Bu haqida keyingi bo'limda batafsil.

4Ma'lumotlar bazasi — PostgreSQL

Barcha ma'lumot (talabalar, turnirlar, natijalar) PostgreSQL nomli ma'lumotlar bazasida saqlanadi — bu haqida 4-bo'limda alohida gaplashamiz.

5Server (hosting) — Vercel

Vercel — tayyor kodni internetga chiqarib, doimiy ishlaydigan qiladigan xizmat. Bu haqida 9-bo'limda to'liq tushuntiramiz.

6Qisqacha jadval

QatlamTexnologiyaVazifasi
FrontendNext.js / React / TypeScriptFoydalanuvchi ko'radigan sahifalar
Uslub (dizayn)Tailwind CSSRanglar, shriftlar, joylashuv
BackendDjango / PythonMantiq, hisob-kitob, xavfsizlik
API qatlamiDjango REST FrameworkFrontend va backend o'rtasida "til"
Ma'lumotlar bazasiPostgreSQLBarcha ma'lumotni doimiy saqlash
HostingVercelSaytni internetda ishga tushirish
Kod tarixiGit / GitHubHar bir o'zgarishni saqlaydigan "arxiv"
Next.js 14 React 18 TypeScript Tailwind CSS Django 5 Django REST Framework Python 3.12 PostgreSQL Vercel GitHub
Bilish shart emas, lekin qiziq: bularning deyarli barchasi — bepul va ochiq manbali (open source) texnologiyalar. Ya'ni butun dunyo dasturchilari ularni birgalikda yaratadi va bepul ishlatadi. Pullik bo'lgan yagona narsa — server (hosting) va domen (sayt manzili).