כך תוכל ליצור UUIDs ב-Rust עם ובלי שימוש בארגזים של צד שלישי.
UUIDs (Universally Unique Identifiers) הם אמצעי אמין לזיהוי ייחודי של אובייקטים במערכות מבוזרות, שכן הם מבטלים את הצורך בתיאום מרוכז. UUIDs משפרים את שלמות הנתונים ומקדמים יכולת פעולה הדדית בין מערכות עם הייחודיות והאופי העמיד בפני התנגשות.
חלודה פופולרית בתחומים שבהם מזהים ייחודיים חיוניים, כולל יצירת רשתות, בניית יישומי אינטרנט ומערכות מבוזרות; ישנם ארגזים רבים להפקה והתאמה אישית של UUIDs עם Rust, בנוסף אתה יכול לכתוב קוד Rust כדי לבצע את uuid פקודה במחשב שלך ואחזר UUID.
יצירת UUID עם ארגז uuid
ה uuid ארגז הוא הכלי הפופולרי ביותר ליצירת UUIDs ב- Rust.
תוסיף את ה uuid ארגז כאחת מהתלות של הפרויקט שלך Cargo.toml קוֹבֶץ:
[תלות]
uuid = { גרסה = "0.8", תכונות = ["סרדה", "v4"] }
יצירת UUIDs עם החבילה היא פשוטה. אתה יכול להשתמש ב new_v4 פונקציה ליצירת UUID של גרסה ארבע:
להשתמש uuid:: Uuid;
fnרָאשִׁי() {
// new_v4 יוצר UUID של גרסה 4
לתת my_uuid = Uuid:: new_v4();
println!("{}", my_uuid);
}
ה רָאשִׁי הפונקציה יוצרת UUID חדש עם ה- new_v4 פונקציה ומדפיס את ה-UUID למסוף עם ה- println! מאקרו.
אתה יכול להתאים אישית את דור ה-UUID שלך עם בּוֹנֶה ו גִרְסָה מודולים של uuid ארגזים.
הנה איך אתה יכול ליצור an RFC4122 UUID של גרסה אקראית עם ה uuid אַרְגָז:
// ייבא את המודולים הדרושים מהארגז uuid
להשתמש uuid::{Builder, Version};fnרָאשִׁי() {
// צור Builder חדש ואתחול אותו עם מערך של 16 אפס בתים
לתת uuid_result = Builder:: from_bytes([0; 16])
// הגדר את גרסת UUID לאקראי
.set_version (גרסה:: אקראית)
// הגדר את גרסת UUID ל-RFC4122
.set_variant (uuid:: Variant:: RFC4122)
// בנה את ה-UUID
.לִבנוֹת();
// הדפס את ה-UUID המותאם בפורמט מקוף
println!("UUID מותאם אישית: {}", uuid_result.to_hyphenated());
}
ה רָאשִׁי הפונקציה יוצרת את ה-UUID עם חדש בּוֹנֶה מופע שנוצר עם from_bytes פונקציה שלוקחת מערך של שישה עשר בתים כארגומנט (במקרה זה, מערך של אפסים). הבונה מגדיר את יצירת ה-UUID על ידי הגדרת הגרסה ל אַקרַאִי והגרסה ל RFC4122.
סוף - סוף, ה רָאשִׁי הפונקציה בונה את ה-UUID עם לִבנוֹת השיטה תקרא לבונה ומדפיסה את ה-UUID למסוף.
יצירת UUIDs על ידי ביצוע פקודת UUID
אולי לא תצטרך תלות של צד שלישי ב- Rust ליצור UUIDs, במיוחד אם אינך מתכוון להתאים אישית את UUID על סמך מקרה השימוש שלך. ברוב מערכות ההפעלה מותקן כלי ליצירת UUID שרוב היישומים קוראים כדי ליצור UUIDs. אתה יכול לכתוב קוד Rust כדי להפעיל את כלי שורת הפקודה UUID ולאחזר את UUID עבורך תכנית.
אתה יכול להשתמש במובנה של Rust std:: process:: פקודה מודול ליצירת ואינטראקציה עם תהליכים חדשים. כדי ליצור UUIDs עם פקודה מודול, תצטרך לזהות את השם של הכלי ליצירת UUID במערכת ההפעלה שלך. ב-macOS, הכלי ליצירת UUID נקרא בשם uuigen.
הנה איך אתה יכול ליצור ולאחזר UUIDs מקוד Rust שלך על ידי ביצוע uuidgen פקודה עם ה פקודה מודול:
להשתמש std:: process:: פקודה;
fngener_uuid() -> תוֹצָאָה<חוּט, std:: io:: Error> {
לתת output = Command:: new("uuidgen").תְפוּקָה()?;
לתת uuid = חוּט::from_utf8_lossy(&output.stdout).into_owned();
בסדר(uuid)
}
fnרָאשִׁי() {
התאמה gener_uuid() {
בסדר(uuid) => println!("UUID שנוצר: {}", uuid),
לִטְעוֹת(ה) => eprintln!("שגיאה ביצירת UUID: {}",ה),
}
}
ה gener_uuid הפונקציה מחזירה את גרסת המחרוזת של UUID ושגיאה. ה gener_uuid הפונקציה מולידה תהליך חדש עם ה- חָדָשׁ שיטת ה פקודה מודול, מאחזר את הפלט עם תְפוּקָה פונקציה, וממיר את ה-UUID למחרוזת עם ה- from_utf8_lossy פוּנקצִיָה.
ה רָאשִׁי הפונקציה קוראת ל- gener_uuid פונקציה עם הצהרת התאמה, מטפל בשגיאה, ומוציא את ה-UUID או הודעת שגיאה המבוססת על מצב הפעולה.
אתה יכול לבנות יישומי אינטרנט מתוחכמים עם חלודה
UUIDs חשובים מאוד בפיתוח תוכנה מודרני. רוב היישומים היומיומיים שלך משתמשים ב-UUID, וכלים ליצירת UUID מותקנים ברוב מערכות ההפעלה, כולל Microsoft Windows, Linux ו-macOS.
אתה יכול להשתמש ב-UUID כדי לזהות משתמשים ביישומי האינטרנט שלך. זוהי דרך מצוינת להבטיח למשתמשים יש מזהה ייחודי שהם יכולים להשתמש בו כדי לעקוב אחר הפעילות שלהם. בנוסף, אתה יכול להשתמש ב-UUID כדי לזהות אובייקטים אחרים באפליקציית האינטרנט שלך, מקבצים ועד מסמכים ומוצרים.