Généralement, sur de nombreuses plates-formes, j'écris mes ressources de chaîne dans un fichier .resx ou .xml, puis je les utilise en utilisant une approche dépendante de la plate-forme.
Autrement dit, sur iOS, je les obtiens via NSBundle.MainBundle
et en utilisantContext.Resources
sur Android.
Quels sont les avantages de cette approche, et pourquoi ne pas l'avoir directement accessible dans le code, par exemple:
Dans un projet multiplateforme, n'importe quelle plateforme peut y accéder directement, sans intégration.
Il n'y a pas de soucis lors de la construction pour savoir si les ressources ont bien été construites.
- Le codeur peut utiliser des fonctionnalités telles que la gestion multilingue
Pour faire court: quelle est la raison pour laquelle les ressources de chaîne sont structurées de cette façon?
[Éditer]
Disons que mon fichier fait partie d'un projet "core" partagé entre d'autres projets. (Pensez à une structure de fichiers de projet multiplateforme PCL.)
Et supposons que mon fichier soit totalement similaire à un fichier .resx / .xml, ressemblant à ceci (je ne suis pas un pro en xml, désolé!): Paramètres Paramètres
Donc, il s'agit essentiellement d'un xml personnalisé, où vous pointez sur la clé / langue pour obtenir la chaîne appropriée.
Le fichier ferait partie de l'application, tout comme vous ajoutez n'importe quel fichier accessible dans une application, et le système pour accéder aux ressources de chaîne, codées à l'aide de PCL. Cela ajouterait-il des frais généraux aux applications?