Cheat-Sheet: Naming Conventions (Nomlash Standartlari)
Modul 6, Dars 6.4 uchun material.
CLAUDE.mdga ko‘chirishga tayyor.
To‘rt standart — to‘rt qatlam
| Standart | Ko‘rinishi | Qayerda ishlatiladi |
|---|---|---|
| PascalCase | KitobIjarasi, AzoService | Klasslar, tiplar, interfeyslar, React/SwiftUI/Compose komponentlari |
| camelCase | ijaraniYakunla(), jamiSumma | Metodlar, funksiyalar, o‘zgaruvchilar, JSON maydonlari |
| snake_case | kitob_ijaralari, azo_id | Baza jadvallari va ustunlari, ba’zi konfig kalitlari |
| kebab-case | kitob-ijara.service.ts, /kitob-ijaralari | Fayl nomlari, URL yo‘llari, CSS klasslar |
Qatlamlararo mapping (xatolar shu yerda tug‘iladi!)
Baza ustuni TypeScript maydoni JSON (API) Fayl
azo_id → azoId → azoId → azo.service.ts
created_at → createdAt → createdAt → —
Qoida: nom chegarada — repository qatlamida — bir marta o‘giriladi. Kodning qolgan qismi bitta uslubda yashaydi.
CLAUDE.md uchun tayyor blok (nusxalab oling)
## Nomlash standartlari
- Klasslar/tiplar/interfeyslar: PascalCase (KitobIjarasi)
- Metodlar/funksiyalar/o'zgaruvchilar: camelCase (ijaraniYakunla)
- Baza jadvallari/ustunlari: snake_case, jadvallar ko'plikda (kitob_ijaralari)
- Fayllar va URL yo'llari: kebab-case (kitob-ijara.service.ts, /kitob-ijaralari)
- Baza ↔ kod mapping faqat repository qatlamida (azo_id ↔ azoId)
- Boolean nomlari savol shaklida: isActive, hasOverdue
Yana nimalarni kelishib olgan ma’qul
- Konstantalar:
SCREAMING_SNAKE_CASE(MAX_IJARA_KUNI) - Env o‘zgaruvchilar:
SCREAMING_SNAKE_CASE(DATABASE_URL) - Git branch'lar:
feature/qisqa-tavsif,fix/muammo-nomi(kebab-case) - Migratsiya fayllari:
V00N__qisqa_tavsif.sql(snake_case)
Audit prompti (MCP ulangan bo‘lsa)
Baza sxemasini va src papkasini CLAUDE.md dagi nomlash standartlariga
solishtirib tekshir. Har buzilish uchun: joyi, hozirgi nom, to'g'ri nom.
Kod yozma — avval hisobot.