כיצד לתרגם קובץ חבילת שפה מסוג JSON מבלי לפגוע במפתחות (Keys) ובלוגיקה של התוכנה?
“במהלך תהליך אינטרנציונליזציה של אפליקציה או אתר, תרגום שגוי של JSON (לדוג' תרגום key או פגיעה בסוגריים) עלול להוביל לקריסת התוכנה.”
ניתוח סיבת השורש
אלגוריתם הפרדה בין מפתח לערך
DL.Translator עושה שימוש בטכנולוגיית ניתוח AST (עץ תחביר מופשט), אשר בשלב הקדם-עיבוד נועל את המפתחות (Keys) של JSON כאזורים שאינם ניתנים לעריכה, ושולח רק את הערכים (Values) למנוע ה-AI, ובכך מונע מהיסוד את הסיכון לתרגום שגוי של Keys.
הגנת מצייני מקום ומשתנים
עבור משתנים נפוצים ב-Value (כגון `{username}`, `%s`, `{{count}}`), אנו עושים שימוש בסימון באמצעות ביטויים רגולריים (Regular Expression Marking) כדי להמיר אותם לטוקנים מיוחדים הניתנים לזיהוי על ידי מודל ה-AI, ובכך להבטיח שתוכן המשתנים יישאר ללא שינוי לאחר התרגום, ושמיקומם בטקסט המתורגם יהיה מתאים.
התמודדות עם ריבוי רמות קינון
התהליך הנוכחי מטפל באופן רקורסיבי בערכי מחרוזות הניתנים לתרגום באובייקטים ובמערכים של JSON, ולאחר מכן מבצע סריאליזציה מחדש של הפלט. ההזחה ותווי הרווח עשויים להיות שונים מהקובץ המקורי. לפני השימוש בדקו את המבנה, מצייני המקום וההבדלים.
סיכום הפתרון הסופי
באמצעות הגנה חכמה על המבנה, מפתחים אינם נדרשים לשלוף את הטקסטים באופן ידני ויכולים להטמיע את קובץ ה-JSON המתורגם ישירות בסביבת הייצור.