Produktiver Entwickeln
Diese Prinzipien oder Tipps haben mir schon sehr viel Zeit erspart bzw. die Nichteinhaltung hat mir schon sehr viel Zeit gekostet
!
1. Code Complete lesen
Das Buch ist echt der absolute Hammer. Für mich als 6. Semester Informatik-Student steht hier so viel dass mir eine Menge Zeit ersparen wird und meinen Code übersichtlicher und simpler halten wird.
Wenn du ein besserer Programmierer werden willst und mehr Spass am programmieren haben willst dann lies das Buch!
Allein durch das lesen dieses Buchs wirst du dich von 90% aller Programmierer abheben!
2. Das wichtigste zuerst
Du hast bestimmt eine Liste mit 100 Features die du in dein Spiel einbauen willst aber wenn du diese alle realisieren und testen willst dann dauert das leider viele Jahre. Konzentriere dich auf das wichtigste bei deinem Spiel und versuch erstmal das gut hinzukriegen. Einmal habe ich wochenlang ein schönes Menü für mein Spiel programmiert mit schönen MausOver-Effekten und Hintergrundgrafiken. Doch dann stellte ich irgendwann fest dass das Spiel an sich überhaupt keinen Spass macht! Dazu gleich was in Punkt 3.
3. Verwende Prototypen
Prototypen sind frühe, sehr rohe Versionen eines Spiels welche nur die wichtigsten Funktionen bieten. So kann man als Entwickler prüfen ob das Spielkonzept überhaupt Spass macht und weiter verfolgt werden soll. Man kümmert sich also nur um die primären Spielkomponenten und verwendet ansonsten rein funktionale Platzhalter. z.B. anstatt eines Hauptmenüs nur ein kleiner Text ohne Grafik. Oder man verwendet anstatt gegnerischen Soldaten nur rote Kreise. Der Prototyp wird dann früh getest und man spart sich so eine Menge Zeit. (Falls das Spielprinzip nichts taugt stellt man das einige Wochen oder Monate früher fest!)
4. Langsamer Programmieren
Damit ist nicht langsam Tippen gemeint sondern dass man sich das was man schreibt sehr genau ansieht und lieber dreimal durchliest. Dies hat den Zweck dass man so Bugs vermeidet. Glaub mir, du verbringst lieber eine Minute mehr damit, deinen Code nach Fehlern zu checken als 5 Stunden nach einem Fehler zu suchen bei dem du dann z.b. ein +1 vergessen hast! Ich hatte immer die Gewohnheit den Code schnell zu schreiben und danach sofort das Programm zu starten um zu sehen ob alles funktioniert. Nachdem ich nach 5 Stunden Bug-Suche aber mal einen blöden Aufmerksamkeitsfehler gefunden habe checke ich jetzt immer vierfach was ich da schreibe!
Ausserdem gilt das allgemeine Gesetz dass Code öfters gelesen als geschrieben wird.
Das Schreiben von Code an sich ist also nicht der Zeitfresser sondern eher Code welcher unübersichtlich ist!
5. Grösserer Bildschirm oder Zwei Bildschirme
Falls du nur einen Schirm benutzt, der nicht so gross ist: Stell mal einen zweiten dazu.
Du wirst ihn behalten. ![]()
Man spart sich einfach unglaublich viel Zeit durch das ganze Fenster hin- und herschieben.
6.Todo-Liste
Wenn du an einem etwas grösserem Spiel programmierst hast du irgendwann nen Zettel vor dir liegen mit 50 Dingen die du als nächstes einbauen willst.
Was ist das wichtigste davon?
Ich benutze ein kleines Programm namens ToDoList. Hier kann man seine Aufgaben farblich nach Prioritäten, Kategorien etc. ordnen.
7. Vordenken
Ein netter Trick den ich aus dem Buch Code Complete habe:
Wenn du eine Methode schreibst dann schreib als erstes in einem Kommentar was diese Methode überhaupt tun soll. Anschliessend schreib den Code um den Kommentar.
So ist der Code anschliessend bereits kommentiert und man vergisst nichts.
Ausserdem kann man so mit 3 Zeilen Text bereits problemhafte Stellen finden anstatt schon die vierte for-Schleife geschrieben zu haben!
8. Fehler haben höchste Priorität
Wenn man einen Fehler entdeckt sollte dieser höchste Priorität haben.
Allgemeingültiges Gesetz: In der Nähe eines Fehlers finden sich noch andere.
Wenn man aber einfach den Fehler ignoriert könnte das sehr zeitaufwendig werden falls dieser doch grösser war als erwartet.
Also: Alle Fehler sofort ausmerzen und erst dann an Features weiter programmieren!
9. Flow
Spiele programmieren sollte man am besten in langen Zeitabständen und ohne Unterbrechungen. Dies liegt daran dass man oft erstmal 10-15 Minuten braucht bis man sich in den Code eingelesen hat. Deshalb sind Unterbrechungen besonders zeitraubend! Wenn man dann erstmal richtig dabei ist kommt man in einen sogennanten “Flow” Zustand in dem man sehr produktiv ist! Das bedeutet dass man dann gar nicht mehr merkt wie die Zeit vergeht und man einfach richtig dabei ist.
10. Ein Backup-System haben
Selbsterklärend. Version Control und Backups sind einfach nötig!
Hier ein interessanter Artikel darüber wie pingelig Microsoft das handhabt.
11. Nutze bestehende Ressourcen
Es gibt da draussen so viel bereits bestehende Tools und Bibliotheken dass man wirklich sehr schnell einsteigen kann heutzutage. Es ist nicht nötig alles selbst zu programmieren.
Zum Beispiel benutze ich den Tiled Mapeditor anstatt mir einen selbst zu schreiben.
Das erspart mir schonmal 3-6 Monate!
12. Benutze Schere und Papier für Game-Design Prototypen
Ein guter Weg um ein Spieldesign zu testen ist das ganze Spiel einfach mit Schere und Papier zu testen! Hierfür braucht man vielleicht ein paar Stunden im Gegensatz zu einem Prototypen der einige Wochen benötigen würde!