Dersin Katalog Tanımı:
Derste, nesne yönelimli programlamanın temelleri, UML ile nesne yönelimli program geliştirme, Java’nın temel elemanları (değişkenler, akış kontrolü, sınıflar ve nesneler, dizinler ve taşıyıcı sınıflar, arayüz yapıları), sınıflar ve kalıtım (sınıf yaratımı, kalıtım ve çok biçimlilik, arayüz kavramı ve geliştirimi), nesneye yönelik kodlama ve dokümantasyon standartları, kodun entegrasyonu, soyutlamaya dayalı tasarım ve tasarım örüntüleri anlatılmaktadır.
Ders Hakkında Genel Bilgiler:
- Dersin Dönemi: 2013-2014 Güz
- Dersin Kodu: BBY 261
- Dersin Günü ve Saati: Pazartesi, 13:30 – 16:30
- Dersin Yeri: Yeni Sınıf (Ed. Fak. Bodrum Kat)
- Devam: Derse devam zorunludur.
Değerlendirme Kriterleri
- Temel Java Uygulaması (%15)
- Teslim Tarihi: 4 Kasım 2013
- Teslim Şekli: Öğrenme Yönetim Sistemi üzerinden çevrim içi
Sisteme girdikten sonra derse kayıt olup (Sol alt bölümde yer alan “Enrol me in this course” bölümünden), dosyanızı yükleyebilirsiniz.
http://egitim.bilgiyonetimi.net/course/view.php?id=36 - Açıklama: Eclipse IDE’sini kullanarak konsolda çalışacak bir Java uygulaması geliştirilecektir. Geliştirilecek uygulamada Sayısal Loto oyunundaki 1 ile 49 arasındaki rakamlardan altı tanesi rastgele seçilerek kullanıcıya önerilecektir. 6 rakamdan oluşan bu öneriden toplam altı tane yapılarak sanal olarak kupon oluşturulmuş olacaktır. Projenizin adını (ve dolayısıyla klasör adınızı) ad-soyad baş harfleri ve okul numaranızdan oluşan bir kombinasyon ile oluşturabilirsiniz. Ör: om2134536. Başarılar 😉
- Temel Android Uygulaması (%15)
- Teslim Tarihi: 11 Kasım 2013
- Teslim Şekli: Öğrenme Yönetim Sistemi üzerinden çevrim içi
Sisteme girdikten sonra derse kayıt olup (Sol alt bölümde yer alan “Enrol me in this course” bölümünden), APK uzantılı dosyanızı yükleyebilirsiniz.
http://egitim.bilgiyonetimi.net/course/view.php?id=36 - Açıklama: Eclipse IDE’sini kullanarak basit bir Android uygulaması geliştirip APK olarak yayınlanacak. Uygulamada herhangi bir etkileşim olmasına gerek yok. Sadece metin ve görsel öğelere yer verilmesi yeterli. Buradaki temel amaç APK dosyasının sağlıklı bir şekilde oluşturulması ve dağıtıma hazır hale gelmesi. Başarılar 😉
- Mobil Uygulama Geliştirme (%30)
- Teslim Tarihi: 2 Aralık 2013
- Teslim Şekli: Öğrenme Yönetim Sistemi üzerinden.
- Açıklama: LC sınıflama sistemi kullanan kütüphanelerde, kullanıcıların mobil cihazlarından konuya göre raf numaralarına erişilebilecekleri bir uygulama geliştiriniz. Raf listesine buradan ulaşabilirsiniz. Uygulamanızın çıktısı olan apk uzantılı dosyanızı sisteme yükleyiniz.
- Final Projesi (%40)
- Teslim Tarihi: 10 Ocak 2014, Cuma, 15:00 – 17:00, Yeni Sınıf.
- Teslim Şekli: egitim.bilgiyonetimi üzerinden ve sınıfta flash bellek ile.
Uygulamanın proje klasörü içinde APK dosyasını da barındıracak şekilde ZIP olarak arşivlenip yüklenecek / teslim edilecektir. - Açıklama: Geliştirilecek Android tabanlı uygulamada “yayın adı” ve “yayının künyesi” şeklinde iki adet bilgi giriş alanı bulunacaktır. Girilen bilgiler “SharedPreference” yapısı ile telefon üzerinde depolanacaktır. Depolanan bu bilgilere yayın adı ile “ListView” üzerinden erişilebilecektir. Erişilen yayının adı ile Google üzerinde bir arama sonucu döndürülebilecek ve “WebView” ile görüntülenebilecek yapıda olacaktır.
Ders Malzemeleri:
- Temel Java Uygulaması: Sayısal Loto
- Temel Android Uygulaması: Görsel
- Mobil Uygulama Geliştirme: YouTube Uygulama Videosu – Activity Örnek Uygulama
- Mobil Uygulama Geliştirme: Örnek Liste Uygulaması
- Mobil Uygulama Geliştirme: Hybrid Uygulama
- Mobil Uygulama Geliştirme: Hybrid Local
- Mobil Uygulama Geliştirme: Web Browser
- Mobil Uygulama Geliştirme: Activity Variable
- Mobil Uygulama Geliştirme: Kamera Kullanımı
- Mobil Uygulama Geliştirme: Kullanıcı Adı ve Şifre Uygulaması
- Mobil Uygulama Geliştirme: Cihaz Üzerinde Bilgi Depolama Tekli (Shared Preferences)
- Mobil Uygulama Geliştirme: Cihaz Üzerinde Bilgi Depolama Çoklu (Shared Preferences)
- Örnek Proje: Otopark 2000 v1.0
- Son Örnek 🙂 (Shared Preferences)
Ders İçeriği ve Kullanım Koşulları:
Ders içerikleri ile ilgili bağlantılar Turkcell Geleceği Yazanlar Portalı‘na yönlenmektedir. İçeriğin kullanımı ile ilgili ayrıntılı bilgi için: gelecegiyazanlar.turkcell.com.tr/kullanim-sartlari
Konu 1: Başlangıç (101)
Bu bölümde Java’nın temellerini ve Android uygulama geliştirme ortamını inceliyoruz.
Android Eğitimlerine Başlarken…
- Java Geliştirme Paketi’nin Kurulumu (JDK)
- Bir Java Programının Komut Satırında Çalıştırılması
- Bir Java Programının Terminal Üzerinde Çalıştırılması (Mac OS X)
- Eclipse IDE’sinin Kurulumu
- Bir Java Programının IDE Ortamında Çalıştırılması
Java Dilinde İfadeler ve İşlem Operatörleri
- Sabitlerden Oluşan İfadeler
- int Türü İfadeler
- float Türündeki İfadeler
- Tekli Operatörler
- İkili Aritmetiksel Operatörler
- Aritmetiksel Atama Operatörleri
Java’da Kontrol Yapıları
- if Deyimi
- if Deyimiyle İlgili Problemler
- Karşılaştırma İşlemleri
- İç İçe if Deyimleri
- if-else-if Basamak Yapısı
- ? Seçeneği
- switch / case Yapısı
- while Döngüsü
- do … while Döngüsü
- for Döngüsü
- İç İçe Döngüler
- İç İçe for Döngüleri İçin Örnekler
- break Deyimi
- continue Deyimi
Java’da String Metotları
Diziler
Olağan Dışı Durumların Değerlendirilmesi
Dosyalara Bilgi Kaydı
Nesne Yönelimli Programlama
Algoritmaya Giriş
Konu 2: Android (201)
Bu bölümde basit projelerle Android uygulamaları geliştirmenin temellerini göreceğiz.
Android Cihazlar ve Android İşletim Sistemi Üzerine Genel Bilgiler
ADT Geliştirme Ortamının Oluşturulması
Android Projesi Oluşturmak
Activity Sınıfı
Layout
Görsel Komponentler
Tablo Doldurma
AndroidManifest.xml
Uygulamanın Cihaz Üzerinde Çalıştırılması
Uygulamanın Paketlenmesi ve İmzalanması
Google Play’e Uygulama Yükleme ve Güncelleme
Konu 3: Mobil Uygulama Geliştirme (301)
Bu bölümden itibaren Android için mobil uygulama geliştirmenin ilk adımlarını atıyoruz.
Android 301
- ListView Özelleştirilmesi
- WebView Kullanımı
- Linear Layout Kullanımı
- Android’de Mesajlaşma
- Android’de Konum Servisleri
- Android’de Haritalar Servisi
- AdMob ile Uygulamaya Reklam Ekleme
- Mobil Uygulama Analizi – Flurry
Konu 4: İleri Seviye Mobil Uygulamalar (401)
Artık ileri seviye Android geliştirme sürecine giriyor, uygulamalarımızı hayata geçiriyoruz.