Post on 10-Aug-2015
iOSUma breve introdução ao desenvolvimento de apps
1. Introdução
1
2. A história• Lançado em Janeiro de 2007;
• Chamado inicialmente de iPhone OS, sendo nomeado como iOS durante o lançamento do iOS 4;
• A primeira versão foi totalmente focada na experiência do usuário;
• Foi chamado de iOS só a partir do iOS 4, em junho de 2010;
• Já existiam sistemas operacionais mobile (MS Windows mobile, Palm OS, Blackberry OS, entre outros);
2
2.1 Início cheio de limitações• Inicialmente não suportava rede 3G, multitarefa, não podia
copiar e colar textos, não podia anexar arquivos arbitrários para textos, sem MMS, sem suporte a compartilhamento de conexão, sem suporte a discagem por voz;
• Lançamento focado na experiência:
• UI - Experiência de uso e tela capacitiva, remoção de botões físicos, gestos;
• Safari Mobile Browser - Experiência do browser do Mac OS para mobile;
• Widescreen;
• Sincronização com iTunes
• Impossibilidade de reorganizar ícones.
3
3. App Store
4
3. Mercado de aplicativos • A primeira versão da App Store foi lançada em julho de 2008, junto junto iOS 2 e o pacote nativo de desenvolvimento;
• A loja de aplicativos já existia dentro da iTunes Store, porém de uma forma desorganizada;
• Estratégia da reutilização de dados de compras na iTunes Store (impulso para compra);
• Regras para publicação de apps;
• Curadoria para marketing e distribuição de apps;
• Baixos preços;
5
3.1 Venda de app’s• É necessário ter uma licença de
desenvolvedor registrado no iTunes connect;
• O aplicativo passa por uma verificação se todas as normas de publicação (guideline de disponibilização na loja) estão sendo atendidas;
• Podem existir compras de produtos perecíveis ou não dentro do app;
• O desenvolvedor recebe 70% da renda gerada em qualquer processo de vendas
7
3.2 iTunes Connect• Administra app’s
publicados que foram submetidos para a plataforma;
• Possibilidade de administrar todos os usuários que estão testando novos produtos;
• Gerenciamento de vendas “in app” e do próprio aplicativo;
8
3.3 App analytics• Permite o tracking da quantidade de:
• Visualizações do app na loja;
• Aberturas do aplicativos por usuários;
• Vendas “in app” no aplicativo;
• Instalações;
• Dispositivos com mais de duas utilizações durante um determinado período
9
3.4 Disponibilização do produto para testes
• Possibilidade de disponibilizar vários “releases ” sem abertura para o público em geral;
• Limite de até 1.000 usuários para testes;
10
4. Experiência visual
• Foco na experiência de uso entre produto e usuário;
• Atraente e intuitivo visualmente;
11
4.1 Princípios de UX
12
4.1.1 DeferênciaA interface de usuário auxilia a compreensão e interação com o conteúdo
do aplicativo
13
4.1.2 ClaridadeTextos legíveis em qualquer tamanho, ícones precisos e
lúcidos, foco no design motivando o uso de funcionalidades
14
4.1.3 ProfundidadeUtilização de camadas visuais e movimentos realistas para
aumentar a alegria e compreensão durante o uso
15
4.2 Layout adaptativoSugere-se que todo conteúdo do aplicativo deve ser adaptativo a
diversas resoluções de dispositivos
16
4.3 Evolução do design e experiência
17
4.3.1 SkeuomorphismPrincípio do design em que os componentes mantém a
estrutura dos objetos originais representados
18
4.3.2 Flat designFlat design, ou design plano, é representado por interfaces
minimalistas, simples, com poucos efeitos visuais. Onde o foco está na tipografia e cores
19
4.3.3 Semi FlatCombina a utilização intensa de cores, profundidade,
minimalismo, animações de transições, com a representação das características de objetos da vida real em componentes
visuais
20
5. Pacotes de desenvolvimento
21
5.1 Requisitos para desenvolvimento
• Sistema operacional Mac OS 10.8 ou superior;
• Xcode 5 ou superior;
• iPhone e/ou com iOS 7 ou superior;
• Licença anual de desenvolvedor (no caso da publicação de app’s)
22
6. Linguagens de desenvolvimento
23
6.1 Objective-c
24
6.1.1 História
• Derivada do Smalltalk e C;
• Desenvolvida no início do ano de 1980;
• Escolhida para ser utilizada nos computadores da NeXT para o NeXTSTEP;
24
6.1.2 Estrutura• Separadas por dois arquivos:
• “.h” : Cabeçalho ou header;
• “.m” : Implementação de métodos e funções do cabeçalho;
• Não existe conceito de objetos, porém é implementado os “ponteiros”;
• Não possui “Garbarage Collector”, porém foi implementado o “ARC” (Automatic Reference Counting)
25
6.1.3 Organização do arquivo .h
26
6.2 Swift
27
6.2.1 História
• Apresentada no final do ano de 2014 durante a WWDC;
• Inspirada no Objetive-C, Haskell, Ruby, Phyton e outras linguagens
• Atualmente está na versão 1.2;
28
6.2.2 Estrutura
• Implementado por apenas 1 arquivo “.swift”;
• Ambientes para aprendizado e testes com a linguagem (“playground”);
• Possui, por padrão, o “ARC”;
29
6.3 Objective-c VS Swift
vs
30
7. Apple Watch
31
7.1 História
• Mais de 3 anos de rumores sobre o seu lançamento e criação;
• Lançado após diversos smartwatchs (Galaxy Gear e Moto 360, como por exemplo);
• Desenvolvimento direcionado por Kevyn Linch, ex-CTO da “Adobe” e principal personagem na luta pela sobrevivência do “Adobe Flash";
32
7.1 Health Kit• Como a Apple citou, o Watch não
tem uma bateria que “dura" muito tempo;
• Só poderá ser utilizado integrado com algum iDevice (iPhone, iPod e/ou iPad);
• É um mero receptor, "acionador" e organizador de notificações de um app instalado em algum iDevice;
• Até agora, a Apple não liberou nenhum recurso de desenvolvimento para tarefas mais complexas.
33
8. Considerações finais“One more thing…”
34
9. Referências
34
http://www.theverge.com/2011/12/13/2612736/ios-history-iphone-ipad http://codigofonte.uol.com.br/noticias/apple-anuncia-quebra-de-recordes-em-vendas-de-apps http://developer.apple.com/ http://pt.wikipedia.org/wiki/Esqueumorfismo http://en.wikipedia.org/wiki/Objective-C http://en.wikipedia.org/wiki/Swift_%28programming_language%29 http://www.wired.com/2015/04/the-apple-watch/