Привет, я использую шаблон MVVM в проекте Android, и для ViewModel есть код, подобный следующему:
public class LoginViewModel extends ViewModel {
public MutableLiveData<User> user = new MutableLiveData<>();
public MutableLiveData<String> email = new MutableLiveData<>();
public MutableLiveData<String> password = new MutableLiveData<>();
public MutableLiveData<Boolean> emailError = new MutableLiveData<>();
public MutableLiveData<Boolean> register = new MutableLiveData<>();
private LoginRespository loginRespository = new LoginRespository();
private MutableLiveData<Boolean> enable = new MutableLiveData<>();
public LoginViewModel() {
}
public void login() {
...
}
public void startRegister() {
...
}
private String getEmailValue() {
if (email.getValue() == null) {
email.setValue("");
}
return email.getValue();
}
....
}
В офисе мы обсуждаем, как использовать набор внутри get isплохая практика, но я думаю, что это не плохая практика, потому что java допускает нулевые значения, и я не хочу получать нулевое значение при вызове getEmailValue (). Я думаю, что концепция инкапсуляции для этих случаев.
Вопрос в том, действительно ли это может быть плохой практикой или нет?
Спасибо