In quale linguaggio di programmazione è stato sviluppato Minecraft?
Hai ottenuto un sacco di risposte (corrette) che il Minecraft originale è stato scritto in Java, usando una libreria progettata per aiutare con il rendering 3D.
Java ha alcuni problemi - è difficile fare certi tipi di ottimizzazioni, il che significa che il gioco ha sempre avuto difficoltà a funzionare bene sulle vecchie macchine. Quando è stata scritta la "Pocket Edition" di Minecraft, hanno ricominciato da capo e riscritto l'intero gioco in C++. Questa edizione è molto più efficiente e stressa meno l'hardware, il che rende possibile l'esecuzione su dispositivi a bassa potenza. Sfortunatamente, poiché hanno dovuto rifare tutto da zero, di solito era indietro rispetto all'edizione normale per quanto riguarda le caratteristiche.
La "Windows Edition" di Minecraft era uno sforzo concertato per raggiungere la versione C++ con la versione Java, che ora è generalmente riuscita. È ancora una base di codice separata, però, e non sono completamente compatibili tra loro (questo si riflette nella situazione del multiplayer - le edizioni Java e C++ supportano entrambe il multiplayer, ma solo con giocatori che usano la stessa edizione). Ecco un esempio della differenza di velocità di rendering su un computer lento:
Quindi una risposta più completa alla domanda è che Minecraft è stato originariamente scritto in Java, ma ora è un progetto duale Java/C++ a causa delle migliori prestazioni.
C'è un grande svantaggio nel Minecraft C++: poiché C++ è un linguaggio completamente compilato, è più difficile fare mods per esso. I programmi Java sono relativamente facili da reingegnerizzare, quindi le mod possono essere molto sofisticate, ma in pratica, il C++ è modificabile solo nelle aree in cui i programmatori lo hanno progettato per essere modificabile. Microsoft ha buone intenzioni, e permette già certi tipi di mod, ma l'edizione C++ è significativamente meno flessibile. È un peccato. Speriamo che con il tempo aggiungano più flessibilità per permettere all'edizione C++ di essere modificata negli stessi modi interessanti, ma per ora, la più ricca libreria di mod e caratteristiche si trova solo nell'edizione Java.
Articoli simili
- In quale linguaggio di programmazione è codificato Netflix? Come si usa questo linguaggio?
- Qual è la differenza tra linguaggio macchina, linguaggio assembly e linguaggio di alto livello nei computer?
- Il linguaggio assembly è considerato un linguaggio di programmazione funzionale?
- Quale linguaggio di programmazione è stato usato per creare WhatsApp?