Ders Adı | Kodu | Yarıyıl | T+U Saat | AKTS | |
Mobil Programlama | BM320 | 6 | 3 + 0 | 5,0 |
Birim Bölüm | BİLGİSAYAR MÜHENDİSLİĞİ |
Derece Seviye | Lisans - Seçmeli - Türkçe |
Dersin Verilişi | Yüz yüze |
EBS Koordinatörü | Öğr. Gör. Yusuf MUŞTU |
Ders Veren | Öğr. Gör. Yusuf MUŞTU |
Amaç |
Bu ders, Android ve Flutter platformlarında mobil uygulama geliştirme süreçlerini kapsamlı bir şekilde ele alarak, öğrencilerin modern ve ölçeklenebilir uygulamalar geliştirme yetkinliği kazanmasını amaçlamaktadır. Kotlin ve Dart programlama dillerini kullanarak, kullanıcı arayüzü tasarımı, veri yönetimi, API entegrasyonu ve state yönetimi gibi temel konular işlenecektir. Ders sonunda öğrenciler, platform bağımsız mobil uygulamalar geliştirme becerisine sahip olacaklardır. |
Ders İçeriği |
Bu ders kapsamında, mobil uygulama geliştirme sürecine dair temel ve ileri seviye konular ele alınacaktır. İlk olarak, mobil işletim sistemleri ve uygulama geliştirme yöntemleri tanıtılacak, ardından Android işletim sistemi ve Kotlin programlama dili detaylandırılacaktır. Android uygulama geliştirme sürecinde, kullanıcı arayüzü tasarımı, temel bileşenler (Activity, Fragment, Intent), veri yönetimi (SharedPreferences, SQLite, Room), web servisleri ile entegrasyon (REST API, Retrofit) ve arka plan işlemleri (Service, WorkManager) gibi konular işlenecektir. Flutter çerçevesi ve Dart programlama dili ele alınarak, platform bağımsız mobil uygulamalar geliştirme süreci anlatılacaktır. Flutter temel yapıları, bileşenler, state yönetimi (Provider, Riverpod, GetX), veri saklama yöntemleri (SharedPreferences, SQLite, Hive, Firebase Firestore), API entegrasyonu (Dio, Firebase Authentication, Firebase Cloud Messaging) gibi konulara değinilecektir. |
Ders Kaynakları |
https://docs.flutter.dev/
https://dart.dev/docs https://kotlinlang.org/docs https://developer.android.com/develop |
Açıldığı Öğretim Yılı | 2014 - 2015 2015 - 2016 2016 - 2017 2017 - 2018 2018 - 2019 2019 - 2020 2020 - 2021 2021 - 2022 2022 - 2023 2023-2024 2024 - 2025 |
Yarıyıl İçi Çalışmalar | Katkı Yüzdesi (%) |
Ara Sınav 1 | 40 |
Kısa Sınav 1 | 10 |
Toplam | 50 |
Yarıyıl Sonu Çalışmalar | Katkı Yüzdesi (%) |
Final | %50 |
Toplam | %50 |
Yarıyıl İçinin Başarıya Oranı | %50 |
Yarıyıl Sonu Çalışmalar | %50 |
Toplam | %100 |
Kategori | Ders İlişki Yüzdeleri (%) |
Aktarılabilir Beceri Dersleri
|
0
|
Beşeri, İletişim ve Yönetim Becerileri Dersleri
|
0
|
Destek Dersleri
|
0
|
Ek Dersler
|
0
|
Kategori
|
0
|
Mesleki Seçmeli Dersler
|
0
|
Temel Meslek Dersleri
|
0
|
Uygulama Dersleri
|
0
|
Uzmanlık / Alan Dersleri
|
0
|
Yetkinlik Tamamlayıcı Ders
|
0
|
Ders İş Yükü | Öğretim Metotlar / Öğretim Metodu | Süresi (Saat) | Sayısı | Toplam İş Yükü (Saat) |
Araştırma – yaşam boyu öğrenme, yazma, okuma, Bilişim | Sınıf Dışı Çalışma | 1 | 14 | 14 |
Dinleme ve anlamlandırma | Ders | 2 | 14 | 28 |
Gözlem/durumları işleme, Bilişim, yönetsel beceriler, takım çalışması | Laboratuar | 2 | 14 | 28 |
Ara Sınav 1 | Ara Sınav 1 | 20 | 1 | 20 |
Uygulama 1 | Uygulama 1 | 12 | 1 | 12 |
Final | Final | 24 | 1 | 24 |
Ödev 1 | Ödev 1 | 8 | 1 | 8 |
Toplam İş Yükü (Saat) | 134 | |||
AKTS = Toplam İş Yükü (Saat) / 25.5 (s) | 5,25 | |||
AKTS | 5,0 |
Hafta | Konu | Öğretim Metodu |
---|---|---|
1 | Giriş ve Temel Kavramlar | Laboratuar Ders |
2 | Kotlin Programlama Dili Giriş | Laboratuar Ders |
3 | Kotlin ile Nesne Yönelimli Programlama | Laboratuar Ders |
4 | Arayüz Tasarımı ve Kullanıcı Etkileşimi | Laboratuar Ders |
5 | Android Yapısal Bileşenleri 1 | Laboratuar Ders |
6 | Android Yapısal Bileşenleri 2 | Laboratuar Ders |
7 | Android Arkaplan İşlemleri | Laboratuar Ders |
8 | Android Sensör ve Ortam İşlemleri | Laboratuar Ders |
9 | Dart Dilinin Temelleri | Laboratuar Ders |
10 | Flutter’ın Temel Yapısı | Laboratuar Ders |
11 | Flutter’da Arayüz Tasarımı | Laboratuar Ders |
12 | Flutter’da State Yönetimi ve Yönlendirme | Laboratuar Ders |
13 | Flutter Veri Depolama ve Yönetimi | Laboratuar Ders |
14 | Flutter Web Servislerinin Kullanılması ve Ağ İşlemleri | Laboratuar Ders |
Ders Öğrenme Çıktısı | Ölçme Değerlendirme | Öğretim Metodu | Öğrenme Faaliyeti |
Mobil uygulama geliştirme süreçlerini kavrayarak, Android ve Flutter platformlarında temel geliştirme ortamlarını kurabilir ve uygulama geliştirme yöntemlerini açıklayabilir. | Yazılı Sınav | Ders Laboratuar | Dinleme ve anlamlandırma Gözlem/durumları işleme, Bilişim, yönetsel beceriler, takım çalışması |
Kotlin ve Dart programlama dillerinin temel yapılarını öğrenerek, nesne yönelimli programlama prensiplerini uygulayabilir ve mobil uygulamalar için optimize edilmiş kod yazabilir. | Yazılı Sınav | Ders Laboratuar | Dinleme ve anlamlandırma Gözlem/durumları işleme, Bilişim, yönetsel beceriler, takım çalışması |
Android ve Flutter platformlarında arayüz tasarımı ve kullanıcı etkileşimi sağlayan bileşenleri etkin bir şekilde kullanarak, modern ve kullanıcı dostu mobil arayüzler oluşturabilir. | Yazılı Sınav | Ders Laboratuar | Dinleme ve anlamlandırma Gözlem/durumları işleme, Bilişim, yönetsel beceriler, takım çalışması |
Mobil uygulamalarda veri yönetimi ve depolama çözümlerini kullanarak, veri işleme ve yönetme işlemlerini gerçekleştirebilir. | Yazılı Sınav | Ders Laboratuar | Dinleme ve anlamlandırma Gözlem/durumları işleme, Bilişim, yönetsel beceriler, takım çalışması |
Web servisleri ve API entegrasyonu ile mobil uygulamaların internet üzerinden veri alışverişi yapmasını sağlayabilir. | Yazılı Sınav | Ders Laboratuar | Dinleme ve anlamlandırma Gözlem/durumları işleme, Bilişim, yönetsel beceriler, takım çalışması |
DERS ÖĞRENME ÇIKTISI |
PÇ 1 | PÇ 2 | PÇ 3 | PÇ 4 | PÇ 5 | PÇ 6 | PÇ 7 | PÇ 8 | PÇ 9 | PÇ 10 |
---|---|---|---|---|---|---|---|---|---|---|
Mobil uygulama geliştirme süreçlerini kavrayarak, Android ve Flutter platformlarında temel geliştirme ortamlarını kurabilir ve uygulama geliştirme yöntemlerini açıklayabilir. | - | - | - | - | - | - | - | - | - | - | ;
Kotlin ve Dart programlama dillerinin temel yapılarını öğrenerek, nesne yönelimli programlama prensiplerini uygulayabilir ve mobil uygulamalar için optimize edilmiş kod yazabilir. | - | - | - | - | - | - | - | - | - | - | ;
Android ve Flutter platformlarında arayüz tasarımı ve kullanıcı etkileşimi sağlayan bileşenleri etkin bir şekilde kullanarak, modern ve kullanıcı dostu mobil arayüzler oluşturabilir. | - | - | - | - | - | - | - | - | - | - | ;
Mobil uygulamalarda veri yönetimi ve depolama çözümlerini kullanarak, veri işleme ve yönetme işlemlerini gerçekleştirebilir. | - | - | - | - | - | - | - | - | - | - | ;
Web servisleri ve API entegrasyonu ile mobil uygulamaların internet üzerinden veri alışverişi yapmasını sağlayabilir. | - | - | - | - | - | - | - | - | - | - | ;
Ortalama Değer | - | - | - | - | - | - | - | - | - | - |