Ementa do Curso O treinamento ios+swift Intro foi criado pela Catteno com o intuito de introduzir os alunos em programação de Apps para a plataforma ios (tablets e smartphones), utilizando a linguagem de programação Swift e as ferramentas mais modernas disponíveis no mercado. Em 32 horas de aulas presenciais, abordamos todos os aspectos básicos da criação de um App, desde a concepção da ideia, até sua implementação e todas as tecnologias envolvidas nesse processo. Metodologia A metodologia da Catteno é prática e dinâmica, mesclando aulas teóricas voltando a apresentação dos conceitos de cada tópico introduzido, com sessões de demonstrações e de exercícios em sala para os alunos, reforçando e fixando os conteúdos apresentados. Diferenciais do treinamento Abordagem prática e dinâmica. Conteúdo técnico de excelente qualidade. Instrutor profissional com mais de 10 anos de experiência no mercado de tecnologia e desenvolvimento de software. Todo o material didático é fornecido no formato e-book para os alunos. São mais de 70 exercícios que podem ser estudados após o treinamento usando os materiais didáticos, através dos quais os alunos podem revisar todo o conteúdo apresentado em sala. Atendimento pós-curso para esclarecimento de dúvidas. Acesso ao grupo de discussões do treinamento, no qual todos os participantes do treinamento trocam experiências e conhecimento. Conteúdo Programático Ao longo do treinamento os alunos desenvolverão o App Traqt. Através de 11 unidades, serão apresentados os conceitos fundamentais para construção do App, usando uma sequência lógica e intuitiva. Conheça o objetivo e os tópicos abordados em cada unidade:
Aula inicial Apresentação do curso para os alunos, instruções gerais sobre a metodologia empregada e o ritmo de aula, visão geral das unidades e dos assuntos abordados. Proposta de apresentação de projeto para o final do treinamento. 1. Introdução à Plataforma ios Nesse módulo os alunos serão formalmente apresentados à plataforma ios, conhecendo um pouco de seu histórico, seus componentes, recursos e ferramentas, bem como sua posição de mercado atual. O objetivo da aula é dar uma visão geral aos alunos sobre a plataforma na qual eles irão desenvolver um conjunto de conhecimentos ao longo do curso. 2. Apresentação do Ambiente de Desenvolvimento O objetivo desse módulo é apresentar ao usuário o ambiente e as ferramentas de desenvolvimento do ios, objetivando mostrar aos alunos os recursos disponíveis para a criação de seus Apps, tal como desmistificar o uso dessas ferramentas que em um primeiro momento podem parecer extremamente complexas, mas que quando dominadas são grandes aliadas na produtividade dos desenvolvedores. 3. Introdução à Linguagem Swift Nesse módulo será apresentada a linguagem Swift aos desenvolvedores, que tomarão conhecimento de sua mecânica, sintaxe, e de todos os recursos básicos para escrita de programas. Usando recursos interativos como os Playgrounds, vamos criar pequenos programas interativos para testar as funcionalidades da linguagem. Após entender seus conceitos básicos vamos aplicá-los na criação das funções básicas do App Traqt. Ao final desse módulo teremos uma versão simples e funcional do App que será construído ao longo do curso. 4. Desenhando o modelo do App com CoreData O modelo é o coração de um aplicativo, ele é responsável por todo o processamento e armazenamento das informações com as quais o App trabalha. Nesse modulo vamos explorar a criação do modelo do App Traqt, criando assim o seu núcleo funcional ao qual nos conectaremos nos próximos módulos e no qual será desenvolvida a interface.
Para construção do modelo, além de explorarmos mais recursos da linguagem Swift, também vamos conhecer a biblioteca Core Data, que permite a criação de um modelo de persistência de dados orientado a objetos, enquanto seu armazenamento é feito de maneira eficiente usando o banco de dados SQLite, presente nativamente na plataforma da Apple. O aluno também aprenderá como utilizar a biblioteca SwiftyIO criada pela Catteno para facilitar o uso do Core Data, através de interfaces mais simples para manipulação das entidades do modelo. Ao final desse módulo o aluno terá compreensão da importância da criação de modelos e os conhecimentos necessários para criação de seus próprios modelos usando o Core Data e a biblioteca SwiftyIO. 5. Montando o Fluxo do App com Storyboards A sequência de telas pelas quais os usuários passam durante a operação de um aplicativo é o que chamamos de "Fluxo do App". A plataforma ios oferece uma poderosa ferramenta para composição do fluxo dos Apps, chamada de "Storyboards". Ela permite não só que desenhemos visualmente cada uma das telas (recurso que será explorado com profundidade no módulo seguinte), bem como descrever as interações entre elas. Nesse módulo os alunos serão apresentados aos Storyboards do ios, enquanto criam o fluxo de telas do App. Os alunos aprenderão quais os principais paradigmas de navegação da plataforma e entenderão quais ferramentas estão disponíveis para facilitar essas tarefas. Ao final desse módulo os alunos terão criado todo o fluxo de navegação do App Traqt, e estarão aptos a montar o fluxo básico de seus próprios Apps. 6. Desenhando a Interface do App com UIKit O UIKit é a biblioteca fundamental para criação de Apps de ios, fornecendo todos os recursos necessários para criação de interfaces e interações. Essa unidade complementa os conhecimentos adquiridos na unidade anterior para capacitar o aluno na construção de interfaces ricas e dinâmicas. 7. Gestão de Dependências com CocoaPods A gestão de dependências é um recurso fundamental para construção de softwares modernos. Através dela conseguimos reaproveitar as soluções empregadas e testadas por outros desenvolvedores, bem como tornar nossas próprias soluções disponíveis aos nossos colegas. Nessa unidade vamos entender de que forma isso é feito na plataforma ios, através do uso da plataforma CocoaPods.
8. Comunicação permanente com o Usuário por Notificações As notificações são um mecanismo importante de interação com os usuários de dispositivos móveis, permitindo as aplicações comunicarem informações do interesse dele de uma forma simples e consistente. Nessa unidade vamos entender como esse mecanismo funciona na plataforma ios. 9. Entendendo as extensões do ios Através do mecanismo de extensões, podemos fazer uso de recursos disponíveis em outros Apps ou proporcionar aos demais o acesso às funcionalidades que incluímos em nossa aplicação de maneira integrada. Nessa unidade vamos conhecer e entender esse recurso. 10. Refinamentos e Ajustes no App Na construção de um aplicativo completo, há diversos detalhes que devem ser contemplados para considerá-lo pronto. Nessa unidade vamos conhecer diversos refinamentos e ajustes importantes para finalizar a construção de nosso App. 11. Conhecendo o Debug de Apps Vamos conhecer as principais ferramentas para identificar e sanar bugs e problemas encontrados em nossos Apps, bem como otimizar sua performance. 12. Empacotamento e Distribuição do App Ao chegarmos ao final deste curso teremos um produto completo, pronto para ser distribuído. Nesta última unidade iremos conhecer e explorar o que é necessário para empacotar e distribuir nossos Apps através da loja da Apple, bem como conhecer como funciona a distribuição de versões betas ou de aplicações corporativas. Cada unidade acompanha uma série de exercícios que aplica os conhecimentos dos assuntos abordados, compondo a construção do App Traqt. Requisitos Este treinamento é direcionado para estudantes ou profissionais de tecnologia, que tenham familiaridade com linguagens de programação e conceitos de orientação a objeto. Não é necessário conhecimento prévio em ios ou plataformas mobile.
Um computador com sistema operacional OSX é recomendado para que os alunos possam acompanhar as práticas ministradas em sala. Opcionalmente eles podem acessar uma instância virtual através do serviço MacInCloud, possibilitando o uso de qualquer estação de trabalho como terminal Mac. Consultar planos para assinatura em: http://www.macincloud.com/pricing/compare Caso os alunos não disponham de equipamento, podem acompanhar o curso e aplicar os exercícios posteriormente através do estudo do material didático fornecido.