Abläufe programmieren
Marcel
- programmiertechnik
0 Marian0 Daniel Thoma
Hallo
Ich schreibe in C# eine Methode, welche mehrere Abläufe steuert, d.h. jeder Ablauf gibt letztendlich true oder false zurück, je nachdem ob der Ablauf erfolgreich ausgeführt werden konnte.
Nun, wie programmiert man das "schön" und "elegant"? Bisher habe ich folgendes:
public bool steuereAbläufe() {
if(!startAblauf1()) {
return false;
}
if(!startAblauf2()) {
return false;
}
if(!startAblauf3()) {
return false;
}
if(!startAblauf4()) {
return false;
}
return true;
}
Gruss Marcel
Hi Marcel,
Ich kenn mich mit c# zwar nicht aus, aber in php, da gibts ja wohl nicht zu viele unterschiede... aber ein ä im funktionsname?
vielleicht so:
return(eins() and zwei() and drei())
bzw wenns länger wird
return(
eins() and
zwei() and
drei()
)
Gruß, Marian
Hallo Marcel,
Neben der von Marian vorgeschlagenen Variante mit etwas kürzerer Syntax kann man das Problem auch anders lösen.
Das bringt zwar einen Overhead mit sich, ist aber elegant und flexibel.
Du definierst eine Schnittstelle Ablauf:
interface Ablauf {
boolean execute();
}
Und hältst dann eine Liste von Abläufen vor, die Du dann nur noch abarbeiten musst:
boolean steuereAbläufe() {
foreach(Ablauf a in abläufe) {
if(!a.execute()) {
return false;
}
}
return true;
}
Die Syntax entspricht vermutlich nicht C#, da ich noch nie C# programmiert habe.
Grüße
Daniel