SmartNews сокращает количество строк кода на 20 % и повышает боевой дух команды с помощью Kotlin

SmartNews помогает миллионам людей каждый день открывать для себя мир, делясь своевременными новостями из различных источников новостей. Компания была основана в 2012 году в Японии, и сейчас у нее более 50 миллионов загрузок по всему миру.

В июне 2019 года команда увидела, что разработка Android сначала движется в сторону Kotlin, и решила начать тестирование Kotlin самостоятельно. Они хотели воспользоваться преимуществами библиотек Jetpack, созданных на базе Kotlin, уменьшить объем кода, который им приходилось поддерживать, и получить выгоду от выразительного и простого для понимания синтаксиса Kotlin.

Что они сделали

Команда SmartNews хорошо разбирается в Java, поэтому им было довольно легко начать писать на Kotlin. Поскольку Kotlin на 100% совместим с Java, они могут легко начать писать новые функции, такие как Weather Radar и News From All Sides , на Kotlin, одновременно работая с существующей кодовой базой. Они использовали сопрограммы для управления загрузкой и кэшированием изображений в рамках запатентованной функции Weather Radar. Диспетчеры сопрограмм предоставляют полезную абстракцию для управления задачами, и это помогло инженерам SmartNews избежать ошибок, возникающих при управлении необработанными потоками.

Команда также провела рефакторинг части своего Java-кода и была впечатлена нулевыми функциями безопасности Kotlin. Синтаксис Kotlin для определения изменчивости, возможности обнуления и инициализации помог команде выявить ошибки на ранних этапах и сократить время на проверку изменений кода на 10% . Используя краткий и эффективный синтаксис Kotlin, они также смогли повысить читаемость своей кодовой базы, что упростило поддержку их кода по мере дальнейшего роста компании.

Результаты

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

По мере того как команда разработчиков внедряла Kotlin и сокращала шаблонный код, они заметили повышение боевого духа команды . Команда была рада возможности более эффективно выражать свои идеи и сделать код более читабельным в будущем. Хидео Охаси, технический менеджер SmartNews, заметил, что Kotlin помог им в подборе инженеров . «Самые частые вопросы от кандидатов: «Используете ли вы Kotlin?» Как часто вы им пользуетесь? Кажется, сейчас многие инженеры заинтересованы в переходе на Kotlin и хотят его поддержать». Хотя эти улучшения командного духа и набора персонала не были основными причинами, по которым команда внедрила Kotlin, эти положительные изменения помогут компании в ее дальнейшем росте в этой конкурентной отрасли.

Начать

Узнайте больше о разработке приложения для Android с помощью Kotlin .