הפשטה ותכנון תוכנה
הוצג| English | משמעות |
|---|---|
| abstraction/əbˈstrækʃn/ | ה abstraction |
| procedural abstraction/prəˈsiːdʒərəl əbˈstrækʃn/ | ה abstraction תהליכית |
| method decomposition/ˈmeθəd ˌdiːkɒmpəˈzɪʃn/ | פירוק שיטה |
הסתרת פרטים
- הפשטה פירונה הסתרת פרטים כדי להתמקד ברעיון המרכזי.
- אתם מנהלים רכב באמצעות ההגה והמדוכות – לא על ידי ידע בפנימי המנוע.
- בקוד, הפשטה מאפשרת להשתמש בדבר לפי מה שהוא עושה, לא לפי איך.
- זוהי הרעיון החשוב ביותר לניהול תוכניות גדולות.
_rpc_הפשטה הליכה
- הפשטה פרוצדורלית אורז התנהגות לתוך שיטה שאותה קוראים לפי שמה.
- לאחר הכתיבה,
average(scores)משמש לתוצאתו — הקוד בפנים מוסתר. - שם השיטה והפרמטרים (הממשק שלה) הם הכל שהקורא צריך.
- כך בדיוק משתמשים בשיטות ספרייה כמו
Math.sqrt.
פירוק שיטת
- פצלו בעיה גדולה לתת-התנהגויות קטנות יותר, כל אחת כשיטה משלה – פירוק שיטות.
- "עיבוד הזמנה" →
checkStock(),chargeCard(),ship(). - שיטות קטנות וממונות נקלות יותר לכתיבה, לבדיקה ולשימוש חוזר.
- השיטה הראשית נקראת כסיכום ברמה גבוהה.
תכנון מחלקה
- כדי לעצב מחלקה, יש להחליט אילו נתונים היא מכילה ואילו התנהגויות היא מציעה.
- ל-
Studentיש נתונים (שם, ציונים) והתנהגויות (addScore,average). - עיצוב טוב מקבץ נתונים והתנהגויות הקשורים יחד.
- תכנון מוקדם הופך את התוכנית לקלה יותר לבנייה, לקריאה ולשימוש חוזר.
ממשק או יישום?
הפשטה מסתרת את ה"איך" מאחורי "מה" פשוט. סדרו כל פריט.
היפגוש הוא עניין של הממשק, לא של היישום. קורא של average(scores) זקוק רק ל-שם, לקלט ולתוצאה שלו — לעולם לא לחוג הפנימי. יש לעצב כל שיטה כך שתעשה משימה אחת ברורה (פירוק שיטתי); שיטה שעושה חמישה דברים בלתי קשורים קשה למנות, לבדוק ולשמש בה שוב. יש לתכנן מחלקה כ-נתונים + התנהגויות לפני כתיבת הקוד.
עיצוב מחלקת Student:
- נתונים: שם הסטודנט ורשימת הציונים.
- התנהגויות:
addScore(s),average(),highest(). - קורא משתמש ב-
student.average()עבור התוצאה שלו — החישוב מוסתר בפנים.
היפגוש מסתיר פרטים כדי להתמקד ברעיון המרכזי; היפגוש פרוצדורלי מאפשר לך להשתמש ב-שיטה לפי מה שהיא עושה, ולא לפי איך. פירוק שיטתי מפצל בעיה גדולה להתנהגויות קטנות וממונות. יש לעצב מחלקה על ידי בחירת ה-נתונים וההתנהגויות שלה — עיצוב טוב הופך את הקוד לקל יותר לבנייה, לקריאה ולשימוש חוזר.
הפשטה מתוארת בצורה הטובה ביותר כ...
Difficulty 1/5 · 100 coins + a small bonus on first completion today
הפשטה מסתירה כיצד משהו עובד כך שתוכלו להשתמש במה שהוא עושה.
הפשטה פרוצדורלית מאפשרת לכם להשתמש בשיטה על ידי...
Difficulty 1/5 · 100 coins + a small bonus on first completion today
אתם קוראים לה לפי שמה וקלט, ולא לפי הפנימים שלה.
פירוק בעיה גדולה לתנהגויות קטנות וממוסות (שיטות) נקרא שיטת ___ (מילה אחת).
Difficulty 1/5 · 100 coins + a small bonus on first completion today
פירוק שיטות מחלק עבודה לשיטות ממוקדות.
בעת עיצוב מחלקה, מה עליכם לקבוע?
Difficulty 2/5 · 140 coins + a small bonus on first completion today
עיצוב עוסק בנתונים + התנהגויות, המסודרים באופן הגיוני — לא כתובות.
עיצוב תוכנה טוב הופך את התוכנית לקלה יותר לבנייה, לקריאה ולשימוש חוזר.
Difficulty 1/5 · 100 coins + a small bonus on first completion today
זוהי התשואה של השחזור והפירוק.