Bir if ifadesinde doğru veya yanlış değerler döndüren bir yöntemi çağırmak iyi bir uygulama mudur?
Bunun gibi bir şey:
private void VerifyAccount()
{
if (!ValidateCredentials(txtUser.Text, txtPassword.Text))
{
MessageBox.Show("Invalid user name or password");
}
}
private bool ValidateCredentials(string userName, string password)
{
string existingPassword = GetUserPassword(userName);
if (existingPassword == null)
return false;
var hasher = new Hasher { SaltSize = 16 };
bool passwordsMatch = hasher.CompareStringToHash(password, existingPassword);
return passwordsMatch;
}
ya da bunları bir değişkende saklamak ve daha sonra böyle değerler kullanarak karşılaştırmak daha mı iyidir?
bool validate = ValidateCredentials(txtUser.Text, txtPassword.Text);
if(validate == false){
//Do something
}
Sadece .NET'e atıfta bulunmuyorum, tüm programlama dillerindeki soruya atıfta bulunuyorum, bu yüzden .NET'i örnek olarak kullandım
IsValidCredentials, dilbilgisi açısından garip olsa da, bir boole dönüş değerini göstermek için yaygın bir biçimdir.
!"NOT" operatörü ise, herhangi bir boole ifadesini reddeder. Bunun if (!validate)tam tersi if (validate). validateDoğru değilse if ifadesi girilir .
if (!validate)yerine yazınif (validate == false).