Hvorfor er unntak dårlige?

Hvorfor er unntak dårlige?
Hvorfor er unntak dårlige?
Anonim

Unntak gjør det veldig enkelt å skrive kode der et unntak blir kastet vil bryte invarianter og etterlate objekter i en inkonsekvent tilstand. De tvinger deg egentlig til å huske at de fleste utsagn du kommer med potensielt kan kaste, og håndtere det riktig. Det kan være vanskelig og kontraintuitivt å gjøre det.

Hvorfor unntak er dårlige C++?

Hovedårsaken til at C++-unntak så ofte er forbudt, er at det er veldig vanskelig å skrive unntakssikker C++-kode. Unntakssikkerhet er ikke et begrep du hører så ofte, men betyr i bunn og grunn kode som ikke skrus opp for mye hvis stabelen vikles ut.

Er bortsett fra unntak dårlig?

Du bør bruke minst unntatt Unntak : for å unngå å fange opp systemet exceptions som SystemExit eller KeyboardInterrupt. Her er lenke til dokumenter. Generelt bør du eksplisitt definere exceptions du vil fange, for å unngå å fange opp uønskede exceptions . Du bør vite hvilke unntak du ignorerer.

Hvorfor er catch-unntak nesten alltid en dårlig idé?

catch(Exception) er en dårlig praksis fordi den fanger opp alle RuntimeException (umerket unntak) også. Dette kan være java-spesifikt: Noen ganger må du kalle metoder som kaster sjekkede unntak. Hvis dette er i ditt EJB / forretningslogikklag, har du 2 valg - fange dem eller kaste dem på nytt.

Er unntak dårlige for ytelsen?

Konklusjon. Bruker ikkeunntak på grunn av deres potensielle ytelsespåvirkning er en dårlig idé. Unntak bidrar til å gi en enhetlig måte å takle kjøretidsproblemer på, og de bidrar til å skrive ren kode. Du må imidlertid spore antall unntak som er kastet i koden din.

Anbefalt: