terça-feira, 7 de março de 2017

Iniciando Firebase. Parte 1.




Firebase o que é e o que ele pode fazer.


Segundo a Google Cloud Platform: Firebase é uma plataforma totalmente gerenciada para a construção de iOS, Android e aplicativos da web que fornece sincronização automática de dados, serviços de autenticação, mensagens, armazenamento de arquivos, análise e muito mais. Começar com Firebase é uma maneira eficiente de construir ou protótipo de serviços back-end móveis.
Ou seja,
O Firebase é uma plataforma para armazenamento e sincronismo de dados em tempo real. Fornece serviços de backend,  você não precisa se preocupar com servidores, banco de dados, código de servidores e códigos de rede.

 A figura 1 mostra os recursos que o Firebase fornece, ele dá suporte tanto para área de desenvolvimento quanto para outras áreas como crescimento, divulgação e monetização do seu app.

Figura 1.



Para saber mais sobre os recursos que o Firebase oferece veja o site oficial: FIREBASE
Em caso de dúvidas, acesse a documentação: 

E o melhor essa ferramenta oferece uma versão grátis com muitos recursos, uma boa opção para iniciantes:








segunda-feira, 18 de janeiro de 2016

Padrões de Projeto - Resumo - Parte 2

Padrões Estruturais


Os padrões estruturais se preocupam com a forma como classes e objetos são compostos para formar estruturas maiores.


Memorização dos  padrões estruturais:

Adaptei(adapter) a ponte(bridge) decorada (decorator), depois que me aproxymei(proxy) vi que era só façade(façade).

 (Os trocadilhos toscos são mais fáceis de memorizar, rsrsrsr)  :).

Adapter: Utilizada quando queremos converter a interface de uma classe em outra interface utilizada por um cliente.

Bridge: Utilizada para separar uma abstração da sua implementação de modo que as duas possam ser modificadas de forma independentes. (usada para desacoplamento de objetos).

Decorator: Permite adicionar ou remover responsabilidades e/ou comportamentos de uma classe em tempo de execução;.

Façade: Fornece uma interface para um conjunto de interfaces em um subsistema.

Proxy: O padrão proxy tem como objetivo fornecer um objeto representante ou um marcador para que outro objeto controle o acesso a ele.




Padrões de Projeto - Resumo

Padrões de Projeto.

Parte 1.

Teoria:

Os padrões de projeto se baseiam-se no reuso e na facilidade que essa reutilização proporciona no desenvolvimento de projetos orientados a objetos. O software deve ser orientado a objeto reutilizável, a fim de atender a outros requisitos.

Beneficíos

  • Construção de software confíavel com arquitetura testada.
  • Na promoção da reutilização de projetos em futuros sistemas
  • No encurtamento da fase de projeto no processo de desenvolvimento de um software.
São elementos essenciais do padrão de projeto:

  • Nome do padrão: é uma referência que identificará o problema de projeto, suas soluções e consequências.
  •  Problema: descreve o problema e o contexto com o intuito de saber quando aplicar o padrão.
  • Solução: descreve os elementos que compõem o projeto, seus relacionamentos, suas responsabilidades e colaborações.
  • Consequências: são os resultados e a análise das vantagens e desvantagens (trade-offs) da aplicação padrão.
Catálogo dos padrões de projeto GOF 


Memorização (concurso):

Padrões de criação:

Fabricas abstratas constroem protótipos únicos.

Definição em uma frase:


Abstract factory: Produtos portáveis utilizam o conceito abstrato desse padão para desvincular código fundamental da aplicação de recursos que são dependentes da plataforma.

Esse padão é comporto de :

  • AbstractFactory: Declara uma interface para operação que criam objetos abstratos.
  • ConcretFactory: Implementa operações especificas para criar objetos concretos.
  • AbstractProduct: Declara uma interface para cada tipo de objeto.
  • ConcreteProduct: implementa uma interface de abstractProdut para definir um objeto que pode ser criado por sua concreteFactory correspondente.
  • Client: Utiliza interfaces declaradas pelo abstractFactory e abstractProduct, sem se preocupar com as implementações concretas.
Ex: Promover compatibilidade de um sistema de celular para várias arquiteturas diferentes. É possível desenvolver uma classe genérica e implementar classes concretas adequadas para cada aparelho.


Buildersepara a construção de um objeto complexo da sua representação, de modo que o mesmo processo de construção possa criar diferentes representações.
Ex: Sistema de tratamento de imagens, cada nova função irá surgir em um modulo novo, permanecendo o principal inalterável.



Prototype: especifica os tipos de objetos a serem criados usando uma instância prototípica e cria novos objetos copiando este protótipo.

Singleton: garante que uma classe tenha somente uma instância e fornece um ponto global de acesso para ela.





sexta-feira, 15 de janeiro de 2016

UML - MODELAGEM DE ESTADO

UML -  MODELAGEM DE ESTADO


Diagrama de Estado:

O modelo de estado consiste em vários diagramas de estados, um para cada classe com comportamento temporal importante para aplicação. O diagrama de estado é composto por:
  • Estado simples: Representado por um retângulo com bordas arredondadas contendo um nome de estado.
  • Estado Composto ou máquina de estado: O retângulo é maior e contém outros estados.
  • Transição: É representada por uma seta e indica o relacionamento entre estados.

Diagrama de estados são muito utilizados para a validação de modelagem de classes.


Estado inicial: É o estado inicial é representado por um círculo preenchido na cor preta (fechado) e indica que o objeto está inerte.
O estado final é representado por um círculo aberto, e por dentro tem outro preenchido. 
Os dois estados são considerados pseudoestados, 
O diagrama de estado também possui a subdivisão de um estado em dois ou mais concorrentes, isto é chamado de fork(bifurcação),  já a estrutura join (junção), une dois ou mais estados num único.

Figura 1 : Estado Inicial e final


Figura 2 - Exemplo de bifurcação







quinta-feira, 14 de janeiro de 2016

UML - DIAGRAMA DE SEQUÊNCIA E DIAGRAMA DE COMUNICAÇÃO

UML - DIAGRAMA DE SEQUÊNCIA E DIAGRAMA DE COMUNICAÇÃO

DIAGRAMA DE SEQUÊNCIA: O diagrama de sequência também é considerado um modelo de interação, esse diagrama apresenta como ocorre o fluxo de mensagens entre os objetos ao longo do tempo sobre um determinado caso de uso.
 O diagrama de sequência é um diagrama que apresenta em ordem lógica, os fluxos de mensagens entre os objetos pertinentes ao respectivo caso de uso num determinado período de tempo.
Símbolos que representam um fluxo de sequencia:
Este diagrama é composto por objetos e fluxos de mensagens.

Retângulos ao topo da linha: Objetos
Linha vertical e tracejada: Linha da vida
Pode haver uma instância de ator na primeira linha.
Fluxo síncrono: Seta do fluxo sólida de cor preta e indica que o objeto é remetente esperará um retorno da mensagem pelo objeto destinatário.

Fluxo assíncrono: É desenhado com a seta do fluxo de forma não sólida e indica que as mensagens são enviadas, mas não se espera o retorno de forma imediata. Desenho de uma seta não sólida. 

Figura 1: Diagrama de Sequência



Casos Especiais no diagrama de sequência:

Autodelegação ou autochamada: É uma técnica utilizada em algoritmos para mostrar que uma operação chama a si própria, ou seja , a mensagem é enviada para o próprio objeto. A mensagem de autodelegação é sempre síncrona.


Comunicação: O diagrama de comunicação ou colaboração, apresenta um fluxo de mensagens, porém não em sequência, esse diagrama tem por objetivo mostrar o relacionamento entre os objetos. Os símbolos usados no diagrama de comunicação são:

  • Objetos: retângulos
  • Mensagens: Numeradas representadas por setas e linhas, para mostrar os relacionamentos entre os objetos.
Este diagrama é elaborado para os casos de uso que apresentam muitos objetos, de forma a esclarecer melhor os relacionamentos entre eles. A figura 2 mostra um exemplo de diagrama de comunicação:

                                 Figura 2: Diagrama de Comunicação (Colaboração)





UML - DIAGRAMA DE CASO DE USO

MODELAGEM DE INTERAÇÕES

Diagrama de Caso de Uso:

Introdução:
O diagrama de caso de uso é usado para descrever as funcionalidades do sistema, demostrando as interações externas, esse diagrama permite a coleta dos requisitos comportamentais do sistema.
O diagrama de caso de uso é representado por símbolos como:
O ator pode representar pessoas, hardware ou sistemas. O user Case é a ação a ser executada, geralmente utiliza-se um verbo no infinitivo acompanhado de um substantivo.
Em um diagrama de caso de uso pode ter  casos de relacionamentos especiais, os dois que iremos citar é o <<extends>> e o <<include>>.  De forma geral a diferença entre esses dois relacionamentos é simples. O extends significa que um caso de uso pode ser acrescentado ao outro. O include  significa que um caso de uso conterá o comportamento do outro.
Ao desenvolver um caso de uso, deve-se fazer um estudo detalhado do funcionamento do sistema. 

Ex: Caso de uso sistema bancário;

Ator: Cliente

Principais casos de uso:
Efetuar pagamento
Efetuar saque
Efetuar Depósito





domingo, 25 de outubro de 2015

Como executar sua aplicação no celular - Android Studio


Neste tutorial vamos aprender como configurar Android Studio para executar suas aplicações no seu celular:

1º)  Passo:
(Baseado no aparelho motorola.)
  • No seu celular vá em configurações
  • Sobre o telefone. 
  • Clique 7 vezes sobre o número da versão do sistema.
Seu telefone vai liberar a  opção programador.

2º)  Passo:

Instale um gerenciador USB, para fazer a ponte entre seu celular e o android studio, no caso do motorola, consegui no próprio site Motorola.


3) Passo: 

Após a instalação do USB device, você pode tentar executar sua aplicação. Caso apareça que o dispositivo USB não está autorizado como na figura abaixo:


4) O quarto passo será habilitar  no seu celular Depuração USB.
  • Configuração
  • Programador
  • Clicar em Depuração USB, habilitando.
5) Verifique se no seu PC você possui o  sdk\platform-tools
   Senão possui baixo pelo sdk.

6) Revogue a autorização de depuração USB
  • Configuração
  • Programador
  • Revogar autorização de depuração.

6) Execute o cmd
  • Use o cmd execute o comando:  cd C:\Users\Adm\AppData\Local\Android\sdk\platform-tools
  • depois execute o comando: adb device
  • se aparecer não autorizado
  • execute o novo comando adb kill-server -> Enter
  • execute o comando adb start-server -> Enter
Irá aparecer uma mensagem para você habilitar o PC para conectar com o seu celular. 


Por hoje é só, espero ter ajudado.