Развлекательный порталРазвлекательный портал


Общее
Игры
Apple
Android
Развлечения
Прохождение
Карта сайта

Бузову готовят к операции — что скрывает ведущая от фанатов
5 лучших функций iOS 17, ради которых стоит наконец обновить свой Айфон
Хорошо устроилась: суррогатная мать детей Пугачевой снова родила

WWDC 2011: iCloud, по другую сторону экрана
🕑 25.02.2019 Общее 👀 57 просмотров

Для пользователей iCloud – магия. Заколдованные этой магией данные достаточно ввести на одном из устройств, и они моментально появляются на всех устройствах пользователя. С точки зрения разработчика, решившего “заколдовать” свои приложения, освоение iCloud не было непреодолимо сложным – но… iCloud был очень непрост для тех, кто разрабатывал эту технологию. После её презентации скептики, усмехаясь, заявляли что весь этот iCloud можно разработать за две-три недели, не особенно перенапрягаясь. Интересно, почему до июня 2011 года никто этого не сделал?

Допустим, просто не догадались – подобные глупости могли прийти в голову ненормальной Apple и больше никому. Но почему что-то вроде iCloud появилось через несколько лет после того как очередная глупость от Apple вышла в свет и оказалась не такой уж и глупостью?

А заявления некоторых СМИ о том что Apple “изобрела облачные технологии”, к чему Apple не имела никакого отношения, не остались без ответа. Волны испепеляющей критики обрушились… на Apple.

Apple пришлось сделать официальное заявление – эти технологии существовали задолго до iCloud. Более того, iCloud не был первым случаем применения облачных технологий самой Apple.

Примеры? Электронная почта с помощью IMAP, контакты и календари с помощью CalDav, iTunes Store. В App Store и Mac App Store облачные технологии применялись при загрузке приложений на компьютеры пользователей и при их обновлениях.

iCloud разработан инженерами с опытом участия в этих проектах.

А свой iCloud за две-три недели? С него мы и начнем…

Это продолжение серии про WWDC 2011, предыдущие части здесь:
Первая часть: WWDC 2011: Apple уходит на облака…;
Вторая часть: WWDC 2011: Про убийство.

Как создать собственный сервис, аналогичный iCloud?

Как утверждали скептики, элементарно. Хорошо, отвечали им разработчики iCloud, пусть кто-нибудь попробует. Это и в самом деле несложно.

Для этого надо:

— Подобрать, установить и сконфигурировать серверы, обеспечить их бесперебойную круглосуточную работу;
— Создать протокол сервиса;
— Написать огромное количество исходных кодов для сервера и для клиентов;
— Организовать своевременную отправку, доставку и прием уведомлений (пользователям нравится, когда синхронизация случается немедленно);
— Обеспечить синхронное архивирование на случай восстановления после нештатных ситуаций;
— Обеспечить срочную и круглосуточную техническую поддержку всего этого;

И еще пара-другая разных “надо”.

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

Но все равно это обойдется дороже и хлопотнее, чем применение iCloud. Тем более что он написан не худшими в мире инженерами, и “просто работает”.

А для встраивания приложения в его инфраструктуру даже не потребуется Mac. Почему на привычные для Apple не слишком умные замечания компания ответила.

Для создания сервиса уровня iCloud требуются возможности Google или Microsoft.

iCloud для прикладных разработчиков

По сравнению с созданием собственного аналога, интегрировать приложение в iCloud было несложно.

Для подключения приложения к сервису iCloud, требовалось:

— Иметь представление об «анатомии» iCloud (прочитать его описание до конца, хотя бы один раз)
— Решить, как именно приложение должно взаимодействовать с iCloud, и продумать взаимодействие с целью уменьшения трафика
— Зарегистрировать в приложении его «владения на облаках»
— Используя iCloud API, реализовать продуманное во втором пункте

Третий пункт делал размещение приложения в Mac App Store обязательным. То есть, ко всем другим заботам добавлялось соответствие требованиям приемщиков этого магазина. Хороший повод еще раз подумать.

Регистрация владений была несложной: в список прав (entitlements) добавлялся ключ или ключи для работы с хранилищами iCloud.

В наши дни процесс регистрации владений упрощен, в 2011 он выполнялся вручную, выглядело это, например, так:


com.apple.developer.ubiquity-container-identifiers

0102030405.chanadu.TheApp.ipad
0102030405.chanadu.TheApp.iphone

com.apple.developer.ubiquity-kvstore-identifier
0102030405.chanadu.TheApp.kvstore

Взаимодействие с сервисом нетривиально, но iCloud API упрощали этот процесс почти до безобразия.

В OS X управление взаимодействием встроили в класс NSDocument, добавив полдюжины новых классов которые брали на себя нетривиальные частности (разрешение конфликтов, поиск, хранение версий). Новые классы использовались еще в нескольких новшествах OS X Lion.

До пятой версии в iOS для работы с документами (например, документами MS Word или Numbers) использовался суррогатный класс – в iOS 5 появился класс UIDocument, почти полная копия “настоящего”, но учитывающий местную специфику.

Теоретически все было несложно, на практике существенно сложней, особенно в первый раз.

Краткий очерк анатомии iCloud

Пользователю (точнее, Apple ID пользователя, их можно заиметь сколько угодно, за так и без особых усилий) выделялось 5 Гигабайт облачной памяти. Увеличение квоты в первые месяцы существования iCloud было невозможно, ни за какие деньги. Платное увеличение квоты было встречено овациями – но об этом когда-нибудь потом.

Данные всех программ пользователя, размещенные в облаках, в сумме, выйти за пределы квоты не могли. Но были кое-какие подробности.

Во-первых, некоторые данные контролируемые программами Apple, размещались вне квоты.

Во-вторых, хранилища были двух типов. Одно хранило документы. Разработчик решал что и как сохранять на облаке – в наставлениях был целый раздел, обучавший его экономному ведению хозяйства. Второе хранило пары “ключ-значение”, вне квоты, но с массой других ограничений. У приложения могло быть только одно хранилище этого типа, по размеру оно не могло превышать 64 К, а пара “ключ-значение” не могла быть больше 4 К.

Зато разрешалось использовать один комплект хранилищ для нескольких программ. Apple приводила пример с вариантами Lite и Pro, которые работали с документами одного типа, и могли быть установлены на разных устройствах пользователя. От себя добавлю еще более распространенный случай: приложение существующее в вариантах для OS X и iOS – это на самом деле, как минимум, два разных приложения.

И напоследок о конфликтах: имеются в виду не конфликты между разработчиками, и даже не их конфликты с менеджерами и руководством компании. Существовала теоретическая, как казалось всем кто сталкивался с iCloud впервые, возможность внесения изменений в тот же документ одновременно с нескольких устройств. Увы, чисто практическая.

Можно было бы рассказать еще много интересных вещей про iCloud, но в серии это не последняя тема.

Продолжение следует

Предлагаем подписаться на наш канал в «Яндекс.Дзен». Там вы сможете найти эксклюзивные материалы, которых нет на сайте.

👍 0 👎 0

>>>Ссылка для отзывов и предложений<<<


Ещё новости с тэгом Общее


Что такое землетрясение, каковы причины его возникновения и их последствия?Что такое землетрясение, каковы причины его возникновения и их последствия?
🕑 07.02.2023 Общее Происшествия 👀 443 просмотров

Заброшенный вокзал, расписанный народными художественными узорами в ВенгрииЗаброшенный вокзал, расписанный народными художественными узорами в Венгрии
🕑 07.02.2023 Общее Фотоподборки 👀 326 просмотров

Красочные водопады Плитвицких озер в ХорватииКрасочные водопады Плитвицких озер в Хорватии
🕑 07.02.2023 Общее Красота 👀 399 просмотров

Антиправительственный митинг в Москве 10 марта 1991 годаАнтиправительственный митинг в Москве 10 марта 1991 года
🕑 07.02.2023 Общее Фоторепортажи Места События 👀 2905 просмотров

Фото-загадка: Какие символы зашифровали на этикетке зимней «Кока-колы»Фото-загадка: Какие символы зашифровали на этикетке зимней «Кока-колы»
🕑 07.02.2023 Общее Интересное 👀 637 просмотров

Перевал через Альпы и «бесконечное» шоссе: 5 опасных, но захватывающих путейПеревал через Альпы и «бесконечное» шоссе: 5 опасных, но захватывающих путей
🕑 07.02.2023 Общее Мир Страны Города 👀 461 просмотров

Чебуреки — все секреты идеального теста и фарша!Чебуреки — все секреты идеального теста и фарша!
🕑 07.02.2023 Общее Еда Рецепты 👀 528 просмотров

От Lamborghini до Mitsubishi: производители автомобилей, которые делают трактора не хуже спорткаровОт Lamborghini до Mitsubishi: производители автомобилей, которые делают трактора не хуже спорткаров
🕑 06.02.2023 Общее Автомир 👀 258 просмотров

Истории из цикла — с неожиданным концомИстории из цикла — с неожиданным концом
🕑 03.02.2023 Общее Юмор 👀 527 просмотров

Совет хозяйкам: никогда больше не развешивайте мокрые вещи на сушилки и радиаторы в квартиреСовет хозяйкам: никогда больше не развешивайте мокрые вещи на сушилки и радиаторы в квартире
🕑 03.02.2023 Общее Интересное 👀 347 просмотров

Как понять смысл слов некоторых слов без словаряКак понять смысл слов некоторых слов без словаря
🕑 03.02.2023 Общее Общество 👀 926 просмотров

Моя правда самая правдивая: эта история произошла на судеМоя правда самая правдивая: эта история произошла на суде
🕑 03.02.2023 Общее Истории Рассказы Анекдоты 👀 309 просмотров

Как немцы поступили с миллионами касок вермахта, оставшимися после войныКак немцы поступили с миллионами касок вермахта, оставшимися после войны
🕑 29.01.2023 Общее История 👀 424 просмотров

Зачем в США в начале XX века малышей отправляли почтойЗачем в США в начале XX века малышей отправляли почтой
🕑 28.01.2023 Общее США 👀 441 просмотров

«Миротворец»: что собой представляет и на что способен самый культовый револьвер Дикого Запада«Миротворец»: что собой представляет и на что способен самый культовый револьвер Дикого Запада
🕑 26.01.2023 Общее США 👀 597 просмотров

Почему Америка и Европа такие богатые и откуда у них столько денегПочему Америка и Европа такие богатые и откуда у них столько денег
🕑 19.01.2023 Общее Интересное 👀 1622 просмотров

Астрологический прогноз на 19 — 25 февраляАстрологический прогноз на 19 — 25 февраля
🕑 16.12.2017 Общее 👀 799 просмотров

Иван Ургант снова высмеял Анатолия КашпировскогоИван Ургант снова высмеял Анатолия Кашпировского
🕑 29.12.2017 Общее 👀 697 просмотров

Ольга Анохина: «Проблемы от бывшей родни»Ольга Анохина: «Проблемы от бывшей родни»
🕑 20.12.2017 Общее 👀 704 просмотров

Владимир Финогеев: Часовые амбарыВладимир Финогеев: Часовые амбары
🕑 08.01.2018 Общее 👀 789 просмотров

Популярное 2 недели


День матери: поздравления и подаркиДень матери: поздравления и подарки
🕑 20.04.2024 Развлечения Мой Дом Семья 👀 142 просмотров

Новая «Миссис Смит»: уставшая от разборок с Питтом Джоли удивила переменамиНовая «Миссис Смит»: уставшая от разборок с Питтом Джоли удивила переменами
🕑 20.04.2024 Развлечения Звезды Новости 👀 139 просмотров

Звезда *Игры престолов* присоединяется к актерскому составу *Ведьмака*Звезда *Игры престолов* присоединяется к актерскому составу *Ведьмака*
🕑 20.04.2024 Игры 👀 93 просмотров

День учителя: поздравленияДень учителя: поздравления
🕑 20.04.2024 Развлечения Мой Дом Семья 👀 186 просмотров

Инсайдер намекает на скорый анонс Far Cry 7; антагониста в игре может сыграть Киллиан МерфиИнсайдер намекает на скорый анонс Far Cry 7; антагониста в игре может сыграть Киллиан Мерфи
🕑 20.04.2024 Игры 👀 150 просмотров

День города Москва 2024День города Москва 2024
🕑 20.04.2024 Развлечения Мой Дом Семья 👀 113 просмотров

В GTA 6 может появиться трассировка лучей. Rockstar Games ищет разработчиков с опытом работы с современными API RTВ GTA 6 может появиться трассировка лучей. Rockstar Games ищет разработчиков с опытом работы с современными API RT
🕑 20.04.2024 Игры 👀 91 просмотров

Климова в платье с декольте и бантами покорила гостей ММКФКлимова в платье с декольте и бантами покорила гостей ММКФ
🕑 19.04.2024 Развлечения Звезды Новости 👀 168 просмотров

Сандра И Сенсиндивер возглавит корпорацию *Вейланд-Ютани* в сериале *Чужой*Сандра И Сенсиндивер возглавит корпорацию *Вейланд-Ютани* в сериале *Чужой*
🕑 19.04.2024 Игры 👀 181 просмотров

Intel подтверждает поддержку памяти DDR5-8800 для поколения Xeon 6Intel подтверждает поддержку памяти DDR5-8800 для поколения Xeon 6
🕑 19.04.2024 Игры 👀 168 просмотров

Личную переписку братьев Меладзе слили в Сеть — вот почему продюсер развелся с БрежневойЛичную переписку братьев Меладзе слили в Сеть — вот почему продюсер развелся с Брежневой
🕑 19.04.2024 Развлечения Звезды Новости 👀 161 просмотров

Игроки сравнили локации из трейлера Kingdom Come 2 с реальными местамиИгроки сравнили локации из трейлера Kingdom Come 2 с реальными местами
🕑 19.04.2024 Игры 👀 240 просмотров

Винни Пух выходит на охоту в дублированном тизере *Крови и мёда 2*Винни Пух выходит на охоту в дублированном тизере *Крови и мёда 2*
🕑 19.04.2024 Игры 👀 200 просмотров

Обновление для PUBG на консолях принесло ряд значительных изменений, которые ранее были добавлены на ПКОбновление для PUBG на консолях принесло ряд значительных изменений, которые ранее были добавлены на ПК
🕑 19.04.2024 Игры 👀 184 просмотров

>>>Ссылка для отзывов и предложений<<<

Новости в картинках


Бузову готовят к операции — что скрывает ведущая от фанатов
5 лучших функций iOS 17, ради которых стоит наконец обновить свой Айфон
Хорошо устроилась: суррогатная мать детей Пугачевой снова родила
*Человек-Паук* Сэма Рэйми достойно показывает себя в повторном кинопрокате
Не удалось отправить SMS на указанный вами номер. Что делать, если не получается зайти в Ватсап
Как дозвониться ребенку, если его телефон в беззвучном режиме. Хитрый лайфхак от родителя
Новые режимы и событие: тактический шутер *Калибр* получил обновление
Готовящийся к выходу Snapdragon X Plus может оказаться быстрее Apple M3
В Line War добавят однопользовательский и кооперативный режимы
В League of Legends рассказали, как будут выглядеть сезонные обновления
В Stellar Blade нашли расистское оскорбление - его сразу убрали
Китайский 8-ядерный процессор Zhaoxin KX-7000 по производительности догнал Intel Skylake
Состоялся выход приключенческой VR-головоломки Doctor Who: The Edge of Time для PS VR2
Denuvo не помогла: Tales of Kenzera ZAU оказалась в день релиза на торрент-трекерах благодаря эмулятору Ryujinx
У физической версии Stellar Blade будет реверсивная обложка
Шестилетний Galaxy Note 9 теперь может использовать функции Galaxy AI
«Это охота на ведьм»: Пригожин взорвался из-за обвинений в адрес Валерии
*Кин-дза-дза* оставила свой след в Мире Кораблей
Разработчики Albion Online объявили об успешном запуске нового сервера *Европа*
Как создать PWA из любого сайта на компьютерах Apple с macOS Sonoma
Дизайнер мультиплеера StarCraft 2 работает над новой игрой, которая сменит парадигму RTS
Разработчики Path of Exile рассказали о создании сюжета для лиги *Некрополь*
«Видит Бог, я не хотела»: молодая жена Петросяна раскрыла свой диагноз
Assassin*s Creed Mirage - полноценная игра, но у Ubisoft есть другие идеи для Басима
В раннем доступе вышел Rotwood - экшен-рогалик от авторов Don*t Starve
В Индии киберспортсмены получили государственные премии наравне с обычными спортсменами за участие в Азиатских Играх
Ролевая игра Sand Land получила релизный трейлер и неплохие оценки от прессы
Варнава рассказала, зачем купила квартиру в Грузии — рядом живет Еприкян
Для EVE Online анонсировано крупное обновление под названием *Equinox*
5 очень важных характеристик камеры смартфона, на которые редко обращают внимание
Патч первого дня добавляет в Stellar Blade Новую игру+
Flaming Fowl Studios уволила большинство сотрудников и заморозила разработку только что анонсированной игры
Авторы сурвайвала на дирижабле Forever Skies получили инвестиции от KRAFTON
Manor Lords: Ситибилдер с подвохом
Apple и Epic Games снова встретятся в суде
Orcs Must Die! 3 станет новой игрой в бесплатной раздаче Epic Games Store 2 мая
Латентная диффузия в действии: знакомьтесь с обновлённой нейросетью YandexART 1.3
Продажи Frostpunk превысили пять миллионов копий
*Крайне отполированная игра*: Digital Foundry провели технических анализ Stellar Blade
Муж девальвировался, а она и не заметила: о беде Пугачевой заговорили в открытую
В World of Warcraft появится отдельный режим для арахнофобов
Названа дата альфа-теста Marvel Rivals
Вышло новое обновление для Windows 11 - теперь пользователям показывают рекламу в меню *Пуск*
Скоро в ЗАГС? Басков приоткрыл завесу тайны личной жизни
*Альтушка для скуфа* ворвалась в Топ-продаж Steam
Свежие скриншоты из будущего DLC Небраска для American Truck Simulator - Cельское хозяйство
Самус Аран и другие герои Nintendo могут никогда не попасть в Fortnite
Альтушка для скуфа ворвалась в ТОП продаж
Дело серьезное, речь о миллионах: Волочкова в ужасе и панике вышла на связь
Бабкина изменилась до неузнаваемости — на 40 лет моложе
Вышел четвертый хотфикс для No Rest For The Wicked - улучшение производительности, изменение баланса и другие фиксы
В Lineage 2 Essence открылся комплекс серверов Project Eva с уникальными механиками и ограниченным донатом
Мультфильм «Кунг-фу Тигр» выходит в кино 16 мая
Первые оценки Stellar Blade: очень хорошо
Стало известно имя монарха, который вскоре сменит Карла III на троне
Топ-10 полезных товаров с АлиЭкспресс из моего личного рейтинга
В WhatsApp появится функция передачи файлов без интернета
«На воре и шапка горит»: Михайлов не стал молчать о предательстве Пугачевой
Вышел дублированный трейлер Максин XXX
Графическая производительность PlayStation 5 Pro должна быть на 45% больше, чем у PlayStation 5, чтобы работать в 60 fps

ePN © 2023 Все права защищены.