Ana içeriğe geç

Kitap 01

Programlamanın Temelleri

Her dilde karşılaşılan temel kavramlar: değişkenler, fonksiyonlar, asenkron kod ve programlama paradigmaları.

İçindekiler

  1. 01Algoritma1Algoritma, bir listeyi sıralamak ya da en kısa yolu bulmak gibi bir sorunu çözmek veya bir işi tamamlamak için izlenen, sonlu ve adım adım yönergeler bütünüdür.
  2. 02Async/Await2Async/await, asenkron kodu sıradan adım adım kod gibi okunur biçimde yazmayı sağlayan, her await'te bir promise ya da görev bitene dek duran sözdizimidir.
  3. 03Base643Base64, resim ya da anahtar gibi her tür ikili veriyi yalnızca 64 güvenli metin karakteriyle yazar; böylece veri metin için yapılmış sistemlerden geçebilir.
  4. 04Big O gösterimi4Big O gösterimi, girdi büyüdükçe bir algoritmanın çalışma süresinin ya da bellek kullanımının nasıl arttığını, kesin hız yerine büyüme oranıyla anlatır.
  5. 05Callback5Callback, başka bir fonksiyona argüman olarak verilen ve o fonksiyonun bir iş bittiğinde ya da bir olay gerçekleştiğinde sonradan çağırdığı fonksiyondur.
  6. 06Closure6Closure, oluşturulduğu kapsamdaki değişkenleri hatırlayan bir fonksiyondur; dıştaki fonksiyon sona erdikten sonra bile bu değişkenleri kullanabilir.
  7. 07Constructor7Constructor, bir sınıftan yeni bir nesne oluşturulduğunda çalışan ve nesnenin başlangıç değerlerini ayarlayarak onu kullanıma hazırlayan özel bir metottur.
  8. 08Çok biçimlilik8Çok biçimlilik, kodun farklı türlerdeki değerlerle ortak bir arayüz üzerinden çalışabilmesidir; her tür kendi davranışını sağlar.
  9. 09Çöp toplama9Çöp toplama, dil çalışma zamanının programın artık kullanamadığı verileri bulup bu belleği yeniden kullanıma açtığı otomatik bellek yönetimidir.
  10. 10Değişken10Değişken, bir programda sayı ya da metin gibi bir değeri tutan ve kodun çalışırken okuyup değiştirebildiği, adlandırılmış bir depolama alanıdır.
  11. 11Değişmezlik11Değişmezlik, bir değerin oluşturulduktan sonra değiştirilememesi demektir; her güncelleme, orijinali yerinde değiştirmek yerine yeni bir değer üretir.
  12. 12Derleyici12Derleyici, bir programlama dilinde yazılmış kaynak kodu, bilgisayarın çalıştırabileceği makine kodu gibi daha alt seviyeli bir biçime çeviren programdır.
  13. 13Dinamik Tipleme13Dinamik tipleme, türlerin değişkenlere değil değerlere ait olması ve program çalışırken kontrol edilmesidir; bir değişken önce sayı, sonra string tutabilir.
  14. 14Dize14Dize, bir isim, cümle, URL ya da dosya içeriği gibi metni sıralı bir karakter dizisi olarak temsil eden bir veri türüdür.
  15. 15Dizi15Dizi, tek bir ad altında saklanan ve her öğesine genellikle 0'dan başlayan indeks adlı sayısal konumuyla erişilen, sıralı bir değerler koleksiyonudur.
  16. 16Döngü16Döngü, bir kod bloğunu belirli sayıda, bir koleksiyondaki her öğe için bir kez ya da bir koşul doğru kaldığı sürece tekrar eden bir kontrol yapısıdır.
  17. 17Düzenli ifade17Düzenli ifade (regex), dizeler içinde aranacak, doğrulanacak, çıkarılacak veya değiştirilecek metni tarif eden, kompakt sözdizimli bir desendir.
  18. 18Enum18Enum, bir siparişin olası durumları gibi sabit ve adlandırılmış bir değerler kümesi tanımlayan bir veri türüdür; kod bu kümenin dışında bir değer kullanamaz.
  19. 19Eşzamanlılık19Eşzamanlılık, bir programın birden çok görevde örtüşen zaman dilimlerinde ilerleyebilme yeteneğidir; örneğin birçok kullanıcıya aynı anda hizmet vermek gibi.
  20. 20Fonksiyon20Fonksiyon, belirli bir işi yapan, isteğe bağlı olarak parametre denen girdiler alıp sonuç döndürebilen, adlandırılmış ve yeniden kullanılabilir kod bloğudur.
  21. 21Fonksiyonel programlama21Fonksiyonel programlama, paylaşılan verileri değiştirmeyen saf fonksiyonlarla yazılım kurma stilidir; kodu daha öngörülebilir ve test etmesi kolay yapar.
  22. 22Framework22Framework, bir uygulamanın yapısını sağlayan, yeniden kullanılabilir kod, araç ve kural temelidir; geliştiriciler yalnızca kendi mantıklarını doldurur.
  23. 23Generics23Generics, tam tür güvenliğini korurken birçok veri türüyle çalışan fonksiyonlar, sınıflar ve türler yazmanıza olanak tanıyan bir dil özelliğidir.
  24. 24Hata ayıklama24Hata ayıklama, bir programın neden yanlış davrandığını bulma, hatalı kodu saptama ve düzeltme sürecidir; çoğu zaman hata ayıklayıcı adlı bir araç kullanılır.
  25. 25IDE25IDE (tümleşik geliştirme ortamı), bir kod editörünü hata ayıklayıcı, derleme komutları ve diğer geliştirici araçlarıyla tek bir yerde birleştiren uygulamadır.
  26. 26Interface26Interface, bir türün sağlamayı vaat ettiği metot ve özellik imzalarından oluşan adlandırılmış bir kümedir; bu üyelerin nasıl gerçekleştirildiğini söylemez.
  27. 27Iterator27Iterator, verinin nasıl saklandığını açığa çıkarmadan, konumunu hatırlayarak bir koleksiyonun öğeleri arasında teker teker ilerlemeyi sağlayan bir nesnedir.
  28. 28İstisna28İstisna, bir hata oluştuğunda programın normal akışını kesen bir olaydır; kod bunu programı çökertmek yerine yakalayıp ele alabilir.
  29. 29İşaretçi29İşaretçi, başka bir değerin kendisi yerine bellek adresini saklayan bir değişkendir; kodun o veriyi dolaylı yoldan okumasına ya da değiştirmesine imkân tanır.
  30. 30JIT derleme30JIT derleme, programın en sık çalışan kısımlarını çalışma anında makine koduna çevirerek yorumlayıcının hızlı açılışını derlenmiş kodun hızıyla birleştirir.
  31. 31Kalıtım31Kalıtım, yeni bir sınıfın mevcut bir sınıfın alanlarını ve metotlarını yeniden kullanmasını, genişletmesini ve geçersiz kılmasını sağlayan OOP özelliğidir.
  32. 32Kapsam32Kapsam, bir programda değişken ya da fonksiyon gibi bir adın görünür olduğu ve kullanılabildiği bölgedir; her kod satırının nelere ulaşabileceğini belirler.
  33. 33Kapsülleme33Kapsülleme, verileri onları kullanan metotlarla paketleyip iç ayrıntıları gizlemektir; dışarıdaki kod yalnızca herkese açık bir arayüz üzerinden çalışır.
  34. 34Karakter kodlaması34Karakter kodlaması, metni byte'lara ve geri metne çeviren kurallardır; her harfin saklanıp gönderilmesini sağlar. Bugünkü standart UTF-8'dir.
  35. 35Kütüphane35Kütüphane, bir programın sık yapılan işleri o kodu kendisi yazmadan yapmak için çağırdığı, fonksiyon ve sınıf gibi hazır kodlardan oluşan bir koleksiyondur.
  36. 36Lambda fonksiyonu36Lambda fonksiyonu, adı olmadan satır içinde yazılan küçük fonksiyondur; genellikle sıralama ya da filtreleme yapan başka bir fonksiyona doğrudan aktarılır.
  37. 37Memoization37Memoization, fonksiyon çağrılarının sonuçlarını saklayıp aynı girdiler tekrar geldiğinde kaydedilen sonucu döndüren bir optimizasyon tekniğidir.
  38. 38Metot38Metot, bir nesneye ya da sınıfa ait olup onun üzerinden çağrılan fonksiyondur; user.rename("Ada") örneğindeki gibi nesnenin verisini okuyup değiştirebilir.
  39. 39Nesne39Nesne, ilgili veriyi ve davranışı bir arada tutan yapıdır: değerleri özellik denen adlandırılmış alanlarda, onları işleyen fonksiyonları metot olarak taşır.
  40. 40Null40Null, “burada değer yok” anlamına gelen özel bir değerdir; bir değişken bilerek hiçbir nesneye ya da veriye başvurmadığında kullanılır.
  41. 41OOP41OOP, yani nesne yönelimli programlama, kodu ilişkili verileri onlar üzerinde işlem yapan fonksiyonlarla birleştiren nesneler etrafında düzenleme yöntemidir.
  42. 42Özyineleme42Özyineleme, bir fonksiyonun sorunu, basit bir temel duruma ulaşana dek aynı sorunun daha küçük sürümleri için kendisini çağırarak çözdüğü tekniktir.
  43. 43Paket Yöneticisi43Paket yöneticisi, yazılım paketlerini ve onların bağımlılıklarını kuran, güncelleyen ve kaldıran, sürümleri otomatik olarak çözen bir araçtır.
  44. 44Paralellik44Paralellik, birkaç hesaplamayı birden çok CPU çekirdeğinde, GPU'da ya da makinede gerçekten aynı anda çalıştırmaktır; böylece büyük bir iş daha hızlı biter.
  45. 45Parametre45Parametre, bir fonksiyonun tanımındaki adlandırılmış bir girdidir; argüman ise fonksiyon çağrıldığında o yere verilen gerçek değerdir.
  46. 46Promise46Promise, asenkron bir işlemin nihai sonucunu temsil eden bir nesnedir; iş bittiğinde kodun başarıya ya da hataya tepki vermesini sağlar.
  47. 47Saf fonksiyon47Saf fonksiyon, aynı girdi için her zaman aynı çıktıyı döndüren ve yan etkisi olmayan, yani kendi dışındaki hiçbir şeyi değiştirmeyen fonksiyondur.
  48. 48SDK48SDK (yazılım geliştirme kiti), belirli bir platform veya servis için geliştirme yapmaya yarayan araç, kütüphane, dokümantasyon ve örneklerden oluşan pakettir.
  49. 49Sınıf49Sınıf, nesne yönelimli programlamada bir grup nesnenin paylaştığı veri ve davranışı tanımlayan, nesnelerin örnek olarak ondan oluşturulduğu bir plandır.
  50. 50Soyutlama50Soyutlama, bir şeyin nasıl çalıştığına dair karmaşık ayrıntıları daha basit bir arayüzün arkasına gizlemektir; kod onu yalnızca ne yaptığını bilerek kullanır.
  51. 51Stack trace51Stack trace, bir hata oluştuğu anda devam eden fonksiyon çağrılarının listesidir; hatanın çıktığı satırdan programın başladığı yere kadar uzanır.
  52. 52Statik Tipleme52Statik tipleme, değişken ve ifadelerin türünün program çalışmadan önce, genellikle derleyici tarafından denetlenmesidir; birçok tür hatası erken yakalanır.
  53. 53Tür çıkarımı53Tür çıkarımı, derleyicinin bir değişkenin ya da ifadenin türünü otomatik olarak belirlediği bir özelliktir; her tür bildirimini yazmanız gerekmez.
  54. 54Veri türü54Veri türü, bir programa bir verinin sayı ya da metin gibi hangi tür bir değer taşıdığını ve hangi işlemlerin ona uygulanabileceğini söyleyen sınıflandırmadır.
  55. 55Yorumlayıcı55Yorumlayıcı, tüm programı önce ayrı bir çalıştırılabilir dosyaya çevirmek yerine kaynak kodu doğrudan, adım adım çalıştıran bir programdır.
  56. 56Yüksek dereceli fonksiyon56Yüksek dereceli fonksiyon, başka bir fonksiyonu argüman olarak alan, fonksiyon döndüren ya da ikisini de yapan fonksiyondur; davranış veri gibi taşınabilir.

Kütüphaneye dönSonraki kitap: Web Geliştirme

Rastgele bir sayfa oku
Bugünkü tekrarı aç
Koyu temaya geç
Read this page in English

Daha fazla

Ayarlar