PROGRAMLAMA EĞİTİMİ
Programlama dilleri çoktur ama temelleri aynıdır. Değişken bir kutu, koşul bir karar noktası, döngü tekrarlama, fonksiyon yeniden kullanılabilir bir parça. Bu temelleri kavrayan kişi yeni bir dile geçtiğinde sözdiziminden başka bir şey öğrenmez. Çoğu yeni başlayan dilin söz dizimini ezberlemeye odaklanır ve mantığı atlar — sonra dili değişince sıfırdan başlar.
Programlama Eğitimi, programlama temellerini dil-bağımsız katılımcıya kazandırır. Algoritma kavramı, sözde kod (pseudocode), akış şemaları, değişkenler ve veri türleri, operatörler, koşullar (if-else), döngüler (for, while), fonksiyonlar (parametre, dönüş değeri), diziler ve listeler, basit veri yapıları (stack, queue), hata ayıklama (debugging) ve problem çözme yaklaşımı işlenir.
Programlama Eğitimi, yazılıma yeni başlayanlar, kariyer değişikliği yapanlar, lise ve üniversite öğrencileri, dijital dönüşüm sürecindeki çalışanlar ve teknik ekiple iletişimi geliştirmek isteyen profesyoneller için tasarlanmıştır. Eğitim sonunda katılımcı, herhangi bir dile hızlı geçiş yapabilecek mantık altyapısına sahiptir.
Ön Koşullar
Programlama Eğitimi için ön koşul yoktur. Temel bilgisayar kullanımı yeterlidir. Mantık ve problem çözme yeteneği avantajdır.
Kimler Katılmalı
- Yazılıma Yeni Başlayanlar: Programlama mantığını sıfırdan öğrenmek isteyenler
- Kariyer Değişikliği Yapanlar: Yazılım sektörüne giriş yapacak profesyoneller
- Üniversite Öğrencileri: Bilgisayar, mühendislik veya temel programlama derslerini destekleyenler
- Dijital Dönüşüm Sürecindeki Çalışanlar: Teknik temel ihtiyacı olan profesyoneller
- Teknik Ekibe Yakın Çalışan Yöneticiler: Geliştiricilerle ortak dil kurmak isteyenler
- Otomasyon Yazmak İsteyen Analistler: Tekrarlanan görevleri kodla çözenler
- Lise Öğrencileri: Üniversite öncesi yazılım kariyerine ilgi duyanlar
Eğitim Yöntemi
Sunum, akış şeması ve sözde kod atölyesi, gerçek problem çözme egzersizi, kod editörü pratiği ve katılımcının kendi mini problemini çözme çalışması ile yürür.
Kazanımlar
- Algoritma Kavramı: Problemi adımlara bölme disiplini
- Sözde Kod ve Akış Şeması: Çözümü dil-bağımsız ifade etme
- Değişken ve Veri Türleri: Veri saklama ve manipüle etme
- Koşullar ve Döngüler: if-else, for, while ile kontrol akışı
- Fonksiyon Yazımı: Parametre, dönüş değeri, yeniden kullanılabilirlik
- Veri Yapıları: Dizi, liste, stack, queue mantığı
- Hata Ayıklama (Debugging): Hatayı izleyip düzeltme refleksi
Eğitim Süresi
3 Gün (24 Saat). Kurumsal talebe göre 2 günlük yoğun veya 5 günlük detaylı versiyon olarak planlanabilir.
Programlama Eğitimi İçeriği
1. Programlamaya Giriş
- Bilgisayarın yazılım ile konuşması
- Programlamanın günlük hayata etkisi
- Düşük ve yüksek seviyeli dil ayrımı
- Yorumlayıcı ve derleyici farkı
2. Hesaplama Düşüncesi
- Problemi parçalara ayırma
- Soyutlama becerisi
- Örüntü tanıma
- Algoritma tasarlama yaklaşımı
3. Algoritma Temelleri
- Algoritma nedir
- Adım adım çözüm tasarımı
- Doğruluk ve verimlilik
- Karmaşıklık kavramı
- Günlük hayattan algoritma örnekleri
4. Sözde Kod (Pseudocode)
- Sözde kod yazım kuralları
- Dil bağımsız çözüm aktarımı
- Kod ile sözde kod karşılaştırması
- Ekip içi tartışmada sözde kod
5. Akış Şemaları
- Sembol seti
- Başla-bitir, karar, işlem blokları
- Akış şeması ile algoritma görselleştirme
- Yaygın hatalar
6. Geliştirme Ortamı
- Kod editörü seçimi
- IDE ile editör farkı
- İlk programı çalıştırma
- Klasör ve dosya organizasyonu
7. Değişken ve Veri Türleri
- Değişken kavramı ve isimlendirme
- Sayısal, metin ve mantıksal tipler
- Tip dönüşümleri
- Sabitler (constant)
- Kapsam (scope) kavramı
8. Operatörler ve İfadeler
- Aritmetik operatörler
- Karşılaştırma operatörleri
- Mantıksal operatörler
- Operatör öncelik kuralları
9. Giriş ve Çıkış
- Kullanıcıdan veri alma
- Ekrana yazdırma
- Formatlama temelleri
- Etkileşimli program akışı
10. Koşullu Yapılar
- if, else, else if
- İç içe koşul
- Switch-case alternatifi
- Mantıksal kombinasyonlar
- Karar tablosu yaklaşımı
11. Döngüler
- for döngüsü
- while ve do-while
- Sonsuz döngü tehlikesi
- break ve continue
- İç içe döngüler
12. Fonksiyonlar
- Fonksiyon kavramı ve amacı
- Parametre ve dönüş değeri
- Yeniden kullanılabilirlik
- İsimlendirme alışkanlığı
- Tek sorumluluk prensibi
13. Diziler ve Listeler
- Dizi tanımı ve indeks
- Dizi üzerinde döngü
- Dinamik liste yapıları
- Çok boyutlu diziler
- Dizi-fonksiyon ilişkisi
14. String İşlemleri
- Metin değişkenlerle çalışma
- Birleştirme ve parçalama
- Karakter arama ve değiştirme
- Format ile metin üretme
15. Temel Veri Yapıları
- Stack (yığın) mantığı
- Queue (kuyruk) yapısı
- Bağlı liste fikri
- Sözlük (hash map) temelleri
16. Basit Sıralama ve Arama
- Lineer arama
- Binary search mantığı
- Bubble sort
- Sıralama algoritmalarının karşılaştırması
17. Hata Yönetimi
- Hata türleri (sözdizimi, çalışma zamanı, mantık)
- try-catch mantığı
- Hatalı veriye karşı savunma
- Loglama temelleri
18. Debug Etme
- Sistemli debug yaklaşımı
- print-debug ve breakpoint
- Hipotez kurma alışkanlığı
- Stack trace okuma
- Bug'ı tekrarlanabilir yapma
19. Problem Çözme Atölyesi
- FizzBuzz, palindrom, faktöriyel örnekleri
- Problem tanımını berraklaştırma
- Test senaryoları
- İteratif çözüm geliştirme
- Kod inceleme alışkanlığı
20. Bir Sonraki Adım
- Hangi dili seçmeli
- Web, mobil, oyun, veri yönü
- Açık kaynak projeye katılım
- Git ile sürüm kontrolüne başlangıç
- Sürdürülebilir öğrenme planı





