Le java, quand on a un bon environnement de développement, est un vrai plaisir ! Il faut simplement accepter de se détacher du hard, ce qui pour moi, est inconcevable pour un jeu ou une appli qui exige le max de la machine, ce qui sera vrai pour encore un bon bout de temps.
Cependant il est tout à fait possible de faire d'excellents jeux qui ne sont pas des démonstrations technologiques. La programmation objet apporte beaucoup de choses en rendant les objets "autonomes". Pour un jeu, ça peut être plus que pratique, car ça peut littéralement leur donner "vie". Bien sûr, on peut le simuler avec de la programmation structurée, mais en fait c'est recréer beaucoup des mécanismes qui existent déjà en POO.
La programmation structurée (désolé, je suis un vieux, le terme impératif, je ne connais pas

) a évidemment encore de beaux jours devant elle, elle ne nécessite pas trop d'abstraction, on n'a pas de mauvaises surprises puisqu'à la limite on peut contrôler chaque instruction. Par exemple en PB, on peut voir le code source assembleur généré et relativement facilement contrôler ce qui est passé au microprocesseur. Difficile de faire plus près du hardware ! En Java on pourrait contrôler le bytecode, mais contrôler le flux d'instructions de tous les objets me semble hardu !!! Quant à voir ce que fait la machine virtuelle et retrouver ses petits, ben... Faut s'accrocher

Pas étonnant que le java soit utilisé depuis le début dans les institutions financières (en plus de ce pour quoi il avait été conçu à la base, la virtualisation).