Темная сторона однонаправленных архитектур Swift
В этой статье речь пойдет о главной проблеме всех однонаправленных архитектур Swift. Собственно говоря, это не проблема однонаправленных архитектур как таковых. Скорее, это проблема моделирования действий или событий как значений. Я ее называю “пинг-понг-проблемой”. Все дело в “скачках” между разными местами кода, которые приходится преодолевать, чтобы получить целостное представление обо всем потоке. Рассмотрим для начала простой пример.
https://medium.com/the-swift-cooperative/the-dark-side-of-unidirectional-architectures-in-swift-e4acf243ff1c
#ios
👉 @developer_mobila
В этой статье речь пойдет о главной проблеме всех однонаправленных архитектур Swift. Собственно говоря, это не проблема однонаправленных архитектур как таковых. Скорее, это проблема моделирования действий или событий как значений. Я ее называю “пинг-понг-проблемой”. Все дело в “скачках” между разными местами кода, которые приходится преодолевать, чтобы получить целостное представление обо всем потоке. Рассмотрим для начала простой пример.
https://medium.com/the-swift-cooperative/the-dark-side-of-unidirectional-architectures-in-swift-e4acf243ff1c
#ios
👉 @developer_mobila
👍2
🔥 Почему UGC-креативы — лучший выбор для продвижения приложений 🔥
UGC-креативы — те самые ролики, где вместо дорогих продакшн-сцен юзер видит реальную жизнь, а вы получаете больше дешевых триалов и реальный прирост установок. Отличный способ масштабировать user acquisition и попасть в сердечко аудитории!
🔥 В JOY ADS мы создаем UGC-креативы для мобильных апок — от гейминга до финтеха — в 25+ странах, успешно работая с YanGo, inDrive и Axlebolt и другими топ брендами.
Мы берем на себя все: от подбора креаторов до монтажа, от сценариев до ресайзов для разных платформ.
Наши кейсы тут
Почему бы не добавить UGC-креативы в вашу кампанию в TikTok, Meta, Google Ads, VK или РСЯ?
🎁 Пиши @LeonelaJoy и забирай бесплатную консультацию по вашей вертикали + 10% скидку на первый UGC-запуск 🎏
Перешли этот пост своему UA-менеджеру — и в новом году тебя будут ждатьнизкий CPA, высокий ROAS и бесконечный поток инсталов!
UGC-креативы — те самые ролики, где вместо дорогих продакшн-сцен юзер видит реальную жизнь, а вы получаете больше дешевых триалов и реальный прирост установок. Отличный способ масштабировать user acquisition и попасть в сердечко аудитории!
Мы берем на себя все: от подбора креаторов до монтажа, от сценариев до ресайзов для разных платформ.
Наши кейсы тут
Почему бы не добавить UGC-креативы в вашу кампанию в TikTok, Meta, Google Ads, VK или РСЯ?
🎁 Пиши @LeonelaJoy и забирай бесплатную консультацию по вашей вертикали + 10% скидку на первый UGC-запуск 🎏
Перешли этот пост своему UA-менеджеру — и в новом году тебя будут ждать
Please open Telegram to view this post
VIEW IN TELEGRAM
Фокус в Android TV
Разработчики начинающие писать приложения под Android TV часто сталкиваются с непониманием того, как работает фокус. По моему опыту, и по опыту коллег часто приходится сталкиваться с непонятными костылями в Android TV проектах, результатом которых является поломанный фокус, потому что ребята не осознают, как изящно решать проблемы. К сожалению разбираться в таком случае приходится самостоятельно, т.к. погуглив вы вряд ли найдете инфу на эту тему.
В данной статье мы рассмотрим как работает фокус в Android, по какому принципу он передается, какие существуют методы для работы с ним, и другие нюансы. Фокус будем рассматривать в рамках Android View, по компоузу статью возможно напишу позже.
https://habr.com/ru/articles/840296/
#Android@developer_mobila
👉 @developer_mobila
Разработчики начинающие писать приложения под Android TV часто сталкиваются с непониманием того, как работает фокус. По моему опыту, и по опыту коллег часто приходится сталкиваться с непонятными костылями в Android TV проектах, результатом которых является поломанный фокус, потому что ребята не осознают, как изящно решать проблемы. К сожалению разбираться в таком случае приходится самостоятельно, т.к. погуглив вы вряд ли найдете инфу на эту тему.
В данной статье мы рассмотрим как работает фокус в Android, по какому принципу он передается, какие существуют методы для работы с ним, и другие нюансы. Фокус будем рассматривать в рамках Android View, по компоузу статью возможно напишу позже.
https://habr.com/ru/articles/840296/
#Android@developer_mobila
👉 @developer_mobila
👍2😁2
Магия ссылок Системы быстрых платежей
Всем привет! Меня зовут Татьяна, я Android-разработчик в НСПК. С 2023 года я стала частью команды Мир Plat.Form, где с головой погрузилась в мир платежных ссылок и их многогранное применение. В этой статье я хочу подробно рассказать о том, как работают платежные ссылки, поделиться своим опытом и развеять возможные мифы, связанные с ними.
https://habr.com/ru/companies/jugru/articles/844248/
#Android@developer_mobila
👉 @developer_mobila
Всем привет! Меня зовут Татьяна, я Android-разработчик в НСПК. С 2023 года я стала частью команды Мир Plat.Form, где с головой погрузилась в мир платежных ссылок и их многогранное применение. В этой статье я хочу подробно рассказать о том, как работают платежные ссылки, поделиться своим опытом и развеять возможные мифы, связанные с ними.
https://habr.com/ru/companies/jugru/articles/844248/
#Android@developer_mobila
👉 @developer_mobila
👍1
Виджеты iOS 18: добавляем поддержку tint color
Apple продолжает радовать нас с каждым обновлением iOS, и iOS 18 не стала исключением. В новой версии системы появилась возможность кастомизации иконок и виджетов на домашнем экране. Пользователи могут сделать их тёмными или перекрасить в любимый цвет.
Для пользователей это настоящая находка в плане персонализации своего iPhone. Но что насчёт разработчиков, которым приходится оперативно адаптировать свои приложения к новому API? В этой статье я расскажу, как команда Clover подготовила виджеты под iOS 18, которые после обновления системы вдруг перестали выглядеть привлекательно.
https://habr.com/ru/articles/845174/
#ios@developer_mobila
👉 @developer_mobila
Apple продолжает радовать нас с каждым обновлением iOS, и iOS 18 не стала исключением. В новой версии системы появилась возможность кастомизации иконок и виджетов на домашнем экране. Пользователи могут сделать их тёмными или перекрасить в любимый цвет.
Для пользователей это настоящая находка в плане персонализации своего iPhone. Но что насчёт разработчиков, которым приходится оперативно адаптировать свои приложения к новому API? В этой статье я расскажу, как команда Clover подготовила виджеты под iOS 18, которые после обновления системы вдруг перестали выглядеть привлекательно.
https://habr.com/ru/articles/845174/
#ios@developer_mobila
👉 @developer_mobila
👍2
Заблуждение UseCase: что нужно знать Android-разработчикам
Если вы давно работаете в мире Android-разработки, то наверняка слышали о UseCase. Их часто представляют как святой грааль «чистой архитектуры». UseCase обещают отделить бизнес-логику от слоев представления и данных, делая ваш код более модульным, многократно используемым и тестируемым. Но вот в чем загвоздка: UseCase не всегда являются решением.
На самом деле, слепое их применение может привести к раздутому коду и ненужной сложности, а это именно то, чего пытается избежать Чистая Архитектура. В этой статье мы развеем мифы, связанные с UseCase, и обсудим, в каких случаях они необходимы, а в каких — просто пустая трата времени. Если вы являетесь разработчиком Android и думаете, не приносит ли вам этот паттерн больше вреда, чем пользы, то эта статья для вас.
https://harisweitani.medium.com/the-usecase-lie-what-android-developers-need-to-know-7586b00fbbb9
#Android@developer_mobila
👉 @developer_mobila
Если вы давно работаете в мире Android-разработки, то наверняка слышали о UseCase. Их часто представляют как святой грааль «чистой архитектуры». UseCase обещают отделить бизнес-логику от слоев представления и данных, делая ваш код более модульным, многократно используемым и тестируемым. Но вот в чем загвоздка: UseCase не всегда являются решением.
На самом деле, слепое их применение может привести к раздутому коду и ненужной сложности, а это именно то, чего пытается избежать Чистая Архитектура. В этой статье мы развеем мифы, связанные с UseCase, и обсудим, в каких случаях они необходимы, а в каких — просто пустая трата времени. Если вы являетесь разработчиком Android и думаете, не приносит ли вам этот паттерн больше вреда, чем пользы, то эта статья для вас.
https://harisweitani.medium.com/the-usecase-lie-what-android-developers-need-to-know-7586b00fbbb9
#Android@developer_mobila
👉 @developer_mobila
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Flappy Bird на Си для Android весом APK всего 92 Килобайта
Всё началось в далёком 2021 году. Тогда я наткнулся на репозиторий rawdrawandroid. Появилась мотивация сделать какую‑нибудь игру с минимальным весом APK, но при этом, что бы игра была простой и понятной. В моменте появилась идея сделать клон давно забытой игры Flappy Bird. Которую уже портировали на многие языки программирования.
Тогда, позднее в 2021 году, я нашел ещё один интересный репозиторий Raylib.
https://habr.com/ru/articles/845068/
#Android@developer_mobila
👉 @developer_mobila
Всё началось в далёком 2021 году. Тогда я наткнулся на репозиторий rawdrawandroid. Появилась мотивация сделать какую‑нибудь игру с минимальным весом APK, но при этом, что бы игра была простой и понятной. В моменте появилась идея сделать клон давно забытой игры Flappy Bird. Которую уже портировали на многие языки программирования.
Тогда, позднее в 2021 году, я нашел ещё один интересный репозиторий Raylib.
https://habr.com/ru/articles/845068/
#Android@developer_mobila
👉 @developer_mobila
👍2
📊 Mastering Data Binning with Swift Charts
🔥 Как улучшить визуализацию данных в iOS? Статья расскажет, как эффективно использовать data binning в сочетании с Swift Charts для построения наглядных и чистых графиков.
🚀 Что такое Data Binning?
Data Binning — это метод группировки числовых данных в интервалы (бинды). Такой подход позволяет упростить визуализацию больших объёмов данных и увидеть общие закономерности.
📌 Что вы узнаете из статьи?
1. Основы работы с Swift Charts
- Как создать графики и гистограммы с помощью Swift Charts.
2. Группировка данных (Binning):
- Как разделять данные на интервалы и выводить их на графике.
- Использование aggregate и transform функций в SwiftUI.
3. Практические примеры:
- Пошаговое создание графиков с данными, распределёнными по "биндам".
- Улучшение читаемости и визуального восприятия диаграмм.
💡Кому будет полезно?
- Разработчикам iOS, работающим с данными и аналитикой.
- Тем, кто использует SwiftUI и хочет углубить знания в построении графиков.
- Всем, кто стремится делать визуализации более понятными и красивыми.
https://fatbobman.com/en/posts/mastering-data-binning-with-swift-charts
#ios@developer_mobila
👉 @developer_mobila
🔥 Как улучшить визуализацию данных в iOS? Статья расскажет, как эффективно использовать data binning в сочетании с Swift Charts для построения наглядных и чистых графиков.
🚀 Что такое Data Binning?
Data Binning — это метод группировки числовых данных в интервалы (бинды). Такой подход позволяет упростить визуализацию больших объёмов данных и увидеть общие закономерности.
📌 Что вы узнаете из статьи?
1. Основы работы с Swift Charts
- Как создать графики и гистограммы с помощью Swift Charts.
2. Группировка данных (Binning):
- Как разделять данные на интервалы и выводить их на графике.
- Использование aggregate и transform функций в SwiftUI.
3. Практические примеры:
- Пошаговое создание графиков с данными, распределёнными по "биндам".
- Улучшение читаемости и визуального восприятия диаграмм.
💡Кому будет полезно?
- Разработчикам iOS, работающим с данными и аналитикой.
- Тем, кто использует SwiftUI и хочет углубить знания в построении графиков.
- Всем, кто стремится делать визуализации более понятными и красивыми.
https://fatbobman.com/en/posts/mastering-data-binning-with-swift-charts
#ios@developer_mobila
👉 @developer_mobila
👍3
Нативные библиотеки для Android
В этой статье мы рассмотрим работу с нативными библиотеками, которые могут содержаться в приложениях для Android. Нативные библиотеки — это код, который разработчик написал, а затем скомпилировал для конкретной архитектуры компьютера. Чаще всего этот код написан на C или C++. Наиболее распространенными причинами, по которым разработчик может это сделать, являются математически сложные или требующие больших затрат времени операции, такие как работа с графическими библиотеками.
Стоит отметить, что разработчики вредоносных программ также начали переходить на машинный код, поскольку обратная инженерия скомпилированных двоичных файлов, как правило, менее распространена, чем анализ байт-кода DEX. Во многом это связано с тем, что байт-код DEX может быть декомпилирован на Java, в то время как нативный, скомпилированный код часто приходится анализировать как ассемблер.
В этой статье мы будем говорить об использовании нативных библиотек для ARM и x86, чтобы каждый пользователь мог выбрать ту архитектуру, с которой ему удобнее работать.
https://habr.com/ru/companies/otus/articles/844110/
#Android@developer_mobila
👉 @developer_mobila
В этой статье мы рассмотрим работу с нативными библиотеками, которые могут содержаться в приложениях для Android. Нативные библиотеки — это код, который разработчик написал, а затем скомпилировал для конкретной архитектуры компьютера. Чаще всего этот код написан на C или C++. Наиболее распространенными причинами, по которым разработчик может это сделать, являются математически сложные или требующие больших затрат времени операции, такие как работа с графическими библиотеками.
Стоит отметить, что разработчики вредоносных программ также начали переходить на машинный код, поскольку обратная инженерия скомпилированных двоичных файлов, как правило, менее распространена, чем анализ байт-кода DEX. Во многом это связано с тем, что байт-код DEX может быть декомпилирован на Java, в то время как нативный, скомпилированный код часто приходится анализировать как ассемблер.
В этой статье мы будем говорить об использовании нативных библиотек для ARM и x86, чтобы каждый пользователь мог выбрать ту архитектуру, с которой ему удобнее работать.
https://habr.com/ru/companies/otus/articles/844110/
#Android@developer_mobila
👉 @developer_mobila
👍1
Color Mixing in iOS 18
В этом видео я хочу познакомить вас с новым модификатором представления Color, который позволит смешивать два цветовых представления, создавая новое смешанное цветовое представление. Мы будем использовать это для создания приложения, которое сгенерирует массив цветовых образцов для вас на основе этого смешанного цвета.
Table of Contents:
0:00 Introduction
2:52 ColorMixer View
9:25 Hex and RGB Values
12:10 ShaderView
17:51 ColorView
23:05 Presenting Color Information
https://www.youtube.com/watch?v=KoKlr5dqpP4
#ios@developer_mobila
👉 @developer_mobila
В этом видео я хочу познакомить вас с новым модификатором представления Color, который позволит смешивать два цветовых представления, создавая новое смешанное цветовое представление. Мы будем использовать это для создания приложения, которое сгенерирует массив цветовых образцов для вас на основе этого смешанного цвета.
Table of Contents:
0:00 Introduction
2:52 ColorMixer View
9:25 Hex and RGB Values
12:10 ShaderView
17:51 ColorView
23:05 Presenting Color Information
https://www.youtube.com/watch?v=KoKlr5dqpP4
#ios@developer_mobila
👉 @developer_mobila
YouTube
Color Mixing in iOS 18
In this video, I want to introduce you to a new Color view modifier that will allow you to mix two color views together to produce a new mixed color view. We are going to be using this to create an app that will generate an array of color swatches for you…
👍2
5 распространенных вопросов для собеседования по Kotlin Coroutines
Корутины — это одна из самых важных концепций, которую необходимо понять разработчику Android. Они являются рекомендованным решением для асинхронного программирования на Android. Корутины позволяют писать асинхронный код более безопасным, поддерживаемым и лаконичным способом. В этой статье представлены 5 важных вопросов, которые вполне могут быть заданы на собеседовании на позицию Android-разработчика. Эти вопросы взяты из списка вопросов, представленных на мероприятии Google DevFest, проведённом в 2021 году. Знание ответов на эти вопросы определённо будет полезным для вас. Я рекомендую добавить эту статью в список для чтения, чтобы вернуться к ней перед собеседованием. А теперь, когда вступление закончено, перейдём к вопросам!
https://medium.com/@theAndroidDeveloper/5-common-kotlin-coroutines-interview-questions-f084d098f51d
#Android@developer_mobila
👉 @developer_mobila
Корутины — это одна из самых важных концепций, которую необходимо понять разработчику Android. Они являются рекомендованным решением для асинхронного программирования на Android. Корутины позволяют писать асинхронный код более безопасным, поддерживаемым и лаконичным способом. В этой статье представлены 5 важных вопросов, которые вполне могут быть заданы на собеседовании на позицию Android-разработчика. Эти вопросы взяты из списка вопросов, представленных на мероприятии Google DevFest, проведённом в 2021 году. Знание ответов на эти вопросы определённо будет полезным для вас. Я рекомендую добавить эту статью в список для чтения, чтобы вернуться к ней перед собеседованием. А теперь, когда вступление закончено, перейдём к вопросам!
https://medium.com/@theAndroidDeveloper/5-common-kotlin-coroutines-interview-questions-f084d098f51d
#Android@developer_mobila
👉 @developer_mobila
👍1
Notifications Your App can use to Increase Activation and Retention
Статья посвящена внедрению системы «умных» уведомлений для мобильных приложений, направленной на повышение вовлеченности пользователей и снижение оттока.
Основные аспекты:
- Умные уведомления: уведомления доставляются в моменты, когда пользователь активно использует разблокированное устройство, что повышает их заметность и вероятность взаимодействия.
- Преимущества для разработчиков: система не требует настройки push-серверов и сложного кода; интеграция занимает менее 30 минут.
- Преимущества для маркетинговых команд: возможность удаленного обновления уведомлений, интеллектуальный выбор времени доставки, поддержка A/B-тестирования и гибкость настройки.
- Готовые шаблоны: предоставляются проверенные шаблоны уведомлений с логикой планирования и таргетинга, способствующие повышению активации и снижению оттока пользователей.
Система Critical Moments предлагает локальное планирование уведомлений, исключая необходимость в push-серверах, и не взимает плату за каждое сообщение. После первоначальной настройки добавление новых уведомлений не требует написания кода; достаточно обновить файл конфигурации. Удаленные обновления позволяют оперативно реагировать на поведение пользователей без необходимости утверждения в магазинах приложений. Поддержка A/B-тестирования облегчает экспериментирование с различными сообщениями и временем их отправки. Кроме того, API системы позволяют учитывать часовые пояса пользователей для точного выбора времени доставки уведомлений.
https://criticalmoments.io/blog/introducing_notifications
#ios@developer_mobila
👉 @developer_mobila
Статья посвящена внедрению системы «умных» уведомлений для мобильных приложений, направленной на повышение вовлеченности пользователей и снижение оттока.
Основные аспекты:
- Умные уведомления: уведомления доставляются в моменты, когда пользователь активно использует разблокированное устройство, что повышает их заметность и вероятность взаимодействия.
- Преимущества для разработчиков: система не требует настройки push-серверов и сложного кода; интеграция занимает менее 30 минут.
- Преимущества для маркетинговых команд: возможность удаленного обновления уведомлений, интеллектуальный выбор времени доставки, поддержка A/B-тестирования и гибкость настройки.
- Готовые шаблоны: предоставляются проверенные шаблоны уведомлений с логикой планирования и таргетинга, способствующие повышению активации и снижению оттока пользователей.
Система Critical Moments предлагает локальное планирование уведомлений, исключая необходимость в push-серверах, и не взимает плату за каждое сообщение. После первоначальной настройки добавление новых уведомлений не требует написания кода; достаточно обновить файл конфигурации. Удаленные обновления позволяют оперативно реагировать на поведение пользователей без необходимости утверждения в магазинах приложений. Поддержка A/B-тестирования облегчает экспериментирование с различными сообщениями и временем их отправки. Кроме того, API системы позволяют учитывать часовые пояса пользователей для точного выбора времени доставки уведомлений.
https://criticalmoments.io/blog/introducing_notifications
#ios@developer_mobila
👉 @developer_mobila
👍3
Использование Traits для аннотации и настройки поведения тестов
Статья описывает, как применять traits в новом фреймворке Swift Testing для кастомизации и аннотации тестов. Автор рассматривает встроенные traits, такие как
https://www.avanderlee.com/swift-testing/using-traits-to-annotate-and-customize-test-behavior/
#ios@developer_mobila
👉 @developer_mobila
Статья описывает, как применять traits в новом фреймворке Swift Testing для кастомизации и аннотации тестов. Автор рассматривает встроенные traits, такие как
enabled и disabled, которые позволяют включать или отключать тесты на основе условий выполнения, а также trait bug для связывания тестов с конкретными баг-трекерами. Кроме того, обсуждаются возможности ограничения времени выполнения тестов с помощью timeLimit и последовательного запуска тестов с использованием serialized. https://www.avanderlee.com/swift-testing/using-traits-to-annotate-and-customize-test-behavior/
#ios@developer_mobila
👉 @developer_mobila
👍2
Media is too big
VIEW IN TELEGRAM
Создаем мерцающий текст в Jetpack Compose
РазработкаСоздаем мерцающий текст в Jetpack Compose
В этой статье мы создадим потрясающую анимацию мерцающего текста в Jetpack Compose, идеально подходящую для минималистичного загрузчика.
https://medium.com/@kappdev/how-to-create-a-shimmering-text-animation-in-jetpack-compose-eb4a553d924c
#Android@developer_mobila
👉 @developer_mobila
РазработкаСоздаем мерцающий текст в Jetpack Compose
В этой статье мы создадим потрясающую анимацию мерцающего текста в Jetpack Compose, идеально подходящую для минималистичного загрузчика.
https://medium.com/@kappdev/how-to-create-a-shimmering-text-animation-in-jetpack-compose-eb4a553d924c
#Android@developer_mobila
👉 @developer_mobila
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Measure — это инструмент с открытым исходным кодом для мониторинга мобильных приложений.
Что умеет:
⚫️ Автоматически фиксирует аварии и ANR
⚫️ Отслеживает такие показатели, как время запуска, количество крешей и размер приложений
⚫️ Получает скриншоты с отчетами об исключениях
⚫️ Дает полную хронологию событий в сессиях с ошибками с автоматическим отслеживанием пользовательских кликов, событий навигации, http-вызовов, использования процессора, памяти и т.д. для более глубокого контекста
⚫️ Отслеживает пользовательские события с помощью дополнительных атрибутов
https://github.com/measure-sh/measure
#Android@developer_mobila
👉 @developer_mobila
Что умеет:
https://github.com/measure-sh/measure
#Android@developer_mobila
👉 @developer_mobila
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Media is too big
VIEW IN TELEGRAM
Итак, давайте создадим всплывающий экран | SwiftUI
В этом видео я покажу вам, как создать пользовательскую заставку для приложения SwiftUI | SwiftUI Custom Splash Screen | SwiftUI Animated Splash Screen | SwiftUI Custom Transitions | Swift | SwiftUI Xcode 16 | SwiftUI для iOS 18 | Xcode 16 SwiftUI.
источник
#ios@developer_mobila
👉 @developer_mobila
В этом видео я покажу вам, как создать пользовательскую заставку для приложения SwiftUI | SwiftUI Custom Splash Screen | SwiftUI Animated Splash Screen | SwiftUI Custom Transitions | Swift | SwiftUI Xcode 16 | SwiftUI для iOS 18 | Xcode 16 SwiftUI.
источник
#ios@developer_mobila
👉 @developer_mobila
👍3
Курс «Kotlin Backend Developer. Professional» — всё, что нужно для создания гибких и производительных приложений.
Что вы освоите:
Почему выбирают нас?
Не упустите шанс!
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruPlease open Telegram to view this post
VIEW IN TELEGRAM
Чистая обработка строк в Android – как сделать это правильно?
Обработка строк в Android часто кажется тривиальной задачей, но это только на первый взгляд. Статья рассказывает, как улучшить подход к работе со строками, делая код чище, проще в сопровождении и устойчивее к ошибкам.
Основные моменты:
- Разделяйте логику обработки строк: используйте утилитарные классы или расширения, чтобы избежать перегрузки компонентов приложения лишними функциями.
- Не забывайте про локализацию: храните строки в ресурсах, чтобы упростить поддержку мультиязычности.
- Строгая типизация: применяйте value objects для строковых данных, таких как email или телефонный номер, чтобы добавить дополнительную валидацию на уровне компиляции.
- Функции расширений Kotlin: благодаря их использованию можно добиться лаконичного и переиспользуемого кода.
https://proandroiddev.com/clean-strings-handling-in-android-483aa9aa0e94
#Android@developer_mobila
👉 @developer_mobila
Обработка строк в Android часто кажется тривиальной задачей, но это только на первый взгляд. Статья рассказывает, как улучшить подход к работе со строками, делая код чище, проще в сопровождении и устойчивее к ошибкам.
Основные моменты:
- Разделяйте логику обработки строк: используйте утилитарные классы или расширения, чтобы избежать перегрузки компонентов приложения лишними функциями.
- Не забывайте про локализацию: храните строки в ресурсах, чтобы упростить поддержку мультиязычности.
- Строгая типизация: применяйте value objects для строковых данных, таких как email или телефонный номер, чтобы добавить дополнительную валидацию на уровне компиляции.
- Функции расширений Kotlin: благодаря их использованию можно добиться лаконичного и переиспользуемого кода.
https://proandroiddev.com/clean-strings-handling-in-android-483aa9aa0e94
#Android@developer_mobila
👉 @developer_mobila
👍1
Подборка Telegram каналов для программистов
Системное администрирование 📌
https://news.1rj.ru/str/sysadmin_girl Девочка Сисадмин
https://news.1rj.ru/str/srv_admin_linux Админские угодья
https://news.1rj.ru/str/linux_srv Типичный Сисадмин
https://news.1rj.ru/str/linux_odmin Linux: Системный администратор
https://news.1rj.ru/str/devops_star DevOps Star (Звезда Девопса)
https://news.1rj.ru/str/i_linux Системный администратор
https://news.1rj.ru/str/linuxchmod Linux
https://news.1rj.ru/str/sys_adminos Системный Администратор
https://news.1rj.ru/str/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://news.1rj.ru/str/sysadminof Книги для админов, полезные материалы
https://news.1rj.ru/str/i_odmin Все для системного администратора
https://news.1rj.ru/str/i_odmin_book Библиотека Системного Администратора
https://news.1rj.ru/str/i_odmin_chat Чат системных администраторов
https://news.1rj.ru/str/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://news.1rj.ru/str/sysadminoff Новости Линукс Linux
1C разработка 📌
https://news.1rj.ru/str/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
https://news.1rj.ru/str/cpp_lib Библиотека C/C++ разработчика
https://news.1rj.ru/str/cpp_knigi Книги для программистов C/C++
https://news.1rj.ru/str/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
https://news.1rj.ru/str/pythonofff Python академия. Учи Python быстро и легко🐍
https://news.1rj.ru/str/BookPython Библиотека Python разработчика
https://news.1rj.ru/str/python_real Python подборки на русском и английском
https://news.1rj.ru/str/python_360 Книги по Python Rus
Java разработка 📌
https://news.1rj.ru/str/BookJava Библиотека Java разработчика
https://news.1rj.ru/str/java_360 Книги по Java Rus
https://news.1rj.ru/str/java_geek Учим Java на примерах
GitHub Сообщество 📌
https://news.1rj.ru/str/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://news.1rj.ru/str/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
https://news.1rj.ru/str/developer_mobila Мобильная разработка
https://news.1rj.ru/str/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
https://news.1rj.ru/str/frontend_1 Подборки для frontend разработчиков
https://news.1rj.ru/str/frontend_sovet Frontend советы, примеры и практика!
https://news.1rj.ru/str/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
https://news.1rj.ru/str/game_devv Все о разработке игр
Библиотеки 📌
https://news.1rj.ru/str/book_for_dev Книги для программистов Rus
https://news.1rj.ru/str/programmist_of Книги по программированию
https://news.1rj.ru/str/proglb Библиотека программиста
https://news.1rj.ru/str/bfbook Книги для программистов
https://news.1rj.ru/str/books_reserv Книги для программистов
БигДата, машинное обучение 📌
https://news.1rj.ru/str/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
https://news.1rj.ru/str/bookflow Лекции, видеоуроки, доклады с IT конференций
https://news.1rj.ru/str/coddy_academy Полезные советы по программированию
https://news.1rj.ru/str/rust_lib Полезный контент по программированию на Rust
https://news.1rj.ru/str/golang_lib Библиотека Go (Golang) разработчика
https://news.1rj.ru/str/itmozg Программисты, дизайнеры, новости из мира IT
https://news.1rj.ru/str/php_lib Библиотека PHP программиста 👨🏼💻👩💻
https://news.1rj.ru/str/nodejs_lib Подборки по Node js и все что с ним связано
https://news.1rj.ru/str/ruby_lib Библиотека Ruby программиста
QA, тестирование 📌
https://news.1rj.ru/str/testlab_qa Библиотека тестировщика
Шутки программистов 📌
https://news.1rj.ru/str/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://news.1rj.ru/str/thehaking Канал о кибербезопасности
https://news.1rj.ru/str/xakep_1 Статьи из "Хакера"
Книги, статьи для дизайнеров 📌
https://news.1rj.ru/str/ux_web Статьи, книги для дизайнеров
Английский 📌
https://news.1rj.ru/str/UchuEnglish Английский с нуля
Математика 📌
https://news.1rj.ru/str/Pomatematike Канал по математике
https://news.1rj.ru/str/phis_mat Обучающие видео, книги по Физике и Математике
Excel лайфхак📌
https://news.1rj.ru/str/Excel_lifehack
https://news.1rj.ru/str/tikon_1 Новости высоких технологий, науки и техники💡
https://news.1rj.ru/str/mir_teh Мир технологий (Technology World)
Вакансии 📌
https://news.1rj.ru/str/sysadmin_rabota Системный Администратор
https://news.1rj.ru/str/progjob Вакансии в IT
Системное администрирование 📌
https://news.1rj.ru/str/sysadmin_girl Девочка Сисадмин
https://news.1rj.ru/str/srv_admin_linux Админские угодья
https://news.1rj.ru/str/linux_srv Типичный Сисадмин
https://news.1rj.ru/str/linux_odmin Linux: Системный администратор
https://news.1rj.ru/str/devops_star DevOps Star (Звезда Девопса)
https://news.1rj.ru/str/i_linux Системный администратор
https://news.1rj.ru/str/linuxchmod Linux
https://news.1rj.ru/str/sys_adminos Системный Администратор
https://news.1rj.ru/str/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://news.1rj.ru/str/sysadminof Книги для админов, полезные материалы
https://news.1rj.ru/str/i_odmin Все для системного администратора
https://news.1rj.ru/str/i_odmin_book Библиотека Системного Администратора
https://news.1rj.ru/str/i_odmin_chat Чат системных администраторов
https://news.1rj.ru/str/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://news.1rj.ru/str/sysadminoff Новости Линукс Linux
1C разработка 📌
https://news.1rj.ru/str/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
https://news.1rj.ru/str/cpp_lib Библиотека C/C++ разработчика
https://news.1rj.ru/str/cpp_knigi Книги для программистов C/C++
https://news.1rj.ru/str/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
https://news.1rj.ru/str/pythonofff Python академия. Учи Python быстро и легко🐍
https://news.1rj.ru/str/BookPython Библиотека Python разработчика
https://news.1rj.ru/str/python_real Python подборки на русском и английском
https://news.1rj.ru/str/python_360 Книги по Python Rus
Java разработка 📌
https://news.1rj.ru/str/BookJava Библиотека Java разработчика
https://news.1rj.ru/str/java_360 Книги по Java Rus
https://news.1rj.ru/str/java_geek Учим Java на примерах
GitHub Сообщество 📌
https://news.1rj.ru/str/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://news.1rj.ru/str/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
https://news.1rj.ru/str/developer_mobila Мобильная разработка
https://news.1rj.ru/str/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
https://news.1rj.ru/str/frontend_1 Подборки для frontend разработчиков
https://news.1rj.ru/str/frontend_sovet Frontend советы, примеры и практика!
https://news.1rj.ru/str/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
https://news.1rj.ru/str/game_devv Все о разработке игр
Библиотеки 📌
https://news.1rj.ru/str/book_for_dev Книги для программистов Rus
https://news.1rj.ru/str/programmist_of Книги по программированию
https://news.1rj.ru/str/proglb Библиотека программиста
https://news.1rj.ru/str/bfbook Книги для программистов
https://news.1rj.ru/str/books_reserv Книги для программистов
БигДата, машинное обучение 📌
https://news.1rj.ru/str/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
https://news.1rj.ru/str/bookflow Лекции, видеоуроки, доклады с IT конференций
https://news.1rj.ru/str/coddy_academy Полезные советы по программированию
https://news.1rj.ru/str/rust_lib Полезный контент по программированию на Rust
https://news.1rj.ru/str/golang_lib Библиотека Go (Golang) разработчика
https://news.1rj.ru/str/itmozg Программисты, дизайнеры, новости из мира IT
https://news.1rj.ru/str/php_lib Библиотека PHP программиста 👨🏼💻👩💻
https://news.1rj.ru/str/nodejs_lib Подборки по Node js и все что с ним связано
https://news.1rj.ru/str/ruby_lib Библиотека Ruby программиста
QA, тестирование 📌
https://news.1rj.ru/str/testlab_qa Библиотека тестировщика
Шутки программистов 📌
https://news.1rj.ru/str/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://news.1rj.ru/str/thehaking Канал о кибербезопасности
https://news.1rj.ru/str/xakep_1 Статьи из "Хакера"
Книги, статьи для дизайнеров 📌
https://news.1rj.ru/str/ux_web Статьи, книги для дизайнеров
Английский 📌
https://news.1rj.ru/str/UchuEnglish Английский с нуля
Математика 📌
https://news.1rj.ru/str/Pomatematike Канал по математике
https://news.1rj.ru/str/phis_mat Обучающие видео, книги по Физике и Математике
Excel лайфхак📌
https://news.1rj.ru/str/Excel_lifehack
https://news.1rj.ru/str/tikon_1 Новости высоких технологий, науки и техники💡
https://news.1rj.ru/str/mir_teh Мир технологий (Technology World)
Вакансии 📌
https://news.1rj.ru/str/sysadmin_rabota Системный Администратор
https://news.1rj.ru/str/progjob Вакансии в IT
This media is not supported in your browser
VIEW IN TELEGRAM
Работаем с сетчатыми градиентами в iOS 18
В iOS 18 появилась возможность создавать сетчатые градиенты. Сетчатые градиенты — это действительно хороший способ создания очень крутых эффектов в пользовательском интерфейсе. В этой статье мы рассмотрим, что такое сетчатые градиенты, как их можно использовать и как их можно анимировать, чтобы они выглядели действительно круто.
Для начала мы рассмотрим, как можно создать сетчатый градиент. Мы рассмотрим, как это работает, а затем посмотрим, что можно анимировать и как можно играть с градиентами. В конце статьи я немного расскажу о том, где, на мой взгляд, имеет смысл использовать сетчатые градиенты, а где может быть не стоит.
https://www.donnywals.com/getting-started-with-mesh-gradients-on-ios-18/
#ios@developer_mobila
👉 @developer_mobila
В iOS 18 появилась возможность создавать сетчатые градиенты. Сетчатые градиенты — это действительно хороший способ создания очень крутых эффектов в пользовательском интерфейсе. В этой статье мы рассмотрим, что такое сетчатые градиенты, как их можно использовать и как их можно анимировать, чтобы они выглядели действительно круто.
Для начала мы рассмотрим, как можно создать сетчатый градиент. Мы рассмотрим, как это работает, а затем посмотрим, что можно анимировать и как можно играть с градиентами. В конце статьи я немного расскажу о том, где, на мой взгляд, имеет смысл использовать сетчатые градиенты, а где может быть не стоит.
https://www.donnywals.com/getting-started-with-mesh-gradients-on-ios-18/
#ios@developer_mobila
👉 @developer_mobila
👍1
В 2024-м экосистема Kotlin взлетела на новый уровень. Что дальше? Какие тренды взорвут 2025? Какие технологии войдут в топ, а какие окажутся в аутсайдерах?
🎙 Спикер Сергей Окатов — кандидат физико-математических наук и архитектор в Solar Security.
🗓 Регистрируйся на вебинар 30 января в 19:00 мск.
Участники получат скидку на большое обучение «Kotlin Backend Developer. Professional».
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruPlease open Telegram to view this post
VIEW IN TELEGRAM