代码之家  ›  专栏  ›  技术社区  ›  dar7yl

我应该为桌面Windows应用程序使用哪个开发平台?

  •  3
  • dar7yl  · 技术社区  · 17 年前

    在做了一段时间的Web开发之后,我遇到了一个新的客户机,他希望一个简单的数据库应用程序在InterWeb之外运行。

    他对使用微软产品非常坚决。”我们不想让“公开来源”成为他的立场。

    我已经很久没有做桌面开发了,我的大多数工具都生锈了,没有许可证,或者只是一文不值。我最近一直专注于L.A.M.P.应用程序,但这并不能完全转移回桌面环境。

    一些选项:

    database:  MySql (my fav), Access, MSSql
    language:  C++, VB, PHP, Java, C#
    

    我一直在关注access/visualbasic,不是因为我非常喜欢它,而是因为它的设置和部署很简单。对于初学者来说,数据库服务器(mysql、mssql)可能太难部署/维护。即使从纯粹的观点来看,C++是更好的语言,但它会花费太多的精力来引导应用程序(IMHO)。Java太笨重了(再次imimo)。

    另一个考虑因素是成本。虽然我可以说服他获得适当的软件运行时许可证,但我可能无法让他购买必要的开发工具,而且当然,项目支付的费用不足以证明大量购买可能不会再次使用。

    我非常感谢您对平台选择、开发工具和应用程序框架的投入。

    编辑23-MAY-09

    谢谢大家给我的好建议。

    我已经订好了C快车。到目前为止,我已经避免学习C语言,但是还有什么语言?我还有一整周的时间来加快速度。

    我正在考虑是否使用Access或MSSQL(Express)数据库。使用Access,我可以将数据库部署为独立文件,但MSSQL要求安装数据库服务器。(AFAIK)

    客户端要求应用程序安装在多个位置,其中一些位置是移动的,没有连接到InterWeb。骰子部分是核对数据库的所有副本,并确定哪一个是行家版本。

    10 回复  |  直到 11 年前
        1
  •  7
  •   tvanfosson    17 年前

    我愿意和你一起去 Express editions C和MSSQL。免费且易于使用/设置/部署。下面是一些 general material 特别是关于使用Windows应用程序的VS Express版本。

        2
  •  2
  •   corlettk    17 年前

    我建议: 只需使用access。 它适用于小型、简单的单用户数据库。它不仅仅是“数据库”,它本身也是“数据库应用程序”和“数据库应用程序开发环境”。也就是说:将数据库、CRUD表单和简单报表组合在一起是非常迅速和容易的;内置的VBA处理大多数业务逻辑,如果需要做任何“有趣”的事情,您可以随时调用C DLL。

    告诉客户他们需要贷款给你 这个 开发期间的生产箱(足够公平),该访问(无需提及哪个版本)约为200.00美元。

    不付钱的顾客得到他们想要的,而不是他们需要的。

        3
  •  2
  •   BenMorel Manish Pradhan    12 年前

    C+msaccess/mssql(express)=利润。

    我不清楚您的具体要求,但我建议您:

    如果你有预算:

    • Visual Studio专业版
    • MS SQL或访问
    • 窗体和的DevExpress组件 数据库持久性。

    如果你没有预算

    • Visual Studio速成版
    • MySQL
    • NHiberinate或Linq2特性
    • WPF或Windows窗体
        4
  •  1
  •   ChrisW    17 年前

    我不知道为什么您认为另一个数据库引擎比MS SQL更容易管理。有一个免费的啤酒版的MS SQL称为“Express”,可能会适合。它支持与完整数据库引擎相同的所有DDL和SQL功能:以防您需要它们;它的大小和CPU数量有限。

    同样,还有开发人员工具的免费/快速版本,它们并没有缺少太多的功能(最明显的可能是编写安装程序的能力,但还有其他的免费方法)。我不知道PHP或Java,但是如果我在C++和C语言之间有一个选择(我很熟悉这两种语言),我会说C语言实际上是适用于大多数应用程序,除了可能是软实时的,更容易和更愉快。

        5
  •  1
  •   Jesse Weigert    17 年前

    我的首选将是C_与MSSQL Express。您可以为开发环境使用Visual Studio速成版。

        6
  •  1
  •   stukelly    17 年前

    你考虑过吗 Delphi C++Builder free versions 可用。

        7
  •  1
  •   Dan Rosenstark    17 年前

    Microsoft Visual Studio有价格便宜或免费的速成版。这就是说,选择是显而易见的:带有C_或VisualBasic.NET(这只是一个语法问题)的WinForms与MySQL后端(用于解决成本问题)对话。

    微软的WinForms很棒,但仅限于Windows(尽管是单声道)。享受这个项目。在我看来,这比台灯有趣多了,但并没有那么普遍。

    编辑: 如果你有额外的时间和耐心(当然,你必须吃掉时间,而不是为学习时间买单),尽管C非常聪明和成熟(即使在.NET 1.1中也是如此),你可能想用.NET的一个python变体来编写这个应用程序。这就是我要做的…python有大量的追随者,可能会在非微软的未来出现。另一方面…好吧,如果你是单声道的,它可能会出现,但如果不是,它就像学习意大利语:在意大利很好,但在其他方面没用。(我应该知道,这是我在威尼斯写的…)

        8
  •  0
  •   Joel Lucsy    17 年前

    c或vb.net,包含用于数据库的sqlite.net。几乎是跨平台的。

        9
  •  0
  •   Paul Sweatte    17 年前

    如果您需要一个本地数据库,一个文件(.dat)或从您的IDE(BerkeleyDB)或Sphinxsearch()建议的相关排序顺序通常是用户想要的,并且没有数据库只需要根据文档或图形类型进行I/O。

        10
  •  -1
  •   Syed Tayyab Ali    17 年前

    如果您正在桌面上开发应用程序。我会说

    • 脚本语言:ASP.NET(C)
    • 数据库:MS SQL 2005
    • 服务器:带IIS 6的Windows Server 2003