Я всегда инициализировал свои строки в NULL, думая, что NULL означает отсутствие значения, и значение "или String.Empty является допустимым значением. В последнее время я видел больше примеров кода, где String.Empty считается значением по умолчанию или не представляет значения. Это поражает меня как нечетное, с новыми добавленными типами с нулевым значением в С# кажется, что мы делаем шаги назад со строками, не используя NULL для представления" Нет значения".
Что вы используете в качестве инициализатора по умолчанию и почему?
Изменить: основываясь на ответах, я буду дальше мыслить
-
Избегайте обработки ошибок. Если значение не должно быть нулевым, зачем оно было установлено на
NULL
в первую очередь? Возможно, было бы лучше определить ошибку в том месте, где она происходит, а не покрывать ее остальной частью вашей кодовой базы? -
Избегайте нулевых проверок Если вы устали от выполнения нулевых проверок в коде, не лучше ли абстрагировать нулевые проверки? Возможно, оберните (или продолжите!) Строковые методы, чтобы сделать их
NULL
безопасными? Что произойдет, если вы постоянно используетеString.Empty
, а нуль будет работать в вашей системе, начинаете ли вы добавлятьNULL
в любом случае?
Я не могу не вернуться к мнению, что это лень. Любой администратор базы данных пошлет вам девять способов глупости, если вы использовали '' вместо NULL
в своей базе данных. Я думаю, что одни и те же принципы применяются в программировании, и кто-то должен удалять их вверх головой, которые используют String.Empty
, а не NULL
, чтобы не представлять значения.
Вопросы, относящиеся