Menu
Coddy logo textTech

בדיקת שגיאות

חלק מהיחידה יסודות במסלול ה-GO של Coddy. שיעור 105 מתוך 109.

ב-Go, אנחנו בודקים אם יש שגיאות באמצעות משפטי if. התבנית הזאת נפוצה מאוד.

בדקו אם אירעה שגיאה באמצעות if err != nil:

func main() {
    result, err := divide(10, 0)
    
    if err != nil {
        fmt.Println("Error occurred:", err)
        return // עצור את הביצוע אם יש שגיאה
    }
    
    // המשך רק אם אין שגיאה
    fmt.Println("Result:", result)
}

הפלט יהיה:

Error occurred: cannot divide by zero
challenge icon

אתגר

מתחילים

ב-Go, פונקציות מחזירות לעיתים קרובות ערך שגיאה שעליך לבדוק לפני השימוש בתוצאה. באתגר הזה תתרגל בדיקת שגיאות באמצעות ההצהרה if.

יש לנו פונקציה בשם openFile שמדמה פתיחת קובץ ומחזירה שגיאה אם הקובץ לא קיים. המשימה שלך היא לבדוק אם יש שגיאה ולהדפיס הודעה מתאימה.

נסו בעצמכם

package main

import (
	"fmt"
)

// הפונקציה הזו מדמה פתיחת קובץ
// היא מחזירה שגיאה אם הקובץ לא קיים
func openFile(filename string) error {
	if filename == "data.txt" {
		return nil // nil פירושו שאין שגיאה
	} else {
		return fmt.Errorf("file %s not found", filename)
	}
}

func main() {
	filename := "config.txt"
	
	// קראו לפונקציה openFile
	err := openFile(filename)
	
	// TODO: בדקו אם err אינו nil (כלומר התרחשה שגיאה)
	// אם התרחשה שגיאה, הדפיסו: "Error: " ואחריו את הודעת השגיאה
	// אם לא התרחשה שגיאה, הדפיסו: "File opened successfully"
	
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר Go אונליין