@harryberlin: Wenn Du keine Behlerungen mehr hören möchtest dann gehe einfach mal auf die Hinweise ein in dem Du sie umsetzt. Nicht irgendwann, insbesondere nicht dann wenn alles fertig ist und wir es dann nicht mehr sehen müssen, sondern bevor Du Code zeigst.
Erfahrungsgemäss wird aus dem „später räume ich den Code mal auf“ nichts. Wenn man sich das nicht gleich von Anfang an dran gewöhnt, wird man weiter schlecht les- und wartbaren Code schreiben. Was es dann letztendlich auch Dir selbst schwer macht. Beim überlegen was ein guter Name für einen Wert ist merkt man selbst beispielsweise oft ob man etwas nicht verstanden hat. Denn wenn man Schwierigkeiten hat einen griffigen, treffenden Bezeichner für etwas zu finden, dann hat man sehr wahrscheinlich das was man benennen will nicht verstanden, oder man hat zu viel zu einem Objekt zusammengepresst und findet deshalb keinen prägnanten Namen für das ganze. Guter Stil hat nicht nur etwas mit hübsch und reiner Optik zu tun, sondern hat auch eine Funktion: Den Quelltext und Code möglichst lesbar und leicht verständlich zu halten. Für andere, aber auch für einen selbst. Denn man ist im eigenen Quelltext oft genug selbst der ”Fremde” wenn man den nach ein paar Monaten wieder anfassen und verändern muss und den Autor verflucht der man damals war.
Die Sternchen-Magie in der Funktionssignatur würde ich bleiben lassen. Das macht den Code komplexer und man verbaut sich auch gleich noch später weitere Positionsargumente hinzufügen zu können.
Die Klammern um `args` beim Aufruf von `Thread` haben keine Wirkung. Tupel werden bis auf die Ausnahme des leeren Tupels *nicht* durch Klammern erstellt, sondern durch Kommas. Ab und zu muss man Klammern setzen damit der Ausdruck eindeutig ist, aber grundsätzlich sind es die Kommas die Tupel erstellen.