Konu

Bilgisayar bilimleri

Bellek, algoritma, işletim sistemi, veritabanı, dağıtık sistemler.

İlk yazı → Bilgisayar Bir Programı Nasıl Çalıştırır?

Makine

  1. Bilgisayar Bir Programı Nasıl Çalıştırır?Derleyici, işletim sistemi, CPU ve bellek: kaynak koddan süreç.
  2. İkili Sistem: Bit, Byte ve Verinin TemsiliSayı, metin ve rengin bitlerle temsili.
  3. Boolean Mantığı: Programlar Nasıl Karar Verir?AND, OR, NOT, doğruluk tabloları ve kısa devre değerlendirme.
  4. CPU, Bellek ve Cache: Performans Nerede Kaybolur?CPU, RAM, cache, register ve locality.
  5. Değişkenler, Tipler, Stack ve HeapDeğer, referans, stack, heap ve garbage collection.

Algoritma ve veri

  1. Algoritma Nedir? Big-O Nasıl Okunur?Zaman, alan karmaşıklığı ve Big-O.
  2. Diziler ve Bağlı Listeler: Doğru Yapıyı SeçmekDizi ve bağlı liste: bellek yerleşimi, erişim ve ekleme maliyeti.
  3. Stack ve Queue: İşler Hangi Sırayla Yapılmalı?LIFO ve FIFO: çağrı yığını, undo, kuyruk, BFS.
  4. Hash Table Nasıl Çalışır?Hash fonksiyonu, bucket, collision ve load factor.
  5. Ağaçlar, Binary Search Tree ve HeapTree, traversal, BST ve heap.
  6. Graflar: BFS ve DFS ile İlişkileri GezinmekNode, edge, adjacency list, BFS ve DFS.
  7. Recursion ve Dinamik ProgramlamaBase case, call stack, memoization ve tabulation.
  8. Sıralama Algoritmaları: Hangisi Ne Zaman?Bubble, insertion, merge ve quicksort: karmaşıklık, bellek, kararlılık.

İşletim ve ağ

  1. Process, Thread ve İşletim SistemiProcess, thread, context switch ve system call.
  2. Concurrency: Race Condition ve DeadlockAtomicity, lock, deadlock ve mesajlaşma.
  3. İnternet Nasıl Çalışır? DNS, TCP, TLS ve HTTPDNS, TCP, TLS ve HTTP: tarayıcı adresi çözdükten sonra ne olur.

Veri ve dağıtık

  1. İlişkisel Veritabanı ve SQL TemelleriTablo, anahtar, ilişki, normalizasyon, JOIN ve indeks.
  2. Transaction, ACID ve IsolationACID, anomaliler, lock ve isolation seviyeleri.
  3. Dağıtık Sistemler: Tutarlılık, Replikasyon ve CAPReplikasyon, tutarlılık ve CAP: birden fazla makinede ağ hataları.

Üretim

  1. Temiz Kod, Yazılım Tasarımı ve TestSorumluluk, coupling, cohesion, refactoring ve test piramidi.
  2. Yazılım Güvenliği TemelleriKimlik doğrulama, yetkilendirme, girdi doğrulama, hash, şifreleme ve least privilege.