Kerangka Materi
Hari 1:
- Konsep OOPS
- Apa itu software
- Ruangan terorganisir v/s tidak terorganisir
- Mengapa software
- Mengapa iOS
- Sejarah Apple
- Sejarah iOS
- USP Apple
- Apa yang membuat Apple terkenal
- UX v/s UI
- IDE?
- XCode
- Instalasi XCode
- Mengapa Objective C dan sekarang mengapa Swift?
- Faktor menarik di Swift
- Dasar-dasar Swift
- Variabel
- Konstanta
- Hello World dalam Swift
- Pembuatan label melalui kode
- ImageView
- Animasi ImageView
- NSTimer
- Responder Chain - metode touchBegan, touchMoved, dll
- Utama delegasi UiApplication
- Siklus hidup aplikasi
- Siklus hidup tampilan
- Apapun
- Opsi
- internal, publik, privat
- init
- deinit
- Main Playground
Aplikasi yang harus dibuat: Dots Game: https://apps.apple.com/app/the-dots-free/id850315430
Hari 2:
- Animasi UIView
- Ekstensi
- UITable View
- Sel kustom di tabel
- Metode delegasi dan sumber data di Delegates
- Header, Footer, Ketinggian, dll dari tabel
- Rincian mengenai tampilan koleksi
- Deque di tabel
- Tandai
- Opsi
- didSet
- willSet
- Penjaga
- Konsep 2x dan 3x
- Navigasi dari satu tampilan ke tampilan lainnya
- Kontroler navigasi UINavigation
- Tampilkan kontroler
- Storyboards
- Xibs
- Batasan
- Kelas ukuran
- Protokol - Wajib dan opsional
- Pemeliharaan memori
Aplikasi yang harus dibuat: Aplikasi catatan: Menambahkan, menghapus dan memperbarui catatan
Hari 3:
- Gestur
- Penutup
- Grup dan folder
- Pendeteksi gestur
- Parsing XML
- Serialisasi NSJson
- Mengonversi data menjadi Json
- Manajer file
- Tuples
- Enum
- For-in
- Sementara
- Webservices
- Sesi URL
- Permintaan URL
- Mengapa ekosistem Apple terbaik
- Mencetak - deskripsi
- Hashable
- UIAlertView
- UIActivityIndicatorView
Aplikasi yang harus dibuat: Mendapatkan data dari server melalui aplikasi API terbuka dan membuat tampilan tabel, memasukkan data dan menampilkan detailnya.
Hari 4:
- Penggunaan gambar lazy loading
- Properti lazy
- NSOperationQueue
- GCD
- Konsep direktori dan keamanan aplikasi NSSearchDomain
- Kontroler Tab Bar
- Lokalisasi
- Rantai kunci
- Default pengguna
- PLists
- FileManager
- SQlite
- Ekstensi
- Integrasi media sosial: Membuat konten yang dapat dibagikan sendiri
- UITextField
- UITextView
- UISegementControl
- UISlider
- UiSwtich
- UIProgessBar
- UIPageControl
- UIStepper
- UIScrollView
- UIPicker
- UIActionSheet
- UIWebView
- SearchBar
- Target baru: Apple Watch, Ekstensi, Keyboard, Hari Ini, dll
- NSNotifications di iOS
- Menambahkan perpustakaan pihak ketiga
- Core Data
- Pelaksanaan dan distribusi
- Menjalankan aplikasi pada perangkat sebenarnya
Aplikasi yang harus dibuat: Mendapatkan data dari server melalui aplikasi API terbuka dan membuat tampilan tabel, memasukkan data dan menampilkan detailnya dan menampilkan Search bar dan mencari sesuatu dan Core
Hari 5:
- Push Notification - Senyap dan Push
- Lokalisasi
- Tinjauan mengenai Objective C
- Properti
- Kategori
- Sintaks fungsi
- Berkas .h dan .m
- Atribut properti readWrite dan readOnly
- Atribut properti strong, weak dan copy
- Atribut properti atomic dan non-atomic
- Mengunggah aplikasi ke App Store
Aplikasi ide Anda sendiri
Persyaratan
Testimoni (4)
The way of transferring knowledge and the knowledge of the trainer.
Jakub Rekas - Bitcomp Sp. z o.o.
Kursus - 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
Kursus - 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
Kursus - 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.