Большинство проблем возникает из-за отсутствия элементарных навыков – их легко предотвратить, если мы правильно понимаем основы. Рассмотрим 10 наиболее распространенных ошибок разработчиков Android.
Ошибка №1: начинать работу не разобравшись с Android Studio
Android Studio – официальная среда разработки для Android от Google. Эта IDE создает комфортные условия программисту, однако новичку предстоит пройти нелегкий путь, прежде чем она станет ему интуитивно понятной. Настройка предельно проста: почти все объединено в один установщик. Загрузив его, вы получите не только Android Studio, но также Android SDK (software development kit), диспетчер SDK и многое другое.
Установите цветовое оформление и используйте split screen для разделения экрана – это повысит вашу эффективность. Изучите горячие клавиши и полезные команды. Вот несколько из них:
- Search for command (ctrl + shift + a или cmd + shift + a – для IOS – для поиска нужной команды.
- Open class (ctrl + n или cmd + o – для IOS) – открыть класс
- Open file (ctrl + shift + n или cmd + shift + о – для IOS) – открыть файл
- Close current tab (ctrl + F4 или cmd + w – для IOS) – закрыть текущую вкладку
Ошибка №2: не учитывать адаптивность при разработке
Адаптивность – способность приложения подстраиваться под размеры экрана устройства. Если вы не создаете промо-софт только для одной модели, ваша программа не будет одинаково хорошо смотреться везде. Для правильного отображения на различных устройствах необходимо учитывать следующие принципы адаптивности:
- Соблюдайте относительность единиц измерения. Учитывайте, что не зависящие от плотности (dp) пиксели отличаются от обычных (px).
- Указывайте минимальные и максимальные значения размеров контента.
- Используйте грамотную вложенность объектов.
- Правильные шрифты. Не забывайте, что некоторые из них долго подгружаются, что может сказаться на скорости загрузки приложения.
- Правильно используйте растровую и векторную графику. Если на изображении много мелких деталей, используйте растровый формат, а иначе – векторный.
- Соблюдайте размеры макета
Ошибка №3: не использовать Android Intents
Интент – содержащая описание операции структура данных с мощной функцией асинхронной отправки сообщения другим Activity (активностям) или сервисам. Она предоставляет возможность обращаться к любому установленному в системе приложению, а повторное применение некоторых компонентов сокращает время разработки приложения.
Используя Android Intents можно быстрее и проще осуществить следующие операции:
- Звонок по любому номеру телефона.
- Отправку SMS.
- Получение контакта из телефонной книги.
- Открытие ссылки в браузере.
- Открытие карты по заданным координатам.
- Снимок с камеры.
- Звонок по Skype.
- Использование Speech to Text, функции распознавания голоса.
Ошибка №4: не использовать фрагменты при разработке приложения
Преимущества использования фрагментов состоит в инкапсуляции логики и в возможности повторного их использования для других целей. Они бывают статическими и динамическими. Статические размещаются в макете действия и никогда не меняются. Динамические – это своего рода реконфигурируемые кусочки головоломки, имеющие жизненный цикл, анатомию и классы. Фрагменты – преимущество пользовательского интерфейса. Иногда пользователю удобно видеть на одном экране два разных представления двух разных классов.
Ошибка №5: не использовать Main Thread
Зачастую приложению приходится использовать вызываемые во второстепенном потоке события. Класс MainThread позволяет выполнять код в основном потоке приложения с последующей проверкой его выполнения. Тем самым поддерживается отзывчивость пользовательского интерфейса. Этот метод предотвращает отложенный отклик действий пользователя, при котором приложение перестает отвечать. Лишение пользователя контроля над приложением сильно разочаровывает его, а разочарованные пользователи обычно оставляют негативные отзывы.
Ошибка №6: игнорировать предыдущий опыт
Многие базовые вещи уже написаны ранее другими разработчиками, поэтому вы смело можете использовать их в приложении. Не стоит изобретать велосипед: при таком огромном количестве свободно распространяемых решений на GitHub. Просмотрите возможные готовые образцы от разработчиков для разработчиков:
- Awesome Android UI – подборка UI/UX библиотек.
- Android tips and tricks – советы и тонкости разработки.
- Android best practices – несколько неплохих практик Android-разработки.
- MPAndroidChart – удобная библиотека для визуализации данных.
- Android-CleanArchitecture – образец приложения с грамотно выстроенной архитектурой.
- MaterialDrawer – простая библиотека в стиле Material Design.
- Android Guides – полезный обучающий контент.
Ошибка №7: не учитывать интересы пользователя
Андроид-разработчику всегда нужно помнить, что его приложение должно быть полезным и понятным. Если программа понятна, но бесполезна, пользователь удалит его. То же самое произойдет, если приложение полезно, но разобраться в нем не представляется возможным.
Вот несколько советов по улучшению взаимодействия пользователя с продуктом:
- Навигация должна быть интуитивно-понятной (сделайте так, чтобы элементы интерфейса не требовали дополнительных пояснений).
- Не допускайте перегруженности (используйте принципы минимализма).
- Не заставляйте пользователя много работать с клавиатурой.
- Сенсорные элементы должны быть удобными для пальцев.
- Тексты должны быть читаемыми.
- Цветовая схема должна быть приятной для глаза и хорошо прорисовываться.
- Учитывайте положения большого пальца, потому что 50% юзеров пользуются только этим пальцем.
Ошибка №8: не использовать растровые изображения
Пользователям нравится хорошо отформатированный контент, поэтому качеству изображений нужно уделять особое внимание. Чтобы интерфейс хорошо смотрелся на экранах всех размеров, графические элементы в нем должны быть соответствующим образом адаптированы. При использовании обычных изображений результат будет далек от идеального. В такой ситуации грамотным решением являются растровые картинки формата nine-patch – специальные файлы PNG с информацией о том, какие области можно растягивать, а какие нет. Для изображений масштабируемых компонентов обязательно используйте этот формат.
Ошибка №9: Использование Deep View Hierarchy (иерархии глубокого просмотра)
Чтобы изобразить контент в учетной записи разработчика Android, вам необходимо отпарсить XML, измерить экраны и разместить все элементы в правильном порядке. Этот процесс обычно трудоемкий и требует оптимизации, а использование LinearLayout может привести к глубокой иерархии представления, что крайне неудобно для дальнейшей разработки. Вы затратите ненужное дополнительное время на добавление очередного виджета или макета. Это особенно важно, когда макет раздувается, например, при использовании ListView или GridView. Максимально упрощайте себе работу и не усердствуйте с вложенностью.
Ошибка №10: игнорирование новых тенденций и обновлений SDK
Это скорее плохая практика чем ошибка. Слишком долгая поддержка старой версии SDK может привести к усложнению структуры кода. Успешный разработчик должен быть в курсе последних веяний и современных тенденций, чтобы созданное им приложение поддерживало новейшие функции. Установите последние обновления программного обеспечения и идите в ногу со временем.
Хочу освоить алгоритмы и структуры данных, но сложно разобраться самостоятельно. Что делать?
Алгоритмы и структуры данных действительно непростая тема для самостоятельного изучения: не у кого спросить и что-то уточнить. Поэтому мы запустили курс «Алгоритмы и структуры данных», на котором в формате еженедельных вебинаров вы:
- изучите сленг, на котором говорят все разработчики независимо от языка программирования: язык алгоритмов и структур данных;
- научитесь применять алгоритмы и структуры данных при разработке программ;
- подготовитесь к техническому собеседованию и продвинутой разработке.
Курс подходит как junior, так и middle-разработчикам.
Комментарии