Menu
CoddyTech

למה להשתמש ב-Luau?

חלק מהיחידה מבוא ל-Luau במסלול ה-Lua של Coddy. שיעור 2 מתוך 80.

מערכת הטיפוסים של Luau מציעה שלושה יתרונות מרכזיים שהופכים את הפיתוח לבטוח ויעיל יותר.

זיהוי שגיאות בשלב מוקדם: בודק הטיפוסים מנתח את הקוד בזמן העריכה, לפני שהוא רץ. נבחן באג נפוץ ב-Lua: העברת nil במקום שבו מצופה מספר:

-- Lua: שום דבר לא מזהיר אותך מפני זה
local function calculateTotal(price, tax)
    return price + tax
end

print(calculateTotal(nil, 0.1))
-- ✗ שגיאה בזמן ריצה: ניסיון לבצע פעולה חשבונית על nil

ב-Lua רגילה, הקריסה מתרחשת רק כשהקריאה השגויה מתבצעת לבסוף: אולי מול המשתמשים שלך. גרוע מכך, לפעמים Lua מסתירה את הבאג לחלוטין: "50" + 0.1 ממירה בשקט את המחרוזת ומחזירה 50.1… עד שמגיע היום שבו המחרוזת אינה מספרית. עם הערות טיפוסים של Luau, הטעות מסומנת מיד:

local function calculateTotal(price: number, tax: number)
    return price + tax
end

calculateTotal(nil, 0.1) -- ✗ שגיאת טיפוס בזמן עריכה: nil אינו מספר

קריאות טובה יותר של הקוד: הערות הטיפוסים משמשות כתיעוד. price: number אומר לך ולחברי הצוות שלך בדיוק למה פונקציה מצפה: בלי לנחש ובלי לחפור במימוש.

כלי פיתוח משופרים: מכיוון שהעורך יודע מהו הטיפוס של כל משתנה, תקבל השלמה אוטומטית מדויקת, שינויי קוד בטוחים יותר וניווט חכם יותר. הקלד נקודה אחרי ערך שהוגדר לו טיפוס, והעורך יציג בדיוק את האפשרויות הזמינות.

challenge icon

אתגר

קל

ציין את הטיפוס number עבור שני הפרמטרים של calculateTotal.

  1. בשורה הראשונה, שנה את (price, tax) ל־(price: number, tax: number).
  2. השאר את הקריאה calculateTotal(80, 8) בתחתית.

לחץ על הרצת קוד: הפלט מציג את 88.

נסו בעצמכם

local function calculateTotal(price, tax)
    return price + tax
end

print(calculateTotal(80, 8))

כל השיעורים ביחידה מבוא ל-Luau

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