Agora que temos a nossa tela pronta, é hora de programá-la. Usaremos a biblioteca open-source ButterKnife para nos auxiliar com tarefas repetitivas e muito chatas que são os bindings dos widgets dos layouts XML em variáveis Java locais.
Visualmente pode não parecer grande coisa, mas esta declaração é feita no topo da classe da Activity, o que permite que esse componente seja usado em toda a classe. Além disso, essa biblioteca é extremamente performática, pois não usa Reflection, mas sim um transpilador das anotações para código Java nativo de binding, que não serve apenas para binding de campos, mas também de cores, strings, imagens etc.
Mas antes de sairmos aproveitando tudo o que a biblioteca tem a oferecer, precisamos adicionar a sua dependência ao nosso projeto, modificando nosso arquivo build.gradle (do Module:app) para adicionar as seguintes linhas dentro da seção dependencies:
Essas linhas adicionam uma nova dependência ao projeto, bem como um processador de annotations (aquelas palavras precedidas por @ que fica sobre os métodos e variáveis).