Jump to content
СофтФорум - всё о компьютерах и не только

Язык программирования Котлин принят Гуглом вторым рабочим.


Recommended Posts

Язык программирования Kotlyn российской, ныне интернациональной, компанией JetBrains принят в качестве второго для Андроид.

0.jpg.05f4b6108d9883c7b7b5c56fc6bbb24c.jpg

https://rb.ru/news/kotlin-win/

http://kotlinlang.org/

Трудности с языком Ява (9-й версии)  https://jcp.org/en/jsr/results?id=5959 привели к некоторому застою в этой области. Компания Гугл приняла верное, на мой взгляд, решение. Ввести вторым и, видимо, далее перейти к новому языку программирования.

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

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

Link to post
Share on other sites

Если бы я начинал что-то писать под андроид сейчас, то выбрал бы Xamarin и C#, поскольку после покупки Xamarin'а Майкрософтом они сделали его бесплатным для одиночных разработчиков.

Link to post
Share on other sites

Мне Котлин ближе по синтаксису как дельфисту. К тому же, Zamarin года три назад подглючивал при компиляции и отладке.

А тут ещё мастдайная фирма усыновила - это не к добру.

Edited by Teddy_Bear
Link to post
Share on other sites

Ура! В Котлине не будет виртуальной машины Явы.

https://blog.jetbrains.com/kotlin/2017/04/kotlinnative-tech-preview-kotlin-without-a-vm/

Ну не уговаривайте меня, что интерпретатор - это здорово.

Link to post
Share on other sites
  • 3 years later...

Решил поделиться своими впечатлениями о Котлине. Несколько месяцев назад начал разрабатывать очередное приложение под Android и решил таки перейти на Kotlin. И, должен сказать, язык и в правду очень хорош. Особенно если его сравнивать с той Джавой, которая в Android (Java 7).

Помимо того, что сам синтаксис Котлина очень компактный, в языке просто огромнейшее количество полезных ништяков из мира функционального программирования. Функциональные типы, полноценные лямбды - это всё то, чего не хватало в Android-Java. Локальные функции, scope-функции, функции-расширения, null-безопасность... Я просто поражаюсь тому, как в языке всё продуманно, как буквально в паре строк можно уместить столько действий, в то время как в той же Джаве приходилось для этого строить 10-этажные конструкции кода, с проверками на null, создавать ад из коллбэков и т.д. Причём от такой плотности полезной информации код на Котлине не становится запутанным или сложным для восприятия.

Котлин компилируется в байт-код JVM, а потому в любом проекте, написанном на Java, в любой момент можно просто начинать писать на Котлине (!!!) Не нужно ничего конвертировать, переписывать (хотя конвертер Java->Kotlin в той же Android Studio есть, довольно качественный, но он всё равно переводит код не всегда красиво; приходится кое-что корректировать, порой проще переписать всё вручную). А так, ты просто внутри Java-проекта пилишь новый файл с расширением .kt и пишешь на Котлине; всё это собирается в самый обычный jvm байт-код и с точки зрения Java-машины нет никакой разницы.

Касательно отсутствия виртуальной машины - при помощи LLVM Котлин действительно можно компилировать в нативное приложение (работающее без JVM). Но там есть некоторые особенности. В целом, задумка интересная. Но я всё же сторонник для конкретных случаев использовать свои инструменты. А том же Android'е, если мне надо что-то посчитать, очень много и очень быстро, я заюзаю Си (просто Си, без плюсов, без ООП и т.д.). Затем, с помощью JNI, напишу обёртку на Java/Kotlin.

Помимо Android, язык можно использовать при создании веб-приложений и веб-сервисов; есть проект Ktor (кому интересно, загуглите). Разработчики Spring, на сколько я знаю, уже тоже поддерживают новый язык.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...