Есть ли правило Checkstyle, PMD или Findbugs, которое могло бы найти следующую нелинейную реализацию нитевидной пружины?Правило качества кода для поиска не потокобезопасных синглтонных весенних реализаций
private String helperVar;
public String getValue(String value) {
helperVar = value;
return convertValue();
}
private String convertValue() {
return helperVar.trim();
}
Я знаю, что этот образец ужасен, но это самый простой способ показать, что я имею в виду.
При выполнении метода getValue из компонента в одном выполнении он будет работать нормально. Но при выполнении в многопользовательской среде это приведет к непредсказуемым ошибкам/поведению.
Есть ли способ найти эти вхождения без прохождения кода вручную? Существуют ли какие-либо статические проверки кода, которые могли бы проверить это и каждый вариант его автоматически?
Идентификатора поля и 'toString' на основе этого поля, называемого последовательно, уже было бы достаточно. Ползет. –
спасибо за попытку помочь мне, но у меня нет проблем с кодом. Я просто хочу найти другие вхождения одного и того же шаблона автоматически, Таким образом, нет никакого вопроса, связанного с образцом кода. Вопрос заключается исключительно в проверках кода. – B4dT0bi
Я не критиковал код, но хотел указать, что ваш шаблон кода, «изменение поля и вычисление с несколькими вхождениями этого поля» _, очень распространен. –