Как стать автором
Поиск
Написать публикацию
Обновить
38.04

iOS *

Мобильная ОС компании Apple

Сначала показывать
Порог рейтинга
Уровень сложности

Приглашаем на Ozon Tech Community Mobile Meetup

Время на прочтение2 мин
Количество просмотров1.1K

Всем привет!

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

Приглашаем на Ozon Tech Community Mobile Meetup, на котором подробно обсудим дизайн-систему — это продукт, который структурирует набор компонентов и гайдлайнов. Это позволяет дизайнерам и разработчикам создавать последовательный и согласованный визуальный язык для продуктов и услуг компании. 

Наша цель — упростить разработку интерфейсов для дизайнеров и разработчиков. Для этого мы создали и развиваем дизайн-систему BX для мобильных и веб-приложений.

Об этом поговорим на Ozon Tech Community Mobile Meetup в Москве, 29 августа в 19:00.

Читать далее

WWDC 2023. Новый фреймворк SwiftData для управления данными. Эксперименты

Уровень сложностиСредний
Время на прочтение33 мин
Количество просмотров3.1K

Одним из заметных событий WWDC 2023 для разработчиков, программируемых на языке Swift, стало появление фреймворка SwiftData. В этой статье показано, как создать Схему данных в SwiftData, как выполнить CRUD операции (Create - Создать, Read - прочитать, Update - модифицировать, Delete - удалить), как выполнять запросы Query к данным с помощью предиката Predicate, как использовать "живой" запрос @Queryв SwiftUI и как его динамически настроить. Вы узнаете, как эффективно "закачивать" JSON данные в SwiftData хранилище без блокировки пользовательского интерфейса (UI).

Читать далее

Swift и Objective-C в одном SDK. Стерпится, слюбится

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров2.4K

Привет! Меня зовут Игорь Сорокин, я занимаюсь iOS-разработкой в myTarget. Мы разрабатываем SDK для показа рекламы в мобильных приложениях. Недавно мы решили переписать его с Objective-C на Swift. Так как делать это мы решили итеративно, то какое-то время в нашем SDK должны уживаться два языка одновременно. Я расскажу, какие подходы используют для этого, почему нам не подошёл стандартный способ и что у нас из этого получилось. Статья будет полезна тем, кто разрабатывает SDK, используя оба языка, а также тем, кто хочет переехать с Objective-C на Swift.

Читать далее

Подводные камни тестирования кода в Swift Concurrency

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров2.2K

Привет, Хабр! На связи Александр Пиманов и Камиль Ишмуратов, мы iOS-разработчики в IBS. В наших проектах мы активно используем новые технологии и стараемся покрывать наш код unit-тестами. В этой статье мы расскажем о проблемах тестирования асинхронного кода и как их можно попытаться решить.

Читать далее

Приглашаем на Red Hot Chili Apples — бесплатный митап ЮMoney для iOS-разработчиков

Уровень сложностиСредний
Время на прочтение1 мин
Количество просмотров477

⏰ Митап пройдёт в Санкт-Петербурге в режиме офлайн и онлайн 29 августа в 18:30 по Москве.

Разработчики ЮMoney, Сбера и ВКонтакте поделятся своим опытом, а после докладов можно будет задать им вопросы.

Больше о докладах

Как не забросить свой пет-проект. Мой кейс запуска приложения в App Store

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров6.2K

Когда я только искал свою первую работу джуна iOS разработчика, я начал делать пет-проект — умный будильник. Тогда основной целью было просто положить его в портфолио, использовать на собеседованиях, ну а параллельно практиковаться и развивать свои навыки.

Я рассчитывал выпустить его месяца за три… Но проект удалось релизнуть лишь спустя 4 года

Рассказываю что помогло запустить MVP когда мотивация давно закончилась. Делюсь быстрым и простым техническим стеком для микро команд и советами для начинающих индихакеров.

Читать далее

Мобильная разработка за неделю #502 (14 — 20 августа)

Время на прочтение4 мин
Количество просмотров2.1K
В новом дайджесте своя прошивка с нуля и поваренная книга SwiftUI, автоматическая публикация приложений и работа в Apple без Leetocde и колледжа, защита простых архитектур, самые быстрорастущие приложения августа, стартовый набор для ИИ-города и многое другое.

В нашем Telegram-канале Mobile Insights, еще больше материалов для мобильных разработчиков, а в IT Insights — об интересном коде и технологиях. Подключайтесь!

Читать дальше →

UICollectionView внутри UICollectionView программно

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров3.6K

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

Ну что, приступим, для начала разберемся с основной коллекцей во ViewController

Читать далее

Про многопоточность 3. Operation

Уровень сложностиСредний
Время на прочтение20 мин
Количество просмотров8.7K

Добро пожаловать! Если вы уже читали предыдущие статьи из этой серии, то наверняка знакомы с многопоточностью в iOS. В этой части мы погрузимся в мир операций и очередей, изучим их особенности и поймем, в каких случаях целесообразно прибегать к классу Operation, а когда достаточно функциональности, предоставляемой GCD.

Читать далее

Уровни доступа в Swift: Как Держать Всё под Контролем

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров4.3K

В программировании, чтобы создать надежные, безопасные и удобные в обслуживании приложения, крайне важно уметь контролировать, что становится видимым и как можно получить к этому доступ. И вот здесь на сцену выходят уровни доступа, подобно страховому полису для нашего кода: мы сами определяем, кто получает доступ к «игре», а кому вход закрыт.

Давай разберёмся подробнее, что это такое и как применять.

Читать далее

Создание компонентного вью SensorView

Время на прочтение6 мин
Количество просмотров1K

Когда я занимался разработкой своего последнего проекта, я столкнулся с задачей создания удобного и интуитивно понятного интерфейса для отображения и переключения данных с физических датчиков по анализу качества окружающей среды.

Читать далее

Приложение Rocket Launch c GraphQL-запросами через Apollo

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров1K

Всем привет!

Сегодня мы создадим учебное приложение для iOS с использованием бэкенда на GraphQL при помощи библиотеки Apollo — оно имеет несложный двухэкранный интерфейс, который не будет сильно отвлекать нас от работы с сетью. Приложение будет отобрать прошедшие и грядущие запуски разных кораблей SpaceX. Приложение под названием Rocket Launch будет предоставлять информацию о миссиях, включая даты и места. Для создания Rocket Launch мы будем использовать UIKit без Сторибордов. В этом материале я дам код целиком с пояснениями, но оставляю ссылку на репозиторий со своим проектом.

Читать далее

Мобильная разработка за неделю #501 (7 — 13 августа)

Время на прочтение4 мин
Количество просмотров2.1K
В этом выпуске ошибки в модуляризации и декларативные навигации, современная архитектура и эмпатичное проектирование, разработка мультиплеерной игры, гид по пустым состояниям, чтение книг с переводом и многое другое!

В нашем Telegram-канале Mobile Insights, еще больше материалов для мобильных разработчиков, а в IT Insights — об интересном коде и технологиях. Подключайтесь!

Читать дальше →

Ближайшие события

Исчерпывающее руководство по настройке Jenkins под iOS в 2023 году

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров3.8K

На дворе 2023 год, и вот вы и ваша команда наконец решили отказаться от CI-пайплайна, которым вы пользовались, в пользу автономного Jenkins CI. Замечательно! В этой статье мы не будем разглагольствовать о плюсах и минусах использования одних CI-систем в сравнении с другими, а сразу сосредоточимся на том, как настроить полностью функциональную среду Jenkins CI для iOS.

Читать далее

Виджеты на iOS и Android: что учесть при проектировании и дизайне

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров3.7K

С выходом iOS14 в 2020 году виджеты стали популярным дополнением для мобильных приложений. Сейчас их используют компании из банкинга, спорта, ритейла и других сфер. Дизайнер интерфейсов red_mad_robot Юля Гранкина решила разобраться в процессе их проектирования, особенностях дизайна и различиях платформ iOS и Android.

Читать далее

Apple не хочет, чтобы люди создавали приложения для собственного удовольствия

Время на прочтение2 мин
Количество просмотров37K
Apple всё равно взимает с разработчиков платеж в 99 $, даже если они не хотят размещать свой приложение на Appstore.

Создание приложений – одно из моих увлечений. Часто эти приложения выполняют какую-то задачу, которая актуальна только для меня. Например, два года назад я написал приложение на Android и связал его со своим кастомным сенсором для почвы, чтобы получать уведомления о том, что мое комнатное растение нуждается в поливе.

В этом году я начал изучать BLE при помощи микроконтроллера Nordic NRF52. Мне захотелось создать приложение-компаньона для iPhone, которое выводило бы мне показания сенсора. Всё это затевалось исключительно для личного употребления и самообразования; я не предполагал, что приложением будет пользоваться кто-то, кроме меня.

К моему разочарованию, спустя неделю после загрузки приложения на айфон оно перестало открываться!
Читать дальше →

Как мы улучшаем курс по iOS-разработке — и зачем вносить изменения сразу после запуска

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров921

Привет! Это команда Практикума. Прошлым летом мы запустили 10-месячный курс «iOS-разработчик» — и уже внесли в программу более 50 улучшений. В этом материале мы рассказываем, почему меняем курсы сразу после запуска, что именно дорабатываем и по каким причинам не скрываем, что доделываем что-то после релиза. Начнём!

Читать далее

SwiftData: быстрый старт

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров15K

Apple представила на WWDC23 большое количество новых вещей для разработки. Хранения данных — не исключение. SwiftData - это новый фреймворк для работы с хранением данных внутри приложения, который представляет собою новый уровень абстракции над уже существующем механизмом - CoreData.

Читать далее

Насколько Swift удобен для DSL?

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров3.1K

SE-0195 Dynamic Member Lookup
SE-0216 Dynamic callable
SE-0253 CallAsFunction
Исходя из мотивационной секции proposal, @dynamicCallable и @dynamicMemberLookupбыли добавлены для интеропа с динамическими языками, такими как Python, JavaScript. Но их использование этим не ограничивается.

Читать далее

Мобильная разработка за неделю #500 (31 июля — 6 августа)

Время на прочтение5 мин
Количество просмотров2.6K
В новом юбилейном выпуске создаем дефолтные аватары и исследуем TipKit, пишем полностью нативное GUI-приложение без Android и проходим Android-собеседования, изучаем правила создания красивых интерфейсов, побеждаем серверные подсказки, исследуем мобильный опыт и многое другое!

В нашем Telegram-канале Mobile Insights, еще больше материалов для мобильных разработчиков, а в IT Insights — об интересном коде и технологиях. Подключайтесь!

Читать дальше →