Освой программирование играючи

Сайт Александра Климова

Шкодим

/* Моя кошка замечательно разбирается в программировании. Стоит мне объяснить проблему ей - и все становится ясно. */
John Robbins, Debugging Applications, Microsoft Press, 2000

Что не так с Android?

Android популярен. И Гугл старается сделать систему ещё лучше. Для этого программисты компании придумывают новые возможности и предлагают разработчикам использовать их в своих программах. Но не всегда это получается хорошо.

Здесь захотелось собрать все неудачные или спорные моменты из Android SDK. Каждый раздел будет дополняться деталями, раскрывающие недостатки.

Потоки

Если вы начинали разрабатывать приложения под Android с 2011 года или раньше, то, наверняка, прошли через весь зоопарк, связанный с работой потоков. Почти каждый год появлялись новые способы, которые обещали лёгкую жизнь. А потом опять всё по новой.

Thread, Handler, Activity.runOnUiThread(Runnable), View.post(Runnable), AsyncTask, IntentService, Loader и т.д. Сейчас популярен RxJava, который Гугл потихоньку стал разрешать использовать и допускает его в связке с LiveData.

Фрагменты

Фрагменты очень активно насаждались компанией Google, но многие разработчики яростно сопротивлялись. Они сложны, неудобны и непрактичны. Даже в самой компании некоторые программисты отчасти соглашались с этой точкой зрения.

Android Wear

На часы возлагались большие надежды, но по большому счёту они не выстрелили. Хотя Гугл что-то там постоянно допиливает, особого интереса у разработчиков к этой теме не наблюдается.

Планшеты

На данный момент рынок планшетов умирает. Вины Гугл в этом нет. Они активно работали в этом направлении и даже выпустили планшеты под своей маркой. У меня их было две штуки - первого и второго поколения. Но сейчас особо не акцентируют на них внимание. Все старые решения для работы с планшетами работоспособны (фрагменты для двухпанельных приложений), ничего нового больше не придумали, если не считать многооконный режим (пока не особо встречается).

Lock Screen

В Android 4.4.2 очень широко рекламировалась возможность создавать виджеты на экране блокировки. Спустя год в Android 5.0 лавочку прикрыли.

Live Folders

Живые папки - они появились еще в Android 1.5. Я видел их в Android 2.2, но не понимал, зачем они нужны.

Android Beam

Когда появилась поддержка NFC, то одновременно Гугл представил Android Beam. Вы когда-нибудь пользовались этим? А разговоров-то было.

Daydream

Daydream - это хранители экрана, знакомые нам по Windows. Формально они ещё существуют, у меня на сайте есть статья по их созданию. Но в 2016 году Гугл решил использовать это название для виртуальной реальности. Когда я слушал доклад на Google I/O, то подумал, что ослышался. Неужели фантазии не хватило на другое название?

Реклама