Критические ошибки, которые следует избегать при разработке Android

kriticheskie oshibki kotorye sleduet izbegat pri razrabotke android?v=1656660971

Варун Бород

TfphkrI2K5lzYzd5L7akveQXCS0zBufua3uF
Фото Натана Думлао на Unsplash

Многие пионеры и лидеры в разных отраслях перефразировали:

В любом деле важно знать, какие основные вещи следует сделать правильно. Но не менее важно, если не больше, знать несколько главных вещей, которых люди должны избегать любой ценой.

Мои публикации до сих пор касались того, как выполнить определенную задачу на Android. Учитывая приведенное выше, сегодня я напишу о первых пяти ошибках, которых, по моему мнению, следует избегать разработчикам Android.

Не размещаются все строки для отображения strings.xml

Это создает плохой опыт интернационализации, поскольку вам придется разрабатывать собственные способы отображения правильной версии сообщения на основе языка пользователя.

Если сообщения находятся в strings.xml, их можно легко перевести и интегрировать в приложение. После этого ОС Android легко определяет, какой строчный ресурс использовать в зависимости от языка, который пользователь установил на своем устройстве.

Вот несколько причин, приведенных пользователями, чтобы не использовать строчные ресурсы:

  • Для доступа требуется контекст: если вы хотите отобразить эту строку в пользовательском интерфейсе, вам неизбежно понадобится/будете иметь определенный контекст там. Просто используйте тот же контекст, чтобы получить строку.
  • Но мне это нужно только в одном месте: Неизвестно, когда завтра вам может понадобиться та же строка в каком-нибудь другом файле. Лучше потратить дополнительную минуту, чтобы застраховаться от будущих проблем
  • Сложная строка с данными при выполнении: Друзья, Android поможет вам. Существуют параметризированные строки, которые поддерживаются платформой с синтаксисом, подобным тому, что используется в Java String.format(). Кроме того, также поддерживаются строки во множественном числе (с использованием разных строк в зависимости от количества чего-либо). Просмотрите эту публикацию StackOverflow, чтобы узнать параметрированные строки и официальную документацию для строк во множестве.

Не используется привязка данных

Кто любит писать громоздко findViewById вызывает, а затем поддерживает ссылку на эти представления в их текущем пространстве имен? Кроме того, в таком случае нам нужно сохранить наши идентификаторы просмотра, чтобы мы были уверены, какой идентификатор просмотра мы используем в findViewById . Это объясняется тем, что автозаполнение в Android Studio предложит каждый идентификатор (из всех макетов), но только присутствующие в текущем дереве макетов будут доступны для findViewById . Вернутся несуществующие null (вероятно, это вызывает a NullPointerException).

Google чрезвычайно легко интегрирует связывание данных в любое приложение (новое/существующее) и устранит все эти надоедливые шаблонные элементы просмотра и ссылки.

Некоторые из преимуществ использования привязки данных (над неиспользованием):

  • Доступны только ссылки на существующие представления данных (попытка ссылаться на недостающий компонент покажет ошибку при редактировании файла в AS. Это также вызовет ошибку при компиляции вместо того, чтобы кусать вас во время выполнения.).
  • Чуть быстрее из-за того, что нужно пройти все дерево макета только один раз, а не всякий раз, когда findViewById это называется.
  • Ваше рабочее пространство имен (класс/функция) остается чистым, и вам не нужно сохранять ссылку на все представления.
  • Вы можете использовать только некоторые функции связывания данных, чтобы просто устранить их. findViewById вызывает более расширенные функции (например, в этой публикации Джордж Маунт из Google пытается написать единый адаптер для всех представлений Recycler в программе).

Ключи API не скрываются

Это распространенная проблема, которая не зависит от домена и создается преимущественно младшими разработчиками почти во всех областях. Как только вы отправляете часть кода в систему управления версиями, она остается там навсегда. Даже если вы удалите этот ключ API во время будущих комитов, любой, кто имеет доступ к хранилищу, сможет просмотреть ключ из его истории, и могут возникнуть всевозможные проблемы.

Вы можете взглянуть на эту публикацию, чтобы понять, как скрыть свои ключи API от вашего хранилища, но при этом включить их в процесс сборки и сделать их доступными в вашем коде.

Не считая жизненного цикла деятельности

Любой тип изменения конфигурации приведет к уничтожению текущей активности и созданию ее снова. Чтобы обеспечить бесперебойный пользовательский переход, нам нужно сохранить состояние, в котором находилась наша программа непосредственно перед изменением конфигурации. Тогда мы можем воспроизвести его так, как пользователь ожидает, что он будет использовать состояние после того, как наша деятельность будет создана заново после изменения конфигурации.

Если говорить об этой теме, мы должны сохранять состояние программы, когда наша текущая деятельность переходит в состояние остановки. После этого наша программа может быть закрыта в соответствии с потребностями системы ресурсов.

Не изучает комбинации клавиш в Android Studio

Это может не отображаться на коде, который вы пишете, но это сильно влияет на ваш общий рабочий процесс. Android Studio построен на основе IntelliJ Idea (IDE, известной своим удобством клавиатуры). Это значит, что разработчик может значительно повысить производительность, просто потратив немного времени на изучение разных комбинаций клавиш. Вот некоторые из моих любимых ресурсов, которые помогут вам в этом:

  • KeyPromoter — Это плагин IntelliJ (доступный в AS), который отображает гигантское уродливое диалоговое окно, показывающее команду быстрого доступа для только что выполнившего действия, каждый раз, когда вы используете мышь для выполнения определенных действий. Поверьте мне, это вас чертовски раздражает и вроде бы заставит выучить эти ярлыки. Вы можете найти и загрузить его в разделе плагинов в настройках Android Studio.
  • Шпаргалку – Это официальная печатная шпаргалка для комбинаций клавиш от Jetbrains (компании, стоящей за IntelliJ). Доступны версии для Windows и Mac.
  • Официальное руководство – Это официальное руководство, предоставленное Jetbrains для освоения комбинаций клавиш на платформе IntelliJ.
  • Также посмотрите эти два видео

Это все, уважаемые

Это пять вещей, на которые, по-моему, следует сосредоточиться в первую очередь каждому, кто работает в разработке Android. Если у вас есть другие предложения по тем или иным темам под небом, свяжитесь со мной в Twitter по адресу @varun_barad.

Добавить комментарий

Ваш адрес email не будет опубликован.