Ответ
Да, переписывал. Основные преимущества Kotlin:
- Null-safety (избегаем
NullPointerException). - Лаконичность (меньше boilerplate-кода).
- Coroutines для асинхронности.
Пример перевода:
// Java
public class User {
private String name;
public User(String name) { this.name = name; }
public String getName() { return name; }
}
// Kotlin
data class User(val name: String)
Нюансы:
- Совместимость с Java (можно вызывать Kotlin из Java и наоборот).
- Нужно учитывать interop (аннотации
@JvmField,@JvmStatic). - Иногда Kotlin-код генерирует больше байткода (но это редко критично).
Использую Kotlin для новых фич, а старый код переписываю постепенно.