tgoop.com »
United States »
Библиотека мобильного разработчика | Android, iOS, Swift, Retrofit, Moshi, Chuck » Telegram Web
💻 Compose Permission Manager — простое управление разрешениями
Compose Permission Manager — легковесная библиотека Android, которая упрощает управление разрешениями в приложениях Jetpack Compose. Эта библиотека предоставляет композабл API для простого запроса, проверки и обработки разрешений приложений. Она поддерживает настраиваемые диалоги обоснований и настроек, проверку разрешений в манифесте и потоки разрешений с учётом жизненного цикла.
⚙️ Compose Permission Manager на GitHub
Библиотека мобильного разработчика #cвежак
Compose Permission Manager — легковесная библиотека Android, которая упрощает управление разрешениями в приложениях Jetpack Compose. Эта библиотека предоставляет композабл API для простого запроса, проверки и обработки разрешений приложений. Она поддерживает настраиваемые диалоги обоснований и настроек, проверку разрешений в манифесте и потоки разрешений с учётом жизненного цикла.
⚙️ Compose Permission Manager на GitHub
Библиотека мобильного разработчика #cвежак
❤4
⚡️ Команда дня: git stash --keep-index
Знакомая ситуация? Вы работаете над задачей: часть изменений уже готова и добавлена в индекс (git add), а часть ещё в процессе. И тут прилетает срочная задача, и надо быстро переключиться.
Обычное
А вот
— Сохранить незаконченные изменения в stash
— Оставить в индексе то, что уже готово
▪️ До:
staged: file1.js, file2.js (готовые файлы)
unstaged: file3.js, file4.js (в процессе)
▫️ После:
staged: file1.js, file2.js (остались на месте)
unstaged: чисто (сохранены в stash)
В каких случаях вам пригодится эта команда? Например, когда посреди работы над большой задачей прилетает срочный баг-фикс — сохраните незавершённую работу и спокойно переключайтесь.
Или когда часть изменений уже готова к коммиту, а над частью ещё нужно поработать.
А может, тимлид просит показать только готовый код на ревью, пока вы параллельно добиваете оставшуюся функциональность.
💡 Знали о такой штуке?
Библиотека мобильного разработчика #буст
Знакомая ситуация? Вы работаете над задачей: часть изменений уже готова и добавлена в индекс (git add), а часть ещё в процессе. И тут прилетает срочная задача, и надо быстро переключиться.
Обычное
git stash
сохранит ВСЕ изменения. А вот
git stash --keep-index
поможет:— Сохранить незаконченные изменения в stash
— Оставить в индексе то, что уже готово
▪️ До:
staged: file1.js, file2.js (готовые файлы)
unstaged: file3.js, file4.js (в процессе)
▫️ После:
staged: file1.js, file2.js (остались на месте)
unstaged: чисто (сохранены в stash)
В каких случаях вам пригодится эта команда? Например, когда посреди работы над большой задачей прилетает срочный баг-фикс — сохраните незавершённую работу и спокойно переключайтесь.
Или когда часть изменений уже готова к коммиту, а над частью ещё нужно поработать.
А может, тимлид просит показать только готовый код на ревью, пока вы параллельно добиваете оставшуюся функциональность.
💡 Знали о такой штуке?
Библиотека мобильного разработчика #буст
🤩6
Вам нравится читать контент на этом канале?
Возможно, вы задумывались о том, чтобы купить на нем интеграцию?
Следуйте 3 простым шагам, чтобы сделать это:
1) Нажмите на ссылку: Вход
2) Пополняйтесь удобным способом
3) Размещайте публикацию
Если тематика вашего поста подойдет нашему каналу, мы с удовольствием опубликуем его.
Возможно, вы задумывались о том, чтобы купить на нем интеграцию?
Следуйте 3 простым шагам, чтобы сделать это:
1) Нажмите на ссылку: Вход
2) Пополняйтесь удобным способом
3) Размещайте публикацию
Если тематика вашего поста подойдет нашему каналу, мы с удовольствием опубликуем его.
Telegram
Telega.in
Платформа для запуска рекламы в Telegram: продвигайтесь в проверенных каналах и чатах.
😁1
👨💻 Kelp — IDE-плагин для кастомных дизайн-систем на Jetpack Compose
После перехода с дизайн-систем, построенных на Android View, к дизайн-системам на Jetpack Compose возникает нехватка некоторых функций Android Studio, доступных только в Android View.
Чтобы исправить эту ситуацию, автор разработал Kelp — мощный плагин для Android Studio, разработанный для улучшения поддержки кастомных дизайн-систем на Jetpack Compose в Android Studio. Kelp предлагает широкий набор функций, которые делают разработку UI быстрее и проще.
👉 Читать статью
Библиотека мобильного разработчика #буст
После перехода с дизайн-систем, построенных на Android View, к дизайн-системам на Jetpack Compose возникает нехватка некоторых функций Android Studio, доступных только в Android View.
Чтобы исправить эту ситуацию, автор разработал Kelp — мощный плагин для Android Studio, разработанный для улучшения поддержки кастомных дизайн-систем на Jetpack Compose в Android Studio. Kelp предлагает широкий набор функций, которые делают разработку UI быстрее и проще.
👉 Читать статью
Библиотека мобильного разработчика #буст
❤2
💻 Вечер откровений: расскажите про вашу историю перехода в IT
Переход в IT — это путь, полный вызовов, открытий и личностного роста. Многие из нас приходят в эту сферу с различным опытом и ожиданиями, и каждый из нас имеет свою уникальную историю. В мире технологии существует множество направлений, и каждый шаг на этом пути может быть как вдохновляющим, так и трудным.
Мы в Библиотеке мобильного разработчика верим, что каждое решение стать частью мира технологий связано с личной историей. Делитесь в комментариях своими историями о том, как вы пришли в IT:
• Что стало ключевым моментом, когда вы решили перейти в IT?
• Какие трудности вы испытывали на ранних этапах?
• Какие успехи или достижения вы испытали на своем пути?
• Как вы видите свое будущее в IT?
Библиотека мобильного разработчика #междусобойчик
Переход в IT — это путь, полный вызовов, открытий и личностного роста. Многие из нас приходят в эту сферу с различным опытом и ожиданиями, и каждый из нас имеет свою уникальную историю. В мире технологии существует множество направлений, и каждый шаг на этом пути может быть как вдохновляющим, так и трудным.
Мы в Библиотеке мобильного разработчика верим, что каждое решение стать частью мира технологий связано с личной историей. Делитесь в комментариях своими историями о том, как вы пришли в IT:
• Что стало ключевым моментом, когда вы решили перейти в IT?
• Какие трудности вы испытывали на ранних этапах?
• Какие успехи или достижения вы испытали на своем пути?
• Как вы видите свое будущее в IT?
Библиотека мобильного разработчика #междусобойчик
🤩1
🎧 Подкасты и видео о мобильной разработке
Собрали лучшее о мобильной разработке. Включаем и слушаем по пути на работу ↓
🎯 Как устроена мобильная архитектура.
🎯 Hilt в многомодульный проект — пособие по внедрению зависимостей для новичков
🎯 Внедряем Server Driven UI
Библиотека мобильного разработчика #буст
Собрали лучшее о мобильной разработке. Включаем и слушаем по пути на работу ↓
🎯 Как устроена мобильная архитектура.
🎯 Hilt в многомодульный проект — пособие по внедрению зависимостей для новичков
🎯 Внедряем Server Driven UI
Библиотека мобильного разработчика #буст
❤2
Forwarded from Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter
📉🤦 152 000 уволенных в IT за год: кому это помогло?
Корпоративная бензопила снова в деле: каждый месяц 2 миллиона американцев теряют работу из-за сокращений. Но действительно ли это помогает компаниям?
🔗 Читать статью
Корпоративная бензопила снова в деле: каждый месяц 2 миллиона американцев теряют работу из-за сокращений. Но действительно ли это помогает компаниям?
🔗 Читать статью
🥰4👍1
⚔️ Работать на удаленке или в офисе?
Понедельник, 9:00. Один разработчик в пижаме уже запустил IDE, держа в одной руке кота, а в другой — кофе. В это же время его коллега едет в офис, стоя в пробке и слушая подкаст с ускорением 1.5x. Две реальности современного разработчика. Но какая эффективнее?
Недавние исследования показывают, что продуктивность на удалёнке выше на 13%, НО... отчуждение и профессиональное выгорание тоже часто выше.
Где лучше писать код: дома с котом или в офисе с коллегами? Голосуйте и пишите свое мнение в комментариях 💬
❤️ — удалёнка навсегда, работаю в пижаме и счастлив
🤝 — только офис, нужны люди и границы
👾 — гибрид, ни нашим, ни вашим
Библиотека мобильного разработчика #междусобойчик
Понедельник, 9:00. Один разработчик в пижаме уже запустил IDE, держа в одной руке кота, а в другой — кофе. В это же время его коллега едет в офис, стоя в пробке и слушая подкаст с ускорением 1.5x. Две реальности современного разработчика. Но какая эффективнее?
Недавние исследования показывают, что продуктивность на удалёнке выше на 13%, НО... отчуждение и профессиональное выгорание тоже часто выше.
Где лучше писать код: дома с котом или в офисе с коллегами? Голосуйте и пишите свое мнение в комментариях 💬
❤️ — удалёнка навсегда, работаю в пижаме и счастлив
🤝 — только офис, нужны люди и границы
👾 — гибрид, ни нашим, ни вашим
Библиотека мобильного разработчика #междусобойчик
❤45👾22🤝3
📱 Приготовили для вас дайджест по актуальному из мира iOS, Android и кроссплатформы.
🔹 Производительный SwiftUI: используем UIKit
🔹 Эволюция шпионского софта под iOS
🔹 Объединяем Compose и View: бесшовное взаимодействие с помощью CompositionLocal
🔹 7 мощных возможностей Kotlin, используемых продвинутыми разработчиками
🔹 Решение задач распознавания на Flutter
Библиотека мобильного разработчика #свежак
🔹 Производительный SwiftUI: используем UIKit
🔹 Эволюция шпионского софта под iOS
🔹 Объединяем Compose и View: бесшовное взаимодействие с помощью CompositionLocal
🔹 7 мощных возможностей Kotlin, используемых продвинутыми разработчиками
🔹 Решение задач распознавания на Flutter
Библиотека мобильного разработчика #свежак
👍2🔥2
🍏 Что такое tuple?
Значения
Вы можете создать
Например:
Чтобы получить доступ к значению внутри tuple, используйте точечную нотацию и индекс:
Кортежи также могут быть созданы таким образом, чтобы каждое значение имело имя:
В этом случае вы можете получить доступ к определённому значению кортежа по его имени:
Библиотека мобильного разработчика #буст
Tuple
(кортеж) — это значение, которое можно использовать для объединения нескольких значений вместе, например, в виде пары.Значения
tuple
не обязательно должны быть одного типа.Вы можете создать
tuple
, разделив значения запятыми внутри круглых скобок.Например:
var coordinates3D = (1.0, 2.0, 5.0)
Чтобы получить доступ к значению внутри tuple, используйте точечную нотацию и индекс:
let xPos = coordinates3D.0
Кортежи также могут быть созданы таким образом, чтобы каждое значение имело имя:
var coordinates3D = (x: 1.0, y: 2.0, z: 5.0)
В этом случае вы можете получить доступ к определённому значению кортежа по его имени:
let xPos = coordinates3D.x
Библиотека мобильного разработчика #буст
❤3🥱1
👨💻 Сравнение Dagger 2, Dagger Hilt и Koin
Многие разработчики знакомы с такими широко известными инструментами внедрения зависимостей (DI), как Koin и Dagger. Оба инструмента решают одну задачу — управление зависимостями, но делают это по-разному.
Автор статьи анализирует принципиальные различия между ними, их плюсы и минусы, а также даёт рекомендации по выбору подходящего инструмента в зависимости от сложности и требований нового проекта.
👉 Читать статью
Библиотека мобильного разработчика #буст
Многие разработчики знакомы с такими широко известными инструментами внедрения зависимостей (DI), как Koin и Dagger. Оба инструмента решают одну задачу — управление зависимостями, но делают это по-разному.
Автор статьи анализирует принципиальные различия между ними, их плюсы и минусы, а также даёт рекомендации по выбору подходящего инструмента в зависимости от сложности и требований нового проекта.
👉 Читать статью
Библиотека мобильного разработчика #буст
👍2
📝 Шпаргалка: Kotlin suspend функции
1. Что такое suspend функция
Suspend-функции — это специальные функции в Kotlin, предназначенные для работы с корутинами. Они позволяют приостанавливать выполнение кода без блокировки потока, что делает их идеальными для асинхронных операций (например, сетевых запросов, работы с базой данных или долгих вычислений). Ключевое слово suspend указывает компилятору, что функция может быть «приостановлена» и позже возобновлена, не занимая поток исполнения.
Мы можем вызвать suspend функцию только из корутины или из другой suspend функции и это гарантирует нам, что мы будем иметь доступ к Continuation и соответственно сможем написать правильную suspend функцию, которая сможет передать результат своей работы через объект Continuation.
2. Зачем нужны suspend-функции?
Основные цели:
• Упрощение асинхронного кода. Вместо использования колбэков или Future разработчики пишут последовательный код, который выглядит как синхронный, но работает асинхронно.
• Избежание «callback hell». Suspend-функции позволяют избежать вложенных колбэков, улучшая читаемость.
• Эффективное использование ресурсов. Приостановка корутины не блокирует поток, что особенно важно в однопоточных средах (например, Android UI-поток).
• Интеграция с корутинами. Suspend-функции могут вызываться только из другой suspend-функции или корутины.
3. Во что компилируются suspend-функции?
При компиляции suspend-функции преобразуются в объект «state machine». Каждая приостановка (например, вызов другой suspend-функции или delay) разбивает код на части, которые выполняются между точками приостановки.
Каждый вызов другой suspend-функции становится точкой приостановки. Компилятор разбивает код на блоки между этими точками и сохраняет:
• Текущий label (номер состояния).
• Локальные переменные.
Структура скомпилированного кода:
• Компилятор добавляет скрытый параметр Continuation (представляет контекст выполнения).
• Функция разбивается на блоки, соответствующие участкам кода между точками приостановки.
• Для каждого состояния генерируется отдельный case в switch-конструкции.
• Сохраняет локальные переменные и текущий label в объекте Continuation.
👉 Читать подробнее
Библиотека мобильного разработчика #буст
1. Что такое suspend функция
Suspend-функции — это специальные функции в Kotlin, предназначенные для работы с корутинами. Они позволяют приостанавливать выполнение кода без блокировки потока, что делает их идеальными для асинхронных операций (например, сетевых запросов, работы с базой данных или долгих вычислений). Ключевое слово suspend указывает компилятору, что функция может быть «приостановлена» и позже возобновлена, не занимая поток исполнения.
Мы можем вызвать suspend функцию только из корутины или из другой suspend функции и это гарантирует нам, что мы будем иметь доступ к Continuation и соответственно сможем написать правильную suspend функцию, которая сможет передать результат своей работы через объект Continuation.
2. Зачем нужны suspend-функции?
Основные цели:
• Упрощение асинхронного кода. Вместо использования колбэков или Future разработчики пишут последовательный код, который выглядит как синхронный, но работает асинхронно.
• Избежание «callback hell». Suspend-функции позволяют избежать вложенных колбэков, улучшая читаемость.
• Эффективное использование ресурсов. Приостановка корутины не блокирует поток, что особенно важно в однопоточных средах (например, Android UI-поток).
• Интеграция с корутинами. Suspend-функции могут вызываться только из другой suspend-функции или корутины.
3. Во что компилируются suspend-функции?
При компиляции suspend-функции преобразуются в объект «state machine». Каждая приостановка (например, вызов другой suspend-функции или delay) разбивает код на части, которые выполняются между точками приостановки.
Каждый вызов другой suspend-функции становится точкой приостановки. Компилятор разбивает код на блоки между этими точками и сохраняет:
• Текущий label (номер состояния).
• Локальные переменные.
Структура скомпилированного кода:
• Компилятор добавляет скрытый параметр Continuation (представляет контекст выполнения).
• Функция разбивается на блоки, соответствующие участкам кода между точками приостановки.
• Для каждого состояния генерируется отдельный case в switch-конструкции.
• Сохраняет локальные переменные и текущий label в объекте Continuation.
👉 Читать подробнее
Библиотека мобильного разработчика #буст
👍7❤2
Media is too big
VIEW IN TELEGRAM
Proglib рассказывает базу в формате рилса
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Отобрали для вас полезные и проверенные каналы для программистов — в них вы найдете все самое интересное, от технических новостей до практических гайдов.
IT Job Hub | Работа и вакансии в IT — избранные IT-вакансии
Библиотека программиста — новости из мира IT и технологий
Книги для программистов — самые годные книги по любым языкам и стекам
IT-мемы — мемы про жизу айтишника
Proglib Academy — обучение и курсы, чтобы стать топовым специалистом
Азбука айтишника — азы из мира разработки
Библиотека нейросетей — лайфхаки и промпты для разных задач, баттлы нейронок и новости из мира ИИ
Библиотека фронтендера — все о JS, React, Angular и не только
Библиотека мобильного разработчика — лайфхаки и новости из мира Swift и Kotlin
Библиотека хакера — уязвимости, атаки, бэкдоры и как от них защититься
Библиотека тестировщика — самое интересное о том, как крашить код
🦫 Go
Библиотека Go-разработчика
Библиотека задач по Go
Библиотека Go для собеса
Вакансии по Go
#️⃣ C#
Библиотека шарписта
Библиотека задач по C#
Библиотека собеса по C#
Вакансии по C#
🔧 DevOps
Библиотека devops’а
Библиотека задач по DevOps
Библиотека собеса по DevOps
Вакансии по DevOps & SRE
🐘 PHP
Библиотека пхпшника
Библиотека задач по PHP
Библиотека PHP для собеса
Вакансии по PHP, Symfony, Laravel
🐍 Python
Библиотека питониста
Библиотека Python для собеса
Библиотека задач по Python
Вакансии по питону, Django, Flask
☕️ Java
Библиотека джависта
Библиотека задач по Java
Библиотека Java для собеса
Вакансии по Java
📊 Data Science
Библиотека дата-сайентиста
Библиотека задач по Data Science
Библиотека Data Science для собеса
Вакансии по Data Science
🎮 C++
Библиотека C/C++ разработчика
Библиотека задач по C++
Библиотека C++ для собеса
Вакансии по C++
Подписывайтесь на интересные вам каналы и сохраняйте пост в закладки, чтобы не потерять 🔑
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1🔥1
Forwarded from Библиотека джависта | Java, Spring, Maven, Hibernate
🧩💊 Алгоритмическая самоуспокоенность: как мы разучились думать своей головой
Каждый день мы сталкиваемся с бесконечным потоком информации, которая не просто наполняет наш день, а управляет нашими мыслями. Социальные сети, алгоритмы и вечная гонка за вниманием приводят к тому, что мы забываем, как думать собственной головой.
Это не просто влияет на настроение, но и на способность анализировать информацию, принимать решения и, главное, не становиться частью системы манипуляций.
Если вы хотите вернуться к осознанному подходу в восприятии мира и научиться фильтровать контент, то эта тема точно для вас.
🔗 Подробнее в статье
🐸 Библиотека джависта
Каждый день мы сталкиваемся с бесконечным потоком информации, которая не просто наполняет наш день, а управляет нашими мыслями. Социальные сети, алгоритмы и вечная гонка за вниманием приводят к тому, что мы забываем, как думать собственной головой.
Это не просто влияет на настроение, но и на способность анализировать информацию, принимать решения и, главное, не становиться частью системы манипуляций.
Если вы хотите вернуться к осознанному подходу в восприятии мира и научиться фильтровать контент, то эта тема точно для вас.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3
📝 Промпт для идеального документирования кода
Чтобы писать доку быстрее, используйте этот промпт для ChatGPT:
Бонус: добавьте «
⚡ Как вы обычно документируете свой код? Делитесь в комментариях!
Библиотека мобильного разработчика #буст
Чтобы писать доку быстрее, используйте этот промпт для ChatGPT:
Include:
1. General description of functionality
2. Description of parameters and return values
3. Usage examples
4. Potential errors and how to fix them
5. Information about algorithm complexity, if applicableCode:[insert your code here]
Бонус: добавьте «
Explain the logic in simple terms for a beginner developer
», чтобы логику вашего кода понял даже новичок.⚡ Как вы обычно документируете свой код? Делитесь в комментариях!
Библиотека мобильного разработчика #буст
🤝3🤔1