目前哪些Windows GUI框架值得学习? [英] Which Windows GUI frameworks are currently worth learning?

查看:431
本文介绍了目前哪些Windows GUI框架值得学习?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我打算编写一个Windows应用程序来帮助自己完成一些探索性测试任务(笔记记录,数据生成,缺陷记录),并且我在选择框架/语言的早期阶段陷入困境。我唯一的经验是网页开发,从我所看到的,WinForms,WPF,Silverlight,Swing等都同时过时和蓬勃发展取决于你问的对象。

I'm planning to write a Windows app to help myself with some exploratory testing tasks (note taking, data generation, defect logging) and I've got stuck at the early stage of choosing a framework/language. My sole experience is with web development and from what I can see, WinForms, WPF, Silverlight, Swing etc are all simultaneously obsolete and thriving depending on who you ask.

虽然我的主要目标是创建应用程序,显然我想学习一些有用的东西,而不是通过在工作中的项目中看不到的东西来学习技能。人们建议学习哪些Java或C#框架?

While my main aim is to create the app, obviously I'd like to learn something useful while doing so rather than picking up skills with something that's never going to be seen on a project at work. Which Java or C# frameworks would people recommend learning?

推荐答案

注意:考虑何时发布此答案(2012年)。从那时起,情况发生了一些变化,例如 Silverlight 已被弃用。

Note: consider when this answer was posted (2012). Since then, things have changed a bit, for example Silverlight has been deprecated.

就业
好​​吧,现在大多数公司(至少大多数来自阿曼和阿联酋的公司,我住的地方)都在慢慢迁移到云端。但是,本机应用程序开发仍有一些机会。现在最苛刻的框架是,(不..不是 WPF ),它是 Windows窗体

为什么普通的旧Windows窗体而不是令人敬畏的WPF?一个原因,遗留应用。如今大多数公司只开始小规模的GUI应用程序项目,主要是业务应用程序。为此,WPF将非常昂贵,因为他们已经拥有Windows Forms中经验丰富的工作人员以及许多遗留代码,但是对于WPF,他们将不得不创建一个新的代码库,而且风险很大。所以让你受雇的最好的事情是Windows Forms。

Why plain old Windows Forms instead of the awesome WPF? One reason, legacy apps. Nowadays most companies only start small scale GUI Application projects, mainly Business applications. For that, WPF will be very expensive since they already have a work-force experienced in Windows Forms, and a lot of legacy code, however for WPF they will have to create a new code-base, and that's pretty risky. So the best thing to keep you employed is Windows Forms.

对于新项目:但是,如果值得学习,你的意思是,新的,雄心勃勃的,富有魅力的。那么WPF可能是您的最佳选择。这取决于你的要求,真的。

For new projects: However, if by 'worth learning', you mean, new, ambitious and glamorous. Then WPF may be the best choice for you. It depends on what your requirements are, really.

现在,对于云。 Java FX和Silverlight目前都是正面交锋。然而,Java FX可能具有优势,因为它支持更多平台。但话说回来,Silverlight拥有微软背后的所有功能和资源,它是Windows Phone开发的理想选择。

Now, for the cloud. Java FX and Silverlight are both currently head to head. However Java FX may have an edge since it supports a greater number of platforms. But then again, Silverlight has all the power and resources of Microsoft behind it, and it's ideal for Windows Phone development.

为了进行比较,以下是每个工具包的结果:

For a comparison, here's what you get by each toolkit:

Windows Presentation Foundation


  • Microsoft的功能和资源

  • 创建新桌面应用程序的理想选择

  • Eye糖果

  • 很棒的API

  • XAML,将设计与逻辑分离的最佳方式

  • 为云创建应用程序(但它们仅适用于带有.NET的Windows)

  • Windows Phone可以运行WPF的子集

  • The power and resources of Microsoft
  • Ideal for creating new Desktop Applications
  • Eye candy
  • Awesome API
  • XAML, best way to separate design from logic
  • Create Apps for the Cloud (but they only work on Windows with .NET though)
  • Windows Phone can run a subset of WPF

Windows窗体


  • 曾经拥有微软的力量和资源,现在WPF拥有

  • 维护遗留应用程序的理想选择

  • 如果您是企业家,训练有素的员工队伍

  • 相当成熟的API
  • 支持比WPF更多的平台(通过Mono)

  • Used to possess the power and resources of Microsoft, now WPF has that
  • Ideal for maintaining legacy applications
  • A well-trained workforce, if you're an entrepreneur
  • Pretty mature API
  • Supports more platforms than WPF (through Mono)

Java FX


  • 为云创建应用程序

  • 由Oracle支持

  • 相当不错的API

  • 跨平台,在大多数PC上运行,智能手机都有问题。

  • Create Apps for the Cloud
  • Backed by Oracle
  • Pretty nice API
  • Cross-platform, runs on most PCs, smart phones are a problem.

Silverlight


  • 为云创建应用

  • 由Microsoft提供支持

  • 非常棒的API

  • XAML

  • 跨平台,在Mac上运行PC,在Windows Phone上运行。

  • Create Apps for the Cloud
  • Backed by Microsoft
  • Pretty awesome API
  • XAML
  • Cross-platform, runs on Mac and PC, runs on Windows Phone.

GTK#


  • 跨平台,在大多数PC上运行,无需智能手机运行。

  • 支持开源世界

  • Mono认可

  • 非常适合为Gnome创建应用程序。

  • Cross-platform, runs on most PCs, runs on no smart phone.
  • Backed by the Open-Source world
  • Endorsed by Mono
  • Ideal for creating Apps for Gnome.

Swing


  • 跨平台,在大多数PC上运行,智能手机是个问题。

  • 非常成熟

  • 使用Java2D创建2D游戏的理想选择

如你所说:


虽然我的主要目的是创造应用程序,显然我想学习一些有用的东西,而不是通过工作项目中永远不会出现的东西来学习技能。

While my main aim is to create the app, obviously I'd like to learn something useful while doing so rather than picking up skills with something that's never going to be seen on a project at work.

嗯,你最有可能看到的框架(如果不适用于微软,甲骨文,谷歌等主流公司)是Windows Forms和WPF。至少这是大多数公司在这里使用的。所以这些是我推荐的。 JavaFX和Silverlight看起来也有潜力,可能会在不久的将来使用。

Well, the frameworks you are most likely to see at work (if you don't for mainstream companies like Microsoft, Oracle, Google etc. ) are Windows Forms and WPF. At least that's what most companies use here. So those are what I recommend. JavaFX and Silverlight also look like they have potential and may be used in the near future.

这篇关于目前哪些Windows GUI框架值得学习?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆