Пожалуйста, обратите внимание на следующий фрагмент кода:единый принцип ответственности в API
public interface ICultureService
{
List<Culture> GetCultures();
bool IsCultureSupported(Culture culture);
Culture GetFallbackCulture();
}
Мы обнаружили, что большинство потребителей первого называют IsCultureSupported для проверки, если их культура поддерживается или нет. И если культура не поддерживается, они называют GetFallbackCulture():
public CallingMethod()
{
if(!cultureManager.IsCultureSupported(currentCulture))
{
currentCulture=cultureManager.GetFallbackCulture();
}
.
.
.
}
В соответствии с единой ответственности Принцип (и другие правила упс), это нормально, чтобы ввести функцию (в ICultureService и ее реализации), как:
function GetFallbackCultureIfInvalid(Culture culture)
{
if(this.IsCultureSupported(culture)
{
return this.FallbackCulture();
}
}
1. если (this.IsCultureSupported (культура)!)? – KonstantinL
2. а что, если он поддерживается? культура возвращения? – KonstantinL
@KonstantinL, Да, если поддерживается, верните то же самое. – Pragmatic