DevAthlon #3 - Thema für Runde 1

Status
Für weitere Antworten geschlossen.
Ich führe hier mal ein kleines Beispiel auf: https://github.com/DevsWithoutHobbi.../DevsWithoutHobbies/Runde1/Spell.java#L46-L53

Dieses Team ist weiter gekommen, das Plugin besitzt 5 Klassen (im Vergleich zu unserem, das 48 oder so hat). Sie nutzen KEIN Maven/Gradle o.ä, der Code ist schlecht (Beispiel gefällig? okay: Der Markierte bereich in der Klasse, die Funktion getID - wieso hat jeder Spell extra nochmal eine ID? Wieso nicht einfach das ENUM value nehmen? Wäre deutlich performanter und einfacher Beispiel: https://github.com/AlexDigital/DevA...sproject/magicwar/game/GamePhase.java#L33-L35)

Eure Countdowns sind schön umgesetzt! Gefällt mir :)
 
  • Like
Reaktionen: ilouHD und Koloso
Dies Stammt nun von @CreepPlays
Beispiel: TeamUnkreativ
Da fallen mir schon auf dem ersten Blick kritische Fehler auf (die mir auf den ersten Blick aufgefallen sind):
- Nicht eindeutige Klassennamen (Move z.B., da weiß man nicht, ob es ein Listener ist oder nicht, da verliert man bei vielen Klassen den Überblick)
- Deutsche Klassennamen (man wurde den Konventionen nicht gerecht): AmbossE, Enderauge, ...
- Die Formatierung geht gar nicht: https://github.com/Lordizzel/DevAthlon2/blob/master/Magic/src/de/unkreativ/magic/Enderauge.java
- Sie machen sinnlose Konstruktoren bei den Listenern, die leer sind.
- Ich verstehe nicht, wie manche Listener überhaupt gehen sollten, wenn sie nicht einmal registriert werden (AmbossA, der Konstruktor ist leer und in der Main wird nur der Konstruktor aufgerufen)
- In der Main-Klasse ist "Partikel" groß geschrieben und auf deutsch und ist sogar noch static, was man ja weitestgehend vermeiden und wenn dann Singletons nutzen sollte
- Unnötiger Else-Block in Enderauge.java
- Wieso implementieren sie zusätzlich Listener in Commands, wenn es eigentlich unnötig ist?

Ja, oder sowas:
Code:
import com.avaje.ebeaninternal.server.deploy.BeanDescriptor.EntityType;

Das ist einfach Schwachsinn! Sorry, ist aber so
 
Dies Stammt nun von @CreepPlays
Beispiel: TeamUnkreativ
Da fallen mir schon auf dem ersten Blick kritische Fehler auf (die mir auf den ersten Blick aufgefallen sind):
- Nicht eindeutige Klassennamen (Move z.B., da weiß man nicht, ob es ein Listener ist oder nicht, da verliert man bei vielen Klassen den Überblick)
- Deutsche Klassennamen (man wurde den Konventionen nicht gerecht): AmbossE, Enderauge, ...
- Die Formatierung geht gar nicht: https://github.com/Lordizzel/DevAthlon2/blob/master/Magic/src/de/unkreativ/magic/Enderauge.java
- Sie machen sinnlose Konstruktoren bei den Listenern, die leer sind.
- Ich verstehe nicht, wie manche Listener überhaupt gehen sollten, wenn sie nicht einmal registriert werden (AmbossA, der Konstruktor ist leer und in der Main wird nur der Konstruktor aufgerufen)
- In der Main-Klasse ist "Partikel" groß geschrieben und auf deutsch und ist sogar noch static, was man ja weitestgehend vermeiden und wenn dann Singletons nutzen sollte
- Unnötiger Else-Block in Enderauge.java
- Wieso implementieren sie zusätzlich Listener in Commands, wenn es eigentlich unnötig ist?

Ja, oder sowas:
Code:
import com.avaje.ebeaninternal.server.deploy.BeanDescriptor.EntityType;

Das ist einfach Schwachsinn! Sorry, ist aber so
Mir ist es wirklich egal, ob wir weiter sind oder nicht, es geht ums Dabeisein. Aber mir kann keiner, wirklich keiner erzählen, dass die besser waren als wir.
 
Auf welchen Bewertungsgrundlagen wurde denn bewertet?

OOP, Konventionen, Thread Sicheheit, Design Pattern, Komplexität(KISS?)...
Oder auch das Spiel selber.. Individualität, Umsetzung etc.. welche Gewichtung gibt es?

Wer hat bewertet und wie? Hat @geNAZt auch mitbewertet, und was?

Es fehlt ein wenig Transparenz bei dieser Bewertung..
Haben wohl die meisten schon ihre Kritik zu geschrieben!

Ein wenig fehlt da @BlackyPaw .. Ich kann mich noch an den ersten Devathlon errinern.. Jeder hat damals eine 3 Seitige Bewertung bekommen aus welchem man sehr gut seine Stärken und Schwächen ablesen konnte.. sowas fehlt hier^

Mfg Marcel
~ #TeamTunity - leider ausgeschieden :c
 
  • Sauberkeit und Lesbarkeit des Codes [Oh..]
  • Umgang mit Tools [Ich denke mal z.B. mit Guava oder Maven, keine Ahnung]
  • Code-Style allgemein (Konsistenz, Modularisierung, OOP, Ressource-Safety, …) [Das geht nicht, wenn nur 5 Klassen vorhanden sind ...]
  • Kontinuität des Spielerlebnisses
  • Gesamteindruck (Passen Spielelemente zueinander, …)
  • Detailverliebtheit [JavaDocs oder Kleinigkeiten halt]
Da finde ich, dass viele bei der Sauberkeit und Lesbarkeit gehapert haben oder richtig OOP und modular zu arbeiten.
Zum Beispiel Devinitia habe ich mir mal angesehen und zwischen deren Code und z.B. den Codes von oben sind Welten.
 
Man hätte die Jury prüfen sollen, ob sie so etwas überhaupt bewerten kann, sodass so etwas nicht passieren würde.
Wenn man schon deutsche Klassennamen sieht, dann wäre das bei mir schon ein Minuspunkt.

Das Ergebnis entspricht einfach zum Großteil nicht der Wahrheit, wenn man sich das mal genauer ansieht, welche Projekte die Teams gemacht haben.
 
Man hätte die Jury prüfen sollen, ob sie so etwas überhaupt bewerten kann, sodass so etwas nicht passieren würde.
Wenn man schon deutsche Klassennamen sieht, dann wäre das bei mir schon ein Minuspunkt.

Das Ergebnis entspricht einfach zum Großteil nicht der Wahrheit, wenn man sich das mal genauer ansieht, welche Projekte die Teams gemacht haben.

Genau meine Meinung!
 
Aber sie sind nun mal eine Jury für einen Developer-Contest, das kann man nicht direkt mit einem Schiedsrichter vergleichen.
Die Schiedsrichter hatten ja auch eine Ausbildung und mussten Tests bestehen, damit kein Leichtsinn geschieht.
 
trotzdem finde ich es nicht wirklich gut sie jetzt für alles zu blamen, vielleicht ein paar falsche entscheidungen aber sie sind nicht die schlechtesten der schlechten und die teufel in person
 
  • Like
Reaktionen: ElektrizzeHD
Status
Für weitere Antworten geschlossen.

Soziale Medien

  • X
  • TikTok

Über uns

  • GommeHD.net ist einer der größten Minecraft-Server der Welt. Dir gefällt unser Server? Dann unterstütze uns durch einen Kauf im Shop!
  • Shop