aakumykov
@aakumykov
Начинающий Android-разработчик

"Знание support library" — это о чём?

В вакансиях регулярно попадается строчка "Знание Support Library". Она пугает и озадачивает одновременно.

Пугает: согласно документации Android, SL - это набор библиотек, куда из новых версий SDK бэкпортируются новые возможности. С одной стороны, есть много версий этих библиотек с витиеватой нумерацией. С другой говорится, что в них реализуются не все новые функции. То есть, получается связка многие-ко-многим, где нельзя точно сказать, что где есть.

Озадачивает: вот какую полезную информацию я выудил из официальной страницы, посвящённой "библиотеке поддержки".

Нужны для:
1) поддержки новых возможностей на старых устройствах;
2) некоторые компоненты в принципе доступны только через БП (например, RecyclerView);
3) БП могут включаться не прямо, а через зависимости;
4) нужна для помощи в отладке (support-annotations).

Особенности:
• с версии 26.0.0 минимально поддерживаемый уровень API стал 14 (Android 4.0);
• ранее первый номер версии указывал на уровень API, относительно которого она скомпилирована (и фкнкции которого, _возможно_, реализованы). Суффикс v4, v7 и т.д. - минимальный API, для которого доступна эта библиотека;

Всё это можно свести к простой формуле: хочешь поддержку функции на старом устройстве - ищи и используй *Compat-класс.

Резюме:
первое - знать невозможно (по крайней мере, для меня);
второе - слишком примитивно, чтобы акцентировать на этом внимание.

Правильно ли я рассуждаю? Что значит "Знать Support Library"?
  • Вопрос задан
  • 379 просмотров
Пригласить эксперта
Ответы на вопрос 2
iLLuzor
@iLLuzor
Java, Kotlin, Android Developer
Библиотеки из Support Library уже давно не актуальны.
Их заменили библиотеки androidx
Ответ написан
Комментировать
saboteur_kiev
@saboteur_kiev Куратор тега Карьера в IT
software engineer
Как и для любой другой технологии/движка/фреймворка/библиотеки, это означает

Не обязательно знать наизусть ВСЕ функции и ВСЕ их аргументы, но основные и популярные - нужно уметь пользоваться и иметь практический опыт.

Знать что примерно входит в Support Library, чтобы не изобретать велосипед и не лезть за еще какой-нибудь библиотекой, если нужный функционал есть уже в SL

Понимать особенности, а именно - эти самые API, чтобы ориентироваться в совместимости. Чтобы не тянуть последнюю версию SL в проект, который должен запускаться на старых версиях анроида.

Ну а дальше только глубина этих знаний и практический опыт.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы