2009-05-15 2 views
2

В проектах, в которых я работаю, кажется, что самая большая проблема с Слиянием изменений - в изменениях Windows Forms/GUI. Мы используем Araxis Merge для сравнения изменений, но это может быть сотни изменений для каждого файла. И вам нужно делать заметки и/или переименовывать элементы, чтобы убедиться, что вы знаете, что вы объединяете.Слияние изменений графического интерфейса

Большой проблемой является то, что разработчики разрешают новым элементам управления использовать имена по умолчанию. Тогда закончится, например, 2 Label220's. Тогда слияние объединит половину кода вместе, но оставит другие части отдельно; это в основном просто ломает GUI.

Есть ли инструменты для слияния графических интерфейсов .NET (Windows Forms) лучше, чем на уровне кода?

Мы используем Subversion. Меркуриал лучше?

ответ

3

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

1) Разделить ваши сложные компоненты пользовательского интерфейса в нескольких пользовательских элементы управления. Это имеет дополнительное преимущество для очистки вашего кода пользовательского интерфейса и поощрения повторного использования.

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

3) Проведите больше времени на прототипирование пользовательского интерфейса, чтобы уменьшить количество изменений. Кроме того, прохождение нескольких итераций дизайна пользовательского интерфейса вначале значительно улучшит качество готового продукта.

+0

В часовом обществе мы склонны использовать: «блокировать все формы, которые вы редактируете», чтобы избежать слияния, поскольку это может быть очень болезненно. – bbmud

+0

Я обнаружил, что мне не нравятся пользовательские элементы управления и вместо этого предпочитаю спускаться с TextBox (как один пример) напрямую. В противном случае, мне нравится этот ответ. – overslacked

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