Sobre Autor
Com 5 anos focados exclusivamente em desenvolvimen-to d e aplicativo, sou sócio fundador d a empresa App Maria, tenho uma biografia simples, meu foco é em resultados e projetos executados.
Minha primeira formação foi ser o aluno da Olimpíada do Conhecimento Senai – M T em 2008, r epresentando o estado de MT em Curitiba – PR, logo em seguida cursei o curso técnico de análise e desenvolvimento de sistema na mesma instituição, anos seguintes me tornei o instrutor do Senai, ministrando cursos livres e técnicos, além d a experiência de ser u m avaliador da ocupação de Design Gráfico de Mato Grosso na Olimpía-da do Conhecimento em Belo Horizonte em 2014.
Após essa jornada decidi criar a minha empresa a qual atuo até o momento.
Luis NathanEspecialista em protótipo e desenvolvimento de aplicativo
Licensed to Luis Nathan - [email protected] - HP40115947464507
Sumários
1. Prototipagem de aplicativo - Briefing
- Persona, Storytelling e Proposta de Valor - Golden Path - Wireframe -- Conceito -- Faça Agora [Explicar como fazer papel e lápis] -- Fontes de pesquisas -- Padrões nativos de design - Protótipo -- Conceito -- Ferramentas disponíveis para criação do protótipo
2. Gestão da Programação - Scrum [Gestão de Projetos Ágil] -- Entendendo ecossistema -- Papel da estrutura Scrum -- Ferramenta para gerenciamento do Scrum - Servidor -- Detalhar microsserviços -- Detalhar aproximação de valores - Modelagem de banco de dados -- SQL -- NOSQL
- Webservice -- Conceito -- Exemplos [gateway de pagamento e NodeJS]
- Web Administrador do App -- Quando utilizar o sistema de administração para o aplicativo? -- Front-end -- Back-end
137
1010131415161617
1921222324242628
303032
33
Licensed to Luis Nathan - [email protected] - HP40115947464507
Sumário
-- Funcionalidades padrões de um administrador de aplicativo
-- Relatórios detalhados com base no banco de dados
3. Programação do Aplicativo - Híbrido -- Flutter e React Native - Nativo -- iOS [Swift] -- Android [Kotlin]
- Ferramenta de teste do aplicativo -- Antes da publicação --- Teste Lab [Firebase] ---- Excelente para corte de dispositivos
com mau desempenho na playstore -- Depois da publicação --- App Distribution [Firebase] - Publicar para o público em geral
4. Expansão do Aplicativo - Ferramentas do Firebase
5. Qualidade do Aplicativo - Ferramentas do Firebase
6. Análise de Dados
- Ferramentas do Firebase
- O que fazemos com esses dados?
7. Comece agora o desenvolvimento do seu aplicativo
3537
39404545
46
47
48
50
53
57
58
Licensed to Luis Nathan - [email protected] - HP40115947464507
1IntroduçãoNesse e-book, daremos a você empreendedor as informações que geralmente ficam guardadas à sete chaves pelas empresas de desenvolvimento de aplicativo.
Entenda todo o processo de desenvolvimento de um aplicativo e todas as tecnologias disponíveis para a criação do teu projeto.
Após 5 anos focados exclusivamente em desenvolvi-mento de aplicativos com a App Maria, tivemos maravi-lhosas experiências e gostaríamos de entregar este e-book para municiá-los com informações de quem já está no mercado.
Licensed to Luis Nathan - [email protected] - HP40115947464507
1Prototipagem de Aplicativo
Briefing
Conceito: Briefing é um conjunto de informações, uma coleta de dados para o desenvolvimento de um aplicati-vo/projeto.
O briefing é um processo utilizado na área administrati-va, por profissionais da comunicação, relações públicas e publicitários. O briefing é a base de um processo de um planejamento.
Sabendo o que é briefing e conhecendo sua importância ao iniciar um projeto ou executar uma demanda, pode ser que surjam algumas dúvidas quando você começar a criar o seu primeiro documento. Importante começar com as 5 primeiras perguntas focadas exclusivamente no desejo que o dono do aplicativo tem.
1 - Qual impacto desse aplicativo no dia dia do usuário? Exemplo: Com base no seu aplicativo, em que momento do dia o usuário utilizaria?
2 - Em que momento ele utilizará seu aplicativo? Exemplo: O whatsapp é usado sempre que é necessário ter uma comunicação com outra pessoa, ou grupo de pessoas.
Licensed to Luis Nathan - [email protected] - HP40115947464507
3 - Pretende ganhar dinheiro a longo prazo ou a curto prazo com seu aplicativo? Exemplo: Seu projeto é algo que precisa de grande volume de dados para gerar lucratividade, ou será cobrado no momento do download? 4 - Seu aplicativo tem concorrentes? Exemplo: Importante entender o nível de complexidade do projeto 5 - Seu aplicativo precisa de uma terceira pessoa ou serviço para funcionar? Exemplo: Uber. É necessário uma outra pessoa na ponta para que o ciclo de uso do aplicativo funcione corretamente, ou seja, o usuário pode baixar o aplicativo, mas se não tiver motorista para atender a chamada de deslocamento o aplicativo se tornar inútil.
Faça você mesmo: Imprima o questionário que está disponível link abaixo, faça o download ou escaneie o QR Code.
Clique Aqui
Download DisponívelImprimiu seu e-book? Escaneie para o download.
Escaneie o QR Code
2Prototipagem de Aplicativo
Licensed to Luis Nathan - [email protected] - HP40115947464507
3Prototipagem de Aplicativo
Persona
Conceito: Persona é a representação fictícia do cliente ideal de um negócio. Ela é baseada em dados reais sobre comportamento e características demográficas dos clientes, assim como suas histórias pessoais, motivações, objetivos, desafios e preocupações.
No desenvolvimento de aplicativo sem identificar a persona, não existe estratégia para plano de ação, visto que os primeiros passos são exatamente baseados na persona e no briefing.
Sugiro entrevistar realmente uma pessoa que tem a característica necessária para ser a persona do seu aplicativo.
Existe diferença entre Persona e Público-Alvo veja o exemplo abaixo:
Público-alvo: Homens e mulheres, de 24 a 30 anos, solteiros, graduados em arquitetura, com renda
Licensed to Luis Nathan - [email protected] - HP40115947464507
média mensal de R$ 3.500. Pretendem aumentar sua capacitação profissional e gostam de viagens.
Persona: Mateus Almeida tem 26 anos, é arquiteto recém-formado e autônomo. Pensa em se
desenvolver profissionalmente através de um mestrado fora do país, pois adora viajar, é solteiro e
sempre quis fazer um intercâmbio. Está buscando uma agência que o ajude a encontrar universidades
na Europa que aceitem alunos estrangeiros.
Faça você mesmo: Imprima o modelo de persona que está disponível link abaixo, faça o download ou escaneie o QR Code.
4Prototipagem de Aplicativo
i
l
Clique Aqu
Download DisponíveImprimiu seu e-book? Escaneie para o download.
Escaneie o QR Code
Licensed to Luis Nathan - [email protected] - HP40115947464507
5Prototipagem de Aplicativo
Storytelling
Conceito: Storytelling é uma palavra em inglês, que está relacionada com uma narrativa e significa a capacidade de contar histórias relevantes.
O storytelling consiste na partilha de uma história única e real de uma empresa ou de um produto, criando uma relação entre o problema e a sua solução. Existindo assim ponto chaves de com palavras para envolver o leitor a história contada.
Exemplo podemos visualizar o Storytelling do AirBnb:
Era uma vez, um casal de artistas de Campos de Jordão, São Paulo, que moravam em uma linda casa com um chalezinho nos fundos. Todos os dias, eles se separavam para trabalhar e pagar o financiamento dessa casa. Um certo dia, eles descobriram a possibilidade de ganhar dinheiro extra, alugando o chalé. Por causa disso, eles consegiram pagar o financiamento mais rápido e economizar um dinheiro para se aposentar. Por causa d isso, eles p assaram a gastar menos tempo trabalhando e a passar mais tempos juntos. Até que f inalmente, eles se aposentaram e viveram a vida que sempre sonharam.
Licensed to Luis Nathan - [email protected] - HP40115947464507
6Prototipagem de Aplicativo
Proposta de Valor
Conceito: A Proposta de Valor é uma promessa a ser entregue, por isso, é a principal razão que indica porque um cliente deveria comprar o seu produto e não o dos seus concorrentes.
Seguindo uma "linha de produção", após trabalhar na base do projeto que é o briefing sendo respondido, criado o persona do seu aplicativo e em seguida o storytelling, você tem dados necessário para criação da proposta de valor do aplicativo que também pode ser chamado de "CERNE DO APP".
Assim como o storytelling existe palavras e pontos chave para uma padronização de proposta de valor cativamente e impactante, defendendo de forma segura o seu produto/serviço.
Para, as pessoas que desejam ser monetizadas por postagens em r edes sociais, oferecemos, o aplicativo App Branch, que tem como objetivo alcançar o público maciço com baixo custo, monetizando várias pessoas em vez de uma só, diferente do modelo de negócio atual que gasta milhares de reais com uma única pessoa e não o alcance e segmentação do App Branch.
VEJA UM EXEMPLO
Licensed to Luis Nathan - [email protected] - HP40115947464507
7Prototipagem de Aplicativo
Golden Path
Conceito: O termo Golden Path é uma técnica utilizada no processo de Design Thinking (”Pensar como “designer”), muito utilizado para mapear e dar os cami-nhos necessários para uma ação, comumente chamado de caminho feliz em tradução livre para o português.
São os primeiros passos para a construção dos caminhos que o usuário percorrerá com base no objetivo do aplicativo, entendendo alguns conceitos e técnicas de criação de aplicativo, vemos abaixo um exemplo de estruturação:
Tela PrimáriaT ela Secundário
Exemplos acima são as telas, abaixo verá o fluxograma simples indicando as telas primárias, com suas telas secundárias e profundidade, veja abaixo a imagem de um Golden Path completo de um dos projetos criados pela App Maria:
aT
Licensed to Luis Nathan - [email protected] - HP40115947464507
O Golden Path é o caminho feliz de forma mais simples possível, sem utilização de regras de fluxograma, nem nada técnico, é focado no caminho feliz que o seu usuário percorrá.
Faça você mesmo: Onde posso buscar referência para criação do meu Golden Path?
8Prototipagem de Aplicativo
Entender o caminho feliz, permite que defina as telas primárias do seu aplicativo, veja o exemplo da TabBar (tela primária) do aplicativo:
Agenda | Arquivos | Chat Direto | Financeiro | Configurações
Licensed to Luis Nathan - [email protected] - HP40115947464507
9Prototipagem de Aplicativo
Clique Aqui
Ferramenta Draw.ioImprimiu seu e-book? Escaneie para o download.
Escaneie o QR Code
Clique Aqui
Protótipo mencionadono Golden Path
Imprimiu seu e-book? Escaneie para o visualizar.
Escaneie o QR Code
Licensed to Luis Nathan - [email protected] - HP40115947464507
10Prototipagem de Aplicativo
Wireframe
Conceito: Um wireframe é uma espécie de esboço inicial do aplicativo. Uma versão bastante primitiva do visual de um projeto. Nesse rascunho, são representa-das visualmente a diagramação e suas estruturas macro/simples. Isto é, quais seções devem conter e o que irá dentro delas, com base nas formas feitas com lápis/lapiseira em um papel com telas nos tamanhos na média de 375px de largura por 667px de altura, padrão do iphone 6/7/8 e próximo da proporção dos celulares android.Veja um exemplo abaixo utilizado nas aulas de prototipagem de aplicativo do curso disponível na Hotmart:
Licensed to Luis Nathan - [email protected] - HP40115947464507
Prototipagem de Aplicativo
Quando imprimir o modelo perceberá que existe um espaço abaixo de cada tela para anotações de identifica-ção de cada elemento colocado na tela.As formas simples de identificação de cada elemento criado no exemplo abaixo:
Conteúdo em um card
Título
Texto
Imagem
Vídeo
Enviar Botão de Ação
Formulário Simples
Label em cima com Input de texto Label = Pergunta | Input = Resposta
Input e botão de pesquisar emformato de ícone
Progresso de ação solicitada ao usuário
11
Licensed to Luis Nathan - [email protected] - HP40115947464507
Lembrando que o importante é sempre fazer com papel e lápis, pois ganhará prática e não perderá tempo, fazendo e refazendo quantas vezes forem necessárias.
Prototipagem de Aplicativo
Veja um exemplo de forma aplicada com 2 aplicativos somente da tela primária "home" a tela inicial:
12
Wireframe do WhatsApp (iOS - Apple)
Botão de Ação
Imagens e Icones
Títulos, Nomes, Descrições e Tempo
Outro exemplo logo abaixo é o aplicativo Instagram.
Licensed to Luis Nathan - [email protected] - HP40115947464507
Prototipagem de Aplicativo
Faça você mesmo: Imprima esse modelo acima cicando no link abaixo e comece agora com a cópia de um aplicativo que esteja instalado no seu
13
Wireframe do Instagram (iOS - Apple)
Imagens e Icones
Nome
celular, de forma simples, até pegar o jeito para criar as suas telas.
Clique Aqui
Modelo WireframeImprimiu seu e-book? Escaneie para o download.
Escaneie o QR Code
Prototipagem de Aplicativo 14
FONTE DE PESQUISA - Escolha sua link ou escaneie, caso o e-book esteja impresso!
Licensed to Luis Nathan - [email protected] - HP40115947464507
Prototipagem de Aplicativo 14
FONTE DE PESQUISA - Escolha sua link ou escaneie, caso o e-book esteja impresso!
Licensed to Luis Nathan - [email protected] - HP40115947464507
Prototipagem de Aplicativo 15
Clique Aqui
Human Interface Guidaline
Imprimiu seu e-book? Escaneiei para ver.
Escaneie o QR Code
Clique Aqui
Material Design - Google
Imprimiu seu e-book? Escaneiei para ver.
Escaneie o QR Code
Licensed to Luis Nathan - [email protected] - HP40115947464507
Prototipagem de Aplicativo 16
Protótipo
Conceito: Protótipo é o termo usado para se referir ao que foi criado pela primeira vez, servindo de modelo ou molde para futuras produções.
Para o design de aplicativo o protótipo é a primeira visualização com 98% de fidelidade do layout final já desenvolvido. O wireframe ganha vida com cores e formas.
Conheça as principais ferramentas e seus benefícios na comparação abaixo:
Versão Gratuita
Premium
Compartilhar
Comunidade
Cloud Storage
Bibliotecas
Sistema Operacional
Plug-in
Adobe XDF igma Sketch
Ilimitado2GB | 100GB Limitado 5GB
Win | MacOs | LinuxWin | MacOs MacOs
Até 3 projetos 30 dias de teste
U$9/m | U$99/único
Web/App
U$ 12/m
Web/App
Funções Limitados
R$ 43,00/m
Web/App
Licensed to Luis Nathan - [email protected] - HP40115947464507
Prototipagem de Aplicativo 17
r
Clique Aqui
Adobe KuleImprimiu seu e-book? Escaneie para visualizar.
Escaneie o QR Code
Clique Aqui
Freepik - ImagensImprimiu seu e-book? Escaneie para visualizar.
Escaneie o QR Code
Licensed to Luis Nathan - [email protected] - HP40115947464507
Prototipagem de Aplicativo 18
Clique Aqui
Material.ioImprimiu seu e-book? Escaneie para visualizar.
Escaneie o QR Code
Clique Aqui
Guideline iOSImprimiu seu e-book? Escaneie para visualizar.
Escaneie o QR Code
ro
Clique Aqui
Guideline And idImprimiu seu e-book? Escaneie para visualizar.
Escaneie o QR Code
Licensed to Luis Nathan - [email protected] - HP40115947464507
Gestão da Programação 19
Scrum
Planejamento
Im
plementação
Revie
w
Feed
back
ProdutoBacklog
ProdutoCompleto
FeaturesCompleta
ReuniãoDiária
Sprint Backlog(Selecionam as histórias
de cada tarefa)
SPRINT
Licensed to Luis Nathan - [email protected] - HP40115947464507
Gestão da Programação 20
Ferramenta TRELLO
Licensed to Luis Nathan - [email protected] - HP40115947464507
Gestão da Programação 21
Licensed to Luis Nathan - [email protected] - HP40115947464507
Product Owner > O Dono do produto (tradução livre)Product Owner é o ponto central com poderes de liderança sobre o produto. Ele é o único responsável por decidir quais recursos e funcionalidades serão construídos e qual a ordem que devem ser feitos.Scrum MasterO ScrumMaster é responsável por ajudar a todos os envolvi-dos a entender e abraçar os valores, princípios e práticas do Scrum.Age como um Coach, executando a liderança do processo e ajudando a equipe Scrum (e o resto da organização) a desen-volver sua própria abordagem do Scrum, que tenha a melhor performance, respeitando as particularidades da organização.O Time de DesenvolvimentoÉ dado o nome de Time de Desenvolvimento para todas as pessoas que fazem parte da equipe que realmente executa o trabalho.
Gestão da Programação 22
Scrum Master
Product Owner
O time de desenvolvimento
Licensed to Luis Nathan - [email protected] - HP40115947464507
Clique Aqui
Curso Gratuito ScrumImprimiu seu e-book? Escaneie para o visualizar.
Escaneie o QR Code
Gestão da Programação 23
Ferramentas para organizar o seu Scrum:
Cursos disponíveis para entendimento do Scrum:
Licensed to Luis Nathan - [email protected] - HP40115947464507
Gestão da Programação 24
Servidor - Detalhar micro serviços
Num projeto de aplicativo o primeiro passo é a prototipação, com base no protótipo aprovado pelo cliente, começa o trabalho de estruturação do servidor o programador responsável por essa ação no projeto, começa analisando as funcionalidades do protótipo exemplo:
- Autenticação [login e senha] - GPS - Real Time - Upload de imagens, vídeos e áudio.
Cada item listado acima é um micro serviço para ser analisado o custo junto ao servidor, procure sempre servidores que entregam todas as ferramentas neces-sárias em um único cloud, exemplo:
Licensed to Luis Nathan - [email protected] - HP40115947464507
Após mapear todos os micro serviços necessário para o aplicativo funcionar a configuração do servidor e con-tratação dos serviços necessários para começar o desenvolvimento.
Essa função geralmente fica com o programador que trabalha com o WebService (Banco de dados e API feito em NodeJS)
Gestão da Programação 25
Licensed to Luis Nathan - [email protected] - HP40115947464507
Gestão da Programação 26
Servidor - Detalhar aproximação de valores
Falaremos sobre o GCloud ao qual temos facilidade e experiência por conta dos nosso projetos realizados no Google Cloud Platform.
Começaremos por entender os serviços mais comuns a serem utilizados geralmente no desenvolvimento de aplicativo:
- Cloud Pub/Sub - Cloud Storage - Cloud SQL - Compute Engine - App Engine - Firebase Realtime Database
Cada tópico acima tem sua funcionalidade na execução da programação do aplicativo e quanto mais utilizado um ou outro aumenta o preço do servidor de forma proporcional, porém os mais custosos no servidor serão:
- Cloud SQL - App Engine - Compute Engine
Licensed to Luis Nathan - [email protected] - HP40115947464507
Cada aplicativo tem suas devidas particularidades e é claro seus consumos específicos, consulte o valor de cada serviço neste link abaixo:
Gestão da Programação 27
le
Clique Aqui
Preço de Serviços Goog Cloud
Imprimiu seu e-book? Escaneie para o download.
Escaneie o QR Code
Gestão da Programação 28
Modelagem de Banco de Dados
Licensed to Luis Nathan - [email protected] - HP40115947464507
Gestão da Programação 28
Modelagem de Banco de Dados
Licensed to Luis Nathan - [email protected] - HP40115947464507
truturação do seu app, mas para isso precisa de conhe-cimento com uma curva de aprendizagem simples, veja os aplicativos que usam o banco de dados NoSQL:
Tem projetos que usamos os dois, trabalhando com micro serviços separando as regras de negócio do apli-cativo para a web service (API).
Gestão da Programação 29
Licensed to Luis Nathan - [email protected] - HP40115947464507
Web Service
Conceito: Web Service é uma solução utilizada na inte-gração de sistemas e na comunicação entre aplicações diferentes. Com esta tecnologia é possível que novas aplicações possam interagir com aquelas que já exis-tem e que sistemas desenvolvidos em plataformas dife-rentes sejam compatíveis. Em resumo: O cérebro do Aplicativo, todo processamen-to e regras de negócio.
Gestão da Programação 30
Endpoint
Endpoint API Regras de Negócio
Endpoint
Aplicação
WebService
Cliente
App
Licensed to Luis Nathan - [email protected] - HP40115947464507
Gestão da Programação 31
Licensed to Luis Nathan - [email protected] - HP40115947464507
Gestão da Programaçãodois sistemas, sem necessidade de recolher informação detalhada sobre o funcionamento de cada sistema. Os Web services permitem ligar qualquer tipo de sistema, independentemente das plataformas (Windows, Linux, entre outras) e linguagens de programação (Java, Perl, Python, etc.) utilizadas.
Exemplos [Gateway de Pagamentos]
Gateway de pagamentos é um exemplo claro de serviços de web service na prática, todos têm seu espaço para os desenvolvedores estudarem e aplicarem em sua programação do aplicativo, mas é claro os principais formas de pagamentos geralmente são das próprias lojas: Apple Pay e Google Pay.
32
Licensed to Luis Nathan - [email protected] - HP40115947464507
Gestão da Programação 33
Web Administrador do App
Licensed to Luis Nathan - [email protected] - HP40115947464507
Gestão da ProgramaçãoO termo usado é o CRUD [Create, Read, Update e Delete] detalhando:
- Create > Criar registros no banco de dados- Read > Leitura dos registros do banco de dados- Update > Alterar os registros do banco de dados- Delete > Excluir os registros do banco de dados
São as funcionalidades básicas de um administrador de aplicativo, além das funcionalidades que o administra-dor pode fazer, existe os estudos de relatórios detalha-dos com base no banco de dados.
34
Licensed to Luis Nathan - [email protected] - HP40115947464507
Entenda os tipos de programações de aplicativo:
- Híbrido - Nativo
Se procurar no google sobre encontra inúmeros vídeos e artigos falando sobre as duas extremidades, todos tem seu pró e contra, mas existe um motivo para existir o híbrido e o nativo o principal deles é o custo e qualidade.
Com base nas nossas experiências de 5 anos a fio focado exclusivamente com aplicativo, tivemos oportunidades de trabalhar com híbrido até que migramos exclusivamente para nativo (Swift e Kotlin), e hoje vemos as novas tecnologias como Flutter e React Native com bons olhos para serviços menores que não exigem tanto esforço e utilização dos recursos dos celulares.
Por isso resolvemos falar abertamente sobre as duas tecnologias nesse e-book, visando um esclarecimento com base nos fatos e de forma empreendedora, sem torcida para um nem para outro, mas pensando na solução com base na sua necessidade.
Programação de Aplicativo 35
Licensed to Luis Nathan - [email protected] - HP40115947464507
Porque falamos isso?!
Veja abaixo os aplicativos desenvolvidos em cada linguagem:
Programação de Aplicativo 36
Nubank
Google Ads
The New York Times
React Native SwiftK otlin
App Store Play Store
Google Agenda
Youtube For Android
Apple Podcast
Walmart
Flutter
Google Assistant Pinterest
Trello
Apple Music
Apple TV
AirBnb
TeslaBMW
De forma clara você percebe que todas as tecnologias citadas tem competência de entregar um bom trabalho, quando aplicado os esforços no seu desenvolvimento, por isso não defenderemos nenhuma tecnologia nesse e-book.
Licensed to Luis Nathan - [email protected] - HP40115947464507
Programação de Aplicativo 37
Kotlin
Programação Híbrida
Ambos frameworks são atrativos contendo vantagens e desvantagens. Segundo o Google um dos grandes dife-renciais do Flutter é em relação à sua rapidez, conse-guindo mostrar nativamente animações a 60fps e forne-cendo otimização de compilação antecipada, o que torna a aplicação portátil por ser compilada em código apropriado para arquiteturas ARM e x86, compatível com IOS, Android e outros.
React conta com APIs de recursos nativos para WiFi e GPS, com boas soluções de terceiros para câmeras, sensores, biometria, Bluetooth e NFC. Porém, possui um ponto fraco em relação a construção de gráficos personalizados. Não existem boas API’s para o desen-volvimento desta funcionalidade, tornando esses tipos de features mais complexas de serem realizadas, impli-cando em desenvolvimento de código nativo.
Veja o quadro comparativo feito pela empresa Agile Engine, algumas das diferenças encontradas nos fra-meworks, dando um panorama geral do estado de cada um logo abaixo:
Licensed to Luis Nathan - [email protected] - HP40115947464507
Programação de Aplicativo 38
Kotlin
Quadro Comparativo - Programação Híbrida
Lançamento
User Interface-UI
Aparencia Nativa
Desempenho
Maturidade
Linguagem
Adoção da Indústria
Produtividade
FLUTTER REACT NATIVE
2015
Componentes nativos do SO
2017
Widgets Próprios
API’s de Hardware
Estrutura do Código
Comunidade
Documentação
DART JAVASCRIPT
Licensed to Luis Nathan - [email protected] - HP40115947464507
Programação de Aplicativo 39
Kotlin
Programação Nativa - iOS
A programação "tradicional" e padrão é os códigos nativos, cada sistema operacional quando instituído, criasse a linguagem nativa para criar aplicações para uso na plataforma, antes mesmo de existir aplicativo, dessa forma, fica claro que o desempenho e performan-ce em linguagem nativo é inquestionável.
Mas ainda assim é possível encontrar desvantagens em linguagens nativas, o principal é o custo benefício caso seu aplicativo seja multiplataforma, pois terá dois pro-gramadores cada um para uma linguagem (Android/iOS), isso é o único detalhe diante de toda rea-lidade para ser analisado, mas se o seu aplicativo ele já tem público definido para o iOS, sem dúvida o desenvol-vimento nativo, será um custo/benefício incrível para sua aplicação.
Licensed to Luis Nathan - [email protected] - HP40115947464507
Programação de Aplicativo 40
Kotlin
Programação Nativa -Android
A Linguagem Java é líder de mercado no mundo corporativo e foi também a única forma de desenvolver aplicações nativas para Android. Em 2010, foi criada a linguagem de Programação Kotlin (que também roda na JVM - Java Virtual Machine) para resolver alguns problemas que os desenvolvedores enfrentavam usando apenas a linguagem Java.
O Kotlin é uma linguagem compatível com Android concisa, expressiva e projetada para ser type- e null-sa-fe (ter segurança de tipos e de nulos). Ele funciona perfeitamente com a linguagem Java. Portanto, os desenvolvedores que gostam de Java podem continuar a utilizá-lo, mas também adicionar código Kotlin e usar as bibliotecas dessa linguagem.
Em resumo o Kotlin veio para facilitar e agilizar o desenvolvimento de aplicativo nativo para Android. Vale a análise feita no tópico anterior, se seu público-alvo é nativo android, vale a pena investir exclusivamente na linguagem Kotlin para sua aplicação.
Licensed to Luis Nathan - [email protected] - HP40115947464507
Programação de Aplicativo 41
Kotlin
Como escolher a linguagem para sua aplicação?
A pergunta que ficou diante de tanta informação dos tipos de tecnologia disponíveis, como na área de TI tudo depende, para responder essa pergunta não seria diferente, vamos para análise final sobre a escolha ideal para seu projeto.
No início do e-book trabalhamos o entendimento dos dados necessários para começar o seu aplicativo e sugerimos a criação do protótipo, tudo parte do protótipo, pois as decisões de qual tecnologia usar, será possível ter certeza quando as regras de negócios estiverem finalizadas e fechadas pelo cliente.
Vamos analisar então 2 aplicativos de clientes da empresa App Maria e com base nele fazer os apontamentos necessários para qual tecnologia será ideal para cada protótipo.
Licensed to Luis Nathan - [email protected] - HP40115947464507
Programação de Aplicativo 42
Kotlin
- Disponível para iOS e Android
- Projeto desenvolvido inicialmente de forma nativa, esse projeto em termos de arquitetura e design é sim-ples e facilmente poderia ser desenvolvido em híbrido (inclusive no momento da criação desse e-book, está acontecendo o redesign para migrar para o Híbrido - React Native, porque encontramos rapidamente um programador para executar o novo protótipo, e o custo para nativo, está alto mantendo 2 programadores para cada plataforma).
- Não tem grandes funcionalidades de requerimento do celular, que exija o códigos exclusivamente nativos.
- Dessa forma optamos junto ao cliente a migrar para o desenvolvimento híbrido, por conta das manutenções que serão necessárias devido ser uma startup.
Clique Aqui
Baixar o AplicativoImprimiu seu e-book? Escaneie para o baixar o app.
Escaneie o QR Code
Licensed to Luis Nathan - [email protected] - HP40115947464507
Programação de Aplicativo 43
Kotlin
Clique Aqui
Ver o prtótipo navegável
Imprimiu seu e-book? Escaneie para o ver o protótipo.
Escaneie o QR Code
- Disponível em protótipo
- Escolhemos dentre vários protótipos, este, pois tivemos uma situação atípica para análise e entendimento dos senhores quando digo que é preciso ter um protótipo para análise de qual tecnologia utilizar.
- Esse protótipo aparentemente parece ser muito simples e daria facilmente para ser desenvolvido em plataforma híbrida(Flutter ou React Native), porém tem o módulo de arquivos (Tabbar - Arquivos), quando é soli-citado o escanear arquivos e a gerar automaticamente PDF, como proposto no protótipo, 3 programadores (2 react native e 1 flutter) até o momento não encontraram bibliotecas para o desenvolvimento dessa solução, para essa aplicação infelizmente o cliente deseja que seja multiplataforma, a solução até o momento é o desenvolvimento nativo.
Licensed to Luis Nathan - [email protected] - HP40115947464507
Programação de Aplicativo 44
Kotlin
A conclusão dessa resposta é analisar detalhadamente todo o protótipo aprovado para entender todas as regras de negócios, e funcionalidades do aplicativo.
Explorar as possibilidades de programação híbrida caso queira ter um custo menor do seu aplicativo.
Seja qual for, a escolha é importante trabalhar integra-do as ferramentas de expansão do aplicativo e as ferra-mentas de análise do aplicativo em tempo real, vamos detalhar algumas ferramentas para ajudar na expansão do seu aplicativo nos próximos capítulos.
Licensed to Luis Nathan - [email protected] - HP40115947464507
Programação de Aplicativo 45
Kotlin
Ferramenta de teste de aplicativo
Antes da publicação
Pronto desenvolvemos nosso aplicativo estamos nos preparando para a publicação primeiro teste a ser feito é diretamente pelo programador, principalmente da versão android que existe geralmente mais de 10.000 tipos de dispositivos que podem ser compatíveis.
PRINT DA TELA DE PUBLICAÇÃO - PLAY STORE
TESTE LAB - APLICATIVO CANTAI SH
Licensed to Luis Nathan - [email protected] - HP40115947464507
Programação de Aplicativo 46
Kotlin
Utilizamos o TESTE LAB do Firebase para analisar quais dispositivos são compatíveis para fazermos os filtros para evitar feedback ruim na resenha das avaliações da loja Play Store.
Na App Store, basta testar nos principais versões dos celulares do iOS, lembrando que existe uma versão de corte para ambas plataformas no iOS é um pouco mais fácil de identificar, com a divulgação da Apple em seu site oficial, anualmente a cada versão lançada existe um corte de aparelhos antigos que não receberam a atuali-zação e dessa forma o programador consegue "setar" de qual versão pode iniciar download do aplicativo.
Próximo teste é o teste no ambiente de testadores das lojas (App Store e Play Store), separe uma quantidade máxima de 8 dispositivos diferentes com seus usuários, crie um formulário no Google Form com perguntas relacionada a sua solução.
Depois da PublicaçãoApp Distribution do Firebase é a melhor ferramenta para fazer teste com usuários reais, aplicando a atuali-zação do aplicativo em uma porcentagem de pessoas que estão com aplicativo instalado, dessa forma é possí-vel identificar a aceitação e teste de usabilidade do apli-cativo antes de liberar para o restante dos usuários.
Licensed to Luis Nathan - [email protected] - HP40115947464507
Programação de Aplicativo 47
Kotlin
Publicar para o público em geral
Para o tópico de publicação do aplicativo vamos falar quanto é importante tratar a presença do aplicativo nas lojas, e começando pela importância do ASO (App Store Optimization), o aplicativo assim como uma vitrine de loja, é preciso cuidados com a sua apresentação e venda na loja de aplicativo.
Outro fator é saber que não é possível gastar com im-pulsionamento dentro das lojas para aparecer em des-taque, é preciso dos cuidados para um bom desempenho e clareza no objetivo do aplicativo com palavras chaves inseridas no título, texto e imagens do ecrã de apresentação.
As informações citadas são pontos de análise para rankear seu aplicativo, não temos informações de boa aceitação com o vídeo, mas quanto mais objetivo e claro for, melhor pra ser encontrado diante de milhões de aplicativos disponível nas lojas, após conseguir uma quantidade boa de download outro fator importante é a avaliação, resenha e principalmente a interação do dono do aplicativo em responder às resenhas.
Licensed to Luis Nathan - [email protected] - HP40115947464507
Expansão do Aplicativo 48
Kotlin
Ferramentas do Firebase
O aplicativo foi publicado agora começa outra etapa do trabalho de desenvolvimento de aplicativo a expansão do aplicativo:
Google Firebase - Teste A/B > Faça experimentos para tornar os fluxos de engajamento mais eficazes.
- Cloud Messaging > Envie mensagens e notificações gratuitamente para usuários de várias plataformas, seja Android, iOS ou na Web. As mensagens podem ser en-viadas para dispositivos únicos, grupos de dispositivos, segmentos de usuários ou tópicos específicos.
In-App Messaging > Mensagens internas de acordo com a ação programada e pensada para o aplicativo, exemplo: quando um usuário vence uma etapa do jogo, receber uma mensagem de incentivo.
Dynamic Links > Compartilhar assuntos interno do aplicativo para fora do app, com ação de baixar o app caso não tenha o aplicativo baixado e em seguida abrir o assunto diretamente no app, caso já tenha o aplicativo após clicar no link compartilhado será redirecionado para o assunto.
Licensed to Luis Nathan - [email protected] - HP40115947464507
Expansão do Aplicativo 49
Kotlin
Ferramentas do Firebase
AdMob > Vincule o app da AdMob ao Firebase para que os relatórios do Analytics incorporem métricas de anún-cios e receitas geradas pela AdMob. Assim, você terá uma visão mais detalhada do valor da vida útil dos usu-ários e do desempenho da estratégia de publicidade no seu app.
Qualidade do Aplicativo 50
Kotlin
Licensed to Luis Nathan - [email protected] - HP40115947464507
Qualidade do Aplicativo 51
Kotlin
App Cantai Sh - Craslytics Firebase
App Cantai Sh - Craslytics Firebase
Licensed to Luis Nathan - [email protected] - HP40115947464507
Qualidade do Aplicativo 52
Kotlin
Performance
Outro fator importante para estar no tópico de qualidade de aplicativo é a ferramenta Performance do firebase, essa ferramenta permite deixar rastros dentro do aplicativo para ajudar no rastreamento completo do aplicativo monitorando o SDK, analisando variáveis que afetam o desempenho do uso do aplicativo como: - Duração de uso do aplicativo - Inicialização do aplicativo - Nível do SO - Operadora usado pelo celular (monitorando o comportamento da rede) - Podendo personalizar a verificação de performance, por exemplo: Se o envio de uma API está melhor que a outra e se alguma está afetando na utilização do aplicativo.
Licensed to Luis Nathan - [email protected] - HP40115947464507
Análise de Dados 53
Kotlin
Análise de Dados 54
Kotlin
Fonte: why so many data lakes turn into swamps - https://www.information-management.com/opinion/why--so-many-data-lakes-turn-into-swamps
Licensed to Luis Nathan - [email protected] - HP40115947464507
Análise de Dados 54
Kotlin
Fonte: why so many data lakes turn into swamps - https://www.information-management.com/opinion/why--so-many-data-lakes-turn-into-swamps
Licensed to Luis Nathan - [email protected] - HP40115947464507
Análise de Dados 55
Kotlin
Ferramentas do Firebase para análise do app.
- Dashboard PadrãoO Google Analytics para Firebase oferece geração de rela-tórios gratuita e ilimitada para até 500 eventos diferentes. O SDK captura automaticamente eventos-chave e proprie-dades do usuário e você pode definir eventos personaliza-dos para avaliar itens específicos para seu negócio.
- Eventos [Events]Use eventos e propriedades de usuário para definir públi-cos-alvo personalizados no Console do Firebase com base em dados do dispositivo e comportamentos dos usuários.
- Conversion [eventos de conversão]Crie rastreios dentro do aplicativo, para análise de uso de uma função específica dentro do aplicativo: Ex.: Usuários que concluem uma funcionalidade como criar uma playlist (Aplicativo Cantai Sh).
- AudiênciasO Analytics mostra dados sobre o comportamento dos usu-ários nos seus apps Android e iOS. Assim, você toma deci-sões mais fundamentadas sobre otimização de produto e marketing.Você pode criar audiências para serem reutilizados no Google Ads.
Licensed to Luis Nathan - [email protected] - HP40115947464507
- Stream ViewEntenda o comportamento do usuário e veja relatórios em tempo real com os dados de uso ativos. Use o Stre-amView para uma visão dinâmica dos dados de análise em tempo real.
Análise de Dados 56
Kotlin
Licensed to Luis Nathan - [email protected] - HP40115947464507
Análise de Dados 57
Kotlin
O que eu faço com todos esses dados?
A pergunta de um milhão de reais! :D
Todos esses dados nas ferramentas do firebase, podem ser utilizados para marketing no Google Ads, ou seja, a integração do Google Ads mostra exatamente os públicos a serem alcançados com base no seu objetivo, seja para o estágio de:
- Novos downloads do aplicativo - Retenção de usuários - Recuperação dos usuários que desinstalou o aplicativo.
Assim como o marketing é feito por tentativas, com os dados organizados e direcionados, basta acompanhar o marketing aplicado aos dados gerados.
Para retenção de dados importante acompanhar a qualidade do aplicativo como detalhamos no capítulo anterior.
Licensed to Luis Nathan - [email protected] - HP40115947464507
Seu Aplicativo 58
Kotlin
Comece agora o desenvolvimento do seu aplicativo
Municiado de todas as informações necessária para o desenvolvimento do seu aplicativo, só de ter chegado até essa última página do e-book, antes disso ter feito o movimento da compra do e-book e as anotações que imagino que fez, mostra seu interesse em tirar do papel um aplicativo para disponibilizar em uma loja.
Com as informações que tem nesse e-book é possível iniciar o seu protótipo hoje mesmo, não se preocupe com estética do seu aplicativo no primeiro momento, veja abaixo as primeiras telas dos aplicativos que hoje são sucesso.
Licensed to Luis Nathan - [email protected] - HP40115947464507
E-mail: [email protected]: www.appmaria.com.br
Blog: www.blog.appmaria.com.brWhatsapp: (65) 9 8106-6239
Seu Aplicativo 59
Kotlin
Ambos não tinham nem a expectativas de estarem unidas como nos dias de hoje, tudo existe um começo o seu aplicativo também precisa de um começo, temos mais informações para criar seu protótipo, temos um desconto de 30% no Curso de Prototipagem de Aplicativo, acesse esse link e no fechamento da compra insira esse voucher:
Clique Aqui
Curso OnlinePrototipagem de Aplicativo
Imprimiu seu e-book? Escaneie para visualizar.
Escaneie o QR Code
EMPREENDEDORE-BOOK
Licensed to Luis Nathan - [email protected] - HP40115947464507
Empresa de Desenvolvimento de Aplicativo
Licensed to Luis Nathan - [email protected] - HP40115947464507