Eğitim İçeriği

Giriş

1. Hafta: Mobile Development'e Genel Bakış

  • Mobil Ekosistem ve Platformlar
    • Mobil işletim sistemlerine genel bakış (iOS ve Android)
    • iOS, Android ve çapraz platform geliştirme arasındaki temel farklar
    • Popüler uygulama mağazaları (Apple App Store, Google Play Store)
    • Yerel, hibrit ve çapraz platform geliştirmeye giriş
  • Yerel ve Hibrit ve Çapraz Platform
    • Her geliştirme yönteminin avantajları ve zorlukları
    • Swift (iOS için), Kotlin (Android için) ve React Native (çapraz platform) genel bakış
    • Kodun mobil platformlara nasıl çevrildiği (JavaScript'den React Native'daki yerel koda)
  • Programming Temelleri
    • Programlama kavramlarına giriş (değişkenler, veri türleri, fonksiyonlar, kontrol akışı)
    • Swift, Kotlin ve JavaScript sözdiziminin karşılaştırılması
    • Swift, Kotlin ve JavaScript kullanarak basit programlar yazma
  • Geliştirme Ortamlarının Kurulumu
    • Xcode ve Android Studio'nun kurulumu
    • React Native CLI ve Expo'nun kurulumu
    • Simülatörlerde ve emülatörlerde temel "Merhaba Dünya" uygulamalarını çalıştırma

2. Hafta: Swift, Kotlin ve JavaScript'ye Giriş

  • Swift Programming iOS için
    • Swift'daki değişkenler, sabitler ve veri türleri
    • Kontrol akışı ifadeleri (if, switch, döngüler)
    • Swift'daki fonksiyonlar ve parametreler
    • Xcode arayüzüne ve Swift Oyun Alanlarına giriş
  • Kotlin Programming Android için
    • Kotlin'deki değişkenler, veri türleri ve fonksiyonlar
    • Kotlin'nin null güvenliğinin anlaşılması
    • Kontrol akışı ve döngü yapıları
    • Android Studio arayüzüne ve Kotlin Oyun Alanına giriş
  • JavaScript React Native için
    • JavaScript'daki değişkenler, sabitler ve kontrol akışı
    • ES6 özellikleri: ok fonksiyonları, şablon değişmezleri ve yapılandırma
    • React Native'da Expo kullanarak temel JavaScript programları yazma ve çalıştırma

3. Hafta: iOS Kullanıcı Arayüzü Tasarımı

  • UI Element'ları iOS'de
    • UIKit ve SwiftUI'ye giriş
    • Düğmeler, etiketler ve metin alanları gibi UI öğelerinin eklenmesi ve özelleştirilmesi
    • UI tasarlamak için Arayüz Oluşturucu'nun kullanılması
    • Çok ekranlı UI'ler tasarlamak için Hikaye Panolarının kullanılması
  • Otomatik Düzen ve Kısıtlamalar
    • Otomatik Düzen sisteminin anlaşılması
    • Farklı ekran boyutlarında duyarlı düzenler için kısıtlamaların kullanılması
    • Yığın görünümlerinin oluşturulması ve UI öğelerinin dinamik olarak ayarlanması
  • SwiftUI Temelleri
    • SwiftUI'de bildirimsel UI tasarımına giriş
    • SwiftUI kullanarak basit UI bileşenlerinin oluşturulması

4. Hafta: Android Kullanıcı Arayüzü Tasarımı

  • XML Düzenleri Android'te
    • XML tabanlı düzen tasarımına giriş
    • Yaygın düzenlerle çalışma: LinearLayout, RelativeLayout, ConstraintLayout
    • UI öğelerinin eklenmesi ve özelleştirilmesi: düğmeler, metin görünümleri, resim görünümleri
    • Duyarlı ve dinamik düzenler için ConstraintLayout'un kullanılması
  • Malzeme Tasarımı
    • Malzeme Tasarımı ilkelerinin (renkler, simgeler, tipografi) entegre edilmesi
    • Malzeme Bileşenlerinin (düğmeler, kayan eylem düğmeleri, kartlar) kullanılması
    • Android uygulamaları için temaların ve stillerin uygulanması

5. Hafta: React Native Kullanıcı Arayüzü Tasarımı

  • React Native Esnek Kutu Düzeni
    • Duyarlı düzen tasarımı için Esnek Kutu'nun anlaşılması
    • Sütun ve satır tabanlı düzenlerin oluşturulması
    • Esnek Kutu özellikleriyle (justifyContent, alignItems vb.) UI bileşenlerinin stillendirilmesi
  • React Native Bileşenleri
    • Text, View, TextInput ve Button gibi temel bileşenlerle çalışma
    • Formlar ve düğmeler gibi etkileşimli UI öğelerinin oluşturulması
    • Dinamik içerik için ScrollView bileşeninin kullanılması

6. Hafta: iOS ve Android'te Veri İşleme

  • iOS Veri İşleme
    • Basit veri kalıcılığı için UserDefaults'in kullanılması
    • Karmaşık verilerin yerel olarak depolanması için Core Data'ya giriş
    • URLSession kullanarak API'lerden veri alma
    • JSON verilerini ayrıştırma ve UI'de görüntüleme
  • Android Veri İşleme
    • Küçük miktarda veri depolamak için SharedPrefences'in kullanılması
    • Veritabanlarını yönetmek için SQLite ve Room Persistence Library'ye giriş
    • API'lerden veri almak için Retrofit'in kullanılması
    • JSON'u ayrıştırma ve API yanıtlarını işleme

7. Hafta: React Native Durum ve API'ler

  • React Native'ta Durum ve Özellikler
    • React Native bileşenleri içindeki veri akışının yönetilmesi
    • Yerel bileşen durumunu yönetmek için useState kancasının kullanılması
    • Üst bileşenden alt bileşenlere özellikler aracılığıyla veri geçirme
  • React Native'ta Veri Alma
    • HTTP istekleri yapmak için Fetch API ve Axios'un kullanılması
    • Alınan verilerin listelerde görüntülenmesi (FlatList, SectionList kullanılarak)
    • React Native'ta verilerin yerel olarak kalıcı hale getirilmesi için AsyncStorage'nun kullanılması

8. Hafta: iOS ve Android'te Gezinme

  • iOS Gezinme
    • Gezinme denetleyicilerine giriş ve birden çok ekranın yönetilmesi
    • Görünüm denetleyicileri arasında geçiş yapmak için geçişlerin kullanılması
    • Görünüm denetleyicileri arasında veri geçirme
    • Yapılandırılmış gezinme için Sekme Çubuğu ve Gezinme Çubuğunun uygulanması
  • Android Gezinme
    • Çok ekranlı uygulamalar için Etkinlikler ve Amaçlarla çalışma
    • Etkinlikler arasında Paketler aracılığıyla veri geçirme
    • Gezinme Çekmecesi ve Alt Gezinme Görünümü oluşturma
    • Esnek UI gezinmesi için parçaların uygulanması

9. Hafta: React Native'ta Gezinme

  • React Gezinme Temelleri
    • React Gezinmenin kurulması ve ayarlanması
    • Ekran geçişleri için Yığın Gezinme'nin kullanılması
    • Karmaşık gezinme için Sekme Gezinme ve Çekmece Gezinme'nin uygulanması
    • Ekranlar arasında parametre geçirme ve gezinme durumunun yönetilmesi

10. Hafta: Gelişmiş Özellikler

  • iOS Gelişmiş Özellikler:
    • Çekirdek konum ve haritalar
      • Cihaz konumunu Çekirdek Konum ile alma
      • Haritaları MapKit ile görüntüleme
      • Konum ve kullanıcı konum izleme ile ilgilenme
    • Kamera ve ortam
      • Cihaz kamerasını ve fotoğraf kitaplığını alma
      • Resimleri yakalama ve görüntüleme ile ilgilenme
      • Ortam dosyalarını depolama ve alma
  • Android Gelişmiş Özellikler
    • Konum ve haritalar
      • Google Haritalar API'sini haritaları ve kullanıcı konumunu görüntülemek için kullanma
      • GPS verilerini alma ve konumla ilgilenme
    • Kamera ve ortam
      • Fotoğraf çekmek ve kamera izinleriyle ilgilenmek için CameraX'i kullanma
      • Resimleri görüntüleme ve ortam depolamayla ilgilenme
  • React Native Gelişmiş Özellikler
    • React Native haritalar
      • Haritaları react-native-maps ile entegre etme
      • Konum tabanlı hizmetlerle ilgilenme (konum, rota eşleme)
    • Kamera ve ortam erişimi
      • Fotoğraf çekmek için React Native Kamera kitaplığını kullanma
      • Cihaz ortam depolamayla ilgilenme ve dosyaları işleme

11. Hafta: Hata Ayıklama ve Test

  • iOS Hata Ayıklama ve Test
    • Xcode hata ayıklayıcısını kullanma
      • Kesme noktaları ayarlama ve Xcode'de değişkenleri inceleme
      • Gerçek zamanlı hata ayıklama için konsolu kullanma
      • Yaygın hata ayıklama sorunları ve bunları çözme yolları
    • iOS'de Birim testi
      • XCTest çerçevesini kullanarak birim testleri yazma ve çalıştırma
      • Nesneleri taklit etme ve UI bileşenlerini test etme
  • Android Hata Ayıklama ve Test
    • Logcat'i Android Studio'da kullanma
      • Hataları günlüğe kaydetme ve analiz etme
      • Kesme noktalarıyla Android uygulamalarını hata ayıklama
    • Android'te Birim testi
      • JUnit kullanarak birim testleri yazma
      • UI bileşenlerini Espresso ile test etme
  • React Native Hata Ayıklama ve Test
    • React Native hata ayıklama araçları
      • Gerçek zamanlı hata ayıklama için Chrome DevTools ve React Native Hata Ayıklayıcıyı kullanma
      • Konsol günlükleri ve ağ isteklerini inceleme
    • React Native'ta Birim testi
      • Jest ve Enzyme kullanarak birim testleri yazma
      • React Native bileşenlerini test etme ve test durumlarını yönetme

12. Hafta: Uygulama Dağıtımı ve Kapsam Projesi

  • Dağıtım ve Dağıtım
    • iOS Uygulama Mağazası başvurusu
      • Uygulamayı dağıtım için hazırlama (simgeler, sertifikalar, sağlama profilleri)
      • Uygulamayı inceleme için App Store Connect'i kullanma
      • Beta testi için TestFlight'ı kullanma
    • Android Play Store başvurusu
      • APK'yı hazırlama ve uygulamayı imzalamak
      • Uygulama başvurusu ve izleme için Google Play Console'u kullanma
      • Play Store politikalarını ve yönergelerini anlama
  • Kapsam Projesi Geliştirme
    • Son proje geliştirme
      • Seçtiğiniz tamamen işlevsel bir uygulama oluşturma
      • API çağrıları, gezinme, ortam ve konum gibi gelişmiş özellikleri dahil etme
      • Son uygulamayı akranlara ve eğitmenlere sunma ve tanıtma

Özet ve Sonraki Adımlar

Kurs İçin Gerekli Önbilgiler

  • Programlama kavramlarına temel düzeyde hakimiyet
  • JavaScript hakkında temel bilgi

Hedef Kitle

  • Mobil uygulama geliştiricileri
  • Programcılar
 420 Saat

Katılımcı Sayısı


Kişi Başına Fiyat

Danışanlarımızın Yorumları (5)

Yaklaşan Etkinlikler

İlgili Kategoriler