2010-06-02 2 views
3

Когда я недавно спросил об использовании Ruby, кто-то сказал мне, что это хорошо для прототипирования. Я в основном знаю, что это значит, быстро получите самую основную информацию о вашем приложении и работайте, посмотрите, есть ли концептуальные проблемы, а затем добавьте остальные.Что означает «прототипирование» на практике?

  • Я прав, как я понимаю прототипирование?
  • Что будет конкретным примером прототипирования игры Змея в Ruby или на любом другом языке?
+0

Хороший вопрос. Я думал, что прототипирование просто делает проект в основном быстрее. –

ответ

6

Да, прототипирование служит доказательством концепции, чтобы обеспечить то, что вы хотите построить, выполнимо. Что-то может быть оставлено в прототипе, может быть как обработка исключений, каротаж и т. Д.

Часто случается, что команды переходят с прототипа на реальный код «на лету», то есть просто продолжаются так называемый «прототип», , за исключением того, что он сейчас становится реальным кодом.

+0

Я не могу согласиться больше: после того, как он показал, что он должен был показать, выбросьте свой прототип. –

1

Да, это хорошее базовое описание прототипов. Это просто работает с фондами, чтобы вы знали, что это можно сделать, и что это соответствует вашим потребностям.

Примером игрового прототипа Snake будет змея, которую вы можете перемещать вверх, влево и вправо, есть что-то, может быть, есть один блок в середине доски, чтобы маневрировать вокруг, а змея растет, когда она что-то ест. Таким образом, у вас не было бы экрана заставки, или отслеживать высокие баллы, или иметь разные уровни. Просто основы игры.

2

Для многих клиентов, описывающих, что приложение будет делать, или перечисление набора требований, недостаточно, чтобы они могли полностью понять, как это будет работать. Это приводит к печально известным изменениям в середине проекта и ползучести области. Один из способов смягчить это - создать броскую версию, которая позволяет им увидеть «рабочий» пример того, как будет работать реальное приложение.

Он часто может функционировать как доказательство концепции, но я считаю, что общение с клиентом является более полезной целью прототипа. В частности, вы можете захотеть сделать прототип с использованием другой технологии - Ruby/Rails, скажем, или чистого Javascript, чем будет использоваться конечное рабочее приложение. Если это так, по-прежнему существует доказательство ценности концепции с точки зрения используемых вами алгоритмов или способов подключения к другим системам, но опять же, фактический код будет выброшен.

Итак, часть вашего описания, с которой я бы согласилась, это «добавить остальное» - я бы выбросил прототип и начал все заново.

Смежные вопросы