|
Bu kitap, yeni nesil yazılım geliştirme
platformu olan .NET teknolojisinin mimarisini ve tam anlamıyla nesne
yönelimli bir dil olan "C# programlama" dilini öğretmeyi amaçlamaktadır.
Bununla beraber yazılım geliştirme süreçinde karşılaşılan güçlüklerin nasıl
aşılacağını ve sağlam bir yazılım tasarımının nasıl oluşturulacağını ele
almaktadır.
Kitap, nitelikli konu seçimiyle, sade ve düzgün
Türkçe kullanımıyla, her bölümün sonunda verdiği özet ve sorularla, gerçek
projelerden alınmış örneklerle, yeni gelişmeleri de içeriyor olmasıyla gerek
yeni öğrenen gerekse deneyimli uygulama geliştiriciler için vazgeçilmez bir
başvuru kaynağı niteliğindedir.
Ayrıca konuları yüzeysel değil bir mühendis
yaklaşımıyla ayrıntılı ele alması bakımından üniversitelerin Bilgisayar
Mühendisliği, Matematik-Bilgisayar, Yönetim Bilişim Sistemleri, Endüstri
Mühendisliği, Yazılım Mühendisliği gibi mühendislik ve sosyal bilimlerde
dört yıllık lisans ve meslek yüksek okulu öğrencileri için de yararlı bir
ders kitabı olma özelliğindedir.
Yine en
iyisi... Yine Papatya Yayıncılık Eğitim A.Ş.'den...
Akademik ve bilimsel kitaplarda...
yayıneviniz...
Cilt 1. Programlama
İlkeleri
Cilt 2. İleri Düzey
Programlama
Uzmanından uzman olmak isteyenlere "C# Programlama" Dili
Önsöz
.NET Framework hakkındaki en son güncel
bilgileri içeren bu kitabın Microsoft yazılım platformunu öğrenmek isteyen
yazılımcılara ve sektöre girmek üzere hazırlanan öğrenci arkadaşlarımıza yol
gösterici olacağını düşünüyorum.
Türkçe teknik içerik yazılım sektöründe
önemli bir eksiklik olarak durmaktadır. Bu çalışmanın da böylesi önemli
bir açığı da kapatacağına inanıyoruz. Kitabın içeriğinin sadece teorik bilgi
ile sınırlı kalmaması ve yazarın profesyonel hayattaki deneyimlerini de
okuyucu ile paylaşıyor olması zengin içeriğine daha da fazla değer
katmaktadır.
Bu kitapla Ahmet KAYMAZ'ın sektörümüze önemli
bir katkı sağladığını düşünüyor ve kendisini böylesi ayrıntılı ve titiz
çalışması dolayısı ile kutluyorum.
Mehmet EMRE
Microsoft Türkiye
İÇİNDEKİLER
(Cilt 1)
Önsöz
13
Bölüm 1.
.NET Framework Temel
Kavramları 15
1.1. .Net Framework
Nedir?
15
1.2. CLI, CTS ve CLS
Nedir?
18
1.3. Yönetilen ve
Yönetilmeyen Kod
Nedir? 20
1.4. CLR (Common
Language Runtime)
Nedir? 20
1.5. IL/MSIL ve JIT
(Just-ın-Time)
Derleme 23
1.6. Framework Sınıf
Kütüphanesi –
FCL 24
1.7. Üst-Veri
(Metadata)
Nedir?
24
1.8. ILDASM ve ILASM
Aracı (IL
Disassembler) 25
1.9. Bütünleşik-Kod
(Assembly)
Nedir?
27
1.10. Uygulama
Alanı
31
1.11. Bellek Yönetimi ve
Çöp Toplama (Garbage Collection) 33
1.12. .NET ve
JAVA
34
1.13.
Özet
1.14.
Sorular
Bölüm 2.
C#
Programlama Diline Giriş
37
2.1. İlk
Örnek
38
2.2. Visual Studio.NET
Arayüzü
(IDE)
41
2.2.1. Visual
Studio.NET
Pencereleri
41
2.2.2. IDE
Ortamında İlk
Örnek
46
2.3.
Özet
2.4.
Sorular
Bölüm 3.
Veri
Türleri ve Değişkenler
49
3.1. Değer ve Referans
Türleri
50
3.2. Uzayan
İfadeler
55
3.3.
Sabitler
55
3.4. Veri Türleri
Arasında
Dönüşüm
57
3.5. Boxing ve
Un-Boxing
Dönüşüm
62
3.6. Literal
Karakterleri
63
3.7. Anahtar Sözcükler
ve
Tanımlayıcılar
65
3.8. Nullable
Veri
Türleri
68
3.9.
Özet
3.10.
Sorular
Bölüm 4.
Operatörler
71
4.1. Tekil
Operatörler
71
4.2. Aritmetik
Operatörler
72
4.3. İlişkisel
Operatörler
74
4.4. Mantıksal
Operatörler
74
4.5. Atama
Operatörleri
77
4.6. bit-düzeyinde (Bitwise)
Operatörler
80
4.7. Kaydırma
Operatörleri
81
4.8. Koşula Bağlı (?:
)
Operatör
82
4.9. Değişken Türü (typeof)
Operatörü
82
4.10. Nesne Dönüştürme (as)
Operatörü
83
4.11. Türün Uzunluğunu
Öğrenme (sizeof)
Operatörü 84
4.12. Taşma Kontrol (checked
ve
unchecked)
Operatörleri 85
4.13. Operatörlerin
Öncelik
Sırası
86
4.14.
Özet
4.15.
Sorular
Bölüm 5.
Kontrol
Deyimleri
89
5.1. Koşul
Deyimleri
89
5.2. Seçme
Deyimi
93
5.3. Döngü
Deyimleri
95
5.3.1.
while
Deyimi
95
5.3.2.
do
Deyimi
96
5.3.3.
for
Deyimi
97
5.3.4.
foreach
Deyimi
98
5.4. Atlama/Dallanma
Deyimleri
99
5.5. Temel Giriş/Çıkış
İşlemleri
102
5.6.
Özet
5.7.
Sorular
Bölüm 6.
Diziler
105
6.1. Tek-Boyutlu
Diziler
105
6.2. Çok-Boyutlu
Diziler
107
6.3. Karışık Boyutlu (Jagged)
Diziler
109
6.4. System.Array
ve Dizi
İşlemleri
110
6.4.1.
System.Array Özellik ve
Yordamları
110
6.5. Dinamik
Diziler
117
6.6.
Özet
6.7.
Sorular
Bölüm 7.
Nesne
Yönelimli Programlama 119
7.1. Sınıf ve Nesne
Nedir?
119
7.2. Sınıf ve Nesne
Tanımlamak
122
7.3. Sınıf
Üyeleri
125
7.4. Yordamlar
(Methods)
126
7.4.1. Parametreler
128
7.4.1.1. Değer
veya Referans Yoluyla Parametre Geçmek 129
7.4.1.2.
Yordamlara Değişken Sayıda Parametre Göndermek
131
7.4.2. Yinelemeli
Yordamlar
132
7.4.3.
Main()
Yordamı
133
7.5. Yapıcılar
(Constructors)
133
7.6. Yıkıcılar
(Destructors)
135
7.7. Özellikler ve
İndeksleyiciler
137
7.7.1. Özellikler
(Properties)
137
7.7.2.
İndeksleyiciler
(Indexers)
140
7.8.
Özet
7.9.
Sorular
Bölüm 8.
Statik
Üyeler & Harici Sınıflar 143
8.1. Statik
Üyeler
143
8.2. Statik
Sınıflar
146
8.3. this Anahtar
Sözcüğü
148
8.4. İsim-uzayı
(Namespace)
148
8.5. Proje İçinde
Sınıf Dosyaları Dâhil
Etmek 152
8.6. Parçalı
Sınıf
155
8.7.
Özet
158
8.8.
Sorular
158
Bölüm 9.
OOP'nin
Temel İlkeleri 159
9.1. Soyutlama
(Abstraction)
159
9.2. Sarmalama
(Encapsulation)
159
9.2.1. Erişim
Belirleyiciler (Access
Modifiers) 160
9.3. Çok Şekillilik
(Polymorphism)
163
9.3.1. Yeniden
Yüklenme
(Overloading)
163
9.3.2. Arabirimler
(Interface
Polymorphism)
166
9.3.3. Soyut
Sınıf
170
9.4. Kalıtımsal
Çok-şekillilik (Inheritance
Polymorphism) 172
9.4.1. Üye
Gizlemek
(Shadowing)
180
9.4.2. Temel
Sınıftaki Üye Erişim Sözcükleri (base,
this)
181
9.4.3. Yapıcı ve
Yıkıcı
Kalıtımı
184
9.4.4. Erken
Bağlama ve Geç
Bağlama
185
9.4.5. Erişim
Belirleyici
Tablosu
187
9.5. Nesne Tabanlı
Programlama
187
9.6.
Özet
9.7.
Sorular
Bölüm 10.
Yapı,
Numaralandırma ve Öznitelik 189
10.1. Yapı
(Struct)
189
10.1.1. Yapı
Üyeleri
191
10.1.2. Yapı ve
Kalıtım
192
10.1.3. İçiçe
Yapılar
193
10.1.4. Yapı ve
Sınıf Arasındaki
Fark
194
10.2.
Numaralandırma
195
10.3. Öznitelikler
(Attributes)
197
10.3.1.
Conditional
Özniteliği
200
10.3.2. Obsolete
Özniteliği
201
10.4.
Özet
202
10.5.
Sorular
202
Bölüm 11.
Aykırı
Durum Yönetimi 203
11.1.
try,
catch ve
finally
Anahtar
Sözcükleri 203
11.2. Aykırı Durum
(Exception)
Yaratmak
206
11.3. Kullanıcı Tanımlı
Aykırı Durum
Türü 207
11.4.
System.Exception
Üyeleri
207
11.5.
Özet
11.6.
Sorular
Bölüm 12.
NET’te
Koleksiyon Nesneleri 211
12.1. Koleksiyon
Sınıfları
211
12.1.1. DiziListe
(ArrayList)
212
12.1.2. ÇırpıTablosu
(Hashtable)
216
12.1.3. SıralıListe
(SortedList)
218
12.1.4. Yığın
(Stack)
220
12.1.5. Kuyruk
(Queue)
223
12.1.6. bit Dizisi
(BitArray)
226
12.1.7.
CollectionBase ve DictionaryBase
Sınıfları 230
12.2. Koleksiyon
Arabirimleri
230
12.2.1.
ICollection
Arabirimi
231
12.2.2. IList
Arabirimi
232
12.2.3.
IDictionary
Arabirimi
233
12.2.4.
IEnumerable
Arabirimi
235
12.3.
yield
Anahtar
Sözcüğü
241
12.4. Generic
Veri
Türü
243
12.4.1. Generic
Sınıf ve Generic
Yordam
244
12.4.2. Generic
Mimarisinde Kısıtlama (Constraint) Kullanımı
248
12.4.3.
default()
Operatörü
250
12.4.4. Generic
Koleksiyon
Sınıfları
251
12.4.5. Generic
Delegate
254
12.5.
Özet
12.6.
Sorular
Bölüm 13.
Delegeler ve
Olaylar 257
13.1.
Delegeler &nb |