如果在F#中,我有类似的方法:

drawBox
drawSphere
paintImage

是否会将它们转移到C#,完全一样?

如果真是这样,那么它不会破坏C#中的命名约定,因为C#中的方法应该是PascalCase?

还是应该在F#中使它们成为PascalCase来解决这个问题?

最佳答案

您应该遵循F# Component Design Guidelines

值得注意的部分是:

  • 对于面向对象的代码(包括面向F#的库),请使用.NET命名和大写约定。
  • 对于F#模块中的公共(public)功能和值,请使用PascalCase或camelCase。
    camelCase通常用于设计为不合格的公共(public)功能(例如invalidArg)和“标准收集功能”(例如List.map)。在这两种情况下,函数名称的行为都非常类似于该语言中的关键字。

  • 切片的另一种方法:
  • 成员和类型应始终为PascalCase,就像C#
  • 模块中的
  • 让绑定(bind)实体可以是camelCase,但是这些东西通常不是您要从打算由C#
  • 消费的库中公开公开的东西

    09-06 04:18