Подтвердить что ты не робот

Butterknife против AndroidAnnotations

Я думаю об использовании Dagger в своем приложении. Я также хочу использовать библиотеку инъекций представления, которая дает мне много функциональности, чтобы сэкономить время написание кода, но, с другой стороны, это не должно быть тяжелым и дорогостоящим, когда дело доходит до производительности.

Существуют ли существенные различия между AndroidAnnotations и Butterknife?

4b9b3361

Ответ 1

Если вы просто хотите уменьшить шаблонный код в своем приложении, введя представления (или установив клики), вы можете начать с Butterknife. Он быстрый, небольшой по размеру и простой в использовании. Он предназначен для ввода представлений, слушателей и других объектов, связанных с пользовательским интерфейсом.

Если вы хотите добавить больше таких вещей, как системные службы, или заставить методы запускать в фоновом режиме или потоке пользовательского интерфейса, или внедрять такие ресурсы, как анимация и т.д., вы должны пойти после AndroidAnnotations. Небольшим недостатком, с которым вы столкнетесь, является то, что для каждого класса, который вы хотите улучшить, новый класс будет сгенерирован с тем же именем плюс "_" в конце. Таким образом, вам придется привыкнуть использовать такие имена при вызове действий или создании фрагментов. Если это не проблема для вас, просто используйте ее. Обе библиотеки генерируют код, поэтому во время выполнения не должно быть никаких штрафов за производительность.

Dagger не предназначен для вставки представлений. Dagger позволяет лучше структурировать ваш код и определять зависимости от инъекций между различными компонентами. Он очень мощный, если вы его освоите, но он не заменяет Butterknife.