Python vs C#

转载 2006年06月04日 12:05:00
> I've used Python for most of my university projects so far (at least
> where I could choose what to use), and I've had professors look at me > asking why I chose "an outsider" like Python over languages (considered
> to be "stronger") such as C++ and SML (whatever...).

> They only asked until they had a look at the code I had produced. :)

Likewise. And I actually succeeded in getting several people
interested. I love Python. But I love C# just as much and it is hard
to say which one I love better.

No too long ago, I had to create a tool for an information retrieval
project. I needed RegEx, GUI, Containers and Database features. And I
needed to make this fast. First I looked at Delphi. It had by far the
BEST GUI framework. Nothing else even comes close for GUI RAD. In most
cases, I just need to go a web site like www.torry.net and simply pick
from a choice of open source components. BUT it did not have RegEx.
Sure there was a lib or 2 out there but nothing standard. Same story
with containers.

Then I started with Python. Python had everything I needed. But my app
was GUI rich and it was taking too long to layout the interface. Even
with Boa Contructor, it still was taking a while. I had already
finished writing most of the classes for the app.

I switched to C#. Surprise. It took me hardly any time to port the
Python code to it. For everything I needed from Python, I had direct
analogues in C# (at least in the context of my app). And I finally
wrapped everything up quite quickly. I enjoyed C# as much I enjoyed
Python. Of course, the user was quite dismayed when I told him about
the 28 MB of dependencies. But the software did exactly what it was
expected to.

As for static typing, that never slows me down. What makes C++ slower
to program in not declaring types. It's the memory details to watch,
complex developmental cycles (not just compile time), lack of quick
libraries (batteries included) that we get with languages like Perl
and Python etc.

What enhanced my C# experience has a lot to do with mature tools than
with the language per se. The VS2003 IDE is far more complete than
PythonWin and Boa. Code Completion, Help integration for example is
far more mature and often means I rarely have to refer to the docs.

The standard library is fantastic as well. MS finally made a
developmental tool that is hard to point fingers at.

Personally I would like to see Python in a .NET environment. Not some
silly IDE add-in like Visual Python. One comment in this thread was
that Python's dynamic typing makes it difficult to port it to .NET.
But Perl is dynamically typed too. And ActiveState has a feasible .NET
language with Perl. What gives for Python? I don't know much about the
language internals but I believe true integration of Python into VS
will do it a world of good.

Adding onto "what C# can do that Python can't?", I am now developing
an app for the PocketPC with the Compact Framework in C#. The app is
every bit as professional as an experienced programmer might have
developed with eVC. And I was able to do it in a fraction of time of
it might have taken with C++ and MFC and this is my FIRST PocketPC
app. Python cannot do that at this point of time.

Similarly ASP.NET like development experience is hard to get from
Python at this point. Yes! There are several webapp frameworks for
Python and then there is Zope. But ASP.NET is something else and suits
certain kind of web apps quite well (Though Zope is way to go for
CMS). I am sure Python community will catch up eventually to this
paradigm but for now it doesn't.

相关文章推荐

vs2013 python 版本

  • 2015-04-25 19:19
  • 1.18MB
  • 下载

VS2010 C#创建ActiveX控件

VS2010 C#创建ActiveX控件 1、File-->New-->Project,弹出 New Project窗口; 2、在左边的 Installed Templates -->Visual...
  • cai5
  • cai5
  • 2012-05-07 15:28
  • 7993

PYTHON TOOOL FOR VS

  • 2015-09-03 00:50
  • 6.33MB
  • 下载

.net打包/C#WinFrom程序打包/图解.net打包/.net安装部署图解/VS2008项目的安装与部署图解(一)

一、应用程序文件夹操作 1、新建一个安装项目,起名“测试打包” 这里要记住路径了,不然,打完了找不着安装包在哪里,可就说不过去了,呵呵! 2、这里就会出现三个文件夹,不用多说一看就明白意思,...

boost_python静态库vs2003

  • 2014-12-26 14:15
  • 13.02MB
  • 下载

C# vs2008 创建Windows服务程序,打包成安装文件

c# 开发windows服务程序。 一个简单的服务程序示例。 归纳了几点。有不足之处,请赐教。 一、创建服务程序 1. 菜单栏“文件”--->“新建”--->“项目”,在项目类型中选择“w...

vs2010python插件

  • 2015-08-18 13:27
  • 4.03MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)