סוגי שגיאות בתכנות
שגיאות קומפילציה (Compiling Error/ Compilation Problem)- שגיאות אשר קורות בזמן הקומפילציה ולמעשה לא מאפשרות לסיים את תהליך הקימפול עד תומו.
שגיאות מסוג זה יכולות להיות שגיאות תחביר (Syntax Error) כמו החמצה של ';' בסוף משפט.
שגיאות אלו הן שגיאות שהמהדר (הקומפיילר- Compiler) מבחין בהם בזמן המעבר על הקוד, עוד בזמן כתיבתו של הקוד:
– אי הכרזה על משתנים
– שימוש במילים שמורות לשמות משתנים
– שימוש בתוכן משתנה ללא איתחולו
– שליחת פרמטרים לפונקציה שאינם תואמים לכותרתה (בסוג, בכמות או בסדר)
– המרה מרומזת העשויה לגרום לאובדן מידע (JAVA- תגרור שגיאת קומפילציה, ב-C רק אזהרה (Warning))
– אי מימוש מתודות במחלקה המממשת ממשק או מחלקה מופשטת
– המרת הפניות (רפרנסים) שאינה חוקית מבחינת עץ התורשה (היררכיית התורשה).- יכולה להיות המרה למטה או למעלה- downcasting או upcasting.
שגיאות/ חריגות זמן ריצה (Runtime Error)- שגיאות המתרחשות בזמן העיבוד של התוכנית, (כשהיא טעונה בזיכרון המערכת) ומביאים להפסקת הריצה שלה (במצב זה מערכת ההפעלה צריכה לטפל בתוכנית ולסגור אותה- Process Ending). שגיאות זמן ריצה יכולות להתרחש רק בתרחישים מסוימים או בעבור קלטים ספציפיים (במקרים כאלה שגיאות אלה נקראות באגים) שהמתכנת לא חשב עליהם. דוגמאות:
– חריגה מגבולות המערך- ArrayIndexOutOfBoundsException
– חלוקה ב-0- SubByZeroException