Java

Вопросы по андроид разработке от новичка

"Начиная с августа 2018, консоль Google Play потребует, чтобы новые приложения были нацелены на уровень API 26 (Android 8,0) или более поздней версии."

- Стоит ли изучать API ниже 26 в 2019-2020 гг?
- Какие API реально используются в коммерческой разработке корпоративного ПО и т. п., не предназначенного для Play Market?
- Какую версию JDK устанавливать и смогу ли я, скажем, используя JDK 13 собирать проекты для API использующих Java 6, 7 и 8 или нужно устанавливать именно эти JDK? (Кстати, можете поделиться своим мнением относительно разновидностей OpenJDK, лично я приметил для себя LibericaJDK)
- Ну и на закуску: насколько глубокие знания Java нужны для разработки под Android, что конкретно учить, а на что не тратить время? Про Kotlin в курсе, знаю что он развивается и набирает популярность, но учить его планирую после трудоустройства, сначала традиционную Java и немного опыта, но буду благодарен за любое другое обоснованное мнение :)

P.S. Также буду признателен за полезные советы и ссылочки на тему андроид разработки и вообще всего того, что будет полезно любому начинающему разработчику :)
1) только для поддержки старого софта
2) это зависит от ПО, кто-то вообще работает на софте из 90х и норм
3) OpenJDK 8, другие не поддерживаются (https://issuetracker.google.com/issues/134033994), просто устанавливаете Android Studio, он сам половину работы сделает
4) начните с курсов по Java и Android на Coursera/Udacity, базовых знаний Java с охватом основных функций будет достаточно (как минимум до многопоточности), нужно будет потратить время на осознание объектно-ориентированности, архитектуры приложения и паттернов
ТН
Толик Нориков
34 259
Лучший ответ
Алексей Канительщиков Благодарю за Ваш ответ :) Кратко и по делу
"Стоит ли изучать API ниже 26 в 2019-2020 гг"

а какой API Level у Retrofit, Picasso, RxJava? вот их стоит
а дублировать на этом этапе не надо вообще ничего.

"Какую версию JDK устанавливать и смогу ли я, скажем, используя JDK 13 собирать проекты для API использующих Java 6, 7 и 8 или нужно устанавливать именно эти JDK?"

сможешь.
они к Java на твоем компе не имеют отношения. ты же не исходник API собираешь.

"Ну и на закуску: насколько глубокие знания Java нужны для разработки под Android, что конкретно учить, а на что не тратить время?"

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

"буду благодарен за любое другое обоснованное мнение"

насчет Kotlin и прочего обоснуй свое мнение мониторингом вакансий в СВОЕМ городе и подходящих для ТЕБЯ.
Ширван Ахмадов
Ширван Ахмадов
92 464
Алексей Канительщиков "...а дублировать на этом этапе не надо вообще ничего." - Не понял Вашу мысль, что дублировать?

"настолько, чтобы писать идеально красивый и простой код." - это скорее к общепринятым нормам и рекомендациям по написанию кода и паттернам проектирования, по крайней мере мне так кажется.

"но не столько потому, что именно код нужен.
сколько потому, что иначе старшие коллеги будут дрючить еще и за это" - а коллеги будут дрючить скорее всего не потому что оно не красиво, а потому что простой и понятный код гораздо легче поддерживать в будущем и они как раз привьют мне правильные привычки.
Алексей Канительщиков "насчет Kotlin и прочего обоснуй свое мнение мониторингом вакансий в СВОЕМ городе и подходящих для ТЕБЯ." - Kotlin будет сложно выучить без знания Java, даже разработчики этого языка создавали его не для новичков, а для действующих Java разработчиков и вроде как нет материала для изучения "с нуля". С Java но без Kotlin возьмут новичка, учить конечно придется всё равно, но это и так все понимают. В Москве Java есть во всех вакансиях, а Kotlin хоть и очень часто мелькает, но всё же не везде, а там где есть он всегда совместно с Java.