Förstå internationalisering
Utveckling av internationaliserade programvaruprodukter kräver inte bara produktion av korrekt kod, utan också en design som gör det möjligt för produkten att stödja många nationella inställningar. Utvecklare och deras chefer bör vara medvetna om hur mycket arbete och uppmärksamhet som krävs för att skapa världsklara program, oavsett om de levererar dem som enskilda binärfiler som är redo att användas på många olika marknader eller som flera binärfiler som var och en är specifika för ett språk. Som utvecklare bör du se till att din hantering förstår att internationalisering omfattar mer än bara kodutveckling. Att utforma för internationalisering i början av produktcykeln sparar tid, pengar och arbete.
Internationalisering är skapandet av programvara som anpassar sig till lokala inställningar runt om i världen. Ett lokala inställningar är en samling språkrelaterade användarinställningar. En språkvariant anges genom parkoppling av ett språk och en geografisk region. Till exempel är engelska (USA) och engelska (Storbritannien) två olika språk, liksom engelska (Kanada) och franska (Kanada).
Internationaliserad programvara har följande attribut:
-
World-readiness omfattar design och implementering som separerar platsoberoende kod från platsberoende resurser och omfattar två huvudområden:
- Globalisering är processen att utveckla en programkärna med funktioner och koddesign som är oberoende av språk eller lokalitet. Designen stöder istället indata, visning och utdata för språkskript som stöds av Unicode, samt data som är relaterade till specifika lokaliseringar.
- Localizability är utformningen av programvarukodbasen och resurser så att ett program kan lokaliseras, enligt definitionen nedan, till olika språkversioner utan ändringar i källkoden. Till exempel måste strängbuffertar i koden och textrutor i användargränssnittet vara tillräckligt stora för att rymma längre textsträngar på språk som tyska eller nederländska.
- Localization Detta innebär att översätta och anpassa en produkt för en viss marknad, och det handlar främst om att skapa resursfiler i stället för att skriva källkod.
Att till exempel använda det nationella språkstöd (NLS) som tillhandahålls av Microsoft Win32 API är en programutvecklingsprocess som stöder världsberedskap, medan ändring av gränssnittselement, översättning av text och standardiserad terminologi är lokaliseringssteg som vanligtvis utförs av någon som är språkspecialist, till exempel en översättare. Även när din kodutveckling betonar världsberedskap måste du förstå lokaliseringen eftersom dina designbeslut påverkar översättarens arbete.