Istilah “.NET” muncul di banyak tempat: dotnet new di terminal, halaman unduhan “.NET 9 SDK”, sampai nama framework seperti ASP.NET. Pemula sering mengira .NET adalah bahasa pemrograman, atau kebalikannya — menganggap C# berjalan tanpa platform apa pun. Chapter ini meluruskan pembagian peran tersebut sehingga kita tahu persis komponen mana yang bekerja ketika kode kita dieksekusi.

Bahasa Versus Platform #

C# adalah bahasa pemrograman: kumpulan aturan sintaks yang kita pakai untuk menuangkan logika. .NET adalah platform: perangkat lengkap yang menerima kode tersebut, mengompilasinya, menjalankannya, dan menyediakan pustaka siap pakai.

Hubungan keduanya dapat kita petakan dalam lapisan berikut:

Dari diagram tersebut, dua hal penting perlu digarisbawahi. Pertama, C# bukan satu-satunya bahasa di .NET — F# dan Visual Basic juga dikompilasi oleh compiler yang sama. Kedua, hasil kerja compiler tetap membutuhkan runtime untuk berjalan di sistem operasi mana pun.

Komponen Utama .NET #

KomponenPerannya
SDKPerangkat lengkap untuk membangun aplikasi: compiler, template, dan CLI dotnet
Compiler (Roslyn)Menerjemahkan source code C# menjadi bytecode bernama IL
CLRCommon Language Runtime — menjalankan IL, mengelola memori, dan keamanan tipe
Base Class LibraryPustaka bawaan untuk pekerjaan umum: string, koleksi, file, jaringan
NuGetPackage manager untuk memasang pustaka pihak ketiga ke project

Kita akan sering memakai kata SDK dan runtime secara bergantian, padahal keduanya berbeda. SDK adalah paket yang kita unduh dan install — di dalamnya sudah termasuk runtime. Runtime (CLR) adalah bagian SDK yang benar-benar mengeksekusi program saat kita menekan tombol run.

Dari .NET Framework Menuju .NET Modern #

Sejarah platform .NET memiliki satu perputaran besar yang perlu kita kenali:

  • .NET Framework (2002–2019): versi pertama, hanya berjalan di Windows, dan kini berstatus legacy — hanya menerima perbaikan, tanpa fitur baru.
  • .NET Core (2016–2019): tulisan ulang platform agar cross-platform, open source, dan lebih cepat.
  • .NET (sejak 2020): .NET Core disatukan kembali dan dilanjutkan sebagai platform tunggal bernama “.NET”, dimulai dari versi .NET 5.

Penomoran .NET modern melompat dari .NET Core 3.1 langsung ke .NET 5 agar tidak tertukar dengan .NET Framework 4.x yang sudah ada. Sejak itu, .NET menaikkan nomor versi setiap tahun: .NET 6, .NET 7, dan seterusnya hingga .NET 9 pada November 2024.

Bagaimana C# Masuk ke Gambar #

Ketika kita menulis satu file C#, SDK mengompilasinya menjadi file assembly, lalu runtime menjalankannya — semua langkah tersebut terjadi di dalam .NET. Dengan demikian, mempelajari C# selalu berarti mempelajari .NET sekaligus, dan sebaliknya.

Hubungan ini menjawab pertanyaan praktis: kenapa kita harus mengunduh SDK hanya untuk menjalankan program kecil, dan kenapa program yang sama bisa berjalan di Windows maupun Linux. Tahap demi tahap proses tersebut kita telusuri pada Chapter Cara Kerja Program C#.