AKTS - İleri Düzey Ağ Tabanlı Programlama
İleri Düzey Ağ Tabanlı Programlama (CMPE536) Ders Detayları
| Ders Adı | Ders Kodu | Dönemi | Saati | Uygulama Saati | Laboratuar Hours | Kredi | AKTS |
|---|---|---|---|---|---|---|---|
| İleri Düzey Ağ Tabanlı Programlama | CMPE536 | Alan Seçmeli | 3 | 0 | 0 | 3 | 5 |
| Ön Koşul Ders(ler)i |
|---|
| N/A |
| Dersin Dili | İngilizce |
|---|---|
| Dersin Türü | Seçmeli Dersler |
| Dersin Seviyesi | Fen Bilimleri Yüksek Lisans |
| Ders Verilme Şekli | Yüz Yüze |
| Dersin Öğrenme ve Öğretme Teknikleri | Anlatım. |
| Dersin Öğretmen(ler)i |
|
| Dersin Amacı | Bu dersin amacı ileri düzeyde ağ tabanlı programlama konusunda öğrencileri yönlendirmektir. |
| Dersin Eğitim Çıktıları |
Bu dersi başarıyla tamamlayabilen öğrenciler;
|
| Dersin İçeriği | Temel ağ konsepti, ders içeriklerinin uygulanacağı programlama dili hakkında genel bilgilendirme, izlek ve çoklu izlek, kuraldışı durumlar, soket, web soketleri, veri akışımları, dosya akışımları, hafıza girdi/çıktı akışımları, nesne akışımları, istemci ve sunucu tarafı ağ programlama, HTTP ağı, mesaj kuyruğu, senktron ve asenkron iletişim. |
Haftalık Konular ve İlgili Ön Hazırlık Çalışmaları
| Hafta | Konular | Ön Hazırlık |
|---|---|---|
| 1 | Temel Ağ konsepti | Bölüm 1 (Kitap 2) |
| 2 | Ağ iletişim protokolleri ve servisleri | Bölüm 3 (Kitap 1) |
| 3 | Programlama dili ile ilgili konseptlerin gözden geçirilmesi | Bölüm 4 (Kitap 1) |
| 4 | İzlek, koşutzamanlılık ve çoklu izlek | Bölüm 4 (Kitap 1), Bölüm 3 (Kitap 2) |
| 5 | Veri akışımları, akışım filtresi, hafıza girdi/çıktı akışımları | Bölüm 2 (Kitap 2) |
| 6 | Karakter ve nesne akışımları | Bölüm 2 (Kitap 2) |
| 7 | TCP/UDP soket programlama | Bölüm 5 (Kitap 1) |
| 8 | Soket tabanlı istemci-sunucu iletişimi | Bölüm 6 (Kitap 1) |
| 9 | Sunucu tarafı ağ programlama (web ve yerel dilde) | Bölüm 8 (Kitap 1) Ders notları |
| 10 | İstemci tarafı ağ programlama (web ve yerel dilde) | Bölüm 9 (Kitap 1) Ders notları |
| 11 | Senkron ve asenkron iletişim | Bölüm 11 (Kitap 2) |
| 12 | NETTY benzeri iletişim kontrol mekanizması | Ders Notları |
| 13 | Mesaj Kuyruğu (Üretici-tüketici yapılanması) | Ders Notları |
| 14 | Çoklayıcı ve yönlendirici mesa akışımları | Bölüm 13 (Kitap 2) |
| 15 | Gözden geçirme | |
| 16 | Gözden geçirme |
Kaynaklar
| Ders Kitabı | 1. “Advanced Network Programming – Principles and Techniques”, Ciubotaru, Bogdan, Muntean, Gabriel-Miro, ISBN 978-1-4471-5292-7 |
|---|---|
| 2. “Java Network Programming”, 4th edition, Elliotte Rusty Harold, 2013, ISBN-10: 1449357679 |
Değerlendirme System
| Çalışmalar | Sayı | Katkı Payı |
|---|---|---|
| Devam/Katılım | - | - |
| Laboratuar | - | - |
| Uygulama | - | - |
| Alan Çalışması | - | - |
| Derse Özgü Staj | - | - |
| Küçük Sınavlar/Stüdyo Kritiği | - | - |
| Ödevler | - | - |
| Sunum | - | - |
| Projeler | 3 | 30 |
| Rapor | - | - |
| Seminer | - | - |
| Ara Sınavlar/Ara Juri | 1 | 35 |
| Genel Sınav/Final Juri | 1 | 35 |
| Toplam | 5 | 100 |
| Yarıyıl İçi Çalışmalarının Başarı Notu Katkısı | 65 |
|---|---|
| Yarıyıl Sonu Çalışmalarının Başarı Notuna Katkısı | 35 |
| Toplam | 100 |
Kurs Kategorisi
| Temel Meslek Dersleri | X |
|---|---|
| Uzmanlık/Alan Dersleri | |
| Destek Dersleri | |
| İletişim ve Yönetim Becerileri Dersleri | |
| Aktarılabilir Beceri Dersleri |
Dersin Öğrenim Çıktılarının Program Yeterlilikleri ile İlişkisi
| # | Program Yeterlilikleri / Çıktıları | Katkı Düzeyi | ||||
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | ||
| 1 | İleri düzey hesaplama ve/veya bilişim bilgilerini yazılım mühendisliği problemlerini çözmede uygulama becerisi kazanır. | X | ||||
| 2 | Farklı teknolojiler, yazılım mimarileri ve yaşam-döngüsü yaklaşımları kullanarak çözümler geliştirir. | X | ||||
| 3 | Bir yazılım sistemini, bileşenini, sürecini veya programını, modern teknikler ve yazılım mühendisliği uygulamalarına yönelik mühendislik araçlarını kullanarak, tasarlama, gerçekleştirme ve değerlendirme becerisi kazanır. | |||||
| 4 | Yazılım gereksinimlerini anlamak için, veri toplama, analiz etme ve yorumlama becerisi kazanır. | |||||
| 5 | Yazılım projeleri üzerindeki çalışmalar kapsamında ortaya çıkan problemler üzerinde etkin sözlü ve yazılı iletişim ve kritik düşünme becerileri kazanır. | X | ||||
| 6 | Bilim ve teknoloji alanındaki güncel gelişmeleri izlemede bilgiye erişim becerisi kazanır ve yazılım mühendisliği alanında bilimsel araştırma yapar ve bir projeyi gerçekleştirir. | |||||
| 7 | Yazılım Mühendisliği ile ilgili profesyonel, hukuksal, sosyal ve sorumluluklar konularında anlayış edinir. | |||||
| 8 | Proje ve risk yönetim becerisi edinir ve girişimciliğin, yenilikçilik ve sürdürülebilir kalkınmanın önemi, uluslararası standartlar ve yöntemleri hakkında farkındalık kazanır; | |||||
| 9 | Yazılım Mühendisliği çözümlerinin, karar verme boyutunda, küresel, sosyal ve hukuki boyutları üzerindeki etkisini anlar. | |||||
| 10 | Yazılım Mühendisliği uygulamaları için mükemmellik standartlarının geliştirilmesi, benimsenmesi ve sürekli kullanımının desteklenmesi konularında farkındalık kazanır. G | |||||
ECTS/İş Yükü Tablosu
| Aktiviteler | Sayı | Süresi (Saat) | Toplam İş Yükü |
|---|---|---|---|
| Ders saati (Sınav haftası dahildir: 16 x toplam ders saati) | 16 | 3 | 48 |
| Laboratuar | |||
| Uygulama | |||
| Derse Özgü Staj | |||
| Alan Çalışması | |||
| Sınıf Dışı Ders Çalışma Süresi | 16 | 3 | 48 |
| Sunum/Seminer Hazırlama | |||
| Projeler | |||
| Raporlar | |||
| Ödevler | 3 | 4 | 12 |
| Küçük Sınavlar/Stüdyo Kritiği | |||
| Ara Sınavlara/Ara Juriye Hazırlanma Süresi | 1 | 10 | 10 |
| Genel Sınava/Genel Juriye Hazırlanma Süresi | 1 | 10 | 10 |
| Toplam İş Yükü | 128 | ||
