所以我有 node.js 应用程序,它向客户端公开一些 API 并连接到一些 SQL 数据库。 首先让我们介绍一些前提:
- 客户端必须使用带有 snake_case 的 API(在请求正文中发送的 JSON 对象中的键在 snake_case 中)。
- 数据库列名也是 snake_case。
问题是因为 javascript 标准/实践正在使用我想保留的 camelCase。
所以我看到有 3 个解决方案:
- 根据需要即时将数据从蛇 (API) 转换为 Camel (应用程序)再到蛇(数据库)。 这将为系统引入一些新层,并且所有这些都不会比其他解决方案复杂。
- 在 node.js 应用中使用 snake_case。 但无论我是否使用蛇,我使用的所有其他依赖项仍将是 Camel ,这并不能解决整个问题。
- 在 node.js 应用程序中混合 snake_case 和 camelCase。这是我想避免的事情:)
那你有什么建议?我最喜欢的是第一个解决方案,但如果您有其他未在此处提及的聪明想法,请随时告知。
最佳答案
作为 Occam's razor原则说,最简单的解决方案就是最好的解决方案。
如果您一方面有客户的要求,而node.js code style guides另一方面。我会采取满足两者的最简单的解决方案。外部 API 应该是蛇案例,在内部你可以使用 Camel 案例。如果您坚持一致性,您可以在任何地方使用蛇形案例,因为我认为客户的要求具有更高的优先级。
我真的会避免任何用于转换案例的额外层,因为它会给最终解决方案带来额外的复杂性,它可能会产生额外的错误,并且将来需要额外的维护。
关于javascript - node.js 中的 Snake_case 或 camelCase,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21503430/