Bilgisayar Programcılığı
Önlisans TYYÇ: 5. Düzey QF-EHEA: Kısa Düzey EQF-LLL: 5. Düzey

Ders Genel Tanıtım Bilgileri

Ders Kodu: MMOT101
Ders İsmi: Mobil Programlamaya Giriş
Ders Yarıyılı: Bahar
Ders Kredileri:
Teorik Pratik Kredi AKTS
3 0 3 6
Öğretim Dili: TR
Ders Koşulu:
Ders İş Deneyimini Gerektiriyor mu?: Hayır
Dersin Türü: Bölüm/Fakülte Seçmeli
Dersin Seviyesi:
Önlisans TYYÇ:5. Düzey QF-EHEA:Kısa Düzey EQF-LLL:5. Düzey
Dersin Veriliş Şekli: Yüz yüze
Dersin Koordinatörü: Öğr.Gör. ALPER ÇELTİKÇİ
Dersi Veren(ler):

Dersin Yardımcıları:

Dersin Amaç ve İçeriği

Dersin Amacı: • Android ve iOS yazılım ortamlarıını tanımak.
• Android ve iOS Uygulaması tasarlayabilmek.
• Android ve iOS Uygulaması yaratabilmek.
• Android ve iOS Uygulamasını dökümante edebilmek.
• Android ve iOS Uygulamasını testedebilmek.

Dersin İçeriği: Mobil Programlamaya giriş ve genel bilgileri. Android ve iOS cihazlar için uygulama geliştirme ortamını hazırlama. İlk projeyi (Android, iOS vb.) oluşturma. Kütüphane arayüz elemanlarının özellikleri ve kullanımı. Proje arayüz tasarımı oluşturma. İkon oluşturma. Android ve iOS projelerinde nesnelerin kodla bağlantısını oluşturma. Projeyi sanal cihazda ve gerçek cihazda çalıştırma. Android ve iOS uygulamalarını markete yükleme.

Öğrenme Kazanımları

Bu dersi başarıyla tamamlayabilen öğrenciler;
Öğrenme Kazanımları
1 - Bilgi
Kuramsal - Olgusal
2 - Beceriler
Bilişsel - Uygulamalı
3 - Yetkinlikler
İletişim ve Sosyal Yetkinlik
Öğrenme Yetkinliği
Alana Özgü Yetkinlik
1) • Android ve iOS yazılım ortamlarıını tanımak.
2) • Android ve iOS Uygulaması tasarlayabilmek.
3) • Android ve iOS Uygulaması yaratabilmek.
4) • Android ve iOS Uygulamasını dökümante edebilmek.
5) • Android ve iOS Uygulamasını testedebilmek.
Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği

Ders Akış Planı

Hafta Konu Ön Hazırlık
1) • Ders Tanıtımı. • Mobil Programlamaya Giriş ve Genel Bilgiler. Mobil Programlamanın Önemi Genel Bilgiler Hybrid ve Native Uygulama • Ders Notları
2) • Android ve iOS Cihazlar için Uygulama Geliştirme Ortamını Hazırlama.  Android Studio’yu indirme  Java Geliştirme Kiti (JDK) İndirme  Android Studio’yu kurulumu  JDK kurulumu  xCode Kurulumu  iOS uygulamaları için geliştirici hesabı oluşturma. • Ders Notları
3) • İlk Projeyi Oluşturma (Android) • Ders Notları
4) • Kütüphane Arayüz Elemanlarının Özellikleri ve Kullanımı (Android). • Ders Notları
5) • Proje Arayüz Tasarımı Oluşturma (Android). • Ders Notları
6) • İkon Oluşturma (Android). • Android projelerinde nesnelerin kodla bağlantısını oluşturma. • Ders Notları
7) • Android projelerinde nesnelerin kodla bağlantısını oluşturma. • Ders Notları
8) • İlk Projeyi Oluşturma (iOS) • Arasınav Soruları • Ders Notları
9) • Kütüphane Arayüz Elemanlarının Özellikleri ve Kullanımı (iOS). • Ders Notları
10) • Proje Arayüz Tasarımı Oluşturma (iOS). • Ders Notları
11) • İkon Oluşturma (iOS). • iOS projelerinde nesnelerin kodla bağlantısını oluşturma. • Ders Notları
12) • iOS projelerinde nesnelerin kodla bağlantısını oluşturma. • Ders Notları
13) • Projeyi Gerçek Cihazda ve Sanal Cihazda Çalıştırma (Android, iOS). • Ders Notları
14) • Android ve iOS Uygulamalarını Markete Yükleme. • Proje Sunumlarını Yapma. (Android ve iOS) • Proje Sunumlarını Tartışma. • Projeyi Teslim Etme. (Android ve iOS) • Ders Notları
15) • Final Sınavı Sınav Soruları

Kaynaklar

Ders Notları / Kitaplar: • A. K. Fırat, Android Studio ile Programlama, Abaküs, ISBN: 978-605-9129-62-6, 2016.
• Ö. İmrağ, Swift ile iOS Programlama Temelleri, Dikeyeksen, ISBN: 978-605-4898-24-4, 2016.
• B. Uslu, Android Tabanlı Mobil Uygulama Geliştirme, Kodlab, ISBN:978-605-5201-31-9, 2014.
• T. Kızılören, Swift ve Objective-C ile iOS SDK, Kodlab, ISBN:978-605-5201-67-8, 2015.
• Ders Notları
Diğer Kaynaklar: • A. K. Fırat, Android Studio ile Programlama, Abaküs, ISBN: 978-605-9129-62-6, 2016.
• Ö. İmrağ, Swift ile iOS Programlama Temelleri, Dikeyeksen, ISBN: 978-605-4898-24-4, 2016.
• B. Uslu, Android Tabanlı Mobil Uygulama Geliştirme, Kodlab, ISBN:978-605-5201-31-9, 2014.
• T. Kızılören, Swift ve Objective-C ile iOS SDK, Kodlab, ISBN:978-605-5201-67-8, 2015.
• Ders Notları

Ders - Program Öğrenme Kazanım İlişkisi

Ders Öğrenme Kazanımları

1

2

3

4

5

Program Kazanımları
1) Bilgisayar programcılığının gerektirdiği temel matematik, mantık ve algoritma kavramlarını problem çözümünde kullanır.
2) Tanımlanmış bir bilişim problemini analiz eder, modelini kurgular ve algoritmik çözüm önerileri geliştirir.
3) Yapısal ve nesne yönelimli programlama paradigmalarını kullanarak masaüstü uygulamaları tasarlar ve geliştirir.
4) Belirtimleri tanımlanmış bir yazılım bileşenini veya modülünü, test süreçlerini de içerecek şekilde geliştirir.
5) Teknik konularda Türkçe sözlü ve yazılı etkin iletişim kurar; alanındaki bilgileri takip edebilecek düzeyde (Avrupa Dil Portföyü A2) yabancı dil kullanır.
6) Yaşam boyu öğrenme bilinciyle bilişim alanındaki teknolojik gelişmeleri takip eder ve mesleki gelişimini planlar.
7) Mesleki faaliyetlerinde etik ilkelere, sosyal sorumluluğa ve iş güvenliği kurallarına uygun davranır.
8) Bireysel olarak ve bir takımın üyesi olarak sorumluluk alır ve etkin bir şekilde çalışır.
9) İstemci ve sunucu taraflı web teknolojilerini kullanarak dinamik ve veritabanı bağlantılı web uygulamaları geliştirir.
10) İlişkisel veritabanı sistemlerini tasarlar, uygular ve SQL (Structured Query Language) kullanarak yönetir.
11) Temel bilgisayar ağı ve işletim sistemi kavramlarını açıklar ve bu sistemlerin kurulumu ve yönetimi ile ilgili temel işlemleri gerçekleştirir.
12) Kullanıcı arayüzü (UI) ve kullanıcı deneyimi (UX) temel prensiplerini yazılım geliştirme süreçlerine uygular.

Ders - Öğrenme Kazanımı İlişkisi

Etkisi Yok 1 En Düşük 2 Düşük 3 Orta 4 Yüksek 5 En Yüksek
           
Dersin Program Kazanımlarına Etkisi Katkı Payı
1) Bilgisayar programcılığının gerektirdiği temel matematik, mantık ve algoritma kavramlarını problem çözümünde kullanır.
2) Tanımlanmış bir bilişim problemini analiz eder, modelini kurgular ve algoritmik çözüm önerileri geliştirir.
3) Yapısal ve nesne yönelimli programlama paradigmalarını kullanarak masaüstü uygulamaları tasarlar ve geliştirir.
4) Belirtimleri tanımlanmış bir yazılım bileşenini veya modülünü, test süreçlerini de içerecek şekilde geliştirir.
5) Teknik konularda Türkçe sözlü ve yazılı etkin iletişim kurar; alanındaki bilgileri takip edebilecek düzeyde (Avrupa Dil Portföyü A2) yabancı dil kullanır.
6) Yaşam boyu öğrenme bilinciyle bilişim alanındaki teknolojik gelişmeleri takip eder ve mesleki gelişimini planlar.
7) Mesleki faaliyetlerinde etik ilkelere, sosyal sorumluluğa ve iş güvenliği kurallarına uygun davranır.
8) Bireysel olarak ve bir takımın üyesi olarak sorumluluk alır ve etkin bir şekilde çalışır.
9) İstemci ve sunucu taraflı web teknolojilerini kullanarak dinamik ve veritabanı bağlantılı web uygulamaları geliştirir.
10) İlişkisel veritabanı sistemlerini tasarlar, uygular ve SQL (Structured Query Language) kullanarak yönetir.
11) Temel bilgisayar ağı ve işletim sistemi kavramlarını açıklar ve bu sistemlerin kurulumu ve yönetimi ile ilgili temel işlemleri gerçekleştirir.
12) Kullanıcı arayüzü (UI) ve kullanıcı deneyimi (UX) temel prensiplerini yazılım geliştirme süreçlerine uygular.

Öğrenme Etkinliği ve Öğretme Yöntemleri

Anlatım
Bireysel çalışma ve ödevi
Ders
Laboratuvar
Okuma
Ödev
Problem Çözme
Proje Hazırlama
Rapor Yazma
Soru cevap/ Tartışma
Uygulama (Modelleme, Tasarım, Maket, Simülasyon, Deney vs.)

Ölçme ve Değerlendirme Yöntemleri ve Kriterleri

Yazılı Sınav (Açık uçlu sorular, çoktan seçmeli, doğru yanlış, eşleştirme, boşluk doldurma, sıralama)
Ödev
Uygulama
Bireysel Proje
Sunum
Raporlama

Ölçme ve Değerlendirme

Yarıyıl İçi Çalışmaları Aktivite Sayısı Katkı Payı
Ödev 1 % 10
Projeler 1 % 30
Ara Sınavlar 1 % 30
Final 1 % 30
Toplam % 100
YARIYIL İÇİ ÇALIŞMALARININ BAŞARI NOTU KATKISI % 70
YARIYIL SONU ÇALIŞMALARININ BAŞARI NOTUNA KATKISI % 30
Toplam % 100

İş Yükü ve AKTS Kredisi Hesaplaması

Aktiviteler Aktivite Sayısı Süre (Saat) İş Yükü
Ders Saati 15 3 45
Proje 1 50 50
Ödevler 1 10 10
Ara Sınavlar 1 30 30
Final 1 30 30
Toplam İş Yükü 165