Avoid boolean parameters in methods — split into dedicated methods to eliminate if-else complexity and separate concerns.
Boolean parameters like Document.SetVisibility(bool isVisible)
force methods to contain if-else logic, handling multiple responsibilities.
This creates complexity and violates single responsibility. Instead, use dedicated methods like Document.Show()
and Document.Hide()
where each method has one clear purpose.
public class Document
{
public bool IsVisible { get; private set; }
public void SetVisibility(bool isVisible)
{
IsVisible = isVisible;
if (isVisible)
{
// Visible Code
}
else
{
// Not Visible Code
}
}
}
Use dedicated methods to make intent explicit and seperate concerns:
public class Document
{
public bool IsVisible { get; private set; }
public void Show()
{
IsVisible = true;
// Visible Code
}
public void Hide()
{
IsVisible = false;
// Not Visible Code
}
}
Show()
and Hide()
have single, focused responsibilities