Лайфхакер
Лайфхакер
Лучшее
Новости
Жизнь
Рецепты
Здоровье
Кино
Технологии
Покупки
Лучшее
Новости
Жизнь
Рецепты
Здоровье
Кино
Технологии
Покупки
Куда поехать на выходные
Опрос для читателей
Добрые новости
Стыдные вопросы
Есть мнение
Норм или стрём
Личный опыт
Объясняем за минуту
МакрадарТехнологии
22 июня 2015

Bitcode — новая технология Apple, о которой никто не рассказывает

Фото автора Артём Козориз
Артём Козориз

Автор Лайфхакера

Bitcode — новая технология Apple, о которой никто не рассказывает

На WWDC 2015 было такое количество интересных новинок, что многие разработчики пропустили одно из самых больших нововведений, представленных Apple, — Bitcode.

🥰 Опрос для дорогих читателей! Помогите нам стать лучше и поделитесь, что вы хотели бы изменить. В конце — бонус от наших иллюстраторов.

На сессии, посвященной Bitcode, представитель Apple Андреас Вендкер сказал, что Bitcode позволит App Store оптимизировать приложения для различных устройств перед загрузкой пользователями. Другими словами, существующие приложения в App Store смогут использовать преимущества новых процессоров без каких-либо действий со стороны разработчиков, в полностью автоматическом режиме, без обновления и повторной публикации.

Screen-Shot-2015-06-17-at-10.28.10-AM
После размещения в App Store приложения будут преобразованы в Bitcode.

На практике это означает следующее… Если Apple внезапно изменит архитектуру процессора в том или ином устройстве, разработчикам больше не нужно будет обновлять свои приложения для ее поддержки. Благодаря тому, что App Store автоматически повторно скомпилирует приложения, они с первого же дня смогут работать с новыми процессорами, независимо от того, слышали ли вообще разработчики об их появлении или нет.

Что же представляет собой Bitcode

Это сложный вопрос. Чтобы ответить на него, вы должны иметь представление о Low Level Virtual Machine (LLVM) — универсальной системе трансформации, которая используется для преобразования существующего кода в машинный код для различных архитектур.

LLVM состоит из двух частей: фронтенда и бекенда. Первая — это язык программирования, с помощью которого вы создаете свое приложение, например Objective‑C, Swift, Python или Ruby. Вторая служит для компиляции этого приложения в машинный код, то есть набор инструкций, понятный отдельно взятому процессору.

Bitcode при этом является своеобразной прослойкой, промежуточным языком, который может повторно компилировать приложения в набор инструкций. Bitcode использует LLVM, чтобы получить код приложения и перевести его в Bitcode. Технология знает также, как превратить этот код в исполняемое приложение, основанное на необходимом наборе инструкций.

Проще говоря, это позволит Apple добавлять поддержку новых архитектур в бекенд App Store, который покажет Bitcode, как скомпилировать приложение для новой архитектуры.

Apple не боится смены архитектуры процессоров

Screen-Shot-2015-06-17-at-1.12.14-PM

Как показывает история, Apple — одна из немногих компаний, успешно переживших смену архитектуры в своих ключевых продуктах. Линейка компьютеров Mac пережила ее дважды.

Самыми значимыми переменами был переход с архитектуры PowerPC на Intel в 2005‑м. Apple отказалась от устаревшей аппаратной платформы, предоставив разработчикам новые возможности и предварительно предупредив их.

Из недавних изменений можно вспомнить переход на 64-битную архитектуру в iPhone два года назад. Тогда разработчикам пришлось повторно компилировать свои приложения, чтобы добавить в них поддержку 64-битного процессора iPhone 5s. С Bitcode разработчикам больше не нужно будет переделывать свои приложения даже после существенных изменений вычислительной архитектуры.

Если Apple внезапно перейдет на новую архитектуру, скажем, в iPad Pro, благодаря Bitcode приложения сторонних разработчиков будут поддерживать новое устройство сразу после его релиза.

Эта новая технология имеет огромное значение, она позволит разработчикам идти в ногу со временем при запуске новых устройств или смене архитектуры на существующих.

iOS-разработчик Калеб Дэвенпорт говорит, что у Bitcode есть как плюсы, так и минусы. Apple больше не нужно ждать разработчиков, чтобы представить обновленные инструменты для поддержки новых устройств.

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

Калеб Дэвенпорт ждал появления 64-битных устройств в продаже, чтобы протестировать свое приложение на «реальном» железе и только потом добавить в него соответствующую поддержку. В случае с Bitcode, который автоматически компилирует приложения для новых устройств без участия разработчиков, могут пройти недели, прежде чем разработчик купит новое устройство для тестов, в то время как пользователи будут использовать его приложение и сталкиваться с возможными ошибками.

Другие разработчики считают иначе. Так, Сьорд Дженссен положительно воспринимает нововведения Apple, поскольку они уменьшат объем работы, которую ему нужно выполнить для поддержки новых устройств. Он полагает, что, если бы Apple внезапно перешла на процессоры Intel в новых iPhone, с его стороны не требовалось бы никаких действий, чтобы обеспечить поддержку устройств в день релиза.

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

Bitcode был в описании 404-й сессии WWDC, но потом исчез.
Bitcode был в описании 404 сессии WWDC, но потом исчез.

Проблема в том, что Apple не предоставляет разработчикам достаточной информации. Несмотря на свое огромное значение, Bitcode был очень осторожно упомянут на WWDC и даже исключен из некоторых сессий. В тех приложениях, где используются библиотеки с закрытым исходным кодом, как, например, CocoaPods, Bitcode и вовсе не желателен, поскольку может вызвать ошибки, пока разработчики библиотек сами не добавят поддержку новой архитектуры.

Скорее всего, больше подробностей появится ближе к выходу iOS 9 и watchOS 2, но все-таки странно, что Apple не предоставила полную документацию о Bitcode на WWDC, мероприятии, которое и создано для освещения таких изменений.

Независимость от архитектуры в будущем

Пользователь Medium под псевдонимом Inertial Lemon полагает, что эти изменения сигнализируют о чем-то большем. Bitcode обязателен в приложениях для Apple Watch, но лишь рекомендован для iOS, а, как мы знаем, теперешние рекомендации в будущем часто перерастают в обязательные требования.

Для Apple Watch это означает, что в следующем поколении часов могут использоваться совершенно другие процессоры, но для разработчиков это не будет иметь никакого значения — App Store автоматически приспособит существующие приложения под новые устройства.

Кроме того, Bitcode может сигнализировать о возможном изменении архитектуры Mac. Боб Мэнсфилд, которого убрали из высшего исполнительного руководства, чтобы он возглавил «специальные проекты», является одним из кандидатов для работы над этим. Apple уже производит процессоры для iOS-устройств, поэтому переход на чипы собственного производства в Mac не выглядит таким уж сумасшествием.

Есть только один камень преткновения — Bitcode пока не поддерживается в приложениях для OS X. Возможно, ключевым словом здесь является «пока», ведь человек, представлявший эту технологию на WWDC, работает в команде OS X.

Такие изменения означали бы для Apple возможность перехода Mac с архитектуры Intel на ARM без необходимости адаптировать базу существующих сторонних приложений. В этом случае компания избавится от зависимости от Intel, испытывающей трудности со своевременной поставкой чипов, из-за которых откладывались релизы новых продуктов Apple.

Надо понимать, что это длительный процесс и Bitcode не обязательно сигнализирует о подобных изменениях в ближайшем будущем. Но, так или иначе, Bitcode сделает Apple более гибкой для радикальных изменений аппаратных средств в своих устройствах. Также в будущем компании не нужно будет уведомлять разработчиков об изменениях, что позволит ей сохранить информацию о новых устройствах в тайне до самой презентации.

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

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

via

Если нашли ошибку, выделите текст и нажмите Ctrl + Enter
Это интересно
Давайте посчитаем. Как эффективно вести семейный бюджет

Давайте посчитаем. Как эффективно вести семейный бюджет

Зачем проходить диспансеризацию и оплатит ли её работодатель

Зачем проходить диспансеризацию и оплатит ли её работодатель

Путешествие начинается до взлёта! Как провести время до посадки с комфортом

Путешествие начинается до взлёта! Как провести время до посадки с комфортом

Диспансеризация для женщин: всё, что нужно знать

Диспансеризация для женщин: всё, что нужно знать

Комментарии

Станьте первым, кто оставит комментарий

Что вы могли пропустить
Объясняем за минуту: как узнать, поддерживает ли ваш телефон eSIM
Объясняем за минуту: как узнать, поддерживает ли ваш телефон eSIM
0
Вчера
Технологии
Технологии
Какая раскладушка лучше — iPhone Duo или Samsung Galaxy Z Fold 8
Какая раскладушка лучше — iPhone Duo или Samsung Galaxy Z Fold 8
0
11 сентября
Устройства
Устройства
5G официально запустили в России — но с iPhone подключиться не выйдет
5G официально запустили в России — но с iPhone подключиться не выйдет
0
11 сентября
Новости
Технологии
Американский стартап вызвал около 70 миллионов литров дождя с помощью дронов — на это ушло 3 часа
Американский стартап вызвал около 70 миллионов литров дождя с помощью дронов — на это ушло 3 часа
0
11 сентября
Новости
Технологии
Чем новые iPhone 18 Pro и Pro Max отличаются от прошлогодних iPhone 17 Pro и Pro Max
Чем новые iPhone 18 Pro и Pro Max отличаются от прошлогодних iPhone 17 Pro и Pro Max
0
10 сентября
Ликбез
Устройства
ИИ может уничтожить человечество в ближайшее десятилетие — так считает эксперт по безопасности из Anthropic
ИИ может уничтожить человечество в ближайшее десятилетие — так считает эксперт по безопасности из Anthropic
0
10 сентября
Новости
Технологии
9 лучших бесплатных программ для форматирования флешки в 2026 году
9 лучших бесплатных программ для форматирования флешки в 2026 году
0
10 сентября
Ликбез
Технологии
В Сети неоднозначно приняли iPhone Duo — многие вступились за Samsung
В Сети неоднозначно приняли iPhone Duo — многие вступились за Samsung
0
10 сентября
Новости
Технологии
МТС открыла предзаказ на iPhone 18 Pro и складной iPhone Duo — цены внушительные
МТС открыла предзаказ на iPhone 18 Pro и складной iPhone Duo — цены внушительные
0
10 сентября
Новости
Устройства
Apple назвала дату выхода iOS 27 — обновление получит даже iPhone 11
Apple назвала дату выхода iOS 27 — обновление получит даже iPhone 11
0
10 сентября
iOS
Новости
Apple представила свой первый складной смартфон iPhone Duo — он похож на Galaxy Z Fold 8
Apple представила свой первый складной смартфон iPhone Duo — он похож на Galaxy Z Fold 8
0
9 сентября
Новости
Устройства
Apple представила iPhone 18 Pro и iPhone 18 Pro Max — с минимумом изменений
Apple представила iPhone 18 Pro и iPhone 18 Pro Max — с минимумом изменений
0
9 сентября
Новости
Устройства
Apple показала смарт-часы Watch Series 12 и Ultra 4 с новыми чипом и датчиком пульса
Apple показала смарт-часы Watch Series 12 и Ultra 4 с новыми чипом и датчиком пульса
0
9 сентября
Новости
Устройства
Apple выпустила наушники AirPods 5 — сразу в двух версиях с шумоподавлением
Apple выпустила наушники AirPods 5 — сразу в двух версиях с шумоподавлением
0
9 сентября
Новости
Устройства
Как выбрать сушилку для овощей, фруктов и мяса
Как выбрать сушилку для овощей, фруктов и мяса
0
9 сентября
Как выбрать
Ликбез

Новые комментарии

Аватар автора комментария
Van3 часа назад

0 / 0

Эта статья подтолкнула меня к тому, чего я не видела все это время. Спасибо вам большое! Я уже запланировала маленькое событие для себя ♥️
«Если я перестану быть полезной, то исчезну»: как мне удалось победить созависимость
Аватар автора комментария
ДН5 часов назад

0 / 0

Получился плотный хороший мармелад. Но как только я обваляла его в пакете с сахаром, сахар растаял и весь мармелад оказался в воде. Не понимаю, с чем связано… Обидно, что десерт испорчен..
Домашний лимонный мармелад
Аватар автора комментария
D.V.6 часов назад

0 / 0

А ещё надо немного знать что покупаешь...
Объясняем за минуту: как узнать, поддерживает ли ваш телефон eSIM
Аватар автора комментария
Alexandr Al13 часов назад

0 / 0

Если еще и в кинотеатр идти, то это составит вообще больше 4 часов.
Я посмотрел «Надежду» и заявляю, что это самый драйвовый и весёлый боевик года
ИГРА: Снова в школу! Найдите всё, что пригодится для учёбы

ИГРА: Снова в школу! Найдите всё, что пригодится для учёбы

Лайфхакер
Информация
О проектеРубрикиРекламаРедакцияВакансииО компании
Подписка
TelegramВКонтактеTwitter (X)PinterestYouTubeИнициалRSS
Правила
Пользовательское соглашениеПолитика обработки персональных данныхПравила применения рекомендательных технологийПравила сообществаСогласие на обработку персональных данныхСогласие для рекламных рассылокСогласие для информационной программы
18+Копирование материалов запрещено.
Издание может получать комиссию от покупки товаров, представленных в публикациях