英语是描述Web服务(Rest、SOAP等)的标准吗



在我正在进行的当前项目中,我们讨论了用于描述路径名、字段、有效载荷等的语言(英语或西班牙语)。

我认为这是一个简单的话题,然而,我找不到一个准确的来源来描述英语应该是描述Web服务组件的标准。

例如,假设我们有一个Rest API,非常简单,使用CRUD创建用户

英语

POST/v1/users

GET/v1/users/{uid}

DELETE/v1/users/{uid}

PUT/v1/users/{uid}

西班牙语

POST/v1/usuarios

GET/v1/usuarios/{uid}

DELETE/v1/usuarios/{uid}

PUT/v1/usuarios/{uid}

我认为这不是问题,但是,我想知道我是否需要遵循一个标准,或者我使用哪种语言来描述Web服务的组件是否无关紧要。

也许,这是一个主要基于观点的问题,如果你认为是,请给我一个评论

作为一名以西班牙语为母语的人,我认为除了实际技术语言英语之外,没有任何技术理由编写API。

如果打算开发一个API,这对西班牙以外的任何人来说都是棘手的,我想这将是一条路。

然而,我看到这种情况在西班牙语软件项目中一再发生。我认为这是有害的。

哦,让我们看看日本最强大的科技公司之一乐天。乐天决定将英语作为所有员工的工作语言,尽管其大部分业务都在日本。

它告诉你一些事情。在全球互联的21世纪世界中,将您的产品瞄准最广泛的受众。

我无法想出一个公理化的理由(就像我说的"不要使用goto语句"一样。)但用英语以外的语言写东西是我不会做的。

我不认为有规范,但我只想说:其他语言的人可以通过多种方式使用您的代码。因此,坚持使用英语是让任何人都能理解和使用英语的更好方法。

我是一名母语为西班牙语和英语的人,在西班牙生活和工作。在我的许多IT软件开发项目中,我发现自己在国际团队中工作,与印度、法国和英国的人合作。在这些情况下,用一种所有人都通用的语言来理解是明智的。另一方面,我也参与过一些项目,客户只会说一种地区语言,不需要使用西班牙语和英语。这实际上取决于你的同事和最终用户。

使用另一种语言作为英语总是迫使你替换语言中的特殊字符,比如重音符号和ñ之类的东西。但这是可以解决的。

问题是:谁将使用您的服务?如果消费者不说西班牙语,他们肯定会欣赏英语。

然而,根据我的经验,你经常有非常特定的域名,有时无法正确翻译成英语,或者很难知道英语中的正确单词是什么,因为翻译人员经常为你的特定域名(西班牙语)单词提供奇怪的翻译。所以我看到了许多被翻译成英语的网络服务,但我仍然要问:这意味着什么?因为翻译没有意义。

因此,我的观点是使用西班牙语,除非您的网络服务实际上是在西班牙语世界之外使用的。因为如果它是在西班牙语之外消费的,那么一个好的翻译也是可用的。

我以德语为母语,我的工作语言主要是英语(在一家美国公司工作),尤其是在编码方面。我基本上所有的专业软件都设置为英语,我甚至不得不说,当我用德语看到它时,我会感到困惑;-)所以我的观点是,从我日常生活的角度来看,我甚至不会考虑使用我的母语进行编码。

然而,在更一般的层面上,我想说的是,API应该以这样的方式创建,即消费者可以很容易地从命名它应该做什么的端点中判断出来。因此,正如上面其他一些人所说的,我认为最终值得思考谁是消费者。如果你有一个封闭的目标受众,所有人都说相同的语言,没有计划对外公开API,那么我完全可以想象用这种语言制作端点标签。

还有两点值得考虑:-你能确定所有(未来的)开发人员都会说这种语言吗?这不会让他们感到困惑?-为API端点提供两种语言的标签怎么样?根据您使用的编程语言/框架,我认为复制端点可能非常简单,但调用相同的逻辑。我不确定这是一个好的做法,但如果这对消费者有好处,而且为了安全起见,你仍然想坚持工作语言,我可以想象。

我认为,如果您的团队(以及项目/公司未来的开发人员)和客户会说西班牙语,您可以根据需要使用英语或西班牙语。但如果你认为在任何时候一个非西班牙语的人会编码或使用你的API,你应该使用英语。

最新更新