Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

When should I use "Invariant Language (Invariant Country)" as neutral language for an assembly?

At the moment I can think of three cases:

  • assemblies that don't contain any resources
  • control libraries that only contain images (ie. ToolBoxBitmaps) within their resource files
  • libraries that contain only text used for throwing exceptions (we don't want the user to see those anyway, do we? ;-) )

Am I right with these cases or not, and are there others I don't see right now?

like image 943
takrl Avatar asked Jun 22 '11 08:06

takrl


1 Answers

Just because the a library contains only non-text resources does not mean that it doesn't need to be localized. Images may need to be localized too, either because they contain text, or because they are significantly influenced by cultural biases (granted, I know of no major applications that currently localize images for only that reason). There may also be language/culture-specific sound files.

Also, just because the only text in the library is exception text also does not mean that the library does not need to be localized. Even though you may not want the user to ever see your exception text, your developers will still see it; and not all developers speak the same language. All exception text in the BCL is localized for this reason.

I don't really see any advantage to ever using the invariant culture as the neutral language for an assembly. If you have resources in the assembly, you should use the native culture for those resources. If you don't, it doesn't really matter, so you might as well use the native culture in which the assembly is developed (or most likely to be used), so you don't have to change anything if you add resources in the future.

like image 110
David Nelson Avatar answered Nov 12 '22 14:11

David Nelson