Dungeon-CampusMinden / Dungeon

The "Dungeon" is a tool to gamify classroom content and integrate it into a 2D Rogue-Like role-playing game.
MIT License
17 stars 37 forks source link

[Game] Modern Java: mehr funktional wagen #208

Closed AMatutat closed 1 year ago

AMatutat commented 1 year ago

Das Dungeon setzt zwar auf ein ECS, nutzt aber noch die Java typischen OO Strukturen. Eine Untersuchung, ob, wo und wie das Dungeon (vollständig oder teilweise) in Richtung des funktionalen Programmierparadigmas geschoben werden kann, könnte sich als Sinnvoll erweisen.

Edit: Es geht nicht um funktionale Programmierung an sich, sondern um den Einsatz von "modernem Java". Dazu gehören tatsächlich Anleihen aus der FP, aber es bleibt immer noch objektorientierte Programmierung. Ein interessantes Konzept dabei ist der Einsatz von immutable Strukturen, etwa Record-Klassen (und der Verzicht auf die dann überflüssigen Getter/Setter). Gerade bei den kleinen Component-Klassen hat man gefühlt 10 Getter/Setter und eine Nutzmethode.

Siehe auch #179

cagix commented 1 year ago

@AMatutat Vielleicht haben wir aneinander vorbeigeredet. Mir geht es nicht darum, den Dungeon "funktional" zu programmieren. Mir geht es darum, modernes Java einzusetzen.