Каковы наилучшие способы улучшения стандартов стиля кодирования в компании? Давайте использовать C # в качестве примера здесь.
Я полагаю, что между разработчиками существует много различий, которые необходимо учитывать. Конкретными могут быть образование, опыт и языки программирования прошлого.
Как можно оправдать, что что-то правильно над чем-то другим?
Один человек может сказать: " Я перемещаю свое тело в то место, где я зарабатываю деньги на своем 4-колесном транспортном средстве ". Так почему же «правильнее» говорить: « Я еду на машине в мою машину »?
Некоторым людям может понравиться более явный код с большим количеством строк кода. Кому-то может понравиться более жесткий код.
// Explicit
string text = defaultValue;
if (string.IsNullOrEmpty(text)) {
text = fallbackValue;
}
// Tighter
string text = defaultValue ?? fallbackValue;
Или старый защитный стиль программирования, в котором вы сначала проверяете наличие ошибок, а не заключаете все тело метода в положительное условие if:
public string ChangeText(string text)
{
if (!string.IsNullOrEmpty(text))
{
// Do a lot of stuff
}
else {
throw new Exception();
}
}
// vs.
public string ChangeText(string text)
{
if (string.IsNullOrEmpty(text)) {
throw new Exception();
}
// Do a lot of stuff
}
Допустимо ли здесь старое "У меня проблемы с чтением этого кода"? Это та же самая ситуация, когда Generics была представлена в C #, у людей возникли проблемы с ее чтением.
Где проходит граница между нечитаемым кодом и кодом, к которому некоторые разработчики не привыкли?
Какая часть из Phil Haacks " 7 Этапы горя нового ключевого слова " имеет здесь действительные баллы?
Существуют ли простые способы установить стандарты кодирования и поддержать их в компании?
ОБНОВЛЕНИЕ : Учитывайте такие вещи, как именование переменных , которые не могут быть определены в документе. Или это может?