Compose Calendar — это компонент, обрабатывающий весь рендеринг календаря и выбор даты. Благодаря гибкости, предоставляемой API, вы можете решить, как будет выглядеть календарь, библиотека будет обрабатывать правильное расположение элементов календаря и его состояние.
Библиотека на GitHub: https://github.com/boguszpawlowski/ComposeCalendar
Платформа: Android
⭐️: 58
Библиотека на GitHub: https://github.com/boguszpawlowski/ComposeCalendar
Платформа: Android
⭐️: 58
Как ускорить автотесты
ВКонтакте развиваю и ускоряю автотесты, анализирую и улучшаю инфраструктуру, создаю новые решения. При проектировании инфраструктуры для автотестов на Android приходится искать ответы на вопросы о том, где можно их запускать и где лучше это делать.
Статья: https://apptractor.ru/spdtst
Платформа: тестирование
⬆️: +21
ВКонтакте развиваю и ускоряю автотесты, анализирую и улучшаю инфраструктуру, создаю новые решения. При проектировании инфраструктуры для автотестов на Android приходится искать ответы на вопросы о том, где можно их запускать и где лучше это делать.
Статья: https://apptractor.ru/spdtst
Платформа: тестирование
⬆️: +21
Задачи с собеседований: римские цифры
Получив целое число, преобразуйте его в римскую цифру.
Пример
Платформа: задачи с собеседований
Получив целое число, преобразуйте его в римскую цифру.
Пример
Ввод: 3Решение: https://apptractor.ru/MCMXCIV
Вывод: «III»
Ввод: 4
Вывод: «IV»
Ввод: 1994
Вывод: «MCMXCIV»
Платформа: задачи с собеседований
👍1
Прогрев приложения в iOS 15
iOS 15 принесла нам много нововведений. Среди них есть системная фича Prewarming, позволяющая “прогревать” наши приложения, чтобы сократить время их запуска. Что-ж, давайте разберемся, как это работает.
Статья: https://apptractor.ru/prwrm
Платформа: iOS
iOS 15 принесла нам много нововведений. Среди них есть системная фича Prewarming, позволяющая “прогревать” наши приложения, чтобы сократить время их запуска. Что-ж, давайте разберемся, как это работает.
Статья: https://apptractor.ru/prwrm
Платформа: iOS
👍5
EasyTheme - библиотека для упрощения внедрения тем в приложения на Swift. Библиотека поддерживает iOS, macOS, tvOS, watchOS, дает полный контроль над темой, обновляет текущие View, ориентирована на протоколы и расширяема.
Библиотека на GitHub: https://github.com/onmyway133/EasyTheme
Платформа: iOS
⭐️: 227
Библиотека на GitHub: https://github.com/onmyway133/EasyTheme
Платформа: iOS
⭐️: 227
Пишите плохой код - почему вы должны это делать и чувствовать себя при этом хорошо
Любые трения вредят времени моей работы. Это снижает скорость, с которой я могу превратить неопределенность в уверенность, то есть обучение. Моя самая долгосрочная ценность создается путем обучения как можно быстрее, поскольку это множитель для всего будущего кода, который я пишу, или систем, которые я разрабатываю. Другими словами: поскольку «написание — это переписывание», программирование — это рефакторинг.
Моя самая долгосрочная ценность создается путем обучения как можно быстрее.
Вот почему вы должны писать дерьмовый код. Или, точнее, почему вы должны писать БОЛЬШЕ дерьмового кода
Статья: https://apptractor.ru/info/articles/shitty-code.html
Платформа: программирование
Любые трения вредят времени моей работы. Это снижает скорость, с которой я могу превратить неопределенность в уверенность, то есть обучение. Моя самая долгосрочная ценность создается путем обучения как можно быстрее, поскольку это множитель для всего будущего кода, который я пишу, или систем, которые я разрабатываю. Другими словами: поскольку «написание — это переписывание», программирование — это рефакторинг.
Моя самая долгосрочная ценность создается путем обучения как можно быстрее.
Вот почему вы должны писать дерьмовый код. Или, точнее, почему вы должны писать БОЛЬШЕ дерьмового кода
Статья: https://apptractor.ru/info/articles/shitty-code.html
Платформа: программирование
Экспорт UI дизайн-интерфейсов из Figma в Xcode iOS/Android Studio, в виде .xib/xml
FigmaConvertXib это инструмент для экспорта элементов дизайна из проекта Figma, в среду разработки, с точностью 90%. В результате конвертации будут созданы файлы xib / xml, и уже с помощью интерфейс редактора Xcode/Android Studio, можно будет манипулировать всеми элементами у себя коде. Если дизайн вашего проекта разрабатывается в Figma, и вы не реализуете дизайн программно, то это для вас. Для того чтобы не тратить огромное время на реализацию всех UI элементов.
Статья: https://apptractor.ru/fgmxml
Платформа: разработка
⬆️: +8
FigmaConvertXib это инструмент для экспорта элементов дизайна из проекта Figma, в среду разработки, с точностью 90%. В результате конвертации будут созданы файлы xib / xml, и уже с помощью интерфейс редактора Xcode/Android Studio, можно будет манипулировать всеми элементами у себя коде. Если дизайн вашего проекта разрабатывается в Figma, и вы не реализуете дизайн программно, то это для вас. Для того чтобы не тратить огромное время на реализацию всех UI элементов.
Статья: https://apptractor.ru/fgmxml
Платформа: разработка
⬆️: +8
👍3
Новые Tech Talks видео от Apple
Apple опубликовала ряд новых видео для разработчиков на своем сайте. Сняты они в рамках Tech Talks — виртуальной конференции, которая прошла с 25 октября по 17 декабря. В данной подборке есть, например:
• Создание и развертывание Safari Extensions для iOS
• Кастомные страницы приложений
• Оптимизация продуктовых страниц
• Развертывание iOS 15 в организации
• Советы, которые помогут избежать типовых ошибок в ревью
• Исследование и управление данными в Swift с помощью TabularData
• Работа с CloudKit Sharing
• Работа с StoreKit 2 и App Store Server API
• Новое в Metal для A15 Bionic
Видео: https://apptractor.ru/ttlksvd
Платформа: iOS
Apple опубликовала ряд новых видео для разработчиков на своем сайте. Сняты они в рамках Tech Talks — виртуальной конференции, которая прошла с 25 октября по 17 декабря. В данной подборке есть, например:
• Создание и развертывание Safari Extensions для iOS
• Кастомные страницы приложений
• Оптимизация продуктовых страниц
• Развертывание iOS 15 в организации
• Советы, которые помогут избежать типовых ошибок в ревью
• Исследование и управление данными в Swift с помощью TabularData
• Работа с CloudKit Sharing
• Работа с StoreKit 2 и App Store Server API
• Новое в Metal для A15 Bionic
Видео: https://apptractor.ru/ttlksvd
Платформа: iOS
👍1
Библиотека нашего читателя - Jugger.dart, реализация внедрения зависимостей во время компиляции для Dart и Flutter.
Библиотека на GitHub: https://github.com/ivk1800/jugger.dart
Платформа: Flutter
⭐️: 3
Библиотека на GitHub: https://github.com/ivk1800/jugger.dart
Платформа: Flutter
⭐️: 3
GitHub
GitHub - ivk1800/jugger.dart: Dependency Injection for Flutter and Dart
Dependency Injection for Flutter and Dart. Contribute to ivk1800/jugger.dart development by creating an account on GitHub.
👍1
Исследуем Material You для Jetpack Compose
В этом посте мы рассмотрим новую библиотеку Material You, доступную для Jetpack Compose, и посмотрим, как мы можем применить ее динамические цвета к Stream Chat Compose SDK для веселого, красочного и персонализированного обмена сообщениями.
Статья: https://apptractor.ru/mtrUcmpz
Платформа: Android
👋: 145
В этом посте мы рассмотрим новую библиотеку Material You, доступную для Jetpack Compose, и посмотрим, как мы можем применить ее динамические цвета к Stream Chat Compose SDK для веселого, красочного и персонализированного обмена сообщениями.
Статья: https://apptractor.ru/mtrUcmpz
Платформа: Android
👋: 145
Forwarded from Код Воробья для iOS разработчиков
Как устроен онбординг в App Store. Контроллер назвали
Заголовок “What’s New…” поместили в контейнер, хотя внутри него только лейбл. Ячейки это
Тулбар обычная вью с фоном
Иконка, текст и кнопки в тулбаре поместили в вертикальный стек. Ненормально большой отсуп снизу тулбара задан фикс значением от layoutMargins.bottom + 89.
#ViewHierarchy
OnboardingViewController
. Не оборачивали в навигейшн. Основной вью выступает не коллекция, а UIScrollView
. Заголовок “What’s New…” поместили в контейнер, хотя внутри него только лейбл. Ячейки это
UIView
, а тайтл-описание находятся в стеке.Тулбар обычная вью с фоном
UIVisualEffectView
. Текст с кнопкой "See how your data..." это UITextView
. Иконка, текст и кнопки в тулбаре поместили в вертикальный стек. Ненормально большой отсуп снизу тулбара задан фикс значением от layoutMargins.bottom + 89.
#ViewHierarchy
👍6💩1
WindowState — это компонент для Jetpack Compose от Microsoft, который помогает вам легко получить сведения о состоянии окон на устройствах с двумя, складными или большими экранами с помощью библиотеки Google Jetpack WindowManager. Компонент предоставляет текущую информацию об окне в виде состояния Compose, включая положение складывания, ориентацию и классы размера окна. Для устройств с двумя экранами и складных устройств, сочетающих различные положения и ориентации складывания, компонент представляем четыре положения дисплея, чтобы можно было воспользоваться преимуществами этих новых форм-факторов: Двойной книжный, Двойной альбомный, Одиночный портретный, Одиночный альбомный.
Библиотека на GitHub: https://github.com/microsoft/surface-duo-compose-sdk/tree/main/WindowState
Платформа: Android
⭐️: 9
Библиотека на GitHub: https://github.com/microsoft/surface-duo-compose-sdk/tree/main/WindowState
Платформа: Android
⭐️: 9
Новые стенания про Google Play.
«Ваше приложение нарушает правила Google Play»: сводки из ада
Маркет Google Play хорошо всем известен. Он предустановлен на всех Android-девайсах, которые продаются в магазинах, так что приток пользователей там максимальный. Однако этим преимущества, собственно говоря, и исчерпываются. Проблема Google Play, впрочем, заключается не в деньгах, а в некомпетентности сотрудников.
Статья: https://apptractor.ru/prgp
Платформа: Android
⬆️: +22
«Ваше приложение нарушает правила Google Play»: сводки из ада
Маркет Google Play хорошо всем известен. Он предустановлен на всех Android-девайсах, которые продаются в магазинах, так что приток пользователей там максимальный. Однако этим преимущества, собственно говоря, и исчерпываются. Проблема Google Play, впрочем, заключается не в деньгах, а в некомпетентности сотрудников.
Статья: https://apptractor.ru/prgp
Платформа: Android
⬆️: +22
This media is not supported in your browser
VIEW IN TELEGRAM
Swimat - плагин Xcode для форматирования вашего кода Swift.
Плагин на GitHub: https://github.com/Jintin/Swimat
Платформа: iOS
⭐️: 1.5К
Плагин на GitHub: https://github.com/Jintin/Swimat
Платформа: iOS
⭐️: 1.5К
Учебный курс по GitHub Actions на YouTube
Курс посвящен GitHub как платформе автоматизации. Фактически, он научит вас, как написать свой первый конвейер рабочего процесса с GitHub Actions и GitHub API для автоматизированного создания, тестирования и развертывания ПО.
Есть 4 видео:
1. Написание вашего первого workflow с помощью GitHub Actions и GitHub API.
2. Создание конвейеров непрерывной интеграции (CI) Python и NodeJS с помощью GitHub Actions.
3. Непрерывное развертывание (CD) с помощью GitHub Actions.
4. Управляйте инфраструктурой AWS с помощью Terraform как профессиональный DevOps-инженер.
Видео: https://apptractor.ru/gthbact
Курс посвящен GitHub как платформе автоматизации. Фактически, он научит вас, как написать свой первый конвейер рабочего процесса с GitHub Actions и GitHub API для автоматизированного создания, тестирования и развертывания ПО.
Есть 4 видео:
1. Написание вашего первого workflow с помощью GitHub Actions и GitHub API.
2. Создание конвейеров непрерывной интеграции (CI) Python и NodeJS с помощью GitHub Actions.
3. Непрерывное развертывание (CD) с помощью GitHub Actions.
4. Управляйте инфраструктурой AWS с помощью Terraform как профессиональный DevOps-инженер.
Видео: https://apptractor.ru/gthbact
Введение в Jetpack DataStore
DataStore — это библиотека хранения данных Jetpack, которая обеспечивает безопасный и последовательный способ хранения небольших объемов данных, таких как настройки или состояние приложения. Он основан на корутинах Kotlin и Flow, которые обеспечивают асинхронное хранение данных. DataStore призван заменить SharedPreferences, поскольку является потокобезопасным и неблокирующимся. Он предоставляет две разные реализации: Proto DataStore, в котором хранятся типизированные объекты (поддерживаемые буферами протокола), и Preferences DataStore, в котором хранятся пары ключ-значение.
В этой статье более подробно рассматривается DataStore — как он работает, какие реализации предоставляет и каковы разные варианты его использования. Мы также рассмотрим, какие преимущества и улучшения он дает по сравнению с SharedPreferences, и почему это делает DataStore достойным вашего внимания.
Статья: https://apptractor.ru/info/articles/jetpack-datastore.html
Платформа: Android
DataStore — это библиотека хранения данных Jetpack, которая обеспечивает безопасный и последовательный способ хранения небольших объемов данных, таких как настройки или состояние приложения. Он основан на корутинах Kotlin и Flow, которые обеспечивают асинхронное хранение данных. DataStore призван заменить SharedPreferences, поскольку является потокобезопасным и неблокирующимся. Он предоставляет две разные реализации: Proto DataStore, в котором хранятся типизированные объекты (поддерживаемые буферами протокола), и Preferences DataStore, в котором хранятся пары ключ-значение.
В этой статье более подробно рассматривается DataStore — как он работает, какие реализации предоставляет и каковы разные варианты его использования. Мы также рассмотрим, какие преимущества и улучшения он дает по сравнению с SharedPreferences, и почему это делает DataStore достойным вашего внимания.
Статья: https://apptractor.ru/info/articles/jetpack-datastore.html
Платформа: Android
Faradle - игра типа Wordle, сделанная на Jetpack Compose.
Проект на GitHub: https://github.com/adibfara/Faradle
Платформа: Android
⭐️: 80
Проект на GitHub: https://github.com/adibfara/Faradle
Платформа: Android
⭐️: 80
Как меня разорили мои облачные расходы
Я был и остаюсь ярым сторонником «облака». Я создал Have I Been Pwned (HIBP) как cloud-first сервис, в котором использовались преимущества современных облачных парадигм, таких как Azure Table Storage, для значительного снижения затрат при сумасшедшем уровне производительности, которого я никогда раньше не мог достичь. Я написал много статей о том, как делать большие дела за небольшие деньги, и говорил по всему миру о большом успехе, которого я добился с помощью этих подходов. Один из таких докладов был «Как я поимел свои облачные расходы», поэтому кажется уместным, что сегодня я пишу о полной противоположности — о том, как мои облачные затраты поимели меня.
Статья: https://apptractor.ru/cldpwnd
Платформа: облако
Я был и остаюсь ярым сторонником «облака». Я создал Have I Been Pwned (HIBP) как cloud-first сервис, в котором использовались преимущества современных облачных парадигм, таких как Azure Table Storage, для значительного снижения затрат при сумасшедшем уровне производительности, которого я никогда раньше не мог достичь. Я написал много статей о том, как делать большие дела за небольшие деньги, и говорил по всему миру о большом успехе, которого я добился с помощью этих подходов. Один из таких докладов был «Как я поимел свои облачные расходы», поэтому кажется уместным, что сегодня я пишу о полной противоположности — о том, как мои облачные затраты поимели меня.
Статья: https://apptractor.ru/cldpwnd
Платформа: облако