7.0 | Kütüphane ve Framework Seçimi: Doğru Araçlarla Hızlanmak

Yayınlanma Tarihi: 2026-05-13

Modern yazılım dünyasında "her şeyi sıfırdan yazmak" hem vakit kaybıdır hem de hata riskini artırır. Bir ev yaparken tuğlaları kendiniz dökmez, hazır alırsınız; yazılımda da durum aynıdır. Ancak hangi tuğlanın (kütüphanenin) kaliteli olduğunu ve evin iskeletine (framework) uyup uymadığını anlamak sizin uzmanlığınızdır.

1. Framework ve Kütüphane: Hangisi Patron?

Bu iki kavram sıkça karıştırılır, ancak aralarında hayati bir fark vardır:

  • Kütüphane (Library): Sizin çağırdığınız bir araçtır. Örneğin; "Şu veriyi güzel bir grafik olarak çiz" dersiniz; kontrol sizdedir.
  • Framework (Çatı): Sizi çağıran yapıdır. Uygulamanın iskeletini oluşturur ve sizi belirli kurallara zorlar. Flutter bir framework'tür; size dosyaları nereye koyacağınızı ve bileşenleri nasıl bağlayacağınızı söyler.

2. Tekerleği Yeniden İcat Etmemek

Ajan size her şeyi sıfırdan yazmayı önerebilir maar profesyonel bir yazılımcı şu soruyu sorar: "Bunu daha önce binlerce kişinin kullandığı, güvenli bir paketle yapabilir miyim?"

  • Avantajlar: Başkaları tarafından test edilmiştir, performanslıdır ve sürekli güncellenir.
  • Ajanın Rolü: Ona en popüler ve güncel paketleri sorduğunuzda, size resmi marketlerdeki (pub.dev, npm vb.) en iyi seçenekleri sunacaktır.

3. Ajanın Önerdiği Paketi "Denetleme" Sanatı

Ajan her zaman en güncel veya en güvenli paketi önermeyebilir. Kod okuryazarlığınızı burada konuşturmalısınız:

  • Güncellik: Önerilen kütüphanenin son güncelleme tarihini kontrol edin; 2 yıldır güncellenmeyen paketlerden kaçının.
  • Popülerlik: Topluluğun pakete olan güvenini (Likes/Stars) inceleyin.
  • Bağımlılık Çöplüğü: Küçük bir iş için çok ağır kütüphaneler eklemekten kaçınarak projenin hafif kalmasını sağlayın.

4. Güvenlik ve Tedarik Zinciri Riskleri

Kendi kodunuzu ajanla yazarken her satırı görüyorsunuz; ancak bir kütüphane eklediğinizde binlerce satır "yabancı" kodu projenize dahil edersiniz.

  • Dikkat: Ajanın önerdiği kütüphanenin güvenlik açıklarını sorgulatmalı ve dökümantasyonunu mutlaka incelemelisiniz.

Sözlük (Glossary)

  • Framework (Çatı): Yazılım geliştirme sürecini standartlaştıran ana yapı.
  • Library (Kütüphane): Belirli bir işlevi gerçekleştiren hazır kod koleksiyonu.
  • Package Manager: Kütüphanelerin yönetildiği sistem (örn: pub.dev, npm).
  • Dependency (Bağımlılık): Projenizin çalışması için ihtiyaç duyduğu dış kütüphaneler.

Sonraki Adım: 7.1 | Web Dünyasının Yıldızları: Karşılaştırmalı Framework Rehberi.