DeviceKit - value-type замена для UIDevice. Позволяет идентифицировать устройства и определять разные его внутренние характеристики, вроде уровня заряда батареи, разрешения экрана, свободного пространства в хранилище и т.п.
DeviceKit на GitHub: https://github.com/devicekit/DeviceKit
Платформа: iOS
⭐️: 4.2K
DeviceKit на GitHub: https://github.com/devicekit/DeviceKit
Платформа: iOS
⭐️: 4.2K
Бесплатный интерактивный 700-страничный учебник по тестированию
Спустя полтора года работы восьми айтишников с суммарным опытом в IT 130 лет достигнут результат в виде учебника по тестированию, которого еще никто и никогда не делал.
Учебник: https://mentorpiece.ru/textbook/
Платформа: тестирование
Спустя полтора года работы восьми айтишников с суммарным опытом в IT 130 лет достигнут результат в виде учебника по тестированию, которого еще никто и никогда не делал.
Учебник: https://mentorpiece.ru/textbook/
Платформа: тестирование
Видео и подкасты за неделю:
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Посмотрите, поделитесь, поставьте 👍, если понравилась подборка. А если вы увидели/выпустили какое-то другое интересное видео - отправьте боту🧑🏻💻
•
(iOS Ru)
Пишем свой рендеринг графики на SwiftUI и запускаем на нем Doom•
(iOS Ru)
Паттеры проектирования — Мост•
(iOS En)
SwiftUI Animated Carousel Slider With Paging Control•
(iOS En)
Build a SwiftUI Video Calling: How to Ring and Notify Users About a Call•
(iOS En)
How to translate and localize an iOS app with string catalogs in Xcode 15•
(iOS En)
CocoaHeadsNL Meetup•
(iOS En)
SwiftUI Custom Alert View•
(iOS En)
SFSymbol Animations in iOS 17•
(iOS En)
Breaking Down Swift Data Migrations•
(And Ru)
Собеседование на Mobile Developer: Алексей Панов (Контур)•
(And Ru)
Модерация приложений и игр в магазине RuStore•
(And Ru)
От плохого кода к хорошему один шаг: юнит тесты, ООП и интерфейсы•
(And En)
Firebase in Android Studio - Android Developers Backstage•
(And En)
Now in Android: 91 - Jetpack Glance, Android 14 QPR, Google Play policy and console updates, & more!•
(And En)
How to Create a Lazy Column With Categories in Jetpack Compose•
(Crs En)
Making Multiplatform Better•
(Crs En)
Creating a Cutting-Edge Movie Streaming App with Flutter & Python•
(Dev Ru)
Ozon Tech Community QA Meetup•
(Dev Ru)
The ONLY Right Way to Document Your Code•
(Dev Ru)
Acquiring Game Design Skills Beyond Entertainment•
(Mrk Ru)
Podlodka #336: ищем пользовательский сегментПосмотрите, поделитесь, поставьте 👍, если понравилась подборка. А если вы увидели/выпустили какое-то другое интересное видео - отправьте боту🧑🏻💻
AppTractor
Пишем свой рендеринг графики на SwiftUI и запускаем на нем Doom
Плюс рефлексия на тему качества кода, которому уже 30 лет, и он по-прежнему собирается.
👍1
Подборка онлайн-собеседований
• Собеседование на Junior Android Dev у Анны Жарковой
• Экспертное собеседование на позицию Senior Android-разработчика
• Публичное собеседование на позицию техлида
• Собеседование мобильных разработчиков в Яндекс
• Алгоритмическое собеседование в Яндекс в прямом эфире
• Собеседование в Android-команду Тинькофф
• Собеседование Middle Android разработчика
• Собеседование Junior Android-разработчика на оффер в реальном времени
• Собеседование Android System Design
• Онлайн-собеседование: корутины
• Онлайн-собеседование: Senior iOS Developer Виталий Кузьменко
• Собеседование Гончаров-Бадретдинов
• Собеседование Неклюдов — Мацюк
• Мок интервью Junior Android-разработчика
• Собеседование: Swift (iOS-разработка)
• Публичное собеседование: middle iOS-разработчик
• Реальное собеседование Senior iOS разработчика
• Мок-собеседование iOS-разработчика
• Собеседование на Junior Android Dev у Анны Жарковой
• Экспертное собеседование на позицию Senior Android-разработчика
• Публичное собеседование на позицию техлида
• Собеседование мобильных разработчиков в Яндекс
• Алгоритмическое собеседование в Яндекс в прямом эфире
• Собеседование в Android-команду Тинькофф
• Собеседование Middle Android разработчика
• Собеседование Junior Android-разработчика на оффер в реальном времени
• Собеседование Android System Design
• Онлайн-собеседование: корутины
• Онлайн-собеседование: Senior iOS Developer Виталий Кузьменко
• Собеседование Гончаров-Бадретдинов
• Собеседование Неклюдов — Мацюк
• Мок интервью Junior Android-разработчика
• Собеседование: Swift (iOS-разработка)
• Публичное собеседование: middle iOS-разработчик
• Реальное собеседование Senior iOS разработчика
• Мок-собеседование iOS-разработчика
AppTractor
Собеседование на Junior Android Dev у Анны Жарковой
Собеседование проходило в формате вопрос-ответ, при необходимости писали пример ответов на вопрос. Интервьюер: Анна Жаркова, руководитель группы разработки в Usetech.
👍2❤1
This media is not supported in your browser
VIEW IN TELEGRAM
ComposeLevitation - это мощная библиотека Compose, которая предоставляет вам возможность легко создавать и настраивать эффекты левитации, добавляя интерактивный штрих к элементам пользовательского интерфейса. Умеет реагировать на жесты нажатия и перетаскивания, полностью настраиваема, можно сделать голографический эффект.
ComposeLevitation на GitHub: https://github.com/GIGAMOLE/ComposeLevitation
Платформа: Android
⭐️: 52
ComposeLevitation на GitHub: https://github.com/GIGAMOLE/ComposeLevitation
Платформа: Android
⭐️: 52
Как Airbnb внедрила SwiftUI в приложение для iOS
В этой статье мы расскажем о том, почему и как мы в итоге заменили Epoxy и UIKit на SwiftUI в Airbnb. Мы подробно расскажем о том, как мы интегрировали SwiftUI в систему проектирования Airbnb, объясним результаты этой работы и перечислим несколько проблем, над которыми мы все еще работаем. Прочитав эту статью, вы поймете, почему SwiftUI отвечает нашим высоким требованиям как для пользователей, так и для разработчиков.
Статья: https://apptractor.ru/info/articles/kak-airbnb-vnedrila-swiftui-v-prilozhenie-dlya-ios.html
Платформа: iOS
В этой статье мы расскажем о том, почему и как мы в итоге заменили Epoxy и UIKit на SwiftUI в Airbnb. Мы подробно расскажем о том, как мы интегрировали SwiftUI в систему проектирования Airbnb, объясним результаты этой работы и перечислим несколько проблем, над которыми мы все еще работаем. Прочитав эту статью, вы поймете, почему SwiftUI отвечает нашим высоким требованиям как для пользователей, так и для разработчиков.
Статья: https://apptractor.ru/info/articles/kak-airbnb-vnedrila-swiftui-v-prilozhenie-dlya-ios.html
Платформа: iOS
❤1
Swift Testing - это современная библиотека тестирования с открытым исходным кодом для Swift от Apple, обладающая мощными и выразительными возможностями. Она дает разработчикам больше уверенности при меньшем объеме кода.
Данный пакет находится в стадии активной и непрерывной разработки. Его содержимое, включая все интерфейсы и детали реализации, является экспериментальным и может быть изменено или удалено без предварительного уведомления.
Swift Testing на GitHub: https://github.com/apple/swift-testing
Платформа: iOS/тестирование
⭐️: 459
Данный пакет находится в стадии активной и непрерывной разработки. Его содержимое, включая все интерфейсы и детали реализации, является экспериментальным и может быть изменено или удалено без предварительного уведомления.
Swift Testing на GitHub: https://github.com/apple/swift-testing
Платформа: iOS/тестирование
⭐️: 459
GitHub
GitHub - swiftlang/swift-testing: A modern, expressive testing package for Swift
A modern, expressive testing package for Swift. Contribute to swiftlang/swift-testing development by creating an account on GitHub.
This media is not supported in your browser
VIEW IN TELEGRAM
Уменьшаем рекомпозиции для изображений в Jetpack Compose
При проверке приложения с целью улучшения скорости прокрутки списка я обнаружил, что изображения и иконки постоянно перекомпонуются, даже если их состояние не изменяется! Довольно странно, не правда ли?
Статья: https://apptractor.ru/info/articles/umenshaem-rekompozitsii-dlya-izobrazheniy-v-jetpack-compose.html
Платформа: Android
При проверке приложения с целью улучшения скорости прокрутки списка я обнаружил, что изображения и иконки постоянно перекомпонуются, даже если их состояние не изменяется! Довольно странно, не правда ли?
Статья: https://apptractor.ru/info/articles/umenshaem-rekompozitsii-dlya-izobrazheniy-v-jetpack-compose.html
Платформа: Android
👍1
Основы SwiftUI - полный курс
Начните изучать SwiftUI с курса "Основы SwiftUI". В этом 12-часовом курсе мы создадим 4 приложения с нарастающей сложностью. Первые три приложения довольно просты, но четвертое и последнее приложение значительно увеличивается в размерах и усложняется.
Видео:https://www.youtube.com/watch?v=b1oC7sLIgpI
Начните изучать SwiftUI с курса "Основы SwiftUI". В этом 12-часовом курсе мы создадим 4 приложения с нарастающей сложностью. Первые три приложения довольно просты, но четвертое и последнее приложение значительно увеличивается в размерах и усложняется.
Видео:
👍2
Gallery - легковесная галерея с медиа для Android-приложения на Jetpack Compose.
Gallery на GitHub: https://github.com/IacobIonut01/Gallery
Платформа: Android
⭐️: 495
Gallery на GitHub: https://github.com/IacobIonut01/Gallery
Платформа: Android
⭐️: 495
❤1
This media is not supported in your browser
VIEW IN TELEGRAM
CD-диск на шейдерах и NameDrop в iOS 17
Шейдеры отлично подходят для симуляции материалов. В обычных интерфейсах мы управляем только цветом, но эффекты могут быть революционными. Например, блюр в iOS изменил многие мобильные интерфейсы и стал частью интерфейса Apple Vision Pro.
Описать материал через шейдер сложно, потому что код совершенно другой, но создать динамичный эффект — ещё сложнее. В этой статье разберём пару примеров: переливающийся диск и нашумевший NameDrop в iOS 17.
Статья: https://habr.com/ru/companies/dododev/articles/762656/
Платформа: iOS
Шейдеры отлично подходят для симуляции материалов. В обычных интерфейсах мы управляем только цветом, но эффекты могут быть революционными. Например, блюр в iOS изменил многие мобильные интерфейсы и стал частью интерфейса Apple Vision Pro.
Описать материал через шейдер сложно, потому что код совершенно другой, но создать динамичный эффект — ещё сложнее. В этой статье разберём пару примеров: переливающийся диск и нашумевший NameDrop в iOS 17.
Статья: https://habr.com/ru/companies/dododev/articles/762656/
Платформа: iOS
Разработка платёжного SDK
В докладе расскажу, какие фичи нужно иметь в SDK, чтобы ускорить его интеграцию и уменьшить нагрузку на техподдержку. Также затрону вопрос о формате дистрибуции такого продукта: поделюсь, почему мы оставляем SDK ЮKassa опенсорсным и как автоматизируем процесс раскатки новой версии в публичный репозиторий.
Видео: https://youtu.be/kYv9dgPmfi0
Платформа: разработка
В докладе расскажу, какие фичи нужно иметь в SDK, чтобы ускорить его интеграцию и уменьшить нагрузку на техподдержку. Также затрону вопрос о формате дистрибуции такого продукта: поделюсь, почему мы оставляем SDK ЮKassa опенсорсным и как автоматизируем процесс раскатки новой версии в публичный репозиторий.
Видео: https://youtu.be/kYv9dgPmfi0
Платформа: разработка
❤1
Как заменить стандартное окно сбоя своим экраном ошибки
Наши приложения иногда аварийно завершают работу по причинам, которых мы никогда не ожидали, несмотря на все меры предосторожности, которые мы принимаем против этого. Но вместо того, чтобы всегда показывать пользователю стандартное скучное диалоговое окно сбоя во время возникновения ошибки, замечательно было бы отобразить свой собственный экран, правда?
Статья: https://apptractor.ru/info/articles/kak-zamenit-standartnoe-okno-sboya-svoim-ekranom-oshibki.html
Платформа: Android
Наши приложения иногда аварийно завершают работу по причинам, которых мы никогда не ожидали, несмотря на все меры предосторожности, которые мы принимаем против этого. Но вместо того, чтобы всегда показывать пользователю стандартное скучное диалоговое окно сбоя во время возникновения ошибки, замечательно было бы отобразить свой собственный экран, правда?
Статья: https://apptractor.ru/info/articles/kak-zamenit-standartnoe-okno-sboya-svoim-ekranom-oshibki.html
Платформа: Android
Создание обложки для Wear OS
От создания уникального циферблата для часов на Wear OS до рассуждений о возможностях Wear OS 4 и грядущих Pixel Watch 2 - это видео сокровищница знаний и шуток.
Видео: https://techhype.io/media/create-a-wear-os-watchface/
Платформа: Android
От создания уникального циферблата для часов на Wear OS до рассуждений о возможностях Wear OS 4 и грядущих Pixel Watch 2 - это видео сокровищница знаний и шуток.
Видео: https://techhype.io/media/create-a-wear-os-watchface/
Платформа: Android
Cashew - это полноценное многофункциональное приложение, предназначенное для эффективного управления финансами. Созданное с использованием Flutter, SQL-пакета Drift и Firebase, это приложение обеспечивает плавное и интуитивно понятное управление финансами на различных устройствах.
Cashew на GitHub: https://github.com/jameskokoska/Cashew/
Платформа: Flutter/кроссплатформа
⭐️: 96
Cashew на GitHub: https://github.com/jameskokoska/Cashew/
Платформа: Flutter/кроссплатформа
⭐️: 96
Дебаггинг приложения без Xcode. Зачем?
Мы упростили жизнь нашим тестировщикам. Они теперь могут много вещей делать сами, не обращаясь к разработчикам.
Мы получили дебаггинг без Xcode. Разработчик может просто открыть симулятор, когда ему лень собирать проект. Он может открыть приложение, запустить дебаг меню и посмотреть логи, которых может быть вполне достаточно, из-за этого даже не стоит подключать Xcode.
У нас много интересных задач, например, изменение размера экрана. Наши разработчики всегда готовы браться за задачи для дебаг меню — ими просто интересно заниматься.
Статья: https://habr.com/ru/companies/alfa/articles/763596/
Платформа: iOS
Мы упростили жизнь нашим тестировщикам. Они теперь могут много вещей делать сами, не обращаясь к разработчикам.
Мы получили дебаггинг без Xcode. Разработчик может просто открыть симулятор, когда ему лень собирать проект. Он может открыть приложение, запустить дебаг меню и посмотреть логи, которых может быть вполне достаточно, из-за этого даже не стоит подключать Xcode.
У нас много интересных задач, например, изменение размера экрана. Наши разработчики всегда готовы браться за задачи для дебаг меню — ими просто интересно заниматься.
Статья: https://habr.com/ru/companies/alfa/articles/763596/
Платформа: iOS
На 65% меньше APK и на 70% меньше потребление памяти: как мы оптимизировали приложение для Android
1. Правила Proguard
2. Png в Webp
3. Удаление неиспользуемых ресурсов
4. Добавление ResConfigs
5. Работа с ассетами приложения
6. Оптимизация шрифтов
7. Пакеты приложений для Android (AAB)
Статья: https://apptractor.ru/info/articles/na-65-menshe-apk-i-na-70-menshe-potreblenie-pamyati-kak-my-optimizirovali-prilozhenie-dlya-android.html
Платформа: Android
1. Правила Proguard
2. Png в Webp
3. Удаление неиспользуемых ресурсов
4. Добавление ResConfigs
5. Работа с ассетами приложения
6. Оптимизация шрифтов
7. Пакеты приложений для Android (AAB)
Статья: https://apptractor.ru/info/articles/na-65-menshe-apk-i-na-70-menshe-potreblenie-pamyati-kak-my-optimizirovali-prilozhenie-dlya-android.html
Платформа: Android
❤1
Анимация сердца из WatchOS 10
В этом видео автор показывает, как создать анимацию сердца из WatchOS 10 с помощью SwiftUI.
Видео:вот - https://youtu.be/kZKI-BImtLE . А ссылкой на канал поделишься? :)
Платформа: iOS
В этом видео автор показывает, как создать анимацию сердца из WatchOS 10 с помощью SwiftUI.
Видео:
This media is not supported in your browser
VIEW IN TELEGRAM
FittedSheets - реализация Bottom Sheet для iOS, представление View Controller-а внизу экрана. Предлагает произвольные размеры (автоматически подстраиваясь под содержание встроенного контроллера) и поддерживает скроллинг.
FittedSheets на GitHub: https://github.com/gordontucker/FittedSheets
Платформа: iOS
⭐️: 1.1K
FittedSheets на GitHub: https://github.com/gordontucker/FittedSheets
Платформа: iOS
⭐️: 1.1K
Видео и подкасты за неделю:
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Посмотрите, поделитесь, поставьте 👍, если понравилась подборка. А если вы увидели/выпустили какое-то другое интересное видео - отправьте боту🧑🏻💻
•
(iOS Ru)
Топ-10 типичных ошибок iOS-разработчика•
(iOS Ru)
Простой пример Внедрения зависимостей в iOS•
(iOS Ru)
Прожарка Tuist•
(iOS En)
SwiftUI Swipe Actions from Scratch•
(iOS En)
Super Power Scroll Views - SwiftUI•
(iOS En)
SwiftUI: Telegram Dark Mode Animation Challenge•
(iOS En)
WatchOS 10 Heart App Animation Using SwiftUI•
(iOS En)
Phase Animations in iOS 17•
(iOS En)
Say Goodbye to Manual Mock Data: Discover the Power of @SampleBuilder!•
(And Ru)
Gradle Kotlin DSL: о чем умолчали в документации•
(And Ru)
Здоровье вашей Gradle-сборки•
(And Ru)
Советы к собеседованию•
(And En)
New UI for Android Studio•
(And En)
Dependency Management in a Multi-Module Project - THIS Is How You Need to Do It•
(And En)
Create a Wear OS watchface•
(And En)
How to Use CameraX With Android Jetpack Compose To Implement In-App Photo Capturing•
(Crs En)
Release an iOS app with Flutter in 7 steps•
(Crs En)
A Complete Guide for using Dynamic Island in your next Flutter App•
(Dev En)
A Hackers’ Guide to Language Models•
(Mrk Ru)
Публичное собеседование на роль продакт-менеджера по монетизацииПосмотрите, поделитесь, поставьте 👍, если понравилась подборка. А если вы увидели/выпустили какое-то другое интересное видео - отправьте боту🧑🏻💻
AppTractor
Топ-10 типичных ошибок iOS-разработчика
Собрал десять их самых частых ошибок.
👍2
Подборка логических задач с собеседований
Офис
Есть компания со штатом в нечетное количество сотрудников. Все сотрудники живут по разным адресам на разном удалении от офиса. Вопрос: существует ли вариант переезда компании, после которого абсолютно все сотрудники смогут добираться на работу быстрее (их путь до офиса сократится)?
Наггетсы
В Макдональдс вы можете заказать куриные наггетсы в коробках по 6, 9 и 20 штук. Каким является максимальное число наггетсов, которое НЕЛЬЗЯ заказать любыми комбинациями этих коробок?
Шарик с гелием
Вы находитесь в автомобиле, где к полу веревочкой привязан шар, наполненный гелием. Окна закрыты. Вы нажимаете на педаль газа. Что произойдет с шаром: переместится он вперед, назад или останется в прежнем положении?
Стакан воды на проигрывателе
Вы поставили стакан воды на диск проигрывателя виниловых пластинок и медленно увеличиваете скорость вращения. Что произойдет раньше: стакан сползет в сторону, стакан опрокинется, вода расплескается?
Зарплата
Три работника хотят вычислить свою среднюю зарплату при условии, что каждый знает свою зарплату, но не может сообщить ее другому напрямую. Обмен информации между людьми возможен, но передаваемые друг другу сообщения не должны содержать какую-либо конкретную информацию об уровне зарплат. Как это сделать?
Офис
Есть компания со штатом в нечетное количество сотрудников. Все сотрудники живут по разным адресам на разном удалении от офиса. Вопрос: существует ли вариант переезда компании, после которого абсолютно все сотрудники смогут добираться на работу быстрее (их путь до офиса сократится)?
Наггетсы
В Макдональдс вы можете заказать куриные наггетсы в коробках по 6, 9 и 20 штук. Каким является максимальное число наггетсов, которое НЕЛЬЗЯ заказать любыми комбинациями этих коробок?
Шарик с гелием
Вы находитесь в автомобиле, где к полу веревочкой привязан шар, наполненный гелием. Окна закрыты. Вы нажимаете на педаль газа. Что произойдет с шаром: переместится он вперед, назад или останется в прежнем положении?
Стакан воды на проигрывателе
Вы поставили стакан воды на диск проигрывателя виниловых пластинок и медленно увеличиваете скорость вращения. Что произойдет раньше: стакан сползет в сторону, стакан опрокинется, вода расплескается?
Зарплата
Три работника хотят вычислить свою среднюю зарплату при условии, что каждый знает свою зарплату, но не может сообщить ее другому напрямую. Обмен информации между людьми возможен, но передаваемые друг другу сообщения не должны содержать какую-либо конкретную информацию об уровне зарплат. Как это сделать?
💩3👍1