如果在 F# 中我有如下方法:
drawBox
drawSphere
paintImage
会不会转成C#,一模一样?
如果是这样,那么它不会破坏 C# 中的命名约定,其中方法应该是 PascalCase 吗?
或者我是否也应该在 F# 中将它们设为 PascalCase 以解决此问题?
最佳答案
您应该遵循 F# Component Design Guidelines .
值得注意的部分是:
- 对面向对象的代码(包括面向 F# 的库)使用 .NET 命名和大写约定。
- 对 F# 模块中的公共(public)函数和值使用 PascalCase 或 camelCase。
camelCase 通常用于设计为不限定使用的公共(public)函数(例如
invalidArg
),以及“标准集合函数”(例如List.map
)。在这两种情况下,函数名称的作用很像语言中的关键字。
另一种切片方式:
- 成员 和类型 应该始终是 PascalCase,就像 C# 一样
- 模块中的 let 绑定(bind)实体可以是驼峰式命名法,但这种东西通常不是您从旨在供 C# 使用的库中公开公开的东西
关于c# - F# 类型如何转移到 C#?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3841971/