Türkiye'de üniversitelerin bilgisayar mühendisliği, yazılım mühendisliği, bilgisayar bilimleri vb. bölümlerinde verilen eğitimin çoğunlukla bilgisayar bilimleri(computer science) eğitimi olması veya çok yakın olması ve bu doğrultuda CS eğitiminin günümüzde üniversiteler dışı, internetin olduğu her yerden -başta ingilizce olarak- alınabiliyor hale gelmesi, Türkçe kaynak tarafında bir Bilgisayar Bilimleri müfredatı hazırlama gereksinimi oluşturmuştur.
İster üniversitelerin çeşitli bölümlerinde bilgisayar bilimleri eğitimi alıyor olun, ister üniversite dışından bilgisayar bilimlerine ilgi duyuyor olun bu repoda dönem dönem sunulan dersleri çalışarak Computer Science eğitimi alabilirsiniz.
Aynı zamanda bu reponun esinlenildiği İngilizce versiyonu için göz atabilirsiniz: https://github.com/ossu/computer-science
- Müfredat
- 1. Dönem
- 2. Dönem
- 3. Dönem
- 4. Dönem
- Ara Dönem - Bilgisayar Bilimleri Eğitiminizin Eksik Dönemi
- 5. Dönem
- 6. Dönem
- 7. Dönem
- 8. Dönem
Discord: https://discord.com/invite/BcqMBxPBME Telegram: https://t.me/bbtizmir
Bu dönem bilgisayar bilimleri için gerekli temel matematik derslerini ve bilgisayar bilimleri eğitimi için ön hazırlık yapacaksınız.
Eğer daha önce hiç kod yazmadıysanız gelecekteki programcılık maceranızda dillerin soyutsal gelişimini anlayabilmeniz için C dili oldukça iyi bir başlangıç seçeneğidir.
İşlenen bazı konular:
temel programlama yapısı
Pointer ile hafıza işlemleri
Ders | Süre | Efor | Önkoşul | Tartışma |
---|---|---|---|---|
C Programlamaya Giriş(Murat Yücedağ) | 60 video | 10 video/hafta | none | chat |
Alternatif Kaynak: C Programlamaya Giriş(Prof. Dr. Şadi Evren Şeker) | 18 video | 2 video/hafta | none | chat |
Bilgisayar Bilimlerine Giriş dersi için kodluyoruz platformu çok harika iş çıkararak Harvard CS50 dersini Türkçeleştirip modül modül ilerleyebileceğiniz ve sonunda Kodluyoruz CS50 sertifikası alabileceğiniz bir platform oluşturmuş.
Ders | Süre | Efor | Önkoşul | Tartışma |
---|---|---|---|---|
Bilgisayar Bilimlerine Giriş(Introduction to Computer Science) | 10 hafta | 1 modül/hafta | Lineer Cebir | chat |
Bilgisayar Bilimleri, matematik disiplininden köken alarak gelişmiş bir disiplindir. Bilgisayar Bilimci olmak için muhakkak gerekli matematik derslerini almalısınız.
Ders | Süre | Efor | Önkoşul | Tartışma |
---|---|---|---|---|
Kalkülüs 1 (Calculus 1) | 112 video | 11 video/hafta | none | chat |
Bilgisayar Bilimleri, matematik disiplininden köken alarak gelişmiş bir disiplindir. Bilgisayar Bilimci olmak için muhakkak gerekli matematik derslerini almalısınız.
Ders | Süre | Efor | Tartışma |
---|---|---|---|
Lineer Cebir (Linear Algebra) | 146 video | 14 video/hafta | chat |
Bilgisayar Bilimleri, matematik disiplininden köken alarak gelişmiş bir disiplindir. Bilgisayar Bilimci olmak için muhakkak gerekli matematik derslerini almalısınız.
Ders | Süre | Efor | Tartışma |
---|---|---|---|
Ayrık Matematik (Discrete Mathematics) | 211 video | 21 video/hafta | chat |
Bilgisayar Bilimleri, matematik disiplininden köken alarak gelişmiş bir disiplindir. Bilgisayar Bilimci olmak için muhakkak gerekli matematik derslerini almalısınız.
Ders | Süre | Efor | Önkoşul | Tartışma |
---|---|---|---|---|
Kalkülüs 2 (Calculus 2) | 111 video | 10 video/hafta | none | chat |
Bilgisayar Bilimleri, matematik disiplininden köken alarak gelişmiş bir disiplindir. Bilgisayar Bilimci olmak için muhakkak gerekli matematik derslerini almalısınız.
Ders | Süre | Efor | Önkoşul | Tartışma |
---|---|---|---|---|
Olasılık ve İstatistik (Probability and Statistics) | 117 video | 10 video/hafta | none | chat |
Geçtiğimiz 1. dönem programlama dünyasına C ile giriş yapmıştık. Bu dönem Python ile giriş yapacağız. Python sade ve kolay bir söz dizimine sahiptir. Ayrıca isterseniiz Olasılık ve istatistik dersinde aldığınız eğitimi Python'a ait Numpy, Pandas, Matplotlib gibi kütüphaneler ile kolaylıkla uygulamalı kullanarak veri bilimi dünyasına da göz kırpabilirsiniz. Diğer yandan Python ile kariyerinizi ilerletmek isterseniz veri bilimi yanı sıra yapay zeka, web geliştirme, siber güvenlik gibi pek çok konuda uzmanlık elde edebilirsiniz.
Ders | Süre | Efor | Önkoşul | Tartışma |
---|---|---|---|---|
Python İle Programlamaya Giriş (Introduction to Programming With Python) | 62 video | 6 video/hafta | none | chat |
Alternatif: Sıfırdan İleri Seviyeye Python(sertifikalı) | 43 saat | 4 saat/hafta | none | chat |
Bilgisayar Bilimlerine Giriş dersi, ilerde göreceğiniz yoğun matematik ve yazılım derslerine hazırlık yapmanız ve gelecekte seçeceğiniz alanı bulmanız için önemlidir.
Ders | Süre | Efor | Önkoşul | Tartışma |
---|---|---|---|---|
Bilgisayar Bilimlerine Giriş(Prof. Dr. Kemal Bıçakçı) | 10 Video | 1 video/hafta | Lineer Cebir | chat |
Bilgisayar Bilimleri, matematik disiplininden köken alarak gelişmiş bir disiplindir. Bilgisayar Bilimci olmak için muhakkak gerekli matematik derslerini almalısınız.
Ders | Süre | Efor | Önkoşul | Tartışma |
---|---|---|---|---|
Çizge Kuramı (Graph Theory) | 48 video | 5 video/hafta | none | chat |
Ek Kaynak: Çizge Kuramı (Prof. Dr. Şadi Evren Şeker) | 1 video | - | none | chat |
- dönem gördüğünüz C derslerini bu derste çeşitli algoritmalar üzerinde kullanarak bilgisayar bilimlerinde veri yapılarının nasıl oluştuğunu daha iyi anlayacaksınız.
Ders | Süre | Efor | Tartışma |
---|---|---|---|
Algoritmalar ve Veri Yapıları (Algorithms and Data Structures) | 26 video | 3 video/hafta | chat |
Ek Kaynak: Python İle Veri Yapıları (Algorithms and Data Structures With Python) | chat | ||
Ek Kaynak:Veri Yapıları (Algoritma Uzmanı) | chat |
Bilgisayar Bilimleri, matematik disiplininden köken alarak gelişmiş bir disiplindir. Bilgisayar Bilimci olmak için muhakkak gerekli matematik derslerini almalısınız.
Ders | Süre | Efor | Tartışma |
---|---|---|---|
Sayısal Çözümleme (Numerical Analys) | 99 video | 10 video/hafta | chat |
Bilgisayar Bilimlerinin bilhassa Yazılım Mühendisliği ve Gereksinim Mühendisliği kollarını ilgilendiren Nesne Yönelimli Çözümleme ve Tasarım dersi, bir sistemin/sistem modülleri setinin/organizasyonun/işletme biriminin gereksinimlerinin çözümlenmesi ve uygun bir çözümün tasarımında nesne ile modelleme tekniklerini kullanılması üzerinedir.
Ders | Süre | Efor | Tartışma |
---|---|---|---|
Nesneye Yönelik Analiz ve Tasarım (Object-Oriented Analysis and Design (OOAD) | 31 video | 3 video/hafta | chat |
Ek Kaynak: Object-Oriented Analysis and Design (OOAD) | 14 video | 3 video/hafta | chat |
Bilgisayar Bilimleri eğitimi alırken bilgisayar donanımına Sayısal Tasarım dersiyle giriş yapacağız.
Ders | Süre | Efor | Tartışma |
---|---|---|---|
Sayısal Tasarım (Numerical Design) (Prof. Dr. Oğuz Ergin) | 54 video | 5 video/hafta | chat |
[Alternatif Kaynak(Kitap): Sayısal Tasarım - Morris Mano] | 500 sayfa | - | chat |
Veritabanı yönetimi dersiyle veritabanı mühendisliğinin ilgilendiği konuların temellerini alacaksınız.
İşlenen bazı konular:
Varlık İlişki Diyagramı - ERD
Normalizasyon
İlişkisel Veritabanları
SQL - NoSQL
Ders | Süre | Efor | Tartışma |
---|---|---|---|
Veritabanı Yönetimi (Database Management) | 20 video | 2 video/hafta | chat |
Ek Kaynak: Veritabanı Yönetimi (Erdinç Uzun) | 1 video | - | chat |
Ek Kaynak: Uygulamalarla SQL Öğreniyorum(Sertifikalı) | chat |
Bilgisayar Bilimlerinin en önemli derslerinden birisi olan İşletim Sistemleri dersi ile bir işletim sisteminin temel yapısının ne olduğunu, organizasyonlar arasındaki iletişimin nasıl gerçekleştiğini anlamak için iyi bir şekilde öğrenmeniz gereken bir dersttir.
Ders | Süre | Efor | Tartışma |
---|---|---|---|
İşletim Sistemleri (Operating Systems) (Prof. Dr. Kemal Bıçakcı) | 13 video | 2 video/hafta | chat |
Ek: İşletim Sistemleri (Operating Systems) (Prof. Dr. Şadi Evren Şeker) | 33 video | 3 video/hafta | chat |
Programcılık hayatınızda yazılım mühendisliğinin temelini oluşturan OOP konusunu mutlaka iyi anlamalısınız. İlgilendiğiniz programlama diline ait OOP eğitimini alabilirsiniz.
Ders | Süre | Efor | Tartışma |
---|---|---|---|
Python ile Nesneye Yönelik Programlama (Object-Oriented Programming) | 30 video | 3 video/hafta | chat |
Java ile Nesneye Yönelik Programlama (Object-Oriented Programming) | 36 video | 4 video/hafta | chat |
C# ile Nesneye Yönelik Programlama (Object-Oriented Programming) | 38 video | 4 video/hafta | chat |
C++ ile Nesneye Yönelik Programlama (Object-Oriented Programming) | 49 video | 5 video/hafta | chat |
Yöneylem araştırması, belirli kısıtların olduğu bir durumda, belirli bir amaca yönelik en uygun çözümün bulunması için geliştirilmiş bir yöntemdir. Bilgisayar Bilimleri ile olan ilişkisi, Yöneylem Araştırması'nın araştırma konularının; istatistik, optimizasyon, rassallık, kuyruk kuramı, oyun kuramı, çizge kuramı, karar analizi ve simülasyon olmasından gelmektedir.
Ders | Süre | Efor | Tartışma |
---|---|---|---|
Matematiksel Programlama - Yöneylem Araştırması (Operations Research) | 32 video | 3 video/hafta | chat |
Alternatif Kaynak: Matematiksel Programlama - Yöneylem Araştırması (Operations Research) | 35 video | 3 video/hafta | chat |
Ara dönemde MIT Computer Science bölümünde "The Missing Semester of Your CS Education" adı verilen "Bilgisayar Bilimleri Eğitiminizin Eksik Dönemi" dersini göreceksiniz.
Ders | Süre | Efor | Tartışma |
---|---|---|---|
Bilgisayar Bilimleri Eğitiminizin Eksik Dönemi (The Missing Semester of Your CS Education) | 2 hafta | 6 saat/hafta | chat |
Orjinal İngilizce Versiyon | 2 hafta | 6 saat/hafta | chat |
Bu dönem 2 adet seçmeli dersi seçmeli ders listesinden seçmeniz gerekiyor.
Bulanık mantık bir yapay zekâ uygulaması oluşturma prensibidir.
Ders | Süre | Efor | Tartışma |
---|---|---|---|
Bulanık Mantık ve Bulanık Kümeler (Fuzzy Logic and Fuzzy Sets) | 21 video | 2 video/hafta | chat |
Ek Kaynak: Bulanık Mantık ve Bulanık Kümeler (Prof. Dr. Şadi Evren Şeker) | - | chat | |
Ek Kaynak: Fuzzy Logic(İngilizce) | chat |
Veri madenciliği, büyük ölçekli veriler arasından faydalı bilgiye ulaşma, bilgiyi madenleme işidir. Yapay Zeka'nın en popüler konularından birisi olan Veri Bilimi alanına bu dersle giriş yapacaksınız.
Ders | Süre | Efor | Tartışma |
---|---|---|---|
Veri Madenciliğine Giriş (Introduction to Data Mining) | 32 video | 3 video/hafta | chat |
Ek Kaynak: Veri Madenciliği Yöntemleri (Prof. Dr. Şadi Evren Şeker) | 69 video | 7 video/hafta | chat |
Ek Kaynak:Teorik Veri Madenciliği (Prof. Dr. Şadi Evren Şeker) | 12 video | 2 video/hafta | chat |
Ek Kaynak:Veri Madenciliği ve İstatistiksel Yöntemler (Prof. Dr. Şadi Evren Şeker) | 19 video | 2 video/hafta | chat |
Veri yapıları ve algoritmalar dersinde görülen algoritmaların daha verimli tasarlanması ve analiz edilmesiyle ilgileneceğiniz bu dersle birlikte algoritmalara bakış açınız tamamiyle değişecek. Yazılım mühendisliği alanında ilerlemek isteyenler için başucu dersi yapılmalıdır.
Ders | Süre | Efor | Tartışma |
---|---|---|---|
Algoritmaların Tasarımı ve Analizi (Design and Analysis of Algorithms) | 21 video | 2 video/hafta | chat |
Ek Kaynak: Algoritmaların Tasarımı ve Analizi (Design and Analysis of Algorithms) | - | chat |
Bu dönem 2 adet seçmeli dersi seçmeli ders listesinden seçmeniz gerekiyor.
Çözüm kümesi discrete olan optimizasyon problemleridir. Bilgisayar Bilimleri'nin yapay zeka, yazılım mühendisliği ve uygulamalı matematik alanları ile yakından ilgilidir.
Ders | Süre | Efor | Tartışma |
---|---|---|---|
Kombinatoryal Optimizasyon (Combinatorial Optimization) | 71 video | 7 video/hafta | chat |
Bilgisayar Bilimleri'nde bilgisayar organizasyonu, (veya bazen mikromimari de denir) verilen bir komut kümesi mimarisinin bir işlemci üzerinde gerçeklenmesidir.
Ders | Süre | Efor | Tartışma |
---|---|---|---|
Bilgisayar Organizasyonu (Computer Organization) (Prof. Dr. Oğuz Ergin) | 47 video | 5 video/hafta | chat |
Ek Kaynak: Computer Organization (William Sawyer - Bilkent University) | 47 video | 5 video/hafta | chat |
[Ek Kaynak: Morris Mano Bilgisayar Sistemleri Mimarisi Kitabı] | 500 sayfa | - | chat |
Bilgisayar Ağları dersini alan öğrenciler bilgisayar ağlarının temel prensipleri, iletişim protokol yapısı ve işlevleri, protokol katmanları ve aralarındaki ilişkileri ve kısmi ağ güvenliği hakkında bilgi sahibi olacaktır.
Ders | Süre | Efor | Tartışma |
---|---|---|---|
Bilgisayar Ağları (Computer Networks) | 46 video | 5 video/hafta | chat |
[Ek Kaynak: Bilgisayar Ağları Ve İnternet - Douglas E. Comer Kitabı] | 662 sayfa | - | chat |
Bu dönem 4 adet seçmeli dersi seçmeli ders listesinden seçmeniz gerekiyor.
Bu dönem 4 adet seçmeli dersi seçmeli ders listesinden seçmeniz gerekiyor.
İlgili dönemlere dair ders seçimlerinizi aşağıdaki listeden yapabilirsiniz.
Bir Bilgisayar Bilimcisi olarak yazılım mühendisliği, kriptografi mühendisliği, sistem ve network mühendisliği, veritabanı mühendisliği vb. pek çok mühendislik alanında kariyerinizi devam ettirebilirsiniz. Bilgisayar Bilimlerinin teorik ayağını Hesaplama Kuramı, Algoritmalar ve Veri Yapıları, Bilişim ve Kodlama Kuramı, Programlama Dilleri gibi çalışma alanları oluştururken, uygulamalı tarafında Yapay Zeka, Bilgisayar Mimarisi ve Mühendisliği, Bilgisayar Grafikleri, Bilimsel Hesaplama, Bilgisayar Ağları, Paralel ve Dağıtık Sistemler, Bilgisayar Güvenliği ve Kriptografi ve Yazılım Mühendisliği gibi alanlar bulunmaktadır.
Bilgisayar Bilimleri matematik'den köken almasıyla pek çok farklı disiplin ve alanla ilişkili bütün haline gelmiştir. Dolayısıyla Bilgisayar Bilimleri eğitimi almak kariyerinizde sadece programlama yapmakla kalmayıp bilgisayarın, programlamanın ve yazılımın arkasındaki tüm gelişimi ve disiplinleri anlayabilmenizi sağlar.
Her ne kadar Türkçe eğitim eklemeyi canı gönülden istesem de bazı dersler için henüz hazırlanmış Türkçe eğitim kaynağı bulunmuyor. Bu konuda yapabileceğiniz en büyük destek, ilgili derslere Türkçe altyazı desteğinde bulunmak veya hazırladığınız Türkçe notları paylaşmak olabilir.
not: müfredat düzeni Türkiye'deki bilgisayar bilimleri eğitimi veren 4 yıllık(8 dönem) lisans bölümlerinin dersleri, Dokuz Eylül Üniversitesi Bilgisayar Bilimleri Lisans bölümü ve OSSU referans alınarak hazırlanılmıştır.
devam edecek..