Старый Мобильщик
74 subscribers
34 photos
1 video
1 file
118 links
Разработка мобильных приложений, дедлайны и все, что вы любите в IT.

Будни. Сниппеты. Заметки.

Когда-то были AsyncTasks ... Android 2.3.3 и ни одной вакансии в городе-миллионнике

Обсудить что-либо: @activitynotfound
Download Telegram
Marcin Moskala в своей книги Kotlin Coroutines Deep Dive наглядно показывает как устроены Flow под капотом:


fun interface FlowCollector<T> {
suspend fun emit(value: T)
}

interface Flow<T> {
suspend fun collect(collector: FlowCollector<T>)
}

fun <T> flow(
builder: suspend FlowCollector<T>.() -> Unit
) = object : Flow<T> {
override suspend fun collect(
collector: FlowCollector<T>
) {
collector.builder()
}
}

suspend fun main() {
val f: Flow<String> = flow {
emit("A")
emit("B")
emit("C")
}
f.collect { print(it) } // ABC
f.collect { print(it) } // ABC
}

Все гениальное просто 😎

#Coroutines #Flow
2
Пожалуй, лучшие потраченные 400 руб в году!

Искать здесь
🔥2
"Нейронки заменят джунов" - говорили они...

Часто ли джуны говорят своим лидам "обратиться к другому специалисту"? 😄
2
В Android Studio Otter 3 Feature Drop завезли возможность работы с локальным LLM и сторонними провайдерами с OpenAI-совместимым API (вдруг вы не знали?)

Работает это все, как привычный агент с чатом, но можно и просто что-то спросить без редактирования файлов.

Есть поддержка контекста и Rules + промпт-библиотека, которую можно добавлять прямо в AS.

Потестировал и на корпоративной модельке и с локальной LM Studio.
Пока еще местами работает сыро, но в целом доволен👌

Надеюсь не выпилят в угоду продажам Gemini 🙂

#LLM #AndroidStudio
2