3/2024, ימים ב',ג',ה' (חוף, אשכול ב') - מערך מונים, פעולות על מחרוזות, Debugger

בכיתה

ביום ב' (4.3.24)
פעולת המחרוזת CompareTo.
ביום ג' (5.3.24)
* חזרה על פעולת המחרוזת CompareTo 
* עבודה לראשונה עם ה-
Debugger.
ביום ה' (7.3.24)
מבדק ש.ב בנושאים:
   - מערך מונים 
   - פעולות על מחרוזות.

   
המבדק נדחה ליום ה', ה- 21.3.2024 בשל ביטול השיעור (פעילות חמישיות).
   ביום 21.3.24 אין שיעור בשל אירוע פורים.

   
המבדק נדחה ליום 28.3.24.
ביום ב' (11/3/2024)
מבוא למחלקות
| מהי מחלקה? |
באנגלית - class.
מחלקה היא טיפוס מורכב היכול להכיל מספר תכונות וגם מספר פעולות.
מחלקה הינה תבנית ליצירת עצמים (אובייקטים) מסוגה.
יתכן ותהיה למתכנת גישה למחלקה מסוימת אך המתכנת לא ייצור עצמים מסוגה.
| מהו עצם? |
מלים נרדפות לעצם: מופע / אוביקט / ישות.
עצם באנגלית: Instance / Object / Entity.
אם בעבר יצרנו משתנים מטיפוסים פשוטים / פרמיטיביים (שלם, ממשי, תו, בוליאני...)
* משתנה פרמיטיבי יכול להכיל ערך אחד בנקודת זמן מסוימת.
* משתנה פרמיטיבי יכול להכיל ערך מהטיפוס שלו בלבד.
הרי שכיום ניתן ליצור משתנים מורכבים הדומים יותר לישויות (עצמים) מהחיים האמיתיים:
* לעצם קיימות מספר תכונות שהוגדרו במחלקה ממנה הוא נוצר.
   לדוגמה: לעצם מטיפוס מערך-שלמים קיימת התכונה Length: ולכן נוכל להדפיס את אורך המערך:
   ;(Console.WriteLine(arr.Length
* לעצם קיימת אפשרות לזמן פעולות הקיימות במחלקה ממנה הוא נוצר.
   דוגמה של עצם מטיפוס צב המזמן פעולת מחלקה: ;(t1.TurnRight(90
   דוגמה של עצם מטיפוס מכונת-הגרלה המזמן פעולת מחלקה: ;(rnd.Next(1, 11
   דוגמה של עצם מטיפוס תלמיד המזמן פעולת מחלקה: ;()Console.WriteLine(s1.GetAverage
דוגמאות למחלקות שונות שניתן ליצור:
* סטודנט
* דלת
* מכונית
* שולחן
* כיתה
* מורה
* מבחן
* צב
* קופסה
ועוד.
| אודות יצירת עצמים |
כדי ליצור עצם מטיפוס מסוים, על הטיפוס (המחלקה) להיות זמין לנו בפרויקט.
* ישנם טיפוסים זמינים כל הזמן, כמו הטיפוס/המחלקה Random .
* ישנם טיפוסים הנמצאים בקובץ מסוים ויש צורך לשייך את הפרויקט שלנו לקובץ זה (למשל: Unit4.dll).
* ישנם טיפוסים שאנו כותבים בפרויקט שלנו ולכן הם זמינים לשימוש בפרויקט.
דוגמאות: 
1. מחלקת Student
אם המתכנת כתב בפרויקט את מחלקת Student, הוא יכול ליצור ממנה מופעים / עצמים של סטודנטים:
;()Student s1 = new Student
;()Student s2 = new Student
בדוגמה זו יצרתי שני עצמים של סטודנטים: העצם s1 והעצם s2.
ניתן יכול לזמן פעולה על עצם, בתנאי שפעולה זו נמצאת במחלקה ממנה נוצר העצם. לדוגמה:
;(()Console.WriteLine(s1.GetAverage
הפעולה GetAverage קיימת במחלקה Student ומטרתה להחזיר ערך ממשי המייצג את ממוצע
ציוניו של התלמיד.
2. מחלקת Turtle
אם יש לי גישה למחלקת Turtle אני יכול ליצור ממנה מופעים / עצמים של צבים:
;()Turtle t1 = new Turtle
בדוגמה זו נוצר עצם אחד מטיפוס צב ששמו t1.
3. מחלקת Random
אם יש לי גישה למחלקת Random אני יכול ליצור ממנה מכונת הגרלה:
;()Random rnd = new Random
בדוגמה זו נוצר עצם אחד מטיפוס Random כלומר, 
מטיפוס מכונת הגרלה.
| עבודה עם הקובץ Unit4.dll |
1. הצבת הקובץ בתיקיה:       הורדת הקובץ Unit4.dll (אם צריך) והעתקתו לתיקיית הפרויקט עליו עובדים.
2. קישור הפרויקט לקובץ:      מתוך הפרויקט: יצירת Reference לקובץ Unit4.dll הנמצא בתיקיית הפרויקט.
3. ציון ה- namespace:        בתוך הפרויקט למעלה: שימוש ב- Using עבור ה- Namespace הרצוי.
                                           במקרה זה השתמשנו ב- using TurtleLib.
4. יצירת עצמים מטיפוס צב:   יצירת אובייקט מטיפוס Turtle ובשם t1 וזימון הפעולות שלהלן:
                                           א. MoveForeward
                                           ב. TailDown
                                           ג. TurnRight
                                           ד. SetDelay
ביום ב' (18/3/2024)
מענה מקיף לשאלות התלמידים לגבי תרגילים שונים.
ביום ג' (19/3/2024)
מיקום השיעור - בבניין החטיבה העליונה
השיעור מתקיים בכיתה רגילה (שיעור חמישי בחדר 1104 ואח"כ שיעור שישי בחדר 1114).
נושא ראשון הנחיות כניסה לקורס יסודות של Campus.il תשפ"ד
העשרה באמצעות לימוד מסודר מלווה סרטונים, הסברים ומבדקים ב- Campus.il.
ש ל ב י   ה כ נ י ס ה  לקורס יסודות המעודכן לתשפ"ד:
א. היכנסו לאתר Campus.gov.il כאן.
    לחצו על הקישור למטה: "כניסה באמצעות משרד החינוך". הקלידו את שם המשתמש והסיסמה שלכם.
ב. הדביקו הקישור המיוחד* בשורת הכותרת של הדפדפן ולחיצה על Enter.
ג. כאן תקבלו את אחת מהאפשרויות הבאות:
    1) כניסה לקישור הקורס
"הכנה לBUGרות יסודות מדעי המחשב #C תשפ"ד". לחצו על הקישור.
        יופיעו בפניכם פרקי הקורס.
    2) פרקי הקורס כבר מופיעים בדף (למטה).
ד. לחצו על הקישור לפרק הקורס הרלוונטי עבורכם כרגע. קראו ההסברים, צפו בסרטונים, ראו השאלות
    והמבדקים. כך תוכלו להשלים פערים, להעמיק, לבחון את עצמכם, ללמוד נושאים חדשים, והכל באמצעות
    הקורס המעודכן ביותר של Campus.il בנושא יסודות שעדיין לא פורסם רשמית באתר.

הקישור המיוחד:
נושא שני - תרגול ראשוני של מחלקת דלי
1. חלוקת תרגיל מחלקת דלי, דיון תיאורטי.
2. חלוקת פתרון תרגיל מחלקת דלי. דיון תיאורטי.

לבית
ש.ב מיום ג', ה- 5.3.24 ליום ה', ה- 7.3.24:
1. ראו בקב' בוואטסאפ: דף "תרגול מערכים מסכם - חלק II" - ענו על שאלות 3-6.
ש.ב מיום ה', ה- 7.3.24 ליום ב', ה- 11.3.24:
1. כאן יופיעו תרגילים בנושא מערכים ובנושא מחלקות.
   
שיעורי הבית הללו בוטלו כיוון שהכיתה היתה בפעילות חמישיות ביום ה' האחרון.
ש.ב מיום ב', ה- 11.3.24 ליום ג', ה- 12.3.24:
1. הורידו הקובץ Unit4.dll למחשבכם ושמרו אותו בתיקייה הראשית ב- DiskOnKey שלכם.
     ראו קישור להורדת הקובץ Unit4 בדף 'קישורים' סעיף 500.
2. קראו שוב את ההנחיות של טעינת קובץ dll לפרויקט שלכם.
     ראו דף 'קישורים' סעיף 510.
3. ראו קוד מוכן לשימוש באובייקט Turtle.
     ראו דף 'קישורים' סעיף 530.
4. בצעו התרגילים בנושא מחלקת Turtle.
     ראו תרגילים בדף 'קישורים' סעיף 540.

בשיעורים הבאים 
1. מענה על שאלות בנושא מחלקת Turtle (צב).
2. מחלקת Bucket (דלי).