Axxxy Skrevet 20. januar 2014 Del Skrevet 20. januar 2014 Hvordan handler man en error på den beste måten i disse to tilfellene? Case 1 Jeg har flere funksjoner som jeg skal kalle, og jeg vil sjekke en og hver for error, f.eks loadMusic() loadImages() loadLayout() Skal jeg da omringe hver funksjon med try ? Og hvordan gjør jeg det best mulig. Om loadMusic() feiler vil jeg f.eks prøve på nytt og om det fortsatt ikke går vil jeg skippe funksjonen og printe ut "lasting av musikk feilet, men programmet fortsetter" Case 2 Hvordan kan jeg lage en custom/standard error handling for hele programmet? Om det blir en error en eller annen plass i programmet vil jeg kalle en spesiell funksjon som printer ut f.eks "programmet møtte på en feil" for så å stoppe det eller spille av en lyd. Må jeg da omringe hele programmet med try ? -Daniel Lenke til kommentar
etse Skrevet 20. januar 2014 Del Skrevet 20. januar 2014 En hver funksjon hvor det kan skje en feil burde kaste en exception om dette skjer. For din egen del anbefaler jeg å sørge for at det er fornufitge exceptions som blir kastet - og noen ganger er det derfor nødvendig å lage egne exception-klasser. F.eks. i Case 1 ville jeg latt alle funksjonene kaste exception og hatt de i en separat "Try except" siden de kan feile hver for seg og hvordan du håndterer feilen vil være forskjellig i de ulike tilfellene. Og selv om loadMusic() feiler ønsker du fortsatt at den skal fortsette med loadImages. For Case 2, så ja. Putt hele programmet inn i en Try og håndter feilene som kommer ut. Men prøv også å håndtere feil du vet kan oppstå ganske nærme der de kan skje i koden. Det vil spare deg for mye bry i mange tilfeller. Husk at ulike typer feil burde kaste ulike typer exceptions slik at feilhåndteringskoden du har rundt programmet kan se forskjell på de ulike feilene som kan skje. side-node: I henhold til PEP-8 er det ikke camelcase som er normalt å bruke på funksjonsnavn men "lowercase_with_underscores" og helst et enkelt ord. Altså burde funksjonene/metodne hete ting som load_images og load_music Lenke til kommentar
Axxxy Skrevet 20. januar 2014 Forfatter Del Skrevet 20. januar 2014 Takk! Skal se på dette senere -Daniel Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå