4.12.24

Наш стек: на чём работаем и почему выбрали Kotlin, а не Java

Наш стек: на чём работаем и почему выбрали Kotlin, а не Java
No items found.

Внимание-внимание! Эта статья для тех, кто знает базовые принципы разработки мобильных приложений и языков программирования. Для работы мы рассматриваем container-native технологии, т.е. такие, которые заточены на работу в контейнерах, в облаках и т.д.

Один из вариантов такой технологии — это фреймворк Quarkus вместо Spring. Он более легковесный, потребляет меньше памяти и CPU. Именно из-за высокой нагрузки центрального процесса у нас нет лимитов по CPU на старте, из-за чего один сервис может съесть сколько угодно процессора.

Решение довольно радикальное, поэтому мы используем его на сервисах без сложных интеграций с шинами. Посматриваем в сторону чего-то менее радикального — например, Spring Boot Native.

Как появились мысли о переходе на Kotlin вместо Java?

Во-первых, потому что языку Kotlin требуется меньшее количество написанных строк кода для той же задачи — а это должно облегчить дальнейшую поддержку мобильного приложения.

А ещё система типов Kotlin направлена на устранение нулевых ссылок, т.е позволяет значительно сократить наиболее распространенную ошибку в Java — NullPointerException (NPE), исключению, которое выбрасывается каждый раз, когда вы обращаетесь к методу или полю объекта по ссылке, которая равна null.

Почему решили пробовать:


1. Не требует большого кол-ва времени у Java-разработчика на переход с одного языка программирования на другой.
2. Kotlin ориентирован на взаимодействие с кодом Java, основной стек остается привычным для разработчика, все основные функции идентичны.

Особенности Kotlin:
Из недостатков Kotlin можно выделить то, что компиляция кода происходит с разной скоростью — то критически медленно, то наоборот очень бойко. Но это можно решить, а достоинства языка программирования перекрывают все сложности.

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

Eщё про команду:
Как мы поддерживаем командный дух
Как мы поддерживаем командный дух
Команда разработчиков мобильного приложения
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
Главное о команде
Главное о команде
Команда разработчиков мобильного приложения
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
Стажировки в Росбанке
Стажировки в Росбанке
Команда разработчиков мобильного приложения
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
Почитать о других:
Как мы настроили каталогизацию дашбордов и стримов
Как мы настроили каталогизацию дашбордов и стримов
Команда BI платформы
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
C PHP/Python на Go: как мы помогаем разработчикам (почти) безболезненно сменить стек
C PHP/Python на Go: как мы помогаем разработчикам (почти) безболезненно сменить стек
Команда Golang-разработчиков
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
Как мы появились
Как мы появились
Команда DevOps инженеров
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
Команда-швейцарский нож: сообщество Java в Сбере
Команда-швейцарский нож: сообщество Java в Сбере
Команда Java-разработчиков
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
QIWI Fit: как мы понимаем, что кандидат вольётся в команду
QIWI Fit: как мы понимаем, что кандидат вольётся в команду
Команда IT рекрутмента
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
5 полезных навыков, которые помогут построить карьеру в e-commerce
5 полезных навыков, которые помогут построить карьеру в e-commerce
Команда проекта «Большие сезоны»
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.