אובייקטים: מצב, התנהגות וממשק
הוצג| English | משמעות |
|---|---|
| instance/ˈɪnstəns/ | מוצר |
| encapsulation/ɪnˌkæpsjʊˈleɪʃn/ | אריזה |
מה יכול להסביר תצפית זו?
- שני אובייקטי מודל חשבון בנק יכולים להגיב לאותה פעילת הפקדה בעודם מחזיקים יתר שונים.
- התחל בחזית. ציין את הכמותות או התכונות שת срав, ואז החלט איזה עדות יכולה להבדיל בין שתי הסברות.
בניית המודל
- מחלקה מגדירה סוג עם מצב והתנהגות. אובייקט הוא ממסד. אקפסולציה שולטת בגישה דרך ממשק כדי לפעוליות לשמור על אינווריאנטים. ירודה מדגמנת קשר סוגים מתאים; קומפוזיציה מדגמנת אובייקט המכיל או משתמש באובייקט אחר.
- א封装 (Encapsulation): שליטה בגישה למצב דרך ממשק; instance (איינסטנס): אובייקט יחיד מסוג (class).
מה אמור למנוע שינוי מצב לא תקין?
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 2/5 · 140 coins + a small bonus on first completion today
ניסוח התנאים וההנחות מאפשר לאחרים לחזור על העבודה בדיוק, ורישום הראיות התומכות מאפשר להם לבדוק את המסקנה. הסתרת תוצאות המולכות מסירה את הראיות שיכולות לערער מסקנה שגויה, ומדידה אחת לעולם לא יכולה להוכיח טענה רחבה יותר.
עבודה על בסיס גודלים ידועים
- ציין את הערכים הידועים ואת יחידות המידה שלהם. בחר בקשר מכיוון שההנחות שלו מתאימות למקרה זה, ולאחר מכן סדר מחדש לפני ההצבה.
- ידוע: אובייקט A מתחיל ב-40 יחידות וקיבל 15; אובייקט B מתחיל ב-20 וקיבל 5. יתרים סופיים הם 55 ו-25. הסכום שלהם הוא 80, אך אף אחד מהיתרים האישיים אינו 80.
ממסד מתחיל ב-12 יחידות, מוסיף 8 ומסיר 3. מצא את הערך הסופי שלו. השתמש באותו רצף: כמות ידועה → מודל → קשר → הצבה → יחידה ופרשנות.
מ instance מתחיל ב-12 יחידות, מוסיף 8 ומסיר 3. חשב את הערך הסופי שלו.
Difficulty 2/5 · 140 coins + a small bonus on first completion today
התוצאה היא 17 יחידות. ידוע: התחלה ב-12; הוספת 8; הסרה של 3. עקבו אחרי המצב צעד אחר צעד: 12 + 8 = 20; 20 - 3 = 17 יחידות. כל פעולה משנה רק את המצב של המופע הזה.
בדוק את המסקנה ואת הגבולות שלה
- מחלקה אינה אותו דבר כמו ממסד אחד. ירודה אינה טובה בהכרח מקומפוזיציה. הסתרת שדה בלבד אינה מוכיחה שכל הפעוליות שומרות על מצב תקין.
- חזור לתצפית המקורית. הסבר מה התוצאה תומכת, אילו תנאים היא מניחה, ודרך אחת לבדוק הסבר מתחרה.
שתי דגימות של מחלקה חייבות לשיתף תמיד יתרה אחת. טענה זו שגויה: לכל דגימה יש מצב משלה: שתי חשבונות מאותה מחלקה יכולים להחזיק יתר שונים. הן משתפות בהגדרת המחלקה - הפעולות והמבנה - ולא בערכי השדות.
אובייקטים: מצב, התנהגות וממשק: קריאת שיטה פועלת על ממסד ספציפי. שינויי מצב צריכים לענות לתנאי מקדימים ולתנאי סופיים. פולימורפיזם מאפשר לקוד להשתמש בממשק משותף עם מימושים שונים כאשר החוזה נשמר.
שתי ת instances של מחלקה חייבות לשתף תמיד מאזן אחד.
Difficulty 1/5 · 100 coins + a small bonus on first completion today
לכל מופע יש מצב משלו: שתי חשבונות מאותו מחלקה יכולות לשאוב יתר שונות. הן משתפות את הגדרת המחלקה - הפעולות והמבנה - אך לא את ערכי השדות.
שליטה בגישה למצב באמצעות ממשק: כתוב את המונח הטכני.
Difficulty 1/5 · 100 coins + a small bonus on first completion today
קפסולציה היא שליטה בגישה למצב דרך ממשק.