Není vhodné používat izolovaně TakeWhile() a SkipWhile() pro filtrování záznamů. Nemáš tam nikde explicitně vyjádřený předpoklad, že na vstupu jsou data seřazená (je to jinde) a tím se to stává hůře čitelným (interpretovatelným) zápisem. Je to také náchylné na budoucí refactoringové chyby, až ti někdo v jiné části kódu změní řazení, nebo něco takového. Ten výkonový zisk je zanedbatelný vůči nevýhodám, které to přináší.
(Sám bych to nikdy nepoužil a když nad tím přemýšlím, tak jestli vůbec, tak bych si to troufnul použít jen ve společném zápisu s OrderBy(), nebo tak něco.)
https://github.com/havit/Bonusario/blob/4573b26bcaf512218f08141039001d80668cad0e/Web.Client/Components/EntryVisibilityPicker.razor.cs#L30-L36
Není vhodné používat izolovaně
TakeWhile()
aSkipWhile()
pro filtrování záznamů. Nemáš tam nikde explicitně vyjádřený předpoklad, že na vstupu jsou data seřazená (je to jinde) a tím se to stává hůře čitelným (interpretovatelným) zápisem. Je to také náchylné na budoucí refactoringové chyby, až ti někdo v jiné části kódu změní řazení, nebo něco takového. Ten výkonový zisk je zanedbatelný vůči nevýhodám, které to přináší.(Sám bych to nikdy nepoužil a když nad tím přemýšlím, tak jestli vůbec, tak bych si to troufnul použít jen ve společném zápisu s
OrderBy()
, nebo tak něco.)