Swift Tips
3.28K subscribers
457 photos
16 videos
2 files
435 links
Ежедневные советы, подсказки, лайфхаки и статьи по iOS и Swift.

По всем вопросам: @artemiygreg
Найти проект: @ios_job
Download Telegram
What's New in Swift 5.9

🟢Convenience Async[Throwing]Stream.makeStream methods
🟢if and switch expressions
🟢Importing forward declared Objective-C interfaces and protocols
🟢DiscardingTaskGroups
🟢Add sleep(for:) to Clock
🟢Custom Actor Executors
🟢Expression Macros
🟢Attached Macros
🟢Freestanding Declaration Macros
🟢Package Manager Support for Custom Macros
🟢Value and Type Parameter Packs

Читать (En)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥21👍43
What’s new in SwiftUI for iOS 17

Про доступность visionOS SDK вы уже и так знаете, нет смысла писать. Вместо этого, предлагаю ознакомиться с обновлениями SwiftUI в iOS 17.

Scroll view improvements

• How to make a ScrollView snap with paging or between child views
• How to disable ScrollView clipping so contents overflow
• How to make a ScrollView start at the bottom
• How to indent the content or scroll indicators in a ScrollView
• How to make views scroll with a custom transition
• How to flash the scroll bar indicators of a ScrollView or List
• How to enable vertical page scrolling

Drawing and animation improvements

• How to add Metal shaders to SwiftUI views using layer effects
• How to dynamically adjust the appearance of a view based on its size and location
• How to animate SF Symbols
• How to run a completion callback when an animation finishes
• How to create multi-step animations using phase animators
• How to combine shapes to create new shapes
• How to adjust the size of a view relative to its container

More welcome improvements

• How to add in-app purchases in SwiftUI
• How to add an inspector to any view
• How to detect and respond to key press events
• How to control which NavigationSplitView column is shown in compact layouts
• How to add haptic effects using sensory feedback
• How to tell the user that no content is available
• How to read the red, green, and blue values from a Color
• How to make buttons that repeat their action when pressed

Читать (En)
9🔥5👍1
Многопоточность в iOS-разработке

Разбор с примерами, различных инструментов для мнопоточки в iOS(основы, особенности, проблемы, что в каких случаях использовать и т.д.).

• Основы многопоточности
• Многопоточность в Swift
• Использование pthread и NSThread
• Grand Central Dispatch в Swift: углубленный
обзор с примерами
• NSLock в Swift: управление доступом к общим
ресурсам
• Await и async в Swift: новые горизонты
многопоточности

Читать (Ru)
🔥25👍64
Как катить фичи без релизов

Две части из цикла «Как катить фичи без релизов».

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

Во второй части чуть больше технических деталей как это всё настраивается, конфигурируется и превращается в верстку с учётом дизайн-системы.

• Часть 1. Про виджеты
• Часть 2. Про низкоуровневый Server Driven UI
🔥122👍2
Немного о перечислениях в Swift

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

• Singleton enums
• No-payload strategy
• Single-payload strategy
• Many-payloads strategy
• Resilient strategy

Читать (Ru)
🔥135👍2😁1💩1
Forwarded from Mobile Native ️️
Git.pdf
641.1 KB
Ловите шпаргалку по Git
👍21🔥111
Макросы в Swift

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

Во второй статье разбирается как устроен под капотом макрос #Preview.

👉 Макросы в Swift
👉 Изнутри: Swift макрос — #Preview
👍8🔥5🤔2💩1
SOLID в Swift. Простое объяснение с примерами для начинающих

Статья для начинающих с простыми примерами применения SOLID в Swift.

Читать (Ru)
🔥142👍2🤡2🥱2💩1
50+ SwiftUI Open Source Projects With Guided Tutorials

Большая подборка open-source проектов на SwiftUI. Графики, анимации, пикеры, вьюверы, виджеты, кастомные компоненты, готовые проекты и прочее.

Читать (En)
11🔥4👍1
Полезные iOS-инструменты для дебаггинга

Большая статья с разбором популярных инструментов для дебаггинга(Code, View, Memory, Network, etc).

• print(...)
• LLDB
• Debug View Hierarchy
• Slow Animations
• Color Blended Layers
• Reveal
• Memory Graph Debugger
• Debug Navigator
• Charles
• Postman
• Network Link Conditioner
• Time Profiler
• Animation Hitches

Читать (Ru)
🔥154👍4💩1
Модульное тестирование в iOS: всё, что надо знать. Часть 2

2-часть из цикла статей «Модульное тестирование в iOS».

В статье рассказывается про «чистые» тесты и виды имитирующих объектов, подменяющие реальные на время теста.

Читать (Ru)
🔥72💩2👍1👏1
.xcstrings в Xcode 15

С приходом Xcode 15, локализация и плюрализация строк были значительно улучшены, теперь там один файл xcstrings – каталог, который хранит в себе все ключи и строки как для переводов на другие языки, так и для переводов для множественного числа.

Для старых версий iOS всё это бэкпортится путём разбиения xcstrings на .strings и .stringsdict, соответстенно по капотом используется старый формат.

В статье как раз и разбирается работа с xcstrings в Xcode 15.

Читать (Ru)
👍10🔥52💩1
Идеальное собеседование. Мой опыт тимлида, как нанимать с помощью бизнес-кейсов

Статья про один из вариантов проведения собеса с помощью бизнес-кейсов. В процессе такого собеса определяется способность разработчика решать проблемы бизнеса, hard и soft скиллы, креативное мышление и способности быстро принимать решения.

👉 Планирование разработки
👉 Начало разработки
👉 Выкладка в магазин приложений
👉 Набираем команду
👉 Кодревью

Может быть полезно как интервьюерам, так и кандидатам.

Читать (Ru)
🔥9💩32👍2🆒1
Разбираю Swift Runtime на детали

Статья с разбором Swift Runtime.

👉 Что такое Runtime?
👉 Где появляется Runtime и зачем?
👉 Как происходит взаимодействие?
👉 Процесс компиляции

Читать (Ru)
👍11🔥6💩32👌1
Логи Xcode — читаем самостоятельно?

Еще одна статья про логи, в которой разбирается как и где Xcode хранит свои логи, что такое SLF0 и как все это читать.

Читать (Ru)
👍7🔥2💩2🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
Animating Carousel Transitions in SwiftUI

Пример реализации карусели с анимацией на SwiftUI.

👉 Painting of The Day
👉 The Problem – How to animate Carrousel Transitions in SwiftUI?
👉 SwiftUI Animated Carrousel Code Example
👉 Summary – Animating View Transitions in SwiftUI

Читать (En)
👍6🔥2👏1💩1🤡1
Sticky Header в SwiftUI

Простой гайд по реализации Sticky Header на SwiftUI.

Код на GitHub → HabrHeader

Читать (Ru)
👍103🔥3💩1🤡1
Unit Testing and UI Testing in iOS

Руководство по настройке и написанию Unit/Ui тестов.

• Configure Unit and UI tests in new and existing projects
• Understand the life cycle of the test case
• Add a Unit test case with an example
• Add a UI test case with an example
• Best Practices
• Conclusion

Читать (En)
🔥102👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Animate background with color gradient in SwiftUI

Пример реализации анимированного, градиентного бекграунда на SwiftUi.

Читать (En)
4👍2🔥2
Исчерпывающее руководство по настройке Jenkins под iOS в 2023 году

Подробный гайд по настройке Jenkins под iOS.

👉 Установка зависимостей
👉 Настройка джобов
👉 Настройка вашего Jenkinsfile
👉 Зависающие сборки
👉 Заключение

Оригинал тут: Step-by-Step Jenkins Setup for iOS in 2023 | Ultimate Guide

Читать (Ru)
6🔥3💩2🤡2👍1