SlideShare uma empresa Scribd logo
1 de 39
Guia para o
Profissional
Android
Rio de Janeiro – 17/12/2018
Armênio Cardoso
Iniciei minha carreira profissional em 1986 e desde 1990 procuro conciliar o
trabalho em Desenvolvimento de Software com o de Professor.
Participei em diversos projetos, atuando com modelagem, arquitetura e programação. Fui
desenvolvedor Pascal, Clipper, Visual Basic e C/C++.
Trabalhei como tradutor / revisor de livros técnicos e professor em várias instituições.
Em 2002 vim para o Infnet onde dou aulas nas formações Java, Android e SQL Server.
Desde 2012 trabalho como desenvolvedor em uma empresa da área de medicina diagnóstica.
http://www.linkedin.com/in/armeniocardoso
Panorama do mercado de trabalho para
desenvolvedores Android.
Falando por Números
01
Quais são os passos para entrar e se aprimorar no
mundo Android.
Passo-a-passo
02
Detalhes sobre a atividade de desenvolvimento.
Programando
03
Onde encontrar as informações necessárias?
Referências
04
Agenda
Panorama do mercado de trabalho para
desenvolvedores Android.
Falando por Números
01
3 Definições
É um sistema operacional baseado no núcleo
Linux e atualmente desenvolvido pelo Google.
Android
É projetado principalmente para
dispositivos móveis com tela sensível ao
toque como smartphones e tablets; mas tem
interface específica para TVs, automóveis e
relógios de pulso.
Interface com Usuário
Apesar de ser principalmente utilizado em
dispositivos com tela sensível ao toque,
também é utilizado em consoles de
videogames, câmeras digitais,
computadores e outros dispositivos
eletrônicos.
Não é só touch
Google tornou
público todo o
código-fonte do
Android, liberando-o
sob a licença Apache,
com quaisquer
modificações feitas
no kernel Linux
subjacente liberado
sob a GPL v2.
Open Source
Os widgets fornecem
uma parte da
funcionalidade de um
aplicativo na tela
inicial de um
dispositivo Android,
permitindo que o
usuário veja
atualizações em
tempo real e
manipule o aplicativo
de maneiras limitadas.
Widgets
Não é permitida a
instalação de
aplicativos de outra
fonte que não seja a
loja do Google, por
default.
Não é preciso fazer
root ou jailbreak.
A loja de aplicativos
de terceiros mais
conhecida é a
Amazon, mas não é
a única.
Múltiplas Lojas de
Apps
Além de poder
escolher entre
hardware de
diferentes formas,
tamanhos e preços,
os usuários do
Android podem
personalizar à fundo
cada dispositivo para
o conteúdo de seus
corações.
Altamente
Customizável
Uma comunidade
vibrante de usuários
e desenvolvedores foi
criada em torno do
Android.
A comunidade existe
também porque os
usuários e
desenvolvedores se
aproveitam da
natureza de código
aberto do Android
para alterá-la para
atender às suas
próprias
necessidades.
Comunidade
5 Fatos
Widgets
6 Datas
Android, Inc. foi fundada
em Palo Alto, California
por Andy Rubin, Rich
Miner, Nick Sears e Chris
White.
2003
Criada a Open Handset
Alliance, consórcio de
tecnologia entre empresas,
incluindo Google,
fabricantes de telefones,
operadoras de telefonia e
fabricantes de chipsets.
2007
Google apresentou sua
série de dispositivos
Nexus — uma linha de
smartphones e tablets
rodando o sistema
Android, fabricado por
empresas parceiras.
2010
75% das vendas mundiais
de smartphones com
Android, segundo a IDC.
2012
Google adquiriu Android
Inc.; funcionários-chave
da empresa, incluindo
Rubin, Miner e White,
continuaram na
companhia após a
aquisição.
2005 2018
7 Usos além do Smartphone
Automóveis
Áudio Players
Câmeras e Equipamentos
de Vídeo
Consoles de Vídeogames
Netbooks & Smartbooks
Smartwatches
Smart TV
O fato do Android ser um
sistema aberto e extremamente
customizável permite que ele
seja usado em outros
eletrônicos além de tablets e
smartphones.
3 Opções para Empresas
Dispositivos Dedicados
Subconjunto de dispositivos de propriedade da empresa
que atendem a uma finalidade específica.
O Android vem com um amplo conjunto de recursos de
gerenciamento que permitem que as organizações
configurem dispositivos para tudo, desde ambientes
industriais e industriais voltados para funcionários, até fins
de sinalização e quiosque voltados para o cliente.
BYOD – Bring Your Own Device
Dispositivos BYOD podem ser configurados com um perfil
de trabalho - um recurso incorporado ao Android 5.1 que
permite que aplicativos e dados de trabalho sejam
armazenados em um espaço separado e independente
dentro de um dispositivo.
Um funcionário pode continuar usando seu dispositivo
normalmente; todos os seus apps e dados pessoais
permanecem no perfil principal do dispositivo.
Dispositivos Exclusivos da Empresa
As organizações podem exercer controle de
gerenciamento completo sobre os dispositivos a partir do
Android 5.0 de sua propriedade, cedidos para os
funcionários.
Existem duas opções de implantação disponíveis para
esses tipos de dispositivos da empresa: totalmente
gerenciadas (Android 5.0+) e totalmente gerenciadas com
um perfil de trabalho (Android 8.0+).
O Android Enterprise é uma iniciativa
do Google para permitir o uso de
dispositivos e aplicativos Android no local
de trabalho.
O programa Android Enterprise oferece APIs e outras ferramentas para os desenvolvedores integrarem o
suporte ao Android em suas soluções de gerenciamento de mobilidade empresarial.
Quais são os passos para entrar e se aprimorar no
mundo Android.
Passo-a-passo
02
Passo-a-passo
Preparação do
Ambiente de
Desenvolvimento
Construção de
Aplicações Simples
Aprofundando os
Conhecimentos
Indo Além
Passo 1
Passo 2
Passo 3
Passo 4
1 Preparação do Ambiente
Android Studio é a IDE mais adequada para
a construção de aplicações Android.
01 Download da IDE
1 Preparação do Ambiente
Android Studio para Windows começa com
923 Mb e vai até 15,7 Gb aproximadamente
depois de instalado.
02 Instalação da IDE
2 Aplicações Simples
A IDE vem com assistentes que conduzem a
sua primeira aplicação – Hello World!
01 Explorando a IDE
2 Aplicações Simples
Na instalação do Android Studio existem
dezenas de exemplos prontos para
experimentar.
02 Exemplos Incluídos
3 Aprofundando
Ciclo de Vida de uma Aplicação e Componentes Gráficos
Como as aplicações rodam em um contexto, é muito importante
entender o seu ciclo de vida e os métodos de call-back que precisam
ser sobrescritos, além dos seus componentes gráficos básicos.
Bibliotecas e “Soluções”
Explorar as possibilidades disponíveis
para oferecer soluções para problemas
propostos.
Linguagem Kotlin
Pilar estrutural mínimo para começar.
Editor de Interfaces – UI / UX
Dominar minimamente o editor de telas e os
conceitos fundamentais de UI e UX.
O Que Estudar?
Estes são os principais tópicos que
precisam ser dominados para que
seja possível adquirir proficiência na
Plataforma Android.
01
02
03
04
Android Studio otimizado para Kotlin
Simples e Concisa
Código seguro
Interoperável com Java
Linguagem Kotlin
Toda aplicação gráfica tem um ciclo
de vida composto por métodos de
call-back.
Esses métodos são chamados pelo
contexto de execução a partir de
eventos que ocorrem, como por
exemplo: onCreate, onStart, onStop
e onDestroy.
Ciclo de Vida de
uma App
Editor de Layout
dispõe de ferramentas
poderosas para a
construção de telas.
4 Indo Além...
Como já foi dito, a
comunidade interessada na
plataforma Android é
vibrante e ativa.
Pesquise por fóruns de
discussão onde possa
colocar suas dúvidas e ler
sobre soluções encontradas.
Fóruns de Discussão
Nada substitui a experiência
de um bom autor.
Pesquise por livros,
apostilas e blogs que
exponham as experiêcias de
seus autores.
Procure por projetos e
exemplos de código no
Github.
Bibliografia e Blogs
Não se aprende
desenvolvimento de
software somente lendo – é
fundamental dedicar algum
tempo para a prática.
Comece com projetos
simples, como um jogo da
velha ou a lista de compras
do supermercado e vá
incluindo novas
funcionalidades aos poucos.
Praticar, Praticar...
Detalhes sobre a atividade de desenvolvimento.
Programando
03
/**
Created by Android ATC
*/
val X=1
val Y=3
fun main(args: Array<String>) {
println("Hello, Android ATC")
val Z=X+Y;
println(Z)
}
Iniciando
/**
* Created by Android ATC
*/
fun main(args: Array<String>) {
var x=10
if (x>30)
println("Hello, I am If statement running now")
else
println("Hello, I am Else statement running now")
}
Estruturas de Controle
/**
* Created by Android ATC
*/
fun main(args: Array<String>) {
println("=========== Pizza Order ==============")
println("Enter the Pizza Size : 1=> Small Size, 2=> Medium Size, 3=> Large Size")
var size= readLine()!!.toInt()
var price:Int?? =null
when (size) {
1-> price=5
2-> price=7
3-> price=10
else->println("You did not enter the correct size")
}
println("Total Price = $price" +" USD")
}
Estruturas de Controle
var My_Company="Yahoo"
fun main(args: Array<String>) {
name("Android ATC")
}
fun name (My_Company:String) {
println("My Company Name is : $My_Company")
}
Funções e Escopos de
Variáveis
abstract class ComputerCourse {
abstract fun courseprice()
abstract fun courseprerequisite()
}
class LanguageCourse():ComputerCourse() {
override fun courseprice() {
println("Course Price")
}
override fun courseprerequisite() {
println("Course Prerequisite")
}
}
fun main (args : Array<String>){
var x =LanguageCourse()
x.courseprerequisite()
x.courseprice()
}
Orientação a Objetos
Construção de Aplicativos
Modelos de Cadastros
Permissões e Proteção
de Dados
Criptografia
Anúncios, Licenciamento
e Pagamentos
Onde encontrar as informações necessárias?
Referências
04
https://kotlinlang.org/
https://plus.google.com/+AndroidDevelopers
https://developer.android.com
https://pt.stackoverflow.com
Obrigado!

Mais conteúdo relacionado

Semelhante a Guia para o Profissional Android

Gt 10 FCSI- ambiente de desenvolvimento
Gt 10  FCSI- ambiente de desenvolvimentoGt 10  FCSI- ambiente de desenvolvimento
Gt 10 FCSI- ambiente de desenvolvimentoMax_Antonelli
 
PALESTRA :: Desenvolvimento para plataforma Android
PALESTRA :: Desenvolvimento para plataforma Android PALESTRA :: Desenvolvimento para plataforma Android
PALESTRA :: Desenvolvimento para plataforma Android Fundação Vanzolini
 
Hello world hybrid apps oportunidades com ionic framework v2
Hello world hybrid apps  oportunidades com ionic framework v2Hello world hybrid apps  oportunidades com ionic framework v2
Hello world hybrid apps oportunidades com ionic framework v2Ricardo Netto - MCP, MSP
 
Android Study Jam - GDG Dois Vizinhos - Primeira Reunião
Android Study Jam - GDG Dois Vizinhos - Primeira ReuniãoAndroid Study Jam - GDG Dois Vizinhos - Primeira Reunião
Android Study Jam - GDG Dois Vizinhos - Primeira ReuniãoStefan Horochovec
 
Hangout Tempo Real Eventos - Android - Os primeiros passos do desenvolviment...
Hangout  Tempo Real Eventos - Android - Os primeiros passos do desenvolviment...Hangout  Tempo Real Eventos - Android - Os primeiros passos do desenvolviment...
Hangout Tempo Real Eventos - Android - Os primeiros passos do desenvolviment...Jackson F. de A. Mafra
 
Microsoft opensource
Microsoft opensourceMicrosoft opensource
Microsoft opensourceCDS
 
Microsoft opensource
Microsoft opensourceMicrosoft opensource
Microsoft opensourceCDS
 
Desenvolvimento de Aplicativos para a Plataforma Android
Desenvolvimento de Aplicativos para a Plataforma AndroidDesenvolvimento de Aplicativos para a Plataforma Android
Desenvolvimento de Aplicativos para a Plataforma AndroidJosé Alexandre Macedo
 
Ionic + Cordova para Desenvolvimento Mobile
Ionic + Cordova para Desenvolvimento MobileIonic + Cordova para Desenvolvimento Mobile
Ionic + Cordova para Desenvolvimento MobileWaldyr Felix
 
Android - basic to advanced 1 - SENAI - MANAUS - Amazonas
Android -  basic to advanced 1 - SENAI - MANAUS - AmazonasAndroid -  basic to advanced 1 - SENAI - MANAUS - Amazonas
Android - basic to advanced 1 - SENAI - MANAUS - AmazonasDiogo Rafael da Silva
 
Introdução a programação em Android
Introdução a programação em AndroidIntrodução a programação em Android
Introdução a programação em Androidilegra
 
Curso Android Profissional
Curso Android ProfissionalCurso Android Profissional
Curso Android ProfissionalGrupo Treinar
 
Curso Android Profissional em Sao Paulo
Curso Android Profissional em Sao PauloCurso Android Profissional em Sao Paulo
Curso Android Profissional em Sao PauloGrupo Treinar
 

Semelhante a Guia para o Profissional Android (20)

Palestra Android
Palestra AndroidPalestra Android
Palestra Android
 
Gt 10 FCSI- ambiente de desenvolvimento
Gt 10  FCSI- ambiente de desenvolvimentoGt 10  FCSI- ambiente de desenvolvimento
Gt 10 FCSI- ambiente de desenvolvimento
 
PALESTRA :: Desenvolvimento para plataforma Android
PALESTRA :: Desenvolvimento para plataforma Android PALESTRA :: Desenvolvimento para plataforma Android
PALESTRA :: Desenvolvimento para plataforma Android
 
Hello world hybrid apps oportunidades com ionic framework v2
Hello world hybrid apps  oportunidades com ionic framework v2Hello world hybrid apps  oportunidades com ionic framework v2
Hello world hybrid apps oportunidades com ionic framework v2
 
Android Aprendiz
Android AprendizAndroid Aprendiz
Android Aprendiz
 
Curso Básico Android - Aula 01
Curso Básico Android - Aula 01Curso Básico Android - Aula 01
Curso Básico Android - Aula 01
 
Android - Notas de aula
Android - Notas de aulaAndroid - Notas de aula
Android - Notas de aula
 
Android Study Jam - GDG Dois Vizinhos - Primeira Reunião
Android Study Jam - GDG Dois Vizinhos - Primeira ReuniãoAndroid Study Jam - GDG Dois Vizinhos - Primeira Reunião
Android Study Jam - GDG Dois Vizinhos - Primeira Reunião
 
Hangout Tempo Real Eventos - Android - Os primeiros passos do desenvolviment...
Hangout  Tempo Real Eventos - Android - Os primeiros passos do desenvolviment...Hangout  Tempo Real Eventos - Android - Os primeiros passos do desenvolviment...
Hangout Tempo Real Eventos - Android - Os primeiros passos do desenvolviment...
 
Microsoft opensource
Microsoft opensourceMicrosoft opensource
Microsoft opensource
 
Microsoft opensource
Microsoft opensourceMicrosoft opensource
Microsoft opensource
 
Desenvolvimento de Aplicativos para a Plataforma Android
Desenvolvimento de Aplicativos para a Plataforma AndroidDesenvolvimento de Aplicativos para a Plataforma Android
Desenvolvimento de Aplicativos para a Plataforma Android
 
Introdução Ao Desenvolvimento Para Iphone
Introdução Ao Desenvolvimento Para IphoneIntrodução Ao Desenvolvimento Para Iphone
Introdução Ao Desenvolvimento Para Iphone
 
Ionic + Cordova para Desenvolvimento Mobile
Ionic + Cordova para Desenvolvimento MobileIonic + Cordova para Desenvolvimento Mobile
Ionic + Cordova para Desenvolvimento Mobile
 
Android - basic to advanced 1 - SENAI - MANAUS - Amazonas
Android -  basic to advanced 1 - SENAI - MANAUS - AmazonasAndroid -  basic to advanced 1 - SENAI - MANAUS - Amazonas
Android - basic to advanced 1 - SENAI - MANAUS - Amazonas
 
Introdução a programação em Android
Introdução a programação em AndroidIntrodução a programação em Android
Introdução a programação em Android
 
Gt 10 fcsi
Gt 10   fcsiGt 10   fcsi
Gt 10 fcsi
 
Curso Android Profissional
Curso Android ProfissionalCurso Android Profissional
Curso Android Profissional
 
Curso Android Profissional em Sao Paulo
Curso Android Profissional em Sao PauloCurso Android Profissional em Sao Paulo
Curso Android Profissional em Sao Paulo
 
Android
AndroidAndroid
Android
 

Mais de armeniocardoso

Análise e Projeto de Sistemas com UML e Java
Análise e Projeto de Sistemas com UML e JavaAnálise e Projeto de Sistemas com UML e Java
Análise e Projeto de Sistemas com UML e Javaarmeniocardoso
 
Guia para a Plataforma Java - Recursos e Novidades
Guia para a Plataforma Java - Recursos e NovidadesGuia para a Plataforma Java - Recursos e Novidades
Guia para a Plataforma Java - Recursos e Novidadesarmeniocardoso
 
Domain-Driven Design - Uma Abordagem Introdutória
Domain-Driven Design - Uma Abordagem IntrodutóriaDomain-Driven Design - Uma Abordagem Introdutória
Domain-Driven Design - Uma Abordagem Introdutóriaarmeniocardoso
 
Guia para o Profissional Java
Guia para o Profissional JavaGuia para o Profissional Java
Guia para o Profissional Javaarmeniocardoso
 
Persistência de Objetos em Java
Persistência de Objetos em JavaPersistência de Objetos em Java
Persistência de Objetos em Javaarmeniocardoso
 
Modelando Sistemas com UML
Modelando Sistemas com UMLModelando Sistemas com UML
Modelando Sistemas com UMLarmeniocardoso
 
Desenvolvendo com Java Open Source
Desenvolvendo com Java Open SourceDesenvolvendo com Java Open Source
Desenvolvendo com Java Open Sourcearmeniocardoso
 
Desenvolvimento de Aplicações Corporativas com Java
Desenvolvimento de Aplicações Corporativas com JavaDesenvolvimento de Aplicações Corporativas com Java
Desenvolvimento de Aplicações Corporativas com Javaarmeniocardoso
 
Desenvolvimento RIA com Java
Desenvolvimento RIA com JavaDesenvolvimento RIA com Java
Desenvolvimento RIA com Javaarmeniocardoso
 

Mais de armeniocardoso (18)

Análise e Projeto de Sistemas com UML e Java
Análise e Projeto de Sistemas com UML e JavaAnálise e Projeto de Sistemas com UML e Java
Análise e Projeto de Sistemas com UML e Java
 
Guia para a Plataforma Java - Recursos e Novidades
Guia para a Plataforma Java - Recursos e NovidadesGuia para a Plataforma Java - Recursos e Novidades
Guia para a Plataforma Java - Recursos e Novidades
 
Java security
Java securityJava security
Java security
 
Domain-Driven Design - Uma Abordagem Introdutória
Domain-Driven Design - Uma Abordagem IntrodutóriaDomain-Driven Design - Uma Abordagem Introdutória
Domain-Driven Design - Uma Abordagem Introdutória
 
Guia para o Profissional Java
Guia para o Profissional JavaGuia para o Profissional Java
Guia para o Profissional Java
 
Netbeans
NetbeansNetbeans
Netbeans
 
Web Services
Web ServicesWeb Services
Web Services
 
Realtime Linux
Realtime LinuxRealtime Linux
Realtime Linux
 
Persistência de Objetos em Java
Persistência de Objetos em JavaPersistência de Objetos em Java
Persistência de Objetos em Java
 
JavaServer Faces
JavaServer FacesJavaServer Faces
JavaServer Faces
 
Java e XML
Java e XMLJava e XML
Java e XML
 
Modelando Sistemas com UML
Modelando Sistemas com UMLModelando Sistemas com UML
Modelando Sistemas com UML
 
Desenvolvendo com Java Open Source
Desenvolvendo com Java Open SourceDesenvolvendo com Java Open Source
Desenvolvendo com Java Open Source
 
Desenvolvimento de Aplicações Corporativas com Java
Desenvolvimento de Aplicações Corporativas com JavaDesenvolvimento de Aplicações Corporativas com Java
Desenvolvimento de Aplicações Corporativas com Java
 
DotNet vs. Java
DotNet vs. JavaDotNet vs. Java
DotNet vs. Java
 
Java Seminar
Java SeminarJava Seminar
Java Seminar
 
Ruby on rails
Ruby on railsRuby on rails
Ruby on rails
 
Desenvolvimento RIA com Java
Desenvolvimento RIA com JavaDesenvolvimento RIA com Java
Desenvolvimento RIA com Java
 

Último

ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 
Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfNatalia Granato
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 

Último (6)

ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 

Guia para o Profissional Android

  • 1. Guia para o Profissional Android Rio de Janeiro – 17/12/2018
  • 2. Armênio Cardoso Iniciei minha carreira profissional em 1986 e desde 1990 procuro conciliar o trabalho em Desenvolvimento de Software com o de Professor. Participei em diversos projetos, atuando com modelagem, arquitetura e programação. Fui desenvolvedor Pascal, Clipper, Visual Basic e C/C++. Trabalhei como tradutor / revisor de livros técnicos e professor em várias instituições. Em 2002 vim para o Infnet onde dou aulas nas formações Java, Android e SQL Server. Desde 2012 trabalho como desenvolvedor em uma empresa da área de medicina diagnóstica. http://www.linkedin.com/in/armeniocardoso
  • 3. Panorama do mercado de trabalho para desenvolvedores Android. Falando por Números 01 Quais são os passos para entrar e se aprimorar no mundo Android. Passo-a-passo 02 Detalhes sobre a atividade de desenvolvimento. Programando 03 Onde encontrar as informações necessárias? Referências 04 Agenda
  • 4. Panorama do mercado de trabalho para desenvolvedores Android. Falando por Números 01
  • 5. 3 Definições É um sistema operacional baseado no núcleo Linux e atualmente desenvolvido pelo Google. Android É projetado principalmente para dispositivos móveis com tela sensível ao toque como smartphones e tablets; mas tem interface específica para TVs, automóveis e relógios de pulso. Interface com Usuário Apesar de ser principalmente utilizado em dispositivos com tela sensível ao toque, também é utilizado em consoles de videogames, câmeras digitais, computadores e outros dispositivos eletrônicos. Não é só touch
  • 6. Google tornou público todo o código-fonte do Android, liberando-o sob a licença Apache, com quaisquer modificações feitas no kernel Linux subjacente liberado sob a GPL v2. Open Source Os widgets fornecem uma parte da funcionalidade de um aplicativo na tela inicial de um dispositivo Android, permitindo que o usuário veja atualizações em tempo real e manipule o aplicativo de maneiras limitadas. Widgets Não é permitida a instalação de aplicativos de outra fonte que não seja a loja do Google, por default. Não é preciso fazer root ou jailbreak. A loja de aplicativos de terceiros mais conhecida é a Amazon, mas não é a única. Múltiplas Lojas de Apps Além de poder escolher entre hardware de diferentes formas, tamanhos e preços, os usuários do Android podem personalizar à fundo cada dispositivo para o conteúdo de seus corações. Altamente Customizável Uma comunidade vibrante de usuários e desenvolvedores foi criada em torno do Android. A comunidade existe também porque os usuários e desenvolvedores se aproveitam da natureza de código aberto do Android para alterá-la para atender às suas próprias necessidades. Comunidade 5 Fatos
  • 8. 6 Datas Android, Inc. foi fundada em Palo Alto, California por Andy Rubin, Rich Miner, Nick Sears e Chris White. 2003 Criada a Open Handset Alliance, consórcio de tecnologia entre empresas, incluindo Google, fabricantes de telefones, operadoras de telefonia e fabricantes de chipsets. 2007 Google apresentou sua série de dispositivos Nexus — uma linha de smartphones e tablets rodando o sistema Android, fabricado por empresas parceiras. 2010 75% das vendas mundiais de smartphones com Android, segundo a IDC. 2012 Google adquiriu Android Inc.; funcionários-chave da empresa, incluindo Rubin, Miner e White, continuaram na companhia após a aquisição. 2005 2018
  • 9.
  • 10. 7 Usos além do Smartphone Automóveis Áudio Players Câmeras e Equipamentos de Vídeo Consoles de Vídeogames Netbooks & Smartbooks Smartwatches Smart TV O fato do Android ser um sistema aberto e extremamente customizável permite que ele seja usado em outros eletrônicos além de tablets e smartphones.
  • 11. 3 Opções para Empresas Dispositivos Dedicados Subconjunto de dispositivos de propriedade da empresa que atendem a uma finalidade específica. O Android vem com um amplo conjunto de recursos de gerenciamento que permitem que as organizações configurem dispositivos para tudo, desde ambientes industriais e industriais voltados para funcionários, até fins de sinalização e quiosque voltados para o cliente. BYOD – Bring Your Own Device Dispositivos BYOD podem ser configurados com um perfil de trabalho - um recurso incorporado ao Android 5.1 que permite que aplicativos e dados de trabalho sejam armazenados em um espaço separado e independente dentro de um dispositivo. Um funcionário pode continuar usando seu dispositivo normalmente; todos os seus apps e dados pessoais permanecem no perfil principal do dispositivo. Dispositivos Exclusivos da Empresa As organizações podem exercer controle de gerenciamento completo sobre os dispositivos a partir do Android 5.0 de sua propriedade, cedidos para os funcionários. Existem duas opções de implantação disponíveis para esses tipos de dispositivos da empresa: totalmente gerenciadas (Android 5.0+) e totalmente gerenciadas com um perfil de trabalho (Android 8.0+). O Android Enterprise é uma iniciativa do Google para permitir o uso de dispositivos e aplicativos Android no local de trabalho.
  • 12. O programa Android Enterprise oferece APIs e outras ferramentas para os desenvolvedores integrarem o suporte ao Android em suas soluções de gerenciamento de mobilidade empresarial.
  • 13. Quais são os passos para entrar e se aprimorar no mundo Android. Passo-a-passo 02
  • 14. Passo-a-passo Preparação do Ambiente de Desenvolvimento Construção de Aplicações Simples Aprofundando os Conhecimentos Indo Além Passo 1 Passo 2 Passo 3 Passo 4
  • 15. 1 Preparação do Ambiente Android Studio é a IDE mais adequada para a construção de aplicações Android. 01 Download da IDE
  • 16. 1 Preparação do Ambiente Android Studio para Windows começa com 923 Mb e vai até 15,7 Gb aproximadamente depois de instalado. 02 Instalação da IDE
  • 17. 2 Aplicações Simples A IDE vem com assistentes que conduzem a sua primeira aplicação – Hello World! 01 Explorando a IDE
  • 18. 2 Aplicações Simples Na instalação do Android Studio existem dezenas de exemplos prontos para experimentar. 02 Exemplos Incluídos
  • 19. 3 Aprofundando Ciclo de Vida de uma Aplicação e Componentes Gráficos Como as aplicações rodam em um contexto, é muito importante entender o seu ciclo de vida e os métodos de call-back que precisam ser sobrescritos, além dos seus componentes gráficos básicos. Bibliotecas e “Soluções” Explorar as possibilidades disponíveis para oferecer soluções para problemas propostos. Linguagem Kotlin Pilar estrutural mínimo para começar. Editor de Interfaces – UI / UX Dominar minimamente o editor de telas e os conceitos fundamentais de UI e UX. O Que Estudar? Estes são os principais tópicos que precisam ser dominados para que seja possível adquirir proficiência na Plataforma Android.
  • 20. 01 02 03 04 Android Studio otimizado para Kotlin Simples e Concisa Código seguro Interoperável com Java Linguagem Kotlin
  • 21.
  • 22. Toda aplicação gráfica tem um ciclo de vida composto por métodos de call-back. Esses métodos são chamados pelo contexto de execução a partir de eventos que ocorrem, como por exemplo: onCreate, onStart, onStop e onDestroy. Ciclo de Vida de uma App
  • 23. Editor de Layout dispõe de ferramentas poderosas para a construção de telas.
  • 24. 4 Indo Além... Como já foi dito, a comunidade interessada na plataforma Android é vibrante e ativa. Pesquise por fóruns de discussão onde possa colocar suas dúvidas e ler sobre soluções encontradas. Fóruns de Discussão Nada substitui a experiência de um bom autor. Pesquise por livros, apostilas e blogs que exponham as experiêcias de seus autores. Procure por projetos e exemplos de código no Github. Bibliografia e Blogs Não se aprende desenvolvimento de software somente lendo – é fundamental dedicar algum tempo para a prática. Comece com projetos simples, como um jogo da velha ou a lista de compras do supermercado e vá incluindo novas funcionalidades aos poucos. Praticar, Praticar...
  • 25. Detalhes sobre a atividade de desenvolvimento. Programando 03
  • 26.
  • 27. /** Created by Android ATC */ val X=1 val Y=3 fun main(args: Array<String>) { println("Hello, Android ATC") val Z=X+Y; println(Z) } Iniciando
  • 28. /** * Created by Android ATC */ fun main(args: Array<String>) { var x=10 if (x>30) println("Hello, I am If statement running now") else println("Hello, I am Else statement running now") } Estruturas de Controle
  • 29. /** * Created by Android ATC */ fun main(args: Array<String>) { println("=========== Pizza Order ==============") println("Enter the Pizza Size : 1=> Small Size, 2=> Medium Size, 3=> Large Size") var size= readLine()!!.toInt() var price:Int?? =null when (size) { 1-> price=5 2-> price=7 3-> price=10 else->println("You did not enter the correct size") } println("Total Price = $price" +" USD") } Estruturas de Controle
  • 30. var My_Company="Yahoo" fun main(args: Array<String>) { name("Android ATC") } fun name (My_Company:String) { println("My Company Name is : $My_Company") } Funções e Escopos de Variáveis
  • 31. abstract class ComputerCourse { abstract fun courseprice() abstract fun courseprerequisite() } class LanguageCourse():ComputerCourse() { override fun courseprice() { println("Course Price") } override fun courseprerequisite() { println("Course Prerequisite") } } fun main (args : Array<String>){ var x =LanguageCourse() x.courseprerequisite() x.courseprice() } Orientação a Objetos
  • 37. Onde encontrar as informações necessárias? Referências 04