Как мы переключились с Java на Kotlin

Дата публикации:

Совсем недавно к нам зашел проект, основной фишкой которого была возможность расплачиваться в барах и ресторанах с помощью NFC браслета и мобильного Android девайса. Интересный кейс, но самым главным оказалось то, что перед нами поставили задачу написать приложение на Kotlin. До этого момента мы были преданы языку программирования Java. Но, как говорится, challenge accepted! Поставленная задача была выполнена, и теперь наша мобильная команда полностью переключилась на Kotlin. А сейчас мы расскажем почему.

Почему Kotlin?

Вот выдержка из официальной документации:

Kotlin fixes a series of issues that Java suffers from:

А вот вам список того, что есть в Kotlin, но отсутствует в Java.

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

На что обратить внимание

Безусловно, и в Kotlin можно найти подводные камни. Например:

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

Теперь о пороге вхождения. Учитывая, что до этого проекта наша команда вообще не имела опыта работы с Kotlin, мы можем смело заявить: путь с Java на Kotlin сможет осилить любой разработчик. Разумеется, если он знает Java.

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

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

Здесь стоило бы описать шаги миграции с Java на Kotlin, но их, в принципе, не было. Кодить на Kotlin для тех, кто знает Java — дело простое и интуитивно понятное. Первые несколько дней мы пребывали в беспрерывном восторге от того, насколько приятно, быстро и естественно пишется код. А далее мы уже просто не смогли найти какие-либо причины для возвращения к Java.

Примеры кода

Перед вами сравнение одного и того же кода на Java и Kotlin:

Создание класса

Java:

Kotlin:

И это все, что вам нужно написать. Ведь все getters, setters, equals(), hashcode(),toString() and copy() методы вы получаете автоматически. Естественно, при необходимости их можно переопределить.

Работа с Collections

Java:

Kotlin:

И это лишь пара примеров того, насколько лаконичным и красивым может быть код, если вы используете Kotlin. Так что король умер. Да здравствует король!

Вывод

Если вы Android разработчик, желающий найти ответ на вопрос: стоит ли переключаться с Java на Kotlin, остановитесь прямо здесь. Ведь Kotlin это живое воплощение всего, о чем мечтали Android разработчики:

  • Высокая скорость разработки
  • Null-safety по дефолту
  • Низкий порог вхождения

Кроме того, Kotlin полностью совместим со своим предшественником. Конечно, некоторые возразят, сказав, что Kotlin имеет проблемы с производительностью. Это правда. Тем не менее, Kotlin находится в разработке всего год. И мы уверены, что все уязвимости будут исправлены довольно быстро.

По всем вопросам обращайтесь к нам напрямую. Или пишите комментарии.

Мы Крым Диджитал

С 2015 года мы предоставляем полный цикл услуг мобильной и веб-разработки клиентам из различных отраслей и разных стран.

Подпишись
на наши новости

Контакты пресс-службы

+ 7 (926) 118-80-32

WhatsApp, Viber, Telegram

Давайте обсудим Ваш проект

или свяжитесь с нами по почте projects@crimeadigital.ru

Нажимая кнопку «Отправить», вы даете согласие на обработку персональных данных

Прошел день карьеры в СевГУ

Резидент технопарка, компания Крым Диджитал, приняла участие в Дне Карьеры в СевГУ, который прошел 17 мая. Мероприятие длилось 3 часа. Компанией заинтересовались  более 35 студентов, которым была важна информация о прохождении практики, бесплатные курсы Академии и вакансии, не требующие опыта работы. Руководитель разработки компании выступил с презентацией и ответил на все вопросы, которые так волнуют студентов — как начать свою карьеру в ИТ? Есть ли возможность совмещать учебу с работой? Кем я смогу стать? Как понять, кем я хочу работать? И многие другие.

Резидент технопарка, компания Крым Диджитал, приняла участие в Дне Карьеры в СевГУ, который прошел 17 мая.

Мероприятие длилось 3 часа. Компанией заинтересовались  более 35 студентов, которым была важна информация о прохождении практики, бесплатные курсы Академии и вакансии, не требующие опыта работы.

Руководитель разработки компании выступил с презентацией и ответил на все вопросы, которые так волнуют студентов - как начать свою карьеру в ИТ?

Есть ли возможность совмещать учебу с работой?

Кем я смогу стать?

Как понять, кем я хочу работать?

И многие другие.

Завершен набор студентов на летнюю практику

Крым Диджитал завершила набор студентов на летнюю практику. В июле придут 14 человек. Это студенты второго и третьего курсов кафедр Программная инженерия, Информатика и вычислительная техника, Информационные системы и технологии и Управление в технических системах. Все ребята будут ходить в офис и будут заняты реальным проектом, который они должны реализовать до конца практики. Каждый выбрал для себя то направление, в котором хотел бы развиваться — front-end и back-end-разработка, дизайн. Руководить практикой будет Head of Engineering.
Крым Диджитал завершила набор студентов на летнюю практику. В июле придут 14 человек. Это студенты второго и третьего курсов кафедр Программная инженерия, Информатика и вычислительная техника, Информационные системы и технологии и Управление в технических системах. Все ребята будут ходить в офис и будут заняты реальным проектом, который они должны реализовать до конца практики. Каждый выбрал для себя то направление, в котором хотел бы развиваться - front-end и back-end-разработка, дизайн. Руководить практикой будет Head of Engineering.

Крым Диджитал приняла участие в стратегической сессии

Руководители Крым Диджитал приняли участие в стратегической сессии, которая прошла на базе СевГУ 10 июня. Вместе с Правительством Севастополя, Институтом информационных технологий и управления в технических системах СевГУ и приглашенными ИТ-компаниями города обсудили перспективу развития системы высшего образования в Севастополе.Представители бизнеса, власти и образовательной системы выступали со своим видением будущих потребностей региона в кадрах, поднимали насущные вопросы обучения студентов, прохождения практики и дальнейшего трудоустройства. Крым Диджитал является амбассадором идеи образования и взращивания молодых кадров, развивает образовательные проекты и на протяжении 5 последних лет ведет активную работу в направлении поддержки и развития молодых специалистов ИТ-отрасли Крыма.

Руководители Крым Диджитал приняли участие в стратегической сессии, которая прошла на базе СевГУ 10 июня.

Вместе с Правительством Севастополя, Институтом информационных технологий и управления в технических системах СевГУ и приглашенными ИТ-компаниями города обсудили перспективу развития системы высшего образования в Севастополе.
Представители бизнеса, власти и образовательной системы выступали со своим видением будущих потребностей региона в кадрах, поднимали насущные вопросы обучения студентов, прохождения практики и дальнейшего трудоустройства.

Крым Диджитал является амбассадором идеи образования и взращивания молодых кадров, развивает образовательные проекты и на протяжении 5 последних лет ведет активную работу в направлении поддержки и развития молодых специалистов ИТ-отрасли Крыма.

Выпуск курса Software Testing

Мы поздравляем выпускников нашего первого в этом году курса Крым Диджитал Академии по Software Testing! Всего курс успешно завершили 13 человек. В течение 2 месяцев несмотря на теплую погоду и манящее море ребята ответственно посещали занятия 2 раза в неделю, делали домашние задания и проверочные работы. Трое начинающих специалистов теперь стажеры нашей компании. Следующий курс намечен на август. Не пропусти анонс записи!

Мы поздравляем выпускников нашего первого в этом году курса Крым Диджитал Академии по Software Testing!

Всего курс успешно завершили 13 человек. В течение 2 месяцев несмотря на теплую погоду и манящее море ребята ответственно посещали занятия 2 раза в неделю, делали домашние задания и проверочные работы. Трое начинающих специалистов теперь стажеры нашей компании.

Следующий курс намечен на август. Не пропусти анонс записи!