每个工具都有他的局限,需要看具体看发什么方面的软件,适不适合自己的需求。有些软件用C#可能很快,有些可能用C++就更适合。所以最好是具体情况具体分析,可以先去看看这个开发工具的范例,开源代码什么的,然后再决定。
c#的优势是服务端开发,桌面开发就略显笨重了,调用个WINAPI这么简单的事都很麻烦,而且在C#上投入的学习成本也不低,我就见过在学校学了好几年的C#出来写个小工具也困难的。.net framework版本兼容性也不是很好发布是个问题,C#有很多强大的反编译工具能还原源代码 dotPeek ILSpy等等工程文件都能直接复原出来,这在客户端是个问题。靠谱一点桌面软件还是用VC++,Delphi什么的,不想在桌面开发上过多投入, 可以考虑AAuto,AAuto才6.5MB,小轻快。AAuto里还可以直接嵌入PHP、C#代码啥的、可以支持C#写的DLL,另外AAuto可以用HTML,CSS开发界面非常方便,可以嵌入HTMLayout、IE内核、wekit内核、chrome内核,几句代码就可以搞一个漂亮的界面出来,这对于有PHP基础的就非常有优势了,可以参考开源项目斌歌豆瓣FM客户端
http://bbs.aau.cn/forum.php?mod=viewthread&tid=10977 作者原来就是玩PHP的,学AAuto很短的时间搞出这个软件,界面非常漂亮。
我见过不少原来用PHP把AAuto玩的很好的,例如:劲龙の星星
一直都在写PHP的程序,对桌面应用有狂热的向往,但是用过C#,JAVA,都对他们的类库吓坏了。更为写一个小小的桌面应用就几十M的程序包需要发布,没有兴趣继续下去了。现在用PHP+easyUI。做一些普通的应用都还是够用了,但是很多事情不是他们能完成的,对桌面应用的情结涛声依旧,终于让我找到快手(AAuto)这个桌面开发语言了,虽然觉得还有很多方面不尽人意(可能是我接触时间太短的原因)。但是,他的快速和简单让我感觉非常HAPPY!下面是我做的一个web服务器端的控制、监控的程序,有界面还有托盘,只有小小的几百K,天那,不敢想像,一切来得太简单了。我记得我以前用C#写过类似的,最后打包十几M,还要去下载什么.net的解析器,痛苦啊!加起来和服务端程序差不多大咯。