1 00:00:08,483 --> 00:00:11,477 [Powered by Google Translate] [מוסיקת רוק] 2 00:00:32,435 --> 00:00:35,429 [מוסיקה - "מאושרת ביחד" הצבים] 3 00:01:27,330 --> 00:01:30,170 הדוד Malan: היום, אנחנו מתחילים החיפושים שלנו 4 00:01:30,170 --> 00:01:32,710 יסודות מדעי מחשב והמבוא שלנו, 5 00:01:32,710 --> 00:01:35,070 עכשיו, לאמנות של תכנות, אשר שהיא 6 00:01:35,070 --> 00:01:36,260 רק דוגמה אחת. 7 00:01:36,260 --> 00:01:39,600 אבל באותה הרוח של פתרון בעיות, שיודע 8 00:01:39,600 --> 00:01:42,080 יום פאזל מסורתי של CS50 הוא מחר. 9 00:01:42,080 --> 00:01:45,190 אם לא RSVPed עדיין לאירוע זה, אתה יכול ללכת ל 10 00:01:45,190 --> 00:01:47,510 cs50.net/rsvp. 11 00:01:47,510 --> 00:01:50,940 אתה יכול להביא את הצוותות של שניים או שלוש או ארבעה. 12 00:01:50,940 --> 00:01:53,080 אתה יהיה לערער עם בעיות כמו זו שראית 13 00:01:53,080 --> 00:01:54,190 שם למעלה בהתחלה. 14 00:01:54,190 --> 00:01:57,000 כל הבעיות החדשות בשנה זו אם נטלה חלק גם בשנה שעברה, ואתה 15 00:01:57,000 --> 00:01:59,680 יהיה לנו סיכוי אז לזכות בפרסים מדהימים. 16 00:01:59,680 --> 00:02:02,750 ביניהם, ה-Wii וכמה שוברי מתנה וכדומה, 17 00:02:02,750 --> 00:02:05,650 כל הזמן שהסתובב עם CS50 תלמידים לכיתה 18 00:02:05,650 --> 00:02:07,720 ופיצה ופייסבוק. 19 00:02:07,720 --> 00:02:10,430 נוסף על כך שמחר אם אתה רוצה. 20 00:02:10,430 --> 00:02:13,330 >> אז זה הוא CS50, לאלה מכם שהצטרפו אלינו ל 21 00:02:13,330 --> 00:02:14,510 הפעם הראשונה. 22 00:02:14,510 --> 00:02:18,030 ויודעים שקורס זה נקבע במיוחד כדי לקבל 23 00:02:18,030 --> 00:02:22,605 אתה בקורס הזה עד סופו הסופי, ובנקודה שאתה 24 00:02:22,605 --> 00:02:24,270 תהיה לא רק הבנה של אלה 25 00:02:24,270 --> 00:02:26,450 יסודות מדעי מחשב, אבל יהיה לך 26 00:02:26,450 --> 00:02:29,120 זו קבוצה מיומנת מאוד פרקטית, כי אז אתה יכול לקחת אותו ל 27 00:02:29,120 --> 00:02:31,370 המחלקה שלך, בין אם זה מדעי הנדסה, 28 00:02:31,370 --> 00:02:33,570 מתמטיקה שימושית, המדעים הפיסיקליים, הטבעי 29 00:02:33,570 --> 00:02:34,780 מדע, או כמו. 30 00:02:34,780 --> 00:02:37,030 ואכן, מה כל כך מרגש במדעי מחשב אלה 31 00:02:37,030 --> 00:02:39,900 ימים הם שזה פשוט כל כך ישים 32 00:02:39,900 --> 00:02:40,990 כל מיני תחומים. 33 00:02:40,990 --> 00:02:46,210 ואף על פי שכיום, אנו לגרד את פני השטח של רק 34 00:02:46,210 --> 00:02:49,020 שפת תכנות מאוד מסורתית המכונית C, אהיה 35 00:02:49,020 --> 00:02:51,040 במקום להסתכל על משהו שנקרא גרד, משהו עם 36 00:02:51,040 --> 00:02:53,420 אשר שסיפור אהבת העוגייה בוצע על ידי אחד משלך 37 00:02:53,420 --> 00:02:57,020 קודמים בשנים האחרונות, לספר סיפורים, ליצירת משחקים, 38 00:02:57,020 --> 00:03:00,060 ליצירת אמנות אינטראקטיבית, ובעצם להתחיל לעוטפנו 39 00:03:00,060 --> 00:03:02,240 מוחות ברחבי חלק מהמבנים הבסיסיים ש 40 00:03:02,240 --> 00:03:05,390 בבסיס תכנות אבל בהקשר זה, כפי שתראה, זה 41 00:03:05,390 --> 00:03:09,140 הרבה פחות מפחיד, זה הרבה פחות מסתורי, ממה שאתה רואה 42 00:03:09,140 --> 00:03:10,140 לפני זמן רב. 43 00:03:10,140 --> 00:03:12,410 ותבינו, גם לאלה מכם שהצטרפו אלינו רק זה 44 00:03:12,410 --> 00:03:16,170 סמסטר, את המשפטים שעליו אנו נסתיימו בהרצאתו של יום רביעי, 45 00:03:16,170 --> 00:03:20,260 זה לא כל כך חשוב איפה אתה בסופו ביחס ל 46 00:03:20,260 --> 00:03:22,950 חברים לכיתה בכיתה זו, אבל איפה, עד סוף הסמסטר 47 00:03:22,950 --> 00:03:27,190 בשבוע 11, בסופו ביחס לעצמך זכות עצם היום הזה. 48 00:03:27,190 --> 00:03:32,000 >> אז בלי עיכובים נוספים, זה גם ראוי לציין כי 49 00:03:32,000 --> 00:03:34,450 אלה פחות נוחים, אלה איפשהו באמצע, הם 50 00:03:34,450 --> 00:03:36,825 גם, על ידי עיצוב של קורס זה, לא בכל חסרון 51 00:03:36,825 --> 00:03:38,760 פנים אל פנים אלה יותר נוחים 52 00:03:38,760 --> 00:03:39,920 מגיע למעמד הזה. 53 00:03:39,920 --> 00:03:41,810 כפי שתראה בשבועות באים, יש לנו שונה 54 00:03:41,810 --> 00:03:44,600 מסלולים לרקע אחורי שונה לגמרי, חתכים למי 55 00:03:44,600 --> 00:03:46,500 פחות נוח, יותר נוח, אלה איפשהו 56 00:03:46,500 --> 00:03:47,250 בין לבין. 57 00:03:47,250 --> 00:03:49,520 כפי שתראה בסוף שבוע ובשבוע הבא, שתי גרסות של 58 00:03:49,520 --> 00:03:52,410 סטים בעייתיים ביותר היא במהדורה רגילה ואז האקר 59 00:03:52,410 --> 00:03:55,390 שכולכם יכול עצמי לבחור את הנתיב שבך 60 00:03:55,390 --> 00:03:56,615 הם הכי נוחים. 61 00:03:56,615 --> 00:03:58,770 >> אז היום, אנחנו לצלול לתוך זה תכנות 62 00:03:58,770 --> 00:04:00,060 שפה נקראת גרד. 63 00:04:00,060 --> 00:04:02,250 זה שפת תכנות גרפית, ועדיין יש לו את 64 00:04:02,250 --> 00:04:04,500 אותן תכונות של כמה מהשפות ברמה הגבוהות אנחנו 65 00:04:04,500 --> 00:04:07,050 לבדוק מאוחר יותר בסמסטר, ביניהם C ו 66 00:04:07,050 --> 00:04:08,670 JavaScript ו-PHP. 67 00:04:08,670 --> 00:04:11,890 אבל זה הולך כדי לאפשר לנו להימנע מכמה מסח הדעת 68 00:04:11,890 --> 00:04:14,890 בשלב מוקדם בתחביר, דברים כמו פסיק, סוגריים, 69 00:04:14,890 --> 00:04:17,720 ופרטים סודיים אחרים, במבט הראשון, הם פשוט לא 70 00:04:17,720 --> 00:04:19,916 בכל אופן אינטלקטואלי מעניין ונוטים לקבל ב 71 00:04:19,916 --> 00:04:22,310 הדרך מכמה הבנה בסיסית. 72 00:04:22,310 --> 00:04:24,870 במונחים של היום מבנה התמיכה קדימה, הבין את זה 73 00:04:24,870 --> 00:04:27,570 כלי, CS50 לדון, שיהיה צמוד על מהלכו של 74 00:04:27,570 --> 00:04:30,320 אתר מאוחר יותר היום, הוא פורום הדיון המקוון ב 75 00:04:30,320 --> 00:04:32,480 שתוכל לשאול שאלות אחד של השני ו 76 00:04:32,480 --> 00:04:35,020 צוות, וזה גם כלי, כפי שנראים בשבוע הבא, 77 00:04:35,020 --> 00:04:37,240 שאנו נשתמש די בintegratedly 78 00:04:37,240 --> 00:04:38,780 שעתי עבודה גם כן. 79 00:04:38,780 --> 00:04:41,670 ואכן, שעתי עבודה מתחילות ביום שני, ולמען אמת, הראשונה 80 00:04:41,670 --> 00:04:43,930 שבוע לשעתי עבודה הוא מפתח נמוך למדי. 81 00:04:43,930 --> 00:04:46,820 >> אני לא חושב שתמצא את כל סריטות שאינן נגישות. 82 00:04:46,820 --> 00:04:48,930 זה די מובן מאליו, כפי שנראה, ואז מה 83 00:04:48,930 --> 00:04:51,380 אנו נשתמש בו להיום הוא לחלץ כמה 84 00:04:51,380 --> 00:04:53,990 תפיסות יסוד שיהיה, אם כן, נמשכות לאורך 85 00:04:53,990 --> 00:04:54,900 שאר הסמסטר. 86 00:04:54,900 --> 00:04:57,980 אבל החל מיום שני, בשעה 8:00 ב23:00 יהיו 87 00:04:57,980 --> 00:05:01,530 שעתי עבודה באננברג מעל הפסקת מוח. 88 00:05:01,530 --> 00:05:04,490 חתך 2 ייחלו ערב, אז מתישהו 89 00:05:04,490 --> 00:05:07,260 בסוף השבוע, ללכת לcs50.net/section, ואתה 90 00:05:07,260 --> 00:05:08,530 להישאל מספר שאלות. 91 00:05:08,530 --> 00:05:10,290 ביניהם, איך היית מתאר אותך 92 00:05:10,290 --> 00:05:12,040 רמת נוחות כמו של היום? 93 00:05:12,040 --> 00:05:14,450 אין שלטון חזק, מהיר כאל מי שבדלי. 94 00:05:14,450 --> 00:05:17,170 זה פשוט מסוג הדברים שאתה בוודאי יודע אם אתה 95 00:05:17,170 --> 00:05:20,280 הם בין אלה פחות נוחים או בדרך אחרת. 96 00:05:20,280 --> 00:05:21,350 >> ועכשיו, הדרכות. 97 00:05:21,350 --> 00:05:24,020 מפרט הבעיה נקבעה לשבוע הזה, הן הסטנדרטי 98 00:05:24,020 --> 00:05:28,560 ומהדורת האקר כאחד, היא באופן מקוון ב cs50.net נכון לעכשיו. 99 00:05:28,560 --> 00:05:31,500 ותראה כי הראשון של מהדורות אלה, 100 00:05:31,500 --> 00:05:33,940 מהדורה סטנדרטית בכל שבוע, מלווה במשהו שאנחנו 101 00:05:33,940 --> 00:05:36,550 קורא הדרכת קוד, ישיבה בראשותו של אחד מ 102 00:05:36,550 --> 00:05:39,100 עמיתי ההוראה של קורסים כדי להדריך אותך, לספק 103 00:05:39,100 --> 00:05:42,290 טיפים על, ולקבל אותך בדרך מסוימת כשמדובר 104 00:05:42,290 --> 00:05:44,150 לסטים מתחילים בעיות אלה. 105 00:05:44,150 --> 00:05:46,790 אז עם כל אחד מאלה קובע בעיה, אם אתה אי פעם רצית 106 00:05:46,790 --> 00:05:50,250 בעצמך היכן אני מתחיל, אתה מתחיל עם אלה 107 00:05:50,250 --> 00:05:50,890 הדרכות. 108 00:05:50,890 --> 00:05:53,450 ולמעשה, הרשה לי להציג Zamyla צ'אן, זה 109 00:05:53,450 --> 00:05:55,870 עמית ההוראה של השנה שיוביל כל אחד ו 110 00:05:55,870 --> 00:05:56,910 אחת מההדרכות אלה. 111 00:05:56,910 --> 00:05:57,961 Zamyla? 112 00:05:57,961 --> 00:06:03,370 >> [מחיאות כפות] 113 00:06:03,370 --> 00:06:03,975 ZAMYLA צ'אן: הו, היי, כולם. 114 00:06:03,975 --> 00:06:05,130 השם שלי הוא Zamyla. 115 00:06:05,130 --> 00:06:08,250 אני לומד הנדסה זוטרה בינתרופ הבית. 116 00:06:08,250 --> 00:06:10,890 אבל אני מנסה ולהשתלב בקורסים כמו מדעי מחשב רבים ככל 117 00:06:10,890 --> 00:06:13,350 יכול, וזו הסיבה שאני ממש נרגש להיות מוביל זה 118 00:06:13,350 --> 00:06:14,590 ההדרכות של השנה. 119 00:06:14,590 --> 00:06:16,950 הדרכות, בשבילי, היו חלק חיוני של CS50 120 00:06:16,950 --> 00:06:17,910 ניסיון. 121 00:06:17,910 --> 00:06:22,710 במהלך ההדרכה, לכל p-סט, תלכו דרך 122 00:06:22,710 --> 00:06:25,580 הבעיה להגדיר ביחד, להסתכל על הבעיות, סוג של 123 00:06:25,580 --> 00:06:27,360 לחלק אותם לעקיצות לניהול. 124 00:06:27,360 --> 00:06:28,990 אני אתן לך טיפים, טכניקות, להשגה 125 00:06:28,990 --> 00:06:30,820 דרך והתחלת עבודה. 126 00:06:30,820 --> 00:06:33,510 אני מקווה לראות את כולכם בהדרכות. 127 00:06:33,510 --> 00:06:34,720 אם אתה לא יכול לעשות את זה באופן אישי, ולאחר מכן 128 00:06:34,720 --> 00:06:36,580 אנא עשה מנגינה באינטרנט. 129 00:06:36,580 --> 00:06:36,840 >> הדוד Malan: מצוין. 130 00:06:36,840 --> 00:06:37,950 תודה לך, Zamyla. 131 00:06:37,950 --> 00:06:40,870 אז מבין שהדרכות הן, אכן, ביום שישי 132 00:06:40,870 --> 00:06:43,110 אחר הצהריים, אבל זה במכוון וכך 133 00:06:43,110 --> 00:06:45,750 גם אם אתה מעדיף שלא להשתתף בכיתה ביום שישי 134 00:06:45,750 --> 00:06:48,490 אחר הצהריים, בווידאו יהיה ער כל במהירות רבה יותר על 135 00:06:48,490 --> 00:06:48,990 בסוף השבוע. 136 00:06:48,990 --> 00:06:51,880 אז מבין שcs50.net יהיה כל Zamyla של 137 00:06:51,880 --> 00:06:53,130 הדרכות. 138 00:06:54,800 --> 00:06:56,890 ושיש את התאריך של היום ושעה, 3:00 בערב, 139 00:06:56,890 --> 00:06:58,370 Harberd הול, 104. 140 00:06:58,370 --> 00:07:00,080 וכמה מעמיתי ההוראה גם הכינו 141 00:07:00,080 --> 00:07:03,250 כמה הערות בשבילך בהעדרו כדי לתת לך קצת 142 00:07:03,250 --> 00:07:06,760 פרספקטיבה לגבי מה הניסיון שלהם נכנס ו 143 00:07:06,760 --> 00:07:08,990 יוצא מCS50 היה כמו. 144 00:07:08,990 --> 00:07:11,250 אז אם אוכל לעמעם את האורות בדיוק לרגע, אני ניתן לך 145 00:07:11,250 --> 00:07:18,100 כמה העובדים של CS50. 146 00:07:18,100 --> 00:07:20,440 >> ג'קסון STEINKAMP: לקח CS50 בשנה שעברה בכיתת ט 'ב 147 00:07:20,440 --> 00:07:22,880 לנפול, וזה בהחלט פוצץ את דעתי. 148 00:07:22,880 --> 00:07:25,090 מעולם לא נקטתי בשום שיעורי תכנות לפני, 149 00:07:25,090 --> 00:07:26,380 ומעולם לא נכנס עם כל מדע מחשב 150 00:07:26,380 --> 00:07:27,320 לחוות בכלל. 151 00:07:27,320 --> 00:07:29,240 ובדיוק, שמעתי את הזמזום על הכיתה ו 152 00:07:29,240 --> 00:07:30,050 החליט לקחת אותו. 153 00:07:30,050 --> 00:07:31,780 >> יוליה מיטלמן: זה היה ממש כיף, ממש מרתק. 154 00:07:31,780 --> 00:07:33,480 אני עדיין, עד עצם היום הזה - 155 00:07:33,480 --> 00:07:36,560 רק לאחרונה ראיתי שיש לי את התקליטון שהדוד נתן לנו 156 00:07:36,560 --> 00:07:38,140 ביומנו הראשון של הרצאה. 157 00:07:38,140 --> 00:07:40,020 אני תליתי אותו על הקיר שלי. 158 00:07:40,020 --> 00:07:42,410 זה כנראה קצת חנון, אבל אני נשארתי ב 159 00:07:42,410 --> 00:07:46,930 קיר בכיתה כתזכורת איך זה היה מגניב. 160 00:07:46,930 --> 00:07:49,240 >> טראוויס שפלות: זה כל כך מביך. 161 00:07:49,240 --> 00:07:50,770 >> ג'קסון STEINKAMP: מדעי מחשב הוא משהו שאתה 162 00:07:50,770 --> 00:07:52,370 צריך לנסות גם אם אתה לא אחד עבור 163 00:07:52,370 --> 00:07:54,980 המדעים המסורתיים. 164 00:07:54,980 --> 00:07:58,510 זה הניסיון שלו, וCS50 יהיה לוודא שאתה 165 00:07:58,510 --> 00:08:01,520 נתמך גם דרכו עם הצבא השלם של TFS. 166 00:08:01,520 --> 00:08:03,700 >> ALI NAHM: אני לקחתי אותו בשנה הראשונה, ואז עשיתי הרבה 167 00:08:03,700 --> 00:08:04,215 של חברים חדשים. 168 00:08:04,215 --> 00:08:07,170 אני גם התוודעתי לכל ריכוז וזה 169 00:08:07,170 --> 00:08:10,770 כל בית הספר להנדסה, ולכן אני מאוד ממליץ על זה 170 00:08:10,770 --> 00:08:14,360 ומברך אותך למשפחת CS50. 171 00:08:14,360 --> 00:08:17,510 >> יניב יעקבי: CS50 פשוט מלמד אותך כיצד להשתמש בכלים 172 00:08:17,510 --> 00:08:19,210 כי הם נגישים לציבור רחב. 173 00:08:19,210 --> 00:08:21,840 אתה רק צריך את מחשב נייד, אתה צריך דפדפן אינטרנט, ואתה 174 00:08:21,840 --> 00:08:26,030 צריך ללמוד לכתוב קצת קוד, ואתה באמת יכול לבנות 175 00:08:26,030 --> 00:08:27,400 דברים פשוטים וצנועים. 176 00:08:27,400 --> 00:08:31,660 >> KAREN שיאו: זה פשוט כל כך מגניב להיות מסוגל לעשות משהו 177 00:08:31,660 --> 00:08:34,580 ויש אנשים משתמשים בו ויש אנשים רואים את זה, וזה 178 00:08:34,580 --> 00:08:35,900 מה שאני באמת אוהב את זה. 179 00:08:35,900 --> 00:08:37,429 >> TIM מקלפלין: - תחושה של קהילה, אני חושב, בזה 180 00:08:37,429 --> 00:08:39,470 כמובן יותר מכל קורס אחר שננקטתי עד כה. 181 00:08:39,470 --> 00:08:41,350 אתה לא סתם לוקח עוד - 182 00:08:41,350 --> 00:08:42,740 אתה לא ממלא את דרישה אחרת. 183 00:08:42,740 --> 00:08:45,310 אתה לא סתם הולך להרצאות והולך לסעיף. 184 00:08:45,310 --> 00:08:49,630 אבל אתה עושה טונות של דברים שכל עניין 185 00:08:49,630 --> 00:08:51,560 תכנות והכל על טכנולוגיה, אבל זה לא 186 00:08:51,560 --> 00:08:53,090 באמת מרגיש כמו בכיתה רוב הזמן. 187 00:08:53,090 --> 00:08:55,012 >> שפלות טראוויס: וביום הראשון, הם חלקו עוגה, ו 188 00:08:55,012 --> 00:08:56,215 אני נמכרתי באופן מיידי. 189 00:08:56,215 --> 00:08:57,822 >> יעקב PRITT: ממתקים ופיצה חינם. 190 00:08:57,822 --> 00:08:59,820 >> ZAMYLA צ'אן: - ללא קשר לרמת העניין שלך, אני חושב 191 00:08:59,820 --> 00:09:05,170 שCS50, יהיה לך כיף, ואתה תהיה אינטלקטואלי 192 00:09:05,170 --> 00:09:06,070 מגורה. 193 00:09:06,070 --> 00:09:07,926 >> מרק GROZEN סמית': זה תמיד מסיבה בכיתה, וזה 194 00:09:07,926 --> 00:09:09,990 מהסיבה כל לילה עובדת על p-הסט שלך. 195 00:09:09,990 --> 00:09:11,880 >> ג'קסון STEINKAMP: בכל פעם שתסיים להגדיר את הבעיה, אתה 196 00:09:11,880 --> 00:09:13,710 ירגיש כמו שסיימת פרויקט. 197 00:09:13,710 --> 00:09:16,580 >> מליסה Niu: זה היה בשנה ראשונה, ואני עשיתי קניות. 198 00:09:16,580 --> 00:09:19,030 היה לי ארבעת השיעורים שלי מוכנים, ואני היה באננברג. 199 00:09:19,030 --> 00:09:21,670 ואני נתקל בחבר, והוא אומר, היי, אני עושה קניות 200 00:09:21,670 --> 00:09:24,330 המעמד הזה שנקרא CS50, ואתה צריך לבוא איתי. 201 00:09:24,330 --> 00:09:28,150 בסופו של סתיו לוקח את זה כך, ולאחר שהכיתה, 202 00:09:28,150 --> 00:09:30,510 חשבתי שאולי אני הולך לקטין במדעי המחשב. 203 00:09:30,510 --> 00:09:33,760 אבל אני כאן, שלוש שנים מאוחר יותר, עדיין לומד מחשב 204 00:09:33,760 --> 00:09:36,680 מדע ובאמת לעשות את זה כמו גדול, ונהניתי מכל 205 00:09:36,680 --> 00:09:37,780 הרגע שלו. 206 00:09:37,780 --> 00:09:39,030 >> ROB אודן: אין לי מושג. 207 00:09:46,408 --> 00:09:48,060 >> ALI NAHM: בוא נראה. 208 00:09:48,060 --> 00:09:49,200 >> מליסה Niu: טירוף. 209 00:09:49,200 --> 00:09:50,610 >> רמקולים 1: אני מרגיש כאילו אני אהיה מאוד קלישה. 210 00:09:50,610 --> 00:09:52,530 אני רק הייתי אומר, כאילו, מדהים. 211 00:09:52,530 --> 00:09:53,540 >> יניב יעקבי: נגישות. 212 00:09:53,540 --> 00:09:55,080 >> יעקב PRITT: ממתקים ופיצה חינם. 213 00:09:55,080 --> 00:09:57,310 >> טראוויס שפלות: לא יכולות לסרב לכיתה שידות מתוך עוגה. 214 00:09:57,310 --> 00:09:58,510 >> TIM מקלפלין: אנרגטי. 215 00:09:58,510 --> 00:10:00,040 >> Vipul SHEKHAWAT: חיוני. 216 00:10:00,040 --> 00:10:02,636 >> ROB אודן: תן לי לחשוב על תשובה. 217 00:10:02,636 --> 00:10:04,480 אני חושב שיש לי משהו. 218 00:10:04,480 --> 00:10:07,092 אוי, אלוהים. 219 00:10:07,092 --> 00:10:13,370 כן, רובו של שמי אודן, וזה CS50. 220 00:10:13,370 --> 00:10:16,340 >> [מחיאות כפות] 221 00:10:20,810 --> 00:10:23,390 הדוד Malan: בסדר, אז בואו נתחיל לצייר תמונה 222 00:10:23,390 --> 00:10:26,230 מהכיוון שבו אנחנו יכולים ללכת, ובאים להכיר 223 00:10:26,230 --> 00:10:28,190 תפיסה זו מכונית כאן pseudocode. 224 00:10:28,190 --> 00:10:29,560 אז pseudocode אינו תכנות 225 00:10:29,560 --> 00:10:30,810 שפה בפני עוצמה. 226 00:10:30,810 --> 00:10:33,250 זה דבר טכני כשלעצמה, אבל זה פשוט סוג של 227 00:10:33,250 --> 00:10:36,490 אופן כללי לבטא את עצמך די במדויק, 228 00:10:36,490 --> 00:10:39,730 די אלגוריתמי, די פרוצדוראלית, אך ללא 229 00:10:39,730 --> 00:10:42,570 לדאוג לאיזו שפה אתה מבטא 230 00:10:42,570 --> 00:10:43,150 את עצמך פנימה 231 00:10:43,150 --> 00:10:46,280 זה חלק מהמודל האנגלי ושפות תכנות עם 232 00:10:46,280 --> 00:10:48,790 שיקרה לך להיות מוכר, כדי שנוכל להתחיל 233 00:10:48,790 --> 00:10:50,600 כתיבה מהסוג הזה כמו שאנחנו הולכים. 234 00:10:50,600 --> 00:10:54,450 ואכן, יוסף, אני יכול ללוות אותך על במה להיות 235 00:10:54,450 --> 00:10:55,490 סופר כאן? 236 00:10:55,490 --> 00:11:00,130 אני כבר הלכתי קדימה כאן מראש ושכחתי לשים 237 00:11:00,130 --> 00:11:02,920 בגרביים היום, וזה אהיה יותר בינינו 238 00:11:02,920 --> 00:11:03,780 דוגמאות מגוחכות. 239 00:11:03,780 --> 00:11:04,580 >> עכשיו, אני צריך אותך כאן. 240 00:11:04,580 --> 00:11:05,630 אני אעשה את חלק הגרביים. 241 00:11:05,630 --> 00:11:08,040 אז הנה יש לנו פנקס קטן. 242 00:11:08,040 --> 00:11:09,940 זה ממש פשוט TextEdit במק. 243 00:11:09,940 --> 00:11:12,270 אנחנו לא באמת מתכוונים לכתוב תכנית runnable, אבל 244 00:11:12,270 --> 00:11:14,220 אנחנו רק עומדים להתחיל משרטט pseudocode מבוסס 245 00:11:14,220 --> 00:11:17,830 בחלק מהייעוץ שתספק לי כאן. 246 00:11:17,830 --> 00:11:20,760 אז הנה היא הערימה של גרביים שלי בבית. 247 00:11:20,760 --> 00:11:23,320 אין לי גרביים על כשאני מתעורר בבוקר, ואנחנו עכשיו 248 00:11:23,320 --> 00:11:26,280 צריך לכתוב תכנית, אלגוריתם של מיני, שבה 249 00:11:26,280 --> 00:11:27,900 כדי לקבל את הגרביים האלה על הרגליים שלי. 250 00:11:27,900 --> 00:11:30,860 ועל הדרך, בואו נראה אם ​​אנחנו טיול נגמר, או נתקלים, 251 00:11:30,860 --> 00:11:32,860 חלק מהרעיונות שאתה הולך צריך להתחיל 252 00:11:32,860 --> 00:11:35,470 חשב על הרבה יותר ברצינות כאשר תכנות 253 00:11:35,470 --> 00:11:37,950 פן את התוכניות שלך לא מתנהגות די כמתוכנן. 254 00:11:37,950 --> 00:11:39,580 >> אז אני יושב כאן. 255 00:11:39,580 --> 00:11:41,180 יש לי הערימה של גרביים שלי. 256 00:11:41,180 --> 00:11:43,780 מה הדבר הראשון שאדם סביר היה 257 00:11:43,780 --> 00:11:46,600 לעשות כאשר המטרה היא לשים על זוג הגרביים? 258 00:11:46,600 --> 00:11:49,190 מישהו נותן לי צעד אחד, ורק צעד אחד. 259 00:11:49,190 --> 00:11:49,796 כן? 260 00:11:49,796 --> 00:11:50,690 קהל: תתכופף. 261 00:11:50,690 --> 00:11:54,290 הדוד Malan: יתכופף, אוקיי. 262 00:11:54,290 --> 00:11:55,540 שלב השני. 263 00:11:59,975 --> 00:12:00,645 שלב השני. 264 00:12:00,645 --> 00:12:01,840 קהל: תרים את הגרביים שלך. 265 00:12:01,840 --> 00:12:03,220 הדוד Malan: הרם את הגרב. 266 00:12:03,220 --> 00:12:07,610 אוקיי, עמימות כך קלה כאן, ואת זה היא האחד ראשונים 267 00:12:07,610 --> 00:12:09,380 מכשולים שאנחנו אמורים במכוון 268 00:12:09,380 --> 00:12:10,290 נתקל כאן. 269 00:12:10,290 --> 00:12:14,110 זה קצת מעורפל, אז לאסוף את הגרב שלך. 270 00:12:14,110 --> 00:12:17,425 בסדר, אני אקח את זה, אבל במחשב, הבין בסתם 271 00:12:17,425 --> 00:12:20,420 קצת, לא הולך לי זה סוג של אינסטינקט אנושי פשוט 272 00:12:20,420 --> 00:12:21,490 לבחור את האחד הקרוב ביותר. 273 00:12:21,490 --> 00:12:23,590 אנחנו הולכים צריכים להתחיל, לפני זמן רב, ובטאתי 274 00:12:23,590 --> 00:12:24,610 את עצם באופן מדויק יותר. 275 00:12:24,610 --> 00:12:26,600 >> בסדר, אז הצעד השני הוא לאסוף את הגרב שלך. 276 00:12:26,600 --> 00:12:27,520 אנחנו ניקח את זה. 277 00:12:27,520 --> 00:12:28,620 שלב 3. 278 00:12:28,620 --> 00:12:29,532 בחלק האחורי. 279 00:12:29,532 --> 00:12:30,900 קהל: מצא את זוג תואם. 280 00:12:30,900 --> 00:12:32,060 הדוד Malan: מצא את הזוג תואם. 281 00:12:32,060 --> 00:12:34,740 אוקיי, אז זה טוב. 282 00:12:34,740 --> 00:12:35,650 הייתי צריך לבחור גרב זה. 283 00:12:35,650 --> 00:12:39,200 אז המטרה היא למצוא גרביים מתאימים, עכשיו, אבל מה 284 00:12:39,200 --> 00:12:39,990 זה אומר? 285 00:12:39,990 --> 00:12:42,130 אדם, בדומה לסביר ביום רביעי, כאשר אני רק 286 00:12:42,130 --> 00:12:44,700 ידע למצוא מייק סמית בספר טלפונים, פשוט סוג של 287 00:12:44,700 --> 00:12:45,640 הלך עם האינסטינקט שלהם. 288 00:12:45,640 --> 00:12:49,220 אבל כאן, זה ברור שזה גרב פה, אבל מחשב של 289 00:12:49,220 --> 00:12:51,350 לא הולך להיות כל כך אינסטינקטיבי. 290 00:12:51,350 --> 00:12:53,830 מחשב הולך להיות אוסף של ביטים, כפי שאנו 291 00:12:53,830 --> 00:12:55,380 דן ביום רביעי, ואלו 292 00:12:55,380 --> 00:12:56,710 ארגן איכשהו בזיכרון. 293 00:12:56,710 --> 00:13:00,400 אבל הנקודה היא שמחשב יש רק את היכולת 294 00:13:00,400 --> 00:13:03,390 להסתכל על דברים אחד בכל פעם, ולמעשה, גם אנחנו 295 00:13:03,390 --> 00:13:05,980 בני אדם - למרות שזה מרגיש כאילו אני הבטתי למטה ופיצול 296 00:13:05,980 --> 00:13:08,900 שני לאחר מכן אני יודע איפה הוא הגרב, המוח והעיניים שלי 297 00:13:08,900 --> 00:13:12,000 ככל הנראה לא מהיר לרחף מהגרביים האלה, ולאחר מכן נצמד 298 00:13:12,000 --> 00:13:13,400 לאחד בשאלה. 299 00:13:13,400 --> 00:13:15,780 >> אז אם הכל יהיה מכוון יותר עכשיו כמחשב, 300 00:13:15,780 --> 00:13:17,780 איך אני מוצא זוג תואם זה? 301 00:13:17,780 --> 00:13:18,890 ובכן, יש לנו כדי לעבור. 302 00:13:18,890 --> 00:13:21,440 אנחנו צריכים אולי לולאה מעל הבלגן הזה של גרביים על 303 00:13:21,440 --> 00:13:25,760 רצפה לפיה אני אומר משהו כמו לכל גרב, להרים אותו 304 00:13:25,760 --> 00:13:30,195 , ואם באותה צורה וגודל כאחר, ואז 305 00:13:30,195 --> 00:13:32,150 נקודה, נקודה, נקודה, אנחנו נמשיך את הסיפור. 306 00:13:32,150 --> 00:13:34,430 אז לכל גרב, ולכן אני מרים את זה. 307 00:13:34,430 --> 00:13:36,520 אני בודק את זה שווה את זה. 308 00:13:36,520 --> 00:13:38,250 זה לא, ולכן הנחתי בצד בצד. 309 00:13:38,250 --> 00:13:39,220 אז אני אחזור שוב. 310 00:13:39,220 --> 00:13:40,340 האם זה שווה? 311 00:13:40,340 --> 00:13:42,010 לא, זה לא, אז שם אותו בצד. 312 00:13:42,010 --> 00:13:42,710 האם זה אחד? 313 00:13:42,710 --> 00:13:43,200 לא. 314 00:13:43,200 --> 00:13:43,670 זה אחד? 315 00:13:43,670 --> 00:13:44,520 לא, וכן הלאה. 316 00:13:44,520 --> 00:13:48,730 ולבסוף, אני מקווה, אני נתקל בגרב זה כאן. 317 00:13:48,730 --> 00:13:51,350 אז אם זה אותו הצורה, הגודל, קח אותו. 318 00:13:51,350 --> 00:13:53,980 >> ועכשיו, מה יהיה הצעד הבא שלנו כאן? 319 00:13:53,980 --> 00:13:54,402 כן? 320 00:13:54,402 --> 00:13:56,090 קהל: זיהוי נכון משמאל. 321 00:13:56,090 --> 00:13:58,980 הדוד Malan: אוקיי, לזהות ימין ושמאל, ולכן 322 00:13:58,980 --> 00:14:01,870 למרבה המזל, סוג כזה של עבודות. 323 00:14:01,870 --> 00:14:04,020 סימטרי קטנה, או שפשוט לובש את זה בצורה כזאת. 324 00:14:04,020 --> 00:14:07,020 בסדר, אז אני כבר זיהיתי נכון. 325 00:14:07,020 --> 00:14:09,980 ועכשיו, לפני שנמשיך, הרשה לי להצביע על מה של יוסף 326 00:14:09,980 --> 00:14:12,890 עושה כאן כסוג של מתכנת בקיא. 327 00:14:12,890 --> 00:14:15,800 אז שוב, אין דרך אחת לעשות את זה, אבל מעבר לסתם 328 00:14:15,800 --> 00:14:18,480 מספור השורות, יוסף כבר התחיל לעשות את זה 329 00:14:18,480 --> 00:14:19,460 סוג של שקע. 330 00:14:19,460 --> 00:14:21,950 ואכן, זו היא מוסכמה נפוצה מאוד בתכנות, 331 00:14:21,950 --> 00:14:26,110 לפי כשאתה עושה משהו איטרטיבי, מלפף סגנון, כמו 332 00:14:26,110 --> 00:14:28,480 אנחנו רומזים בביטוי האנגלי "לכל 333 00:14:28,480 --> 00:14:31,090 גרב, "הכינוס בpseudocode, וכפי שנראים בהמשך, 334 00:14:31,090 --> 00:14:33,410 שפות תכנות נורמליות, היא רק לכניסה. 335 00:14:33,410 --> 00:14:36,240 הכה מקש הרווח כמה פעמים, ללחוץ על מקש Tab או כמו, 336 00:14:36,240 --> 00:14:40,660 כך המקונן מתחת "לכל גרב" הוא הנתח של 337 00:14:40,660 --> 00:14:43,430 דברים שאתה צריך לעשות כתוצאה מאותה הלולאה. 338 00:14:43,430 --> 00:14:45,940 כך שכל מה שמעביר סמנטי זה. 339 00:14:45,940 --> 00:14:48,620 עכשיו בינתיים, "אם מדובר באותו צורה וגודל," 340 00:14:48,620 --> 00:14:51,590 עובדה כי "קח את זה" הוא מסוכסך נוסף רק אומרת 341 00:14:51,590 --> 00:14:54,370 זה הדבר היחיד שאתה צריך לעשות אם זה מצב, 342 00:14:54,370 --> 00:14:59,770 אם סניף ש, מזלג, כי בכביש, הוא למעשה נכון. 343 00:14:59,770 --> 00:15:02,130 >> אז עכשיו כאן, אנחנו בשלב ארבעה, לזהות ימינה ושמאלה. 344 00:15:02,130 --> 00:15:03,410 אני כבר זיהיתי נכון. 345 00:15:03,410 --> 00:15:05,150 תנו לי צעד חמש. 346 00:15:05,150 --> 00:15:07,880 מבחינה טכנית, אנו יכולים באמת לקרוא 347 00:15:07,880 --> 00:15:09,510 על כל דבר - 348 00:15:09,510 --> 00:15:11,450 אתה כנראה צריך תמספר את כל הקווים אם 349 00:15:11,450 --> 00:15:12,190 אנחנו הולכים לעשות את זה. 350 00:15:12,190 --> 00:15:14,006 יוסף: [לא ברור] 351 00:15:14,006 --> 00:15:14,610 הדוד Malan: [לא ברור]? 352 00:15:14,610 --> 00:15:16,070 אוקיי, בסדר, בסדר, אנחנו נעשה את זה בדרך שלך. 353 00:15:16,070 --> 00:15:19,590 בסדר, אז צעד חמש, איך עושים את גרב ימין? 354 00:15:19,590 --> 00:15:22,310 איך אתקדם הבא, כאן? 355 00:15:22,310 --> 00:15:22,730 כן? 356 00:15:22,730 --> 00:15:24,300 קהל: הרם את רגל ימין. 357 00:15:24,300 --> 00:15:27,100 הדוד Malan: הרם את רגל ימין, אוקיי. 358 00:15:27,100 --> 00:15:29,330 שלב 6? 359 00:15:29,330 --> 00:15:30,728 במהירות. 360 00:15:30,728 --> 00:15:31,202 כן. 361 00:15:31,202 --> 00:15:33,100 קהל: מצא את קצה פתוח של הגרב. 362 00:15:33,100 --> 00:15:34,440 הדוד Malan: אוקיי, למצוא את הקצה הפתוח של הגרב. 363 00:15:34,440 --> 00:15:34,840 כל כך טוב. 364 00:15:34,840 --> 00:15:37,180 אז הנה, בכנות, אינסטינקט נפוץ מאוד יהיה רק 365 00:15:37,180 --> 00:15:39,880 לשים על גרב נכון, אבל גם הוא די מעורפל. 366 00:15:39,880 --> 00:15:42,750 אלא אם המחשב או האדם יודע בדיוק מה זה אומר, 367 00:15:42,750 --> 00:15:45,160 זה לא הולך להיות לבצע את זה, אז הנה, יש לי 368 00:15:45,160 --> 00:15:46,520 מצא את הפתיחה של המנייה. 369 00:15:46,520 --> 00:15:48,222 שלב 7? 370 00:15:48,222 --> 00:15:49,700 קהל: ייגע בבוהן. 371 00:15:49,700 --> 00:15:51,070 הדוד Malan: בוהן Touch. 372 00:15:51,070 --> 00:15:53,546 אוקיי, אז עכשיו אנחנו הולכים - 373 00:15:53,546 --> 00:15:56,480 בסדר, אני הולך לקחת כמה חירויות כאן. 374 00:15:56,480 --> 00:15:57,110 תודה. 375 00:15:57,110 --> 00:15:59,210 שלב שמונה? 376 00:15:59,210 --> 00:16:00,060 לשים על גרב. 377 00:16:00,060 --> 00:16:02,060 אוקיי, אז עכשיו אני, חושב שאנחנו מספיק קרובים כדי למיין של לקחת 378 00:16:02,060 --> 00:16:03,480 את זה בבית. 379 00:16:03,480 --> 00:16:05,980 בסדר, אז זה עולה. 380 00:16:05,980 --> 00:16:07,950 אני אקח כמה חירויות עם מה זה אומר, בעצם. 381 00:16:07,950 --> 00:16:08,920 שים את הגרב ב. 382 00:16:08,920 --> 00:16:10,853 בסדר, עכשיו לשלב תשע? 383 00:16:10,853 --> 00:16:11,740 קהל: הנח את כף רגל. 384 00:16:11,740 --> 00:16:12,510 הדוד Malan: תודה לך. 385 00:16:12,510 --> 00:16:15,610 שלב 9, הניח את הרגליים למטה, ועכשיו, אנחנו יכולים לחזור. 386 00:16:15,610 --> 00:16:19,540 אז ככל הנראה, עכשיו אנחנו יכולים להיכנס לשלב 10 ואומרים לזהות 387 00:16:19,540 --> 00:16:21,960 עזב את הגרב, אבל זה כנראה כבר נעשה. 388 00:16:21,960 --> 00:16:24,100 >> ואם כך, אני יכול למיין של לחזור על פעולות אלה. 389 00:16:24,100 --> 00:16:25,260 אבל זה סוג של מעלה את השאלה. 390 00:16:25,260 --> 00:16:28,100 בעבר, בפעם האחרונה שרצינו לחזור על משהו, אנחנו 391 00:16:28,100 --> 00:16:30,730 עשה את זה ערוך אותו, שוב ושוב, ל 392 00:16:30,730 --> 00:16:32,660 כל לולאה כביכול. 393 00:16:32,660 --> 00:16:36,420 האם זה הגיוני להשתמש בלולאה כדי לטפל בשנייה 394 00:16:36,420 --> 00:16:38,470 שמאל וימין הגרב? 395 00:16:38,470 --> 00:16:40,460 כי אני מרגיש שפעולות אלה הן פחות או יותר 396 00:16:40,460 --> 00:16:43,090 זהה, פרט לעובדה שאחד מהם מתחיל כאן ואחד 397 00:16:43,090 --> 00:16:44,850 מתחיל כאן? 398 00:16:44,850 --> 00:16:47,400 האם לולאתנו, או שאנחנו פשוט ממשיכים את פעולות כתיבה 399 00:16:47,400 --> 00:16:48,745 10 ו 11 ו 12? 400 00:16:48,745 --> 00:16:50,540 קהל: לולאה. 401 00:16:50,540 --> 00:16:52,240 >> הדוד Malan: אוקיי, אז לולאה. 402 00:16:52,240 --> 00:16:54,730 אני דווקא היה אומר פשוט להמשיך. 403 00:16:54,730 --> 00:16:55,720 אז למה זה כך? 404 00:16:55,720 --> 00:16:57,940 ובכן, זה הוא למעשה הראשון שלנו שאינם ברור 405 00:16:57,940 --> 00:17:01,210 החלטות עיצוב, ולמעשה, האחד המדדים שבי 406 00:17:01,210 --> 00:17:03,990 נתחיל להעריך, לעצמנו ולך, 407 00:17:03,990 --> 00:17:06,780 איכות של תכנית היא רק כמה יעיל שהוא. 408 00:17:06,780 --> 00:17:09,619 האם עשה הכמות המינימאלית של עבודה הדרושה כדי 409 00:17:09,619 --> 00:17:12,480 לעשות את העבודה הכי מהר, גם במונחים של 410 00:17:12,480 --> 00:17:15,430 הזמן שלך או במונחים של זמן הריצה של המחשב? 411 00:17:15,430 --> 00:17:17,589 כמה ניתוחים עושה מה שנדרש כדי להוציא לפועל? 412 00:17:17,589 --> 00:17:20,180 אז ללא ספק, זו הזדמנות ללולאה משום 413 00:17:20,180 --> 00:17:22,829 ברגע שאני מתחיל בהעתקה והדבקה, כמו יוסף ביעילות 414 00:17:22,829 --> 00:17:25,010 היית מתחיל לעשות ברגע שאתה קצת מבזבז אותך 415 00:17:25,010 --> 00:17:27,140 זמן, ואתה מגיב כפליים הבעה. 416 00:17:27,140 --> 00:17:30,260 >> אבל באותו הזמן, אלה הם רק שתיים באמת מיוחדים 417 00:17:30,260 --> 00:17:31,890 מקרים, משמאל ומימין. 418 00:17:31,890 --> 00:17:34,930 ואילו בעבר, אולי יש לי 10 או 20 או יותר בגרביים 419 00:17:34,930 --> 00:17:37,960 ערימה, זה בהחלט הגיוני שלא צריך 50 שורות של 420 00:17:37,960 --> 00:17:40,180 קוד אומר לבדוק גרב זה, אז את הבא, 421 00:17:40,180 --> 00:17:41,300 אז את הבא. 422 00:17:41,300 --> 00:17:43,450 הנה, זה קצת פחות ברור, והייתי שהצעתי 423 00:17:43,450 --> 00:17:44,390 שאנחנו יכולים ללכת לשני כיוונים. 424 00:17:44,390 --> 00:17:46,720 אנחנו יכולים גם צריכים לולאה ש, למרות שזה רק לולאות 425 00:17:46,720 --> 00:17:50,620 פעמים, או שאנחנו יכולים פשוט להעתיק ולהדביק רק קצת 426 00:17:50,620 --> 00:17:53,270 כאן כדי לעשות את העבודה. 427 00:17:53,270 --> 00:17:55,210 אבל התכנית הזו היא עגלה, אם אפשר לומר כך. 428 00:17:55,210 --> 00:17:59,120 זה יכול להיות כמה שגיאות, טעויות, או במקרים פינתיים, ולכן כדי 429 00:17:59,120 --> 00:18:00,860 לדבר, כי אנחנו לא באמת מצפים. 430 00:18:00,860 --> 00:18:03,400 שום דבר לא השתבש הזמן הזה, אבל מה שהיה יכול להשתבש 431 00:18:03,400 --> 00:18:06,100 בעת ביצוע תכנית זו? 432 00:18:06,100 --> 00:18:07,040 קהל: אתה לא צריך גרביים. 433 00:18:07,040 --> 00:18:08,980 >> הדוד Malan: אז יכול להיות שיש שם בלי גרביים שהיא. 434 00:18:08,980 --> 00:18:10,380 אז הבה נבחן מקרה פינה. 435 00:18:10,380 --> 00:18:14,670 אז אם אנחנו יכולים לגלול אחורה עד שלב אחד, ולכן היה צעד אחד 436 00:18:14,670 --> 00:18:16,540 להתכופף, כך שבודק. 437 00:18:16,540 --> 00:18:21,250 שלב השני, להרים את הגרביים שלך, אבל אז למצוא גרביים מתאימים, 438 00:18:21,250 --> 00:18:22,420 זיהוי נכון. 439 00:18:22,420 --> 00:18:25,050 אנחנו סוג של עשינו חבורה שלמה של נחות, וזה, 440 00:18:25,050 --> 00:18:27,720 בכנות, מדוע תכנית לפעמים לקרוס. 441 00:18:27,720 --> 00:18:30,240 אם אתה, המתכנת, עשית הנחות מסוימות, כמו 442 00:18:30,240 --> 00:18:33,000 אין ספק שיהיה זה הולך להיות גרביים או בוודאי יש הולכים 443 00:18:33,000 --> 00:18:35,310 להיות זיכרון שנשאר במחשב, אין ספק שהולך 444 00:18:35,310 --> 00:18:37,420 להיות שטח הדיסק נשאר בכונן הקשיח - 445 00:18:37,420 --> 00:18:39,040 ובכן, אם אתה עושה הנחות אלה, וזה לא, 446 00:18:39,040 --> 00:18:41,880 למעשה, מציאות, מי יודע מה במחשב של לפעמים 447 00:18:41,880 --> 00:18:42,520 הולך לעשות? 448 00:18:42,520 --> 00:18:44,450 ולפעמים, כשאתה מקבל את כדור החוף או ספינינג 449 00:18:44,450 --> 00:18:47,750 Windows קפואה או כמו, זה בדיוק משום שחלק 450 00:18:47,750 --> 00:18:50,980 המתכנת לא צפתה מקרים הפינתיים אותם המכונים. 451 00:18:50,980 --> 00:18:53,050 מה עוד יכול להשתבש בתכנית זו? 452 00:18:53,050 --> 00:18:53,330 כן? 453 00:18:53,330 --> 00:18:55,950 >> קהל: אתה לא צריך את רגל ימין ורגל שמאל. 454 00:18:55,950 --> 00:18:58,920 הדוד Malan: אוקיי, אולי אין לך גם את רגל ימין ו 455 00:18:58,920 --> 00:19:01,940 רגלו השמאלית, וכן תכנית זו לא יכולה להיות אוניברסלית 456 00:19:01,940 --> 00:19:02,590 ישים. 457 00:19:02,590 --> 00:19:03,658 אחרים? 458 00:19:03,658 --> 00:19:05,650 קהל: ייתכן שהרמת את גרב יתום. 459 00:19:05,650 --> 00:19:07,970 הדוד Malan: אולי הייתי הרמתי גרב יתום, כך 460 00:19:07,970 --> 00:19:11,250 גרב שאינו תואם שפשוט אין לו אחים, כי לי 461 00:19:11,250 --> 00:19:13,650 אבד אותו, הוא נקרע, זה עדיין בכביסה, או משהו דומה. 462 00:19:13,650 --> 00:19:15,550 אז גם את זה, לא באמת טופל. 463 00:19:15,550 --> 00:19:15,790 כן? 464 00:19:15,790 --> 00:19:17,510 קהל: ייתכן שכבר יש לך גרביים. 465 00:19:17,510 --> 00:19:19,050 הדוד Malan: אני אולי כבר יש לך גרביים. 466 00:19:19,050 --> 00:19:20,080 אני לא ממש בודק. 467 00:19:20,080 --> 00:19:23,350 אם אין לך גרביים, ולאחר מכן להמשיך לעשות 468 00:19:23,350 --> 00:19:24,330 שורה אחת ושתיים. 469 00:19:24,330 --> 00:19:24,980 וזה יכול לקרות. 470 00:19:24,980 --> 00:19:26,880 אתה נרדם בגרביים וכדומה, ולכן 471 00:19:26,880 --> 00:19:28,860 גם את זה, פינת מקרה סביר מאוד. 472 00:19:28,860 --> 00:19:29,630 ואולי אחד אחר? 473 00:19:29,630 --> 00:19:31,310 קהל: הגרב הוא מבפנים החוצה. 474 00:19:31,310 --> 00:19:34,000 הדוד Malan: אז הגרב הוא מבפנים החוצה, ולכן אנחנו לא עשינו שגיאה 475 00:19:34,000 --> 00:19:35,330 בדיקה, בקיצור. 476 00:19:35,330 --> 00:19:38,550 לא בדק אם מצבו של העולם הוא כפי שאנו מצפים. 477 00:19:38,550 --> 00:19:41,310 לא בדק אם אנחנו באמת מצאנו את מה שאנחנו מחפשים. 478 00:19:41,310 --> 00:19:43,310 >> ולמרות שזה סוג של דוגמה מגוחכת 479 00:19:43,310 --> 00:19:46,110 מעורב גרביים, בסופו של היום, זה בדיוק 480 00:19:46,110 --> 00:19:48,740 סוג של הלך רוח שאתה צריך בעת כתיבת תוכניות, 481 00:19:48,740 --> 00:19:51,740 גם בגרד, כמו גם ב-C, ב-JavaScript, ב-PHP, 482 00:19:51,740 --> 00:19:53,920 כי אחר, את התוכניות שלך תפגנה 483 00:19:53,920 --> 00:19:56,980 מקבילה של שכדור החוף מסתובב או פשוט להיכנע 484 00:19:56,980 --> 00:19:58,210 תוצאות לא מדויקות. 485 00:19:58,210 --> 00:20:00,250 אז תודה רבה כאן לסופר יוסף. 486 00:20:00,250 --> 00:20:05,060 [מחיאות כפות] 487 00:20:05,060 --> 00:20:06,850 >> הדוד Malan: בסדר, אז מה הוא, ב 488 00:20:06,850 --> 00:20:08,230 למעשה, תכנית מחשב? 489 00:20:08,230 --> 00:20:09,670 ובכן, בואו ניקח מבט מהיר 490 00:20:09,670 --> 00:20:11,100 נציג אחד כאן. 491 00:20:11,100 --> 00:20:15,260 אז זה תכנית שנכתבה בשפת C הוא בשם ג 492 00:20:15,260 --> 00:20:17,830 די ישנות בימים אלה, אך רבות שפות חדשות יותר בנויות 493 00:20:17,830 --> 00:20:18,460 על גבי זה. 494 00:20:18,460 --> 00:20:21,180 אכן, PHP, אחת משפות אינטרנט הממוקדות אנחנו 495 00:20:21,180 --> 00:20:24,050 שימוש לקראת סוף התקופה, בעצמו יש מה שנקרא 496 00:20:24,050 --> 00:20:27,550 מתורגמן, תכנית שכתובה ב-C, אבל עוד על זה 497 00:20:27,550 --> 00:20:28,690 בשבועות רבים מיום. 498 00:20:28,690 --> 00:20:30,840 אבל התכנית הזו, וזה מה שזה אומר לכתוב 499 00:20:30,840 --> 00:20:32,880 תכנית, אם כי בצורה פשוטה מאוד. 500 00:20:32,880 --> 00:20:35,540 יש לנו כמה תחביר די סתום כאן, אבל אתה יכול 501 00:20:35,540 --> 00:20:38,340 כנראה מניחים, גם אם אף פעם לא מתוכן לפני, מה 502 00:20:38,340 --> 00:20:39,750 התכנית הזו עושה. 503 00:20:39,750 --> 00:20:43,640 ואכן, אני לא יודע מה הוא printf, אבל בהחלט להדפיס 504 00:20:43,640 --> 00:20:45,700 מעלה באוב את הרעיון של הדפסת משהו. 505 00:20:45,700 --> 00:20:48,590 ולכן כן, תכנית זו היא סופו של דבר הולכת להדפיס 506 00:20:48,590 --> 00:20:50,250 המילים "שלום, העולם". 507 00:20:50,250 --> 00:20:53,390 >> עכשיו, אם יש לכם מק או PC או מחשב לינוקס, סיכויים 508 00:20:53,390 --> 00:20:55,550 הם, לפחות אם הורידו קצת חופשיות 509 00:20:55,550 --> 00:20:58,000 תוכנה זמינה, שאפשר היה לכתוב על תוכניות 510 00:20:58,000 --> 00:21:00,310 המחשב הנייד שלך די הרבה זמן עכשיו. 511 00:21:00,310 --> 00:21:03,040 ב-Mac OS, למשל, יש תכנית זו נקראת 512 00:21:03,040 --> 00:21:05,340 מסוף שמגיע עם מק, זה בדרך כלל ב 513 00:21:05,340 --> 00:21:07,550 תיקיית Utilities, וזה בדרך כלל פותחים שחור 514 00:21:07,550 --> 00:21:09,820 לבן או חלון לבן ושחור שבו יש לך 515 00:21:09,820 --> 00:21:11,410 יבקש שבאפשרותך להקליד פקודות. 516 00:21:11,410 --> 00:21:13,060 אז זה ממש מזכיר את מה שמחשבים 517 00:21:13,060 --> 00:21:15,100 הייתה לפני המשתמש גרפי 518 00:21:15,100 --> 00:21:16,710 ממשקים, GUIs, הגיעו יחד. 519 00:21:16,710 --> 00:21:19,200 עכשיו, ב-Windows, יש לך מנגנון דומה בצורה 520 00:21:19,200 --> 00:21:20,130 משורת הפקודה. 521 00:21:20,130 --> 00:21:23,430 >> אבל מה שאני הולך לעשות כאן הוא לפתוח את, אניח, 522 00:21:23,430 --> 00:21:26,580 TextEdit שוב, אז את אותה התכנית שבו השתמש 523 00:21:26,580 --> 00:21:28,870 pseudocode לפני רגע, ואני הולך קדימה 524 00:21:28,870 --> 00:21:30,080 לכתוב את התכנית הראשונה שלי. 525 00:21:30,080 --> 00:21:34,030 כולל stdio.h, מה זה אומר, int הראשי 526 00:21:34,030 --> 00:21:36,880 חלל, מה זה אומר, ואז באמצע כאן, 527 00:21:36,880 --> 00:21:40,560 printf ("שלום, עולם."). ואז ציטוט קרוב, 528 00:21:40,560 --> 00:21:42,340 לסגור סוגריים, פסיק. 529 00:21:42,340 --> 00:21:44,460 עכשיו אני הולך קדימה ופגעתי רק פיקוד-S. אני הולך 530 00:21:44,460 --> 00:21:47,650 להמשיך ולשמור את זה כhello.c, כך בכנס 531 00:21:47,650 --> 00:21:50,530 העולם של תכנות C הוא שם לקובץ נקודת ג. 532 00:21:50,530 --> 00:21:52,880 אני הולך רק כדי לשים בתיקיית הבית של ג'ון הרווארד, 533 00:21:52,880 --> 00:21:56,370 כאן, לחץ על שמור, ועכשיו אני הולך לעבור על לזה 534 00:21:56,370 --> 00:21:59,110 חלון מסוף, אשר שוב הוא זה שחור ולבן פקודה 535 00:21:59,110 --> 00:22:00,860 איפה אני יכול לבצע פקודות. 536 00:22:00,860 --> 00:22:04,550 >> אני יכול להפעיל תוכניות על ידי הקלדת שמם, ולא על ידי 537 00:22:04,550 --> 00:22:06,710 סמלי לחיצה כפול במובן המקובל. 538 00:22:06,710 --> 00:22:10,590 אבל העניין הוא שעל C היא שפה כמו C 1 539 00:22:10,590 --> 00:22:13,150 מגיע בצורה זו, משהו שנקרא קוד מקור. 540 00:22:13,150 --> 00:22:15,400 משהו שנראה קצת כמו אנגלית, אבל הוא 541 00:22:15,400 --> 00:22:17,980 בהחלט פחות כמו אנגלית מאשר pseudocode של יוסף 542 00:22:17,980 --> 00:22:18,930 לפני רגע. 543 00:22:18,930 --> 00:22:20,560 זה קצת יותר מסובך. 544 00:22:20,560 --> 00:22:22,830 נראה ללכת כמה דפוסים וכללים. 545 00:22:22,830 --> 00:22:25,300 העובדה שיש לי סוגריים מסולסלים, פסיק, ציטוטים, 546 00:22:25,300 --> 00:22:28,240 פלטות זווית, מרגיש כמו מחשב באו עם זה 547 00:22:28,240 --> 00:22:29,250 סוג של שפה. 548 00:22:29,250 --> 00:22:32,010 אבל אם אני הולך, עכשיו, לחלון מסוף זה, אני יכול לרוץ 549 00:22:32,010 --> 00:22:35,250 פקודה שהולכת להמיר את קוד מקור היא 550 00:22:35,250 --> 00:22:36,610 משהו שנקרא קוד אובייקט. 551 00:22:36,610 --> 00:22:39,690 זה הולך להמיר תחביר אנגלי כמו לאפסים 552 00:22:39,690 --> 00:22:41,760 ואלה, באותם הסוגים של אפסים ואחדים שאנחנו 553 00:22:41,760 --> 00:22:42,820 דבר על יום רביעי. 554 00:22:42,820 --> 00:22:44,810 עכשיו, אני הולך להפעיל פקודה נקראת קלאנג. 555 00:22:44,810 --> 00:22:47,750 עוד על כך בשבועות הקרובים, אבל זה תכנית עם 556 00:22:47,750 --> 00:22:52,330 שאני יכול להמיר hello.c לכל חבורה 557 00:22:52,330 --> 00:22:53,640 של אפסים ואחדים. 558 00:22:53,640 --> 00:22:54,950 >> עכשיו, אני מפעיל את הפקודה הזו. 559 00:22:54,950 --> 00:22:57,940 אני שבצעתי קלאנג, ולאחר מכן אמרתי להפעיל את עצמך בקובץ זה 560 00:22:57,940 --> 00:23:00,630 קרא hello.c, שאני יצרתי לפני רגע, ו 561 00:23:00,630 --> 00:23:02,090 שום דבר לא נראה שיקרה. 562 00:23:02,090 --> 00:23:05,550 אבל באמת, אם חטטתי ספריית הבית שלי, הייתי רואה 563 00:23:05,550 --> 00:23:09,620 שa.out התכנית בשם טיפשות זו קיים כיום. 564 00:23:09,620 --> 00:23:12,250 זה רק שם ברירת המחדל עבור תכנית בעת כתיבה 565 00:23:12,250 --> 00:23:15,140 ג אנחנו יכולים לעקוף את זה בסוף, אבל a.out הוא 566 00:23:15,140 --> 00:23:18,340 שם של התכנית פשוט הפך לאפסים ואחדים. 567 00:23:18,340 --> 00:23:21,490 ועכשיו, אפסים ואחדים של זה, Mac שלי, במקרה זה, או 568 00:23:21,490 --> 00:23:24,670 מחשב Windows שלך, יכול להבין את החתיכות האלה, אלה 569 00:23:24,670 --> 00:23:25,410 אפסים ואחדים. 570 00:23:25,410 --> 00:23:29,130 וכך כשאני על Enter, אני רואה "שלום, עולם!" 571 00:23:29,130 --> 00:23:31,270 >> אבל זה קצת עגלה. 572 00:23:31,270 --> 00:23:34,110 אני לא ממש אומר "שלום, עולם: אוויר: -! Jharvard." אוויר הוא 573 00:23:34,110 --> 00:23:35,020 שמו של המחשב שלי. 574 00:23:35,020 --> 00:23:37,730 Jharvard שמו של החשבון, אז מה לא הייתי לי ברור 575 00:23:37,730 --> 00:23:41,070 להשמיט מהתכנית? 576 00:23:41,070 --> 00:23:42,480 איזה מעבר שורה. 577 00:23:42,480 --> 00:23:45,150 לא הכיתי את המקבילה של זן או חזרת הגררה, 578 00:23:45,150 --> 00:23:47,760 וזה, שוב, עדות לעובדה שמחשבים יכולים 579 00:23:47,760 --> 00:23:49,800 לעשות רק את מה שאתה אומר להם לעשות. 580 00:23:49,800 --> 00:23:52,400 ועובדה שלא ספר את המחשב לעבור 581 00:23:52,400 --> 00:23:53,860 סמן לשורה הבאה - 582 00:23:53,860 --> 00:23:55,200 כן, זה בהחלט לא הולך רק כדי לעשות את זה 583 00:23:55,200 --> 00:23:56,750 יומרנות ובשבילי. 584 00:23:56,750 --> 00:24:00,860 אז אם אני חוזר לתכנית שלי, ואני אומר \ n - 585 00:24:00,860 --> 00:24:03,180 אז \ n, כפי שמייד יראו, היא הדרך של 586 00:24:03,180 --> 00:24:06,910 מייצג דברים מוזרים כמו תווים בשורה חדשים, דברים 587 00:24:06,910 --> 00:24:08,840 שאחרת יהיה התוצאה של 588 00:24:08,840 --> 00:24:09,940 להכות על מקש Enter. 589 00:24:09,940 --> 00:24:11,730 אבל לעת עתה, רק יודע שלהכות על מקש Enter הייתי 590 00:24:11,730 --> 00:24:14,170 פשוט להפוך את הקוד שלנו ייראה מוזר, ולכן העולם החליט, אתה יודע 591 00:24:14,170 --> 00:24:16,580 מה, כדי לשמור על דברים יפים יותר, כדי לשמור אותו בשורה אחת, בואו 592 00:24:16,580 --> 00:24:19,070 רק לומר \ n מייצג קו חדש. 593 00:24:19,070 --> 00:24:22,260 בואו לשמור מחדש את התיק שלי, לחזור לחלון המסוף, ו 594 00:24:22,260 --> 00:24:25,290 a.out מחדש ריצה, Enter. 595 00:24:25,290 --> 00:24:28,374 עדיין עגלה, אבל למה? 596 00:24:28,374 --> 00:24:29,750 >> קהל: [לא ברור] 597 00:24:29,750 --> 00:24:31,540 הדוד Malan: כן, אז אני צריך להדר מחדש את זה. 598 00:24:31,540 --> 00:24:34,610 אז לקמפל תכנית רק אומר להמיר אותו מהמקור 599 00:24:34,610 --> 00:24:37,660 קוד לקוד יעד, קוד מקור לאפסים ואחדים. 600 00:24:37,660 --> 00:24:40,830 עכשיו, עצם העובדה שאני מכה שמור בTextEdit זה אין 601 00:24:40,830 --> 00:24:43,450 הוא נושא על האפסים והאחדים האלה כי אני קודם צריך 602 00:24:43,450 --> 00:24:48,260 תל קלאנג היי, אני כבר שיניתי את השורות האלה של קוד, 603 00:24:48,260 --> 00:24:49,040 קוד מקור. 604 00:24:49,040 --> 00:24:51,010 אתה צריך להתחדש a.out. 605 00:24:51,010 --> 00:24:52,990 שום דבר לא נראה שקרה, אבל במחשב, 606 00:24:52,990 --> 00:24:55,820 בשורת פקודה, אם אפשר לומר כך, כאשר דבר לא קורה, 607 00:24:55,820 --> 00:24:57,510 בדרך כלל אומר שמכיל בסדר. 608 00:24:57,510 --> 00:24:59,040 כשמשהו יקרה, זה אומר 609 00:24:59,040 --> 00:25:00,420 אתה דפוק, בדרך כלל. 610 00:25:00,420 --> 00:25:04,020 >> אז בואו עכשיו ללכת a.out, ואכן עכשיו, יש לי "שלום, 611 00:25:04,020 --> 00:25:04,440 עולם ". 612 00:25:04,440 --> 00:25:05,990 ועכשיו, מה עם האפסים והאחדים הללו? 613 00:25:05,990 --> 00:25:07,520 שם, בעצם, הם אלה? 614 00:25:07,520 --> 00:25:10,710 ובכן, אני לא יכול באמת רק סוג של מסתובב קצת מאוד 615 00:25:10,710 --> 00:25:11,210 בצורה יעילה. 616 00:25:11,210 --> 00:25:12,650 בואו תפתחו לי את TextEdit. 617 00:25:12,650 --> 00:25:14,060 הנה a.out. 618 00:25:14,060 --> 00:25:17,390 תן לי ללכת קדימה ולפתוח את זה, וזה כנראה מה שלי 619 00:25:17,390 --> 00:25:19,080 תכנית נראית. 620 00:25:19,080 --> 00:25:21,570 אז אני כבר פתחתי, לא hello.c, אבל a.out. 621 00:25:21,570 --> 00:25:23,960 אבל זה ממש לא מה שהתכנית שלי באמת. 622 00:25:23,960 --> 00:25:26,450 אין ספק, זה סוג כלשהו של תווי אלפביתי. 623 00:25:26,450 --> 00:25:28,670 אני לא רואה שום אפסים ואחדים, אבל זה 624 00:25:28,670 --> 00:25:30,780 בגלל a.out הוא תכנית. 625 00:25:30,780 --> 00:25:33,540 אפסים ואחדים - אבל TextEdit, כפי שהשם מרמז, זה 626 00:25:33,540 --> 00:25:37,130 בדיוק כמו פנקס רשימות ב-Windows, הוא רק עורך טקסט, כך שזה 627 00:25:37,130 --> 00:25:39,730 מבלבל את כל האפסים והאחדים הללו כ 628 00:25:39,730 --> 00:25:41,870 למרות שהם היו, מה? 629 00:25:41,870 --> 00:25:43,380 תווים. 630 00:25:43,380 --> 00:25:45,020 >> אז נזכר ביום רביעי, אנחנו פשוט באנו עם זה 631 00:25:45,020 --> 00:25:48,740 מיפוי שרירותי של מספרים, או חתיכות, למכתבים 632 00:25:48,740 --> 00:25:51,690 אותיות וסמלי פיסוק וכדומה. 633 00:25:51,690 --> 00:25:54,920 אז TextEdit, שזה עורך טקסט הפרשנות שגויה 634 00:25:54,920 --> 00:25:57,270 דפוסים אלה של אפסים ואחדים שאמורים להיות 635 00:25:57,270 --> 00:25:59,990 מילות דפוס, כמו "שלום, עולם". זה מציג אותם 636 00:25:59,990 --> 00:26:02,150 כמו ב-ASCII, ולכן זה נראה קצת מבולגן. 637 00:26:02,150 --> 00:26:04,910 עכשיו, יש כמה רמזים לתקינות בפה. 638 00:26:04,910 --> 00:26:08,090 שים לב אם אני מדגיש, יש רמז של ממש "שלום, 639 00:26:08,090 --> 00:26:10,810 עולם ", כך שאי שם בתכנית הוא 640 00:26:10,810 --> 00:26:12,120 המשפט שכתבתי. 641 00:26:12,120 --> 00:26:14,610 אבל בואו נלך קדימה ועכשיו רואה בתכנית אחרת. 642 00:26:14,610 --> 00:26:17,420 זה לא היה אחד נשתמש בה לעתים קרובות, אבל זה מגיע גם עם 643 00:26:17,420 --> 00:26:19,970 מק ויהיה פנימי של מכשיר CS50. 644 00:26:19,970 --> 00:26:23,940 תן לי ללכת קדימה ולפתוח עם תוכנה בשם XXD. 645 00:26:23,940 --> 00:26:26,530 >> חזרה היום, רוב התוכניות היו בשם די במסתוריות, 646 00:26:26,530 --> 00:26:28,200 וכך ממשיכה את המגמה. 647 00:26:28,200 --> 00:26:31,160 אבל ב-פירוש יורק את התכנית הזאת החוצה כמו בינארי. 648 00:26:31,160 --> 00:26:32,330 לא להפעיל אותו. 649 00:26:32,330 --> 00:26:35,770 הצג לי את זה כאפסים ואחדים, וזה ג 650 00:26:35,770 --> 00:26:37,190 תכנית שזה עתה כתב. 651 00:26:37,190 --> 00:26:39,920 עכשיו, אני, כאדם כאן, באמת שאין לי מושג מה 652 00:26:39,920 --> 00:26:42,230 דפוסים שונים אלה של אפסים ואחדים מייצגים. 653 00:26:42,230 --> 00:26:45,320 חזרה היום, אני, בכרטיסי הניקוב שלי או כמו, היית 654 00:26:45,320 --> 00:26:48,080 למעשה הייתם צריך לחפש את מה דפוסים שונים אלה של 655 00:26:48,080 --> 00:26:51,560 01111000, למעשה מייצג. 656 00:26:51,560 --> 00:26:54,390 או גרוע מזה, הייתי צריך לעשות חורים או יצירה 657 00:26:54,390 --> 00:26:56,130 דפוסים אלה של אפסים ואחדים. 658 00:26:56,130 --> 00:27:00,410 אבל לעת עתה, לקחת על אמונה שמעבד, אינטל בפנים, כך 659 00:27:00,410 --> 00:27:03,440 לדבר, בתוך כל המחשבים שלנו בימים אלה, יודע 660 00:27:03,440 --> 00:27:05,100 כיצד לפרש האפסים והאחדים הללו. 661 00:27:05,100 --> 00:27:07,010 וכמה אפסים ואחדים אומרים הדפסה. 662 00:27:07,010 --> 00:27:09,040 כמה אפסים ואחדים אומרים להשמיע צליל. 663 00:27:09,040 --> 00:27:13,630 האפסים ואחדים החלק אומרים לקחת קלט משתמש ממקלדת. 664 00:27:13,630 --> 00:27:15,960 יש כל מיני דפוסים שונים, אבל אנחנו להשמחה, 665 00:27:15,960 --> 00:27:19,680 כמו בני אדם, רק באופן כללי צריכים לדאוג בתכנות 666 00:27:19,680 --> 00:27:21,270 רמה די גבוהה זה. 667 00:27:21,270 --> 00:27:24,320 וגם בשיעורי CS אחרים תוכל להתעמק ולחפש עמוק יותר 668 00:27:24,320 --> 00:27:26,820 בדברים כמו האפסים והאחדים הללו, או עדיין 669 00:27:26,820 --> 00:27:28,000 דברים אחרים עדיין. 670 00:27:28,000 --> 00:27:29,210 >> אז עכשיו בואו להמיר את זה. 671 00:27:29,210 --> 00:27:32,550 בואו נעבור מהר מאוד מC ולעבור למשהו 672 00:27:32,550 --> 00:27:36,390 קצת יותר מרגיע, קצת יותר מרגש, שב 673 00:27:36,390 --> 00:27:39,340 אנחנו יכולים לחזור הניפשות שלנו והצלילים וכאלה 674 00:27:39,340 --> 00:27:40,940 בבירור שברח לנו בזה 675 00:27:40,940 --> 00:27:42,480 ממשק די פרימיטיבי. 676 00:27:42,480 --> 00:27:46,430 אז אותה תכנית זו ב-C יכולה להיות מיוצגת כעת בזה 677 00:27:46,430 --> 00:27:50,060 שפת תכנות בשם Scratch כדלקמן. 678 00:27:50,060 --> 00:27:54,230 זו מקבילה של תכנית זו שלום העולם כתובה ב 679 00:27:54,230 --> 00:27:57,370 שפה זו הפאזל סגנון נקראת גרד. 680 00:27:57,370 --> 00:28:00,600 אז תן לי ללכת קדימה, לפתוח את התכנית מאוד זה. 681 00:28:00,600 --> 00:28:01,850 הוא נקרא שוב מאפס. 682 00:28:01,850 --> 00:28:03,880 זה זמין באופן חופשי, וזה אותו הדבר שאנו 683 00:28:03,880 --> 00:28:05,120 התחיל היום ב. 684 00:28:05,120 --> 00:28:07,790 >> אז זה כאן הוא גרד, וזה מחולק לכמה 685 00:28:07,790 --> 00:28:09,700 חלקים שונים. 686 00:28:09,700 --> 00:28:12,690 בצד ימין העליון מאוד, יש לנו את הבמה שנקראה, ו 687 00:28:12,690 --> 00:28:13,670 אכן, זה שבו את העוגיות 688 00:28:13,670 --> 00:28:15,440 בצע רק קצת לפני. 689 00:28:15,440 --> 00:28:19,660 ועל במה הם דברים הנקראים שדונים, תווים או 690 00:28:19,660 --> 00:28:21,030 אובייקטים או ישויות. 691 00:28:21,030 --> 00:28:23,320 זה לא ממש משנה כמה אתה חושב עליהם, אבל הם 692 00:28:23,320 --> 00:28:26,740 דברים הניתנים לתכנות, מטלטלין, ובמקרה זה את זה, 693 00:28:26,740 --> 00:28:30,730 תכנית שהסטודנט שלנו כתב יש לו כמה עוגיות זנגביל 694 00:28:30,730 --> 00:28:32,990 עוגיות, כמה עוגיות עגולות, כל חבורה של 695 00:28:32,990 --> 00:28:35,430 לבבות, חבורה שלמה של משקפים. 696 00:28:38,170 --> 00:28:42,420 בגלל זה, הוא או היא תוכל לתכנת כל אחד מאלה 697 00:28:42,420 --> 00:28:44,720 תווים בודדים בנפרד. 698 00:28:44,720 --> 00:28:46,480 >> עכשיו, מה זה אומר לתכנת את התווים האלה? 699 00:28:46,480 --> 00:28:49,440 ובכן, הרשה לי להמשיך וללחוץ על עוגיית יד שמאל זה 700 00:28:49,440 --> 00:28:51,830 ולגלול לצד השמאל למעלה כאן. 701 00:28:51,830 --> 00:28:53,670 בפינה השמאלית העליונה של המסך שלי כרגע הוא 702 00:28:53,670 --> 00:28:55,280 מה שנקרא אזור תסריטים. 703 00:28:55,280 --> 00:28:58,790 זה סוג של לוח חלק, בתחילה, על שאני יכול 704 00:28:58,790 --> 00:29:01,540 גרור ושחררת את חתיכות הפאזל ש, בכנות, לעשות 705 00:29:01,540 --> 00:29:03,020 בדיוק מה שהם אומרים. 706 00:29:03,020 --> 00:29:05,820 בחלקו העליון של מחסנית זו של חלקי הפאזל היא המילה 707 00:29:05,820 --> 00:29:09,340 כאשר הדגל ירוק שנלחץ, ואם אתה לא שמת לב קודם, 708 00:29:09,340 --> 00:29:12,300 בדרך התחילה שיר שעוגייה הייתה לחיצה, פשוטו כמשמעו, 709 00:29:12,300 --> 00:29:13,320 דגל ירוק. 710 00:29:13,320 --> 00:29:16,590 כך שפיסת הפאזל בפינה שמאלית עליונה יש משמעות כש 711 00:29:16,590 --> 00:29:19,780 לחיצות אדם הדגל הירוק, המשיכו לעשות 712 00:29:19,780 --> 00:29:21,110 את הדברים הבאים. 713 00:29:21,110 --> 00:29:23,330 >> עכשיו, מה הם עוגייה להמשיך לעשות? 714 00:29:23,330 --> 00:29:25,810 אני לא ממש יודע איך לפרש את זה עדיין, אבל 715 00:29:25,810 --> 00:29:29,220 עוגייה כנראה להגדיר החריץ שלה לאפס, אז זה חיכה 716 00:29:29,220 --> 00:29:31,740 שלוש שניות, ולאחר מכן זה שינתה את הקבוצה שלו לאחד, אז זה 717 00:29:31,740 --> 00:29:33,590 חיכיתי רגע, ואז הוא שינה אותה 718 00:29:33,590 --> 00:29:35,100 בחזרה לחריץ אחד. 719 00:29:35,100 --> 00:29:37,373 ואז זה באמת נראה קצת כמו באג, לא צריך 720 00:29:37,373 --> 00:29:39,440 צריך לשנות את החריץ שלה שוב ושוב אלא אם כן זה 721 00:29:39,440 --> 00:29:43,380 להיות שונה במקומות אחרים, אבל זו סדרה של צעדים היא מה 722 00:29:43,380 --> 00:29:46,800 מכתיב את ההתנהגות של העוגייה המסוימת הזה. 723 00:29:46,800 --> 00:29:49,180 אז בואו באמת לגלול אחורה ולא להסתכל על משהו 724 00:29:49,180 --> 00:29:50,430 כל כך מורכב עדיין. 725 00:29:50,430 --> 00:29:52,260 תן לי ללכת קדימה וללכת לקובץ, חדש, 726 00:29:52,260 --> 00:29:53,560 ולקבל שולחן נקי. 727 00:29:53,560 --> 00:29:56,590 >> אז עכשיו, אני אכן יש שטח ריק תסריט, שלב ריק, 728 00:29:56,590 --> 00:29:59,380 עם שריטת ספרייט ברירת המחדל שלנו, ובפינה השמאלית העליונה 729 00:29:59,380 --> 00:30:01,670 על המסך שלי יש לי מזרן של כולם 730 00:30:01,670 --> 00:30:03,400 חלקי הפאזל זמינים. 731 00:30:03,400 --> 00:30:06,300 ואנחנו לא עוברים כמעט שרבים מהדברים האלה 732 00:30:06,300 --> 00:30:09,470 היום כי, שוב, רובם מסבירים את עצמו, אבל אנחנו 733 00:30:09,470 --> 00:30:12,370 מנסה לקטלג אותם ולהצביע על הדמיון 734 00:30:12,370 --> 00:30:15,380 עם שפות עתידיות אלה כדי שנוכל לצלול. 735 00:30:15,380 --> 00:30:19,180 בפינה שמאלית העליונה וכאן הוא הראשון כאשר הדגל ירוק שנלחץ, 736 00:30:19,180 --> 00:30:22,170 אז תן לי לגרור את זה לכאן, להתרחק קצת. 737 00:30:22,170 --> 00:30:25,780 ואם אני לוחץ על הדגל הירוק, שום דבר לא באמת קורה כי 738 00:30:25,780 --> 00:30:29,360 אני לא מחובר כל היגיון, כל אמירה כביכול, כדי 739 00:30:29,360 --> 00:30:31,040 שהדגל ירוק, אז בוא אותי ללכת אל 740 00:30:31,040 --> 00:30:32,500 קטגוריות לכאן. 741 00:30:32,500 --> 00:30:34,840 אני כרגע בקטגורית הבקרה. 742 00:30:34,840 --> 00:30:37,630 אני במקום אני הולך לרדת לקטגוריה נראית, ו 743 00:30:37,630 --> 00:30:39,970 יש קבוצה שלמה של דברים שאומרים כאן תגיד, 744 00:30:39,970 --> 00:30:43,110 חושב, שינוי צבע, תלבושות חלף. 745 00:30:43,110 --> 00:30:44,860 >> אז אתה יכול לעשות דברים טיפשיים עם תלבושות ו 746 00:30:44,860 --> 00:30:45,870 צלילים וכדומה. 747 00:30:45,870 --> 00:30:49,970 תן לי ללכת קדימה ופשוט לומר לומר, ועכשיו שם לב שאגרור 748 00:30:49,970 --> 00:30:52,940 ושחררתי את פיסת הפאזל הזה, זה הולך לרוצים להיצמד 749 00:30:52,940 --> 00:30:55,010 לצורה המתאימה. 750 00:30:55,010 --> 00:30:58,020 אז כשאני הולך קדימה ולהרפות מהעכבר שלי, הם נועלים 751 00:30:58,020 --> 00:31:01,770 ביחד, ועכשיו אם אני הולך לכאן ולוחץ על הדגל הירוק, 752 00:31:01,770 --> 00:31:05,910 החתול אכן להגיד שלום, רק כי זה מה שנמצא בתוך 753 00:31:05,910 --> 00:31:06,980 קופסה לבנה זה. 754 00:31:06,980 --> 00:31:08,900 בקרוב נראה שקופסה לבנה זה מה שנקרא 755 00:31:08,900 --> 00:31:10,250 ויכוח, או פרמטר. 756 00:31:10,250 --> 00:31:12,560 זה דרך של שינוי ההתנהגות, במקרה זה, 757 00:31:12,560 --> 00:31:15,070 הפאזל, אבל אם אני רוצה לומר בדיוק מה שאמרתי 758 00:31:15,070 --> 00:31:18,610 בעבר, אומר שלום, עולם, אני יכול עכשיו לחזור לכאן, 759 00:31:18,610 --> 00:31:21,990 לחץ לשחק, ו" שלום, העולם "הוא מה של אמר. 760 00:31:21,990 --> 00:31:24,340 >> אז אנחנו ממש עכשיו בתכנות. 761 00:31:24,340 --> 00:31:27,540 זה לא כל כך משכנע של תכנית, אבל לפחות 762 00:31:27,540 --> 00:31:30,140 זה משהו קטן משכנע יותר מזה נראה, ב 763 00:31:30,140 --> 00:31:31,300 מבט ראשון, כמו זו. 764 00:31:31,300 --> 00:31:34,190 ואנחנו יכולים להגיע מהר מאוד כל הבעה יותר 765 00:31:34,190 --> 00:31:36,600 כי בהתחלה, כמו בשפות אחרות, יש כל 766 00:31:36,600 --> 00:31:40,010 מיני ההצהרות, לא רק יגידו או הדפסת משהו, אבל 767 00:31:40,010 --> 00:31:42,650 אתה יכול לעשות דברים כמו לחכות, כמו שרק ראו את עם 768 00:31:42,650 --> 00:31:44,240 העוגייה, חלק מספר השניות. 769 00:31:44,240 --> 00:31:46,440 אתה יכול לשחק בצלילים בסביבתו של גרד רק 770 00:31:46,440 --> 00:31:49,050 כמו שאתה יכול בצליל משחק תכנית מחשב רגיל. 771 00:31:49,050 --> 00:31:52,440 אתה יכול לבדוק מה שנקרא ביטויים בוליאניים. 772 00:31:52,440 --> 00:31:55,630 אז עכשיו, בואו נתחיל להוסיף לערכת הכלים שלנו כמה מינוח 773 00:31:55,630 --> 00:31:58,840 שלמעשה מתייחס לדוגמא שג'וזף ואני עשינו 774 00:31:58,840 --> 00:32:00,080 כאן עם הגרביים. 775 00:32:00,080 --> 00:32:03,040 לכן הצהרות הן רק הצהרות של עובדה. 776 00:32:03,040 --> 00:32:04,160 לעשות את זה. 777 00:32:04,160 --> 00:32:07,370 הוראה לספרייט, או האנושי, לעשות משהו. 778 00:32:07,370 --> 00:32:10,420 ביטוי בוליאני הוא משהו שיש לו ערך, 779 00:32:10,420 --> 00:32:14,580 ערך שנקרא אמת, זה או אפס או אחד, שקר או 780 00:32:14,580 --> 00:32:17,890 נכון, כבוי או ב, כן או לא. 781 00:32:17,890 --> 00:32:19,730 לא ממש משנה כמה אתה חושב על זה, אבל זה 782 00:32:19,730 --> 00:32:20,700 המצב בינארי. 783 00:32:20,700 --> 00:32:22,610 תאט דן בווידאו של יום רביעי, 2 784 00:32:22,610 --> 00:32:23,570 דברים שונים. 785 00:32:23,570 --> 00:32:25,740 >> אז בהתחלה, ביטויים בוליאניים יקרו להסתכל 786 00:32:25,740 --> 00:32:28,910 כמו החפצים הכחולים האלו כאן, ובמקרה הזה, השאלה 787 00:32:28,910 --> 00:32:30,960 הסימן מרמז שאתה שואל שאלה. 788 00:32:30,960 --> 00:32:34,250 האם החתול, או ספרייט, נוגע מצביע העכבר? 789 00:32:34,250 --> 00:32:36,580 אז זה הוא רק דוגמה אחת של בלוק גרד שהולך 790 00:32:36,580 --> 00:32:39,950 כדי לאפשר לנו לבדוק כן או לא, הוא עכבר נגיעה 791 00:32:39,950 --> 00:32:40,790 ספרייט על המסך? 792 00:32:40,790 --> 00:32:42,840 וזה יכול להיות שימושי אם אתה באמת רוצה לעשות את הדברים 793 00:32:42,840 --> 00:32:43,820 עם העכבר. 794 00:32:43,820 --> 00:32:46,470 בנוסף לביטויים בוליאניים, יש לנו דברים 795 00:32:46,470 --> 00:32:49,110 כמותו את העכבר, כך שאתה יכול לזהות סוג זה של 796 00:32:49,110 --> 00:32:50,200 השאלה גם כן. 797 00:32:50,200 --> 00:32:52,590 אנחנו יכולים לעשות את מתמטיקה אם אתה באמת רוצה, ויש 798 00:32:52,590 --> 00:32:55,170 שימושים ממש משכנעים יותר לזה מאשר רק טהור של 799 00:32:55,170 --> 00:32:56,400 חשבון, כפי שנראה. 800 00:32:56,400 --> 00:32:59,690 אקראיות מדומה וביצוע התכנית שלך תופענה לחשוב 801 00:32:59,690 --> 00:33:03,490 או מתנהגים בצורה שונה המבוסס על כמה ערכים אקראיים לכאורה, 802 00:33:03,490 --> 00:33:06,610 ואז יש לנו דברים כמו ביטויים בוליאניים כמו AND. 803 00:33:06,610 --> 00:33:08,830 אז אם אתה באמת רוצה לבדוק את שני ערכים, שנראים ב 804 00:33:08,830 --> 00:33:11,110 גרד שאנחנו באמת יכולים לבדוק אם זה 805 00:33:11,110 --> 00:33:13,190 נכון, וזה נכון. 806 00:33:13,190 --> 00:33:15,300 לדוגמה, במקרה של הגרביים שלי, שהייתי מסוגל ב 807 00:33:15,300 --> 00:33:19,045 מאוד סוף שאל את השאלה אם גרב שמאל ובימין הגרב 808 00:33:19,045 --> 00:33:20,610 הוא ב, הפסיק. 809 00:33:20,610 --> 00:33:22,710 כולכם סיימתם את היום, כדי שיהיה 810 00:33:22,710 --> 00:33:24,300 הזדמנות לכך. 811 00:33:24,300 --> 00:33:27,740 >> אז בואו נמשיך ואנסה לשחזר כמה מאלה יחד 812 00:33:27,740 --> 00:33:31,570 וללכת לכמה דוגמאות יותר 813 00:33:31,570 --> 00:33:32,610 משכנע יותר מזאת. 814 00:33:32,610 --> 00:33:35,770 אז תן לי ללכת קדימה ולפתוח כאן כמה דוגמאות 815 00:33:35,770 --> 00:33:38,350 שתמיד יהיה באתר האינטרנט של הקורס, כמו גם, ו 816 00:33:38,350 --> 00:33:39,870 לפתוח hello2. 817 00:33:39,870 --> 00:33:42,910 אז בhello2 כאן, יש לנו תכנית שעושה כמה 818 00:33:42,910 --> 00:33:46,290 דברים, אבל זה לא עושה את זה בצורה יעילה כמו שאנו יכולים להיות. 819 00:33:46,290 --> 00:33:48,900 אז הנה זה אומר "שלום, עולם" לשנייה אחת ואז מחכה 820 00:33:48,900 --> 00:33:49,450 לשנייה אחת. 821 00:33:49,450 --> 00:33:51,720 ואז עושה את זה שוב, ואז עושה את זה שוב. 822 00:33:51,720 --> 00:33:55,530 אז אם אני לוחץ על הדגל הירוק, שריטה אומר "שלום, עולם. 823 00:33:55,530 --> 00:33:57,160 שלום, עולם. 824 00:33:57,160 --> 00:34:00,080 שלום, עולם. "וזה כמובן מועמד עכשיו ל 825 00:34:00,080 --> 00:34:00,860 שיפור. 826 00:34:00,860 --> 00:34:03,070 >> מה השיפור השולי, בתקווה, אנחנו יכולים 827 00:34:03,070 --> 00:34:07,610 עכשיו לעשות אם גרד תומך ברעיון? 828 00:34:07,610 --> 00:34:08,310 איזה סוג של לולאה. 829 00:34:08,310 --> 00:34:10,960 סוג כלשהו של חזרה, עכשיו, יהיה נחמד, אז תן לי 830 00:34:10,960 --> 00:34:11,920 למעשה לנסות את זה. 831 00:34:11,920 --> 00:34:13,870 תן לי בעצם ללכת ולעבור את זה. 832 00:34:13,870 --> 00:34:16,449 אז הודעה יכולה לנתק לוקים באותה קלות כמו שאתה יכול להוסיף ל 833 00:34:16,449 --> 00:34:17,420 לצרף אותם. 834 00:34:17,420 --> 00:34:20,730 תן לי ללכת תחת בקרה, לגלול למטה כאן, ואכן, 835 00:34:20,730 --> 00:34:24,000 יש פיסת הפאזל הזה כאן, חזור ולתמיד ו 836 00:34:24,000 --> 00:34:24,870 אם לנצח. 837 00:34:24,870 --> 00:34:28,500 אז יש כמה דרכים להביע את מבני looping 838 00:34:28,500 --> 00:34:29,340 בלגרד. 839 00:34:29,340 --> 00:34:31,730 האחד שאני כנראה רוצה כאן הוא לא לנצח, כי אני רק 840 00:34:31,730 --> 00:34:34,639 רוצה שזה יקרה שלוש פעמים, אבל כנראה חזור. 841 00:34:34,639 --> 00:34:38,449 אז בואו לגרור אותי חזרה לכאן, גרור ושחררת אותו, ו 842 00:34:38,449 --> 00:34:42,530 עכשיו במקום לומר "שלום, העולם" שלוש פעמים נפרדות, 843 00:34:42,530 --> 00:34:44,230 תן לי לגרור את פיסת הפאזל הזה כאן. 844 00:34:44,230 --> 00:34:46,610 ולמרות שזה לא נראה מתאים, התכנית היא חכמה 845 00:34:46,610 --> 00:34:48,920 מספיק כדי להבין שהוא יגדל כדי למלא, כך שזה 846 00:34:48,920 --> 00:34:51,270 צורות שחומר ולא גודל מוחלט. 847 00:34:51,270 --> 00:34:54,030 הרשה לי לשנות את החזרה לשלוש, ועכשיו תנו לי ללכת 848 00:34:54,030 --> 00:34:56,560 קדימה ולגרור חכו שני שם גם כן. 849 00:34:56,560 --> 00:34:59,220 זה הולך הצמד גם כן, ואז עכשיו אני הולך לגרור 850 00:34:59,220 --> 00:35:01,370 החבר 'ה האלה לכאן ופשוט לזרוק אותם כי אני 851 00:35:01,370 --> 00:35:02,710 לא צריכים אותם יותר. 852 00:35:02,710 --> 00:35:05,920 בואו להגדיל אותי החוצה ולחץ על הדגל הירוק עכשיו, ויש לנו 853 00:35:05,920 --> 00:35:09,600 אותה תכנית, אבל, כפי שחזיתי בעבר, טוב יותר 854 00:35:09,600 --> 00:35:12,200 תוכנן, כי אתה יכול לדמיין כמה גרוע זה תכנית 855 00:35:12,200 --> 00:35:14,410 היינו מקבל, ובוודאי מבחינה אסתטית, אם היה לך ל 856 00:35:14,410 --> 00:35:16,640 מתחיל בהעתקה והדבקה, העתקה והדבקה, או 857 00:35:16,640 --> 00:35:20,020 גרירה ושחרור של הדברים לתקן אותו שוב ושוב. 858 00:35:20,020 --> 00:35:22,260 >> עכשיו, פשוט אומר דברים על המסך, הדפסה ל 859 00:35:22,260 --> 00:35:25,350 מסך, באמת לא כל כך מרגש, אז בואו נפתח 860 00:35:25,350 --> 00:35:26,580 שונות שלישיות כאן. 861 00:35:26,580 --> 00:35:29,810 ועכשיו, כמו שתראה, זה יגיע מהר מעצבן - 862 00:35:29,810 --> 00:35:30,850 [MEOW] 863 00:35:30,850 --> 00:35:31,940 הדוד Malan: - אבל זה גם די חמוד. 864 00:35:31,940 --> 00:35:35,244 [MEOW] 865 00:35:35,244 --> 00:35:37,460 הדוד Malan: אוקיי, אז טוב, ואנחנו בהחלט יכולים להשתמש בזה 866 00:35:37,460 --> 00:35:41,060 אותו מעבר מזה chunking לתוך לולאות 867 00:35:41,060 --> 00:35:43,520 מבנה, אבל בואו נעשה את זה יותר מעניין עדיין. 868 00:35:43,520 --> 00:35:47,480 >> תן לי ללכת קדימה, לפתוח את שונות 4 כאן, איפה אני 869 00:35:47,480 --> 00:35:50,020 לקחת את דברי צעד אחד קדימה. 870 00:35:50,020 --> 00:35:54,450 אז לפי זה, אווילי ככל שזה בהתחלה 871 00:35:54,450 --> 00:35:58,530 מבט, מה שהתכנית הזו הולכת לעשות? 872 00:35:58,530 --> 00:35:59,790 זה הולך מייאו פעם אחת. 873 00:35:59,790 --> 00:36:00,160 למה? 874 00:36:00,160 --> 00:36:03,340 ובכן, אחת הוא, עד כמה שאני יודע, תמיד פחות משנים. 875 00:36:03,340 --> 00:36:04,890 אין מושג של אקראיות כאן. 876 00:36:04,890 --> 00:36:07,240 לי, פשוטו כמשמעו, בקידוד קשיח אחד ושניים, אבל זה 877 00:36:07,240 --> 00:36:10,370 למשל עכשיו בשימוש בפועל בביטוי בוליאני. 878 00:36:10,370 --> 00:36:13,650 הרבה אוהבים כיוסף עשה בpseudocode, כניסת IF 879 00:36:13,650 --> 00:36:17,170 אתה מוצא את גרביים תואמים לאחר מכן בצעו את הפעולות הבאות, יש לנו כאן 880 00:36:17,170 --> 00:36:19,750 ביטוי אם אחד הוא פחות מ 2 אז - 881 00:36:19,750 --> 00:36:21,820 ולמעשה יש לנו אפילו קצת כניסה, 882 00:36:21,820 --> 00:36:24,480 בי סגול הוא מסוכסך מעט ימינה - 883 00:36:24,480 --> 00:36:26,600 ואז אתה הולך לשחק מייאו הצליל. 884 00:36:26,600 --> 00:36:30,060 עכשיו, במקרה זה, כי אחד הוא תמיד פחות מ 2, אז זה 885 00:36:30,060 --> 00:36:31,970 הוא סוג של בזבוז של מצב. 886 00:36:31,970 --> 00:36:34,890 אבל שנוכל, כפי שנראה, לחבר דברים אחרים לתוך 887 00:36:34,890 --> 00:36:37,420 מצייני מיקום אלה שבו ושניים עכשיו. 888 00:36:37,420 --> 00:36:41,340 אז בואו עכשיו להתקדם לדוגמה חמש מאלה כמה 889 00:36:41,340 --> 00:36:45,850 דברי ברכה ולהסתכל על מה התכנית הזו הולכת לעשות. 890 00:36:45,850 --> 00:36:48,710 >> אז עכשיו, במשפט עברי, איך עושה את זה 891 00:36:48,710 --> 00:36:51,460 תכנית מתנהגת? 892 00:36:51,460 --> 00:36:52,950 קהל: מיילל במחצית הזמן. 893 00:36:52,950 --> 00:36:55,380 הדוד Malan: מחציתו של מיאו של הזמן, אז זו דרך של 894 00:36:55,380 --> 00:36:56,700 העברת רעיון פשוט מאוד. 895 00:36:56,700 --> 00:36:59,400 למרות שקורים לך להיות באמצעות כמה פערים כאן 896 00:36:59,400 --> 00:37:01,860 בכמה מספרים, זה באמת רק programmatical 897 00:37:01,860 --> 00:37:09,490 אגב, דרך מדויקת, אם לומר את מטבע כשהראש למעלה, ללכת 898 00:37:09,490 --> 00:37:10,270 קדימה ומייאו. 899 00:37:10,270 --> 00:37:13,540 או לחלופין, אם מטבע פלי, לא לילל. 900 00:37:13,540 --> 00:37:15,110 ובמקרה הזה, איך אנחנו מבטאים את זה? 901 00:37:15,110 --> 00:37:17,950 נאסוף את מספר אקראי מתוך 1 עד 10, ואם זה 902 00:37:17,950 --> 00:37:21,110 המספר הוא פחות מ 6, קדימה ומייאו. 903 00:37:21,110 --> 00:37:22,260 ואיך זה נכנס לכאן? 904 00:37:22,260 --> 00:37:24,620 ובכן שוב, שים לב רק גרירה ושחרור ו 905 00:37:24,620 --> 00:37:26,190 דברי תפסים למקומו. 906 00:37:26,190 --> 00:37:28,020 >> אז עכשיו בואו נראה אם ​​זה עובד אקראי. 907 00:37:28,020 --> 00:37:29,845 תן לי ללכת קדימה ולחץ על הדגל הירוק. 908 00:37:29,845 --> 00:37:31,120 [MEOW] 909 00:37:31,120 --> 00:37:32,000 הדוד Malan: אוקיי. 910 00:37:32,000 --> 00:37:33,430 [MEOW] 911 00:37:33,430 --> 00:37:35,260 הדוד Malan: אוקיי. 912 00:37:35,260 --> 00:37:38,510 אוקיי, טוב, אז יש לנו ראשים, ראשים, זנבות ביעילות. 913 00:37:38,510 --> 00:37:39,295 זנבות. 914 00:37:39,295 --> 00:37:39,590 [MEOW] 915 00:37:39,590 --> 00:37:41,829 הדוד Malan: ראשים. 916 00:37:41,829 --> 00:37:43,220 [MEOW] 917 00:37:43,220 --> 00:37:44,040 הדוד Malan: מצוין. 918 00:37:44,040 --> 00:37:46,220 זה תמיד מביך שבו אתה מקבל רק סטטיסטי רע 919 00:37:46,220 --> 00:37:48,510 לרוץ, וזה כל הראשים, והתכנית בעצם לא 920 00:37:48,510 --> 00:37:49,230 לעבוד כפי שהיית מקווה. 921 00:37:49,230 --> 00:37:51,210 אבל הפעם, זה עבד, ושנדמינו לנו, אם אנחנו לא 922 00:37:51,210 --> 00:37:53,830 זה מספר אינסופי של פעמים, סיכויים של 50%. 923 00:37:53,830 --> 00:37:56,950 עכשיו שוב, לא כל כך מעניין, רק עושה חתולים 924 00:37:56,950 --> 00:37:59,840 מייאו, אז בואו נראה אם ​​אנחנו יכולים להוביל את זה עוד קצת 925 00:37:59,840 --> 00:38:01,820 כאן בגרסה 6. 926 00:38:01,820 --> 00:38:05,620 אז עכשיו, יש לנו גרסה ממש מעצבנת - 927 00:38:05,620 --> 00:38:08,215 [מיילל בכל כמה שניות] 928 00:38:08,215 --> 00:38:10,640 הדוד Malan: - וזה מה שידוע, בדרך כלל, כפי 929 00:38:10,640 --> 00:38:11,670 לולאה אינסופית. 930 00:38:11,670 --> 00:38:14,190 >> לולאה אינסופית אז במקרה זה מרגיש רעה. 931 00:38:14,190 --> 00:38:16,970 זה בהחלט הולך להתחיל נשמע רע, ועדיין אינסופי 932 00:38:16,970 --> 00:38:18,740 לולאות הן לא תמיד רעות. 933 00:38:18,740 --> 00:38:20,910 האם תוכל לחשוב על הקשר בתוכנות מחשב שבו היית 934 00:38:20,910 --> 00:38:22,910 בעצם רוצה לולאה אינסופית? 935 00:38:22,910 --> 00:38:23,691 כן? 936 00:38:23,691 --> 00:38:26,520 קהל: כשאתה רוצה לבדוק את מצבו. 937 00:38:26,520 --> 00:38:28,240 הדוד Malan: אוקיי, כאשר ברצונך להמשיך לבדוק מצב? 938 00:38:28,240 --> 00:38:29,190 כמו מה? 939 00:38:29,190 --> 00:38:30,440 קהל: [לא ברור] 940 00:38:36,060 --> 00:38:38,170 הדוד Malan: אוקיי, טוב, כך שאם הייתה לך קצת תכנית, חלק 941 00:38:38,170 --> 00:38:40,440 מסוג דברי אוטומציה ביתית, שבו אתה רוצה כל הזמן 942 00:38:40,440 --> 00:38:41,980 צג הוא משהו המקרה. 943 00:38:41,980 --> 00:38:42,850 האם את האורות? 944 00:38:42,850 --> 00:38:45,020 האם את האורות הדולקים כי אולי יש לך שעון, ו 945 00:38:45,020 --> 00:38:47,360 אתה רוצה שהם יתפוצצו, ייתכן שתצטרכו לעשות משהו 946 00:38:47,360 --> 00:38:48,290 שוב ושוב. 947 00:38:48,290 --> 00:38:50,540 ואכן, מדובר בשעונים, כל אחד מכם שיש להם 948 00:38:50,540 --> 00:38:53,100 שעונים במחשב שלך או שהעונים דיגיטליים, זה 949 00:38:53,100 --> 00:38:54,210 לולאה אינסופית. 950 00:38:54,210 --> 00:38:56,980 היא ממשיכה לעדכן את הזמן כי זה כל זמן 951 00:38:56,980 --> 00:38:59,750 בדיקה ובדיקה ובדיקה יש את הזמן השתנה, 952 00:38:59,750 --> 00:39:01,000 ואם כן, הו אלוהים שלי. 953 00:39:03,670 --> 00:39:04,740 השעון סוף הסוף השתנה. 954 00:39:04,740 --> 00:39:07,020 זה צריך להציג ערך לך את זה. 955 00:39:07,020 --> 00:39:10,880 אז אילו רוב הלולאות האינסופיות הזמן הם טעות, 956 00:39:10,880 --> 00:39:13,950 או לפחות החלטת תכנון לקויה, לפעמים הם עושים 957 00:39:13,950 --> 00:39:14,785 יש הערך שלהם. 958 00:39:14,785 --> 00:39:18,170 >> ובכן, בואו להתקדם עוד יותר כאן כדי hello7. 959 00:39:18,170 --> 00:39:20,410 אז עכשיו התכנית תקבל קצת יותר אינטראקטיבית. 960 00:39:20,410 --> 00:39:23,120 בואו להגדיל אותי לכאן, ושוב, זה מה שיפה 961 00:39:23,120 --> 00:39:23,640 על גרד. 962 00:39:23,640 --> 00:39:26,760 ואנו נשתמש בו כדי שתהיינה ברורים, שריטה, רק היום ולתוך 963 00:39:26,760 --> 00:39:27,780 הבעיה של השבוע הבא להגדיר. 964 00:39:27,780 --> 00:39:31,920 אבל ביום שני, אנחנו צוללים לתוך ג בתכנית זו כאן, היא עושה, 965 00:39:31,920 --> 00:39:33,190 לנצח, את הדברים הבאים. 966 00:39:33,190 --> 00:39:35,890 אם נגיעת מצביע העכבר - עכשיו, מי 967 00:39:35,890 --> 00:39:36,420 הקשר כאן? 968 00:39:36,420 --> 00:39:39,670 ובכן, והודיע ​​כי מי שנבחר כאן למטה בתחתית 969 00:39:39,670 --> 00:39:43,060 נכון הוא החתול, ספרייט אחד, ולכן כתבים אלה, זה 970 00:39:43,060 --> 00:39:45,720 תכנית, חלה עליו באופן ספציפי. 971 00:39:45,720 --> 00:39:48,950 אז אם חתול שנוגע בסמן העכבר, ואז זה קורה 972 00:39:48,950 --> 00:39:51,350 לשחק זה למטה ולחכות שתי שניות, ו 973 00:39:51,350 --> 00:39:53,030 לאחר מכן חזור עד זרא. 974 00:39:53,030 --> 00:39:55,360 >> אז בואו נלך קדימה ולחצתי על כפתור הפעלה. 975 00:39:55,360 --> 00:39:57,580 שום דבר לא קורה, אבל אם אני רוצה ללטף 976 00:39:57,580 --> 00:39:59,310 חתול עכשיו, אני יכול פשוט. 977 00:39:59,310 --> 00:40:01,130 [MEOW] 978 00:40:01,130 --> 00:40:02,244 הדוד Malan: מקסים. 979 00:40:02,244 --> 00:40:05,956 [MEOW] 980 00:40:05,956 --> 00:40:08,750 הדוד Malan: אוקיי, פחות מעצבן, אבל גם מקבל משעמם, 981 00:40:08,750 --> 00:40:11,480 כך תוכלו לעבור הלאה ולראות אם אנחנו לא יכולים להזריק 982 00:40:11,480 --> 00:40:12,460 עוד מעט מאוד היגיון. 983 00:40:12,460 --> 00:40:14,300 זה היה דוגמה 7. 984 00:40:14,300 --> 00:40:16,090 >> הנה דוגמה בשמונה, אנחנו הולכים 985 00:40:16,090 --> 00:40:18,670 להציג את מצב אחר. 986 00:40:18,670 --> 00:40:21,440 כל כך הרבה כמו מזלג מילולי בכביש, שבו אתה יכול ללכת 987 00:40:21,440 --> 00:40:24,260 עזב או שאתה יכול ללכת ימינה, במצב תכנות 988 00:40:24,260 --> 00:40:28,120 שפה כמו גירוד, או כפי שנראים C, יכול לאפשר לך 989 00:40:28,120 --> 00:40:32,230 ללכת בכיוון זה או אחר באמצעות IF ELSE לבנות. 990 00:40:32,230 --> 00:40:35,160 אז פשוטו כמשמעו, אם נגיעת סמן עכבר, זה 991 00:40:35,160 --> 00:40:38,680 תהיה לנגן צליל מסוים, אחר זה הולך לשחק את זה אחר 992 00:40:38,680 --> 00:40:39,800 קול, מיאו. 993 00:40:39,800 --> 00:40:42,510 עכשיו, אם אתה יכול להסיק מהשם של הצלילים האלה, אתה יכול 994 00:40:42,510 --> 00:40:45,310 כנראה לנחש מה התכנית הזו אמורה להעלות באוב 995 00:40:45,310 --> 00:40:46,250 הרעיון. 996 00:40:46,250 --> 00:40:48,742 החתול הזה מיילל בשמחה. 997 00:40:48,742 --> 00:40:49,230 [MEOW] 998 00:40:49,230 --> 00:40:51,410 הדוד Malan: לשמחתי, אבל לא 999 00:40:51,410 --> 00:40:52,926 די אוהב שנוגע בו. 1000 00:40:52,926 --> 00:40:54,550 [שאגות] 1001 00:40:54,550 --> 00:40:57,500 הדוד Malan: אז עכשיו יש לנו חתול שצועק עליך. 1002 00:40:57,500 --> 00:41:00,570 >> בסדר, טוב, הדוגמא האחרונה עם חתולים כאן, ו 1003 00:41:00,570 --> 00:41:02,920 בואו גרסה הפתוחה של תשע מזה כאן. 1004 00:41:02,920 --> 00:41:06,190 אז עכשיו, יש לנו את הצליל הכי המעצבן הבא שאני יכול 1005 00:41:06,190 --> 00:41:11,630 למצוא, ולכן יש לנו סוס ים או אריה ים כאן מי הולך 1006 00:41:11,630 --> 00:41:13,222 בצע את הפעולות הבאות. 1007 00:41:13,222 --> 00:41:20,870 [הב SEAL] 1008 00:41:20,870 --> 00:41:23,310 הדוד Malan: אוקיי, אז זה יימשך עד אשר אתה להבין איך 1009 00:41:23,310 --> 00:41:24,640 תכנית זו עובדת. 1010 00:41:24,640 --> 00:41:28,560 אז הפעם, חיה זו יש שני תסריטים, ומה 1011 00:41:28,560 --> 00:41:31,050 מעניין כאן הוא שהתסריטים האלה הולכים לבצע 1012 00:41:31,050 --> 00:41:32,260 במקביל. 1013 00:41:32,260 --> 00:41:35,340 לכן, מכיוון ששניהם מתחילים עם דגל ירוק 1 לחץ, 1014 00:41:35,340 --> 00:41:38,080 זה כמו ללכת כמו זה, ושתי התוכניות להתחיל לרוץ זה 1015 00:41:38,080 --> 00:41:41,370 פעם אחת, גם אם הם looping לנצח. 1016 00:41:41,370 --> 00:41:44,420 אז בתסריט העליון, יש לי קצת היגיון. 1017 00:41:44,420 --> 00:41:49,275 אילו תכונות שמספק שם למעלה? 1018 00:41:49,275 --> 00:41:50,740 [הב SEAL] 1019 00:41:50,740 --> 00:41:51,670 קהל: [לא ברור] 1020 00:41:51,670 --> 00:41:53,295 הדוד Malan: אם זה מה? 1021 00:41:53,295 --> 00:41:53,760 [הב SEAL] 1022 00:41:53,760 --> 00:41:55,852 קהל: אם מושתק לאפס, זה הולך להמשיך לשחק 1023 00:41:55,852 --> 00:41:58,410 נשמע. [הב SEAL] 1024 00:41:58,410 --> 00:41:58,940 הדוד Malan: אוקיי, טוב. 1025 00:41:58,940 --> 00:42:01,960 אז אם יושתק, מה זה, הדבר הכתום הזה הוא אפס, 1026 00:42:01,960 --> 00:42:05,370 לאחר מכן להפעיל את צליל אריות הים וחושב "הו, 1027 00:42:05,370 --> 00:42:06,770 היי, "למשך שתי שניות. 1028 00:42:06,770 --> 00:42:09,380 עכשיו, אני לא יודע מה הוא מושתק, אבל אפס מעלה 1029 00:42:09,380 --> 00:42:11,230 רעיון של שקר או כבוי. 1030 00:42:11,230 --> 00:42:14,490 אז אם מושתק הוא שגוי, ולכן אם אינו מושתק, 1031 00:42:14,490 --> 00:42:15,660 להמשיך לשחק את הצליל. 1032 00:42:15,660 --> 00:42:17,350 בסדר, נו, איך אנחנו להשבית את הדבר הזה? 1033 00:42:17,350 --> 00:42:19,310 >> ובכן, בואו נסתכל על הסקריפט השני שם למטה. 1034 00:42:19,310 --> 00:42:22,130 התסריט השני אומר להגדיר מושתק לאפס. 1035 00:42:22,130 --> 00:42:25,180 שים לב שזה גם כתום, אז מה שריטה עושה זה צבעים 1036 00:42:25,180 --> 00:42:27,400 לוקים באותו הגוון, אם סוג זה של 1037 00:42:27,400 --> 00:42:28,850 מקשור באופן הגיוני. 1038 00:42:28,850 --> 00:42:32,850 אז בדיוק כמו למעלה מושתק היה כתום, כך מושתק כאן 1039 00:42:32,850 --> 00:42:34,060 מוזכר בגוש כתום. 1040 00:42:34,060 --> 00:42:36,170 אבל מדובר במטלות משתנות, כל כך פשוט כמו ב 1041 00:42:36,170 --> 00:42:39,170 אלגברה, יש לך X ו-Y ו-Z, בתכנות יש לך 1042 00:42:39,170 --> 00:42:41,440 משתנה, אבל הם בדרך כלל - 1043 00:42:41,440 --> 00:42:42,580 ההפסקה בואו לרגע ודמות איך 1044 00:42:42,580 --> 00:42:44,280 כדי שיפסיק לנבוח זה. 1045 00:42:44,280 --> 00:42:45,480 איך אני עושה את זה? 1046 00:42:45,480 --> 00:42:46,480 [הב SEAL] 1047 00:42:46,480 --> 00:42:47,920 הדוד Malan: אוקיי. 1048 00:42:47,920 --> 00:42:49,490 היא נעצרה. אוקיי. 1049 00:42:49,490 --> 00:42:52,230 >> כך שבדיוק כמו באלגברה יש לך משתני x, y, z ו, אבל ב 1050 00:42:52,230 --> 00:42:55,260 תכנות, שמשתנה, כמו x, y, z והוא בדרך כלל 1051 00:42:55,260 --> 00:42:57,330 בעין יפה, כי הם בכלל לא ההבעה. 1052 00:42:57,330 --> 00:43:00,070 אין להם משמעות סמנטית שהיא, ולכן ברוב 1053 00:43:00,070 --> 00:43:02,110 שפות תכנות, משתנים יכולים להיות מלאות 1054 00:43:02,110 --> 00:43:05,270 שמות מובנים מילה או מילים או ביטויים, כמו מושתקים, לומר 1055 00:43:05,270 --> 00:43:06,030 מה שהם עושים. 1056 00:43:06,030 --> 00:43:09,380 אז התסריט השני גם הקשיב לנצח, וזה אמר 1057 00:43:09,380 --> 00:43:12,100 אם המפתח, חלל המקש במקלדת, הוא 1058 00:43:12,100 --> 00:43:13,370 לחץ, סימן שאלה. 1059 00:43:13,370 --> 00:43:16,300 אז יש מצב עם ביטוי בוליאני זה 1060 00:43:16,300 --> 00:43:19,010 הולך לענות על שאלה אחת בכנות או שקר, 1061 00:43:19,010 --> 00:43:22,880 אז יש לי בתוכו אם מקש הרווח נלחץ ו 1062 00:43:22,880 --> 00:43:28,020 אם מושתק הוא אפס, להגדיר מושתק לאחד, אחר הגדירו מושתק לאפס. 1063 00:43:28,020 --> 00:43:30,510 אז מזלג זה אחר בכביש, ושים לב איך אין לי 1064 00:43:30,510 --> 00:43:33,500 מקונן שתיים אם תנאים, היא דרך של בדיקה היא 1065 00:43:33,500 --> 00:43:36,610 מקש רווח לחוץ כי אם כן, אז או שאני רוצה ללכת זה 1066 00:43:36,610 --> 00:43:38,000 דרך או בדרך זו. 1067 00:43:38,000 --> 00:43:40,210 וכיצד אוכל להפוך את הערך של מושתק? 1068 00:43:40,210 --> 00:43:41,410 אני צריך לבדוק את זה הוא אפס? 1069 00:43:41,410 --> 00:43:45,890 אם כן, להפוך אותו לאחד, אחר להפוך אותו לאפס ולכן לעבור 1070 00:43:45,890 --> 00:43:47,670 שתי המדינות שלו. 1071 00:43:47,670 --> 00:43:50,030 >> בסדר, אז יש לנו אז כמה מאלה בסיסיים 1072 00:43:50,030 --> 00:43:50,540 מבנים. 1073 00:43:50,540 --> 00:43:52,810 יש לנו ביטויים בוליאניים, ולהבין, גם אלה 1074 00:43:52,810 --> 00:43:54,050 לא כל כך מוכר. 1075 00:43:54,050 --> 00:43:56,730 למעשה, הנה צילום מסך מהיר כמובן של הרווארד CS50 1076 00:43:56,730 --> 00:43:59,740 כלי קניות, וכל אתר אינטרנט שם בחוץ, כי יש תיבות 1077 00:43:59,740 --> 00:44:02,420 ואפשרויות נפתחות שבאמת, כל הזמן הזה, כבר משתמשים 1078 00:44:02,420 --> 00:44:03,430 ביטויים בוליאניים. 1079 00:44:03,430 --> 00:44:05,760 במקרה זה כאן, אם אתה לוחץ על תיבת סימון לצד 1080 00:44:05,760 --> 00:44:08,620 כמובן גדול או שווה ל -4.5, או בסמוך לאותו 1081 00:44:08,620 --> 00:44:11,200 סגל, שאתה מציין ביטוי בוליאני. 1082 00:44:11,200 --> 00:44:14,780 הראה לי את קורסים לביטוי שזה נכון. 1083 00:44:14,780 --> 00:44:17,080 או מהימין, אינו מתנגש עם קורסים שאני 1084 00:44:17,080 --> 00:44:20,440 לוקח, אם כי הוא בדק, אז כן, אתה רוצה לבדוק 1085 00:44:20,440 --> 00:44:22,890 מצב זה, שאתה רוצה להתעלם ממנו. 1086 00:44:22,890 --> 00:44:25,170 אז ביטויים בוליאניים הם סוג של מסביב, אבל כש 1087 00:44:25,170 --> 00:44:28,080 אנחנו שמים אותם בתנאים, בין אם תנאים, אם 1088 00:44:28,080 --> 00:44:30,480 Elses, או שאנחנו יכולים אפילו לדמות עמוקים יותר 1089 00:44:30,480 --> 00:44:32,830 רמות, אם אחר אם אחר - 1090 00:44:32,830 --> 00:44:34,430 אז זה סוג של מצב משולש. 1091 00:44:34,430 --> 00:44:36,920 אתה יכול ללכת בדרך זו או בדרך זו או בדרך זו. 1092 00:44:36,920 --> 00:44:39,680 אנחנו יכולים להחזיק את דברי קינון ללכת בכיוונים שונים. 1093 00:44:39,680 --> 00:44:41,800 >> אז Scratch יש לולאות הללו, כמו תמיד. 1094 00:44:41,800 --> 00:44:44,750 יש לו התכונות האלה כמו חזרה על 10, חלק 1095 00:44:44,750 --> 00:44:46,260 מספר מוגבל של פעמים. 1096 00:44:46,260 --> 00:44:49,040 יש לנו את היכולת עכשיו להגדיר משתנה, ולכן במקרה זה 1097 00:44:49,040 --> 00:44:51,810 אני כבר הכרזתי, למשל, גרביים נקראו משתנים. 1098 00:44:51,810 --> 00:44:54,340 אני מאותחל ל 0, וזה עדיין כיוון אחר 1099 00:44:54,340 --> 00:44:56,940 אנחנו יכולים לקחת עד כאן עם יוסף, לפיה אולי אני 1100 00:44:56,940 --> 00:45:00,150 רק לעקוב אחר כמה זוגות גרביים יש לי עליהם ולהפסיק את 1101 00:45:00,150 --> 00:45:03,490 התכנית כאשר הערך של אותו משתנה הוא 2. 1102 00:45:03,490 --> 00:45:05,660 זה יהיה בדרך אחרת מהסוג של הכללה, כי 1103 00:45:05,660 --> 00:45:08,820 בעיה ועושה משהו שוב ושוב. 1104 00:45:08,820 --> 00:45:12,080 ובכן, בואו נלך קדימה וכעת להציג כמה דברים חדשים. 1105 00:45:12,080 --> 00:45:14,100 אז לאלה מכם עם ניסיון תכנות מראש יהיו 1106 00:45:14,100 --> 00:45:17,120 יודע שהרבה שפות יש מערכים, או וקטורים או 1107 00:45:17,120 --> 00:45:19,970 רשימות, ואכן, שריטה יש דבר כזה, יותר מדי. 1108 00:45:19,970 --> 00:45:22,510 אז בואו נראה אם ​​אנחנו לא יכולים לקחת את הדברים לרמה הבאה כאן. 1109 00:45:22,510 --> 00:45:24,920 אם יש לי את היכולת, עכשיו, עם חלקי הפאזל הללו ל 1110 00:45:24,920 --> 00:45:29,080 להוסיף משהו, כמו מילה או מספר, למשתנה, אני יכול 1111 00:45:29,080 --> 00:45:30,550 להתחיל לצבור דברים. 1112 00:45:30,550 --> 00:45:33,630 וזה בעצם אפרופו היפה לדברים כמו משחקים, 1113 00:45:33,630 --> 00:45:35,810 משחקי תפקידים שבם אתה סוג של הליכה סביב 1114 00:45:35,810 --> 00:45:38,600 איזה עולם פנטזית איסוף דברים, להרים דברים, 1115 00:45:38,600 --> 00:45:39,900 להרוויח נקודות, או משהו דומה. 1116 00:45:39,900 --> 00:45:42,310 אולי אתה רוצה לעקוב אחר סוג כלשהו של המלאי, ו 1117 00:45:42,310 --> 00:45:45,180 אכן, זה מה שאחד מהתלמידים לשעבר שלנו כאן עשה עם 1118 00:45:45,180 --> 00:45:47,750 משהו שנקרא Fruitcraft RPG. 1119 00:45:47,750 --> 00:45:51,820 >> אז תן לי ללכת קדימה, לפתוח את זה כאן, וב 1120 00:45:51,820 --> 00:45:56,260 Fruitcraft, יש לנו את העולם הזה בראש. 1121 00:45:56,260 --> 00:45:58,820 אז תן לי ללכת קדימה ולחץ על הדגל הירוק. 1122 00:45:58,820 --> 00:46:01,040 שים לב בפינה שמאלית העליון הוא סוג של המלאי. 1123 00:46:01,040 --> 00:46:04,110 המיושם בגרד כמו מה אנחנו קוראים למערך או 1124 00:46:04,110 --> 00:46:06,890 רשימה, ועכשיו יש לנו אנימציה הקטנה הזה. 1125 00:46:06,890 --> 00:46:10,440 אז בדיוק כמו שהתחלנו מוקדם עם סיפור אהבת עוגייה הזאת, 1126 00:46:10,440 --> 00:46:13,320 ולאחר מכן התקדמנו לחתולים ואריות ים, ועכשיו אנחנו יכולים להיות 1127 00:46:13,320 --> 00:46:15,100 דברים שהם אפילו יותר אינטראקטיביים. 1128 00:46:15,100 --> 00:46:18,250 והבחור הכחול הקטן הזה, אני יכול להתחיל לנוע סביבו 1129 00:46:18,250 --> 00:46:19,500 בית קטן כאן. 1130 00:46:19,500 --> 00:46:22,570 כך זה נראה כאילו יש לו יציאה לכאן, ולכן אני משתמש 1131 00:46:22,570 --> 00:46:25,260 מקשי החצים, למעלה, למטה, שמאל ימין. 1132 00:46:25,260 --> 00:46:28,370 ועכשיו אני בחוץ, אז בוא מה שיש לי כאן. 1133 00:46:28,370 --> 00:46:30,920 נראה כמו תפוז, ואכן, ברגע שאני נוגע 1134 00:46:30,920 --> 00:46:33,110 כתום, היא מקבלת נשרה לתוך המלאי שלי. 1135 00:46:33,110 --> 00:46:35,640 אם אני הולך לכאן לדובדבנים, עכשיו יש לי משהו 1136 00:46:35,640 --> 00:46:36,760 אחר במלאי שלי. 1137 00:46:36,760 --> 00:46:39,100 וכל זה נחמד וחמוד, אבל לחשוב על איך, עכשיו, זה 1138 00:46:39,100 --> 00:46:39,840 מיושם. 1139 00:46:39,840 --> 00:46:42,490 ובכן, יש לנו את הרעיון שלו רשימה, וזה כנראה 1140 00:46:42,490 --> 00:46:45,470 פיסת הפאזל שאתה רק אומר את מה שאתה רוצה להוסיף לו, להוסיף 1141 00:46:45,470 --> 00:46:46,950 כתום, מוסיף דובדבנים. 1142 00:46:46,950 --> 00:46:48,540 עכשיו, מה שהבחור הכחול הקטן הזה עושה? 1143 00:46:48,540 --> 00:46:49,810 ובכן, הוא ספרייט. 1144 00:46:49,810 --> 00:46:52,190 ומן הסתם, תפוזים והדובדבנים - 1145 00:46:52,190 --> 00:46:54,140 הם עצמם היו שדונים נפרדים. 1146 00:46:54,140 --> 00:46:56,980 ושימוש בתנאים בביטויים בוליאניים, את 1147 00:46:56,980 --> 00:47:00,530 הסטודנט היה ככל הנראה מסוגל לבטא אם בחור הוא כחול 1148 00:47:00,530 --> 00:47:04,590 דובדבנים נוגעים לאחר מכן להוסיף את הדובדבנים למילה שלו 1149 00:47:04,590 --> 00:47:07,890 מלאי, ולאחר מכן גם להסתיר את ספרייט הדובדבן. 1150 00:47:07,890 --> 00:47:10,600 כלומר, מתחת למכסת המנוע, יש כנראה עדיין הוא דובדבן 1151 00:47:10,600 --> 00:47:11,350 ספרייט שם. 1152 00:47:11,350 --> 00:47:14,160 שמנו רק אמרתי לו להפוך לבלתי נראה. 1153 00:47:14,160 --> 00:47:16,340 >> עכשיו, אם אני אמשיך בדרך הנה, גם אנחנו יכולים לעשות את זה 1154 00:47:16,340 --> 00:47:19,150 דבר הפרוקסימלי, שבו אני יכול ללכת ולקרוא את השלט. 1155 00:47:19,150 --> 00:47:23,170 אז אם בחור כחול לגעת שלט, יכול להיות לנו בלוק אומר את זה 1156 00:47:23,170 --> 00:47:26,455 בדיוק כמו החתול דבר אלינו במילותיו, הלו, קודם לכן, "יש לי 1157 00:47:26,455 --> 00:47:26,880 כמה פרות? 1158 00:47:26,880 --> 00:47:29,290 להביא אותו למקום הפרי. "בסדר, אז עכשיו, ככל הנראה, 1159 00:47:29,290 --> 00:47:30,550 יש לי הכיוונים שלי. 1160 00:47:30,550 --> 00:47:33,050 אני יכול ללכת לכאן למקום פרות, בשורה עצמי 1161 00:47:33,050 --> 00:47:33,740 עם הדלת. 1162 00:47:33,740 --> 00:47:35,390 עכשיו, אני כאן. 1163 00:47:35,390 --> 00:47:38,120 אני יכול לעלות לאדם בדלפק. 1164 00:47:38,120 --> 00:47:40,330 הוא מזהה שאני קרוב אליו, כך שזה לא צריך להיות 1165 00:47:40,330 --> 00:47:46,780 די זהה נוגעים ללב, ואני נצחתי את המשחק. 1166 00:47:46,780 --> 00:47:49,890 אז יש לנו את Fruitcraft RPG. 1167 00:47:49,890 --> 00:47:52,200 >> אז אנחנו יכולים לעשות דברים אפילו מתקדמים יותר מזה. 1168 00:47:52,200 --> 00:47:53,200 אנחנו יכולים להוסיף צלילים. 1169 00:47:53,200 --> 00:47:54,610 אנחנו יכולים להוסיף אקראיות מדומה. 1170 00:47:54,610 --> 00:47:56,260 אנחנו יכולים להוסיף מורכבות. 1171 00:47:56,260 --> 00:47:58,490 תן לי ללכת קדימה כאן, ובמקום לעשות את זה בעצמי, 1172 00:47:58,490 --> 00:48:01,240 תנו לי להראות לך את אחת מההגשות המתוחכמות יותר 1173 00:48:01,240 --> 00:48:06,640 יש לנו בשנה שעברה ממישהו מסוים בשם בלייק. 1174 00:48:06,640 --> 00:48:08,910 האם יש לנו מתנדב אחד, שהוא נוח מופיע 1175 00:48:08,910 --> 00:48:12,600 מצלמה והיא עד למשחק? 1176 00:48:12,600 --> 00:48:13,450 מה דעתך על זכות לשם? 1177 00:48:13,450 --> 00:48:15,380 בואו נעלה. 1178 00:48:15,380 --> 00:48:19,680 בסדר, אז יש לך משחק שפשוט לא ביודעין 1179 00:48:19,680 --> 00:48:20,780 התנדב לשחק - 1180 00:48:20,780 --> 00:48:25,910 [מחיאות כפות] 1181 00:48:25,910 --> 00:48:28,610 הדוד Malan: - משהו מפעם קרא 1182 00:48:28,610 --> 00:48:30,100 "Frogger". מה שמך? 1183 00:48:30,100 --> 00:48:30,730 Renda: Renda. 1184 00:48:30,730 --> 00:48:31,050 הדוד Malan: Redna? 1185 00:48:31,050 --> 00:48:32,530 Renda: זה כמו ברנדה עם ב. 1186 00:48:32,530 --> 00:48:33,190 הדוד Malan: אוקיי, Renda. 1187 00:48:33,190 --> 00:48:33,590 דוד. 1188 00:48:33,590 --> 00:48:34,580 נע מאוד. 1189 00:48:34,580 --> 00:48:38,690 >> אז הנה ב" Frogger ", ואם אנחנו יכולים להעלות את הנפח רק 1190 00:48:38,690 --> 00:48:39,780 קצת, אתה זה קטן 1191 00:48:39,780 --> 00:48:41,010 צפרדע ירוקה בתחתית. 1192 00:48:41,010 --> 00:48:43,940 אתה יכול להשתמש שמאלה, ימינה, למעלה ולמטה, והמטרה שלך היא 1193 00:48:43,940 --> 00:48:46,510 לחצות את הכביש, לחצות את הנהר, ולגעת ברפידות השושן 1194 00:48:46,510 --> 00:48:47,760 בחלקו העליון. 1195 00:48:52,090 --> 00:48:53,440 אוי. 1196 00:48:53,440 --> 00:48:54,630 אחד לא יותר - 1197 00:48:54,630 --> 00:48:56,400 לעשות שוב, בסדר? 1198 00:48:56,400 --> 00:48:58,890 בואו תחנה של להיט. 1199 00:48:58,890 --> 00:49:00,140 אף אחד לא ראה את זה. 1200 00:49:10,470 --> 00:49:12,930 [מחיאות כפות] 1201 00:49:17,023 --> 00:49:17,850 [מחיאות כפות] 1202 00:49:17,850 --> 00:49:19,341 הדוד Malan: כן. 1203 00:49:19,341 --> 00:49:20,832 עשה טוב מאוד. 1204 00:49:20,832 --> 00:49:22,082 מצוין, תודה. 1205 00:49:27,300 --> 00:49:29,430 >> כך שלא היה Frogger. עכשיו שאתה יודע מה יש לך 1206 00:49:29,430 --> 00:49:32,170 קבלו עצמכם, מתנדב אחד לשונה 1207 00:49:32,170 --> 00:49:34,910 משחק שהוגש על ידי תלמיד אחר. 1208 00:49:34,910 --> 00:49:35,560 אתה רוצה לבוא בעד? 1209 00:49:35,560 --> 00:49:36,576 מה שמך? 1210 00:49:36,576 --> 00:49:37,000 ריצ'ארד: ריצ'רד. 1211 00:49:37,000 --> 00:49:37,420 הדוד Malan: ריצ'רד. 1212 00:49:37,420 --> 00:49:39,732 בסדר, ריצ'רד, יעלה למעלה. 1213 00:49:39,732 --> 00:49:42,187 [מחיאות כפות] 1214 00:49:45,140 --> 00:49:47,030 הדוד Malan: יש לך משהו שיישמע 1215 00:49:47,030 --> 00:49:54,180 מוכר בקרוב, אז הנה ההוראות שלך. 1216 00:49:54,180 --> 00:49:56,580 אז ברגע, כמה חתיכות הפאזל הולכות לגלול מעלה 1217 00:49:56,580 --> 00:49:58,150 מהמסך שמביט שמאלה או 1218 00:49:58,150 --> 00:49:59,450 או זכות כלפי מעלה או מטה. 1219 00:49:59,450 --> 00:50:01,230 אתה הולך צריך להכות במקשי החיצים באופן כזה 1220 00:50:01,230 --> 00:50:04,540 שהיא מקבילה לחלקי הפאזל האלה מסתדרים בשורה עם 1221 00:50:04,540 --> 00:50:05,720 את מצייני המיקום בחלק עליון. 1222 00:50:05,720 --> 00:50:07,500 אז כשאתה רואה חץ שמאלה, וזה קווים עם השמאל 1223 00:50:07,500 --> 00:50:09,260 חץ, פגע חץ שמאלה. 1224 00:50:09,260 --> 00:50:10,866 אתה יכול להתחיל. 1225 00:50:10,866 --> 00:50:13,674 [מוסיקה - "חזק" נגד עין מערב] 1226 00:51:21,222 --> 00:51:23,470 הדוד Malan: כל הסיבוב ימינה, הגדול של מחיאות כפות לריצ'רד. 1227 00:51:23,470 --> 00:51:26,082 [מחיאות כפות] 1228 00:51:32,426 --> 00:51:33,720 הדוד Malan: עבודה יפה מאוד. 1229 00:51:33,720 --> 00:51:34,110 תודה. 1230 00:51:34,110 --> 00:51:37,104 [מחיאות כפות] 1231 00:51:41,600 --> 00:51:44,330 >> הדוד Malan: כיף ולכן, לכאורה, סוג של 1232 00:51:44,330 --> 00:51:46,590 מפחיד עד כמה שזה יכול להיות ליישם משהו כמו 1233 00:51:46,590 --> 00:51:49,550 לכאורה מתוחכם כמו זה, להבין שהתלמיד 1234 00:51:49,550 --> 00:51:51,450 לא יצא ופשוט לכתוב את זה בבת אחת. 1235 00:51:51,450 --> 00:51:54,200 במקום זאת, אתה יכול לשבור את בעיה כפי שלכאורה מורכב 1236 00:51:54,200 --> 00:51:56,840 כמו זה לחתיכות קטנות בהרבה, וגם את זה, הוא 1237 00:51:56,840 --> 00:51:57,560 הולך להיות נושא. 1238 00:51:57,560 --> 00:52:00,490 הדבר הגרוע ביותר שאתה יכול לעשות בכתיבת תכנית בכל ביותר 1239 00:52:00,490 --> 00:52:03,480 שפה היא לשבת, לקבל באמת נרגש, לכתוב 1240 00:52:03,480 --> 00:52:07,200 כל דבר ארור, ואז פשוט לקוות שזה עובד על ידי 1241 00:52:07,200 --> 00:52:08,510 פעם שאתה מסיים לכתוב. 1242 00:52:08,510 --> 00:52:10,920 במקום זאת, התהליך של תכנות צריך בדרך 1243 00:52:10,920 --> 00:52:13,440 להיות מאוד מכוון, מאוד איטרטיבי, לפיה אתה פשוט 1244 00:52:13,440 --> 00:52:16,955 להגדיר צעדים קטנים מאוד בעצמכם, חתיכות בגודל נגיסה 1245 00:52:16,955 --> 00:52:20,070 אתה רוצה לנגוס, וכך יש לך שפיות אלה 1246 00:52:20,070 --> 00:52:21,740 בדיקות, אבן הדרך קטנה שתוכל להיפגש. 1247 00:52:21,740 --> 00:52:24,170 ואז אתה בונה על גבי אלה כדי ליצור יותר 1248 00:52:24,170 --> 00:52:25,400 דברים מתוחכמים עדיין. 1249 00:52:25,400 --> 00:52:26,820 >> כך למשל, איך אנחנו הולכים על 1250 00:52:26,820 --> 00:52:28,380 יישום משחק כזה? 1251 00:52:28,380 --> 00:52:30,160 ובכן, בכנות, הייתי בהחלט להתחיל רק על ידי 1252 00:52:30,160 --> 00:52:32,260 תמיכה במקש אחד בכל פעם. 1253 00:52:32,260 --> 00:52:34,840 בואו רק ליישם תמיכה בחץ שמאלה. 1254 00:52:34,840 --> 00:52:37,610 אז התלמיד היה איכשהו ליצור בפוטושופ, או ב 1255 00:52:37,610 --> 00:52:40,340 גרד עצמו באמצעות העורך הגרפי הקטן, 1256 00:52:40,340 --> 00:52:42,680 מקש חץ שנראה כמו אחד בפינה שמאלית עליונה שם, רק 1257 00:52:42,680 --> 00:52:43,910 מציין מיקום האפור. 1258 00:52:43,910 --> 00:52:46,610 אז התלמיד היה צריך להבין מה x, y לתאם 1259 00:52:46,610 --> 00:52:48,380 לשים את זה, איפה לשים אותו בחלון. 1260 00:52:48,380 --> 00:52:50,730 0, 0 הם עד כאן, אז אתה צריך להבין את המספר 1261 00:52:50,730 --> 00:52:53,690 פיקסלים, או נקודות, כדי לקזז מחץ ש 1262 00:52:53,690 --> 00:52:54,800 החלק העליון של המסך. 1263 00:52:54,800 --> 00:52:57,040 ואז ברגע שיש מקום, התכנית שלך לא ממש 1264 00:52:57,040 --> 00:53:00,380 לעשות שום דבר, כך שאתה צריך אז ספרייט שני, עבור 1265 00:53:00,380 --> 00:53:04,470 למשל חץ ירוק שגם הוא הצביע שמאלה, ואתה 1266 00:53:04,470 --> 00:53:06,710 ואז צריכים להתחיל לכתוב כמה תסריטים לזה. 1267 00:53:06,710 --> 00:53:09,310 >> ושמתם לב, אולי, שהדברים האלה התחילו לבוא ב 1268 00:53:09,310 --> 00:53:11,470 מהירויות שונות, והצבע היו שונים ב 1269 00:53:11,470 --> 00:53:13,750 מקומות, וזה משום שהתלמיד השתמש בטיפה 1270 00:53:13,750 --> 00:53:14,990 אקראיות מדומה. 1271 00:53:14,990 --> 00:53:17,440 ועל ידי אקראי מדומה, אני פשוט מתכוון לקחת מספר 1272 00:53:17,440 --> 00:53:20,230 בין משהו ומשהו, כי אתה יכול 1273 00:53:20,230 --> 00:53:22,890 להתחיל לדברי המפה, כמו אם המספר הוא בין אחת ל 1274 00:53:22,890 --> 00:53:24,940 5, טוב, בואו נעשה את הדבר ירוק. 1275 00:53:24,940 --> 00:53:28,290 אם זה בין 6 ל 10, בואו אנצל את פיסת הפאזל 1276 00:53:28,290 --> 00:53:29,730 אדום במקום. 1277 00:53:29,730 --> 00:53:31,840 אז עוד יש לך דרך ליצור סוג כלשהו של 1278 00:53:31,840 --> 00:53:34,730 אקראי, לאחר מכן תוכל לקבל החלטות המבוססות על 1279 00:53:34,730 --> 00:53:35,260 האקראיות. 1280 00:53:35,260 --> 00:53:37,490 ואני שומר פסאודו אקראי אומר כי יש 1281 00:53:37,490 --> 00:53:38,390 סוד קטן ומלוכלך. 1282 00:53:38,390 --> 00:53:41,130 מחשבים לא יכולים לבוא עם מספרים אקראיים. 1283 00:53:41,130 --> 00:53:42,800 הם יכולים לעשות רק מה שאומרים להם כי 1284 00:53:42,800 --> 00:53:44,110 הם מכשירי מעשה ידי אדם. 1285 00:53:44,110 --> 00:53:45,880 הם לא יכולים פשוט לנחש את מספר כמו שאנו בני האדם 1286 00:53:45,880 --> 00:53:46,960 מרגיש כמו שאנחנו יכולים. 1287 00:53:46,960 --> 00:53:50,970 מחשב צריך לעשות משהו מתמטי להעלות באוב 1288 00:53:50,970 --> 00:53:53,970 אשליה של מספר מתמטי, לעתים תוך שימוש 1289 00:53:53,970 --> 00:53:57,420 יום הנוכחי של זמן כקלט לחישוב מה 1290 00:53:57,420 --> 00:53:59,570 מספר לחזור, אבל עוד על כך בפעם אחרת. 1291 00:53:59,570 --> 00:54:02,060 לעת עתה, רק יודע שאנחנו יכולים לייצר אקראיות מדומה. 1292 00:54:02,060 --> 00:54:04,610 >> אז ברגע שיש לי את היכולת לחץ שמאלה כדי להתחיל 1293 00:54:04,610 --> 00:54:07,990 להופיע בזמנים שונים ובמהירויות שונות, ולאחר מכן 1294 00:54:07,990 --> 00:54:10,230 אני יכול לחזור ולהוסיף כמה מאלה אם תנאים. 1295 00:54:10,230 --> 00:54:14,950 אם ספרייט זה נוגע ללב אחד, והחץ השמאלי 1296 00:54:14,950 --> 00:54:16,330 מפתח כבר לחץ - 1297 00:54:16,330 --> 00:54:17,900 כך שלושה תנאים במקרה זה. 1298 00:54:17,900 --> 00:54:20,750 אני יכול להשתמש בזה ולחסום אולי, במקרה זה - 1299 00:54:20,750 --> 00:54:23,210 אז אני רוצה להמשיך ולהגדיל את התוצאה. 1300 00:54:23,210 --> 00:54:25,130 ובחלק עליון, יש לנו ציון, יש לנו מדהים, 1301 00:54:25,130 --> 00:54:26,510 מגניב, טוב, ובוז. 1302 00:54:26,510 --> 00:54:29,810 אז יש ככל הנראה חמישה משתנים שהתלמיד הזה 1303 00:54:29,810 --> 00:54:32,220 נהג לעקוב אחר המדדים השונים הללו. 1304 00:54:32,220 --> 00:54:34,180 אז בקיצור, התוצאה הסופית היא מדהימה. 1305 00:54:34,180 --> 00:54:37,320 זה כיף, זה כיף לשחק, זה מרתק, אבל זה לא 1306 00:54:37,320 --> 00:54:38,380 שבו התלמיד החל. 1307 00:54:38,380 --> 00:54:42,210 הוא או היא התחיל בקבוצה קטנה בהרבה של צעדים. 1308 00:54:42,210 --> 00:54:44,470 >> אז מה הם כמה אבני בניין אחרים שאנחנו יכולים 1309 00:54:44,470 --> 00:54:45,760 לארוג לתוך התוכניות האלה? 1310 00:54:45,760 --> 00:54:48,750 ובכן, יש רעיון אחר זה ברוב השפות, 1311 00:54:48,750 --> 00:54:50,730 גרד ביניהם, הידוע באשכולות. 1312 00:54:50,730 --> 00:54:54,660 אז מחשב יכול בעצם לא ממש עושה דברים מרובים בי 1313 00:54:54,660 --> 00:54:56,730 זמן, לפחות לא בדרך כלל. 1314 00:54:56,730 --> 00:54:59,930 במקום זאת, מחשב בדרך כלל יש רק מעבד אחד, ואפילו 1315 00:54:59,930 --> 00:55:02,230 למרות שמחשבים הם סופר מהיר ויכולים, על כן, 1316 00:55:02,230 --> 00:55:04,740 ליצור אשליה של עשיית דברים מרובים בבת אחת - 1317 00:55:04,740 --> 00:55:06,180 בדיקה האלקטרונית שלך, מקבל מיידי 1318 00:55:06,180 --> 00:55:07,770 הודעה, הדפסת מסמך - 1319 00:55:07,770 --> 00:55:11,530 באמת, מחשב פשוט קופץ מדפוס לIMing 1320 00:55:11,530 --> 00:55:15,160 לדואר אלקטרוני, שוב ושוב ושוב ושוב כל כך מהר שאנחנו 1321 00:55:15,160 --> 00:55:18,170 בני אדם קשים תפיסה איטיים פשוט לא מבינים שזה בעצם 1322 00:55:18,170 --> 00:55:21,240 הפעלת התוכניות האלה קצת בכל פעם. 1323 00:55:21,240 --> 00:55:23,960 עכשיו, זה קצת לבן לשקר בימים אלה, כי, כיום, 1324 00:55:23,960 --> 00:55:26,740 רבי המחשבים שלנו הם מה שנקראו ריבוי ליבות, כך שאתה 1325 00:55:26,740 --> 00:55:29,760 יש מעבד אחד אלא מספר רבות של ליבות, אשר הוא כמו סוג של 1326 00:55:29,760 --> 00:55:31,760 יש מספר מעבדים. 1327 00:55:31,760 --> 00:55:35,020 >> וכך לפעמים, מחשבים יכולים באמת לעשות דברים מרובים 1328 00:55:35,020 --> 00:55:38,500 בכל פעם, אבל בדרך כלל בתוך תכנית, תוכניות 1329 00:55:38,500 --> 00:55:40,200 להסתמך על הדברים שנקראים אשכולות. 1330 00:55:40,200 --> 00:55:43,160 אז נושא הוא כמו סוג של תכנית שיכולה מיניאטורי 1331 00:55:43,160 --> 00:55:46,540 להתקיים לצד תכנית מיניאטורה אחרת ויכול לרוץ 1332 00:55:46,540 --> 00:55:51,250 במקביל, או לפחות יכול לרוץ תחת האשליה ש 1333 00:55:51,250 --> 00:55:52,990 הם פועלים בו זמנית. 1334 00:55:52,990 --> 00:55:55,060 אז הגרד תומך דברים שנקראים אשכולות. 1335 00:55:55,060 --> 00:55:57,580 יכול להיות לך תסריטים מרובים מבצעים בפעם אחת, בדיוק כפי שאנו 1336 00:55:57,580 --> 00:56:00,220 עשה עם אריות הים, וזה מאפשר לנו למעשה 1337 00:56:00,220 --> 00:56:03,620 לאחר מכן יש אינטראקציות בין השדונים האלה. 1338 00:56:03,620 --> 00:56:09,910 תן לי ללכת קדימה ולמשוך לכאן, יניח, אשכולות, ו 1339 00:56:09,910 --> 00:56:11,870 לשחק את זה באופן הבא. 1340 00:56:11,870 --> 00:56:13,950 יש לנו שני שדונים, שכל אחד מהם נצטרך לראות 1341 00:56:13,950 --> 00:56:15,720 יש רק תסריט אחד. 1342 00:56:15,720 --> 00:56:18,000 ושמת לב נראה שיש איזו אינטליגנציה ב 1343 00:56:18,000 --> 00:56:21,335 חתול בזה כי הוא מתקרב - 1344 00:56:21,335 --> 00:56:21,730 [שאגות] 1345 00:56:21,730 --> 00:56:24,540 הדוד Malan: - וקרוב יותר לציפור הקטנה. 1346 00:56:24,540 --> 00:56:26,570 >> אז איך היא הפעלת ציפור? 1347 00:56:26,570 --> 00:56:28,200 ובכן, בואו נסתכל על ציפור ראשונה. 1348 00:56:28,200 --> 00:56:31,220 תסריט ציפור אמר כשהדגל הירוק לוחץ, ללכת לx 1349 00:56:31,220 --> 00:56:34,020 שווה 115 שליליים ו-y שווה 150. 1350 00:56:34,020 --> 00:56:37,010 אז פשוט הבנתי את מיקום אקראי בו אני רוצה 1351 00:56:37,010 --> 00:56:39,580 ציפור להתחיל, ואני פשוט הפלתי אותו לשם כברירת מחדל. 1352 00:56:39,580 --> 00:56:42,800 אז לנצח אם לא נוגע חתול, אז זה שונה 1353 00:56:42,800 --> 00:56:45,080 סוג של מבנה מסובב, אבל אותו רעיון, לעשות את זה שוב ו 1354 00:56:45,080 --> 00:56:45,780 שוב ושוב. 1355 00:56:45,780 --> 00:56:49,410 כל עוד אתה לא נוגע בחתול, לעבור שלושה שלבים, ו 1356 00:56:49,410 --> 00:56:51,680 אם אתה על הקצה, להקפיץ, שם זה סוג של 1357 00:56:51,680 --> 00:56:53,320 השתקפות במובן הביליארד. 1358 00:56:53,320 --> 00:56:56,140 אז ככה ציפור נעה סביב סוג של 1359 00:56:56,140 --> 00:56:58,890 לכאורה אקראי, אבל זה רק מפני שהוא קפץ 1360 00:56:58,890 --> 00:57:00,170 הקירות במקרה זה. 1361 00:57:00,170 --> 00:57:03,170 >> עכשיו החתול, בינתיים, הוא סוג של רמאות. 1362 00:57:03,170 --> 00:57:05,520 החתול, כשהדגל הירוק לוחץ, כן, מתחיל ב 1363 00:57:05,520 --> 00:57:07,390 איזה מיקום, מיקום אקראי - 1364 00:57:07,390 --> 00:57:09,590 לפחות בחלקו לפי הבחירה 1365 00:57:09,590 --> 00:57:11,430 בלוק ירוק אקראי שם - 1366 00:57:11,430 --> 00:57:14,660 ולאחר מכן לנצח אם נוגע בציפור, להשמיע את קול האריה, 1367 00:57:14,660 --> 00:57:15,790 ואז להפסיק תסריט. 1368 00:57:15,790 --> 00:57:18,560 אז כשאמרתי להפסיק, או לצאת, יש כאן חידה 1369 00:57:18,560 --> 00:57:20,600 חתיכה בגרד שפשוט להרוג את התכנית באותו 1370 00:57:20,600 --> 00:57:22,900 לציין כי זה סוג של עשה באופן הגיוני. 1371 00:57:22,900 --> 00:57:25,030 אבל חוץ מזה, הנה, שים לב למה שהולך לקרות. 1372 00:57:25,030 --> 00:57:28,470 נקודה לכיוון ציפור וצעד צעד אחד. 1373 00:57:28,470 --> 00:57:31,390 אז נקודה זו כלפי ציפור היא סוג של יתרון החתול 1374 00:57:31,390 --> 00:57:34,640 יש בזה שמתביית על ציפור המרגשת, ואנחנו יכולים 1375 00:57:34,640 --> 00:57:37,370 עכשיו לעשות את התכנית הזאת עוד יותר מעניינת. 1376 00:57:37,370 --> 00:57:41,520 במקום לעבור שלב אחד בכל פעם בכל מחזור המעבד, ל 1377 00:57:41,520 --> 00:57:44,280 להכות אגרה של הפעמון, אם אפשר לומר כך, תן לי ללכת קדימה ו 1378 00:57:44,280 --> 00:57:47,350 לעבור, יניח, חמש מדרגות בכל פעם כחתול. 1379 00:57:47,350 --> 00:57:51,120 לחץ על הפעל, ועכשיו הוא באמת מוצא אותו במהירות. 1380 00:57:51,120 --> 00:57:55,620 אם תכפילו את זה בהמשך ל10 צעדים, זה סוג של הולך 1381 00:57:55,620 --> 00:57:56,370 נכון עבורו. 1382 00:57:56,370 --> 00:57:57,750 כעת, אנו יכולים לתת את ציפור, 1383 00:57:57,750 --> 00:57:59,540 אולי, קצת יתרון. 1384 00:57:59,540 --> 00:58:02,370 בואו נלך לציפור ואומר במקום להעביר שלושה שלבים, 1385 00:58:02,370 --> 00:58:07,140 בואו להזיז אותו 30 מדרגות. 1386 00:58:07,140 --> 00:58:08,700 אבל הוא עדיין נתפס בסופו של דבר. 1387 00:58:08,700 --> 00:58:10,430 >> אז הנה, יש לנו שני נושאים. 1388 00:58:10,430 --> 00:58:13,230 זה נכלא בהתחלה עם שני תסריטים ושני 1389 00:58:13,230 --> 00:58:16,150 שדונים, אבל הרעיון בשפות אחרות הוא שאתה יכול 1390 00:58:16,150 --> 00:58:19,220 לכתוב, למעשה, תוכניות רבות מדי כמו זה ויש לי 1391 00:58:19,220 --> 00:58:22,950 לרוצם באמת, או imaginarily, במקביל. 1392 00:58:22,950 --> 00:58:25,280 >> עכשיו, יש גם את המושג הזה בתכנות המכונה 1393 00:58:25,280 --> 00:58:28,010 אירועים, וזה משהו שאנחנו לא רואים בC, 1394 00:58:28,010 --> 00:58:30,500 שפה הידועה כג אנו רואים אותו לכיוון סוף הסמסטר 1395 00:58:30,500 --> 00:58:33,240 בתכנות אינטרנט, כאשר אנחנו מציגים את JavaScript ו 1396 00:58:33,240 --> 00:58:36,970 רעיון של דפי אינטרנט בנייה כי הם דינמיים ואינטראקציה 1397 00:58:36,970 --> 00:58:37,710 עם משתמשים. 1398 00:58:37,710 --> 00:58:40,430 אז במקרה הזה, יש לנו דוגמה פשוטה מאוד של 2 1399 00:58:40,430 --> 00:58:43,860 שדונים, ילד וילדה, כל אחד מהם יש להם בהתאמה 1400 00:58:43,860 --> 00:58:48,040 אשכולות, אבל איכשהו שני אלה הם בין מתקשר בדרך 1401 00:58:48,040 --> 00:58:49,490 מנקרא משהו אירועים. 1402 00:58:49,490 --> 00:58:52,750 אז תן לי ללכת קדימה פה ולהתמקד בתסריטו של הנער, 1403 00:58:52,750 --> 00:58:54,050 שנראה כמו זה. 1404 00:58:54,050 --> 00:58:57,510 כשלחץ על הדגל ירוק, לנצח בצע את הפעולות הבאות. 1405 00:58:57,510 --> 00:59:01,510 אם שטח המפתח, או השטח בר, נלחץ, ואומרים 1406 00:59:01,510 --> 00:59:03,900 מרקו לשתי שניות, זה אסתטי על 1407 00:59:03,900 --> 00:59:06,860 מסך, בועת דיבור קטנה, אבל אז שדר. 1408 00:59:06,860 --> 00:59:09,240 >> אז שידור הוא עוד חלק Scratch זה 1409 00:59:09,240 --> 00:59:12,050 נציגו של מעמד פונקציונלי בתכנות 1410 00:59:12,050 --> 00:59:15,080 שמאפשר לתוכניות שונות, חוטים שונים, 1411 00:59:15,080 --> 00:59:17,120 כדי לתקשר בין, לאיכשהו לשלוח 1412 00:59:17,120 --> 00:59:18,520 הודעות מאחד לשני. 1413 00:59:18,520 --> 00:59:21,930 עובר פיסת נייר בכיתה הוא סוג של טק הנמוך 1414 00:59:21,930 --> 00:59:22,700 שווה ערך. 1415 00:59:22,700 --> 00:59:24,300 אז לשדר אירוע. 1416 00:59:24,300 --> 00:59:26,210 אני יכול לשלוח הודעה זו, ומילת האירוע 1417 00:59:26,210 --> 00:59:27,270 הוא שרירותי לחלוטין. 1418 00:59:27,270 --> 00:59:30,000 שריטה לפעמים יש אפשרויות נפתחות האלה, אז אני פשוט באתי 1419 00:59:30,000 --> 00:59:33,230 עם מילה אקראית כמו אירוע כי עכשיו, מה הילד עושה 1420 00:59:33,230 --> 00:59:36,600 כאשר אני לוחץ על המקש הוא שהוא משדר את האירוע הזה. 1421 00:59:36,600 --> 00:59:39,270 ואם אני מסתכל עכשיו בתסריט של הנערה, התסריט שלה הוא 1422 00:59:39,270 --> 00:59:42,690 סופר פשוט בגלל כל מה שהיא צריכה לעשות היא לא לפעול כש 1423 00:59:42,690 --> 00:59:44,100 הדגל הירוק הוא לחיצה. 1424 00:59:44,100 --> 00:59:47,910 היא נועדה לפעולה כאשר היא מקבלת הצעת מחיר, כביכול, 1425 00:59:47,910 --> 00:59:51,210 "אירוע", ובשלב זה, היא מקשיבה ולכן עבור 1426 00:59:51,210 --> 00:59:52,960 האירוע שנקרא שוב ושוב. 1427 00:59:52,960 --> 00:59:55,790 ברגע שהיא מקבלת אירוע זה, היא הולכת לצעוק 1428 00:59:55,790 --> 00:59:57,680 פולו לשתי שניות. 1429 00:59:57,680 --> 01:00:01,090 >> ואז אתה יכול אולי להסיק מזה בדיוק מה 1430 01:00:01,090 --> 01:00:03,190 התוצאה הבאה הולכת להיות. 1431 01:00:03,190 --> 01:00:04,910 תן לי ללחוץ על הדגל הירוק. 1432 01:00:04,910 --> 01:00:06,610 שום דבר לא קורה, כי אני צריך לעשות את מה? 1433 01:00:06,610 --> 01:00:07,310 קהל: מקש רווח. 1434 01:00:07,310 --> 01:00:08,630 הדוד Malan: מקש רווח. 1435 01:00:08,630 --> 01:00:11,990 הילד אומר מרקו, הבחורה אומרת פולו. 1436 01:00:11,990 --> 01:00:13,670 אבל זה לא קוד קשה כשלעצמו. 1437 01:00:13,670 --> 01:00:16,740 זה קישוריות הפנימית בין תסריטים, אז עכשיו אנחנו 1438 01:00:16,740 --> 01:00:19,240 יש את היכולת לבצע תוכניות מורכבות יותר שבי 1439 01:00:19,240 --> 01:00:22,830 שני אלה הם איכשהו בין תקשורת-. 1440 01:00:22,830 --> 01:00:25,260 >> אז במה כיוונים אנחנו יכולים לקחת את זה? 1441 01:00:25,260 --> 01:00:28,260 ובכן, בסט בעיה 0, באמת, המטרה הן 1442 01:00:28,260 --> 01:00:29,830 להשתעשע עם גרד. 1443 01:00:29,830 --> 01:00:32,440 למהדורת ההאקר, אתה במקום להשתעשע עם יותר 1444 01:00:32,440 --> 01:00:35,850 גרסה מתוחכמת של גרד נקראת BYOB, בנייה 1445 01:00:35,850 --> 01:00:38,040 בלוקים שלך, אבל הרעיון הוא זהה. 1446 01:00:38,040 --> 01:00:38,780 תוכל - 1447 01:00:38,780 --> 01:00:39,710 כן, זה היה מכוון. 1448 01:00:39,710 --> 01:00:42,450 זה בא מאוניברסיטת ברקלי. 1449 01:00:42,450 --> 01:00:45,200 BYOB הוא גרסת מהדורת האקר מזה, אבל גם 1450 01:00:45,200 --> 01:00:48,180 הדמוגרפיה המהדורה סטנדרטית ומהדורת האקר כאחד, 1451 01:00:48,180 --> 01:00:50,940 מטרה בהישג יד לשבוע הבא היא באמת רק לצלול ב 1452 01:00:50,940 --> 01:00:53,050 עמוק, ללכלך את הידות בתכנות, ולעשות 1453 01:00:53,050 --> 01:00:55,240 משהו מעניין, לעשות משהו אינטרקטיווי, לעשות 1454 01:00:55,240 --> 01:00:58,020 משהו אמנותי, לעשות משהו כיף ממש 1455 01:00:58,020 --> 01:01:01,020 להפגין, כך שעד סוף השבוע, יהיה לך פרויקט, 1456 01:01:01,020 --> 01:01:03,770 לא רק לCS50 pset הראשון שלך, אבל יהיה לך 1457 01:01:03,770 --> 01:01:05,620 משהו קטן שתוכל להשוויץ באננברג ל 1458 01:01:05,620 --> 01:01:08,830 חברים או אפילו בני משפחה על ידי העלאתו לאתר של MIT. 1459 01:01:08,830 --> 01:01:11,760 וכך, כפי שאמרתי ביום רביעי, אנו מצפים 90% מהכיתה, 1460 01:01:11,760 --> 01:01:13,970 בדרך כלל, לעשות את המהדורות הסטנדרטיות. 1461 01:01:13,970 --> 01:01:16,660 להבין שיש גם אפיק זה, לאלו מכם ש 1462 01:01:16,660 --> 01:01:18,990 אחר עלול למצוא את עצמך קצת משועמם עם היסודות 1463 01:01:18,990 --> 01:01:21,650 ובאמת רוצה לצלול ובלעצב את חזונך כבר 1464 01:01:21,650 --> 01:01:25,380 יש לי עם רקע קודם בזה יותר ידידותי 1465 01:01:25,380 --> 01:01:26,240 הסביבה. 1466 01:01:26,240 --> 01:01:29,030 >> אז בואו תמשכו אותי דוגמה אחת אחרת שאחד משלנו לשעבר 1467 01:01:29,030 --> 01:01:33,830 התלמידים עשו כאן ולהגיד משהו קטן בשיר. 1468 01:01:33,830 --> 01:01:37,430 זה דומה, כמו מחזות זה, לחשוב על איך אתה הולך על 1469 01:01:37,430 --> 01:01:40,520 יישום תכנית זו באמצעות אלה בדיוק אותו הדבר 1470 01:01:40,520 --> 01:01:44,180 אובניים בניין, דומה מעט של אקראיות מדומה, ועוד 1471 01:01:44,180 --> 01:01:46,010 קצת שיר מוכר. 1472 01:01:46,010 --> 01:01:47,910 אם תוכל להעלות את הנפח רק קצת? 1473 01:01:47,910 --> 01:01:49,160 [מוסיקה - "גשם של גברים" בנות מזג אוויר] 1474 01:03:02,261 --> 01:03:03,930 >> הדוד Malan: זהו זה לCS50. 1475 01:03:03,930 --> 01:03:05,860 אנחנו רואים אותך ביום שני. 1476 01:03:05,860 --> 01:03:21,152 [מחיאות כפות]