# C#

Adres: https://softwaredictionary.org/tr/terimler/csharp
Kategori: Programlama Dilleri
Son güncelleme: 2026-09-30
Okunuşu: si şarp

Kısaca: C#, çöp toplamalı .NET çalışma ortamında çalışan, statik tipli, nesne yönelimli bir dildir; web arka uçları, masaüstü uygulamalar ve oyunlar için kullanılır.

## C# nedir?

C# ("C sharp" diye okunur), Microsoft'ta Anders Hejlsberg'in başında olduğu bir ekip tarafından tasarlanan, 2000'de duyurulup .NET platformunun bir parçası olarak 2002'de yayımlanan, genel amaçlı bir programlama dilidir. Esas olarak nesne yönelimlidir, ancak lambdalar, örüntü eşleme ve koleksiyonları filtrelemek ile dönüştürmek için yerleşik bir sorgu sözdizimi olan LINQ gibi birçok fonksiyonel programlama fikrini de benimsemiştir. 2016'dan beri modern .NET açık kaynaklıdır ve platformlar arası çalışır; Windows, macOS ve Linux üzerinde koşar.

C# statik tiplidir; `var` anahtar sözcüğüyle yerel tip çıkarımı yapar ve bir değer `null` olabileceğinde derleme zamanında uyaran, isteğe bağlı null olabilen referans tiplerini destekler. Derleyici C# kodunu, .NET çalışma ortamının tam zamanında (JIT) derleyiciyle ya da gerektiğinde önceden derleyerek yerel makine koduna çevirdiği bir bayt kod olan Ara Dile (IL) dönüştürür. Bellek bir çöp toplayıcı tarafından yönetilir ve C#, paylaşılan referans tiplerini (`class`) kopyalanan değer tiplerinden (`struct`) ayırır.

C#; web arka uçlarında ve API'lerde, masaüstü uygulamalarında, bulut servislerinde, iş yazılımlarında ve platformlar arası mobil uygulamalarda kullanılır. Ayrıca oyun motorlarında yaygın bir betik dilidir; oyun mantığı C# ile yazılırken motorun kendisi yerel kodda çalışır. Sonradan birçok başka dilin benimsediği `async` ve `await` anahtar sözcüklerini C# yaygınlaştırdı.

Adına rağmen C#, C ya da C++'tan çok Java ile ortak noktalara sahiptir. Java gibi statik tiplidir, nesne yönelimlidir, çöp toplamalıdır ve yönetilen bir çalışma ortamı için bayt koda derlenir. "#" işareti, bir notayı yarım ses yükselten müzikal diyez işaretinden gelir ve C++'tan bir adım ileriyi ima eder.

## Önemli noktalar

- C# statik tiplidir ve nesne yönelimlidir; birçok fonksiyonel özelliğe de sahiptir.
- Kod, .NET çalışma ortamının makine koduna çevirdiği Ara Dile (IL) derlenir.
- Bellek bir çöp toplayıcı tarafından yönetilir.
- Web arka uçlarında, masaüstü uygulamalarında, bulut servislerinde ve oyun betiklerinde kullanılır.
- Adına rağmen C#, C ya da C++'tan çok Java ile ortak noktalara sahiptir.

## Örnek: LINQ ile bir listeyi filtrelemek

```csharp
// Top-level statements: no Main method needed in modern C#
var numbers = new List<int> { 5, 12, 8, 21, 3 };

// LINQ filters and sorts collections in a query-like style
var bigOnes = numbers.Where(n => n > 6).OrderBy(n => n);

foreach (var n in bigOnes)
{
    Console.WriteLine($"Found {n}");
}
```

## Sık sorulan sorular

**C# yalnızca Windows için mi?**

Hayır. Modern .NET açık kaynaklı ve platformlar arasıdır; bu yüzden C# programları konteynerler ve bulut ortamları dahil Windows, macOS ve Linux üzerinde çalışabilir.

**C# ile Java arasındaki fark nedir?**

Tasarım olarak benzerler: ikisi de yönetilen bir çalışma ortamında çalışan, statik tipli, nesne yönelimli ve çöp toplamalı dillerdir. Ekosistemlerinde ve C#'ın özel değer tipleri (`struct`), özellikler (properties) ve LINQ gibi ayrıntılarında ayrışırlar.

**C# ile C++ ilişkili mi?**

Yalnızca gevşek biçimde. C#, süslü parantez ve noktalı virgül gibi C tarzı sözdizimini ödünç alır; ancak otomatik bellek yönetimi ve yönetilen bir çalışma ortamı olan ayrı bir dildir.

---

Software Dictionary: https://softwaredictionary.org/tr · https://softwaredictionary.org/tr/llms.txt
