«Правильный» поток при создании проекта Rails - PullRequest
0 голосов
/ 03 августа 2010

Я начинаю с Ruby on Rails и уже знаю кое-что, но мне было интересно, есть ли "правильный" способ разработки проекта. Прямо сейчас я хотел бы создать свои модели сначала с помощью [script / generate model MyModel], а затем изменять их, пока не почувствую, что они достаточно полны. Затем я выбрал бы [script / generate scaffold MyModel], поэтому мне не нужно делать много кода для представлений. Наконец, я изменяю виды и добавляю больше моделей, а затем добавляю новые леса для других функций, которые могут мне понадобиться.

Есть ли лучший способ сделать это? Особенно в контексте работы с командой при разработке проекта? Спасибо!

1 Ответ

1 голос
/ 03 августа 2010

Я уверен, что у каждого свой рабочий процесс, но я думаю, что типичным является следующий:

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

  2. Разработка схемы базы данных.Я обычно просто планирую это на бумаге.Существует настоящее искусство создания нормализованной базы данных.Подумайте обо всем, что должно быть «постоянным» в вашем приложении, потому что оно должно быть в базе данных и учитываться с как можно меньшим дублированием.

После этого я обычноделай как говоришь: создай мои модели (и попутно скрипты миграции).Главное, что вы хотите вначале описать в своих моделях, это ассоциации с другими моделями.

Следующая часть зависит от того, насколько вы удобны как разработчик в Rails.Многим людям нравится подход разработки на основе тестов (TDD), и они будут писать модульные тесты (Rails предоставляет отличные возможности для их написания, а также создает задачи для их запуска).Однако, поскольку вы только учитесь, вы, возможно, захотите написать свои тесты после реализации бизнес-логики модели.

Путь после этого в значительной степени зависит от вас.Вы можете работать с вашими представлениями / контроллерами / моделями так, как вам нужно.Это одна из прелестей Rails и гибкой разработки, вам не нужно много кода для начала работы.

Я, наверное, странный в этом, но обычно я создаю свою первую страницу и получаю некоторыеОсновы работы с CSS, так как я считаю, что я более продуктивен, если мои результаты выглядят довольно прилично.

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

В контексте разработки с командой все может быть иначе.Если у вас много сложной бизнес-логики, некоторые люди могут тратить большую часть своего времени на написание кода модели, в то время как люди, больше занимающиеся дизайном, будут внедрять код представления.Но вам, конечно, придется встретиться в середине, что станет легче по мере роста вашего проекта и его модульности.Просто не забудьте использовать систему контроля версий!Subversion, если вы хотите что-то простое в использовании и изучении, Git, если вы готовы принять вызов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...