4580Fermer4582
BrunniLe 11/03/2021 à 00:27
Zerosquare (./4577) :
Zeph (./4576) :
Lire un fichier de 10mo en JSON sur une machine moderne prend une poignée de millisecondes
Ah ben si c'est le cas (je n'en savais rien, je n'utilise pas de JSON), effectivement le choix du format est une question sans importance, mais ça rend encore plus bizarre le fait qu'ils n'aient pas remarqué et corrigé le problème. Une opération normalement instantanée qui prend plusieurs minutes à s'exécuter, ça se voit tout de suite et c'est le signe qu'il y a un gros problème.
Le JSON est vraiment efficace à parser (tu t'en rends compte facilement si t'en écris un de parseur). Certaines libs sont mieux faites que d'autres (et ça dépend aussi de ton usage ensuite : tu désérialises vers quoi ? Une map ? Un objet natif ? Ou tu n'as pas d'intermédiaire ?), mais les bonnes libs c'est vraiment un bon compromis entre facilité pour toute l'équipe et performances. Je n'utiliserais peut être pas ça sur la Nintendo DS, mais pour quoi que ce soit de plus puissant faut pas s'embêter.

Ensuite les jeux comme GTA c'est écrit par des équipes immenses. Chacun fait de son mieux sur sa partie, en fonction des impératifs qui sont donnés. Sur certaines parties il n'y a pas d'impératif de performance, mais quelle que soit la partie le temps pour boucler n'est jamais suffisant. Ensuite ce qui laisse souvent plus à désirer c'est l'intégration des parties ensemble. Dans ce cas c'est quand même bizarre qu'ils n'aient pas fait un profiling pour comprendre ce qu'il se passe, ils ont dû juger que c'était normal vu la massivité du jeu, et ils n'avaient pas un passionné pour bosser en bout de chaîne et trouver les erreurs grossières (j'aimais bien prendre ce rôle, comparer les perfs avec d'autres jeux similaires et me dire "y a probablement un truc qui cloche là" et essayer de trouver, mais il faut vraiment être passionné et avoir un esprit "négatif", c'est à dire supposer qu'il y a un problème et donner tout ce que tu as pour le prouver, sinon tu n'y arriveras pas).