Лайфхакер
Лайфхакер
Лучшее
Рубрики
Рецепты
Подкасты
Сервисы
Колонки
Лучшее
Рубрики
Рецепты
Подкасты
Сервисы
Колонки
Новости
Здоровье
Спорт и фитнес
Покупки
Технологии
Отношения
Кино
Реклама
МакрадарТехнологии
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

Лучшие предложения

15 классных вещей, которые стоит купить у российского бренда Muted

15 классных вещей, которые стоит купить у российского бренда Muted

Этот неубиваемый смартфон Honor X9d работает два дня без подзарядки

Этот неубиваемый смартфон Honor X9d работает два дня без подзарядки

11 вещей с AliExpress, которые порадовали нас на этой неделе

11 вещей с AliExpress, которые порадовали нас на этой неделе

Wi-Fi-роутер Xiaomi AX3000

Надо брать: топовый Wi-Fi-роутер от Xiaomi со скидкой 37%

Эти 15 товаров со скидками до 82% достойны внимания на AliExpress

Эти 15 товаров со скидками до 82% достойны внимания на AliExpress

Надо брать: мужские ботинки от Golden Camel со скидкой 56%

Надо брать: мужские ботинки от Golden Camel со скидкой 56%

16 вещей, которые превратят вашу квартиру в красивый дворец

16 вещей, которые превратят вашу квартиру в красивый дворец

100 otlichnyh podarkov zhene na den' rozhdeniya

100 отличных подарков жене на день рождения

Это интересно
Правда ли, что диабет молодеет? Разбираемся с эндокринологом

Правда ли, что диабет молодеет? Разбираемся с эндокринологом

Итоги госпрограммы «Спорт России»: 61% граждан регулярно занимаются физкультурой

Итоги госпрограммы «Спорт России»: 61% граждан регулярно занимаются физкультурой

РОЦИТ: 2026 год изменит правила игры для бизнеса в сфере кибербезопасности

РОЦИТ: 2026 год изменит правила игры для бизнеса в сфере кибербезопасности

Молодёжные центры: почему это удобно и что о них нужно знать

Молодёжные центры: почему это удобно и что о них нужно знать

Комментарии

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

Что вы могли пропустить
Бюджетный iPhone 17e показали на рендерах — его могут выпустить в феврале
Бюджетный iPhone 17e показали на рендерах — его могут выпустить в феврале
0
Вчера
Новости
Устройства
Дублинский стартап создал «парктроник» с ИИ для велосипедистов
Дублинский стартап создал «парктроник» с ИИ для велосипедистов
0
Вчера
Новости
Устройства
Sony впервые за три года выпустила флагманские TWS‑наушники
Sony впервые за три года выпустила флагманские TWS‑наушники
0
Вчера
Новости
Устройства
Как сделать парное фото на 14 февраля с кем угодно: 20 промптов
Как сделать парное фото на 14 февраля с кем угодно: 20 промптов
0
Вчера
Ликбез
Технологии
В Сети вирусится бой Тома Круза и Брэда Питта — это ролик нейросети Seedance 2.0, удивившей даже кинематографистов
В Сети вирусится бой Тома Круза и Брэда Питта — это ролик нейросети Seedance 2.0, удивившей даже кинематографистов
0
Вчера
Новости
Технологии
В пару кликов: как удалить тяжёлые письма в Gmail и освободить место на «Google Диске»
В пару кликов: как удалить тяжёлые письма в Gmail и освободить место на «Google Диске»
0
12 февраля
Технологии
Технологии
Xiaomi выпустила бюджетный аналог AirTag, который работает с сетями Apple и Google
Xiaomi выпустила бюджетный аналог AirTag, который работает с сетями Apple и Google
0
12 февраля
Новости
Устройства
«Белый список» сайтов и приложений в России: что в него входит и как пользоваться
«Белый список» сайтов и приложений в России: что в него входит и как пользоваться
0
12 февраля
Ликбез
Технологии
Чем заменить Telegram: 9 мессенджеров для общения с близкими и коллегами
Чем заменить Telegram: 9 мессенджеров для общения с близкими и коллегами
0
11 февраля
Технологии
Технологии
Нужно ли благодарить нейросети за ответы
Нужно ли благодарить нейросети за ответы
0
11 февраля
Технологии
Технологии
Роскомнадзор начал ограничение работы Telegram в России
Роскомнадзор начал ограничение работы Telegram в России
0
10 февраля
Новости
Технологии
Как настроить роутер без помощи специалиста
Как настроить роутер без помощи специалиста
0
10 февраля
Ликбез
Устройства
ChatGPT начал показывать рекламу — некоторые смогут от неё отказаться, но с последствиями
ChatGPT начал показывать рекламу — некоторые смогут от неё отказаться, но с последствиями
0
10 февраля
Веб-сервисы
Новости
Telegram для Android получил крупнейший редизайн в духе iOS
Telegram для Android получил крупнейший редизайн в духе iOS
0
10 февраля
Новости
Технологии
12 инлайн-ботов в Telegram, чтобы быстро найти мем, гифку, видео и не только
12 инлайн-ботов в Telegram, чтобы быстро найти мем, гифку, видео и не только
0
9 февраля
Технологии
Технологии

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

Аватар автора комментария
Том Штерн59 минут назад

0 / 0

Да, у этого бренда есть хорошие вещи, согласен. И цена хорошая. По поводу качества, сказать не могу, планирую купить весной.
15 классных вещей, которые стоит купить у российского бренда Muted
Аватар автора комментария
Том Штерн1 час назад

0 / 0

Любовь, определение этому слову пока нет. И навряд ли будет, тк под эти скрывается комплекс чувств и объединить их одним словом не получится. А вот кама мута, это не что иное как разновидность эмпатии. У кого-то гиперэмпатия, а у кого-то нет. Кама мута, мне напоминает Камасутра. 😀
Что такое кама мута и почему эту эмоцию стоит испытывать почаще
Аватар автора комментария
Том Штерн1 час назад

0 / 0

Молодцы Лего, независимо от уровня компьютеризации мира, и вовлеченности ИИ, они продолжают делать, то, что приносит радость процессом сборки и радует глаз конечным итогом. А тактильность отдельный фетиш...
Lego показала сразу 5 наборов по «Звёздным войнам» — почти в каждом есть Грогу
Аватар автора комментария
Sergei F1 час назад

0 / 0

Удо Диркшнайдер, например
«Сказка о царе Салтане» Сарика Андреасяна — нейрослоп под видом классики
Добро пожаловать в научную фантастику! Как технологии меняют современные компании и жизнь их клиентов

Добро пожаловать в научную фантастику! Как технологии меняют современные компании и жизнь их клиентов

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