בפיתוח תוכנה, המונח "קולבק" מתאר כל פרוצדורה המועברת כארגומנט, או, כל קריאה לפרוצדורה המועברת כארגומנט.
אם בעת קריאה לפרוצדורה נעביר לה ארגומנט שהוא פרוצדורה בעצמו, או, קריאה לפרוצדורה, אזי סביר לי להניח שפרוצדורה כזו או קריאה לפרוצדורה כזו תכונה פרוצדורה מועברת (Passed procedure) או קריאה מועברת (Passed call) ולכן בכל פעם שהפרוצדורה שמכילה את הארגומנט\ים הזה\הללו תיקרא, גם הקוד המועבר יעבור הרצה. לפיכך, "קולבק" הוא למעשה או פרוצדורה מועברת, או קריאה מועברת (תלוי במקרה לגופו).
המונח "קולבק" כמונח מטעה
לפי דעתי, המונח "קולבק" מטעה שכן העברת פרוצדורה או קריאה איננה בהכרח "בק" (בחזרה, כלומר פעם שנייה ואילך) אלא אולי מתרחשת פעם ראשונה (ואף ראשונה ואחרונה) שהרי לפחות עקרונית, בכל פעם שהפרוצדורה המכילה תיקרא ← הפרוצדורה המועברת, או הקריאה לפרוצדורה המועברת, תרוץ גם כן.
הערות כלליות
- מספר פעמים נתקלתי בויכוחים בקרב מפתחי תוכנה סביב הגדרה כללית של המונח זה (אשר למיטב ידיעתי איננו פורמלי ואף יש דיונים אין ספור על איך בכלל נכון להגדיר אותו)