Sobes.tech
Middle

Περιγραφή: Αναπτύσσουμε μια διαδικτυακή εφαρμογή που αποτελείται από μια ιστοσελίδα στην οποία μπορούν να σχεδιάζονται πολύγωνα. Επιπλέον, μπορεί να τροποποιηθεί ένα προηγουμένως αποθηκευμένο σχήμα. Δεν υπάρχουν περιορισμοί στο χρώμα. Δεν υπάρχουν περιορισμοί στον αριθμό των πολύγωνων. Δεν υπάρχουν περιορισμοί στη διάταξη των σχημάτων (μπορούν να επικαλύπτονται στην σελίδα). Εργασία: 1. Περιγράψτε τα δεδομένα που αποθηκεύονται στη βάση δεδομένων. 2. Προτείνετε μεθόδους REST API για την αλληλεπίδραση μεταξύ frontend και backend.

sobes.tech AI

Απάντηση από AI

  1. Σχήμα δεδομένων στη βάση δεδομένων:
  • Πίνακας πολύγωνα:

    • id (UUID ή SERIAL) — μοναδικός αναγνωριστικός αριθμός του πολύγωνου
    • name (string) — προαιρετικό όνομα
    • color (string) — χρώμα του σχήματος (π.χ., HEX ή RGB)
  • Πίνακας σημεία:

    • id — μοναδικός αναγνωριστικός αριθμός του σημείου
    • polygon_id — ξένος κλειδί στο πολύγωνα.id
    • order — σειρά του σημείου στο πολύγωνο
    • x, y — συντεταγμένες του σημείου

Έτσι, μπορεί να αποθηκευτεί οποιοσδήποτε αριθμός πολύγωνων με οποιονδήποτε αριθμό κορυφών και χρωμάτων.


  1. REST API:
  • GET /polygons — λήψη λίστας όλων των πολύγωνων με τα σημεία και τα χρώματά τους
  • GET /polygons/{id} — λήψη συγκεκριμένου πολύγωνου
  • POST /polygons — δημιουργία νέου πολύγωνου
    • Σώμα αιτήματος: { "name": "", "color": "#ff0000", "points": [{"x":0, "y":0}, ...] }
  • PUT /polygons/{id} — ενημέρωση πολύγωνου (χρώμα, σημεία, όνομα)
  • DELETE /polygons/{id} — διαγραφή πολύγωνου

Αυτή η σειρά μεθόδων επιτρέπει τη δημιουργία, ανάγνωση, τροποποίηση και διαγραφή πολύγωνων, καθώς και την λήψη της λίστας τους για εμφάνιση στο frontend.