2

是的,长标题。在过去 6 年左右的时间里,我一直在为工作和个人项目使用 PHP 编程,但我对桌面应用程序有一个想法(顺便说一下,它使用了一个 web REST api)。

我正在讨论如何解决这个问题 - 我在 Java、C++、Perl 和 Python 方面有一些经验,但从来没有机会或机会编写应用程序并将其分发给其他任何重要的人。

该应用程序将需要与 REST API(使用 OAuth)进行通信,以及访问文件系统,并可能进行一些图像处理(编码/调整大小,但这是一个很好的选择)。我一直在考虑 .NET,但 AIR 也是一种可能性(虽然我真的不希望有一个巨大的运行时,这将是一个系统托盘类型的应用程序)。

我不是在找人来写它,但我可以在正确的方向上轻推。

4

6 回答 6

2

在语言支持方面,您可以使用 C++、Java、C#、Python 等。实际上,我想说 C++、Java 和 C# 是大多数用户的选择。但请记住,C++ 和 Java 中的 GUI 支持很难学习和使用。如果您计划进行许多大型项目,性能是一个问题(无论是大小还是速度),并且您需要一个简单的安装过程,请使用 C++。如果这些最后的限制不适用(仅项目的大小和数量),请使用 Java。假设您必须花费相当多的初始时间来准备基础架构(库等)。

如果您的计划是更短期的(不是那么多项目,也不是那么大的项目),请使用 C#。它确实是最容易学习、使用和生成有效代码的方法,并且使用 Mono 项目,它不再局限于 MS 平台。

于 2008-09-26T16:41:43.287 回答
2

我会推荐Visual Studio Express版本。由于您有使用 C 风格语言的经验,请尝试从 Visual C# Express 开始。2008 SP1 版是一个非常强大的IDE,它是完全免费的。使用 Express 版本进行个人或小型开发的唯一缺点是它们没有类设计器并且您不能使用加载项。

请务必以 .NET 2.0 为目标,以覆盖更广泛的受众。如果 Windows XP 作为最低要求没问题,您也可以尝试使用 WPF 的 .NET 3.5,这使得应用程序开发更像是 Web 开发,这可能会帮助您进行用户界面设计,因为您来自 Web 背景。

运行时开销可以忽略不计,因为无论如何大多数人都会有一个正在运行的 .NET 2.0 框架(您不能从 Vista 或更高版本中卸载它,而且 ATI Catalyst 控制面板也带有 .NET 2.0,所以许多普通计算机用户都有它)。我认为它至少是 Windows XP 的推荐 Windows 更新。

注意:也有本地化版本,因此您不一定需要我发布链接的英文版本。

Delphi 也很好,但是原始 Delphi 的免费版本有一些问题,没有免费的 Delphi 版本,也没有 Lazarus 版本,甚至接近 Visual Studio 2008 所提供的。

于 2008-09-26T16:47:13.583 回答
1

如果您正在学习新知识,请跳过 Windows 窗体并直接转到 WPF。它与在 xhtml 中构建 UI 非常相似,但具有出色的数据绑定和较少的兼容性问题。

于 2008-09-26T16:55:48.603 回答
1

作为一名多年的 Delphi 程序员,你可以用它做任何你想做的事情。

我开始在工作中使用 C#。它也是一种很棒的语言,但对于分布式应用程序而言。.NET 框架仍然阻止我将它用于我的个人应用程序。

在我看来,Delphi 是一个不错的选择。如果你想要一个免费的 IDE,你可以看看 Lazarus/Free Pascal。

使用此选项,您可以构建您的 EXE,仅此而已。将 EXE 发送给客户,它正在工作。计算机上不需要 DLL/框架的东西。

当然,如果您使用数据库或第三方 DLL,则必须随其提供必要的东西。但它比带有所有 vbrunxx.dll 或所有 .NET 语言的 VB 更简单。

这是我的 2c ......我想我会为此而发火的!;-)

高温高压

于 2008-09-26T16:26:54.960 回答
0

如果您选择 AIR,您将拥有一个跨平台的解决方案。您还可以利用 Zend Framework 中的一些新 AMF 支持来获得更快、更高效的通信协议。XML 很大,JSON 更小,但 AMF 是二进制的并且压缩得多。AIR 还允许您以两种方式编写应用程序。第一种是传统的 Flash 播放器/Flex 组合,另一种是使用 AIR 提供的 API 编写一堆带有 Javascript 的 HTML 页面。Aptana 为 Eclipse 生成了一个功能免费的 IDE 插件,以便以第二种方式编写 AIR 应用程序。FlashDevelop 是另一个免费的 IDE,它更适合以 flash/flex 方式编写应用程序。如果您是学生,Flexbuilder 也可以免费使用 30 天,而且价格便宜(免费 IIRC)。

于 2008-10-16T15:04:50.870 回答
0

我也会选择德尔福。免费的 Turbo Explorer 非常适合快速项目,或者只是尝试一下(稍后再购买许可证)。如果您想成为免费的长期用户,请直接使用 Lazarus/FPC。

主要原因:单个 .exe 的可能性,与其他库的良好接口。

两者都支持多组套接字库以及与自由和非自由数据库的数据库连接。

.NET 适合企业使用,如果您的企业默认安装它(请记住,XP 附带 .NET 1.x)。对于广大用户来说,说服用户安装运行时是一件很无聊的事情,它不是病毒,而且它不能让你通过他们的监视器来监控他们。

于 2009-05-01T22:16:10.243 回答