Darum geht es nicht. Ich kann auch alles in eine Methode packen, die hochredundant ist, alles in einem Abwasch durchläuft und spuperduperperformant ist. Leider widersprechen sich Lesbarkeit und Performance häufig.
'Richtig' implementiert ist auch so eine Sache: Entweder gehe ich auf Lesbarkeit, Clean Code o.ä, oder eben auf 'richtig flott'. Hier dachte ich, es geht um Lesbarkeit, Das man in der konkreten Implementierung u.U. eine Codezeile doppelt ausführt, ist dann eben so und kein Verstoß gegen DRY. By DRY geht es ja um die Vermydung von Codeblockduplikaten, nicht von einfachen Aufrufen.
Delphi-Quellcode:
Function HasParameter (aText, aParam :
String) : Boolean;
Begin
Result := ParameterIndex (aText, aParam) > 0;
End;
Function GetParamValue(aText, aParam :
String) : Boolean;
Begin
i := ParameterIndex(aText, aParam);
if i=0
then Raise Exception.Create('
Parameter gibbet nich');
Result := ReadValueStartingAtPos(aText, i);
End;
Na, issok?