ничем
Ничем, если они к месту, но многие стараются их по возможности избегать.
В первую очередь тем, что увеличивают связность и затрудняют тестирование
В pure static-функциях нет ничего плохого. А impure плохи тем же, чем плохо глобальное состояние. Глобальные мутабельные переменные — признак либо очень низкой квалификации разработчика, либо иных, не зависящих от разработчика, обстоятельств, из-за которых провернуть что-нибудь без глобального состояния значительно сложнее, чем с ним (сжатые сроки, легаси, indended API, low-level фичи)
Всем
Если статик является глобальным состоянием, то он плох. А если это какая-нибудть утилитарная функция, типа LINQ или форматирования какого-нибудь, то ок и ничего плохого
Обсуждают сегодня