d48cda4081
CI / Test (ubuntu-latest, Node 18.x, bun) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 18.x, npm) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 18.x, pnpm) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 18.x, yarn) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 20.x, bun) (push) Failing after 17m13s
CI / Test (ubuntu-latest, Node 20.x, npm) (push) Failing after 18m42s
CI / Test (ubuntu-latest, Node 20.x, pnpm) (push) Failing after 15m0s
CI / Test (ubuntu-latest, Node 20.x, yarn) (push) Failing after 49m44s
CI / Test (ubuntu-latest, Node 22.x, bun) (push) Failing after 51m55s
CI / Test (ubuntu-latest, Node 22.x, pnpm) (push) Failing after 21m57s
CI / Test (ubuntu-latest, Node 22.x, npm) (push) Failing after 37m39s
CI / Test (ubuntu-latest, Node 22.x, yarn) (push) Failing after 34m7s
CI / Validate Components (push) Failing after 37m15s
CI / Python Tests (push) Failing after 10m1s
CI / Security Scan (push) Failing after 10m1s
CI / Lint (push) Failing after 17m12s
CI / Coverage (push) Failing after 20m19s
CI / Test (macos-latest, Node 18.x, bun) (push) Has been cancelled
CI / Test (macos-latest, Node 18.x, npm) (push) Has been cancelled
CI / Test (macos-latest, Node 18.x, pnpm) (push) Has been cancelled
CI / Test (macos-latest, Node 18.x, yarn) (push) Has been cancelled
CI / Test (windows-latest, Node 18.x, npm) (push) Has been cancelled
CI / Test (windows-latest, Node 18.x, pnpm) (push) Has been cancelled
CI / Test (windows-latest, Node 18.x, yarn) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, bun) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, npm) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, pnpm) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, yarn) (push) Has been cancelled
CI / Test (windows-latest, Node 20.x, npm) (push) Has been cancelled
CI / Test (windows-latest, Node 20.x, pnpm) (push) Has been cancelled
CI / Test (windows-latest, Node 20.x, yarn) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, bun) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, npm) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, pnpm) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, yarn) (push) Has been cancelled
CI / Test (windows-latest, Node 22.x, npm) (push) Has been cancelled
CI / Test (windows-latest, Node 22.x, pnpm) (push) Has been cancelled
CI / Test (windows-latest, Node 22.x, yarn) (push) Has been cancelled
49 lines
1.6 KiB
Markdown
49 lines
1.6 KiB
Markdown
# Kodlama Stili
|
||
|
||
## Immutability (KRİTİK)
|
||
|
||
DAIMA yeni nesneler oluştur, mevcut olanları ASLA değiştirme:
|
||
|
||
```
|
||
// Pseudocode
|
||
YANLIŞ: modify(original, field, value) → original'i yerinde değiştirir
|
||
DOĞRU: update(original, field, value) → değişiklikle birlikte yeni kopya döner
|
||
```
|
||
|
||
Gerekçe: Immutable veri gizli yan etkileri önler, debug'ı kolaylaştırır ve güvenli eşzamanlılık sağlar.
|
||
|
||
## Dosya Organizasyonu
|
||
|
||
ÇOK KÜÇÜK DOSYA > AZ BÜYÜK DOSYA:
|
||
- Yüksek kohezyon, düşük coupling
|
||
- Tipik 200-400 satır, maksimum 800
|
||
- Büyük modüllerden utility'leri çıkar
|
||
- Type'a göre değil, feature/domain'e göre organize et
|
||
|
||
## Hata Yönetimi
|
||
|
||
Hataları DAIMA kapsamlı bir şekilde yönet:
|
||
- Her seviyede hataları açıkça ele al
|
||
- UI'ye yönelik kodda kullanıcı dostu hata mesajları ver
|
||
- Server tarafında detaylı hata bağlamı logla
|
||
- Hataları asla sessizce yutma
|
||
|
||
## Input Validasyonu
|
||
|
||
Sistem sınırlarında DAIMA validate et:
|
||
- İşlemeden önce tüm kullanıcı girdilerini validate et
|
||
- Mümkün olan yerlerde schema tabanlı validasyon kullan
|
||
- Açık hata mesajlarıyla hızlıca başarısız ol
|
||
- Harici verilere asla güvenme (API yanıtları, kullanıcı girdisi, dosya içeriği)
|
||
|
||
## Kod Kalitesi Kontrol Listesi
|
||
|
||
İşi tamamlandı olarak işaretlemeden önce:
|
||
- [ ] Kod okunabilir ve iyi adlandırılmış
|
||
- [ ] Fonksiyonlar küçük (<50 satır)
|
||
- [ ] Dosyalar odaklı (<800 satır)
|
||
- [ ] Derin iç içe geçme yok (>4 seviye)
|
||
- [ ] Düzgün hata yönetimi
|
||
- [ ] Hardcoded değer yok (sabit veya config kullan)
|
||
- [ ] Mutasyon yok (immutable pattern'ler kullanıldı)
|