#полезное
😵 6 основных аспектов безопасности
Незащищенный API становится легкой мишенью для хакеров, поэтому его безопасность – приоритет для разработчиков и компаний, дорожащих своей репутацией.
В этой статье мы рассмотрим шесть основных аспектов защиты API, которые помогут минимизировать риски взлома, утечки данных и отказа в обслуживании.
Читать статью
👉 Новости 👉 База вопросов
Незащищенный API становится легкой мишенью для хакеров, поэтому его безопасность – приоритет для разработчиков и компаний, дорожащих своей репутацией.
В этой статье мы рассмотрим шесть основных аспектов защиты API, которые помогут минимизировать риски взлома, утечки данных и отказа в обслуживании.
Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
#статьи
😵 Стандартизация без боли
В начале проекта разработчик хочет свободы творчества: писать код быстро и видеть результат. Но со временем баги, регрессии и несовместимые решения превращают эту свободу в боль.
В статье автор сравнивает языки программирования по уровню синтаксической однозначности, гибкости и пригодности для командной работы.
Также рассматривает, как строгие ограничения формируют культуру качества, а чрезмерная выразительность часто мешает команде работать как единое целое
Читать статью
👉 Новости 👉 База вопросов
В начале проекта разработчик хочет свободы творчества: писать код быстро и видеть результат. Но со временем баги, регрессии и несовместимые решения превращают эту свободу в боль.
В статье автор сравнивает языки программирования по уровню синтаксической однозначности, гибкости и пригодности для командной работы.
Также рассматривает, как строгие ограничения формируют культуру качества, а чрезмерная выразительность часто мешает команде работать как единое целое
Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#Собес #docker
🤔 Какова цель томов в Docker?
Тома в Docker предназначены для хранения и обмена данными между контейнерами и хост-системой. Они позволяют сохранять данные независимо от жизненного цикла контейнера, обеспечивая сохранность данных при остановке или удалении контейнера. Тома можно использовать для базы данных, конфигураций приложений и логов.
👉 Новости 👉 База вопросов
Тома в Docker предназначены для хранения и обмена данными между контейнерами и хост-системой. Они позволяют сохранять данные независимо от жизненного цикла контейнера, обеспечивая сохранность данных при остановке или удалении контейнера. Тома можно использовать для базы данных, конфигураций приложений и логов.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Forwarded from YeaHub
Мы рады представить нового эксперта в нашей команде! К YeaHub присоединился опытный Android-разработчик и ментор, который вместе с учениками будет разрабатывать Open Source-версию мобильного приложения YeaHub. Код открыт в нашем репозитории.
В качестве Guru (эксперта) он:
- Будет улучшать контент по Android-разработке
- Добавлять новые вопросы и коллекции
- Публиковать авторские посты и гайды на канале
И это только начало! В планах привлечь Guru (Экспертов) по каждому направлению!
Спасибо, что остаетесь с нами — мы продолжаем прокачивать продукт 💪
Пробуйте, тестируйте, делитесь обратной связью!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥3👍2
#полезное
🥺 Ultron — это фреймворк, облегчающий создание UI-тестов для Android и Compose Multiplatform! Он построен поверх Espresso, UI Automator и Compose UI, предлагая упрощённый и выразительный синтаксис для тестирования пользовательского интерфейса.
Гитхаб
👉 Новости 👉 База вопросов
Гитхаб
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#полезное
😎 keepScreenOn в Jetpack Compose
Как это было:
или
или тег в xml:
Начиная с compose
👉 Новости 👉 База вопросов
Как это было:
window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
или
window.decorView.keepScreenOn = true
или тег в xml:
android:keepScreenOn="true"
Начиная с compose
1.9.0-alpha01 это можно сделать модификаторомBox(
modifier = Modifier.keepScreenOn()
){
Text("Keep the screen on.. 🔆")
}
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
#статьи
🛞 Тестирование изображений и анимаций в Android с помощью Kaspresso
Тестирование UI в Android — это баланс между тщательностью и удобством поддержки. Espresso проверяет логику: тексты, клики, переходы. Но для изображений и анимаций часто используют скриншотные тесты или оставляют их ручными.
В этой статье автор покажет, как пойти другим путём — научить Kaspresso понимать, что именно нарисовано на экране. Расскажет, как сравнивать изображения и кадры анимации внутри обычных инструментов UI-тестирования — без тяжёлой артиллерии и лишней хрупкости.
Читать статью
👉 Новости 👉 База вопросов
Тестирование UI в Android — это баланс между тщательностью и удобством поддержки. Espresso проверяет логику: тексты, клики, переходы. Но для изображений и анимаций часто используют скриншотные тесты или оставляют их ручными.
В этой статье автор покажет, как пойти другим путём — научить Kaspresso понимать, что именно нарисовано на экране. Расскажет, как сравнивать изображения и кадры анимации внутри обычных инструментов UI-тестирования — без тяжёлой артиллерии и лишней хрупкости.
Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Guru Android at YeaHub | АНТОН ГУЛЯЕВ
Всем привет!
Я Senior Android-разработчик в Wildberries, раньше работал в Яндексе. За плечами — больше 4 лет опыта и выступления на конференциях.
Помимо разработки, я ментор по Android — помогаю новичкам прокачаться и устроиться в IT.
А ещё я Guru по Android в YeaHub: отвечаю за качество контента, а вместе с учениками разрабатываю мобильную версию платформы. Проект Open Source, так что можно заглянуть под капот — код открыт в нашем репозитории.
А ещё подписывайтесь на другие каналы Экосистемы YeaHub
Проект YeaHub:
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍1🔥1
#Собес #docker
🤔 Как масштабировать Docker контейнеры горизонтально?
Для горизонтального масштабирования Docker контейнеров можно использовать Docker Swarm или Kubernetes. B Docker Swarm вы создаете кластер и используете команду
👉 Новости 👉 База вопросов
Для горизонтального масштабирования Docker контейнеров можно использовать Docker Swarm или Kubernetes. B Docker Swarm вы создаете кластер и используете команду
docker service scale, чтобы масштабировать количество реплик для сервиса. Например, команда docker service scale myservice=5 увеличит количество реплик сервиса myservice до 5.Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
#полезное
👍 Autofill в Compose 1.8.0
Несмотря на то что поддержка автозаполнения вышла еще 2021 году, API докрутили только сейчас. Поддержка самой кнопки
👉 Новости 👉 База вопросов
Несмотря на то что поддержка автозаполнения вышла еще 2021 году, API докрутили только сейчас. Поддержка самой кнопки
Autofill теперь идет из коробки, а новое API позволяет спарсить значение даже внутрь Switch:var firstLetterE by remember { mutableStateOf(false) }
Switch(
modifier = Modifier.semantics {
contentType = ContentType.EmailAddress
// We need to declare a data type explicitly since this isn't a TextField
contentDataType = ContentDataType.Text
onAutofillText { text ->
firstLetterE = text.startsWith("E", ignoreCase = true)
true
}
},
checked = firstLetterE,
onCheckedChange = { firstLetterE = it },
)Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
#Собес #docker
🤔 Поддерживает ли Docker IРV6?
Да, Docker поддерживает IPv6, но только на Linux-серверах. Чтобы включить поддержку IPvб, необходимо настроить Docker daemon, изменив параметр
👉 Новости 👉 База вопросов
Да, Docker поддерживает IPv6, но только на Linux-серверах. Чтобы включить поддержку IPvб, необходимо настроить Docker daemon, изменив параметр
ipv6 в конфигурационном файле /etc/docker/daemon. json .Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#полезное
🥺 Как-то мы упустили этот весь тренд с AI и вайбкодингом. Но вот и до Android Studio добралась возможность повайбкодить. Agent-mode в Gemini.
Не что-то прорывное, но раньше нужно было переключаться меж IDE или использовать Junie, а теперь решение из коробки!
👉 Новости 👉 База вопросов
Не что-то прорывное, но раньше нужно было переключаться меж IDE или использовать Junie, а теперь решение из коробки!
Please open Telegram to view this post
VIEW IN TELEGRAM
Android Developers
Agent Mode | Android Studio | Android Developers
Learn about AI-assisted coding features powered by Gemini.
❤1
#полезное
😬 Кейс, который стоит посмотреть, если вы тоже сейчас переделываете интерфейс
За последние полгода в «Лиге Ставок» перезапустили мобильное приложение — и не просто перекрасили кнопки, а копнули глубже. Что они поменяли — и почему это может быть полезно тем, кто сейчас сам ковыряется в интерфейсе:
🟠 Навигация: верхняя и нижняя панели адаптивные — скрываются при скролле, освобождая экран под контент. Фильтры переместили вниз — это удобнее, особенно для одной руки.
🟠 Приоритеты на экране: коэффициенты — в центре. Всё остальное — вторично. Простой ход, но UX сразу становится честнее.
🟠 Раздел «Мои пари»: раньше был набор экранов, теперь они собрали всё на одном. Плюс: добавили раздел с личной аналитикой по ставкам.
🟠 Никаких лишних «фишек»: меню прячется, интерфейс дышит, всё держится на логике, а не на визуальных «трендах».
Неплохая попытка решить реальные боли пользователей. Если у вас впереди редизайн — полезно посмотреть, как они перепридумали своё приложение.
👉 Новости 👉 База вопросов
За последние полгода в «Лиге Ставок» перезапустили мобильное приложение — и не просто перекрасили кнопки, а копнули глубже. Что они поменяли — и почему это может быть полезно тем, кто сейчас сам ковыряется в интерфейсе:
Неплохая попытка решить реальные боли пользователей. Если у вас впереди редизайн — полезно посмотреть, как они перепридумали своё приложение.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#полезное
😐 MVC vs MVP vs MVVM vs VIPER. Что лучше для мобильной разработки?
Точно так же, как у каждого дома есть прочный фундамент, у каждого программного проекта есть архитектура, на которой он построен, и у каждого проекта есть своя структура приложения.
Типы архитектурных шаблонов могут быть разными, но есть 4 наиболее часто используемых шаблона, которые весь IT-мир постоянно критикует, но в то же время продолжает использовать: MVC, MVP, MVVM и Viper.
👉 Новости 👉 База вопросов
Точно так же, как у каждого дома есть прочный фундамент, у каждого программного проекта есть архитектура, на которой он построен, и у каждого проекта есть своя структура приложения.
Типы архитектурных шаблонов могут быть разными, но есть 4 наиболее часто используемых шаблона, которые весь IT-мир постоянно критикует, но в то же время продолжает использовать: MVC, MVP, MVVM и Viper.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#Собес #docker
🤔 Как использовать Docker для множества окружений приложений?
Для работы с несколькими окружениями в Docker используется Docker Compose. Создаются отдельные файлы
👉 Новости 👉 База вопросов
Для работы с несколькими окружениями в Docker используется Docker Compose. Создаются отдельные файлы
docker-compose для каждой среды (например, docker-compose.dev.yml ), и на основе этих файлов запускаются соответствующие окружения с нужными настройками.Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#полезное
👋 Gitnuro — кроссплатформенный Git-клиент без подписок и слежки. Этот полностью открытый клиент на Kotlin предлагает альтернативу тяжеловесным решениям вроде GitKraken или SourceTree.
В отличие от веб-ориентированных аналогов, он работает нативно на Linux, Windows и macOS, при этом не требуя активаций или подписок. Особенность проекта в поддержке сложных операций через минималистичный интерфейс.
Гитхаб
👉 Новости 👉 База вопросов
В отличие от веб-ориентированных аналогов, он работает нативно на Linux, Windows и macOS, при этом не требуя активаций или подписок. Особенность проекта в поддержке сложных операций через минималистичный интерфейс.
Гитхаб
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
#полезное
👨💻 Jooby — лаконичный веб-фреймворк для Java и Kotlin. Этот проект предлагает минималистичный подход к созданию API — без лишних абстракций, но с поддержкой популярных серверов вроде Jetty и Netty. Инструмент универсален: один и тот же код работает как в традиционных Java-приложениях, так и в Kotlin-проектах.
Фреймворк сохраняет совместимость с существующими решениями, позволяя подключать модули для GraphQL, WebSocket или авторизации. При этом стартовый шаблон умещается в несколько строк — достаточно вызвать
Гитхаб
👉 Новости 👉 База вопросов
Фреймворк сохраняет совместимость с существующими решениями, позволяя подключать модули для GraphQL, WebSocket или авторизации. При этом стартовый шаблон умещается в несколько строк — достаточно вызвать
runApp и описать роуты. Гитхаб
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#Собес #docker
🤔 Чем отличается логирование контейнера от логирования демона?
Логирование на уровне демона касается самого процесса работы Docker (системных сообщений и ошибок), в то время как логирование контейнера фокусируется на выводе, генерируемом внутри конкретных контейнеров. Логи демона содержат информацию о работе Docker, а логи контейнера - данные, связанные с выполнением приложений в контейнерах.
👉 Новости 👉 База вопросов
Логирование на уровне демона касается самого процесса работы Docker (системных сообщений и ошибок), в то время как логирование контейнера фокусируется на выводе, генерируемом внутри конкретных контейнеров. Логи демона содержат информацию о работе Docker, а логи контейнера - данные, связанные с выполнением приложений в контейнерах.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#полезное
😎 Feeder — приватный RSS-ридер для Android без синхронизации. Этот open-source инструмент работает полностью локально на устройстве, не отправляя ваши подписки и историю чтения на сторонние серверы.
Проект развивается с 2014 года и сохраняет минималистичную философию: поддержка RSS/Atom/JSONFeed, нотификации о новых статьях и импорт/экспорт через OPML. Недавно добавили экспериментальную поддержку Nostr-лент. Установить можно через F-Droid или собрать вручную (`./gradlew installDebug`).
Гитхаб
👉 Новости 👉 База вопросов
Проект развивается с 2014 года и сохраняет минималистичную философию: поддержка RSS/Atom/JSONFeed, нотификации о новых статьях и импорт/экспорт через OPML. Недавно добавили экспериментальную поддержку Nostr-лент. Установить можно через F-Droid или собрать вручную (`./gradlew installDebug`).
Гитхаб
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1