Το Go προσφέρει πολλούς τρόπους δημιουργίας UUID, οι οποίοι είναι ένας βολικός και ισχυρός τρόπος οργάνωσης των δεδομένων σας.
Τα Universally Unique Identifiers (UUID) είναι δημοφιλή για την αναγνώριση χρηστών σε εφαρμογές όπου είναι απαραίτητος ένας υψηλός βαθμός τυχαίας συμπεριφοράς. Τα UUID είναι μια καλή επιλογή για εφαρμογές που εξυπηρετούν εκατομμύρια χρήστες, καθώς μειώνουν την πιθανότητα συγκρούσεων και διαφέρουν παγκοσμίως σε όλα τα συστήματα.
Το Go δεν παρέχει κανένα πακέτο (α) για τη δημιουργία UUID. Δεδομένου ότι τα περισσότερα λειτουργικά συστήματα που σχετίζονται με το Unix περιλαμβάνουν το uuidgen πρόγραμμα, μπορείτε να χρησιμοποιήσετε το os πακέτο για τη δημιουργία τους. Μπορείτε επίσης να χρησιμοποιήσετε ένα εξωτερικό πακέτο Go όπως αυτό της Google uuid ή το gouid πακέτο.
Δημιουργία UUID με το πακέτο os
Η ΑΠΟΧΩΡΗΣΗ os Το πακέτο παρέχει λειτουργικότητα για αλληλεπίδραση με το λειτουργικό σύστημα της κεντρικής μηχανής με τρόπο που μοιάζει με Unix. Μπορείτε να εκτελέσετε εντολές με το εκτελεστ υποπακέτο του os συσκευάστε και ανακτήστε την έξοδο για εσάς Προγράμματα Go.
Εισαγάγετε αυτά τα ενσωματωμένα πακέτα στο αρχείο Go σας για να δημιουργήσετε UUID με το os πακέτο.
εισαγωγή (\n "fmt"\n "κούτσουρο"\n "os/exec"\n)\n
Θα χρησιμοποιήσετε το κούτσουρο πακέτο για την καταγραφή πιθανών σφαλμάτων και ο fmt πακέτο μορφοποίησης συμβολοσειρών για την έξοδο του παραγόμενου UUID.
Μπορείτε να εκτελέσετε εντολές με το Εντολή μέθοδος του εκτελεστ πακέτο. ο Παραγωγή μέθοδος επιστρέφει την έξοδο της εντολής.
funcosExec() {\n generateUUID, err := exec. Εντολή("uuidgen").Έξοδος()\n \n αν λάθος!= μηδέν {\n αρχείο καταγραφής. Μοιραία (σφάλμα)\n }\n \n fmt. Println (generateUUID)\n}\n
ο osExec η συνάρτηση δημιουργεί και εκτυπώνει ένα UUID χρησιμοποιώντας το uuidgen εντολή.
Δημιουργία UUID με το πακέτο UUID της Google
Η Google uuid Το πακέτο δημιουργεί και επιθεωρεί UUID με βάση RFC 4122 και τις Υπηρεσίες ελέγχου ταυτότητας και ασφάλειας DCE 1.1.
Εκτελέστε αυτήν την εντολή τερματικού στον κατάλογο του έργου σας για να εγκαταστήσετε το uuid πακέτο ως μία από τις εξαρτήσεις του έργου σας.
πηγαίνω λάβετε το github.com/google/uuid\n
Εισαγάγετε το uuid πακέτο για τη δημιουργία UUID και το fmt πακέτο για έξοδο του UUID στην κονσόλα σας.
εισαγωγή (\n "fmt"\n "github.com/google/uuid"\n)\n
Μπορείτε να δημιουργήσετε ένα UUID με το πακέτο uuid Νέος μέθοδος. ο Νέος Η μέθοδος επιστρέφει ένα τυχαίο UUID και μπορείτε να το χρησιμοποιήσετε Σειρά μέθοδος για να αποκτήσετε μια παράσταση συμβολοσειράς του.
funcgoogleUUID() {\n uuidValue := uuid. New()\n fmt. Println (uuidValue. String())\n}\n
ο googleUUID η συνάρτηση χρησιμοποιεί το Νέος μέθοδος εκτύπωσης της μορφής συμβολοσειράς ενός τυχαίου UUID.
Δημιουργία UUID με το πακέτο GoUUID
Το πακέτο gouid παρέχει αμετάβλητες δομές και συναρτήσεις UUID για τη δημιουργία UUID NewV3, NewV4 και NewV5 και την ανάλυση των UUID όπως ορίζεται στο RFC 4122.
Εκτελέστε αυτήν την εντολή στο τερματικό του καταλόγου εργασίας σας για να εγκαταστήσετε το gouid πακέτο στις εξαρτήσεις του έργου σας.
πηγαίνω λάβετε το github.com/nu7hatch/gouuid\n
Εισαγάγετε το fmt και gouid πακέτα με το ψευδώνυμο uuid (συμβατικό) για τη δημιουργία UUID.
εισαγωγή (\n "fmt"\n uuid "github.com/nu7hatch/gouuid"\n)\n
Μπορείτε να δημιουργήσετε UUID έκδοσης 4 με το NewV4 μέθοδο που επιστρέφει το UUID ή ένα σφάλμα.
funcδημιουργώ V4(){\n v4UUID, err := uuid. NewV4()\n \n αν λάθος!= μηδέν {\n fmt. Println (err)\n }\n \n fmt. Println (v4UUID)\n}\n
ο δημιουργώ V4 μέθοδος εκτυπώνει το UUID που δημιουργείται από το NewV4 μέθοδος του gouid πακέτο.
Ομοίως, μπορείτε να δημιουργήσετε UUID έκδοσης 5 με το NewV5 μέθοδος. ο NewV5 Η μέθοδος λαμβάνει μια διεύθυνση URL χώρου ονομάτων UUID και ένα κομμάτι byte και επιστρέφει το UUID της έκδοσης 5 που δημιουργήθηκε.
funcδημιουργώ V5(){\n v5UUID, err := uuid. NewV5(uuid. NamespaceURL, []ψηφιόλεξη("go.dev"))\n \n αν λάθος!= μηδέν {\n fmt. Println (err)\n }\n \n fmt. Println (v5UUID)\n}\n
ο δημιουργώ V5 Η συνάρτηση εκτυπώνει την δημιουργημένη έκδοση πέντε UUID μετά τη δημιουργία UUID με το NewV5 μέθοδο εάν δεν υπάρχουν σφάλματα παραγωγής.
Μπορείτε να δημιουργήσετε UUID με τις περισσότερες γλώσσες προγραμματισμού
Τα UUID είναι χρήσιμα για πολλές περιπτώσεις χρήσης, επομένως είναι δημοφιλή σε καθημερινές εφαρμογές. Οι περισσότερες γλώσσες προγραμματισμού παρέχουν λειτουργικότητα για τη δημιουργία UUID στις τυπικές βιβλιοθήκες ή τα πακέτα οικοσυστημάτων τους.