Ваша библия по этому вопросу - книга Стива Макконнела, Code Complete , которая является наиболее полной книгой о такой практике создания программного обеспечения.У него есть целая глава по именованию переменных и тому, почему это важно.
Ключ в том, чтобы сделать имя полным описанием того, что делает переменная, чтобы ее было легко понять человеку, читающему ее.Если это достигается, то это хорошая практика.
Учащийся ученик выглядит простой для понимания политикой, но у нее есть непосредственный недостаток - она не содержит дополнительной информации о переменной.Вы уже знаете, его студент.Если вы знаете что-то еще об объекте, добавьте его к имени переменной - studentUnderReview, GravatingStudent и т. Д. «Student» следует использовать только в том случае, если вы абсолютно ничего не знаете, например, переменная используется для перебора всех студентов.Теперь в длинном методе полезно узнать тип, просто взглянув на имя, но если переменная имеет короткую область видимости, то она является маргинальной, полезной она или нет.Есть некоторые исследования (см. McConnel), которые показывают, что для переменных с очень короткой областью действия, таких как индексы цикла, короткие имена лучше.
Как только у вас есть две переменные, эта система выходит из строя.Если по умолчанию вызывается одна переменная «student», то возникает искушение вызвать две переменные «student1» и «student2», что действительно является плохой практикой (подробности см. В McConnel).Вам нужно сделать имена, которые описывают объект - goodStudent и badStudent;studentBeingSaved и studentBeingRead.