Anonymous Quiz
0%
String.toInt()
24%
String?.toInt()
76%
String.toIntOrNull()
0%
String.asInt()
❤4
#Собес
🤔 Объясните концепцию умных приведений типов в Kotlin.
Умные приведения типов в Kotlin позволяют компилятору автоматически преобразовывать переменные в ненулевые типы после проверки на
👉 Новости 👉 Платформа
Умные приведения типов в Kotlin позволяют компилятору автоматически преобразовывать переменные в ненулевые типы после проверки на
null . Это позволяет избежать необходимости вручную указывать типы и повышает безопасность и читаемость кода.Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
#вакансии
👨💻 Разработчик Kotlin
Локация: Удалённо
Компания: Irbis
ЗП: 150 000 р. за этап
Занятость: Полная/Проектная
Город: Санкт-Петербург
Описание вакансии:
Производим поиск разработчика kotlin для поддержки текущего и разработки нового функционала в рамках мобильного приложения для AndroidTV.
🚩 Ждем от вас
🔵 Знание (опыт от 3-х лет): Kotlin, разработка под AndroidTV;
🔵 Будет большим преимуществом, если у вас есть опыт работы с аудио, потоковыми данными, socket, rabbitmq, очередностью загрузки данных.
Тех. стек стандартный (просто чтобы был)
🔵 Android development (Kotlin, XML, Jetpack Compose)
🔵 Архитектуры: MVP, MVVM, MVI
🔵 Room, Retrofit, REST API
🔵 Coroutines, Flow
🔵 Firebase (Authentication, Firestore, Cloud Messaging, Remote Config, Analytics)
🔵 Dagger Hilt (Dependency Injection)
🔵 CI/CD, SOLID, Git/GitHub
🚩 Условия
🟡 Оплата на карту или счет банков РФ и РБ, с криптой не работаем, трансграничные переводы не делаем.
💬 Резюме отправлять: @xscout
👉 Новости 👉 Платформа
Локация: Удалённо
Компания: Irbis
ЗП: 150 000 р. за этап
Занятость: Полная/Проектная
Город: Санкт-Петербург
Описание вакансии:
Производим поиск разработчика kotlin для поддержки текущего и разработки нового функционала в рамках мобильного приложения для AndroidTV.
Тех. стек стандартный (просто чтобы был)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
😊
Смотреть статью
👉 Новости 👉 Платформа
keyframesWithSpline — новая анимация в Jetpack Compose, которая создает естественную плавную кривую, идеально подходящую для работы с предопределенными координатами X, Y!Смотреть статью
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Anonymous Quiz
63%
Использовать const val
15%
Использовать lateinit val
15%
Использовать static val
7%
Использовать final val
#Собес
🤔 Что такое коллекции в Kotlin?
Коллекции в Kotlin - это структуры данных, предназначенные для хранения и управления набором элементов. В Kotlin существуют несколько типов коллекций:
🟠 Списки (List) - упорядоченные коллекции, которые могут содержать дубликаты.
🟠 Множества (Set) - неупорядоченные коллекции без дубликатов.
🟠 Карты (Мар) - коллекции, которые хранят пары ключ-значение.
👉 Новости 👉 Платформа
Коллекции в Kotlin - это структуры данных, предназначенные для хранения и управления набором элементов. В Kotlin существуют несколько типов коллекций:
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3
Anonymous Quiz
46%
object : InterfaceName {}
8%
new InterfaceName() {}
27%
class : InterfaceName {}
19%
InterfaceName.create()
#ЛитКод
Задача: 646. Maximum Length of Pair Chain
Вам дан массив из n пар, где pairs[i] = [lefti, righti] и lefti < righti. Пара p2 = [c, d] следует за парой p1 = [a, b], если b < c. Таким образом можно построить цепочку пар. Верните самую длинную цепочку, которую можно составить. Вам не нужно использовать все заданные интервалы. Вы можете выбирать пары в любом порядке.
Пример:
👨💻 Алгоритм:
1⃣ Отсортируйте пары по второму элементу каждой пары (righti).
2⃣ Используйте динамическое программирование или жадный алгоритм, чтобы построить цепочку максимальной длин
3⃣ Переберите отсортированные пары и выберите пары, которые могут следовать одна за другой, увеличивая длину цепочки.
😎 Решение:
👉 Новости 👉 Платформа
Задача: 646. Maximum Length of Pair Chain
Вам дан массив из n пар, где pairs[i] = [lefti, righti] и lefti < righti. Пара p2 = [c, d] следует за парой p1 = [a, b], если b < c. Таким образом можно построить цепочку пар. Верните самую длинную цепочку, которую можно составить. Вам не нужно использовать все заданные интервалы. Вы можете выбирать пары в любом порядке.
Пример:
Input: nums = [1,2,2,4]
Output: [2,3]
fun findLongestChain(pairs: Array<IntArray>): Int {
pairs.sortBy { it[1] }
var currentEnd = Int.MIN_VALUE
var count = 0
for (pair in pairs) {
if (currentEnd < pair[0]) {
currentEnd = pair[1]
count++
}
}
return count
}Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😊 Тестированию пуш-уведомлений
Тестирование push-уведомлений и пушей в приложениях, где они играют важную роль
Читать статью
👉 Новости 👉 Платформа
Тестирование push-уведомлений и пушей в приложениях, где они играют важную роль
Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
#Собес
🤔 В чем разница между списком и массивом в Kotlin?
Основные различия между списком и массивом в Kotlin заключаются в их размере и типах данных:
Список (List) - это динамическая коллекция, которая может изменять размер и содержать элементы разных типов.
Массив (Array) - это фиксированная по размеру коллекция, содержащая элементы одного типа.
Списки предоставляют удобные методы для добавления и удаления элементов, а массивы обеспечивают лучшую производительность для работы с элементами в
фиксированном размере.
👉 Новости 👉 Платформа
Основные различия между списком и массивом в Kotlin заключаются в их размере и типах данных:
Список (List) - это динамическая коллекция, которая может изменять размер и содержать элементы разных типов.
Массив (Array) - это фиксированная по размеру коллекция, содержащая элементы одного типа.
Списки предоставляют удобные методы для добавления и удаления элементов, а массивы обеспечивают лучшую производительность для работы с элементами в
фиксированном размере.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
#полезное
😊 Запуск android приложений
Waydroid - решение на основе контейнеров для запуска Android приложения в GNU/Linux системах, используй Wayland
Если любите Linux, то Waydroid даст вам возможность запуска Android приложений и сделать их интеграцию в систему как нативные приложения.
👉 Новости 👉 Платформа
Waydroid - решение на основе контейнеров для запуска Android приложения в GNU/Linux системах, используй Wayland
Если любите Linux, то Waydroid даст вам возможность запуска Android приложений и сделать их интеграцию в систему как нативные приложения.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Ничего необычного, просто юзеры андроидов делают скриншот
🔥4
Anonymous Quiz
11%
var variable: String = null
61%
var variable: String? = null
14%
var variable = null
14%
var variable: Nullable<String>
❤2
#Собес
🤔 Объясните концепцию неизменяемых и изменяемых переменных в Kotlin.
В Kotlin переменные могут быть либо неизменяемыми, либо изменяемыми:
🟠 Неизменяемые переменные обьявляются с помощью
🟠 Изменяемые переменные объявляются с помощью
👉 Новости 👉 Платформа
В Kotlin переменные могут быть либо неизменяемыми, либо изменяемыми:
val и не могут быть изменены после их инициализации.var и могут быть изменены в процессе выполнения программы.Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Anonymous Quiz
26%
open
26%
abstract
42%
sealed
6%
final
❤4🔥1
Anonymous Quiz
43%
Использовать ключевое слово static
46%
Разместить метод в companion object
7%
Разместить метод в объекте object
4%
Определить метод вне класса
#ЛитКод
Задача: 653. Two Sum IV - Input is a BST
Вам дан целочисленный массив nums без дубликатов. Из nums можно рекурсивно построить максимальное двоичное дерево, используя следующий алгоритм: создайте корневой узел, значение которого равно максимальному значению в nums. Рекурсивно постройте левое поддерево по префиксу подмассива слева от максимального значения. Рекурсивно постройте правое поддерево по суффиксу подмассива справа от максимального значения. Верните максимальное двоичное дерево, построенное из nums.
Пример:
👨💻 Алгоритм:
1⃣ Выполните обход BST и сохраните все значения узлов в набор.
2⃣ Для каждого узла в процессе обхода проверьте, существует ли в наборе значение, равное k минус значение текущего узла.
3⃣ Если найдена такая пара, верните true. Если обход завершен и пары не найдены, верните false.
😎 Решение:
👉 Новости 👉 Платформа
Задача: 653. Two Sum IV - Input is a BST
Вам дан целочисленный массив nums без дубликатов. Из nums можно рекурсивно построить максимальное двоичное дерево, используя следующий алгоритм: создайте корневой узел, значение которого равно максимальному значению в nums. Рекурсивно постройте левое поддерево по префиксу подмассива слева от максимального значения. Рекурсивно постройте правое поддерево по суффиксу подмассива справа от максимального значения. Верните максимальное двоичное дерево, построенное из nums.
Пример:
Input: root = [5,3,6,2,4,null,7], k = 9
Output: true
class TreeNode(var `val`: Int) {
var left: TreeNode? = null
var right: TreeNode? = null
}
fun findTarget(root: TreeNode?, k: Int): Boolean {
val seen = mutableSetOf<Int>()
fun find(node: TreeNode?): Boolean {
if (node == null) return false
if (seen.contains(k - node.`val`)) return true
seen.add(node.`val`)
return find(node.left) || find(node.right)
}
return find(root)
}Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
#Собес
🤔 Объясните концепцию высших функций в Kotlin.
Высшие функции в Kotlin - это функции, которые могут принимать другие функции в качестве параметров или возвращать функции как результат. Это позволяет создавать более гибкий и динамичный код, используя функциональные подходы.
Пример: функция, которая принимает лямбда выражение для выполнения различных операций над данными.
👉 Новости 👉 Платформа
Высшие функции в Kotlin - это функции, которые могут принимать другие функции в качестве параметров или возвращать функции как результат. Это позволяет создавать более гибкий и динамичный код, используя функциональные подходы.
Пример: функция, которая принимает лямбда выражение для выполнения различных операций над данными.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1
#полезное
😊 Первые шаги в мобильной разработке с Flutter
Flutter — один из самых популярных инструментов для создания кроссплатформенных приложений. Если хочешь научиться разрабатывать сразу под iOS и Android, эта статья для тебя!
Разбираем
🟠 Как установить и настроить окружение
🟠 Запуск первого приложения и работа с виджетами
🟠 Ошибки, которые мешают новичкам осваивать Flutter
Читать статью
👉 Новости 👉 Платформа
Flutter — один из самых популярных инструментов для создания кроссплатформенных приложений. Если хочешь научиться разрабатывать сразу под iOS и Android, эта статья для тебя!
Разбираем
Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
Anonymous Quiz
13%
Автоматическая обработка null Kotlin'ом
58%
Возможно возникновение NullPointerException
25%
Java-код не скомпилируется
4%
Kotlin гарантирует, что null не вернется