我正在从头开始一个新项目。我正在尝试确定是否应该使用C#的C#。无论哪种方式,它都将是它的MS Visual 2010 Express版本。
从应用程序使用的角度来看,我非常确定它对我想要构建的应用程序的最终用户无关紧要。
对我来说,虽然......两件事。 1)我需要使用数据库,并将使用MS SQL Server。这会影响C#还是C ++? (但我认为C#更容易......)2)有一个开源代码库,我可能在某些时候想要合并到我的应用程序中。它是用C ++编写的。
我可以编码。这些天C#似乎更容易。但是C ++会让我使用那个库......
我还应该考虑什么?
提前致谢!
-Adeena
答案 0 :(得分:7)
C#更容易。基类库允许与SQL Server建立有效的通信。这个应用程序将更容易维护。并且您始终可以使用语言的Interop服务功能从C#应用程序中调用C ++中的.dll writtern的外部方法。
另见:
答案 1 :(得分:2)
如果您认为C#更容易,那么使用C#,就开放源代码库而言,您希望在C#中使用Platform Invoke。
答案 2 :(得分:2)
你可以使用其中任何一个,最后出来OK。几乎所有软件工程的关键是降低总体维护成本,从这个角度来看,C#可能比C ++更容易维护。
您的数据库不会真正有所作为,因为这两种语言都是为与.NET框架一起使用而构建的 - 您可以使用语言集成查询(LINQ)将数据库表包装到实际对象中以帮助抽象数据库操作,这应该会让事情变得更容易。
编辑:
显然LINQ仅适用于C#。我一直认为它适用于整个框架......仅此因素就足以让你转向C#。
您可以使用P / Invoke从C#应用程序调用非托管C ++方法。
答案 3 :(得分:1)