PracticU

הבדל בין Reference לבין Value (נוסף)

בלי כתוביותעם כתוביות
PracticU › קורס תכנות מונחה עצמים - OOP - Object Oriented Programming - חומר לימוד של מדעי המחשב › הבדל בין Reference לבין Value (נוסף)
מילון מושגים:
משתנה - שם שמפנה למקום בזיכרון שבו נשמר ערך שיכול להשתנות במהלך ריצת התוכנית, כמו מספר, טקסט או אובייקט.
אובייקט - יחידה בתכנות מונחה עצמים שמאגדת נתונים (תכונות) ופעולות (מתודות). נוצר בדרך כלל ממחלקה המשמשת כתבנית.
זיכרון - רכיב מהיר ונדיף שבו המחשב שומר נתונים ותוכניות בזמן ריצתם. תוכנו נמחק עם כיבוי המחשב.
מחרוזת - סוג נתונים שמייצג רצף של תווים, כלומר טקסט, ומשמש לאחסון מילים, משפטים או כל רצף סימנים.

הבדל בין Reference לבין Value (נוסף)
השיעור מסביר את ההבדל בין משתנה מסוג ערך (value type) לבין משתנה מסוג הפניה (reference type), ומבהיר מה מועבר בפועל למשתנה של המכונית.
השלבים העיקריים
1. משתנה מסוג ערך: מכיל את הערך עצמו. בדוגמה: משתנה שכר שמכיל בתוכו את הערך 5000.
2. משתנה מסוג הפניה: לא מכיל את האובייקט, אלא מצביע אליו. בדוגמה: המשתנה myCar מצביע למכונית שנמצאת בזיכרון.
3. new: כשכותבים new Car(), נוצר אובייקט בזיכרון, והמשתנה מקבל הפניה אליו. בזכות ההפניה ניגשים לאותו רכב.
4. מחרוזת: string הוא סוג הפניה, אף שהוא נראה כמו משתנה פשוט כשמשייכים לו טקסט.
5. סוגי ערך נוספים: double ו-bool הם מסוג ערך, כלומר הערך נשמר במשתנה עצמו.
הבחנה בין שני הסוגים נחוצה לכל עבודה עם דוטנט.
השיעור הבא בקורס: מערך של אובייקטים - Objects Array

פרקי ההרצאה: הבדל בין Reference לבין Value (נוסף)

  1. 00:00

    שני סוגי המשתנים ב-dotNET

  2. 01:14

    יצירת מכונית עם new

  3. 01:52

    מהו מצביע Pointer

  4. 03:54

    משתנה המכיל מצביע לערך

  5. 05:13

    משתנה int עם הערך עצמו

  6. 06:10

    ההבדל בין Value ל-Reference

תמלול ההרצאה: הבדל בין Reference לבין Value (נוסף)

הטקסט המלא של הדקות הראשונות בהרצאה «הבדל בין Reference לבין Value (נוסף)» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:02

    שלום לכולם, בהרצאה היום אני עומד לתת הסבר על שני סוגי המשתנים שקיימים בדוטנט, שני סוגי המשתנים היחידים שקיימים בדוטנט, ובהרצאה הזאת אני גם עומד להסביר את ההסבר האולי קצת מעורפל שנתנתי בהרצאה הקודמת, לגבי, אם נחזור לדוגמה שלנו מההרצאה הקודמת, לגבי מה מועבר לפה, למשתנה הזה MyCar.

  2. 00:27

    אז אם אתם זוכרים, יצרנו בהרצאה הקודמת קלאס של car, קלאס שמייצג רכב, אוקיי? נתנו לו כל מיני משתנים, זה השם של הרכב, זה השנה שלו, יש לו גם צבע, כל מיני פונקציות שהמכונית יכולה לבצע, יכולה לעשות.

  3. 00:49

    עכשיו, הגענו לפה, אנחנו רוצים ליצור למעשה את הcar. אם אתם זוכרים מהסרטוט שלנו, זה למעשה התרשים, הקלאס שיצרנו זה למעשה תרשים, התבנית שלפיה אנחנו יכולים ליצור מכונית.

  4. 01:04

    עכשיו, עדיין אין לנו את המכונית, כלומר אין לנו את הדבר הזה, אז כדי ליצור את הדבר הזה אנחנו צריכים לעשות את הפעולה הבאה:

  5. 01:15

    אנחנו נותנים את המשתנה car, כי כרגע יצרנו קלאס בשם car, כותבים את השם של המשתנה שאנחנו רוצים, ומשתמשים באופרטור new car, יצירת מכונית חדשה.

  6. 01:28

    וסוגריים וסוגריים. אז בהרצאה הקודמת אמרתי שכאשר אנחנו מבצעים את הפעולה הזאת, מועבר לפה ערך כלשהו. לא הסברתי במדויק מה מועבר.

  7. 01:39

    אז מה שמועבר לפה זה לא הדבר הזה, זה לא המכונית עצמה. מה שמועבר לפה זה, אפשר להגיד, הדבר הזה. הדבר הזה מייצג, באנגלית זה נקרא פוינטר, מצביעה.

  8. 01:57

    זה משהו שמאפשר לנו להתייחס למכונית, אוקיי? תחשבו עליו כמו איזה חבל שאנחנו יכולים בעזרתו למשוך את המכונית או משהו כזה. מה שמועבר לנו פה זה מצביע.

  9. 02:15

    מצביע זה בסופו של דבר מספר שמתייחס למשהו מסוים. במקרה שלנו, בוא נכתוב פה לדוגמה, יש פה איזה מספר כולשהו, המספר כרגע לא משנה, רק בשביל הדוגמה יהיה פה מספר, המספר הזה מתייחס לאובייקט הזה.

  10. 02:38

    המספר הזה למעשה מייצג כתובת מסוימת, שבכתובת הזאת נמצא נמצאת המכונית אוקיי אז כשאנחנו עכשיו עשינו את הפעולה הזאת של New Car מה שקיבלנו פה זה את הדבר הזה מה שיש לנו פה את העסק הזה יש לנו פה עכשיו איזה מספר שמראה לנו איפה המכונית נמצאת ואנחנו בעזרתו יכולים לגשת למכונית איך אנחנו ניגשים למכונית אנחנו רושמים My Car נקודה והמשתנה שלה אז מה שיש לנו פה למעשה

  11. 03:25

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

  12. 03:51

    אז זה מביא אותנו למעשה להרצאה שלנו על סוגי משתנים. אז מה שכרגע ראינו זה למעשה סוג משתנה אחד. הסוג המשתנה הזה אם באזור הזה אם אני אצייר את זה בצורה טיפה יותר טובה אם זה יהיה המשתנה שלנו פה אוקיי הוא מכיל איזה מצביע לערך אוקיי בוא נגיד שזה יהיה הערך זה למעשה הערך זה המכונית

  13. 04:22

    אם זה המצביע זה המשתנה שלנו שהוא מצביע לערך שלנו אז בתוך המשתנה הזה שזה יהיה במקרה בוא נגיד בדוגמה שלנו זה היה מייקאר אוקיי אז מייקר זה המשתנה הזה מכיל את הדבר הזה ובעזרתו בעזרת המצביע הזה אנחנו ניגשים לערך זה יהיה פה הערך שלנו זה יהיה הvalue זה הvalue שלנו פה זה הvalue וזה למעשה מה שיש בתוך

  14. 05:07

    המשתנה מייקר המספר הזה שמייצג אותו אז זה סוג אחד של משתנה עכשיו בוא ניגש למשתנה int int זה גם משתנה כשאנחנו נותנים למשתנה מייסלארי את המספר 5000 אנחנו למעשה אם עכשיו אנחנו נסמן פה עכשיו את המשתנה הזה המשתנה הזה בוא נגיד מייצג את מיי סלארי זה מיי סלארי אז מה שיש בתוך המשתנה הזה מיי סלארי זה לא מצביע כמו שיש פה זה לא איזה מספר

  15. 05:40

    מסוים שמצביע לאובייקט לרכב עצמו מה שיש פה בתוך המשתנה הזה מיי סלארי זה ממש המספר עצמו 5000 סליחה, יש פה את המספר 5000, אוקיי?

  16. 06:01

    אז פה במשתנה הזה מסוג int יש לנו ממש את הערך עצמו, והנה מאחור יש לנו פה את הvalue, 5000 זה הvalue, אוקיי?

  17. 06:16

    אז יש לנו פה את הערך ממש שלו, של המשתנה my salary. במשתנה הזה אין לנו את הvalue, אבל הוא נמצא פה, אבל מה שיש לנו פה זה reference, reference, התייחסות.

  18. 06:32

    יש לנו משתנה של התייחסות, הוא מתייחס אלינו, מתייחס למכונית. משתנה זה לא מכיל את המכונית עצמה כמו שיש לנו פה הוא מכיל איזה מצביע מסוים למכונית ובשפת תכנות הוא מכיל רפרנס רפרנס באנגלית

לקורס המלא: קורס תכנות מונחה עצמים OOP

ההרצאה הקודמת: יתרונות של Reference Type

ההרצאה הבאה: מערך של אובייקטים - Objects Array

הרצאות קשורות מקורסים אחרים

  • הבדל HUB לבין Switch
  • זיכרון - הבדל בין DDR-2 לבין DDR-3
  • Returning a Value from a Function
  • הבדלים בין NTLM Hash לבין NTLMv2 - הסבר נוסף

קורסים נוספים במסלול

  • קורס יסודות התכנות - שפת C# .NET - קורס תכנות למתחילים - דוט-נט / סי-שארפ - חומר לימוד של מדעי המחשב