Intro Flashcards

1
Q

מה זה אינקפסולציה?

A

מנגנון המגביל את הגישה לחלקים מסוימים של התוכנית
- הייצוג של המידע יכול להשתנות
אלגוריתמים יכולים להשתנות

מקטינים את כמות התלויות ומאפשרים התנהגות קונסיסטנטית

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

מה זה הפשטה?

A

:תהליך של
זיהוי דימיון בין חלקים שונים של התוכנית -
הסרת הדמיון ע”י יצירת מופע יחיד של הקוד החוזר על עצמו (ייתכן בצורה פרמטרית) -

מאפשרת לקטע קוד להתעלם מפרטים לא רלוונטיים.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

מהו טיפוס?

A

סט של ערכים -

סט של פעולות שניתן לבצע על אותם ערכים -

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

טיפוסיות סטטית

A
  • בטיחות - שגיאות טיפוס נתפסות בזמן קומפילציה
    בהירות - אוכפת את החלטות הדיזיין
    יעילות - אין תקורה על בדיקות בזמן ריצה
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

טיפוסיות דינמית

A

גמישה וחוסכת קוד

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

טיפוסיות חזקה

A

הקשר בין ערך לטיפוס שלו לא ניתן לשבירה -

פעולה נכשלת אם אחד הארגומנטים שלו הוא מטיפוס לא נכון -

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

טיפוסיות חלשה

A

ניתן לפרק את הקשר בין ערך לטיפוסו-

השפה מבצעת המרה בין טיפוסים בצורה לא מפורשת -

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

שקילות שמית

A

שני טיפוסים הם שקולים אם יש להם אותו שם ומוגדרים באותו הקשר

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

שקילות מבנית

A

שני טיפוסים הם שקולים אם יש להם את אותו מבנה

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q
  1. equivalence in C
  2. equivalence in C++
  3. equivalence in Java
A
  1. nominal: union and struct
    structural: all the rest
  2. nominal: union, struct and class
    structural: rest + templates
  3. nominal: class
    structural: Arrays, generics
How well did you know this?
1
Not at all
2
3
4
5
Perfectly