Proje: Okul B2B App · Hub: Okul B2B App — Conventions
Kodlama Standartları Özeti
docs/development/CODING_STANDARDS.md özeti.
Genel Prensipler
- Clean Code — Okunabilir, anlamlı isimler, minimal karmaşıklık
- Single Responsibility — Her sınıf/fonksiyon tek iş
- DRY — Kod tekrarını önle, yeniden kullan
TypeScript Kuralları
- Strict mode kullanılır
anyyerine proper tipler- Interface over type alias (nesne tipleri için)
- Readonly immutability
React Native Kuralları
constarrow fonksiyonlar için bileşenlerReact.memoile gereksiz render’ları önle- Hooks kural sırası: state → effect → memoized → callbacks
useCallbackveuseMemoperformans kritik yerlerde
Naming Conventions
| Öğe | Kural | Örnek |
|---|---|---|
| Bileşenler | PascalCase | LeadDetailModal |
| Hook’lar | useCamelCase | useSchool |
| Sabitler | UPPER_SNAKE | API_CONFIG |
| Fonksiyonlar | camelCase | getLeads |
| Event handlers | handleEvent | handleSchoolSelect |
Error Handling
Servisler:
- throw etmez, boş/default değer döner (defensive)
- Hataları
logError()ile loglar - Kullanıcıya
Toastile bildirim
Exceptions:
NotesService.createNote/updateNotethrow ederSchoolContentServiceSchoolContentResultdöner
Security
expo-secure-storeile hassas veri- Input validation boundary’lerde
- SQL injection/XSS risk yok (native API)
Related
- naming-ve-klasor-yapisi — dosya/klasör adlandırma
- error-handling-pattern — error handling detayları