İçeriğe atla
Şimdi yükleniyor
  • Anasayfa
  • Azure & Bulut
    • Microsoft Azure
    • Bulut Altyapı
    • Microsoft 365
  • Yazılım
    • DevOps
    • Geliştirici Araçları
    • Konteyner & K8s
  • AI & Veri
    • Yapay Zeka
    • Veri & Analitik
  • Güvenlik
    • Güvenlik & Kimlik
    • Kurumsal Teknoloji
  • Hakkımda
    • İletişim
×
  • Bulut Altyapı
  • DevOps
  • Geliştirici Araçları
  • Güvenlik & Kimlik
  • Konteyner & Kubernetes
  • Kurumsal Teknoloji
  • Microsoft 365
  • Microsoft Azure
  • Veri & Analitik
  • Yapay Zeka
  • Başlangıç
  • Yapay Zeka
  • C# 15’te Union Types: Eksik Parça Nihayet Geldi
Geliştirici Araçları Yapay Zeka API tasarımı, C# 15, hata yönetimi, pattern matching, sonuç tipi, tip güvenliği, union types A.KILIÇ 04/04/2026 0 Yorumlar

C# 15’te Union Types: Eksik Parça Nihayet Geldi

C# 15’te Union Types: Eksik Parça Nihayet Geldi
Ana Sayfa › Geliştirici Araçları › C# 15’te Union Types: Eksik Parça Nihayet Geldi
📑 İçindekiler
  1. Neden bu kadar geç kaldı?
  2. Kod nasıl görünüyor?
  3. Küçük startup için ne ifade ediyor?
  4. Enterprise seviyede neden daha kıymetli?
  5. Nerede parlıyor, nerede biraz ham kalıyor?
  6. Sahada nasıl yaklaşırım?
  7. Kullanırken dikkat edeceğim noktalar neler?
  8. Sıkça Sorulan Sorular
  9. C# 15 union types nedir?
  10. <switch> ifadelerinde neden önemli?
  11. Mevcut abstract class yerine kullanılabilir mi?
  12. .NET uygulamalarında nerede başlamak mantıklı?
  13. Kaynaklar ve İleri Okuma
⏱️ 5 dk okuma📅 4 Nisan 2026🔄 Güncelleme: 10 Nisan 2026👁️ görüntülenme

C# tarafında yıllardır eksik duran bir parça vardı… işin aslı şu ki, çoğu geliştirici bunu başka dillerde görüp “keşke bizde de olsa” diyordu. C# 15 ile gelen union anahtar sözcüğü tam da o boşluğu dolduruyor. Ben ilk kez F# tarafında discriminated union mantığını kurcaladığımda, “Bu kadar net ve güvenli bir model niye C#’ta yok?” diye bayağı söylenmiştim. Şimdi tablo değişiyor.

Açık konuşayım, bu özellik sadece “güzel bir dil eklentisi” değil. Kurumsal tarafta, özellikle hata yönetimi, sonuç tipi modelleme. Farklı nesne türlerini tek bir kontratta toplama işlerinde bayağı iş görüyor — bence çok yerinde bir karar —. Geçen yıl Şubat 2025’te bir finans müşterisinde API dönüşlerini sadeleştirirken aynı sorunu yaşamıştık: ya object kullanıp belirsizliğe teslim olacaktık ya da gereksiz kalıtım zincirleri kuracaktık (ki bu çoğu kişinin gözünden kaçıyor). İkisi de idare eder gibi görünüyordu ama pratikte çamur gibiydi.

💡 Bilgi: Union type, bir değerin tanımlı ve kapalı bir tip kümesinden yalnızca biri olmasını sağlıyor. Yanı “ya şudur ya budur” diyorsun; üçüncü ihtimale kapı açmıyorsun.

Neden bu kadar geç kaldı?

Küçük bir detay: Aslında dur, önce şunu söyleyeyim: C# zaten pattern matching konusunda güçlüydü. Ama güçlü olması, her problemi çözdüğü anlamına gelmiyor. object kullandığınızda compiler size pek yardım etmiyor; marker interface veya abstract base class kullandığınızda işe kapalı bir küme elde edemiyorsunuz. Yanı derleyici “tamam kardeşim, bu iş burada bitti” demiyor.

Ben bunu en net 2019’da kendi lab ortamımda görmüştüm. Küçük bir envanter servisinde ErrorOrValue benzeri yapı kurmaya çalışıyorduk. İlk başta basit geldi. Sonra iki yeni hata tipi eklendi, ardından üçüncü ekip kendi exception sınıfını dayattı… derken sistem genişledi ama kontrol kayboldu. İşte union types’ın olayı tam burada başlıyor: tip seti kapanıyor ve compiler bunu biliyor.

Ha bu arada, F# bilenler için sürpriz yok; onlar buna zaten alışık. Ama C#’ın sunduğu deneyim daha “native”. Mevcut pattern matching bilgisini çöpe atmıyorsun, üstüne yeni bir katman ekliyorsun. Bu bence önemli çünkü ekiplerde herkes F# bilmiyor ama C# bilen çok var.

Yaklaşım Avantaj Sorun
object Baskısız, hızlı başlar Tip güvenliği zayıf
İnterface / base class Daha düzenli görünür Kümeyi kapatamazsın
union Kapatılmış tip seti + exhaustive match .NET 11 ön izleme dönemi olduğu için erken aşama riskleri var

Kod nasıl görünüyor?

Sade örnekle gidelim. Mesela evcil hayvanları modellemek istiyorsunuz:

Durun, bir saniye.

public record class Cat(string Name);
public record class Dog(string Name);
public record class Bird(string Name);
public union Pet(Cat, Dog, Bird);
Pet pet = new Dog("Rex");
Console.WriteLine(pet.Value);
string name = pet switch
{
Dog d => d.Name,
Cat c => c.Name,
Bird b => b.Name,
};

Şahsen, Bunun hoş tarafı şu: Pet, rastgele her şeyi tutmuyor; yalnızca belirlediğiniz üç tipi tutuyor. Compiler da bunu biliyor ve switch yazarken sizden eksiksiz eşleşme bekliyor. Kısacası “default koyayım da kurtulayım” devri biraz geride kalıyor.

Aslında, Lafı gevelemeden söyleyeyim: bu yapı özellikle domain-driven design tarafında elinizi rahatlatır. Mesela ödeme akışında CardPaymentResult, BankTransferResult, PaparaResult? gibi farklı case’leri tek yerde toplamak mümkün olurken saçma sapan inheritance ağacı kurmak zorunda kalmazsınız.

Küçük startup için ne ifade ediyor?

Küçük ekiplerde hız önemli ama hızın bedeli çoğu zaman teknik borç oluyor. Startuplarda genelde ilk hafta herkes mutlu; üçüncü ayda işe kimse kimin ne döndürdüğünü bilmiyor. Union types burada kodu sıkılaştırıyor ama fazla ritüel de istemiyor.

Eğer 4-5 kişilik bir ürün ekibiniz varsa ve backend’i.NET ile yazıyorsanız, bu özellik sizi özellikle API response modellerinde toparlar. Bir arkadaşım Kasım 2024’te İzmir’de küçük bir SaaS girişiminde benzer modeli manuel olarak taklit etmişti; iki sprint sonra ekip “neden bunu derleyiciye bırakmadık ki?” diye pişman olmuştu… haklılardı. Bu konuyla ilgili GitHub Actions Nisan 2026 Güncellemeleri: Üç Kü… yazımıza da göz atmanızı tavsiye ederim.

Enterprise seviyede neden daha kıymetli?

İtiraf edeyim, Büyük organizasyonlarda mesele sadece doğruluk değil; bakım maliyeti de var (ciddiyim). AZ-305 sınavına hazırlanırken bile hep aynı şeyi düşünürdüm: mimarı kararların uzun vadeli etkisi kısa vadeli kazançtan daha önemli. Union type burada tam o çizgide dürüyor.

Bir dakika — bununla bitmedi. Bu konuyla ilgili Google Vids’e Gelen Yapay Zekâ Hamlesi: Ücretsiz Video Üretimi yazımıza da göz atmanızı tavsiye ederim.

Union types’ın asıl gücü “çok şey yapması” değil; yanlış şeyi yaptırmaması.
Derleyicinin sizi dürtmesi bazen sınır bozucu olur…
ama prod ortamında gece uykusunu kurtaran şey de tam olarak budur.

Nerede parlıyor, nerede biraz ham kalıyor?

Bayağı iyi olduğu yerler belli: result modeling, validation flow’lar, parse edilmiş veri ayrıştırma işleri. Birbirine alakasız türleri tek sözleşmede toplamak istediğiniz anlar. Mesela de de null kontrolünü düzgün yapmak isteyen ekiplerde güzel oturur. GitHub Copilot Cloud Agent İçin Runner Kontrolü: Kurumsal Düzen yazımızda bu konuya da değinmiştik. Daha fazla bilgi için Microsoft Agent Framework 1.0: Ajanlar Artık Ciddileşti yazımıza bakabilirsiniz.

Aslında, Ama beklentiyi abartmayalım. Kağıt üstünde iyi görünen her özellik gibi bunun da erken dönem gölgeleri olabilir..NET 11 Preview 2 ile geldiği için bazı araç zincirlerinin henüz neredeyse tamamen oturmamış olması normaldir (mesela IDE davranışları veya analizörler). Yanı evet, yenilik fena değil… İlginç, değil mi? fakat üretime koşmadan önce birkaç tür test etmek şart.

  • Daha temiz kontrat: Hangi tiplerin mümkün olduğu açıkça belli olur.
  • Daha iyi exhaustive check: Derleyici eksik case’leri yakalar.
  • Daha az inheritance baskısı: Kalıtım zinciri kurmak gerekmez.
  • Dikkat: Erken aşama risklerini göz önünde bulundurun.

Sahada nasıl yaklaşırım?

Açık konuşayım, ben böyle özellikleri hemen “her yere yayalım” kafasında almıyorum. Önce dar bir kullanım alanı seçerim; mesela sadece API response modelleri ya da command result sınıfları gibi yerlerde denerim. Logosoft’ta geçen sene yaptığımız bir Azure entegrasyonunda da böyle ilerledik: önce küçük yüzey alanı seçtik, sonra yaygınlaştırdık.

E tabiî büyük şirketlerde mesele sadece kod yazmak değil; governance var, code review var, eğitim var… O yüzden union type geldi diye mevcut pek çok abstract class yapılarını silmek doğru olmaz. Hatta bazı yerlerde eski yaklaşım hâlâ daha okunaklı olabilir.

Neyse uzatmayalım: benim tavsiyem şu — eğer domain’inizde gerçekten “yalnızca şu üç-dört seçenek geçerli” diyebiliyorsanız union types’a bakın! Yok eğer tip sayısı sürekli artıyorsa ya da dış sistemler sözleşmeyi sürekli zorluyorsa önce tasarımı düzeltin; özellik tek başına mucize yaratmaz. Bu konuyla ilgili Copilot Cloud Agent Artık İmzalı Commit Atıyor: Neyi Değiştiriyor? yazımıza da göz atmanızı tavsiye ederim.

Kullanırken dikkat edeceğim noktalar neler?

  1. Kapalılık gerçekten gerekli mi?
  2. Ekip anlayacak mı?
  3. Teslim zinciri hazır mı?
  4. null senaryoları net mi?
  5. Bence burada en kritik konu sadelikle disiplin arasındaki dengeyi tutturmak. Sadece modern görünmek için kullanırsanız ters teper; ama doğru yerde kullanırsanız bayağı temiz sonuç veriyor.

    Şimdi gelelim pratik okumaya…

    Sıkça Sorulan Sorular

    C# 15 union types nedir?

    C# 15’te gelen union, bir değişkenin önceden tanımlanmış birkaç tipten yalnızca biri olmasını sağlar. Derleyici de bu setin dışına çıkılmasına izin vermez.

    <switch> ifadelerinde neden önemli?

    Eksen noktası burada exhaustive pattern matching oluyor. Yanı tüm case’leri kapsadığınızdan emin olunuyor (buna dikkat edin). Default branch’e ihtiyaç azalıyor.

    Mevcut abstract class yerine kullanılabilir mi?

    Bazı senaryolarda evet, ama hepsinde değil. Eğer ortak davranıştan çok kapalı tip kümesi önemliyse union daha doğru seçim olur.

    .NET uygulamalarında nerede başlamak mantıklı?

    Bir şey dikkatimi çekti:

    Küçük başlayın: API response, validation result, domain event sonucu gibi alanlar iyi adaydır. Büyük refactor yerine kontrollü pilot öneririm.

    Kaynaklar ve İleri Okuma

    C# 15 ile Union Types duyurusu — Microsoft.NET Bloğu

    C# resmî dokümantasyonu — Microsoft Learn

    Pattern Matching rehberi — Microsoft Learn

    Microsoft Agent Framework 1.0: Ajanlar Artık Ciddileşti

    CodeQL Autofix Raporları Artık Daha Gerçekçi

    GitHub Güvenliği:
    Küçük Repoda Büyük Açıkları Kapatmak

Aşkın KILIÇ
Aşkın KILIÇYazar

20+ yıl deneyimli Azure Solutions Architect. Microsoft sertifikalı bulut mimari ve DevOps danışmanı. Azure, yapay zekâ ve bulut teknolojileri üzerine Türkçe teknik içerikler üretiyor.

AZ-305AZ-104AZ-500AZ-400DP-203AI-102

İlgili Yazılar

Copilot CLI'da Auto Model Seçimi: Ne İşe Yarıyor?
Copilot CLI'da Auto Model Seçimi: Ne İşe Yarıyor?19 Nis 2026
Foundry Local 1.1: Mikrofondan Canlı Transkripsiyon Geldi
Foundry Local 1.1: Mikrofondan Canlı Transkripsiyon Geldi12 May 2026
Agent Governance Toolkit ile MCP Güvenliği: .NET’te Yeni Katman
Agent Governance Toolkit ile MCP Güvenliği: .NET’te Yeni Katman24 May 2026
Kurumsal Yapay Zekâ Maliyetleri: Forrester Analizi
Kurumsal Yapay Zekâ Maliyetleri: Forrester Analizi9 Mar 2026

Bu içerik işinize yaradı mı?

Benzer içerikleri kaçırmamak için beni sosyal medyada takip edin.

X / Twitter LinkedIn YouTube GitHub

Haftalık Bülten

Her pazar özenle seçilmiş teknoloji yazıları doğrudan e-postanıza gelsin.

Etiket API tasarımı C# 15 hata yönetimi pattern matching sonuç tipi tip güvenliği union types
A.KILIÇ

Microsoft Azure Çözüm Uzmanı | Bulut Bilişim, Yapay Zekâ, DevOps ve Kurumsal Güvenlik alanlarında 15+ yıl deneyim. Azure, Kubernetes, AI/ML ve modern altyapı mimarileri üzerine yazılar yazıyorum.

view all posts
Önceki yazı

GitHub Copilot Cloud Agent İçin Runner Kontrolü: Kurumsal Düzen

Sonraki yazı

Copilot Cloud Agent İçin Kurumsal Firewall: Kontrol Sizde

İlginizi Çekebilir

Azure SDK Haziran 2026: Transcription ve Planetary Pro GA'da
A.KILIÇ 0

Azure SDK Haziran 2026: Transcription ve Planetary Pro GA’da

06/07/2026
Headlamp Knative Eklentisi: Serverless'ı Görsel Takip
A.KILIÇ 0

Headlamp Knative Eklentisi: Serverless’ı Görsel Takip

06/07/2026
Azure Storage Göçü: Planlamadan Kesime Sahadan Notlar
A.KILIÇ 0

Azure Storage Göçü: Planlamadan Kesime Sahadan Notlar

05/07/2026

Yazı Ara

Takip Edin

  • Takipçi
  • Takipçi
  • Takipçi
  • Abone
  • Takipçi
  • Azure Files NFS ile Modern Linux İş Yükleri: Sahadan Bakış
    06/07/2026 Azure Files NFS ile Modern Linux İş Yükleri: Sahadan Bakış
  • SharePoint RER Emekliye Ayrılıyor: 1 Temmuz 2027 Son Tarih
    06/07/2026 SharePoint RER Emekliye Ayrılıyor: 1 Temmuz 2027 Son Tarih
  • Azure SDK Haziran 2026: Transcription ve Planetary Pro GA'da
    06/07/2026 Azure SDK Haziran 2026: Transcription ve Planetary Pro GA’da
  • Headlamp Knative Eklentisi: Serverless'ı Görsel Takip
    06/07/2026 Headlamp Knative Eklentisi: Serverless’ı Görsel Takip
  • Azure Storage Göçü: Planlamadan Kesime Sahadan Notlar
    05/07/2026 Azure Storage Göçü: Planlamadan Kesime Sahadan Notlar
  • Azure H200 GPU’larla Gizli Bulutlarda Yapay Zekâ: Gerçekten Neler Değişiyor?
    22/03/2026 Azure H200 GPU’larla Gizli Bulutlarda Yapay Zekâ: Gerçekten Neler Değişiyor?
  • DevOps Güncellemeleri
    09/03/2026 Azure DevOps Server Şubat Güncellemesi: Güvenlik
  • Artımlı Anlık Görüntü: Anında Geri Yükleme
    09/03/2026 Artımlı Anlık Görüntü: Anında Geri Yükleme
  • Veri Merkezi Güvenilirliği
    09/03/2026 Azure’da Kesintisiz Çalışma: Güvenilirlik ve Kurtarma
  • Yapay zeka ve kodlama temasinda binary kod projeksiyonu
    12/03/2026 Azure Boards ve Copilot: Takımınıza Kendi Ajanı
  • GitHub Copilot Pro Denemeleri Neden Durdu?
    11/04/2026 GitHub Copilot Pro Denemeleri Neden Durdu?
  • vcpkg'de Paralel Kurulum ve Güvenlik Yaması: Neler Değişti?
    06/04/2026 vcpkg’de Paralel Kurulum ve Güvenlik Yaması: Neler Değişti?
  • MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
    08/04/2026 MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
  • Yapay Zekâ Çağında Sanayi Politikası: Asıl Mesela Ne?
    06/04/2026 Yapay Zekâ Çağında Sanayi Politikası: Asıl Mesela Ne?
  • Microsoft Foundry Mart 2026: Sahadan İlk İzlenimler
    10/04/2026 Microsoft Foundry Mart 2026: Sahadan İlk İzlenimler

SİZİN İÇİN DERLEDİK

Azure Files NFS ile Modern Linux İş Yükleri: Sahadan Bakış
Bulut Altyapı DevOps

Azure Files NFS ile Modern Linux İş Yükleri: Sahadan Bakış

06/07/2026 A.KILIÇ
SharePoint RER Emekliye Ayrılıyor: 1 Temmuz 2027 Son Tarih
Bulut Altyapı Güvenlik & Kimlik Microsoft 365

SharePoint RER Emekliye Ayrılıyor: 1 Temmuz 2027 Son Tarih

06/07/2026 A.KILIÇ
Azure SDK Haziran 2026: Transcription ve Planetary Pro GA'da
Bulut Altyapı Geliştirici Araçları Yapay Zeka

Azure SDK Haziran 2026: Transcription ve Planetary Pro GA’da

06/07/2026 A.KILIÇ
Headlamp Knative Eklentisi: Serverless'ı Görsel Takip
DevOps Geliştirici Araçları Konteyner & Kubernetes

Headlamp Knative Eklentisi: Serverless’ı Görsel Takip

06/07/2026 A.KILIÇ
Azure Storage Göçü: Planlamadan Kesime Sahadan Notlar
Bulut Altyapı DevOps Geliştirici Araçları

Azure Storage Göçü: Planlamadan Kesime Sahadan Notlar

05/07/2026 A.KILIÇ
Azure Files NFS ile Linux İş Yükleri: Sahadan Notlar
Bulut Altyapı Güvenlik & Kimlik Microsoft Azure

Azure Files NFS ile Linux İş Yükleri: Sahadan Notlar

05/07/2026 A.KILIÇ
WSL Container Public Preview: Windows'ta Linux Konteyner Devri
Bulut Altyapı Geliştirici Araçları

WSL Container Public Preview: Windows’ta Linux Konteyner Devri

05/07/2026 A.KILIÇ
SkiaSharp 4.0 Kararlı Sürüm: .NET Grafiğinde Yeni Dönem
Bulut Altyapı Geliştirici Araçları

SkiaSharp 4.0 Kararlı Sürüm: .NET Grafiğinde Yeni Dönem

05/07/2026 A.KILIÇ
Binlog MCP Server: CI'da Otomatik Build Analizi Devri
Bulut Altyapı DevOps Geliştirici Araçları

Binlog MCP Server: CI’da Otomatik Build Analizi Devri

04/07/2026 A.KILIÇ
Claude Microsoft Foundry'de GA: Azure Faturasında Tek Satır
Bulut Altyapı Kurumsal Teknoloji Microsoft Azure

Claude Microsoft Foundry’de GA: Azure Faturasında Tek Satır

04/07/2026 A.KILIÇ
Work IQ Genel Kullanıma Açılıyor: Ajanlar İçin Zeka Katmanı
Güvenlik & Kimlik Microsoft 365 Microsoft Azure

Work IQ Genel Kullanıma Açılıyor: Ajanlar İçin Zeka Katmanı

04/07/2026 A.KILIÇ
Headlamp Cluster API Eklentisi: CAPI Artık Görsel Arayüzde
Bulut Altyapı Geliştirici Araçları

Headlamp Cluster API Eklentisi: CAPI Artık Görsel Arayüzde

04/07/2026 A.KILIÇ

Hakkımda

Aşkın KILIÇ

Microsoft Azure Çözüm Uzmanı. Bulut bilişim, yapay zekâ, DevOps ve kurumsal güvenlik üzerine yazılar yazıyorum.

Devamını Oku →

Kategoriler

  • Bulut Altyapı
  • DevOps
  • Geliştirici Araçları
  • Güvenlik & Kimlik
  • Konteyner & Kubernetes
  • Kurumsal Teknoloji
  • Microsoft 365
  • Microsoft Azure
  • Veri & Analitik
  • Yapay Zeka

Popüler Etiketler

.NET 11 AI agent AI ajanları Azure Azure Boards Azure Cosmos DB Azure Developer CLI Azure DevOps Azure OpenAI azure sdk Azure SQL bulut bilişim CI/CD copilot DevOps DevSecOps geliştirici verimliliği GitHub GitHub Actions GitHub Copilot güvenlik Kimlik Doğrulama Kubernetes kurumsal entegrasyon Kurumsal geliştirme kurumsal güvenlik kurumsal yapay zeka maliyet optimizasyonu Microsoft Agent Framework Microsoft Azure Microsoft Foundry MSVC otomasyon performans Pull Request Python RAG SEO uyumlu verimlilik veri yönetimi Visual Studio VS Code yapay zeka yapay zeka ajanları Yazılım geliştirme
  • Gizlilik Politikası
  • Çerez Politikası
  • Kullanım Koşulları
  • Hakkımda
  • İletişim

© 2026 Aşkın KILIÇ | Tüm hakları saklıdır. | Powered By SpiceThemes

🍪 Bu sitede içerik deneyiminizi iyileştirmek için çerezler kullanılmaktadır. Siteyi kullanmaya devam ederek KVKK ve Çerez Politikamızı kabul etmiş sayılırsınız.
✉

Haftalık Bülten

Azure, DevOps ve Yapay Zeka dünyasındaki en güncel içerikleri her hafta doğrudan e-postanıza alın.

Spam yok. İstediğiniz zaman iptal edebilirsiniz.
📱
Uygulamayı Yükle Ana ekrana ekle, çevrimdışı oku
Ana Sayfa
Kategoriler
💻 Geliştirici Araçları 233 yazı 🏗️ Bulut Altyapı 206 yazı 🤖 Yapay Zeka 176 yazı 🔧 DevOps 140 yazı ☁️ Microsoft Azure 138 yazı 🔒 Güvenlik & Kimlik 131 yazı 🏢 Kurumsal Teknoloji 52 yazı 📊 Veri & Analitik 50 yazı 🐳 Konteyner & Kubernetes 38 yazı 📧 Microsoft 365 14 yazı
Ara
Popüler
Yapay Zeka Azure Kubernetes DevOps Copilot Docker
Paylaş
WhatsApp Telegram X LinkedIn
İçindekiler
    ← GitHub Copilot Cloud Agent İçi...
    Copilot Cloud Agent İçin Kurum... →
    📩

    Gitmeden önce!

    Her pazar özenle seçilmiş teknoloji yazıları ve AI haberleri doğrudan e-postanıza gelsin. Ücretsiz, spam yok.

    🔒 Bilgileriniz güvende. İstediğiniz zaman ayrılabilirsiniz.

    📬 Haftalık bülten: Teknoloji + AI haberleri
    Beni Takip Et Yeni Azure / AI / DevOps yazıları LinkedIn ve X'te ilk burada.
    LinkedIn X / Twitter GitHub RSS