Jump to content
  • Advertisement
Sign in to follow this  
UnshavenBastard

[.net] Advice needed: "Localizable" software, how do YOU do it?

This topic is 4979 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hallo there! I need some advice. What way ist the best (is there a best?) to make your .NET software support multiple languages/regions etc., which way do YOU make your software "localizable" and why? I read there is some built-in functionality in .NET to address this issue. Is this stuff good? Why / why not, what options are there? I'd like to hear (also) general answers here. On a more specific thing: One thing is, say, if you pay external translation offices to get your menu, dialog, hint and whatnot texts translated into the different languages, there might arise problems like if they only have some text file with string IDs and the corresponding, say english expression, and they translate it, it might end up making the user of the particular language laugh his ass off because in the particular context, the translation makes no sense... But you can't give the development environents to third party translators, so maybe it would be a good idea to make a tool program, where the translator sees how all will look like in the program to accordingly translate the texts? And maybe re-adjust some layout parts because say russian captions are in average 20% longer than english ones? In the game developer field those things seem to be a bit neglected and you see programs that... work in other languages, but there are some ugly translation artifacts when it comes to forms and menus, here and there... but as the important thing is the game and not the option menus... Well, what I want to say is that maybe GDN is not the best place to ask stuff like this, but after asking in lots other even subject specific forums I tend to always find my way back to GDN, it just happens to be my favorite programming forum and... here are lots of competent people, which seems not to be the case everywhere... hehe So, let me hear your suggestions/expericence and advice! thanks, unshaven

Share this post


Link to post
Share on other sites
Advertisement
Quote:
What way ist the best (is there a best?) to make your .NET software support multiple languages/regions etc.,
which way do YOU make your software "localizable" and why?

Depends on what kind of application it is and what your requirements are. You'll need to be more specific.

Quote:
I read there is some built-in functionality in .NET to address this issue.
Is this stuff good? Why / why not, what options are there?
I'd like to hear (also) general answers here.

The major .NET solution to localization is to use satellite assemblies for each language you intend to support. The article linked above is a good (but simplistic) overview of how this works. Essentially, a localization-enabled .NET application can determine at runtime which languages it supports and display strings/interfaces as necessary.

The primary disadvantage to using satellite assemblies/resource files is that a relatively minor change in interface (for instance, if you rename the 'View' menu to 'Popcorn') requires a change (if using resource files) or recompilation (if using assemblies) in all your satellite files. Localization therefore needs to be a final or last step in your development strategy if you take this approach.

There are several other approaches, but they're not as frequently used and serve niche application uses.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!