Bilgisayar Programcılığı (İÖ) | |||||
Önlisans | TYYÇ: 5. Düzey | QF-EHEA: Kısa Düzey | EQF-LLL: 5. Düzey |
Ders Kodu: | BIL102 | ||||
Ders İsmi: | Temel Programlama 2 (C) | ||||
Ders Yarıyılı: | Bahar | ||||
Ders Kredileri: |
|
||||
Öğretim Dili: | |||||
Ders Koşulu: | |||||
Ders İş Deneyimini Gerektiriyor mu?: | Hayır | ||||
Dersin Türü: | Zorunlu | ||||
Dersin Seviyesi: |
|
||||
Dersin Veriliş Şekli: | E-Öğrenme | ||||
Dersin Koordinatörü: | Öğr. Gör. NEDA DADASHKHANI | ||||
Dersi Veren(ler): | Öğr. Gör. Ahmet Selim Över | ||||
Dersin Yardımcıları: |
Dersin Amacı: | Bu ders, C programlama dili kullanılarak, bilgisayar programcılığında çok az ya da hiç deneyime sahip olmayan öğrencileri bilişimsel düşünmeye ve bunun yanı sıra yazılım geliştirmeye hazırlamayı hedefleyen bir derstir. Derste C dilini oluşturan öğelerin yanı sıra programlama mantığını ve yazılım geliştirmenin temelleri de öğretilecektir. |
Dersin İçeriği: | Temel bilgisayar kavramları, Programlamanın temelleri, Değişkenler, İfadeler, Fonksiyonlar, Şartlı ifadeler, Özyineleme, Bereketli fonksiyonlar, Tekrarlamalar, Döngüler, Sicimler, Listeler, Sözlükler, Tanımlama grupları. |
Bu dersi başarıyla tamamlayabilen öğrenciler;
1) Temel bilgisayar ve programlama kavramlarını öğrenir. 2) Bilgisayar programlamanın temellerini öğrenir. 3) Bilimsel düşünme yeteneği kazanır. 4) Bilişimsel problemleri anlar 5) Problemleri bilgisayar yardımıyla çözme becerileri edinir. 6) C programlama dili ile programlama tekniklerini öğrenir. 7) Algoritmik yaklaşım geliştirme becerisi edinir. |
Hafta | Konu | Ön Hazırlık |
1) | Dersin tanıtımı, öğretim elemanıyla tanışma, temel bilgisayar kavramları (Merkezi işlem birimi, hafıza, yedekleme, işletim sistemi, algoritma, yazılım, programlama ile tanışma, vs.). | 1 |
2) | Programlamanın temelleri, değişkenler, ifadeler, deyimler. | 1,3 |
3) | Programlamanın temelleri, değişkenler, ifadeler, deyimler (devam). | 1,3,4 |
4) | Operatörler ve İfadeler | 2,3,4 |
5) | Veri Türleri ve Giriş / Çıkış Operatörleri | 2,3,4 |
6) | Kontrol İfadeleri ve Karar Verme | 2,5,6 |
7) | Diziler ve Dizeler | 2,5,6 |
8) | Vize | 1-7. Haftalar |
9) | İşaretçiler | 4,5,6,7 |
10) | Yapılar ve Birlikler | 4,5,6,7 |
11) | Fonksiyonlar | 6,7 |
12) | Depolama Sınıfları | 6,7 |
13) | Dinamik Bellek Tahsisi ve Bağlantılı Liste | 5,6,7 |
14) | Dosya yönetimi | 2,4,5,7 |
15) | Final Sınavı | 1-14. Haftalar |
Ders Notları / Kitaplar: | C Programming: A Modern Approach, 2nd Edition (2008) - K. N. King, Publisher: W. W. Norton & Company (ISBN: 9780393979503). |
Diğer Kaynaklar: | (Yardımcı Kitap) Programlamaya Giriş Ders Notları H. Turgut Uyar Şubat 2004 |
Ders Öğrenme Kazanımları | 1 |
2 |
3 |
4 |
5 |
6 |
7 |
||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Program Kazanımları | |||||||||||||
1) Problem çözme ve analitik düşünme yeteneklerini kazanır. | |||||||||||||
2) Bilgisayar programlama, donanım ve yazılım temellerini, temel bilgisayar kavramlarını öğrenir. | |||||||||||||
3) Problemlere göre algoritmalar geliştirir, temel algoritmalardan problemine uygun olanları ayırt etme becerisi kazanır. | |||||||||||||
4) Nesneye yönelik programlama konseptini ve web programlamayı kavrar. | |||||||||||||
5) Sayı tabanı sistemleri, temel elektronik ve bilgisayar donanımı bilgisini öğrenir. | |||||||||||||
6) Mobil programlama becerisi edinir, mobil platformlar için uygulamalar geliştirir. | |||||||||||||
7) Veritabanı tasarım ve kodlamasını yapar. | |||||||||||||
8) Bilgisayar ağları, açık kaynak kodlu işletim sistemleri programlamayı ve kullanmayı öğrenir. | |||||||||||||
9) İngilizce dilini etkin bir biçimde kullanır. | |||||||||||||
10) Programlamanın ihtiyaçlarına göre uygun veri yapıları kullanmayı öğrenir. | |||||||||||||
11) Bireysel ya da takım olarak yazılım geliştirir. | |||||||||||||
12) Alanındaki gelişmeleri, son teknoloji araçlarını/uygulamalarını takip eder. | |||||||||||||
13) Mesleki ve etik sorumluluk bilinci kazanır, meslek etiği farkındalığına sahiptir. |
Etkisi Yok | 1 En Düşük | 2 Orta | 3 En Yüksek |
Dersin Program Kazanımlarına Etkisi | Katkı Payı | |
1) | Problem çözme ve analitik düşünme yeteneklerini kazanır. | 3 |
2) | Bilgisayar programlama, donanım ve yazılım temellerini, temel bilgisayar kavramlarını öğrenir. | 3 |
3) | Problemlere göre algoritmalar geliştirir, temel algoritmalardan problemine uygun olanları ayırt etme becerisi kazanır. | 3 |
4) | Nesneye yönelik programlama konseptini ve web programlamayı kavrar. | 3 |
5) | Sayı tabanı sistemleri, temel elektronik ve bilgisayar donanımı bilgisini öğrenir. | 3 |
6) | Mobil programlama becerisi edinir, mobil platformlar için uygulamalar geliştirir. | 3 |
7) | Veritabanı tasarım ve kodlamasını yapar. | 3 |
8) | Bilgisayar ağları, açık kaynak kodlu işletim sistemleri programlamayı ve kullanmayı öğrenir. | 3 |
9) | İngilizce dilini etkin bir biçimde kullanır. | 3 |
10) | Programlamanın ihtiyaçlarına göre uygun veri yapıları kullanmayı öğrenir. | 3 |
11) | Bireysel ya da takım olarak yazılım geliştirir. | 3 |
12) | Alanındaki gelişmeleri, son teknoloji araçlarını/uygulamalarını takip eder. | 3 |
13) | Mesleki ve etik sorumluluk bilinci kazanır, meslek etiği farkındalığına sahiptir. | 3 |
Yarıyıl İçi Çalışmaları | Aktivite Sayısı | Katkı Payı |
Ödev | 1 | % 15 |
Ara Sınavlar | 1 | % 35 |
Final | 1 | % 50 |
Toplam | % 100 | |
YARIYIL İÇİ ÇALIŞMALARININ BAŞARI NOTU KATKISI | % 50 | |
YARIYIL SONU ÇALIŞMALARININ BAŞARI NOTUNA KATKISI | % 50 | |
Toplam | % 100 |
Aktiviteler | Aktivite Sayısı | Aktiviteye Hazırlık | Aktivitede Harçanan Süre | Aktivite Gereksinimi İçin Süre | İş Yükü | ||
Ders Saati | 3 | 13 | 1 | 42 | |||
Ödevler | 1 | 20 | 1 | 21 | |||
Ara Sınavlar | 1 | 25 | 2 | 27 | |||
Final | 1 | 35 | 2 | 37 | |||
Toplam İş Yükü | 127 |