Tek kişilik bir projede dokuz kalite kapısı kurdum
· 1 dk okuma
- devops
- ci-cd
- kalite
Tek başıma çalışırken disiplini nasıl koruduğum sorusuyla başlayayım — kod incelemesi yapacak ikinci bir kişi yoksa bu işi makineye devretmek zorundayım.
Dokuz kapı neler
Sırasıyla: tip denetimi, lint, biçim denetimi, içerik şeması doğrulaması,
üretim derlemesi, Lighthouse bütçesi, axe-core erişilebilirlik taraması,
paket boyutu bütçesi ve bağlantı taraması.
| Kapı | Ne denetliyor |
| ------------------- | -------------------------------------------- |
| typecheck | tsc --noEmit, tüm paketler |
| lint | Jeton disiplini ve erişilebilirlik kuralları |
| format:check | Kod biçimi |
| content:check | Eksik/hatalı frontmatter |
| build | Üretim derlemesi |
| Lighthouse bütçesi | Performans, SEO, erişilebilirlik |
| axe-core taraması | Tam erişilebilirlik kural seti |
| Paket bütçesi | Rota başına ilk yükleme JS'i |
| lychee | Kırık bağlantılar |
Neden hepsi tek komutla çalışıyor
pnpm verify bu kapılardan gönderim öncesi çalışması gerekenleri zincirler.
Ölçüm kapıları (Lighthouse, axe-core, paket bütçesi) derleme çıktısına
bağımlı olduğu için ayrı komutlarda kalıyor, ama tek komutla çalışabilmenin
kazancı şu: "unutma riski" ortadan kalkıyor. Dokuz kapıyı elle sırayla
çalıştırmayı hatırlamak zorunda değilim.
Kod yazılır
Yerel kanca
Commit öncesi hızlı denetimler.
Gönderim
CI'da dokuz kapı
Tamamı çalışır.
Birleştirme
Gevşetilen kapı, bir süre sonra hiç yoktur
Hiçbir eşiği "şimdilik" gevşetmiyorum. Bir eşik bir kez tartışmasız
gevşetilirse ikinci gevşetme daha kolay gelir; birikimli olarak kapı
anlamını kaybeder. Eşik değişikliği gerekiyorsa önce Karar_Kaydi.md'ye
yazılır, sonra kod değişir — sessizce değil.
Kapanış
Bu disiplin bana zaman kazandırıyor, çünkü hatayı dakikalar içinde öğreniyorum; bir haftalık geliştirmenin sonunda değil.
Abdullah Balat
Kurucu ve geliştirici
Bu siteyi kuran, tasarlayan ve içeriğini yazan kişiyim. Hakkımda daha fazlası →
Yorumlar
YakındaYorum alanı henüz aktif değil; GitHub Discussions tabanlı bir sistem hazırlanıyor.
Bülten
YakındaYeni yazı ve ders yayınlandığında haber vermek için bir bülten hazırlıyorum. Kayıt formu şu an pasif; aktif olduğunda burada duyurulacak.