Und Java? Bloß nicht.
Klar kann man mit Java das selbe erreichen wie mit jeder Skriptsprache - nur mit dem Unterschied, dass es keinen Spaß macht und man sich die Finger wund schreiben muss.
Im Vergleich zu Ruby/JavaScript ist Java vom Design sehr viel strikter veranlagt. Typen werden sehr genau genommen und jede Erweiterung muss vom Design exakt berücksichtigt werden (über Interfaces oder abstrakte Klassen).
Shining hat in seinem Beispiel ja bereits erklärt, wie es das Erweitern von Klassen umständlich macht.
Ruby/JavaScript sind hier was Erweiterbarkeit angeht viel flexibler. Natürlich kann man damit viel Mist bauen und sich damit in Richtung "schlechtes Design" bewegen, muss man aber nicht zwangsläufig.
Letztendlich bin ich aber davon überzeugt das gerade bei der Spielentwicklung viele der strikten Design-Praktiken aus der allgemeinen Softwareentwicklung einfach nicht angebracht sind.
Spiele brauchen a) nicht die Wiederverwendbarkeit von generischen Software-Libraries/Modulen und sind b) von ihrer Nutzungs/Lebensdauer derart beschränkt, dass ein besondere Augenmerk auf Erweiterbarkeit und sauberer Struktur ein verschwendeter Zeitaufwand ist. Insbesondere Spiel-spezifischen Inhalte
darf man ruhig hacken. (wird z.B. auch von Naughty Dog so gemacht:
http://www.dualshockers.com/2014/03/...our-long-talk/ )
...Im Endeffekt ist es natürlich alles persönliche Präferenz. Ich hatte meine paar Jahre mit Java und vermiss die Zeit jedenfalls nicht. :P