PROGRAMI
DERS TANITIM VE UYGULAMA BİLGİLERİ

Ders AdıKoduVerildiği YılVerildiği YarıyılSüresi (T+U)Yerel KredisiAKTS Kredisi
Mobil Uygulama GeliştirmeCPR 2103 + 035,00
 
Ders Bilgileri
Dersin Öğretim Diliİngilizce
Dersin SeviyesiÖn Lisans
Dersin TürüSeçmeli
Dersin Veriliş BiçimiYüz Yüze
 
Dersin Öğrenme Kazanımları:

Bu dersi başarı ile tamamlayan öğrenciler:
1. Mobil işletim sistemlerini ve geliştirme ortamlarını açıklayabilecektir.
2. Android ve/veya iOS platformları için temel seviyede uygulamalar geliştirebilecektir.
3. Kullanıcı arayüzü tasarım prensiplerini kullanarak sezgisel ve kullanıcı dostu arayüzler oluşturabilecektir.
4. Mobil uygulamalarda veri yönetimi ve veritabanı işlemlerini gerçekleştirebilecektir.
5. Web servisleri ve API entegrasyonu yaparak uygulamalarını harici sistemlerle entegre edebilecektir.
 
Dersin Önkoşulları ve Birlikte Alınması Gereken DerslerYok
Daha Önce Alınmış Olması Önerilen DerslerYok
 
Dersin Tanımı:

Bu ders, mobil cihazlar üzerinde çalışan uygulamaların geliştirilmesine yönelik temel prensipleri öğretir. Android ve/veya iOS platformlarında uygulama geliştirme süreçleri, kullanıcı arayüzü tasarımı, veri yönetimi, cihaz özelliklerine erişim, hata ayıklama ve yayınlama aşamaları ele alınır.
 
Üretken Yapay Zeka Kullanımı:

Ders kapsamında öğrenciler, üretken yapay zekâ araçları (örneğin ChatGPT, GitHub Copilot) kullanarak: Kod tamamlama ve hata ayıklama Kullanıcı arayüzü için tasarım önerileri oluşturma Uygulama senaryoları üretme Kodun yorumlanması ve belgelendirilmesi gibi işlemleri deneyimleyecektir.
 
Dersin İçeriği (Haftalık Konu Dağılımı):
 
HaftaKonu
1Mobil Geliştirmeye Giriş
2Mobil Uygulama Geliştirme Araçları
3Mobil Kullanıcı Arayüzü (UI) Tasarımı
4Aktiviteler, Fragmentler ve Navigasyon
5Kullanıcı Girdi İşleme
6Veri Yönetimi ve Depolama
7Web Servisleri ve API Entegrasyonu
8Vize Sınavı
9Mobil Uygulama Performans Optimizasyonu
10Mobil Güvenlik
11Haritalar ve Konum Servisleri
12Bildirimler ve Arka Plan İşlemleri
13Mobil Test ve Hata Ayıklama
14Mobil Uygulama Yayınlama Süreci
 
Kaynaklar:
McElhearn, K. (2022). Swift programming: The Big Nerd Ranch guide (3rd ed.). Big Nerd Ranch Mednieks, Z., Dornin, L., Meike, M., & Nakamura, R. (2021). Programming Android (2nd ed.). O’Reilly Media
 
Diğer Kaynaklar:
Android Developers. (2024). Android developer guide. Retrieved from https://developer.android.com Apple Developer. (2024). Human interface guidelines. Retrieved from https://developer.apple.com Flutter. (2024). Flutter documentation. Retrieved from https://flutter.dev/docs
 
Öğretim Yöntem ve Teknikleri:
Ders haftalık olarak üç saattir ve yüz yüze sınıf ortamında yapılacaktır. Öğrencilerin ders içerisindeki değerlendirmesinde vize ve final sınavları yer alacaktır. Bununla birlikte öğrencilerin derse devamları da takip edilerek, dönem sonundaki nihai değerlendirmeye katkı sağlayacaktır. Vize, Final ve Sınıf içi değerlendirmelere katılmayan öğrenci devamsızlıktan kalacaktır.
 
Değerlendirme Sistemi:
YöntemAdetKatkı (%)
Ara Sınav1%40
Final Sınavı1%60
Sınıf Katılımı1%10
 
Ders İşbaşı Eğitimi (iş yerinde eğitim) Gerektiriyor mu?
Gerektirmiyor
 
Dersin AKTS İş Yükü:
#AktiviteAdetSüre (Saat)İş Yükü
1Derslere Katılım (haftalık bazda)143,0042,00
2Laboratuvarlara/Derslere Katılım (haftalık bazda)00,000,00
3Notların önceden hazırlanması ve son haline getirilmesi (haftalık bazda)122,0024,00
4İlgili materyalin toplanması ve seçilmesi (bir kez)00,000,00
5İlgili materyalin kendi kendine incelenmesi (haftalık bazda)122,0024,00
6Ev ödevleri00,000,00
7Sınavlara Hazırlık00,000,00
8Ara Sınavlara Hazırlık (Sınavların süresi dahil)115,0015,00
9Dönem Ödevi/Vaka Çalışması Raporunun Hazırlanması (sözlü sunum dahil)00,000,00
10Dönem Projesi/Saha Çalışması Raporunun Hazırlanması (sözlü sunum dahil)00,000,00
11Final Sınavına Hazırlık (sınav süresi dahil)115,0015,00
 
Dersin Program Yeterlilikleri vs. Öğrenme Kazanımları:
#Program YeterlilikleriKatkı (0-4)
1Bilgisayar sistemlerinde yeterli altyapıya sahip olma; bu alandaki kuramsal ve uygulamalı bilgileri bilgisayar sistemlerinde kullanabilme becerisi, Bilgisayar sistemindeki problemleri saptama, tanımlama ve çözme becerisi; bu amaçla uygun yöntemler ve tekniklerini seçme ve uygulama becerisi0
2Bir sistemi, sistem bileşenini ya da süreci analiz etme ve istenen gereksinimleri karşılamak üzere gerçekçi kısıtlar altında tasarlama becerisi; bu doğrultuda modern tasarım yöntemlerini uygulama becerisi, Bilgisayar programında gerekli olan teknik araçları seçme ve kullanma becerisi; bilişim teknolojilerini etkin kullanma becerisi1
3Bilgisayar Teknolojileri ve Programlama alanında tanımı iyi yapılmış problemlerin çözümü için gerekli olan verileri tanımlama, toplama ve kullanmayı etkin bir biçimde yapabilmek; pratik uygulamalarda gereken teorik bilgileri, el ve/veya düşünsel becerileri kullanabildiğini göstermek2
4İleri düzey programlama becerisi kazanır. Güncel bilgisayar programlama teknolojilerini kullanarak sektörün beklentilerini karşılayacak şekilde Bilgisayar Programcılığı ile ilgili süreci/süreçleri planlama becerisine sahip olmak.2
5Bağımsız çalışabilme, inisiyatif alabilme, özgün içerikler oluşturabilme ve yazılım takımları içinde verimli çalışabilme becerisine sahip olmak.2
6Türkçeyi ve İngilizce yazılı ve sözlü olarak etkin bir biçimde kullanabilme, sunulan Bilgisayar Programcılığı bilgisini kolayca takip etme ve meslektaşlarıyla etkin bir biçimde iletişim kurabilme becerisine sahip olmak.2
7Sorunların çözümünde bilimsel yöntemler kullanmayı benimser ve problem çözme becerisini geliştirir.1
8Bilgiye erişebilmeye bu amaçla kaynak araştırması yapabilme, veri tabanları ve diğer bilgi kaynaklarını kullanabilme becerisi, Yaşam boyu öğrenmenin gerekliliği bilinci; bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi2
9Kendi alanı ile ilgili çalışmalarda öngörülmeyen durumlarla ilgili sorunları belirleme ve çözüm arama yeteneğini kazandığını göstermek1
10Bilgiye erişebilme bilimde ve teknolojide gelişmeleri takip edebilme ve sürekli kişisel gelişimi sürdürebilme becerisine sahip olmak3
11Mesleki, hukuksal, sosyal ve etik sorumluluklarını anlayabilir ve uygular.1