Полагаю, я один из странных случаев, предпочитающих алфавитные списки.
Прежде всего, по моему опыту, группирование методов "семантически" имеет тенденцию затрачивать время. Теперь, если мы говорим о группировании их по объему / видимости, это другое дело. Но затем, если член меняет свою область действия, вам нужно потратить время на перемещение члена, чтобы сохранить текущий код. Я не хочу тратить время на перетасовку кода, чтобы соблюдать такие правила.
Я тоже не большой поклонник регионов. Когда свойства и методы группируются по области действия, они, как правило, выкрикивают для включения в область. Но вложение кода в сворачивающиеся области имеет тенденцию скрывать плохо написанный код. Пока вам не нужно смотреть на это, вам не придется думать о рефакторинге, чтобы сделать его обслуживаемым.
Итак, я поддерживаю алфавитную организацию. Это просто, прямо и точно. Я не испытываю соблазна включать группы в регионы. А так как IDE позволяет легко перескочить к функции или собственности определения в любом случае, физическое расположение кода является спорным. использовал , чтобы вы сначала хотели, чтобы люди сосредоточились на ваших публичных участниках. Современные IDE приводят этот бессмысленный аргумент в пользу макетов на основе области действия.
Но самое большое преимущество алфавитных макетов заключается в следующем: напечатанные примеры кода во время проверки кода. И я их часто использую. Это делает поиск функции или свойства проще простого. Если вам когда-либо приходилось разбираться с большим количеством кода, чтобы найти функцию или свойство, когда в списке не было просто алфавитного списка, вы поймете, о чем я говорю.
Но, как говорится, это мои субъективные взгляды на эту тему. Ваш пробег может отличаться.