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

Новости Kotlin и мультиплатформы @kotlin_broadcast
Новости Android @android_broadcast
Реклама и прочее @ab_manager
Download Telegram
📊 Цифровой рыночный индекс

Если кто-то вас спросит, почему стоит запускать пилот приложения сначала на iOS, можете смело ссылаться на эту аналитику:
🟡iOS остается ведущей платформой по монетизации, с доходом 27.5 миллиарда долларов.
🟡В 4 квартале 2024 года доход от покупок в приложениях (IAP) на iOS и Google Play достиг 39.4 миллиарда долларов, что на 13.5% больше, чем годом ранее.
🟡Доход от IAP в неигровых приложениях вырос на 28.2% и составил 19.2 миллиарда долларов.
🟡Доходы от мобильных игр стабилизировались после нескольких лет нестабильности, достигнув 20.2 миллиарда долларов.
🟡ИИ продолжает способствовать росту неигрового пространства, особенно в категории «Производительность».
🟡Доходы от IAP в приложениях с генеративным ИИ выросли на 179% по сравнению с прошлым годом.
🟡TikTok достиг рекордной отметки дохода в 1.9 миллиарда долларов
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥2
1️⃣2️⃣3️⃣4️⃣5️⃣ SE-0456 Добавили Span свойства в стандартныю библиотеку типов

Продолжаем разбираться с "упрощениями" в Swift. В этот раз, нас спасают от небезопасной работы с контейнерами и расширяют возможности использования новых типов Span и RawSpan в существующих контейнерах.

Мотивация
Многие типы контейнеров из стандартной библиотеки могут предоставлять прямой доступ к своему внутреннему представлению. До сих пор это можно было сделать только небезопасным способом. Стандартная библиотека предоставляет эту небезопасную функциональность с помощью функций, принимающих замыкания, таких как withUnsafeBufferPointer(), withContiguousStorageIfAvailable() и withUnsafeBytes(). У этих функций есть несколько недостатков, самый заметный из которых — использование небезопасных типов, что делает их неприемлемыми в средах с повышенными требованиями к безопасности. API, принимающие замыкания, также могут быть сложны в сочетании с новыми функциями и друг с другом. Эти проблемы решаются с помощью Span. Согласно этому предложению, совместимые типы стандартной библиотеки будут предоставлять доступ к своему внутреннему представлению через вычисляемые свойства типа Span и RawSpan.

#swift #evolution #proposals
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Grand Central Dispatch, Once and for All
Редкая рубрика, статья от подписчика @kfamyn. В ней простым языком разбираются все основы и тонкости работы с GCD.
🔵Основные понятия: поток, многопоточность, GCD, задача, очередь
🔵Типы очередей
🔵Приоритеты очередей
🔵Последовательные и параллельные очереди
🔵Способы выполнения задач: асинхронный, синхронизация
🔵Дедлоки
🔵Целый набор примеров задачек на понимание GCD 🔥

🔖Точно достойно добавления в закладки, для подготовки к собесам:
🔴Как GCD управляет выполнением задач в основной, глобальной и пользовательских очередях
🔴Различия между последовательным и параллельным выполнением
🔴Различия между синхронной (sync) и асинхронной (async) отправкой задач
🔴Большой набор примеров задач, которые дают на собесах

#GCD #basics
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
11
⚡️Вышел новый Mac Studio: это разрыв!

Топовое решение для дома, можно спокойно крутить серьезные нейронки и LLM локально
🟢M4 Max (уже в базе)
🟢В 3,5 раза быстрее, чем M1 Max
🟢В 2,6 раза быстрее, чем M1 Ultra
🟢В 16,9 раз быстрее генерация токенов LLM
🟢36 ГБ RAM в базе
🟢Thunderbolt 5 с пропускной способностью до 120 Гбит/с
🟢Предварительный заказ с 12 марта
🟢Цены: от 1999$ для США
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍82
iOS Broadcast
1️⃣2️⃣3️⃣4️⃣5️⃣ SE-0456 Добавили Span свойства в стандартныю библиотеку типов Продолжаем разбираться с "упрощениями" в Swift. В этот раз, нас спасают от небезопасной работы с контейнерами и расширяют возможности использования новых типов Span и RawSpan в…
🐥 Руководство по использованию unsafe в Swift
А вот и статья про то как работать с unsafe в Swift сейчас и в каких случаях это может вам понадобиться:

Когда использовать небезопасные указатели?
🔵Работа с BSD-сетями, OpenGL, POSIX.
🔵Оптимизация: создание ручного управления памятью.
🔵Низкоуровневое программирование: работа с буферами, сериализация/десериализация.
🔵Взаимодействие с Objective-C: наведение мостов между ARC и ручным управлением памятью.

Рекомендации по использованию небезопасных указателей:
🔵Минимизируйте использование небезопасных указателей.
🔵Используйте withUnsafe конструкции для корректного выделения и освобождения памяти.
🔵Проверяйте границы при арифметике указателей.
🔵Документируйте код и используйте стандартные библиотеки.
🔵Тщательно тестируйте код с использованием небезопасных указателей.

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

Выводы
🟡Использование unsafe в Swift требует высокой эффективности и контроля за управлением памятью.
🟡Важно не злоупотреблять прямыми указателями и документировать изменения.

#unsafe #swift
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32