Я всегда рационализировал, что если у вас есть частная переменная уровня класса, то вы либо жестко закодировали конфигурацию, либо отслеживали состояние так или иначе. Если вы отслеживаете состояние, то 1) это должно быть очевидно всем, кто собирается писать код в файле с момента открытия файла, и 2) отслеживание большого количества состояний - это огромный запах кода, и если мои разработчики Я делаю это, тогда я хочу, чтобы это было очевидно. Так что, поместив его наверх, imho, делает плохой код более очевидным и служит предупреждением для будущих людей, которые редактируют класс.
Определенно отделите ваши открытые / защищенные от личных полей и участников, потому что люди, заинтересованные в одном, скорее всего, не заинтересованы в другом.