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

По всем вопросам: @artemiygreg
Найти проект: @ios_job
Download Telegram
Идеальное собеседование. Мой опыт тимлида, как нанимать с помощью бизнес-кейсов

Статья про один из вариантов проведения собеса с помощью бизнес-кейсов. В процессе такого собеса определяется способность разработчика решать проблемы бизнеса, 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
iOS Developer Roadmap 2023

Не знаю насколько актуально, но обратить внимание в любом случае можно, особенно начинающим.

Роадмап по iOS с подборкой ресурсов по некоторым темам.

Читать (En)
👍19👎64🔥3
Про многопоточность. Operation

Еще один материал про многопоточку, в частности про Operation.

👉 Вступление
👉 Operation
👉 BlockOperation
👉 OperationQueue
👉 Operation vs GCD
👉 Заключение

У автора есть еще две статьи про Thread и GCD – раз и два, только они от 2021 года.

Ссылки на все части

• Thread
• GCD
• Operation

Читать (Ru)
🔥95👍3💩1
UICollectionView внутри UICollectionView программно

Статья с примером реализации вложенного CollectionView программно.

Код на GitHub → Collection-view-challenge

Читать (Ru)
👎8👍4💩4🔥2🤡21👏1
Server-Driven UI using SwiftUI

Статья с примером, как можно спроектировать вьюхи, логику, рендеринг на SwiftUI для реализации Server-Driven UI.

👉 Window
👉 Container
👉 Layout
👉 Content View

Читать (En)
🔥83👍3
Swift и Objective-C в одном SDK. Стерпится, слюбится

Опыт итеративного переписывания проекта с Objective-C на Swift, с поддержкой двух языков одновременно.

Статья будет полезна тем, кто разрабатывает SDK, используя оба языка, а также тем, кто хочет переехать с Objective-C на Swift.

👉 Что предлагает Apple?
👉 Какие существуют варианты?
👉 Компромисс

Читать (Ru)
🔥8💩31👍1
Forwarded from Mobile Native ️️
Что посмотреть на выходных.

Накопилась очередная пачка различных видосов – туториалы, доклады с конференций и т.д.

Android

• Top App Bar (Toolbar) - UX With Material3
• Navigation Rail - UX With Material3
• Navigation Drawer - UX With Material3
• Bottom App Bars - UX With Material3
• Selection UI Components (Checkboxes, Switches, Radio Buttons) - UX With Material3
• Live Edit for Jetpack Compose
• Ускоряем сборку за счёт миграции с kapt на ksp
• Универсальные пуши для Android. FCM, HMS и RuStore в одном месте
• Упрощаем и укрощаем UI для Android с помощью аннотаций
• Mock Junior Android Developer Interview
• Как узнать кто вызывал функцию? StackTrace стек вызовов в Kotlin & Java
• Аналитика многомодульных проектов
• Архитектура сложных клиентских приложений
• Как избежать хаоса: навигация как отдельный логический уровень

iOS

• Как жить с двумя провайдерами карт в крупном проекте
• Swift-уроки: ElasticAnimation / Эластичная анимация
• Декларативная навигация в iOS-приложении
• Кто ты, SwiftData
• GC, ARC, RAM. Часть 3. iOS
• iOS 17 Data Flow with Observation Framework
• Xcode Structured Logging
• Accessibility in Swift: Dynamic Colors
• SwiftUI: Placing Tab Bar Over Sheet’s | Apple Map’s Bottom Sheet
• Animated Custom Button - Keyframes API
• See How To Store An Image In SwiftData
• SwiftUI Dynamic Sheet Height - iOS 17
• I converted a Core Data to SwiftData
👍81🔥1
Расширенное управление памятью с помощью Unsafe Swift

В статье рассматриваются расширенные возможности Swift по управлению памятью посредством использования его «небезопасных» конструкций, таких как UnsafeMutablePointer и UnsafeRawPointer.

• Роль Unsafe Swift
• Меры предосторожности и предостережения
• Соединение Swift и C
• Управление указателями для вызовов функций C
• Навигация по памяти с помощью указателей
• Работа с необработанными данными
• Создание пользовательских буферов
• Восстановление памяти и управление ресурсами
• Создание связанного списка с нуля
• Сравнение безопасных и небезопасных подходов
• Заключение

Читать (Ru)
👍6🔥42💩1
Forwarded from Mobile Native ️️
Основы алгоритмов

Если пропустили, тут Академия Яндекса выпустила Хенбук – цифровой учебник, который содержит теорию и практические задания с автопроверкой.

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

👉 Введение
👉 Алгоритмы и сложность
👉 Техники проектирования алгоритмов
👉 Решение практических задач по программированию
👉 Разминка. Последовательные алгоритмы
👉 Жадные алгоритмы
👉 Разделяй и властвуй
👉 Динамическое программирование
👉 Основные структуры данных
👉 Графы

Читать (Ru)
🔥17👍53💩3🤡2
10 quick tips to increase your iOS code quality

Несколько небольших советов, которые помогут улучшить качество кода.

• Use the extension pattern to group chunks of code
• Define a maximum number of lines per file
• Create variables and functions with descriptive names
• Take advantage of typealias
• Take care of the “no-happy path”
• Review force unwrap & indexes
• How do you handle sensitive information?
• Avoid code duplication
• Avoid hard-coding messages directly in the code
• Take advantage of pre-built-in features

Читать (En)
11👍3🔥2😁1
Шейдеры в iOS для начинающих

В iOS 17 пришло значимое обновление — теперь добавить шейдер можно к любой View, а значит, вся интеграция стала проще и растровых эффектов появится больше.

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

Читать (Ru)
👍15🔥31💩1
Jailbreak checker — как обезопасить свое iOS-приложение

Статья о том, как можно обезопасить своё iOS-приложение на Jailbreak-нутом девайсе.

• Кто такой этот ваш Jailbreak?
• Зачем его отслеживать?
• Как же его отследить?
• Как предупредить пользователя и обезопасить приложение?
• Как теперь все протестить?

Читать (Ru)
🔥9👍41🤔1💩1
3 Cool new features of Swift 5.9

Статья с обзором нескольких новых фич из Swift 5.9.

🟢Using if and switch as expressions
🟢Parameter Packs
🟢Macros

Вот тут можно почитать про whats new in Swift 5.9.

И еще несколько полезных ссылок

👉 Value and Type parameter packs in Swift explained with examples
👉 Hidden feature: if and switch

Читать (En)
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍3🔥2🤩1
Дебаггинг приложения без Xcode. Зачем?

Статья от Альфа-Банк про то, как они делали свой дебаг-инструмент и научились дебажить приложение без Xcode, тем самым упростив жизнь себе и тестировщикам.

Читать (Ru)
🔥9👍2💩21