
Ich arbeite seit langer Zeit als Software-Designer und kann mit Zuversicht sagen, dass dies interessant ist. Es ist ein groĂźartiger Job, und ich wĂĽrde ihn nicht gegen etwas anderes eintauschen. Es ist so aufregend, dass manche Leute die interessantesten Aspekte unserer Arbeit vermitteln und sie in Spielen ausdrĂĽcken wollen.
Ich habe zwei dieser Spiele gespielt. Der erste ist Shenzhen.io . Es ähnelt dem, was ein Embedded-Ingenieur tun würde. Ein Ingenieur löst Rätsel, indem er Baugruppencode für Geräte mit geringem Stromverbrauch schreibt. Das Tolle an diesem Spiel ist, dass die Entwickler die lästigen Aspekte der Codierung und Inbetriebnahme entfernt haben.
- Die Anforderungen sind klar und ĂĽberraschend gut fĂĽr die Aufgabe geeignet.
- , . , .
- , ( ) . , .
Sollte ein Software-Designer Shenzhen.io spielen? Das Gameplay dieses Spiels ist nicht jedermanns Sache. Für manche sieht es "zu sehr nach Arbeit aus". Schließlich möchten Sie beim Spielen entspannen und nicht an Aufgaben arbeiten, die Sie bereits acht Stunden am Tag erledigen. Unabhängig davon denke ich, dass es sich lohnt, herumzuspielen, um zu sehen, wie aufregend die Aufgabe wird, wenn die Anforderungen klar sind und die Entwicklungstools schnell sind. Jeder weiß, dass sich Investitionen in Entwicklung und Tools auszahlen, aber der Spaß am Spiel verstärkt dieses Gefühl.
Das zweite Spiel ist FactorioDas wurde am vergangenen Freitag veröffentlicht, obwohl es seit fast vier Jahren in Early Access spielbar ist. Diejenigen, die es gespielt haben, sind jetzt wahrscheinlich ratlos - schließlich geht es in diesem Spiel um den Bau einer Fabrik, nicht um das Codieren. Der Spieler arbeitet mit Förderbändern, Metall- und Ölprodukten und schafft die Ressourcen, die für die Herstellung eines Raumschiffs erforderlich sind.
Und doch erinnert mich dieses Spiel mehr an Software-Design als jedes andere Spiel. Lassen Sie mich erklären, warum.
- . « » ? — . , . ( !) , , . , / .
- « » (Don’t Repeat Yourself, DRY). — . , , , ? — « ». , , . — , - , , . Factorio — ( ) 4-5 . .
- . , , , 3-5 . , . , . — , - . , .
- . . , , , , . , , . !
- . , - . — , . — , , . , .
- . . , . , . , , (), , . , , , - . — . API , .
- . , . - . , - . , . , 100 . — , , , . — , , . , , . — .
- . , . - , . , . , , . , , . AWS CloudFormation — , . , , — , . , , , .
- . , — . , . .
Vor allem aber geht es hier um den Umgang mit Komplexität. So entwerfen Sie eine Spezifikation und implementieren Systeme, die dieser Spezifikation entsprechen. Über die Unterstützung und schrittweise Erweiterung dieses Systems.
Es scheint mir, dass das Spielen von Factorio Sie nicht zu einem geschickteren Software-Designer macht. Aber wenn Sie Software entwerfen, scheint Ihnen das Spiel SpaĂź zu machen. Umgekehrt, wenn Sie gut im Spiel sind, sollten Sie sich auf jeden Fall im Software-Design versuchen.
Sie können Factorio auf der offiziellen Website oder bei Steam kaufen . Wenn Sie das Spiel vor dem Kauf ausprobieren möchten, gibt es eine kostenlose Demo . (Nur ein Tipp - erwarten Sie keinen Verkauf. Dieses Spiel hatte noch nie einen Verkauf und wird es wahrscheinlich auch nicht.)
Vielen Dank an Mineš Patel für das Korrekturlesen des Entwurfs und Vorschläge zur Verbesserung des Artikels.
Kommentare können in den Hacker News und auf reddit gelesen werden .