Это стало большим разочарованием из-за кодовой базы, в которой я сейчас работаю; многие из наших имен переменных короткие и неописательные. Я единственный разработчик, оставшийся в проекте, и нет документации о том, что делает большинство из них, поэтому мне приходится тратить дополнительное время на отслеживание того, что они представляют.
Например, я читал какой-то код, который обновляет определение оптической поверхности. Переменные, установленные в начале, были следующими:
double dR, dCV, dK, dDin, dDout, dRin, dRout
dR = Convert.ToDouble(_tblAsphere.Rows[0].ItemArray.GetValue(1));
dCV = convert.ToDouble(_tblAsphere.Rows[1].ItemArray.GetValue(1));
... and so on
Может быть, это только я, но он ничего не сказал мне о том, что они представляли, что затруднило понимание кода в дальнейшем. Все, что я знал, это то, что эта переменная где-то анализировала определенную строку из определенной таблицы. После некоторых поисков я выяснил, что они имели в виду:
dR = radius
dCV = curvature
dK = conic constant
dDin = inner aperture
dDout = outer aperture
dRin = inner radius
dRout = outer radius
Я переименовал их в то, что у меня там наверху. Это удлиняет некоторые линии, но я чувствую, что это справедливый компромисс. Этот вид схемы именования используется во многих частях кода. Я не уверен, является ли это артефактом от разработчиков, которые учились, работая со старыми системами, или есть более глубокая причина этого. Есть ли веская причина для именования переменных таким образом, или я оправдан, обновляя их до более описательных имен, когда сталкиваюсь с ними?
dK = conic constant
.