Ders
COE1113180 / COE1213180
PROGRAMLAMAYA GİRİŞ
Bilgisayar Mühendisliği
- TEORİ
- 3
- UYGULAMA
- 2
- KREDİ
- 4
- AKTS
- 6
ÖN KOŞULLAR
Yok
ŞUNLARIN ÖN KOŞULU
- COE1212508İLERİ PROGRAMLAMA
- COE2110759MÜHENDİSLER İÇİN PROGRAMLAMA
- COE2113250NESNE TABANLI PROGRAMLAMA
- COE2233850VERİ YAPILARI
- COE3114266ROBOTİK VE AKILLI SİSTEMLER
- COE3149640VERİ HABERLEŞME VE BİLGİSAYAR AĞLARI
- COE3168050YAPAY SİNİR AĞLARI
- COE3268010DERİN ÖĞRENMEYE GİRİŞ
- COE4167890BİÇİMSEL DİLLERE VE AUTOMATA TEORİSİNE GİRİŞ
OKUTULDUĞU PROGRAMLAR
AMAÇ
Bu ders, Pyhton programlama dilini kullanarak önceden programlama deneyimi çok az olan veya hiç olmayan öğrenciler için programlama, problem çözme ve algoritma geliştirmenin temellerini tanıtır. Bu dersin amacı, öğrencileri daha ileri programlama derslerine hazırlamak ve bunun yanında ders çalışmaları ve mesleki işleri için program yazmak isteyen öğrenciler için bağımsız bir ders olarak problem çözme ve mühendislikte hesaplama anlayışı sağlamaktır. Ders, temel kavram ve yapıları öğrettikten sonra, problem odaklı bir şekilde yapılandırılmış programlama, algoritmik ve nesne tabanlı düşünmeyi vurgular. Ders bilgisayarlara, programlama dillerine ve Python'a giriş; temel programlama, seçimler, veri türleri, diziler, yineleme, işlevler, GUI'ler (grafiksel kullanıcı arabirimleri), nesneler ve sınıflar, kalıtım ve çok biçimlilik, listeler (diziler) ve çok boyutlu listeler, kümeler ve sözlükler, dosyalar, istisnalar ve özyineleme konularını içerir. Haftalık laboratuvarlar ve farklı problemler içeren ödevler, alıştırmalar ve kodlama çalışmaları, öğrencilerin programlama becerilerini ve akıcılığını artıracaktır.
İÇERİK
Bu ders; Bilgisayarlar, programlamaya ve Python'a giriş,Temel programlama,Matematiksel fonksiyonlar, karakter dizileri ve nesneler,Seçim ifadeleri,Döngüler,Döngüler,Fonksiyonlar,Listeler, Çok boyutlu Listeler, Tuples, Kümeler ve Sözlükler,Temel GUI Programlama,İleri GUI Programlama,Kalıtım ve Çok Biçimlilik,Dosyalar ve Hata Yakalama,Özyineleme,Verimli Algoritma Geliştirme; konularını içermektedir.
ÖĞRENME KAZANIMLARI
TR GÜNCELLENMEDİ- 1
Understand programming concepts and techniques using Python Language.
Öğretim yöntemi: Tartışma Yöntemi, Bireysel Çalışma Yöntemi, Deneyimle Öğrenme Modeli · Değerlendirme: Klasik Yazılı Sınav, Ödev
- 2
Use control statements, loops, functions, and lists.
Öğretim yöntemi: Tartışma Yöntemi, Örnek Olay Yöntemi, Soru - Cevap Tekniği, Deneyimle Öğrenme Modeli · Değerlendirme: Klasik Yazılı Sınav, Ödev, Proje Görevi
- 3
Understand the differences between procedural and object-oriented paradigms.
Öğretim yöntemi: Tartışma Yöntemi, Örnek Olay Yöntemi, Soru - Cevap Tekniği, Deneyimle Öğrenme Modeli · Değerlendirme: Klasik Yazılı Sınav, Ödev, Proje Görevi
- 4
Develop custom classes using encapsulation, polymorphism, inheritance, and abstraction.
Öğretim yöntemi: Tartışma Yöntemi, Örnek Olay Yöntemi, Bireysel Çalışma Yöntemi, Soru - Cevap Tekniği, Beyin Fırtınası Tekniği, Deneyimle Öğrenme Modeli · Değerlendirme: Klasik Yazılı Sınav, Ödev, Proje Görevi
- 5
Learn how to use files, exceptions and build GUIs.
Öğretim yöntemi: Tartışma Yöntemi, Örnek Olay Yöntemi, Bireysel Çalışma Yöntemi, Soru - Cevap Tekniği, Beyin Fırtınası Tekniği, Deneyimle Öğrenme Modeli · Değerlendirme: Klasik Yazılı Sınav, Ödev, Proje Görevi
- 6
Analyze and design strategies for solving basic programming problems.
Öğretim yöntemi: Tartışma Yöntemi, Örnek Olay Yöntemi, Bireysel Çalışma Yöntemi, Soru - Cevap Tekniği, Deneyimle Öğrenme Modeli · Değerlendirme: Klasik Yazılı Sınav, Ödev, Proje Görevi
HAFTALIK PLAN
- HAFTA 1
Bilgisayarlar, programlamaya ve Python'a giriş
- HAFTA 2
Temel programlama
- HAFTA 3
Matematiksel fonksiyonlar, karakter dizileri ve nesneler
- HAFTA 4
Seçim ifadeleri
- HAFTA 5
Döngüler
- HAFTA 6
Döngüler
- HAFTA 7
Fonksiyonlar
- HAFTA 8
Listeler, Çok boyutlu Listeler, Tuples, Kümeler ve Sözlükler
- HAFTA 9
Temel GUI Programlama
- HAFTA 10
İleri GUI Programlama
- HAFTA 11
Kalıtım ve Çok Biçimlilik
- HAFTA 12
Dosyalar ve Hata Yakalama
- HAFTA 13
Özyineleme
- HAFTA 14
Verimli Algoritma Geliştirme
DEĞERLENDİRME
- Ara Sınavın Başarıya Oranı30%
- Genel Sınavın Başarıya Oranı70%
İŞ YÜKÜ
| ETKİNLİK | SAYI | SAAT | TOPLAM |
|---|---|---|---|
| Ders Saati | 42 | 1 | 42 |
| Rehberli Problem Çözme | 10 | 7 | 70 |
| Problem Çözümü / Ödev / Proje / Rapor Tanzimi | 8 | 3 | 24 |
| Okul Dışı Diğer Faaliyetler | 0 | 0 | 0 |
| Proje Sunumu / Seminer | 0 | 0 | 0 |
| Kısa Sınav (QUİZ) ve Hazırlığı | 2 | 5 | 10 |
| Ara Sınav ve Hazırlığı | 1 | 22 | 22 |
| Genel Sınav ve Hazırlığı | 1 | 22 | 22 |
| Performans Görevi, Bakım Planı | 0 | 0 | 0 |
KAYNAKLAR
- - Y. Daniel Liang, Introduction to Programming Using Python, 2nd Ed., Pearson, 2019. - Allen B. Downey, Think Python How to Think Like a Computer Scientist 2nd Edition, OReilly Media, 2015.
- Derste dağıtılacaktır.
ÖĞRETİM ELEMANLARI
- Prof.Dr. Selim AKYOKUŞKOORDİNATÖR
- Prof.Dr. Selim AKYOKUŞ
- Malik GEYLANİ