【发布时间】:2010-06-02 15:59:44
【问题描述】:
当我最近询问 Ruby 的用途时,有人告诉我它对原型设计很有用。我基本上知道这意味着什么,快速启动并运行您的应用程序的基础,看看是否存在概念问题,然后添加其余部分。
- 我对原型设计的理解是否正确?
- 用 Ruby 或任何其他语言制作 Snake 游戏原型的具体示例是什么?
【问题讨论】:
-
好问题。我认为原型设计基本上只是更快地完成项目。
标签: ruby prototyping
当我最近询问 Ruby 的用途时,有人告诉我它对原型设计很有用。我基本上知道这意味着什么,快速启动并运行您的应用程序的基础,看看是否存在概念问题,然后添加其余部分。
【问题讨论】:
标签: ruby prototyping
是的,原型设计可作为概念验证,以确保您想要构建的东西是可行的。原型中可能会遗漏一些东西,比如异常处理、日志记录等。
经常犯的一个常见错误是团队在运行中从原型切换到真实代码,即只是继续使用所谓的“原型”,只是它现在变成了真实代码。
【讨论】:
对于许多客户来说,仅仅描述一个应用程序将做什么,或者列举一组需求,并不足以让他们完全掌握它的工作原理。这导致臭名昭著的项目中期变更和范围蔓延。缓解这种情况的一种方法是创建一个一次性版本,让他们看到真实应用程序如何运行的“工作”示例。
它通常也可以用作概念验证,但我认为客户沟通是原型更有用的目的。特别是,您可能希望使用不同于最终工作应用程序将使用的技术(例如 Ruby/Rails 或纯 Javascript)来制作原型。如果是这样,就您正在使用的算法或您可能必须连接到其他系统的方式而言,仍然存在概念验证价值,但同样,实际代码将全部被丢弃。
所以我不同意你的描述部分是“添加其余部分”——我会扔掉原型并重新开始。
【讨论】:
是的,这是对原型设计的一个很好的基本描述。它只是让基础工作,以便您知道它可以完成,并且它适合您的需求。
Snake 游戏原型的一个示例是有一条蛇,您可以上下左右移动,吃东西,也许在棋盘中间有一个街区可以移动,蛇在吃东西时会生长某物。因此,您不会有启动画面,也不会跟踪高分,也不会有不同的级别。只是游戏的基础知识。
【讨论】:
“适合原型设计”是“It's difficult to maintain”的礼貌表达方式吗?
【讨论】: