Учене и в крак с Android Development

2017 издание

Често се оказвам да говоря с хората за това как започнах и как съм в крак с разработката на Android. Това е един от любимите ми въпроси в интервюта, за да мога да знам повече за процеса на обучение на кандидата и дано добавя нещо ново в моята кутия с инструменти.

Голяма част от обучението е наличието на добри източници на информация. В началото не е очевидно къде да отидеш и за съжаление някои добри източници са трудни за откриване от твоя собствена.

Познаването на източниците може да изглежда като всичко необходимо, но това е само началната точка. В днешно време е много лесно да се окажете заровени в купчина информация, нарастваща с 10 пъти по-голяма скорост, която можете да консумирате, чувствайки се изгубена и разочарована.

В тази статия ще се надяваме да намерите това, което ще ви помогне да научите и да сте в крак с Android по продуктивен и устойчив начин.

Източниците

Официални източници от Google

  • developer.android.com
    Основната справка за разработчиците на Android. Този уебсайт е не само референтна документация за API, но център за проектиране на ресурси, ръководство за разпространение и сайт за обучение.
  • material.io
    Всичко за езика за дизайн на Google. Специално подходящ за разработчиците раздел с насоки.
  • Google API за Android
    Това не са Android API, а Google API за Android: Google Maps, Google Sign In и други.
  • Блог за програмисти за Android
    Официален блог за разработчици на Android от Google
  • Документи на Firebase
    Firebase предлага широка гама от инструменти и API за улесняване, по-бърза и по-добра разработка на Android.

Онлайн курсове

  • Udacity
    Udacity предоставя курсове за Android (безплатни и платени) в партньорство с Google.
    - Нанодегрин Android Основи
    - Нанодегрие за Android Developer
    - Съдържание с Android в Udacity
  • Caster.io
    Добро съдържание за разработка на Android, където можете да намерите по-конкретни ръководства и ръководства.

среда

Medium всъщност е едно от любимите места за разработчиците на Android, за да споделят своите знания за Android.

Някои връзки, които да започнете с:

  • Google Developers
  • Google Design
  • Хора с Android
  • Публикации за Android
  • Android Tags
  • Разработване за Android: статия с 10 части от Google

срещите си

Срещите са местни събития, които се случват навреме (често месечно). Обикновено безплатно за посещение (понякога с безплатни напитки и / или пица), където броят на разговорите може да премине от едно до няколко. Приложения като Meetup или Eventbrite могат да ви помогнат да намерите срещи около себе си, в противен случай търсете в Google нещо като „Android среща в Лондон“, заменяйки Лондон от най-близкия ви град или град.

конференции

Конференциите са като големия брат на срещата. Обикновено се случват веднъж годишно и имат много разговори и оратори. Android общността е едновременно страхотна и огромна, а конференциите за Android са по-добри и по-здрави от всякога през 2017 г.

  • 360 АнДев
    От първото издание тя се превърна в една от най-добрите Android конференции в целия свят с високоговорители.
  • Droidcon
    Най-големият организатор на конференции за Android, който присъства в много страни и брои. Само да спомена някои от любимите ми ще спомена Droidcon London, Droidcon Berlin, Droidcon NYC, Droidcon Italy или Droidcon San Francisco.
  • Google IO
    Годишната конференция на разработчиците на Google е базирана на Android. Посещението е скъпо и въпрос на късмет да получите билет, но можете да гледате разговорите онлайн безплатно, тъй като всички разговори се предават на живо и са достъпни след това от YouTube.
  • Android Makers
    Това е новото дете в града през 2017 г. Определено още една конференция, която трябва да разгледаме.
  • Google Developers Group
    Разпространете се по целия свят със събития и конференции.

Някои връзки с полезна информация за конференции:
- Списък за конференции на Android
- Конференции за Android
- Android Study Group → Конференции

Ами ако не можете да присъствате на конференции?
Ако не можете да присъствате лично на конференции, важно е да знаете, че повечето от големите качват всички разговори в YouTube - вижте раздела с видеоклиповете по-долу - или други уебсайтове безплатно.

Видео

Видеоклиповете са чудесен начин да научите. Конференции, беседи, речи, уроци и всякакъв вид учебни материали има навсякъде в YouTube. Каквото искате да научите, вероятно е някой да е направил видеоклип за него.

В YouTube има някои добре познати канали, където можете да намерите висококачествено съдържание за разработката на Android:

  • Android разработчици
  • Google Design
  • Google Developers
  • Firebase

Често се записва и материал за конференцията:

  • Droidcon Италия
  • Droidcon NYC и SF
  • Droidcon Берлин
  • Android Makers
  • 360AnDev 2016 и 360AnDev 2017
  • Android Dev Summit 2015
  • Други

Подкастове

Подкастите са чудесен начин да увеличите производителността си. Можете да научите, докато ходите, бягате, ядете, пътувате до работа или правите всякакви други неща, докато носите слушалки

  • Раздробена подкаст
    Вероятно най-добрият подкаст за Android там. Някои епизоди са за важни членове на общността, други за библиотеките и дори имат поредици за Ефективна Java и Kotlin.
  • Backstage за Android Developers
    Подкаст, създаден от инженери Google Android. Не е напълно фокусирано върху преподаването на Android, а върху задкулисната част от него. Определено си струва да слушате.
  • Контекстът
  • Android закуски
  • Материал

Забележка: Търсите добро приложение подкаст с уеб версия? Pocket Casts: Приложение и уебсайт.

Книги

Самият аз не съм чел много книги, но ето списък на основните.

  • Ефективна Java
    Много години опит на Java, обобщен в книга. Задължително четете за разработчиците на Android, дори ако се премествате в Kotlin.
  • Чист код
    Добре четете за разработчиците на софтуер, които имат за цел да създадат добър код.
  • Чиста архитектура
    Предвидена книга от чичо Боб за чистата архитектура. Концепциите за чиста архитектура оказаха голямо влияние върху общността на Android относно начина на писане на приложения за Android.

Общността на Android

В Android общността има някои истински експерти за Android. Една от причините те да са експерти е, защото споделят много с други. Следването им в социалните мрежи означава, че ще бъдете наводнени с най-модерното състояние на Android.

Някои полезни връзки, за да започнете да обхващате общността на Android:

  • Google Developer Experts за Android
  • 40 водещи разработчици на Android, които да следят в Twitter
  • Кого да следвате на Medium, ако сте разработчик на Android
  • 25 интересни експерти, които да следвате
  • Android влиятели
  • Android диалози
  • Следващият ми списък

застой

Slack е комуникационен инструмент главно за професионални среди. Slack е също инструмент, който позволява на хората, които се интересуват от определена тема, да се събират в т. Нар. Общности.

Има много Slack общности, но не всички са публични и на английски. Ето някои Slack Android общности:

- Чат за Android
- Android United
- Котлин
- Firebase
- UpsLab

Бюлетини

Бюлетините са своевременни основни имейли с гъста информация за най-новите новини за Android, статии, ръководства, издания и други. Четенето на всяка статия, свързана с тях, определено отнема много време, така че череша да изберете най-доброто за вас!

  • Android седмично
  • AndroidDev Digest

Отстраняване на проблеми

Проблеми при кодирането? Google и Stack Overflow са най-полезните уебсайтове за намиране на решение.

  • Google
  • Препълване на стека

Устойчив подход към обучението

Добре, така че сега, когато отметките ви са пълни с връзки, каналът ви в YouTube пълен с плейлисти, вашият подкаст пълен с аудио и вашият Kindle пълен с книги, какво следва?

Следващите съвети са някои съвети и трикове, които могат да ви помогнат да напреднете по-бързо и лесно в обучителния си път за Android, като избягвате да продължите да следите толкова дълго, колкото искате.

Време за овладяване

  • Бъдете прагматични
    - Доброто разбиране на основите на Android е от съществено значение. Всяко време, прекарано в изучаване на основни концепции за Android, винаги си заслужава.
    - Потърсете съдържание на въвеждащо ниво, когато не знаете нищо за дадена тема. След като знаете основите, преминете към следващото ниво. Изправени пред предварително урок по тема, за който не знаете нищо за отнема време и е трудно да се разбере. Ако това се случва често, това създава безсилие.
    - Преминаването от основно към усъвършенствано разбиране изисква значително повече време от преминаването от нулата към основите. Не забравяйте да изберете черешите областите, за които инвестирате време, за да станете експерт.
  • Бъдете продуктивни
    Производителността тук се дефинира като размер на напредъка във вашия Android учебен път за дадено време. Производителността има много общо с това да се възползвате максимално от времето, което прекарвате да изучавате Android - това е прагматизмът, който вече беше обсъден по-горе - но също така и как да увеличим времето, което отделяме за учене. Комутирането е чудесна възможност за четене на книга. Да се ​​кандидатираш е чудесно време за слушане на епизод на подкаст. Полетът е чудесен за гледане на някои видеоклипове на Android и събиране с някои разработчици на Android, за да пият напитки, е чудесен начин да ги попитате за вашите проблеми с Android. Въвеждането на Android в ежедневните ви дейности означава, че ще отделите повече време за мислене за Android, което води до учене.
  • Бъдете рутинни
    Нека определим рутината като набор от навици и нека определим навика като нещо, което правите всеки ден по едно и също време.
    Да имаш ежедневие е чудесно, защото:
    - Навиците намаляват усилията на дейностите да се случват. Прекарването на един месец в четене 30 минути непосредствено преди лягане е трудно първия месец, но е много по-лесно след това.
    - Увеличава производителността: 15 минути на ден може да не звучат прекалено дълго, но в края на месеца прави огромно различно. Разликата е да прочетеш книга или не.
    - Помага да се създаде усещане за времеви интервали, което води до идентифициране на пропилени или празни времеви интервали, които потенциално могат да бъдат заменени от нови навици, водещи отново до по-висока производителност.
    Отнема няколко седмици, за да въведете нов навик в ежедневието си, а въвеждането на повече от един навик наведнъж може да бъде предизвикателство.

знание

  • Научете се да казвате, че не знам
    Толкова просто и толкова трудно да се каже: не знам. Кажете го на себе си и го кажете на другите. Ученето започва веднага след като разбереш, че не знаеш.
  • Парадоксът на осъзнаването
    Лесно е да научиш за неща, които знаеш, че не знаеш. Просто ги Google и можете да ги преместите от полето Знам, че не знам, до полето Знам, че знам. Но всичко, което знам, че не знам, кутията преди беше преместено от кутията, не знам, не знам. Вероятно това нямаше смисъл, така че погледнете следващото изображение.
Как изглежда неопитен разработчик на Android от добра гледна точка на програмист за Android. Новите начинаещи не са наясно, че червената зона съществува, така че за тях има смисъл да се опитват да превърнат цялата синя зона в зелена

Повечето нови предястия имат нещо общо: те нямат представа, че съществува червената зона или смятат, че е по-малка от синята. Така според диаграмата по-горе, за тях има много смисъл да се опитват да превърнат синята зона в зелена.

Новите началници с добър процес на обучение бързо осъзнават, че се случва нещо контраинтуитивно: Колкото повече учат, толкова по-голяма става синята зона. Най-важното е, че започват да осъзнават, че има червена зона, която непрекъснато изтича в синята зона.

Как един добър разработчик на Android вижда себе си

Червената зона ще се превърне в най-голямото предизвикателство за всеки разработчик на Android и е по-голямо предизвикателство, когато вървим напред. Дори ако червената зона ще бъде завинаги огромна, придвижването на нещата от червената зона към синята става все по-трудно, колкото повече се научите.

Последното нещо, което трябва да се има предвид, е, че в полето „Знам, че знам“ има още едно, което трябва да сме наясно, че можем да наречем неща, които мисля, че знам, че знам, но те грешат. Това е интересно, защото буквално може да бъде всичко, което мислите, че знаете, и е необходимо да се коригират две стъпки, първо да откриете кое знание е неправилно и след това да приложите пластир към него.

  • Какво научих днес?
    Правете преработка всеки ден, когато си лягате, помага да уталожите придобитите знания и да създадете голяма картина за това.
  • Чувството
    Чувствате ли, че нямате достатъчно време? Чувствате ли, че изоставате? Чувствате ли, че има повече от тях, отколкото някога можете да знаете?
    Справяте се чудесно, просто бъдете в крак с добрата работа. Повечето разработчици на Android се чувстват така.

кодиране на стоките

В края на деня се учиш като правиш, така че кодирането ще е от съществено значение.

  • Не пишете код, който не разбирате или не се чувствате комфортно. Винаги се връща при вас по-грозни и не толкова разбираеми начини.
  • Не използвайте преки пътища поради мързел. Винаги се връща при вас с повече часове работа, които би ви отведе на първо място.
  • Използвайте малки, разширяеми и фокусирани библиотеки. Те са по-лесни за използване, отстраняване на грешки, разширяване, модифициране и премахване. Те имат по-малко код, който не разбирате, по-малко методи за броене на метода ви и по-малко тегло за вашия APK.
  • Опитайте нови неща изолирано, вместо да ги поставяте в голям проект. Когато нещо се обърка, искате да сте сигурни, че това е просто свързано с новата библиотека или парче код, който тествате, а не някакъв страничен ефект от друга библиотека от някакво парче от голяма кодова база.
  • Имайте проект за домашен любимец по-сложен от тривиалното приложение, но не толкова голям, че да е трудно да направите промени в него. Необходимо е да се даде възможност за изпробване на различни неща - от потребителски интерфейс до бази данни, от модели към библиотеки - но в същото време всеки компонент трябва да бъде възможно най-малък. Обикновено намаляването на броя на екраните ще ви помогне, доколкото екраните не са равни един на друг. Общите модели за преглед на детайли работят добре.
  • Не прекъсвайте потока. Рутините работят също така за кодиране. Не се прекъсвайте или разсейвайте на всеки 5 минути, никога няма да напишете най-добрия си код.
  • Спокоен сън. Не пишете код, ако сте уморени.

Споделете с други

Споделянето е учене, а преподаването е един от най-бързите пътища към знанието. Но как точно работи?

  • Когато споделяте, трябва да вербализирате мислите си. Когато обяснявате нещо за първи път на някой друг, много често ще откриете, че не сте в състояние да го обясните, защото понятията, които смятате за много ясни в съзнанието ви, всъщност не са толкова ясни, след като сте се опитали да им обясните. ,
    От другата страна - и това е трудно да се обясни - понякога се учиш на нещо ново. Докато в съзнанието ви някои понятия плават наоколо, които не са напълно свързани помежду си, но докато ги вербализирате, вие осъзнавате някои нюанси, за които никога не сте мислили преди, и правите разбирането си по-солидно.
  • Ще получите множество интересни отзиви като нови гледни точки или неща, които грешите. Най-важното е, че някои хора ще ви уведомят за неща, които не сте знаели, че не сте знаели, че водят вашия начин да придобиете нова информация по темата.

И не на последно място, не забравяйте: Повечето от нещата, които знаете, са благодарение на споделянето на други хора.

Истинската тайна

Познаването на източниците на информация е само първата стъпка към крак с Android. Начинът, по който подхождате към обучението е от ключово значение за поддържане на усилията за дълго време, което е необходимо, за да станете експерт.

Да имаш силна мотивация е единственият начин да постигнеш цели, които изискват голямо количество усилия, жертва и време. Много е трудно да се намери достатъчно мотивация за толкова голяма задача в парите или безопасността на работното място.

Истинският двигател, който ще ви помогне да постигнете целите си, е да го обичате. Любовта се проявява като страст, която е най-мощният източник на всеотдайност и жертва. Обичайте това, което правите, или в идеалния случай, правите това, което обичате.

Препоръчителни статии и видеоклипове

  • Бъдете като вода: Поддържайте Android
  • Никой не прави това, което правят
  • Как да бъдем експерт за Android