Στούντιο της Φρανκφούρτης για πολύγλωσσες ψηφιακές παρουσίες +49 69 95209894 [email protected] Δευ–Παρ 9–17 Περιοχή πελατών →
ΕλληνικάEL

Νόμισμα

Τα ποσά σε ξένο νόμισμα είναι μη δεσμευτικές ενδεικτικές τιμές· η χρέωση γίνεται σε Ευρώ.

Πρακτικός οδηγός

Οδηγός Τοπικής Προσαρμογής Εφαρμογών και Λογισμικού (i18n)

Η τοπική προσαρμογή εφαρμογών και λογισμικού απαιτεί έναν καλά σχεδιασμένο διαχωρισμό κώδικα και κειμένων. Αυτός ο οδηγός καλύπτει τεχνικές πτυχές όπως τα placeholders, τους κανόνες πληθυντικού, τα μήκη κειμένου, τα κλειδιά συμβολοσειρών, το πλαίσιο για μεταφραστές και την υποστήριξη RTL. Βοηθά τους προγραμματιστές να δημιουργούν διεθνείς εφαρμογές αποτελεσματικά και με συνέπεια, χωρίς να θίγει νομικά ή οικονομικά θέματα.

i18n
Συντομογραφία Διεθνοποίησης
RTL
Υποστήριξη από δεξιά προς αριστερά
ICU
Διεθνή στοιχεία για το Unicode
Διάγραμμα διαχωρισμού κώδικα και γλωσσικών πόρων

1. Διαχωρισμός κώδικα και κειμένων

Η βασική προϋπόθεση για κάθε τοπικοποίηση είναι ο αυστηρός διαχωρισμός του προγραμματιστικού κώδικα από τα κειμενικά περιεχόμενα. Όλα τα κείμενα που εμφανίζονται πρέπει να αποθηκεύονται σε εξωτερικά αρχεία πόρων (π.χ. Properties, JSON, YAML) και όχι να είναι ενσωματωμένα στον πηγαίο κώδικα. Έτσι, οι μεταφραστές μπορούν να εργάζονται χωρίς να τροποποιούν τον κώδικα. Χρησιμοποιήστε μοναδικά κλειδιά συμβολοσειρών ως αναφορά στον κώδικα, τα οποία παραπέμπουν στις αντίστοιχες μεταφράσεις. Αυτός ο διαχωρισμός διευκολύνει επίσης τη συντήρηση και επιτρέπει την προσθήκη νέων γλωσσών αργότερα χωρίς αλλαγές στον κώδικα. Βεβαιωθείτε ότι οι ετικέτες διεπαφής, τα μηνύματα σφάλματος και οι συμβουλές εργαλείων περιλαμβάνονται επίσης σε αυτά τα αρχεία.

2. Placeholder και μεταβλητές

Τα κείμενα συχνά περιέχουν δυναμικό περιεχόμενο, όπως αριθμούς, ονόματα ή ημερομηνίες. Αυτά πρέπει να εισάγονται μέσω placeholders, π.χ. με μορφοποίηση printf (%s, %d) ή με νεότερες προσεγγίσεις όπως αγκύλες {0}. Είναι σημαντικό οι μεταφραστές να γνωρίζουν τη σειρά και τη σημασία των placeholders. Χρησιμοποιήστε ονομασμένους placeholders (π.χ. „{username}“) για να παρέχετε πλαίσιο. Σε γλώσσες με διαφορετική σειρά λέξεων, η σειρά των placeholders μπορεί να διαφέρει. Επομένως, προσφέρετε τη δυνατότητα προσαρμογής της σειράς στη μετάφραση. Δοκιμάστε όλες τις παραλλαγές για να αποφύγετε εσφαλμένες ή ελλιπείς εξόδους.

Παράδειγμα placeholders σε μεταφράσιμες συμβολοσειρές

3. Κανόνες πληθυντικού και σχηματισμός πληθυντικού

Στα γερμανικά υπάρχουν μόνο ενικός και πληθυντικός, αλλά πολλές γλώσσες έχουν πιο σύνθετους κανόνες πληθυντικού (π.χ. αραβικά με έξι κατηγορίες). Χρησιμοποιήστε βιβλιοθήκες όπως το ICU MessageFormat, οι οποίες χειρίζονται τους κανόνες πληθυντικού ανά γλώσσα. Ορίστε ξεχωριστά κλειδιά για τις διάφορες μορφές πληθυντικού (one, other) στους πόρους σας. Ο κώδικας θα επιλέξει αυτόματα τη σωστή μορφή με βάση τον αριθμό. Παράδειγμα: „{count} {count, plural, one {Apfel} other {Äpfel}}“. Δοκιμάστε κάθε γλώσσα με πολλές αριθμητικές τιμές για να βεβαιωθείτε ότι εμφανίζεται η σωστή μορφή πληθυντικού. Αποφύγετε σταθερές if-συνθήκες – είναι επιρρεπείς σε σφάλματα.

4. Μήκος κειμένου και περιθώριο διάταξης

Οι μεταφράσεις είναι συχνά μεγαλύτερες ή μικρότερες από το αρχικό κείμενο. Ειδικά σε κουμπιά, μενού και ετικέτες, αυτό μπορεί να διαταράξει τη διάταξη. Σχεδιάστε λοιπόν επαρκή χώρο για επεκτάσεις κειμένου – μια καλή οδηγία είναι 30% επιπλέον χώρος για δυτικές γλώσσες, περισσότερο για ασιατικές. Χρησιμοποιήστε δυναμικές διατάξεις που προσαρμόζονται στο μήκος κειμένου (π.χ. Auto Layout στο iOS ή Flexbox στον Ιστό). Αποφύγετε σταθερά πλάτη. Αφήστε τα στοιχεία UI να χειρίζονται την αναδίπλωση κειμένου όπου χρειάζεται. Δοκιμάστε τη διεπαφή με τις μεγαλύτερες αναμενόμενες μεταφράσεις για να αποφύγετε επικαλύψεις ή αποκοπές.

5. Κλειδιά συμβολοσειρών, πλαίσιο για μεταφραστές και RTL

Τα μοναδικά κλειδιά συμβολοσειρών είναι η ραχοκοκαλιά της τοπικοποίησης. Χρησιμοποιήστε περιγραφικά ονόματα (π.χ. „login.button.title“) και τεκμηριώστε τον σκοπό χρήσης. Δώστε πλαίσιο στους μεταφραστές: στιγμιότυπα οθόνης, μέγιστο μήκος χαρακτήρων, περιορισμούς (π.χ. „όχι περισσότεροι από 20 χαρακτήρες“). Για γλώσσες RTL όπως τα αραβικά ή τα εβραϊκά, το UI πρέπει να καθρεφτιστεί. Χρησιμοποιήστε χαρακτηριστικά διάταξης που υποστηρίζουν αυτόματα το RTL (π.χ. start/end αντί left/right). Δοκιμάστε όλη την πλοήγηση υπό συνθήκες RTL. Σκεφτείτε επίσης τα εικονίδια και τα γραφικά – μπορεί να ερμηνευθούν διαφορετικά ανάλογα με τον πολιτισμό.

Λίστα ελέγχου για είσοδο στην αγορά

  • Χρήση εξωτερικών αρχείων πόρων για κείμενα
  • Placeholders (κράτηση θέσης) με ονομασμένες μεταβλητές και προσαρμόσιμη σειρά
  • Υλοποίηση κανόνων πληθυντικού με ICU MessageFormat
  • Διάταξη τουλάχιστον 30% περιθώριο για επεκτάσεις κειμένου
  • Επεξηγηματικά κλειδιά συμβολοσειρών με τεκμηρίωση περιβάλλοντος
  • Υποστήριξη RTL μέσω χαρακτηριστικών διάταξης όπως start/end
Πλέγμα διάταξης με διαφορετικά μήκη κειμένου και περιθώρια

Συχνές ερωτήσεις

Γιατί είναι σημαντικός ο διαχωρισμός κώδικα και κειμένων;

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

Πώς χειρίζομαι τους πληθυντικούς αριθμούς σε διαφορετικές γλώσσες;

Χρησιμοποιήστε βιβλιοθήκες όπως το ICU MessageFormat, που επιλέγουν τη σωστή μορφή πληθυντικού για κάθε γλώσσα. Ορίστε στους πόρους κλειδιά για κάθε κατηγορία πληθυντικού (π.χ. one, other).

Τι πρέπει να προσέξετε ιδιαίτερα στις γλώσσες RTL;

Το UI πρέπει να αντικατοπτριστεί: Χρησιμοποιήστε λογικά χαρακτηριστικά διάταξης (start/end) αντί για απόλυτες κατευθύνσεις. Δοκιμάστε την πλοήγηση και τις εσοχές κειμένου υπό συνθήκες RTL.

Έτοιμοι για αυτή την αγορά;

Εντοπίζουμε τον ιστότοπό σας γλωσσικά, τεχνικά και πολιτιστικά – με έλεγχο από φυσικούς ομιλητές και σταθερή τιμή. Ζητήστε μια προσφορά χωρίς υποχρέωση.

Ζητήστε μια μη δεσμευτική προσφορά

Γερμανική GmbHΠρωτοδικείο Φρανκφούρτης · HRB 111727
D-U-N-S® καταχωρημένο315030052
Επεξεργασία σύμφωνα με τον GDPRΦιλοξενία στη Γερμανία
Σταθερές τιμές με γραπτή εγγύηση παράδοσης