Какой язык программирования стоит изучать?

sqwertyx

Пользователь
Сообщения
394
Решения
14
На каких языках можно писать плагины? Стоит ли учить джаву или что-то другое? Нужен ли javascript для разработки плагинов и в целом для разработки в сфере майнкрафта.
 
sqwertyx, Не вижу большой разницы в этих языках . Котлин использует тот же JVM
Но принято что Java это стандарт
 
Я слышал от какого-то блогера что котлин быстрее джавы, может тогда лучше его использовать?
 
Ты не понял...
Разницы в языках Java и Kotlin как таковой нет..
Но плагины разрабатывать надо на Java....
Объединено

Если ты знаешь Kotlin, тебе буквально надо неделю что-бы освоить джаву
 
Блять, что у вас за восприятие
ЕСЛИ ТЫ ЗНАЕШЬ КОТЛИН ТЕБЕ НЕ НАДО C 0 УЧИТЬ ДЖАВУ
ТЫ НЕ МОЖЕШЬ ПИСАТЬ ПЛАГИНЫ НА КОТЛИН- АПРИОРИ
ТЫ ПИШЕШЬ ПЛАГИНЫ НА JAVA ПОТОМУ ЧТО MINECRAFT JAVA EDITION
 
*****, что у вас за восприятие
ЕСЛИ ТЫ ЗНАЕШЬ КОТЛИН ТЕБЕ НЕ НАДО C 0 УЧИТЬ ДЖАВУ
ТЫ НЕ МОЖЕШЬ ПИСАТЬ ПЛАГИНЫ НА КОТЛИН- АПРИОРИ
ТЫ ПИШЕШЬ ПЛАГИНЫ НА JAVA ПОТОМУ ЧТО MINECRAFT JAVA EDITION
ТЫ МОЖЕШЬ ПИСАТЬ ПЛАГИНЫ НА КОТЛИНЕ ЧЕРЕЗ ЛИБЫ
 
Писать можно и на Kotlin, и на Java. Но учить изначально лучше Java - потом при желании перейти на Kotlin проблем вообще не будет. Насчет его быстроты...возможно, хотя зависит от твоего кода и твоей JVM на Java.
 
Писать можно и на Kotlin, и на Java. Но учить изначально лучше Java - потом при желании перейти на Kotlin проблем вообще не будет. Насчет его быстроты...возможно, хотя зависит от твоего кода и твоей JVM на Java.
у котлина плюсы видны только до компиляции, например, что не нужно писать
Код:
Player p = resident.getPlayer();
if(p == null) return;
p.sendMessage(message);
Реализация на котлин:
resident.player?.sendMessage(message)

Ещё из плюсов можно выделить корутины. На котлине куда легче сделать цепочку выполнения кода, где сначала будет асинк метод, потом синхронный, потом снова асинк. Пока я не работал с этим, могу только дать пример от ChatGPT:

Код:
import kotlinx.coroutines.*

suspend fun asyncTask(): String {
    delay(1000L)
    return "Async task completed"
}

fun syncTask(): String {
    Thread.sleep(1000L)
    return "Sync task completed"
}

suspend fun main() {
    println("Starting async task...")
    val deferred = async { asyncTask() }
    val resultAsync = deferred.await()
    println(resultAsync)

    println("Starting sync task...")
    val resultSync = syncTask()
    println(resultSync)

    println("Starting async task again...")
    val deferred2 = async { asyncTask() }
    val resultAsync2 = deferred2.await()
    println(resultAsync2)
}
Объединено

ТЫ ПИШЕШЬ ПЛАГИНЫ НА JAVA ПОТОМУ ЧТО MINECRAFT JAVA EDITION
Есть ядро Cuberite, там вообще на C++
 
Последнее редактирование:
у котлина плюсы видны только до компиляции, например что не нужно писать
Код:
Player p = resident.getPlayer();
if(p == null) return;
p.sendMessage(message);
Реализация на котлин:
resident.player?.sendMessage(message)
Ну мне вот лично первое больше нравится) Да, это сокращение кода визуально, но легче читается первое как-то.

Про остальные фишки котлина в целом знаю, но на Java есть соответствующие либы.
 
Ну мне вот лично первое больше нравится) Да, это сокращение кода визуально, но легче читается первое как-то.
Java:
Resident resident = TownyAPI.getInstance().getResident(name);
if(resident == null) return;
Player p = resident.getPlayer();
if(p == null) return;
Location bed = p.getBedSpawnLocation();
if(bed == null) return;
admin.sendMessage(bed.getBlockX() + " " + bed.getBlockY() + " " + bed.getBlockZ());

Код:
val bed = TownyAPI.getInstance().getResident(name)?.player?.bedSpawnLocation?
admin.sendMessage("${bed.blockX} ${bed.blockY} ${bed.blockZ}")
По читабельности лучше второе, особенно если монитор по высоте небольшой (Ноутбук, например). Первое почти пол экрана занимает
 
Последнее редактирование:
Назад
Сверху Снизу