ios 8应用程序中应如何组织字符串?

ios 8应用程序中应如何组织字符串?,ios,string,nslocalizedstring,Ios,String,Nslocalizedstring,因此,我主要关心的是如何组织并以正确的方式进行。因此,我正在开发的应用程序中有很多字符串。一些字符串将被用户看到,但其中许多将是应用程序内部的。所以我的问题是我应该如何组织它们?我一直在研究NSLocalizedString,它看起来是一个不错的提议,但我认为把用户看不到的所有字符串都放在这个文件中是没有意义的。我的理解是,NSLocalizedString旨在创建适用于所有语言的应用程序。(我仍然不清楚它是如何工作的)并减少混乱、空间等。我目前想做的是将用户将看到的所有字符串放入Localiz

因此,我主要关心的是如何组织并以正确的方式进行。因此,我正在开发的应用程序中有很多字符串。一些字符串将被用户看到,但其中许多将是应用程序内部的。所以我的问题是我应该如何组织它们?我一直在研究NSLocalizedString,它看起来是一个不错的提议,但我认为把用户看不到的所有字符串都放在这个文件中是没有意义的。我的理解是,NSLocalizedString旨在创建适用于所有语言的应用程序。(我仍然不清楚它是如何工作的)并减少混乱、空间等。我目前想做的是将用户将看到的所有字符串放入Localizable.strings文件,以及文件顶部内部的所有其他字符串。这似乎是最好的做法吗?我遗漏了什么吗?任何建议/提示都会大有帮助


在此之前,感谢您抽出一分钟时间帮助新开发人员。:)

我在类的实现中将所有内部字符串声明为常量

NSString *const some_string = @"Some String";
这样,他们自动完成,所以我对类型安全性更有信心

如果我需要从另一个类中获取它们,您也可以在定义它们的类的头文件中公开它们

extern NSString *const some_string;

对于以后要翻译的用户可见字符串,localizable.strings绝对是最佳位置

这就是我想做的。谢谢你的快速回复!由于这些是常量,它们应该以前缀(推荐3个字母)开头,然后是大写字母,例如
MYASomeString
(而不是
某些字符串
)。在Cocoa中查找此模式的许多示例。对于字典键或通知名(通常后缀为
通知
),这是一种很好的模式。