iOS Broadcast
3.38K subscribers
1.72K photos
85 videos
985 links
Подборка новостей и статей для iOS разработчиков.

Новости Kotlin и мультиплатформы @kotlin_broadcast
Новости Android @android_broadcast
Реклама и прочее @ab_manager
Download Telegram
🐥 Swift Collections package
Каждый раз, когда я вижу в MR очередную реализацию "более эффективной" коллекции, хочется бить по рукам. Даже если есть практическая необходимость, уже есть официальный пакет с открытым исходным кодом для расширения набора коллекций Swift. Цель проекта - служить испытательным полигоном для новых структур данных, улучшить дизайн и исправить ошибки до официального включения в библиотеку. Например, есть реализации для двусторонней очереди (Deque), упорядоченного набора (OrderedSet), упорядоченного словаря (OrderedDictionary), BitSet, BitArray, Heap, TreeSet и TreeDictionary.
Особенности коллекций:

Deque:
• Упорядоченная коллекция с произвольным доступом и изменяемостью
• Поддерживает эффективные вставки и удаления с обоих концов
• Обеспечивает удобные операции по вставке и выталкиванию элементов

OrderedSet:
• Гибрид массива и набора
• Поддерживает уникальные элементы и эффективные тесты на принадлежность
• Использует массив для хранения элементов и хэш-таблицу для индексов

OrderedDictionary:
• Альтернатива словарю для эффективного доступа к элементам в различных позициях
• Вставляет новые пары ключ-значение за постоянное время
• Обеспечивает произвольный доступ к парам ключ-значение
#swift #collections
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
🐥 Ignine - статические сайты на Swift
У вас бывает желание сделать простой статический сайт? Иногда хочется быстро накидать, но не хочется напрямую все верстать руками. Кажется, я нашел себе нового фаворита взамен Hugo. Сначала я был максимально скептичен, обычный POC по DSL Swift <-> HTML, подобные решения уже были.
Ignite - это статический конструктор сайтов для разработчиков любящих Swift. Он предлагет выразительный и мощный API для создания красивых веб-сайтов. Ignite не пытается преобразовать пользовательский код Swift в HTML или просто преобразовать HTML-теги в Swift-код. Вместо этого он нацелен на использование синтаксиса, подобного SwiftUI, чтобы помочь вам создавать отличные веб-сайты, даже если вы не разбираетесь в HTML или CSS. Поддерживаются все основные концепты современного веба:
🟢Grid Layout
🟢Navigation
🟢Content
🟢Text
🟢Styling
🟢Theming
🟢Modifiers
Все это можно вживую посмотреть на демо странице. Что приятно, этот продукт используется для hackingwithswift а значит не только активно поддерживается, но и соответствует требованиям разработчиков. Чем вам не pet-проект на выходные 🥂
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍1
⚡️ Swift Build открыли исходники!
Врываемся в рабочую неделю с супер новостями, Apple выпускает Swift Build в опенсорс! Наконец, можно взглянуть на внутренние процессы сборки swift, включая поддержку Linux и Windows. Я не стал торопиться с публикацией на выходных и потратил немного времени чтобы понять что мы получили и что это значит для будущего Swift.
Cистема сборки отвечает за преобразование входных данных (исходников, ассетов, конфигураций) в выходные артефакты (библиотеку, утилиту, приложение). Swift Build отвечает за этап планирования сборки и за саму сборку внутри Swift Package Manager и Xcode. Работает поверх llbuild и интегрирован с компилятором Swift.

Чем отличается swift-build от xcodebuild и Xcode?
🟣Swift-build использует внутреннее представление проекта "PIF"
🟣xcodebuild преобразует пользовательские форматы конфигурации в PIF перед передачей в swift-build
🟣swift-build можно использовать для создания проектов Xcode, но сначала нужно преобразовать их в PIF с помощью xcodebuild

Что это значит для сообщества?
🟢Можно будет оптимизировать сборку под свой проект и протестировать в Xcode начиная с Xcode 16.2
🟢Появилась возможность интегрировать альтернативные IDE со Swift, VSCode или Cursor
🟢Swift становится универсальным языком и больше отвязан от экосистемы Apple
#swiftbuild
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11
Network Link Conditioner

Если вы тестируете свое приложение на девайсе или симмуляторе в условиях хорошей сети, вы точно пропускаете часть проблем, возникающих у пользователей. Сотовая сеть не везде хорошо ловит, а даже если ловит хорошо, может оказаться что вышка перегружена и LTE превращается в 3g. Для этого в iOS и MacOS существует отдельный инструмент "Network Link Conditioner". Вот как его включить:
🟢В macOS Sequoia он не входит в стандартный набор ОС, требуется установить Additional Tools for Xcode
🟢На устройстве Network Link Conditioner можно найти в разделе настроек разработчика, который появляется после активации

Главное-не забыть его выключить, ставьте 🎉 кто забывал. Я как-то неделю ходил с 3G
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉24👍4