作为一名 C# 开发人员,我从 Microsoft 的代码分析中受益匪浅。然而,在 F# 中,代码分析似乎并不是开发周期的一个组成部分。我花了一段时间才在 F# 项目上启用 CA,但这博客有帮助 http://blog.nikosbaxevanis.com/2013/09/08/how-to-enable-code-analysis-for-fsharp-projects/。现在我启用了 CA,它似乎会产生“错误”警告。例如,我将记录类型声明为
type Account = {Number : string}
我默认期望结构平等。这个博客 http://theburningmonk.com/2011/10/fsharp-referential-equality-for-tuples-discriminated-unions-and-records/演示了数量相同的 Acccount 类型的两个实例应该相等。为什么代码分析然后告诉我:“Account”应该定义运算符“!=”,因为它实现了 IComparable?当然,如果这是一个 C# 类,那么我将不得不跳过所有这些麻烦,但在 F# 中,这应该自动发生。
我正在应用“Microsoft 所有规则”规则集。这些是否不适用于 F#?如果适用,是否有我应该使用的规则集?
您还可以使用FSharpLint http://fsprojects.github.io/FSharpLint/ in Visual F# 电动工具 https://visualstudiogallery.msdn.microsoft.com/136b942e-9f2c-4c0b-8bac-86d774189cff/ :
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)