Skip to content

O aplicativo consome uma API REST para buscar os dados do endereço.

Notifications You must be signed in to change notification settings

Diego1906/ConsultaCep

Repository files navigation

App Consulta Cep

O aplicativo consome uma API REST para buscar os dados do endereço utilizando como parâmetro o número do CEP ou informações do endereço tais como: rua, cidade e estado (UF).

API utilizada ViaCEP.

O aplicativo possui duas telas e elas são:

  • 1º Tela consulta as informações por CEP;
  • 2º Tela consulta as informações por dados do endereço;

No desenvolvimento do projeto foram utilizadas as tecnologias descritas abaixo

  • Linguagem de Programação

    • Kotlin
  • Componentes de Arquitetura

  • Bibliotecas Externas

    • Retrofit é utilizada para fazer requisições HTTP a serviços Web
    • Gson é utilizada para fazer conversão de objetos em sua representação JSON
    • Koin é utilizada para aplicar injeção de depedência
  • Bibliotecas Internas

    • RecyclerView é utilizada para criar listas de informações, objetos, imagens que serão apresentadas na tela e etc.
    • Material Design é a orientação de código e projeto oficial do Google
    • ConstraintLayout permite você criar layouts grandes e complexos com uma hierarquia de visão plana (sem grupos de visão aninhados)
  • Design de Arquitetura

    • MVVM é o padrão de design de arquitetura de software que a Google indica para os novos desenvolvimento. Os novos componentes de arquitetura já são lançados com suporte a esse tipo de padrão
  • Padrões de Projeto (Design Patterns)

    • Repository é estratégia para abstrair o acesso aos dados. Ele é composto pelo código em uma aplicação que lida com o armazenamento e a recuperação de dados. Mais detalhes.
    • Dependency injection é um padrão de desenvolvimento de programas de computadores utilizado quando é necessário manter baixo o nível de acoplamento entre diferentes módulos de um sistema.
    • Adapter o padrão Adapter converte a interface de uma classe para outra interface que o cliente espera encontrar, "traduzindo" solicitações do formato requerido pelo usuário para o formato compatível com o a classe adapter e as redirecionando. Dessa forma, o Adaptador permite que classes com interfaces incompatíveis trabalhem juntas
  • Princípios do SOLID utilizados