---
name: windows-library-development
description: "Yeniden kullanılabilir .NET/NuGet, WinUI veya WPF class/control library tasarlarken, API uyumluluğunu değiştirirken, paketlerken ve yayımlamaya hazırlarken kullan."
---

# Windows ve .NET kütüphaneleri

Önce tüketiciyi belirle: yalnız .NET kodu, Windows API wrapper'ı veya WPF/WinUI kontrol paketi. Desteklenen TFM, işletim sistemi ve mimari matrisini mevcut tüketici projelerinden çıkar. Paylaşılabilir core katmanına UI framework bağımlılığı taşımamaya çalış; yalnız olası tüketiciler için gereksiz multi-target ekleme.

- Public API, binary/source uyumluluğu ve sürümleme: [API sözleşmesi](references/api-compatibility.md).
- WinUI/WPF kontrolleri ve native varlıklar: [Windows katmanları](references/windows-layers.md).
- NuGet paket yapısı, tüketici testi ve yayımlama: [Paketleme](references/nuget-release.md).

Uygulama içinde başarılı çalışan kodun yayımlanabilir paket olduğunu varsayma. Üretilen `.nupkg` dosyasını ayrı bir örnek tüketici projeye yükleyerek doğrula; project reference bağımlılık/paket kusurlarını gizleyebilir.

Her public değişiklikte parametre, dönüş, hata, cancellation ve kaynak sahipliği sözleşmesini açık tut. Dokümantasyon ve migration notu değişen API'yi takip etsin. NuGet registry, paket kimliği ve sürümü mevcut oturumdaki yetkiye göre doğrula; yayın talimatı zaten varsa tekrar onay isteme. Yetki olmayan dış yayın için önce incelenebilir paket, test sonuçları ve yayın komutu hazırla.

Sonuçta paket sürümü, destek matrisi, tüketici testleri, uyumluluk etkisi ve yayın durumu bildirilir.
