Pracuję w pracy od około roku. Pracuję przede wszystkim w interfejsie GUI, który wykorzystuje metody z zaplecza C, ale generalnie nie muszę sobie z nimi radzić, z wyjątkiem zwracanych wartości. Nasze GUI ma dość rozsądną strukturę, biorąc pod uwagę nasze ograniczenia.
Zadanie polegało na dodaniu funkcji do części wiersza poleceń programu. Większość z tych funkcji ma około 300 linii i jest trudna w użyciu. Próbuję zebrać ich fragmenty, aby uzyskać określone informacje o alarmie i mam problem z utrzymaniem porządku. Wiem, że komplikuję testowanie, wykonując je w jednej długiej funkcji.
Czy powinienem po prostu utrzymywać wszystko w wielkiej funkcji zgodnie ze stylem istniejących funkcji, czy też powinienem zawrzeć alarmy we własnych funkcjach?
Nie jestem pewien, czy należy postępować wbrew obecnym konwencjom kodowania, czy też powinienem po prostu ugryźć kulę i sprawić, że kod będzie dla mnie bardziej mylący.
Podsumowując, porównuję
showAlarms(){
// tons of code
}
przeciwko
showAlarms(){
alarm1();
alarm2();
return;
}
alarm1(){
...
printf(...);
return;
}
EDYCJA: Dziękuję za radę wszystkim, zdecydowałem, że zaprojektuję mój kod z uwzględnieniem faktów, a następnie zapytam, czego chcą, a jeśli chcą tego wszystkiego w jednym, mogę po prostu wyciąć z mojego kodu i przekształcić go z powrotem w 1 duża funkcja. To powinno pozwolić mi napisać i przetestować go łatwiej, nawet jeśli chcą całego kodu w jednej definicji.
AKTUALIZACJA: W końcu byli zadowoleni z faktorowanego kodu i więcej niż jedna osoba podziękowała mi za ustanowienie tego precedensu.