Представьте, что у меня есть этот код:
public void Foo()
{
// Do bar work
// Do baz work
// Do foobar work
}
И я понимаю, что могу (и должен, потому что это делало более чем одно) преобразовать его в:
public void Foo()
{
bar();
baz();
foobar();
}
private void bar() { /* do bar work */ }
private void baz() { /* do baz work */ }
private void foobar() { /* do foobar work */ }
Но тогдаЯ понимаю, что никогда не буду использовать эти функции за пределами Foo()
, поэтому эти функции просто загромождают главную страницу и автоматически завершаются.Я мог бы обойтись без этого:
public void Foo()
{
bar();
baz();
foobar();
void bar() { /* do bar work */ }
void baz() { /* do baz work */ }
void foobar() { /* do foobar work */ }
}
, что сделало бы вещи более аккуратными и менее беспорядочными, но все, что я действительно сделал сейчас, это сделал метод еще длиннее, а не короче.