Schița de curs
Concepte de bază ale programării
- Concepte OOP
- Ce este un software
- Conceptul de camere organizate vs neorganizate în programare
- De ce Software
De ce Apple și iOS
- De ce iOS
- Istoria Apple
- Istoria iOS
- USP-ul Apple
- Pentru ce este faimos Apple
- UX vs UI
Mediul de dezvoltare
- Cerințe pentru mediul de dezvoltare
- Xcode și SDK-ul iOS
- Înregistrarea ca Dezvoltator Apple
- Motivul pentru care aplicațiile sunt respinse
- Ghidurile pentru Interfața Umană
Proiecte Xcode iOS
- Prezentare generală a Xcode
- Crearea unui proiect iOS
- Rularea pe simulator și dispozitive reale
Bazele Swift
- De ce Objective C și acum de ce Swift?
- Factorii „Wow” în Swift
- Variabile
- Constante
- Hello World în Swift
- Crearea unui UILabel cu cod
Animație și încărcare de imagini
- UIImageView
- Animații de bază pentru UIView și UIImageView
- Playground
- Încărcarea lentă a imaginilor
- Proprietăți leneșe
Clase și Scene în Swift
- Crearea claselor Swift
- Gestionarea memoriei
- Referințe puternice și slabe
- Tipuri de constructori și destructori în Swift
- Protocoale, Hashable și Printable
- Moștenire
- Crearea Scenelor
- Implementarea Controlerelor de Vedere
- Playground
Ciclu de viață și Lanț de Răspuns
- Ciclu de viață al View-ului
- Ciclu de viață al Aplicației
- Lanțul de Răspuns - metode touchBegan, touchMoved etc.
- NSTimer
Layout Adaptiv
- Storyboards vs XiB
- Suport pentru Multiple Dispozitive
- Dimensiuni de Iconițe și Orientarea Dispozitivului
- Construirea unei Interfețe de Utilizator folosind cod
- Outlets și Acțiuni
- Protocoale - Obligatorii și opționale
- Gestionarea memoriei
Notificări și Localizare
- Notificări Push - Silent și Push
- Localizare
Prezentare generală a Objective C
- Proprietăți
- Categorii
- Sintaxa funcțiilor
- Atributele proprietăților readWrite și readOnly
Integrarea Rețelelor Sociale în iOS:
- Integrarea Facebook
- Integrarea Twitter
- Integrarea Mail
- Integrarea unei aplicații terțe
Componente UI în iOS:
- UITextField
- UITextView
- UISegmentControl
- UISlider
- UISwitch
- UIProgressBar
- UIPageControl
- UIStepper
- UIScrollView
- UIPicker
- UIActionSheet
- UIWebView
- SearchBar
Alte componente de bază și altele în iOS:
- Grupuri și foldere
- Closure
- Tupluri
- URL Session
- URLRequest
- UIAlertView
- UIActivityIndicatorView
- internal, public, private
- Guard
- Optionale
Fire de execuție în iOS:
- GCD
- NSOperationQueue
- Fir principal și fire de fundal
Interacțiunea cu Utilizatorul
- Butoane și handler-e
- Recunoașterea gesturilor de pan
- Recunoașterea gesturilor de tap
- Vizualizare personalizată a tabelului
- Bazele Vizualizării Colectării
Aplicații cu Multiple Ecrane
- Navigare în Tabel
- Aplicații cu Tab-uri
- Controlere de Navigare
- Prezentarea unui controler și animații diferite la prezentarea și împingerea controlerelor
Servicii de Localizare
- Poziție și Altitudine
- Direcția Busolei
Acces la Dispozitiv și Stocare
- Stocarea Fișierelor
- Acces la Biblioteca de Muzică
- CoreData și Sqlite în iOS
- Key Chain
- User Defaults
- PLists
- NSSearchDomain
- Conceptul de Director și securitatea aplicațiilor NSSearchDomain
Cadrul de Vorbire
- Vorbire în text
- Text în vorbire
Cadrul Multipeer
- Trimiterea datelor de la un dispozitiv la altul
- Conectarea mai multor dispozitive
Rețea
- Acces la Rețea
- Serializarea și Deserializarea JSON
- Servicii Web REST
- Bazele Parsării XML
Încărcarea Aplicației pe App Store
- ITunes Connect
- Portalul Dezvoltatorului - Profile de aprovizionare
- Implementare și distribuție
- Rularea aplicației pe dispozitive reale
- Încărcarea aplicației pe App Store
Aplicații
- Jocul Dots: https://itunes.apple.com/app/the-dots-free/id850315430
- Aplicația Notițe: Notes App
- Aplicația Contacte
- Obținerea datelor de la un server dintr-o API deschisă și crearea unui tabel cu date, afișarea detaliilor și utilizarea barei de căutare pentru a căuta ceva și utilizarea Core Data pentru a salva date offline
- Aplicație proprie
Cerințe
Trebuie să ai cel puțin o experiență într-un limbaj de programare în trecut.
Mărturii (1)
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
Curs - iPhone and iPad Development in Swift for iOS 8 and Xcode 6
Tradus de catre o masina