Překvapivě i když jste to vy sami jen o nějaký den, týde či měsíc starší.
Tím se ukazuje důležitost toho, aby po Vás váš kód někdo prošel, zaťukal si na čelo a řek "Můžeš mi prosím tě vysvětlit rozdíl mezi těmito dvěma propertama?" Pokud nemáte kolegu, který by to pro Vás udělal, tak hold před každým commitem musíte otevřít každý upravený soubor a podívat se co jste změnili a jestli o řádek vedle není metoda, kterou by jste mohli refaktorovat.
public bool IsPossibleToLogin
{
get
{
return this.BaseAddress != null
&& !string.IsNullOrEmpty(this.BaseAddress.ToString())
&& !string.IsNullOrEmpty(this.UserName)
&& !string.IsNullOrEmpty(this.Password);
}
}
public bool IsSetLogin
{
get
{
return !string.IsNullOrEmpty(this.UserName)
&& !string.IsNullOrEmpty(this.Password)
&& !string.IsNullOrEmpty(this.BaseAddress.ToString());
}
}
První krok refaktoringu
Nahradit výpočet v druhé proprty výpočtem v první, protože je robustnější a kontroluje i jestli je vyplněna adresa. Označení property jako Obsolet dáte kolegů nebo partnerům kteří vaši knihovnu používají najevo, že plánujete tuto property odstranit, čím ji mají nahradit a kdy ji odstaníte.
public bool IsPossibleToLogin
{
get
{
return this.BaseAddress != null
&& !string.IsNullOrEmpty(this.BaseAddress.ToString())
&& !string.IsNullOrEmpty(this.UserName)
&& !string.IsNullOrEmpty(this.Password);
}
}
[Obsolete("Duplicitní property. Použíjte property IsPossibleToLogin. Ve verzi 1.4.5 bude odstraněna.")]
public bool IsSetLogin
{
get
{
return this.IsPossibleToLogin;
}
}
Druhý krok refaktoringu
Odstraníme reference na obsolet propertu, které se nám po buildu zobrazí v [Error listu].
Třetí krok refaktoringuOdstraníme obsoleteproperty.
Žádné komentáře:
Okomentovat