1 00:00:08,483 --> 00:00:11,477 [Powered by Google Translate] [ROCK MUSIC] 2 00:00:32,435 --> 00:00:35,429 [MUSIC - "Happy Together" korytnačky] 3 00:01:27,330 --> 00:01:30,170 DAVID Malan: Dnes, začneme náš prieskum 4 00:01:30,170 --> 00:01:32,710 základy počítačovej vedy a našej zavedenie, 5 00:01:32,710 --> 00:01:35,070 Teraz, na umenie programovanie, z ktorých je to 6 00:01:35,070 --> 00:01:36,260 len jeden príklad. 7 00:01:36,260 --> 00:01:39,600 Ale v rovnakom duchu riešenie problému, viem, že 8 00:01:39,600 --> 00:01:42,080 CS50 tradičné Puzzle deň je zajtra. 9 00:01:42,080 --> 00:01:45,190 Ak ste doteraz RSVPed pre túto akciu, môžete prejsť na 10 00:01:45,190 --> 00:01:47,510 cs50.net/rsvp. 11 00:01:47,510 --> 00:01:50,940 Môžete si priniesť tímy dvoch alebo tri alebo štyri. 12 00:01:50,940 --> 00:01:53,080 Tie budú mať za úlohu s problémami, ako je ten, ktorý videl 13 00:01:53,080 --> 00:01:54,190 tam na začiatku. 14 00:01:54,190 --> 00:01:57,000 Všetky nové problémy v tomto roku, ak ste si vzala vlani, a vy 15 00:01:57,000 --> 00:01:59,680 bude mať šancu potom vyhrať nejaké rozprávkové ceny. 16 00:01:59,680 --> 00:02:02,750 Medzi nimi, Wii a niektoré darčekové poukážky a podobné výrobky, 17 00:02:02,750 --> 00:02:05,650 to všetko pri visí von s CS50 študentov a spolužiakov 18 00:02:05,650 --> 00:02:07,720 a pizza a Facebook. 19 00:02:07,720 --> 00:02:10,430 Takže o tom až zajtra, ak by ste chceli. 20 00:02:10,430 --> 00:02:13,330 >> To je teda CS50, pre tých z vás, k nám na 21 00:02:13,330 --> 00:02:14,510 prvýkrát. 22 00:02:14,510 --> 00:02:18,030 A viem, že tento kurz je zvlášť určená dostať 23 00:02:18,030 --> 00:02:22,605 si prostredníctvom tohto predmetu k jeho konečnému, na ktorom mieste ťa 24 00:02:22,605 --> 00:02:24,270 budú mať nielen pochopenie týchto 25 00:02:24,270 --> 00:02:26,450 základy počítačovej vedy, ale budete mať 26 00:02:26,450 --> 00:02:29,120 Tento veľmi praktické zručnosti súbor, ktorý potom môžete vziať späť do 27 00:02:29,120 --> 00:02:31,370 vlastné oddelenie, či už je to technické vedy, 28 00:02:31,370 --> 00:02:33,570 aplikovaná matematika, fyzikálne vedy, prírodné 29 00:02:33,570 --> 00:02:34,780 vedy, alebo podobne. 30 00:02:34,780 --> 00:02:37,030 Naozaj, čo je tak vzrušujúce o počítačovej vede týchto 31 00:02:37,030 --> 00:02:39,900 dni je to, že je tak použiteľná pre 32 00:02:39,900 --> 00:02:40,990 všetky druhy polí. 33 00:02:40,990 --> 00:02:46,210 A aj keď dnes, budeme len poškrabať povrch 34 00:02:46,210 --> 00:02:49,020 veľmi tradičné programovací jazyk známy ako C, zídeme sa 35 00:02:49,020 --> 00:02:51,040 miesto sa pozrieť na niečo, čo nazýva Scratch, niečo s 36 00:02:51,040 --> 00:02:53,420 ktoré táto cookie love story bol vykonaný jeden z vašich 37 00:02:53,420 --> 00:02:57,020 predchodcovia v minulých rokoch, rozprávať príbehy, vytvárať hry, 38 00:02:57,020 --> 00:03:00,060 vytvoriť interaktívne umenie, a skutočne začať baliť OUR 39 00:03:00,060 --> 00:03:02,240 myseľ okolo niektoré zo základných pojmov, ktoré 40 00:03:02,240 --> 00:03:05,390 základom programovania, ale v kontexte, ako uvidíte, že je to 41 00:03:05,390 --> 00:03:09,140 oveľa menej desivé, že je oveľa menej tajomný, ako uvidíte 42 00:03:09,140 --> 00:03:10,140 onedlho. 43 00:03:10,140 --> 00:03:12,410 A uvedomiť si, taky, pre tých z vás, len sa k nám tento 44 00:03:12,410 --> 00:03:16,170 semester, vety, na ktorých sme skončili stredajšie prednášku, 45 00:03:16,170 --> 00:03:20,260 to nie je tak dôležité, kde ste skončili vo vzťahu k vášmu 46 00:03:20,260 --> 00:03:22,950 spolužiaci v tejto triede, ale ak vy, od semester konca 47 00:03:22,950 --> 00:03:27,190 v týždni 11, skončiť vo vzťahu k sebe priamo v tento deň. 48 00:03:27,190 --> 00:03:32,000 >> Takže bez ďalších okolkov, je to tiež stojí za zmienku, že 49 00:03:32,000 --> 00:03:34,450 tie menej pohodlné, sú niekde medzi, sú 50 00:03:34,450 --> 00:03:36,825 aj tým, že návrh tohto kurzu, nie je na ujmu 51 00:03:36,825 --> 00:03:38,760 naproti sebe tie pohodlnejšie 52 00:03:38,760 --> 00:03:39,920 prichádza do tejto triedy. 53 00:03:39,920 --> 00:03:41,810 Ako uvidíte v priebehu najbližších týždňoch, máme rôzne 54 00:03:41,810 --> 00:03:44,600 dráhy pre rôznorodé zadnej pozadí, profily pre tých, 55 00:03:44,600 --> 00:03:46,500 menej pohodlné, oveľa pohodlnejšie, ty niekde 56 00:03:46,500 --> 00:03:47,250 medzi. 57 00:03:47,250 --> 00:03:49,520 Ako uvidíte tento víkend a na budúci týždeň v dvoch variantoch 58 00:03:49,520 --> 00:03:52,410 väčšina problémových sady v oboch štandardným a hacker vydania tak 59 00:03:52,410 --> 00:03:55,390 že všetci môžu self-vybrať na ceste, s ktorou 60 00:03:55,390 --> 00:03:56,615 sú najviac pohodlné. 61 00:03:56,615 --> 00:03:58,770 >> Takže dnes sme sa ponoriť do tohto programovania 62 00:03:58,770 --> 00:04:00,060 jazyk volal Scratch. 63 00:04:00,060 --> 00:04:02,250 Je to grafický programovací jazyk, a napriek tomu má 64 00:04:02,250 --> 00:04:04,500 Rovnaké vlastnosti niektorých jazykoch vyššej úrovne budeme 65 00:04:04,500 --> 00:04:07,050 preskúmať neskôr v semestri, medzi nimi C a 66 00:04:07,050 --> 00:04:08,670 JavaScript a PHP. 67 00:04:08,670 --> 00:04:11,890 Ale bude to, ktoré nám umožní vyhnúť sa niektorým z rozptyľovanie 68 00:04:11,890 --> 00:04:14,890 skoro na syntaxe, veci ako bodkočiarky, zátvorky, 69 00:04:14,890 --> 00:04:17,720 a ďalšie tajomné detaily, ktoré na prvý pohľad, jednoducho nie sú 70 00:04:17,720 --> 00:04:19,916 vôbec intelektuálne zaujímavé a majú tendenciu byť vo 71 00:04:19,916 --> 00:04:22,310 cesta z nejakého základného porozumenia. 72 00:04:22,310 --> 00:04:24,870 Pokiaľ ide o teraz nosnej konštrukcie pred sebou, si uvedomil, 73 00:04:24,870 --> 00:04:27,570 nástroj, CS50 Diskusia, ktorý bude prepojený na kurz je 74 00:04:27,570 --> 00:04:30,320 webové stránky ešte dnes, je on-line diskusné fórum v 75 00:04:30,320 --> 00:04:32,480 ktoré budete môcť klásť otázky navzájom a 76 00:04:32,480 --> 00:04:35,020 zamestnancov, a je to tiež nástroj, ako uvidíme budúci týždeň, 77 00:04:35,020 --> 00:04:37,240 že budeme používať pomerne integratedly v 78 00:04:37,240 --> 00:04:38,780 úradné hodiny tiež. 79 00:04:38,780 --> 00:04:41,670 Naozaj, úradné hodiny začína v pondelok, a úprimne povedané, prvá 80 00:04:41,670 --> 00:04:43,930 týždeň úradných hodín je pomerne nízka kľúč. 81 00:04:43,930 --> 00:04:46,820 >> Ja si nemyslím, že zistíte Scratch všetko neprístupná. 82 00:04:46,820 --> 00:04:48,930 Je to skôr intuitívne, ako uvidíme, a tak čo 83 00:04:48,930 --> 00:04:51,380 budeme používať pre dnes je aby časť 84 00:04:51,380 --> 00:04:53,990 základné myšlienky, že bude, potom pretrvávajú po celú dobu 85 00:04:53,990 --> 00:04:54,900 Zvyšok semestra. 86 00:04:54,900 --> 00:04:57,980 Ale od pondelka v 20:00 prostredníctvom 23:00 bude 87 00:04:57,980 --> 00:05:01,530 úradné hodiny v Annenberg cez mozgu prestávke. 88 00:05:01,530 --> 00:05:04,490 Krájanie dva budú začínať dnes večer, takže niekedy to 89 00:05:04,490 --> 00:05:07,260 víkend, prejdite na cs50.net/section, a budete 90 00:05:07,260 --> 00:05:08,530 sa položil niekoľko otázok. 91 00:05:08,530 --> 00:05:10,290 Medzi nimi, ako by ste popísať vaše 92 00:05:10,290 --> 00:05:12,040 úroveň pohodlia ako dnes? 93 00:05:12,040 --> 00:05:14,450 Nie je ťažké, rýchle pravidlo, kto je v ktorej vedro. 94 00:05:14,450 --> 00:05:17,170 Je to len jedna z tých vecí, ktoré už asi viete, ak ste 95 00:05:17,170 --> 00:05:20,280 patrí k tým menej pohodlný alebo inak. 96 00:05:20,280 --> 00:05:21,350 >> A teraz, návody. 97 00:05:21,350 --> 00:05:24,020 Problém set špecifikácie pre tento týždeň, a to ako štandardné 98 00:05:24,020 --> 00:05:28,560 a hacker vydania podobne, je on-line na cs50.net už teraz. 99 00:05:28,560 --> 00:05:31,500 A uvidíte, že prvý z týchto vydaniach, 100 00:05:31,500 --> 00:05:33,940 Standard Edition každý týždeň, je sprevádzaný niečím, čo 101 00:05:33,940 --> 00:05:36,550 volať kód návod, zasadnutie viedol o jedného z 102 00:05:36,550 --> 00:05:39,100 Samozrejme je výučba chlapi, aby vás, poskytujú 103 00:05:39,100 --> 00:05:42,290 tipy na, a vám sa ustanovujú osobitné cestu, pokiaľ ide 104 00:05:42,290 --> 00:05:44,150 začatím týchto problematických sady. 105 00:05:44,150 --> 00:05:46,790 Takže s každou z týchto problémov zapadne, ak ste niekedy chcel 106 00:05:46,790 --> 00:05:50,250 pre seba, kde mám začať, začnete s nimi 107 00:05:50,250 --> 00:05:50,890 návody. 108 00:05:50,890 --> 00:05:53,450 A v skutočnosti, dovoľte mi predstaviť Zamyla Chan, tento 109 00:05:53,450 --> 00:05:55,870 Tohtoročné učenie chlapík, ktorý bude prebiehať každý 110 00:05:55,870 --> 00:05:56,910 jeden z týchto návody. 111 00:05:56,910 --> 00:05:57,961 Zamyla? 112 00:05:57,961 --> 00:06:03,370 >> [APPLAUSE] 113 00:06:03,370 --> 00:06:03,975 ZAMYLA CHAN: Oh, ahoj, všetci. 114 00:06:03,975 --> 00:06:05,130 Moje meno je Zamyla. 115 00:06:05,130 --> 00:06:08,250 Som junior študuje inžinierstvo v Winthrop dome. 116 00:06:08,250 --> 00:06:10,890 Ale snažím a hodí sa do čo najviac predmetov počítačovej vedy ako ja 117 00:06:10,890 --> 00:06:13,350 môžu, čo je dôvod, prečo som naozaj nadšený, že sa vedie tento 118 00:06:13,350 --> 00:06:14,590 Tohtoročné návody. 119 00:06:14,590 --> 00:06:16,950 Priechody, pre mňa, bolo podstatnou súčasťou môjho CS50 120 00:06:16,950 --> 00:06:17,910 skúsenosti. 121 00:06:17,910 --> 00:06:22,710 Počas návodu, pre každú p-set, pôjdeme cez 122 00:06:22,710 --> 00:06:25,580 problém zostaviť, pozri sa na problémy, druh 123 00:06:25,580 --> 00:06:27,360 rozdeliť ich do zvládnuteľných uhryznutie. 124 00:06:27,360 --> 00:06:28,990 Dám vám tipy, techniky, pre získanie 125 00:06:28,990 --> 00:06:30,820 prostredníctvom a ako začať. 126 00:06:30,820 --> 00:06:33,510 Dúfam, že sa vám všetkým na návody. 127 00:06:33,510 --> 00:06:34,720 Ak nemôžete robiť to osobne, a potom 128 00:06:34,720 --> 00:06:36,580 prosím naladiť on-line. 129 00:06:36,580 --> 00:06:36,840 >> DAVID Malan: Výborný. 130 00:06:36,840 --> 00:06:37,950 Ďakujem, Zamyla. 131 00:06:37,950 --> 00:06:40,870 Takže si uvedomiť, že návody sú skutočne, v piatok 132 00:06:40,870 --> 00:06:43,110 popoludní, ale je to zámerne design tak, že 133 00:06:43,110 --> 00:06:45,750 aj keď by som radšej navštevovať triedy v piatok 134 00:06:45,750 --> 00:06:48,490 popoludní budú videá byť až všetky rýchlejšie ako 135 00:06:48,490 --> 00:06:48,990 víkend. 136 00:06:48,990 --> 00:06:51,880 Takže si uvedomiť, že cs50.net bude všetko Zamyla je 137 00:06:51,880 --> 00:06:53,130 návody. 138 00:06:54,800 --> 00:06:56,890 A že je dnešný dátum a čas, 15:00, 139 00:06:56,890 --> 00:06:58,370 Harberd Hall, 104. 140 00:06:58,370 --> 00:07:00,080 A niektoré z výučbových chlapíkov boli tiež pripravené 141 00:07:00,080 --> 00:07:03,250 niektoré poznámky, pre vás v neprítomnosti, aby vám trochu 142 00:07:03,250 --> 00:07:06,760 perspektíva ako k čomu ich skúsenosti prichádza do a 143 00:07:06,760 --> 00:07:08,990 ísť von CS50 bol rád. 144 00:07:08,990 --> 00:07:11,250 Takže ak by sme mohli stlmiť svetlá pre malú chvíľu, dám vám 145 00:07:11,250 --> 00:07:18,100 niektoré zamestnancov CS50 je. 146 00:07:18,100 --> 00:07:20,440 >> JACKSON STEINKAMP: Vzal som CS50 vlani ako nováčik v 147 00:07:20,440 --> 00:07:22,880 pádu, a to úplne mi vyrazil dych. 148 00:07:22,880 --> 00:07:25,090 Nikdy som brať žiadne programátorské triedy skôr, 149 00:07:25,090 --> 00:07:26,380 a nikdy prišiel s akoukoľvek informatiky 150 00:07:26,380 --> 00:07:27,320 skúsenosti vôbec. 151 00:07:27,320 --> 00:07:29,240 A práve, ja som počul hlášky o triede a 152 00:07:29,240 --> 00:07:30,050 rozhodol sa vziať ju. 153 00:07:30,050 --> 00:07:31,780 >> JULIA MITELMAN: Bolo to naozaj zábavné, naozaj pútavé. 154 00:07:31,780 --> 00:07:33,480 Aj napriek tomu, k tomuto dňu - 155 00:07:33,480 --> 00:07:36,560 Nedávno som videl, že som tu disketu David nám dal 156 00:07:36,560 --> 00:07:38,140 na našom prvom dňom prednášky. 157 00:07:38,140 --> 00:07:40,020 Som zavesil na stenu. 158 00:07:40,020 --> 00:07:42,410 To je asi trochu hlúpy, ale ja som sa držal na mojom 159 00:07:42,410 --> 00:07:46,930 stena v triede ako pripomienka toho, ako v pohode to bolo. 160 00:07:46,930 --> 00:07:49,240 >> TRAVIS Downs: Je to tak trápne. 161 00:07:49,240 --> 00:07:50,770 >> JACKSON STEINKAMP: Počítačová veda je niečo, čo 162 00:07:50,770 --> 00:07:52,370 by sa mali snažiť, aj keď nie ste jeden pre 163 00:07:52,370 --> 00:07:54,980 tradičnej vedy. 164 00:07:54,980 --> 00:07:58,510 Je to jeho vlastné skúsenosti, a CS50 sa uistite, že ste 165 00:07:58,510 --> 00:08:01,520 podporovaná aj cez to s jeho skutočným armádou TFS. 166 00:08:01,520 --> 00:08:03,700 >> ALI nahmatá: Vzal som to ako nováčik, a tak som urobil veľa 167 00:08:03,700 --> 00:08:04,215 nových priateľov. 168 00:08:04,215 --> 00:08:07,170 Tiež som dostal predstavený celý tento koncentráciu a 169 00:08:07,170 --> 00:08:10,770 Celá škola inžinierstva, a tak vrelo odporúčam 170 00:08:10,770 --> 00:08:14,360 a vítam vás na našej CS50 rodine. 171 00:08:14,360 --> 00:08:17,510 >> Yaniv YACOBY: CS50 len vás naučí, ako používať nástroje 172 00:08:17,510 --> 00:08:19,210 ktoré sú široko dostupné. 173 00:08:19,210 --> 00:08:21,840 Potrebujete k tomu len notebook, budete potrebovať webový prehliadač, a vy 174 00:08:21,840 --> 00:08:26,030 Potrebujeme sa naučiť písať nejaký kód, a môžete naozaj stavať 175 00:08:26,030 --> 00:08:27,400 elegantné veci. 176 00:08:27,400 --> 00:08:31,660 >> KAREN Xiao: Je to proste tak cool byť schopný robiť niečo 177 00:08:31,660 --> 00:08:34,580 a ľudia používať a mať ľudia to vidia, a to 178 00:08:34,580 --> 00:08:35,900 to, čo som naozaj rád o tom. 179 00:08:35,900 --> 00:08:37,429 >> TIM McLaughlin: - zmysel pre komunitu, myslím, v tomto 180 00:08:37,429 --> 00:08:39,470 Kurz viac než ktorýkoľvek iný Samozrejme, že som si vzal tak ďaleko. 181 00:08:39,470 --> 00:08:41,350 Nie ste len s inou - 182 00:08:41,350 --> 00:08:42,740 nie ste plnenia ďalšiu požiadavku. 183 00:08:42,740 --> 00:08:45,310 Nie ste len tak na prednášky a ísť do sekcie. 184 00:08:45,310 --> 00:08:49,630 Ale robíte veľa vecí, ktoré sú všetky informácie o 185 00:08:49,630 --> 00:08:51,560 programovanie a všetko o technológii, ale to nie je 186 00:08:51,560 --> 00:08:53,090 naozaj pocit triedy väčšinu času. 187 00:08:53,090 --> 00:08:55,012 >> Travis Downs: A na prvý deň, že rozdávali tortu, a 188 00:08:55,012 --> 00:08:56,215 Bol som okamžite predal. 189 00:08:56,215 --> 00:08:57,822 >> JACOB Pritt: Free koláčiky a pizza. 190 00:08:57,822 --> 00:08:59,820 >> ZAMYLA CHAN: - bez ohľadu na vaše záujmom, myslím, že 191 00:08:59,820 --> 00:09:05,170 že CS50, budete sa baviť, a budete mať intelektuálne 192 00:09:05,170 --> 00:09:06,070 stimulovaný. 193 00:09:06,070 --> 00:09:07,926 >> MARK GROZEN-SMITH: Je to vždy osoba v triede, a to 194 00:09:07,926 --> 00:09:09,990 strana každú noc pracovali na p-set. 195 00:09:09,990 --> 00:09:11,880 >> JACKSON STEINKAMP: Zakaždým, keď dokončíte problému sadu, môžete 196 00:09:11,880 --> 00:09:13,710 bude pocit, že ste dokončil projekt. 197 00:09:13,710 --> 00:09:16,580 >> MELISSA Niu: Bol to prvý rok, a ja som bol urobil nakupovanie. 198 00:09:16,580 --> 00:09:19,030 Mala som štyri triedy pripravený, a ja som bol v Annenberg. 199 00:09:19,030 --> 00:09:21,670 A ja naraziť na priateľa, a on hovorí, hej, ja som nakupovať 200 00:09:21,670 --> 00:09:24,330 táto trieda nazýva CS50, a mali by ste ísť so mnou. 201 00:09:24,330 --> 00:09:28,150 Skončil pričom to ten pád, a po tejto triedy, som 202 00:09:28,150 --> 00:09:30,510 Myslel budem moll v SK. 203 00:09:30,510 --> 00:09:33,760 Ale tu som, o tri roky neskôr, stále študuje počítač 204 00:09:33,760 --> 00:09:36,680 veda a vlastne robí to ako major, a miloval som každú 205 00:09:36,680 --> 00:09:37,780 moment to. 206 00:09:37,780 --> 00:09:39,030 >> ROB Bowden: Nemám tušenie. 207 00:09:46,408 --> 00:09:48,060 >> ALI nahmatá: Poďme sa pozrieť,. 208 00:09:48,060 --> 00:09:49,200 >> MELISSA Niu: Craziness. 209 00:09:49,200 --> 00:09:50,610 >> SPEAKER 1: Mám pocit, že by som bol veľmi klišé. 210 00:09:50,610 --> 00:09:52,530 Ja by som len povedať, ako, úžasné. 211 00:09:52,530 --> 00:09:53,540 >> Yaniv YACOBY: Dostupnosť. 212 00:09:53,540 --> 00:09:55,080 >> JACOB Pritt: Free koláčiky a pizza. 213 00:09:55,080 --> 00:09:57,310 >> TRAVIS Downs: Nemožno zapnúť stanovuje triedu, ktorá rozdáva tortu. 214 00:09:57,310 --> 00:09:58,510 >> TIM McLaughlin: Energetic. 215 00:09:58,510 --> 00:10:00,040 >> Vipul Shekhawat: Essential. 216 00:10:00,040 --> 00:10:02,636 >> ROB Bowden: Nechaj ma premýšľať o odpoveď. 217 00:10:02,636 --> 00:10:04,480 Myslím, že niečo mám. 218 00:10:04,480 --> 00:10:07,092 Oh, bože. 219 00:10:07,092 --> 00:10:13,370 Jo, volám sa Rob Bowden, a to je CS50. 220 00:10:13,370 --> 00:10:16,340 >> [APPLAUSE] 221 00:10:20,810 --> 00:10:23,390 DAVID Malan: Dobre, takže poďme začať maľovať obraz 222 00:10:23,390 --> 00:10:26,230 smeru, v ktorom môžeme ísť, a poďme predstaviť 223 00:10:26,230 --> 00:10:28,190 tento pojem tu známy ako pseudokódu. 224 00:10:28,190 --> 00:10:29,560 Takže pseudokód nie je programovací 225 00:10:29,560 --> 00:10:30,810 Jazyk sám pre seba. 226 00:10:30,810 --> 00:10:33,250 Nie je to nič technického sebe, ale je to jednoducho tak nejako 227 00:10:33,250 --> 00:10:36,490 všeobecne spôsob, ako vyjadriť sám seba celkom presne, 228 00:10:36,490 --> 00:10:39,730 docela algoritmické, docela procesne, ale bez 229 00:10:39,730 --> 00:10:42,570 sa museli starať o aký jazyk ste vyjadrovanie 230 00:10:42,570 --> 00:10:43,150 yourself in 231 00:10:43,150 --> 00:10:46,280 Je to nejaký model angličtiny a programovacích jazykov s 232 00:10:46,280 --> 00:10:48,790 ktoré sa stalo, aby sa zoznámili, takže môžeme začať 233 00:10:48,790 --> 00:10:50,600 písanie také veci, ako sme ísť. 234 00:10:50,600 --> 00:10:54,450 A v skutočnosti, Joseph, môžem si požičať vás na javisku sa 235 00:10:54,450 --> 00:10:55,490 pisár tu? 236 00:10:55,490 --> 00:11:00,130 Ja som išiel napred sem vopred a zabudol dať 237 00:11:00,130 --> 00:11:02,920 na niektorých ponožky dnes, a to bude medzi naše viac 238 00:11:02,920 --> 00:11:03,780 smiešne príklady. 239 00:11:03,780 --> 00:11:04,580 >> Teraz ťa potrebujem tu. 240 00:11:04,580 --> 00:11:05,630 Urobím ponožky časť. 241 00:11:05,630 --> 00:11:08,040 Takže tu máme trochu poznámkový blok. 242 00:11:08,040 --> 00:11:09,940 To je doslova TextEdit v systéme Mac. 243 00:11:09,940 --> 00:11:12,270 Nie sme vlastne bude písať Runnable program, ale 244 00:11:12,270 --> 00:11:14,220 sme len tak začať skicovanie z pseudokódu na báze 245 00:11:14,220 --> 00:11:17,830 na niektoré z rady, ktorú poskytnete mi tu. 246 00:11:17,830 --> 00:11:20,760 Takže tu je môj hromadu ponožiek doma. 247 00:11:20,760 --> 00:11:23,320 Nemám žiadne ponožky na to, kedy som sa prebudila ráno, a teraz 248 00:11:23,320 --> 00:11:26,280 treba napísať program, algoritmus druhov, s ktorými 249 00:11:26,280 --> 00:11:27,900 aby sa tieto ponožky na nohách. 250 00:11:27,900 --> 00:11:30,860 A po ceste, uvidíme, či budeme zakopnúť, alebo v prípade, 251 00:11:30,860 --> 00:11:32,860 niektoré z myšlienok, ktoré budete musieť začať 252 00:11:32,860 --> 00:11:35,470 premýšľať o oveľa vážnejšie pri programovaní 253 00:11:35,470 --> 00:11:37,950 lesť vaše programy sa nesprávajú celkom, ako bolo zamýšľané. 254 00:11:37,950 --> 00:11:39,580 >> Tak som si sadnúť tu. 255 00:11:39,580 --> 00:11:41,180 Mám svoj hromadu ponožiek. 256 00:11:41,180 --> 00:11:43,780 Čo je prvá vec, ktorú rozumný človek by 257 00:11:43,780 --> 00:11:46,600 , Keď cieľom je kladený na paru ponožiek? 258 00:11:46,600 --> 00:11:49,190 Niekto mi o jeden krok, a len jeden krok. 259 00:11:49,190 --> 00:11:49,796 Jo? 260 00:11:49,796 --> 00:11:50,690 Divákov: zohnúť. 261 00:11:50,690 --> 00:11:54,290 DAVID Malan: Bend dole, Dobre. 262 00:11:54,290 --> 00:11:55,540 Krok dva. 263 00:11:59,975 --> 00:12:00,645 Krok dva. 264 00:12:00,645 --> 00:12:01,840 PUBLIKUM: Zdvihnite ponožku. 265 00:12:01,840 --> 00:12:03,220 DAVID Malan: Zdvihnite ponožku. 266 00:12:03,220 --> 00:12:07,610 Dobre, tak malý, dvojznačnosť tu, a to je jeden z prvých 267 00:12:07,610 --> 00:12:09,380 kameňom úrazu, že by sme mali zámerne 268 00:12:09,380 --> 00:12:10,290 stretnúť tu. 269 00:12:10,290 --> 00:12:14,110 Je to trochu nejasné, takže vyzdvihnúť ponožku. 270 00:12:14,110 --> 00:12:17,425 Dobre, vezmem tento, ale počítač, realizovať len 271 00:12:17,425 --> 00:12:20,420 bit, nebude mať tento druh ľudský inštinkt len 272 00:12:20,420 --> 00:12:21,490 vybrať najbližší. 273 00:12:21,490 --> 00:12:23,590 Budeme musieť začať, onedlho, vyjadrujúce 274 00:12:23,590 --> 00:12:24,610 sami presnejšie. 275 00:12:24,610 --> 00:12:26,600 >> Dobre, takže druhý krok je vyzdvihnúť ponožku. 276 00:12:26,600 --> 00:12:27,520 Berieme to. 277 00:12:27,520 --> 00:12:28,620 Krok tri. 278 00:12:28,620 --> 00:12:29,532 V zadnej časti. 279 00:12:29,532 --> 00:12:30,900 PUBLIKUM: Nájdi si pár. 280 00:12:30,900 --> 00:12:32,060 DAVID Malan: nájsť zodpovedajúce dvojice. 281 00:12:32,060 --> 00:12:34,740 Dobre, tak to je dobrý. 282 00:12:34,740 --> 00:12:35,650 Musel som si vybrať túto ponožku. 283 00:12:35,650 --> 00:12:39,200 Takže cieľom je nájsť zodpovedajúce ponožku, teraz, ale to, čo 284 00:12:39,200 --> 00:12:39,990 to znamená? 285 00:12:39,990 --> 00:12:42,130 Rozumné ľudskej bytosti, rovnako ako v stredu, kedy som 286 00:12:42,130 --> 00:12:44,700 vedel, ako nájsť Mike Smith v telefónnom zozname, tak nejako 287 00:12:44,700 --> 00:12:45,640 išiel s ich inštinkt. 288 00:12:45,640 --> 00:12:49,220 Ale tu, je to samozrejme táto ponožka tu, ale počítač je 289 00:12:49,220 --> 00:12:51,350 nebude tak inštinktívny. 290 00:12:51,350 --> 00:12:53,830 Počítač bude mať zbierku bitov, ako my 291 00:12:53,830 --> 00:12:55,380 diskutovali v stredu, a to sú 292 00:12:55,380 --> 00:12:56,710 organizované nejako v pamäti. 293 00:12:56,710 --> 00:13:00,400 Ide o to, že počítač má iba schopnosť 294 00:13:00,400 --> 00:13:03,390 pozerať sa na veci, jeden po druhom, a v skutočnosti, aj my 295 00:13:03,390 --> 00:13:05,980 ľudia - aj keď to cíti, ako by som sa pozrel dole a rozdelenie 296 00:13:05,980 --> 00:13:08,900 sekundu neskôr Viem, kde ponožka je, môj mozog a moje oči 297 00:13:08,900 --> 00:13:12,000 pravdepodobne sa rýchlo zbierať týchto ponožiek, a potom sa západkou 298 00:13:12,000 --> 00:13:13,400 na jednej sa jedná. 299 00:13:13,400 --> 00:13:15,780 >> Takže ak budeme všetci oveľa modernejšie teraz ako počítač, 300 00:13:15,780 --> 00:13:17,780 Ako môžem toto zodpovedajúce pár? 301 00:13:17,780 --> 00:13:18,890 No, musíme určiť iteráciou. 302 00:13:18,890 --> 00:13:21,440 Musíme snáď slučke počas tohto neporiadok ponožky na 303 00:13:21,440 --> 00:13:25,760 poschodie ktorej som povedať niečo ako PRE KAŽDÝ ponožka, si to 304 00:13:25,760 --> 00:13:30,195 up, a ak je rovnaký tvar a veľkosť ako ten druhý, PAK 305 00:13:30,195 --> 00:13:32,150 dot, dot, dot, budeme pokračovať v príbehu. 306 00:13:32,150 --> 00:13:34,430 Takže pre každého ponožky, takže som vyzdvihnúť tento. 307 00:13:34,430 --> 00:13:36,520 Aj skontrolovať je to rovná tejto jednej. 308 00:13:36,520 --> 00:13:38,250 Nie je to, tak som si dal stranou stranu. 309 00:13:38,250 --> 00:13:39,220 Potom som určiť iteráciou znova. 310 00:13:39,220 --> 00:13:40,340 Je to jedna rovná? 311 00:13:40,340 --> 00:13:42,010 Nie, to nie, tak som to dal bokom. 312 00:13:42,010 --> 00:13:42,710 Je to jeden? 313 00:13:42,710 --> 00:13:43,200 Nie. 314 00:13:43,200 --> 00:13:43,670 Tento? 315 00:13:43,670 --> 00:13:44,520 No, a tak ďalej. 316 00:13:44,520 --> 00:13:48,730 A potom konečne, dúfajme, že sa stretnem túto ponožku tu. 317 00:13:48,730 --> 00:13:51,350 Takže ak je to rovnaký tvar, veľkosť, vezmite si ju. 318 00:13:51,350 --> 00:13:53,980 >> A teraz, čo by byť náš budúci krok tu? 319 00:13:53,980 --> 00:13:54,402 Jo? 320 00:13:54,402 --> 00:13:56,090 PUBLIKUM: Určite P zľava. 321 00:13:56,090 --> 00:13:58,980 DAVID Malan: Dobre, identifikovať vpravo a vľavo, tak 322 00:13:58,980 --> 00:14:01,870 našťastie, že druh práce. 323 00:14:01,870 --> 00:14:04,020 Trochu symetrická, alebo som len nosiť im týmto spôsobom. 324 00:14:04,020 --> 00:14:07,020 Dobre, tak som identifikoval právo. 325 00:14:07,020 --> 00:14:09,980 A teraz, ako budeme pokračovať, dovoľte mi, aby som poukázať na to, čo Joseph je 326 00:14:09,980 --> 00:14:12,890 robil sem ako akési veršované programátora. 327 00:14:12,890 --> 00:14:15,800 Takže znova, nie je jeden spôsob, ako to urobiť, ale viac než len 328 00:14:15,800 --> 00:14:18,480 číslovanie liniek, Joseph už začal robiť to 329 00:14:18,480 --> 00:14:19,460 druh odsadenie. 330 00:14:19,460 --> 00:14:21,950 Naozaj, toto je veľmi častý konvencie v programovaní, 331 00:14:21,950 --> 00:14:26,110 kedy, keď robíte niečo iteratívny, looping štýl, as 332 00:14:26,110 --> 00:14:28,480 sme z čoho vyplýva, s anglickým výrazom "PRE KAŽDÉHO 333 00:14:28,480 --> 00:14:31,090 ponožka, "konvencii v pseudokódu, a ako uvidíme, 334 00:14:31,090 --> 00:14:33,410 normálne programovacie jazyky, je len zarážky. 335 00:14:33,410 --> 00:14:36,240 Hit medzerníka niekoľkokrát, narazí na kláves Tab a podobne, 336 00:14:36,240 --> 00:14:40,660 tak, aby vnorené pod "PRE KAŽDÝ ponožka" je kus 337 00:14:40,660 --> 00:14:43,430 vecí, ktoré musíte urobiť, v dôsledku tohto slučky. 338 00:14:43,430 --> 00:14:45,940 Tak to je všetko, čo dopravné sémanticky. 339 00:14:45,940 --> 00:14:48,620 Teraz zatiaľ, "Ak je to rovnaký tvar a veľkosť, ďalej len" 340 00:14:48,620 --> 00:14:51,590 Skutočnosť, že "Take it" je členité ďalej len znamená, že 341 00:14:51,590 --> 00:14:54,370 to je jediná vec, ktorú by ste mali urobiť, ak túto podmienku, 342 00:14:54,370 --> 00:14:59,770 ak je vetva, ktorá rázcestí, je v skutočnosti pravdivý. 343 00:14:59,770 --> 00:15:02,130 >> Takže teraz tu, sme v kroku štyri, identifikovať vpravo a vľavo. 344 00:15:02,130 --> 00:15:03,410 Identifikoval som pravdu. 345 00:15:03,410 --> 00:15:05,150 Dajte mi krok päť. 346 00:15:05,150 --> 00:15:07,880 A technicky, môžeme naozaj hovoriť 347 00:15:07,880 --> 00:15:09,510 PRE KAŽDÉHO vec - 348 00:15:09,510 --> 00:15:11,450 asi by ste mali očíslovať všetky linky, ak 349 00:15:11,450 --> 00:15:12,190 budeme robiť to. 350 00:15:12,190 --> 00:15:14,006 JOSEPH: [Nepočuteľné] 351 00:15:14,006 --> 00:15:14,610 DAVID Malan: [Nepočuteľné]? 352 00:15:14,610 --> 00:15:16,070 Dobre, dobre, urobíme to po svojom. 353 00:15:16,070 --> 00:15:19,590 Dobre, takže krok päť, ako to robíme správnu ponožku? 354 00:15:19,590 --> 00:15:22,310 Ako budeme postupovať ďalej, tu? 355 00:15:22,310 --> 00:15:22,730 Áno? 356 00:15:22,730 --> 00:15:24,300 PUBLIKUM: Zdvihnite pravú nohu. 357 00:15:24,300 --> 00:15:27,100 DAVID Malan: Zdvihnite pravú nohu, Dobre. 358 00:15:27,100 --> 00:15:29,330 Krok šesť? 359 00:15:29,330 --> 00:15:30,728 Rýchlo. 360 00:15:30,728 --> 00:15:31,202 Jo. 361 00:15:31,202 --> 00:15:33,100 PUBLIKUM: Nájsť otvorený koniec ponožky. 362 00:15:33,100 --> 00:15:34,440 DAVID Malan: Dobre, nájsť otvorený koniec ponožky. 363 00:15:34,440 --> 00:15:34,840 Tak dobre. 364 00:15:34,840 --> 00:15:37,180 Tak tu, úprimne, by veľmi časté inštinkt byť len 365 00:15:37,180 --> 00:15:39,880 kladený na pravom ponožky, ale aj to je celkom nejednoznačná. 366 00:15:39,880 --> 00:15:42,750 Ak počítač alebo človek presne vie, čo to znamená, 367 00:15:42,750 --> 00:15:45,160 to nebude robiť, takže tu, mám 368 00:15:45,160 --> 00:15:46,520 Buďte otvorení populácie. 369 00:15:46,520 --> 00:15:48,222 Krok sedem? 370 00:15:48,222 --> 00:15:49,700 PUBLIKUM: Dotknite sa prsty. 371 00:15:49,700 --> 00:15:51,070 DAVID Malan: Dotykové prsty. 372 00:15:51,070 --> 00:15:53,546 Dobre, takže teraz ideme - 373 00:15:53,546 --> 00:15:56,480 Dobre, budem sa niektoré slobody tu. 374 00:15:56,480 --> 00:15:57,110 Vďaka. 375 00:15:57,110 --> 00:15:59,210 Krok ôsmy? 376 00:15:59,210 --> 00:16:00,060 Dajte na ponožke. 377 00:16:00,060 --> 00:16:02,060 Dobre, takže teraz som, že sme dosť blízko, aby nejako prijať 378 00:16:02,060 --> 00:16:03,480 tento doma. 379 00:16:03,480 --> 00:16:05,980 Dobre, tak to ide hore. 380 00:16:05,980 --> 00:16:07,950 Vezmem niektoré slobody s tým, čo to znamená, skutočne. 381 00:16:07,950 --> 00:16:08,920 Dajte ponožku na. 382 00:16:08,920 --> 00:16:10,853 Dobre, teraz kroku deväť? 383 00:16:10,853 --> 00:16:11,740 PUBLIKUM: Dajte nohu dole. 384 00:16:11,740 --> 00:16:12,510 DAVID Malan: Ďakujem. 385 00:16:12,510 --> 00:16:15,610 Krok deväť, dal nohu dole, a teraz, môžeme opakovať. 386 00:16:15,610 --> 00:16:19,540 Takže pravdepodobne, môžeme teraz prejsť do kroku 10 a povedať identifikovať 387 00:16:19,540 --> 00:16:21,960 vľavo ponožky, ale to je pravdepodobne už urobil. 388 00:16:21,960 --> 00:16:24,100 >> A potom sa môžem nejako opakujte tieto kroky. 389 00:16:24,100 --> 00:16:25,260 Ale tento druh vyvoláva otázku. 390 00:16:25,260 --> 00:16:28,100 Pred, v poslednej dobe sme chceli zopakovať niečo, my 391 00:16:28,100 --> 00:16:30,730 urobil iteratívne, znovu a znovu, FOR 392 00:16:30,730 --> 00:16:32,660 Každá slučka tak hovoriť. 393 00:16:32,660 --> 00:16:36,420 By malo zmysel používať slučku, aby sa zvládnuť aj 394 00:16:36,420 --> 00:16:38,470 vľavo a vpravo ponožky? 395 00:16:38,470 --> 00:16:40,460 Vzhľadom k tomu, že sa cíti, ako sú tieto operácie sú do značnej miery 396 00:16:40,460 --> 00:16:43,090 totožné, s výnimkou toho, že sa vychádza tu a jeden 397 00:16:43,090 --> 00:16:44,850 Tu začína? 398 00:16:44,850 --> 00:16:47,400 My slučku, alebo budeme len držať písanie kroky 399 00:16:47,400 --> 00:16:48,745 10, 11 a 12? 400 00:16:48,745 --> 00:16:50,540 Divákov: Loop. 401 00:16:50,540 --> 00:16:52,240 >> DAVID Malan: Dobre, tak slučka. 402 00:16:52,240 --> 00:16:54,730 Vlastne som mohla povedať len ďalej. 403 00:16:54,730 --> 00:16:55,720 Tak prečo je tomu tak? 404 00:16:55,720 --> 00:16:57,940 No, to je v skutočnosti prvou náš non-zrejmé 405 00:16:57,940 --> 00:17:01,210 rozhodnutia o návrhu, a v skutočnosti, jeden z metrík, s ktorými 406 00:17:01,210 --> 00:17:03,990 začneme hodnotiť, pre seba a pre vás, 407 00:17:03,990 --> 00:17:06,780 Kvalita programu je to, ako dobre navrhnutý to je. 408 00:17:06,780 --> 00:17:09,619 Už ste urobil minimálne množstvo práce potrebné pre 409 00:17:09,619 --> 00:17:12,480 si prácu najrýchlejšie, či už ide o 410 00:17:12,480 --> 00:17:15,430 váš čas alebo, pokiaľ ide o počítače so systémom dobe? 411 00:17:15,430 --> 00:17:17,589 Koľko operácií robí to trvá spustiť? 412 00:17:17,589 --> 00:17:20,180 Takže pravdepodobne, je to príležitosť pre sláčiky, pretože 413 00:17:20,180 --> 00:17:22,829 akonáhle začnem kopírovanie a vkladanie, ako Josef účinne 414 00:17:22,829 --> 00:17:25,010 by začať robiť v okamihu, si trochu plytvanie 415 00:17:25,010 --> 00:17:27,140 čas, a vy ste bol dvakrát expresívne. 416 00:17:27,140 --> 00:17:30,260 >> Ale zároveň, to sú naozaj len dve špeciálne 417 00:17:30,260 --> 00:17:31,890 prípady, vľavo a vpravo. 418 00:17:31,890 --> 00:17:34,930 A vzhľadom k tomu skôr, mohol som mať 10 alebo 20 alebo viac ponožky v 419 00:17:34,930 --> 00:17:37,960 hromada, to určite dáva zmysel, že nemá 50 riadkov 420 00:17:37,960 --> 00:17:40,180 Kód hovorí zistiť túto ponožku, potom ďalší jeden, 421 00:17:40,180 --> 00:17:41,300 potom ďalšie. 422 00:17:41,300 --> 00:17:43,450 Tu je to trochu menej zrejmé, a ja by som navrhol 423 00:17:43,450 --> 00:17:44,390 že by sme mohli ísť buď cestou. 424 00:17:44,390 --> 00:17:46,720 Mohli by sme mať buď tú slučku, hoci to len slučky 425 00:17:46,720 --> 00:17:50,620 dvakrát, alebo môžeme jednoducho skopírovať a vložiť len trochu 426 00:17:50,620 --> 00:17:53,270 práve preto, aby svoju prácu. 427 00:17:53,270 --> 00:17:55,210 Ale tento program je buggy, aby som tak povedal. 428 00:17:55,210 --> 00:17:59,120 To by mohlo mať nejaké chyby, chyby alebo rohové prípady, tak 429 00:17:59,120 --> 00:18:00,860 hovorí, že sme sa naozaj predvídať. 430 00:18:00,860 --> 00:18:03,400 Nič sa stalo tentoraz, ale čo by mohlo byť zle 431 00:18:03,400 --> 00:18:06,100 Pri vykonávaní tohto programu? 432 00:18:06,100 --> 00:18:07,040 PUBLIKUM: Nemáte žiadne ponožky. 433 00:18:07,040 --> 00:18:08,980 >> DAVID Malan: Takže tam mohol byť žiadne ponožky tam vôbec. 434 00:18:08,980 --> 00:18:10,380 Takže poďme sa domnievajú, že rohový prípad. 435 00:18:10,380 --> 00:18:14,670 Takže ak by sme sa posunúť späť ku kroku jedna, takže krok jeden bol 436 00:18:14,670 --> 00:18:16,540 skloniť, takže sedí. 437 00:18:16,540 --> 00:18:21,250 Krok dva, vyzdvihnúť si ponožku, ale potom zistíte, zodpovedajúce ponožky, 438 00:18:21,250 --> 00:18:22,420 identifikovať pravdu. 439 00:18:22,420 --> 00:18:25,050 Sme trochu robil veľa predpokladov, a to je, 440 00:18:25,050 --> 00:18:27,720 úprimne povedané, prečo program, niekedy zlyhanie. 441 00:18:27,720 --> 00:18:30,240 Ak, programátor, robili určité predpoklady, ako sú 442 00:18:30,240 --> 00:18:33,000 určite tam to bude ponožky alebo určite tam to 443 00:18:33,000 --> 00:18:35,310 byť pamäť ponechaná v počítači, určite tam deje 444 00:18:35,310 --> 00:18:37,420 byť na disku vľavo na pevnom disku - 445 00:18:37,420 --> 00:18:39,040 No, keď urobíte tieto predpoklady, a to nie je, 446 00:18:39,040 --> 00:18:41,880 v skutočnosti, reality, kto vie, niekedy to, čo počítač je 447 00:18:41,880 --> 00:18:42,520 robiť? 448 00:18:42,520 --> 00:18:44,450 A niekedy, keď sa dostanete na otáčajúce plážová lopta alebo 449 00:18:44,450 --> 00:18:47,750 mrazené Windows alebo podobné, že je to práve preto, že niektoré 450 00:18:47,750 --> 00:18:50,980 Programátor nepredpokladal tie takzvané rohové prípady. 451 00:18:50,980 --> 00:18:53,050 Čo iné by mohlo ísť zle v tomto programe? 452 00:18:53,050 --> 00:18:53,330 Jo? 453 00:18:53,330 --> 00:18:55,950 >> PUBLIKUM: Vy nemáte pravú nohu a ľavú nohu. 454 00:18:55,950 --> 00:18:58,920 DAVID Malan: Dobre, nemusí mať obaja pravú nohu a 455 00:18:58,920 --> 00:19:01,940 ľavú nohu, a tak tento program nemusí byť všeobecne 456 00:19:01,940 --> 00:19:02,590 použiteľné. 457 00:19:02,590 --> 00:19:03,658 Ostatné? 458 00:19:03,658 --> 00:19:05,650 PUBLIKUM: Možno ste zdvihol osirelého ponožku. 459 00:19:05,650 --> 00:19:07,970 DAVID Malan: Možno som zdvihol osirelého ponožku, tak 460 00:19:07,970 --> 00:19:11,250 non-matching ponožky, ktoré práve nemá žiadne súrodenca, pretože som 461 00:19:11,250 --> 00:19:13,650 stratil, je roztrhaný to, že je to v praní stále, alebo podobne. 462 00:19:13,650 --> 00:19:15,550 Takže, aj tak nebolo manipulované. 463 00:19:15,550 --> 00:19:15,790 Jo? 464 00:19:15,790 --> 00:19:17,510 PUBLIKUM: Možno už ponožky. 465 00:19:17,510 --> 00:19:19,050 DAVID Malan: Možno už ponožky. 466 00:19:19,050 --> 00:19:20,080 Nechcel som vlastne zistiť. 467 00:19:20,080 --> 00:19:23,350 AK nemáte ponožky, potom pokračujte k tomu 468 00:19:23,350 --> 00:19:24,330 linka jedna a dva. 469 00:19:24,330 --> 00:19:24,980 A to by sa mohlo stať. 470 00:19:24,980 --> 00:19:26,880 Môžete zaspávať s vašej pokožky na a podobne, tak 471 00:19:26,880 --> 00:19:28,860 taky, veľmi rozumné kútik prípad. 472 00:19:28,860 --> 00:19:29,630 A možno ešte jedna? 473 00:19:29,630 --> 00:19:31,310 PUBLIKUM: ponožka je naruby. 474 00:19:31,310 --> 00:19:34,000 DAVID Malan: Takže ponožka je naruby, takže sme urobili žiadnu chybu 475 00:19:34,000 --> 00:19:35,330 kontrolu, v krátkosti. 476 00:19:35,330 --> 00:19:38,550 Nechceli sme skontrolovať, či stav sveta je, ako očakávame. 477 00:19:38,550 --> 00:19:41,310 Nechceli sme skontrolovať, či sme skutočne našli to, čo sme hľadali. 478 00:19:41,310 --> 00:19:43,310 >> A aj keď je to akýsi smiešny príklad 479 00:19:43,310 --> 00:19:46,110 zahŕňajúce ponožky, na konci dňa, to je presne 480 00:19:46,110 --> 00:19:48,740 druh myslenia je treba mať pri písaní programov, 481 00:19:48,740 --> 00:19:51,740 iv Scratch, rovnako ako v C, v JavaScripte, v PHP, 482 00:19:51,740 --> 00:19:53,920 pretože inak budú vaše programy vykazujú 483 00:19:53,920 --> 00:19:56,980 ekvivalent tejto pradenia nafukovacia lopta, alebo len výnos 484 00:19:56,980 --> 00:19:58,210 nepresné výsledky. 485 00:19:58,210 --> 00:20:00,250 Takže vďaka moc tu na našom pisára Jozefa. 486 00:20:00,250 --> 00:20:05,060 [APPLAUSE] 487 00:20:05,060 --> 00:20:06,850 >> DAVID Malan: Dobre, tak čo je v 488 00:20:06,850 --> 00:20:08,230 Skutočnosť, počítačový program? 489 00:20:08,230 --> 00:20:09,670 No, poďme sa rýchlo pozrel na 490 00:20:09,670 --> 00:20:11,100 Zástupca jeden tu. 491 00:20:11,100 --> 00:20:15,260 Tak to je program napísaný v jazyku nazvanom C. C je 492 00:20:15,260 --> 00:20:17,830 pomerne staré týchto dňoch, ale mnoho novšie jazyky sú postavené 493 00:20:17,830 --> 00:20:18,460 na vrchole toho. 494 00:20:18,460 --> 00:20:21,180 Vskutku, PHP, jeden z web-centrických jazykov budeme 495 00:20:21,180 --> 00:20:24,050 použiť k termínu ku koncu, sám o sebe má, čo sa nazýva 496 00:20:24,050 --> 00:20:27,550 tlmočníka, program, ktorý je napísaný v jazyku C, ale o tom viac 497 00:20:27,550 --> 00:20:28,690 v mnohých týždňov od tejto chvíle. 498 00:20:28,690 --> 00:20:30,840 Ale tento program, a to je to, čo to znamená písať 499 00:20:30,840 --> 00:20:32,880 program, hoci veľmi jednoduchý. 500 00:20:32,880 --> 00:20:35,540 Máme nejaké docela tajomné syntax tu, ale môžete 501 00:20:35,540 --> 00:20:38,340 asi tušíte, aj keď ste nikdy naprogramovať pred, čo 502 00:20:38,340 --> 00:20:39,750 tento program robí. 503 00:20:39,750 --> 00:20:43,640 Naozaj, ja neviem, čo printf je, ale tlač rozhodne 504 00:20:43,640 --> 00:20:45,700 vyvoláva myšlienku tlače niečo. 505 00:20:45,700 --> 00:20:48,590 A tak áno, tento program je v konečnom dôsledku bude tlačiť 506 00:20:48,590 --> 00:20:50,250 slová "Hello, world". 507 00:20:50,250 --> 00:20:53,390 >> Teraz, nech máte Mac alebo PC alebo počítači so systémom Linux, kurzy 508 00:20:53,390 --> 00:20:55,550 sú, aspoň pokiaľ ste si stiahli nejaký voľne 509 00:20:55,550 --> 00:20:58,000 k dispozícii softvér, mohli ste sa písať programy na 510 00:20:58,000 --> 00:21:00,310 vlastný laptop pre docela nejaký čas. 511 00:21:00,310 --> 00:21:03,040 V systéme Mac OS, napríklad, tam je to program s názvom 512 00:21:03,040 --> 00:21:05,340 Terminál, ktorý je dodávaný s Mac, ktorá je zvyčajne vo vašom 513 00:21:05,340 --> 00:21:07,550 Utilities, a to všeobecne otvorí čierna a 514 00:21:07,550 --> 00:21:09,820 biela alebo biela a čierna okná, v ktorom ste 515 00:21:09,820 --> 00:21:11,410 výzvou, na ktorú môžete písať príkazy. 516 00:21:11,410 --> 00:21:13,060 Takže je to vlastne pripomína to, čo počítače 517 00:21:13,060 --> 00:21:15,100 bolo pred grafickým užívateľským 518 00:21:15,100 --> 00:21:16,710 rozhranie, GUI, prišiel. 519 00:21:16,710 --> 00:21:19,200 Teraz, vo Windows, máte podobný mechanizmus v podobe 520 00:21:19,200 --> 00:21:20,130 z príkazového riadku. 521 00:21:20,130 --> 00:21:23,430 >> Ale čo budem robiť, je tu otvoriť, povedzme, 522 00:21:23,430 --> 00:21:26,580 TextEdit znovu, takže ten istý program, ktorý sme používali pre 523 00:21:26,580 --> 00:21:28,870 pseudokód pred chvíľou, a ja idem ďalej a 524 00:21:28,870 --> 00:21:30,080 napísať môj prvý program. 525 00:21:30,080 --> 00:21:34,030 Patrí stdio.h, nech to znamená čokoľvek, int main 526 00:21:34,030 --> 00:21:36,880 void, nech to znamená čokoľvek, a potom v stredu tu, 527 00:21:36,880 --> 00:21:40,560 printf ("hello, world."). A potom zavrieť citácie, 528 00:21:40,560 --> 00:21:42,340 zatvoriť zátvorka, bodkočiarku. 529 00:21:42,340 --> 00:21:44,460 Teraz budem pokračovať a jednoducho hit Command-S. Idem 530 00:21:44,460 --> 00:21:47,650 ísť dopredu a uložiť ako hello.c, takže dohovor 531 00:21:47,650 --> 00:21:50,530 svet programovanie C je názov súboru dot c 532 00:21:50,530 --> 00:21:52,880 Idem len dať v domovskom adresári Johna z Harvardu, 533 00:21:52,880 --> 00:21:56,370 tu, kliknite na tlačidlo Uložiť, a teraz idem prejsť k tomuto 534 00:21:56,370 --> 00:21:59,110 okno terminálu, čo je opäť táto čierna a biela riadku 535 00:21:59,110 --> 00:22:00,860 kde môžem vykonávať príkazy. 536 00:22:00,860 --> 00:22:04,550 >> Môžem spúšťať programy zadaním svoje meno, nie 537 00:22:04,550 --> 00:22:06,710 Dvojitým kliknutím ikony v obvyklom slova zmysle. 538 00:22:06,710 --> 00:22:10,590 Ale vec je o C, je, že jazyk ako C prvý 539 00:22:10,590 --> 00:22:13,150 prichádza v tejto podobe, niečo, čo nazýva zdrojový kód. 540 00:22:13,150 --> 00:22:15,400 Niečo, čo vyzerá trochu ako angličtine, ale je 541 00:22:15,400 --> 00:22:17,980 rozhodne menej ako angličtina ako pseudokód Jozefov 542 00:22:17,980 --> 00:22:18,930 Pred chvíľou. 543 00:22:18,930 --> 00:22:20,560 Je to trochu tajomné. 544 00:22:20,560 --> 00:22:22,830 Zdá sa, že nasledovať niektoré vzory alebo pravidlá. 545 00:22:22,830 --> 00:22:25,300 Skutočnosť, že mám zložené zátvorky, bodkočiarky, citácie, 546 00:22:25,300 --> 00:22:28,240 uhol traky, cíti ako počítač prišiel s týmto 547 00:22:28,240 --> 00:22:29,250 druh jazyka. 548 00:22:29,250 --> 00:22:32,010 Ale keď pôjdem, teraz, na tomto terminálu, je možné spustiť 549 00:22:32,010 --> 00:22:35,250 príkaz, ktorý sa bude konvertovať, že zdrojový kód je 550 00:22:35,250 --> 00:22:36,610 niečo, čo nazýva objektový kód. 551 00:22:36,610 --> 00:22:39,690 To bude konvertovať English-ako syntax na nuly 552 00:22:39,690 --> 00:22:41,760 a tie, rovnaké druhy núl a jedničiek my 553 00:22:41,760 --> 00:22:42,820 hovoril o stredu. 554 00:22:42,820 --> 00:22:44,810 Teraz, idem spustiť príkaz s názvom zvonenie. 555 00:22:44,810 --> 00:22:47,750 Viac o tomto v najbližších týždňoch, ale je to program s 556 00:22:47,750 --> 00:22:52,330 ktoré môžem previesť hello.c na celú partiou 557 00:22:52,330 --> 00:22:53,640 núl a jedničiek. 558 00:22:53,640 --> 00:22:54,950 >> Teraz som spustenie tohto príkazu. 559 00:22:54,950 --> 00:22:57,940 Som bežať rinčať, a potom som povedal bežať sám na tento súbor 560 00:22:57,940 --> 00:23:00,630 volal hello.c, ktoré som vytvoril pred chvíľou, a 561 00:23:00,630 --> 00:23:02,090 nič Zdá sa, že sa stalo. 562 00:23:02,090 --> 00:23:05,550 Ale naozaj, keď som vystrčil okolo môjho domovského adresára, by som vidieť 563 00:23:05,550 --> 00:23:09,620 že tento hlúpo názvom programu a.out teraz existuje. 564 00:23:09,620 --> 00:23:12,250 To je len predvolený názov programu, pri písaní 565 00:23:12,250 --> 00:23:15,140 C. Môžeme prepísať to nakoniec, ale a.out je 566 00:23:15,140 --> 00:23:18,340 názov programu, ktorý som práve premenený núl a jedničiek. 567 00:23:18,340 --> 00:23:21,490 A teraz, že je to núl a jedničiek, môj Mac, v tomto prípade, alebo 568 00:23:21,490 --> 00:23:24,670 Vaše PC s Windows, môžete pochopiť tie kúsky, tie 569 00:23:24,670 --> 00:23:25,410 núl a jedničiek. 570 00:23:25,410 --> 00:23:29,130 A tak, keď som narazila Enter, vidím "hello, world!" 571 00:23:29,130 --> 00:23:31,270 >> Ale je to trochu buggy. 572 00:23:31,270 --> 00:23:34,110 Nechcel som celkom povedal "ahoj, svet: vzduch: -! Jharvard." Vzduch je 573 00:23:34,110 --> 00:23:35,020 meno môjho počítača. 574 00:23:35,020 --> 00:23:37,730 Jharvard je názov účtu, takže to, čo som jasne 575 00:23:37,730 --> 00:23:41,070 vynechať z programu? 576 00:23:41,070 --> 00:23:42,480 Nejaký zalomením riadku. 577 00:23:42,480 --> 00:23:45,150 Nechcel som narazila na ekvivalent Zadajte alebo návrate vozíka, 578 00:23:45,150 --> 00:23:47,760 a to je, opäť, svedčí o tom, že počítače môžu 579 00:23:47,760 --> 00:23:49,800 len to, čo poviete, aby robili. 580 00:23:49,800 --> 00:23:52,400 A skutočnosť, že som nepovedal počítač presunúť 581 00:23:52,400 --> 00:23:53,860 kurzor na ďalší riadok - 582 00:23:53,860 --> 00:23:55,200 dobre, to určite nebude len to 583 00:23:55,200 --> 00:23:56,750 opovážlivý pre mňa. 584 00:23:56,750 --> 00:24:00,860 Takže keď som sa vrátiť do svojho programu, a ja hovorím, \ n - 585 00:24:00,860 --> 00:24:03,180 Takže \ n, ako skoro uvidíte, je spôsob, ako 586 00:24:03,180 --> 00:24:06,910 predstavuje divné veci, ako znaky nového riadku, veci, 587 00:24:06,910 --> 00:24:08,840 ktorá by inak bola výsledkom 588 00:24:08,840 --> 00:24:09,940 biť klávesy Enter. 589 00:24:09,940 --> 00:24:11,730 Ale teraz, len viem, že biť klávesy Enter by 590 00:24:11,730 --> 00:24:14,170 len aby náš kód vyzerať divne, tak sa svet rozhodol, vieš 591 00:24:14,170 --> 00:24:16,580 čo, aby veci krajšie, aby ju udržali na jednom riadku, poďme 592 00:24:16,580 --> 00:24:19,070 len povedať, \ n predstavuje nový riadok. 593 00:24:19,070 --> 00:24:22,260 Dovoľte mi, aby som znova uložiť svoj súbor, prejdite späť do okna terminálu, a 594 00:24:22,260 --> 00:24:25,290 re-run a.out, Enter. 595 00:24:25,290 --> 00:24:28,374 Napriek tomu buggy, ale prečo? 596 00:24:28,374 --> 00:24:29,750 >> PUBLIKUM: [Nepočuteľné] 597 00:24:29,750 --> 00:24:31,540 DAVID Malan: Jo, tak som potrebné prekompilovať ho. 598 00:24:31,540 --> 00:24:34,610 Takže zostaviť program znamená len previesť zo zdroja 599 00:24:34,610 --> 00:24:37,660 kód objektového kódu, zdrojovom kóde núl a jedničiek. 600 00:24:37,660 --> 00:24:40,830 Teraz, samotná skutočnosť, že som narazila Uložiť v tomto TextEdit nemá 601 00:24:40,830 --> 00:24:43,450 ložiská na týchto núl a jedničiek, pretože som najprv 602 00:24:43,450 --> 00:24:48,260 tell zvonenie hey, zmenil som tie riadky kódu, 603 00:24:48,260 --> 00:24:49,040 zdrojový kód. 604 00:24:49,040 --> 00:24:51,010 Musíte regenerovať a.out. 605 00:24:51,010 --> 00:24:52,990 Nič Zdá sa, že sa stalo, ale v počítači, 606 00:24:52,990 --> 00:24:55,820 Na príkazovom riadku, tak hovoriť, keď sa nič nedeje, 607 00:24:55,820 --> 00:24:57,510 to zvyčajne znamená všetko je v poriadku. 608 00:24:57,510 --> 00:24:59,040 Keď sa niečo stane, znamená to, že 609 00:24:59,040 --> 00:25:00,420 ste zpackal, všeobecne. 610 00:25:00,420 --> 00:25:04,020 >> Takže poďme sa teraz ísť do a.out, a naozaj, mám teraz "hello, 611 00:25:04,020 --> 00:25:04,440 svet. " 612 00:25:04,440 --> 00:25:05,990 A teraz, čo o týchto núl a jedničiek? 613 00:25:05,990 --> 00:25:07,520 Ak je v tom, sú tie? 614 00:25:07,520 --> 00:25:10,710 No, nemôžem naozaj len trochu poke okolo veľmi 615 00:25:10,710 --> 00:25:11,210 efektívne. 616 00:25:11,210 --> 00:25:12,650 Dovoľte mi, aby som otvoriť TextEdit. 617 00:25:12,650 --> 00:25:14,060 Tu je a.out. 618 00:25:14,060 --> 00:25:17,390 Nechaj ma ísť ďalej a to otvoriť, a to je zrejme to, čo my 619 00:25:17,390 --> 00:25:19,080 Program vyzerá. 620 00:25:19,080 --> 00:25:21,570 Tak som otvoril, nie hello.c, ale a.out. 621 00:25:21,570 --> 00:25:23,960 Ale to je vlastne to, čo môj program je naozaj. 622 00:25:23,960 --> 00:25:26,450 Je zrejmé, je to nejaký druh abecedných znakov. 623 00:25:26,450 --> 00:25:28,670 Nevidím žiadne núl a jedničiek, ale je to 624 00:25:28,670 --> 00:25:30,780 pretože a.out je program. 625 00:25:30,780 --> 00:25:33,540 Núl a jedničiek - ale TextEdit, ako názov napovedá, je to 626 00:25:33,540 --> 00:25:37,130 rovnako ako Notepad vo Windows, je len textový editor, takže je to 627 00:25:37,130 --> 00:25:39,730 mätúce všetkých týchto núl a jedničiek as 628 00:25:39,730 --> 00:25:41,870 hoci oni boli, čo? 629 00:25:41,870 --> 00:25:43,380 ASCII znaky. 630 00:25:43,380 --> 00:25:45,020 >> Takže pripomínajú v stredu, práve sme prišli s týmto 631 00:25:45,020 --> 00:25:48,740 svojvoľné mapovanie čísel, alebo kúsky, na listy 632 00:25:48,740 --> 00:25:51,690 abeceda a interpunkčné symboly a podobne. 633 00:25:51,690 --> 00:25:54,920 Takže TextEdit, že je to textový editor je interpretáciou 634 00:25:54,920 --> 00:25:57,270 tie vzory núl a jedničiek, ktoré majú byť 635 00:25:57,270 --> 00:25:59,990 tlač slová, ako "Hello, world". Je to ich zobrazenie 636 00:25:59,990 --> 00:26:02,150 ako ASCII, a to je dôvod, prečo to vyzerá trochu chaotický. 637 00:26:02,150 --> 00:26:04,910 Teraz, tam sú niektoré náznaky správnosti v tu. 638 00:26:04,910 --> 00:26:08,090 Všimnite si, keď som zdôrazniť, že je náznak skutočne "hello, 639 00:26:08,090 --> 00:26:10,810 svet, "tak niekde v tomto programe je 640 00:26:10,810 --> 00:26:12,120 veta, ktorú som napísal. 641 00:26:12,120 --> 00:26:14,610 Ale poďme ďalej a teraz vidí s iným programom. 642 00:26:14,610 --> 00:26:17,420 Toto nie je jeden budeme používať, že často, ale tiež prichádza s 643 00:26:17,420 --> 00:26:19,970 Mac a bude vnútri CS50 zariadenia. 644 00:26:19,970 --> 00:26:23,940 Nechaj ma ísť napred a otvorte s programom s názvom xxd. 645 00:26:23,940 --> 00:26:26,530 >> Späť v deň, bola väčšina programov menoval pomerne záhadne, 646 00:26:26,530 --> 00:26:28,200 a tak tento trend pokračuje. 647 00:26:28,200 --> 00:26:31,160 Ale-b znamená vypľuť tento program tak, ako binárne. 648 00:26:31,160 --> 00:26:32,330 Nespúšťajte ho. 649 00:26:32,330 --> 00:26:35,770 Zobrazenie mi to ako núl a jedničiek, a to je C 650 00:26:35,770 --> 00:26:37,190 program, ktorý sme práve napísali. 651 00:26:37,190 --> 00:26:39,920 Teraz, ja, ako človek tu, úprimne nemám potuchy, čo 652 00:26:39,920 --> 00:26:42,230 Tieto rôzne vzory núl a jedničiek predstavujú. 653 00:26:42,230 --> 00:26:45,320 Späť v deň, som s mojimi dierne štítky alebo ako, by 654 00:26:45,320 --> 00:26:48,080 skutočne sa pozrieť do akej tieto rôzne vzory 655 00:26:48,080 --> 00:26:51,560 01111000, v skutočnosti predstavujú. 656 00:26:51,560 --> 00:26:54,390 Alebo ešte horšie, potreboval by som urobiť dierovanie alebo vytvorenie 657 00:26:54,390 --> 00:26:56,130 z týchto vzorov núl a jedničiek. 658 00:26:56,130 --> 00:27:00,410 Ale teraz, sa na základe viery, že CPU, Intel Inside, tak 659 00:27:00,410 --> 00:27:03,440 hovoriť, vnútri všetkých našich počítačov v týchto dňoch, vie 660 00:27:03,440 --> 00:27:05,100 ako interpretovať tieto núl a jedničiek. 661 00:27:05,100 --> 00:27:07,010 A niektoré nuly a jednotky znamenajú tlač. 662 00:27:07,010 --> 00:27:09,040 Niektoré núl a jedničiek znamená hrať zvuk. 663 00:27:09,040 --> 00:27:13,630 Niektoré nuly a jedničky znamená vziať si užívateľský vstup z klávesnice. 664 00:27:13,630 --> 00:27:15,960 Je tu všetky druhy rôznych vzorov, ale našťastie, 665 00:27:15,960 --> 00:27:19,680 ako ľudia, len všeobecne musieť starať o programovaní v 666 00:27:19,680 --> 00:27:21,270 Tento pomerne vyššiu úroveň. 667 00:27:21,270 --> 00:27:24,320 A v iných triedach SK môžete ponoriť hlbšie a pozrieť sa 668 00:27:24,320 --> 00:27:26,820 u vecí ako ty núl a jedničiek, alebo ešte 669 00:27:26,820 --> 00:27:28,000 iné veci stále. 670 00:27:28,000 --> 00:27:29,210 >> Tak teraz poďme zmeniť toto. 671 00:27:29,210 --> 00:27:32,550 Poďme veľmi rýchlo preč od C a presťahovať sa do niečoho na 672 00:27:32,550 --> 00:27:36,390 trochu viac upokojujúce, trochu viac vzrušujúce, v tom, že 673 00:27:36,390 --> 00:27:39,340 môžeme dostať späť naše animácie a zvuky a podobne, ktoré 674 00:27:39,340 --> 00:27:40,940 jasne uniklo nám v tejto 675 00:27:40,940 --> 00:27:42,480 docela primitívne rozhranie. 676 00:27:42,480 --> 00:27:46,430 Takže to rovnaký program v jazyku C môžu byť reprezentované teraz v tejto 677 00:27:46,430 --> 00:27:50,060 programovací jazyk nazvaný Scratch takto. 678 00:27:50,060 --> 00:27:54,230 To je ekvivalent tohto Hello World program napísaný v 679 00:27:54,230 --> 00:27:57,370 Tento kúsok skladačky štýl jazyka nazýva Scratch. 680 00:27:57,370 --> 00:28:00,600 Tak nechaj ma ísť napred a otvoriť túto veľmi programu. 681 00:28:00,600 --> 00:28:01,850 Je to zase len Scratch. 682 00:28:01,850 --> 00:28:03,880 Je voľne k dispozícii, a to je to isté sme 683 00:28:03,880 --> 00:28:05,120 začal dnes na. 684 00:28:05,120 --> 00:28:07,790 >> Tak toto je Scratch, a to sa rozdelila na niekoľko 685 00:28:07,790 --> 00:28:09,700 rôzne kusy. 686 00:28:09,700 --> 00:28:12,690 Na veľmi pravom hornom rohu, máme tzv fázy, a 687 00:28:12,690 --> 00:28:13,670 naozaj, že je miesto, kde sú cookies 688 00:28:13,670 --> 00:28:15,440 vykonáva len trochu skôr. 689 00:28:15,440 --> 00:28:19,660 A na javisku sa veci len prízraky, znaky, alebo 690 00:28:19,660 --> 00:28:21,030 objekty, alebo subjekty. 691 00:28:21,030 --> 00:28:23,320 To nie je naozaj jedno, ako si o nich myslíte, ale 692 00:28:23,320 --> 00:28:26,740 sú programovateľné, pohyblivé veci, a v tomto prípade sa jedná 693 00:28:26,740 --> 00:28:30,730 program, ktorý naša študent písal má niekoľko perníku 694 00:28:30,730 --> 00:28:32,990 cookies, pár kruhových cookie, celá banda 695 00:28:32,990 --> 00:28:35,430 srdce, celá banda okuliarov. 696 00:28:38,170 --> 00:28:42,420 Z tohto dôvodu sa alebo je schopný programovať každý z nich 697 00:28:42,420 --> 00:28:44,720 Jednotlivé postavy samostatne. 698 00:28:44,720 --> 00:28:46,480 >> Teraz, čo to znamená naprogramovať tieto znaky? 699 00:28:46,480 --> 00:28:49,440 No, nechajte ma ísť napred a kliknite na ľavej strane cookie 700 00:28:49,440 --> 00:28:51,830 a prejdite cez hore doľava tu. 701 00:28:51,830 --> 00:28:53,670 V ľavom hornom rohu mojej obrazovke je teraz 702 00:28:53,670 --> 00:28:55,280 tzv skripty oblasť. 703 00:28:55,280 --> 00:28:58,790 To je druh nepopsaným listom, spočiatku, na ktoré môžem 704 00:28:58,790 --> 00:29:01,540 drag and drop puzzle kúsky, ktoré, úprimne, robiť 705 00:29:01,540 --> 00:29:03,020 presne to, čo hovoria. 706 00:29:03,020 --> 00:29:05,820 Na vrchole tohto zásobníka dielikov je slovo 707 00:29:05,820 --> 00:29:09,340 Keď Green Flag kliknutí, a ak ste si nevšimol skôr, 708 00:29:09,340 --> 00:29:12,300 ako som začal, že cookie pieseň bola kliknutí, doslova, 709 00:29:12,300 --> 00:29:13,320 zelená vlajka. 710 00:29:13,320 --> 00:29:16,590 Takže skladačky vľavo hore tam znamená, keď 711 00:29:16,590 --> 00:29:19,780 ľudských kliknutí zelená vlajka, pokračoval robiť 712 00:29:19,780 --> 00:29:21,110 nasledujúce veci. 713 00:29:21,110 --> 00:29:23,330 >> A teraz, čo sa im cookie pokračovať robiť? 714 00:29:23,330 --> 00:29:25,810 Ja naozaj neviem, ako interpretovať to ešte, ale 715 00:29:25,810 --> 00:29:29,220 cookie zrejme nastaviť jej drážky na nulu, potom to čakal 716 00:29:29,220 --> 00:29:31,740 tri sekundy, potom to zmenilo jeho skupinu s jedným, potom to 717 00:29:31,740 --> 00:29:33,590 čakal druhý, potom sa to zmenilo jeho 718 00:29:33,590 --> 00:29:35,100 groove späť do jedného. 719 00:29:35,100 --> 00:29:37,373 A potom to skutočne vyzerá ako trochu chybu, by nemali 720 00:29:37,373 --> 00:29:39,440 musieť zmeniť svoje drážky znovu a znovu, ak je to 721 00:29:39,440 --> 00:29:43,380 menený inde, ale táto séria krokov je to, čo je 722 00:29:43,380 --> 00:29:46,800 diktovať správanie tohto konkrétneho súboru cookie. 723 00:29:46,800 --> 00:29:49,180 Takže poďme skutočne posunúť späť a nepozerať sa na niečo 724 00:29:49,180 --> 00:29:50,430 tak celkom zložitý ešte. 725 00:29:50,430 --> 00:29:52,260 Nechaj ma ísť napred a ísť do súboru, Nový, 726 00:29:52,260 --> 00:29:53,560 a získať čistý štít. 727 00:29:53,560 --> 00:29:56,590 >> Takže teraz, som naozaj bude mať prázdnu skript priestor, prázdne javisko, 728 00:29:56,590 --> 00:29:59,380 s naším východiskovým sprite nuly, a v ľavej hornej časti 729 00:29:59,380 --> 00:30:01,670 Na obrazovke mám paletu všetkých ich 730 00:30:01,670 --> 00:30:03,400 K dispozícii dieliky. 731 00:30:03,400 --> 00:30:06,300 A nebudeme prechádzať takmer, že mnoho z týchto vecí 732 00:30:06,300 --> 00:30:09,470 dnes, pretože, opäť, väčšina sú samo-vysvetľujúce, ale my 733 00:30:09,470 --> 00:30:12,370 sa snaží roztriediť ich a poukázať na podobnosti 734 00:30:12,370 --> 00:30:15,380 s týmito budúcimi jazykmi, na ktoré budeme potápať. 735 00:30:15,380 --> 00:30:19,180 A vľavo hore tu je prvý Keď Zelená vlajka kliknutí, 736 00:30:19,180 --> 00:30:22,170 tak nech mi pretiahnuť sem, oddialiť trochu. 737 00:30:22,170 --> 00:30:25,780 A keď som kliknite na zelenú vlajkou, nič sa naozaj deje, pretože 738 00:30:25,780 --> 00:30:29,360 Nemám pripojený žiadnu logiku, vyhlásenie tak hovoriť, 739 00:30:29,360 --> 00:30:31,040 že zelená vlajka, tak nechajte ma ísť do 740 00:30:31,040 --> 00:30:32,500 Kategórie sem. 741 00:30:32,500 --> 00:30:34,840 Som v súčasnej dobe v Ovládacom kategórii. 742 00:30:34,840 --> 00:30:37,630 Ja namiesto toho ísť do toho, ako vyzerá kategóriu, a 743 00:30:37,630 --> 00:30:39,970 je tu celá partia vecí tu, že Say Say, 744 00:30:39,970 --> 00:30:43,110 Zamyslite sa, meniť farbu, spínače kostým. 745 00:30:43,110 --> 00:30:44,860 >> Takže si môžete urobiť hlúpe veci s kostýmy a 746 00:30:44,860 --> 00:30:45,870 zvuky a podobne. 747 00:30:45,870 --> 00:30:49,970 Nechaj ma ísť dopredu a len povedať Say, a teraz zistíte, ako som pretiahnuť 748 00:30:49,970 --> 00:30:52,940 a odstrániť tento kúsok skladačky, to bude chcieť, aby zapadla 749 00:30:52,940 --> 00:30:55,010 do zodpovedajúceho tvaru. 750 00:30:55,010 --> 00:30:58,020 Takže keď som sa do toho pustite a pustil mojej myši, uzavrú 751 00:30:58,020 --> 00:31:01,770 spoločne, a teraz keď pôjdem sem a kliknite na zelenú vlajkou, 752 00:31:01,770 --> 00:31:05,910 mačka sa v skutočnosti pozdraviť, pretože to je to, čo je vnútri 753 00:31:05,910 --> 00:31:06,980 tohto bielom poli. 754 00:31:06,980 --> 00:31:08,900 Čoskoro budeme vidieť, že biely box je to, čo sa nazýva 755 00:31:08,900 --> 00:31:10,250 argument, alebo parameter. 756 00:31:10,250 --> 00:31:12,560 Je to spôsob zmeny správania, v tomto prípade, 757 00:31:12,560 --> 00:31:15,070 skladačky, ale ak chcem povedať, čo presne som povedal 758 00:31:15,070 --> 00:31:18,610 pred, povedzme hello, world, teraz môžem vrátiť sem, 759 00:31:18,610 --> 00:31:21,990 Kliknite na tlačidlo Prehrať a "hello, world" je to, čo je povedal. 760 00:31:21,990 --> 00:31:24,340 >> Takže sme sa doslova programovanie teraz. 761 00:31:24,340 --> 00:31:27,540 Nie je to, že presvedčivé programu, najmenej však 762 00:31:27,540 --> 00:31:30,140 je to trochu závažnejšie, než niečo, čo vyzerá, na 763 00:31:30,140 --> 00:31:31,300 prvý pohľad, ako je tento. 764 00:31:31,300 --> 00:31:34,190 A môžeme veľmi rýchlo dostať všetky výraznejšie 765 00:31:34,190 --> 00:31:36,600 pretože v Scratch, rovnako ako v iných jazykoch, tam je všetko 766 00:31:36,600 --> 00:31:40,010 druhy výkazov, a to nielen Say alebo tlačou niečo, ale 767 00:31:40,010 --> 00:31:42,650 môžete robiť veci, ako je čakanie, ako sme práve videli s 768 00:31:42,650 --> 00:31:44,240 cookie, niektoré počet sekúnd. 769 00:31:44,240 --> 00:31:46,440 Môžete prehrávať zvuky v prostredí Scratch len 770 00:31:46,440 --> 00:31:49,050 ako môžete v bežnom počítačovom programe prehrávanie zvuku. 771 00:31:49,050 --> 00:31:52,440 Môžete zistiť, čo sa nazýva booleovských výrazov. 772 00:31:52,440 --> 00:31:55,630 Takže teraz, poďme začať sa pridať k nášmu nástrojov niektoré terminológie 773 00:31:55,630 --> 00:31:58,840 že sa v skutočnosti týka príkladu, že Joseph a ja urobil 774 00:31:58,840 --> 00:32:00,080 Tu sa ponožiek. 775 00:32:00,080 --> 00:32:03,040 Takže tvrdenia sú len faktické vyhlásenia,. 776 00:32:03,040 --> 00:32:04,160 Urob to. 777 00:32:04,160 --> 00:32:07,370 Smernica pre škriatka, alebo ma človek, niečo urobiť. 778 00:32:07,370 --> 00:32:10,420 Boolovský výraz je niečo, čo má hodnotu, 779 00:32:10,420 --> 00:32:14,580 tzv pravdivostná hodnota, ktorá je buď nula alebo jedna, nepravdivé alebo 780 00:32:14,580 --> 00:32:17,890 pravda, zapnutie alebo vypnutie, nie alebo áno. 781 00:32:17,890 --> 00:32:19,730 Nezáleží ako si myslíte, že o tom, ale je to 782 00:32:19,730 --> 00:32:20,700 binárne stav. 783 00:32:20,700 --> 00:32:22,610 Ako Nate prerokovaný vo videu stredajšie, dva 784 00:32:22,610 --> 00:32:23,570 rôzne veci. 785 00:32:23,570 --> 00:32:25,740 >> Takže v Scratch, Booleovské výrazy stane sa pozrieť 786 00:32:25,740 --> 00:32:28,910 ako sú tieto modré objekty tu, v tomto prípade, je otázka 787 00:32:28,910 --> 00:32:30,960 Značka znamená, že sa pýtate na otázku. 788 00:32:30,960 --> 00:32:34,250 Je mačka, alebo sprite, dotýka myši? 789 00:32:34,250 --> 00:32:36,580 Takže to je len jeden príklad z Scratch bloku, čo sa deje 790 00:32:36,580 --> 00:32:39,950 ktoré nám umožnia zistiť áno alebo nie, je myš dotýka 791 00:32:39,950 --> 00:32:40,790 sprite na obrazovke? 792 00:32:40,790 --> 00:32:42,840 A to môže byť užitočné, ak si naozaj chcete robiť veci 793 00:32:42,840 --> 00:32:43,820 s myšou. 794 00:32:43,820 --> 00:32:46,470 Okrem logických výrazov, máme veci 795 00:32:46,470 --> 00:32:49,110 ako je myš dole, takže môžete zistiť, že druh 796 00:32:49,110 --> 00:32:50,200 otázka, ako dobre. 797 00:32:50,200 --> 00:32:52,590 Môžeme to urobiť matematiku, ak si naozaj chcete, a tam je 798 00:32:52,590 --> 00:32:55,170 v skutočnosti viac presvedčivé použitie pre toto, než len rýdzi 799 00:32:55,170 --> 00:32:56,400 aritmetický, ako uvidíme. 800 00:32:56,400 --> 00:32:59,690 Pseudo náhodnosti a aby si program, si zrejme myslia, 801 00:32:59,690 --> 00:33:03,490 alebo sa správajú rôzne v závislosti na niektorých zdanlivo náhodných hodnôt, 802 00:33:03,490 --> 00:33:06,610 a potom máme také veci booleovských výrazov ako AND. 803 00:33:06,610 --> 00:33:08,830 Takže ak naozaj chcete skontrolovať dve hodnoty, uvidíme v 804 00:33:08,830 --> 00:33:11,110 Stieracie, že môžeme skutočne vyskúšať, či sa jedná 805 00:33:11,110 --> 00:33:13,190 pravdivé a je to pravda. 806 00:33:13,190 --> 00:33:15,300 Napríklad, v prípade, že moje ponožky, mohol som na 807 00:33:15,300 --> 00:33:19,045 veľmi end spýtal na otázku, či ľavý ponožka je zapnutý a pravej ponožka 808 00:33:19,045 --> 00:33:20,610 je na, ukončite. 809 00:33:20,610 --> 00:33:22,710 Tomto kroku na deň, takže by bolo 810 00:33:22,710 --> 00:33:24,300 príležitosť pre to. 811 00:33:24,300 --> 00:33:27,740 >> Tak poďme do toho a skúste sa dať niektoré z nich spoločne 812 00:33:27,740 --> 00:33:31,570 a ísť do pár príkladov viac 813 00:33:31,570 --> 00:33:32,610 presvedčivé ako tento. 814 00:33:32,610 --> 00:33:35,770 Tak nechaj ma ísť napred sem a otvoriť niektoré z príkladov 815 00:33:35,770 --> 00:33:38,350 že bude vždy o priebehu stránkach rovnako, a 816 00:33:38,350 --> 00:33:39,870 otvoriť hello2. 817 00:33:39,870 --> 00:33:42,910 Takže v hello2 tu, máme program, ktorý to robí málo 818 00:33:42,910 --> 00:33:46,290 veci, ale to nerobí to tak účinne, ako by sme mohli. 819 00:33:46,290 --> 00:33:48,900 Tak tu to hovorí "Hello, world" po dobu jednej sekundy a potom čaká 820 00:33:48,900 --> 00:33:49,450 pre druhé. 821 00:33:49,450 --> 00:33:51,720 A potom to urobí znovu, a potom sa to znova. 822 00:33:51,720 --> 00:33:55,530 Takže keď som kliknite na zelenú vlajkou, Scratch hovorí "Hello, world. 823 00:33:55,530 --> 00:33:57,160 Hello, world. 824 00:33:57,160 --> 00:34:00,080 Hello, world. "A to je samozrejme kandidát teraz 825 00:34:00,080 --> 00:34:00,860 zlepšenie. 826 00:34:00,860 --> 00:34:03,070 >> Čo je marginálne zlepšenia, dúfajme, môžeme 827 00:34:03,070 --> 00:34:07,610 teraz urobiť, ak Scratch podporuje koncept? 828 00:34:07,610 --> 00:34:08,310 Nejaký druh slučky. 829 00:34:08,310 --> 00:34:10,960 Nejaký opakovanie, teraz, by bolo pekné, tak nech mi 830 00:34:10,960 --> 00:34:11,920 vlastne to skúsiť. 831 00:34:11,920 --> 00:34:13,870 Dovoľte mi, aby som skutočne ísť a pohybovať to. 832 00:34:13,870 --> 00:34:16,449 Takže oznámenia možno oddeliť bloky tak ľahko, ako si môžete pridať do 833 00:34:16,449 --> 00:34:17,420 pripevnite ich. 834 00:34:17,420 --> 00:34:20,730 Nechaj ma ísť pod kontrolou, prejdite sem, a naozaj, 835 00:34:20,730 --> 00:34:24,000 tam je to kúsok skladačky tu, opakovanie a Forever a 836 00:34:24,000 --> 00:34:24,870 Forever Pokiaľ. 837 00:34:24,870 --> 00:34:28,500 Takže tam je niekoľko spôsobov, ako vyjadriť cyklickú konštrukcia 838 00:34:28,500 --> 00:34:29,340 v Scratch. 839 00:34:29,340 --> 00:34:31,730 Ten, ktorý som pravdepodobne chcieť tu nie je navždy, pretože som len 840 00:34:31,730 --> 00:34:34,639 Chcem aby sa to stalo trikrát, ale pravdepodobne Opakovať. 841 00:34:34,639 --> 00:34:38,449 Dovoľte mi teda pretiahnuť Opakovať tu, pretiahnite ju, a 842 00:34:38,449 --> 00:34:42,530 Teraz namiesto toho povedal "Hello, world", tri samostatné krát, 843 00:34:42,530 --> 00:34:44,230 dovoľte mi, aby som pretiahnite tento kúsok skladačky tu. 844 00:34:44,230 --> 00:34:46,610 A aj keď sa to nezdá, aby sa zmestili, program inteligentná 845 00:34:46,610 --> 00:34:48,920 dosť si uvedomiť, že bude rásť vyplniť, takže je to 846 00:34:48,920 --> 00:34:51,270 tvary, ktoré záležitosť a nie absolútnu veľkosť. 847 00:34:51,270 --> 00:34:54,030 Dovoľte mi, aby som zmeniť opakovanie na tri, a teraz nechaj ma ísť 848 00:34:54,030 --> 00:34:56,560 dopredu a pretiahnite Počkajte One Second tam tiež. 849 00:34:56,560 --> 00:34:59,220 Bude to snap v tiež, a tak teraz budem ťahať 850 00:34:59,220 --> 00:35:01,370 títo ľudia sem a len hádzať je preč, pretože som 851 00:35:01,370 --> 00:35:02,710 nepotrebujú už. 852 00:35:02,710 --> 00:35:05,920 Dovoľte mi, aby som oddialiť a kliknite na zelenú vlajkou teraz, a my máme 853 00:35:05,920 --> 00:35:09,600 rovnaký program, ale ako som predpovedal pred, lepšie 854 00:35:09,600 --> 00:35:12,200 navrhnuté, pretože si dokážete predstaviť, ako zle je tento program 855 00:35:12,200 --> 00:35:14,410 by si iste esteticky, ak by ste mali 856 00:35:14,410 --> 00:35:16,640 kto kopírovanie a vkladanie, kopírovanie a vkladanie, alebo 857 00:35:16,640 --> 00:35:20,020 pretiahnutím rovnaké zatraceně veci znova a znova. 858 00:35:20,020 --> 00:35:22,260 >> Teraz, jednoducho hovoriť veci na obrazovke, tlač na 859 00:35:22,260 --> 00:35:25,350 obrazovke, naozaj všetko, nie je to vzrušujúce, takže sa poďme otvoriť 860 00:35:25,350 --> 00:35:26,580 tretej rozptyl tu. 861 00:35:26,580 --> 00:35:29,810 A teraz, ako uvidíte, toto sa rýchlo dostať otravné - 862 00:35:29,810 --> 00:35:30,850 [Meow] 863 00:35:30,850 --> 00:35:31,940 DAVID Malan: -, ale je to aj trochu roztomilý. 864 00:35:31,940 --> 00:35:35,244 [Meow] 865 00:35:35,244 --> 00:35:37,460 DAVID Malan: Dobre, tak lepšie, a môžeme samozrejme použiť, aby 866 00:35:37,460 --> 00:35:41,060 Rovnaký prechod Chunking to až do opakovania 867 00:35:41,060 --> 00:35:43,520 štruktúra, ale poďme robiť to viac zaujímavejšie stále. 868 00:35:43,520 --> 00:35:47,480 >> Nechaj ma ísť napred a otvoriť štvrtiny rozptyl tu, kde som 869 00:35:47,480 --> 00:35:50,020 brať veci o krok ďalej. 870 00:35:50,020 --> 00:35:54,450 Tak podľa tohto, hlúpe aj keď je to na prvý 871 00:35:54,450 --> 00:35:58,530 pohľad, čo sa tento program bude robiť? 872 00:35:58,530 --> 00:35:59,790 Bude to meow raz. 873 00:35:59,790 --> 00:36:00,160 Prečo? 874 00:36:00,160 --> 00:36:03,340 No, jeden je, pokiaľ viem, vždy menší ako dvaja. 875 00:36:03,340 --> 00:36:04,890 Nie je pojem náhodnosti tu. 876 00:36:04,890 --> 00:36:07,240 Ja som doslova pevne jedna a dve, ale to je 877 00:36:07,240 --> 00:36:10,370 Príkladom teraz skutočne používať logický výraz. 878 00:36:10,370 --> 00:36:13,650 Podobne ako ako Joseph robil v jeho pseudokódu, odsadenie KEĎ 879 00:36:13,650 --> 00:36:17,170 nájdete zodpovedajúce ponožky vykonajte nasledujúce, tu máme 880 00:36:17,170 --> 00:36:19,750 výraz Ak jeden je menší ako dva potom - 881 00:36:19,750 --> 00:36:21,820 a v skutočnosti budeme mať aj trochu odsadenie, 882 00:36:21,820 --> 00:36:24,480 kde je fialová mierne odsadená doprava - 883 00:36:24,480 --> 00:36:26,600 Potom budete hrať zvuku mňau. 884 00:36:26,600 --> 00:36:30,060 Teraz, v tomto prípade, že je vždy menší ako dva, takže tento 885 00:36:30,060 --> 00:36:31,970 je tak trochu plytvanie stave. 886 00:36:31,970 --> 00:36:34,890 Ale budeme môcť, ako uvidíme, pripojiť iné veci do 887 00:36:34,890 --> 00:36:37,420 Tieto zástupné symboly, kde jedna a dve teraz sú. 888 00:36:37,420 --> 00:36:41,340 Takže poďme sa teraz postupne napríklad päť týchto niekoľkých 889 00:36:41,340 --> 00:36:45,850 pozdravy a pohľad na to, čo tento program to urobí. 890 00:36:45,850 --> 00:36:48,710 >> Takže teraz, v anglickej vete, ako to 891 00:36:48,710 --> 00:36:51,460 sa program chová? 892 00:36:51,460 --> 00:36:52,950 PUBLIKUM: Meows polovicu času. 893 00:36:52,950 --> 00:36:55,380 DAVID Malan: mňau je polovica času, takže to je spôsob, ako 894 00:36:55,380 --> 00:36:56,700 dopravu veľmi jednoduchý nápad. 895 00:36:56,700 --> 00:36:59,400 Aj keď sme sa náhodou používať niektoré nerovnosti tu 896 00:36:59,400 --> 00:37:01,860 v niektorých čísel, to je v skutočnosti len programový 897 00:37:01,860 --> 00:37:09,490 spôsobom, presný spôsob, ako povedať keď sa mince príde hlavy, ísť 898 00:37:09,490 --> 00:37:10,270 dopredu a mňau. 899 00:37:10,270 --> 00:37:13,540 Alebo naopak, keď sa mince príde chvosty, nie mňau. 900 00:37:13,540 --> 00:37:15,110 A v tomto prípade, ako sme vyjadriť, že? 901 00:37:15,110 --> 00:37:17,950 Budeme si vybrať náhodné číslo od 1 do 10, a ak to 902 00:37:17,950 --> 00:37:21,110 číslo je menšie ako 6, choďte do toho a mňau. 903 00:37:21,110 --> 00:37:22,260 A ako sa to sem dostať? 904 00:37:22,260 --> 00:37:24,620 No opäť si všimnite, len pretiahnutím a 905 00:37:24,620 --> 00:37:26,190 veci nezapadne na miesto. 906 00:37:26,190 --> 00:37:28,020 >> Takže teraz uvidíme, či to náhoda funguje. 907 00:37:28,020 --> 00:37:29,845 Nechaj ma ísť ďalej a kliknite na zelenú vlajkou. 908 00:37:29,845 --> 00:37:31,120 [Meow] 909 00:37:31,120 --> 00:37:32,000 DAVID Malan: Dobre. 910 00:37:32,000 --> 00:37:33,430 [Meow] 911 00:37:33,430 --> 00:37:35,260 DAVID Malan: Dobre. 912 00:37:35,260 --> 00:37:38,510 Dobre, dobre, tak my sme dostali hlavy, hlavy, chvosty efektívne. 913 00:37:38,510 --> 00:37:39,295 Tails. 914 00:37:39,295 --> 00:37:39,590 [Meow] 915 00:37:39,590 --> 00:37:41,829 DAVID Malan: Heads. 916 00:37:41,829 --> 00:37:43,220 [Meow] 917 00:37:43,220 --> 00:37:44,040 DAVID Malan: Výborný. 918 00:37:44,040 --> 00:37:46,220 Je to vždy nepríjemné, keď len štatisticky dostanete zlý 919 00:37:46,220 --> 00:37:48,510 beh, a to všetky hlavy, a program v skutočnosti nie je 920 00:37:48,510 --> 00:37:49,230 fungovať, ako by ste dúfali. 921 00:37:49,230 --> 00:37:51,210 Ale tentoraz to fungovalo, a zdá sa, že ak majú sme 922 00:37:51,210 --> 00:37:53,830 Tento nekonečný počet opakovaní, 50% šanca. 923 00:37:53,830 --> 00:37:56,950 Teraz znovu, nie všetci, že zaujímavé, len aby mačky 924 00:37:56,950 --> 00:37:59,840 meow, takže uvidíme, či nemôžeme postúpiť tento kúsok ďalej 925 00:37:59,840 --> 00:38:01,820 tu vo verzii šesť. 926 00:38:01,820 --> 00:38:05,620 Takže teraz máme naozaj nepríjemný verziu - 927 00:38:05,620 --> 00:38:08,215 [MEOWS každých pár sekúnd] 928 00:38:08,215 --> 00:38:10,640 DAVID Malan: - a to je to, čo je známe, všeobecné, as 929 00:38:10,640 --> 00:38:11,670 nekonečnej slučky. 930 00:38:11,670 --> 00:38:14,190 >> Takže nekonečné slučky v tomto prípade cíti zle. 931 00:38:14,190 --> 00:38:16,970 Je to určite bude, kto znieť zle, a napriek tomu nekonečný 932 00:38:16,970 --> 00:38:18,740 slučky nie sú vždy zlé. 933 00:38:18,740 --> 00:38:20,910 Môže si myslíte, že kontext, v počítačových programov, kde by ste 934 00:38:20,910 --> 00:38:22,910 vlastne chceme nekonečnú slučku? 935 00:38:22,910 --> 00:38:23,691 Jo? 936 00:38:23,691 --> 00:38:26,520 PUBLIKUM: Ak chcete skontrolovať stav. 937 00:38:26,520 --> 00:38:28,240 DAVID Malan: Dobre, keď chcete zachovať kontrolu podmienku? 938 00:38:28,240 --> 00:38:29,190 Ako čo? 939 00:38:29,190 --> 00:38:30,440 PUBLIKUM: [Nepočuteľné] 940 00:38:36,060 --> 00:38:38,170 DAVID Malan: Dobre, dobre, takže ak ste mali nejaký program, niektorí 941 00:38:38,170 --> 00:38:40,440 Takéto veci domácej automatizácie, kde chcete neustále 942 00:38:40,440 --> 00:38:41,980 Monitor je niečo prípad. 943 00:38:41,980 --> 00:38:42,850 Sú svetla na? 944 00:38:42,850 --> 00:38:45,020 Sú svetla na, pretože možno budete mať časovač, a 945 00:38:45,020 --> 00:38:47,360 Chcete, aby išli preč, možno budete musieť niečo urobiť 946 00:38:47,360 --> 00:38:48,290 znovu a znovu. 947 00:38:48,290 --> 00:38:50,540 A v skutočnosti, keď už hovoríme o časovačov, každý z vás, ktorí sa 948 00:38:50,540 --> 00:38:53,100 hodiny na vašom počítači alebo digitálne hodinky, to je 949 00:38:53,100 --> 00:38:54,210 nekonečnej slučky. 950 00:38:54,210 --> 00:38:56,980 Naďalej aktualizovať čas, pretože je to stále 951 00:38:56,980 --> 00:38:59,750 kontrola a kontrola a kontrola má čas zmeniť, 952 00:38:59,750 --> 00:39:01,000 a ak áno, oh, môj bože. 953 00:39:03,670 --> 00:39:04,740 Hodiny sa konečne zmenila. 954 00:39:04,740 --> 00:39:07,020 Treba zobraziť túto hodnotu pre vás. 955 00:39:07,020 --> 00:39:10,880 Takže vzhľadom k tomu, väčšinu času nekonečné slučky sú chybou, 956 00:39:10,880 --> 00:39:13,950 alebo aspoň zlú dizajnu rozhodnutia, inokedy 957 00:39:13,950 --> 00:39:14,785 majú svoju hodnotu. 958 00:39:14,785 --> 00:39:18,170 >> Dobre, poďme postúpiť ďalej tu hello7. 959 00:39:18,170 --> 00:39:20,410 Takže teraz bude program trochu viac interaktívne. 960 00:39:20,410 --> 00:39:23,120 Dovoľte mi, aby som priblížite tú, a znovu, to je to, čo je pekné 961 00:39:23,120 --> 00:39:23,640 o Scratch. 962 00:39:23,640 --> 00:39:26,760 A budeme používať to, aby bolo jasno, Scratch, práve dnes a do 963 00:39:26,760 --> 00:39:27,780 budúci týždeň je problém nastaviť. 964 00:39:27,780 --> 00:39:31,920 Ale v pondelok, sme sa ponoriť do C. V tomto programe tu, to robí, 965 00:39:31,920 --> 00:39:33,190 navždy, nasledujúce. 966 00:39:33,190 --> 00:39:35,890 AK dotyku myši - teraz, kto je 967 00:39:35,890 --> 00:39:36,420 súvislosti tu? 968 00:39:36,420 --> 00:39:39,670 No, a všimnite si, že kto je vybraný tu dole 969 00:39:39,670 --> 00:39:43,060 právo je mačka, sprite, takže sú tieto skripty, tento 970 00:39:43,060 --> 00:39:45,720 Program, platí pre neho konkrétne. 971 00:39:45,720 --> 00:39:48,950 Takže ak tá mačka sa dotýka myši, potom to bude 972 00:39:48,950 --> 00:39:51,350 hrať túto dole a počkajte dve sekundy, a 973 00:39:51,350 --> 00:39:53,030 opakujte najmenších podrobností. 974 00:39:53,030 --> 00:39:55,360 >> Tak poďme do toho a hit hru. 975 00:39:55,360 --> 00:39:57,580 Nič sa nestane, ale ak chcem maznať 976 00:39:57,580 --> 00:39:59,310 cat teraz, môžem len. 977 00:39:59,310 --> 00:40:01,130 [Meow] 978 00:40:01,130 --> 00:40:02,244 DAVID Malan: Rozkošný. 979 00:40:02,244 --> 00:40:05,956 [Meow] 980 00:40:05,956 --> 00:40:08,750 DAVID Malan: Dobre, menej obťažujúce, ale aj zmatnie, 981 00:40:08,750 --> 00:40:11,480 tak poďme ďalej a uvidíme, či nemôžeme aplikovať 982 00:40:11,480 --> 00:40:12,460 trochu viac logiky. 983 00:40:12,460 --> 00:40:14,300 To bolo napríklad sedem. 984 00:40:14,300 --> 00:40:16,090 >> Tu v príklade osem, budeme 985 00:40:16,090 --> 00:40:18,670 zaviesť ELSE podmienku. 986 00:40:18,670 --> 00:40:21,440 Toľko ako doslovný rázcestí, v ktorom môžete ísť 987 00:40:21,440 --> 00:40:24,260 vľavo alebo môžete ísť rovno, stav v programovaní 988 00:40:24,260 --> 00:40:28,120 jazyk ako Scratch, alebo ako uvidíme C, vám umožní 989 00:40:28,120 --> 00:40:32,230 ísť v jednom smere alebo iný cez If Else konštrukcie. 990 00:40:32,230 --> 00:40:35,160 Takže doslova, AK dotýkať myši, táto 991 00:40:35,160 --> 00:40:38,680 bude hrať nejaký zvuk, ELSE, že to bude hrať ten druhý 992 00:40:38,680 --> 00:40:39,800 zvuk, mňau. 993 00:40:39,800 --> 00:40:42,510 Teraz, ak môžete odvodiť z názvu týchto zvukov, môžete 994 00:40:42,510 --> 00:40:45,310 asi tušíte, čo tento program je určený pre vykúzliť 995 00:40:45,310 --> 00:40:46,250 myšlienka. 996 00:40:46,250 --> 00:40:48,742 Táto mačka je meowing šťastne. 997 00:40:48,742 --> 00:40:49,230 [Meow] 998 00:40:49,230 --> 00:40:51,410 DAVID Malan: Našťastie, ale nie je 999 00:40:51,410 --> 00:40:52,926 Celkom sa mi páči, aby sa dotkol. 1000 00:40:52,926 --> 00:40:54,550 [Reve] 1001 00:40:54,550 --> 00:40:57,500 DAVID Malan: Takže teraz máme mačku, ktorá bude kričať na teba. 1002 00:40:57,500 --> 00:41:00,570 >> Dobre, dobre, posledný príklad s mačkami tu, a 1003 00:41:00,570 --> 00:41:02,920 Poďme otvorená verzia deväť tu. 1004 00:41:02,920 --> 00:41:06,190 Takže teraz máme ďalšie Najotravnejšia zvuk, že som mohol 1005 00:41:06,190 --> 00:41:11,630 nájsť, takže máme mroža alebo mrože tu, kto bude 1006 00:41:11,630 --> 00:41:13,222 vykonajte nasledujúce. 1007 00:41:13,222 --> 00:41:20,870 [SEAL kôra] 1008 00:41:20,870 --> 00:41:23,310 DAVID Malan: Dobre, takže to bude pokračovať, kým sa prísť na to, ako 1009 00:41:23,310 --> 00:41:24,640 tento program funguje. 1010 00:41:24,640 --> 00:41:28,560 Takže tentoraz, to zviera má dva skripty, a to, čo je 1011 00:41:28,560 --> 00:41:31,050 Zaujímavé je, že tieto skripty budú vykonávať 1012 00:41:31,050 --> 00:41:32,260 paralelne. 1013 00:41:32,260 --> 00:41:35,340 Tak preto, že obaja začať s jedným zelené vlajky na neho kliknete, 1014 00:41:35,340 --> 00:41:38,080 je to ako ísť takto, a oba programy rozbehnú ju 1015 00:41:38,080 --> 00:41:41,370 raz, aj keď sú to slučky navždy. 1016 00:41:41,370 --> 00:41:44,420 Takže v hornej skriptu, mám nejakú logiku. 1017 00:41:44,420 --> 00:41:49,275 Aké funkcie, ktoré poskytujú tam? 1018 00:41:49,275 --> 00:41:50,740 [SEAL kôra] 1019 00:41:50,740 --> 00:41:51,670 PUBLIKUM: [Nepočuteľné] 1020 00:41:51,670 --> 00:41:53,295 DAVID Malan: Ak je to, čo? 1021 00:41:53,295 --> 00:41:53,760 [SEAL kôra] 1022 00:41:53,760 --> 00:41:55,852 PUBLIKUM: Ak stlmený na nulu, bude to hrať ďalej 1023 00:41:55,852 --> 00:41:58,410 zvuk. [SEAL kôra] 1024 00:41:58,410 --> 00:41:58,940 DAVID Malan: Dobre, dobre. 1025 00:41:58,940 --> 00:42:01,960 Takže ak tlmené, čo to je, to oranžová vec je nulová, 1026 00:42:01,960 --> 00:42:05,370 POTOM hrať mrože zvuk a že "Oh, 1027 00:42:05,370 --> 00:42:06,770 ahoj, "po dobu dvoch sekúnd. 1028 00:42:06,770 --> 00:42:09,380 Teraz, ja neviem, čo je stlmený, ale nulové vyvoláva 1029 00:42:09,380 --> 00:42:11,230 Myšlienka false alebo vypnúť. 1030 00:42:11,230 --> 00:42:14,490 Takže ak stlmený je nepravdivé, tak pokiaľ nie je vypnutý, 1031 00:42:14,490 --> 00:42:15,660 udržať prehrávanie zvuku. 1032 00:42:15,660 --> 00:42:17,350 Dobre, dobre, ako sme sa zakázať túto vec? 1033 00:42:17,350 --> 00:42:19,310 >> No, poďme sa pozrieť na druhom skript tam dole. 1034 00:42:19,310 --> 00:42:22,130 Druhý skript hovorí nastavená stlmený na nulu. 1035 00:42:22,130 --> 00:42:25,180 Všimnite si, že je to tiež oranžová, takže to, čo robí, je to Scratch farby 1036 00:42:25,180 --> 00:42:27,400 bloky v rovnakom odtieni, ak je to niečo 1037 00:42:27,400 --> 00:42:28,850 logicky súvisí. 1038 00:42:28,850 --> 00:42:32,850 Takže rovnako ako tlmené až hore bola oranžová, tak je stlmený tu 1039 00:42:32,850 --> 00:42:34,060 je uvedené v oranžovej bloku. 1040 00:42:34,060 --> 00:42:36,170 Ale to je len variabilné úlohy, takže rovnako ako v 1041 00:42:36,170 --> 00:42:39,170 algebra, máte X a Y a Z, v programovaní máte 1042 00:42:39,170 --> 00:42:41,440 premenné, ale oni sú všeobecne - 1043 00:42:41,440 --> 00:42:42,580 Vráťme sa na chvíľu zastaviť a postava ako 1044 00:42:42,580 --> 00:42:44,280 k zastaveniu tohto štekanie. 1045 00:42:44,280 --> 00:42:45,480 Ako to mám urobiť? 1046 00:42:45,480 --> 00:42:46,480 [SEAL kôra] 1047 00:42:46,480 --> 00:42:47,920 DAVID Malan: Dobre. 1048 00:42:47,920 --> 00:42:49,490 Prestalo to. Dobre. 1049 00:42:49,490 --> 00:42:52,230 >> Takže rovnako ako v algebre máte premennej x, y, a z, ale v 1050 00:42:52,230 --> 00:42:55,260 programovanie, ktoré majú premenné, ako x, y, a z všeobecne 1051 00:42:55,260 --> 00:42:57,330 odsudzovaný, pretože to nie je vôbec výrazný. 1052 00:42:57,330 --> 00:43:00,070 Nemajú sémantický význam vôbec, tak vo väčšine 1053 00:43:00,070 --> 00:43:02,110 programovacie jazyky, môžu premenné majú plné 1054 00:43:02,110 --> 00:43:05,270 plnohodnotné mená alebo slová alebo frázy, stlmený rád, povedať 1055 00:43:05,270 --> 00:43:06,030 čo robia. 1056 00:43:06,030 --> 00:43:09,380 Takže toto Druhý skript tiež počúval navždy, a povedal 1057 00:43:09,380 --> 00:43:12,100 Ak kľúč, klávesnica kľúč Space, je 1058 00:43:12,100 --> 00:43:13,370 lisované, otáznik. 1059 00:43:13,370 --> 00:43:16,300 Takže tam je to stav s logický výraz, ktorý je 1060 00:43:16,300 --> 00:43:19,010 bude odpovedať na otázku, ako pravdivo, alebo false, 1061 00:43:19,010 --> 00:43:22,880 potom som do nej, že si miesto stlačení tlačidla A 1062 00:43:22,880 --> 00:43:28,020 AK stlmený je nula, nastavte stlmený na jednu, ELSE nastaviť stlmený na nulu. 1063 00:43:28,020 --> 00:43:30,510 Takže ten druhý rázcestí, a všimnite si, ako som sa 1064 00:43:30,510 --> 00:43:33,500 vnorené dve, ak podmienky, je spôsob kontroly je 1065 00:43:33,500 --> 00:43:36,610 Space Bar stlačení, pretože ak áno, som buď chcem ísť túto 1066 00:43:36,610 --> 00:43:38,000 tak či onak. 1067 00:43:38,000 --> 00:43:40,210 A ako mám obrátiť hodnotu stlmený? 1068 00:43:40,210 --> 00:43:41,410 Musím zistiť, je to nula? 1069 00:43:41,410 --> 00:43:45,890 Ak áno, je to jedna, inak aby bolo nula až teda prepínať 1070 00:43:45,890 --> 00:43:47,670 jeho dva stavy. 1071 00:43:47,670 --> 00:43:50,030 >> Dobre, takže máme potom niektoré z týchto základných 1072 00:43:50,030 --> 00:43:50,540 konštrukty. 1073 00:43:50,540 --> 00:43:52,810 Máme booleovských výrazov, a uvedomiť si, taky, sú 1074 00:43:52,810 --> 00:43:54,050 nie je všetko, že neznáme. 1075 00:43:54,050 --> 00:43:56,730 V skutočnosti, tu je rýchly screenshot samozrejme Harvard je CS50 1076 00:43:56,730 --> 00:43:59,740 nákupné nástroj, a všetky webové stránky, ktoré tam má zaškrtávacie políčka 1077 00:43:59,740 --> 00:44:02,420 a pokles zostrelí naozaj, celú tú dobu, boli pomocou 1078 00:44:02,420 --> 00:44:03,430 Booleovské výrazy. 1079 00:44:03,430 --> 00:44:05,760 V tomto prípade tu, ak kliknete na zaškrtávacie políčko vedľa 1080 00:44:05,760 --> 00:44:08,620 Predmet väčšie alebo rovné 4,5, alebo rovnaký vedľa 1081 00:44:08,620 --> 00:44:11,200 fakulty, ste s uvedením logický výraz. 1082 00:44:11,200 --> 00:44:14,780 Ukáž mi kurzy, pre ktoré tento výraz je pravdivý. 1083 00:44:14,780 --> 00:44:17,080 Alebo doprava, nie je v rozpore s kurzami prečo som 1084 00:44:17,080 --> 00:44:20,440 pričom, ak je to, potom áno, chcete skontrolovať 1085 00:44:20,440 --> 00:44:22,890 táto podmienka, inak budete chcieť ignorovať. 1086 00:44:22,890 --> 00:44:25,170 Takže Booleovské výrazy sú trochu všade okolo, ale keď 1087 00:44:25,170 --> 00:44:28,080 dáme ich do podmienok, nech ak to podmienky, AK 1088 00:44:28,080 --> 00:44:30,480 Elses, alebo dokonca môžeme simulovať hlbšie 1089 00:44:30,480 --> 00:44:32,830 úrovniach, pokiaľ ELSE If Else - 1090 00:44:32,830 --> 00:44:34,430 tak to je niečo ako ternárnu stave. 1091 00:44:34,430 --> 00:44:36,920 Môžete ísť tadiaľ alebo tento spôsob, alebo tento spôsob. 1092 00:44:36,920 --> 00:44:39,680 Môžeme si ponechať hniezdenia veci ísť rôznymi smermi. 1093 00:44:39,680 --> 00:44:41,800 >> Tak Scratch má tieto slučky, ako Forever. 1094 00:44:41,800 --> 00:44:44,750 To má tieto funkcie, ako je Repeat 10, niektoré 1095 00:44:44,750 --> 00:44:46,260 konečný počet, koľkokrát chcete. 1096 00:44:46,260 --> 00:44:49,040 Máme schopnosť teraz nastaviť premenné, takže v tomto prípade sa 1097 00:44:49,040 --> 00:44:51,810 Ja som vyhlásil, napríklad premennú s názvom ponožky. 1098 00:44:51,810 --> 00:44:54,340 Som inicializované na 0, a to je ďalší smer 1099 00:44:54,340 --> 00:44:56,940 mohli sme zobrať tu s Jozefom, čím som možno 1100 00:44:56,940 --> 00:45:00,150 len sledovať, koľko ponožky mám na a ukončiť 1101 00:45:00,150 --> 00:45:03,490 program pri tejto premennej je hodnota 2. 1102 00:45:03,490 --> 00:45:05,660 To by bol iný spôsob, ako radiť z zovšeobecňovať, že 1103 00:45:05,660 --> 00:45:08,820 problém a robiť niečo znovu a znovu. 1104 00:45:08,820 --> 00:45:12,080 No, poďme ďalej a teraz predstavuje pár nových vecí. 1105 00:45:12,080 --> 00:45:14,100 Takže tí z vás s predchádzajúcim programovanie skúseností bude 1106 00:45:14,100 --> 00:45:17,120 viem, že mnoho jazykov má pole, alebo vektorov alebo 1107 00:45:17,120 --> 00:45:19,970 zoznamy, a naozaj, Scratch má niečo také taky. 1108 00:45:19,970 --> 00:45:22,510 Tak uvidíme, či sa nám podarí nebrať veci na ďalšiu úroveň tu. 1109 00:45:22,510 --> 00:45:24,920 Ak budem mať možnosť, teraz s týmito puzzle kúsky na 1110 00:45:24,920 --> 00:45:29,080 pridať niečo, ako slovo alebo číslo, do premennej, môžem 1111 00:45:29,080 --> 00:45:30,550 začať hromadiť veci. 1112 00:45:30,550 --> 00:45:33,630 A to je vlastne celkom apropos pre veci, ako sú hry, 1113 00:45:33,630 --> 00:45:35,810 hry na hrdinov, kde ste druh chodí 1114 00:45:35,810 --> 00:45:38,600 niektoré fantasy svet zbieranie vecí, vyzdvihnutie veci, 1115 00:45:38,600 --> 00:45:39,900 zbierať body, alebo podobne. 1116 00:45:39,900 --> 00:45:42,310 Možno budete chcieť sledovať nejakého druhu zásob, a 1117 00:45:42,310 --> 00:45:45,180 naozaj, že to, čo jeden z našich bývalých študentov tu robil s 1118 00:45:45,180 --> 00:45:47,750 niečo, čo nazýva Fruitcraft RPG. 1119 00:45:47,750 --> 00:45:51,820 >> Tak nechaj ma ísť napred a otvoriť túto vec tu, a vo 1120 00:45:51,820 --> 00:45:56,260 Fruitcraft, máme tento svet sa na vrchole. 1121 00:45:56,260 --> 00:45:58,820 Tak nechaj ma ísť napred a kliknite na zelenú vlajkou. 1122 00:45:58,820 --> 00:46:01,040 Oznámenie vľavo hore je nejaký druh zásob. 1123 00:46:01,040 --> 00:46:04,110 To je realizovaný v Scratch ako to, čo budeme hovoriť poľa alebo 1124 00:46:04,110 --> 00:46:06,890 zoznamu, a teraz máme túto malú animáciu. 1125 00:46:06,890 --> 00:46:10,440 Takže rovnako ako sme začali skôr s týmto príbehom cookie lásky, 1126 00:46:10,440 --> 00:46:13,320 a potom sme postúpili k mačiek a tuleňov, teraz môžeme mať 1127 00:46:13,320 --> 00:46:15,100 veci, ktoré sú ešte viac interaktívne. 1128 00:46:15,100 --> 00:46:18,250 A tento malý modrý chlapec, môžem začať pohybovať jeho 1129 00:46:18,250 --> 00:46:19,500 málo domov tu. 1130 00:46:19,500 --> 00:46:22,570 Takže to vyzerá, že má k výjazdu sem, takže som pomocou 1131 00:46:22,570 --> 00:46:25,260 sa šípkami, hore, dole, vľavo, vpravo. 1132 00:46:25,260 --> 00:46:28,370 A teraz som mimo, tak nech je to, čo som sa sem dostal. 1133 00:46:28,370 --> 00:46:30,920 Vyzerá to ako pomaranč, a naozaj, akonáhle som sa dotknúť 1134 00:46:30,920 --> 00:46:33,110 oranžová, dostane sa zvalil do svojho inventára. 1135 00:46:33,110 --> 00:46:35,640 Keď idem sem na čerešne, teraz mám niečo 1136 00:46:35,640 --> 00:46:36,760 iný v mojom inventári. 1137 00:46:36,760 --> 00:46:39,100 A to je pekné a roztomilé, ale premýšľať o tom, ako teraz, to 1138 00:46:39,100 --> 00:46:39,840 je realizovaný. 1139 00:46:39,840 --> 00:46:42,490 No, máme tento pojem v zozname, a to je zrejme 1140 00:46:42,490 --> 00:46:45,470 skladačky, že stačí povedať, čo chcete pridať na to, pridať 1141 00:46:45,470 --> 00:46:46,950 oranžová, pridajte čerešne. 1142 00:46:46,950 --> 00:46:48,540 A teraz, čo je to malý modrý chlap robí? 1143 00:46:48,540 --> 00:46:49,810 No, on je to škriatok. 1144 00:46:49,810 --> 00:46:52,190 A pravdepodobne, oranžovej a čerešne - 1145 00:46:52,190 --> 00:46:54,140 oni sami boli oddelené škriatkov. 1146 00:46:54,140 --> 00:46:56,980 A pomocou podmienok v logických výrazov, 1147 00:46:56,980 --> 00:47:00,530 Študent bol pravdepodobne schopný vyjadriť AK modrej chlap je 1148 00:47:00,530 --> 00:47:04,590 dotýkajú čerešne Potom pridajte slovo čerešne na jeho 1149 00:47:04,590 --> 00:47:07,890 zásob, a potom tiež skryť čerešňový sprite. 1150 00:47:07,890 --> 00:47:10,600 Takže pod kapotou, tam pravdepodobne ešte je čerešňa 1151 00:47:10,600 --> 00:47:11,350 sprite tam. 1152 00:47:11,350 --> 00:47:14,160 Práve sme povedali, aby sa stal skutočne neviditeľný. 1153 00:47:14,160 --> 00:47:16,340 >> Teraz, keď som ísť ďalej tu, môžeme vykonať aj 1154 00:47:16,340 --> 00:47:19,150 proximálnej vec, kde by som mohol ísť a čítať znamenia. 1155 00:47:19,150 --> 00:47:23,170 Takže ak blue chlap dotýka znamenie, môžeme mať to hovorí blok 1156 00:47:23,170 --> 00:47:26,455 rovnako ako mačka k nám prehovoril v slovách, ahoj, predtým, "Got 1157 00:47:26,455 --> 00:47:26,880 niektoré druhy ovocia? 1158 00:47:26,880 --> 00:47:29,290 Prineste ho na ovocie miesto. "Dobre, takže teraz, zdá sa, 1159 00:47:29,290 --> 00:47:30,550 Mám inštrukcie. 1160 00:47:30,550 --> 00:47:33,050 Môžem ísť sem na ovocie miesto, zarovnajte aby som sa 1161 00:47:33,050 --> 00:47:33,740 s dverami. 1162 00:47:33,740 --> 00:47:35,390 Teraz som tu. 1163 00:47:35,390 --> 00:47:38,120 Môžem ísť až k mužovi na prepážke. 1164 00:47:38,120 --> 00:47:40,330 On zistí, že som sa k nemu, tak to nemusí byť 1165 00:47:40,330 --> 00:47:46,780 docela rovnako dojemné, a ja som vyhral hru. 1166 00:47:46,780 --> 00:47:49,890 Tak tu to máme Fruitcraft RPG. 1167 00:47:49,890 --> 00:47:52,200 >> Takže môžeme robiť veci ešte pokročilejšie, než toto. 1168 00:47:52,200 --> 00:47:53,200 Môžeme pridať zvuky. 1169 00:47:53,200 --> 00:47:54,610 Môžeme pridať pseudo náhodnosť. 1170 00:47:54,610 --> 00:47:56,260 Môžeme pridať zložitosť. 1171 00:47:56,260 --> 00:47:58,490 Nechaj ma ísť napred tu, a skôr než robiť to sám, 1172 00:47:58,490 --> 00:48:01,240 dovoľte mi, aby som vám ukázať jeden z viac sofistikovaných podania 1173 00:48:01,240 --> 00:48:06,640 sme v minulom roku z určitého niekoho menom Blake. 1174 00:48:06,640 --> 00:48:08,910 Môžeme mať jedného dobrovoľníka, ktorý je pohodlný objaviť na 1175 00:48:08,910 --> 00:48:12,600 fotoaparát a je pre hranie hier? 1176 00:48:12,600 --> 00:48:13,450 Ako asi tu? 1177 00:48:13,450 --> 00:48:15,380 Poď hore. 1178 00:48:15,380 --> 00:48:19,680 Dobre, takže hra, ktorá ste práve nevedomky 1179 00:48:19,680 --> 00:48:20,780 dobrovoľne hrať - 1180 00:48:20,780 --> 00:48:25,910 [APPLAUSE] 1181 00:48:25,910 --> 00:48:28,610 DAVID Malan: - je niečo, čo z dávnych čias tzv 1182 00:48:28,610 --> 00:48:30,100 "Frogger." Aké je vaše meno? 1183 00:48:30,100 --> 00:48:30,730 Renda: Renda. 1184 00:48:30,730 --> 00:48:31,050 DAVID Malan: radný? 1185 00:48:31,050 --> 00:48:32,530 Renda: Je to ako Brenda s b. 1186 00:48:32,530 --> 00:48:33,190 DAVID Malan: Dobre, Renda. 1187 00:48:33,190 --> 00:48:33,590 David. 1188 00:48:33,590 --> 00:48:34,580 Rád Vás vidím. 1189 00:48:34,580 --> 00:48:38,690 >> Takže tu v "Frogger", a ak by sme mohli zvýšiť objem len 1190 00:48:38,690 --> 00:48:39,780 trochu, ste tento malý 1191 00:48:39,780 --> 00:48:41,010 zelená žaba na dne. 1192 00:48:41,010 --> 00:48:43,940 Môžete použiť vľavo, vpravo, hore a dole, a vaším cieľom je, aby 1193 00:48:43,940 --> 00:48:46,510 cez ulicu, cez rieku, a kliknite na ľalie podložky 1194 00:48:46,510 --> 00:48:47,760 v hornej časti. 1195 00:48:52,090 --> 00:48:53,440 Aw. 1196 00:48:53,440 --> 00:48:54,630 One More t - 1197 00:48:54,630 --> 00:48:56,400 redo, dobre? 1198 00:48:56,400 --> 00:48:58,890 Poďme hit stop. 1199 00:48:58,890 --> 00:49:00,140 Nikto nevidel, že. 1200 00:49:10,470 --> 00:49:12,930 [APPLAUSE] 1201 00:49:17,023 --> 00:49:17,850 [APPLAUSE] 1202 00:49:17,850 --> 00:49:19,341 DAVID Malan: Jo. 1203 00:49:19,341 --> 00:49:20,832 Veľmi dobre. 1204 00:49:20,832 --> 00:49:22,082 Skvelé, ďakujem. 1205 00:49:27,300 --> 00:49:29,430 >> Tak, že došlo Frogger. Teraz, keď viete, čo ste 1206 00:49:29,430 --> 00:49:32,170 dostal sami do, ešte jeden dobrovoľník pre rôzne 1207 00:49:32,170 --> 00:49:34,910 Hra nám iným študentom. 1208 00:49:34,910 --> 00:49:35,560 Ak chcete ísť hore? 1209 00:49:35,560 --> 00:49:36,576 Ako sa voláte? 1210 00:49:36,576 --> 00:49:37,000 RICHARD: Richard. 1211 00:49:37,000 --> 00:49:37,420 DAVID Malan: Richard. 1212 00:49:37,420 --> 00:49:39,732 Dobre, Richard, poď hore. 1213 00:49:39,732 --> 00:49:42,187 [APPLAUSE] 1214 00:49:45,140 --> 00:49:47,030 DAVID Malan: Máte niečo, čo bude znieť 1215 00:49:47,030 --> 00:49:54,180 oboznámení čoskoro, takže tu sú vaše inštrukcie. 1216 00:49:54,180 --> 00:49:56,580 Takže vo chvíli, niektoré dieliky budú posúvať nahor 1217 00:49:56,580 --> 00:49:58,150 na obrazovke, ktorá vyzerajú buď vľavo 1218 00:49:58,150 --> 00:49:59,450 alebo vpravo hore alebo dolu. 1219 00:49:59,450 --> 00:50:01,230 Budeš musieť zasiahnuť šípkou takým spôsobom, 1220 00:50:01,230 --> 00:50:04,540 že zodpovedá týmto dielikov čakajúcich s 1221 00:50:04,540 --> 00:50:05,720 zástupné symboly v hornej. 1222 00:50:05,720 --> 00:50:07,500 Takže keď vidíte šípka vľavo, a to linky s ľavou 1223 00:50:07,500 --> 00:50:09,260 arrow, udrel na šípku doľava. 1224 00:50:09,260 --> 00:50:10,866 Môžete začať. 1225 00:50:10,866 --> 00:50:13,674 [MUSIC - "silnejší" Kayne West] 1226 00:51:21,222 --> 00:51:23,470 DAVID Malan: Dobre, veľký potlesk pre Richarda. 1227 00:51:23,470 --> 00:51:26,082 [APPLAUSE] 1228 00:51:32,426 --> 00:51:33,720 DAVID Malan: Veľmi dobrá práca. 1229 00:51:33,720 --> 00:51:34,110 Ďakujem. 1230 00:51:34,110 --> 00:51:37,104 [APPLAUSE] 1231 00:51:41,600 --> 00:51:44,330 >> DAVID Malan: Tak zábavné a, zdanlivo, druh 1232 00:51:44,330 --> 00:51:46,590 zastrašujúce ako by mohla byť na realizáciu niečo ako 1233 00:51:46,590 --> 00:51:49,550 zdanlivo sofistikované ako to, uvedomiť si, že študent 1234 00:51:49,550 --> 00:51:51,450 neboli stanovené a len písať to všetko naraz. 1235 00:51:51,450 --> 00:51:54,200 Skôr, môžete rozobrať problém ako zdanlivo zložité 1236 00:51:54,200 --> 00:51:56,840 pretože to v oveľa menšie kúsky, a to je tiež 1237 00:51:56,840 --> 00:51:57,560 bude témou. 1238 00:51:57,560 --> 00:52:00,490 Najhoršia vec, ktorú môžete urobiť pri písaní programu vo väčšine akejkoľvek 1239 00:52:00,490 --> 00:52:03,480 jazyk je, aby sa posadili, sa naozaj vzrušená, napíšte 1240 00:52:03,480 --> 00:52:07,200 Celá tá prekliata vec, a potom už len dúfať, že to funguje 1241 00:52:07,200 --> 00:52:08,510 Čas, ktorý sa dokončenie písanie. 1242 00:52:08,510 --> 00:52:10,920 Skôr by proces plánovania všeobecne 1243 00:52:10,920 --> 00:52:13,440 byť veľmi úmyselné, veľmi iteratívny, kedy stačí 1244 00:52:13,440 --> 00:52:16,955 nastaviť veľmi malé kroky pre seba, bite-size kúsky 1245 00:52:16,955 --> 00:52:20,070 chceš odhryznúť, a tak, že máte tieto zdravý rozum 1246 00:52:20,070 --> 00:52:21,740 kontroly, malé míľniky môžete stretnúť. 1247 00:52:21,740 --> 00:52:24,170 A potom budete stavať na vrchole tých vytvoriť viac 1248 00:52:24,170 --> 00:52:25,400 sofistikované veci stále. 1249 00:52:25,400 --> 00:52:26,820 >> Tak napríklad, ako by sme ísť o 1250 00:52:26,820 --> 00:52:28,380 , Ktorým sa vykonáva hru ako je tento? 1251 00:52:28,380 --> 00:52:30,160 No, úprimne povedané, určite by som začať tým, že práve 1252 00:52:30,160 --> 00:52:32,260 podporuje jedno tlačidlo naraz. 1253 00:52:32,260 --> 00:52:34,840 Povedzme, implementovať podporu pre ľavé šípky. 1254 00:52:34,840 --> 00:52:37,610 Takže študent mal nejako vytvoriť v Photoshope, alebo v 1255 00:52:37,610 --> 00:52:40,340 Scratch sa pomocou malej grafický editor, k 1256 00:52:40,340 --> 00:52:42,680 arrow kľúč, ktorý vyzerá ako ten hore vľavo, len tam 1257 00:52:42,680 --> 00:52:43,910 sivý zástupný symbol. 1258 00:52:43,910 --> 00:52:46,610 Potom študent mal zistiť, čo sa x, y koordinovať 1259 00:52:46,610 --> 00:52:48,380 dať, kam to dať v okne. 1260 00:52:48,380 --> 00:52:50,730 0, 0 je tu, takže budete musieť prísť na rad 1261 00:52:50,730 --> 00:52:53,690 pixelov, alebo bodky, na vyrovnanie ten šíp z 1262 00:52:53,690 --> 00:52:54,800 v hornej časti obrazovky. 1263 00:52:54,800 --> 00:52:57,040 A potom ešte raz, že je v mieste, váš program nie je v skutočnosti 1264 00:52:57,040 --> 00:53:00,380 robiť niečo ešte, takže potom je potrebné druhý sprite, pre 1265 00:53:00,380 --> 00:53:04,470 inštancie zelená šípka, ktorá je tiež ukazujúce vľavo, a vy 1266 00:53:04,470 --> 00:53:06,710 potom je potrebné začať písať nejaké skripty pre neho. 1267 00:53:06,710 --> 00:53:09,310 >> A ste si všimli, možno, že tieto veci začali prichádzať na 1268 00:53:09,310 --> 00:53:11,470 pri rôznych rýchlostiach, a farby boli v rôznych 1269 00:53:11,470 --> 00:53:13,750 miesta, a to preto, že sa študent používa trochu 1270 00:53:13,750 --> 00:53:14,990 pseudo náhodnosť. 1271 00:53:14,990 --> 00:53:17,440 A tým pseudo náhodnosti, som len povedať, vybrať číslo 1272 00:53:17,440 --> 00:53:20,230 medzi niečím a niečo, pretože môžete 1273 00:53:20,230 --> 00:53:22,890 začať mape veci, ako keď číslo je medzi jedným a 1274 00:53:22,890 --> 00:53:24,940 päť, dobre, poďme sa vec zelené. 1275 00:53:24,940 --> 00:53:28,290 Ak je to medzi 6 a 10, poďme sa na kúsok skladačky 1276 00:53:28,290 --> 00:53:29,730 červená miesto. 1277 00:53:29,730 --> 00:53:31,840 Tak dlho, ako máte spôsob generovania nejaký 1278 00:53:31,840 --> 00:53:34,730 náhodnosť, môžete potom urobiť rozhodnutie na základe toho 1279 00:53:34,730 --> 00:53:35,260 náhodnosť. 1280 00:53:35,260 --> 00:53:37,490 A ja si hovoria pseudo náhodný, pretože tam je 1281 00:53:37,490 --> 00:53:38,390 trochu špinavé tajomstvo. 1282 00:53:38,390 --> 00:53:41,130 Počítače nemôže prísť s náhodnými číslami. 1283 00:53:41,130 --> 00:53:42,800 Môžu robiť len to, čo sa im povie, pretože 1284 00:53:42,800 --> 00:53:44,110 sú umelé zariadenia. 1285 00:53:44,110 --> 00:53:45,880 Nemôžu len hádať číslo ako my, ľudia, 1286 00:53:45,880 --> 00:53:46,960 pocit, že môžeme. 1287 00:53:46,960 --> 00:53:50,970 Počítač musí niečo urobiť matematický vykúzliť 1288 00:53:50,970 --> 00:53:53,970 ilúzie matematické čísla, niekedy používať 1289 00:53:53,970 --> 00:53:57,420 aktuálny deň času ako vstup do zisťuje, čo 1290 00:53:57,420 --> 00:53:59,570 Číslo vrátiť, ale o tom až inokedy. 1291 00:53:59,570 --> 00:54:02,060 Pre túto chvíľu, len viem, že môžeme vytvoriť pseudo náhodnosť. 1292 00:54:02,060 --> 00:54:04,610 >> Takže akonáhle som tú možnosť pre ľavé šípky pre spustenie 1293 00:54:04,610 --> 00:54:07,990 objaviť v rôznych časoch a na rôznych rýchlostiach, a potom 1294 00:54:07,990 --> 00:54:10,230 Môžem sa vrátiť a pridať niektoré z nich, ak podmienky. 1295 00:54:10,230 --> 00:54:14,950 Ak tento sprite sa dotýka druhú a ľavá šípka 1296 00:54:14,950 --> 00:54:16,330 bolo stlačené tlačidlo - 1297 00:54:16,330 --> 00:54:17,900 takže tri podmienky uvedené v tomto prípade. 1298 00:54:17,900 --> 00:54:20,750 Môžem použiť, že a blokovať možná, v tomto prípade - 1299 00:54:20,750 --> 00:54:23,210 Potom chcem ísť ďalej a zvyšovať skóre. 1300 00:54:23,210 --> 00:54:25,130 A hore, máme skóre, máme Awesome, 1301 00:54:25,130 --> 00:54:26,510 Cool, Good, a Boo. 1302 00:54:26,510 --> 00:54:29,810 Takže tam to vraj piatich premenných, ktoré tento študent 1303 00:54:29,810 --> 00:54:32,220 slúži na sledovanie týchto rôznych metrík. 1304 00:54:32,220 --> 00:54:34,180 Takže v skratke, konečný výsledok je úžasný. 1305 00:54:34,180 --> 00:54:37,320 Je to zábava, je to zábava hrať, je to pútavé, ale to nie je 1306 00:54:37,320 --> 00:54:38,380 kde študent začal. 1307 00:54:38,380 --> 00:54:42,210 On alebo ona začala pri oveľa menšej sadu krokov. 1308 00:54:42,210 --> 00:54:44,470 >> Takže aké sú niektoré ďalšie stavebné bloky, ktoré môžeme 1309 00:54:44,470 --> 00:54:45,760 väzba do týchto programov? 1310 00:54:45,760 --> 00:54:48,750 No, tam je to iné poňatie vo väčšine jazykov, 1311 00:54:48,750 --> 00:54:50,730 Stieracie medzi nimi, známy ako závity. 1312 00:54:50,730 --> 00:54:54,660 Takže počítač vlastne nie je naozaj viac vecí na 1313 00:54:54,660 --> 00:54:56,730 Doba, aspoň nie obvykle. 1314 00:54:56,730 --> 00:54:59,930 Skôr, počítač má zvyčajne len jeden procesor, a dokonca aj 1315 00:54:59,930 --> 00:55:02,230 aj keď počítače sú veľmi rýchle a môže preto, 1316 00:55:02,230 --> 00:55:04,740 vytvoriť ilúziu robiť viac vecí naraz - 1317 00:55:04,740 --> 00:55:06,180 kontrola pošty, ako sa okamžite 1318 00:55:06,180 --> 00:55:07,770 správa, tlač dokumentu - 1319 00:55:07,770 --> 00:55:11,530 Naozaj, počítač je len skákanie z tlače až IMing 1320 00:55:11,530 --> 00:55:15,160 na odosielanie e-mailov, späť a späť a tam a späť tak rýchlo, že sme 1321 00:55:15,160 --> 00:55:18,170 pomalé nechápavý ľudia jednoducho neuvedomujú, že je to vlastne 1322 00:55:18,170 --> 00:55:21,240 beží Tieto programy trochu v čase. 1323 00:55:21,240 --> 00:55:23,960 Teraz, to trochu biele ležať v týchto dňoch, pretože v dnešnej dobe, 1324 00:55:23,960 --> 00:55:26,740 mnoho našich počítačov je to, čo sa nazýva multi-core, takže 1325 00:55:26,740 --> 00:55:29,760 majú jeden procesor, ale viac jadier, čo je niečo ako 1326 00:55:29,760 --> 00:55:31,760 s viacerými procesormi. 1327 00:55:31,760 --> 00:55:35,020 >> A tak niekedy, môžu počítače skutočne robiť viac vecí 1328 00:55:35,020 --> 00:55:38,500 v čase, ale všeobecne v rámci programu, programy 1329 00:55:38,500 --> 00:55:40,200 spoliehajú na tieto veci zvanej vlákna. 1330 00:55:40,200 --> 00:55:43,160 Takže vlákno je niečo ako miniatúrne programu, ktoré môžu 1331 00:55:43,160 --> 00:55:46,540 existujú vedľa iného miniatúrne programu a môže spustiť 1332 00:55:46,540 --> 00:55:51,250 paralelne, alebo aspoň môže bežať v ilúzii, že 1333 00:55:51,250 --> 00:55:52,990 že beží súčasne. 1334 00:55:52,990 --> 00:55:55,060 Tak Scratch podporuje tieto veci zvanej vlákna. 1335 00:55:55,060 --> 00:55:57,580 Môžete mať viac skriptov vykonávajúci naraz, rovnako ako my 1336 00:55:57,580 --> 00:56:00,220 urobil sa levom mora, a to nám umožňuje skutočne 1337 00:56:00,220 --> 00:56:03,620 potom interakcie medzi týmito škriatkov. 1338 00:56:03,620 --> 00:56:09,910 Nechaj ma ísť napred sem a vytiahnuť, povedzme, vlákna, a 1339 00:56:09,910 --> 00:56:11,870 hrať to nasledujúcim spôsobom. 1340 00:56:11,870 --> 00:56:13,950 Máme dva prízraky, z ktorých každý uvidíme 1341 00:56:13,950 --> 00:56:15,720 má len jeden scenár. 1342 00:56:15,720 --> 00:56:18,000 A zistíte, že sa zdá byť nejaký inteligencie 1343 00:56:18,000 --> 00:56:21,335 mačka v tejto jednej, pretože on je stále bližšie - 1344 00:56:21,335 --> 00:56:21,730 [Reve] 1345 00:56:21,730 --> 00:56:24,540 DAVID Malan: - a bližšie k vtáčika. 1346 00:56:24,540 --> 00:56:26,570 >> Tak, ako je vták lieta? 1347 00:56:26,570 --> 00:56:28,200 No, poďme sa pozrieť na vtáka ako prvý. 1348 00:56:28,200 --> 00:56:31,220 Vták skript povedal po kliknutí zelená vlajka, choďte do adresára X 1349 00:56:31,220 --> 00:56:34,020 rovná zápornej 115 a y sa rovná 150. 1350 00:56:34,020 --> 00:56:37,010 Tak som prišiel na to, náhodné miesto, kde som chcel 1351 00:56:37,010 --> 00:56:39,580 vták začať, a ja len zvalil ho tam v predvolenom nastavení. 1352 00:56:39,580 --> 00:56:42,800 Potom Forever AK nedotýkajú mačku, tak to je iná 1353 00:56:42,800 --> 00:56:45,080 druh konštrukcie cyklu, ale rovnaký nápad, urobiť to znova a 1354 00:56:45,080 --> 00:56:45,780 znovu a znovu. 1355 00:56:45,780 --> 00:56:49,410 Tak dlho, ako ste sa nedotýka mačku, presuňte tri kroky, a 1356 00:56:49,410 --> 00:56:51,680 ak ste na hrane, odraziť, kde je to trochu 1357 00:56:51,680 --> 00:56:53,320 odraz v zmysle biliard. 1358 00:56:53,320 --> 00:56:56,140 Tak to je, ako sa vták pohybuje druhu 1359 00:56:56,140 --> 00:56:58,890 zdanlivo náhodne, ale je to len preto, že je to so odrazil 1360 00:56:58,890 --> 00:57:00,170 steny v tomto prípade. 1361 00:57:00,170 --> 00:57:03,170 >> Teraz mačka, medzitým, je tak trochu podvádzanie. 1362 00:57:03,170 --> 00:57:05,520 Mačka sa, keď používateľ klikne na zelené vlajky, áno, začína v 1363 00:57:05,520 --> 00:57:07,390 určité miesto, náhodné umiestnenie - 1364 00:57:07,390 --> 00:57:09,590 aspoň čiastočne podľa pick 1365 00:57:09,590 --> 00:57:11,430 náhodné zelená blok tam - 1366 00:57:11,430 --> 00:57:14,660 a potom Forever KEĎ dotyku vtáka, hrať lev zvuk, 1367 00:57:14,660 --> 00:57:15,790 a potom sa zastaví skript. 1368 00:57:15,790 --> 00:57:18,560 Takže keď som povedal ukončiť, alebo ukončiť skôr, tam je puzzle 1369 00:57:18,560 --> 00:57:20,600 kus Scratch, že bude len tak zabiť program sa na to 1370 00:57:20,600 --> 00:57:22,900 bodu, pretože je to trochu logicky urobiť. 1371 00:57:22,900 --> 00:57:25,030 Ale inak, tu, všimnite si, čo sa bude diať. 1372 00:57:25,030 --> 00:57:28,470 Bod k vtáka a o krok. 1373 00:57:28,470 --> 00:57:31,390 Takže tento bod k vták je tak trochu výhodu mačky 1374 00:57:31,390 --> 00:57:34,640 má v tom, že je to navádzací v na pohyblivú vtáka, a môžeme 1375 00:57:34,640 --> 00:57:37,370 Teraz, aby tento program all zaujímavejšie. 1376 00:57:37,370 --> 00:57:41,520 Miesto presunutie o jeden krok v čase, za cyklus procesora, za 1377 00:57:41,520 --> 00:57:44,280 štrajk mýto na zvončeku, aby som tak povedal, nechaj ma ísť napred a 1378 00:57:44,280 --> 00:57:47,350 pohybovať, povedzme, päť krokov naraz ako mačka. 1379 00:57:47,350 --> 00:57:51,120 Kliknite na tlačidlo Spustiť, a teraz naozaj ho nájde rýchlo. 1380 00:57:51,120 --> 00:57:55,620 Ak by sme zdvojnásobiť to ďalej 10 krokov, je trochu ide 1381 00:57:55,620 --> 00:57:56,370 právo na neho. 1382 00:57:56,370 --> 00:57:57,750 Teraz môžeme dať vtáka, 1383 00:57:57,750 --> 00:57:59,540 možno, trochu výhodu. 1384 00:57:59,540 --> 00:58:02,370 Poďme na vtáka a povedal miesto pohybu tri kroky, 1385 00:58:02,370 --> 00:58:07,140 poďme ho 30 krokov. 1386 00:58:07,140 --> 00:58:08,700 Ale stále bol chytený na konci. 1387 00:58:08,700 --> 00:58:10,430 >> Takže tu máme dve vlákna. 1388 00:58:10,430 --> 00:58:13,230 Je uväznený v Scratch s dvoma skripty a dva 1389 00:58:13,230 --> 00:58:16,150 škriatkovia, ale myšlienka v iných jazykoch je to, že môžete 1390 00:58:16,150 --> 00:58:19,220 napísať, v podstate, príliš veľa programov, ako je tento, a majú 1391 00:58:19,220 --> 00:58:22,950 je beh skutočne, alebo pomyselne, paralelne. 1392 00:58:22,950 --> 00:58:25,280 >> Teraz, tam je aj tento koncept v programovaní známy ako 1393 00:58:25,280 --> 00:58:28,010 udalosti, a to je niečo, čo sme sa nevideli v C, sa 1394 00:58:28,010 --> 00:58:30,500 jazyk známy ako C. Uvidíme ju na konci semestra 1395 00:58:30,500 --> 00:58:33,240 programovanie pre web, kedy sme predstavili JavaScript a 1396 00:58:33,240 --> 00:58:36,970 Pojem stránok stavebných webových ktoré sú dynamické a vzájomne 1397 00:58:36,970 --> 00:58:37,710 s používateľmi. 1398 00:58:37,710 --> 00:58:40,430 Takže v tomto prípade je nutné veľmi jednoduchý príklad dvoch 1399 00:58:40,430 --> 00:58:43,860 škriatkovia, chlapec a dievča, z ktorých každý má svoje príslušné 1400 00:58:43,860 --> 00:58:48,040 nite, ale nejako tieto dva sú vzájomne komunikovať prostredníctvom 1401 00:58:48,040 --> 00:58:49,490 zo dňa niečo ako akcie. 1402 00:58:49,490 --> 00:58:52,750 Tak nechaj ma ísť napred sem a priblížiť na chlapcovej skriptu, 1403 00:58:52,750 --> 00:58:54,050 ktorá vyzerá takto. 1404 00:58:54,050 --> 00:58:57,510 Keď zelená vlajka kliknutí navždy vykonajte nasledujúce. 1405 00:58:57,510 --> 00:59:01,510 Ak kľúč Space, alebo Space Bar, je stlačené, hovoria 1406 00:59:01,510 --> 00:59:03,900 Marco po dobu dvoch sekúnd, to je čisto estetického na 1407 00:59:03,900 --> 00:59:06,860 obrazovke, trochu speech bubble, ale potom vysielať. 1408 00:59:06,860 --> 00:59:09,240 >> Takže vysielanie je ďalší Scratch kus, ktorý je 1409 00:59:09,240 --> 00:59:12,050 zástupca triedy funkčnosti v programovaní 1410 00:59:12,050 --> 00:59:15,080 , Ktorý umožňuje rôzne programy, rôzne nite, 1411 00:59:15,080 --> 00:59:17,120 pochovať-komunikovať, nejako poslať 1412 00:59:17,120 --> 00:59:18,520 správy, jeden pre druhého. 1413 00:59:18,520 --> 00:59:21,930 Odovzdávanie kus papiera v triede je niečo ako nízka tech 1414 00:59:21,930 --> 00:59:22,700 ekvivalentné. 1415 00:59:22,700 --> 00:59:24,300 Takže vysielať udalosť. 1416 00:59:24,300 --> 00:59:26,210 Môžem poslať túto správu, a slovo akcie 1417 00:59:26,210 --> 00:59:27,270 je úplne ľubovoľné. 1418 00:59:27,270 --> 00:59:30,000 Scratch niekedy má tieto vrhnutých zostrelí, tak som len prišiel 1419 00:59:30,000 --> 00:59:33,230 s náhodným slovom, ako udalosť, pretože teraz, čo chlapec robí 1420 00:59:33,230 --> 00:59:36,600 keď som stlačte tlačidlo je, že vysiela túto udalosť. 1421 00:59:36,600 --> 00:59:39,270 A keď som sa pozrieť teraz na dievčaťa skriptu, jej skript je 1422 00:59:39,270 --> 00:59:42,690 super jednoduché, pretože všetko, čo musí urobiť, je nemôže konať, ak 1423 00:59:42,690 --> 00:59:44,100 zelená vlajka je kliknutie. 1424 00:59:44,100 --> 00:59:47,910 Ona je navrhnutý tak, aby pri akcii, keď sa dostane citovať, unquote, 1425 00:59:47,910 --> 00:59:51,210 "Akcia", a na tom mieste, ona počúva preto 1426 00:59:51,210 --> 00:59:52,960 tzv udalosť znovu a znovu. 1427 00:59:52,960 --> 00:59:55,790 Akonáhle sa dostane túto udalosť, si to bude kričať 1428 00:59:55,790 --> 00:59:57,680 Polo po dobu dvoch sekúnd. 1429 00:59:57,680 --> 01:00:01,090 >> A tak si môžete snáď vyvodiť z tohto presne to, čo 1430 01:00:01,090 --> 01:00:03,190 ďalšie výsledok bude. 1431 01:00:03,190 --> 01:00:04,910 Dovoľte mi, aby som kliknite na zelenú vlajkou. 1432 01:00:04,910 --> 01:00:06,610 Nič sa nestane, pretože musím robiť čo? 1433 01:00:06,610 --> 01:00:07,310 Divákov: Space Bar. 1434 01:00:07,310 --> 01:00:08,630 DAVID Malan: Space Bar. 1435 01:00:08,630 --> 01:00:11,990 Chlapec hovorí Marco, dievča hovorí Polo. 1436 01:00:11,990 --> 01:00:13,670 Ale to nie je pevne dané samo o sebe. 1437 01:00:13,670 --> 01:00:16,740 To je vzájomnej komunikácie medzi skripty, takže teraz 1438 01:00:16,740 --> 01:00:19,240 majú schopnosť urobiť ešte zložitejšie programy, kde 1439 01:00:19,240 --> 01:00:22,830 tieto dva sú tak nejako vzájomne komunikujúcich. 1440 01:00:22,830 --> 01:00:25,260 >> Takže to, čo smermi môžeme vziať? 1441 01:00:25,260 --> 01:00:28,260 No, problém súboru 0, naozaj, je cieľom 1442 01:00:28,260 --> 01:00:29,830 bavte sa s Scratch. 1443 01:00:29,830 --> 01:00:32,440 Pre hackera vydanie, budete namiesto toho baviť s viac 1444 01:00:32,440 --> 01:00:35,850 sofistikovanejšie verzia Scratch tzv BYOB, Build 1445 01:00:35,850 --> 01:00:38,040 Vaše vlastné bloky, ale myšlienka je rovnaká. 1446 01:00:38,040 --> 01:00:38,780 Budete môcť - 1447 01:00:38,780 --> 01:00:39,710 Áno, to bolo úmyselné. 1448 01:00:39,710 --> 01:00:42,450 Prišlo to z Berkeley. 1449 01:00:42,450 --> 01:00:45,200 BYOB je hacker vydania verzie, ale ako 1450 01:00:45,200 --> 01:00:48,180 demografia, Standard Edition a Hacker vydanie podobný, 1451 01:00:48,180 --> 01:00:50,940 cieľom pri ruke pre nadchádzajúci týždeň je naozaj len do toho ponoriť 1452 01:00:50,940 --> 01:00:53,050 hlboká, dostať svoje špinavé ruky s programovaním, a aby 1453 01:00:53,050 --> 01:00:55,240 niečo zaujímavé, aby sa niečo interaktívne, aby 1454 01:00:55,240 --> 01:00:58,020 niečo umelecké, urobiť niečo zábavnejšie skutočne 1455 01:00:58,020 --> 01:01:01,020 preukázať, takže do konca týždňa, budete mať projekt, 1456 01:01:01,020 --> 01:01:03,770 nielen pre svoje prvé CS50 PSet, ale budete mať 1457 01:01:03,770 --> 01:01:05,620 Niečo málo, že môžete predviesť v Annenberg na 1458 01:01:05,620 --> 01:01:08,830 priatelia, alebo dokonca rodinné podľa nahrať na webové stránky MIT. 1459 01:01:08,830 --> 01:01:11,760 A tak, ako som povedal v stredu očakávame 90% triedy, 1460 01:01:11,760 --> 01:01:13,970 všeobecne, k tomu štandardnej edície. 1461 01:01:13,970 --> 01:01:16,660 Uvedomte si, že je tu aj táto zásuvka pre tých z vás, ktorí 1462 01:01:16,660 --> 01:01:18,990 by inak nájsť si trochu nudiť sa základy 1463 01:01:18,990 --> 01:01:21,650 a naozaj chcete ponoriť a remeslá víziu ste už 1464 01:01:21,650 --> 01:01:25,380 mať s predchádzajúcim pozadia v to viac priateľský 1465 01:01:25,380 --> 01:01:26,240 prostredie. 1466 01:01:26,240 --> 01:01:29,030 >> Dovoľte mi teda vytiahnuť jeden ďalší príklad, že jeden z náš bývalý 1467 01:01:29,030 --> 01:01:33,830 Študenti tu urobil a povedať niečo málo cez piesne. 1468 01:01:33,830 --> 01:01:37,430 , Ktorý podobne, ako to hrá, myslím, že o tom, ako ísť o 1469 01:01:37,430 --> 01:01:40,520 vykonávaní tohto programu pomocou presne tie isté 1470 01:01:40,520 --> 01:01:44,180 stavebné bloky, trochu pseudo náhodnosti, a 1471 01:01:44,180 --> 01:01:46,010 trochu známe piesne. 1472 01:01:46,010 --> 01:01:47,910 Ak by sme mohli zvýšiť objem len trochu? 1473 01:01:47,910 --> 01:01:49,160 [MUSIC - "Prší muži" The Weather GIRLS] 1474 01:03:02,261 --> 01:03:03,930 >> DAVID Malan: To je to pre CS50. 1475 01:03:03,930 --> 01:03:05,860 Uvidíme sa v pondelok. 1476 01:03:05,860 --> 01:03:21,152 [APPLAUSE]