Я уверен, что каждый имеет свой собственный рабочий процесс, но я думаю, что типичный один такой:
Укажите «домен» ваш проект. Это, наверное, звучит глупо, но прежде чем вы начнете, вы должны действительно подумать о том, что именно собирается ваш сайт. Он не должен быть конкретным вплоть до последней детали, но должен иметь представление, чтобы вы могли выполнить следующий шаг ...
Создайте схему базы данных. Обычно я просто планирую это на бумаге. Существует реальное искусство создания нормализованной базы данных. Подумайте обо всем, что должно быть «постоянным» в вашем приложении, потому что оно должно быть в базе данных и учитываться с минимальным дублированием.
После этого я обычно делаю, как вы говорите: создайте мои модели (и сценарии миграции в пути). Главное, что вы хотите вначале увидеть в своих моделях, - это ассоциации с другими моделями.
Следующая часть зависит от того, насколько вы комфортно находитесь в качестве разработчика в Rails. Многие люди пользуются испытательным подходом к разработке (TDD) и будут писать модульные тесты (Rails предоставляет отличные возможности для написания этих данных и запускает их для запуска). Однако, поскольку вы просто учитесь, вы можете написать свои тесты после внедрения бизнес-логики модели.
Дорога после этого в значительной степени зависит от вас. Вы можете работать с вашими видами/контроллерами/моделями, как вам нужно. Это одна из красавиц Rails и проворное развитие, вам не нужно много кодовых табличек кодов, чтобы начать.
Я, вероятно, странный в этом, но я обычно разрабатываю свою первую страницу и получаю базовый CSS-подход, так как считаю, что я более продуктивен, если мои результаты выглядят полу-красивыми.
Я бы, вероятно, избегал генерации лесов, хотя ... Я думаю, вы узнаете гораздо больше о структуре и потратите меньше времени на удаление нежелательного кода, если сами создаете отдельные части.
В контексте развития с командой все, вероятно, будет отличаться. Если у вас много сложной бизнес-логики, некоторые люди могут потратить большую часть своего времени на создание кода модели, в то время как люди, более со стороны разработчиков, будут внедрять код представления. Но вам придется встречаться в середине курса, что будет легче, так как ваш проект будет расти и станет более модульным. Не забудьте использовать систему контроля версий! Subversion, если вы хотите, чтобы что-то было легко использовать и учиться, Git, если вы готовы к вызову.
kewl! спасибо за идеи Захари! :) – Paul