Рубрика «iOS» - 31

Привет!

Начиная со Swift 4 нам доступен новый протокол Codable, который позволяет легко кодировать/декодировать модели. В моих проектах очень много кода для API вызовов, и за последний год я проделал большую работу по оптимизации этого огромного массива кода во что-то очень легкое, лаконичное и простое путем убивания повторяющегося кода и использования Codable даже для multipart запросов и url query параметров. Так получилось несколько отличных на мой взгляд классов для отправки запросов и парсинга ответов от сервера. А также удобная структура файлов представляющая из себя контроллеры для каждой группы запросов, которая мне привилась при использовании Vapor 3 на бэкенде. Несколько дней назад я выделил все свои наработки в отдельную библиотеку и назвал ее CodyFire. О ней мне и хотелось бы рассказать в этой статье.
Читать полностью »

20 декабря 2016 года ребята из Uber Engineering опубликовали статью про новую архитектуру (вот перевод этой статьи на хабре). Представляю вашему вниманию перевод основной части документации.Читать полностью »

Как уместить в айфоне миллион звёзд - 1

Такая романтичная вещь, как звёздное небо, и такая хардкорная вещь, как оптимизация потребления памяти iOS-приложением, вполне могут идти вместе: стоит попробовать запихнуть это звёздное небо в AR-приложение, как тут же встанет вопрос о том самом потреблении.

Минимизировать использование памяти будет полезно и в очень многих других случаях. Так что этот текст на примере маленького проекта показывает методы оптимизации, способные пригодиться и в совершенно других iOS-приложениях (да и не только iOS-).
Читать полностью »

Предисловие

Привет, друзья, в начале сразу обозначу цель статьи: экономия вашего времени если вам нужно обновлять или встраивать Яндекс-карты в мобильный клиент на iOS, плюс желание поделиться опытом.

Встроили мы как-то раз в приложение Яндексмапкит (октябрь 2017 года примерно) вместо эпловых карт (ничего личного — только бизнес). Через месяца 3 в один прекрасный зимний день Андройд версия карт вышла из строя на дня 2 из-за ключей, карта просто превратилась в тыкву) На что в чатике от руководства проскочило: “на андройде карты сломали, починить не знают как” В то время, как iOS-клиента это не коснулось. Бедолаги на андройде… на этот раз ребята были не причем ведь. В те дни упали многие прилаги: почта России, Утконос, может помните ребята?

Сказ о том как я Yandex MapKit на iOS обновлял или карты, деньги, 2 мапкита - 1

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

Еще через месяца 3, где-то в марте от Яндекса прилетело письмо, что наконец-то обновили они sdk, (прошло совсем немного времени, года 4-5 с предшествующего обновления):
"-Обновляйтесь, через год старый отключим", вкратце. До этого просто была старая версия 1.0

Сказ о том как я Yandex MapKit на iOS обновлял или карты, деньги, 2 мапкита - 2
Читать полностью »

ВКонтакте проводит VK Mobile Challenge — онлайн-конкурс среди разработчиков для Android и iOS платформ. Покажите свои умения — и поборитесь за призовой фонд, который составит от 1 до 2 миллионов рублей. Участники с лучшими результатами получат шанс присоединиться к Команде ВКонтакте.

image

Читать полностью »

image

Это перевод оригинальной статьи программистки, ведущей блог под псевдонимом Soujanya PS. Она профессионал своего дела и любит не только разрабатывать приложения и сервисы, но и писать об этом статьи. Вот ее обзор запуска iOS-приложения с использованием фреймворка React Native.

Не так давно я начала использовать React Native для программ под iOS. Это мое первое глубокое погружение в среду разработки нативных приложений. Замечу, что я была удивлена легкостью всего процесса, а также уровнем абстракции, который обеспечивает интерфейс командной строки React Native. Собственно, это стало одним из факторов, который побудил меня написать об этом фреймворке. Я хотела бы поделиться собственным опытом с теми, кто только начал работать с ним.
Читать полностью »

Всем привет!

Меня зовут Кирилл, я Android-разработчик. Сейчас я уже привык к тому, что живу и работаю в Лондоне, но год назад и представить себе такого не мог. В этой статье я расскажу, как мне выпал шанс устроиться в международную компанию, о чём спрашивали на интервью, какие этапы нужно пройти, чтобы уехать в Великобританию с семьёй и собаками, и какой он, Лондон.

Переезд в Лондон с женой и собаками. История мобильного разработчика - 1
Читать полностью »

Баннерная реклама в iOS-приложении - 1

Сегодня мы открываем цикл статей о том, о чём обычно не говорят на технических конференциях и митапах. Этот и последующие посты расскажут, как устроен механизм монетизации в популярном в США развлекательном iOS-приложении iFunny, разработкой которого мы занимаемся.
Читать полностью »

Отчёт стартапа, занимающегося приложением для улучшения фотосъёмки с iPhone

iPhone XS: почему это совершенно новая камера - 1

iPhone XS против iPhone X – изменения в камере на уровне железа

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

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

Это именно спецификации железа – притом, что Apple в основном концентрировалась на таких программных улучшениях, как Smart HDR и новый портретный режим.
Читать полностью »

Создание архитектуры: работа с iOS Coordinator pattern - 1
(Иллюстрация)

Каждая команда рано или поздно начинает думать о внедрении собственных архитектурных подходов, и немало было об это копий сломано. Вот и мы в Umbrella IT всегда хотели работать с гибкими инструментами, чтобы формирование архитектуры не было чем-то болезненным, и проблемы навигации, mock-файлов, изолированности и тестирования перестали быть чем-то страшным, чем-то таким, что рано или поздно нависает над разросшимся проектом. К счастью, речь не идет о новой «эксклюзивной» архитектуре с вычурным названием-аббревиатурой. Надо признать, что существующие на данный момент популярные архитектуры (MVP, MVVM, VIPER, Clean-swift) справляются со своими задачами, и сложности может вызвать лишь неправильный выбор и неправильное использование того или иного подхода. Однако и в рамках принятой архитектуры можно использовать различные паттерны, что позволит добиться тех самых, почти мифических показателей: гибкость, изолированность, тестируемость, переиспользование.Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js