Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Видеокурсы от Udacity. Они бесплатны и затрагивают основы разработки даже если не умеешь писать на Java:
- https://www.udacity.com/course/android-development-for-beginners--ud837
- Для тех, кто не хочет учиться по юдасити существует скучный кат от гугла:
- http://developer.android.com/training/index.html
- Если имел опыт в програмаче, можешь посмотреть видосики отсюда. Очень доходчиво и интересно:
- https://web.stanford.edu/class/cs193a/videos.shtml
- Так же есть книга, которая затрагивает основы разработки и имеет 2-е издание с 2017 года:
- https://www.amazon.com/Head-First-Android-Development-Brain-Friendly/dp/1491974052
- Большинство приложений написано на Java, необходимо понимать что ты пишешь, в уме достаточно знать базовый Core, т.к. 90% времени придется тыкаться в Android SDK.
- [b]Полезные обучалки от анона.[/b]
- Смотри Головача если совсем даун и не шаришь нихера:
- https://habr.com/company/golovachcourses/blog/215275/
- Книжка для ньюфагов. Хорошо заходит:
- Head First Java Kathy Sierra
- Да:
- Thinking Java 4th Bruce Eckel
- Неплохим вариантом для изучивших джава будет книга:
- Effective Java 3rd Joshua Bloch
- Алсо можешь читануть паттерны, рано или поздно все равно базовое знание понадобиться:
- Head First Design Patterns Brain Friendly
- Существует два текстовых ресурса для закрепления андройда на русском. Первый - несмотря на старость описывает базовые вещи, на которых построены мощные либы:
- http://startandroid.ru/
- Второй - продавшийся говноед с котиками:
- http://developer.alexanderklimov.ru/android/
- Толстая книга для гиков, стандарт решений:
- https://commonsware.com/Android/
- Так же можешь смотреть видосики от Mail.Ru:
- https://habr.com/company/mailru/blog/345252/
- Ресурсы к лекциям:
- https://github.com/ybereza/technotrack-resources
- Или от Яндекса. В некоторых моментах спикеры рассказывают важные детали, которые кроются в мелочах:
- https://www.youtube.com/watch?v=5EvxWifIgro&list=PLQC2_0cDcSKBNCR8UWeElzCUuFkXASduz[РАСКРЫТЬ]
- В дальнейшем потребуется базовое знание SQL, понимание XML и JSON.
- > Я прошел курсы Udacity, а дальше что?
- После прохождения курсов у тебя должно сложиться базовое представление о создании приложения. жизненные циклы Activity/Fragments, AsynsTask, Http, Json, SQLite;
- Дальше закрепляешь знания путем просмотра видосов выше + написание парочку приложений на свой вкус. Так же стоит уделить внимание BroadcastReceiver, IntentService, поиграться с Loader's, хендлерами, Contest providers и прочее, построить очередной Weather or ToDo must have list.
- > Не могу разобраться в потоках. Хендлеры, хуендлеры хуйтаски. Как быть?
- Хорошая статья, которая экономит время. После нее можно сразу переходить и тыкаться в хендлерах:
- http://codetheory.in/android-handlers-runnables-loopers-messagequeue-handlerthread/
- Еще одна от миндоркса:
- https://blog.mindorks.com/android-core-looper-handler-and-handlerthread-bd54d69fe91a
- Еще одна интересная:
- https://blog.nikitaog.me/2014/10/11/android-looper-handler-handlerthread-i/
- > Хочу изучать популярные либы и не быть говноедом!
- Если ты сразу после курсов переползаешь сюда - будь готов, что ты не будешь знать как это делается под капотом, и в конце концов соснешь когда-нибудь.
- Retrofit - стандарт для взаимодействия с сетью. Она идет в комплекте с okhttp3, начинаешь с последней, а потом переползаешь на сам ретрофит. Так же для справки можешь гуглить volley.
- RxJava - одно из решений для выполнения кода в бекраунде. Ниже ссылочки, смотри и поглощай:
- https://www.youtube.com/watch?v=YPf6AYDaYf8
- https://www.youtube.com/watch?v=3jdvLrYZfB4
- https://www.youtube.com/watch?v=0IKHxjkgop4
- https://coursehunter.net/course/master-klass-po-rxjava-s-mvvm-dlya-razrabotki-pod-android
- Retrofit:
- https://www.youtube.com/watch?v=t34AQlblSeE
- Неплохо было бы и изучить MVP. Вообще его следует изучать сразу. Видишь MVP - сразу пиши нормальный код. Никаких нахуй асинтасков внутри активити. Для самообразования можно написать его голыми руками или прогуглить, как это делается.
- Здесь рассматривается архитектура, и как ее ели с 2011 года:
- https://github.com/ArturVasilov/AndroidSchool
- MVP:
- https://javarush.ru/groups/posts/505-mvp-v-android-dlja-samihkh-malenjhkikh - для понимания;
- https://github.com/Arello-Mobile/Moxy - плюшка для поворотов экрана;
- https://github.com/sockeqwe/mosby - англоязычная плюшка.
- MVVM - костыли от гугла (для нормального понимания желательно знать AAC):
- https://startandroid.ru/ru/courses/architecture-components.html - свежие уроки от Димона;
- https://proandroiddev.com/the-missing-google-sample-of-android-architecture-components-guide-c7d6e7306b8f - для продвинутых.
- Пример MVVM:
- https://github.com/ericmaxwell2003/MvvmTipCalculator
- Вышеописанные два подхода - всего лишь обертки, чтобы вынести логику из views. Для более углубленно изучения рекомендуется почитать this:
- https://habr.com/company/mobileup/blog/335382/
- Пример на котлине:
- https://github.com/hitherejoe/GithubTrending
- > Хочу анимировать мои говноподелки!
- Онли теория. Первые двадцать минут покрывают больше половины статей, которые можно найти на медиуме и т.д:
- https://www.youtube.com/watch?v=dzB-1VlHJW8
- Здесь побольше практики на любой вкус:
- https://labs.ribot.co.uk/exploring-meaningful-motion-on-android-1cd95a4bc61d
- Так же можно подробно почитать про смены сцен:
- https://blog.prototypr.io/applying-meaningful-motion-on-android-a271a873bd78
- >Я заебался. Почему мои приложения постоянно падают в проде и как эту хуйню фиксить?
- Для этого придумали тесты. Для общего понимания читаешь короткую статью:
- https://medium.com/android-testing-daily/the-3-tiers-of-the-android-test-pyramid-c1211b359acd
- >Не хочу писать на Java!
- Kotlin — JVM-совместимый язык от JetBrains. Есть лямбды, стримы и делегаты. С 17.05.2017 поддерживается официально.
- Свежие лекции на русском, объяснение корутин прост бжствно:
- https://www.youtube.com/watch?v=-H98SWHayL4
- Библия:
- https://www.amazon.com/Kotlin-Action-Dmitry-Jemerov/dp/1617293296
- Kotlin for Android:
- https://kupdf.com/download/kotlin-for-android-developers_59a05e2ddc0d60992a18496b_pdf
- Курсы Udacity:
- https://www.udacity.com/course/kotlin-for-android-developers--ud888
- > Есть что-то кроме нативных приложений на Java/Kotlin?
- Flutter - кросс-платформенный фреймворк от Google. Js с аля строгой типизацией. Если совсем поехавший можешь начинать с него.
- Документация:
- https://flutter.io/docs/
- Курсы от Udacity:
- https://www.udacity.com/course/build-native-mobile-apps-with-flutter--ud905
- Остальные куски.
- ReactNative - Мочаскрипт во всей красе;
- PhoneGap/Ionic/Titanium — имя им мочаскрипт-младшие, принципы у них разные, кроссплатформенность одного кода. Популярность у них разная как и размер комьюнити. Вопросы по ним — в js-тред;
- Qt — кросс-платформенный фреймворк на C++. Используется в основном для игры и для приложений с высокими требованиями к производительности (обработка изображений, звука, ГИС-системы). Спрашивать в C++ треде;
- Xamarin — кросс-платформенный фреймворк на C#. Представляет из себя обёртку над Android API. Куплено Microsoft. Теперь есть бесплатная версия. Спрашивать в C#-треде;
- BugVM — кросс-платформенный фреймворк, написанный на Java. Форк невинно убиенного RoboVM.
- > Хочу писать игры!
- LibGDX - слишком медленная параша для больших проектов, но познакомится можешь;
- Unity - для адекватных;
- Corona SDK, LOVE, Defold и другие. Спрашивать в /gd/.
- > Что нужно, чтобы взяли джуниором? Что учить в первую очередь?
- 1. Нужно хорошее знание Java/kotlin;
- 2. Понимание базовых принципов Android (жизненный цикл activity/fragment, что такое Context, intents, services, UI thread, support library и ее версии (уже androidx), shared preferences, SQLite, Handlers, Executors, Content-Providers);
- 3. Знание популярных библиотек типа Retrofit + Glide/Picasso + RxJava2 + Dagger2(по обстоятельствам) + гугловские поделки jetpack, понимания СОЛИД и других паттернов проектирования;
- 4. Базовое понимание что вообще такое Gradle;
- 5. И хотя бы несколько готовых приложений.
- [b]Полезные ссылки.[/b]
- Канадский челик, поясняет за архитектуру и отвечает на разные вопросы на стримах:
- https://www.youtube.com/channel/UCSwuCetC3YlO1Y7bqVW5GHg
- Бесплатные API для создания приложений:
- https://github.com/toddmotto/public-apis
- Бенчмарки на вопросы о том, какую БД выбирать:
- https://github.com/AlexeyZatsepin/Android-ORM-benchmark
- Подкасты ведройд разрабов которые шарят про все и вся:
- https://androiddev.apptractor.ru/category/podcast/page/0/
Add Comment
Please, Sign In to add comment