Kodalama yaparken karşılaştığım uzunca bir “if” sınaması için farklı bir yaklaşımı sunmak istedim.
public class OperationManager { public IOperation GetOperation(string arg) { if (arg == "+" || arg == "-" || arg == "*" || arg == "/") { return new MathOperation(); } return new UnknownOperation(); } }
Yukarıdaki ifadenin alternatifi olarak aşağıdaki gibi bir çözüm üretebiliriz. Okunabilirliği arttıran bir yöntem gibi görünüyor. Kod satırları azaldığından göze daha hoş gelen bir yazım biçimi oldu.
public class OperationManager { private readonly string[] operations = { "+", "-", "*", "/" }; public IOperation GetOperation(string arg) { if (operations.Contains(arg)) { return new MathOperation(); } return new UnknownOperation(); } }