Уже давно спрос на Android-разработчиков превышает предложение. И такое положение сохранится ещё как минимум несколько лет. Если вы задумываетесь о работе, которая актуальна и в кризис, и в нормальной экономической обстановке, — сейчас самое время освоить её.
Ещё пять лет назад я ничего не знал ни о разработке под Android, ни о программировании вообще. И за это время успел набить много шишек и совершить достаточно ошибок — от них и постараюсь вас уберечь в этой статье. Расскажу, в чём заблуждаются новички и как этого избежать.
Если считаете, что способны сами разложить по полочкам учебный материал и вникнуть в любой код, — это здорово. Наверное, вы готовы тратить сутки на то, чтобы найти баг или рабочее решение, шерстить интернет и пробовать всё, что только приходит в голову, пока код не заработает. Это похвальное упорство, но лучше его применять так, чтобы получать новые знания, а не до бесконечности искать решения, которые уже миллион раз нашли до вас.
В большинстве случаев новичкам просто не хватает опыта, чтобы понять, какое из найденных в интернете решений оптимальное и почему. Задавайте вопросы об этом в чатах и на форумах, советуйтесь со знакомыми программистами и своим наставником. Поверьте, вы сэкономите много времени, которое можете использовать для дальнейшего обучения. С опытным ментором вы растёте на порядок быстрее, чем самостоятельно.
В английской культуре есть понятие, популярное в программистской среде: Fear Of Missing Out (FoMo), или «страх упустить что-то важное». Андроид — огромная система. Вы не сможете даже за пять лет изучить её досконально. Во-первых, платформа постоянно развивается и меняется. Во-вторых, чем больше вы узнаёте, тем больше видите соприкасающихся областей, в которых вы ещё не разбираетесь.
Для начинающего разработчика совершенно нормально не до конца понимать даже какие-то элементарные вещи. У меня есть коллеги, которые программируют всю жизнь, и даже они знают далеко не всё — их тоже можно удивить. Ваша задача не изучить область полностью, а узнать то, что поможет вам в работе именно сейчас. И последовательно расширять свои знания в ходе практики.
«Я же разработчик, мне нужно кодить хорошо, а как будет выглядеть интерфейс и навигация — это не ко мне, а к дизайнерам». Знакомый ход мыслей? Чем больше вы понимаете в материальном дизайне, тем лучше вы знаете возможности платформы как разработчик — и тем яснее представляете, как сделать хорошее приложение. Вам не нужно уметь красиво рисовать иконки, но понимать принципы важно.
На сайте Google, посвящённом материальному дизайну, много материалов, с которыми стоит ознакомиться
Поверьте мне на слово: без мышки вы пишете код значительно быстрее. То есть вы более продуктивны. Используя мышь в процессе программирования, вы постоянно переносите руку с неё на клавиатуру и обратно, а также тратите время, чтобы каждый раз адаптироваться к этим двум устройствам. В любой среде разработки есть комбинации клавиш для всего, что вам может понадобиться, а наиболее удобные сочетания зарезервированы для самых частых операций. Когда вы перестанете пользоваться мышкой при программировании — станете по-настоящему продуктивны. Помочь в этом может вот этот плагин для Android Studio.
Итак, вы хотите написать своё первое приложение, вы думали о нём давно. И время пришло! В вашем приложении должен быть чат (куда без него), просмотр видео, аудиоплеер (это же так удобно), карты с навигацией (они всегда пригодятся), ну и заметки (это вообще очевидно).
Остановитесь! Такое приложение не только потребует от вас усилий на протяжении года (а то и больше), но и со временем превратится в «чудовище Франкенштейна». Потому что вы не просто будете писать приложение, но и учиться на нём, постоянно переписывать, оптимизировать и улучшать. А через полгода, с высоты полученного опыта, вы вообще захотите переделать всё с нуля.
Начните с малого. Напишите простой таймер Pomodoro, который идеально подойдёт именно вам, и сделайте так, чтобы он продолжал корректно работать при повороте экрана. Поверьте, уже на этом этапе вас ждёт много открытий. Выложите его в Google Play, прикрутите оплату и рекламу (ещё больше нового!), пройдите все этапы от начала разработки до её завершения и поддержки приложения.
Потом напишите простое приложение-чат, просто для текста. Выложите. Добавьте обмен фотографиями, а затем ещё что-нибудь. Следом сделайте простое приложение для прослушивания музыки… Поняли идею? Так у вас появятся законченные проекты, а через год-полтора вы будете готовы приступить к своему идеальному приложению.
Прежде чем реализовывать новую функцию, поищите информацию о ней. Скорее всего, нечто подобное уже написано — и там учтены все возможные ошибки. Так что не изобретайте колесо. Вы можете писать функции и сами, но всегда лучше знать, что есть уже работающий код под рукой. Иногда это экономит много времени и нервов. Например, в Android Arsenal или GitHub содержатся почти все когда-либо созданные Android-библиотеки. И их код есть в свободном доступе. Проверьте.
Дополнительный совет: выбирайте библиотеки грамотно. Проверьте, какой рейтинг у библиотеки. Посмотрите, если у её создателя ещё популярные работы. И проверьте обсуждения, отзывы. Не все библиотеки написаны хорошо.
Программисты (и Android-разработчики в том числе) тратят больше времени на чтение чужого кода, чем на создание своего. Даже ваш собственный код, написанный три месяца назад, покажется вам чужим. Налейте кофе, сядьте и откройте хорошие примеры кода, поразбирайтесь часок. Если делать это регулярно, вы не только научитесь бегло читать чужой код (что очень важно), но и впитаете лучшие практики. Ведь одна из самых замечательных вещей в Android — это полная открытость платформы.
Купите его сейчас — и сэкономите, и быстро окупится. Большую часть дня вы работаете за компьютером. Это ваш основной, главный и единственный инструмент. На слабом ПК проект собирается в разы дольше, среда работает медленнее, открытый браузер замедляет всю систему… Всё это сказывается не только на вашей производительности, когда в течение года минуты ожидания складываются в недели. Это влияет и на общую отдачу от работы, на эмоциональное состояние — вы просто получаете меньше удовольствия от программирования, чем могли бы. А это важнее всего остального, вместе взятого.
Да, не у всех есть такая возможность — сразу купить крутой ПК. Но держите эту мысль в голове и понимайте все преимущества мощного компьютера перед слабым.
В заключение отойду от формата вредных советов — дам полезный прямо. Начните отдавать знания, которые вы получили. Нет ничего лучше для понимания темы, чем попытка объяснить её кому-то. Пишите в блог, выступайте на митапах, преподавайте. Вы сразу почувствуете, насколько полезнее пересказать статью кому-то, чем просто прочитать её. Кто знает, может, вам понравится — и вы вернётесь в GeekBrains уже как преподаватель. Так сделали уже многие специалисты, и я в их числе.
Удачи, и не повторяйте чужих ошибок!
Рубрика: Программирование
Дата публикации: 10 июня 2020
Дата обновления: 10 апреля 2023
Автор: Александр Аникин
Статистика: 5091 просмотр
Материалы взяты с сайта https://geekbrains.ru/posts/tipichnye-oshibki-nachinayushchego-android-razrabotchika
Чем занимаются UX-аналитики, где учатся и сколько получают
Дизайн 1 год назадПосмотрим лидеров по запросам в интернете и публикациям.
Программирование 1 год назадЧто актуально сегодня в веб-разработке? Узнайте, какие принципы нужно соблюдать для создания успешных сайтов.
Программирование 1 год назадКомплексный интернет-маркетинг для вашего бизнеса