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 |
---|---|---|---|---|---|---|---|
03841199 | Oyun Programlama | 2 | Bahar | 4 | 3+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 | 1. Teorik Anlatım: Konular ders kapsamında teorik olarak anlatılır. Öğrenciler programlamanın temel kavramlarını ve algoritmaların mantığını kavrayabilmeleri için konu anlatımları dinler. 2. Uygulamalı Çalışmalar: Öğrenciler, teorik olarak anlatılan konuların uygulamasını yapmak için ders eğitmeni mentorlüğünde çeşitli örneklerle çalışmalar gerçekleştirir. Kazanımlar elde edilmeye çalışılır. 3. Adım Adım Çözümleme: Karşılaşılan problemler adım adım çözülerek her adımın nasıl işlediği açıklanır. Bu yöntemle öğrencilerin konulara daha hakim olması sağlanır. 4.Gerçek Hayat Örnekleri: Konuların daha iyi anlaşılması için gerçek hayattan örnekler ve problem senaryoları sunulur. Böylece öğrenciler öğrendiklerini pratikte nasıl kullanacağını görür. 5. Laboratuvar Föyleri ve Quizler: Haftalık laboratuvar föyleri ve sınav öncesi quizler ile öğrencilerin ilerlemesi değerlendirilir, konuların anlaşılıp anlaşılmadığı takip edilir. |
Dersin Veriliş Şekli | Yüz Yüze |
Ön Koşullar | Dersin herhangi bir ön koşulu bulunmamaktadır. Tüm öğrencilere temel seviyeden başlanarak eğitim verilmektedir. |
Dersin Koordinatörü | Öğr.Gör. Uğur POLAT |
Dersi Veren(ler) | Öğr.Gör. Uğur POLAT |
Yardımcı(lar) | - |
Dersin İçeriği
1. Oyun Programlamaya Giriş
2. Oyun Motorları ve Araçları
3. Programlama Temelleri ve Oyun Scriptleri
4. Oyun Mekaniği ve Fizik Sistemleri
5. Karakter ve Çevre Tasarımı
6. Kamera ve Kullanıcı Arayüzü (UI)
7. Ses ve Müzik Entegrasyonu
8. Yapay Zeka (AI) ve Karakter Davranışları
9. Çoklu Oyunculu Oyun Geliştirme (Multiplayer)
10. Oyun Performansı ve Optimizasyon
11. Oyun Testi ve Hata Ayıklama
12. Proje Geliştirme ve Sunum
2. Oyun Motorları ve Araçları
3. Programlama Temelleri ve Oyun Scriptleri
4. Oyun Mekaniği ve Fizik Sistemleri
5. Karakter ve Çevre Tasarımı
6. Kamera ve Kullanıcı Arayüzü (UI)
7. Ses ve Müzik Entegrasyonu
8. Yapay Zeka (AI) ve Karakter Davranışları
9. Çoklu Oyunculu Oyun Geliştirme (Multiplayer)
10. Oyun Performansı ve Optimizasyon
11. Oyun Testi ve Hata Ayıklama
12. Proje Geliştirme ve Sunum
Dersin Amacı
Bu dersin amacı, öğrencilere oyun programlamanın temel prensiplerini ve tekniklerini öğretmek; yaratıcı, etkileşimli ve işlevsel oyunlar geliştirme becerisi kazandırmaktır. Ders boyunca öğrenciler, oyun geliştirme süreçlerini kavrayarak karakter hareketi, animasyon, fizik motoru kullanımı, kullanıcı arayüzleri ve oyun mekaniği gibi konularda pratik yapacaklardır.
Öğrenciler, oyun motorları (Unity, Unreal Engine vb.) ve programlama dillerini kullanarak kendi oyun projelerini geliştirecek, oyun tasarımında iş akışlarını öğrenecek ve oyun geliştirme süreçlerinde karşılaşılan problemlere çözüm üretebilme yeteneği kazanacaktır. Dersin sonunda öğrenciler, hem bireysel hem de takım olarak oyun projelerini tasarlayıp geliştirebilecek seviyeye gelecektir.
Bu ders, öğrencilere oyun geliştirme dünyasına sağlam bir giriş yapma fırsatı sunar ve onları sektördeki kariyer fırsatlarına hazırlamayı hedefler.
Öğrenciler, oyun motorları (Unity, Unreal Engine vb.) ve programlama dillerini kullanarak kendi oyun projelerini geliştirecek, oyun tasarımında iş akışlarını öğrenecek ve oyun geliştirme süreçlerinde karşılaşılan problemlere çözüm üretebilme yeteneği kazanacaktır. Dersin sonunda öğrenciler, hem bireysel hem de takım olarak oyun projelerini tasarlayıp geliştirebilecek seviyeye gelecektir.
Bu ders, öğrencilere oyun geliştirme dünyasına sağlam bir giriş yapma fırsatı sunar ve onları sektördeki kariyer fırsatlarına hazırlamayı hedefler.
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 |
---|---|---|
P4 | Mesleği ile ilgili bilişim teknolojilerini (yazılım, program, animasyon vb.) etkin kullanır. | 5 |
P1 | Mesleği ile ilgili temel, güncel ve uygulamalı bilgilere sahip olur. | 5 |
P3 | Mesleği için güncel gelişmeleri ve uygulamaları takip eder, etkin şekilde kullanır. | 5 |
P5 | Mesleki problemleri ve konuları bağımsız olarak analitik ve eleştirel bir yaklaşımla değerlendirme ve çözüm önerisini sunabilme becerisine sahiptir. | 4 |
P6 | Bilgi ve beceriler düzeyinde düşüncelerini yazılı ve sözlü iletişim yolu ile etkin biçimde sunabilir, anlaşılır biçimde ifade eder. | 3 |
P11 | Algoritma ve veri yapılarını oluşturur ve matematiksel hesapları yapar. | 4 |
P14 | Yazılımları test eder ve hataları giderir. | 5 |
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 | Algoritma geliştirmeyi bilir ve algoritmaya uygun veri yapısı oluşturur. | P.4.1 | 1,6,7 |
Ö2 | Bilgisayar temel elemanlarını bilir. | P.1.1 | 1,6,7 |
Ö3 | İnternet kullanımını ve araştırma yapmayı bilir. | P.1.2 | 1,6,7 |
Ö4 | Veri analizi ile ilgili güncel teknikleri bilir. | P.3.1 | 1,6,7 |
Ö5 | Güncel yazılım geliştirme platformlarını bilmeli ve kullanır. | P.3.2 | 1,6,7 |
Ö6 | Yazılımları test eder ve hataları giderir. | P.5.1 | 1,6,7 |
Ö7 | Sorunların tespiti için analitik etkin araştırma ve çözüm tekniklerini bilir. | P.5.2 | 1,6,7 |
Ö8 | MS Office araçlarından en az birini kullanmayı bilir. | P.6.2 | 6,7 |
Ö9 | Proje yönetimi konusunda bilgiye sahiptir. | P.7.1 | 6,7 |
Ö10 | Proje dahilinde sorunlara çözüm önerisi getirir. | P.7.2 | 6,7 |
Ö11 | Proje geliştirme, test ve bakım gibi faklı aşamalarında çalışabilme yeteneğine sahiptir. | P.7.3 | 6,7 |
Ö12 | Bireysel olarak ve çok disiplinli takımlarda etkin çalışır. | P.7.4 | 6,7 |
Ö13 | Alanıyla ilgili çevrimiçi bilgi kaynaklarını, veri tabanlarını ve iletişim kanallarını etkili bir biçimde kullanabilmek. | P.7.5 | 6,7 |
Ö14 | Karmaşık problemleri ele alır ve yaratıcı çözümler üretir | P.3.3 | 6,7 |
Ö15 | Karmaşık problemleri analiz eder ve çözüm stratejileri geliştirir | P.3.4 | 6,7 |
Ö16 | Algoritma geliştirmeyi bilir ve algoritmaya uygun veri yapısı oluşturur. | P.11.1 | 1,6,7 |
Ö17 | Güncel Bilişim Teknolojileri platformlarını bilir ve kullanır. | P.11.2 | 6,7 |
Ö18 | Güncel programlama dilleri hakkında bilgi sahibidir. | P.11.3 | 6,7 |
Ö19 | Yazılımları test eder ve hataları giderir. | P.14.1 | 1,6,7 |
Ö20 | Mesleği ile ilgili temel matematiksel çözümlemeleri yapabilir. | P.1.3 | 1,6,7 |
Ö21 | Güncel yazılım dilleri hakkında bilgi sahibi olur. | P.4.5 | 1,6,7 |
Ö22 | Topluluk önünde kendinden emin bir şekilde konuşur ve sunum yapar | P.6.4 | 6,7 |
Ö23 | Temel analiz bilgilerine sahip olur. | P.3.5 | 1,6,7 |
Ö24 | Dijital Sistemler alanında bilgi sahibidir. | P.11.7 | 6,7 |
Ö25 | Alternatif çözüm yollarını değerlendirir ve en uygun olanını seçer | P.5.3 | 1,6,7 |
Ö26 | Eleştirel düşünme becerilerini kullanarak bilgisayar bilimiyle ilgili konuları ve algoritmaları değerlendirir | P.5.4 | 1,6,7 |
Ö27 | Karar verme süreçlerini etkili bir şekilde yönetir ve uygular | P.5.5 | 1,6,7 |
** 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 | Oyun Programlamaya Giriş |
2 | Oyun Motorları ve Araçları |
3 | Programlama Temelleri ve Oyun Scriptleri |
4 | Oyun Mekaniği ve Fizik Sistemleri |
5 | Karakter ve Çevre Tasarımı |
6 | Kamera ve Kullanıcı Arayüzü (UI) |
7 | Sınav Öncesi Quiz ve Genel Tekrar |
8 | Ara Sınav |
9 | Ses ve Müzik Entegrasyonu |
10 | Yapay Zeka (AI) ve Karakter Davranışları |
11 | Çoklu Oyunculu Oyun Geliştirme (Multiplayer) |
12 | Oyun Performansı ve Optimizasyon |
13 | Oyun Testi ve Hata Ayıklama |
14 | Proje Geliştirme ve Sunum |
15 | Sınav Öncesi Quiz ve Genel Tekrar |
16 | Final Sınavı |
Ders Kitabı veya Malzemesi
Kaynaklar | Jason Gregory, "Game Engine Architecture", 2nd Edition |
Jeremy Gibson Bond, "Introduction to Game Design, Prototyping, and Development". 2nd Edition |
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 | - | - |
Sunum | - | - |
Projeler | 1 | 20 (%) |
Seminer | - | - |
Kısa sınav (Quiz) | 2 | 10 (%) |
Dinleme | - | - |
Ara Sınavlar | 1 | 30 (%) |
Yarıyıl Sonu Sınavı | 1 | 40 (%) |
Toplam | 100 (%) |
AKTS / Çalışma Yükü Tablosu
Etkinlik | Sayı | Süre | Toplam İş Yükü (Saat) |
---|---|---|---|
Ders Hafta Sayısı ve Saati | 16 | 4 | 64 |
Sınıf Dışı Ders Çalışma Süresi (Ön çalışma, Kütüphane, Pekiştirme) | 14 | 2 | 28 |
Ara Sınav | 1 | 7 | 7 |
Kısa Sınav | 2 | 1 | 2 |
Ödev | 0 | 0 | 0 |
Uygulama | 0 | 0 | 0 |
Laboratuvar | 0 | 0 | 0 |
Proje | 1 | 30 | 30 |
Atölye | 0 | 0 | 0 |
Sunum/Seminer Hazırlama | 1 | 2 | 2 |
Alan Çalışması | 0 | 0 | 0 |
Dönem Sonu Sınavı | 1 | 16 | 16 |
Diğer | 0 | 0 | 0 |
Toplam İş Yükü: | 149 | ||
Toplam Yük / 30 | 4,97 | ||
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 | P3 | P4 | P5 | P6 | P7 | P11 | P14 |
---|---|---|---|---|---|---|---|---|---|
Ö1 | Bilgisayar temel elemanlarını bilir. | - | - | - | - | - | - | - | - |
Ö2 | İnternet kullanımını ve araştırma yapmayı bilir. | - | - | - | - | - | - | - | - |
Ö3 | Mesleği ile ilgili temel matematiksel çözümlemeleri yapabilir. | - | - | - | - | - | - | - | - |
Ö4 | Veri analizi ile ilgili güncel teknikleri bilir. | - | - | - | - | - | - | - | - |
Ö5 | Güncel yazılım geliştirme platformlarını bilmeli ve kullanır. | - | - | - | - | - | - | - | - |
Ö6 | Karmaşık problemleri ele alır ve yaratıcı çözümler üretir | - | - | - | - | - | - | - | - |
Ö7 | Karmaşık problemleri analiz eder ve çözüm stratejileri geliştirir | - | - | - | - | - | - | - | - |
Ö8 | Temel analiz bilgilerine sahip olur. | - | - | - | - | - | - | - | - |
Ö9 | Algoritma geliştirmeyi bilir ve algoritmaya uygun veri yapısı oluşturur. | - | - | - | - | - | - | - | - |
Ö10 | Güncel yazılım dilleri hakkında bilgi sahibi olur. | - | - | - | - | - | - | - | - |
Ö11 | Yazılımları test eder ve hataları giderir. | - | - | - | - | - | - | - | - |
Ö12 | Sorunların tespiti için analitik etkin araştırma ve çözüm tekniklerini bilir. | - | - | - | - | - | - | - | - |
Ö13 | Alternatif çözüm yollarını değerlendirir ve en uygun olanını seçer | - | - | - | - | - | - | - | - |
Ö14 | Eleştirel düşünme becerilerini kullanarak bilgisayar bilimiyle ilgili konuları ve algoritmaları değerlendirir | - | - | - | - | - | - | - | - |
Ö15 | Karar verme süreçlerini etkili bir şekilde yönetir ve uygular | - | - | - | - | - | - | - | - |
Ö16 | MS Office araçlarından en az birini kullanmayı bilir. | - | - | - | - | - | - | - | - |
Ö17 | Topluluk önünde kendinden emin bir şekilde konuşur ve sunum yapar | - | - | - | - | - | - | - | - |
Ö18 | Proje yönetimi konusunda bilgiye sahiptir. | - | - | - | - | - | - | - | - |
Ö19 | Proje dahilinde sorunlara çözüm önerisi getirir. | - | - | - | - | - | - | - | - |
Ö20 | Proje geliştirme, test ve bakım gibi faklı aşamalarında çalışabilme yeteneğine sahiptir. | - | - | - | - | - | - | - | - |
Ö21 | Bireysel olarak ve çok disiplinli takımlarda etkin çalışır. | - | - | - | - | - | - | - | - |
Ö22 | Alanıyla ilgili çevrimiçi bilgi kaynaklarını, veri tabanlarını ve iletişim kanallarını etkili bir biçimde kullanabilmek. | - | - | - | - | - | - | - | - |
Ö23 | Algoritma geliştirmeyi bilir ve algoritmaya uygun veri yapısı oluşturur. | - | - | - | - | - | - | - | - |
Ö24 | Güncel Bilişim Teknolojileri platformlarını bilir ve kullanır. | - | - | - | - | - | - | - | - |
Ö25 | Güncel programlama dilleri hakkında bilgi sahibidir. | - | - | - | - | - | - | - | - |
Ö26 | Dijital Sistemler alanında bilgi sahibidir. | - | - | - | - | - | - | - | - |
Ö27 | Yazılımları test eder ve hataları giderir. | - | - | - | - | - | - | - | - |