我是构建新的ASP.NET 3.5 Web应用程序的开发团队的一员。我们两个是C#编码器,另一个是VB.NET编码器。
我知道我们可以在每个项目的基础上混合语言,并且可以用一种语言构建类,这种语言继承自另一种语言中用不同项目编写的类(我们已经在做),但我可以看到我们遇到的情况是,我们最终可能会遇到各种项目DLL之间的循环依赖关系。
除了简单地拥有大量项目(更多地关注更多图书馆)之外,您如何在自己的项目中管理这种情况?
注意 - 我认为这个问题与我能找到的唯一类似匹配(this one)不同,因为我们不想使用不同的语言,以便利用每个特定的功能se,而是利用我们可用的开发人员资源(即一个开发者恰好只是VB.NET)。
答案 0 :(得分:4)
我说实话,我会让vb.net的人转到c#。
迟早你会希望他处理一个c#项目的部分解决方案。在转换到新语法时,它正在创建的人工障碍相对简单。
大多数开发人员都欢迎有机会过渡到c#。
我最近参与了一家大公司的决定,转而从vb.net转到c#,我们发现这增加了士气,更容易找到好的候选人。
答案 1 :(得分:3)
如果您的商店主要是C#
而且您真正想要开发项目,我会鼓励其他开发人员学习C#
而不是因为缺乏知识而导致您的项目受到影响你的一个团队成员这不是要放下你的其他团队成员,但如果他/她对.Net一般有很好的把握,那么这个人就没有理由不能学习C#。
我们公司混合使用两者,然而,使用VB.Net的选择总是取决于我们是否将现有的VB6应用程序移植到.Net,在这种情况下使用VB.Net是有意义的必须重写代码(在大多数情况下)。
但是我们永远不会让开发人员的技能决定是使用C#还是VB.Net,我们会选择最适合这项工作的工具,这应该始终是决策点。
答案 2 :(得分:1)
如果可能,我会避免这种情况。尝试给VB编码器改进他们的C#。它不一定是立即的,让他们现在写VB直到他们对C#感到满意为止,然后你可能想回去并将旧的VB重构为C#。它们已经习惯了.NET库和工具,它主要只是语法(但是,有一些语言差异)。
我建议将其用于将来的维护 - 您必须使用两种语言维护和调试代码。如果你们都知道所有语言都不是问题,但你能确保永远这样吗?