Dein letzter Login ist schon eine Weile her.

Bitte überprüfe, ob alle Angaben in Deinem Profil noch aktuell sind.


30.08.2018
von Jan-Dirk
in Partnerunternehmen aus der IT-Branche

Platz 2 geht an Dominic

Herzlichen Glückwunsch zum Gewinn bei der Code Competition "Game of Life"

Lesezeit: ca. 3 Min.

Bewerten

Themen auf dieser Seite:

IT-Talents: Hallo Dominic, herzlichen Glückwunsch zu Deinem zweiten Platz bei der Code Competition „Der Auslieferungsfahrer“! Erzähl den anderen IT-Talenten doch kurz etwas über Dich.

Dominic:
Ich bin 26 Jahre alt und bin im Moment mit meiner Masterarbeit in Informatik an der technischen Universität in Dortmund beschäftigt. Während meines Studiums habe ich an der selben Universität zunächst als studentische Hilfskraft und später dann als wissenschaftliche Hilfskraft gearbeitet. Ich programmiere in meiner Freizeit gerne als Hobby.

IT-Talents: Was hat Dich motiviert, an der Competition teilzunehmen und wie bist Du auf den Wettbewerb aufmerksam geworden?

Dominic:
Ich bin über eine Email, welche über unseren Fakultätsinternen Verteiler gegangen ist, auf den Wettbewerb aufmerksam geworden. Die Aufgabenstellung hat sich nach einer interessanten Möglichkeit angehört sich ein wenig vom Studienalltag ablenken zu lassen.

IT-Talents: Wie bist Du an die Lösung der Aufgabenstellung herangegangen?

Dominic:
Meiner Meinung nach ist die Aufgabenstellung perfekt für eine Lösung mit Hilfe des Model-View-Control patterns geeignet. Ich habe zunächst die Model-Ebene, also das Spielfeld und die Zellen, programmiert. Diese waren meiner Meinung nach überschaubar einfach genug um nicht separat getestet werden zu müssen. Danach habe ich mir Gedanken über die Implementierung der Spiellogik und das permanente Abspeichern von Zuständen gemacht. Mit meiner Lösung bin ich einigermaßen zufrieden gewesen, obwohl ich denke, dass mit etwas mehr Aufwand eine dynamischere Modellierung möglich gewesen wäre. Für die Spielzustände habe ich mich für Bilddateien entschieden, da sie angenehm zu verwenden sind ohne weitere Software zu benötigen. Sobald die Controller fertig programmiert waren habe ich ein paar Tests durchgeführt, um sicherzustellen, dass ich nichts übersehen habe. Im Anschluss habe ich eine simple View mit Swing erstellt.

IT-Talents: Du hast Dich für eine Lösung der Aufgabenstellung in Java entschieden, wieso?

Dominic:
Es gab keinen wirklich überzeugenden Grund weshalb ich Java verwendet habe. Ich kenne mich gut mit Java aus und hatte die Laufzeitumgebung und eine passende IDE bereits auf meinem Laptop installiert. Swing/AWT haben zwar ihre Probleme bei größeren Projekten, sind aber für eine simple View, wie sie in diesem Projekt benötigt wurde, völlig ausreichend. Eine Lösung mit C# oder einer anderen Programmiersprache wäre wahrscheinlich ähnlich ausgefallen.

IT-Talents: Welche Probleme sind bei der Entwicklung der Software aufgekommen? Wie lange hat die Entwicklung gedauert?

Dominic:
Der Großteil der Entwicklung war innerhalb von wenigen Stunden erledigt. Eine Lauffähige Version des Programms war ca. 3 Stunden nach Beginn der Arbeit vorhanden. Diese Version hatte natürlich weniger Funktionalität als die finale Abgabe, erlaubte es mir allerdings zu erkennen was noch fehlte. Das größte Problem war es mich zu entscheiden wie ich die Spiellogik implementieren wollte. Ich habe mich am Ende entschieden Factory-Objekte mit sehr deskriptiven Namen zu verwenden. Mein Ziel war es, dass die Spielregeln im Quellcode wie Prosa erscheinen, um es möglichst einfach zu machen sie auf neue Bedürfnisse anzupassen. Eine Alternative über die ich nachgedacht hatte war es, eine DSL für die Spielregeln zu definieren und einen Compiler mit Hilfe von Xtext in die Abgabe zu integrieren. Dies hätte es auch erlaubt in der View eine Möglichkeit zu geben die Spielregeln dynamisch neu zu kompilieren. Am Ende habe ich jedoch entschieden, dass dies zu viel Arbeit gewesen wäre und das Projekt nur unnötig aufgebläht hätte.

IT-Talents: Und was hast Du durch die Entwicklung gelernt?

Dominic:
Die Implementierung der Factory-Objekte für die Spielregeln war etwas, was ich in dieser Form noch nie implementiert hatte. Es war interessant über die Konkatenation der boolschen Operatoren nachzudenken. Ich bin überzeugt, dass eine elegantere Lösung möglich sein würde, falls ich etwas mehr Zeit in die Konzeption investieren würde. Vielleicht habe ich eines Tages die Gelegenheit nocheinmal an einer ähnlichen Aufgabe zu arbeiten und auf diese Implementierung zurückzugreifen um sie zu überarbeiten.

IT-Talents: Was würdest Du Dir thematisch gerne einmal als Code Competition wünschen?

Dominic:
Ich persönlich fand das Thema dieser Code Competition bereits sehr gut gewählt. Es hat eine saubere Implementierung und viel Raum für persönliche Erweiterungen zugelassen. Generell würde ich eine Ausrichtung der Aufgaben auf zukünftige Erweiterbarkeit / Wartbarkeit gut finden. Diese Herausforderungen sorgen immer dafür, dass man als Entwickler mehr Zeit für die Konzeption investieren muss bevor mit der Implementierung begonnen werden kann.

IT-Talents: Zu guter Letzt: Wie findest Du die IT-Talents.de Plattform, welche Verbesserungsmöglichkeiten siehst Du?

Dominic:
Ich bin mit den Funktionen der Plattform soweit zufrieden. Ich denke, dass sie ihren Zweck erfüllt für das, wofür sie konzipiert wurde.

IT-Talents: Vielen Dank für Deine Teilnahme, das Interview und viel Spaß mit Deinem Gewinn ;)

Kennst Du schon?

Erfahre mehr über unseren Partner Acando GmbH

IT-Talents ist ein Netzwerk nur für IT'ler. Auf unserer Plattform kannst Du Dich als registriertes Mitglied mit wenigen Klicks auf die Jobs unserer Partnerunternehmen oder auf IT-Projekte für Studierende bewerben. Darüberhinaus führen wir Wettbewerbe durch und vergeben IT-Stipendien.

Jetzt Mitglied werden.

Schnell-Login für unsere Mitglieder

Tipp: Halte Dein Profil aktuell.

Lass' uns wissen, falls sich etwas Neues bei Dir ergibt.

Tipp: Vervollständige Dein Profil für noch bessere Karrierechancen.

Bist Du Schüler, Student oder bereits berufstätig? Teile uns Deinen aktuellen Status mit, damit wir Dir sinnvolle Aufgaben anbieten können.

Jetzt Status angeben

Wann stehst Du der IT-Branche zur Verfügung?

Bitte Monat und Jahr angeben.

{{ perspectiveForm.availableFrom.$error.dynamic }}

Neuer Versuch

Wo möchtest Du durchstarten?

{{ location.geolocation.name }}×
Bitte mindestens ein Ort angeben.

Als {{currentUser.status.title}} bist Du bereit für:


Lade Beschäftigungsarten

Bitte wähle den Zeitpunkt, Ort und min. eine Beschäftigungsart aus.

You have voted!
Schliessen
Vote for:
stars
Vote
You have not rated!