bootg.com »
United States »
iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT » Telegram Web
Послушали дискуссию мобильных разработчиков из Яндекса в формате ютуб-шоу 1+1.
Из особо интересного – размышления о фреймворках.
Например Flutter – хороший фреймворк, особенно, если вам нужно быстро и дешево получить несколько платформ сразу, в том числе и web. Но он не всегда корректно поддерживается iOS, а еще недружелюбен к вносимым изменениям. Можно согласиться с тем, что React Native все же более гибок в этом плане.
Еще в видео обсудили особенности работы над супераппами, mobile разработчикам рекомендуем посмотреть целиком.
Из особо интересного – размышления о фреймворках.
Например Flutter – хороший фреймворк, особенно, если вам нужно быстро и дешево получить несколько платформ сразу, в том числе и web. Но он не всегда корректно поддерживается iOS, а еще недружелюбен к вносимым изменениям. Можно согласиться с тем, что React Native все же более гибок в этом плане.
Еще в видео обсудили особенности работы над супераппами, mobile разработчикам рекомендуем посмотреть целиком.
YouTube
1х1: о мобильной разработке в Яндексе
1х1 — так в Яндексе называют регулярные рабочие встречи двух коллег.
Теперь «1х1» — ещё и регулярная рубрика на нашем канале. Двое сотрудников встречаются за столом, чтобы ответить на простые, каверзные, а главное — одинаковые вопросы. Героями «1х1» станут…
Теперь «1х1» — ещё и регулярная рубрика на нашем канале. Двое сотрудников встречаются за столом, чтобы ответить на простые, каверзные, а главное — одинаковые вопросы. Героями «1х1» станут…
This media is not supported in your browser
VIEW IN TELEGRAM
Декларативные анимации в AirBnb
- В AirBnb активно используют анимированные переходы между контроллерами. Стандартные императивные подходы для определения таких анимаций – сложные, хрупкие, требуют много бойлерплейта.
- Вместо этого, команда AirBnb перешла на декларативные анимации. При этом подходе надо определить начальный и конечный экраны, а затем описать поведение каждого из элементов при переходе. Все остальное работает само по себе.
- Сам фреймворк они не шарят, но подход и примеры расписали довольно подробно.
Перевод на русский язык
- В AirBnb активно используют анимированные переходы между контроллерами. Стандартные императивные подходы для определения таких анимаций – сложные, хрупкие, требуют много бойлерплейта.
- Вместо этого, команда AirBnb перешла на декларативные анимации. При этом подходе надо определить начальный и конечный экраны, а затем описать поведение каждого из элементов при переходе. Все остальное работает само по себе.
- Сам фреймворк они не шарят, но подход и примеры расписали довольно подробно.
Перевод на русский язык
This media is not supported in your browser
VIEW IN TELEGRAM
Релиз Lottie 4.0
Раз мы начали день статьей от AirBnb, вот еще одна новость от их команды – новый релиз Lottie, движка для рендеринга анимаций из After Effect.
- Движок рендеринга полностью переписан на CoreAnimation, благодаря чему анимации переехали на GPU, перестали грузить CPU, и перфоманс значительно улучшился.
- Переписан декодер описаний анимаций, работа ускорилась в два раза.
- Помимо JSON, анимации можно определять в более кратком формате dotLottie.
Перевод на русский язык
Раз мы начали день статьей от AirBnb, вот еще одна новость от их команды – новый релиз Lottie, движка для рендеринга анимаций из After Effect.
- Движок рендеринга полностью переписан на CoreAnimation, благодаря чему анимации переехали на GPU, перестали грузить CPU, и перфоманс значительно улучшился.
- Переписан декодер описаний анимаций, работа ускорилась в два раза.
- Помимо JSON, анимации можно определять в более кратком формате dotLottie.
Перевод на русский язык
Обзор всех изменений в прайсинге App Store
- Появилось 700 новых значений цен, которые можно использовать для ваших приложений. Минимальное значение – 0,29$, максимальное – 10000$.
- Между 0,29$ и 9,99$ шаг изменения цены – 0,1$.
- Между 0,49 и 49,99$ шаг изменения цены 0,5$.
- Цены можно округлять до .0$, .90$ и .95$.
- Цены в локальных магазинах теперь можно назначать вручную, а не привязывать к базовой долларовой цене.
Перевод на русский язык
- Появилось 700 новых значений цен, которые можно использовать для ваших приложений. Минимальное значение – 0,29$, максимальное – 10000$.
- Между 0,29$ и 9,99$ шаг изменения цены – 0,1$.
- Между 0,49 и 49,99$ шаг изменения цены 0,5$.
- Цены можно округлять до .0$, .90$ и .95$.
- Цены в локальных магазинах теперь можно назначать вручную, а не привязывать к базовой долларовой цене.
Перевод на русский язык
Совместное редактирование в Apple Notes реализовано на Server-side Swift
Если вас кто-то будет спрашивать о примерах использования Swift на сервере в продакшне, теперь вам есть, что ответить. Apple на недавней конференции про серверный Swift рассказали, что использовали его, чтобы реализовать коллаборативную работу над заметками. Деталей нет, да и картину адопшна это не сильно меняет, но интересно!
Если вас кто-то будет спрашивать о примерах использования Swift на сервере в продакшне, теперь вам есть, что ответить. Apple на недавней конференции про серверный Swift рассказали, что использовали его, чтобы реализовать коллаборативную работу над заметками. Деталей нет, да и картину адопшна это не сильно меняет, но интересно!
ВКонтакте объявила победителей грантового конкурса VK Fresh Code.
Создатели 25 самых успешных мини-приложений на базе платформы VK Mini Apps получили поддержку на развитие своих проектов. В дальнейшем их количество может увеличиться: ВКонтакте продолжит поддерживать талантливые команды, чтобы они продолжали творить на благо пользователей.
Создатели 25 самых успешных мини-приложений на базе платформы VK Mini Apps получили поддержку на развитие своих проектов. В дальнейшем их количество может увеличиться: ВКонтакте продолжит поддерживать талантливые команды, чтобы они продолжали творить на благо пользователей.
ВКонтакте
VK Mini Apps
Хотите создать мини-приложение или игру ВКонтакте? Вы по адресу! В нашем сообществе вы можете: • напрямую общаться с командой VK Mini Apps; • получить поддержку сообщества разработчиков и помощь в продвижении; • собрать команду или присоединиться к уже существующей;…
This media is not supported in your browser
VIEW IN TELEGRAM
Кастомный контейнер на Layout протоколе
Автор разбирает, как с помощью Layout протокола из SwiftUI собрать контейнер, который будет лэйаутить произвольное количество тегов фиксированной высоты и разной длины.
Перевод на русский язык
Автор разбирает, как с помощью Layout протокола из SwiftUI собрать контейнер, который будет лэйаутить произвольное количество тегов фиксированной высоты и разной длины.
Перевод на русский язык
Советы от ментейнера 185 библиотек
- Когда ты поддерживаешь сразу десятки библиотек, быстро теряешь контекст происходящего в каждой из них.
- Справиться с этим помогает техника «The perfect commit» – делать только такие коммиты, которые решают строго одну задачу, которые содержат подробную документацию и тесты для каждого изменения, и ссылаются на issue с обсуждением.
- Поддерживать уверенность в актуальности документации помогают специальные тесты, которые проверяют, что в ней упоминаются все ключевые концепции.
- В статье много дополнительных советов про все аспекты техники идеальных коммитов.
- Когда ты поддерживаешь сразу десятки библиотек, быстро теряешь контекст происходящего в каждой из них.
- Справиться с этим помогает техника «The perfect commit» – делать только такие коммиты, которые решают строго одну задачу, которые содержат подробную документацию и тесты для каждого изменения, и ссылаются на issue с обсуждением.
- Поддерживать уверенность в актуальности документации помогают специальные тесты, которые проверяют, что в ней упоминаются все ключевые концепции.
- В статье много дополнительных советов про все аспекты техники идеальных коммитов.
simonwillison.net
Coping strategies for the serial project hoarder
I gave a talk at DjangoCon US 2022 in San Diego last month about productivity on personal projects, titled “Massively increase your productivity on personal projects with comprehensive documentation and …
SwiftUI Custom Layout: Spacing
Продолжение цикла статей про работу с протоколом Layout. В этой разбирается, как настраивать расстояние между дочерними вьюшками, учитывать его при расчете лэйаута, и использовать разные значения для разных платформ.
Продолжение цикла статей про работу с протоколом Layout. В этой разбирается, как настраивать расстояние между дочерними вьюшками, учитывать его при расчете лэйаута, и использовать разные значения для разных платформ.
Stable Diffusion на CoreML
- Apple добавили поддержку модели Stable Diffusion в CoreML. Stable Diffusion – самая хайповая нейронка для генерации иллюстраций. Помните иконки, которые я выкладывал на прошлой неделе? Вот это – Stable Diffusion.
- Stable Diffusion умеет не только генерировать изображения по описанию, но и генерировать палитру, апскейлить изображения, редактировать их и много чего еще.
- Модель оптимизирована для работы на конечном пользовательском девайсе.
- Apple добавили поддержку модели Stable Diffusion в CoreML. Stable Diffusion – самая хайповая нейронка для генерации иллюстраций. Помните иконки, которые я выкладывал на прошлой неделе? Вот это – Stable Diffusion.
- Stable Diffusion умеет не только генерировать изображения по описанию, но и генерировать палитру, апскейлить изображения, редактировать их и много чего еще.
- Модель оптимизирована для работы на конечном пользовательском девайсе.
Foundation переписывают на Swift и выкладывают в open source
Вот что поменяется:
- Полностью избавятся от C, на котором сейчас написано все ядро Foundation. Благодаря избавления от интеропа улучшится перфоманс.
- Огромный Foundation будет разбит на более атомарные куски. Например, FoundationInternationalization, который будет содержать функции, нужные для локализации.
- Для всех эппловых платформ будет использоваться единая реализация Foundation.
- Процесс разработки будет открытым, а коммьюнити получит возможность контрибьютить свои изменения.
Перевод на русский язык
Вот что поменяется:
- Полностью избавятся от C, на котором сейчас написано все ядро Foundation. Благодаря избавления от интеропа улучшится перфоманс.
- Огромный Foundation будет разбит на более атомарные куски. Например, FoundationInternationalization, который будет содержать функции, нужные для локализации.
- Для всех эппловых платформ будет использоваться единая реализация Foundation.
- Процесс разработки будет открытым, а коммьюнити получит возможность контрибьютить свои изменения.
Перевод на русский язык
Swift.org
The Future of Foundation
The Foundation framework is used in nearly all Swift projects. It provides both a base layer of functionality for fundamentals like strings, collections, and dates, as well as setting conventions for writing great Swift code.
Команда Тинькофф ищет iOS-разработчиков💡
Большое комьюнити iOS-разработчиков решает крутые задачи — создает высоконагруженные сервисы для 27 миллионов клиентов, экспериментирует и ищет новые решения. Приглашает в команду iOS-разработчиков с опытом от трех лет!
Работать с Тинькофф значит:
— не ограничивать свои скиллы и вводить в сервисы новые фичи;
— делать жизнь миллионов людей удобнее и технологичней;
— расти в грейде по скиллам, а не по стажу в компании;
— становиться заметным в комьюнити iOS-разработчиков.
А еще команда всегда «за» действительно комфортную работу. Поэтому большинство бытовых забот делегируют компании: от расширенного ДМС и юридической помощи до питания и разных активностей.
Откликнуться и узнать подробнее о команде iOS-разработчиков Тинькофф: https://u.tinkoff.ru/mobile.pro
Большое комьюнити iOS-разработчиков решает крутые задачи — создает высоконагруженные сервисы для 27 миллионов клиентов, экспериментирует и ищет новые решения. Приглашает в команду iOS-разработчиков с опытом от трех лет!
Работать с Тинькофф значит:
— не ограничивать свои скиллы и вводить в сервисы новые фичи;
— делать жизнь миллионов людей удобнее и технологичней;
— расти в грейде по скиллам, а не по стажу в компании;
— становиться заметным в комьюнити iOS-разработчиков.
А еще команда всегда «за» действительно комфортную работу. Поэтому большинство бытовых забот делегируют компании: от расширенного ДМС и юридической помощи до питания и разных активностей.
Откликнуться и узнать подробнее о команде iOS-разработчиков Тинькофф: https://u.tinkoff.ru/mobile.pro
This media is not supported in your browser
VIEW IN TELEGRAM
Самое простое интро в шейдеры
Если вы никогда не писали свои шейдеры, и просто киваете с умным видом, когда кто-то начинает говорить про оптимизированный под GPU код, обязательно прочитайте статью.
💻Отличие CPU от GPU в вопросах вычислений
🤔Ограничения в разработке шейдеров
🎨Примеры шейдеров
Если вы никогда не писали свои шейдеры, и просто киваете с умным видом, когда кто-то начинает говорить про оптимизированный под GPU код, обязательно прочитайте статью.
💻Отличие CPU от GPU в вопросах вычислений
🤔Ограничения в разработке шейдеров
🎨Примеры шейдеров
AppCode 2022.3 – последняя поддерживаемая версия
- Вышла новая версия AppCode с поддержкой Xcode 14.2.
- Эта версия станет последней. Новые фичи больше не разрабатываются, купить AppCode больше нельзя.
- Поддержка текущей версии будет предоставляться до конца 2023 – в основном связанная с проблемами совместимости с текущей версией Xcode.
- Основная причина – «While we’ve had some growth in terms of adoption, we didn’t reach the market share we had hoped for»
- Вышла новая версия AppCode с поддержкой Xcode 14.2.
- Эта версия станет последней. Новые фичи больше не разрабатываются, купить AppCode больше нельзя.
- Поддержка текущей версии будет предоставляться до конца 2023 – в основном связанная с проблемами совместимости с текущей версией Xcode.
- Основная причина – «While we’ve had some growth in terms of adoption, we didn’t reach the market share we had hoped for»
Пример интеропа C++ и Swift
- В Swift есть экспериментальная поддержка интеропа с плюсами, которая не требует написания врапперов на ObjC.
- В статье разбирается, как в одном Swift пакете держать код на С++ и Swift, и напрямую использовать std::vector..
Перевод на русский язык
- В Swift есть экспериментальная поддержка интеропа с плюсами, которая не требует написания врапперов на ObjC.
- В статье разбирается, как в одном Swift пакете держать код на С++ и Swift, и напрямую использовать std::vector..
Перевод на русский язык
Простой способ улучшить читаемость логов в Xcode
В настройках Xcode можно изменить цвет логов брейкпойнтов, чтобы они визуально выделялись среди принтов:
Xcode > Settings > Themes > Console
В настройках Xcode можно изменить цвет логов брейкпойнтов, чтобы они визуально выделялись среди принтов:
Xcode > Settings > Themes > Console
SwiftUI Custom Layout: LayoutValueKey
- С помощью протокола LayoutValueKey можно привязать значение к вью внутри кастомного лэйаута, и использовать его позже в расчетах.
- Для этого надо создать структуру, реализующую протокол LayoutValueKey, и extension для вью, в котором этот параметр настраивается.
- В статье разбирается, как с помощью этой фичи можно реализовать якорную привязку внутри своего лэйаута.
Перевод на русский язык
- С помощью протокола LayoutValueKey можно привязать значение к вью внутри кастомного лэйаута, и использовать его позже в расчетах.
- Для этого надо создать структуру, реализующую протокол LayoutValueKey, и extension для вью, в котором этот параметр настраивается.
- В статье разбирается, как с помощью этой фичи можно реализовать якорную привязку внутри своего лэйаута.
Перевод на русский язык
Кастомные префиксы для чисел в NumberFormatter
У NumberFormatter есть одна неочевидная фича – вы можете задать свой собственный префикс для всех положительных или отрицательных чисел, используя свойства positivePrefix/negativePrefix.
У NumberFormatter есть одна неочевидная фича – вы можете задать свой собственный префикс для всех положительных или отрицательных чисел, используя свойства positivePrefix/negativePrefix.
Подключайтесь на новогодний лайв Подлодки! Новогоднее настроение, розыгрыш стимдека и все дела!
https://www.youtube.com/watch?v=154IhLgBvD8
https://www.youtube.com/watch?v=154IhLgBvD8
YouTube
Новогодний выпуск 2022: все звезды Подлодки вместе + разыгрываем Steam Deck!
🎄 Праздник к нам приходит: все звезды подлодки в эфире + возможность выиграть Steam Deck!
Приглашаем наших любимых слушателей на новогодний лайв в среду, 21 декабря, 19:00 (GMT+3)! В программе:
⭐️ Виталий Брагилевский, Павел Комаровский, и Глеб Новик…
Приглашаем наших любимых слушателей на новогодний лайв в среду, 21 декабря, 19:00 (GMT+3)! В программе:
⭐️ Виталий Брагилевский, Павел Комаровский, и Глеб Новик…
Огромный гайд по реализации in-app purchases на StoreKit
🛒Настройка покупок в App Store Connect
💻Отображение товаров в приложении, их покупка и верификация
🗓️Обработка событий обновления подписки, ее отмены и проблем с платежами
☁️Реализация подписок со своим сервером и без него
Код примеров клиента и сервера на GitHub
🛒Настройка покупок в App Store Connect
💻Отображение товаров в приложении, их покупка и верификация
🗓️Обработка событий обновления подписки, ее отмены и проблем с платежами
☁️Реализация подписок со своим сервером и без него
Код примеров клиента и сервера на GitHub