😨Главное за сегодня:
🇺🇸США (крипто-#ETF):
- Трамп назначил Бо Хайнса главой "Криптосовета", а CEO a16z назначен старшим советником по вопросам #AI
- Налоговая США (IRS) утверждает, что стейкинг криптовалют облагается налогом
- Phoenix Group планирует листинг на Nasdaq в 2025 году
🇰🇵#HYPE В HyperLiquid наблюдается рекордный отток на фоне опасений пользователей, что северокорейские хакеры могут искать уязвимости (несколько кошельков северокорейских хакеров имеют потери >700 000$ от торговли на бирже). #HYPE Hyperliquid Labs опровергают, что их взломали
🇰🇷 Новый комитет Южной Кореи разрабатывает санкции против манипуляторов крипторынка
🇸🇻#BTC Правительство Сальвадора продолжает накопление#BTC
🇯🇵 Gate Group приобрели Coin Master и официально вышли на японский рынок
🔥 MicroStrategy приобрели ещё 5,262 #BTC
🥳#BNB Binance Alpha выпустили новую партию проектов
🥳#TONПавел Дуров: Общая выручка Telegram в 2024 году превысила 1 млрд $, и мы завершаем год с более чем 500 млн $ денежных резервов, не считая криптоактивов
🙋♂ Nokia подали патент на «устройство, метод и компьютерную программу», которые могут шифровать цифровые активы
🥳#CRO Crypto .com запускает регулируемую службу хранения цифровых активов для клиентов из США и Канады
🙋♂ Moonpay ведет переговоры о приобретении Helio за ~150 млн $
🚫 Регулятор Малайзии запретили Atomic Wallet работать в стране
🔮#CGX#RON Community Gaming запустит свой рынок прогнозов Forkast, ориентированный на игры, в сети #RONIN
✅ Paraswap DAO одобрила внедрение нового токена для замены #PSP
🙋♂#LDO#ETH Lido запустили Ethereum SDK
🆕Листинги:
- Binance добавляет фьючерсы на #HIVE
- Binance Launchpool добавляет#BIO
🕵️♂️Активность китов и SmartMoney:
- С адреса команды Pendle перевели 625 000 #PENDLE на Binance
- транзакции китов
📊Графики и отчёты:
- #FUD Новые трейдеры, которые присоединились к рынку за последние 2-3 месяца, активно распродают#BTC и #ETH
- WhaleMap: Уровень 98 133$ остаётся важным, учитывая китовые накопления #BTC
- за последние 2 года наблюдался значительный рост числа держателей криптовалют 📈
- #UNI Общий объем #USDC на Uniswap превысил 1 трлн $ 📈
- DropsTab: новые токены в стадии накопления, поддерживаемые топовыми венчурными инвесторами
- ТОП#AI-агентов по росту цен за последние 7 дней
- отчёт CoinShares по фин потокам
- отчет BNB Chain за 2024 год #BNB
💰Сборы средств:
- Avalon Labs - 10 млн $
- #USUALUsual - 10 млн $ от Binance и Kraken
✏️События на завтра:
🔓 Разлоки: Ribbon Finance (#RBN) - 1,06% ($4,18m)
🎁#AGI Delysium запустят программу вознаграждений
🇺🇸 Durable Goods Orders (MoM) (Nov) - 16:30 мск
- Redbook (YoY) - 16:55 мск
- New Home Sales (Nov) - 18:00 мск
#kotlin
Google AI Edge Gallery lets you run powerful open-source AI models like Gemma 4 on your phone offline, with features like smart agents, image analysis, voice transcription, and a prompt tester. It keeps everything private on your device for fast, secure use without internet. Download from Google Play or App Store to test advanced AI reasoning and creativity anytime, boosting your productivity and privacy on the go.
https://github.com/google-ai-edge/gallery
🏝Kotlin 2.3.0 Stable! Вышла новая версия языка
Команда Kotlin выпустила финальную версию Kotlin 2.3.0. Обновление приносит новые стабильные возможности языка, улучшения производительности и поддержку новейших инструментов.
📢 Основные нововведения:
✅ Язык: Больше стабильных функций, проверка неиспользуемых возвращаемых значений, явные backing field.
✅ Kotlin/JVM: Поддержка Java 25.
✅ Kotlin/Native: Улучшенный Swift export, ускорение сборки, импорт C/Objective-C библиотек (бета).
✅ Kotlin/Wasm: Полные имена и новая модель исключений включены по умолчанию.
✅ Kotlin/JS: Экспериментальный export suspend-функций, новое представление LongArray.
✅ Gradle: Совместимость с Gradle 9.0, новый API для регистрации сгенерированных исходников.
✅ Compose compiler: Стектрейсы для минифицированных Android-приложений.
✅ Стандартная библиотека: Стабильные API для работы со временем и улучшенная работа с UUID.
📖 Подробнее на сайте
Каждую ключевую фичу подробно разберу в отдельном посте в канале @kotlin_broadcast. Следите за новостями!
#Kotlin
🏝Приоритеты поддержки таргетов JetBrains и Google выбирают на основе тиров. Особенно зоопарк в Kotlin/Native таргета (их суммарно 21 на момент написани поста). Все они поделены на три тира по важности. Tier 1 - самый важный и работы ведутся в первую очередь, а вот Tier 3 - самый низкоприоритетный и неинтересный. Там находятся все Android Native тарегты, mingwX64 и watchosDeviceArm64.
Именно по этой причине Google не фокусируется на этих таргетах, хотя mingwX64 не обходит стороной.
#kotlin
🏝Вышел Kotlin 2.2.0
Что нового в релизе языка:
👉 Превью context parametr
👉 Non-local break и continue теперь stable
👉 Kotlin/JVM: изменения в генерации метода по умолчанию
👉 Kotlin/Native: улучшения в управлением памятью
👉 Kotlin/Wasm: wasmJs таргет отделили от js таргета
🐘 Поддержка Gradle 7.6.3 - 8.14
👉 Base64 стало Stable
#kotlin
🏝9 лет назад вышла первая версия Kotlin 🎉🎉🎉
Кажется, я совсем недавно еще работал с бета-версиями первой версии Kotlin, писал приложения с расписанием для университета, где учился, чтобы попробовать эту технологию. Тогда была только поддержка JVM и проводились эксперименты с JS.
Сегодня Kotlin - это уже целая экосистема💪, которая позволяет писать приложения для нескольких платформ, имеет огромное сообщество разработчиков, а также официальную поддержку от команды 🤖 Android в Google. А как хорош Compose Multiplatform ❤️❤️❤️
Уже появилось поколение разработчиков, которые начали свой путь именно с Kotlin для разработки под Android 🤯🤯🤯
Поделитесь в комментариях под постом в @kotlin_broadcast своей историей знакомства с этим языком и тем, что вас привлекло в нем.
#kotlin
🏝Kotlin where: Элегантное ограничение типов для чистоты и безопасности
Как часто в Android-разработке вы видели сомнительные as-приведения? 🤔
Вот пример, который недавно попался мне на глаза:
class Sample(private val activity: Activity) {
fun doSomething() {
// Опасно! Может упасть с ClassCastException,
// если activity не реализует LifecycleOwner
(activity as LifecycleOwner).lifecycle.addObserver(...)
}
}
Опустим тот факт, что здесь стоит использовать слабую ссылку (WeakReference) на Activity. Меня больше смутила необходимость вручную приводить Activity к LifecycleOwner.
Да, в современной Android-разработке AppCompatActivity и FragmentActivity реализуют этот интерфейс. Но наша цель — писать чистый и стабильный код, который не полагается на слепую веру, а гарантирует безопасность на уровне типов.
💡Решение: Ограничение типов с помощью where
В Kotlin мы можем использовать условие where для универсальных параметров, чтобы указать: «класс A должен быть одновременно и Activity, и LifecycleOwner
class Sample<A>(private val activity: A)
where A : Activity,
A : LifecycleOwner {
fun doSomething() {
// Теперь activity можно использовать как LifecycleOwner
// БЕЗОПАСНО и без приведения типов
activity.lifecycle.addObserver(...)
}
}
Этот же подход отлично работает и для функций:
fun <A> doSomethingWith(activity: A)
where A : Activity,
A : LifecycleOwner {
// Полная типобезопасность
activity.lifecycle.addObserver(...)
}
В чем выигрыш?
Безопасность: Компилятор гарантирует, что в класс Sample или функцию doSomethingWith можно передать только объект, который удовлетворяет обоим условиям:
1️⃣Исключаются ошибки ClassCastException в рантайме.
2️⃣Чистота кода: Исчезают громоздкие и опасные приведения через as.
3️⃣Выразительность: Сигнатура класса/функции явно сообщает о своих требованиях к переданным зависимостям.
Используйте силу системы типов Kotlin на полную! Это делает код не только чище, но и стабильнее. 💪
#kotlin#android#androiddev
🔥Вышел JUnit 6 с поддержкой Kotlin
Прошло более 8 лет с релиза JUnit 5 (10 сентября 2017 года) и вот новая мажорная версия популярного фреймворка для написания Unit тестов в Java
Ключевые изменения в новой версии:
👉 Поддержка Java 17 и Kotlin 2.2+
👉 Переход на аннотации JSpecify
🏝 Поддержка корутин из Kotlin
👉 Поддержка Java Flight Recorder (JFR) из коробки
👉 Поддержка отмены выполнения теста
👉 Удалено deprecated API
👉--fail-fast режим для запуска тестов из терминала
#тестирование#kotlin