Kerangka Materi
Konsep Dasar Pemrograman
- Konsep OOP (Object-Oriented Programming)
- Apa itu perangkat lunak?
- Konsep ruangan terorganisir vs tidak terorganisir dalam pemrograman
- Mengapa Perangkat Lunak?
Mengapa Apple dan iOS?
- Mengapa iOS?
- Sejarah Apple
- Sejarah iOS
- Keunggulan Utama Apple (USP)
- Apa yang membuat Apple terkenal?
- UX vs UI
Lingkungan Pengembangan
- Persyaratan lingkungan pengembangan
- Xcode dan iOS SDK
- Pendaftaran Developer Apple
- Alasan aplikasi ditolak
- Panduan Antarmuka Manusia (Human Interface Guidelines)
Proyek Xcode iOS
- Ikhtisar Xcode
- Membuat proyek iOS
- Menjalankan aplikasi di simulator dan perangkat nyata
Dasar-dasar Swift
- Mengapa Objective-C dan sekarang mengapa Swift?
- Faktor-faktor luar biasa dalam Swift
- Variable
- Konstanta
- Hello World dengan Swift
- Membuat UILabel dengan kode
Animas dan Pemuatan Gambar
- UIImageView
- Animasi dasar UIView dan UIImageView
- Playground
- Pemuatan gambar yang efisien (lazy loading)
- Sifat-sifat yang efisien (lazy properties)
Kelas Swift dan Adegan
- Membuat kelas Swift
- Pengelolaan memori
- Referensi kuat dan lemah
- Tipe konstruktor dan destruktor dalam Swift
- Protokol, Hashable, dan Printable
- Warisan (Inheritance)
- Membuat Adegan (Scenes)
- Implementasi View Controllers
- Playground
Siklus Hidup dan Rantai Responder
- Siklus Hidup Tampilan (View Life Cycle)
- Siklus Hidup Aplikasi (Application Life Cycle)
- Rantai Responder - metode touchBegan, touchMoved, dll
- NSTimer
Tata Letak Adaptif
- Storyboards vs XiB
- Dukungan untuk Berbagai Perangkat
- Ukuran Ikon dan Orientasi Perangkat
- Membuat Antarmuka Pengguna dengan kode
- Outlets dan Actions
- Protokol - Diperlukan dan Opsional
- Pengelolaan memori
Notifikasi dan Lokalisasi
- Notifikasi Push - Silent dan Push
- Lokalisasi (Localization)
Ikhtisar Objective-C
- Sifat-sifat (Properties)
- Kategori (Categories)
- Sintaks Fungsi
- Atribut Sifat readWrite dan readOnly
Integrasi Media Sosial di iOS:
- Integrasi Facebook
- Integrasi Twitter
- Integrasi Email
- Integrasi aplikasi pihak ketiga
Komponen UI di iOS:
- UITextField
- UITextView
- UISegementControl
- UISlider
- UiSwtich
- UIProgessBar
- UIPageControl
- UIStepper
- UIScrollView
- UIPicker
- UIActionSheet
- UIWebView
- SearchBar
Komponen Dasar Lainnya dan yang Lain di iOS:
- Grup dan folder
- Closure
- Tuples
- URL Session
- URLRequest
- UIAlertView
- UIActivityIndicatorView
- internal, public, private
- Guard
- Optionals
Multithreading di iOS:
- GCD (Grand Central Dispatch)
- NSOperationQueue
- Thread Utama dan Latar Belakang (Main Thread and Background Threads)
Interaksi Pengguna:
- Tombol dan penangan (Buttons and handlers)
- Pengenalan geser (Pan gesture recognition)
- Pengenalan ketuk (Tap gesture recognition)
- Table View Kustom
- Dasar-dasar Collection View
Aplikasi Layar Ganda:
- Navigasi Tabel
- Aplikasi Tabbed
- Kontroler Navigasi
- Menampilkan kontroler dan animasi yang berbeda saat menampilkan dan mendorong kontroler
Layanan Lokasi:
- Posisi dan Ketinggian (Position and Altitude)
- Arah Kompas
Akses dan Penyimpanan Perangkat:
- Penyimpanan File
- Akses Pustaka Musik
- CoreData dan Sqlite di iOS
- Key Chain
- User Defaults
- PLists
- NSSearchDomain
- Konsep direktori dan keamanan aplikasi NSSearchDomain
Bingkai Suara (Speech Framework):
- Suara ke Teks (Speech to text)
- Teks ke Suara (Text to Speech)
Bingkai Multipeer:
- Mengirim data dari satu perangkat ke lainnya
- Menghubungkan beberapa perangkat
Jaringan (Networking):
- Akses Jaringan
- Serialisasi dan Deserialisasi JSON
- Layanan Web REST
- Dasar-dasar Parsing XML
Mengunggah Aplikasi ke App Store:
- ITunes Connect
- Portal Pengembang - Profil Penyediaan (Provisioning profiles)
- Penerapan dan Distribusi
- Menjalankan aplikasi di perangkat nyata
- Mengunggah aplikasi ke toko aplikasi
Aplikasi:
- Game Dots: https://itunes.apple.com/app/the-dots-free/id850315430
- Aplikasi Catatan: Notes App
- Aplikasi Kontak
- Mengambil data dari server melalui API terbuka dan membuat tabel tampilan, memuat data, menampilkan detailnya juga, serta menampilkan bilah pencarian untuk mencari sesuatu dan menggunakan Core Data untuk menyimpan data offline
- Aplikasi berdasarkan ide Anda sendiri
Persyaratan
Anda harus memiliki pengalaman dalam setidaknya satu bahasa pemrograman.
Testimoni (3)
Cara mentransfer pengetahuan dan pengetahuan pelatih.
Jakub Rekas - Bitcomp Sp. z o.o.
Kursus - Machine Learning on iOS
Diterjemahkan Mesin
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
Diterjemahkan Mesin
Antonio gave is much background information, best practices and showed us useful tools to speed up our development process.
Philipp Hunger
Kursus - Cross-platform mobile development with PhoneGap/Apache Cordova
Diterjemahkan Mesin