Ich habe für ein Job-Angebot die bisher umfangreichste Coding Challenge ever bekommen, eine ganze Backend-App mit Sicherheit, REST-API Design, Zugriff auf externe API, etc. Das Projekt ist in Kotlin geschrieben und verwendet Spring Boot. Ist noch nicht super hübsch und ein paar Mvc Tests fehlen auch noch. Mein Spring-Foo - insbesondere bezüglich Sicherheit - ist dank Ktor ziemlich eingerostet, das merkt man.
Falls sich jemand (außer CB) meiner erbarmt, wäre ich für jedes Feedback wahnsinnig dankbar:
->Hier stand mal ein Link<-
Muss den Code bis Donnerstag einreichen, dann lösche ich auch den Thread hier.
gerade nur mal schnell durch geklickt
Was mir fehlen würde Wäre logging
Außerdem Transaktionen, beim Anlegen eines neuen Rezepts hast du ja mehrere Dinge die gespeichert werden. Auf den ersten Blick kann es so dazu kommen dass du ein Rezept drin hast aber weil das Speichern einiger Zutaten fehl schlägt ist es unvollständig in der DB.
Auf den ersten Blick sehe ich nur eine Security Geschichte, unterscheide nicht zwischen „User nicht gefunden“ und „Falsches PW“ weil dann weiß man welche existieren und man könnte dann die PW durchprobieren
Gerade weil du die Data von den Entities trennst, solltest du das auch ausnutzen.
In deinem Fall sammelst du die Fehler in eine Liste. Wieso nicht in einer Liste zurück geben? Der zukünftige Client könnte die Fehler besser zu bestehenden Feldern Mappen.
Da es sich um eine reine API handelt, sollte man prüfen, wie die Antworten serialisiert sind.
Danke an euch beide, ich habe die meisten Vorschläge umgesetzt. Ich habe das Projekt jetzt abgeliefert. Ist sicher nicht perfekt, aber für die kurze Zeit ziemlich gut, und ohne Code, den ich als hässlich ansehen würde.