WPF - 创建一个真实世界的应用程序,专注于主要目标 - 不要偏离

时间:2010-09-10 21:40:29

标签: wpf focus

我知道标题真的不清楚,所以给我一点时间:) 我是一名职业编程人员,在工作中做很酷的事情(控制台游戏),但我有一个关于应用程序的想法(现在几年;)),我想在家里创建。

凭借15年的经验,我不想陷入想要自己做所有事情的陷阱 - 我想尽可能多地借用或偷取所有琐碎的东西,所以我可以专注于我想做的事情。 但是我想要一个像人们期望的那样有效的应用程序,人们习惯了所有的花里胡哨。

这意味着我需要创建一个应用程序(在我的例子中)类似于工作区界面, 和undo-redo系统, 持久性(序列化/加载和保存), 最好是VisualStudio类型的可停靠界面,以便用户可以决定他们想要的样子。 (另一方面,它不是编辑器 - 更像是Mac的Quartz Composer!)

知道所有这些东西以及如何从头开始编写它们,我只是不想打扰 - 我想花时间写自己很酷的东西,而不是写一个撤消 - 系统或对接系统或其他。

所以我想拼凑我的申请,窃取我可以窃取的东西, 专注于我想要创造的东西。

到目前为止(没有编写任何代码)我发现了这样的事情:

...

最后的主要问题是: 如果你正在做一个需要半专业的爱好项目,但你只想专注于有趣的东西...... 你的方法是什么?

你能推荐一个框架,你能告诉我你之前是怎么做到的吗?

你是如何避免把时间花在与你真正想做的事情完全无关的事情上?

2 个答案:

答案 0 :(得分:3)

有15年的经验,你可能已经知道了大部分......但是因为你问我无论如何都会提到它。 ;)

作为一个专业人士(半职业或非职业人士)的一部分是做无聊,烦人的部分,做得很好,充满信心。也就是说,在一个爱好项目上做无聊的事情可以杀死它。你会失去兴趣,而曾经是个好主意的东西现在是你磁盘上的一个废弃项目。

当图书馆没有提供您想要的内容时,从专业角度讲,您有两种选择:

  1. 缺少的功能至关重要:在这种情况下,您必须自己编写至少一些功能。
  2. 缺少的功能并不重要:在这种情况下使用库并接受它可能存在的任何缺点。
  3. 然而,由于这是一个爱好项目,你必须考虑一个额外的事情:如果你选择选项1,你会对整个项目失去兴趣的风险是什么?

    为降低风险,我看到了一些选择:

    • 你可以从一个简单的实现开始,花费很少的时间,但将允许你继续工作有趣的东西。随着您的项目成型并接近完成,您可以更有动力改进“最后一项功能”。
    • 如果可能的话,您也可以在没有无聊功能的情况下发布应用程序,让用户向您施加压力。立即感谢这样做可能会激励你更多。

    至于做不相关的事情......如果它不相关,那你最初是怎么做到的?要么它很有趣而且你很开心,那么我认为没问题。或者它并不好玩,与项目无关。在这种情况下,就停止这样做。

答案 1 :(得分:1)

我可能会尝试尽可能多地使用现有框架,以便最大限度地利用“有趣”的东西。在这种情况下,我会说你想要使用现有的轻量级mvvm框架之一,例如:

Caliburn Micro
MVVM Light

这两个框架都很小,并且在执行MVVM时需要花费很多工作。