.NET 11 C# 15 akhirnya dapat union types
Judul asli: .NET (OK, C#) finally gets union types
Mengapa Ini Penting
Menandai evolusi signifikan C# menuju functional programming paradigm
Microsoft mengumumkan fitur union types dalam .NET 11 preview dengan keyword 'union' di C# 15. Fitur ini memungkinkan satu tipe data merepresentasikan beberapa tipe berbeda, mengatasi kebutuhan yang telah lama diminta komunitas developer.
Union types merupakan struktur data fundamental yang umum digunakan dalam pemrograman functional seperti F#, TypeScript, dan Rust. Dalam .NET 11 preview 4, Microsoft memperkenalkan keyword 'union' yang memungkinkan developer membuat tipe data yang dapat merepresentasikan beberapa tipe berbeda. Contohnya, union SupportedOS dapat menampung tipe Windows, Linux, atau MacOS dalam satu deklarasi. Sebelum C# 15, developer harus menggunakan base class, object instance, atau enum tag untuk menangani scenario serupa. Fitur ini sangat berguna untuk pattern seperti Result<TSuccess, TError> dan Option<T> yang sering diimplementasikan secara manual.