Διεθνοποίηση και επιχώρια προσαρμογή

Στην πληροφορική, η διεθνοποίηση και η επιχώρια προσαρμογή είναι μέσα για την προσαρμογή λογισμικού του υπολογιστή σε διαφορετικές γλώσσες, τοπικές διαφορές και τεχνικές απαιτήσεις της αγοράς-στόχου (τοπικές ρυθμίσεις). Η Διεθνοποίηση είναι η διαδικασία σχεδιασμού μιας εφαρμογής λογισμικού, έτσι ώστε να μπορεί ενδεχομένως να προσαρμοστεί σε διάφορες γλώσσες και περιοχές χωρίς τεχνικές αλλαγές. Η επιχώρια προσαρμογή είναι η διαδικασία προσαρμογής διεθνοποιημένου λογισμικού για μια συγκεκριμένη περιοχή ή γλώσσα με την προσθήκη τοπικών στοιχείων και τη μετάφραση του κειμένου. Η επιχώρια προσαρμογή (που ενδέχεται να εκτελείται πολλές φορές, για διαφορετικές τοπικές ρυθμίσεις) χρησιμοποιεί την υποδομή ή την ευελιξία που παρέχεται από τη διεθνοποίηση (που ιδανικά γίνεται μόνο μία φορά, ή ως αναπόσπαστο μέρος της συνεχούς ανάπτυξης).

 Οι όροι συχνά συμπτύσσονται με τις λέξεις i18n (όπου το 18 αντιπροσωπεύει τον αριθμό των γραμμάτων μεταξύ του πρώτου i και του τελευταίου n στη λέξη internationalization, μια χρήση που επινοήθηκε από την Αμερικανική εταιρία DEC κατά τη δεκαετία του 1970 ή του '80) και L10n για localization, λόγω του μήκους των λέξεων.Ορισμένες εταιρείες, όπως η IBM και η Sun Microsystems, χρησιμοποιούν τον όρο "παγκοσμιοποίηση", g11n, για το συνδυασμό της διεθνοποίησης και της επιχώριας προσαρμογής. Επίσης γνωστή και ως "glocalization" (σύνθεση των αγγλικών λέξεων globalization και localization). Η Microsoft ορίζει τη Διεθνοποίηση ως συνδυασμό Παγκόσμιας Προσαρμοστικότητας (World-Readiness) και επιχώριας προσαρμογής. Η Παγκόσμια Προσαρμοστικότητα είναι η διαδικασία μέσω της οποίας ο προγραμματιστής κάνει το προϊόν συμβατό με διάφορα σενάρια (scripts) και διάφορους πολιτισμούς (παγκοσμιοποίηση) και διαχωρίζει τους πόρους διεπαφής χρήστη σε επιχώρια προσαρμόσιμη μορφή (δυνατότητα επιχώριας προσαρμογής ή localizability, που συμπτύσσεται ως L12y).Η Hewlett-Packard και η HP-UX δημιούργησαν το σύστημα NLS (National Language Support ή Εγγενή Υποστήριξη Γλώσσαα) για την παραγωγή επιχώρια προσαρμόσιμου λογισμικού. Σύμφωνα με το βιβλίο Λογισμικό χωρίς σύνορα, οι πτυχές του σχεδιασμού ενός προϊόντος που πρέπει να εξεταστούν κατά τη διεθνοποίηση είναι η «κωδικοποίηση δεδομένων, τα δεδομένα και η τεκμηρίωση, η κατασκευή του λογισμικού, η υποστήριξη υλικού της συσκευής, η αλληλεπίδραση με το χρήστη», ενώ τα σημεία κλειδιά του σχεδιασμού που πρέπει να εξεταστούν κατά τη δημιουργία ενός πλήρως διεθνοποιημένου προϊόντος από το μηδέν είναι «η αλληλεπίδραση με το χρήστη, ο σχεδιασμός του αλγόριθμου και των μορφών δεδομένων, οι υπηρεσίες λογισμικού, η τεκμηρίωση». Η μετάφραση είναι συνήθως το πιο χρονοβόρο στοιχείο της γλωσσικής επιχώριας προσαρμογής. Μπορεί να περιλαμβάνει: Για ταινία, βίντεο και ήχο, τη μετάφραση του προφορικού λόγου ή στίχων μουσικής, συχνά χρησιμοποιώντας είτε μεταγλώττιση ή υπότιτλους Μετάφραση κειμένου για έντυπο υλικό, ψηφιακά μέσα (πιθανώς περιλαμβάνει τα μηνύματα λάθους και την τεκμηρίωση) Ενδεχομένως τη μεταβολή εικόνων και λογότυπων που περιέχουν κείμενο ώστε να περιέχουν μεταφράσεις ή γενικά εικονίδια Διαφορετικά μήκη μετάφρασης και διαφορές στα μεγέθη χαρακτήρων (π. χ. ανάμεσα στα γράμματα του λατινικού αλφαβήτου και τους κινεζικούς χαρακτήρες) μπορεί να προκαλέσουν προβλήματα με διατάξεις κειμένων που, ενώ λειτουργούν καλά σε μία γλώσσα, δεν ταιριάζουν σε άλλες. Εξέταση των διαφορών στη διάλεκτο, το ύφος ή το γλωσσικό ιδίωμα Συγγραφή συμβάσεων, όπως: Μορφοποίηση αριθμών (ειδικά υποδιαστολή και ομαδοποίηση ψηφίων) Μορφή ημερομηνίας και ώρας, ενδεχομένως, συμπεριλαμβανομένης της χρήσης των διαφόρων ημερολογίων Το λογισμικό του υπολογιστή μπορεί να αντιμετωπίσει διαφορές πάνω και πέρα από απλή μετάφραση λέξεων και φράσεων, επειδή τα προγράμματα υπολογιστών δημιουργούν περιεχόμενο δυναμικά. Αυτές οι διαφορές μπορεί να χρειαστεί να ληφθούν υπόψη κατά τη διαδικασία διεθνοποίησης στο πλαίσιο της προετοιμασίας για τη μετάφραση. Πολλές από αυτές τις διαφορές είναι τόσο τακτικές που η μετατροπή μεταξύ των γλωσσών μπορεί εύκολα να αυτοματοποιηθεί. To Αποθετήριο Δεδομένων Κοινών Τοπικών Ρυθμίσεων (Common Locale Data Repository, ή CLDR) του Unicode παρέχει μια συλλογή από τέτοιες διαφορές. Τα δεδομένα του χρησιμοποιούνται από μεγάλα λειτουργικά συστήματα, συμπεριλαμβανομένων των Microsoft Windows, του OS X και του Debian, και από μεγάλες εταιρείες του διαδικτύου ή έργα όπως η Google και το Ίδρυμα Wikimedia. Παραδείγματα τέτοιων διαφορών περιλαμβάνουν: Διαφορετικά "σενάρια" σε διαφορετικά συστήματα γραφής χρησιμοποιούν διαφορετικούς χαρακτήρες - ένα διαφορετικό σύνολο γραμμάτων, συλλαβογραμμάτων, λογογραμμάτων, ή συμβόλων. Σύγχρονα συστήματα χρησιμοποιούν το πρότυπο Unicode για να αναπαραστήσουν πολλές διαφορετικές γλώσσες, με ενιαία κωδικοποίηση χαρακτήρων. Η κατεύθυνση της γραφής είναι από αριστερά προς τα δεξιά στις περισσότερες Ευρωπαϊκές γλώσσες, από δεξιά προς τα αριστερά στα εβραϊκά και τα αραβικά, ή και τα δύο σε βουστροφηδόν σενάρια, και, προαιρετικά, κάθετη σε ορισμένες Ασιατικές γλώσσες. Σύνθετη διάταξη κειμένου, για τις γλώσσες όπου οι χαρακτήρες αλλάζουν σχήμα ανάλογα με το πλαίσιο. Κεφαλαιοποίηση υπάρχει σε ορισμένα σενάρια και όχι σε άλλες. Διαφορετικές γλώσσες και συστήματα γραφής έχουν διαφορετικούς κανόνες ταξινόμησης κείμενου Διαφορετικές γλώσσες έχουν διαφορετικά αριθμητικά συστήματα, τα οποία μπορεί να χρειαστούν υποστήριξη, εάν οι Δυτικοί αραβικοί αριθμοί δεν χρησιμοποιούνται Διαφορετικές γλώσσες έχουν διαφορετικούς κανόνες για το σχηματισμό του πληθυντικού αριθμού, γεγονός που μπορεί να μπερδέψει προγράμματα που εμφανίζουν δυναμικά αριθμητικό περιεχόμενο. Λοιπές κανόνες γραμματικής μπορεί επίσης να διαφέρουν, π. χ. γενική. Διαφορετικές γλώσσες, χρησιμοποιούν διαφορετικά σημεία στίξης (π. χ. παράθεση κειμένου χρησιμοποιώντας αγγλικά εισαγωγικά ( "" ) ή ελληνικά («»)). Οι συντομεύσεις του πληκτρολογίου μπορούν να χρησιμοποιούν μόνο κουμπιά που υπάρχουν πάνω στη διάταξη του πληκτρολογίου η οποία είναι επιχώρια προσαρμοσμένη. Αν μια συντόμευση αντιστοιχεί σε μια λέξη μιας συγκεκριμένης γλώσσας (π. χ. Ctrl-s για «save», ή αποθήκευση στα αγγλικά), μπορεί να χρειαστεί να αλλάξει. Διαφορετικές χώρες έχουν διαφορετικές οικονομικές συμβάσεις, συμπεριλαμβανομένων των παραλλαγών σε: Μεγέθη χαρτιού Τηλεοπτικά συστήματα και δημοφιλή μέσα αποθήκευσης Μορφή αριθμών τηλεφώνου Μορφή ταχυδρομικής διεύθυνσης , ταχυδρομικοί κώδικες, και η επιλογή της υπηρεσίες παράδοσης Νόμισμα (σύμβολα, τις θέσεις των συμβόλων των νομισμάτων και τη λογική των ποσών που οφείλεται σε διαφορετικό ιστορικό πληθωρισμού) - οι κωδικοί ISO 4217 χρησιμοποιούνται συχνά στη διεθνοποίηση Σύστημα μέτρησης Μεγέθη μπαταριώνΠρότυπα τάσης και ρεύματοςΕιδικότερα, οι Ηνωμένες Πολιτείες και η Ευρώπη διαφέρουν στις περισσότερες από αυτές τις περιπτώσεις. Άλλες περιοχές συχνά ακολουθούν μία από αυτές. Ειδικές υπηρεσίες τρίτων, όπως οι χάρτες σε απευθείας σύνδεση, οι αναφορές καιρού ή οι πάροχοι υπηρεσιών πληρωμών, ενδέχεται να μην είναι διαθέσιμοι σε όλο τον κόσμο από τους ίδιους φορείς, ή και καθόλου. Οι ζώνες ώρας ποικίλλουν σε όλο τον κόσμο, και αυτό πρέπει να ληφθεί υπόψη αν ένα προϊόν αρχικά αλληλεπίδρασε μόνο με ανθρώπους σε μια ενιαία ζώνη ώρας. Στη διεθνοποίηση, ο Συγχρονισμένος Παγκόσμιος Χρόνος (UTC) χρησιμοποιείται συχνά στο εσωτερικό και, στη συνέχεια, μετατρέπεται σε τοπική ώρα ζώνης για λόγους εμφάνισης. Διαφορετικές χώρες έχουν διαφορετικές νομικές απαιτήσεις, δηλαδή για παράδειγμα: Κανονιστική συμμόρφωση μπορεί να απαιτήσει την προσαρμογή για μια συγκεκριμένη δικαιοδοσία, ή μια αλλαγή σε όλο το προϊόν, όπως: Συμμόρφωση στη νομοθεσία προστασίας της ιδιωτικής ζωής Επιπλέον αποποιήσεις σε μια τοποθεσία Ιστού ή σε μια συσκευασία Διαφορετικες προϋποθέσεις επισήμανσης καταναλωτικών προϊόντων Η συμμόρφωση με τους περιορισμούς εξαγωγών και κανονισμούς κρυπτογράφησης Συμμόρφωση με ένα καθεστώς λογοκρισίας στο Διαδίκτυο ή με διαδικασίες κλήτευσης Απαιτήσεις για την προσβασιμότητα Συλλογή διαφόρων φόρων, όπως ο φόρος επί των πωλήσεων, ο φόρος προστιθέμενης αξίας, ή οι τελωνειακοί δασμοί Ευαισθησία σε διάφορα πολιτικά ζητήματα, όπως οι διαμάχες για γεωγραφική ονομασία και αμφισβητούμενα σύνορα που απεικονίζονται σε χάρτες (π. χ. η μη απεικόνιση του Κασμίρ ως ινδικής περιοχής είναι έγκλημα στην Ινδία) Αριθμοί που εκχωρούνται από την Κυβέρνηση έχουν διαφορετικές μορφές (όπως διαβατήρια, ο αριθμός Κοινωνικής Ασφάλισης και άλλοι εθνικοί αριθμοί ταυτοποίησης)η επιχώρια προσαρμογή, επίσης, μπορεί να λάβει υπόψη διαφορές στην κουλτούρα, όπως: Τοπικές αργίες Συμβάσεις σχετικά με προσωπικά ονόματα και τίτλους Αισθητική Δυνατότητα κατανόησης και πολιτισμική καταλληλότητα των εικόνων και του χρωματικού συμβολισμού Η εθνικότητα, τα ρούχα, και η κοινωνικοοικονομική κατάσταση των ανθρώπων και η αρχιτεκτονική των θέσεων που απεικονίζεται Τοπικά έθιμα και συμβάσεις, όπως τα κοινωνικά ταμπού, τα δημοφιλείς τοπικές θρησκείες, ή δεισιδαιμονίες όπως οι τύποι αίματος στην Ιαπωνική κουλτούρα ή τα ζώδια σε άλλους πολιτισμούς Προκειμένου να διεθνοποιηθεί ένα προϊόν, είναι σημαντικό να εξεταστούν ένα πλήθος των αγορών όπου το προϊόν προβλέπεται να εισέλθει. Λεπτομέρειες όπως το μήκος του πεδίου για τις διευθύνσεις οδών, μοναδική μορφή για τη διεύθυνση, την ικανότητα να κάνει τον ταχυδρομικό κώδικα προαιρετικό πεδίο για να απευθυνθεί σε χώρες που δεν έχουν ταχυδρομικούς κώδικες ή το πεδίο της πολιτείας για τις χώρες που δεν έχουν πολιτείες, καθώς και την εισαγωγή νέων φορμών εγγραφής που συμμορφώνονται με τους τοπικούς νόμους, είναι μόνο μερικά από τα παραδείγματα που κάνουν τη διεθνοποίηση ένα σύνθετο έργο.Μια ευρύτερη προσέγγιση λαμβάνει υπόψη πολιτιστικούς παράγοντες που αφορούν για παράδειγμα την προσαρμογή της λογική των επιχειρηματικών διαδικασιών ή την ενσωμάτωση επιμέρους πολιτιστικών (συμπεριφορικών) πτυχών.Ήδη κατά τη δεκαετία του 1990, εταιρείες όπως η Bull χρησιμοποιούσαν μηχανική μετάφραση (Systran) σε μεγάλη κλίμακα, για όλη τους τη μεταφραστική δραστηριότητα: άνθρωποι-μεταφραστές αναλάμβαναν την προ-επεξεργασία (κάνοντας την καταχώρηση αναγνώσιμη από τη μηχανή) και την επιμέλεια μετά τη μετάφραση. Τόσο στον ανασχεδιασμό υπάρχοντος λογισμικού όσο και στο σχεδιασμό ενός νέου διεθνοποιημένου λογισμικού, το πρώτο βήμα για τη διεθνοποίηση είναι να διαχωριστεί κάθε μέρος που θα μπορούσε να εξαρτάται από τις τοπικές ρυθμίσεις (κώδικα, κείμενο ή δεδομένα) σε μια ξεχωριστή ενότητα. Στη συνέχεια κάθε ενότητα μπορεί είτε να βασίζεται σε μια τυπική βιβλιοθήκη/εξάρτηση ή να αντικατασταθεί ανεξάρτητα σύμφωνα με τις απαιτήσεις των εκάστοτε τοπικών ρυθμίσεων. Η τρέχουσα επικρατούσα πρακτική είναι οι εφαρμογές να τοποθετούν κείμενο σε συμβολοσειρές πόρων που φορτώνονται κατά την εκτέλεση του προγράμματος, όπως απαιτείται. Αυτές οι συμβολοσειρές, αποθηκευμένες σε αρχεία πόρων, είναι σχετικά εύκολο να μεταφραστούν. Τα προγράμματα συχνά χτίζονται με αναφορά τις βιβλιοθήκες πόρων ανάλογα με τα επιλεγμένα δεδομένα τοπικών ρυθμίσεων . Η αποθήκευση για μεταφράσιμες και μεταφρασμένες συμβολοσειρές μερικές φορές ονομάζεται κατάλογος μηνυμάτων καθώς οι συμβολοσειρές ονομάζονται μηνύματα. Ο κατάλογος γενικά αποτελείται από ένα σύνολο αρχείων σε μια συγκεκριμένη μορφή τοπικής προσαρμογής και ένα πρότυπο βιβλιοθήκης για τη διαχείριση της συγκεκριμένης μορφής. Μια βιβλιοθήκη λογισμικού και μορφής που βοηθά σε αυτό είναι το gettext. Έτσι για να φτιάξει κανείς μια εφαρμογή που υποστηρίζει πολλαπλές γλώσσες θα σχεδίαζε την εφαρμογή να επιλέγει το σχετικό αρχείο γλωσσικών πόρων κατά το χρόνο εκτέλεσης. Ο κώδικας που απαιτείται για την επαλήθευση καταχώρησης δεδομένων και πολλούς άλλους τύπους δεδομένων που επηρεάζονται από τις τοπικές ρυθμίσεις, επίσης θα πρέπει να υποστηρίζει διαφορετικές προϋποθέσεις τοπικών ρυθμίσεων. Σύγχρονα συστήματα ανάπτυξης και λειτουργικά συστήματα περιλαμβάνουν εξελιγμένες βιβλιοθήκες για διεθνή υποστήριξη τέτοιου είδους, δείτε επίσης το Πρότυπο δεδομένων τοπικών ρυθμίσεων ανωτέρω. Πολλά θέματα επιχώριας προσαρμογής (π. χ. η κατεύθυνση της γραφής, η ταξινόμηση του κειμένου) απαιτούν αλλαγές στο λογισμικό πιο βαθιές από τη μετάφραση κειμένου. Για παράδειγμα, το OpenOffice.org το επιτυγχάνει αυτό με αλλαγές κατάρτισης. Μια μέθοδος παγκοσμιοποίησης περιλαμβάνει, μετά το σχεδιασμό, τρία στάδια υλοποίησης: διεθνοποίηση, επιχώρια προσαρμογή και διασφάλιση ποιότητας. Σε κάποιο βαθμό (π. χ. για τη διασφάλιση ποιότητας), η ομάδα ανάπτυξης πρέπει να συμπεριλαμβάνει κάποιον που θα χειρίζεται τα βασικά/κεντρικά στάδια της διαδικασίας τα οποία, στη συνέχεια, ενεργοποιούν όλα τα άλλα. Τα πρόσωπα αυτά θα πρέπει συνήθως να κατανοούν τις ξένες γλώσσες και πολιτισμούς και να έχουν κάποιο τεχνικό υπόβαθρο. Εξειδικευμένοι τεχνικοί συγγραφείς είναι απαραίτητοι για την κατασκευή μια πολιτισμικά κατάλληλη σύνταξη για δυνητικά περίπλοκες έννοιες, σε συνδυασμό με μηχανικούς πόρους για την ανάπτυξη και τον έλεγχο των στοιχείων επιχώριας προσαρμογής. Διεθνοποιημένο σωστά μια φορά, το λογισμικό μπορεί να βασίζεται σε πιο αποκεντρωμένα μοντέλα για επιχώρια προσαρμογή: τα λογισμικά ελεύθερου και ανοικτού κώδικα συνήθως βασίζονται σε επιχώρια προσαρμογή από τελικούς χρήστες και εθελοντές, οργανωμένων μερικές φορές σε ομάδες. Το έργο KDE3 , για παράδειγμα, έχει μεταφραστεί σε πάνω από 100 γλώσσες, ενώ το MediaWiki σε 270 γλώσσες, από τις οποίες οι 100 έχουν ως επί το πλείστον ολοκληρωθεί από το 2016.Ενώ η μετάφραση υπάρχοντος κειμένου σε άλλες γλώσσες μπορεί να φαίνεται εύκολο, είναι πιο δύσκολο να διατηρηθούν οι παράλληλες εκδοχές κειμένων καθ ' όλη τη διάρκεια ζωής του προϊόντος. Για παράδειγμα, εάν ένα μήνυμα που εμφανίζεται στον χρήστη είναι τροποποιημένο, όλες οι μεταφρασμένες εκδοχές πρέπει να αλλάξουν. Σε ένα εμπορικό περιβάλλον, το όφελος της επιχώριας προσαρμογής είναι η πρόσβαση σε περισσότερες αγορές. Στις αρχές της δεκαετίας του 1980, το Lotus 1-2-3 έκανε 2 χρόνια να ξεχωρίσει τον κώδικα από το κείμενο του προγράμματος και έχασε την πρωτιά στην αγορά της Ευρώπης από το Microsoft Multiplan. Ωστόσο, εμπλέκονται σημαντικές δαπάνες, οι οποίες υπερβαίνουν την απλή μηχανική. Επιπλέον, οι επιχειρηματικές δραστηριότητες πρέπει να προσαρμοστούν για να διαχειρίζονται την παραγωγή, την αποθήκευση και τη διανομή πολλαπλών διακριτών επιτόπια προσαρμοσμένων προϊόντων, τα οποία συχνά πωλούνται σε εντελώς διαφορετικά νομίσματα, κανονιστικά περιβάλλοντα και φορολογικά καθεστώτα. Τέλος, οι πωλήσεις, το μάρκετινγκ και η τεχνική υποστήριξη πρέπει επίσης να διευκολύνουν τις δικές τους διαδικασίες στις νέες γλώσσες, προκειμένου να υποστηρίξουν τους πελάτες για τα επιχώρια προσαρμοσμένα προϊόντα. Συνεπώς, ιδιαίτερα για σχετικά μικρούς γλωσσικούς πληθυσμούς, μπορεί να μην είναι ποτέ οικονομικά βιώσιμη η προσφορά ενός επιχώρια προσαρμοσμένου προϊόντος. Ακόμη και εκεί όπου μεγάλοι γλωσσικοί πληθυσμοί θα μπορούσαν να δικαιολογήσουν την επιχώρια προσαρμογή για ένα συγκεκριμένο προϊόν και η εσωτερική δομή του προϊόντος επιτρέπει ήδη την επιχώρια προσαρμογή, κάποιος σχεδιαστής/εκδότης λογισμικού μπορεί να μην έχει το μέγεθος και την γνώση για να διαχειριστεί τις βοηθητικές λειτουργίες που σχετίζονται με τη λειτουργία σε πολλαπλές γλώσσες. Για παράδειγμα, το Microsoft Windows 7 είχε διαθέσιμα 96 πακέτα γλωσσών . Υποστήριξη αμφίδρομου σεναρίου Προσβασιμότητα υπολογιστή Ρωσοποίηση υπολογιστή, επιχώρια προσαρμογή στη ρωσική γλώσσα Επιχώρια προσαρμογή παιχνιδιών Παγκοσμιοποίηση Σύστημα Διαχείρισης Παγκοσμιοποίησης Glocalization Input method editor Διεθνή Στοιχεία για Unicode Γλωσσικοί κώδικες Βιομηχανία της γλώσσας Γλώσσα επιχώριας προσαρμογής Pseudolocalization, ένα μέθοδος δοκιμής που εξετάζει εάν ένα προϊόν λογισμικού είναι έτοιμο για επιχώρια προσαρμογή. Διαχωρισμός ανησυχιών Μετάφραση Επιχώρια προσαρμογή ιστοσελίδων Διεθνοποίηση με την Qt Αρχειοθετήθηκε 2015-02-13 στο Wayback Machine. - Διεθνοποίηση εντός του δημοφιλούς πλαισίου C++ GUI Globalization and Localization Association (GALA) Translating Vital Information:Localisation, Internationalisation, and Globalisation GILT: Globalization, Internationalization, Localization, Translation Αρχειοθετήθηκε 2017-02-07 στο Wayback Machine. Δοκιμή επιχώριας προσαρμογής - Όλα όσα πρέπει να ξέρετε για την επιχώρια προσαρμογή