命名约定:寻找混合英语和域/工作流术语的替代方案

时间:2009-01-18 11:47:23

标签: programming-languages

虽然在我们公司所有人都是非英语母语人士,但我们会努力用英语撰写我们的文档,代码和评论,当然除了用户相关的东西之外几乎所有东西。只要业务术语可转换且对域不太具体,就可以了。但是,一旦商业术语过于具体,要么就没有适当的翻译,或者翻译只是听起来愚蠢而毫无意义。 在编写代码时,这会导致语言混乱。

您对此主题的体验如何?您是否通过各种方式避免在代码中使用愚蠢的名字,或者您只是忍受它?

3 个答案:

答案 0 :(得分:3)

我认为,当所有开发者和用户都使用普通的非英语母语时,试图用英语保留所有内容不仅无用,而且实际上有害。域名术语只是最明显的例子。

IMO所有域名条款应保留为母语,文档和评论也应如此。这允许开发人员专注于代码的逻辑而不是翻译问题。在代码中混合使用两种语言可能看起来很愚蠢,即使在单个方法名称中也是如此,但是IMO并不是一个真正的问题,而且当没有人真正从中受益时,要努力使用英语。

当然,这仅适用于所描述的场景。如果你是一家大型国际公司的一个部门,或者计划在国际上扩展你的市场,或者你的母语并不是很多人,那么这是另一回事。

答案 1 :(得分:1)

我没有这方面的经验,因为我是母语为英语的人。但是当域很复杂时,极限编程建议您使用程序员和客户都熟悉的比喻。

这可以适用于您的情况。

答案 2 :(得分:1)

我们公司存在完全相同的问题。我们尝试用英语编写代码和示例,但我们经常发现无法解决的情况,即我们的母语中的直接常用名称没有直接或未知的翻译或等价。因此,从我的观点来看,几乎不可能避免混合语言(尽管我的意愿,实际上Spanglish会成为未来的语言吗?)。

基本上这只是两件事:

  • 一般英语知识不足。
  • 并非每个人都是完美主义者足以花几秒钟才能在互联网上找到如何正确说出某些内容,所以首先想到的是代码。

这些的影响是:

  • 英语母语人士无法理解评论(因为使用的单词不存在或句子是源语言的字面翻译)。
  • 错误的朋友或发明的单词的翻译不正确。一个典型的例子就是将“实际”一词用于“当前”含义,因为它是“实际”在西班牙语中的含义。

对此的实际解决方案是尝试纠正这是攻击问题的根源:

  • 英语翻译课程(包括应用技术英语)应该是公司必须的,因此每个工人都可以达到最低水平的英语知识。
  • 通过定义代码样式表,强迫不那么完美的人遵循一些编码规则,甚至更好地建立一个QA部门来强制执行代码质量,评论语法和可读性。