
Objective C *
Компилируемый объектно-ориентированный язык
Анонс CocoaHeads Meetup 2 декабря

В первую пятницу декабря состоится регулярная встреча iOS-разработчиков CocoaHeads Moscow. В этот раз мы соберемся в офисе компании Rambler&Co. В программе встречи три доклада на очень разные темы — как про общие архитектурные подходы к iOS приложениям, так и про процессы разработки и получения фидбэка от пользователей при запуске нового функционала.
Симметрическая разность возможностей Swift и Objective-C

В этой статье я расскажу о различии возможностей, которые предоставляют iOS-разработчикам языки Swift и Objective-C. Безусловно, разработчики, которые интересовались новым языком от Apple, уже видели немало подобных статей, поэтому я решил акцентировать внимание на тех отличиях, которые действительно влияют на процесс разработки и на архитектуру приложения. То есть, те отличия, которые следует знать, чтобы использовать язык максимально эффективно. Я попытался составить наиболее полный список, удовлетворяющий этим критериям.
Кроме того, рассказывая о новых возможностях, которые Swift привнёс в разработку, я постарался не забыть упомянуть то, что он потерял по сравнению с Objective-C.
Для каждого пункта я попытался кратко изложить суть отличия, не вдаваясь в детали, а примеры кода — наоборот сделать подробными. В них я прокомментировал все нюансы, даже те, которые не имеют непосредственного отношения к рассматриваемому отличию.
На момент написания статьи текущая версия Swift — 3.0.1.
Создание динамических анимаций в WatchKit
Не так давно компания Apple представила WatchKit Framework для разработки приложений под свои фирменные часы Apple Watch. На данный момент iOS 8.3 SDK очень ограничен – весь код выполняется на iPhone/iPad, а на часах находится только интерфейс и картинки. Таким образом, при любом взаимодействии с элементами интерфейса – код выполняется на iOS-устройстве, а сигнал проходит от часов до устройства по Bluetooth и обратно. Создание анимаций из заранее нарезанных кадров – задача довольно примитивная и уже разжевана во многих блогах. Под катом речь о создании динамической анимации, кадры который подготавливаются на CoreGraphics.

Что не так с отображением символов валют в iOS
Найдите отличия:

Давайте-ка это обсудим.
Что нового в Swift 3?

По итогам Rambler.iOS #8
Две недели назад, 5 октября, состоялась восьмая встреча Rambler.iOS, которую мы предварительно анонсировали на Хабре. В этот раз основной акцент был сделан на контенте самой конференции — мы подготовили четыре крутых доклада, в том числе один от иностранного докладчика.
Использование блоков в iOS. Часть 2
Использование блоков в iOS. Часть 1
Работа NSFetchRequest и NSFetchedResultsController, а также зачем тут продуктовый рынок
Здравствуйте! Эта статья нацелена на разработчиков, у которых есть минимальный навык работы с Core Data Framework. Напомню, что Core Data — это фреймворк для хранения данных на устройстве и взаимодействия с ними. На эту тему есть куча русскоязычных статей на хабре и в сети, поэтому не вижу необходимости повторять их содержание.
Зачастую начинающие особенно Stack Overflow разработчики пугаются использовать Core Data Framework, потому что он кажется им сложным, или используют лишь малую часть его возможностей. В реальности знание базовых функций классов данного фреймворка позволяет разработчику с удобством работать с моделью.
В статье я хочу акцентировать внимание на следующих моментах:
- мы рассмотрим класс
NSFetchRequest, с помощью которого создаются запросы на извлечение данных из модели. Мы изучим его основные свойства и кейсы с их применением; - мы подробно разберём функции и работу
NSFetchedResultsControllerпо эффективному представлению извлечённых данных с помощьюNSFetchRequestна примереUITableView.

Вычисление 1000000 знаков числа Пи. На iPhone

Можно сказать сразу — миллион не предел. Можно и больше. Подробности и реализация под катом.
История языков программирования: от Objective C к Swift

Чтобы отказаться от языка программирования, на котором уже ведется коммерческая разработка, и начать учить новый, программистам нужны серьезные основания. Но история ИТ-индустрии знает много случаев, когда выбор за них делало время, и переход происходил как бы сам по себе.
Что заставило множество разработчиков перейти на Objective C? Что сейчас заставляет отказаться от него и выбрать Swift?
Objective C является расширением языка Си, в который были добавлены новые возможности для объектно-ориентированного подхода программирования. Язык использует объектную модель Smalltalk. Полностью совместим с языком программирования Си. Компания Apple долгое время использовала Objective C как основной язык программирования для разработки своих продуктов.
Создателями Objective C являются Брэд Кокс и Том Лав. Они начали работать над ним в начале1980-х годов, когда еще были сотрудниками телекоммуникационной компании ITT Corporation. Примерно в то же время Кокс и Лав познакомились с языком программирования Smalltalk. Кокса тогда занимали проблемы повторного использования программного кода.
AppCode 2016.2: новые рефакторинги и инспекции, live templates, улучшения автодополнения кода, и все это — про Swift
Недавно вышел AppCode 2016.2, новый релиз нашей IDE для разработки под iOS/OSX. Под катом много гифок и размышлений об автоматизированных рефакторингах в Objective-C и Swift.

Ближайшие события
Отзывчивый поиск для UITableView

В этой статье я поделюсь с вами подходом к реализации поиска в DataSource UITableView при быстром вводе запроса пользователем, когда необходимо динамически формировать результат поиска на основании введенного текста в поисковую строку, не дожидаясь нажатия кнопки “Найти”.
По итогам Rambler.iOS #7
В среду, 20 июля, состоялась седьмая встреча Rambler.iOS, которую мы уже анонсировали на Хабре. По просьбам участников предыдущих мероприятий в этот раз было уделено особое внимание общению между разработчиками.
Было заявлено 3 доклада, два из которых были связаны между собой общей темой – мобильные платежи.

Анонс Rambler.iOS #7

Архитектуру улучшая
Оптимизируя коллаж
В таблице получили скорость
И краш
Этим летом мы, команда iOS-разработки холдинга Rambler&Co, хотим пригласить Вас на встречу Rambler.iOS #7, которая состоится 20 июля в нашем офисе на Даниловской мануфактуре. По просьбам участников наших предыдущих мероприятий на этой встрече будет уделено особое внимание общению сообщества между собой и с участниками нашей команды.
Регистрация
А вот о чем мы будем рассказывать в этот раз.
Интеграция Siri или «Вот что мне удалось найти в вашем приложении»

На WWDC 2016 Apple представила миру SiriKit — API для работы с голосовым помощником.
Если вы не смотрели WWDC сессию про SiriKit и ждёте, что сможете использовать Siri в любом приложении, то вам стоит знать, что на данный момент поддерживается всего несколько типов сервисов:
1) Аудио и видео вызовы,
2) Сообщения,
2) Платежи,
3) Поиск фото,
4) Тренировки,
5) Поездки (бронирование).
Также, как гласит документация, существуют возможность взаимодействия с автомобилем с помощью CarPlay (INSetClimateSettingsInCarIntent, INSetSeatTemperatureInCarIntent, etc.).
Таким образом, Siri можно дать команду "<позвони тому-то, отправь сообщение, поищи фото, etc.> через <название вашего приложения>".
Все устроено таким образом, что взаимодействовать напрямую с нейросетью не придется — SDK предоставляет простые протоколы и набор легковесных классов для передачи информации в методах. Разработчику остается только реализовать эти протоколы.
Для ленивых в конце статьи ссылка на демо-приложение (отправляем с помощью Siri сообщение своим друзьям из ВК).
[iOS 10] Встраиваем поддержку Siri в свое iOS приложение

Apple показала на WWDC 2016 новые iOS 10 и macOS Sierra, и я не упустил возможность сразу же обновить свои устройста.
Одно из ключевых обновлений — появление SiriKit для разработчиков, теперь у нас с вами есть возможность использовать Siri в собственных приложениях. И мы сегодня сделаем наше первое приложение с поддержкой Siri (исходники проекта в конце статьи)
Настоящее и будущее Swift: вопросы взрослым
Одна из причин в том, что язык ещё не достиг стабильности ABI: сейчас никто не гарантирует, что после выхода его новой версии ваш код не сломается. Однако в Apple называют важнейшим приоритетом исправление этой ситуации. А недавно на горизонте показалась версия 3.0, которая должна принести много нового. Означает ли всё это, что настаёт время браться за Swift всерьёз, или целесообразность его использования всё ещё под большим вопросом?

Мы решили расспросить о настоящем и будущем языка трёх специалистов из крупных компаний, уже использующих Swift и не понаслышке знакомых с темой. На наши вопросы ответили:
- Максим Соколов (Avito);
- Игорь Кашкута (Badoo);
- Егор Толстой (Rambler&Co).
Масштабирование iOS-приложений: Как это делал Рамблер?

