Desenvolvimento mais fácil do Android com RoboGuice
RoboGuice é uma estrutura obrigatória que traz o simplicidade e facilidade de injeção de dependência para o Android. O Guice é uma estrutura de injeção de dependência leve para a plataforma Java. Injeção de dependência é um padrão de design com o núcleo de Separando o comportamento da resolução de dependência.
Permite a remoção de “codificado” dependências e torna possível alterá-las em tempo de compilação ou de execução. Isso faz com que o seu código mais fácil de escrever, alterar, teste de unidade e reutilização em outros contextos. Seu código se torna menos código boilerplate e mais lógica de negócios.
Com RoboGuice, você pode trazer tudo isso para o Android. RoboGuice permite que você use suas próprias classes de base junto com seus próprios métodos ou funcionalidades essenciais. Isso faz RoboGuice compatível com a maioria das bibliotecas bem como permitir que você tira quase todos os boilerplates da plataforma através de várias injeções, como injeções View, injeções de recursos, injeções SystemService, etc.
Em termos simples, usar o RoboGuice no seu projeto Android significa escrevendo menos código, lidando com menos erros e tendo menos dores de cabeça.
Como instalar o RoboGuice
O RoboGuice pode ser facilmente instalado em seu projeto baseado em Gradle, adicionando as seguintes linhas ao seu projeto. “dependências” seção do arquivo de compilação gradle do seu módulo de aplicativo:
project.dependencies compile 'org.roboguice: roboguice: 3. +' fornecido 'org.roboguice: roboblender: 3. +'
Como usar o RoboGuice
RoboGuice é fácil de usar, se você seguir estas regras básicas:
1. Estenda suas aulas das classes base do RoboGuice, como RoboActivity, RoboFragment, RoboService, RoboListActivity, RoboActionBarActivity, etc.
2. Injetar exibições, recursos ou serviços usando anotações diferentes fornecidas por RoboGuice como “@InjectView“, “@InjectResource“, “@Injetar“, etc.
É isso aí. Simples, não é? Você se sentirá mais em casa se estiver familiarizado com Anotações Java.
Não RoboGuice vs RoboGuice
Vamos comparar como o RoboGuice pode diminuir sua carga de trabalho e melhorar sua produtividade usando este pequeno exemplo. Suponha que tenhamos um “activity_main.xml” arquivo de layout com todas as exibições listadas abaixo.
Nota: Comentários são adicionados para melhorar a compreensão do código.
classe NoRoboGuice estende Activity // views TextView name; Miniatura do ImageView; // services LocationManager loc; // recursos Drawable icon; String myName; public void onCreate (Bundle salvoInstanceState) super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); // define o nome do layout = (TextView) findViewById (R.id.name); // miniatura de inicialização do boilerplate = (ImageView) findViewById (R.id.thumbnail); // Inicialização do boilerplate loc = (LocationManager) getSystemService (Activity.LOCATION_SERVICE); // ícone de inicialização do boilerplate = getResources (). getDrawable (R.drawable.icon); // Inicialização do boilerplate myName = getString (R.string.app_name); // Inicialização do boilerplate name.setText ("Hello," + myName); // código real
Aqui está como parece com RoboGuice:
@ContentView (R.layout.activity_main) // define a classe de layout RoboGuice extends RoboActivity // views @InjectView (R.id.name) TextView name; @InjectView (R.id.thumbnail) Thumbnail do ImageView; // resources @InjectResource (R.drawable.icon) Ícone Drawable; @InjectResource (R.string.app_name) String meuNome; // services @Inject LocationManager loc; public void onCreate (Bundle salvoInstanceState) super.onCreate (savedInstanceState); name.setText ("Hello," + myName); // código real
O RoboGuice não apenas reduz o código, mas também ajuda a melhorar a legibilidade e a compreensibilidade do código-fonte. Ele elimina as conjeturas do desenvolvimento de aplicativos e o código do seu aplicativo não está mais cheio com a mecânica da plataforma Android.
Esta vantagem ajuda muito no momento da depuração ou atualizando o aplicativo como você pode facilmente ler e alterar o código-fonte. Você não precisa mais procurar o código real entre o código de inicialização padrão porque agora apenas o código atual existe e RoboGuice faz a inicialização padronizada automaticamente para você.