c# - 如何制定标准(C# 与 VB.NET)

标签 c# vb.net

所以,我不希望这成为 C# 和 VB.NET 开发人员之间的一场口水战。这纯粹是从开发部门的角度来看。多年来,我们一直是一家 VB.NET 公司,但这主要取决于我们聘用的人员。该要求最近已被搁置,因为我们招募了 2 名专攻 C# 的人。在为这家公司转换为 VB.NET 之前,我曾经是一名 C++/C# 人员。

那么,无论是在雇佣基础上还是在可维护性基础上,对于必须处理这个问题的每个人来说:你如何处理 future 选择的标准化语言?我倾向于插入 C#,因为这将使这里有 3 个可靠的 C# 开发人员。但只是好奇大家对此有何看法。

最佳答案

作为在混合商店工作的人,同时使用两者并不难。但是,拥有一个标准可以更轻松地来回移动代码是有帮助的。以下是您的标准的一些想法:

对于 VB 开发人员:

  • 禁止在新代码中使用旧的 vb6 风格的函数。我说的是字符串和其他函数(Len、InStr、Replace、UBound 等)。转换运算符(CInt、Cstr 等)仍然可以,因为它们是语言运算符,但更喜欢 Convert.To___() 函数,以便轻松地与 C# 进行转换。
  • 需要Option StrictOption Explicit。通过将其作为要求而不是强烈建议,您将放弃一些动态类型的酷炫,但保持代码与 C# 的对等是值得的。
  • 标准化“+”与“&”的字符串连接(如果您尚未使用 StringBuilder)
  • AndOr更喜欢AndAlsoOrElse

对于 C# 开发人员:

  • 不允许仅大小写不同的名称。这尤其包括与类型名称基本相同的名称 (SomeType sometype = ...)。告诉他们改用 _ 前缀(而不是“m_”)。无论如何你都应该这样做,但这在混合商店中尤为重要,因为该代码将更难在 VB 中使用。

对于两者:

  • 不允许 ArrayLists 和其他非泛型集合(因为它们不仅是邪恶的,而且 VB 和 C# 处理所有必需的转换非常不同,即使由于 CType 而使用严格选项)

如果这样做,两组代码之间将几乎没有真正的区别,并且您已经迈出了第一步,教 VB 开发人员像 C# 开发人员一样思考。

关于c# - 如何制定标准(C# 与 VB.NET),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1522422/

相关文章:

vb.net - .exe 不是 Windows XP 上有效的 Win32 应用程序

vb.net - 系统找不到为程序集指定的引用

mysql - .FILL 不适用于 NULL guid

c# - 重用 Azure 服务总线中的连接

c# - 盒子对撞机没有捕捉到鼠标按钮按下事件

javascript - 基于JS MessageBox执行OnServerClick 是/否选择

VB.NET Windows 窗体上下文菜单位置

c# - 无通用方法 'ThenBy'

c# - 带有 EPPlus 解析问题的 CSV

vb.net - 这个 C# 'for' 循环的 VB.NET 等价物是什么?