שינוי אובייקטים - Modifying Objects
-
0:01 - 0:05חזרנו! הפעם, התוכנה שלנו מכילה את אובייקט ווינסטון
-
0:05 - 0:10אבל אנחנו מציגים רק את הגיל של ווינסטון. זה משום שאני רוצה להראות
-
0:10 - 0:14לכם איך נוכל לשנות את הגיל של ווינסטון. כי אתם יודעים שבסופו של דבר
-
0:14 - 0:18ווינסטון חייב להפוך למבוגר יותר. בואו ניזכר איך זה היה אם היינו
-
0:18 - 0:23משתמשים במשתנים פשוטים. יש לנו את var winstonAge שווה ל-19
-
0:23 - 0:27ואם נרצה לשנות את זה, נרשום winstonAge שווה ל-20.
-
0:27 - 0:31וזה ישנה את הערך השמור במשתנה הזה. זה מאוד מאוד דומה
-
0:31 - 0:39עבור מאפיינים של אובייקטים. נרשום: winston.age שווה ל-20, וכך שינינו
-
0:39 - 0:44את הערך השמור במאפיין הגיל של האובייקט ווינסטון.
-
0:44 - 0:45מגניב.
-
0:45 - 0:49בואו נראה אם זה עבד. ניקח את פקודת ה-text, נשים אותה למטה
-
0:49 - 0:54נשנה את מיקום ה-y, וטה-דה! ווינסטון נהיה מבוגר יותר. קלי קלות.
-
0:55 - 0:59אוקיי, אז עכשיו ננסה.. עכשיו רק הוספנו אחד לגיל שלו
-
0:59 - 1:07בואו נעשה את זה בצורה יותר תכנותית. נרשום: winston.age שווה winston.age ועוד 1.
-
1:07 - 1:11מה שאנו אומרים כאן הוא - לקחת את הערך הקודם של הגיל שלו
-
1:11 - 1:16להוסיף לו אחד, ואז לשמור את הערך החדש במאפיין הגיל.
-
1:17 - 1:22זה אמור פשוט להוסיף אחד לערך הקודם שהיה. בואו נראה.
-
1:23 - 1:26נציג את זה.. טה-דה! הוא בן 21.
-
1:26 - 1:30נהיה כל כך מבוגר.. אוקיי. עכשיו, זכרו שיש לנו קיצור דרך להוספת אחד
-
1:30 - 1:37למשתנים, ואותו קיצור דרך עובד עם מאפיינים של אובייקטים, אז נוכל לרשום: winston.age++
-
1:38 - 1:45בואו נראה אם זה עבד. כן! וזה באמת עשה בדיוק את אותו הדבר כמו השורה הזאת
-
1:45 - 1:49זה פשוט קיצור דרך, כדי שלא נצטרך להקליד כל כך הרבה.
-
1:49 - 1:53אם נסתכל על כל זה, זה באמת נראה כמו מקרה המתאים ללולאה.
-
1:53 - 1:58אנו רושמים את אותו קוד שוב ושוב, והדבר היחיד שאנו משנים זה שאנו מוסיפים אחד
-
1:58 - 2:03לגיל שלו, ואנו משנים את מיקום ה-y כדי שזה יודפס בשורה נפרדת.
-
2:03 - 2:07אז, אם נשתמש בלולאה, זה יהיה ממש קל להציג אותו מתבגר ומתבגר
-
2:07 - 2:13בלי לכתוב כל כך הרבה קוד. נעשה לולאה כדי להציג את ווינסטון מתבגר עד גיל 40.
-
2:13 - 2:16הוא לא רוצה להתבגר יותר מזה כי אז הוא יהיה מקומט
-
2:16 - 2:19ונצטרך לקרוא לו מקומטסטון.
-
2:19 - 2:20אוקיי.
-
2:20 - 2:27נבנה לולאת while ונרשום: while (כל עוד) winston.age קטן או שווה ל-40
-
2:27 - 2:32וכאן בפנים, נציג את הגיל שלו
-
2:32 - 2:38ונוסיף אחד לגיל שלו בכל פעם.
-
2:38 - 2:42אוקיי, זה עבד, אבל הכל מוצג אחד על השני, אז אנחנו צריכים לשנות גם את מיקום ה-y
-
2:42 - 2:53בכל פעם. אז נרשום פשוט: winston.age כפול 20, אה, ננסה פחות 200, או פחות 300..
-
2:53 - 3:03אוקיי! פחות 350. בסדר. זה נראה טוב. בואו נמחק את הדברים הישנים פה.
-
3:03 - 3:10טה-דה! עכשיו אנחנו יכולים לראות את ווינסטון מתבגר יותר ויותר, אבל לא כל כך הרבה כדי להפוך למקומטסטון.
-
3:10 - 3:16אוקיי. עכשיו כשאני יודעים לשנות גיל, אנו יכולים גם להוסיף מידע נוסף
-
3:16 - 3:22באובייקט של ווינסטון ככל שהוא מתבגר. למשל, אולי כשהוא מגיע לגיל 30, הוא יפגוש מתכנתת אחרת
-
3:22 - 3:25ששמה וויניפר, והוא יתחתן איתה.
-
3:25 - 3:29ולא, הוא לא יתחתן איתה רק כי יש לה שם כזה אדיר.
-
3:29 - 3:34מה שאנו יכולים לעשות זה להוסיף מאפיין, פשוט כך -
-
3:34 - 3:39winston, נקודה, ואז המפתח של המאפיין החדש, שנקרא לו wife, והערך שלו שווה "Winnefer".
-
3:39 - 3:44מצוין, אבל אנחנו רוצים שתהיה לו אישה רק כשהוא בגיל טוב לנישואים
-
3:44 - 3:53אז נאמר שאם זה שווה 30.. ונזיז את החלק הזה לכאן פנימה.
-
3:53 - 3:58נהדר. עכשיו יש לו אישה, הם מאושרים, ואחר כך יש להם ילדים
-
3:58 - 4:04כמה שנים אחר כך, אז נניח כשהם בני 32, נוסיף כמה ילדים לאובייקט
-
4:04 - 4:08כדי לעקוב אחרי זה. ויש להם תאומים, כמובן, כי הם מאוד יעילים
-
4:08 - 4:17ולתאומים שלהם נקרא, כמובן, ווינסטון ג'וניור, ווינסטוניה.
-
4:17 - 4:22יפה. זו משפחה נהדרת, עם שמות נהדרים.
-
4:22 - 4:25וכך אתם רואים שאנו יכולים להוסיף מאפיינים חדשים, מחרוזות ומערכים
-
4:25 - 4:29וכל דבר שהיה יכול להיות באובייקט המקורי.
-
4:29 - 4:34ברגע שהלולאה מסתיימת, winston.age יהיה 40, ואז לווינסטון תהיה
-
4:34 - 4:41אישה, וויניפר, וילדים תאומים, שהם מערך של שני שמות.
-
4:41 - 4:46זו לולאה מצוינת. אבל, אם אתם לא אוהבים את איך שהסיפור הזה נגמר בשביל ווינסון,
-
4:46 - 4:50אתם תמיד יכולים לשנות את התוכנית (ליצור spin-off) ולספר סיפור משלכם על העתיד שלו,
-
4:50 - 4:54עכשיו כשאתם יודעים הכל על איך לשנות מאפיינים של אובייקטים.
- Title:
- שינוי אובייקטים - Modifying Objects
- Description:
-
זהו פשוט צילום מסך של שיעור הקוד האינטראקטיבי שלנו, שהוכן כדי להקל על הכנת כתוביות ותרגום. עדיף לצפות בשיעורים שלנו בכתובת:
https://www.khanacademy.org/cs/programming/This is just a screen grab of our interactive coding talk-through, prepared to make captioning and translation easier. It is better to watch our talk-throughs here:
https://www.khanacademy.org/cs/programming/ - Video Language:
- English
- Duration:
- 04:54
nataly.eliyahu edited Hebrew subtitles for Modifying Objects | ||
nataly.eliyahu edited Hebrew subtitles for Modifying Objects |