Bilgisayar Programcılığı
Dersin Ayrıntıları

KTO KARATAY ÜNİVERSİTESİ
Ticaret ve Sanayi Meslek Yüksekokulu
Bilgisayar Programcılığı Programı
Ders Bolognaları
Ticaret ve Sanayi Meslek Yüksekokulu
Bilgisayar Programcılığı Programı
Ders Bolognaları

| Ders Kodu | Ders Adı | Yıl | Dönem | Yarıyıl | T+U+L | Kredi | AKTS |
|---|---|---|---|---|---|---|---|
| 03841201 | İleri Bilgisayar Programlama | 2 | Bahar | 4 | 2+1+0 | 5 | 5 |
| Dersin Türü | Seçmeli |
| Dersin Düzeyi | Önlisans (TYYÇ: 5. Düzey / QF-EHEA: Kısa Düzey / EQF-LLL: 5. Düzey) |
| Dersin Dili | Türkçe |
| Yöntem ve Teknikler | - |
| Dersin Veriliş Şekli | Yüz Yüze |
| Ön Koşullar | - |
| Dersin Koordinatörü | - |
| Dersi Veren(ler) | Öğr.Gör. Abubakar MAYANJA |
| Yardımcı(lar) | - |
Dersin Öğretim Eleman(lar)ı
| Adı Soyadı | Oda No. | E-Posta Adresi | Dahili | Görüşme Saatleri |
|---|---|---|---|---|
| Öğr.Gör. Abubakar MAYANJA | TSMYO-T213 | [email protected] | 7829 | Çarşamba 12:00 - 01:00 |
Dersin İçeriği
Temel Python Yapıları (Değişkenler, döngüler, koşullu ifadeler, fonksiyonlar) / Nesne Yönelimli Programlama
Dersin Amacı
Dersin amacı, öğrencilerin python yeteneklerini farklı alanlarda kullanmalarını sağlamaktır.
Dersin Alan Öğretimini Sağlamaya Yönelik Katkısı
| Temel Meslek Dersleri | |
| Uzmanlık / Alan Dersleri | X |
| Destek Dersleri | |
| Aktarılabilir Beceri Dersleri | X |
| Beşeri, İletişim ve Yönetim Becerileri Dersleri |
Dersin Öğrenim Kazanımlarının Program Kazanımları ile Olan İlişkileri
| İlişki Düzeyleri | ||||
| En Düşük | Düşük | Orta | Yüksek | En Yüksek |
| 1 | 2 | 3 | 4 | 5 |
| # | Program Yeterlilikleri | Düzey |
|---|---|---|
| P11 | Algoritma ve veri yapılarını oluşturur ve matematiksel hesapları yapar. | 4 |
| P12 | Web programlama teknolojilerini açıklar ve uygular. | 4 |
Dersin Öğrenim Kazanımları
| Bu dersin başarılı bir şekilde tamamlanmasıyla öğrenciler şunları yapabileceklerdir: | |||
|---|---|---|---|
| No | Öğrenme Çıktıları | Prog. Yet. İlişkisi | Ölçme Yöntemi ** |
| Ö1 | Bilgisayar temel elemanlarını bilir. | P.1.1 | 7 |
| Ö2 | İnternet kullanımını ve araştırma yapmayı bilir. | P.1.2 | 3 |
| Ö3 | Bilgi teknolojileri ve bilgisayar sistemlerinin temel kavramlarını tanımlayabilme ve bu kavramlar arasındaki ilişkileri açıklayabilme. | P.20.1 | 1 |
| Ö4 | Temel yazılım uygulamalarını (örneğin sunum yazılımı vb.) etkin bir şekilde kullanabilme ve bu araçlarla profesyonel belgeler hazırlayabilme. | P.20.2 | 7 |
| Ö5 | İnternet ve web teknolojilerini kullanarak bilgi arama, bilgiye erişme ve bilgiyi güvenli bir şekilde paylaşma becerisi geliştirebilme. | P.20.3 | 3 |
| Ö6 | Veri güvenliği, etik ve gizlilik konularında bilinçli olma ve bu ilkeleri uygulayabilme. | P.20.4 | 4 |
| Ö7 | Bilgisayar programlama ve algoritma mantığını temel seviyede kavrayarak basit programlar yazabilme. | P.20.5 | 7 |
| Ö8 | Bilgi teknolojilerinin farklı disiplinlerdeki uygulamalarını anlama ve bu teknolojilerin potansiyel etkilerini değerlendirebilme. | P.20.6 | 1 |
| ** Yazılı Sınav: 1, Sözlü Sınav: 2, Ev Ödevi: 3, Lab./Sınav: 4, Seminer/Sunum: 5, Dönem Ödevi: 6, Uygulama: 7 | |||
Dersin Haftalık İçeriği
| Hafta | Konu |
|---|---|
| 1 | Koleksiyonlar ve İteratörler(Listelerin, demetlerin, küme ve sözlüklerin ileri düzey kullanımı Özel iteratörler ve jeneratörler) |
| 2 | Veri Sınıfları(Veri sınıflarına giriş (dataclasses modülü) Veri sınıfları ile geleneksel sınıflar arasındaki karşılaştırma) |
| 3 | Veri Sınıfları: Veri sınıflarına giriş (dataclasses modülü) Veri sınıfları ile geleneksel sınıflar arasındaki karşılaştırma |
| 4 | (Nesne Yönelimli Programlama)Metaklaslar ve Dekoratörler: Metaklasları anlama Fonksiyonlar ve sınıflar için dekoratörlerin oluşturulması ve kullanılması |
| 5 | (Fonksiyonel Programlama) Fonksiyonel Programlama Kavramları: Birinci sınıf fonksiyonlar, yüksek seviyeli fonksiyonlar Lambda fonksiyonları ve liste anlama |
| 6 | (Fonksiyonel Programlama) Modüller ve Paketler: Python projelerinin yapılandırılması Paketlerin kullanımı ve oluşturulması, sanal ortamlar ve bağımlılıklar |
| 7 | Ara Sinav |
| 8 | (Eşzamanlılık ve Paralellik) İş Parçacığı ve Çok İşlem Global Yorumlayıcı Kilidi (GIL) hakkında anlayış İş parçacığı ve çok işlem uygulamaları |
| 9 | (Hata Yönetimi ve Test) İstisna Yönetimi İleri düzey hata yönetimi teknikleri Özel istisnaların oluşturulması |
| 10 | (Hata Yönetimi ve Test) Test Etme ve Hata Ayıklama unittest ve pytest ile birim testi Test odaklı geliştirme (TDD) kavramları |
| 11 | (Web Geliştirme ve API'ler) Web Çerçeveleri Flask veya Django ile web uygulamalarına genel bakış Flask ile RESTful API'lerin oluşturulması |
| 12 | (Web Geliştirme ve API'ler) API Tüketimi requests kütüphanesi ile web API'lerinin tüketimi Python'da JSON verileri ile çalışma |
| 13 | Veri İşleme ve Görselleştirme,Makine Öğrenimi Temelleri, Python uygulamalarının dağıtımı (Docker, bulut platformları) Sürekli entegrasyon ve dağıtım uygulamaları |
| 14 | Final Sinav |
Ders Kitabı veya Malzemesi
| Kaynaklar | Programming Python, 4th Edition [Book] - O'Reilly |
| Fluent Python" by Luciano Ramalho, "Python Cookbook" by David Beazley, |
Değerlendirme Yöntemi ve Geçme Kriterleri
| Yarıyıl Çalışmaları | Sayısı | Katkı (%) |
|---|---|---|
| Devam | - | - |
| Laboratuvar | - | - |
| Uygulama | - | - |
| Alan Çalışması | - | - |
| Derse Özgü Staj (Varsa) | - | - |
| Ödev | 2 | 20 (%) |
| Sunum | - | - |
| Projeler | - | - |
| Seminer | - | - |
| Kısa sınav (Quiz) | - | - |
| Dinleme | - | - |
| Ara Sınavlar | 1 | 30 (%) |
| Yarıyıl Sonu Sınavı | 1 | 50 (%) |
| Toplam | 100 (%) | |
AKTS / Çalışma Yükü Tablosu
| Etkinlik | Sayı | Süre | Toplam İş Yükü (Saat) |
|---|---|---|---|
| Ders Hafta Sayısı ve Saati | 14 | 4 | 56 |
| Sınıf Dışı Ders Çalışma Süresi (Ön çalışma, Kütüphane, Pekiştirme) | 14 | 3 | 42 |
| Ara Sınav | 1 | 15 | 15 |
| Kısa Sınav | 0 | 0 | 0 |
| Ödev | 0 | 0 | 0 |
| Uygulama | 14 | 1 | 14 |
| Laboratuvar | 14 | 1 | 14 |
| Proje | 0 | 0 | 0 |
| Atölye | 0 | 0 | 0 |
| Sunum/Seminer Hazırlama | 0 | 0 | 0 |
| Alan Çalışması | 0 | 0 | 0 |
| Dönem Sonu Sınavı | 1 | 15 | 15 |
| Diğer | 0 | 0 | 0 |
| Toplam İş Yükü: | 156 | ||
| Toplam Yük / 30 | 5,20 | ||
| Dersin AKTS Kredisi: | 5 | ||
Ders - Öğrenme Çıktıları İlişkisi
| İlişki Düzeyleri | ||||
| En Düşük | Düşük | Orta | Yüksek | En Yüksek |
| 1 | 2 | 3 | 4 | 5 |
| # | Öğrenme Çıktıları | P1 | P20 |
|---|---|---|---|
| Ö1 | Bilgisayar temel elemanlarını bilir. | 3 | - |
| Ö2 | İnternet kullanımını ve araştırma yapmayı bilir. | 4 | - |
| Ö3 | Bilgi teknolojileri ve bilgisayar sistemlerinin temel kavramlarını tanımlayabilme ve bu kavramlar arasındaki ilişkileri açıklayabilme. | - | 5 |
| Ö4 | Temel yazılım uygulamalarını (örneğin sunum yazılımı vb.) etkin bir şekilde kullanabilme ve bu araçlarla profesyonel belgeler hazırlayabilme. | - | 5 |
| Ö5 | İnternet ve web teknolojilerini kullanarak bilgi arama, bilgiye erişme ve bilgiyi güvenli bir şekilde paylaşma becerisi geliştirebilme. | - | 5 |
| Ö6 | Veri güvenliği, etik ve gizlilik konularında bilinçli olma ve bu ilkeleri uygulayabilme. | - | 5 |
| Ö7 | Bilgisayar programlama ve algoritma mantığını temel seviyede kavrayarak basit programlar yazabilme. | - | 5 |
| Ö8 | Bilgi teknolojilerinin farklı disiplinlerdeki uygulamalarını anlama ve bu teknolojilerin potansiyel etkilerini değerlendirebilme. | - | 3 |
