Kategoriler
Eser Adı Yazar Yayınevi Açıklama İçindekiler Barkod
Arama  
Ana Sayfa Sipariş Takip Üyelik Yardım İletişim
 
 
Bülten
   

×
Hiç Bilmeyenler İçin
C# ile Programlamaya Giriş
Örnek 314 Uygulma ile
Şubat 2016 / 2. Baskı / 442 Syf.
Fiyatı: 535.00 TL
24 saat içerisinde temin edilir.
 
Sepete Ekle

Diğer Baskılar
 Baskı Tarih Fiyatı İndirimli
 1. Kasım 2008 23.15 TL -      Sepete Ekle
   

Gözden geçirilmiş 2. baskısını yapan kitap, C# dili ile programlamaya girişi anlatmaktadır.

29 bölüm ve 454 sayfadan oluşan kitap uygulamaya yönelik 314 örnek program içermektedir. Örnek programların her birisi okura yeni bir şey öğretmek amacıyla yazılmıştır. Kitap, sisteminize Visual Studio'yu nasıl yükleyeceğinizden başlayarak, konuları akıcı bir üslup ve pedagojik yöntemlerle anlatmaktadır. Ayrıca kitapta yer alan örnek uygulama kodlarını www.seckin.com.tr'den indirebilirsiniz.

Sürekli çalışıldığında üç haftadan daha kısa zamanda biten konular, okul ortamında bir sömestrede işlenebilecek biçimde tasarlanmıştır.

Konu Başlıkları
Programlamanın Kısa Evrimi
Program Yazmaya Giriş
Visual Studio Ortamı
Veri Tipleri ve Değişkenler
Program Akışının Yönlendirilmesi
Döngüler
Sınıflar ve Nesneler
Kurucular
Statik ve Dinamik Öğeler
Kalıtım
Operatörler
Metotlar
Array
String
Arayüzler
Barkod: 9789750236211
Yayın Tarihi: Şubat 2016
Baskı Sayısı:  2
Ebat: 18x24
Sayfa Sayısı: 442
Yayınevi: Seçkin Yayıncılık
Kapak Türü: Karton Kapaklı
Dili: Türkçe
Ekler: -

 

İÇİNDEKİLER
İçindekiler  
Glossary 1  
1 Programlamanın Kısa Evrimi 1  
1.1 Programlamanın Gelişim Adımları . . . . . . . . . . . . . . . . . . . . . . 1  
1.2 Üst düzeyli Diller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5  
1.3 Nesneye Yönelme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7  
1.4 Sanal Makineler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8  
1.5 Büyük Hayaller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9  
1.6 .NET Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9  
1.7 .NET Core . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12  
1.8 Karakter Kodlama Sistemleri . . . . . . . . . . . . . . . . . . . . . . . . . 12  
1.9 Metin düzenleyici (editör): . . . . . . . . . . . . . . . . . . . . . . . . . . . 13  
2 C# ile Program Geliştirme 15  
2.1 Programlamanın Temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . 15  
2.2 C# Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16  
2.3 Programın Evreleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17  
2.4 Kaynak Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18  
2.5 Kaynak Programın Biçemi . . . . . . . . . . . . . . . . . . . . . . . . . . . 20  
2.6 Aduzayı (namespace) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26  
2.6.1 Sınıflar (class) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26  
2.6.2 Bloklar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26  
2.7 Programa Açıklama Ekleme . . . . . . . . . . . . . . . . . . . . . . . . . . 27  
ii  
2.8 Girdi–çıktı İşlemleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  
2.9 System aduzayı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  
2.10 Konsol G/Ç Akım–yolları . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  
2.11 Değişkenler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  
2.12 Girdi/Çıktı Metotları . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  
2.12.1 Parametre ve yerel değişken . . . . . . . . . . . . . . . . . . . . . . 31  
2.13 C# Programlarını Derleme . . . . . . . . . . . . . . . . . . . . . . . . . . 32  
3 Program Yazmaya Giriş 35  
3.1 IDE Kullanmak . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35  
3.2 Veri Tipleri, Değişkenler ve Metotlar . . . . . . . . . . . . . . . . . . . . . 35  
3.3 Değişken Bildirimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37  
3.4 Atama Deyimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38  
3.5 Parametre ve Değişken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40  
3.6 Metot Kavramı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40  
3.7 Yer Tutucu Operatörü: { } . . . . . . . . . . . . . . . . . . . . . . . . . 47  
3.7.1 Değişken Kullanımına Örnekler . . . . . . . . . . . . . . . . . . . . 49  
3.8 Kapsanma Alannı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51  
3.9 Dizim (array) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54  
3.9.1 For Döngüsü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55  
3.10 Bilgisayarda Bellek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56  
3.11 Çöp Toplayıcı (Garbage Collector) . . . . . . . . . . . . . . . . . . . . . . 57  
3.12 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58  
4 Visual Studio Ortamı 61  
4.1 Visual Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61  
4.2 .NET Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62  
5 Sınıflar ve Nesneler 75  
5.1 Sınıf Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75  
5.1.1 Sınıf Bildirimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77  
5.2 Sınıf ve Nesne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78  
5.3 new Operatörü ile Nesne Yaratmak . . . . . . . . . . . . . . . . . . . . . . 79  
5.4 Atama operatörü (=) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81  
5.5 Nesnenin Öğelerine Erişim . . . . . . . . . . . . . . . . . . . . . . . . . . . 82  
5.6 Kapsülleme (encapsulation) . . . . . . . . . . . . . . . . . . . . . . . . . . 85  
5.6.1 Uygulama sınıfındaki Main() metodu . . . . . . . . . . . . . . . . 85  
5.7 Adaş Operatör (aşkın, overloaded operator) . . . . . . . . . . . . . . . . . 86  
5.8 Yer Tutucu Operatör . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86  
iii  
5.9 Genkurucu (default constructor) . . . . . . . . . . . . . . . . . . . . . . . 89  
5.10 this anahtarı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93  
6 Kurucular ve Yokediciler 99  
6.1 Kurucu Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99  
6.1.1 new operatörü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100  
6.2 Static ve Dinamik Öğelere Erişim . . . . . . . . . . . . . . . . . . . . . . . 104  
6.3 Kurucular (Constructors) . . . . . . . . . . . . . . . . . . . . . . . . . . . 106  
6.4 Kurucu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107  
6.5 Parametreli Kurucular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109  
6.6 Adaş (Aşkın) Kurucular . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112  
6.6.1 Statik Kurucular . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114  
6.7 Yokediciler (Destructors) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115  
6.8 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116  
7 Veri Tipleri ve Değişkenler 121  
7.1 C# Dilinde Veri Tipi nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . 121  
7.2 Değişken Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122  
7.3 Kapsanma Bölgesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124  
7.4 Değer Tipleri– Referans Tipleri . . . . . . . . . . . . . . . . . . . . . . . . 124  
7.4.1 Kesirli Sayı Tipleri . . . . . . . . . . . . . . . . . . . . . . . . . . . 126  
7.4.2 Decimal Veri Tipi . . . . . . . . . . . . . . . . . . . . . . . . . . . 128  
7.5 Veri Tipi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128  
7.6 String Veri Tipi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129  
7.7 Boolean Veri Tipi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130  
7.8 Veri Tipi Dönüşümleri (Döküm–Casting) . . . . . . . . . . . . . . . . . . 132  
7.8.1 İstemsiz (implicit) Dönüşüm . . . . . . . . . . . . . . . . . . . . . 132  
7.8.2 İstemli(explicit) Dönüşüm . . . . . . . . . . . . . . . . . . . . . . . 132  
7.9 Örnekler: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133  
8 Operatörler 137  
8.1 Aritmetik Operatörleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137  
8.2 ++ ve – – Operatörleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142  
8.2.1 Önel (Prefix) ve Sonal (Postfix) Takılar . . . . . . . . . . . . . . . 143  
8.3 Atama Operatörleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147  
8.4 İlişkisel Operatörler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149  
8.5 Mantıksal (Logic) Operatörler . . . . . . . . . . . . . . . . . . . . . . . . . 151  
8.5.1 VE Operatörü (&&) . . . . . . . . . . . . . . . . . . . . . . . . . . 151  
8.6 VEYA Operatörü (¦¦) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153  
iv  
8.7 Bitsel (Bitwise) Operatörler . . . . . . . . . . . . . . . . . . . . . . . . . . 154  
8.8 Başka Operatörler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155  
8.9 Operatör Öncelikleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155  
9 Array 157  
9.1 Array Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157  
9.1.1 Array Yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158  
9.1.2 [ ] Operatörü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159  
9.1.3 Array’in Bileşenleri . . . . . . . . . . . . . . . . . . . . . . . . . . . 159  
9.2 Array Yaratma) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161  
9.3 Seçkili (random) Erişim . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164  
9.4 Array Türleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167  
9.4.1 Bir Boyutlu Array . . . . . . . . . . . . . . . . . . . . . . . . . . . 167  
9.4.2 Çok Boyutlu Array . . . . . . . . . . . . . . . . . . . . . . . . . . . 168  
9.5 Array Arrayi (çentikli array) . . . . . . . . . . . . . . . . . . . . . . . . . 172  
9.6 Array Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174  
9.7 Özet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175  
9.8 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176  
10 Program Akışının Yönlendirilmesi 179  
10.1 Blok . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179  
10.2 Yönlendiriciler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180  
10.2.1 if deyimleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180  
10.3 if–else ve else–if yönlendirmeleri . . . . . . . . . . . . . . . . . . . . . . . . 183  
10.4 switch–case denetim yapısı . . . . . . . . . . . . . . . . . . . . . . . . . . . 187  
11 Döngüler 195  
11.1 Döngüler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195  
11.2 for Döngüsü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195  
11.3 break ve continue deyimleri . . . . . . . . . . . . . . . . . . . . . . . . . . 198  
11.3.1 break . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198  
11.3.2 continue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198  
11.4 while döngüsü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202  
11.5 do–while döngüsü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203  
11.6 foreach Döngüsü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206  
12 Statik ve Dinamik Öğeler 209  
12.1 Statik ve Dinamik Öğeler . . . . . . . . . . . . . . . . . . . . . . . . . . . 209  
12.2 Neden Nesne Yönelimli Programlama? . . . . . . . . . . . . . . . . . . . . 210  
 
13 Erişim Belirteçleri 219  
13.1 Erişim Belirteci Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219  
13.2 Erişim Belirteçleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220  
13.3 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225  
14 Metotlar 227  
14.1 Metot Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227  
14.2 Static Öğe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228  
14.3 Metot Kavramı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228  
14.4 Parametreler ve yerel değişkenler . . . . . . . . . . . . . . . . . . . . . . . 229  
14.4.1 Main() metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231  
14.5 Nesne yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234  
14.6 Hazır metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235  
14.6.1 System.Math sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . 236  
14.7 Özyineli (Recursive) Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . 238  
14.8 Kullanıcının Tanımladığı Metotlar . . . . . . . . . . . . . . . . . . . . . . 241  
14.9 Uygulamalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243  
14.10Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248  
15 Yapılar (structs) 249  
15.1 Yapı Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249  
15.2 Yapı Bildirimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250  
15.3 New Operatörü ile Yapı Nesnesi Yaratma . . . . . . . . . . . . . . . . . . 250  
15.4 Sınıf İçinde Yapı Bildirimi . . . . . . . . . . . . . . . . . . . . . . . . . . . 252  
15.5 Yapı Nesnesi Yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252  
15.6 İç içe Yapılar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255  
15.7 Yapılar İçinde Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256  
15.8 Yapının static Değişkenleri . . . . . . . . . . . . . . . . . . . . . . . . . . 256  
15.9 Yapılar ve Kurucular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258  
15.10Struct ve Kalıtım . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259  
16 Erişimciler 261  
16.1 Gerekseme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261  
16.2 set/get Metotları . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262  
16.3 Erişimci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263  
16.4 value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269  
16.5 Yalnız–okur Erişimci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269  
16.6 Yalnız–yazar Erişimci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270  
16.7 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271  
vi  
17 STRING 273  
17.1 String Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273  
17.2 String Sınıfının Öznitelikleri . . . . . . . . . . . . . . . . . . . . . . . . . . 274  
17.3 String Sınıfının Metotları . . . . . . . . . . . . . . . . . . . . . . . . . . . 275  
17.4 String Bildirimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275  
17.5 Metot Örnekleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275  
17.6 Stringleri Birleştirme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277  
17.7 Stringleri Karşılaştırma . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278  
17.8 Compare() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280  
17.9 Equals() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281  
17.10Copy() metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282  
17.11Insert() metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282  
17.12() metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283  
17.13Remove() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284  
17.14ToUpper() ve ToLower() Metotları . . . . . . . . . . . . . . . . . . . . . . 284  
17.15Split() ve Join() Metotları . . . . . . . . . . . . . . . . . . . . . . . . . . . 285  
17.16IndexOf() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287  
17.17IndexOfAny() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289  
17.18LastIndexOf() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289  
17.19PadLeft() ve PadRight() metotları . . . . . . . . . . . . . . . . . . . . . . 290  
17.20Trim(), TrimStart(), ve TrimEnd() metotları . . . . . . . . . . . . . . . . 290  
17.21Substring() metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291  
17.22Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292  
18 Karakterler 297  
18.1 Yapısı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297  
18.2 Bilgisayarlar Alfabe Bilmez . . . . . . . . . . . . . . . . . . . . . . . . . . 298  
18.3 Unicode Sistemi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298  
18.4 Türkçe Alfabenin Unicode Kodları . . . . . . . . . . . . . . . . . . . . . . 300  
18.5 Yapısı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302  
18.6 Öznitelikleri, Veri Alanları . . . . . . . . . . . . . . . . . . . . . . . . . . 302  
18.7 Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303  
18.8 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307  
19 Kalıtım 309  
19.1 Kalıtım Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309  
19.2 Polimorfizm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314  
20 Arayüzler 317  
vii  
20.1 Arayüz Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317  
20.2 C# dilinde arayüz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319  
20.3 Arayüzden Arayüz Türetme . . . . . . . . . . . . . . . . . . . . . . . . . . 325  
20.4 Kullanıcı Arayüzü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325  
21 Koleksiyonlar 327  
21.1 Veri Yapıları . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327  
21.1.1 Veri Yapıları Üzerinde İşlemler . . . . . . . . . . . . . . . . . . . . 328  
21.1.2 Veri Yapısı Oluşturma . . . . . . . . . . . . . . . . . . . . . . . . . 329  
21.2 Koleksiyon Sınıfları . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329  
21.3 ArrayList Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330  
21.3.1 ArrayList sınıfının Başlıca Metotları . . . . . . . . . . . . . . . . . 330  
21.4 StringCollection Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334  
21.5 StringDictionary Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335  
21.6 Stack Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335  
21.7 Queue Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336  
21.8 BitArray Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337  
21.9 Hashtable Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337  
21.10SortedList Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338  
21.11Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341  
22 delegeler 343  
22.1 Aracısız Metot Çağırma . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343  
22.2 Delege Bildirimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344  
22.3 Delege İle static Metot Çağırma . . . . . . . . . . . . . . . . . . . . . . . . 345  
22.4 Delege İle Dinamik Metot Çağırma . . . . . . . . . . . . . . . . . . . . . . 347  
22.5 Delege İle Parametreli Metot Çağırma . . . . . . . . . . . . . . . . . . . . 347  
22.6 Alıştırma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351  
23 Kutulama 353  
23.1 Kutulama Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353  
23.2 Değer Tipleri (Value Types) . . . . . . . . . . . . . . . . . . . . . . . . . . 354  
23.3 Referans Tipleri (Reference Types) . . . . . . . . . . . . . . . . . . . . . . 355  
23.4 Özet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361  
23.5 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361  
24 Sıralama 363  
24.1 Sıralama ve Arama Kavramları . . . . . . . . . . . . . . . . . . . . . . . . 363  
24.2 Ters Sıralama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366  
viii  
24.3 Arama Teknikleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368  
24.3.1 Doğrusal Arama . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369  
24.3.2 Binary Arama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370  
25 Indexer 373  
25.1 İndeksci Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373  
25.2 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374  
25.3 Adaş (aşkın) İndeksci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377  
26 Enumerator 381  
26.1 Numaratör Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381  
27 Çıktıyı Biçemli Yazdırma 385  
27.1 Neden Biçemleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385  
27.2 Sayıların Biçemlenmesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386  
27.2.1 Write() ve WriteLine() İle Biçemleme . . . . . . . . . . . . . . . . 387  
27.3 Sağa/sola Yanaşık Yazdırma . . . . . . . . . . . . . . . . . . . . . . . . . . 388  
27.4 { } Yer Tutucu ile Biçemleme . . . . . . . . . . . . . . . . . . . . . . . . 389  
27.5 Standart Sayısal Biçem Belirtgenleri . . . . . . . . . . . . . . . . . . . . . 390  
27.5.1 Sayısal Biçem Belirtgenleri . . . . . . . . . . . . . . . . . . . . . . 391  
27.6 Simgesel Biçemler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393  
27.7 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394  
27.8 Üstel Notasyon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396  
27.9 ToString() metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398  
27.10NumberFormatInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401  
27.11Sorular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403  
28 String’den Sayıya Dönüşüm 405  
28.1 Convert sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406  
28.2 Parse() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408  
28.2.1 Parse Metotları . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408  
28.3 Stringe Dönüşen Sayıların Ters Dönüşümü . . . . . . . . . . . . . . . . . . 409  
28.4 CultureInfo sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411  
28.4.1 Hata iletisi: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412  
28.5 Kültürler ve Bölgeler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413  
28.5.1 Namespace System.Globalization . . . . . . . . . . . . . . . . . . . 413  
28.5.2 Class CultureInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413  
28.5.3 CultureAndRegionInfoBuilder Sınıfı . . . . . . . . . . . . . . . . . 414  
28.5.4 Thread Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414  
ix  
28.6 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414  
28.6.1 ParseMetodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415  
28.7 Sayı Stilleri Listesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417  
29 Tarih ve Zaman 419  
29.1 DateTime Yapısı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420  
29.2 DateTime Yapısının Erişimcileri . . . . . . . . . . . . . . . . . . . . . . . . 420  
29.3 DateTime Yapısının Metotları . . . . . . . . . . . . . . . . . . . . . . . . . 420  
29.4 DateTime Yapısının Operatörleri . . . . . . . . . . . . . . . . . . . . . . . 421  
29.5 İlgili Arayüzler (Interfaces) . . . . . . . . . . . . . . . . . . . . . . . . . . 421  
29.5.1 ToString() Metodu ile Tarih Yazdırma . . . . . . . . . . . . . . . . 421  
29.6 Yöresellik (locale) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424  
29.7 String.Format() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428  
 


Olcay Taner Yıldız
Eylül 2024
200.00 TL
Sepete Ekle
Özel Sebetci
Şubat 2024
235.00 TL
Sepete Ekle
İhsan Özer
Eylül 2024
200.00 TL
Sepete Ekle
Lütfi Koray Yitmen
Temmuz 2024
230.00 TL
Sepete Ekle





 

İÇİNDEKİLER
İçindekiler  
Glossary 1  
1 Programlamanın Kısa Evrimi 1  
1.1 Programlamanın Gelişim Adımları . . . . . . . . . . . . . . . . . . . . . . 1  
1.2 Üst düzeyli Diller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5  
1.3 Nesneye Yönelme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7  
1.4 Sanal Makineler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8  
1.5 Büyük Hayaller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9  
1.6 .NET Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9  
1.7 .NET Core . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12  
1.8 Karakter Kodlama Sistemleri . . . . . . . . . . . . . . . . . . . . . . . . . 12  
1.9 Metin düzenleyici (editör): . . . . . . . . . . . . . . . . . . . . . . . . . . . 13  
2 C# ile Program Geliştirme 15  
2.1 Programlamanın Temelleri . . . . . . . . . . . . . . . . . . . . . . . . . . . 15  
2.2 C# Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16  
2.3 Programın Evreleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17  
2.4 Kaynak Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18  
2.5 Kaynak Programın Biçemi . . . . . . . . . . . . . . . . . . . . . . . . . . . 20  
2.6 Aduzayı (namespace) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26  
2.6.1 Sınıflar (class) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26  
2.6.2 Bloklar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26  
2.7 Programa Açıklama Ekleme . . . . . . . . . . . . . . . . . . . . . . . . . . 27  
ii  
2.8 Girdi–çıktı İşlemleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  
2.9 System aduzayı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  
2.10 Konsol G/Ç Akım–yolları . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  
2.11 Değişkenler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  
2.12 Girdi/Çıktı Metotları . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  
2.12.1 Parametre ve yerel değişken . . . . . . . . . . . . . . . . . . . . . . 31  
2.13 C# Programlarını Derleme . . . . . . . . . . . . . . . . . . . . . . . . . . 32  
3 Program Yazmaya Giriş 35  
3.1 IDE Kullanmak . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35  
3.2 Veri Tipleri, Değişkenler ve Metotlar . . . . . . . . . . . . . . . . . . . . . 35  
3.3 Değişken Bildirimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37  
3.4 Atama Deyimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38  
3.5 Parametre ve Değişken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40  
3.6 Metot Kavramı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40  
3.7 Yer Tutucu Operatörü: { } . . . . . . . . . . . . . . . . . . . . . . . . . 47  
3.7.1 Değişken Kullanımına Örnekler . . . . . . . . . . . . . . . . . . . . 49  
3.8 Kapsanma Alannı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51  
3.9 Dizim (array) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54  
3.9.1 For Döngüsü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55  
3.10 Bilgisayarda Bellek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56  
3.11 Çöp Toplayıcı (Garbage Collector) . . . . . . . . . . . . . . . . . . . . . . 57  
3.12 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58  
4 Visual Studio Ortamı 61  
4.1 Visual Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61  
4.2 .NET Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62  
5 Sınıflar ve Nesneler 75  
5.1 Sınıf Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75  
5.1.1 Sınıf Bildirimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77  
5.2 Sınıf ve Nesne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78  
5.3 new Operatörü ile Nesne Yaratmak . . . . . . . . . . . . . . . . . . . . . . 79  
5.4 Atama operatörü (=) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81  
5.5 Nesnenin Öğelerine Erişim . . . . . . . . . . . . . . . . . . . . . . . . . . . 82  
5.6 Kapsülleme (encapsulation) . . . . . . . . . . . . . . . . . . . . . . . . . . 85  
5.6.1 Uygulama sınıfındaki Main() metodu . . . . . . . . . . . . . . . . 85  
5.7 Adaş Operatör (aşkın, overloaded operator) . . . . . . . . . . . . . . . . . 86  
5.8 Yer Tutucu Operatör . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86  
iii  
5.9 Genkurucu (default constructor) . . . . . . . . . . . . . . . . . . . . . . . 89  
5.10 this anahtarı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93  
6 Kurucular ve Yokediciler 99  
6.1 Kurucu Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99  
6.1.1 new operatörü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100  
6.2 Static ve Dinamik Öğelere Erişim . . . . . . . . . . . . . . . . . . . . . . . 104  
6.3 Kurucular (Constructors) . . . . . . . . . . . . . . . . . . . . . . . . . . . 106  
6.4 Kurucu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107  
6.5 Parametreli Kurucular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109  
6.6 Adaş (Aşkın) Kurucular . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112  
6.6.1 Statik Kurucular . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114  
6.7 Yokediciler (Destructors) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115  
6.8 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116  
7 Veri Tipleri ve Değişkenler 121  
7.1 C# Dilinde Veri Tipi nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . 121  
7.2 Değişken Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122  
7.3 Kapsanma Bölgesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124  
7.4 Değer Tipleri– Referans Tipleri . . . . . . . . . . . . . . . . . . . . . . . . 124  
7.4.1 Kesirli Sayı Tipleri . . . . . . . . . . . . . . . . . . . . . . . . . . . 126  
7.4.2 Decimal Veri Tipi . . . . . . . . . . . . . . . . . . . . . . . . . . . 128  
7.5 Veri Tipi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128  
7.6 String Veri Tipi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129  
7.7 Boolean Veri Tipi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130  
7.8 Veri Tipi Dönüşümleri (Döküm–Casting) . . . . . . . . . . . . . . . . . . 132  
7.8.1 İstemsiz (implicit) Dönüşüm . . . . . . . . . . . . . . . . . . . . . 132  
7.8.2 İstemli(explicit) Dönüşüm . . . . . . . . . . . . . . . . . . . . . . . 132  
7.9 Örnekler: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133  
8 Operatörler 137  
8.1 Aritmetik Operatörleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137  
8.2 ++ ve – – Operatörleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142  
8.2.1 Önel (Prefix) ve Sonal (Postfix) Takılar . . . . . . . . . . . . . . . 143  
8.3 Atama Operatörleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147  
8.4 İlişkisel Operatörler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149  
8.5 Mantıksal (Logic) Operatörler . . . . . . . . . . . . . . . . . . . . . . . . . 151  
8.5.1 VE Operatörü (&&) . . . . . . . . . . . . . . . . . . . . . . . . . . 151  
8.6 VEYA Operatörü (¦¦) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153  
iv  
8.7 Bitsel (Bitwise) Operatörler . . . . . . . . . . . . . . . . . . . . . . . . . . 154  
8.8 Başka Operatörler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155  
8.9 Operatör Öncelikleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155  
9 Array 157  
9.1 Array Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157  
9.1.1 Array Yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158  
9.1.2 [ ] Operatörü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159  
9.1.3 Array’in Bileşenleri . . . . . . . . . . . . . . . . . . . . . . . . . . . 159  
9.2 Array Yaratma) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161  
9.3 Seçkili (random) Erişim . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164  
9.4 Array Türleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167  
9.4.1 Bir Boyutlu Array . . . . . . . . . . . . . . . . . . . . . . . . . . . 167  
9.4.2 Çok Boyutlu Array . . . . . . . . . . . . . . . . . . . . . . . . . . . 168  
9.5 Array Arrayi (çentikli array) . . . . . . . . . . . . . . . . . . . . . . . . . 172  
9.6 Array Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174  
9.7 Özet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175  
9.8 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176  
10 Program Akışının Yönlendirilmesi 179  
10.1 Blok . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179  
10.2 Yönlendiriciler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180  
10.2.1 if deyimleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180  
10.3 if–else ve else–if yönlendirmeleri . . . . . . . . . . . . . . . . . . . . . . . . 183  
10.4 switch–case denetim yapısı . . . . . . . . . . . . . . . . . . . . . . . . . . . 187  
11 Döngüler 195  
11.1 Döngüler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195  
11.2 for Döngüsü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195  
11.3 break ve continue deyimleri . . . . . . . . . . . . . . . . . . . . . . . . . . 198  
11.3.1 break . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198  
11.3.2 continue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198  
11.4 while döngüsü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202  
11.5 do–while döngüsü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203  
11.6 foreach Döngüsü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206  
12 Statik ve Dinamik Öğeler 209  
12.1 Statik ve Dinamik Öğeler . . . . . . . . . . . . . . . . . . . . . . . . . . . 209  
12.2 Neden Nesne Yönelimli Programlama? . . . . . . . . . . . . . . . . . . . . 210  
 
13 Erişim Belirteçleri 219  
13.1 Erişim Belirteci Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219  
13.2 Erişim Belirteçleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220  
13.3 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225  
14 Metotlar 227  
14.1 Metot Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227  
14.2 Static Öğe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228  
14.3 Metot Kavramı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228  
14.4 Parametreler ve yerel değişkenler . . . . . . . . . . . . . . . . . . . . . . . 229  
14.4.1 Main() metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231  
14.5 Nesne yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234  
14.6 Hazır metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235  
14.6.1 System.Math sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . 236  
14.7 Özyineli (Recursive) Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . 238  
14.8 Kullanıcının Tanımladığı Metotlar . . . . . . . . . . . . . . . . . . . . . . 241  
14.9 Uygulamalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243  
14.10Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248  
15 Yapılar (structs) 249  
15.1 Yapı Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249  
15.2 Yapı Bildirimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250  
15.3 New Operatörü ile Yapı Nesnesi Yaratma . . . . . . . . . . . . . . . . . . 250  
15.4 Sınıf İçinde Yapı Bildirimi . . . . . . . . . . . . . . . . . . . . . . . . . . . 252  
15.5 Yapı Nesnesi Yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252  
15.6 İç içe Yapılar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255  
15.7 Yapılar İçinde Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256  
15.8 Yapının static Değişkenleri . . . . . . . . . . . . . . . . . . . . . . . . . . 256  
15.9 Yapılar ve Kurucular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258  
15.10Struct ve Kalıtım . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259  
16 Erişimciler 261  
16.1 Gerekseme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261  
16.2 set/get Metotları . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262  
16.3 Erişimci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263  
16.4 value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269  
16.5 Yalnız–okur Erişimci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269  
16.6 Yalnız–yazar Erişimci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270  
16.7 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271  
vi  
17 STRING 273  
17.1 String Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273  
17.2 String Sınıfının Öznitelikleri . . . . . . . . . . . . . . . . . . . . . . . . . . 274  
17.3 String Sınıfının Metotları . . . . . . . . . . . . . . . . . . . . . . . . . . . 275  
17.4 String Bildirimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275  
17.5 Metot Örnekleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275  
17.6 Stringleri Birleştirme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277  
17.7 Stringleri Karşılaştırma . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278  
17.8 Compare() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280  
17.9 Equals() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281  
17.10Copy() metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282  
17.11Insert() metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282  
17.12() metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283  
17.13Remove() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284  
17.14ToUpper() ve ToLower() Metotları . . . . . . . . . . . . . . . . . . . . . . 284  
17.15Split() ve Join() Metotları . . . . . . . . . . . . . . . . . . . . . . . . . . . 285  
17.16IndexOf() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287  
17.17IndexOfAny() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289  
17.18LastIndexOf() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289  
17.19PadLeft() ve PadRight() metotları . . . . . . . . . . . . . . . . . . . . . . 290  
17.20Trim(), TrimStart(), ve TrimEnd() metotları . . . . . . . . . . . . . . . . 290  
17.21Substring() metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291  
17.22Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292  
18 Karakterler 297  
18.1 Yapısı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297  
18.2 Bilgisayarlar Alfabe Bilmez . . . . . . . . . . . . . . . . . . . . . . . . . . 298  
18.3 Unicode Sistemi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298  
18.4 Türkçe Alfabenin Unicode Kodları . . . . . . . . . . . . . . . . . . . . . . 300  
18.5 Yapısı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302  
18.6 Öznitelikleri, Veri Alanları . . . . . . . . . . . . . . . . . . . . . . . . . . 302  
18.7 Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303  
18.8 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307  
19 Kalıtım 309  
19.1 Kalıtım Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309  
19.2 Polimorfizm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314  
20 Arayüzler 317  
vii  
20.1 Arayüz Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317  
20.2 C# dilinde arayüz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319  
20.3 Arayüzden Arayüz Türetme . . . . . . . . . . . . . . . . . . . . . . . . . . 325  
20.4 Kullanıcı Arayüzü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325  
21 Koleksiyonlar 327  
21.1 Veri Yapıları . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327  
21.1.1 Veri Yapıları Üzerinde İşlemler . . . . . . . . . . . . . . . . . . . . 328  
21.1.2 Veri Yapısı Oluşturma . . . . . . . . . . . . . . . . . . . . . . . . . 329  
21.2 Koleksiyon Sınıfları . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329  
21.3 ArrayList Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330  
21.3.1 ArrayList sınıfının Başlıca Metotları . . . . . . . . . . . . . . . . . 330  
21.4 StringCollection Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334  
21.5 StringDictionary Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335  
21.6 Stack Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335  
21.7 Queue Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336  
21.8 BitArray Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337  
21.9 Hashtable Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337  
21.10SortedList Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338  
21.11Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341  
22 delegeler 343  
22.1 Aracısız Metot Çağırma . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343  
22.2 Delege Bildirimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344  
22.3 Delege İle static Metot Çağırma . . . . . . . . . . . . . . . . . . . . . . . . 345  
22.4 Delege İle Dinamik Metot Çağırma . . . . . . . . . . . . . . . . . . . . . . 347  
22.5 Delege İle Parametreli Metot Çağırma . . . . . . . . . . . . . . . . . . . . 347  
22.6 Alıştırma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351  
23 Kutulama 353  
23.1 Kutulama Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353  
23.2 Değer Tipleri (Value Types) . . . . . . . . . . . . . . . . . . . . . . . . . . 354  
23.3 Referans Tipleri (Reference Types) . . . . . . . . . . . . . . . . . . . . . . 355  
23.4 Özet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361  
23.5 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361  
24 Sıralama 363  
24.1 Sıralama ve Arama Kavramları . . . . . . . . . . . . . . . . . . . . . . . . 363  
24.2 Ters Sıralama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366  
viii  
24.3 Arama Teknikleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368  
24.3.1 Doğrusal Arama . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369  
24.3.2 Binary Arama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370  
25 Indexer 373  
25.1 İndeksci Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373  
25.2 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374  
25.3 Adaş (aşkın) İndeksci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377  
26 Enumerator 381  
26.1 Numaratör Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381  
27 Çıktıyı Biçemli Yazdırma 385  
27.1 Neden Biçemleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385  
27.2 Sayıların Biçemlenmesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386  
27.2.1 Write() ve WriteLine() İle Biçemleme . . . . . . . . . . . . . . . . 387  
27.3 Sağa/sola Yanaşık Yazdırma . . . . . . . . . . . . . . . . . . . . . . . . . . 388  
27.4 { } Yer Tutucu ile Biçemleme . . . . . . . . . . . . . . . . . . . . . . . . 389  
27.5 Standart Sayısal Biçem Belirtgenleri . . . . . . . . . . . . . . . . . . . . . 390  
27.5.1 Sayısal Biçem Belirtgenleri . . . . . . . . . . . . . . . . . . . . . . 391  
27.6 Simgesel Biçemler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393  
27.7 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394  
27.8 Üstel Notasyon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396  
27.9 ToString() metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398  
27.10NumberFormatInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401  
27.11Sorular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403  
28 String’den Sayıya Dönüşüm 405  
28.1 Convert sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406  
28.2 Parse() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408  
28.2.1 Parse Metotları . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408  
28.3 Stringe Dönüşen Sayıların Ters Dönüşümü . . . . . . . . . . . . . . . . . . 409  
28.4 CultureInfo sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411  
28.4.1 Hata iletisi: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412  
28.5 Kültürler ve Bölgeler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413  
28.5.1 Namespace System.Globalization . . . . . . . . . . . . . . . . . . . 413  
28.5.2 Class CultureInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413  
28.5.3 CultureAndRegionInfoBuilder Sınıfı . . . . . . . . . . . . . . . . . 414  
28.5.4 Thread Sınıfı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414  
ix  
28.6 Alıştırmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414  
28.6.1 ParseMetodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415  
28.7 Sayı Stilleri Listesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417  
29 Tarih ve Zaman 419  
29.1 DateTime Yapısı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420  
29.2 DateTime Yapısının Erişimcileri . . . . . . . . . . . . . . . . . . . . . . . . 420  
29.3 DateTime Yapısının Metotları . . . . . . . . . . . . . . . . . . . . . . . . . 420  
29.4 DateTime Yapısının Operatörleri . . . . . . . . . . . . . . . . . . . . . . . 421  
29.5 İlgili Arayüzler (Interfaces) . . . . . . . . . . . . . . . . . . . . . . . . . . 421  
29.5.1 ToString() Metodu ile Tarih Yazdırma . . . . . . . . . . . . . . . . 421  
29.6 Yöresellik (locale) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424  
29.7 String.Format() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428  
 


 
Kitap
Bülten
Kitap
Kitap
İndirimli Kitaplar
 
 
Ana Sayfa | 2021 Kaynakça Dokümanı | Hakkımızda | Bülten | Kişisel Verilerin Korunması | Yardım | İletişim

Seçkin Yayıncılık San. Tic. A.Ş.
Copyright © 1996 - 2024