Zawsze zmagam się z tym ... próbując znaleźć właściwą równowagę między próbą złapania a kodem, który nie staje się tym nieprzyzwoitym bałaganem tabulatorów, nawiasów i wyjątków, które są wyrzucane z powrotem na stos wywołań jak gorący ziemniak. Na przykład mam teraz rozwijaną aplikację, która korzysta z SQLite. Mam interfejs bazy danych, który wyodrębnia wywołania SQLite, i model, który akceptuje rzeczy wchodzące / wychodzące z bazy danych ... Więc jeśli / kiedy wystąpi wyjątek SQLite, musi zostać podrzucony do modelu (który go nazwał) ), który musi przekazać to osobie, która wywołała AddRecord / DeleteRecord / cokolwiek ...
Jestem fanem wyjątkami, w przeciwieństwie do powrotu kody błędów, ponieważ kody błędów mogą być ignorowane, zapomniane, itd., Podczas gdy w istocie wyjątek musi być obsługiwane (pewnik, że mógł złapać i przenieść się od razu ...) Jestem pewny, że musi być lepszy sposób niż to, o czym teraz mówię.
Edycja: Powinienem to sformułować nieco inaczej. Rozumiem, że rzucam jako różne typy i takie, źle to sformułowałem i to moja wina. Moje pytanie brzmi ... w jaki sposób najlepiej utrzymywać kod w czystości? Z czasem zaczyna mi się wydawać, że jest bardzo zagracony.