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

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

Пусковое устройство от Baseus, которое пригодится зимой. Сейчас на него скидка 48%

Пусковое устройство от Baseus, которое пригодится зимой. Сейчас на него скидка 48%

Chto podarit' mal'chiku na Novyj god: 15 klassnyh idej

Что подарить мальчику на Новый год: 15 классных идей

Берём в подарок планшет Huawei MatePad 11.5 с высоким рейтингом покупателей

Берём в подарок планшет Huawei MatePad 11.5 с высоким рейтингом покупателей

Надо брать: беспроводная зарядная станция Ugreen MagFlow со скидкой 43%

Надо брать: беспроводная зарядная станция Ugreen MagFlow со скидкой 43%

Nahodki AliExpress: samye interesnye i poleznye tovary

Находки AliExpress: самые интересные и полезные товары

10 подарков парню на Новый год, которые не будут пылиться на полке

10 подарков парню на Новый год, которые не будут пылиться на полке

10 бытовых товаров от Synergetic, которые часто покупают на Ozon

10 бытовых товаров от Synergetic, которые часто покупают на Ozon

5 хороших электрических зубных щёток дешевле 5 000 рублей

5 хороших электрических зубных щёток дешевле 5 000 рублей

Это интересно
Главное — практика? Почему в учёбе так важно работать над реальными задачами

Главное — практика? Почему в учёбе так важно работать над реальными задачами

5 гаджетов, которые помогут сделать жизнь проще

5 гаджетов, которые помогут сделать жизнь проще

Реклама
Как выбрать апарт-отель для инвестиций и зачем это нужно

Как выбрать апарт-отель для инвестиций и зачем это нужно

проигрыватели на разный бюджет

Проигрыватель в подарок: 3 варианта на разный бюджет

Комментарии

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

Что вы могли пропустить
10 бесплатных онлайн-сервисов, чтобы сделать гифку из видео
10 бесплатных онлайн-сервисов, чтобы сделать гифку из видео
0
Вчера
Технологии
Технологии
Проигрыватель в подарок: 3 варианта на разный бюджет
Проигрыватель в подарок: 3 варианта на разный бюджет
0
Вчера
Устройства
Устройства
Как выбрать кофемашину для дома и не разочароваться
Как выбрать кофемашину для дома и не разочароваться
0
14 декабря
Ликбез
Технологии
Telegram представил новые функции в приложении — и подколол мессенджер Max
Telegram представил новые функции в приложении — и подколол мессенджер Max
0
13 декабря
Новости
Технологии
Как посмотреть свои игровые итоги 2025 года на PlayStation в России
Как посмотреть свои игровые итоги 2025 года на PlayStation в России
0
13 декабря
Технологии
Технологии
Windows 11 позволит запускать Android‑приложения в полноэкранном режиме
Windows 11 позволит запускать Android‑приложения в полноэкранном режиме
0
13 декабря
Windows
Новости
Новая теория заговора: библиотекари скрывают книги, которые советует ChatGPT
Новая теория заговора: библиотекари скрывают книги, которые советует ChatGPT
0
12 декабря
Новости
Технологии
Рататуй в мире гаджетов: представлен ИИ-куб для оценки степени готовности блюд
Рататуй в мире гаджетов: представлен ИИ-куб для оценки степени готовности блюд
0
12 декабря
Новости
Устройства
«Сбер» запустил оплату картами «Мир» со смарт‑часов — без интернета и смартфона рядом
«Сбер» запустил оплату картами «Мир» со смарт‑часов — без интернета и смартфона рядом
0
12 декабря
Новости
Технологии
Что такое конвекция в духовке и зачем она нужна
Что такое конвекция в духовке и зачем она нужна
0
12 декабря
Ликбез
Технологии
WhatsApp заново изобрёл голосовую почту — теперь можно отправлять аудио- и видеоответы на пропущенные
WhatsApp заново изобрёл голосовую почту — теперь можно отправлять аудио- и видеоответы на пропущенные
0
12 декабря
Новости
Технологии
Google показала инновационный браузер Disco — он создаёт мини-приложения под задачу на лету
Google показала инновационный браузер Disco — он создаёт мини-приложения под задачу на лету
0
12 декабря
Браузеры
Новости
OpenAI представила флагманскую ИИ-модель GPT-5.2 — в попытке угнаться за конкурентами
OpenAI представила флагманскую ИИ-модель GPT-5.2 — в попытке угнаться за конкурентами
0
12 декабря
Новости
Технологии
Герои Disney, Pixar и Marvel приходят в ChatGPT и Sora — нейровидео с ними теперь официально разрешено
Герои Disney, Pixar и Marvel приходят в ChatGPT и Sora — нейровидео с ними теперь официально разрешено
0
11 декабря
Новости
Технологии
Последний оплот: Apple сильно усложнила блокировку iMessage со стороны правительств
Последний оплот: Apple сильно усложнила блокировку iMessage со стороны правительств
0
11 декабря
iOS
Новости

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

Аватар автора комментария
Iris Strange5 минут назад

0 / 0

4. абракадабра. тарабарщина 5. иризация. чем это слово хуже, чем перевод на английский - не совсем ясно. 7. опыт. предыстория. анамнез. но согласна, что понятие "background" делает особенный акцент на смысле "база для настоящего". отсюда его популярность в нашей стране, калька в разговорной речи гуляет давно уже. это так, сходу. да и всё остальное перевести можно, если хоть немножко заморочиться. а первое вообще сами перевели - и ничего, хуже не стало :):)
12 ёмких английских слов, которые заставляют сомневаться в богатстве русского языка
Аватар автора комментария
Элина45 минут назад

0 / 0

Ну кто виноват что у вас руки из ж пы растут?а бабушки скажите что доллар до сих пор не упал,и зависть это плохое дело.
Творожные кексы с яблоками и корицей
Аватар автора комментария
Skubacok50 минут назад

0 / 0

Согласен. Считаю отличным подарком для автолюбителя ))
Пусковое устройство от Baseus, которое пригодится зимой. Сейчас на него скидка 48%
Аватар автора комментария
Катерина Железницкая54 минуты назад

0 / 0

Всегда пожалуйста)
Как нарисовать лошадь — символ 2026 года
«Восток», «Нева» и «Дон»: 6 удобных автомаршрутов по трём трассам для знакомства с регионами

«Восток», «Нева» и «Дон»: 6 удобных автомаршрутов по трём трассам для знакомства с регионами

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