Многие языки программирования предлагают удобные функции для проверки, является ли строка нулевой или пустой. C# также имеет такую функцию, но разработчики все равно могут реализовать ее неправильно. Функция StringValid Джейсона, хотя и функциональна, неэффективна, поскольку использует ненужное условное выражение. Лучшим подходом было бы напрямую вернуть булево выражение или использовать встроенную функциональность. Подход Дерека использует однострочное выражение "".Equals(Port), которое является обратным и менее интуитивным способом проверки на нулевое значение. Этот шаблон был обнаружен разбросанным по всей кодовой базе, что указывает на использование фрагмента кода. Инвертированный синтаксис "".Equals мог быть под влиянием языков, таких как Python. Пример Малфиста на Java включает функцию с именем checkNull, которое вводит в заблуждение. Эта функция на самом деле является функцией объединения, которая возвращает строку по умолчанию, если входное значение равно null. Существенным недостатком является то, что она обрезает непустую входную строку, но не строку по умолчанию. Кроме того, она не проверяет, является ли сама строка по умолчанию нулевой, что потенциально может привести к дальнейшим исключениям нулевой ссылки. Автор выражает разочарование сложностью обработки строк, предлагая их отменить.
StringValidДжейсона, хотя и функциональна, неэффективна, поскольку использует ненужное условное выражение. Лучшим подходом было бы напрямую вернуть булево выражение или использовать встроенную функциональность. Подход Дерека использует однострочное выражение"".Equals(Port), которое является обратным и менее интуитивным способом проверки на нулевое значение. Этот шаблон был обнаружен разбросанным по всей кодовой базе, что указывает на использование фрагмента кода. Инвертированный синтаксис"".Equalsмог быть под влиянием языков, таких как Python. Пример Малфиста на Java включает функцию с именемcheckNull, которое вводит в заблуждение. Эта функция на самом деле является функцией объединения, которая возвращает строку по умолчанию, если входное значение равно null. Существенным недостатком является то, что она обрезает непустую входную строку, но не строку по умолчанию. Кроме того, она не проверяет, является ли сама строка по умолчанию нулевой, что потенциально может привести к дальнейшим исключениям нулевой ссылки. Автор выражает разочарование сложностью обработки строк, предлагая их отменить.