我是一名计算机专业的学生设计一个项目,我已经开始想知道什么是好的实例或软件,甚至被正步是丰富的功能与普通用户良好的使用功能和太吓人了之间的五金行新用户。也可能有人推荐任何好的建议/书籍设计是功能丰富,但没有“臃肿”好质量的应用程序?

有帮助吗?

解决方案

  

“让一切尽可能的简单,而不是更简单。” - 爱因斯坦

     

“完美达到不在于无可添加,但时有没有什么可以带走。” - 圣·艾修伯


我并不想成为轻率,但这些报价真的是最好的建议。简单的设计应该是你的目标。这并不是说简单实现很容易!相反,它是相当困难的,但它是可能的。

试着思考的东西有点不同。而不是

  

我多少东西可以添加在这之前就显得有些力不从心?

  

什么是最少的特征和要素,我可以包括同时仍然为我的用户提供卓越的体验?

其他提示

下面是关于这一主题的呈现了良好的组幻灯片:的救援王妃2.0

企业的第一顺序应该只保持易用的应用程序。除此之外,所有我能说的是,写作特点提防一个假想的用户:确保有人确实需要它,你开始编码之前

作为一个直接回答你的问题:几乎所有的微软产品。我展示我的偏见这里,但微软必须保持自己的代码库,并在功能之上添加的功能,直到应用程序的原始功能几乎失去了吸积污物的土堆之下的强烈倾向。

看微软Word,例如;而你仍然可以只打开它,并开始打字,上帝,如果你想同时保留其余的重新编排您的文档的某个部分禁止。如果要生成一个目录,其中包括一个附录参考文献但愿。这类的东西是什么,是德rigeur的字处理器,和Word支持它,它只是支持它,你不能把它无需手工做的方式,几杯咖啡,和绷带以阻止撞出血的头在桌子上。

微软并不是唯一一家这样做;这件事情往往发生的时间,以各种产品;但他们是最坏的罪犯中,我找到了。

1:什么做你的用户需要和想要的,以及

2:哪些功能会让你有时间来实施

您的问题是相当普遍的。其功能构成臃肿?那种取决于是否你写的防病毒扫描程序,操作系统或一个字处理器。

有是“好”和“太多”之间没有明确的屏障。 然而,这取决于你想要做什么。

如果你正在开发一个SDK,我推荐几个小图书馆分裂你的实现(而不仅仅是一个大的SDL库,还有就是SDL核心,SDL_MixerSDL_Image等)

如果你正在开发一个应用程序,保持一个基于模块的系统和插件机制。 这样,新的特性可以更容易地添加,并且可以更容易地检测膨胀。

您可能会得到一个点要在其中添加新的功能有些会考虑“伟大”和其他“膨胀”。否则,你的应用程序可能会达到一个点,有些人会称之为“功能差”和其他人将其称为“刚刚够”。

这是不是一个确切的报价,但当时的想法是这样的:

  

一个的软件是不完美时,有没有更多的补充,但是当有没有更多的除去。

在本质上,更简单和更到了点是一个软件,就越好。

要获得优秀的软件设计实例,看看今天是受欢迎的节目。谷歌应用程序将是一个很好的地方去寻找。 Skype的也许。嘿,甚至StackOverflow上。 :)

如果你想恐吓,去CAD的世界。退房例如搅拌机。这是一个免费的3D设计软件。好工具我听说,但用户界面有那么多按钮/板/菜单/等。它使兔宝宝哭。不幸的是,我不能说,如果这将是一个“坏” UI的一个很好的例子。 3D设计是的非常的复杂的过程,所有这些工具都可能是在正确的地方。但它肯定吓人。 :)

有一个糟糕的UI设计,能够经常与自带propieritary硬件propieritary软件被发现。不幸的是我不能给你从我的头顶任何例子。

我总是倾向于设计我的项目的方式,他们只是骨架,其尽可能扩展。限制因素是性能,复杂或第三方-限制。结果 这样,您就可以完成基本结构之后添加额外的功能。用户也可以添加他的需要的功能。

这可能不工作了应该有没有太多的配置的良好的可用性GUI的应用程序非常好,但我坚持好这一方法对于那些我开发库。 (它们用于通过谁喜欢有一个高度modifable的软件其他编码器)

这不是很辛苦开发应用程序/ lib中这是臃肿特征。但它是开发一个应用程序,它可以通过其他开发者/用户很容易地扩展,以满足自己的需要。

所以你添加,取出的东西在任何时候制定一个广泛的插件系统。问题解决了。如果只有这是写作面条代码一样容易。 ;)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top