как статику интерпретировать с точки зрения объекта? Даже на пальцах. Вот моканье объекта. С точки зрения статики,что мокать? Нечего. Ее надо выполнять. А если вы не можете замокать нормальными средствами уровень абстракции,то как вы будете тесты писать?
Я против открытых статических методов. Но вот ребята выше мокают статику и им норм
Там выше написали чем плох тот предложенный инструмент для моканья статики:)
Большая польза статических методов в том, что про них можно точно сказать, что на входе и что на выходе, и у них нет внутреннего state. Поэтому 1) их как правило просто понимать - "на вход подаём X, на выходе получаем Y". 2) по той же причине их как правило просто тестировать - подали тестовый пример на вход, посмотрели что на выходе.
А потом в классе появляются non-final static поля для хранения чего-либо)
Чтобы разломать то, что "про них точно можно сказать"
Ну сломать что угодно можно :)
Общая идея в том, что если нет необходимости сохранять state - то часто нет смысла в наличии объекта. Достаточно статического метода (или нескольких статических методов).
Согласен, очень субъективно. "Хороший код" - оно вообще очень субъективное понятие. Компилятору в итоге всё равно, что там за стили или паттерны применены.
Обсуждают сегодня