好问题。我也在为此苦苦挣扎。我的命名方案是:
1) 用户界面元素:
如果一个字符串只对应于一个 ui,我会根据控制元素和用途来命名它,以及它在控制元素的哪个部分使用。示例:
button_helpText;
control : button, purpose: help, context: Text;
2) 一般要素:
如果在 UI 上使用了一个字符串,但我想在另一个上下文中使用它,我只需保留前缀并添加一个后缀来更准确地描述目的/上下文。
helpMessageHeading;
purpose: help; context: a Message (abstract, could be a dialog), context_of_dialog: Heading; (the heading of a help dialog)
helpMessageText;
purpose: help, context: a Message (abstract, could be a dialog), context_of_dialog: Text; (the text inside a help dialog)
helpExplanation;
purpose: help; context_of_help: Explanation (just a explanation of the help topic)
3) 订购:
我主要根据它们的上下文对这些字符串进行排序,因为它是您通常搜索的内容。
<!-- buttons -->
...
<!-- dialogs -->
...
<!-- general -->
...
<!-- explanations -->
...
等等。所以我的列表通常在 UI 控件中分开,如果一个字符串没有绑定到它,它的一般精确上下文。为什么我使用精确的上下文?当你搜索一个字符串来描述你所做的事情时,关于这个字符串最独特的想法是它的精确上下文,所以这就是应该首先弹出的内容。但是当您使用自动完成时,您通常会搜索一般描述。我认为这种结构是一个很好的解决方案。
我对其他答案很感兴趣。