1 00:00:00,000 --> 00:00:11,120 2 00:00:11,120 --> 00:00:12,590 >> SPRECHER: Ich bin [unverständlich]. 3 00:00:12,590 --> 00:00:14,820 Und ich bin ein Senior an Leverett House. 4 00:00:14,820 --> 00:00:18,700 Ich studiere Informatik, und ich bin ein TF für CS50. 5 00:00:18,700 --> 00:00:21,640 Als Neuling habe ich noch nicht einmal ein Laptop oder ein Smartphone. 6 00:00:21,640 --> 00:00:23,550 Ich hatte keine Programmiererfahrung. 7 00:00:23,550 --> 00:00:29,690 CS50 war die denkwürdigste natürlich, dass Ich nahm an der Harvard weil es 8 00:00:29,690 --> 00:00:32,960 ein Kampf, aber es war ein wirklich Spaß Kampf in der gleichen Zeit. 9 00:00:32,960 --> 00:00:37,670 Und ich habe eine Menge erstaunliche, permanent Freunde, und ich lernte eine Menge wirklich 10 00:00:37,670 --> 00:00:38,830 anwendbaren Fähigkeiten. 11 00:00:38,830 --> 00:00:43,480 Ich bin so froh, dass ich nicht meine Mangel an Hintergrund eine Entschuldigung für mich sein 12 00:00:43,480 --> 00:00:44,840 nicht CS50. 13 00:00:44,840 --> 00:00:46,220 Ich bin [unverständlich]. 14 00:00:46,220 --> 00:00:48,910 Ich bin ein Senior an Leverett House, klasse von 2014. 15 00:00:48,910 --> 00:00:51,670 Und ich nahm CS50. 16 00:00:51,670 --> 00:00:52,380 >> DAVID MALAN: Also das ist CS50. 17 00:00:52,380 --> 00:00:54,400 Dies ist das Ende der Woche Null. 18 00:00:54,400 --> 00:00:58,500 Und erinnern, wo wir das letzte Mal begann, Mit diesen Lampen, die waren 19 00:00:58,500 --> 00:01:01,420 so beliebt, dass wir und gingen kaufte einige mehr heute. 20 00:01:01,420 --> 00:01:03,790 Also ich denke, das wird unsere Sache in diesem Jahr - 21 00:01:03,790 --> 00:01:07,230 Schreibtischlampen wenn Sie kommen auf die Bühne, zumindest bis wir erschöpft. 22 00:01:07,230 --> 00:01:11,570 >> Aber wir verwendet diese Rückrufaktion, die Einführung die Grundlagen der Darstellung von Daten. 23 00:01:11,570 --> 00:01:15,640 Wir brauchten Weg zu beginnen, die Informationen innerhalb eines Computers. 24 00:01:15,640 --> 00:01:18,650 Und der einfachste Weg, das zu tun war mit einer Zutat, Strom. 25 00:01:18,650 --> 00:01:21,760 Und die einfachste Sache, die Sie tun können, mit Strom einschalten und ihn ab. 26 00:01:21,760 --> 00:01:23,520 Lassen Sie die Elektronen fließen oder nicht. 27 00:01:23,520 --> 00:01:27,930 Und mit diesen zwei grundlegende Zustände, off und weiter, oder falsch und wahr, oder Null und 28 00:01:27,930 --> 00:01:31,290 ein, begannen wir, um zu sehen, dass wir bauen auf, in diesem Fall mit Licht 29 00:01:31,290 --> 00:01:33,720 Glühlampen, mehr als Zahlen nur Null und Eins. 30 00:01:33,720 --> 00:01:36,160 Wir zählten so hoch wie sieben, zum Beispiel, das letzte Mal. 31 00:01:36,160 --> 00:01:38,840 Aber alles, was wir tun müssen, ist zu halten werfen mehr und mehr an, dass Glühbirnen 32 00:01:38,840 --> 00:01:41,820 Problem und wirklich, wir stellen beliebig viele, dass wir 33 00:01:41,820 --> 00:01:42,970 möglicherweise wollen. 34 00:01:42,970 --> 00:01:47,230 >> Nun, wir schnell umgestellt dann auf Mittwoch bis dieses Byte von Freiwilligen. 35 00:01:47,230 --> 00:01:52,040 8 Bit ist das, was wir allgemein ein Byte, so hier hatten wir acht Freiwillige 36 00:01:52,040 --> 00:01:54,900 am Mittwoch, die zusammen waren aus acht Bits. 37 00:01:54,900 --> 00:01:56,750 Und wenn ihre Hände gingen up, waren sie eine Eins. 38 00:01:56,750 --> 00:01:58,530 Und wenn ihre Hände waren unten gab es eine Null. 39 00:01:58,530 --> 00:02:01,970 Und wir hatten diese Leute kommen auf die Bühne, warum? 40 00:02:01,970 --> 00:02:06,530 Was wir in der Lage zu tun Diese Sequenz von Bits? 41 00:02:06,530 --> 00:02:07,510 >> Um ein Alphabet zu schaffen. 42 00:02:07,510 --> 00:02:11,550 Wir waren in der Lage, oben auf, dass bauen vorherige Lektion gelernt und tatsächlich 43 00:02:11,550 --> 00:02:14,200 beginnen, mehr interessant machen Informationen, die mindestens mehr ist 44 00:02:14,200 --> 00:02:15,330 vertraut zu uns Menschen. 45 00:02:15,330 --> 00:02:18,360 Und das wird ein immer wiederkehrendes sein Thema in 50, sondern auch Computer 46 00:02:18,360 --> 00:02:21,470 Wissenschaft allgemein, diese Idee der Schichtung, in dem am Ende der 47 00:02:21,470 --> 00:02:24,820 Tag, wenn Sie wirklich begann die Grundlagen mit einem Computer, ja, 48 00:02:24,820 --> 00:02:25,760 es ist Nullen und Einsen. 49 00:02:25,760 --> 00:02:27,480 Und darunter, dass es nur Strom. 50 00:02:27,480 --> 00:02:30,840 Aber wir sehr schnell starten, um diejenigen zu nehmen niedrigen Details für selbstverständlich 51 00:02:30,840 --> 00:02:35,600 und beginnen zu Schicht auf der Oberseite Vergangenheit gearbeitet durchgeführt, so daß man schließlich durch 52 00:02:35,600 --> 00:02:38,610 das Ende des Semesters und wirklich, mehr allgemein als Informatiker 53 00:02:38,610 --> 00:02:42,790 und Programmierer können einige wirklich mächtige Dinge durch den Einsatz von Arbeit 54 00:02:42,790 --> 00:02:46,620 dass wir uns getan haben und auch auf den Schultern der anderen. 55 00:02:46,620 --> 00:02:49,300 >> Jetzt haben wir schnell umgestellt am Mittwoch von gerade benötigen, um 56 00:02:49,300 --> 00:02:52,080 Informationen repräsentieren zu wollen etwas zu tun. 57 00:02:52,080 --> 00:02:54,170 So was haben wir einen Algorithmus definieren, wie? 58 00:02:54,170 --> 00:02:57,340 59 00:02:57,340 --> 00:02:58,900 Eine Reihe von Anweisungen. 60 00:02:58,900 --> 00:03:03,380 So ist es eine Reihe von Anweisungen ist, ein Anzahl der Schritte, die Sie, ein Mensch, oder 61 00:03:03,380 --> 00:03:07,160 ein Computer, typischer würde Ausführen einer nach dem anderen, um 62 00:03:07,160 --> 00:03:08,100 um ein bestimmtes Ziel zu erreichen. 63 00:03:08,100 --> 00:03:11,360 Und wir hatten ein paar Tore der letzten Zeit, einer davon war zu zählen 64 00:03:11,360 --> 00:03:12,250 Menschen in den Raum. 65 00:03:12,250 --> 00:03:15,560 Und noch ein Beispiel dafür zu finden war Mike Smith in einem Telefonbuch. 66 00:03:15,560 --> 00:03:19,750 >> So können Sie sich daran erinnern, dass ich ein Telefon riss Buch in Hälfte zu diesem Zweck bis 67 00:03:19,750 --> 00:03:21,280 Suche nach Mike Smith. 68 00:03:21,280 --> 00:03:24,000 Der Zweck von diesem visuellen war zu demonstrieren, wieder, dass wir 69 00:03:24,000 --> 00:03:27,770 buchstäblich Abreißen dieses Problem Hälfte, in der Mitte, in der Mitte und sehr 70 00:03:27,770 --> 00:03:31,750 schnell gehen wie von 1.000 Seiten nur einer einzigen Seite. 71 00:03:31,750 --> 00:03:34,860 Diejenigen von euch, die dies verpasst Mittwoch, dachte ich, wir würden abspielen 72 00:03:34,860 --> 00:03:36,820 einige Aufnahmen von dem, was Sie verpasst haben. 73 00:03:36,820 --> 00:03:38,914 Lassen Sie uns einen Blick. 74 00:03:38,914 --> 00:03:40,906 >> [VIDEO PLAYBACK] 75 00:03:40,906 --> 00:03:55,360 76 00:03:55,360 --> 00:03:55,990 >> -Dort gehen wir. 77 00:03:55,990 --> 00:04:01,432 1500 Seiten, Schöne, saubere Linie, legitimen Träne. 78 00:04:01,432 --> 00:04:02,850 >> [END VIDEO PLAYBACK] 79 00:04:02,850 --> 00:04:05,230 >> DAVID MALAN: Also das war Mittwoch. 80 00:04:05,230 --> 00:04:09,150 Wir Übergang, obwohl, am Mittwoch nun zu wollen, um Algorithmen darstellen 81 00:04:09,150 --> 00:04:12,410 in irgendeiner Weise etwas Standard, nicht nur beschreiben sie verbal, aber 82 00:04:12,410 --> 00:04:16,290 versuchen, sie in schriftlicher Form oder auf auszudrücken einem Computer-Bildschirm, so dass wir 83 00:04:16,290 --> 00:04:19,170 beginnen, um auf zu verbessern, und ändern sie, und schließlich tatsächlich 84 00:04:19,170 --> 00:04:21,160 analysieren, wie richtig oder wie schnell sie waren. 85 00:04:21,160 --> 00:04:23,360 >> So führten wir diesen Begriff von Pseudocode, die, in 86 00:04:23,360 --> 00:04:26,410 juristischer Hinsicht, ist was? 87 00:04:26,410 --> 00:04:26,930 OK, Worte. 88 00:04:26,930 --> 00:04:28,730 Lasst uns ein wenig tiefer. 89 00:04:28,730 --> 00:04:32,540 Englisch, sicher, sind aber zu welchem ​​Zweck? 90 00:04:32,540 --> 00:04:35,180 Worte, mit denen zu schaffen oder Algorithmen darstellen. 91 00:04:35,180 --> 00:04:38,380 Also gibt es keine Sprache bekannt als Pseudocode in der Welt. 92 00:04:38,380 --> 00:04:41,110 Es ist nur so, dass Sie in Englisch oder was auch immer Ihre gesprochene Sprache ist, verwenden 93 00:04:41,110 --> 00:04:44,930 eine Art oberflächliche Schreibweise zu vermitteln eine Idee sehr prägnant. 94 00:04:44,930 --> 00:04:47,930 Aber wir werden sehen, dass sicherlich mit ein Englisch Pseudocode, und es stellt sich heraus, 95 00:04:47,930 --> 00:04:51,700 meisten Programmiersprachen selbst sind derivative of English selbst, 96 00:04:51,700 --> 00:04:55,750 finden wir, dass es einige Standard- Arten der Darstellung und Pseudocode 97 00:04:55,750 --> 00:04:57,150 auch Programmcode. 98 00:04:57,150 --> 00:05:00,200 So wie Sie beginnen, selbst die einfachsten sehen Beispiele heute, erkennen diese 99 00:05:00,200 --> 00:05:02,160 gleichen Muster wiederkehren wird nächste Woche. 100 00:05:02,160 --> 00:05:04,710 >> So war eine Art Pseudo- der Sprache ähnelt 101 00:05:04,710 --> 00:05:06,170 Programmiersprache. 102 00:05:06,170 --> 00:05:09,260 Und das erste Beispiel sahen wir visuell aufgeschrieben war dies einer. 103 00:05:09,260 --> 00:05:12,870 Es war nur ein Drei-Stufen-Programm, das Ziel es war, die Zahl zählen 104 00:05:12,870 --> 00:05:15,650 von Menschen in einem Schlafsaal für dass Video am Mittwoch. 105 00:05:15,650 --> 00:05:19,040 Aber es gab ein paar interessante Aspekte dieses einfachste Programm. 106 00:05:19,040 --> 00:05:20,320 >> Und dies wird immer wiederkehrenden Themen sein. 107 00:05:20,320 --> 00:05:22,930 Also für diejenigen, die nicht vertraut sind mit dieses, ein, führten wir eine Variable. 108 00:05:22,930 --> 00:05:25,650 Und wohl jeder in diesem Raum ist kennt eine Variable in der 109 00:05:25,650 --> 00:05:27,250 Rahmen der Algebra. 110 00:05:27,250 --> 00:05:31,190 Aber hier in der Programmierung, Variablen sind, ein, kann 111 00:05:31,190 --> 00:05:32,220 genannt, was wir wollen. 112 00:05:32,220 --> 00:05:33,620 Wir haben mit n als Zähler. 113 00:05:33,620 --> 00:05:37,490 Aber wir konnten das Wort Zähler, oder, wie Sie sehen werden, fast jeder Satz, 114 00:05:37,490 --> 00:05:40,240 Sie könnte so lange, wie es ist gefallen beschreibend, aber es ist wirklich nur eine 115 00:05:40,240 --> 00:05:41,250 Vorratsbehälter. 116 00:05:41,250 --> 00:05:44,170 Es ist ein Teil des Speichers, eine gewisse Anzahl von Bits, und es variiert je nach Computer, wie 117 00:05:44,170 --> 00:05:47,020 viele Bits gibt, dass komponieren diese Variable. 118 00:05:47,020 --> 00:05:48,450 >> Aber wir können die Werte in sie setzen. 119 00:05:48,450 --> 00:05:50,740 Bisher haben wir nur Zahlen setzen. 120 00:05:50,740 --> 00:05:52,290 Aber wir können setzen tatsächlichen Worte. 121 00:05:52,290 --> 00:05:53,420 Wir setzen können Absätze. 122 00:05:53,420 --> 00:05:54,560 Wir setzen können Bilder - 123 00:05:54,560 --> 00:05:57,860 nichts, wirklich, können wir mit vertreten Nullen und Einsen, können wir in setzen 124 00:05:57,860 --> 00:05:59,820 diese höhere Ebene Vorstellung einer Variablen. 125 00:05:59,820 --> 00:06:01,350 >> So ziemlich direkt dorthin zu übermitteln. 126 00:06:01,350 --> 00:06:02,210 Und das ist eine Linie. 127 00:06:02,210 --> 00:06:05,340 Aber wir sehr schnell ab bewegt Linie man tatsächlich tun 128 00:06:05,340 --> 00:06:06,600 etwas mit dieser Variablen. 129 00:06:06,600 --> 00:06:10,330 Und in der dritten Zeile, aktualisiert wir N. Wir erhöht N. Und wir könnten dies schreibe 130 00:06:10,330 --> 00:06:11,330 eine Reihe von Möglichkeiten. 131 00:06:11,330 --> 00:06:14,460 Aber vielleicht die naheliegendste ist nur zu sagen, setzen N gleich 132 00:06:14,460 --> 00:06:16,440 was auch immer ist N plus 1. 133 00:06:16,440 --> 00:06:17,740 So, dass war unser Zuwachs. 134 00:06:17,740 --> 00:06:18,740 >> Unterdessen gab es eine Schleife. 135 00:06:18,740 --> 00:06:20,720 Und diese ist auch wohl ziemlich intuitiv. 136 00:06:20,720 --> 00:06:24,250 Eine Schleife ist nur etwas in einem Programm das passiert immer wieder, einige 137 00:06:24,250 --> 00:06:25,190 Art Zyklus. 138 00:06:25,190 --> 00:06:29,300 Und das Stichwort dazu, für jeden ist tatsächlich sehr häufig in den meisten 139 00:06:29,300 --> 00:06:32,300 Programmiersprachen, einschließlich Wieder werden wir im Verlauf zu sehen. 140 00:06:32,300 --> 00:06:35,850 Immer, wenn Sie sehen, das Wort für, es Regel vermittelt die Idee, dass ein 141 00:06:35,850 --> 00:06:38,410 Schleife, etwas zyklisch, ist zu geschehen. 142 00:06:38,410 --> 00:06:40,980 >> Aber es ist erwähnenswert, ein anderen syntaktischen Details. 143 00:06:40,980 --> 00:06:44,660 Die Tatsache, dass dritte Zeile gibt es tatsächlich mit der Hit eingerückt 144 00:06:44,660 --> 00:06:46,920 Leertaste paar Mal ist gewollt. 145 00:06:46,920 --> 00:06:49,870 Da die menschliche Konvention ist so, dass, wenn du tust etwas wieder und 146 00:06:49,870 --> 00:06:54,860 wieder, in einer Schleife, wie in Zeile zwei begonnen, Sie Gedankenstrich alles, gehörte 147 00:06:54,860 --> 00:06:58,880 zu dieser Schleife nur deutlich machen, dass es ist Zeile drei und nicht, zum Beispiel, 148 00:06:58,880 --> 00:07:01,910 Zeile vier oder fünf, wenn es Linien für oder fünf, das sind 149 00:07:01,910 --> 00:07:03,010 Teil dieser Schleifen. 150 00:07:03,010 --> 00:07:07,340 Also diese einfache Vertiefung vermittelt, dass die Grundidee. 151 00:07:07,340 --> 00:07:09,390 >> Also haben wir diesen Algorithmus angewendet, Jetzt, ein paar Beispiele. 152 00:07:09,390 --> 00:07:12,620 Und auch dies, einfaches Beispiel in der realen Welt. 153 00:07:12,620 --> 00:07:15,440 Aber es geht um Vertreter sein wie würden Sie zum Testen gehen 154 00:07:15,440 --> 00:07:17,500 besitzen immer komplexere Programme. 155 00:07:17,500 --> 00:07:21,050 Sie versuchen, ein paar Szenarien, einige Vertreter Eingänge, und sehen, ob Sie 156 00:07:21,050 --> 00:07:22,180 die gewünschten Ausgänge. 157 00:07:22,180 --> 00:07:25,090 >> Also in diesem Beispiel hatte zwei Menschen sitzen in den Schlafsaal. 158 00:07:25,090 --> 00:07:27,170 Auf der linken Seite ist, dass gleiche Pseudo-Code. 159 00:07:27,170 --> 00:07:30,800 Und dies ist ein Screenshot des sehr letzten Schritt der Anwendung dieser 160 00:07:30,800 --> 00:07:35,270 Algorithmus auf diese Eingaben, wobei es waren zwei Personen im Raum und 161 00:07:35,270 --> 00:07:39,190 erinnern, wie wir durch die Leitungen eine Schritt, Zwei, drei und zwei 162 00:07:39,190 --> 00:07:41,000 und drei und getan - 163 00:07:41,000 --> 00:07:44,870 bis Ende dieses Algorithmus, hatten wir tatsächlich gezählt die beiden Burschen, die sind 164 00:07:44,870 --> 00:07:45,360 in den Raum. 165 00:07:45,360 --> 00:07:47,190 >> Also versuchten wir ein anderes Beispiel. 166 00:07:47,190 --> 00:07:48,990 Und wir sagten, was, wenn es Null Personen im Raum? 167 00:07:48,990 --> 00:07:50,490 Ist dieser Code noch richtig? 168 00:07:50,490 --> 00:07:51,305 Und in der Tat war es. 169 00:07:51,305 --> 00:07:55,240 Es passiert einfach so, dass die Linie zwei und somit der dritten Zeile oder 170 00:07:55,240 --> 00:07:56,620 nicht zu führen. 171 00:07:56,620 --> 00:07:59,790 Sie werden nicht überhaupt passieren weil sie einfach nicht anwendbar, wenn 172 00:07:59,790 --> 00:08:01,210 es gibt Null Personen im Raum. 173 00:08:01,210 --> 00:08:02,300 >> Aber nicht eine große Sache. 174 00:08:02,300 --> 00:08:06,620 Zeile eins initialisiert N auf Null, so obwohl nur eine Zeile dieser 175 00:08:06,620 --> 00:08:10,930 Programm tatsächlich endet als nützlich, es ergibt immer noch die richtige Antwort, als 176 00:08:10,930 --> 00:08:13,780 gekennzeichnet durch die orange Null an der Unterseite. 177 00:08:13,780 --> 00:08:16,300 Aber dann haben wir beschlossen, dass war Art von einem dummen Algorithmus. 178 00:08:16,300 --> 00:08:17,060 Es war ziemlich langsam. 179 00:08:17,060 --> 00:08:19,720 Sicherlich kann ich tun, zwei, vier, sechs, acht, zehn, wenn 180 00:08:19,720 --> 00:08:20,990 Zählen Personen in einem Raum. 181 00:08:20,990 --> 00:08:25,030 >> Also haben wir den Algorithmus optimiert, die Pseudocode, zu sagen, jetzt in Zeile zwei, 182 00:08:25,030 --> 00:08:29,710 für jedes Paar von Personen im Raum, gehen, in Zeile drei, Schrittweite 183 00:08:29,710 --> 00:08:32,200 in durch zwei auf jeder Iteration. 184 00:08:32,200 --> 00:08:35,530 Also das würde hier gearbeitet haben dieses Paar von Personen im Raum. 185 00:08:35,530 --> 00:08:38,530 >> Aber dann, wenn Sie anfangen, darüber nachzudenken das, und es dauert nicht lange, um zu nehmen 186 00:08:38,530 --> 00:08:40,710 zu realisieren, warten Sie eine Minute ist dies gehen zu brechen, bricht es 187 00:08:40,710 --> 00:08:42,679 an, was einfacher Fall? 188 00:08:42,679 --> 00:08:45,500 Wenn es drei Leute im Raum oder, ganz allgemein, wenn es eine 189 00:08:45,500 --> 00:08:47,660 ungerade Zahl von Menschen in der Zimmer, darunter ein. 190 00:08:47,660 --> 00:08:50,390 Wir würden diese Person hier vermissen, weil es gibt keine solche Paare. 191 00:08:50,390 --> 00:08:58,510 Also haben wir schnell angegangen, indem stattdessen Einführung, welche zusätzlichen 192 00:08:58,510 --> 00:09:02,560 Programmierung Konstrukte der Pseudo-Code. 193 00:09:02,560 --> 00:09:04,955 >> So eine Bedingung, riefen wir , oder ein Zweig. 194 00:09:04,955 --> 00:09:08,420 Und es soll vermitteln, visuell, die Idee des Zweiges, eine Gabel in der Straße 195 00:09:08,420 --> 00:09:11,080 wo Sie können dies entweder oder, vielleicht, etwas anderes. 196 00:09:11,080 --> 00:09:15,750 Und in der Tat sprechen wir dieses Problem durch Hinzufügen Linie 4, indem er sagte, wirklich, bei 197 00:09:15,750 --> 00:09:20,820 ganz am Ende, wenn eine Person bleibt, dann gehen Sie vor und zählen sie besonders. 198 00:09:20,820 --> 00:09:24,460 So können Sie von speziellen Fall zu sortieren, so zu sprechen, so dass wir jetzt behandeln 199 00:09:24,460 --> 00:09:27,810 sowohl eine gerade Anzahl von Menschen und eine ungerade Anzahl von Menschen. 200 00:09:27,810 --> 00:09:30,260 >> Nun gibt es eine Reihe von Möglichkeiten, konnten wir diese zum Ausdruck gebracht haben. 201 00:09:30,260 --> 00:09:33,590 Und ehrlich gesagt, konnte ich sogar noch mehr waren nit wählerisch, wenn es um meine Wahl kam 202 00:09:33,590 --> 00:09:35,040 Englisch für den Pseudocode. 203 00:09:35,040 --> 00:09:36,970 Aber zumindest der Geist der die Idee gefördert wird. 204 00:09:36,970 --> 00:09:40,725 Wenn Sie diesen Code übergeben an einen Freund wer nicht in CS oder noch nie gemacht 205 00:09:40,725 --> 00:09:44,560 CS, stehen die Chancen, sie könnten herausfinden, bei drei Personen im Raum, wie man 206 00:09:44,560 --> 00:09:46,870 zählen jene Menschen bezogen auf dieser Anleitung. 207 00:09:46,870 --> 00:09:49,920 Und das ist alles wirklich wir erreichen wollen mit Pseudocode, irgendwie 208 00:09:49,920 --> 00:09:54,300 standardisieren, wie wir zu gehen repräsentieren Ideen, damit wir 209 00:09:54,300 --> 00:09:56,670 beginnen, komplizierter zu tun Sache noch. 210 00:09:56,670 --> 00:09:58,845 >> Also das führt uns dann heute zum eigentlichen Code. 211 00:09:58,845 --> 00:10:01,950 Wir fangen an zu programmieren heute, wenn auch in einer freundlichen Umgebung. 212 00:10:01,950 --> 00:10:05,940 Und dann haben wir Übergang sehr schnell auf eine obskure Syntax, aber eine, die 213 00:10:05,940 --> 00:10:10,340 Sie werden sehen, ist grundsätzlich die gleiche wie die Ideen werden mit manifestiert sehen 214 00:10:10,340 --> 00:10:11,990 diese andere Sprache heute. 215 00:10:11,990 --> 00:10:13,920 Es ist nur gut aussehen ein wenig anders. 216 00:10:13,920 --> 00:10:16,590 >> Also anstatt rufen diesen Code, ich bin gehen, um ein wenig genauer 217 00:10:16,590 --> 00:10:20,170 und sagen, nun, beim Schreiben ein Programm, sind Sie mit dem Schreiben Quellcode. 218 00:10:20,170 --> 00:10:21,990 Es ist wie eine Art Pseudocode. 219 00:10:21,990 --> 00:10:26,540 Aber wir werden sehen, es ist nicht eine Art lose wenn es um die Wahl der Worte 220 00:10:26,540 --> 00:10:27,310 die Sie verwenden. 221 00:10:27,310 --> 00:10:31,300 Bei Programmierung in einer Sprache, haben Sie die Worte, die Sätze zu verwenden, 222 00:10:31,300 --> 00:10:36,020 die Syntax, dass andere Menschen haben beschlossen, repräsentieren 223 00:10:36,020 --> 00:10:37,240 dass bestimmte Sprache. 224 00:10:37,240 --> 00:10:38,510 So Pseudocodes ist bis zu Ihnen. 225 00:10:38,510 --> 00:10:42,330 Eine aktuelle Programmiersprache wie C, als wir schließlich zu sehen, ist 226 00:10:42,330 --> 00:10:43,590 standardisiert von anderen Menschen. 227 00:10:43,590 --> 00:10:45,590 >> So, wie wir über das Schreiben gehen einige Quellcode? 228 00:10:45,590 --> 00:10:46,810 Nun, ich werde gehen vor und tun dies. 229 00:10:46,810 --> 00:10:49,100 Ich werde weitermachen und öffnen ein Fenster hier. 230 00:10:49,100 --> 00:10:50,210 Mehr zu diesem nächste Woche. 231 00:10:50,210 --> 00:10:52,300 Aber dies ist ein Gerät namens die CS50 Gerät. 232 00:10:52,300 --> 00:10:55,480 Ich laufe ein Stück Software auf meinem Mac, wenn Sie tun können, die gleiche Sache 233 00:10:55,480 --> 00:11:00,580 auf einem Windows-Computer, ist, dass die Preisgabe mir die Illusion auf dem eine andere 234 00:11:00,580 --> 00:11:03,700 Betriebssystem ganz rechts hier in einem Fenster auf meinem Mac. 235 00:11:03,700 --> 00:11:06,790 Ich habe gerade voll ist abgeschirmt, so dass Sie nicht zu tun tatsächlich sehen Mac OS zeigen. 236 00:11:06,790 --> 00:11:08,340 >> Dies ist ein Betriebssystem, Linux genannt. 237 00:11:08,340 --> 00:11:09,300 Es ist sehr beliebt. 238 00:11:09,300 --> 00:11:10,120 Es ist sehr schnell. 239 00:11:10,120 --> 00:11:12,950 Es ist sehr frei, was hat es sehr überzeugend, vor allem in der 240 00:11:12,950 --> 00:11:13,970 kommerziellen Welt. 241 00:11:13,970 --> 00:11:17,200 Und mehr auf, dass gegen Ende der Semester, wenn wir Linux verwenden ziemlich viel 242 00:11:17,200 --> 00:11:21,230 für Web-Programmierung und Hosting tatsächlichen Webseiten und Projekte. 243 00:11:21,230 --> 00:11:24,910 So, jetzt wissen nur, dass dies ein Desktop ist Das ist gemeint vage aussehen 244 00:11:24,910 --> 00:11:26,750 vertraut auf Windows und Mac OS. 245 00:11:26,750 --> 00:11:29,110 Es muss nur ein paar andere Namen und Symbole für die Dinge. 246 00:11:29,110 --> 00:11:32,510 Aber dies ist die sogenannte CS50 Gerät, dass eine virtuelle Maschine, 247 00:11:32,510 --> 00:11:35,310 ab nächster Woche wird euch laufen innerhalb eines Fensters auf 248 00:11:35,310 --> 00:11:36,960 Ihre eigenen Mac oder PC. 249 00:11:36,960 --> 00:11:39,760 >> Für heute, ich werde zu öffnen die einfachste von Programmen. 250 00:11:39,760 --> 00:11:41,110 Es heißt gedit. 251 00:11:41,110 --> 00:11:42,565 Und das ist nur ein grafischer Editor. 252 00:11:42,565 --> 00:11:44,695 Es ist eine Art, wie Microsoft Wort, aber einfacher. 253 00:11:44,695 --> 00:11:47,110 Es ist wie eine Art Text Bearbeiten oder Notizblock. 254 00:11:47,110 --> 00:11:50,280 Es ist nur ein sehr einfaches Programm mit welche um Wörter auf dem Bildschirm schreiben. 255 00:11:50,280 --> 00:11:54,510 Es ist einfach so, was passiert, wenn ich sparen Dateien, die ich schaffen, wenn dieses Programm 256 00:11:54,510 --> 00:11:59,860 in einer speziellen Erweiterung wie. c, statt von. doc oder. xls, oder was auch immer 257 00:11:59,860 --> 00:12:04,190 Sie sind vertraut mit, ich kann eigentlich Programme erstellen, mit selbst diese einfache 258 00:12:04,190 --> 00:12:05,130 Texteditor. 259 00:12:05,130 --> 00:12:05,770 >> Also lassen Sie mich das tun. 260 00:12:05,770 --> 00:12:09,330 Lassen Sie mich gehen Sie vor und speichern Sie diese Datei zuerst als hello.c. 261 00:12:09,330 --> 00:12:12,350 Und wieder wird diese Benutzeroberfläche vertraut zu machen, um Sie schnell. 262 00:12:12,350 --> 00:12:14,160 Aber jetzt bin ich nur die Eingabe in einem Dateinamen. 263 00:12:14,160 --> 00:12:17,410 Ich werde es in meine John sparen Harvard Home-Verzeichnis. 264 00:12:17,410 --> 00:12:20,810 Und jetzt habe ich diese Registerkarte, der angibt, Ich bin in der Tat Bearbeitung 265 00:12:20,810 --> 00:12:23,070 eine Datei namens hello.c. 266 00:12:23,070 --> 00:12:24,510 Also nichts zu interessant noch. 267 00:12:24,510 --> 00:12:26,000 >> Und jetzt ist es zu gehen ziemlich kryptisch. 268 00:12:26,000 --> 00:12:28,370 Ich werde zu vergrößern, nur so ist es besser sichtbar. 269 00:12:28,370 --> 00:12:35,780 Und ich werde mit der Eingabe beginnen zählen stdio.h, int main, nichtig öffnenden geschweiften 270 00:12:35,780 --> 00:12:40,140 Klammer, eins, zwei, drei, vier Bereiche des Eindrucks, Druck f, für den Druck 271 00:12:40,140 --> 00:12:44,450 etwas formatierte Zitat unquote, "Hallo, Welt" Backslash, n, in der Nähe 272 00:12:44,450 --> 00:12:49,640 Zitat, geschlossene Klammer, Semikolon, Geben Backspace, Backspace, Backspace, 273 00:12:49,640 --> 00:12:52,310 Rückschritt, geschlossen geschweiften Klammer - 274 00:12:52,310 --> 00:12:53,350 Ich habe programmiert. 275 00:12:53,350 --> 00:12:57,380 >> Alles klar, so ist dies ein super einfach Programm, wirklich, das Programm, das 276 00:12:57,380 --> 00:12:59,070 jemand beginnt Programmierung mit. 277 00:12:59,070 --> 00:13:02,300 Und alle es tut, für all seiner Komplexität, wird ausgedruckt auf der 278 00:13:02,300 --> 00:13:04,160 Bildschirm, weißt du was? 279 00:13:04,160 --> 00:13:04,910 Hallo Welt. 280 00:13:04,910 --> 00:13:07,500 Aber es ist nicht ausreichend, nur , ein Programm zu schreiben. 281 00:13:07,500 --> 00:13:08,155 Also das ist der Code. 282 00:13:08,155 --> 00:13:11,300 Dies ist Quellcode eine Sprache namens c. 283 00:13:11,300 --> 00:13:14,380 Es ist derzeit in gespeichert eine Datei namens hello.c. 284 00:13:14,380 --> 00:13:16,180 >> Jetzt am Ende aussehen der Bildschirm hier. 285 00:13:16,180 --> 00:13:17,890 Mehr dazu, wieder in die kommenden Wochen. 286 00:13:17,890 --> 00:13:19,570 Aber das ist, was wir nennen ein Terminal-Fenster. 287 00:13:19,570 --> 00:13:21,290 Es ist ein blinkender, schwarz und weiß prompt. 288 00:13:21,290 --> 00:13:24,390 Es ist eine Art der alten Schule Schnittstelle zu ein Computer, der in der Regel nicht 289 00:13:24,390 --> 00:13:27,050 eine Maus oder andere grafische Elemente. 290 00:13:27,050 --> 00:13:28,320 Es verwendet einfach Ihre Tastatur. 291 00:13:28,320 --> 00:13:30,970 Und ich kann Befehle geben diese blinkenden Eingabeaufforderung. 292 00:13:30,970 --> 00:13:33,820 >> Und für die heutigen Zwecke, ich bin nur gehen, um die folgenden geben - 293 00:13:33,820 --> 00:13:35,610 machen hallo. 294 00:13:35,610 --> 00:13:39,370 Und das Programm, zu machen, ist nur ein Programm, dass in der realen Welt diese 295 00:13:39,370 --> 00:13:40,690 Tage, würden wir doppelt klicken. 296 00:13:40,690 --> 00:13:44,580 Aber in dieser Schnittstelle für heute, wir sind gehen, um seinen Namen an dieser Eingabeaufforderung eingeben. 297 00:13:44,580 --> 00:13:47,980 machen hallo ist buchstäblich werde machen Sie mir ein Programm namens hallo. 298 00:13:47,980 --> 00:13:51,360 Und es geht um so tun, indem Sie einer Datei, nur durch 299 00:13:51,360 --> 00:13:53,460 Standardmäßig genannt hello.c. 300 00:13:53,460 --> 00:13:57,260 Es ist davon ausgehen, möchte ich ein C-Programm von der Natur, wie diese Computer 301 00:13:57,260 --> 00:13:58,230 konfiguriert ist. 302 00:13:58,230 --> 00:13:59,550 >> Also ich voran gehen und drücken Sie Enter. 303 00:13:59,550 --> 00:14:02,050 Ich sehe etwas kryptischen Ausgang, aber Dies wird allzu geworden 304 00:14:02,050 --> 00:14:03,330 vertraut, bevor lang. 305 00:14:03,330 --> 00:14:06,870 Dies geschah, um einen Compiler, mehr laufen auf, dass in einem Moment, als Schall. 306 00:14:06,870 --> 00:14:09,080 Aber jetzt habe ich nur ein weiteres Blinken aufgefordert. 307 00:14:09,080 --> 00:14:13,060 Und ich kann jetzt gehen voraus und geben dot Schrägstrich, für uninteressant Gründen wir werden 308 00:14:13,060 --> 00:14:14,730 kommen zurück, um nächste Woche - 309 00:14:14,730 --> 00:14:15,910 hallo. 310 00:14:15,910 --> 00:14:19,650 >> Also alle diese Bemühungen bisher nur schreiben die einfachsten Programme, die, 311 00:14:19,650 --> 00:14:22,640 sobald ich Enter drücken, das tut. 312 00:14:22,640 --> 00:14:24,510 Also habe ich mein erstes Programm geschrieben. 313 00:14:24,510 --> 00:14:27,500 Also ich bin absichtlich Schippe bei dieser sehr einfachen Programms 314 00:14:27,500 --> 00:14:28,540 für eine Reihe von Gründen. 315 00:14:28,540 --> 00:14:31,990 One, ist es schwer, sich aufzuregen wäre es mit einer Klasse, wenn 316 00:14:31,990 --> 00:14:33,430 Dies ist das Ende des Spiels. 317 00:14:33,430 --> 00:14:37,100 >> Aber mehr als das, es gibt eine Viele Ablenkungen hier oben. 318 00:14:37,100 --> 00:14:40,640 Das erste Mal, wenn Sie lernen, Programm, für diejenigen unter Ihnen, weniger komfortabel, und 319 00:14:40,640 --> 00:14:43,410 auch ich, wieder in den Tag, als ich zum ersten so etwas gesehen habe - man kann Art 320 00:14:43,410 --> 00:14:46,500 der Figur, dass alles in Ordnung, diesem ist in einer Auflage hallo Welt. 321 00:14:46,500 --> 00:14:47,860 Aber es gibt so viel Ablenkung. 322 00:14:47,860 --> 00:14:52,110 Es gibt so viel Syntax auf dem Bildschirm dass es in die Quere kommt von sehr 323 00:14:52,110 --> 00:14:54,170 einfach, ansonsten einfach, Ideen. 324 00:14:54,170 --> 00:14:56,700 >> Also, was wir heute tun, ist, dass wir gehen auf die Seite legen und C kommen 325 00:14:56,700 --> 00:14:57,630 zurück zu, dass am Montag. 326 00:14:57,630 --> 00:15:00,860 Und wir verwenden, um eine grafische Programmiersprache namens Scratch. 327 00:15:00,860 --> 00:15:04,470 Dies ist eine Programmiersprache, die ich angespielt am Mittwoch, das ist los 328 00:15:04,470 --> 00:15:08,870 , damit wir die gleiche Art von Sachen zu tun aber ein Auge zudrücken, für heute, 329 00:15:08,870 --> 00:15:12,270 den geschweiften Klammern, die Klammern, die Semikolon, und alle diese dummen 330 00:15:12,270 --> 00:15:15,680 Ablenkungen, die in die Quere kommen, in dieser erste Tag, der einige grundlegende, hübsch 331 00:15:15,680 --> 00:15:17,230 interessante Ideen. 332 00:15:17,230 --> 00:15:21,350 >> So in Richtung zu diesem Ende, ich werde gehen zurück zu meinem Desktop hier und 333 00:15:21,350 --> 00:15:25,890 stellen Ihnen die Alternative zu, dass Programm, das wir einen Blick wird 334 00:15:25,890 --> 00:15:30,790 Kleinigkeit leuchtet diese. 335 00:15:30,790 --> 00:15:33,930 Das ist, wie wir werden, dass implementieren gleiche Programm heute - zwei Puzzle 336 00:15:33,930 --> 00:15:37,710 Stücke, die, wenn verriegelt und angeklickt, wird der Welt sagen, 337 00:15:37,710 --> 00:15:39,000 hallo Welt. 338 00:15:39,000 --> 00:15:41,200 >> Lassen Sie uns also tatsächlich dorthin zu gehen. 339 00:15:41,200 --> 00:15:44,965 Also werde ich weitermachen und öffnen Sie eine Website als scratch.mit.edu bekannt. 340 00:15:44,965 --> 00:15:47,980 341 00:15:47,980 --> 00:15:52,040 Und das führt mich zu diese Website hier. 342 00:15:52,040 --> 00:15:54,660 Im Vorfeld habe ich in dieser angemeldet Website und die ersten Probleme, die 343 00:15:54,660 --> 00:15:55,910 Sie gehen durch einige dieser Schritte. 344 00:15:55,910 --> 00:15:58,930 Ich werde weitermachen und klicken auf meinem neu erstellten Ordner hier. 345 00:15:58,930 --> 00:16:00,720 >> Und das wird mir zu zeigen, einige Projekte, die ich 346 00:16:00,720 --> 00:16:02,570 tatsächlich im Voraus erstellt. 347 00:16:02,570 --> 00:16:05,860 Und es stellt sich heraus, dass dieser graphischen Programmiersprache nicht nur wird 348 00:16:05,860 --> 00:16:08,480 um uns Programm per Drag & fallen diese Puzzleteile, Sie 349 00:16:08,480 --> 00:16:09,730 brauchen nicht einmal eine spezielle Software. 350 00:16:09,730 --> 00:16:13,190 Es ist alles in einem Browser so eingebettet Sie können dies tun, in der Theorie, auf 351 00:16:13,190 --> 00:16:16,810 Ihr Computer gerade jetzt, wie einige von euch kann gut sein, müssen dazu nicht einmal 352 00:16:16,810 --> 00:16:19,870 Software wie der CS50 Gerät, was wird kommen nächste Woche. 353 00:16:19,870 --> 00:16:24,200 >> Also ich gehe hin bis zu der oberen Ecke hier und auf Erstellen klicken. 354 00:16:24,200 --> 00:16:27,840 Und in einem Moment werde ich eine leere bekommen Bildschirm, über die kann ich anfangen 355 00:16:27,840 --> 00:16:30,380 Programmieren in dieser graphischen Programmierumgebung. 356 00:16:30,380 --> 00:16:36,140 Aber dieses Mal, es geht um viel, wesentlich einfacher auch zu tun. 357 00:16:36,140 --> 00:16:41,560 So in nur einem Augenblick, wenn die Wi-Fi kooperiert, haben wir nun diesen Bildschirm. 358 00:16:41,560 --> 00:16:44,870 So eine schnelle verbale Tour, aber ich wage zu behaupten, sicherlich, wenn Sie in den Tauchgang 359 00:16:44,870 --> 00:16:46,840 erste Problem Set, werden Sie finde das alles sehr 360 00:16:46,840 --> 00:16:48,315 zugänglich und recht intuitiv. 361 00:16:48,315 --> 00:16:50,900 Aber lassen Sie malen ein mentales Bild nur für einen Augenblick. 362 00:16:50,900 --> 00:16:54,620 >> So unter dieser prompt sagen save Änderungen, bist du etwa zu kratzen sehen. 363 00:16:54,620 --> 00:16:55,570 Dies ist ein Sprite. 364 00:16:55,570 --> 00:16:56,630 Es ist ein Zeichen. 365 00:16:56,630 --> 00:17:00,740 Und er lebt, was wir eine Bühne rufen, diese große weiße Rechteck auf 366 00:17:00,740 --> 00:17:03,120 dem er nach oben, unten, links, rechts, und zu tun, wirklich, 367 00:17:03,120 --> 00:17:04,670 andere Arten von Aktionen. 368 00:17:04,670 --> 00:17:08,780 >> Währenddessen sind in der Mitte von diesem Benutzer Schnittstelle, haben wir eine ganze Reihe von 369 00:17:08,780 --> 00:17:09,750 Puzzleteile. 370 00:17:09,750 --> 00:17:14,060 Und du wirst sehen, dass sie Dinge sagen wie: 10 Stufen bewegen, drehte 15 Grad, 371 00:17:14,060 --> 00:17:15,550 Punkt in einer bestimmten Richtung. 372 00:17:15,550 --> 00:17:17,910 Aber es gibt Kategorien von Blöcke bis auch hier. 373 00:17:17,910 --> 00:17:21,410 Also, wenn ich Looks gehen, werden Sie sehen, dass es gibt andere Puzzleteile, dass 374 00:17:21,410 --> 00:17:25,530 anscheinend wird dieses cit zu erzählen Hallo sagen, zu denken, zu zeigen, 375 00:17:25,530 --> 00:17:26,780 selbst, verstecken sich. 376 00:17:26,780 --> 00:17:30,830 Wenn ich auf Sounds gehen, stellt sich heraus, gibt es Möglichkeiten, klingt wie meow spielen, 377 00:17:30,830 --> 00:17:32,670 , um alle Töne zu stoppen, um eine Trommel zu spielen. 378 00:17:32,670 --> 00:17:36,530 >> Also, lange Rede kurzer Sinn, es gibt eine ganze Haufen Puzzleteile, mit denen Sie 379 00:17:36,530 --> 00:17:40,920 um diese Katze, oder eine beliebige Anzahl von sagen andere Zeichen, was zu tun ist. 380 00:17:40,920 --> 00:17:43,850 Aber um dies alles passieren Sie müssen, um die Programmierung zu starten. 381 00:17:43,850 --> 00:17:48,090 Und diese großen weißen Kasten, oder grauen Kasten auf die rechte Seite, das ist, wo 382 00:17:48,090 --> 00:17:50,170 Ich werde tatsächlich ziehen fallen diese Puzzleteile. 383 00:17:50,170 --> 00:17:54,320 Das ist meine leere Textdatei Fenster entspricht. 384 00:17:54,320 --> 00:17:57,070 >> Also werde ich weitermachen und klicken Kontrollieren Sie in der Mitte. 385 00:17:57,070 --> 00:17:58,540 Oder besser gesagt, lassen Sie mich beginnen bis unter Veranstaltungen. 386 00:17:58,540 --> 00:18:01,530 Unter Events Bank, werden Sie feststellen, ein paar Dinge, die bewusst sind 387 00:18:01,530 --> 00:18:05,240 gekrümmt auf der Oberseite in einer solchen Weise, dass sie wahrscheinlich nicht auf das Interlock 388 00:18:05,240 --> 00:18:06,710 Spitze der Puzzleteile. 389 00:18:06,710 --> 00:18:10,160 Und das ist, weil sie den Beginn DeMark eines Programms, den Beginn einer 390 00:18:10,160 --> 00:18:11,910 Skript, so zu sprechen. 391 00:18:11,910 --> 00:18:16,290 Also, wenn ich voran gehen und ziehen, wenn grün Flagge geklickt hierher, und dann habe ich 392 00:18:16,290 --> 00:18:18,060 wollen diese Katze zu sagen etwas auf den ersten. 393 00:18:18,060 --> 00:18:20,510 Also werde ich gehen unter die Blicke Panel. 394 00:18:20,510 --> 00:18:24,060 Und ich werde weitermachen und greifen die sagen hallo Block und Drag und Drop 395 00:18:24,060 --> 00:18:27,220 und loslassen, so dass es automatisch verriegelt es. 396 00:18:27,220 --> 00:18:28,640 >> Und dann merke ich, kann Klicken Sie auf den Text. 397 00:18:28,640 --> 00:18:31,960 Und ich kann es überschreiben, um mehr zu sein spezifische wie, sagen wir, hallo Welt. 398 00:18:31,960 --> 00:18:36,340 Und jetzt haben wir das Programm, dass ich behaupten entspricht, dass viel mehr 399 00:18:36,340 --> 00:18:39,670 obskuren Programm, das ich umgesetzt in C vor einem Augenblick. 400 00:18:39,670 --> 00:18:43,130 >> Wenn ich gehe ab sofort auf der linken Seite, feststellen, es ist ein großes Stoppschild 401 00:18:43,130 --> 00:18:44,520 und eine große grüne Flagge. 402 00:18:44,520 --> 00:18:46,390 Lassen Sie mich in Klarheit vergrößern. 403 00:18:46,390 --> 00:18:49,390 Und wenn ich jetzt auf diese grüne Fahne, Sie können sich wahrscheinlich vorstellen, was diese erste 404 00:18:49,390 --> 00:18:51,920 Programm ist nun zu tun ist. 405 00:18:51,920 --> 00:18:55,420 Also auch dort, wir programmieren, aber wir eigentlich nicht verzetteln 406 00:18:55,420 --> 00:18:58,980 in einige dieser syntaktischen, kleinsten Details. 407 00:18:58,980 --> 00:19:01,120 >> Aber lassen Sie uns versuchen, etwas ein wenig interessanter. 408 00:19:01,120 --> 00:19:04,840 Lassen Sie mich in meinem Scratch Ordner hier. 409 00:19:04,840 --> 00:19:10,210 Und eigentlich möchte ich so lassen Sie mich eröffnen ein separates Programm hier nur für ein 410 00:19:10,210 --> 00:19:17,830 Moment, Maximieren Sie dieses Fenster zu öffnen, und ich werde in der heutigen gehen 411 00:19:17,830 --> 00:19:18,620 Quellverzeichnis. 412 00:19:18,620 --> 00:19:21,660 Wie immer, werden Sie feststellen, heute und weiter, dass alle heutigen Beispiele 413 00:19:21,660 --> 00:19:25,225 zugänglich sind innerhalb von des Kurses Website. 414 00:19:25,225 --> 00:19:31,170 >> Und ich werde es hier weiter gehen und holen up ein wenig etwas anderes. 415 00:19:31,170 --> 00:19:33,970 Dieser hier, für die Ich brauche einen Freiwilligen. 416 00:19:33,970 --> 00:19:36,850 Wer möchte eine Schreibtischlampe heute? 417 00:19:36,850 --> 00:19:40,600 OK, wie über jemanden ein wenig - Sie sind am Ende? 418 00:19:40,600 --> 00:19:42,124 Komm runter. 419 00:19:42,124 --> 00:19:47,230 Nun möchten Sie teilnehmen, oder einfach sagen, beginnen mit der Schreibtischlampe? 420 00:19:47,230 --> 00:19:48,190 >> VANESSA: [unverständlich]. 421 00:19:48,190 --> 00:19:48,465 >> DAVID MALAN: OK. 422 00:19:48,465 --> 00:19:49,610 Gut, was Sie Namen? 423 00:19:49,610 --> 00:19:49,990 Vanessa? 424 00:19:49,990 --> 00:19:50,570 David. 425 00:19:50,570 --> 00:19:51,390 Schön, Sie kennen zu lernen. 426 00:19:51,390 --> 00:19:53,840 So nach oben zu kommen und Vanessa gehen die Kontrolle über meine nehmen 427 00:19:53,840 --> 00:19:55,490 Tastatur nur für einen Augenblick. 428 00:19:55,490 --> 00:19:57,850 Und was ich hier, nur für die Zeit getan willen, wie ich das realisiert 429 00:19:57,850 --> 00:20:01,070 Wi-Fi war ein bisschen langsam, Scratch, die Programmierumgebung, die wir 430 00:20:01,070 --> 00:20:04,110 verwenden, können auch heruntergeladen und laufen auf dem lokalen Computer. 431 00:20:04,110 --> 00:20:06,360 Also, was ich tat, im Vorfeld der Vorlesung, in Fall, was geschieht, ist, dass ich heruntergeladen 432 00:20:06,360 --> 00:20:09,120 alle Dateien die wir hier mit zu spielen so dass sie können eine etwas 433 00:20:09,120 --> 00:20:10,840 schnell hier auf meinem Laptop. 434 00:20:10,840 --> 00:20:13,460 Also das ist, warum ich jetzt sehen, bin ein Mac-spezifische Schnittstelle. 435 00:20:13,460 --> 00:20:15,510 >> Also werde ich weitermachen und eröffnen diese ein. 436 00:20:15,510 --> 00:20:18,400 Ich werde jetzt gehen und Vollbild das Fenster. 437 00:20:18,400 --> 00:20:21,740 Und wie Sie sehen werden, können wir sehr schnell, wie dieser Student tat, einer der 438 00:20:21,740 --> 00:20:26,360 Ihre Vorgänger, von Hallo Welt gehen zu einem viel viel mehr überzeugende 439 00:20:26,360 --> 00:20:27,020 Anwendung. 440 00:20:27,020 --> 00:20:28,180 Also hier sind die Anweisungen. 441 00:20:28,180 --> 00:20:29,500 Oh, und wir haben eine andere Sache. 442 00:20:29,500 --> 00:20:31,640 Ich dachte, es würde Spaß machen, da, normalerweise, wir filmen 443 00:20:31,640 --> 00:20:32,440 Kameras auf diese Weise. 444 00:20:32,440 --> 00:20:34,100 Ich dachte, es würde Spaß machen, wenn Vanessa sein, könnten wir die Welt sehen 445 00:20:34,100 --> 00:20:35,120 durch deine Augen. 446 00:20:35,120 --> 00:20:36,670 So, hier haben wir einige Google Glass. 447 00:20:36,670 --> 00:20:39,290 >> [ERSTAUNT keucht] 448 00:20:39,290 --> 00:20:41,610 >> DAVID MALAN: Wir werden nur dann geben weg Schreibtischlampen heute. 449 00:20:41,610 --> 00:20:43,530 >> [Gelächter] 450 00:20:43,530 --> 00:20:45,260 >> Also lassen Sie mich dieses Cue up. 451 00:20:45,260 --> 00:20:49,340 Alles klar, so berührt dies. 452 00:20:49,340 --> 00:20:51,910 OK, Glas, ein Video aufzunehmen. 453 00:20:51,910 --> 00:20:55,700 454 00:20:55,700 --> 00:20:56,950 Alles klar, Vanessa? 455 00:20:56,950 --> 00:21:00,940 456 00:21:00,940 --> 00:21:05,560 Jetzt, als davon abgesehen, dass nichts mitbekommen hat mit Scratch zu tun, wenn man sich 457 00:21:05,560 --> 00:21:08,540 leicht nach oben und auf der rechten Seite sehen Sie die wörtliche Glas, und Sie sollten 458 00:21:08,540 --> 00:21:09,650 sehen ein kleines rechteckiges Fenster. 459 00:21:09,650 --> 00:21:11,500 Sie sollten alle Ihre Mitschüler gerade jetzt gefilmt? 460 00:21:11,500 --> 00:21:11,840 Ja. 461 00:21:11,840 --> 00:21:12,340 >> VANESSA: Ja. 462 00:21:12,340 --> 00:21:12,920 >> DAVID MALAN: OK. 463 00:21:12,920 --> 00:21:15,170 Also das ist in Ordnung. 464 00:21:15,170 --> 00:21:16,660 Wir werden dieses Material später veröffentlichen. 465 00:21:16,660 --> 00:21:18,460 Denn jetzt, richten Sie Ihre Aufmerksamkeit auf den Bildschirm hier. 466 00:21:18,460 --> 00:21:20,990 Und was Ihr Vorgänger getan hat, ist setzen einige Anweisungen auf dem Bildschirm 467 00:21:20,990 --> 00:21:22,670 nur mit einem Malprogramm. 468 00:21:22,670 --> 00:21:25,040 So wirst du in einem Moment, drücken Sie die Leertaste, um zu beginnen. 469 00:21:25,040 --> 00:21:27,790 Und dann einige Puzzleteile gehen von der Stelle bewegen den Bildschirm. 470 00:21:27,790 --> 00:21:30,900 Und Sie wollen die Pfeiltasten drücken, nur wie im echten DDR, in Übereinstimmung 471 00:21:30,900 --> 00:21:32,740 mit Dingen Schlange mit den Pfeilen. 472 00:21:32,740 --> 00:21:33,020 >> VANESSA: OK. 473 00:21:33,020 --> 00:21:33,800 >> DAVID MALAN: Sie haben dies vor spielen. 474 00:21:33,800 --> 00:21:34,140 >> VANESSA: Ja. 475 00:21:34,140 --> 00:21:37,330 >> DAVID MALAN: All right, Vanessa, gehen Sie vor und nehmen Sie es weg. 476 00:21:37,330 --> 00:22:53,082 >> [MUSIC - KAYNE WEST, "Stronger"] 477 00:22:53,082 --> 00:22:57,080 >> [Applaus] 478 00:22:57,080 --> 00:22:59,750 >> DAVID MALAN: So lasst uns jetzt einen Schritt davon entfernt. 479 00:22:59,750 --> 00:23:01,230 So klar, das ist das Ende des Spiels. 480 00:23:01,230 --> 00:23:02,880 Das Ende des Spiels ist nicht hallo Welt. 481 00:23:02,880 --> 00:23:05,520 Aber Sie müssen nicht unbedingt zu tun Dinge, die so interaktiv sind. 482 00:23:05,520 --> 00:23:06,810 Sie können auch Animation. 483 00:23:06,810 --> 00:23:10,790 So zum Beispiel, ein weiterer von Ihrem Nachfolger machte dieses Programm hier 484 00:23:10,790 --> 00:23:14,100 was erzählt eine Geschichte mehr als es ist ein Spiel umgesetzt. 485 00:23:14,100 --> 00:23:19,180 Also lass mich gehen und eröffnen hier ein Programm in unserem Verzeichnis derselben Quelle 486 00:23:19,180 --> 00:23:20,300 von heute. 487 00:23:20,300 --> 00:23:26,990 Dieser Anruf, und lassen Sie uns beginnen mit, einem Cookie Liebesgeschichte. 488 00:23:26,990 --> 00:23:30,750 >> Und nicht, um diese zu akademisch, aber, wie Sie diese ein zu sehen, zu denken 489 00:23:30,750 --> 00:23:34,030 selbst, welche dieser einfachen Konzepte der Programmierung haben wir gesprochen 490 00:23:34,030 --> 00:23:34,630 etwa so weit - 491 00:23:34,630 --> 00:23:39,250 Variablen und Schleifen und Bedingungen, Ihr Vorgänger hat wahrscheinlich verwenden nur 492 00:23:39,250 --> 00:23:41,090 einige implementieren die Visualisierungen. 493 00:23:41,090 --> 00:23:41,760 Sie sehen hier. 494 00:23:41,760 --> 00:23:44,118 Also gebe ich Ihnen ein Cookie Liebesgeschichte. 495 00:23:44,118 --> 00:24:06,030 >> [MUSIC - GREEN DAY, "urlaub"] 496 00:24:06,030 --> 00:24:08,022 >> [CRASH] 497 00:24:08,022 --> 00:24:09,272 >> [MUSIC - Die Schildkröten, "GLÜCKLICH ZUSAMMEN"] 498 00:24:09,272 --> 00:24:58,328 499 00:24:58,328 --> 00:25:00,560 >> DAVID MALAN: All right, so gibt es, wir hatten ein Cookie Liebesgeschichte. 500 00:25:00,560 --> 00:25:01,360 Aber auch dort - 501 00:25:01,360 --> 00:25:01,755 >> [Applaus] 502 00:25:01,755 --> 00:25:08,110 >> DAVID MALAN: All right, auch dort, darüber nachdenken, wie diese Herzen ging von 503 00:25:08,110 --> 00:25:10,410 unten nach oben auf dem Bildschirm, Es war eigentlich ein bisschen 504 00:25:10,410 --> 00:25:11,440 Zufälligkeit los. 505 00:25:11,440 --> 00:25:14,150 Und in der Tat, wir werden sehen, dass auch in der einfachsten Umgebungen, wie 506 00:25:14,150 --> 00:25:18,180 Scratch, wie in C, können Sie generieren Zufallszahlen oder die Illusion 507 00:25:18,180 --> 00:25:21,110 Zufallszahlen, so dass das Spiel ein wenig interessanter, als es vielleicht 508 00:25:21,110 --> 00:25:23,390 sein, wenn Sie musste unbedingt hart codiert alles. 509 00:25:23,390 --> 00:25:26,360 >> In der Bewegung, die Sie sehen, es es gibt eine Art von Reaktionsfähigkeit. 510 00:25:26,360 --> 00:25:28,840 Sobald der Lebkuchenmann berührt Der Lebkuchen-Frau, sie 511 00:25:28,840 --> 00:25:30,000 scheint weg zu bewegen. 512 00:25:30,000 --> 00:25:33,580 Und so, in der Tat, können Sie bei der Umsetzung, in den meisten Programmiersprachen, die Vorstellung 513 00:25:33,580 --> 00:25:38,680 von Ereignissen, wobei, wenn man Hand berührt Auf der anderen Seite, die einige auslösen können 514 00:25:38,680 --> 00:25:41,270 des Quellcodes zu tatsächlich auszuführen. 515 00:25:41,270 --> 00:25:43,740 Sie können für eine solche hören Dinge auf dem Bildschirm. 516 00:25:43,740 --> 00:25:47,310 >> Also lassen Sie uns eine kurze Tour, dann, einige der Bausteine ​​können wir 517 00:25:47,310 --> 00:25:48,790 einige dieser Ziele zu erreichen. 518 00:25:48,790 --> 00:25:51,630 Also hier ist, was wir künftig rufen eine Erklärung ab. 519 00:25:51,630 --> 00:25:55,030 Eine Aussage zufällig in lila Scratch, ein wenig so etwas wie dieses, 520 00:25:55,030 --> 00:25:56,120 aber das ist willkürlich. 521 00:25:56,120 --> 00:26:00,140 Eine Aussage ist nur ein Puzzleteil oder ganz allgemein, eine Anweisung, dass 522 00:26:00,140 --> 00:26:03,370 teilt dem Computer zu tun etwas, ein Statement. 523 00:26:03,370 --> 00:26:04,680 >> Also hier ist ein einfaches Beispiel. 524 00:26:04,680 --> 00:26:05,930 Sag hallo Welt. 525 00:26:05,930 --> 00:26:08,180 Ein anderer könnte eine Sekunde warten. 526 00:26:08,180 --> 00:26:10,840 Also das Puzzleteil, das unterstützt wird in Scratch, werden wir Ihre 527 00:26:10,840 --> 00:26:13,050 Zeichen anhalten für einige Anzahl von Sekunden. 528 00:26:13,050 --> 00:26:15,330 Auch dies ist nur eine Feststellung. 529 00:26:15,330 --> 00:26:18,640 >> Hier nächste, wir haben noch mehr interessant, play sound meow, und 530 00:26:18,640 --> 00:26:21,480 der kleine Pfeil bedeutet, dass in Scratch, dies ist ein Dropdown-Menü. 531 00:26:21,480 --> 00:26:22,590 So können Sie Sounds importieren. 532 00:26:22,590 --> 00:26:25,095 Sie können Musik aufnehmen und andere tun lustige Dinge in Scratch. 533 00:26:25,095 --> 00:26:28,450 Und das auch, obwohl am Ende des Tages, ist nur eine Feststellung. 534 00:26:28,450 --> 00:26:31,250 Aber jetzt lassen Sie uns einen mehr interessantes Stück, das als bekannt 535 00:26:31,250 --> 00:26:32,630 Boolean Ausdruck. 536 00:26:32,630 --> 00:26:35,180 Kapital B, benannt nach ein Bursche namens Bool. 537 00:26:35,180 --> 00:26:39,500 >> Und ein Boolescher Ausdruck ist nur ein Puzzleteil oder, ganz allgemein, ein 538 00:26:39,500 --> 00:26:42,980 Stück Information, das ist entweder wahr oder falsch - 539 00:26:42,980 --> 00:26:45,830 Eins oder Null, ja oder nein. 540 00:26:45,830 --> 00:26:48,420 So ist es nur einer von denen zwei Gegensätze. 541 00:26:48,420 --> 00:26:52,840 So ein solches Boolean Ausdruck in der Welt der Scratch sieht aus wie dieses blau 542 00:26:52,840 --> 00:26:53,560 Puzzleteil. 543 00:26:53,560 --> 00:26:56,735 Und es ist eine Frage zu stellen, Maus nach unten, und das kann entweder von 544 00:26:56,735 --> 00:26:58,430 natürlich wahr oder falsch. 545 00:26:58,430 --> 00:27:01,710 Also mit diesem Puzzle-Stück in Scratch, gut, werden Sie in der Lage sein zu erkennen, ob ein 546 00:27:01,710 --> 00:27:05,490 rätseln, ob die Maus ist, in der Tat, dass , die von der menschlichen Interaktion statt 547 00:27:05,490 --> 00:27:06,550 mit Ihrem Programm. 548 00:27:06,550 --> 00:27:08,860 >> Das hier ist ein wenig mehr abstrakt, aber diese beiden weißen Felder 549 00:27:08,860 --> 00:27:09,740 sind nur für Zahlen. 550 00:27:09,740 --> 00:27:12,950 So können Sie Dinge wie zu tun ist, diese Zahl kleiner als die anderen? 551 00:27:12,950 --> 00:27:16,180 Und wenn ja, wird Scratch verhalten eine oder andere Weise. 552 00:27:16,180 --> 00:27:17,505 Das hier ist ein wenig mehr grafisch. 553 00:27:17,505 --> 00:27:21,840 Es ist, wenn das Sprite, wenn die Katze, für So wird tatsächlich berühren die 554 00:27:21,840 --> 00:27:22,510 Mauszeiger. 555 00:27:22,510 --> 00:27:25,780 Also, wenn die kleine Pfeilspitze schwebt über die Katze, dann 556 00:27:25,780 --> 00:27:28,030 Puzzleteil wird als wahr ausgewertet. 557 00:27:28,030 --> 00:27:31,870 Es ist wahr, in diesem Fall, wenn man Mit diesem booleschen Ausdruck, wie wir werden 558 00:27:31,870 --> 00:27:36,340 sehen in einem Moment, in dem Zweig, können Sie dies entweder, oder Sie können das tun, 559 00:27:36,340 --> 00:27:39,940 ähnlich wie wir hatten eine Bedingung, dass überprüft, gibt es eine weitere letzte Person 560 00:27:39,940 --> 00:27:40,460 in den Raum? 561 00:27:40,460 --> 00:27:42,070 Wenn ja, fügen Sie ein. 562 00:27:42,070 --> 00:27:44,430 Ansonsten nicht weiter zu kümmern. 563 00:27:44,430 --> 00:27:48,650 >> So ein boolescher Ausdruck kann auch und-ed zusammen oder oder-ed zusammen. 564 00:27:48,650 --> 00:27:53,120 So kombinieren Sie Boolesche Ausdrücke und sagen, das und das muss wahr sein für 565 00:27:53,120 --> 00:27:54,710 die ganze Sache um wahr zu sein. 566 00:27:54,710 --> 00:27:56,520 Und hier ist eine weitere reale Welt Beispiel. 567 00:27:56,520 --> 00:28:00,060 Wenn Sie schon CS50 Kurse verwendet werden, um natürlich zu tun Shopping, diese Kontrollkästchen 568 00:28:00,060 --> 00:28:03,520 dort, wo, wenn Sie überprüfen, ob die Box neben zu den Kursen, werden die sagen, ja, 569 00:28:03,520 --> 00:28:07,860 zeig mir nur Kurse, für die der Q-Wert von 4,5 oder höher. 570 00:28:07,860 --> 00:28:10,610 Wenn Sie es deaktivieren, nein, nicht Sorgen darüber. 571 00:28:10,610 --> 00:28:13,910 Oder ähnlich, auf der rechten Seite nicht Konflikt mit Kursen Ich nehme, 572 00:28:13,910 --> 00:28:15,650 das ist entweder wahr oder falsch. 573 00:28:15,650 --> 00:28:16,715 Es ist nur ein Boolean Ausdruck. 574 00:28:16,715 --> 00:28:20,080 Also all dieser Zeit, wenn Sie verwendet haben Webseiten mit Kontrollkästchen, du bist nur 575 00:28:20,080 --> 00:28:23,570 Umschalten das Äquivalent eines Boolean Expression und ausgeschaltet. 576 00:28:23,570 --> 00:28:25,270 >> Also in welcher Form nutzen Sie diese? 577 00:28:25,270 --> 00:28:28,820 Nun, in Scratch, werden wir gleich sehen dass es Bedingungen gibt, dass 578 00:28:28,820 --> 00:28:29,560 sehen wie folgt aus. 579 00:28:29,560 --> 00:28:33,130 Und das ist irgendwie sinnvoll, weil viel wie in Pseudocode, eingerückt wir 580 00:28:33,130 --> 00:28:38,550 die Art von U-förmigen Puzzleteile, bedeuten dass alles, was innerhalb dieser U ist 581 00:28:38,550 --> 00:28:41,390 gehen, um auszuführen, oder nicht, je auf, wo es ist. 582 00:28:41,390 --> 00:28:45,310 Also, wenn boolescher Ausdruck, dann was drin ist wird noch ausgeführt werden. 583 00:28:45,310 --> 00:28:46,800 >> Inzwischen gibt es eine if / else-Block. 584 00:28:46,800 --> 00:28:50,320 Also, wenn Sie einen Zweig, das geht so oder so, Scratch gibt uns, dass. 585 00:28:50,320 --> 00:28:54,500 Und nach dieser Logik, jetzt, obwohl die Puzzleteil ist eindeutig zu klein 586 00:28:54,500 --> 00:28:57,400 etwas anderes in der es zu verkeilen, Die Scratch-Puzzleteile, sind sie 587 00:28:57,400 --> 00:28:58,150 nur gehen, um zu wachsen. 588 00:28:58,150 --> 00:29:01,370 Wenn Sie per Drag & Drop über etwas, es wird nur wachsen, um was auch immer es passt 589 00:29:01,370 --> 00:29:02,510 ist man versucht zu tun. 590 00:29:02,510 --> 00:29:07,230 >> So können wir nehmen zwei dieser Dinge und eine Drei-Wege-Gabel in der Straße so 591 00:29:07,230 --> 00:29:11,300 dass Sie entweder tun, oder das, oder diese andere Sache nur durch Verschachtelung 592 00:29:11,300 --> 00:29:12,070 auf diese Weise. 593 00:29:12,070 --> 00:29:14,370 Natürlich, wenn Sie das auch tun viel, beginnt es zu hässlich. 594 00:29:14,370 --> 00:29:17,660 Aber an diesem Punkt sind Sie eigentlich wahrscheinlich nicht die Programmierung sehr gut. 595 00:29:17,660 --> 00:29:20,490 Und so werden die wiederkehrenden Thema auch, dass der Stil. 596 00:29:20,490 --> 00:29:22,790 Wie gut kennst tatsächlich Formatieren Sie den Code? 597 00:29:22,790 --> 00:29:24,580 Oder wie gut kennen Sie Ihren Code zu entwerfen? 598 00:29:24,580 --> 00:29:26,430 Aber mehr dazu in der Zukunft. 599 00:29:26,430 --> 00:29:27,470 >> Und jetzt haben wir Schleifen. 600 00:29:27,470 --> 00:29:30,310 Es gibt ein schönes forever-Schleife in Scratch , was soviel bedeutet, dass - zu tun 601 00:29:30,310 --> 00:29:32,710 was drin ist dies wieder und wieder, und wieder. 602 00:29:32,710 --> 00:29:35,880 Sie können mehr Beton und sagen, Führen Sie die folgenden Sache 10 mal. 603 00:29:35,880 --> 00:29:37,620 Sie können auch Variablen verwenden. 604 00:29:37,620 --> 00:29:40,260 Sie können sich mit einem beliebigen Namen in das wenig fallen und sagen, gib mir ein 605 00:29:40,260 --> 00:29:43,190 Variable n und setzen es gleich zu einem gewissen Wert. 606 00:29:43,190 --> 00:29:44,910 Und dann können Sie Funktionen. 607 00:29:44,910 --> 00:29:46,850 Aber mehr auf die in nur einem Augenblick. 608 00:29:46,850 --> 00:29:49,140 >> Lassen Sie mich zurück zu meinem Scratch-Schnittstelle. 609 00:29:49,140 --> 00:29:50,970 Und lassen Sie mich gehen diesmal. 610 00:29:50,970 --> 00:29:56,660 Und lassen Sie uns fortfahren und eröffnen, sagen wir mal, ein Beispiel aus - 611 00:29:56,660 --> 00:29:58,740 das ist ein wenig interessanter. 612 00:29:58,740 --> 00:30:00,750 Lassen Sie mich los, und eigentlich lassen Sie mich nur machen es mir. 613 00:30:00,750 --> 00:30:01,960 Ich brauche, um dieses zu eröffnen. 614 00:30:01,960 --> 00:30:03,390 Lassen Sie mich gehen Sie zu Datei, Neu. 615 00:30:03,390 --> 00:30:04,740 Ich werde zu Events zu gehen. 616 00:30:04,740 --> 00:30:08,460 Ich werde, wann grüne Fahne gehen geklickt haben, und ich werde gehen zu klingen. 617 00:30:08,460 --> 00:30:11,590 Und ich werde diese per Drag & Drop Puzzleteil, Ton abspielen miauen. 618 00:30:11,590 --> 00:30:12,580 Es Riegel zusammen. 619 00:30:12,580 --> 00:30:14,327 Und nun, wenn ich auf die grüne Fahne - 620 00:30:14,327 --> 00:30:16,260 >> [MEOW SOUND] 621 00:30:16,260 --> 00:30:17,500 >> DAVID MALAN: Bezaubernd. 622 00:30:17,500 --> 00:30:21,560 OK, jetzt lasst uns etwas tun, ein wenig logischer, nur um zu demonstrieren, dass 623 00:30:21,560 --> 00:30:22,760 wir können, für jetzt. 624 00:30:22,760 --> 00:30:25,550 Ich werde entriegeln diese von diesem Kerl. 625 00:30:25,550 --> 00:30:27,000 Ich gehe hin zu kontrollieren. 626 00:30:27,000 --> 00:30:28,770 Und ich werde, um einen Zustand zu greifen. 627 00:30:28,770 --> 00:30:30,600 Also, wenn etwas dann. 628 00:30:30,600 --> 00:30:32,020 Also das ist, wie es dort aussieht. 629 00:30:32,020 --> 00:30:33,890 Also muss ich einen booleschen Ausdruck. 630 00:30:33,890 --> 00:30:38,130 Und lassen Sie mich gehen und sagen, Lassen Sie mich zum Betreiber gehen. 631 00:30:38,130 --> 00:30:40,270 Ich werde etwas tun, etwas mathy, nur zum Spaß. 632 00:30:40,270 --> 00:30:43,600 Ich werde gehen hier und sagen, wenn etwas geringer ist als etwas anderes, 633 00:30:43,600 --> 00:30:45,030 voran gehen und etwas tun. 634 00:30:45,030 --> 00:30:46,890 So, jetzt wissen Sie, was eine statistische Block. 635 00:30:46,890 --> 00:30:51,620 Also, wie bemerkt, wenn ich über diese schweben Sache hier, die dort schnappen wird. 636 00:30:51,620 --> 00:30:54,090 >> So, jetzt, Kündigung, fange ich an zu tun schon etwas mehr logisch 637 00:30:54,090 --> 00:30:54,650 interessant. 638 00:30:54,650 --> 00:30:59,720 Wenn eine Zufallszahl zwischen 1 und 10 weniger als, sagen wir, sechs. 639 00:30:59,720 --> 00:31:03,670 Wenn ich wählen sechs, dass im Wesentlichen Mittel wie folgt mit 50% 640 00:31:03,670 --> 00:31:03,980 Wahrscheinlichkeit. 641 00:31:03,980 --> 00:31:05,460 Es ist wie eine Münze werfen. 642 00:31:05,460 --> 00:31:07,330 Nun, ich kann etwas tun bedingt. 643 00:31:07,330 --> 00:31:10,800 Und das, was ich werde zu tun ist, den Sound. 644 00:31:10,800 --> 00:31:14,280 So jetzt, wenn ich auf dem Bildschirm klicken Fahne, es ist wie eine Münze zu werfen. 645 00:31:14,280 --> 00:31:14,610 >> [MEOW SOUND] 646 00:31:14,610 --> 00:31:17,160 >> DAVID MALAN: Es war Köpfe oder es so weiter. 647 00:31:17,160 --> 00:31:17,920 Lassen Sie es wieder tun. 648 00:31:17,920 --> 00:31:18,860 >> [MEOW SOUND] 649 00:31:18,860 --> 00:31:19,790 >> DAVID MALAN: Heads wieder. 650 00:31:19,790 --> 00:31:20,280 >> [MEOW SOUND] 651 00:31:20,280 --> 00:31:21,500 >> DAVID MALAN: Heads wieder. 652 00:31:21,500 --> 00:31:22,631 Puh, OK. 653 00:31:22,631 --> 00:31:24,720 Tails, dass die Zeit. 654 00:31:24,720 --> 00:31:29,545 Also 50% der Zeit, wenn wir dies tun unendlich lange, erhalten wir 50% miaut 655 00:31:29,545 --> 00:31:32,180 und 50% zum Schweigen. 656 00:31:32,180 --> 00:31:34,850 Also da, nur ein Grundbaustein Block lässt, die uns das tun. 657 00:31:34,850 --> 00:31:37,710 Aber das ist irgendwie langweilig, dass ich um auf diese Schaltfläche klicken. 658 00:31:37,710 --> 00:31:39,810 Also lasst uns einfach per Drag und werfen alle diese entfernt. 659 00:31:39,810 --> 00:31:42,270 Wenn Sie schleppten sie in die Mitte, sie müssen nur selbst löschen. 660 00:31:42,270 --> 00:31:43,760 >> Lassen Sie mich gehen bis zu steuern. 661 00:31:43,760 --> 00:31:46,060 Lass mich für immer zu gehen. 662 00:31:46,060 --> 00:31:49,952 Und dieses Mal werde ich tun minorly etwas ärgerlich. 663 00:31:49,952 --> 00:31:51,560 >> [Gelächter] 664 00:31:51,560 --> 00:31:53,370 >> DAVID MALAN: Und lassen Sie mich gehen voran und tun Kontrolle. 665 00:31:53,370 --> 00:31:57,260 Warten Sie eine Sekunde, nur so es ist nicht zu Gitter. 666 00:31:57,260 --> 00:31:59,870 >> [MEOW SOUND] 667 00:31:59,870 --> 00:32:00,970 >> DAVID MALAN: Das ist nicht natürlich. 668 00:32:00,970 --> 00:32:01,861 OK. 669 00:32:01,861 --> 00:32:04,510 >> [MEOW SOUND] 670 00:32:04,510 --> 00:32:06,406 >> DAVID MALAN: Und beachtet, was schön ist über Scratch, für diejenigen von Ihnen, 671 00:32:06,406 --> 00:32:09,210 haben vor Programmierung Erfahrung, Sie brauchen nicht zu starten und zu stoppen. 672 00:32:09,210 --> 00:32:10,060 Sie brauchen nicht zu kompilieren. 673 00:32:10,060 --> 00:32:13,210 Sie müssen nur geändert werden, und das Programm dynamisch anzupassen. 674 00:32:13,210 --> 00:32:14,620 Also das ist immer ein wenig interessant. 675 00:32:14,620 --> 00:32:16,930 Aber lassen Sie uns noch einen Schritt weiter. 676 00:32:16,930 --> 00:32:19,760 Lassen Sie mich weiter zu machen und Befreien Sie sich von diesem Programm. 677 00:32:19,760 --> 00:32:23,300 >> [MEOW SOUND] 678 00:32:23,300 --> 00:32:25,520 >> DAVID MALAN: Das ist, was wir rufen Sie einen Fehler im Scratch. 679 00:32:25,520 --> 00:32:26,770 Er sollte nicht zu halten macht dieses Geräusch. 680 00:32:26,770 --> 00:32:28,340 So wir wir sagen, er solle aufhören. 681 00:32:28,340 --> 00:32:30,435 Alles klar, also jetzt bin ich gehen, um in zu gehen - 682 00:32:30,435 --> 00:32:32,180 Ich lasse MIT wissen. 683 00:32:32,180 --> 00:32:35,160 Wir gehen hier to Forever. 684 00:32:35,160 --> 00:32:37,240 Und jetzt möchte ich etwas tun wieder und wieder. 685 00:32:37,240 --> 00:32:38,760 Ich werde in Kontrolle zu gehen. 686 00:32:38,760 --> 00:32:41,570 >> Und lassen Sie uns sehen, werde ich ziehen meine, wenn die Bedingung gibt. 687 00:32:41,570 --> 00:32:42,850 So, jetzt bemerken die Logik. 688 00:32:42,850 --> 00:32:46,430 Wenn die grüne Flagge angeklickt wird, zu tun etwas für immer, sondern nur das tun, 689 00:32:46,430 --> 00:32:48,890 etwas, wenn diese andere Sache ist wahr. 690 00:32:48,890 --> 00:32:51,480 Ich werde gehen, lass uns sagen, Sensing. 691 00:32:51,480 --> 00:32:54,430 Und ich werde weitermachen und wählen Berühren und legen Sie es dort. 692 00:32:54,430 --> 00:32:55,930 Das ist ein boolescher Ausdruck. 693 00:32:55,930 --> 00:32:57,740 >> Und nun bemerken, die in dieser Dropdown Menü gibt es 694 00:32:57,740 --> 00:32:59,050 einige vordefinierte Werte. 695 00:32:59,050 --> 00:33:00,910 So kann ich sagen, sind Sie berühren die Kante des Bildschirms? 696 00:33:00,910 --> 00:33:03,900 Oder sind Sie mit dem Mauszeiger berühren, Der Pfeil auf dem Bildschirm? 697 00:33:03,900 --> 00:33:04,620 Also werde ich das tun. 698 00:33:04,620 --> 00:33:08,770 Und wenn ja, dann werde ich gehen voran und spielen Sound miauen. 699 00:33:08,770 --> 00:33:11,250 So, jetzt bin Art haben die Anfänge einer Spiel - 700 00:33:11,250 --> 00:33:13,110 ein entzückendes Spiel. 701 00:33:13,110 --> 00:33:14,060 >> [MEOW SOUND] 702 00:33:14,060 --> 00:33:17,250 >> DAVID MALAN: OK, ein entzückendes, buggy Spiel. 703 00:33:17,250 --> 00:33:20,770 Lassen Sie mich zu warten, sagen wir mal, 1 Sekunde da. 704 00:33:20,770 --> 00:33:24,910 Jetzt wieder zu spielen, indem Sie die grüne Flagge. 705 00:33:24,910 --> 00:33:27,860 >> [MEOW SOUND] 706 00:33:27,860 --> 00:33:30,460 >> DAVID MALAN: So jetzt ist es wie eine Katze streicheln. 707 00:33:30,460 --> 00:33:31,850 >> [MEOW SOUND] 708 00:33:31,850 --> 00:33:34,460 >> DAVID MALAN: All right, jetzt diese die ich im Voraus zu machen hat. 709 00:33:34,460 --> 00:33:39,250 Sehr spät, bekommt es eine Art einfach zu dumme Dinge zu tun. 710 00:33:39,250 --> 00:33:40,240 Also lassen Sie mich hier zu gehen. 711 00:33:40,240 --> 00:33:43,720 Lassen Sie uns sagen, das war das Haustier Katze. 712 00:33:43,720 --> 00:33:46,600 Lassen Sie uns nun öffnen Pet nicht die Katze. 713 00:33:46,600 --> 00:33:48,330 Nun, wenn wir spielen diese ein, Sie können erraten, wenn Sie 714 00:33:48,330 --> 00:33:49,650 Blick auf den Bildschirm - 715 00:33:49,650 --> 00:33:51,090 >> [MEOW SOUND] 716 00:33:51,090 --> 00:33:52,170 >> DAVID MALAN: Nun, wenn ich die Katze streicheln 717 00:33:52,170 --> 00:33:55,420 >> [Löwengebrüll] 718 00:33:55,420 --> 00:33:57,260 >> DAVID MALAN: Also eigentlich gar nicht pet die Katze in diesem Fall. 719 00:33:57,260 --> 00:34:01,350 So, jetzt müssen wir nur ein Beispiel für eine Zweig, der in zwei Richtungen los ist. 720 00:34:01,350 --> 00:34:03,130 Nun lassen Sie mich gehen Sie vor und öffnen ein anderes hier. 721 00:34:03,130 --> 00:34:07,120 Dieser, auch unter unserer Quelle Code-Dateien für den Tag. 722 00:34:07,120 --> 00:34:13,199 Also lassen Sie mich zurück in meine Quelle Verzeichnis und gehen in, wählen wir 723 00:34:13,199 --> 00:34:15,610 dieser Kerl hier und sehen was ist anders. 724 00:34:15,610 --> 00:34:17,449 >> Wow, alles in Ordnung, so jetzt ist es immer ein wenig komplizierter. 725 00:34:17,449 --> 00:34:21,300 Und bevor wir sehen, was dieser Kerl tut, lassen Sie uns versuchen zu folgern, aus dem Programm 726 00:34:21,300 --> 00:34:22,219 auf der rechten Seite. 727 00:34:22,219 --> 00:34:25,590 Und jetzt neu klar ermöglicht es uns, haben mehrere Skripte, mehrere 728 00:34:25,590 --> 00:34:29,730 Programme mit einem Sprite zugeordnet, mit einem Charakter, und es scheint, 729 00:34:29,730 --> 00:34:31,760 sie sind beide gehen in Gleichschritt laufen. 730 00:34:31,760 --> 00:34:35,570 Da beide Programme gestartet mit, wenn grüne Flagge klickt, ist dies 731 00:34:35,570 --> 00:34:38,650 anspielend auf einem fortgeschritteneren Thema, mit was einige von euch vielleicht bekannt sein, 732 00:34:38,650 --> 00:34:40,580 so genannte Threads, oder Multi-Threading. 733 00:34:40,580 --> 00:34:44,400 >> Es stellte sich heraus, lange Rede, kurzer Sinn, Computer heute im Wesentlichen tun mehreren 734 00:34:44,400 --> 00:34:45,270 Dinge auf einmal. 735 00:34:45,270 --> 00:34:48,659 Oder sie können eine Sache zu einer Zeit, so zu tun schnell, dass Sie gar nicht merken, dass 736 00:34:48,659 --> 00:34:50,150 es tatsächlich tun, eine Sache zu einer Zeit. 737 00:34:50,150 --> 00:34:53,320 Aber jetzt gehen wir davon aus, dass beide Diese Programme werden in Zukunft an ausführen 738 00:34:53,320 --> 00:34:54,310 zur gleichen Zeit. 739 00:34:54,310 --> 00:34:57,350 Und beachten Sie, beide haben immer Puzzleteile. 740 00:34:57,350 --> 00:35:01,270 Also sind sie beide gehen zu laufen bis ich auf den roten Stoppschild. 741 00:35:01,270 --> 00:35:02,100 >> Also, was werden sie tun? 742 00:35:02,100 --> 00:35:06,030 Auf der linken Seite, ich bin offenbar Deklaration einer Variablen namens stumm geschaltet. 743 00:35:06,030 --> 00:35:09,030 Also habe ich es nicht nennen so etwas wie langweilig wie N. Ich nannte es das gedämpfte 744 00:35:09,030 --> 00:35:10,240 Zeit, um Bedeutung zu vermitteln. 745 00:35:10,240 --> 00:35:11,780 Ich stelle es gleich Null. 746 00:35:11,780 --> 00:35:16,200 Lassen Sie uns dieses als falsch, oder denken Lassen Sie uns dieses als falsch denken. 747 00:35:16,200 --> 00:35:17,490 >> Nun, für immer wie folgt vor. 748 00:35:17,490 --> 00:35:23,280 Wenn der Tastatur Leertaste gedrückt wird, dann, wenn gedämpften gleich Null ist, 749 00:35:23,280 --> 00:35:25,930 ändern Sie dann stumm geschaltet, um gleich ein. 750 00:35:25,930 --> 00:35:27,580 Ansonsten setzen stumm auf Null. 751 00:35:27,580 --> 00:35:30,530 So logisch, obwohl das ist eine ganze Haufen Puzzleteile, die ist 752 00:35:30,530 --> 00:35:33,160 nur sagen, wenn ich die Leertaste drücken, was soll ich tun, die Variable 753 00:35:33,160 --> 00:35:34,750 genannt stumm geschaltet? 754 00:35:34,750 --> 00:35:37,170 Ändern Sie es von Eins auf Null, oder Null auf Eins. 755 00:35:37,170 --> 00:35:37,840 Das ist alles. 756 00:35:37,840 --> 00:35:40,740 So ist es, wie das Einschalten eines Lichtschalters ein-oder ausschalten und die Erinnerung, mit einem 757 00:35:40,740 --> 00:35:42,330 Variable, die ich getan habe. 758 00:35:42,330 --> 00:35:45,990 >> In der Zwischenzeit auf der rechten Seite, in juristischer Hinsicht, was ist der Zweck der 759 00:35:45,990 --> 00:35:47,547 das Skript auf der rechten Seite? 760 00:35:47,547 --> 00:35:48,860 >> STUDENT: Um die Seelöwen Ton spielen. 761 00:35:48,860 --> 00:35:52,500 >> DAVID MALAN: To Sea Lion Sound zu spielen, wenn er nicht ausgeschaltet ist, durch 762 00:35:52,500 --> 00:35:53,480 Natur dieser Variablen. 763 00:35:53,480 --> 00:35:57,360 So teilen wir Staat, so zu sprechen, Austausch von Informationen über diese beiden 764 00:35:57,360 --> 00:36:00,540 Script, weil hier bemerken, sind wir immer wie folgt. 765 00:36:00,540 --> 00:36:04,620 Wenn gedämpften Null ist, so dass, wenn es nicht stumm - wenn gedämpften falsch ist, dann spielen 766 00:36:04,620 --> 00:36:05,980 diese Sea Lion Sound. 767 00:36:05,980 --> 00:36:09,930 Und um sich selbst zu denken, hallo, hallo, hallo, für zwei Sekunden warten Sie einen Moment, und dann 768 00:36:09,930 --> 00:36:11,140 erneut prüfen. 769 00:36:11,140 --> 00:36:15,150 Also, wenn wir gehen jetzt hier auf der linken Seite, , wo dieser Kerl ist, und drücken Sie die 770 00:36:15,150 --> 00:36:16,662 grüne Fahne, 771 00:36:16,662 --> 00:36:30,260 >> [SEA LION SOUND] 772 00:36:30,260 --> 00:36:31,910 >> DAVID MALAN: An welchem ​​Punkt tut bekomme wirklich ärgerlich? 773 00:36:31,910 --> 00:36:33,440 Da dies nur ewig so weitergehen. 774 00:36:33,440 --> 00:36:36,490 Also manchmal, Endlosschleifen, so zu sprechen, sind gewollt. 775 00:36:36,490 --> 00:36:41,140 Aber in diesem Fall so schnell wie I drücken Sie die Leertaste, stoppt er. 776 00:36:41,140 --> 00:36:42,800 Jetzt hat das Programm nicht beenden. 777 00:36:42,800 --> 00:36:44,760 Es läuft immer noch in diesen Schleifen. 778 00:36:44,760 --> 00:36:46,540 Aber wenn ich die Leertaste wieder zu bekommen - 779 00:36:46,540 --> 00:36:47,851 >> [SEA LION SOUND] 780 00:36:47,851 --> 00:36:49,650 >> DAVID MALAN: Er wird zu holen , wo er aufgehört hat. 781 00:36:49,650 --> 00:36:53,240 So gibt es eine Möglichkeit für uns zu tun etwas wieder und wieder aber, dass 782 00:36:53,240 --> 00:36:54,920 Zeit, nur bedingt. 783 00:36:54,920 --> 00:36:58,940 Nun, wenn wir schon in diesem Sinne zu tun Dinge immer und immer wieder, lassen Sie mich 784 00:36:58,940 --> 00:37:01,370 gehen in ein anderes solches Beispiel hier. 785 00:37:01,370 --> 00:37:04,370 Dieses nennen wir Schafe zählen. 786 00:37:04,370 --> 00:37:05,710 >> Und merken, was dieser Kerl tut. 787 00:37:05,710 --> 00:37:08,540 Es ist eigentlich ein bisschen mehr wie die Pseudocode spielten wir mit auf 788 00:37:08,540 --> 00:37:12,230 Mittwoch, wobei er setzt einige Zähler, denken, es wird als n wieder zu 789 00:37:12,230 --> 00:37:14,030 Null, er immer tut das folgende. 790 00:37:14,030 --> 00:37:17,960 Er sagt, der Wert des Zählers für eine zweite, wartet eine Sekunde, und dann 791 00:37:17,960 --> 00:37:19,430 ändert den Zähler um eins. 792 00:37:19,430 --> 00:37:21,570 Und in diesem Zusammenhang, dass nur bedeutet Schritten es. 793 00:37:21,570 --> 00:37:23,250 Und er fügt man es. 794 00:37:23,250 --> 00:37:25,830 Also das ist wörtlich - 795 00:37:25,830 --> 00:37:27,890 es ist nicht ganz das, was wir denken, der als Schafe zählen. 796 00:37:27,890 --> 00:37:33,120 Es macht das Schaf das Zählen, für immer, von Null. 797 00:37:33,120 --> 00:37:35,560 >> So können wir ähnliche Dinge tun gibt, logisch. 798 00:37:35,560 --> 00:37:37,750 Aber jetzt wollen wir versuchen zu reinigen einige dieser Dinge. 799 00:37:37,750 --> 00:37:43,440 Lassen Sie mich gehen jetzt in eine einfache Beispiel, wo unsere Katze nur geht, um 800 00:37:43,440 --> 00:37:44,750 starten Husten. 801 00:37:44,750 --> 00:37:48,830 Na gut, so haben wir hier Husten 0 - 802 00:37:48,830 --> 00:37:50,685 Informatiker beginnen Zählen von 0. 803 00:37:50,685 --> 00:37:53,480 Also diese Katze ist gerade dabei bis dreimal husten. 804 00:37:53,480 --> 00:37:54,890 Und hier ist, wie ich das umgesetzt. 805 00:37:54,890 --> 00:38:00,130 Wenn grüne Flagge angeklickt wird, Husten, warten, husten, warte, husten, warten. 806 00:38:00,130 --> 00:38:02,470 Und ich tat dies nur durch Ziehen und Ablegen Puzzleteile. 807 00:38:02,470 --> 00:38:04,740 Oder wenn Sie anfangen zu basteln mit Scratch, Sie werden sehen, Sie können tatsächlich 808 00:38:04,740 --> 00:38:08,620 doppelte Stücke, so dass Sie tun können Dinge schneller bewegen, ohne 809 00:38:08,620 --> 00:38:10,310 und fallen bis zum Überdruss. 810 00:38:10,310 --> 00:38:12,680 >> Aber wir sind nicht auf dem besten Weg hier. 811 00:38:12,680 --> 00:38:15,210 Denn wie kann ich ihn Husten ein viertes Mal? 812 00:38:15,210 --> 00:38:16,790 Nun, ich könnte von hier hinunter zu sortieren. 813 00:38:16,790 --> 00:38:19,420 Ich konnte zu duplizieren und dann fügen Sie diese in dort. 814 00:38:19,420 --> 00:38:21,740 Wie mache ich ihn husten ein fünftes Mal? 815 00:38:21,740 --> 00:38:23,230 Nun, kopieren und fügen Sie es erneut. 816 00:38:23,230 --> 00:38:24,210 Oder ziehen wieder fallen. 817 00:38:24,210 --> 00:38:26,920 Und sehr schnell startet dieses Programm um wirklich, wirklich redundant, 818 00:38:26,920 --> 00:38:28,880 wirklich lang, aber wirklich uninteressant. 819 00:38:28,880 --> 00:38:30,120 Aber es gibt einen Weg, um diese aufzuräumen. 820 00:38:30,120 --> 00:38:33,680 Was ist der offensichtliche Weg um dies zu reinigen? 821 00:38:33,680 --> 00:38:36,280 >> OK, also könnten wir eigentlich wirklich gehen heraus, und wenn Sie den Raum getroffen 822 00:38:36,280 --> 00:38:37,070 bar, haben ihn husten. 823 00:38:37,070 --> 00:38:40,150 Aber wenn ich nur etwas tun wollen wiederholt, daran erinnern, dass wir haben 824 00:38:40,150 --> 00:38:41,310 gewisse Kontrolle konstruiert. 825 00:38:41,310 --> 00:38:43,800 Lassen Sie mich zu bewegen diese aus der Weise unter Kontrolle zu gehen. 826 00:38:43,800 --> 00:38:47,340 Lassen Sie mich einfach eine Wiederholung, beispielsweise drei mal. 827 00:38:47,340 --> 00:38:49,410 Und jetzt lassen Sie mich einige stehlen dieser Puzzleteile. 828 00:38:49,410 --> 00:38:50,980 Lassen Sie mich dies hier rasten. 829 00:38:50,980 --> 00:38:52,400 Lassen Sie mich diese wegwerfen insgesamt. 830 00:38:52,400 --> 00:38:55,400 >> Und jetzt habe ich eine bessere konzipiertes Programm. 831 00:38:55,400 --> 00:38:55,920 Warum? 832 00:38:55,920 --> 00:39:00,540 Wenn ich will, um die Anzahl der Zeiten ändern sich Diese Katze hustet, alles, was ich 833 00:39:00,540 --> 00:39:05,640 Sie ist eine Variable verändern, oder ein Wert, vielmehr aus drei, vier, oder 834 00:39:05,640 --> 00:39:06,700 fünf oder sechs. 835 00:39:06,700 --> 00:39:09,060 Oder ich könnte etwas tun, bedingt, auch mit dem Raum 836 00:39:09,060 --> 00:39:10,320 bar, wenn ich wollte. 837 00:39:10,320 --> 00:39:11,780 >> Also das ist ein allgemeines Prinzip. 838 00:39:11,780 --> 00:39:14,950 Sobald Sie anfangen, das Kopieren und Einfügen von Code, ob es in Scratch, oder in 839 00:39:14,950 --> 00:39:18,340 C, machst du etwas falsch, wahrscheinlich. 840 00:39:18,340 --> 00:39:21,950 Oder zumindest, wenn man einmal einige überschritten angemessenen Anzahl von Kopien und 841 00:39:21,950 --> 00:39:24,610 Pasten, sind Sie wahrscheinlich etwas falsch machen. 842 00:39:24,610 --> 00:39:26,740 >> Aber wissen Sie was? 843 00:39:26,740 --> 00:39:27,590 Ich weiß nicht wirklich wie diese. 844 00:39:27,590 --> 00:39:28,980 Dies ist nicht das sauberste Design. 845 00:39:28,980 --> 00:39:32,860 Ich wünschte, es gäbe ein Puzzle-Stück namens husten, weil dann würde ich nicht 846 00:39:32,860 --> 00:39:36,100 umsetzen müssen diese selbst, auf die altmodische Weise, durch 847 00:39:36,100 --> 00:39:38,220 nachdem sagen und warten - 848 00:39:38,220 --> 00:39:40,320 was ist, wenn sie nur Husten Puzzleteil. 849 00:39:40,320 --> 00:39:41,330 >> Nun, ich kann eigentlich tun. 850 00:39:41,330 --> 00:39:45,010 Lassen Sie mich unter mehreren Blöcken zu gelangen, klicken Einen Block und jetzt bekomme ich diese 851 00:39:45,010 --> 00:39:45,610 Fenster hier. 852 00:39:45,610 --> 00:39:47,540 Ich werde diese Sache Husten nennen. 853 00:39:47,540 --> 00:39:49,400 Ich werde weitermachen und klicken Sie auf OK. 854 00:39:49,400 --> 00:39:53,150 Und jetzt Ankündigung, bekomme ich einen neuen Ausgangspunkt Stück, das auf der Oberseite gewölbt ist. 855 00:39:53,150 --> 00:39:56,590 Und was ich damit zu tun, ich bin werde nur stehlen diese Blöcke. 856 00:39:56,590 --> 00:39:57,800 Ich werde sie hier setzen. 857 00:39:57,800 --> 00:40:00,490 >> Und nun, mit diesen drei Stücken, ich habe umgesetzt, was ich auf einen Anruf 858 00:40:00,490 --> 00:40:03,530 Funktion oder eine Prozedur oder einige Sie könnten es als eine Methode kennen. 859 00:40:03,530 --> 00:40:05,050 Leichte Unterschiede zwischen den Worten. 860 00:40:05,050 --> 00:40:06,950 Aber jetzt lasst uns einfach nennen dies eine Funktion. 861 00:40:06,950 --> 00:40:08,750 Dies ist nur ein neues Puzzleteil. 862 00:40:08,750 --> 00:40:11,000 Nun ist es wie folgt implementiert. 863 00:40:11,000 --> 00:40:15,170 >> Aber beachten Sie, dass Scratch hat uns ein physische Darstellung dieser ganzen 864 00:40:15,170 --> 00:40:16,570 blockieren hier. 865 00:40:16,570 --> 00:40:21,930 So, jetzt kann ich nur ziehen Sie diese hier, sagen, dreimal wiederholen und 866 00:40:21,930 --> 00:40:26,420 was passieren wird, wenn ich jetzt spielen Dieses Skript ist nur ein Programm 867 00:40:26,420 --> 00:40:27,500 zu einem Zeitpunkt ausgeführt wird. 868 00:40:27,500 --> 00:40:29,880 Es gibt nur einen, wenn grüne Flagge angeklickt. 869 00:40:29,880 --> 00:40:34,010 Aber das lila Block genannt Husten ist effektiv erzählen Scratch, jeder 870 00:40:34,010 --> 00:40:38,160 Mal, wenn Sie sehen, dass Puzzleteil, eigentlich führen Sie diese Schritte, die ich 871 00:40:38,160 --> 00:40:40,420 zufällig manuell implementieren. 872 00:40:40,420 --> 00:40:41,410 >> Damit ist eine Art ordentlich. 873 00:40:41,410 --> 00:40:44,650 Aber jetzt, denke, dass ich beschloss, das tue ich nicht wollen diese Katze nur zu husten. 874 00:40:44,650 --> 00:40:46,660 Ich will, dass er in der Lage sein als auch niesen. 875 00:40:46,660 --> 00:40:48,905 Nun, man könnte, wie gehen wir über Umsetzung niesen? 876 00:40:48,905 --> 00:40:51,310 Nun, ich konnte ziemlich dasselbe tun. 877 00:40:51,310 --> 00:40:52,690 Ich könnte einen anderen Block. 878 00:40:52,690 --> 00:40:55,940 Ich konnte dieses Niesen aufzurufen, klicken Sie auf OK. 879 00:40:55,940 --> 00:40:59,250 >> Dann hier konnte ich eigentlich haben, lassen Sie mich dies duplizieren - 880 00:40:59,250 --> 00:41:02,850 und es ist, wo man fühlen sollte wie du bist wahrscheinlich nicht etwas in 881 00:41:02,850 --> 00:41:03,780 der beste Weg. 882 00:41:03,780 --> 00:41:06,670 Ich könnte so etwas sagen wie: achoo, für eine Sekunde. 883 00:41:06,670 --> 00:41:07,440 Warten Sie eine Sekunde. 884 00:41:07,440 --> 00:41:08,715 Jetzt habe ich einen neuen Block genannt niesen. 885 00:41:08,715 --> 00:41:10,210 Und in der Tat, es ist so. 886 00:41:10,210 --> 00:41:14,010 >> Aber auch dies sollte beginnen zu fühlen - vielleicht nicht in der ersten Woche der Klasse, aber 887 00:41:14,010 --> 00:41:15,730 durch die zweite - nur ein wenig redundant. 888 00:41:15,730 --> 00:41:17,800 Klar, es ist eine gewisse Redundanz hier. 889 00:41:17,800 --> 00:41:22,090 Also lassen Sie mich schlagen, statt, dass wir verfeinern diese Definition wie folgt. 890 00:41:22,090 --> 00:41:24,820 >> Lassen Sie mich gehen bis zu meinem Datei-Menü. 891 00:41:24,820 --> 00:41:26,090 Ich werde mich nicht um diese Version zu speichern. 892 00:41:26,090 --> 00:41:29,080 Ich werde in einem gehen meine vorgefertigten Dateien hier. 893 00:41:29,080 --> 00:41:31,190 Und ich werde weitermachen und eröffnen Husten 2. 894 00:41:31,190 --> 00:41:32,220 Whoops das war Husten 2. 895 00:41:32,220 --> 00:41:36,900 Lassen Sie mich gehen Sie vor und eröffnen Husten 3, was ist das Quellverzeichnis. 896 00:41:36,900 --> 00:41:42,450 Husten 3 und bemerken - oh, ich sagte die Geschichte in der falschen Reihenfolge. 897 00:41:42,450 --> 00:41:45,030 Lassen Sie mich aus dieser Geschichte zu erholen. 898 00:41:45,030 --> 00:41:48,990 >> Die Geschichte wollte ich erzählen Enden mit Husten 4 - 899 00:41:48,990 --> 00:41:50,270 da ist es. 900 00:41:50,270 --> 00:41:54,380 So was, wenn ich stattdessen definieren ein größeres Puzzleteil genannt 901 00:41:54,380 --> 00:41:57,250 definieren, sagen wir mal n Wort. 902 00:41:57,250 --> 00:41:59,930 Niesen ist nur scheinbar, in Scratch, achoo. 903 00:41:59,930 --> 00:42:01,680 So drücken wir es als ein Wort, nur weil das ist die 904 00:42:01,680 --> 00:42:02,750 Einschränkung des Programms. 905 00:42:02,750 --> 00:42:07,860 Und ein Husten ist [COUGH], aber Husten, C-O-U-G-H. Also das ist nur zwei 906 00:42:07,860 --> 00:42:10,820 verschiedene Wörter tun, im Wesentlichen, dasselbe. 907 00:42:10,820 --> 00:42:12,820 >> Also ich kann eigentlich machen eine neuen Block wie diese. 908 00:42:12,820 --> 00:42:14,220 Ich habe nicht diesen Menüpunkt vor. 909 00:42:14,220 --> 00:42:16,960 Aber wenn Sie auf Blockieren Stellen, Sie können wählen, einige Optionen. 910 00:42:16,960 --> 00:42:20,900 Und man kann, dass dieser Satz eigentlich sagen dauert einige Eingänge, sonst 911 00:42:20,900 --> 00:42:24,710 bekannt als Argumente oder Parameter, so Sie können das Verhalten von 912 00:42:24,710 --> 00:42:25,520 Ihr Block. 913 00:42:25,520 --> 00:42:28,780 >> Also, was ich tat, vor einem Augenblick wurde Ich nannte diese block Sagen. 914 00:42:28,780 --> 00:42:30,880 Und dann habe ich gesagt, es dauert Ein String-Input. 915 00:42:30,880 --> 00:42:32,810 Und nun bemerken, die standardmäßig es sagt, String 1. 916 00:42:32,810 --> 00:42:35,440 Ein String ist nur ein Wort, oder eine phrase, für unsere Zwecke. 917 00:42:35,440 --> 00:42:37,810 Aber ich werde einfach einige setzen Platzhaltertext gibt, genau wie in einem 918 00:42:37,810 --> 00:42:40,620 Website, wenn Sie sehen, Benutzername, oder Kennwort ein, und es verschwindet, wenn 919 00:42:40,620 --> 00:42:41,550 Sie beginnen mit der Eingabe. 920 00:42:41,550 --> 00:42:42,720 Das ist alles, was ist. 921 00:42:42,720 --> 00:42:44,590 >> Und jetzt bin ich zu gehen fügen Sie eine Nummer eingegeben. 922 00:42:44,590 --> 00:42:47,180 Und ich werde diese n nennen - aber das ist ziemlich willkürlich. 923 00:42:47,180 --> 00:42:49,510 Und dann nur ein Etikett, um nur machen dieser Block ein wenig mehr Selbstvertrauen 924 00:42:49,510 --> 00:42:50,570 Erläuterungen - 925 00:42:50,570 --> 00:42:53,010 mal, das ist was ich gerade tat. 926 00:42:53,010 --> 00:42:56,540 Und das Endergebnis ist, dass ich ein Block, der wie folgt aussieht. 927 00:42:56,540 --> 00:42:58,880 >> Und nun bemerken, die ich verwende eine Wiederholung Block. 928 00:42:58,880 --> 00:43:03,480 Aber anstatt harte Codierung drei, ich bin Drag & Drop in n gibt, so dass ich 929 00:43:03,480 --> 00:43:05,530 können die Funktion parametrieren. 930 00:43:05,530 --> 00:43:08,590 Ich kann diese Funktion etwas tun eine unterschiedliche Anzahl von Malen basierend auf 931 00:43:08,590 --> 00:43:09,410 dieser Wert. 932 00:43:09,410 --> 00:43:14,270 >> Und bemerken, die sagen, das ist, was ich tat hier, wenn ich Wort ziehen, kann ich sagen, nicht ein 933 00:43:14,270 --> 00:43:17,860 hart codiert Wort, aber was auch immer wird in eine Sekunde vergangen. 934 00:43:17,860 --> 00:43:20,200 Inzwischen, wie kann ich neu implementieren Husten? 935 00:43:20,200 --> 00:43:26,980 Ich zu definieren, statt wie Husten sagen Husten n mal. 936 00:43:26,980 --> 00:43:30,480 >> Also kurz gesagt, ich bin durch diese gehen schnell, aber die Grundidee ist, sobald 937 00:43:30,480 --> 00:43:32,750 wie Sie sehen, beginnen in Ihrem Programm dass, warten Sie eine Minute, ich habe getan 938 00:43:32,750 --> 00:43:36,610 etwas ganz, wie dies vor, kann ich ausklammern einige gemeinsame 939 00:43:36,610 --> 00:43:37,090 Funktionalität? 940 00:43:37,090 --> 00:43:41,090 Kann ich zu zersetzen, was ich tue in einigen grundlegenden Ideen? 941 00:43:41,090 --> 00:43:42,070 Das ist, was wir hier tun. 942 00:43:42,070 --> 00:43:44,830 Und ich habe diese Dinge gestapelt, visuell, Auf einem anderen 943 00:43:44,830 --> 00:43:47,710 denn es ist Beweis für diese Idee von beginnend mit Binär-, ASCII werde, 944 00:43:47,710 --> 00:43:51,530 Erzeugen grafischer Programme, irgendwie Schichtung immer komplexer Ideen 945 00:43:51,530 --> 00:43:52,570 aufeinander. 946 00:43:52,570 --> 00:43:53,730 >> Gleiche Idee hier. 947 00:43:53,730 --> 00:43:56,870 Ich begann von Scratch, Umsetzung Husten, dann Husten ist realisiert 948 00:43:56,870 --> 00:43:58,540 wirklich nur etwas zu sagen. 949 00:43:58,540 --> 00:44:01,630 Also lassen Sie mich stattdessen Umsetzung der Vorstellung, etwas zu sagen. 950 00:44:01,630 --> 00:44:05,200 Und oben auf, dass kann ich umsetzen achoo oder Husten? 951 00:44:05,200 --> 00:44:07,990 Und wir könnten mehr tun, wie Varianten still. 952 00:44:07,990 --> 00:44:10,400 >> Also von diesem Grundsatz, können wir anfangen zu tun 953 00:44:10,400 --> 00:44:12,180 zunehmend komplexer Programme. 954 00:44:12,180 --> 00:44:14,100 Lassen Sie mich öffnen diese. 955 00:44:14,100 --> 00:44:18,020 Wir können tatsächlich mehrere Sprites Interaktion auf dem Bildschirm auf einmal. 956 00:44:18,020 --> 00:44:23,470 Wenn ich in mein Quellverzeichnis und packe einen sogenannten Threads, daran erinnern, dass ein 957 00:44:23,470 --> 00:44:26,920 Thread ist wirklich nur die Fähigkeit von zwei Skripte nebeneinander laufen 958 00:44:26,920 --> 00:44:28,350 Seite zur gleichen Zeit. 959 00:44:28,350 --> 00:44:34,490 >> Beachten Sie jetzt haben sowohl einen Vogel und Sprite eine Katze Sprite, die beide 960 00:44:34,490 --> 00:44:35,270 eigene Skripte. 961 00:44:35,270 --> 00:44:37,690 Also Kündigung, wenn ich auf die Katze, bekomme ich diese Skripte. 962 00:44:37,690 --> 00:44:39,830 Wenn ich auf den Vogel, Ich bekomme diese Skripte. 963 00:44:39,830 --> 00:44:42,070 Also jeder dieser Jungs hat seine eigenen Programme. 964 00:44:42,070 --> 00:44:46,680 Wenn ich jetzt auf die grüne Fahne, bemerken dass das, was dieses Programm tut, ist 965 00:44:46,680 --> 00:44:54,090 haben die Katze, unglaublich langsam, jagen den Vogel. 966 00:44:54,090 --> 00:44:57,120 Aber die Katze hat den Vorteil, dass wurde so programmiert 967 00:44:57,120 --> 00:45:00,540 dass, egal wo der Vogel wird, geht die Katze auf ihn zu. 968 00:45:00,540 --> 00:45:02,150 >> Wir können das Spiel viel schneller spielen. 969 00:45:02,150 --> 00:45:07,750 Also, wenn ich auf die Katze bin, merke, dass ich bin mit, sagen wir, bewegen einen Schritte. 970 00:45:07,750 --> 00:45:11,680 Lasst uns ihn bewegen fünf Schritte bei eine Zeit, so dass fünf Punkte auf einmal. 971 00:45:11,680 --> 00:45:13,580 Lassen Sie mich auf Wiedergabe. 972 00:45:13,580 --> 00:45:14,490 >> [Löwengebrüll] 973 00:45:14,490 --> 00:45:17,170 >> DAVID MALAN: All right, jetzt können wir wirklich geben die Katze im Vorteil. 974 00:45:17,170 --> 00:45:18,600 10 Stufen auf einmal. 975 00:45:18,600 --> 00:45:20,120 >> [Löwengebrüll] 976 00:45:20,120 --> 00:45:22,770 >> DAVID MALAN: All right, so sehr schnell, wird es einen kleinen Vorteil 977 00:45:22,770 --> 00:45:23,280 für die Katze. 978 00:45:23,280 --> 00:45:25,310 Aber ich werde meine Hand winken einige der Details. 979 00:45:25,310 --> 00:45:28,240 Aber der Grund, dass dieser Pfad Beginn ein wenig jedes Mal anders 980 00:45:28,240 --> 00:45:29,700 ist, dass ich dabei ein wenig Zufälligkeit. 981 00:45:29,700 --> 00:45:33,700 Ich bin eigentlich zeigt die Katze in ein andere Richtung, wo ich basierend 982 00:45:33,700 --> 00:45:38,710 will, dass er so beginnen, dass jedes Mal das Spiel, oder die Animation, ist ein 983 00:45:38,710 --> 00:45:39,760 bisschen anders. 984 00:45:39,760 --> 00:45:41,950 >> Nun, lassen Sie mich Ihnen ein anderen hier zu bauen. 985 00:45:41,950 --> 00:45:43,860 Also in diesem Fall hatten wir Funktionen. 986 00:45:43,860 --> 00:45:46,950 Es gibt auch wird ein Puzzleteil sein bekannt als ein Array oder eine Liste, 987 00:45:46,950 --> 00:45:50,980 das ermöglicht Ihnen das Speichern mehrerer Werte in einer Variablen. 988 00:45:50,980 --> 00:45:53,410 Wir sahen Fäden, und jetzt es gibt Ereignisse. 989 00:45:53,410 --> 00:45:56,330 >> Also hier ist ein Ereignis mit diese beiden Jungs hier. 990 00:45:56,330 --> 00:46:02,490 Und wenn ich öffnen Sie die Datei namens Events aus heutiger Beispiele werden wir 991 00:46:02,490 --> 00:46:06,940 sehen ein Programm, das sieht ein wenig wie diese. 992 00:46:06,940 --> 00:46:09,630 Und nun bemerken diesen Kerl - 993 00:46:09,630 --> 00:46:11,620 so merke ich, haben die blaue Muppet geklickt - 994 00:46:11,620 --> 00:46:12,990 er nur, dass die folgenden. 995 00:46:12,990 --> 00:46:15,540 Er hat nicht einer von denen, grüne Flagge Puzzleteile. 996 00:46:15,540 --> 00:46:18,620 Er hat, wenn ich ein Ereignis empfangen - 997 00:46:18,620 --> 00:46:19,970 so einige beliebige Wort. 998 00:46:19,970 --> 00:46:21,590 Ich habe gerade getippt Veranstaltung gibt - 999 00:46:21,590 --> 00:46:23,740 er wird sagen, Polo, für zwei Sekunden. 1000 00:46:23,740 --> 00:46:25,800 >> Also diejenigen, die vertraut sind Mit diesem Spiel vielleicht wissen 1001 00:46:25,800 --> 00:46:26,460 wohin das führt. 1002 00:46:26,460 --> 00:46:29,800 Wenn ich jetzt auf dem orange Muppet klicken sein Programm tut dies. 1003 00:46:29,800 --> 00:46:35,020 Immer, wenn die Tastatur Leertaste unterdrückt, wird er sagen, Marco, 1004 00:46:35,020 --> 00:46:36,580 zwei Sekunden lang auf dem Bildschirm. 1005 00:46:36,580 --> 00:46:39,590 Aber er ist auch werde diesen Züchter verwenden blockieren bekannt als Broadcast. 1006 00:46:39,590 --> 00:46:42,270 Er wird ausgestrahlt Zitat unquote, "event." 1007 00:46:42,270 --> 00:46:47,540 >> Inzwischen ist der blaue Kerl, Rückruf, Hören Angebotsanfrage unquote, "event." 1008 00:46:47,540 --> 00:46:50,760 Also irgendwie, jetzt, können wir zwei Sprites interagieren. 1009 00:46:50,760 --> 00:46:53,790 Und wenn wir auf Web-Programmierung zu bekommen, später in dem Begriff, ähnlich wird diese 1010 00:46:53,790 --> 00:46:58,320 von Vorteil sein, Ihre Website etwas tun, in Reaktion auf, für 1011 00:46:58,320 --> 00:47:00,130 beispielsweise ein Klick auf der Tastatur. 1012 00:47:00,130 --> 00:47:02,120 >> Also lassen Sie mich gehen Sie vor und drücken Sie die Leertaste. 1013 00:47:02,120 --> 00:47:04,020 Orange Kerl sagt Marco. 1014 00:47:04,020 --> 00:47:05,840 Blau Kerl sagt Polo. 1015 00:47:05,840 --> 00:47:10,780 Wenn ich es wieder tun Orange Kerl sagt Marco, sagt blaue Kerl Polo. 1016 00:47:10,780 --> 00:47:14,130 Also lassen Sie uns noch einen Schritt weiter zu gehen. 1017 00:47:14,130 --> 00:47:18,790 Dieses Mal werden wir gehen, wahrscheinlich, nur noch ein paar Minuten hier. 1018 00:47:18,790 --> 00:47:19,904 Haben wir - 1019 00:47:19,904 --> 00:47:22,380 Schreibtischlampe, kommen auf Sie. 1020 00:47:22,380 --> 00:47:24,500 Sie sind direkt am Ende. 1021 00:47:24,500 --> 00:47:25,740 OK, können Sie beide kommen. 1022 00:47:25,740 --> 00:47:26,990 Wir haben Schreibtischlampen für jedermann. 1023 00:47:26,990 --> 00:47:28,360 Komm. 1024 00:47:28,360 --> 00:47:30,090 Ich weiß nicht, ob wir mithalten können diese lächerliche gag up 1025 00:47:30,090 --> 00:47:32,035 alle Semester, though. 1026 00:47:32,035 --> 00:47:33,530 Alles klar, komm nach unten. 1027 00:47:33,530 --> 00:47:40,260 >> Und in der Zwischenzeit haben wir die folgenden Beispiele zu ziehen, nur um 1028 00:47:40,260 --> 00:47:45,370 beschleunigen Dinge nun, so dass wir eine Manifestation von einem anderen 1029 00:47:45,370 --> 00:47:48,360 Vorgänger von Ihnen mit Hilfe der gleichen Grundbausteine. 1030 00:47:48,360 --> 00:47:48,975 Wie ist dein Name? 1031 00:47:48,975 --> 00:47:49,240 >> JOHN: John. 1032 00:47:49,240 --> 00:47:49,770 >> DAVID MALAN: John. 1033 00:47:49,770 --> 00:47:50,400 Schön, dass Sie mich. 1034 00:47:50,400 --> 00:47:50,650 Und? 1035 00:47:50,650 --> 00:47:51,250 >> SETZ: Setz. 1036 00:47:51,250 --> 00:47:53,130 >> DAVID MALAN: Setz, nett zu mir Sie. 1037 00:47:53,130 --> 00:47:54,820 John, wenn Sie möchten, kommen bis erste, das ist eine alte 1038 00:47:54,820 --> 00:47:55,910 Schule Spiel namens Frogger. 1039 00:47:55,910 --> 00:47:57,530 Verwenden Sie die Tastatur für diese als gut. 1040 00:47:57,530 --> 00:48:02,425 Und das Ziel ist es, zu vermitteln die Straße und Wasser. 1041 00:48:02,425 --> 00:48:12,700 >> [FROGGER Musik und Sound gespielt] 1042 00:48:12,700 --> 00:48:14,970 >> DAVID MALAN: Tut mir leid, keine Schreibtischlampe für Sie heute. 1043 00:48:14,970 --> 00:48:19,110 Alles klar, Setz, würden Sie gerne kommen auf bis? 1044 00:48:19,110 --> 00:48:20,890 Alles klar, lasst es wieder tun. 1045 00:48:20,890 --> 00:48:21,430 >> SETZ: Muss ich die Pfeile? 1046 00:48:21,430 --> 00:48:22,360 >> DAVID MALAN: Nur die Pfeiltasten. 1047 00:48:22,360 --> 00:48:23,624 Rauf, runter, links, rechts. 1048 00:48:23,624 --> 00:48:35,700 >> [FROGGER Musik und Sound gespielt] 1049 00:48:35,700 --> 00:48:37,880 >> DAVID MALAN: Wir nennen sie Trostpreise heute 1050 00:48:37,880 --> 00:48:38,950 dann, sehr gut gemacht. 1051 00:48:38,950 --> 00:48:40,690 Hier für euch beide, John und Setz. 1052 00:48:40,690 --> 00:48:41,940 Herzlichen Glückwunsch, alles in Ordnung. 1053 00:48:41,940 --> 00:48:46,720 1054 00:48:46,720 --> 00:48:50,620 Also noch einmal, wie dieses Spiel spielt, darüber nachzudenken, was ist los? 1055 00:48:50,620 --> 00:48:52,060 >> Man gibt es eindeutig viel Bewegung. 1056 00:48:52,060 --> 00:48:55,220 Aber wir haben, wie mit der Katze und dem gesehen Vogel beispielsweise, wie man das machen 1057 00:48:55,220 --> 00:48:58,350 Illusion von Bewegung durch Verschieben nur einige Anzahl von Pixeln wieder. 1058 00:48:58,350 --> 00:49:00,280 Und wenn Sie einen Block für immer, Sie könnten diese 1059 00:49:00,280 --> 00:49:02,120 Autos tun dies immer. 1060 00:49:02,120 --> 00:49:03,720 Wir haben die Fähigkeit, haben einige Zufälligkeit. 1061 00:49:03,720 --> 00:49:06,310 Also dieses Spiel muss nicht sein genau das gleiche jeder Zeit. 1062 00:49:06,310 --> 00:49:09,940 Diese Protokolle, die Autos, kann beim Windows Start leicht unterschiedlichen Zeiten, so daß die 1063 00:49:09,940 --> 00:49:12,690 Spiel selbst ist interessanter mit jedem Spiel. 1064 00:49:12,690 --> 00:49:15,320 >> Und in der Zwischenzeit haben wir die Möglichkeit gesehen auf der Leertaste hört. 1065 00:49:15,320 --> 00:49:18,830 Aber klar, in Scratch, können Sie auch anhören oben, unten, links, rechts, und 1066 00:49:18,830 --> 00:49:20,760 wirklich eine beliebige Taste auf der Tastatur. 1067 00:49:20,760 --> 00:49:22,200 Und Sie können auch einige andere Dinge. 1068 00:49:22,200 --> 00:49:24,660 Lassen Sie mich gehen Sie vor und zurück auf der Web-Version. 1069 00:49:24,660 --> 00:49:30,280 >> Lassen Sie mich in unserer Sammlung gehen Beispiele hier. 1070 00:49:30,280 --> 00:49:36,120 Und unter Mein Studio, Video, Im Wesentlichen ist ein Ordner auf 1071 00:49:36,120 --> 00:49:37,780 scratch.mit.edu. 1072 00:49:37,780 --> 00:49:39,710 Wir haben die Web-Versionen all dieser Projekte. 1073 00:49:39,710 --> 00:49:42,530 Und lassen Sie uns sehen, wenn ich kann mein Computer, hier zusammenzuarbeiten. 1074 00:49:42,530 --> 00:49:47,180 Dies wird von einem unserer Freunde geschrieben am MIT, genannt Bewegen Sie den Butterfly. 1075 00:49:47,180 --> 00:49:50,250 >> Und sobald diese eröffnet, ist dies gehen, um tatsächlich mehr 1076 00:49:50,250 --> 00:49:51,430 Computer-Hardware. 1077 00:49:51,430 --> 00:49:53,325 Scratch geschieht umgesetzt werden mit Flash. 1078 00:49:53,325 --> 00:49:56,250 Flash kann, um Ihre Webcam zu sprechen, wenn Sie eine haben. 1079 00:49:56,250 --> 00:50:00,210 Also, wenn ich voran gehen und das Vollbild Hier klicken Sie auf die grüne Fahne, Bekanntmachung 1080 00:50:00,210 --> 00:50:02,530 dass Flash die Sicherheit Nachricht sagt, wollen Sie 1081 00:50:02,530 --> 00:50:04,210 erlauben, meine Webcam benutzen? 1082 00:50:04,210 --> 00:50:05,510 >> Normalerweise sollten Sie wahrscheinlich sagen Verweigern. 1083 00:50:05,510 --> 00:50:07,180 Aber in diesem Fall, werden wir sagen können. 1084 00:50:07,180 --> 00:50:10,430 Dann werde ich sagen, Chrome damit diese als gut. 1085 00:50:10,430 --> 00:50:15,010 Und jetzt, in einem Moment, Sie sehen mich, ja, mich. 1086 00:50:15,010 --> 00:50:18,154 Und wenn meine Hand geht nach oben - 1087 00:50:18,154 --> 00:50:20,390 Ich muss nicht bewegen Kopf gleichzeitig. 1088 00:50:20,390 --> 00:50:21,740 Es gibt auch eine Reflexion auf dem Bildschirm. 1089 00:50:21,740 --> 00:50:23,480 Komm, gehen wir es - 1090 00:50:23,480 --> 00:50:27,616 Sie können es auf dem Bildschirm zu bewegen, weil es gibt auch Puzzleteile - oh, Sie 1091 00:50:27,616 --> 00:50:31,640 wissen, was es ist, ist es, weil Sie auch finden Sie auf der Leinwand hinter mir. 1092 00:50:31,640 --> 00:50:33,870 Also haben wir ein wenig infinite was dort vor sich geht. 1093 00:50:33,870 --> 00:50:36,470 >> Alles klar, also ich spiele hier unten. 1094 00:50:36,470 --> 00:50:37,220 Dort gehen wir. 1095 00:50:37,220 --> 00:50:41,310 So gibt es auch ein Puzzleteil, dass sagt, wenn Sie unter Bewegung sehen 1096 00:50:41,310 --> 00:50:45,470 eines der Sprites, können Sie es gehen nach oben, unten, links, rechts oder dergleichen. 1097 00:50:45,470 --> 00:50:48,950 So haben wir ein wenig der virtuellen Realität geht auch hier, die alle innerhalb der 1098 00:50:48,950 --> 00:50:52,570 Grenzen meinem Browser, nur hier mit meiner Webcam. 1099 00:50:52,570 --> 00:50:53,980 Also, was ist dann am Horizont. 1100 00:50:53,980 --> 00:50:58,350 Das erste Problem, Satz, wie Sie sehen, oder die Website später online gehen 1101 00:50:58,350 --> 00:51:01,100 heute Abend um cs50.net, ist ziemlich viel los zu sein, mit offenem Ende. 1102 00:51:01,100 --> 00:51:04,410 Und Umsetzung einer Scratch-Projekt für Sie von Interesse, ein Spiel, einen 1103 00:51:04,410 --> 00:51:08,350 Interaktion, etwas Künstlerisches und fordern Sie sich eine beliebige Anzahl verwenden 1104 00:51:08,350 --> 00:51:09,660 dieser Puzzleteile. 1105 00:51:09,660 --> 00:51:11,580 Und es kann entweder interaktiv sein auf diese Weise. 1106 00:51:11,580 --> 00:51:15,470 Oder es kann etwas mehr bewusst sein gemacht, um eine Geschichte zu erzählen. 1107 00:51:15,470 --> 00:51:19,200 >> Und in der Tat, das ist, wo wir dann am Ende aus heute, mit einem letzten Beispiel. 1108 00:51:19,200 --> 00:51:21,290 Lassen Sie mich in Scratch lokal gehen. 1109 00:51:21,290 --> 00:51:25,300 Lassen Sie mich gehen, und öffnen Sie diese und spielen ein letztes Programm durch eine schriftliche 1110 00:51:25,300 --> 00:51:29,795 Ihrer Vorgänger, nämlich dass man hier. 1111 00:51:29,795 --> 00:51:32,960 1112 00:51:32,960 --> 00:51:35,938 Gut, die Lautstärke zu erhöhen für diese ein. 1113 00:51:35,938 --> 00:52:53,770 >> [Musik spielt] 1114 00:52:53,770 --> 00:52:57,255 >> SPRECHER: Bei der nächsten CS50, David lädt ein Freiwilliger auf der Bühne. 1115 00:52:57,255 --> 00:52:58,636 >> DAVID MALAN: Für diese Demonstration werden wir einen Freiwilligen brauchen. 1116 00:52:58,636 --> 00:53:01,050 Möchten Sie kommen auf Sie? 1117 00:53:01,050 --> 00:53:02,300 Wie ist dein Name? 1118 00:53:02,300 --> 00:53:05,320 1119 00:53:05,320 --> 00:53:06,570 Umzug auf. 1120 00:53:06,570 --> 00:53:08,394