Should I make two versions of one program, each with different language, or add an option to change language? : <p>I have a program that I'm currently writing in English. In future, I would like to make the program multilingual, therefore I'm wondering what's the best option to do so. I thought about this two option for now:</p>

<ol>
<li>Enable users to change language in settings;</li>
<li>Select the appropriate language while downloading;</li>
</ol>

<p>With each option comes a problem:</p>

<ol>
<li>A ton of code dedicated to displaying one message in different languages;</li>
<li>I will have to make many versions just to change the language of the displayed text;</li>
</ol>

<p>Now my question is, which one of these options is more memory efficient and user friendly? Maybe neither of them are? Do you have any other option that is better than given two? </p>
