Innholdsfortegnelse:
Ruby er et ganske fleksibelt språk, og det gir deg mange verktøy for å skrive fantastiske programmer med svært lite arbeid. Imidlertid lærer nye rubyister raskt at med all den kraften som er litt ansvarlig for å forsøke å teste og feilsøke koden nøye. Heldigvis finnes det noen enkle teknikker du kan bruke for å hjelpe deg med å løse problemer i koden din.
Kontroller terminalen
De fleste Ruby-programmer kjøres fra en kommandolinje ved hjelp av plattformens terminal eller konsollprogram. Ruby er et tolket språk, som betyr at når du kjører programmet, ser Ruby din kode for første gang og finner problemer etter hvert som de kommer opp. Dette er forskjellig fra noen andre språk som har et trinn kalt kompilering , , som ofte kan oppstå problemer før programmet kjører.
Fordi programmet ditt tolkes på fluen, trenger du virkelig å teste alle deler av den nøye. Hvis Ruby finner et problem, vil det skrive ut en advarsel eller feilmelding til terminalen. Mesteparten av tiden vil denne feilmeldingen inneholde en beskrivelse av problemet og en omtrentlig plassering der problemet oppstod.
Informasjonen i denne feilmeldingen er din første anelse om hvor du skal lete etter feil.
Ruby forsøker å hjelpe
Feilmeldingene Ruby-skjermer kommer i en rekke typer. Når du forstår grunnleggende kategorier, er det mye lettere å spore opp problemet:
-
NavnErrormeldinger er svært vanlige og oppstår vanligvis når du har en skrivefeil i programmet. Hvis du prøver å bruke en variabel eller metode, men skriv inn feil navn, vil Ruby ikke kunne finne det og vil vise denne feilen. Se nøye på koden din for eventuelle navngiving feil. Husk at Ruby er saksfølsom, slik at variabelen din kan staves riktig, men ved et uhell har en liten eller stor bokstav i den.
-
SyntaxError meldinger skje hvis du ved et uhell gjør feil i Ruby-koden, vanligvis mangler eller misbruker jeg et Ruby-søkeord. For eksempel, hvis du glemmer slutt søkeordet på slutten av en hvis tilstand, vil Ruby gi deg beskjed. Se i området for syntaksfeilen for manglende kode eller kode som ble oppgradert mens du redigerte.
-
NoMethodError meldinger betyr at du prøver å bruke et objekts metode, men det er ikke der, muligens fordi du stavet det feil. Når du får denne meldingen, må du kontrollere at metoden finnes i kildekoden din og at stavemåten din er riktig.
Det finnes en rekke andre mulige feil, men disse tre er noen av de vanligste.
Bruk "puts" for å lage breadcrumbs
Noen ganger virker programmet jevnt, men Ruby viser ikke en feilmelding. Dette skyldes oftest en kodende feil som programmerere kaller en logikkfeil. Dette betyr at koden ikke gjør det du hadde til hensikt å gjøre.
Logikkproblemer er vanskelig å spore opp, men ett enkelt verktøy er å skrive ut feilsøkingsmeldinger fra programmet ditt på forskjellige punkter langs koden til koden din. Hvis du bruker Ruby puts-metoden, vises meldingene dine til terminalen mens du kjører programmet. Denne meldingen kan gi deg noen tips om hvor koden kjører til enhver tid og hva dens variabler inneholder. Du kan skrive linjer som setter "nå i min metode" eller setter "instansvariabel = # {@ my_variable}" for å få en rask følelse av programmets oppførsel.
Be om hjelp
Noen ganger kan du stirre på et program i lang tid og ikke se de enkleste feilene rett foran deg. En prøvd og sann teknikk i disse tilfellene er å legge til side programmet og komme tilbake til det senere med et nytt sett med øyne.
Hvis det ikke virker, er det et livlig fellesskap av Ruby-programmerere på Internett, og å gjøre noen raske Google-søk vil ofte føre til et svar.
Hvis alt annet feiler, er det en god tilnærming å finne en annen programmør som du kan stille et spørsmål til, personlig eller online.