Teddy_Bear Posted May 18, 2017 Report Share Posted May 18, 2017 Язык программирования Kotlyn российской, ныне интернациональной, компанией JetBrains принят в качестве второго для Андроид. https://rb.ru/news/kotlin-win/ http://kotlinlang.org/ Трудности с языком Ява (9-й версии) https://jcp.org/en/jsr/results?id=5959 привели к некоторому застою в этой области. Компания Гугл приняла верное, на мой взгляд, решение. Ввести вторым и, видимо, далее перейти к новому языку программирования. Ява давно уже в качестве одного из ведущих языков. Это и плюс и минус. Плюс в большой аудитории программистов, разработанности библиотек, наличию большого количества кода. Минус в моральном устаревании. Первоначально язык был создан для условий медленно работающих каналов связи. Соответственно, вопросам производительности не придавалось должного значения. Сейчас тормоза вылезают неумолимо и носят принципиальный характер. Новый язык - шажок в направлении к устранению этих недостатков. Впрочем, по неподтвержденным сведениям, Гугл готовит более радикальный сюрприз - новую операционную систему. Но это другая новость. К тому же, ввиду неподтвержденности, я рискую нарваться на обвинение в распространении слухов. Quote Link to comment Share on other sites More sharing options...
Shadow TH Posted May 19, 2017 Report Share Posted May 19, 2017 Если бы я начинал что-то писать под андроид сейчас, то выбрал бы Xamarin и C#, поскольку после покупки Xamarin'а Майкрософтом они сделали его бесплатным для одиночных разработчиков. Quote Link to comment Share on other sites More sharing options...
Teddy_Bear Posted May 22, 2017 Author Report Share Posted May 22, 2017 (edited) Мне Котлин ближе по синтаксису как дельфисту. К тому же, Zamarin года три назад подглючивал при компиляции и отладке. А тут ещё мастдайная фирма усыновила - это не к добру. Edited May 22, 2017 by Teddy_Bear Quote Link to comment Share on other sites More sharing options...
Teddy_Bear Posted May 25, 2017 Author Report Share Posted May 25, 2017 Ура! В Котлине не будет виртуальной машины Явы. https://blog.jetbrains.com/kotlin/2017/04/kotlinnative-tech-preview-kotlin-without-a-vm/ Ну не уговаривайте меня, что интерпретатор - это здорово. Quote Link to comment Share on other sites More sharing options...
Shadow TH Posted December 9, 2020 Report Share Posted December 9, 2020 Решил поделиться своими впечатлениями о Котлине. Несколько месяцев назад начал разрабатывать очередное приложение под 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, на сколько я знаю, уже тоже поддерживают новый язык. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.