דילוג לתוכן הראשי

8.9.22 יום ה', (חוף, אשכול ב', שעה 5) - מפגש שני

בכיתה
1. סוגי שגיאות - Types of errors
    * שגיאת תחביר - Syntax error
    * שגיאת זמן-ריצה - Run-time error
    * שגיאה לוגית - Logical error

2. ריענון Stack-memory VS Heap-memory
    זיכרון-המחסנית לעומת זיכרון-הערימה

3. User-Interface VS Class-Interface
    ממשק-משתמש לעומת ממשק-המחלקה

4. חזרה על העברת פרמטרים by-val VS by-ref
    העברת פרמטרים לפי-ערך לעומת העברה לפי-ייחוס/הפניה

לבית
1. קראו שוב המצגות בנושא זיכרון-המחסנית לעומת זיכרון-הערימה ('קישורים' 12-13).
2. בצעו תרגיל1 בנושא PointProject  ('קישורים' סעיף 15).

בשיעור הבא
חזרה קצרה ומענה על שאלות:
1. מצגות זיכרון Stack לעומת Heap (ס' 12-13).
2. ממשק-משתמש לעומת ממשק-המחלקה.
3. העברת פרמטרים by-val VS by-ref.
4. סוגי שגיאות.

פתרון משותף של תרגיל:
5. תרגיל1 בנושא PointProject ('קישורים' סעיף 15).

מושגים בתכנות מונחה עצמים:
6. מצגת מונחה-עצמים האונ'-העברית שיעור1 (ס' 20).
    * מהו עצם
        כל עצם מורכב מאיבריו: תכונות ושיטות.
        עצם הוא אובייקט מסוג / מטיפוס המחלקה.
        עצם תלמיד הוא מסוג מחלקת תלמיד. עצם נקודה הוא מסוג מחלקת נקודה.
    * תכונות של עצם
        תכונות המחלקה (תכונות / משתנים - vars / data-members).
    *  פעולות של עצם
        פעולות המחלקה (פעולה / שיטה -  function / method).
    *  מחלקה ומופע
        המחלקה היא תבנית לייצור עצמים.
        המחלקה היא תכנית-אב המגדירה תכונות ופעולות המשותפות לכל העצמים
        שהם מהסוג שלה (סוג העצם / טיפוס העצם / Object Type).
        ההבדל בין מחלקה לעומת מופעים מסוגה (Class VS Instances / Objects).
    * עצמים-מורכבים - תכונה שאינה פשוטה (כמו int, double, bool...) אלא עצם (למשל תלמיד).
    * מבנה התוכנית
        הפעולה הראשית - Main Class (נמצאת במחלקת Program).
        ריצת התוכנית תמיד תתחיל משורת הקוד הראשונה שבפעולה Main.
        אבל, מחלקה רגילה / מחלקת-תבנית שיצרנו (מחלקה המיועדת לאפשר יצירת עצמים מסוגה)
        לא מורצת כלל בעת הרצת התוכנית. הפניה למחלקה, אם תתבצע, תהיה אך ורק באמצעות
        קוד שכתבתם / שנמצא בבלוק הפקודות של הפעולה Main.
    * תקשורת אל עצמים
       מהי תקשורת אל עצמים? גישה או פנייה לתכונות ולשיטות של העצם. (למשל: ()s1.GetAvg).
       תקשורת פנימית: מתבצעת על-ידי קוד הכתוב בתוך המחלקה, פנייה אל התכונות והשיטות שבמחלקה,
       כולל תכונות / שיטות בעלי הרשאת גישה private.
       תקשורת חיצונית: תקשורת המתבצעת מחוץ למחלקה, למשל: מתוך ה- Main,
        ומתוך עצם קיים מסוג המחלקה, אל התכונות והשיטות שלה.
    * עצמים מורכבים (קדימון)
       תכונה שהיא עצם.
    * יחסים בין מחלקות (קדימון)
       ירושה.

תרגול:
7. תרגיל עבודה על המחלקה הנתונה DateTime (מחלקה של המערכת, נכתבה על ידי מתכנתי Microsoft)
    * יצירת עצם תאריך / שעה / תאריך ושעה.
    * פעולות שינוי של העצם (למשל - שינוי היום / החודש / השנה, שינוי השעה / הדקות / השניות...).
    * פעולות קובעות של העצם (למשל - כדי לקבוע את מבנה התאריך יום-חודש-שנה או חודש-יום-שנה).