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. | X | ||||
2 | Farklı teknolojiler, yazılım mimarileri ve yaşam-döngüsü yaklaşımları kullanarak çözümler geliştirmek. | 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. | |||||
4 | Yazılım gereksinimlerini anlamak için, veri toplama, analiz etme ve yorumlama becerisi. | |||||
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. | X | ||||
6 | Bilim ve teknoloji alanındaki güncel gelişmeleri izlemede bilgiye erişim becerisi ve yazılım mühendisliği alanında bilimsel araştırma yapmak ve bir projeyi gerçekleştirmek. | |||||
7 | Yazılım Mühendisliği ile ilgili profesyonel, hukuksal, sosyal ve sorumluluklar konularında anlayış. | |||||
8 | Proje ve risk yönetim becerisi; girişimciliğin, yenilikçilik ve sürdürülebilir kalkınmanın önemi hakkında farkındalık; uluslararası standartların ve yöntemlerin bilinmesi. | |||||
9 | Yazılım Mühendisliği çözümlerinin, karar verme boyutunda, küresel, sosyal ve hukuki boyutları üzerindeki etkisini anlamak. | |||||
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. |
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 |