S'il vous plaît jeter un oeil à la suite morceau de code:principe de responsabilité unique dans l'API
public interface ICultureService
{
List<Culture> GetCultures();
bool IsCultureSupported(Culture culture);
Culture GetFallbackCulture();
}
Nous avons constaté que la plupart des consommateurs premier appel IsCultureSupported pour valider si leur culture est prise en charge ou non. Et si la culture ne sont pas pris en charge, ils appellent GetFallbackCulture():
public CallingMethod()
{
if(!cultureManager.IsCultureSupported(currentCulture))
{
currentCulture=cultureManager.GetFallbackCulture();
}
.
.
.
}
Comme par simple Responsabilité Principe (et d'autres règles oops), est-il autorisé à introduire une fonction (en ICultureService et sa mise en œuvre) comme:
function GetFallbackCultureIfInvalid(Culture culture)
{
if(this.IsCultureSupported(culture)
{
return this.FallbackCulture();
}
}
1. si (this.IsCultureSupported (culture)!)? – KonstantinL
2. et si c'est supporté? retourner la culture? – KonstantinL
@KonstantinL, Oui, s'il est pris en charge, renvoyer la même chose. – Pragmatic