Бывший практикант Google о том, почему интерфейс Android отстает от iOS

Бывший стажер из команды разработчиков Google Android озвучил свой вариант объяснений, почему сенсорный интерфейс Android значительно уступает технологическим решениям конкурентных мобильных операционных систем Apple, Microsoft и Research in Motion.

android

Как пишет Cult of Mac, студент кафедры программного обеспечения Эндрю Манн (Andrew Munn) поделился своими мыслями и наблюдениями в сети Google+. Он, однако, отказался признавать факт начала его стажировки в команде Microsoft Windows Phone в январе, и добавил, что все сказанное им является его личным мнением.

По словам Манна, сенсорный интерфейс Android является «головной болью» разработчиков и пользователей, так как он имеет равный с другими задачами приоритет (в частности, с прорисовкой графических объектов). В этом отличие Android от iOS, в которой графический пользовательский интерфейс имеет самый высокий приоритет (то есть при получении команды операционная система прерывает прочие задачи и начинает прорисовывать графику, только после этого возвращается к прежним делам). В пример он приводит загрузку веб-сайтов и работу приложения Movies в Android, во время которых ОС продолжает загрузку после получения сенсорной команды.

Манн обозначил ряд других факторов, которые стали причиной отставания пользовательского интерфейса Android. К примеру, работа приложения Фотогалерея в Android 3.0 Honeycomb и 4.0 Ice Cream Sandwich ограничена 30 кадрами в секунду (FPS), хотя чтобы избежать «заикания», нужно не менее 60 FPS. В итоге анимация с такой частотой просто не может быть такой плавной, как у конкурентов.

Автор поста также указал на проблемы оборудования Android. По его словам, чипы Nvidia Tegra 2 ограничивают Android своей низкой пропускной способностью и отсутствием поддержки NEON. Планшеты на базе Honeycomb работали бы лучше, если бы имели другие GPU – типа Samsung Hummingbird или Apple A4.

Манн отметил также, что Android нужно еще «через многое пройти», чтобы добиться улучшений в пользовательском интерфейсе, особенно если сравнивать платформу с Apple iOS:

«В iOS каждый вид интерфейса воспроизводится отдельно и хранится в памяти, много анимации требует участия GPU, и он хорошо справляется со своими задачами. К сожалению в Android иерархия интерфейсов отсутствует, и прорисовка интерфейса имеет такой же приоритет, как и другие задачи».

Еще одной причиной отставания, по словам Манна, является ограниченность виртуальной машины Android Dalvik, которая «не является такой зрелой», как десктоповая Java VM. Однако вопрос с Dalvik можно компенсировать улучшением технических характеристик оборудования с Ice Cream Sandwich. Но, несмотря на усовершенствования, Манн считает, что пользовательский интерфейс Android никогда не будет «абсолютно гладким и плавным» из-за существующих проектных ограничений: «В этом плане Galaxy Nexus по плавности можно сравнить с iPhone трехлетней давности».

По словам Манна, главным поводом для изменения существующей конструкции платформы является то, что оригинальный прототип Android не предполагал сенсорного экрана, намереваясь стать конкурентом BlackBerry. Архитектура Android изначально предназначена для поддержки клавиатуры и трекбола. Манн также утверждает, что после появления оригинального iPhone в 2007 году компания Google поспешила завершить Android, но «было слишком поздно для переписывания пользовательского интерфейса».

В качестве примера других старых операционных систем, которые сталкивались с подобными проблемами сенсорной производительности, он приводит Windows Mobile 6.5, BlackBerry и Symbian. Их владельцы – Microsoft, RIM и Nokia отказались от них, предпочтя написать все с нуля.

«Android фактически является единственной мобильной ОС, которая появилась раньше iPhonе»

— пишет Манн.

Инженер-программист Android Ромэйн Гай (Romain Guy) признает, что выбор, который нужно было сделать несколько лет назад, команде разработчиков платформы придется делать сейчас. Все говорит также в пользу того, что если новая структура будет применена, все существующие приложения придется переписать под нее. Android придется поддерживать старые приложения и работать над новыми функциями Android, которые появятся в новой структуре. По словам Манна, переписать ОС нужно однозначно, несмотря на все трудности и минусы. Он сам, как начинающий менеджер по продуктам, считает медлительность команды Android абсолютно неприемлемой, хотя эта задача фактически должна быть для нее номером 1.

Критики уже давно ругают Android именно за отставание и лаги в реагировании на команды. Автор одного из недавних исследований юзабилити планшета Amazon Kindle Fire на базе Android Джейкоб Нильсен (Jakob Nielsen) написал о неудобстве прокрутки и «огромных лагах в ответ на нажатие сенсорных командных кнопок». Причиной проблемы Нильсен назвал «небрежное программирование».

Один из авторов The New York Times Дэвид Поуг (David Pogue) также нашел много недостатков в Kindle Fire:

«Анимация вялая и прерывистая, даже при перелистывании страниц, чего никак не должна была допускать команда создателей Kindle. Нажатия иногда не срабатывают. Нет никаких индикаторов, которые бы показывали процесс исполнения или ожидание, так что часто вы даже не знаете, восприняла ли машина команду вообще. Импульс анимации рассчитан неправильно, и в целом впечатление от устройства отвратительное».

Манн сам считает эти вопросы ударом по имиджу Android. Нарушены основные принципы Google, которые заключаются в быстром реагировании и оптимизации продуктов. И подобные лаги просто не могут иметь место в сенсорных устройствах, нарушая всю суть пользования ими:

«Устройство перестает быть естественным, оно теряет магию. Пользователь не может должным образом с ним взаимодействовать, и им [команде Android] стоит признать, что они используют несовершенные методы компьютерного моделирования. Я часто пользуюсь iPad, и меня передергивает от «заикания» Xoom».

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

Источник: appleinsider.com

Android или iPhone