Eğitim İçeriği
Temel Programming Kavramları
- OOP kavramları
- Yazılım nedir?
- Programlamada düzenli ve düzensiz odalar kavramı
- Neden Yazılım?
Neden Apple ve iOS
- Neden iOS?
- Apple Tarihi
- iOS Tarihi
- Apple’ın Benzersiz Satış Noktaları (USP)
- Apple Ne İle Ünlüdür?
- Kullanıcı Deneyimi (UX) ve Kullanıcı Arayüzü (UI)
Geliştirme Ortamı
- Geliştirme Ortamı Gereksinimleri
- Xcode ve iOS SDK’sı
- Apple Developer Kaydı
- Uygulamaların Reddedilme Nedenleri
- İnsan Arayüzü Kılavuzları
Xcode iOS Projeleri
- Xcode’a Genel Bakış
- Bir iOS Projesi Oluşturma
- Simülatörde ve Gerçek Cihazlarda Çalıştırma
Swift Temelleri
- Neden Objective-C ve Şimdi Neden Swift?
- Swift’deki Etkileyici Özellikler
- Değişkenler
- Sabitler
- Swift’de “Merhaba Dünya”
- Kodu Kullanarak UILabel Oluşturma
Görüntü Animation ve Görüntü Yükleme
- UIImageView
- Temel UIView ve UIImageView Animasyonları
- Playground
- Görüntülerin Tembel Yüklenmesi
- Tembel Özellikler
Swift Sınıfları ve Sahneler
- Swift Sınıfları Oluşturma
- Bellek Yönetimi
- Güçlü ve Zayıf Referanslar
- Swift’de Yapıcılar ve Yıkıcılar
- Protokoller, Hashable ve Printable
- Kalıtım
- Sahneler Oluşturma
- Görünüm Denetleyicilerini Uygulama
- Playground
Yaşam Döngüsü ve Yanıt Zinciri
- Görünüm Yaşam Döngüsü
- Uygulama Yaşam Döngüsü
- Yanıt Zinciri - touchBegan, touchMoved vb. yöntemler
- NSTimer
Uyarlanabilir Düzen
- Storyboard’lar ve XIB’ler
- Çoklu Cihaz Desteği
- Simge Boyutlandırma ve Cihaz Yönlendirmesi
- Kodu Kullanarak Kullanıcı Arayüzü Oluşturma
- Çıkışlar ve Eylemler
- Protokoller - Gerekli ve İsteğe Bağlı
- Bellek Yönetimi
Bildirimler ve Yerelleştirme
- Sessiz ve İtme Bildirimleri
- Yerelleştirme
Objective-C’ye Genel Bakış
- Özellikler
- Kategoriler
- Fonksiyon Sözdizimi
- Özellik Nitelikleri readWrite ve readOnly
Social Media Entegrasyonu iOS’de:
- Facebook Entegrasyonu
- Twitter Entegrasyonu
- Mail Entegrasyonu
- Üçüncü Taraf Bir Uygulamayı Entegre Etme
iOS’deki UI Bileşenleri:
- UITextField
- UITextView
- UISegmentControl
- UISlider
- UiSwitch
- UIProgressBar
- UIPageControl
- UIStepper
- UIScrollView
- UIPicker
- UIActionSheet
- UIWebView
- SearchBar
iOS’deki Diğer Temel Bileşenler ve Diğerleri:
- Gruplar ve Klasörler
- Closure
- Tuples
- URL Session
- URLRequest
- UIAlerView
- UIActivityIndicatorView
- internal, public, private
- Guard
- Optionals
iOS’de İş Parçacıkları (Threading):
- GCD
- NSOperationQueue
- Ana İş Parçacığı ve Arka Plan İş Parçacıkları
Kullanıcı Etkileşimi
- Düğmeler ve İşleyiciler
- Pan Hareket Tanıma
- Dokunma Hareket Tanıma
- Özel Tablo Görünümü
- Koleksiyon Görünümünün Temelleri
Çoklu Ekran Uygulamaları
- Tablo Gezinimi
- Sekmeli Uygulamalar
- Gezinme Denetleyicileri
- Bir Denetleyici Sunma ve Denetleyicileri Sunarken ve İterlerken Farklı Animasyonlar
Konum Hizmetleri
- Konum ve Yükseklik
- Pusula Yönü
Cihaz Access ve Depolama
- Dosya Depolama
- Müzik Kütüphanesi Access
- CoreData ve SqLite iOS’de
- Anahtar Zinciri
- Kullanıcı Varsayılanları
- PLists
- NSSearchDomain
- Uygulama Güvenliği ve Dizini Kavramı NS Search Domain
Konuşma Çerçevesi (Speech Framework)
- Konuşmayı Metne Çevirme
- Metni Konuşmaya Çevirme
Çoklu Eş Çerçevesi (Multipeer Framework)
- Bir Cihazdan Diğerine Veri Gönderme
- Birden Fazla Cihazı Bağlama
Networking
- Ağ Access
- JSON’u Serileştirme ve Seri Halden Çıkarma
- REST Web Services
- Basit XML Ayrıştırma
Uygulamayı App Store’a Yükleme
- iTunes Connect
- Geliştirici Portalı - Sağlama Profilleri
- Dağıtım ve Yayınlama
- Uygulamayı Gerçek Cihazlarda Çalıştırma
- Uygulamayı App Store’a Yükleme
Uygulamalar
- Dots Oyunu:https://itunes.apple.com/app/the-dots-free/id850315430
- Notlar Uygulaması: Notlar Uygulaması
- Kişiler Uygulaması
- Açık bir API’den sunucudan veri alma, bir tablo görünümü oluşturma ve verileri doldurma, ayrıntılarını gösterme, bir arama çubuğu gösterme, bir şey arama ve verileri çevrimdışı olarak kaydetmek için Core Data kullanma
- Kendi fikrinizden bir uygulama
Kurs İçin Gerekli Önbilgiler
Geçmişte en az bir programlama dili deneyiminiz olmalıdır.
Danışanlarımızın Yorumları (4)
The way of transferring knowledge and the knowledge of the trainer.
Jakub Rekas - Bitcomp Sp. z o.o.
Eğitim - Machine Learning on iOS
Pacing, depth, and explanations were all superb. It's clear Scott is an expert on the subject and learning from him was super enjoyable.
Ben Leiken - SurveyMonkey
Eğitim - Reactive Programming for iOS with RxSwift
He's an experienced trainer with a real life experience in the topic he was teaching. That led the course to cover the most important topics which interests any developer working in the field, and small details would be easily overseen if he was not working in this platform. Moreover, he was giving the course using the latest versions of is and Swift (10 \ 3) and that is a huge advantage to be adapting such new technology in short time.
Abdullah Alaradi - Thiqah Business Services
Eğitim - iPhone and iPad Development in Swift for iOS 8 and Xcode 6
Antonio gave is much background information, best practices and showed us useful tools to speed up our development process.