Ich arbeite seit ungefähr einem Jahr an meinem Arbeitsplatz. Ich arbeite hauptsächlich in unserer GUI-Oberfläche, die Methoden aus einem C-Backend verwendet, aber ich muss mich im Allgemeinen nicht mit ihnen befassen, außer mit Rückgabewerten. Unsere Benutzeroberfläche ist angesichts unserer Einschränkungen ziemlich vernünftig strukturiert.
Ich wurde beauftragt, dem Befehlszeilenteil des Programms eine Funktion hinzuzufügen. Die meisten dieser Funktionen haben eine Länge von 300 Zeilen und sind schwierig zu bedienen. Ich versuche, Teile davon zu sammeln, um bestimmte Alarminformationen zu erhalten, und ich habe Probleme, mich zu organisieren. Ich weiß, dass ich meine Tests komplizierter mache, indem ich sie in einer einzigen langen Funktion durchführe.
Sollte ich einfach alles in einer riesigen Funktion gemäß dem Stil der vorhandenen Funktionen halten oder sollte ich die Alarme in ihren eigenen Funktionen einkapseln?
Ich bin mir nicht sicher, ob es angemessen ist, gegen die aktuellen Kodierungskonventionen zu verstoßen oder ob ich einfach in die Kugel beißen und den Code für mich selbst etwas verwirrender machen sollte.
Zusammenfassend vergleiche ich
showAlarms(){
// tons of code
}
gegen
showAlarms(){
alarm1();
alarm2();
return;
}
alarm1(){
...
printf(...);
return;
}
BEARBEITEN: Vielen Dank für den Rat an alle, ich habe beschlossen, meinen Code faktorisiert zu gestalten und dann zu fragen, was sie wollen. Wenn sie alles in einem wollen, kann ich einfach meinen faktorisierten Code ausschneiden und ihn wieder in 1 umwandeln große Funktion. Dies sollte es mir ermöglichen, es zu schreiben und einfacher zu testen, selbst wenn sie den gesamten Code in einer einzigen Definition haben möchten.
UPDATE: Am Ende waren sie mit dem faktorisierten Code zufrieden und mehr als eine Person hat mir dafür gedankt, dass ich diesen Präzedenzfall geschaffen habe.