
С недавних пор заинтересовался электронными книгами. Причина проста – экономия времени и места. Волею случаю ко мне попала электронная книга Onyx Boox Edison с довольно крупным сенсорным экраном диагональю 7,8” и подсветкой.
User
С недавних пор заинтересовался электронными книгами. Причина проста – экономия времени и места. Волею случаю ко мне попала электронная книга Onyx Boox Edison с довольно крупным сенсорным экраном диагональю 7,8” и подсветкой.
Рассмотрим, как реализовать ползунок для переключения между страницами с красивой анимацией.
Меня зовут Семен, я занимаюсь автоматизацией тестирования мобильных приложений в hh.ru, и сегодня я расскажу о том, как писать автотесты под iOS.
Быстрые регрессы, низкий time-to-merket, счастливые пользователи, у которых нет багов — для всего этого нам нужны автотесты. Наше мобильное приложение работает сразу на двух платформах, и мы пишем автотесты для каждой из них.
В этой статье мы расскажем про принципы безопасной работы с переключателями функционала – Feature Toogles:
— Что из себя представляют переключатели функционала и для чего их использовать.
— Какие проблемы возникают при неправильном использовании.
— Что такое «горячие» и «холодные» переключатели, и как они способны решить проблемы из прошлого пункта.
— Реализация «холодных» toogle-ов с помощью условной компиляции и линковки.
Наверняка статья не станет откровением для опытных разработчиков, но пригодится их младшим товарищам.
Продолжаем делиться своей практикой и переводами статей, которые могут быть полезны мобильному разработчику. В прошлых статьях мы разобрали инструменты тестирования и оптимизацию внедрения зависимостей в Android, а сейчас рассмотрим одно из нововведений в iOS 13 – поддержку многооконного режима и разделение AppDelegate (жизненный цикл и настройка приложения) и SceneDelegate (отображение приложения).
От автора: Ещё до Xcode 11, при создании нового проекта вы знали, что по умолчанию создаются некоторые файлы, такие как AppDelegate.swift, ViewController.swift и StoryBoard, а также некоторые другие. Но в Xcode 11 вы могли заметить, что наряду с файлами по умолчанию, указанными выше, создается новый файл – SceneDelegate.swift.
Сначала вам может быть непонятно, что это за файл, для чего он создан и как использовать SceneDelegate при разработке приложения. Но давайте попробуем понять разницу между AppDelegate и SceneDelegate.
Публикация, в которой идет речь о SwiftUI. Расчитана в первую очередь на разработчиков, которые только столкнулись со SwiftUI.
Ничего фантастического в публикации нет, примеры некоторых моментов, которые не столь очевидны и переодически вызывают вопросы.
Состав публикации
• Вычисляемые свойства
• Инициализация оболочек (оберток) свойств
• Собственные оболочки свойств
• Динамический предикат (NSPredicate)
• @ViewBuilder
• Optional(nil) != nil
Данная публикация является второй частью ранее опубликованного материала и рассчитана на ознакомление с ним. Ссылка на первую часть - Тыц
Вторая часть базового введения в классы и структуры языка Swift, для новичков в разработке под iOS. В публикации разобраны особенности типов, некоторые нюансы и отличия. Примеры составлены очень просто, доступно и таким образом, чтобы появилось больше мотиваций углубляться в язык. Параллельно освещаются другие возможности языка.
Если разобраться поглубже, язык Swift, является крайне продуманным и собрал в себе все лучшее из многообразия языков. Он быстрый, продуманный и очень оптимизированный. Каждый его инструмент, всегда преследует определенную цель и не всегда понятно с первого раза, какую же такую цель преследует изучаемый инструмент, но поверьте, цель есть всегда. Так и у протоколов есть масса возможностей и перекочевали они с Objective-C не просто так. Начнем мы с простого и плавно перейдем к более сложному (хотя протоколы весьма просты в усвоении и очень функциональны).
материал предназначен для новичков в разработке, которые только изучают язык и его возможности.
Обычно, в учебных пособиях, книгах и прочих источниках информации, class'ы объясняют примерно так «class это - описание объекта, а объект это экземпляр класса и бла бла бла», в принципе, это частично отражает суть конструкции, но называть class в рамках языка Swift, описанием объекта, будет не совсем корректно т.к. он же еще и представляет собой тип данных и вообще можно использовать классы как независимые, самодостаточные сущности, которые не требуют инициализации. Поэтому начинать со слов «Возьмем объект животного, пускай это будет кот...» я конечно же не буде. И вообще, давайте не будем о "сложном" т.к. материал рассчитан все же на новичков, а новички могут и не знать, что такое, эти ваши объекты и инициализации. В общем я считаю подобное (я про формулировку) не достаточно информативным, поэтому будем разбирать все на примерах с переходом от простого к более сложному. Попутно к ознакомлению с классами, мы будем так же рассматривать и другие возможности языка, но обо всем по порядку.
В iOS 15 наконец-то появился способ управления высотой модальных контроллеров. Но насколько гибкой и удобной получилась реализация от Apple? Чтобы разобраться, вспомним, как эта задача решалась раньше, рассмотрим возможности и поведение нового UISheetPresentationController, оценим перспективы его применения в реальных проектах.
Первое приложение со SwiftUI
- Шпаргалка по SwiftUI
- Некоторые нюансы работы SwiftUI
- PageView на SwiftUI
- WebImage на SwiftUI (AsyncImage)