System Design Interview Survival Guide (2024): Preparation Strategies and Practical Tips
В дополнение к этому посту, ещё один материал про System Design: понимание основ, практические советы, вопросы с собесов, ресурсы для подготовки и т.д.
👉 Understanding the Basics of System Design
👉 Practical Tips for the Interview
👉 Follow the System Design Master Template
👉 Top System Design Interview Questions
👉 System Design Resources and the Strategy
👉 Ready to Ace Your Next Tech Interview?
Читать (En)
В дополнение к этому посту, ещё один материал про System Design: понимание основ, практические советы, вопросы с собесов, ресурсы для подготовки и т.д.
👉 Understanding the Basics of System Design
👉 Practical Tips for the Interview
👉 Follow the System Design Master Template
👉 Top System Design Interview Questions
👉 System Design Resources and the Strategy
👉 Ready to Ace Your Next Tech Interview?
Читать (En)
👍8❤3🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Shapes in Compose
В документацию по Compose добавили гайд по использованию библиотеки
А вот тут, отдельная статья с демонстрацией, на примере создания анимированного лоадера.
Читать (En)
В документацию по Compose добавили гайд по использованию библиотеки
graphics-shapes в Jetpack Compose. С помощью библиотеки можно делать разичные штуки с фигурами по типу трансформаций, масок и анимаций.А вот тут, отдельная статья с демонстрацией, на примере создания анимированного лоадера.
Читать (En)
👏10👍5❤3🔥2
Understanding Nested Scrolling in Jetpack Compose
Большая статья с разбором вложенного скролла в Jetpack Compose на примере Collapsing App Bar.
Читать (En)
Большая статья с разбором вложенного скролла в Jetpack Compose на примере Collapsing App Bar.
Читать (En)
👍16🔥4🤔2
SVG to Jetpack Compose Image Vector converter
Если вдруг пропустили, тут есть онлайн конвертор SVG в Compose
SvgToCompose
Если вдруг пропустили, тут есть онлайн конвертор SVG в Compose
SvgToCompose
👍19🔥5❤3
Обновление AppMetrica: предсказания LTV (lifetime value) и оттока
Новый инструмент Предикты строится на базе ML-технологий Яндекса с использованием анонимных данных из нескольких десятков тысяч приложений.
Вот, что можно делать с помощью Предиктов:
👉 Оптимизировать рекламные кампании на пользователей с высоким LTV;
👉 Находить рекламные каналы с высокой рентабельностью;
👉 Своевременно начинать работу по удержанию пользователей;
👉 Строить прогнозы, когда есть информация о монетизации в приложении, а также, когда ее нет;
👉 Настроить модель под поведение пользователей конкретного приложения, увеличивая точность прогноза до 99%.
Читать (Ru)
Новый инструмент Предикты строится на базе ML-технологий Яндекса с использованием анонимных данных из нескольких десятков тысяч приложений.
Вот, что можно делать с помощью Предиктов:
👉 Оптимизировать рекламные кампании на пользователей с высоким LTV;
👉 Находить рекламные каналы с высокой рентабельностью;
👉 Своевременно начинать работу по удержанию пользователей;
👉 Строить прогнозы, когда есть информация о монетизации в приложении, а также, когда ее нет;
👉 Настроить модель под поведение пользователей конкретного приложения, увеличивая точность прогноза до 99%.
Читать (Ru)
🔥4👍3🤔2👎1👏1
Дорогие девушки, с Международным женским днём вас. Весеннего настроения, исполнения желаний и успехов во всех начинаниях. С Праздником 🌷 🌷 🌷
Please open Telegram to view this post
VIEW IN TELEGRAM
Проводим и проходим собеседование по системному дизайну
Вторая часть про организацию процесса собеседования.
В этой статье рассказывается про то, как организовать интервью по системному дизайну в своей компании, как подготовиться со стороны интервьюера и кандидата, на что обращать внимание во время интервью и как подать правильный сигнал.
👉 Вспоминаем, что такое системный дизайн
👉 Интегрируем системный дизайн в свой процесс интервью(инструменты, требования, подготовка, тайминги)
👉 Маркеры, сигналы и темы для обсуждения(хард скиллы, софт скиллы)
Читать (Ru)
Вторая часть про организацию процесса собеседования.
В этой статье рассказывается про то, как организовать интервью по системному дизайну в своей компании, как подготовиться со стороны интервьюера и кандидата, на что обращать внимание во время интервью и как подать правильный сигнал.
👉 Вспоминаем, что такое системный дизайн
👉 Интегрируем системный дизайн в свой процесс интервью(инструменты, требования, подготовка, тайминги)
👉 Маркеры, сигналы и темы для обсуждения(хард скиллы, софт скиллы)
Читать (Ru)
👍5🔥4🤔2🤮2❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Kotlin Coroutines Concepts
Большая статья про корутины, flow и channels с примерами.
👉 What is a Coroutine?
👉 Suspending Function
👉 Coroutine Builders
👉 CoroutineScope
👉 CoroutineContext, Distpatchers and threads
👉 Job
👉 SupervisorJob
👉 Channels
👉 Flow
Читать (En)
Большая статья про корутины, flow и channels с примерами.
👉 What is a Coroutine?
👉 Suspending Function
👉 Coroutine Builders
👉 CoroutineScope
👉 CoroutineContext, Distpatchers and threads
👉 Job
👉 SupervisorJob
👉 Channels
👉 Flow
Читать (En)
🔥19👍4❤3
This media is not supported in your browser
VIEW IN TELEGRAM
Рисуем эффект «Таноса» на Android
Большая и подробная статья про то, как реализовать эффект «Таноса» как в телеге при удалении сообщений.
В телеге при удалении сообщений, они распадаются на множество частиц, словно по щелчку Таноса (в исходниках Telegram Android эффект так и назван – ThanosEffect).
А вот тут можно посмотреть, как реализоватьспойлеры как в телеге под iOS на SwiftUI.
Читать (Ru)
Большая и подробная статья про то, как реализовать эффект «Таноса» как в телеге при удалении сообщений.
В телеге при удалении сообщений, они распадаются на множество частиц, словно по щелчку Таноса (в исходниках Telegram Android эффект так и назван – ThanosEffect).
А вот тут можно посмотреть, как реализовать
Читать (Ru)
🔥13👍6❤2
Автоматизируем рутину в Android разработке: плагин для создания шаблонного кода на примере создания -api -impl модулей
Разработчик платформенной команды Альфа-Бизнес рассказывает, как можно автоматизировать повторяющуюся работу в андроид-разработке при помощи плагина для Android Studio, на примере отдельных -api -impl модулей.
Читать (Ru)
Разработчик платформенной команды Альфа-Бизнес рассказывает, как можно автоматизировать повторяющуюся работу в андроид-разработке при помощи плагина для Android Studio, на примере отдельных -api -impl модулей.
Читать (Ru)
🔥10🤔7👍4👎2
Forwarded from Swift Tips
Как работает async/await в Swift
Статья-перевод про то, как устроен async/await под капотом, чего можно добиться и какие нюансы следует учитывать при работе с async/await.
👉 Swift и цель обеспечения безопасности памяти
👉 Проблема конкурентности в Swift
👉 Async/await изнутри
👉 Cooperative Thread Pool
👉 Исполнители
👉 Паттерн async/await
👉 Задачи и структурированный параллелизм
👉 Защита общего изменяемого состояния: акторы
👉 Заключение
Оригинал тут: How async/await works internally in Swift
Читать (Ru)
Статья-перевод про то, как устроен async/await под капотом, чего можно добиться и какие нюансы следует учитывать при работе с async/await.
👉 Swift и цель обеспечения безопасности памяти
👉 Проблема конкурентности в Swift
👉 Async/await изнутри
👉 Cooperative Thread Pool
👉 Исполнители
👉 Паттерн async/await
👉 Задачи и структурированный параллелизм
👉 Защита общего изменяемого состояния: акторы
👉 Заключение
Оригинал тут: How async/await works internally in Swift
Читать (Ru)
🔥9❤3👍3🥰1👨💻1
What’s new in Android Studio Iguana
Обзор фичей новой Android Studio Iguana.
Debugging
• Version control in App Quality Insights
• View Crashlytics in App Quality Insights
Design
• Jetpack Compose UI Check
• Progressive rendering for Compose Preview
Develop
• Intellij platform update
Testing
• Baseline Profiles wizard
• Espresso Device API
• The latest Android Virtual Devices
Build
• Support for Gradle Version Catalogs
• Policy issue warnings in Google Play SDK Index
• CompileSDK version support
Читать (En) | Смотреть (En)
Обзор фичей новой Android Studio Iguana.
Debugging
• Version control in App Quality Insights
• View Crashlytics in App Quality Insights
Design
• Jetpack Compose UI Check
• Progressive rendering for Compose Preview
Develop
• Intellij platform update
Testing
• Baseline Profiles wizard
• Espresso Device API
• The latest Android Virtual Devices
Build
• Support for Gradle Version Catalogs
• Policy issue warnings in Google Play SDK Index
• CompileSDK version support
Читать (En) | Смотреть (En)
👍9🔥3🤔1🥱1
Hilt, ViewModels & Assisted Injection
Если пропустили, там это, в Hilt подвезли поддержку Assisted Injection. Если используете Hilt, в статье смотрите как использовать.
Читать (En)
Если пропустили, там это, в Hilt подвезли поддержку Assisted Injection. Если используете Hilt, в статье смотрите как использовать.
Читать (En)
👍7🤔3🤮2❤1👎1🔥1
Container transform animation with Jetpack Compose
На данный момент в Jetpack Compose нет поддержки shared element transitions, но если вам хочется сделать нечто подобное, читайте статью.
Там рассказывается, как сделать похожее с помощью AnimatedContent.
Читать (En)
На данный момент в Jetpack Compose нет поддержки shared element transitions, но если вам хочется сделать нечто подобное, читайте статью.
Там рассказывается, как сделать похожее с помощью AnimatedContent.
Читать (En)
❤8👍6🔥2🤔1
How to Drag and Drop using Modifier.dragAndDropSource/Target — Jetpack Compose
Подробный гайд по реализации Drag and Drop в Jepack Compose с помощью модификаторов dragAndDropSource и dragAndDropTarget.
Читать (En)
Подробный гайд по реализации Drag and Drop в Jepack Compose с помощью модификаторов dragAndDropSource и dragAndDropTarget.
Читать (En)
🔥12👍5❤3
Ликбез по вложенной прокрутке в Jetpack Compose
Перевод статьи про вложенный скроллинг в Jetpack Compose.
Читать (Ru)
Перевод статьи про вложенный скроллинг в Jetpack Compose.
Читать (Ru)
👍9👎3🔥2👏1
Как и где практиковаться начинающему мобильному разработчику
В статье рассказывается, как начинающим разработчикам можно прокачивать свои знания и применять их на практике.
👉 Пет-проекты
👉 Известные приложения
👉 Вклад в Open Source
👉 Хакатоны
👉 Тестовые задания
👉 Стажировки
👉 Решение алгоритмических задач
👉 Портфолио на Github
Читать (Ru)
В статье рассказывается, как начинающим разработчикам можно прокачивать свои знания и применять их на практике.
👉 Пет-проекты
👉 Известные приложения
👉 Вклад в Open Source
👉 Хакатоны
👉 Тестовые задания
👉 Стажировки
👉 Решение алгоритмических задач
👉 Портфолио на Github
Читать (Ru)
❤6🔥4💩4👍1
Seven recipes to understand flows and asynchrony in Kotlin
Статья с наглядными примерами, про асинхронность в Kotlin и flows в частности: зачем нужны flows, отличия горячих от холодных, как преобразовать коллбеки в suspend функции и flows и т.д.
👉 Java callbacks, the bad old days
👉 Doing callbacks the Kotlin way: suspendCoroutine
👉 Suspend functions can only return once
👉 Using callbackFlow to return multiple things from an async callback
👉 Collecting a flow
👉 Cold flows and awaitClose
👉 SharedFlow and multiple collectors
👉 Sharing a cold flow, making it hot
Читать (En)
Статья с наглядными примерами, про асинхронность в Kotlin и flows в частности: зачем нужны flows, отличия горячих от холодных, как преобразовать коллбеки в suspend функции и flows и т.д.
👉 Java callbacks, the bad old days
👉 Doing callbacks the Kotlin way: suspendCoroutine
👉 Suspend functions can only return once
👉 Using callbackFlow to return multiple things from an async callback
👉 Collecting a flow
👉 Cold flows and awaitClose
👉 SharedFlow and multiple collectors
👉 Sharing a cold flow, making it hot
Читать (En)
❤8👍4🔥3
Optimize App Performance By Mastering Stability in Jetpack Compose
Ещё одна статья про управление стабильностью в Jetpack Compose и понимание внутренней работы Compose для повышения производительности вашего приложения.
👉 Jetpack Compose Phases
👉 Understanding Stability
👉 Inferring Composable Functions
👉 Stability Annotations
👉 Stabilize Composable Functions
👉 Stability In Multi-Module Architecture
👉 Strong Skipping Mode
Читать (En)
Ещё одна статья про управление стабильностью в Jetpack Compose и понимание внутренней работы Compose для повышения производительности вашего приложения.
👉 Jetpack Compose Phases
👉 Understanding Stability
👉 Inferring Composable Functions
👉 Stability Annotations
👉 Stabilize Composable Functions
👉 Stability In Multi-Module Architecture
👉 Strong Skipping Mode
Читать (En)
👍10🔥2❤1
Вы за это заплатите! Цена Чистой Архитектуры
Статья о способах обеспечения масштабируемости проекта и как этому может навредить неправильное восприятие Чистой Архитектуры.
👉 Цена и ценность. Немного теории
👉 Для чего нужен SOLID?
👉 На чём основана Чистая Архитектура
👉 Непонимание терминологии
👉 Противопоставление Чистой Архитектуры другим архитектурам
👉 Что делает Чистую Архитектуру дорогой?
👉 Примеры
Читать (Ru)
Статья о способах обеспечения масштабируемости проекта и как этому может навредить неправильное восприятие Чистой Архитектуры.
👉 Цена и ценность. Немного теории
👉 Для чего нужен SOLID?
👉 На чём основана Чистая Архитектура
👉 Непонимание терминологии
👉 Противопоставление Чистой Архитектуры другим архитектурам
👉 Что делает Чистую Архитектуру дорогой?
👉 Примеры
Читать (Ru)
👍7🔥6🤔3😁1🏆1
Avoid "Useless" Cases in Layered Architecture
Автор рассказывает про бесполезность UseCase`ов, которые не содержать логики и предлагает избавляться от таких сущностей, дабы не засорять кодовую базу.
Существуют разные мнения на этот счёт: кто-то предпочитает использовать по необходимости, кто-то вообще не использует UseCase`ы и т.д. Я считаю, нужно либо использовать везде, либо не использовать вообще. Но лучше использовать 😉 и вот почему:
Во-первых – Единообразие. Если в проекте используются UseCase`ы, то будет лучше использовать такие сущности везде, даже если они не содержат никакой логики и просто проксируют вызов репозитория, дабы поддерживать проект в едином стиле. Кодовая база, написанная в едином стиле, будет проще для понимания и восприятия.
Во-вторых – Переиспользование. Если мы переиспользуем UseCase`ы, при любых изменениях в будущем, нам не нужно будет вносить правки во все места, где используется текущая функциональность. При использовании репозитория напрямую, нужно будет вносить везде.
В-третьих – Стандарт. Если уж используется слоёная архитектура, то зачем игнорировать один из слоёв?!🤔
Да, со вторым пунктом конечно можно поспорить, мол возможно и не будет правок в будущем, но всё же.
Читать (En)
Автор рассказывает про бесполезность UseCase`ов, которые не содержать логики и предлагает избавляться от таких сущностей, дабы не засорять кодовую базу.
Существуют разные мнения на этот счёт: кто-то предпочитает использовать по необходимости, кто-то вообще не использует UseCase`ы и т.д. Я считаю, нужно либо использовать везде, либо не использовать вообще. Но лучше использовать 😉 и вот почему:
Во-первых – Единообразие. Если в проекте используются UseCase`ы, то будет лучше использовать такие сущности везде, даже если они не содержат никакой логики и просто проксируют вызов репозитория, дабы поддерживать проект в едином стиле. Кодовая база, написанная в едином стиле, будет проще для понимания и восприятия.
Во-вторых – Переиспользование. Если мы переиспользуем UseCase`ы, при любых изменениях в будущем, нам не нужно будет вносить правки во все места, где используется текущая функциональность. При использовании репозитория напрямую, нужно будет вносить везде.
В-третьих – Стандарт. Если уж используется слоёная архитектура, то зачем игнорировать один из слоёв?!
Да, со вторым пунктом конечно можно поспорить, мол возможно и не будет правок в будущем, но всё же.
Читать (En)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17💩6👎4❤2🔥2🤔1🤮1🙏1