REPL [ קריאה — הערכה — הדפסה — לולאה]

Last updated: December 12, 2024

REPL הוא סביבה "אינטראקטיבית" שמסייעת לדיבוג והערכת בלוקים של קוד על ידי הרצתם בזמן אמת. 

כדי להבין מה זה REPL, בואו נראה איך מתכנת מקודד בלי REPL או כל כלי דיבוג אחר.

normal.png

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

עכשיו עם REPL, כך זה נראה.

with_repl.png

כאן, המפתח ממשיך לנסות בלוקים של קוד כדי לאמת את נכונותו וממשיך לכתוב את הקוד הפועל בכל פעם.

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

כדי לדעת איך עובד REPL, תסתכלו איך מפתח Python משתמש ב-REPL כדי לכתוב תוכנית לחיבור שני מספרים.

ezgif.com-optimize.gif

כפי שאתה יכול לראות, המתכנת מנסה להריץ את הפונקציה add2Numbers(a,b) עם מקרים מרובים כדי להבטיח את הדיוק. 

לולאת קריאה הערכה הדפסה, כפי ששמה מרמז, תומכת ב:

  • קרא — קרא את קלט המשתמש בזמן אמת
  • הערכה — הערכת בלוקים של קוד
  • הדפס — מדפיס את התוצאה למשתמש
  • לולאה — חזור על קוד באמצעות לולאות

מאחר ו-REPL טוען את הפונקציות והמשתנים לזיכרון, הוא גם תומך בהשלמת אוטומטית של הפונקציה באמצעות מקש <Tab>.

REPL נתמך באופן רשמי לשפות תכנות מפועלות כמו Python, Javascript, ו-Ruby. Java9 וגם השיקו תמיכה רשמית ב-REPL בשנים האחרונות. לשפות תכנות אחרות, קיימות REPL צד שלישי שניתן להשתמש בהן.