C#比Python有什么优势

时间:2010-03-20 20:12:54

标签: c# python

我最喜欢Python,因为它具有出色的可移植性和编码的易用性,但我想知道,C#对Python有哪些优势?

我问的原因是我的一个朋友为一个在线游戏(UO)运行私人服务器,如果我愿意,他愿意让我成为一个开发者,但服务器的软件都是用C#编写的。我很乐意这样做,但是我没有时间做多种语言,而且我只是在考虑将C#作为Python之后的其他几个理由。

我这样做都是自学成才的爱好,顺便说一句

10 个答案:

答案 0 :(得分:13)

  1. Visual Studio - 那里最好的IDE。

  2. 在流通的静态类型语言中,C#非常高效。

答案 1 :(得分:11)

我们很多人真的like working with strongly/statically-typed languages。那是一个很大的问题。

答案 2 :(得分:9)

存在许多差异,优点和缺点。我想主要优点是

  • 优秀的Windows集成,包括访问所有标准GUI功能和其他库。
  • JIT编译,在某些或大多数情况下产生比Python更好的性能。 正如已经指出的那样,现在也可以在Python中使用。
  • 在Windows上,对C#的IDE支持可能更好。 Visual Studio是一个完善的高级开发环境,“Express”版本是免费的供个人使用。在非Windows环境中,它可能是不同编辑之间的平局。

其余的基本上取决于个人偏好(静态类型与动态,类似C语法等)。

答案 3 :(得分:3)

  • Microsoft ;支持C#(期待评论)
  • C#是typesafe,它有其优点。
  • 开发Windows应用程序时没有比这更好的了。
  • 它的语法设计得非常好。代码看起来很不错。
  • 它值得学习,因为编写了大量代码并正在编写代码。
  • 在Visual Studio中使用C#进行编码时感觉非常好。我仍在为Python搜索这么好的IDE。
  • 使用C#,你可以探索很多有趣的东西.NET,WPF,WCF,XNA,ASP.NET, Jon Skeet的博客...... 等。

答案 4 :(得分:1)

JITer,以及它可以产生更紧密的代码,因为它支持静态类型。 JITer可以通过使用其中一个非CPython实现来解决,或者使用psyco进行处理,但是静态类型不能简单地解决(我也不相信它应该是)。

答案 5 :(得分:0)

我发现使用不同的语言很有帮助,因为他们各自都有自己的优势。 Python非常强大,但在很大程度上依赖于良好的编码约定和实践来保持代码的可维护性。特别是,它不强制类型安全或绝缘,这意味着它易于滥用。 C#是一种现代的面向对象语言,具有强大的类型和其他功能,有助于实现绝缘和封装。它不是那么灵活,但我也发现更大的C#程序更容易维护(特别是当你从其他开发人员继承它们时。)

答案 6 :(得分:0)

嗯,编码的简易性值得商榷。当你考虑从IDE获得的帮助时(例如免费的Visual Web Developer),我发现C#更容易编码。

因此,如果您考虑Mono,可移植性就不那么重要了。在某些情况下,性能可能会更好。我发现.NET中的在线文档通常更好。

你考虑过IronPython吗?如果你们愿意使用其中一个带有DLR的.Net发行版(4.0是你最好的选择,但是有些DLR测试版是正常的),那么你可以编写C#代码和Python代码并拥有它们在命名约定之外的任何困难都可以协同工作。

答案 7 :(得分:0)

C#可以通过“非托管代码”直接访问指针,这可以在某些情况下提供性能优势。

答案 8 :(得分:0)

如果您更喜欢Python,但需要为.Net编写代码,除了IronPython之外,还有Boo,这是一种受Python激发的.Net语言(包括静态类型)。你可能想尝试一下。

答案 9 :(得分:0)

如果您对使用.NET框架不感兴趣,可以改为使用python和pyQt或Tkinter,因为Python现在具有对Visual Studio的IDE支持,称为Visual Studio的Python工具(PTVS),它为您提供语法提示你如何在Visual Studio中使用VB和C#。但是,如果您还需要使用.NET,请使用Iron Python,然后使用Python Tools for Visual Studio,在Visual Studio中选择编译器作为Iron Python。 Visual Studio在2013和2012版本中受支持。我会说它是python的最佳IDE,而且MSFT也支持它更多

点击此处链接 https://pytools.codeplex.com/

注意:您可以将ptvs用于2.7版或3.0版。我习惯使用2.7版本,但对于初学者我建议使用3.0,因为它比2.7版本有很多优点。但是不要在同一系统中安装它们。在安装PTVS之前,还要安装Visual Studio Shell Isolated,然后再进行集成。还要确保您的python版本与操作系统位版本匹配。

:)