Eğitim İçeriği
Giriş
1. Hafta: İleri Seviye Swift, Kotlin ve JavaScript Konseptleri
- Swift (iOS)
- İleri fonksiyonlar: Closures, değerleri yakalama, yüksek dereceli fonksiyonlar
- Protokol-temelli programlama ve genel türler
- Bellek yönetimi ARC (Otomatik Referans Sayım) ile
- Kotlin (Android)
- Uzantı fonksiyonları ve Kotlin Standart Kütüphanesi
- Eşzamanlı programlama için coroutines
- Mühürlanmış sınıflar, numaralandırma türleri ve ileri hata yönetimi
- JavaScript (React Native)
- İleri ES6+ özellikler: Parçalama, async/await, promises
- JavaScript'te fonksiyonel programlama kavramları
- React Native'da üçüncü taraf kütüphanelerle çalışma
2. Hafta: Mobil Uygulama Mimarisini ve Tasarım Desenlerini Anlamak
- MVVM (Model-View-ViewModel) iOS ve Android için
- iOS (Swift) ve Android (Kotlin) için MVVM mimarisini anlamak
- ViewModel'leri uygulama ve LiveData ile veriyi gözlemleme (Android), Combine ile (iOS)
- RxSwift ve RxKotlin ile reaktif programlama
- React Native'da Bileşen Temelli Mimari
- Bileşen yaşam döngülerini ve hook'ları anlamak
- Devasa ölçekte state ve props yönetimi için en iyi uygulamalar
- Global state yönetimi için React Context API'sini kullanma
3. Hafta: İleri Seviye Ağ Konseptleri
- iOS (Swift)'de Ağ
- Görgü tanıtıcı network istekleri için URLSession ile çalışma
- İleri REST API çağrıları ve hata yönetimi
- Codable ve JSON ayrıştırma ile çalışma
- Güvenli API iletişimi için en iyi uygulamalar (SSL pinning, OAuth)
- Android (Kotlin)'de Ağ
- API çağrıları ve yanıt yönetimi için Retrofit
- İleri API hata yönetimi ve yeniden deneme mekanizmaları
- Gson veya Moshi ile JSON ayrıştırma
- HTTPS ve OAuth kimlik doğrulaması kullanarak güvenli iletişim
4. Hafta: React Native'de Ağ
- Axios ve Fetch ile API Entegrasyonu
- Axios ve Fetch ile ileri seviye API entegrasyonu
- Ağ isteklerinde hata yönetimi stratejileri ve yeniden denemeler
- Kimlik doğrulaması (JWT, OAuth) ile çalışma
- WebSockets ve Gerçek Zamanlı İletişim
- React Native'de WebSockets'e giriş
- WebSocket bağlantıları kullanarak gerçek zamanlı sohbet veya bildirim özellikleri oluşturma
- Sürdürülebilir bağlantıları ve veri güncellemelerini yönetme
5. Hafta: İleri Seviye Veri Kalıcılık Teknikleri
- Core Data ve SQLite (iOS)
- İleri Core Data ilişkileri, sorguları ve veri çekme işlemleri
- iOS uygulamalarında doğrudan SQLite kullanma ve veritabanı bağlantılarını yönetme
- Etkili veri yönetimi ve optimizasyon
- Room Kalıcılık ve SQLite (Android)
- İleri Room veritabanı ilişkileri ve sorguları
- Devasa veri setlerini yönetme ve veritabanı performansını optimizet etme
- Veritabanı yapılarını güvence altına almak için ProGuard kullanma
- Firebase ile Bulut Depolama (iOS ve Android)
- Güvenli veri yönetimi için Firebase entegrasyonu
- Yerel ve bulut verisini senkronize etmek için en iyi uygulamalar
6. Hafta: React Native'de İleri Seviye Durum Yönetimi
- Durum Yönetimi için Redux
- İleri Redux kavramları: Middlewares, Thunks ve Sagas
- Gelişmiş performans ve ölçeklenebilirlik için Redux'u optimizet etme
- Durum Yönetimi için Recoil
- Redux'e göre daha esnek bir alternatif olan Recoil'e giriş
- Bileşenler arasında devasa ölçekte durum yönetimi
- Etkili durum güncellemeleri ve atomik durum yönetimi
7. Hafta: iOS ve Android'de İleri Seviye Animasyonlar
- iOS (Swift)
- Core Animation: Görünümleri, katmanları ve geçişleri animetleme
- UIKit Dynamics: Fizik temelli animasyonlar oluşturma
- Görünüm kontrolcüleri arasındaki özel geçişler ve animasyonlar
- Android (Kotlin)
- Karmaşık animasyonlar için MotionLayout
- Geçiş Yöneticisi ve ortak eleman geçişleri
- Görünüm ölçeklendirme, döndürme ve alfa değişiklikleri için özellik animasyonları
8. Hafta: Animasyonlar ve UI/UX React Native'de
- React Native Animasyonları
- Karmaşık animasyonlar için Animated API ve Reanimated kullanma
- React Native Gesture Handler ile jestler ve etkileşimleri uygulama
- React Native'de performanslı animasyonlar için en iyi uygulamalar
- Özel UI Bileşenleri Oluşturma
- React Native'da yeniden kullanılabilir ve özelleştirilebilir bileşenler oluşturma
- Medya sorguları ve flexbox ile yanıt veren tasarımlar uygulama
9. Hafta: Yerel Modüllerin ve Cihaz Özelliklerinin Entegrasyonu
- Yerel Cihaz Özelliklerine Erişim
- Kamera, coğrafi konumlandırma, Bluetooth ve sensörlerin ileri düzey kullanımı
- Swift ve Kotlin kullanarak React Native için yerel modüller oluşturma
- iOS'ta ARKit'i entegrasyon için augmented reality
- Android'da CameraX ve ARCore ile augmented reality
- React Native Köprüsü ve Yerel Modüller
- Platform spesifik işlevlere entegre etmek için özel yerel modüller oluşturma
- Java ve Swift köprüleri kullanarak React Native uygulamaları oluşturma
- Çok platformlu ortamlarda yerel kod yönetimi için en iyi uygulamalar
10. Hafta: İleri Seviye Uygulamaların Testi ve Hata Ayıklaması
- iOS (Swift) Testi
- XCTest ile birim testlerini yazma ve iOS için UI testleri
- Bellek sızıntılarını tespit etmek için Xcode Instruments kullanma
- Jenkins ve CircleCI ile sürekli tümleştirme ve test akışları
- Android (Kotlin) Testi
- Android uygulamaları için ileri JUnit ve Espresso testleri
- Performans analizi ve sıkıntılara neden olan noktaların belirlenmesi için Android Profiler kullanma
- Firebase Test Lab ile çoklu cihazlarda otomatik testler
- React Native Testi
- Jest ile birim testleri ve Enzyme ile bileşen testleri
- Detox ve otomatik test kurulumları kullanarak uçtan uca testler
- React Native Debugger ve Flipper ile performans analizi
11. Hafta: Uygulama Dağıtımı ve Sürekli Tümleştirme
- App Store (iOS) Dağıtımı
- Uygulamanızı göndermek için hazırlama: App Store sertifikaları, sağlama profilleri ve TestFlight beta testleri
- iOS uygulama dağıtımını otomatikleştirmek için Fastlane kullanma
- App Store Connect yönetimi ve app incelemelerini ayarlama
- Google Play (Android) Dağıtımı
- Google Play gönderiminde APK'yi hazırlama ve imzalama
- Fastlane ve Gradle ile Android uygulama dağıtımını otomatikleştirme
- App incelemeleri ve beta testleri için Google Play Konsolu kullanma
- CI/CD Pipeline'larını Ayarlama
- Jenkins, GitHub Actions veya CircleCI ile otomatik化的构建和部署管道配置
- Faslane ile iOS ve Android için CI/CD workflows的使用
- 处理版本控制、构建编号和发布渠道的最佳实践
12. Hafta: Final Projesi
- Son Proje Geliştirme
- Bu kurs boyunca öğrendiğiniz gelişmiş özelliklerle tamamen işlevsel bir uygulama tasarlayın ve geliştirin.
- Özelleştirilmiş UI/UX, gelişmiş animasyonlar, durum yönetimi, yerel modül entegrasyonu ve gerçek zamanlı API iletişimi uygulayın.
- Uygulamanızı performans için optimize edin ve App Store'a ve Google Play'e dağıtın.
Özet ve Sonraki Adımlar
Kurs İçin Gerekli Önbilgiler
- Swift, Kotlin ve JavaScript'te programlama kavramlarının sağlam bir anlayışı
- Temel iOS, Android veya React Native uygulamaları oluşturma deneyimi
- MVC veya MVVM gibi tasarım desenleri hakkında bilgi ve temel durum yönetimi deneyimi
Hedef Kitle
- Uygulama geliştiricileri
- Programcılar
Danışanlarımızın Yorumları (5)
Çok faydalı ek bilgiler
Grzegorz - Comp S.A.
Eğitim - BLoC Pattern
Yapay Zeka Çevirisi
Edward harika bir facilitatordır
Zibusiso Ncube - Agricatural Research Council
Eğitim - Ionic 4 and Angular for Developers
Yapay Zeka Çevirisi
Belki daha fazla egzersiz öğrenmek için daha iyi olabilirdi, ancak zaman yetersizdi.
Gianpiero Arico' - Urmet Spa
Eğitim - Embedded Linux Systems Architecture
Yapay Zeka Çevirisi
Miguel'in konu hakkındaki bilgisi kapsayıcıydı. Eğitimini anlamaya kolay olan ve akışı dengeli hale getirdi; her bölümünü gerekliyse yeni özelliklerle geliştirdi. Tüm istenenleri kapsadı ve her soruya ayrıntılı olarak cevap verdi. Çok hoş bir deneyimdi.
Paul Coaton - SEMPCheck Services
Eğitim - Flutter Development Bootcamp with Dart
Yapay Zeka Çevirisi
Antrenör heyecanlı, nazik ve konuyu çok seviyordu
Isaac Murphy - Royal New Zealand Airforce
Eğitim - Build Native iOS and Android Apps with Flutter
Yapay Zeka Çevirisi