שגרה (תכנות) – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
←‏העמסה, משתנים גלובליים ומשתנים מקומיים: לא המקום - העמסה שייכת לערך פולימורפיזם. כאן מספיק תיאור קצר.
←‏פתיח: עריכה. ניסיון לטרמינולוגיה אחידה בפתיח לפחות
שורה 1:
ב[[תכנות מחשבים]], '''שגרה''' (ב[[אנגלית]]: '''Subroutine''') או, '''פרוצדורה''' (באנגלית: '''Procedure''') או '''מתודהשיטה''' (באנגלית '''Method''') היא רצף של [[פקודה (מחשב)|פקודות]] המאוגדות יחדיו, במטרה לבצע מטלה מוגדרת, מימוש של [[אלגוריתם]]. '''פונקציה''' היא שגרה המחזירה ערך. מתודותשגרות ופרוצדורהמהן לא חייבותמוחזר להחזירמשמשות ערכיםעל לעומתפי פונקציה.רוב במתודותלשם שמהןשינוי לאמצב מוחזרכלשהו ערך מבצעים- הדפסות למסך, אתחולשינוי של אובייקט, או תוצאות לוואי וכדומהאחרות.
 
'''קריאה''' למתודהלשגרה היא הפעלה שלה תוך כדי פעולת ה[[תוכנית מחשב|תוכנית]]. קריאה של שגרה לעצמה, ישירות או בעקיפין, נקראת [[רקורסיה]]. החלק במתודהבשגרה שמתבצע בפועל נקרא "גוף" המתודההשגרה. מתודהשגרה יכולה שלא לקבל קלט, לקבל קלט יחיד או מספר של קלטים כלשהם. בכל שפת תכנות קיימות מתודות או פונקציות, והן הבסיס של עולם התוכנה. הן אלו שגורמות לאובייקטים בתוכנה לפעול, להציג מידע, לשנות מידע ולתקשר עם אובייקטים אחרים.
 
שגרות הן עיקרה של פרדיגמת [[תכנות פרוצדורלי|התכנות המבני]]. מקובל כי שימוש מושכל בשגרות ובפונקציות משפרעשוי לשפר את מבנה התוכנית, את קריאות הקוד ואת מידת הגמישות של התוכנית לביצוע שינויים. עלשימוש פיבשגרות רוב,מאפשר פונקציהחלוקה אושל מתודהקוד לאלחלקים יכילוקצרים יותר מ-25 שורותשגרות שלקצרות קוד.- כךוכך שאםמקל מתודהעל לאוידוא עובדתנכונות כשורהשל יהיהכל קלאחד יחסית לעבור על כלממרכיבי הקוד שמרכיב אותה ולמצוא בו טעויותבנפרד. עובדהתוצאה זו מאפשרת להפחית במידה משמעותית את עלויות הפיתוח והתחזוקה של תוכנה. ברוב [[שפת תכנות|שפות התכנות]] המודרניות ישנו שימוש נרחב בשגרות. שגרות נתמכות באופן בסיסי גם ב[[שפת סף|שפות סף]] ו[[שפת מכונה|שפות מכונה]]. הנוהג בעולם התוכנה הוא שלכל מתודה / שגרה רושמים הערות שקשורות אליה. הערות אלו אומרות למפתח מה משמעות המשתנים שנשלחים למתודה, ותיאור קצר של אופן פעולתה.
 
[[תכנות פרוצדורלי]] הוא פרדיגמת תכנות המתבססת על שימוש בשגרות. ב[[תכנות מונחה -עצמים]], לכל עצם יש מספר שגרות או פונקציות השייכות אליו, הנקראותשגרה כזאת נקראת "שיטותשיטה" (או "פונקציותמתודה" בעקבות המונח באנגלית) או חברות"פונקציה חברה", והיא מגדירה את ההתנהגות של האובייקט עליו היא נקראה, ופועלות על המידע [[כימוס|הכמוס]] בתוכו או בעזרתו. שיטותבהתאם למידת החשיפה שלהן לשאר הקוד, שגרות אלה מהוות גם [[ממשק (תכנות)|ממשק]] בין העצם לתוכנית כולה.
 
במרבית שפות התכנות קיימות שגרות, פונקציות או מתודות. שגרות נתמכות באופן בסיסי גם ב[[שפת סף|שפות סף]] ו[[שפת מכונה|שפות מכונה]].
 
==קריאה לשגרה==