C Programlama Dili ile Algoritma, Veri Yapıları ve İleri Konular
2 000 USD
Bilgisayar Mühendisliği, Yazılım Mühendisliği ve Bilgisayar Programcılığı
İçerik, bilgisayar mühendisliği, yazılım mühendisliği ve bilgisayar programcılığı bölümlerindeki ders konularıyla uyumlu olarak algoritma, veri yapıları ve süreç modellemeyi kapsayacak şekilde sunulacaktır. Ayrıca eğitim boyunca gerçek iş dünyası senaryoları da paylaşılacaktır.
Bu eğitim ile programlama dilinin sadece bir araç olduğunu öğreneceksiniz.
Bu anlamda burada edinilen bilgiler, Java ve .NET platformlarında yazılan kodları da anlaşılır hale getirecektir.
Algoritmaya Giriş
Temel konuların ele alınacağı bu bölümde, algoritmaya dair bir bakış açısı geliştireceksiniz. Bilgisayarın, yazılım geliştiricinin emrinde bir cihazdan başka bir şey olmadığını ve geliştirilen yazılımın kalitesinin, geliştiricinin kalitesiyle doğru orantılı olduğunu göreceksiniz. Bu bölümde parametrik çalışma metodolojisi ve "Kod bir kez yazılmaz" felsefesi de aktarılacaktır.
Akış Diyagramları
"Akışı çizilemeyen düşünce kodlanamaz" ilkesinden yola çıkarak, her problemin akışının çizileceği bölümdür. Bu yaklaşım, yazılım projelerinde personel değişikliğini veya proje devrini kolaylaştırır. Tüm yazılım geliştiricilerin standartlara göre hareket etmesi, yazılım endüstrisinin gelişmesine katkı sağlayacaktır. Bu durum elbette yazılım çalışanlarına da olumlu yönde etki edecektir.
Dizi (Array), Yığın (Stack) ve Kuyruk (Queue) Veri Yapıları
Doğrusal veri yapılarıyla ilgili örnekler geliştirilecektir.
- Öncelik tabanlı hesap makinesi (infix-postfix)
- Sıralama algoritmaları
İşaretçiler (Pointers)
İşaretçi aritmetiği ve değişken kavramları derinlemesine ele alınacaktır. İşaretçi kavramı unutulmayacak şekilde öğretilecektir.
Bağlaçlı Liste (Linked List)
Bağlaçlı liste ile ilgili örnekler geliştirilecektir.
Özyinelemeli (Recursive) Yaklaşım
Bu bölüm, kendi kendini çağıran fonksiyonları (özyinelemeli fonksiyonlar) derinlemesine kapsar.
İkili Ağaç Yapısı (Binary Tree)
Bu bölümde, ağaç yapısının özyinelemeli metodolojiyle eş anlamlı olduğu netleştirilecektir.
B / B+ Ağaç Yapısı (Tüm veritabanlarında kullanılan iç veri yapısı)
Dünyadaki tüm ilişkisel veritabanlarında (Oracle, MSSQL, MySQL vb.) bulunan ağaç yapısı bu bölümde açıklanacak ve kodlanacaktır.
En Kısa Yol (Shortest Path) Algoritması
Algoritma ve Veri Yapıları içinde önemli bir yere sahip olan bu çalışmada, en kısa yol algoritması açıklanacak ve kodlanacaktır.
Çevirici Algoritması (Bir dilden başka bir dile çeviri)
Bu konu genellikle üniversitelerde Derleyici Tasarımı (Compiler Construction) derslerinde ele alınır. Bu bölümde, bir çeviricinin nasıl geliştirileceği tartışılacak ve ardından bir örnek uygulama geliştirilecektir.
İş Süreçleri Yönetimi (BPMN) – (Proje yöneticisi olmak isteyenler için olmazsa olmazdır)
Pek çok kişi şu sözü duymuştur: "Zaten kod yazmayacağız. Yönetici olacağız."
Ancak gerçek şu ki: "Hakim olunmayan bir alanda proje yönetilemez."
Bu nedenle bu bölümde, takım çalışmalarında süreç akış şemalarının nasıl hazırlanacağı ve sağladığı faydalar üzerinde durulacaktır. Uluslararası geçerliliği olan OCEB sertifikasyonuna göre akış şeması çalışmaları yapılacaktır. Burada örnek bir proje başından sonuna kadar tasarlanacaktır.
Nesneye Dayalı Mimari (Object-Oriented Architecture)
Bu modülde, nesneye dayalı mimari unutulmayacak şekilde öğrenilecektir. Tasarım şablonlarının (Design Patterns) da aktarıldığı bu modül ile nesneye dayalı programlama dilleri hakkında daha net bir fikir sahibi olunacaktır.
Kodun Sanatla Buluştuğu Nokta
Herkes bir dil konuşur ama herkes şiir yazamaz.
Herkes kod yazar ama herkes şiir gibi kod yazamaz.
Ancak, kod geliştirmeyi sanat gibi yapmak öğrenilebilir.
Kaliteli yazılım, sadece bilgisayarın anlayabileceği değil, aynı zamanda insanların da anlayabileceği yazılımdır.
Bu çalışmanın sonunda, aşağıdaki niteliklere sahip kod geliştirme tekniklerini kazanmış olacaksınız:
- Yüksek okunabilirliğe sahip,
- Belirsizlik içermeyen,
- Standartlara uygun,
- Diğer geliştiriciler tarafından da anlaşılabilir,
sonuç olarak, bir sanat eseri niteliğinde kod yazabileceksiniz.
Yorumlar
Henüz yorum yok.