Стиль кодирования в .NET: стоит ли проводить рефакторинг в новый метод или нет? - PullRequest
8 голосов
/ 31 мая 2010

Как вы знаете, в стиле кода .NET мы уже используем много функций для размещения этих функций _Click, _SelectedIndexChanged и т. Д. И т. Д. В нашей команде есть разработчик, который делает функцию в середине .NET. функция, например:

public void Button_Click(object sender, EventArgs e)
{
    some logic here..
    some logic there..

    DoSomething();
    DoSomethingThere();

    another logic here..

    DoOtherSomething();
} 

private void DoSomething()
{
}

private void DoSomethingThere()
{
}

private void DoOtherSomething()
{
}

public void DropDown_SelectedIndexChanged()
{
}

public void OtherButton_Click()
{
}

и указанная выше функция используется в этой функции только один раз и не используется где-либо еще на странице или вызывается из другой части решения.

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

Я знаю, что такой способ группировки лучше использовать при написании старого ASP или стиля ColdFusion, но я не уверен, что этот стиль лучше для .NET или нет.

Вопрос в том, что лучше при разработке .NET, лучше группировать подобную логику в под-метод (хотя они используют только один раз), или просто соединить их вместе в основной функции и добавить // объяснение здесь в начале. из логики лучше?

Надеюсь, мой вопрос достаточно ясен.

Спасибо.

UPDATE: Спасибо всем за ответ и вклад.

Просто мы объединили всю логику и все в одну функцию (до этого у нас было всего 2-3 разработчика), и внезапно мы превратились в команду из 7-8 разработчиков, и у каждого свой стиль.

Я думаю, что лучше начать строить руководящие принципы, поэтому я чувствую необходимость задать вопрос.

Ответы [ 11 ]

0 голосов
/ 31 мая 2010

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

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