easy

Смартфон для программиста

Что выбрать, если хотите заняться мобильной разработкой.

Есть два вопроса: какой телефон купить, чтобы писать на нём код, и какой — чтобы тестировать там мобильные приложения. Вот ответы на эти вопросы по состоянию на февраль 2020 года.

Кое-как писать — любой смартфон

Для всех мобильных платформ есть необходимый минимум, чтобы писать код: специализированные текстовые редакторы, некоторые инструменты для работы с сетью, примитивные графические редакторы. На самом базовом уровне всё есть.

Из минусов:

  • Дьявольски неудобная мобильная клавиатура — очень тяжело ставить скобки и нужные кавычки.
  • Писать код можно, а исполнять кто будет? Не на все языки и не на все платформы есть интерпретаторы или компиляторы кода.

Если нужен «несгораемый» вариант, берите Андроид с поддержкой USB Host (то есть к самому устройству можно подключать флешки и другую USB-периферию). Подключаете к такому смартфону клавиатуру и пишете код.

У Самсунга есть технология Dex: она позволяет подключить смартфон к большому монитору, клавиатуре и мыши и использовать телефон как некое подобие стационарного компьютера. Отличие от обычного подключения в том, что интерфейс Андроида растягивается на большой экран, появляется поддержка многооконного режима. Технологии уже три года, но толкового софта под неё мало. Пока что не взлетело.

Хитрый вариант с Айпадом

Если вам нужно максимально мобильное решение, рассмотрите такую связку:

  1. Берёте iPad Pro последнего поколения с USB-C.
  2. Берёте Raspberry Pi четвёртого поколения, желательно в корпусе.
  3. Устанавливаете на Raspberry Pi нужные вам среды разработки, компиляторы и интерпретаторы (скорее всего, они и так будут в вашей сборке).
  4. При необходимости устанавливаете на Raspberry Pi программу VNC Server — она позволяет управлять Raspberry Pi в режиме удалённого монитора.
  5. На Айпаде устанавливаете VNC Client.
  6. Соединяете проводом Айпад и Raspberry Pi. Когда последний загрузится, стучитесь к нему через VNC (придётся погуглить, как назначить ему правильный IP-адрес).
  7. У вас получается почти полноценный Линукс с экраном и клавиатурой от Айпада.

Подробнее вот у этого дядьки (по-английски):

Для тестов на iOS

Основной телефон — iPhone X. Если вы серьёзно решили программировать под iOS, то лучше сразу всё тестировать на телефоне с «чёлкой» и свайпами для управления. Нет смысла брать более дорогие модели, ведь технически в них будет всё то же самое, но дороже.

Исключение — когда вы пишете AR-приложение или софт для трёх камер: в этом случае лучше взять топовый аппарат и убедиться, что всё работает как нужно. Берите на Авито у брошенных парней.

Дополнительный — iPhone 6S. У большинства пользователей не будет на руках самой последней модели айфона. Скорее, это будет что-то из предыдущих поколений. Большой цикл обновлений, хорошее железо и много сервисных центров в каждом городе — всё это продлевает телефонам жизнь, а значит, нужно рассчитывать на то, что вашей программой будут в основном пользоваться на устройствах двух-трёхлетней давности.

В 2020 году стандарт — iOS 13, поэтому вам нужно минимально рабочее устройство, которое поддерживает эту операционную систему — iPhone 6S.

iPhone 6S — минимум для мобильной разработки под iOS.

Планшет. Подойдёт любой планшет с поддержкой iPadOS. На нём вы будете проверять, как выглядит ваша программа на большом экране, всё ли в порядке с масштабированием и правильно ли отображается интерфейс. С точки зрения кода отличия минимальные. С планшетами на Android, кстати, то же самое: подойдёт любой планшет, на котором можно оценить внешний вид на большом экране.

Android

Так как Android ставится на множество разных устройств, то здесь с минимальным набором будет сложнее. Для того, чтобы полностью протестировать своё приложение под Android, лучше использовать несколько устройств.

Samsung A-серии. Это линейка телефонов начального уровня, но в ней есть почти все технологии, которые Самсунг использует в других устройствах: вырез под камеру на экране, жесты, своя система уведомлений.

Samsung Galaxy A01 — стартовый аппарат в линейке, на котором можно проверять любые приложения под Android.

Huawei. Из-за разногласий компании Huawei с Google эти телефоны могут лишиться поддержки сервисов Google, а главное — магазина приложений. Чтобы убедиться, что ваше приложение будет работать, протестируйте его, например, на Huawei Mate 30 Pro. Если всё работает — можете покорять китайский рынок. Заодно потренируетесь работать с датчиком отпечатка пальца, встроенным прямо в экран.

Работать без сервисов Google — непростая задачка.

Meizu/Xiaomi. Эти аппараты попали в список из-за агрессивной работы с памятью. Даже в стандартном режиме они выгружают приложения из рабочей памяти, чтобы сократить энергопотребление устройства и увеличить время до подзарядки. Когда включается режим энергосбережения, всё становится ещё печальнее — иногда даже не приходят уведомления или сообщения в чат.

Если постоянная выгрузка из памяти может повлиять на работу вашего приложения — лучше выяснить это заранее.

Meizu M3 — классический пример странной работы с памятью и уведомлениями.

Irbis/Jinga/Fly/Digma/Vertex. Напоследок — любой китайский телефон за 3–5 тысяч рублей. Он нужен для того, чтобы понять, как будет вести себя ваша программа на непредсказуемом и слабом железе. Если всё хорошо — мы вас поздравляем, вы умеете писать качественный и стабильный код с большим запасом прочности.

Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
Начать карьеру в ИТ
Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию
Еще по теме
easy