EasySwift iOS🍏
3.02K subscribers
267 photos
8 videos
392 links
Все самое интересное в мире iOS разработки 🧑🏻‍💻

Предложить статью или новость: @EasySwiftBot

По всем вопросам обращаться к @itereznikov
Download Telegram
Сканер штрих-кодов в Озоне

Ловите статью про крутую прикладную задачу – сделать сканнер штрих-кодов. От выбора фреймворка и их сравнений до борьбы с багами, из-за которых пришось понижать его чувствительность.

P.S. Обожаю статьи про сканирования и камеры еще и потому, что одна из моих команд делает платежную умную камеру, и это безумно крутая фича, как технически, так и как продукт. Чего только стоит распознавание котов и собак, которое мы сделали в конце прошлого года 🌈🥰
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥82
Swift Method Dispatch

Бесконечно вечно можно делать три вещи: смотреть как горит огонь, смотреть как течет вода и читать статьи про диспетчирезацию в Swift'е.
👍14😁3
Первая статья про приложение для Vision Pro

Ребята из 2ГИС выпустили статью про историю и особенности создания приложения для нового девайса от эпла. Забирайте почитать на выходные.

А я уже успел потестить как и это приложение, так и сам Vision Pro, но пока думаю в каком формате об этом лучше рассказать. Можете накидать вопросов в тред или в личку.
👍13
Базовая статья про LLM

Не совсем по теме iOS, но натолкнулся и не могу не поделиться крутой статьей, которая раскрывает очень много аспектов вокруг LLM: от архитектур и отличий моделей, до настройки и запуска у себя на машине. В мире AI все очень быстро устаревает, но статья свежая и в ней достаточно актуальная инфа.

Забирайте на почитать на эти выходные.
👍51
Что такое Accelerate и с чем его едят

Мало кто вообще слышал об этом фреймворке и, возможно, никогда не придет к тому, чтобы его использовать. Но чем шире ваши знания, тем больше шансов, что когда у вас появится специфическая задача, вы выберете правильный инструмент для ее решения.
👍81🔥1
SwiftUI: архитектура State-Model-View

Статья про подход к построению простой архитектуры через @State для отображения состояний. Автор советует не переусложнять и практично использовать SwiftUI так, “как оно есть”.

Но мне кажется, что это будет нормально работать только на простых экранах. Если делать что-то сложнее чем экран с парой кнопок, то в этих состояниях уже можно будет утонуть.
👍5🔥21
Автоматизация сборки приложения

Тему CI/CD незаслуженно обходят стороной, не придавая ей должного внимания, а ведь от CI/CD напрямую зависит time to market — время, которое компания тратит на реализацию и выпуск продукта, а разработчики могут сосредоточиться на инновациях и улучшении функциональности приложений.

В статье подробный гайд по настройке автоматизации сборки приложения для AppStore, используя Jenkins, Fastlane, TestFlight
👍73🔥1
Порефлексируем немного?

Reflection в swift – механизм, позволяющий получать информацию о типе, публичных и приватных свойствах объекта в Runtime и работать с ними.

Иногда полезный механизм, но лучше сто раз подумать, перед тем, как использовать его для какой то конкретной фичи в проде.
9🔥1
Server-side Swift для AI задач

Вдруг вы решили, что вам срочно нужно приложение с фунцией классификации изображения или другой ML задачей и вы не хотите делать это на клиенте, а знаете только Swift, то для вас есть решение – Vapor + CoreML.

Не уверен, что можно масштабировать этот подход на большое количество пользователей, но сделать Proof of concept более чем можно и получить миллионы $ инвестиций
👍132🔥2
Шаблон Trigger в SwiftUI

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

Подойдет, например, чтобы заставить Scroll Indicator мигать, воспроизводить звук или выполнить анимацию при каком-либо действии. И все это можно делать как "шаблон", который можно переиспользовать на других UI элементах.
👍112
GraphQL в IOS разработке

Aльтернативный подход к разработке сетевого API, который позволяет более тонко настроить детали запросов, используя единственную конечную точку.

В отличие от традиционных RESTful API, GraphQL позволяет клиенту запросить только необходимые поля, минуя лишнюю информацию, что существенно уменьшает количество запросов в сеть и улучшает производительность приложения.
5👍3🔥3
Библиотека Apollo iOS для работы с GraphQL

В статье о том, как внедрить и использовать библиотеку Apollo iOS для создания приложений с поддержкой GraphQL.

Установка либы может показаться излишне сложной, но это тот случай, когда один раз разобрался и дальше просто применяешь на практике.
💯62
Визуализация данных в SwiftUI с Swift Charts

Swift Charts - фреймворк от Apple, который позволяет преобразовывать данные в информативные и настраиваемые графики и диаграммы с очень небольшим количеством кода.

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

Еще один плюсик в том, что теперь можно обойтись без использования сторонних зависимостей.
👍72
This media is not supported in your browser
VIEW IN TELEGRAM
GPT-4o 🧠

Open AI выпустили новую языковую модель GPT-4o (o” значит “omni”), которая:
- мощнее других моделей
- доступна для бесплатных пользователей
- мультимодальна омниканальна: может генерировать контент или понимать команды в виде голоса, текста или изображений. Вот это просто настоящая магия
- улавливает эмоции и может отвечать с разной интонацией 😯
- доступна уже сейчас

Было очень много слухов, что Apple подружились с OpenAI и Siri ждет новое воплощение. К сожалению, об этом на презентации не было ни слова. Но я определенно с нетерпением буду ждать эту «One more thing» на WWDC. Такую Siri я бы очень хотел видеть.

P.S. Вы только посмотрите, как круто она отвечает голосом, как быстро и уместно она это делает. Очень советую полистать видосы про возможности у них в анонсе, для меня это взрыв мозга.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🤯43💯1
Карантин UI тестов

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

Ребята из hh.ru рассказывают как они решали эту проблему с помощью добавления таких тестов в «карантинный» тест план.
🔥41
Function Body Macros

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

@Logged
func g(a: Int, b: Int) -> Int {
return a + b
}

Вместо привычного:

func g(a: Int, b: Int) -> Int {
log("Entering g(a: \(a), b: \(b))")
defer {
log("Exiting g")
}
return a + b
}

Попробовать можно уже сейчас, но для этого нужно скачать текущий снепшот и добавить:
 -enable-experimental-feature BodyMacros 


Ждем в будущих версиях Swift'а!
🔥18👎3
Getting to Know TextKit

Многие из вас работают со стандартными дизайн компонентами, такими как UILabel и их почти всегда хватает. Но как только нам нужно сделать что-то более сложное, более производительное или что-то очень кастомное, то на помощь нам приходят более низкоуровневые фреймворки, например, TextKit.

В недавно прошедшей конференции try! Swift Tokyo Conference 2024 как раз был доклаз про TextKit 2, его внутренности и для каких задач его можно использовать.
👍3🔥3🤯1
This media is not supported in your browser
VIEW IN TELEGRAM
New accessibility features

Apple показали новые возможности в сфере «доступности», которые появятся в iOS 18. Что меня прям очень радует:
- отслеживание взгляда пользователя, которое поможет людям с ограниченными возможностями взаимодействовать с контентом
- Music Haptics – новый способ прослушивания музыки для глухих или слабослышащих пользователей
- «Прослушивание нетипичный речи» – улучшение распознавания голоса пользователей с приобретенными или прогрессирующими речевыми заболеваниями
- «Vehicle Motion Cues» – это вообще magic для многих – обещают меньше укачивания при езде в машине и залипании в телефон

Очень круто, что многие эти вещи работаю «on-device» и благодаря вкладу Apple в AI: самое настоящее применение современных технологий для прикладных задач.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16
Подробно об акторах в Swift

Акторы в Swift 5.5 предназначены для безопасной обработки общего изменяемого состояния и предотвращения гонок данных при работе с многопоточностью.

В Swift акторами гарантируется изоляция данных: все изменяемые свойства и функции в акторе изолированы от прямого доступа извне.

В статье автор приводит примеры работы с акторами, подсвечивает основные моменты при работе с ними, а так же описывает процесс перехода на них.
👍7🔥3