#programowanie #python #python3 #programista15k Programiści pythona, czy wy się nigdy nie nauczycie obsługiwać błędów? Instaluję jakiś N-ty tool w pracy napisany w Pythonie. Pal licho, że działa to jak ślimak i muszę czekać 2-4 sekundy na jakąkolwiek odpowiedź z toola, bo python musi przeparsować gazylion linii dołączonych bibliotek. To już jakoś ścierpię. Ale na końcu zostaję powitany dwoma ekranami stacktrace'a i gdzieś w środku w tej ścianie tekstu jakieś "config file not found: yyyy.conf". Tak jak by nie można było tego całego gówna nie wypisywać i dać sam komunikat o błędzie. Bo w Pythonie nie ma żadnego catch do wyjątków, prawda? Prawda? BTW: to nie jest specyficzne tylko dla naszych wewnętrznych narzędzi, bo 9/10 programów w Pythonie z zewnątrz też jest tak z-----a.
@KORraN: nie, jest tylko jedna prawidłowa szkoła. Wywalenie stacktrace == błąd w kodzie. To co podlinkowałeś to już kwestia szczegółowa - jak właśnie to zrobić aby nie wywalić programu i aby użytkownik dostał ładny komunikat a nie ścianę tekstu.
Programiści pythona, czy wy się nigdy nie nauczycie obsługiwać błędów? Instaluję jakiś N-ty tool w pracy napisany w Pythonie. Pal licho, że działa to jak ślimak i muszę czekać 2-4 sekundy na jakąkolwiek odpowiedź z toola, bo python musi przeparsować gazylion linii dołączonych bibliotek.
@Krolik: Dlatego python to język easy to learn, hard to master. Jak sobie zdasz sprawę, że python jest dynamicznie typowany, że wszystko jest obiektem do którego można
@Krolik: Ogólnie przy projektowaniu języków programowania zawsze miałeś odwieczny spór -> czy traktować programistów jak dorosłe osoby i dać im dużą wolność (C, C++, Python, JS) czy traktować ich jak małpy z brzytwą (Java, C#, Rust). W praktyce podejście "Javowe" okazało się lepsze bo jak twórca javy powiedział - napisał ten język bo ludzie w c++ nie potrafili pisać i dawać sobie rady z tym językiem, co się skończyło gigantycznym
@Boska_Klaudia: jak program nie umie obsłużyć sytuacji braku pliku to nie nadaje się na produkcję, bo to oznacza że jego twórcy mają wywalone na jakość
Całe szczęście, że pozytywne emocje się lepiej sprawdzają niż negatywne bo boję się nawet pomyśleć co by było, gdyby farmienie negatywnego contentu było opłacalne.
To co podlinkowałeś to już kwestia szczegółowa - jak właśnie to zrobić aby nie wywalić programu i aby użytkownik dostał ładny komunikat a nie ścianę tekstu.
@Krolik: Dlatego python to język easy to learn, hard to master. Jak sobie zdasz sprawę, że python jest dynamicznie typowany, że wszystko jest obiektem do którego można
def funkcja():import sys