palestra iniciando o desenvolvimento de aplicativos com o club do android

40
Iniciando o Desenvolvimento de Aplicativos com o Club do Android @mrafaelbatista

Upload: messias-batista

Post on 14-Apr-2017

66 views

Category:

Software


1 download

TRANSCRIPT

Iniciando o Desenvolvimento de Aplicativos com o Club do Android@mrafaelbatista

Quem sou eu?

Messias R. Batista

Desenvolvedor Web e AndroidEstudante de Sist. para Internet Pós-graduando em Admin em BD

Agenda

● Ambiente de Desenvolvimento

● Iniciando com Java e XML

● Android Frankstein

● Material Design

● Aprendendo Android

● Iniciativa em João Pessoa

Antes…Top 8 dos Sistemas Operacionais Mobile no Brasil nos últimos 6 meses.

Ambiente de Desenvolvimento

Principais Ferramentas

● Android Studio

● Android Virtual Device (AVD)

● Genymotion

● Virtualbox

Preparação para o AndroidVantagens do Android Studio

● IDE Oficial de app Android baseado no IntelliJ IDEA;

● Flexibilidade baseada no Gradle;

● Construção do apk;

● Modelos de código que auxiliam na padronização dos app;

● Editor com capacidade de drop-down;

● entre outros...

Android Virtual Device

● Iniciar um app quando executa um projeto;

● Instala apk apenas arrasrando;

● Aplicativos ficam instalados;

● É possível testar vários apps;

● Tecnologia de virtualização Intel VT-X;

○ KVM para Linux;

○ HAXM para Windows e OS X;

● Utilização de 80% da velocidade nativa do processador;

● Emulador 5x mais rápido.

Genymotion

Necessário utilizar o Virtualbox.

O que preciso saber?

Importante

Preparação para o Android

Conceitos de Lógica de Programação

Paradigma de Orientação à Objetos

Linguagem de Programação Java

Linguagem de Marcação XML

Ambiente de Desenvolvimento

Principais Conceitos de Padrões de Projeto

Prática e Conceitos de Design Gráfico

Noções de Material Design

Noções de Usabilidade de Software

Exemplo de Activity e métodos implementados

Exemplo de Activity e métodos implementados

O Robozinho Verde da GooglelandiaActivity

As activitys devem possuir um layout!

JAVA XMLR

A classe R é responsável por gerenciar o acesso aos recursos de imagem, layout, menu, values, por exemplo. Este gerenciamento é realizado através da criação de constantes para acessar estes recursos.

Arquitetura Básica de um app

Arquitetura de um app

layout_main.xmlcontent_main.xml

<<Activity>>MainActivity.class

menu.xml

string.xml

style.xml

AndroidManifest.xml

Dalvik Virtual Machine

Compilação Compilação DEX DEX File

DEX File apkbuilder Interpretação

Dalvik Virtual Machine

.class.java

Android Frankstein

As partes do Frankenstein

Activity

Intent

Broadcast Receiver

Content Provider

Services

Activity

“Activity é um componente de

aplicativo que fornece uma tela com

a qual os usuários podem interagir

para fazer algo, como discar um

número no telefone, tirar uma foto,

enviar um e-mail ou ver um mapa”

Intent

“A Intent é um objeto de mensagem que pode ser usado para solicitar uma ação de outro componente de aplicativo”

Intent

O que podemos fazer com intent?

● Enviar msg ao SO;● Abrir uma nova tela do app;● Realizar uma ligação;● Abrir o browser com um endereço web;● Exibir endereço ou localização no G. Maps;● Executar Broadcast Reciver ou Service;● Enviar msg para outro app;● Abrir o Google Play para instalar outro app;● Compartilhar conceútos nas Redes Sociais.

● Escuta reações do sistema;

● Executa tarefas rápidas;

● Trabalha em segundo plano;

Broadcast Receiver

“classe [...] utilizada para que aplicações possam reagir a determinados eventos gerador por uma intent”

Content Provider

“Provedores de conteúdo gerenciam o acesso a um conjunto estruturado de dados. Eles encapsulam os dados e fornecem

mecanismos para definir a segurança dos dados”

Services

“Um Service é um componente do aplicativo que pode realizar operações longas e não fornece uma interface do usuário.”

● Executa o processamento em segundo plano;

● Não precisa ter tempo determinado;

● Não precisa interagir com o usuário;

● Continua sua execução mesmo na troca de app;

Material Design

Introdução ao Material DesignPrincípios

Material is the metaphor

Bold, graphic, intentional

Motion provides meaning

https://youtu.be/ru7LX9NDdec

Aprendendo Android

Referências de Estudo Conteúdo do Google

http://www.android.com https://developer.android.com/index.html

Android Developers Android Developers Blog

Referências de Estudo https://android-arsenal.com/

Referências de Estudo Livros

Referências de Estudo Cursos

Iniciativa em João Pessoa

Referências de Estudo GDG João Pessoa

Google Study Jam

Iniciativa em João Pessoa

Iniciativa em João Pessoa GDG João Pessoa

Club do Android

● Organização em equipes;

● Grupos de estudo;

● Desenvolvimento de apps;

● Workshops e Meetups;

● Compartilhamento de conhecimento.

Iniciativa em João Pessoa

Iniciando o Desenvolvimento de Aplicativos com o Club do Android

Obrigado!

Messias R. Batista

www.mrafaelbatista.com.br

github.com/mrafaelbatista