Intereting Posts
Kotlin для Android. Тост Как решить: «Не удается найти getter для атрибута« android: text »при реализации двусторонней привязки данных к пользовательскому представлению? Realm не генерирует классы RealmProxy в проекте Java / Kotlin при использовании kapt Функции расширения Котлина по типу Строительство многомодульного проекта градиента в Travis CI Как я могу использовать runblocking при нажатии кнопки Как получить данные Google Fit Step с сервера? неразрешенная ссылка на класс, методы Android Kotlin Moshi Custom Json Adapter Не удалось выполнить синхронизацию проекта с градиентом. Основные функции не будут работать должным образом в Android-студии 3.0 Tornadofx – управление объектом таблицы tableview во время сборки Захват изображений и видео, таких как рассказы Snapchat / Instagram Я не могу получить карту из группы в rxkotlin ClassNotFoundException в пользовательском вкусе с использованием kotlin Почему я получаю: null не может быть применен к непустому типу android.widget.SearchView?

Kotlin для игры dev

Задний план:

Я всегда ищу язык для замены Java для разработки игр. Kotlin выглядит многообещающим с хорошей поддержкой IDE и взаимодействием Java. Но одним из убийц FPS для игры (особенно для Android) является использование GC. Таким образом, некоторые библиотеки (например, libgdx) используют пулы объектов, пользовательские коллекции и другие трюки, чтобы избежать частых запусков GC. Для Java это можно сделать ясным способом. Некоторые другие языки JVM поддерживаются с функциональной поддержкой с использованием большого количества GC по своей природе, поэтому этого трудно избежать.

Вопросов:

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

Solutions Collecting From Web of "Kotlin для игры dev"

Как правило, Kotlin генерирует байт-код как можно ближе к тому, который генерируется Java. Например, если вы используете функцию как значение, будет создан внутренний класс, как в Java, но не более того. Есть также некоторые оптимизационные трюки, такие как IntArray и inline чтобы работать еще лучше.

И, как сказал Питер-Лоури, всегда лучше измерить значения для вашего конкретного случая.

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

Если Java хорош для написания игр, то Kotlin будет только лучше благодаря производительности разработчиков.

Примечание. Игровая библиотека LWJGL 3 частично использует Kotlin, а статистика GitHub показывает, что 67,3% кода Kotlin (модуль шаблона выглядит в основном Kotlin). Поэтому просить людей, которые работают с LWJGL, даст вам лучший ответ на этот вопрос, поскольку у них есть большой опыт в этой области.

Статистика Github для LWJGL3