Programa do Curso
Dia 1:
- Conceitos de OOP
- O que é software
- Sala organizada vs sala desorganizada
- Por que Software
- Por que iOS
- História da Apple
- História do iOS
- Diferenciais da Apple (USP)
- O que a Apple é famosa por
- UX vs UI
- IDE?
- Xcode
- Instalação do Xcode
- Por que Objective C e agora Swift?
- Fatores impressionantes no Swift
- Noções básicas de Swift
- Variáveis
- Constantes
- Hello World em Swift
- Criação de labels via código
- ImageView
- Animações de ImageView
- NSTimer
- Cadeia de resposta - métodos touchBegan, touchMoved, etc.
- Delegado principal da UIApplication
- Ciclo de vida do aplicativo
- Ciclo de vida da view
- Any
- Optionals
- internal, public, private
- init
- deinit
- Playground
Aplicativo para fazer: Jogo dos Pontos: https://apps.apple.com/app/the-dots-free/id850315430
Dia 2:
- Animações de UIView
- Extensões
- Tabela (UITableView)
- Células personalizadas na tabela
- Métodos delegados e fonte de dados
- Cabeçalho, rodapé, altura, etc. da tabela
- Breve visão geral do Collection View
- Deque na tabela
- Marcador (Mark)
- Optionals
- didSet
- willSet
- Guard
- Conceitos 2x e 3x
- Navegação de uma view para outra
- UINavigationController
- Apresentar um controlador
- Storyboards
- Xibs
- Restrições (Constraints)
- Tamanho de classes (Size classes)
- Protocolos - obrigatórios e opcionais
- Gestão de memória
Aplicativo para fazer: Aplicativo de notas: Adicionar, excluir e atualizar nota
Dias 3:
- Gestos
- Closures
- Grupos e pastas
- Reconhecedores de gestos
- Análise XML
- NSJSONSerialization
- Conversão de dados para JSON
- Gestor de arquivos (File Manager)
- Tuplas
- Enumerações (Enums)
- For-in
- While
- Serviços web
- URLSession
- URLRequest
- Por que o ecossistema da Apple é o melhor
- Descrição de Printable
- Hashable
- UIAlertView
- UIActivityIndicatorView
Aplicativo para fazer: Obter dados do servidor de uma API aberta, criar uma tabela e popular com dados e mostrar detalhes.
Dias 4:
- Carga preguiçosa (Lazy) de imagens
- Propriedades preguiçosas (Lazy)
- Fila de operações (NSOperationQueue)
- GCD
- Conceito de diretório e segurança de aplicativos NSSearchDomain
- Controlador de barra de tabs (Tab Bar Controller)
- Localização
- Chave de acesso (Key Chain)
- PREFERÊNCIAS DO USUÁRIO (User Defaults)
- Listas de propriedades (PLists)
- Gestor de arquivos (File Manager)
- SQLite
- Extensões
- Integração com redes sociais: Criar conteúdo compartilhável próprio
- UITextField
- UITextView
- UISegmentedControl
- UISlider
- UISwitch
- UIPageControl
- UIStepper
- UIScrollView
- UIPickerView
- UIActionSheet
- UIWebView
- Barra de pesquisa (Search Bar)
- Novo alvo: Apple Watch, Extensões, Teclado, Hoje, etc.
- Notificações no iOS
- Adicionar bibliotecas de terceiros
- Core Data
- Distribuição e implantação
- Executar aplicativo em dispositivos reais
Aplicativo para fazer: Obter dados do servidor de uma API aberta, criar uma tabela, popular com dados, mostrar detalhes, exibir barra de pesquisa e pesquisar algo e Core.
Dias 5:
- Notificações push - silenciosas e push
- Localização
- Visão geral do Objective-C
- Propriedades
- Categorias
- Sintaxe de funções
- Arquivos .h e .m
- Atributos de propriedade readWrite e readOnly
- Atributos de propriedade strong, weak e copy
- Atributos de propriedade atomic e non-atomic
- Enviar aplicativo para a App Store
Aplicativo com sua própria ideia
Requisitos
Deve ter pelo menos uma experiência anterior em linguagem de programação.
Declaração de Clientes (3)
A forma de transferência do conhecimento e o conhecimento do treinador.
Jakub Rekas - Bitcomp Sp. z o.o.
Curso - Machine Learning on iOS
Máquina Traduzida
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
Curso - iPhone and iPad Development in Swift for iOS 8 and Xcode 6
Máquina Traduzida
Antonio gave is much background information, best practices and showed us useful tools to speed up our development process.
Philipp Hunger
Curso - Cross-platform mobile development with PhoneGap/Apache Cordova
Máquina Traduzida