对于web开发人员来说,什么是好的桌面编程语言?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (51)

我想学习桌面编程语言,最好是C,C+或C#。我是一个PHP/HTML/CSS程序员,我想进入桌面应用程序。我需要一些非常强大的东西,我希望能够用WindowsGUI创建应用程序。

Stack溢出社区会推荐什么?在学习这些语言之前,我有什么知识吗?

提问于
用户回答回答于

编辑:

Web程序员想要创造Windows应用程序你推荐C?

显然是C#。

C#使用WinForms或WPF和.NET中所有新的Microsoft玩具构建Windows应用程序将更加容易,如果熟悉PHP,应该已经熟悉语法、面向对象的概念、异常处理等。

我建议你不要让你的生活变得复杂,如果你只想创建WindowsGUI的话,那就不要用C+来让你的生活变得复杂。它们确实提供了良好的教育经验,对于更高级的事物(例如,使用其他工具包进行跨平台开发)是有用的,但代价是学习曲线更加陡峭和生产率降低。

而且,如果你是Web开发人员,C#是语言的三个选项,你可以使用的网页。ASP.NET不是一个糟糕的框架,可能也值得研究。

用户回答回答于

首先简单地看一下C,即编写几个教程程序的水平。C是一个很小、定义得很好的语言定义(Kernighan&Ritchie-C编程语言),只有几百页长。尽管你对指针和递归的理解可能是一个挑战,但语言本身是足够小的,完全了解这种语言是可能的。编写C的乐趣之一是,不需要不断地参考文档来查看如何使用不太熟悉的特性x或库函数y,就可以达到这样的程度:只需编写代码就可以了。把学习C看作是奠定基础。

然而,要真正编写有用的应用程序,您需要使用C+或C#,这取决于您想要编写什么。C#可能会因为垃圾收集和一般易用性而在大多数面向业务的情况下得分,但是C+会因为高性能、低级别或游戏域而得分。还有大量的C+库代码可以相对容易地利用(而且是纯代码)。如果你的目标是写一些有特定问题的东西,那么这些代码的可用性很可能抵消C+在完成任务时所带来的更高的开销。

通过这个例子,我对SourceForf上的“图像”进行了过滤搜索,并返回了以下项目计数

C#:139

C+:569

即使有了一些更有商业意义的C+,分数仍然更高-“金融”。

C#:12

C+:32

无论是数学上还是技术上,分数都与C#-“分形”重量级

C#:4

C+:44

C:24<-(C+明确排除)

当然,这是一个相当粗略的分析,但例如,如果我的目标是编写桌面分形生成器程序,那么我会选择C+而不是C#,因为在C+中处理UI所涉及的额外工作很容易被C+中可用的大量示例代码抵消。代码和大量的UI需要处理,然后我会选择C#。

扫码关注云+社区

领取腾讯云代金券