Обновить
37.74

iOS *

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

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

SwiftUI уроки (часть 4)

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

Понимание ScrollView и создание UI карусели

ссылка на 3ю часть

В этом уроке мы разберемся с таким элементом как ScrollView для создания длинных прокручивающихся полотен.

Читать далее

Cocoapods pod install без интернета на CI при использовании Tuist

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

Для успешного выполнения команды pod install менеджера зависимости Cocoapods нужен доступ в интернет, но на раннерах в целях безопасности для continuous integration может отсутствовать сеть. В некоторых случаях, например, при использовании инструмента Tuist в проекте, исполнение pod install на CI необходимо для интеграции Подов в проекты. В этой статье рассмотрим, как можно легко с помощью нескольких команд возобновить успешное выполнение команды pod install на раннерах без выхода в интернет.

Читать далее

Новые краски Vivaldi для iOS

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

Пришла весна и новыми красками заиграла версия Vivaldi 6.6 для iOS. Благодаря последнему обновлению у вас появились новые способы персонализировать внешний вид вашего браузера — именно так, как вы этого хотите.

Читать далее

Как и где практиковаться начинающему мобильному разработчику

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

Всем привет! Меня зовут Миша Вассер. Я руковожу мобильной разработкой в AGIMA, а ещё я наставник и автор на курсе «Android-разработчик» в Яндекс Практикуме. Помню то время, когда я начинал заниматься разработкой, — материалы были в основном на английском, а специализированных курсов было маловато, поэтому приходилось всё искать и практиковаться самостоятельно. 

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

Читать далее

Мобильная разработка за неделю #529 (4 — 10 марта)

Время на прочтение4 мин
Количество просмотров1.6K
В новой еженедельной подборке виджеты и изоляция в iOS, адаптация UI/UX для людей с проблемами зрения, сложно ли быть программистом-инженером сейчас, весенние выпуски маркетологов в мобайле и многое другое. Подключайтесь!

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

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

По граблям, по граблям. Пишем отзывчивый интерактивный виджет IOS 17

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

Всем привет! На связи Анна Жаркова, руководитель группы мобильной разработки в компании Usetech. В 2023 году на WWDC Apple представили много нового и интересного API, среди которого были долгожданные интерактивные виджеты, реагирующие с помощью механизма AppIntent на нажатия и запускающие логику без переключения в основное приложение. Однако, как показывает практика, не все так просто и красиво, как Apple показывают на демонстрационных сессиях, а от беты до релиза что-то в API обязательно ломается или внезапно меняется.

Поэтому сегодня мы поговорим, как с помощью Widget Kit iOS 17 и AppIntent сделать виджет не только интерактивным, но и рабочим и отзывчивым в моменте, и обойти подводные камушки, оставленные разработчиками API. Рассматривать будем на примере самописного приложения для заметок TODO.



Для тех, кому не терпится, или кто хочет читать и смотреть код одновременно, сам код

Помимо обработки событий из самого виджета в таких приложениях также важно синхронизировать состояние между таргетами без потерь и задержек. Данные (наши тудушки и их состояние) мы сохраняем локально. Для этого используем инструмент для хранения данных SwiftData. Данный фреймворк также был представлен на WWDC 2023, и при его использовании в разных таргетах можно встретить тоже много подводных камней.
Читать дальше →

SwiftUI уроки (часть 3)

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

Ссылка на часть 2

Создаем UI с помощью стеков

Стеки в SUI похожи на стеквью в UIKit. Если комбинировать горизонтальные и вертикальные стеки можно создать комплексный UI для приложения, который будет отлично адаптировать под различные размеры экранов и типы устройств. В UIKit основное средство создания UI — это auto layout который применяется для правильного отображения вьюшек на экране. Зачастую для начинающих разработчиков автолейаут кажется чем‑то очень сложным как для применения так и обучения, так что если вы уже переходите на SUI — есть хорошие новости, автолэйаут вам больше не потребуется. Вы будете оперировать такими компонентами как VStack, HStack, ZStack.

Читать далее

Emcee — тест-раннер для запуска автотестов на Android и iOS: как работает, и какие проблемы помогает решить

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

Денис Веренцов, Android-инженер Авито, рассказал, как работает инструмент для параллельного запуска мобильных автотестов Emcee, как развернуть его на своей инфраструктуре, или запустить в облаке, чтобы прогонять тесты прямо в браузере. 

Читать далее

Оптимальный архитектурный шаблон iOS-приложения

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

В статье описывается оптимальный архитектурный шаблон большого iOS-приложения на Swift, выступающего преимущественно тонким клиентом. Основной упор делается на применение чистой архитектуры. Статья предназначается как новичкам, так и опытным программистам. Для удобства навигации имеется оглавление.

Читать далее

Continuations для взаимодействия асинхронных задач с синхронным кодом

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

В Swift были представлены новые функции, которые помогают нам адаптировать старые API в стиле completionhandler к современному асинхронному коду.

Например, эта функция возвращает свои значения асинхронно, используя обработчик завершения:

Читать далее

Мобильная разработка за неделю #528 (26 февраля — 3 марта)

Время на прочтение4 мин
Количество просмотров2.6K
В новом выпуске возврат от SwiftUI к UIKit и машинное обучение на устройствах, стабильная Iguana и гибридный интерфейс в Wear OS, деплой Flutter-приложений, сложный повтор в мобильном календаре, весенние маркетологи в мобайле и многое другое. Подключайтесь!

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

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

Наш опыт Android- и iOS-разработки в проекте

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

Посмотрим на текущую ситуацию с разработчиками Android и iOS‑приложений. Обсудим варианты разработки мобильных приложений. Разберемся, как мы в стартапе NFCKEY работаем в этом направлении. Затронем особенности, которые возникают в связи с условиями стартапа и IoT‑тематикой проекта. Ответим на вопрос: «Сложно ли переучиться и пойти в сферу мобильной разработки?».

Статья специально написана простым языком, где многие вещи объясняются на пальцах, чтобы материал был понятен для всех и давал представление о сфере в целом, а не только о тонкостях разработки.

Главная задача статьи — объяснить для начинающих ключевые особенности мобильной разработки, а для людей, имеющих опыт — поделиться сложностями перехода в сферу мобильных устройств и возможными направлениями в ней. На примере функций нашего приложения продемонстрируем, какие задачи решаются в мобильной разработке.

Читать далее

SwiftUI уроки (часть 2)

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

Если вы уже ознакомились с первой частью, то у вас есть базовое понимание что из себя представляет SUI и знаете как отобразить текстовый контент, в этой части давайте познакомимся с элементом отображающим изображения.

Читать далее

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

Как работает async/await в Swift

Уровень сложностиСложный
Время на прочтение27 мин
Количество просмотров9.5K

Функция async/await в Swift появилась в iOS 15, и я полагаю, что на данный момент вы уже знаете, как ее использовать. Но задумывались ли вы когда-нибудь о том, как работает async/await изнутри? Или, может быть, почему выглядит и ведет себя именно так? Или даже почему вообще была представлена?

В типичной для SwiftRocks манере мы углубимся в компилятор Swift, чтобы ответить на вопросы о том, как работает async/await внутри. Это не инструкция по использованию async/await, а глубокое погружение в историю и реализацию этой функции, чтобы понять, как она работает, почему она работает, чего можно добиться с ее помощью и, самое главное, какие нюансы следует учитывать при работе с ней.

Читать далее

Пути внедрения поддержки скриптов в Dart/Flutter

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

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

«Бред!»- ответят скептики. «Выкладывай!» - ответят энтузиасты.

В рамках данной статьи я предлагаю вам рассмотреть возможные пути для интеграции функционала выполнения скриптов в ваши Dart/Flutter приложения.

Читать далее

Самый простой CI/CD пайплайн для flutter приложения с Codemagic. Часть 2

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

В предыдущей статье мы рассмотрели, как организовать самый простой CI/CD для сборки под Android через Codemagic.

Сегодня рассмотрим, как сделать похожее для iOS. Я также приведу небольшие хитрости, которыми иногда можно пользоваться, но с большой осторожностью.

Читать далее

Task и structured concurrency в swift

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

В данной части из серии статей про Swift concurrency мы подробно остановимся на сущности под названием Task и разберем на примерах, как с ней работать. Также поговорим про structured concurrency. Что это такое, как это понятие связано с Task и почему механизмы языка async/await structured, но не concurrent.

Помимо этого, мы разберем инструменты и механизмы structured concurrency. Среди них async let, Task hierarchy и Task cancellation. И, как обычно, не оставлю вас без примеров применения этого букета конкуррентности.

Читать далее

Помощь на старте: 10 полезных ссылок для начинающих iOS-разработчиков

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

Всем привет! Меня зовут Денис Сурков, я iOS-разработчик в компании «Мой спорт» и наставник на курсе «iOS-разработчик» в Яндекс Практикуме.

В этой статье хочу поделиться ресурсами и советами, которые помогали мне в начале карьеры. Я рекомендую их студентам, а многими из них сам пользуюсь до сих пор.

К подборке

Мобильная разработка за неделю #527 (19 — 25 февраля)

Время на прочтение4 мин
Количество просмотров1.8K
В нашем новом еженедельном выпуске приложение для Apple Vision Pro за 8 дней и анимированные переходы, Android 15 для разработчиков и делегаты в Kotlin, гироскопический параллакс, разработчики мобильных приложений в 1С и многое другое!

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

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

SwiftUI уроки (часть 1)

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

В чём особенность этих уроков?

Основаны на книге "Mastering SwiftUI" от Appcoda: Мы берем за основу материал этой книги, но не слепо следуем ей.

Интерпретация и перевод: Мы адаптируем материал книги для русскоговорящей аудитории, делая его более понятным и удобным для восприятия.

Для начинающих и опытных: Эти уроки подойдут как тем, кто только начинает изучать SwiftUI, так и тем, кто хочет узнать что-то новое об этом фреймворке.

Чего вы можете ожидать?

Пошаговое изучение SwiftUI: Мы будем проходить все основные темы, от простых до сложных.

Практические примеры: Вы сможете закрепить полученные знания, выполняя практические задания.

Присоединяйтесь к этой серии!

Читать далее