C# 桌面应用程序?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/209069/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
C# Desktop Applications?
提问by geo
In looking at the use of C# in a ISV setting, I'm wondering what prominent C# based desktop apps are out there? I can think of only Paint .NET.
在查看在 ISV 设置中使用 C# 时,我想知道有哪些基于 C# 的突出桌面应用程序?我只能想到 Paint .NET。
Is C# a good idea for an ISV, or should one stick to more native environments like Delphi or even QT?
对于 ISV 来说,C# 是一个好主意,还是应该坚持使用 Delphi 甚至 QT 等更原生的环境?
Of course any experienced based advise or feedback would be appreciated.
当然,任何有经验的建议或反馈将不胜感激。
回答by JFV
I believe that MS use C# to build many of their apps both Windows and Web. At this time, C# is a great language to go with because of the flexibility of the language/framework.
我相信 MS 使用 C# 来构建他们的许多 Windows 和 Web 应用程序。目前,由于语言/框架的灵活性,C# 是一种很好的语言。
回答by TheSmurf
If you can control the system requirements for your application, C# is fine. Some end users still (even though we're nearly in 2009 now) object to a 40MB runtime for some reason, so if you're looking to deploy an application commercially, that may be an issue for you. In a corporate setting, though, where there is some standardization of software on users' computers, this is probably not a problem.
如果您可以控制应用程序的系统要求,C# 就可以了。出于某种原因,一些最终用户仍然(即使我们现在接近 2009 年)反对 40MB 运行时,因此如果您希望以商业方式部署应用程序,这对您来说可能是个问题。然而,在公司环境中,用户计算机上的软件有一些标准化,这可能不是问题。
Delphi and QT specifically are both problems. Delphi is effectively a dead language. Companies that are using it these days are, for the most part, porting their code away from it as fast as they can (job boards seem to be full of Delphi-to-C# migration jobs these days). You may like QT, but that moves almost as slowly as Delphi in the Windows world, so I would never consider it to be a real option.
Delphi 和 QT 特别是两个问题。Delphi 实际上是一种死语言。现在使用它的公司在大多数情况下都尽可能快地将他们的代码从它那里移植出来(现在工作板似乎充满了从 Delphi 到 C# 的迁移工作)。您可能喜欢 QT,但它在 Windows 世界中的移动速度几乎与 Delphi 一样慢,所以我永远不会认为它是一个真正的选择。
回答by Mitchel Sellers
Yes, C# can be used quite effectivly to build applications. In regards what applciations are out there, what are you looking for? Big apps, little apps?
是的,C# 可以非常有效地用于构建应用程序。关于有哪些应用程序,您在寻找什么?大应用,小应用?
I know of a big app that is built on the .NET framework (unsure if C# or VB) and that is Quickbooks.
我知道有一个基于 .NET 框架的大型应用程序(不确定是 C# 还是 VB),那就是 Quickbooks。
回答by harriyott
I believe TimeSnapper is written in C#
我相信 TimeSnapper 是用 C# 编写的
回答by StingyHyman
Who are your target users? Their needs will dictate your choice of language. C# and VB.NET are good general purpose langs, but if you are targeting Mac or *nix, you may want something like C++.
谁是你的目标用户?他们的需求将决定您对语言的选择。C# 和 VB.NET 是很好的通用语言,但如果你的目标是 Mac 或 *nix,你可能需要像 C++ 这样的语言。
回答by Sean
I think that Microsoft Expression Blend/Studio is written in C#
我认为 Microsoft Expression Blend/Studio 是用 C# 编写的
回答by Darren Kopp
The zune software (v2 and up) is written in c#. Oh, and Sage Timberline Office is written in .net (mostly).
zune 软件(v2 及更高版本)是用 c# 编写的。哦,Sage Timberline Office 是用 .net 编写的(主要是)。
回答by discomurray
Developing a Desktop applications in C# is great. Its not just for Web Apps.
用 C# 开发桌面应用程序很棒。它不仅适用于 Web 应用程序。
WinForms are going to save you huge amounts of time. It really is a first class citizen when it comes to desktop windows development. If interop is a problem you can always use P/Invoke and COM object wrapping that VS does for you.
WinForms 将为您节省大量时间。在桌面 Windows 开发方面,它确实是一等公民。如果互操作是一个问题,您始终可以使用 VS 为您所做的 P/Invoke 和 COM 对象包装。
Done right, it will be a breeze to maintain and update when the client changes their mind on what they want.
做得好,当客户改变他们想要的东西时,维护和更新将是轻而易举的。
Yes, the framework needs to be on the machine, But this shouldn't be a problem if they have ever used windows update. Nowadays what language doesn't come with a run time library. In VS you can create simple installers that include the runtime.
是的,框架需要在机器上,但是如果他们曾经使用过 Windows 更新,这应该不是问题。现在什么语言没有运行时库。在 VS 中,您可以创建包含运行时的简单安装程序。
Of course if your gonna deploy to Linux and mono, your mileage may very.
当然,如果您要部署到 Linux 和单声道,您的里程可能会很大。
回答by TraumaPony
Anything done for Robotics Studio, any XNA game (quite a few commerical ones are coming out now)
为 Robotics Studio 所做的任何事情,任何 XNA 游戏(现在有相当多的商业游戏即将推出)
回答by BlackWasp
I don't see why you would not use C# as an ISV. The problem is ensuring that your target market has the .NET framework. If you are using 3.5, you can build a mini version into your distribution though this increases the file sizes for downloads of course.
我不明白您为什么不将 C# 用作 ISV。问题是确保您的目标市场拥有 .NET 框架。如果您使用的是 3.5,您可以在您的发行版中构建一个迷你版本,尽管这会增加下载文件的大小。