Programlama Dillerinin Prensipleri / Mantığı Kavra İşleyişi Öğren Kodu Yaz
Programlama Dillerinin Prensipleri / Mantığı Kavra İşleyişi Öğren Kodu Yaz
Kitap güncellenmiş 2. baskısını yapmıştır.
Bir söz der ki "Babaannene iki dakikada açıklayamayacağın tek satır kodu bile programına ekleme hatta babaannen Ada Lovelace olsa bile". Birçok programcının düştüğü bu hata aslında programlamayı tam olarak öğrenmeden işe koyulmalarından kaynaklanmaktadır.
Bu kitap "hangi programlama dilini öğrenmeliyim" ya da "hangi programlama dili ile daha çok üretebilirim"in cevabını vermeye çalışmıştır.
Kitap; programlama dillerinin değerlendirilmesi karşılaştırılması güçlü ve zayıf yönlerin belirlenmesi öğrenilmesi ve öğretilmesi sırasında ele alınması gereken parametreleri incelemektedir. Aynı zamanda bir programlama dilini öğrendikten sonra tamamen yeni bir programlama diline uyum sağlanmanın kolaylığını sunmaktadır.
Programlama dillerinin prensipleri iyi anlaşılırsa kod geliştirme basitleşecek ve kullanıcının programlama dilini iyileştirmeye dair önerileri olabilecektir. Hangi problem yapılarında hangi programlama dilinin kullanılması gerektiği programlama paradigmalarını anlamaya bağlıdır. Bu nedenle bu kitapta her paradigma ayrıca incelenmektedir.
Paradigmalara yapılara ve işleyişe hakim olmadan etkili bir program kodu yazmak mümkün görünmemektedir.
Böyle bir içeriğe sahip Türkiye'de ilk Türkçe kitap özelliğini taşıyan ve sadece bir programlama dilini öğretmeyi amaçlamayan bu kitap programlamaya yeni başlamış ya da programlamanın içerisinde olan herkesin yararlanacağı önemli bir kaynaktır.
Kitabın Konu Başlıkları

Programlama Dillerinin Tarihçesi ve Çeşitleri

Dillerin Tanımlanması ve Tasarımı

Dillerin Çevrimi

Temel Programlama Kavramları

Veri Tipleri ve Yapıları

Bağlama Kavramı ve İsim Kapsamları

Emir Esaslı Paradigma

Yapısal Programlama

Alt Pogramlar ve Modülasyon

Nesneye Dayalı Programlama

İstisnai Durumlar ve Önlemleri

Eş Zamanlılık ve Thread Yapısı

Fonksiyonel Programlama

Mantıksal Programlama
Kitapla İlgili Kategoriler
Bilgisayar ve Teknoloji>Programlama>Programlama Dilleri
Kitabın İçindekileri
İkinci Baskıya Önsöz 
9
Önsöz 
11
Şekiller Listesi 
23
Tablolar Listesi 
27
Kod Listesi 
29
Semboller 
35
Bölüm 1
GİRİŞ
1. GİRİŞ 
39
1.1. Genel Kavramlar 
39
1.2. Programlama Dili Nedir? 
40
1.3. Programlama Dillerinin Sınıflandırılması 
41
1.3.1. Programlama Dillerinin Seviyelerine Göre Sınıflandırılması 
41
1.3.2. Programlama Dillerini Uygulama Alanlarına Göre Sınıflandırma 
47
1.3.3. Dilleri Tasarım Paradigmalarına Göre Sınıflandırma 
49
1.3.3.1. Imperative Paradigmayı Destekleyen Diller 
50
1.3.3.2. Nesneye Yönelik Paradigmayı Destekleyen Diller 
51
1.3.3.3. Fonksiyonel Programlama 
52
1.3.3.4. Mantıksal Paradigmayı Destekleyen Diller 
52
1.4. Programlama Dillerinin Değerlendirme Ölçütleri 
53
1.4.1. İfade Gücü (Expression Power) 
54
1.4.2. Veri Türleri ve Yapıları (Data Types and Structures) 
54
1.4.3. Giriş/Çıkış (Input/Output I/O Facility) Kolaylığı 
54
1.4.4. Taşınabilirlik (Portability) 
54
1.4.5. Alt Programlama Yeteneği (Modularity) 
55
1.4.6. Verimlilik (Efficiency) 
55
1.4.7. Okunabilirlik (Readability) 
55
1.4.8. Esneklik (Flexibility) 
56
1.4.9. Öğrenme Kolaylığı (Pedagogy) 
56
1.4.10. Genel Amaçlılık (Generality) 
56
1.4.11. Yapısallık (Structural Programming) 
57
1.4.12. Nesne Yönelimlilik (Object Orientation) 
58
1.5. Dil Seçimini Etkileyen Etkenler 
58
1.6. C Programlama Dili 
59
1.6.1. MinGW GNU C Derleyicisinin Kurulumu 
59
1.6.1.1. Örnek Bir C Kodunun Derlenmesi 
60
1.6.1.2. Make Dosyası 
60
1.7. Java Programlama Dili 
64
1.8. Komut Satırı Parametreleri 
68
1.9. Lisp Programlama Dili 
68
1.10. Prolog 
70
1.11. Çalışma Soruları 
70
Bölüm 2
DİLLERİN TARİHÇESİ VE ÇEŞİTLERİ
2. PROGRAMLAMA DİLLERİNİN TARİHÇESİ VE ÇEŞİTLERİ 
73
2.1. Fortran 
73
2.1.1. Fortran I 
74
2.1.2. Fortran 66 
74
2.1.3. Fortran 77 
74
2.1.4. Fortran 90 
74
2.1.5. Fortran 95 
75
2.2. Lisp 
75
2.3. ALGOL 
75
2.3.1. ALGOL60 
75
2.3.2. ALGOL 68 
77
2.4. COBOL 
77
2.5. Basic 
78
2.6. PL/I (Programming Language One) 
79
2.7. APL ve SNOBOL (Dinamik Diller) 
80
2.8. Simula 67 
81
2.9. ALGOL'un Torunları 
81
2.9.1. Pascal 
81
2.9.2. C Programlama Dili 
82
2.10. Modula 
82
2.11. Oberon 
83
2.12. Prolog 
83
2.13. Ada 
83
2.13.1. Ada 95 
84
2.14. Smalltalk 
84
2.15. C++ 
85
2.16. Eiffel (1992) 
86
2.17. Delphi 
86
2.18. Java 
86
2.19. Dilleri 
88
2.19.1. Java 
88
2.19.2. PHP 
88
2.20. C# Programlama Dili 
88
2.21. Python Dili 
89
2.22. Çalışma Soruları 
90
Bölüm 3
DİLLERİN TANIMLANMASI VE TASARIMI
3. DİLLERİN TANIMLANMASI VE TASARIMI 
95
3.1. İfade Notasyonları 
96
3.2. Soyut Sözdizim Ağaçları 
96
3.2.1. İfadelerin Ağaç ile Gösterimi 
97
3.3. Metinsel (Lexical) Analiz 
99
3.3.1. Token'lar ve Heceler 
99
3.4. Dilbilgisi (Gramerler) 
102
3.4.1. Türetimler 
104
3.4.2. Parse Ağaçlarının Somut Sentaks Tanımlaması 
105
3.4.3. Belirsizlik (Ambigouity) 
107
3.4.4. Sallanan Else (Dangling Else) Belirsizliği 
108
3.4.5. Türetimler 
109
3.4.6. Aritmetik İfadeler için Gramerler 
110
3.4.6.1. İşlem Önceliği (Precedence) 
110
3.4.6.2. Birleşme Özelliği (Associativity) 
112
3.5. Dilbilgisi Çeşitleri 
115
3.5.1. Yineleme 
115
3.5.2. Seçimlik 
115
3.5.3. Değiştirme 
116
3.6. Sözdizim Grafikleri 
117
3.7. Anlamsal Tanımlama ve Dilin Standartlaştırılması 
118
3.8. Çalışma Soruları 
119
Bölüm 4
DİLLERİN ÇEVRİMİ
4. DİLLERİN ÇEVRİMİ 
123
4.1. Derleme Süreci 
124
4.1.1. Sözcüksel (Lexical) Analiz 
125
4.1.2. Sözdizim (Syntax) Analizi 
127
4.1.3. Anlam (Semantic) Analizi 
129
4.1.4. Kod Optimizasyonu 
129
4.1.5. Kod Üretimi 
131
4.2. Derleyici ve Yorumlayıcının Karşılaştırılması 
133
4.3. Farklı Programlama Dillerinin Bir Arada Kullanılması 
135
4.4. Çalışma Soruları 
136
Bölüm 5
TEMEL PROGRAMLAMA KAVRAMLARI
5. TEMEL PROGRAMLAMA KAVRAMLARI 
141
5.1. Değişkenlerin İsim Özelliği 
142
5.1.1. İsim Maksimum Uzunluğu (Maximum Length) 
142
5.1.2. Büyük Küçük Harf Duyarlılığı (Case Sensitivity) 
143
5.1.3. Özel Kelimeler 
143
5.2. Değişkenlerin Tipi 
144
5.3. Sabitler 
146
5.4. Programlama Dillerinin İşlemcileri (Operators) 
147
5.4.1. Genel Özelliklere Göre 
147
5.4.1.1. İşlenen Sayısı 
147
5.4.1.2. İşlemcinin Yeri 
148
5.4.1.3. İşlem Önceliği 
148
5.4.1.4. Birleşme Özelliği 
149
5.4.2. Niteliğe Göre İşlemciler 
150
5.4.2.1. Sayısal İşlemciler 
150
5.4.2.2. İlişkisel İşlemciler 
151
5.4.2.3. Mantıksal İşlemciler 
153
5.5. İşlemci Yükleme 
155
5.6. Atama Deyimi 
156
5.6.1. Çoklu Hedefli Atama 
156
5.6.2. Koşullu Hedefler 
157
5.6.3. Bileşik Atama 
157
5.6.4. Tekli Atama İşlemcileri 
158
5.7. Çalışma Soruları 
159
Bölüm 6
VERİ TİPLERİ VE YAPILARI
6. VERİ TİPLERİ VE YAPILARI 
163
6.1. İlkel Veri Tipleri 
163
6.1.1. Sayısal Tipler 
164
6.1.1.1. Tamsayı (Integer) 
164
6.1.1.2. Kayan Noktalı Sayı (Floating Point) 
165
6.1.1.3. Onlu (Decimal) 
166
6.1.1.4. Mantıksal Veri Türü (Boolean) 
167
6.1.1.5. Karakter Tipi 
168
6.1.1.6. Karakter Katarı (String) 
169
6.1.2. Kullanıcı Tanımlı Sıralı Tipler 
170
6.1.2.1. Sayılama Tipleri (Enumeration) 
170
6.1.2.2. Altalan Tipleri (Subrange) 
171
6.2. Türetilmiş Veri Tipleri 
172
6.2.1. Diziler 
172
6.2.1.1. Dizi Tiplerinin Adres Polinomu 
173
6.3. Kayıt (Record) Tipi 
177
6.4. Ortaklık (Union) Tipi 
178
6.5. Küme (set) Tipi 
178
6.6. Gösterge (Pointer) Tipi 
179
6.7. Kullanıcı Tanımlı Veri Türleri 
181
6.8. Bellek Yönetimi 
181
6.8.1. Statik Bellek Bölgesi 
182
6.8.2. Çalışma Anı Yığını 
183
6.8.3. Heap Bellek Bölgesi 
184
6.8.4. void Göstericisi 
185
6.8.5. Sallanan Gösterici 
186
6.9. Kuvvetli Tipleme 
187
6.10. Tip Denetimi 
188
6.11. Tip Dönüşümleri 
188
6.12. Atamalarda Tip Dönüştürme 
192
6.13. var İfadesi 
193
6.14. Çalışma Soruları 
193
Bölüm 7
BAĞLAMA KAVRAMI VE
İSİM KAPSAMLARI
7. BAĞLAMA KAVRAMI VE İSİM KAPSAMLARI 
197
7.1. Statik Tip Bağlama 
198
7.1.1. Örtülü Tip Bağlama 
198
7.1.2. Dışsal Tip Bağlama 
199
7.2. Dinamik Tip Bağlama 
199
7.3. Bellek Bağlama 
201
7.3.1. Program Çalışma Zamanı Bellek Düzeni 
201
7.3.2. Değişkenlerin Bellek Yeri Bağlaması 
202
7.3.2.1. Statik Değişkenler 
202
7.3.2.2. Yığıt Dinamik (stackdynamic) Değişkenler 
203
7.3.2.3. Dışsal Heap Dinamik Değişkenler 
203
7.3.2.4. Örtülü Heap Dinamik Değişkenler 
204
7.4. İsim Kapsamları 
205
7.4.1. Statik Kapsam Bağlama 
205
7.4.2. Dinamik Kapsam Bağlama 
207
7.5. Bloklar 
209
7.6. Çalışma Soruları 
212
Bölüm 8
YAPISAL PROGRAMLAMA
8. YAPISAL PROGRAMLAMA 
215
8.1. Sıralı Yapılar 
215
8.2. Seçimlik Yapılar 
217
8.2.1. İç İçe Seçimlik Yapılar 
218
8.2.1.1. Koşullu Operatör Ataması 
219
8.2.2. Çoklu Seçim Yapıları 
220
8.2.3. Kısa Devre Değerlendirme 
221
8.3. Tekrar (Döngü) Yapıları 
223
8.3.1. Sayaç Kontrollü Döngü Yapıları 
223
8.3.1.1. For Döngüsü 
223
8.3.1.2. Foreach Döngüsü 
225
8.3.2. Mantıksal Kontrollü Döngü Yapıları 
226
8.3.2.1. While Döngüsü 
226
8.3.2.2. DoWhile Döngüsü 
227
8.4. Döngü Kontrol Mekanizmaları 
228
8.5. İç İçe Döngüler 
230
8.6. Durum Etiketleri 
230
8.7. Çalışma Soruları 
231
Bölüm 9
ALT PROGRAMLAR VE MODÜLASYON
9. ALT PROGRAMLAR VE MODÜLASYON 
235
9.1. Modül (Alt Program) 
235
9.2. Fonksiyonlar 
235
9.2.1. Fonksiyonlarda Çağrı Kısmı 
236
9.2.2. Fonksiyonlarda Dönüş Kısmı 
236
9.3. Prototip Tanımlama 
242
9.4. Parametre Geçirme Yöntemleri 
243
9.4.1. Değer İle Çağırma ( PassByValue) 
244
9.4.2. Referans İle Çağırma ( PassByReference) 
244
9.4.3. Gösterici İle Çağırma (Adres ile Çağırma PassByPointer) 
246
9.4.4. Sonuç İle Çağırma ( PassByResult) 
250
9.4.5. İsim İle Çağırma ( PassByName) 
251
9.5. Özyineleme 
252
9.6. Varsayılan Parametre 
254
9.7. Değişken Sayıda Parametre 
255
9.8. Çalışma Soruları 
258
Bölüm 10
NESNEYE DAYALI PROGRAMLAMA
10. NESNEYE DAYALI PROGRAMLAMA 
261
10.1. Nesnelerin Harici ve Dahili Görünüşleri 
263
10.2. Nesneye Dayalı Düşünme 
265
10.3. Sınıf Hiyerarşisi 
265
10.3.1. this Terimi 
271
10.3.2. Nitelik (Property) Tanımı 
272
10.3.3. İç İçe Sınıf Tanımı 
273
10.3.4. Yıkıcı Metotlar 
274
10.3.5. Erişim Niteleyicileri 
276
10.4. Kalıtım 
278
10.5. Overload (Aşırı Yükleme) ve Override (Ezme) Terimleri 
283
10.6. C Dilinde Kalıtımın Benzetilmesi 
284
10.7. Nesnelerin Karşılaştırılması 
289
10.8. Arayüzler 
291
10.9. Soyut Sınıflar 
294
10.10. Object Veri Türü 
297
10.11. Prosedür Esaslı Yaklaşım ile Karşılaştırma 
298
10.12. Çalışma Soruları 
299
Bölüm 11
İSTİSNAİ DURUMLAR VE ÖNLEMLERİ
11. İSTİSNAİ DURUMLAR VE ÖNLEMLERİ 
305
11.1. Hata Kaynakları 
305
11.2. Hata İle Başa Çıkma 
306
11.3. Hata Yakalamada Kullanılan Kelimeler 
310
11.3.1. try ve catch İfadesi 
310
11.3.2. finally İfadesi 
311
11.3.3. throws ifadesi 
313
11.4. Hata Sınıfı Tasarlamak 
315
11.5. Çalışma Soruları 
320
Bölüm 12
EŞ ZAMANLILIK VE THREAD YAPISI
12. EŞ ZAMANLILIK VE THREAD YAPISI 
323
12.1. Öncelik Grafları 
323
12.2. Eşzamanlık Şartları 
325
12.3. FORK ve JOIN Yapıları 
327
12.3.1. Programlama Dillerinde Eşzamanlılığın Gerçekleştirimi 
330
12.3.2. Programlama Dillerinde Eşzamanlılığın Gerçekleştirimi C Örneği 
332
12.4. ParbeginParend Eş Zamanlılık Deyimleri 
337
12.5. Bir İşlemin Durumları 
339
12.6. İşlem Grafı 
339
12.6.1. İşlem Oluşturma 
340
12.6.1.1. Execution (Yerine Getirme) 
340
12.6.1.2. Sharing (Paylaşma) 
340
12.6.2. İşlem Sonlandırılması 
342
12.6.3. İki İşlem Yazılım Çözümleri 
343
12.7. Kritik Bölge Problemi 
343
12.8. Semaforlar (Semaphores) 
350
12.9. Matris Çarpımının Java'da Thread ile Gerçekleştirimi 
352
12.10. Çalışma Soruları 
354
Bölüm 13
FONKSİYONEL PROGRAMLAMA
13. FONKSİYONEL PROGRAMLAMA 
359
13.1. Yorumlayıcı (Interpreter) 
359
13.2. Fonksiyonel Tanım 
359
13.3. Değişkenin Rolü 
361
13.4. Programcı Tarafından Fonksiyon Tanımlanması 
363
13.5. Yerel Bildirimler 
363
13.6. Tipler Değerler ve İşlemler 
365
13.6.1. Tiplerin Çarpımı 
365
13.6.2. Fonksiyon Uygulamaları 
365
13.6.3. Tip Bildirimleri 
365
13.6.4. Tip Çıkarımı 
366
13.7. Parametrik Çok Biçimlilik 
366
13.8. Haskell Dili 
367
13.9. Lisp Dili 
367
13.9.1. Lisp Programlama Dilinde Kontrol Blokları 
370
13.9.2. Lisp Programlama Dilinde Döngüler 
371
13.9.3. Opsiyonel Parametre Tanımlama 
372
13.9.4. Lisp Dilinde Listeler 
373
13.10. Çalışma Soruları 
375
Bölüm 14
MANTIKSAL PROGRAMLAMA
14. MANTIKSAL PROGRAMLAMA 
379
14.1. Mantıksal Konsept 
379
14.1.1. Olaylar 
379
14.1.2. Kurallar 
380
14.1.3. Eşitlik Kavramı 
381
14.2. Mantıksal Operatörler 
381
14.2.1. Durum Yapıları 
381
14.3. Kararlılık 
382
14.4. Atama Kavramı 
383
14.5. Liste Yapısı 
384
14.6. Özyinelemeli Çağrımlar 
384
14.7. Çalışma Soruları 
384
Kaynaklar 
385
Kavramlar Dizini 
387
Yazarların Özgeçmişi 
399
ÜRÜN ÖZELLİKLERİ
  • Basım Yılı:
  • Sayfa Sayısı:400
  • Kağıt Türü:Kitap Kağıdı
  • Ebat:16 x 24
  • Dil:Türkçe
  • Cilt Durumu:Karton Kapak
  • ISBN-13:9789750271489
ÜRÜN KATEGORİLERİ
YORUM YAPIN
Yorum Başlığı:
Yorumunuz*:
Bu ürünle ilgili bize iletmek istediğiniz her hangi bir hata mevcut ise aşağıdaki formdan gönderebilirsiniz.
Bildirdiğiniz hata tarafımızdan düzeltilince e-posta ile bilgilendirileceksiniz.
Hata Detayı:
SATIŞ FİYATI : 305,00 TL
ÜRÜN SATIŞ DIŞI
Alış-verişlerinizde kredi kartı haricinde banka havalesi, posta çeki havalesi ya da kapıda ödeme seçenekleriyle ödeme yapabilirsiniz.
Ayrıntılı bilgi için Yardım sayfasına bakabilirsiniz.
Taksit anlaşmamız bulunan kredi kartları
Hesabım  |   Favori Listem  |   Sipariş Takibi  |   Yardım  |   Bize Ulaşın  |        
Alemdar Mahallesi, Biçkiyurdu Sokak, No: 1/2 / Fatih / İstanbul / Türkiye   Telefon : 0 (212) 522 31 52   Faks : 0 (212) 522 31 54  
E-Posta : destek@kitapstore.com
© 2024 KitapStore.com Tüm Hakları Saklıdır