C Sharp sözdizimi
- Temel madde: C#
C# sözdizimi, kodların nasıl yazılacağını ve yorumlanması gerektiğini tanımlayan kurallar kümesidir. Bu kurallar, C# programlarının derleyici tarafından doğru bir şekilde okunup çalıştırılmasını sağlar. C# sözdizimi, diğer programlama dillerinkine benzer şekilde değişkenlerin tanımlanmasından, döngülerin ve koşullu ifadelerin yazılmasına kadar, programın yapısını ve işleyişini belirleyen temel unsurları içerir.
Temel Bilgiler (Basics)
[değiştir | kaynağı değiştir]Tanımlayıcı (Identifier)
[değiştir | kaynağı değiştir]C# sözdiziminde bir metoda, değişkene veya kullanıcı tarafından tanımlanan herhangi başka bir öğeye atanan isme tanımlayıcı (Identifier) denir.
Değişkenler,
- "_" ile
- Büyük ve küçük harf ile başlayabilir.
- Bir karakterden birkaç karaktere değişen uzunluklarda olabilir
- Türkçe karakterler kullanılabilir.
Fakat;
- Bir numerik karakter ile başlayamaz.
- Anahtar kelime (keyword) hariç, sembol ile başlayamaz. [Anahtar kelimeler (keywords)]
- 511 karakterden fazla karaktere sahip olamaz.
Anahtar kelimeler (Keywords)
[değiştir | kaynağı değiştir]| abstract | as | base | bool | break | byte | case | catch |
| char | checked | class | const | continue | decimal | default | delegate |
| do | double | else | enum | event | explicit | extern | false |
| finally | fixed | float | for | foreach | goto | if | implicit |
| in | int | interface | internal | is | lock | long | namespace |
| new | null | object | operator | out | override | params | private |
| protected | public | readonly | ref | return | sbyte | sealed | short |
| sizeof | stackalloc | static | string | struct | switch | this | throw |
| true | try | typeof | uint | ulong | unchecked | unsafe | ushort |
| using | virtual | void | volatile | while | - | - | - |
Bağlamsal anahtar kelime, kodda belirli bir anlam sağlamak için kullanılan ancak C# dilinde rezerve edilmiş bir sözcük olmayan kelimedir. Bazı bağlamsal anahtar kelimeler, örneğin partial ve where, birden fazla bağlamda özel anlamlara sahiptir. Aşağıdaki C# anahtar kelimeleri bağlamsaldır:
| add | and | alias | ascending |
| args | async | await | by |
| descending | dynamic | equals | from |
| get | global | group | init |
| into | join | let | managed |
| nameof | nint | not | notnull |
| nuint | on | or | orderby |
| partial | record | remove | required |
| select | set | unmanaged | value |
| var | when | where | with |
| yield | - | - | - |
Anahtar kelimeler, değişken isimlendirirken kullanılamayan ayrılmış sözcüklerdir. Ancak, kullanılmak istenilen kelimenin önüne @ (kuyruklu a) koyarak, tanımlayıcı hâle getirilebilir.
string @out; //Şimdi olağan tanımlayıcı kelime olarak kullanılabilir.
Not: out günümüzde hala kullanılabilen bir anahtar kelimedir.
Değişkenler (Variables)
[değiştir | kaynağı değiştir]Değişkenler, değerlerle ilişkilendirilmiş tanımlayıcılardır. Değişkenin türü ve adı yazılarak bildirilirler ve isteğe bağlı olarak aynı satır içinde ilk değerleri atanabilir.
Tanımlama (Declare)
int degiskenim; // 'int' türünde 'degiskenim' adında başlangıç değeri atanmamış bir değişken tanımlama
Atama (Initialize)
Bir değişkene istenilen bir değer tanımlayabilmektir.
int degiskenim; // Atama yapılmamış bir değişken bildirme
degiskenim = 35; // Değişkene bir değer atama
Bildirim ve Atama (Declare & Initialize)
int degiskenim = 35; // Aynı zamanda değişkenin bildirimi ve atanması
Büyük ve küçük harfe duyarlıdır
Değişkenler, aynı isme sahip olsalar dahi büyük ve küçük harf farkı olduğunda farklı değişkenler olarak değerlendirilir ve farklı değerler tutabilirler.
string book = "Suç ve Ceza";
string Book = "Savaş ve Barış";
Veri Türleri (Data Types)
[değiştir | kaynağı değiştir]C# statik olarak tür denetimi yapılan bir dildir, yani her değişkenin bir türü olmalıdır.[1]
Temel Veri Türleri
[değiştir | kaynağı değiştir]| Tür | Açıklama | Örnek |
|---|---|---|
int
|
Tam sayı | int x = 10;
|
float
|
Ondalıklı sayı (küçük hassasiyet) | float y = 3.14f;
|
double
|
Ondalıklı sayı (yüksek hassasiyet) | double z = 3.1415;
|
char
|
Tek bir karakter | char c = 'A';
|
string
|
Metin | string name = "Ali";
|
bool
|
Mantıksal değer | bool isTrue = true;
|
int age = 25;
float pi = 3.14f;
string name = "John";
bool isAlive = true;
Console.WriteLine($"Name: {name}, Age: {age}, IsAlive: {isAlive}");
Operatörler (Operators)
[değiştir | kaynağı değiştir]Aritmetik Operatörler
[değiştir | kaynağı değiştir]- Toplama (
+), Çıkarma (-), Çarpma (*), Bölme (/), Modül (%).
Atama Operatörleri
[değiştir | kaynağı değiştir]=ile değer atanır.- Kısayollar:
+=,-=,*=,/=,%=.
Karşılaştırma Operatörleri
[değiştir | kaynağı değiştir]==,!=,<,>,<=,>=.
Mantıksal Operatörler
[değiştir | kaynağı değiştir]- VE (
&&), VEYA (||), DEĞİL (!).
Koşul İfadeleri (Conditional Expressions)
[değiştir | kaynağı değiştir]C# programlarında koşullar, programın akışını kontrol eder.
if-else:
[değiştir | kaynağı değiştir]int number = 10;
if (number > 0)
{
Console.WriteLine("Pozitif");
}
else
{
Console.WriteLine("Negatif veya Sıfır");
}
switch
[değiştir | kaynağı değiştir]string day = "Monday";
switch (day)
{
case "Monday":
Console.WriteLine("Pazartesi");
break;
case "Friday":
Console.WriteLine("Cuma");
break;
default:
Console.WriteLine("Diğer gün");
break;
}
Döngüler (Cycles)
[değiştir | kaynağı değiştir]for Döngüsü
[değiştir | kaynağı değiştir]for (int i = 0; i < 5; i++)
{
Console.WriteLine($"Sayı: {i}");
}
while Döngüsü
[değiştir | kaynağı değiştir]int counter = 0;
while (counter < 5)
{
Console.WriteLine($"Counter: {counter}");
counter++;
}
foreach Döngüsü
[değiştir | kaynağı değiştir]string[] fruits = { "Elma", "Armut", "Muz" };
foreach (string fruit in fruits)
{
Console.WriteLine(fruit);
}
Metotlar (Methods)
[değiştir | kaynağı değiştir]Metotlar, tekrar eden kodların modüler hale getirilmesini sağlar.
Tanımlama
[değiştir | kaynağı değiştir]class Program
{
static void Greet(string name)
{
Console.WriteLine($"Merhaba, {name}!");
}
static void Main(string[] args)
{
Greet("Ali");
}
}
Geri Dönen Metot
[değiştir | kaynağı değiştir]static int Add(int a, int b)
{
return a + b;
}
Sınıflar ve Nesneler (Classes and Objects)
[değiştir | kaynağı değiştir]C# nesne yönelimli bir dildir. Sınıflar, bir nesne için planlar veya şablonlardır.
Sınıf Tanımlama
[değiştir | kaynağı değiştir]class Car
{
public string Brand { get; set; }
public int Year { get; set; }
public void DisplayInfo()
{
Console.WriteLine($"Marka: {Brand}, Yıl: {Year}");
}
}
Nesne Kullanımı
[değiştir | kaynağı değiştir]Car myCar = new Car();
myCar.Brand = "Toyota";
myCar.Year = 2020;
myCar.DisplayInfo();
Hata Yönetimi (Error Management)
[değiştir | kaynağı değiştir]
Hatalar, try-catch blokları ile yönetilir.
try
{
int x = int.Parse("abc");
}
catch (FormatException ex)
{
Console.WriteLine($"Hata: {ex.Message}");
}
finally
{
Console.WriteLine("Her zaman çalışır.");
}
Kaynakça
[değiştir | kaynağı değiştir]- ^ BillWagner. "C# Kılavuzu - .NET yönetilen dili". learn.microsoft.com. 16 Ocak 2025 tarihinde kaynağından arşivlendi. Erişim tarihi: 16 Ocak 2025.
| Programlama dili ile ilgili bu madde taslak seviyesindedir. Madde içeriğini genişleterek Vikipedi'ye katkı sağlayabilirsiniz. |