Я обнаружил, что пишу такой метод:
boolean isEmpty(MyStruct myStruct) {
return (myStruct.getStringA() == null || myStruct.getStringA().isEmpty())
&& (myStruct.getListB() == null || myStruct.getListB().isEmpty());
}
А затем представьте эту структуру со множеством других свойств и других вложенных списков, и вы можете представить, что этот метод становится очень большим итесно связаны с моделью данных.
Может ли Apache Commons, Spring или какая-либо другая утилита FOSS рекурсивно рефлексивно обходить граф объектов и определять, что он в основном лишен каких-либо полезных данных, кроме держателей для списков, массивов, карт,и тому подобное?Так что я могу просто написать:
boolean isEmpty(MyStruct myStruct) {
return MagicUtility.isObjectEmpty(myStruct);
}