Mert Özen Her Satırda Daha İleri

Blog

Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.

Seriler
3 yazı bulundu #roslyn-analyzers
Statik Analiz Nedir, Ne Bulur, Ne Bulamaz? Linter, Analyzer, Type Checker ve SAST Farkı
Test ve Kalite SERİ 01

Statik Analiz Nedir, Ne Bulur, Ne Bulamaz? Linter, Analyzer, Type Checker ve SAST Farkı

Statik analiz kodu çalıştırmadan bug pattern'lerini ve kural ihlallerini yakalar, ama kodda yazılı olmayan business rule'ları göremez. Bookstore'da bir fiyat içe aktarma PR'ında .NET 10'un varsayılan ayarları 2 sorun, Recommended mod 7 diagnostic buldu; build temizlendikten sonra bile eksi fiyat ve 329,90'ı 32990 okuyan bir hata veritabanına kadar gitti. Yazı araç spektrumunu, severity'yi, IDE'den dashboard'a katmanları ve legacy projede ratchet stratejisini anlatıyor.

14 Kas 2026 12 dk 13
.NET Analyzer'ları: AnalysisLevel, CA Kuralları, .globalconfig, WarningsAsErrors ve Legacy Projede Kademeli Açmak
Test ve Kalite SERİ 02

.NET Analyzer'ları: AnalysisLevel, CA Kuralları, .globalconfig, WarningsAsErrors ve Legacy Projede Kademeli Açmak

AnalysisLevel'ı 10.0-recommended gibi bir sürüme sabitlemek, SDK yükseltmesinin kendiliğinden yeni kural açıp CI'ı kırmasını önler; Bookstore'da .NET 11 SDK'sı latest ile CA2028 hatası verdi, sabit seviyede temiz geçti. Yazı .globalconfig ile .editorconfig'in rolünü, Türkçe i ile kupon eşleşmeyen CA1309'u, SQL injection'ı gösteren CA2100'ü, hedefli WarningsAsErrors'ı, gerekçeli bastırmayı ve SARIF ile PR annotation'ını gerçek çıktılarla anlatıyor.

14 Kas 2026 15 dk 14
Third-Party Analyzer'lar ve Kendi Roslyn Analyzer'ını Yazmak: BannedApiAnalyzers, Popüler Paketler, DiagnosticAnalyzer ve CodeFix
Test ve Kalite SERİ 03

Third-Party Analyzer'lar ve Kendi Roslyn Analyzer'ını Yazmak: BannedApiAnalyzers, Popüler Paketler, DiagnosticAnalyzer ve CodeFix

Bir kural yalnız 'şu API'yi kullanma' diyorsa BannedApiAnalyzers yeter; code fix, ekibe özgü mantık ya da bağlama göre mesaj gerekiyorsa kendi Roslyn analyzer'ını yazarsın. Bookstore'da Meziantou, Roslynator ve SonarAnalyzer 87 uyarı ve 14 kat analiz süresi getirdi ama DateTime.UtcNow'ı varsayılan ayarlarla yakalamadı. Yazı TimeProvider kuralını operation callback'li bir analyzer, ayrı assembly'de code fix, Microsoft.CodeAnalysis.Testing testleri ve NuGet paketiyle yazıyor.

14 Kas 2026 14 dk 14
Blog Haritası