1 i 5 linii wydaje mi się zbyt małym ograniczeniem. Jeśli tworzysz uproszczone aplikacje biznesowe, które nie przetwarzają dużo, to wydaje się to być w porządku, ale jeśli istnieją jakieś algorytmy lub procesy, często jest o wiele bardziej czytelny (i obsługiwany), aby pisać etapy przetwarzania sekwencyjnie, a nie na wielu metodach lub klas - nawet jeśli jest to logiczne w celu enkapsulacji, sprawdzania poprawności i tak dalej.
5 linii w wielu przypadkach nie jest wystarczające do sprawdzenia poprawności parametrów i iteracji poprzez kolekcję.
Proponuję "o zabawie"; 20 do 30 linii jest idealnych.
Na przykład: to wydaje się ważne dla mnie, ale można rozważyć dobry w 8 liniach:
// Calculates the depth of the layer in the object graph
public int GetIndex()
{
int ct = 0;
ViewLayer pos = this;
while (pos.Parent != null)
{
ct++;
pos = pos.Parent;
}
return ct;
}
(zdaję sobie sprawę, ja otwarcie się do krytyki przez kod księgowania, ale moja statywy punktowe, to jest czytelny kod)
Czy można zastosować 25 metod jednolinijkowych i jedną metodę 100-liniową? – Yellowfog
Tak długo, jak * musi * być, wielkość/liczba linii nie jest tak ważna, jak funkcja ** ma jedną rzecz **, IMO. –
Osobiście nie sądzę, że istnieje zdefiniowana odpowiedź, która jest "poprawna". Ale pomyślałem, że chciałbyś obejrzeć rozmowę, którą "Wujek Bob" Martin zrobił w QCon London w tym roku, gdzie mówił o tym temacie: http://www.infoq.com/presentations/Robert-C.-Martin-Bad -Code – AdaTheDev