Bilgisayar Bilimi

Bilgisayar Bilimine Kısa Bir Giriş
Bilgisayar Bilimi genel anlamda hesaplama işiyle ilgilenir. “Computare” den gelen “Computer” kelimesi de mana olarak; anlam çıkarma, hesaplama, sayma, çözme demektir. Hesaplama işi genelde rakamlarla ilişkili olduğundan matematik akla gelir. Bu mantık doğru olmakla birlikte bilgisayar bilimi, rakamları birer sembol olarak gördüğünden hesaplama işi, bir nevi sembol işleme anlamına da gelmektedir. Bilgisayar Bilimi, somut, soyut ve bunların arasında yer alan liminal denilen olgulardan oluşur. Bilgileri ya da sembolleri, otomatik olarak manipüle edebilir, işleyebilir ve dönüştürebilir.
Matematikçilerle başlayan bu bilim, mekanik hesaplama makinelerinin yapımı ile devam ederek daha sonra elektronik bir altyapıya taşınmıştır. Blaise Pascal, Leibniz, Charles Babbage, Ada Lovelace, George Boole, C.E.Shannon, William Burroghs, Herman Hollerith, Thomas J. Watson, Alan M. Turing, Konrad Zuse, Eckert & Mauchly, J. V. Atasanoff, Grace Hopper vb gibi birçoğu bu alandan bahsedilince akla gelen isimlerdir. 1800'lerde yaşamış bir İngiliz matematikçi olan Charles Babage, genellikle bu bilimin öncülerinden biri olarak kabul edilir. İcat ettiği “Difference Engine” ve “Analytical Machine” mekanik işleyen bilgisayarların ilklerindendir.
Kısaca bilgisayarların (hızlandırılmış :) tarihine bakarsak:
1642 — Blaise Pascal — Vites Tabanlı Toplama Makinası
1670 — Leibniz — Toplama, Çıkarma, Çarpma, Bölme yapabilen Mekanik Hesap makinesi
1810 — Jacquard Dokuması ve Delikli Programlama Kartları
1822 — Charles Babage — Difference Engine ve Analytical Machine (Ada Lovelace)
1840 — Herman Hollerith — Nüfus ve Oy Sayımı için kullanılan Sınıflandırma Makinesi (IBM öncüsü)
1930 — The Harvard Mark I (mekanik röle, telefon anahtarları, switch)
1939 — Atanasoff-Berry Bilgisayarı (ikili sitem, vakum tüpü ve kondansatör)
1946 — Eckert & Mauchly — Eniac — Elektronik Sayısal Entegrasyon ve Hesaplayıcı (Vakum tüpleri, 30 ton)
1950 — Bell Laboratuarları — Tranzistörün icadı
1958 — Entegre devreler
1960 — Giderek küçülen ve sayıları artan Tümleşik Devreler
1970 — Mikro-işlemci (intel)
1975 — Mikro-Bilgisayar (1975 Altair, 1977 Apple)
1990 — İnternetin yaygınlaşması
2000'ler ve günümüz bilgisayarları
Bilgisayar Biliminin Konuları
Teorik Bilgisayar Bilimi
Algoritma : Elemeli/Birleşik Sıralama — Algoritma Analizi — Algoritma Karmaşıklığı
Hesaplama Karmaşıklığı (Complexity) : Kuantum ve Normal Bilgisayarlar — Ayrık Logaritma — Test etme —
Bilgi Teorisi (Info Theory) : Entropi — Sıkıştırma — Hata Doğrulama — Eşik Denetimi — Kodlama Teorisi
Kriptografi (Şifre Bilimi) : Genel/Ortak Anahtar — Özel Anahtar
Hesaplama Teorisi (Computability T.)
Turing Makinesi : Alan Turing — Lambda Kalkülüs
Veri Yapıları : Ağaç — Liste — Bağlı Liste — Grafik — Yığın/Raf — Karma — Hesaba dayalı adresleme
Formal Metodlar : Mümkün olan durumlar
Mantık : Grafik Teorisi — Heaplama Geometrisi — Automata Teorisi — Kuantum Hesaplama — Paralel Programlama
Donanım : Anakart — SSD — CPU — Ram — Güç Ünitesi — Monitör — Klavye — Fare
Bilgisayar Mühendisliği
Donanım : Anakart — SSD — CPU — Ram — Güç Ünitesi — Monitör — Klavye — Fare
Bilgisayar Mimarisi : İşlemci — Mikro-işlemci — Grafik İşlemcisi — Kontrol Birimi — Aritmetik Mantık Birimi — Girdi — Çıktı
Scheduling (iş sıralama/listeleme) : Süreçler — İş Sıralayıcısı — Çoklu İşleme
Yazılım ve Programlama Dilleri : Assembly — C — C# — C++ — Java — SQL — PHP — JavaScript
Yazılım Mühendisliği : Formal Metodlar — Birim Testi — Versiyon Kontrolü — Obje Odaklı Tasarım
İşletim sistemleri : Andoid — Windows — Linux — MacOs — ios
Networking (Ağ Kurma) : Eşzamanlı / Dağıtılmış / Paralel Sistemler
Derleyiciler / Yorumlayıcılar: JavaScript → Compiler → C++ → Compiler → C → Compiler → Assembly → Compiler → Machine Code
(Silikon → Bios → İşletim Sistemi → Uygulama → internet tarayıcısı → Web Uygulamaları)
Veri yönetimi : Veri Tabanı — Veri Merkezleri — Sql Sunucusu
Performans : Bilgisayar Analizi — Karşılaştırmalı Kıyaslama
Uygulamalar
Makine Öğrenmesi : Denetimli / Denetimsiz — Nöral Ağlar — Derin Öğrenme — Destekleme
Bilgisayarla Görme : Nesne/Canlı Tanımlama
Görüntü İşleme : Katmanları İşleme
Yapay Zeka : Artificial Intelligence
Robotik : Mekatronik — Devreler — Motorlar
Süper Bilgisayarlar : Yüksek hesaplama kapasitelerine sahip bilgisayarlar
Sanal Gerçeklik : Bilgisayar dünyasında bulunan yapay bir evren — oyunlar
Arttırılmış Gerçeklik : Gerçek dünyaya eklenmiş sanal yapılar
Bilgisayar Grafikleri : Sanal ve Arttırılmış gerçeklik için olmazsa olmaz
Telebulunma : Başka bir yerde sanal/online olarak bulunma ve aynı anda veri transferi
Doğal Dil İşleme : Bilgi sunumu — Çeşitlendirme — Sohbet Robotları
Optimizasyon : Uygun hale getirme — İyileştirme
Boolean Sağlanabilirliği : x1 ya da x2 ya da x3
Disiplinlerarası Bilgisayar Bilimi
Bilgisayarlı Fizik
Rakamsal (Nümerik) Analiz
Bioinformatik
Bilgisayarlı Kimya
İstatistik
Simülasyon
Büyük Veri (Big Data)
İnsan Bilgisayar Etkileşimi
Herşeyin İnterneti (iot)
Bilgisayar Güvenliği (Cyber Security)
Bilgisayar Korsanlığı (Hacking)