Telegram Web
🔥 5 горячих клавиш в Android Studio для новичков

Чтобы быстрее освоиться в Android Studio, держи подборку полезных сочетаний клавиш (Windows/Linux → Mac в скобках):

1️⃣ Поиск по всему проекту

Ctrl + Shift + F (Cmd + Shift + F)
Найдёшь любой фрагмент кода во всём проекте.

2️⃣ Быстрый переход к классу

Ctrl + N (Cmd + O)
Откроешь нужный класс по имени без лишней навигации.

3️⃣ Форматирование кода

Ctrl + Alt + L (Cmd + Option + L)
Приводит код к читаемому виду по стилю проекта.

4️⃣ Автодополнение кода

Ctrl + Space (Ctrl + Space)
Экономит время, подсказывает методы и переменные.

5️⃣ Запуск приложения

Shift + F10 (Ctrl + R)
Мгновенный запуск на эмуляторе или подключённом устройстве.

Освоив эти комбинации, ты будешь писать и навигироваться по проекту заметно быстрее ⚡️

🐸 Библиотека мобильного разработчика

#буст #JuniorKit #Android
Please open Telegram to view this post
VIEW IN TELEGRAM
3
🔔 Анонс: конференция Mobius 2025 Autumn

📅 Когда: 18–19 ноября 2025
📍 Где: Санкт-Петербург + онлайн трансляция
🌐 Официальный сайт: MobiusConf.com

📌 О событии

Mobius — одна из ведущих российских конференций по мобильной разработке, охватывающая как нативные платформы (iOS, Android), так и кроссплатформенные решения (Flutter, Kotlin Multiplatform и др.).

В программе:

➡️ 45 докладов от экспертов отрасли

➡️ Воркшопы и практические сессии

➡️ Обсуждение тем: архитектура, UI/UX, качество продукта, инфраструктура, тренды мобильного рынка

👇 А вы планируете побывать на конференции?

🐸 Библиотека мобильного разработчика

#МитапПоинт
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21
🤫 Курс «ИИ-агенты для DS-специалистов»

Каждый технологический скачок оставляет позади тех, кто «подождал ещё чуть-чуть». ИИ-агенты — это новый рывок.

Уже через пару лет именно они будут драйвить аналитику и автоматизацию. Хотите остаться на гребне?

🖥️ На курсе «ИИ-агенты для DS-специалистов» мы разберём:

— создание AI-агентов с нуля
— сборку собственной RAG-системы
— интеграцию LLM под задачи бизнеса

📌 Курс подходит:

→ ML/AI инженерам (middle+ / senior)
→ Data Scientists
→ Backend и platform-инженерам
→ Advanced CS/DS студентам

⚡️ Старт уже скоро — 3 октября.

💰 До 28 сентября действует скидка — 57.000 ₽ вместо 69.000 ₽ (по промокоду datarascals).

🔗 Узнать больше о курсе и записаться

З.ы. если вы не успели на вебинар «ИИ-агенты: новая фаза развития искусственного интеллекта» — запись уже доступна
🤫 Мы в X

Там всё, что вы любите: полезные материалы, код без цензуры, ну и конечно мемы.

⚡️ В общем, идите на X

🐸 Библиотека мобильного разработчика

#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
😁42
В чем здесь проблема и как вы можете ее решить

Пишите свои ответы в комментариях 👇

🐸 Библиотека мобильного разработчика

#междусобойчик #JuniorKit
Please open Telegram to view this post
VIEW IN TELEGRAM
2
🚀 Всё о курсе «ИИ-агенты для DS-специалистов»

Зачем нужны ИИ-агенты?

Это системы, которые берут на себя задачи аналитики и автоматизации. Именно они становятся основой для работы с корпоративными данными и для поддержки принятия решений.

Зачем мне курс?

Курс отвечает на три ключевых вопроса:

— Как построить собственную систему агентов с нуля?
— Каким образом использовать RAG-подход для работы с корпоративными данными?
— Как адаптировать LLM под реальные задачи бизнеса?

Подходит ли это мне?

Курс рассчитан на специалистов уровня middle+ и senior: ML/AI инженеров, Data Scientists, backend и platform-разработчиков. Подойдёт и студентам CS/DS, если вы готовы к продвинутым практикам.

Запись вводной встречи «ИИ-агенты: новая фаза развития искусственного интеллекта» доступна по ссылке.

Когда старт?

Обучение начинается 3 октября.

Сколько стоит?

До 28 сентября действует скидка → 57 000 ₽ вместо 69 000 ₽ (промокод datarascals).

🔗 Описание программы и регистрация
🎓 Как вайб-кодинг меняет рынок IT-образования

Помнишь свою первую программу "Hello World"? А сейчас студенты начинают с фразы «Привет, ChatGPT, создай мне приложение для учета расходов». И знаешь что? Получают рабочий результат быстрее, чем мы когда-то выводили эту чертову строчку на экран. Это меняет всю философию обучения программированию.

👉 Читать статью

🐸 Библиотека мобильного разработчика

#MadeInProglib
Please open Telegram to view this post
VIEW IN TELEGRAM
2😁1
Можно ли в Swift вернуть из функции несколько значений

Как и большинство языков программирования, Swift позволяет каждой функции возвращать только одно значение. Если этот элемент является примитивным типом, вы вернёте только одно значение.

Кроме того, объект может быть сложным типом, например классом, структурой, кортежем или массивом. В этой ситуации вы можете объединить несколько значений в сложный тип. После этого вы формально возвращаете один элемент с несколькими значениями, хранящимися внутри этой структуры данных.

➡️ Вот как можно вернуть несколько значений, хранящихся в кортеже:

func functionWithMultipleReturnValues(
val1: Int,
val2: Int
) -> (sum: Int, product: Int) {
let sum = val1 + val2
let prod = val1 * val2
return (sum, prod)
}
let result = functionWithMultipleReturnValues(val1: 10, val2: 20)
let s = result.sum
let p = result.product


🐸 Библиотека мобильного разработчика

#буст #MiddlePath #Swift
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Последние часы со скидкой!

Мы уже закрыли вебинар «ИИ-агенты: новая фаза развития AI», но запись всё ещё доступна.

А дальше остаётся только практика. На курсе «ИИ-агенты для DS-специалистов» ты научишься разрабатывать агентов, собирать RAG-системы и адаптировать LLM под бизнес.

Сегодня цена ещё 57.000 ₽ с промокодом datarascals.
Завтра — 69.000 ₽.

👉 Успеть оплатить до полуночи
1
🗓 Новости недели

Приготовили для вас дайджест по актуальному из мира iOS, Android и кроссплатформы.

🔵 Почему большие проекты Swift утыкаются в стену

С большими кодовыми базами Swift трудно работать — медленная сборка, нестабильное тестирование, сложные графы. Автор подробно разберёт, почему инструментарий Apple испытывает трудности при масштабировании и как команды могут преодолеть эти трудности без React Native или Bazel.

🔵Новые подходы в Swift для тестирования: разбор технологии Swift Testing

Тестирование на Swift долгие годы держалось на трех китах: XCTest, сторонние библиотеки и собственная смекалка. Но на WWDC 24 Apple представила новый, современный фреймворк — Swift Testing, который предлагает концептуально новый подход к тестированию.

🔵 Kotlin QA: как перейти с Java и писать тесты в 2 раза быстрее

Многие команды QA инженеров сталкиваются с выбором: остаться на привычном Java‑стеке или перейти на Kotlin. В этой статье мы рассмотрим некоторые ключевые различия, преимущества и практические аспекты перехода на Kotlin в контексте автоматизации тестирования.

🔵 Google обновляет Play Store, добавляя ИИ-функции и многое другое

Google сообщил, что вносит ряд изменений во внешний вид и функциональность Play Store, чтобы лучше персонализировать магазин для своих пользователей и повысить его вовлеченность.

🔵 React Native перевернул игру

Исправил ли React Native все свои проблемы? Кто его использует? А главное стал ли RN лучше, чем Flutter и Kotlin Multiplatform?

🐸 Библиотека мобильного разработчика

#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🔥1
🔍 Неочевидные возможности отладчика в Xcode

Большинство iOS-разработчиков используют Xcode Debugger только для банальных breakpoint и просмотра переменных. Но в нём есть куда больше фишек, которые реально экономят время.

🔹 Conditional breakpoints

Можно остановить выполнение не всегда, а только при выполнении условия.
Например, поставить брейкпоинт на метод и задать условие userId == 42. Тогда дебаггер не будет дёргать вас на каждом вызове.

🔹 Exception Breakpoint

Очень полезно для поиска падений — Xcode сразу остановит выполнение в момент выброса исключения, до того как приложение упадёт. Настраивается через вкладку Breakpoints Navigator → + Exception Breakpoint.

🔹 Symbolic breakpoints

Позволяют ловить вызовы по имени метода или функции, даже если кода у вас нет (например, методы UIKit). Можно отследить момент, когда система вызывает viewDidAppear: или layoutSubviews.

🔹 Debug view hierarchy

Через кнопку "Debug View Hierarchy" можно визуально исследовать всю иерархию вьюх, включая невидимые и перекрытые элементы. Отличный способ поймать «невидимую кнопку», которая блокирует тап.

🔹 LLDB команды прямо в консоли

🔘 po object — печатает объект с вызовом description.
🔘 expr — позволяет выполнять произвольный Swift/ObjC код прямо во время остановки.
🔘 watchpoint set variable foo — можно следить за изменением конкретной переменной.

🔹 Runtime Issues

Xcode сам подсказывает баги вроде «UI update вне main thread» или «дважды добавили constraint». Не игнорируйте эти подсказки — они часто спасают кучу времени.

Что из этого вы используете? 💬

🐸 Библиотека мобильного разработчика

#буст #MiddlePath #iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
3
👾 Шаблон архитектуры MVP

MVP (Model - View - Presenter)
появился как альтернатива традиционному архитектурному паттерну MVC (Model - View - Controller). Используя MVC в качестве архитектуры приложения, разработчики сталкиваются со следующими трудностями:

🔘 Большая часть основной бизнес-логики находится в Controller. В течение жизненного цикла приложения этот файл становится всё больше и его становится сложно поддерживать.

🔘 Из-за тесной связки пользовательского интерфейса и механизмов доступа к данным, и Controller, и View оказываются в одной Activity или Fragment. Это создаёт проблемы при внесении изменений в функциональность приложения.

🔘 Становится трудно проводить модульное тестирование разных слоёв, так как большинство тестируемых частей зависят от компонентов Android SDK.

Паттерн MVP решает эти проблемы MVC и предоставляет простой способ структурировать код проекта. Причина, по которой MVP широко применяется, заключается в том, что он обеспечивает модульность, тестируемость и более чистую и удобную в сопровождении кодовую базу. Он состоит из следующих трёх компонентов:

🔹 Model: слой для хранения данных. Отвечает за обработку предметной логики (реальных бизнес-правил) и взаимодействие с базой данных и сетевым уровнем.

🔹 View: слой пользовательского интерфейса (UI). Он отвечает за визуализацию данных и отслеживает действия пользователя, чтобы уведомлять Presenter.

🔹 Presenter: получает данные из модели и применяет UI-логику, чтобы решить, что отображать. Он управляет состоянием View и выполняет действия в соответствии с уведомлениями о действиях пользователя.

🐸 Библиотека мобильного разработчика

#буст #SeniorView #Android
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🥱2😁1
On-premise, private cloud, public cloud — где хранить данные

On-premise, private cloud, и public cloud — это три основные модели развертывания IT-инфраструктуры, каждая из которых предлагает различные уровни контроля, управления и масштабируемости.

Выбор между этими моделями часто ставит в тупик. Как выбрать подходящую платформу?

Что предпочитаете вы? Голосуйте и пишите своё мнение в комментариях 💬

❤️ — оn-premise
👍 
private cloud
🤝public cloud

🐸 Библиотека мобильного разработчика 

#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍2🤝1
📱 Топ вакансий для мобильных разработчиков за неделю

iOS-разработчик —‍ офис/удаленно (Москва, Зеленоград, Солнечногорск)

Android-разработчик —‍ офис/удаленно/гибрид

Flutter-разработчик —‍ до 200 000 ₽, офис/удаленно/гибрид

iOS-разработчик —‍ от 200 000 ₽, офис/удаленно/гибрид

Flutter-разработчик —‍ гибрид (4 дня офис/1 день удаленно) Москва

➡️ Еще больше топовых вакансий —‍ в нашем канале Mobile jobs

🐸 Библиотека мобильного разработчика

#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
2
✂️ Обрезка в Jetpack Compose

Обрезка — это удаление частей контента за пределами заданной формы. Представьте, что вы используете формочки для печенья: всё, что находится внутри формочки, остаётся, а всё, что снаружи, удаляется.

В Compose это делается с помощью Modifier.clip функции:

Image(
painter = painterResource(R.drawable.avatar),
contentDescription = null,
modifier = Modifier
.size(72.dp)
.clip(CircleShape)
)


Здесь изображение обрезается по кругу, независимо от фактических границ растрового изображения.

📌 Пользовательские Формы

Если встроенных фигур (CircleShape, RoundedCornerShape и т. д.) недостаточно, вы можете создать собственную Shape и нарисовать свой собственный контур. Например:

class SquishedOvalShape : Shape {
override fun createOutline(
size: Size,
layoutDirection: LayoutDirection,
density: Density
): Outline {
return Outline.Generic(
Path().apply {
addOval(Rect(0f, size.height / 4f, size.width, size.height))
}
)
}
}


Примените его, как и любую другую форму:

Modifier.clip(SquishedOvalShape())


🐸 Библиотека мобильного разработчика

#PixelPerfect #MiddlePath #Android
Please open Telegram to view this post
VIEW IN TELEGRAM
2
🤖 Курс «ИИ-агенты для DS-специалистов»

Последняя возможность в этом году освоить ИИ-агентов с Proglib— старт живых вебинаров на курсе уже 3 октября!

Уже 24 студента изучают 5 лонгридов подготовительного модуля, чтобы сформировать базу к старту живых вебинаров с Никитой Зелинским.

📚 Бонус: при оплате до 30 сентября вы получите дополнительный лонгрид для подготовки к курсу. Это отличный способ подойти к занятиям уже с базой.

🔥 А ещё после прохождения курса у вас будет достаточно знаний, чтобы участвовать в хакатоне с призовым фондом 1 125 000 ₽.

🔗 Записаться на курс и узнать подробности
🛡 adb shell dumpsys package – детальная информация об установленном приложении

Получайте полную техническую информацию о любом установленном приложении на Android-устройстве – от версий и разрешений до активности процессов.

📌 Ключевые сценарии:

1. Информация о версиях:
adb shell dumpsys package com.yourapp.package | grep -E "versionName|versionCode"


2. Проверка разрешений:
adb shell dumpsys package com.yourapp.package | grep -A 20 "requested permissions"


3. Информация о активностях и сервисах:
adb shell dumpsys package com.yourapp.package | grep -E "Activity|Service|Receiver"


4. Детали установки APK:
adb shell dumpsys package com.yourapp.package | grep -A 10 "Installation"


⚡️ Полезные фильтры:

1. Только основные данные:
adb shell dumpsys package com.yourapp.package | head -50


2. Поиск конкретной активности:
adb shell dumpsys package com.yourapp.package | grep -B 5 -A 5 "MainActivity"


3. Информация о подписантах:
adb shell dumpsys package com.yourapp.package | grep -A 15 "Signatures"


🔍 А вы используете dumpsys для отладки? Какие еще параметры dumpsys вам полезны?

🐸 Библиотека мобильного разработчика

#буст #JuniorKit #Android
Please open Telegram to view this post
VIEW IN TELEGRAM
3
2025/10/11 17:48:43
Back to Top
HTML Embed Code: