תכנות מובנה – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
התחלת תרגום מוויקי האנגלית
 
מהערך פקודת goto
שורה 1:
{{בעבודה}}
'''תכנות מובנה''' הוא [[פרדיגמת תכנות]] המיועדת לשיפור הבהירות והאיכות של [[תוכנית מחשב]], תוך קיצור משך הפיתוח, באמצעות שימוש נרחב ב[[שגרה (תכנות)|שגרות]] ו[[בלוק (תכנות)|בלוקים]] ובמבני [[בקרת זרימה]] מסוג Do while, והימנעות משימוש ב[[פקודת goto]], ששימוש נרחב בה מביא ליצירתו של "[[קוד ספגטי]]", שלקורא קשה מאוד להתמצא בו.
 
==ירידת קרנה של פקודת goto==
 
בשנת [[1968]] פרסם [[אדסחר דייקסטרה]] מאמר מפורסם בשם [http://homepages.cwi.nl/~storm/teaching/reader/Dijkstra68.pdf Go To Statement Considered Harmful], ובו שלל את השימוש בפקודת goto. לטענת דייקסטרה ורבים אחרים, ניתן לכתוב כל תוכנית מחשב ללא שימוש בפקודת goto. גישתו של דייקסטרה הפכה למקובלת ביותר בעולם התכנות, אך אל מול שלילה מוחלטת של הפקודה הציב [[דונלד קנות']] גישה המתירה שימוש בפקודה במקרים מסוימים, במאמרו [http://pplab.snu.ac.kr/courses/adv_pl05/papers/p261-knuth.pdf Structured Programming with go to Statements].
 
שימוש מופרז בפקודה goto עלול להביא לקוד לא מובנה ולא קריא, המכונה לעתים [[קוד ספגטי]]. כיום, כחלק ממוסכמות תכנות מקצועי, נחשבת פקודת ה־goto מוקצה מחמת מיאוס, וזאת על מנת להקל על תחזוקה והרחבה של קוד קיים: קוד אשר משתמש ב־goto, ולו לעתים נדירות, עלול ליצור תופעות לוואי שקשה לעקוב אחריהן, ומקשה על הבנה של קוד ירושה. מוסכמה זו נאכפת לרוב גם בשפות המאפשרות שימוש ב־goto. עם זאת, במקרים כגון יציאה מקינון מרובה, שימוש ב־goto עשוי להיות הפתרון הנכון (במקרים כאלו ניתן להשתמש בשפות תכנות חדשות במנגנון ה[[טיפול בשגיאות]] על מנת להשיג תוצאה דומה).
 
 
[[קטגוריה:פרדיגמות תכנות]]