Apple продолжает активно снабжать нас новыми версиями iOS и macOS, нещадно убирает старые и добавляет новые конструкции в фреймворке SwiftUI, который многие даже не видели в глаза. Зато сколько возможностей для написания новых статей открывается у разработчиков каждую неделю благодаря этому.
Интересно, побьют ли прошлогодний рекорд по количеству бета-версий и смогут ли до осеннего релиза довести библиотеку до ума, или повторится ситуация с UIKit и пачкой багов, которые уже не один год висят открытыми в радаре, а может мы получим API, который будет кардинально меняться каждый год? Зачем гадать на кофейной гуще, если можно расслабиться под палящим солнцем и подождать сентябрьской презентации.
Первые спикеры MBLT19
На MBLT19 выступят эксперты из Google, Coca-Cola, Free2Move и других крутых компаний. Они поделятся опытом построения успешных мобильных продуктов, расскажут о трендах, лучших практиках и провальных кейсах. По промокоду DigestMBLT — скидка для самых быстрых. 6 августа билеты подорожают.
SwiftUI changes in Xcode 11 Beta 5
С новым обновлением iOS 13 Apple внесла очередные изменения в SwiftUI и биндинги. Например, NSManagedObject из Core Data теперь поддерживает протокол ObservableObject.
Building a CLI tool using Swift and Vapor’s Console module
Пример построения инструмента для работы с Viper из командной строки с помощью Swift.
Introducing Container views in SwiftUI
Продолжение цикла статей о разработке на SwiftUI, в этот раз View будет выполнять роль контейнера для управления потоком данных и хранения состояния View, отвечающего за рендеринг.
SwiftUI and State Management Corrections
Протокол BindableObject в последнем обновлении был переименован в ObservableObject и переехал из SwiftUI в фреймворк Combine. Разбираемся с изменениями и смотрим на упрощение в новой реализации.
Layered Architecture to Design iOS Apps
Показан пример реализации приложения с использованием многослойной архитектуры. Описаны задачи каждого из слоев и способ взаимодействия между ними.
Xcode refactoring options explained with examples
Рефакторинг в Xcode: переименование классов и переменных, реализация недостающих кейсов в switch-выражении, работа с мультикурсором, а также подключение дополнительных плагинов для расширения базовых возможностей.
Rule-based logic in Swift
Реализация логики приложения с помощью описания набора правил, позволяющих обрабатывать URL-запросы, ошибки или управлять презентационной логикой в строгой и структурированной форме.
Use MKMapView with UIRepresentableView in SwiftUI
Очередной пример работы с SwiftUI, в этой статье разбор того, как сделать экран с картой и метками.
Exploring Different Behaviours in Swift Enums
Статья о подводных камнях при использовании enum’ов и о том, как эти подводные камни победить, используя паттерн ‘стратегия’.
SwiftUI Generic Image Loading
В этой статье автор задался вопросом, как без посторонних библиотек, используя SwiftUI и Combine, реализовать загрузку изображений.
Network Link Conditioner
Network Link Conditioner — инструмент для симуляции работы сети в различных условиях, позволяет изменять пропускную способность, потерю пакетов и задержки. Показан процесс установки, запуска и изменения базовых настроек.
Как UX-писатель помогает улучшить продукт
Мало нарисовать красивый дизайн, нужно ещё и убедиться, что тексты в нём соответствуют ожиданиям пользователей и компании. В этом рассказе описаны особенности работы UX-писателя.
Product Manager Metrics: Process is as Important as Formulas
Про метрики и снова немного про OKR.
Product Requirement Documents Must Die
Достаточно старая статья, но тем не менее актуальная для тех, кто еще пишет PRD (если есть такие любители).
3 things they won’t teach at Product Management school
Вещи, которым вас не будут учить на курсах продакта.
Swift Quiz in Review
Каждую неделю objc.io публикуют в своем твиттере загадки по Swift. В статье разбраны самые интересные из них и показана статистика по правильным ответам.
Should You Create An MVP Before Creating An App?
Иногда компании слишком сильно увлекаются планированием инфраструктуры и возможностями будущего приложения, а разработчики слишком щепетильно продумывают архитектуру для программы, которая, возможно, не получит никакого развития после старта, если идея окажется не востребованной на рынке. Оправдан ли такой подход или стоит реализовать базовые возможности в MVP-версии и зарелизиться?