1 00:00:00,000 --> 00:00:11,120 2 00:00:11,120 --> 00:00:12,590 >> SPEAKER: Som [nepočuteľné]. 3 00:00:12,590 --> 00:00:14,820 A ja som v poslednom ročníku na Leverett House. 4 00:00:14,820 --> 00:00:18,700 Študujem informatiku, a ja som pre TF CS50. 5 00:00:18,700 --> 00:00:21,640 Ako nováčik som nemal ani notebook alebo smartphone. 6 00:00:21,640 --> 00:00:23,550 Nemal som skúsenosti s programovaním. 7 00:00:23,550 --> 00:00:29,690 CS50 bol najpamätnejšie kurz, ktorý Vzal som na Harvarde, pretože to bolo 8 00:00:29,690 --> 00:00:32,960 boj, ale to bol naozaj zábava zápas súčasne. 9 00:00:32,960 --> 00:00:37,670 A ja som urobil veľa úžasné, trvalé priatelia, a naučil som sa veľa naozaj 10 00:00:37,670 --> 00:00:38,830 použiteľných zručností. 11 00:00:38,830 --> 00:00:43,480 Som tak rád, že som sa nenechal moja Nedostatok pozadie byť ospravedlnením pre mňa 12 00:00:43,480 --> 00:00:44,840 neberie CS50. 13 00:00:44,840 --> 00:00:46,220 Som [nepočuteľné]. 14 00:00:46,220 --> 00:00:48,910 Som senior na Leverett Dom, trieda 2014. 15 00:00:48,910 --> 00:00:51,670 A vzal som CS50. 16 00:00:51,670 --> 00:00:52,380 >> DAVID Malan: Tak toto je CS50. 17 00:00:52,380 --> 00:00:54,400 Toto je na konci týždňa nula. 18 00:00:54,400 --> 00:00:58,500 A spomenúť, kde sme začali v poslednej dobe, S týmito lampy, ktoré boli 19 00:00:58,500 --> 00:01:01,420 tak populárne, že sme šli a kúpil viac dnes. 20 00:01:01,420 --> 00:01:03,790 Takže myslím, že to bude naša vec v tomto roku - 21 00:01:03,790 --> 00:01:07,230 stolové lampy, ak ste prišli na pódium, aspoň kým sme dôjdu. 22 00:01:07,230 --> 00:01:11,570 >> Ale sme použili tieto spomínať, zaviesť základy reprezentácie dát. 23 00:01:11,570 --> 00:01:15,640 Potrebovali sme spôsob, ako začať predstavuje informácie vnútri počítača. 24 00:01:15,640 --> 00:01:18,650 A najjednoduchší spôsob ako to urobiť, aby bol sa jedna zo zložiek, elektrina. 25 00:01:18,650 --> 00:01:21,760 A najjednoduchšie, čo môžete urobiť s elektrina je zapnúť a vypnúť. 26 00:01:21,760 --> 00:01:23,520 Nechajte prúd elektrónov alebo nie. 27 00:01:23,520 --> 00:01:27,930 A pomocou týchto dvoch základných stavov, mimo a alebo nepravdivé a pravdivé, alebo nulové a 28 00:01:27,930 --> 00:01:31,290 jeden, sme začali vidieť, že môžeme stavať up, v tomto prípade, s ohľadom 29 00:01:31,290 --> 00:01:33,720 cibuľa, viac čísel než len nula a jedna. 30 00:01:33,720 --> 00:01:36,160 Spočítali sme tak vysoko, ako je sedem, Napríklad, naposledy. 31 00:01:36,160 --> 00:01:38,840 Ale všetko, čo musíte urobiť, je udržať hádzanie stále viac a viac žiarovky pri tom 32 00:01:38,840 --> 00:01:41,820 problém, a naozaj, môžeme reprezentovať ľubovoľné číslo, ktoré sme 33 00:01:41,820 --> 00:01:42,970 môže priať. 34 00:01:42,970 --> 00:01:47,230 >> No, my sme prešli rýchlo a potom na Od stredy do tohto bytu dobrovoľníkov. 35 00:01:47,230 --> 00:01:52,040 8 bitov je to, čo zvyčajne nazývame byte, takže tu sme mali osem dobrovoľníkov 36 00:01:52,040 --> 00:01:54,900 Streda, ktorí boli spoločne predstavuje osem bitov. 37 00:01:54,900 --> 00:01:56,750 A keď sa ich ruky išiel hore, že sa jeden. 38 00:01:56,750 --> 00:01:58,530 A keď sa ich ruky boli dole, bolo nulové. 39 00:01:58,530 --> 00:02:01,970 A mali sme tyhle ľudí prísť na javisku prečo? 40 00:02:01,970 --> 00:02:06,530 Čo sme mohli urobiť s Táto sekvencia bitov? 41 00:02:06,530 --> 00:02:07,510 >> Ak chcete vytvoriť abecedu. 42 00:02:07,510 --> 00:02:11,550 Podarilo sa nám vybudovať na vrchole, že predchádzajúce ponaučenie a skutočne 43 00:02:11,550 --> 00:02:14,200 začať robiť zaujímavejšie informácie, ktoré je aspoň viac 44 00:02:14,200 --> 00:02:15,330 poznáme ľudí. 45 00:02:15,330 --> 00:02:18,360 A to bude opakujúce sa témou v 50, ale aj počítač 46 00:02:18,360 --> 00:02:21,470 veda všeobecne, táto myšlienka vrstvenie, kde sa na konci 47 00:02:21,470 --> 00:02:24,820 deň, ak ste naozaj začali Základy s počítačom, áno, 48 00:02:24,820 --> 00:02:25,760 to je núl a jednotiek. 49 00:02:25,760 --> 00:02:27,480 A pod tým je to len elektrina. 50 00:02:27,480 --> 00:02:30,840 Ale veľmi rýchlo začať, aby sa tým, nízka úroveň informácií ako samozrejmosť 51 00:02:30,840 --> 00:02:35,600 a začať vrstvy na vrchole minulosti pracoval vykonané tak, že sa v konečnom výsledku 52 00:02:35,600 --> 00:02:38,610 koniec semestra a, naozaj, všeobecnejšie ako počítačové odborníkmi 53 00:02:38,610 --> 00:02:42,790 a programátori môžu urobiť nejaké naozaj silné veci s využitím práce 54 00:02:42,790 --> 00:02:46,620 že my sami spravili a tiež stál na ramenách ostatných. 55 00:02:46,620 --> 00:02:49,300 >> Teraz sme sa rýchlo premenila v stredu z takmer museli 56 00:02:49,300 --> 00:02:52,080 predstavujú informácie, ktoré chcú aby s tým niečo urobiť. 57 00:02:52,080 --> 00:02:54,170 Takže to, čo sme sa definovať algoritmus, ako? 58 00:02:54,170 --> 00:02:57,340 59 00:02:57,340 --> 00:02:58,900 Sledom inštrukcií. 60 00:02:58,900 --> 00:03:03,380 Takže je to rad inštrukcií, počet krokov, ktoré vás, ľudských alebo 61 00:03:03,380 --> 00:03:07,160 počítač, je častejšia, by vykonajte jednu po druhej, aby 62 00:03:07,160 --> 00:03:08,100 dosiahnuť určitého cieľa. 63 00:03:08,100 --> 00:03:11,360 A mali sme veľa gólov minule, z ktorých jeden je počítať 64 00:03:11,360 --> 00:03:12,250 ľudia v miestnosti. 65 00:03:12,250 --> 00:03:15,560 A ďalší taký príklad bol nájsť Mike Smith v telefónnom zozname. 66 00:03:15,560 --> 00:03:19,750 >> Takže si možno spomenú, že som vytrhol telefón kniha v polovici na tento účel sa 67 00:03:19,750 --> 00:03:21,280 hľadanie Mike Smith. 68 00:03:21,280 --> 00:03:24,000 Cieľom tejto vizuálnej bolo preukázať, opäť, že sme 69 00:03:24,000 --> 00:03:27,770 doslova trhá tento problém polovice, na polovicu, na polovicu, a veľmi 70 00:03:27,770 --> 00:03:31,750 rýchlo, ako ísť od 1.000 strán len na jednej jedinej stránke. 71 00:03:31,750 --> 00:03:34,860 Tí z vás, ktorí chýbalo na Streda, Myslel som, že prehrávať 72 00:03:34,860 --> 00:03:36,820 niektoré zábery z toho, čo ste vynechal. 73 00:03:36,820 --> 00:03:38,914 Poďme sa pozrieť. 74 00:03:38,914 --> 00:03:40,906 >> [PLAYBACK] 75 00:03:40,906 --> 00:03:55,360 76 00:03:55,360 --> 00:03:55,990 >> -Tak ideme. 77 00:03:55,990 --> 00:04:01,432 1500 strán, pekný čistý línie, legitímne slza. 78 00:04:01,432 --> 00:04:02,850 >> [END PLAYBACK] 79 00:04:02,850 --> 00:04:05,230 >> DAVID Malan: Tak to bola streda. 80 00:04:05,230 --> 00:04:09,150 My prechod, aj keď v stredu teraz sa chcú reprezentovať algoritmy 81 00:04:09,150 --> 00:04:12,410 v niektorých trochu štandardným spôsobom, a to nielen popisovať je verbálne, ale 82 00:04:12,410 --> 00:04:16,290 snaží sa vyjadriť písomne ​​alebo na obrazovke počítača, takže sme mohli 83 00:04:16,290 --> 00:04:19,170 začnú sa zlepšiť a zmeniť je, a nakoniec vlastne 84 00:04:19,170 --> 00:04:21,160 analyzovať, ako správne alebo ako rýchlo boli. 85 00:04:21,160 --> 00:04:23,360 >> Takže sme zaviedli tento pojem z pseudokódu, ktorý v 86 00:04:23,360 --> 00:04:26,410 Laicky povedané, je to, čo? 87 00:04:26,410 --> 00:04:26,930 OK, slová. 88 00:04:26,930 --> 00:04:28,730 Poďme trochu hlbšie. 89 00:04:28,730 --> 00:04:32,540 Anglicky, iste, sú ale k čomu? 90 00:04:32,540 --> 00:04:35,180 Slová, s ktorými vytvoriť alebo reprezentovať algoritmy. 91 00:04:35,180 --> 00:04:38,380 Takže tam nikto známy jazyk ako pseudokódu vo svete. 92 00:04:38,380 --> 00:04:41,110 Je to len, že v angličtine alebo bez ohľadu na váš hovorený jazyk je použiť 93 00:04:41,110 --> 00:04:44,930 akési povrchné zápisu oznámiť myšlienka veľmi stručne. 94 00:04:44,930 --> 00:04:47,930 Ale uvidíme, že určite sa Angličtina pseudokódu, a ukazuje sa, 95 00:04:47,930 --> 00:04:51,700 väčšine programovacích jazykov sami je derivát angličtine sám, 96 00:04:51,700 --> 00:04:55,750 zistíme, že tam je nejaký štandardný spôsoby, ako reprezentovať pseudocode a 97 00:04:55,750 --> 00:04:57,150 aj programovanie kódu. 98 00:04:57,150 --> 00:05:00,200 Takže ako začnete vidieť aj tie najjednoduchšie príklady dnes uvedomiť, títo 99 00:05:00,200 --> 00:05:02,160 Obdobné bude opakovať budúci týždeň. 100 00:05:02,160 --> 00:05:04,710 >> Takže pseudokódu bol nejaký jazyka pripomínajúce 101 00:05:04,710 --> 00:05:06,170 programovací jazyk. 102 00:05:06,170 --> 00:05:09,260 A prvý príklad sme videli vizuálne napísaný to bolo jedno. 103 00:05:09,260 --> 00:05:12,870 To bolo len trojstupňový program cieľom bolo zistiť, koľko 104 00:05:12,870 --> 00:05:15,650 ľudí v koľaji pre že video na stredu. 105 00:05:15,650 --> 00:05:19,040 Ale tam bolo niekoľko zaujímavých aspektov tohto najjednoduchším programu. 106 00:05:19,040 --> 00:05:20,320 >> A to bude opakujúce sa témy. 107 00:05:20,320 --> 00:05:22,930 Takže pre tých, ktorí sú oboznámení s To je, sme zaviedli premenné. 108 00:05:22,930 --> 00:05:25,650 A pravdepodobne všetci v tejto miestnosti je oboznámení s premennou v 109 00:05:25,650 --> 00:05:27,250 kontext algebry. 110 00:05:27,250 --> 00:05:31,190 Ale tu v programovaní, premenné sú, jeden, môže byť 111 00:05:31,190 --> 00:05:32,220 hovorí, čo chceme. 112 00:05:32,220 --> 00:05:33,620 Boli sme s použitím n ako čítač. 113 00:05:33,620 --> 00:05:37,490 Ale mohli by sme použiť slovo čítač, alebo ako uvidíte, takmer akýkoľvek výraz, ktorý 114 00:05:37,490 --> 00:05:40,240 by vás mohli zaujať tak dlho, ako je to opisný, ale je to naozaj len 115 00:05:40,240 --> 00:05:41,250 skladový kontajner. 116 00:05:41,250 --> 00:05:44,170 Je to kus pamäti, niektoré číslo bitov, a to sa líši od počítača, ako 117 00:05:44,170 --> 00:05:47,020 počet bitov, ktoré tam sú, že skladať tejto premennej. 118 00:05:47,020 --> 00:05:48,450 >> Ale môžeme dať hodnoty v ňom. 119 00:05:48,450 --> 00:05:50,740 Doteraz sme len dať čísla. 120 00:05:50,740 --> 00:05:52,290 Ale môžeme dať aktuálnu slová. 121 00:05:52,290 --> 00:05:53,420 Môžeme dať odsekov. 122 00:05:53,420 --> 00:05:54,560 Môžeme dať obrázky - 123 00:05:54,560 --> 00:05:57,860 nič, naozaj môžeme reprezentovať pomocou núl a jednotiek, môžeme dať do 124 00:05:57,860 --> 00:05:59,820 Tento vyšší stupeň pojem premenné. 125 00:05:59,820 --> 00:06:01,350 >> Takže docela rovno vpred tam. 126 00:06:01,350 --> 00:06:02,210 A to je jeden riadok. 127 00:06:02,210 --> 00:06:05,340 Ale veľmi rýchlo sa presunul z linka, kto skutočne 128 00:06:05,340 --> 00:06:06,600 čo sa tejto premennej. 129 00:06:06,600 --> 00:06:10,330 A v rade tri, sme aktualizovali N. My zvýšený N. A mohli by sme to napísať 130 00:06:10,330 --> 00:06:11,330 ľubovoľný počet spôsobov. 131 00:06:11,330 --> 00:06:14,460 Ale snáď najviditeľnejšie je len povedať, nastavte N rovný 132 00:06:14,460 --> 00:06:16,440 čo je N plus 1. 133 00:06:16,440 --> 00:06:17,740 Tak to bol náš prírastok. 134 00:06:17,740 --> 00:06:18,740 >> Medzitým bola slučka. 135 00:06:18,740 --> 00:06:20,720 A toto, to je pravdepodobne celkom intuitívne. 136 00:06:20,720 --> 00:06:24,250 Slučka je proste niečo v programe že sa stane znova a znova, niektoré 137 00:06:24,250 --> 00:06:25,190 druh cyklu. 138 00:06:25,190 --> 00:06:29,300 A to kľúčové frázy tu pre každého, je vlastne veľmi časté vo väčšine 139 00:06:29,300 --> 00:06:32,300 programovacie jazyky, vrátane tie, uvidíme v priebehu. 140 00:06:32,300 --> 00:06:35,850 Kedykoľvek vidíte slovo, že zvyčajne vyvoláva predstavu, že 141 00:06:35,850 --> 00:06:38,410 slučky, niečo cyklické, je na spadnutie. 142 00:06:38,410 --> 00:06:40,980 >> Ale stojí to za zmienku jedna iný syntaktický detail. 143 00:06:40,980 --> 00:06:44,660 Skutočnosť, že tretí riadok je vlastne členité mať hit 144 00:06:44,660 --> 00:06:46,920 Medzerník Niekoľkokrát je zámerné. 145 00:06:46,920 --> 00:06:49,870 Pretože ľudská konvencie je taká, že keď robíte niečo, čo znovu a 146 00:06:49,870 --> 00:06:54,860 opäť, v slučke, ako začal na linke dve, odsadiť niečo, čo patrilo 147 00:06:54,860 --> 00:06:58,880 na túto slučku, aby bolo zrejmé, že je to línia tri, a nie, napríklad, 148 00:06:58,880 --> 00:07:01,910 linka štyri alebo päť, keby bolo linky pre alebo päť, ktoré sú 149 00:07:01,910 --> 00:07:03,010 Časť, ktorá slučiek. 150 00:07:03,010 --> 00:07:07,340 Tak to jednoduché odsadenie oznamuje, že základná myšlienka. 151 00:07:07,340 --> 00:07:09,390 >> Tak sme aplikovali algoritmus, teraz na niekoľko príkladov. 152 00:07:09,390 --> 00:07:12,620 A to taky jednoduchý príklad v reálnom svete. 153 00:07:12,620 --> 00:07:15,440 Ale to bude reprezentatívna ako by ste ísť o testovanie 154 00:07:15,440 --> 00:07:17,500 Vlastníte čoraz zložitejšie programy. 155 00:07:17,500 --> 00:07:21,050 Môžete vyskúšať niekoľko scenárov, z ktorých niektoré zástupcovia vstupy, a uvidíme, či 156 00:07:21,050 --> 00:07:22,180 získať požadované výstupy. 157 00:07:22,180 --> 00:07:25,090 >> Takže tento príklad mal dvaja ľudia sedí v izbe na internáte. 158 00:07:25,090 --> 00:07:27,170 Na ľavej strane je to rovnaké pseudo kód. 159 00:07:27,170 --> 00:07:30,800 A to je screen shot z veľmi Posledným krokom použitie tejto 160 00:07:30,800 --> 00:07:35,270 algoritmus na tieto vstupy, kde boli dvaja ľudia v miestnosti, a 161 00:07:35,270 --> 00:07:39,190 spomínam, ako sme krokovať riadky jedného, a dva a tri, a dva 162 00:07:39,190 --> 00:07:41,000 a tri a hotovo - 163 00:07:41,000 --> 00:07:44,870 na konci tohto algoritmu, sme mali skutočne počíta dvaja chlapíci, ktorí sú 164 00:07:44,870 --> 00:07:45,360 v miestnosti. 165 00:07:45,360 --> 00:07:47,190 >> Takže sme potom skúšali iný príklad. 166 00:07:47,190 --> 00:07:48,990 A my sme povedali, čo v prípade, že sú nula ľudí v miestnosti? 167 00:07:48,990 --> 00:07:50,490 Tento kód je stále platná? 168 00:07:50,490 --> 00:07:51,305 A naozaj to bolo. 169 00:07:51,305 --> 00:07:55,240 To len tak sa stane, že dva linky a tým, riadok tri alebo 170 00:07:55,240 --> 00:07:56,620 nebude vykonávať. 171 00:07:56,620 --> 00:07:59,790 Oni sa to nestane vôbec pretože sú to jednoducho neplatí, ak 172 00:07:59,790 --> 00:08:01,210 tam je nula ľudí v miestnosti. 173 00:08:01,210 --> 00:08:02,300 >> Ale nie je to veľký problém. 174 00:08:02,300 --> 00:08:06,620 Riadok jedna inicializuje N na nulu, takže aj keď iba jeden riadok z tohto 175 00:08:06,620 --> 00:08:10,930 Program vlastne nakoniec bola užitočná, to ešte dá správnu odpoveď, pretože 176 00:08:10,930 --> 00:08:13,780 indikovaná oranžový nule v dolnej časti. 177 00:08:13,780 --> 00:08:16,300 Ale potom sme sa rozhodli, že sa druh hlúpe algoritmu. 178 00:08:16,300 --> 00:08:17,060 Bolo to dosť pomalé. 179 00:08:17,060 --> 00:08:19,720 Iste, môžem urobiť dve, štyri, šesť, osem, desať, keď 180 00:08:19,720 --> 00:08:20,990 počtu osôb v miestnosti. 181 00:08:20,990 --> 00:08:25,030 >> Tak sme vylepšený algoritmus, pseudokódu, hovoriť, teraz v súlade dvoch, 182 00:08:25,030 --> 00:08:29,710 pre každú dvojicu osôb v miestnosti, pokračovať, v súlade tri, prírastok 183 00:08:29,710 --> 00:08:32,200 v dvoma na každej iterácii. 184 00:08:32,200 --> 00:08:35,530 Tak, že by tu pracovali pre táto dvojica osôb v miestnosti. 185 00:08:35,530 --> 00:08:38,530 >> Ale potom, keď začnete premýšľať o tom, to, a to nebude trvať dlho, 186 00:08:38,530 --> 00:08:40,710 si uvedomiť, počkaj to je chystá rozbiť, to sa zlomí 187 00:08:40,710 --> 00:08:42,679 v akom jednoduchý prípad? 188 00:08:42,679 --> 00:08:45,500 Ak sú traja ľudia v miestnosti, alebo všeobecnejšie, keď je 189 00:08:45,500 --> 00:08:47,660 nepárny počet ľudí izba, vrátane jedného. 190 00:08:47,660 --> 00:08:50,390 Dovoľujeme si ujsť túto osobu tu, pretože nie sú tam žiadne také páry. 191 00:08:50,390 --> 00:08:58,510 Tak sme rýchlo riešiť miesto zavedenie, aké ďalšie 192 00:08:58,510 --> 00:09:02,560 programovací konštrukty na pseudokódu. 193 00:09:02,560 --> 00:09:04,955 >> Tak stave, sa nazýva to, alebo pobočka. 194 00:09:04,955 --> 00:09:08,420 A to chcel sprostredkovať vizuálne, Myšlienka pobočky, rázcestí 195 00:09:08,420 --> 00:09:11,080 kde si môžete buď to urobiť alebo, možno, niečo iné. 196 00:09:11,080 --> 00:09:15,750 A skutočne sme sa tento problém riešiť tým, pridaním riadka 4 tým, že hovorí, naozaj, na 197 00:09:15,750 --> 00:09:20,820 samého konca, ak sa jedna osoba zostáva, potom choďte do toho a počítať je zvláštne. 198 00:09:20,820 --> 00:09:24,460 Takže si nejako špecifický prípad je, tak hovoriť, takže teraz môžeme zvládnuť 199 00:09:24,460 --> 00:09:27,810 i aj počet ľudí, ktorí a nepárny počet ľudí. 200 00:09:27,810 --> 00:09:30,260 >> Teraz to sú len niektoré zo spôsobov, ako mohli sme to vyjadril. 201 00:09:30,260 --> 00:09:33,590 A úprimne povedané, mohol som byť ešte niť vyberavý, keď to prišlo k môjmu výberu 202 00:09:33,590 --> 00:09:35,040 Angličtina pre pseudokódu. 203 00:09:35,040 --> 00:09:36,970 Ale aspon duch myšlienka je dopravená. 204 00:09:36,970 --> 00:09:40,725 Ak ste podal tento kód priateľovi kto nie je v SK, alebo nikdy neurobil 205 00:09:40,725 --> 00:09:44,560 SK, je pravdepodobné, že by mohla prísť, uvedené troch ľudí v miestnosti, ako 206 00:09:44,560 --> 00:09:46,870 Počet týchto ľudí na základe základe týchto pokynov. 207 00:09:46,870 --> 00:09:49,920 A to je všetko naozaj chceme dosiahnuť s pseudokódu, nejako 208 00:09:49,920 --> 00:09:54,300 štandardizovať, ako na to ideme predstavujúce nápady, takže môžeme 209 00:09:54,300 --> 00:09:56,670 začať robiť zložitejšie čo ešte. 210 00:09:56,670 --> 00:09:58,845 >> Tak to nás vedie potom dnes, skutočné kódu. 211 00:09:58,845 --> 00:10:01,950 Začneme sa naprogramovať dnes, aj keď v priateľskom prostredí. 212 00:10:01,950 --> 00:10:05,940 A potom sme prechod veľmi rýchlo viac tajomné syntax, ale ten, ktorý 213 00:10:05,940 --> 00:10:10,340 uvidíte je v zásade rovnaká ako myšlienky uvidia prejavuje 214 00:10:10,340 --> 00:10:11,990 ten druhý jazyk dnes. 215 00:10:11,990 --> 00:10:13,920 Je to jednoducho bude vyzerať trochu iný. 216 00:10:13,920 --> 00:10:16,590 >> Takže skôr než len volať tento kód, som bude o niečo presnejší 217 00:10:16,590 --> 00:10:20,170 a hovoria, ďalej pri písaní programu, píšete zdrojový kód. 218 00:10:20,170 --> 00:10:21,990 Je to niečo ako pseudokódu. 219 00:10:21,990 --> 00:10:26,540 Ale uvidíme, nie je to trochu voľné pokiaľ ide o výber slov 220 00:10:26,540 --> 00:10:27,310 ktorý používate. 221 00:10:27,310 --> 00:10:31,300 Pri programovaní v jazyku, máte používať slová, frázy,, 222 00:10:31,300 --> 00:10:36,020 syntax, že ostatní ľudia sa rozhodli predstavujú 223 00:10:36,020 --> 00:10:37,240 že konkrétny jazyk. 224 00:10:37,240 --> 00:10:38,510 Takže pseudocodes je na vás. 225 00:10:38,510 --> 00:10:42,330 Aktuálne programovací jazyk ako C, pretože budeme nakoniec vidieť, je 226 00:10:42,330 --> 00:10:43,590 štandardizovaný inými ľuďmi. 227 00:10:43,590 --> 00:10:45,590 >> Tak ako sme sa ísť o písaní nejaký zdrojový kód? 228 00:10:45,590 --> 00:10:46,810 No ja idem a urob to. 229 00:10:46,810 --> 00:10:49,100 Chystám sa ísť dopredu a otvoriť okno tady. 230 00:10:49,100 --> 00:10:50,210 Viac informácií o tejto budúci týždeň. 231 00:10:50,210 --> 00:10:52,300 Ale to je s názvom zariadenie CS50 spotrebiča. 232 00:10:52,300 --> 00:10:55,480 Bežím kus softvéru na mojom Mac, keď môžete urobiť to isté 233 00:10:55,480 --> 00:11:00,580 na počítači s Windows, ktorý dáva mi ilúzie beží iný 234 00:11:00,580 --> 00:11:03,700 operačný systém úplne vpravo Tu v okne na mojom Macu. 235 00:11:03,700 --> 00:11:06,790 Práve som plne tienený to tak nemusíte skutočne vidieť Mac OS práve teraz. 236 00:11:06,790 --> 00:11:08,340 >> Jedná sa o operačný systém s názvom Linux. 237 00:11:08,340 --> 00:11:09,300 Je to veľmi populárne. 238 00:11:09,300 --> 00:11:10,120 Je to veľmi rýchlo. 239 00:11:10,120 --> 00:11:12,950 Je to veľmi voľná, ktorý robil to veľmi presvedčivé, najmä v 240 00:11:12,950 --> 00:11:13,970 komerčný svet. 241 00:11:13,970 --> 00:11:17,200 A viac na to ku koncu Semester, kedy používame Linux celkom dosť 242 00:11:17,200 --> 00:11:21,230 pre webové programovanie a hosting skutočné webové stránky a projekty. 243 00:11:21,230 --> 00:11:24,910 Takže teraz, len viem, že sa jedná o desktop , Ktorý je určený vyzerať hmlisto 244 00:11:24,910 --> 00:11:26,750 známe Windows a Mac OS. 245 00:11:26,750 --> 00:11:29,110 Je to len má niekoľko rôznych mien a ikony pre veci. 246 00:11:29,110 --> 00:11:32,510 Ale to je tzv CS50 zariadenie, virtuálny stroj, ktorý, 247 00:11:32,510 --> 00:11:35,310 od budúceho týždňa bude vy spustiť vnútri okna na 248 00:11:35,310 --> 00:11:36,960 vlastný Mac alebo PC. 249 00:11:36,960 --> 00:11:39,760 >> Pre dnešok, idem otvoriť najjednoduchšie programov. 250 00:11:39,760 --> 00:11:41,110 Hovorí sa gedit. 251 00:11:41,110 --> 00:11:42,565 A to je len grafický editor. 252 00:11:42,565 --> 00:11:44,695 Je to niečo ako Microsoft Slovo, ale jednoduchšie. 253 00:11:44,695 --> 00:11:47,110 Je to niečo ako texte upraviť alebo poznámkový blok. 254 00:11:47,110 --> 00:11:50,280 Je to len veľmi jednoduchý program s ktorá písať slová na obrazovke. 255 00:11:50,280 --> 00:11:54,510 To len tak, čo sa stane, že keď uložím súbory, ktoré som vytvoriť, keď tento program 256 00:11:54,510 --> 00:11:59,860 v špeciálnom rozšírenia, ako je. c, namiesto toho z doc alebo. xls, alebo čokoľvek 257 00:11:59,860 --> 00:12:04,190 ste oboznámení s, môžem vlastne programy využívajúce aj tento jednoduchý 258 00:12:04,190 --> 00:12:05,130 textový editor. 259 00:12:05,130 --> 00:12:05,770 >> Takže dovoľte mi, aby som to urobil. 260 00:12:05,770 --> 00:12:09,330 Nechaj ma ísť napred a ušetrite tento súbor najprv ako hello.c. 261 00:12:09,330 --> 00:12:12,350 A opäť, užívateľské rozhranie zoznámiť sa na vás rýchlo. 262 00:12:12,350 --> 00:12:14,160 Ale teraz, ja som len písať v názve súboru. 263 00:12:14,160 --> 00:12:17,410 Idem uložiť do svojej John Harvard domovský adresár. 264 00:12:17,410 --> 00:12:20,810 A teraz mám túto kartu, ktorá označuje, Som naozaj úpravách 265 00:12:20,810 --> 00:12:23,070 súbor s názvom hello.c. 266 00:12:23,070 --> 00:12:24,510 Takže nič moc zaujímavé, ale. 267 00:12:24,510 --> 00:12:26,000 >> A teraz to bude pekne mystický. 268 00:12:26,000 --> 00:12:28,370 Chystám sa priblížite, len takže je to viac vidieť. 269 00:12:28,370 --> 00:12:35,780 A ja začnem písať zahŕňať stdio.h, int main, void, otvorený kučeravé 270 00:12:35,780 --> 00:12:40,140 rovnátka, jedna, dva, tri, štyri miesta odsadenie, tlač f, pre tlač 271 00:12:40,140 --> 00:12:44,450 niečo formátovania, citujem koniec citátu, "Hello, world" spätné lomítko, n, v blízkosti 272 00:12:44,450 --> 00:12:49,640 Ponuka, uzavretá zátvorka, bodkočiarku, zadajte Backspace, Backspace, Backspace, 273 00:12:49,640 --> 00:12:52,310 backspace, uzavretá zložená zátvorka - 274 00:12:52,310 --> 00:12:53,350 Naprogramoval som. 275 00:12:53,350 --> 00:12:57,380 >> Dobre, takže to je super jednoduchý program naozaj program, ktorý 276 00:12:57,380 --> 00:12:59,070 niekto začína s programovania. 277 00:12:59,070 --> 00:13:02,300 A všetko, čo robí, pretože celé jeho zložitosti, ich vytlačiť na 278 00:13:02,300 --> 00:13:04,160 obrazovka, hádajte čo? 279 00:13:04,160 --> 00:13:04,910 Hello world. 280 00:13:04,910 --> 00:13:07,500 Ale to nestačí len napísať program. 281 00:13:07,500 --> 00:13:08,155 Tak to je kód. 282 00:13:08,155 --> 00:13:11,300 Toto je zdrojový kód v jazyk s názvom c 283 00:13:11,300 --> 00:13:14,380 Je uložený v súčasnej dobe súbor s názvom hello.c. 284 00:13:14,380 --> 00:13:16,180 >> Teraz sa pozrite na dne na obrazovke tu. 285 00:13:16,180 --> 00:13:17,890 Ďalšie informácie o tomto znovu, nadchádzajúcich týždňoch. 286 00:13:17,890 --> 00:13:19,570 Ale to je to, čo budeme nazývať okno terminálu. 287 00:13:19,570 --> 00:13:21,290 Je to bliká, čierna a biele dotaz. 288 00:13:21,290 --> 00:13:24,390 Je to niečo ako starej školy rozhranie počítač, ktorý zvyčajne nie je 289 00:13:24,390 --> 00:13:27,050 použiť myš alebo iné grafické prvky. 290 00:13:27,050 --> 00:13:28,320 Je to jednoducho používa klávesnica. 291 00:13:28,320 --> 00:13:30,970 A môžem písať príkazy na to bliká výzva. 292 00:13:30,970 --> 00:13:33,820 >> A pre dnešné účely, ja som len ísť na zadajte nasledovné - 293 00:13:33,820 --> 00:13:35,610 aby ahoj. 294 00:13:35,610 --> 00:13:39,370 A tento program, aby sa, je to len program, ktorý, v reálnom svete v týchto 295 00:13:39,370 --> 00:13:40,690 dňoch, by sme dvakrát kliknite na. 296 00:13:40,690 --> 00:13:44,580 Ale v tomto rozhraní pre dnešok, sme bude písať svoje meno na túto výzvu. 297 00:13:44,580 --> 00:13:47,980 ahoj, aby ich doslova chystá aby mi program s názvom ahoj. 298 00:13:47,980 --> 00:13:51,360 A to bude robiť tak tým, že hľadá pre súbor, len tým, že 299 00:13:51,360 --> 00:13:53,460 V predvolenom nastavení tzv hello.c. 300 00:13:53,460 --> 00:13:57,260 Bude predpokladať, chcem program v jazyku C podľa povahy, ako tento počítač 301 00:13:57,260 --> 00:13:58,230 je nakonfigurovaný. 302 00:13:58,230 --> 00:13:59,550 >> Tak som sa do toho pustite a stlačte Enter. 303 00:13:59,550 --> 00:14:02,050 Vidím nejaké mystické výstup, ale to sa stane príliš 304 00:14:02,050 --> 00:14:03,330 zoznámiť onedlho. 305 00:14:03,330 --> 00:14:06,870 To sa stalo spustiť kompilátor viac na to vo chvíli, tzv zvonenie. 306 00:14:06,870 --> 00:14:09,080 Ale teraz mám len ďalší bliká výzva. 307 00:14:09,080 --> 00:14:13,060 A môžem ísť do toho hneď a zadajte bodku lomka, za nezaujímavých dôvodov budeme 308 00:14:13,060 --> 00:14:14,730 vrátiť sa budúci týždeň - 309 00:14:14,730 --> 00:14:15,910 ahoj. 310 00:14:15,910 --> 00:14:19,650 >> Takže všetky tieto snahy doteraz len napísať najjednoduchšie programy, ktoré, 311 00:14:19,650 --> 00:14:22,640 akonáhle som Enter, to robí. 312 00:14:22,640 --> 00:14:24,510 Tak som napísal svoj prvý program. 313 00:14:24,510 --> 00:14:27,500 Tak som schválne tropit žarty Tento veľmi jednoduchý program, 314 00:14:27,500 --> 00:14:28,540 na niekoľkých dôvodov. 315 00:14:28,540 --> 00:14:31,990 Po prvé, je to ťažké sa dostať nadšení o prijatí triedy, ak 316 00:14:31,990 --> 00:14:33,430 to je koniec hry. 317 00:14:33,430 --> 00:14:37,100 >> Ale viac než to, že tam je Veľa rozptýlenie tady. 318 00:14:37,100 --> 00:14:40,640 Prvýkrát sa naučíte programu, tých z vás, menej pohodlné, a 319 00:14:40,640 --> 00:14:43,410 dokonca aj ja, späť v deň, kedy som prvýkrát videl niečo podobné - môžete sa trochu 320 00:14:43,410 --> 00:14:46,500 figúry, že v poriadku, tohto je v tlačovej Hello World. 321 00:14:46,500 --> 00:14:47,860 Ale je tu toľko rozptýlenie. 322 00:14:47,860 --> 00:14:52,110 Je toho toľko, syntaxe na obrazovke že sa dostane do cesty veľmi 323 00:14:52,110 --> 00:14:54,170 jednoduché, inak jednoduchý, nápady. 324 00:14:54,170 --> 00:14:56,700 >> Takže, čo budeme robiť dnes sme dám bokom C a prísť 325 00:14:56,700 --> 00:14:57,630 späť na ktoré v pondelok. 326 00:14:57,630 --> 00:15:00,860 A budeme používať grafické programovací jazyk s názvom Scratch. 327 00:15:00,860 --> 00:15:04,470 Jedná sa o programovací jazyk, ktorý som spomínal v stredu, že sa deje 328 00:15:04,470 --> 00:15:08,870 ktoré nám umožnia robiť rovnaký druh vecí ale prižmúriť oči, pre dnešok, 329 00:15:08,870 --> 00:15:12,270 do zložených zátvoriek, zátvorky, bodkočiarkami, a všetky tie hlúpe 330 00:15:12,270 --> 00:15:15,680 rozptýlenie, ktoré sa dostanú do cesty, v to prvý deň, na niektoré základné, pekný 331 00:15:15,680 --> 00:15:17,230 zaujímavé nápady. 332 00:15:17,230 --> 00:15:21,350 >> Takže k tomuto účelu, ja idem späť na plochu sem a 333 00:15:21,350 --> 00:15:25,890 predstaviť vám ako alternatívu k, ktorý program, ktorý bude vyzerať 334 00:15:25,890 --> 00:15:30,790 Niečo málo svetla to. 335 00:15:30,790 --> 00:15:33,930 To je, ako budeme realizovať, že rovnaký program dnes - dve puzzle 336 00:15:33,930 --> 00:15:37,710 kúsky, ktoré, keď prepletený a kliknete, povie svetu, 337 00:15:37,710 --> 00:15:39,000 hello world. 338 00:15:39,000 --> 00:15:41,200 >> Takže poďme vlastne ísť tam. 339 00:15:41,200 --> 00:15:44,965 Takže budem pokračovať a otvoriť web známy ako scratch.mit.edu. 340 00:15:44,965 --> 00:15:47,980 341 00:15:47,980 --> 00:15:52,040 A to ma vedie k tento web tu. 342 00:15:52,040 --> 00:15:54,660 Vopred som prihlásený do tejto webové stránky a prvé problémy, ktoré 343 00:15:54,660 --> 00:15:55,910 vás prevedie niektoré z týchto krokov. 344 00:15:55,910 --> 00:15:58,930 Chystám sa ísť ďalej a kliknite na tlačidlo na mojom poškriabaniu zložky tu. 345 00:15:58,930 --> 00:16:00,720 >> A to sa mi ukázať niektoré projekty, ktoré som 346 00:16:00,720 --> 00:16:02,570 v skutočnosti vytvorená vopred. 347 00:16:02,570 --> 00:16:05,860 A ukázalo sa, že tento grafický programovací jazyk nielen sa deje 348 00:16:05,860 --> 00:16:08,480 aby nám program pretiahnutím zbieraním týchto dielikov, môžete 349 00:16:08,480 --> 00:16:09,730 nepotrebujete ani špeciálny softvér. 350 00:16:09,730 --> 00:16:13,190 To všetko je zakotvená v prehliadači tak, že môžete urobiť to, teoreticky, na 351 00:16:13,190 --> 00:16:16,810 vaše počítače práve teraz, ako niektorí z vás môže byť, bez toho aby museli 352 00:16:16,810 --> 00:16:19,870 softvér ako CS50 spotrebiče ktorá príde budúci týždeň. 353 00:16:19,870 --> 00:16:24,200 >> Takže som ísť do horného rohu tu a kliknite na tlačidlo Vytvoriť. 354 00:16:24,200 --> 00:16:27,840 A za chvíľu budem mať prázdny displej, cez ktorý môžem začať 355 00:16:27,840 --> 00:16:30,380 programovanie v tejto grafickej programovacie prostredie. 356 00:16:30,380 --> 00:16:36,140 Ale tentoraz to bude oveľa, oveľa jednoduchšie, aby skutočne urobiť. 357 00:16:36,140 --> 00:16:41,560 Takže za chvíľu, kedy Wi-Fi spolupracuje, teraz máme túto obrazovku. 358 00:16:41,560 --> 00:16:44,870 Tak rýchlo slovné turné, ale trúfam si povedať, iste, keď sa ponoríte do 359 00:16:44,870 --> 00:16:46,840 Prvým problémom set, budete toto všetko veľmi 360 00:16:46,840 --> 00:16:48,315 dostupné a pomerne intuitívne. 361 00:16:48,315 --> 00:16:50,900 Ale poďme maľovať mentálny obraz len na chvíľu. 362 00:16:50,900 --> 00:16:54,620 >> Tak pod túto výzvu hovorí uloženie zmeny, ste asi vidieť poškriabaniu. 363 00:16:54,620 --> 00:16:55,570 Jedná sa objekt sprite spustil. 364 00:16:55,570 --> 00:16:56,630 Je to postava. 365 00:16:56,630 --> 00:17:00,740 A žije na tom, čo budeme hovoriť javisko, tento veľký biely obdĺžnik na 366 00:17:00,740 --> 00:17:03,120 ktoré sa môžu pohybovať hore, dole, vľavo, pravdu, a to, naozaj, 367 00:17:03,120 --> 00:17:04,670 Ďalšie druhy akcií. 368 00:17:04,670 --> 00:17:08,780 >> Medzitým, v polovici tohto používateľa rozhranie, máme veľa 369 00:17:08,780 --> 00:17:09,750 skladačky. 370 00:17:09,750 --> 00:17:14,060 A uvidíte, že hovoria veci ako pohybovať desať krokov, otočil 15 stupňov, 371 00:17:14,060 --> 00:17:15,550 bod v určitom smere. 372 00:17:15,550 --> 00:17:17,910 Ale je tu kategória bloky až tu. 373 00:17:17,910 --> 00:17:21,410 Takže keď idem na vzhľad, uvidíte, že je tu ďalší kúsky skladačky, ktoré 374 00:17:21,410 --> 00:17:25,530 zrejme bude rozprávať tento cit pre pozdraviť, premýšľať, ukázať 375 00:17:25,530 --> 00:17:26,780 sám schovať. 376 00:17:26,780 --> 00:17:30,830 Keby som išiel do Sounds, to dopadá je tu spôsob, ako prehrávať zvuky ako mňau, 377 00:17:30,830 --> 00:17:32,670 zastaviť všetky zvuky, hrať bubon. 378 00:17:32,670 --> 00:17:36,530 >> Tak dlhý príbeh krátky, je tu celá banda dielikov, ktoré vám dovoľujú 379 00:17:36,530 --> 00:17:40,920 oznámiť túto mačku, alebo ľubovoľný počet iné charaktery, čo má robiť. 380 00:17:40,920 --> 00:17:43,850 Ale aby sa to všetko stalo vám je potrebné začať s programovaním. 381 00:17:43,850 --> 00:17:48,090 A to veľký biely box, alebo sivá krabice, na na pravej strane, to je miesto, kde 382 00:17:48,090 --> 00:17:50,170 Chystám sa skutočne pretiahnuť pokles týchto dielikov. 383 00:17:50,170 --> 00:17:54,320 To je môj prázdny texte okno ekvivalent. 384 00:17:54,320 --> 00:17:57,070 >> Takže budem pokračovať a kliknite na tlačidlo Riadenie v stredu. 385 00:17:57,070 --> 00:17:58,540 Alebo skôr, dovoľte mi začať až do akcie. 386 00:17:58,540 --> 00:18:01,530 V rámci akcie lavicu, zistíte, pár vecí, ktoré sú zámerne 387 00:18:01,530 --> 00:18:05,240 zakrivený na vrchole tak, že pravdepodobne nemajú Interlock na 388 00:18:05,240 --> 00:18:06,710 hornej časti skladačky. 389 00:18:06,710 --> 00:18:10,160 A to preto, že Demark začiatok programu, štart 390 00:18:10,160 --> 00:18:11,910 scenár, aby som tak povedal. 391 00:18:11,910 --> 00:18:16,290 Takže keď som sa do toho pustite a ťahajte, keď zelená vlajka kliknete sem, a potom som 392 00:18:16,290 --> 00:18:18,060 aby táto mačka povedať, niečo, čo na prvý pohľad. 393 00:18:18,060 --> 00:18:20,510 Takže som ísť pod vyzerá panel. 394 00:18:20,510 --> 00:18:24,060 A ja idem do toho a chytiť pozdraviť blok a pretiahnite a umiestnite, 395 00:18:24,060 --> 00:18:27,220 a pustiť tak, aby sa automaticky blokuje tam. 396 00:18:27,220 --> 00:18:28,640 >> A potom som si všimnúť, kliknite na text. 397 00:18:28,640 --> 00:18:31,960 A môžem prepísať, aby to bolo viac špecifické ako, povedzme, hello world. 398 00:18:31,960 --> 00:18:36,340 A teraz tu máme program, ktorý som žiadať odpovedá, že oveľa viac 399 00:18:36,340 --> 00:18:39,670 tajomný Program som implementoval v C pred chvíľou. 400 00:18:39,670 --> 00:18:43,130 >> Keď idem preč na ľavej strane, Všimnite si, že je to veľká stopka 401 00:18:43,130 --> 00:18:44,520 a veľká zelená vlajka. 402 00:18:44,520 --> 00:18:46,390 Dovoľte mi priblížiť pre prehľadnosť. 403 00:18:46,390 --> 00:18:49,390 A keď som sa teraz na túto zelenú vlajku, asi tušíte, čo to ako prvý 404 00:18:49,390 --> 00:18:51,920 Program je teraz robiť. 405 00:18:51,920 --> 00:18:55,420 Takže tam taky, my programovanie, ale nie sme v skutočnosti dostať zapadol 406 00:18:55,420 --> 00:18:58,980 v niektorých z tých, syntaktické, drobné detaily. 407 00:18:58,980 --> 00:19:01,120 >> Ale poďme skúsiť niečo trochu zaujímavejšie. 408 00:19:01,120 --> 00:19:04,840 Nechaj ma ísť do mojej zložky Scratch tu. 409 00:19:04,840 --> 00:19:10,210 A vlastne mi dovoľte, aby som tak nech mi otvoria samostatný program tu len 410 00:19:10,210 --> 00:19:17,830 moment, maximalizovať okno, Súbor Otvoriť, a ja idem do dnešnej 411 00:19:17,830 --> 00:19:18,620 zdrojový adresár. 412 00:19:18,620 --> 00:19:21,660 Ako vždy, zistíte, dnes a dopredu, že všetky dnešné príkladov 413 00:19:21,660 --> 00:19:25,225 sú k dispozícii vo vnútri Kurz web. 414 00:19:25,225 --> 00:19:31,170 >> A budem pokračovať tu a vybrať sa trochu niečo iné. 415 00:19:31,170 --> 00:19:33,970 Tento, pre ktoré Potrebujem dobrovoľníka. 416 00:19:33,970 --> 00:19:36,850 Kto by rád lampu dnes? 417 00:19:36,850 --> 00:19:40,600 OK, ako sa o niekom niečo - ste na konci? 418 00:19:40,600 --> 00:19:42,124 Poď dole. 419 00:19:42,124 --> 00:19:47,230 Teraz by ste sa radi zúčastnili, alebo len povedať, začať s lampou? 420 00:19:47,230 --> 00:19:48,190 >> VANESSA: [nepočuteľné]. 421 00:19:48,190 --> 00:19:48,465 >> DAVID Malan: OK. 422 00:19:48,465 --> 00:19:49,610 Výborný, čo ste meno? 423 00:19:49,610 --> 00:19:49,990 Vanessa? 424 00:19:49,990 --> 00:19:50,570 David. 425 00:19:50,570 --> 00:19:51,390 Rád Vás vidím. 426 00:19:51,390 --> 00:19:53,840 Tak poď hore a Vanessa sa deje vziať kontrolu nad svojím 427 00:19:53,840 --> 00:19:55,490 klávesnice len na chvíľu. 428 00:19:55,490 --> 00:19:57,850 A to, čo som urobil tu len pre čas je saké, keď som si uvedomil, 429 00:19:57,850 --> 00:20:01,070 Wi-Fi je trochu pomalý, Scratch, programovanie prostredia, ktoré sme 430 00:20:01,070 --> 00:20:04,110 použitie, možno tiež stiahnuť a spustiť na vašom počítači. 431 00:20:04,110 --> 00:20:06,360 Takže to, čo som urobil pred prednáškou, v prípad, že sa stane, je, že som stiahnuť 432 00:20:06,360 --> 00:20:09,120 všetky súbory sa chystáte hrať takže môže bežať o niečo viac 433 00:20:09,120 --> 00:20:10,840 rýchlo priamo tu na mojom notebooku. 434 00:20:10,840 --> 00:20:13,460 Takže to je dôvod, prečo teraz som videl Mac špecifické rozhranie. 435 00:20:13,460 --> 00:20:15,510 >> Takže budem pokračovať a otvoriť tento. 436 00:20:15,510 --> 00:20:18,400 Chystám sa ísť dopredu a teraz na celej obrazovke okno. 437 00:20:18,400 --> 00:20:21,740 A ako uvidíte, môžeme veľmi rýchlo, ako to bolo študentov, jeden z 438 00:20:21,740 --> 00:20:26,360 vaši predchodcovia, ísť od Hello World k oveľa presvedčivejšie 439 00:20:26,360 --> 00:20:27,020 aplikácie. 440 00:20:27,020 --> 00:20:28,180 Tak tu je návod. 441 00:20:28,180 --> 00:20:29,500 Jo, a máme jednu vec. 442 00:20:29,500 --> 00:20:31,640 Myslel som, že to bude zábava, pretože, normálne, budeme natáčať 443 00:20:31,640 --> 00:20:32,440 kamery týmto spôsobom. 444 00:20:32,440 --> 00:20:34,100 Myslel som, že by bolo zábavné, ak Vanessa, sme mohli vidieť svet 445 00:20:34,100 --> 00:20:35,120 vašimi očami. 446 00:20:35,120 --> 00:20:36,670 Tak tu máme nejaké Google Glass. 447 00:20:36,670 --> 00:20:39,290 >> [Užasnutý vzdychy] 448 00:20:39,290 --> 00:20:41,610 >> DAVID Malan: Budeme len dávať ďaleko stolové lampy dnes. 449 00:20:41,610 --> 00:20:43,530 >> [Smiech] 450 00:20:43,530 --> 00:20:45,260 >> Takže mi dovoľte narážka to. 451 00:20:45,260 --> 00:20:49,340 Dobre, takže to dotknúť. 452 00:20:49,340 --> 00:20:51,910 OK, sklo, nahrávať video. 453 00:20:51,910 --> 00:20:55,700 454 00:20:55,700 --> 00:20:56,950 Dobre, Vanessa? 455 00:20:56,950 --> 00:21:00,940 456 00:21:00,940 --> 00:21:05,560 Teraz, keď stranou, ktorá nemá nič spoločné čo do činenia s Scratch, keď sa pozriete 457 00:21:05,560 --> 00:21:08,540 mierne hore a vpravo, uvidíte doslovný sklo, a vy by ste mali 458 00:21:08,540 --> 00:21:09,650 pozri trochu obdĺžnikové okno. 459 00:21:09,650 --> 00:21:11,500 Mali by ste vidieť všetky svoje spolužiakov natáča práve teraz? 460 00:21:11,500 --> 00:21:11,840 Áno. 461 00:21:11,840 --> 00:21:12,340 >> VANESSA: Áno. 462 00:21:12,340 --> 00:21:12,920 >> DAVID Malan: OK. 463 00:21:12,920 --> 00:21:15,170 Tak to je v poriadku. 464 00:21:15,170 --> 00:21:16,660 Budeme uvoľňovať tieto zábery neskôr. 465 00:21:16,660 --> 00:21:18,460 Pre túto chvíľu, obrátiť vašu pozornosť na obrazovku tu. 466 00:21:18,460 --> 00:21:20,990 A čo váš predchodca urobil je dať nejaké pokyny na obrazovke 467 00:21:20,990 --> 00:21:22,670 len pomocou programu pre maľovanie. 468 00:21:22,670 --> 00:21:25,040 Takže budete, v okamihu, stlačením medzerníka začnú. 469 00:21:25,040 --> 00:21:27,790 A potom niektoré dieliky idú do pohybu po obrazovke nahor. 470 00:21:27,790 --> 00:21:30,900 A chcete trafiť šípkami, len ako v reálnom DDR, v súlade 471 00:21:30,900 --> 00:21:32,740 sa veci zoraďovať s týmito šípkami. 472 00:21:32,740 --> 00:21:33,020 >> VANESSA: OK. 473 00:21:33,020 --> 00:21:33,800 >> DAVID Malan: si hrať predtým. 474 00:21:33,800 --> 00:21:34,140 >> VANESSA: Jo. 475 00:21:34,140 --> 00:21:37,330 >> DAVID Malan: Dobre, Vanessa, choďte do toho a vziať to preč. 476 00:21:37,330 --> 00:22:53,082 >> [MUSIC - Kayne West, "silnejší"] 477 00:22:53,082 --> 00:22:57,080 >> [APPLAUSE] 478 00:22:57,080 --> 00:22:59,750 >> DAVID Malan: Tak poďme teraz krok od toho. 479 00:22:59,750 --> 00:23:01,230 Tak jasne, to je koniec hry. 480 00:23:01,230 --> 00:23:02,880 Na konci hry nie je hello world. 481 00:23:02,880 --> 00:23:05,520 Ale nemusíte nutne robiť veci, ktoré sú tak interaktívne. 482 00:23:05,520 --> 00:23:06,810 Môžete si tiež urobiť animáciu. 483 00:23:06,810 --> 00:23:10,790 Tak napríklad, ďalší z tvojich nástupcovi z tohto programu tu 484 00:23:10,790 --> 00:23:14,100 ktorý rozpráva príbeh viac než to implementovali hru. 485 00:23:14,100 --> 00:23:19,180 Tak ma nechaj ísť dopredu a otvoriť tu Program v našom rovnakom adresári so zdrojovými kódmi 486 00:23:19,180 --> 00:23:20,300 od dnešného dňa. 487 00:23:20,300 --> 00:23:26,990 Tenhle hovor a začnime s, cookie milostný príbeh. 488 00:23:26,990 --> 00:23:30,750 >> A nie, aby to príliš akademické, ale ako sa budete pozerať toto, myslím, že sa 489 00:23:30,750 --> 00:23:34,030 sami seba, ktoré z jednoduchých Programovacie pojmy Hovorili sme 490 00:23:34,030 --> 00:23:34,630 o doteraz - 491 00:23:34,630 --> 00:23:39,250 premenné a slučky, a podmienky, Váš predchodca sa pravdepodobne používať len 492 00:23:39,250 --> 00:23:41,090 k realizácii niektorých vizualizácií. 493 00:23:41,090 --> 00:23:41,760 Vidíte tu. 494 00:23:41,760 --> 00:23:44,118 Tak som vám cookie milostný príbeh. 495 00:23:44,118 --> 00:24:06,030 >> [MUSIC - GREEN DAY, "HOLIDAY"] 496 00:24:06,030 --> 00:24:08,022 >> [CRASH] 497 00:24:08,022 --> 00:24:09,272 >> [MUSIC - korytnačky, "Happy Together"] 498 00:24:09,272 --> 00:24:58,328 499 00:24:58,328 --> 00:25:00,560 >> DAVID Malan: Dobre, takže tam, sme mali cookie milostný príbeh. 500 00:25:00,560 --> 00:25:01,360 Ale aj tam - 501 00:25:01,360 --> 00:25:01,755 >> [APPLAUSE] 502 00:25:01,755 --> 00:25:08,110 >> DAVID Malan: Tak jo, aj tam, premýšľať o tom, ako tie šla od srdca 503 00:25:08,110 --> 00:25:10,410 spodnej do hornej časti obrazovky, tam bol vlastne trochu 504 00:25:10,410 --> 00:25:11,440 náhodnosť deje. 505 00:25:11,440 --> 00:25:14,150 A skutočne, uvidíme, že ani v Najjednoduchšie z prostredia, ako je 506 00:25:14,150 --> 00:25:18,180 Scratch, ako v C, môžete vygenerovať náhodné čísla, alebo ilúzia 507 00:25:18,180 --> 00:25:21,110 náhodné čísla, takže je hra trochu zaujímavejšie, než by to mohlo 508 00:25:21,110 --> 00:25:23,390 bolo, keby ste mali absolútne pevný kódované všetko. 509 00:25:23,390 --> 00:25:26,360 >> V hnutie, ktoré vidíte, sú tam je nejaký druh reakcie. 510 00:25:26,360 --> 00:25:28,840 Akonáhle perník muž sa dotýka perník žena, ona 511 00:25:28,840 --> 00:25:30,000 Zdá sa, že odísť. 512 00:25:30,000 --> 00:25:33,580 A tak, v skutočnosti, môžete vykonávať vo väčšine programovacích jazykov, pojem 513 00:25:33,580 --> 00:25:38,680 udalostí, pričom ak je jedna ruka sa dotýka Na druhej strane, to môže vyvolať niektoré 514 00:25:38,680 --> 00:25:41,270 zo zdrojového kódu skutočne vykonať. 515 00:25:41,270 --> 00:25:43,740 Môžete počúvať ako veci na obrazovke. 516 00:25:43,740 --> 00:25:47,310 >> Takže poďme si rýchlu prehliadku, potom, niektoré zo stavebných kameňov, ktoré môžeme použiť 517 00:25:47,310 --> 00:25:48,790 na dosiahnutie niektorých z týchto cieľov. 518 00:25:48,790 --> 00:25:51,630 Tak tu je to, čo budeme odteraz zavolajte vyhlásenie. 519 00:25:51,630 --> 00:25:55,030 Vyhlásenie sa stane byť fialové Scratch, trochu niečo také, 520 00:25:55,030 --> 00:25:56,120 ale to je subjektívne. 521 00:25:56,120 --> 00:26:00,140 Príkaz je len kúsok puzzle, alebo všeobecnejšie, inštrukcia, ktorá 522 00:26:00,140 --> 00:26:03,370 hovorí počítači robiť niečo, vyhlásenie. 523 00:26:03,370 --> 00:26:04,680 >> Tak tu je to jednoduchý vzorka. 524 00:26:04,680 --> 00:26:05,930 Say hello world. 525 00:26:05,930 --> 00:26:08,180 Ďalším z nich by mohol byť počkajte jednu sekundu. 526 00:26:08,180 --> 00:26:10,840 Takže tento kúsok skladačky, ktorý je podporovaný V Scratch, necháme váš 527 00:26:10,840 --> 00:26:13,050 znaky pauzy pre niektoré počet sekúnd. 528 00:26:13,050 --> 00:26:15,330 Aj to je len konštatovanie. 529 00:26:15,330 --> 00:26:18,640 >> Tu ďalšie máme ďalšie viac zaujímavý, prehrávať zvuk mňau, a 530 00:26:18,640 --> 00:26:21,480 malá šípka znamená, že Scratch, to je rozbaľovacie menu. 531 00:26:21,480 --> 00:26:22,590 Takže môžete importovať zvuky. 532 00:26:22,590 --> 00:26:25,095 Môžete nahrávať zvuky a robiť iné zábavné veci na začiatku. 533 00:26:25,095 --> 00:26:28,450 A to, že aj keď sa na konci dňa, je to len konštatovanie. 534 00:26:28,450 --> 00:26:31,250 Ale teraz poďme predstaviť viac Zaujímavou, že známy ako 535 00:26:31,250 --> 00:26:32,630 Logický výraz. 536 00:26:32,630 --> 00:26:35,180 Kapitál B, pomenoval chlapík menom Bool. 537 00:26:35,180 --> 00:26:39,500 >> A Logický výraz je len skladačky, alebo všeobecnejšie, 538 00:26:39,500 --> 00:26:42,980 informácia, ktorá je buď true alebo false - 539 00:26:42,980 --> 00:26:45,830 jedna alebo nula, áno alebo nie. 540 00:26:45,830 --> 00:26:48,420 Takže je to len jeden z tých, dva protiklady. 541 00:26:48,420 --> 00:26:52,840 Takže jeden taký logický výraz v Svet Scratch vyzerá takto modrá 542 00:26:52,840 --> 00:26:53,560 skladačky. 543 00:26:53,560 --> 00:26:56,735 A to sa pýta na otázku, myš nadol, a ktorá môže byť, z 544 00:26:56,735 --> 00:26:58,430 Samozrejme, true alebo false. 545 00:26:58,430 --> 00:27:01,710 Tak s týmto puzzle v Scratch, dobre, budete môcť zistiť, či sú 546 00:27:01,710 --> 00:27:05,490 puzzle, ak je myš, v skutočnosti, že podržanie ľudskou interakcie 547 00:27:05,490 --> 00:27:06,550 s programom. 548 00:27:06,550 --> 00:27:08,860 >> Toto je trochu abstraktné, ale tie dve biele krabičky 549 00:27:08,860 --> 00:27:09,740 sú len pre čísla. 550 00:27:09,740 --> 00:27:12,950 Takže si môžete robiť veci, ako je táto číslo menšie ako ostatné? 551 00:27:12,950 --> 00:27:16,180 A ak áno, bude Scratch správať jedna cesta alebo iný. 552 00:27:16,180 --> 00:27:17,505 Toto je trochu grafický. 553 00:27:17,505 --> 00:27:21,840 Keď je objekt sprite, ak je mačka, pre inštancie, je v skutočnosti dotýka 554 00:27:21,840 --> 00:27:22,510 ukazovateľ myši. 555 00:27:22,510 --> 00:27:25,780 Takže ak niečo šípka hlava sa vznáša na mačky, potom tento 556 00:27:25,780 --> 00:27:28,030 skladačky vyhodnotí na true. 557 00:27:28,030 --> 00:27:31,870 Bude to pravda, v tom prípade, ak ste použiť tento logický výraz, pretože my budeme 558 00:27:31,870 --> 00:27:36,340 vidieť vo chvíli, na pobočke, môžete Buď to, alebo si môžete urobiť to, 559 00:27:36,340 --> 00:27:39,940 rovnako ako sme mali podmienku, že kontrolovaná, je tu ešte jeden posledný človek 560 00:27:39,940 --> 00:27:40,460 v miestnosti? 561 00:27:40,460 --> 00:27:42,070 Ak áno, pridať. 562 00:27:42,070 --> 00:27:44,430 Inak, nebojte sa ďalej. 563 00:27:44,430 --> 00:27:48,650 >> Takže Logický výraz môže byť tiež a-ed spoločne alebo alebo-ed dohromady. 564 00:27:48,650 --> 00:27:53,120 Takže môžete kombinovať booleovských výrazov a hovoriť to a to musí byť pravda pre 565 00:27:53,120 --> 00:27:54,710 Celá vec je to pravda. 566 00:27:54,710 --> 00:27:56,520 A tu je viac reálny svet príkladom. 567 00:27:56,520 --> 00:28:00,060 Ak ste použili CS50 kurzy urobiť kurz nakupovanie, táto zaškrtávacie políčka 568 00:28:00,060 --> 00:28:03,520 tam, kde ak si skontrolujte, či políčko vedľa do kurzov, bude to hovoriť, áno, 569 00:28:03,520 --> 00:28:07,860 zobraziť iba mi kurzy, ktoré hodnota Q je 4,5 alebo vyšší. 570 00:28:07,860 --> 00:28:10,610 Ak nepotvrdíte, nie, nie starosti. 571 00:28:10,610 --> 00:28:13,910 Alebo podobne, na práva, nemusia Konflikt s kurzami beriem, 572 00:28:13,910 --> 00:28:15,650 to je buď true alebo false. 573 00:28:15,650 --> 00:28:16,715 Je to len logický výraz. 574 00:28:16,715 --> 00:28:20,080 Takže celú tú dobu, kedy ste používali webové stránky s zaškrtávacích políčok, si len 575 00:28:20,080 --> 00:28:23,570 prepínanie ekvivalent Boolean Výraz zapnutie a vypnutie. 576 00:28:23,570 --> 00:28:25,270 >> Takže v akej forme sa používa toto? 577 00:28:25,270 --> 00:28:28,820 No, Scratch, uvidíme za chvíľu že existujú podmienky, že 578 00:28:28,820 --> 00:28:29,560 vyzerať takto. 579 00:28:29,560 --> 00:28:33,130 A to je celkom rozumné, pretože mnoho ako v pseudokódu, sa odsadený 580 00:28:33,130 --> 00:28:38,550 druh tvaru U dielikov, stredná že niečo vo vnútri, že u je 581 00:28:38,550 --> 00:28:41,390 bude vykonávať, alebo nie, záleží na tom, kde je. 582 00:28:41,390 --> 00:28:45,310 Takže ak logický výraz, potom čo je vnútri dostane popravený. 583 00:28:45,310 --> 00:28:46,800 >> Medzitým tam if / else bloku. 584 00:28:46,800 --> 00:28:50,320 Takže ak chcete, vetva, ktorá ide to Tak alebo tak, že Scratch dáva nám to. 585 00:28:50,320 --> 00:28:54,500 A tejto logiky, teraz, aj napriek tomu, že skladačky je zjavne príliš malá 586 00:28:54,500 --> 00:28:57,400 k zaklineniu niečo vnútri nej, kúsky puzzle poškriabaniu, sú 587 00:28:57,400 --> 00:28:58,150 len porastie. 588 00:28:58,150 --> 00:29:01,370 Keď pretiahnete nad niečím, to bude len rásť, aby sa zmestili bez ohľadu na to 589 00:29:01,370 --> 00:29:02,510 sa snažíte robiť. 590 00:29:02,510 --> 00:29:07,230 >> Takže môžeme vziať dve z týchto vecí a aby sa trojcestný rázcestí tak 591 00:29:07,230 --> 00:29:11,300 že buď to, či ono, čiže tá druhá vec, len tým, že im hniezdenia 592 00:29:11,300 --> 00:29:12,070 týmto spôsobom. 593 00:29:12,070 --> 00:29:14,370 Samozrejme, ak si to urobiť taky moc, to začína byť škaredé. 594 00:29:14,370 --> 00:29:17,660 Ale v tomto okamihu, že ste v skutočnosti pravdepodobne nie programovanie veľmi dobre. 595 00:29:17,660 --> 00:29:20,490 A tak, že bude opakujúce téma tiež, že z módy. 596 00:29:20,490 --> 00:29:22,790 To, ako dobre sa vlastne formátovanie kódu? 597 00:29:22,790 --> 00:29:24,580 Alebo, ako dobre si navrhnúť svoj kód? 598 00:29:24,580 --> 00:29:26,430 Ale o tom viac v budúcnosti. 599 00:29:26,430 --> 00:29:27,470 >> A teraz máme slučky. 600 00:29:27,470 --> 00:29:30,310 Je to pekná navždy slučka Scratch čo doslova znamená, že - do 601 00:29:30,310 --> 00:29:32,710 čo je vo vnútri to ešte raz, a znova a znova. 602 00:29:32,710 --> 00:29:35,880 Môžete byť konkrétnejší a povedať, Vykonajte nasledujúce vec 10 krát. 603 00:29:35,880 --> 00:29:37,620 Môžete tiež použiť premenné. 604 00:29:37,620 --> 00:29:40,260 Môžete prísť s nejakým menom v tom trochu klesnúť a povedal, daj mi 605 00:29:40,260 --> 00:29:43,190 premenné s názvom n a nastavte je rovná nejaké hodnoty. 606 00:29:43,190 --> 00:29:44,910 A potom môžete mať funkcie. 607 00:29:44,910 --> 00:29:46,850 Ale o tých za chvíľu. 608 00:29:46,850 --> 00:29:49,140 >> Dovoľte mi vrátiť sa k môjmu Scratch rozhranie. 609 00:29:49,140 --> 00:29:50,970 A dovoľte mi, aby som do toho tentoraz. 610 00:29:50,970 --> 00:29:56,660 A poďme ďalej a otvoriť, povedzme, príklad z - 611 00:29:56,660 --> 00:29:58,740 že je to trochu zaujímavejšie. 612 00:29:58,740 --> 00:30:00,750 Nechaj ma ísť napred, a v skutočnosti, dovoľte mi, aby to sám. 613 00:30:00,750 --> 00:30:01,960 Nepotrebujem, aby toto. 614 00:30:01,960 --> 00:30:03,390 Nechaj ma ísť do Súbor, Nový. 615 00:30:03,390 --> 00:30:04,740 Chystám sa ísť do akcie. 616 00:30:04,740 --> 00:30:08,460 Chystám sa ísť, keď zelenou vlajkou klikli a ja idem na zvuk. 617 00:30:08,460 --> 00:30:11,590 A budem preťahovať to skladačky, prehrávať zvuk mňau. 618 00:30:11,590 --> 00:30:12,580 To západky k sebe. 619 00:30:12,580 --> 00:30:14,327 A teraz, keď som kliknite na zelenú vlajku - 620 00:30:14,327 --> 00:30:16,260 >> [MEOW SOUND] 621 00:30:16,260 --> 00:30:17,500 >> DAVID Malan: Rozkošný. 622 00:30:17,500 --> 00:30:21,560 OK, takže teraz poďme urobiť niečo trochu logickejšie len preukázať, že 623 00:30:21,560 --> 00:30:22,760 môžeme pre túto chvíľu. 624 00:30:22,760 --> 00:30:25,550 Chystám sa uvoľnite to z toho chlapa. 625 00:30:25,550 --> 00:30:27,000 Chystám sa ísť na kontrolu. 626 00:30:27,000 --> 00:30:28,770 A ja idem chytiť podmienku. 627 00:30:28,770 --> 00:30:30,600 Takže ak sa niečo potom. 628 00:30:30,600 --> 00:30:32,020 Tak to je, ako to tam vyzerá. 629 00:30:32,020 --> 00:30:33,890 Tak som potrebné logický výraz. 630 00:30:33,890 --> 00:30:38,130 A nechaj ma ísť napred a povedal: nechaj ma ísť na prevádzkovateľa. 631 00:30:38,130 --> 00:30:40,270 Chystám sa urobiť niečo mierne Mathy, len tak pre srandu. 632 00:30:40,270 --> 00:30:43,600 Chystám sa ísť sem a povedať, ak je niečo, čo je menšie ako niečo iné, 633 00:30:43,600 --> 00:30:45,030 choďte do toho a niečo urobiť. 634 00:30:45,030 --> 00:30:46,890 Takže teraz, viete čo, náhodný blok. 635 00:30:46,890 --> 00:30:51,620 Tak zistíte, ako keby som vznášať sa nad to vec tu, že budú chytať tam. 636 00:30:51,620 --> 00:30:54,090 >> Takže teraz, oznámenia, začínam robiť niečo, čo už logickejšie 637 00:30:54,090 --> 00:30:54,650 zaujímavé. 638 00:30:54,650 --> 00:30:59,720 Ak je náhodné číslo medzi 1 a 10 je nižšia než, povedzme, šesť. 639 00:30:59,720 --> 00:31:03,670 Mám-li si vybrať šesť, ktoré v podstate znamená, vykonajte nasledujúce kroky s 50% 640 00:31:03,670 --> 00:31:03,980 pravdepodobnosť. 641 00:31:03,980 --> 00:31:05,460 Je to ako hodiť mincí. 642 00:31:05,460 --> 00:31:07,330 Teraz môžem niečo urobiť podmienečne. 643 00:31:07,330 --> 00:31:10,800 A to je niečo, čo budem urobiť, je hrať zvuk. 644 00:31:10,800 --> 00:31:14,280 Takže teraz, keď som kliknite na obrazovku vlajka, je to ako hádzať mincí. 645 00:31:14,280 --> 00:31:14,610 >> [MEOW SOUND] 646 00:31:14,610 --> 00:31:17,160 >> DAVID Malan: Bolo hlavy alebo kto vie čo ešte tam. 647 00:31:17,160 --> 00:31:17,920 Urobme to znova. 648 00:31:17,920 --> 00:31:18,860 >> [MEOW SOUND] 649 00:31:18,860 --> 00:31:19,790 >> DAVID Malan: Heads znova. 650 00:31:19,790 --> 00:31:20,280 >> [MEOW SOUND] 651 00:31:20,280 --> 00:31:21,500 >> DAVID Malan: Heads znova. 652 00:31:21,500 --> 00:31:22,631 Uf, OK. 653 00:31:22,631 --> 00:31:24,720 Tails, že čas. 654 00:31:24,720 --> 00:31:29,545 Tak 50% času, ak sa to nekonečne dlho, dostaneme 50% meows 655 00:31:29,545 --> 00:31:32,180 a 50% mlčanie. 656 00:31:32,180 --> 00:31:34,850 Takže tam, len základné stavebné blok, ktorý nám umožňuje robiť. 657 00:31:34,850 --> 00:31:37,710 Ale to je trochu nudné, že mám aby kliknutím na toto tlačidlo. 658 00:31:37,710 --> 00:31:39,810 Takže poďme sa len drag and hodiť všetky z nich preč. 659 00:31:39,810 --> 00:31:42,270 Ak sa odtiahol ich do stredu, budú len odstrániť sami. 660 00:31:42,270 --> 00:31:43,760 >> Nechaj ma ísť až na ovládanie. 661 00:31:43,760 --> 00:31:46,060 Nechaj ma ísť navždy. 662 00:31:46,060 --> 00:31:49,952 A tentoraz idem robiť niečo minorly nepríjemné. 663 00:31:49,952 --> 00:31:51,560 >> [Smiech] 664 00:31:51,560 --> 00:31:53,370 >> DAVID Malan: A nechaj ma ísť a urob kontrolu. 665 00:31:53,370 --> 00:31:57,260 Počkajte jednu sekundu, len tak to nie je príliš rošt. 666 00:31:57,260 --> 00:31:59,870 >> [MEOW SOUND] 667 00:31:59,870 --> 00:32:00,970 >> DAVID Malan: To nie je prirodzené. 668 00:32:00,970 --> 00:32:01,861 OK. 669 00:32:01,861 --> 00:32:04,510 >> [MEOW SOUND] 670 00:32:04,510 --> 00:32:06,406 >> DAVID Malan: A upozornenie Čo je, pekné o Scratch, pre tých z vás, ktorí 671 00:32:06,406 --> 00:32:09,210 mať predchádzajúce programovacie skúsenosti, môžete Nemusíte spustiť a zastaviť. 672 00:32:09,210 --> 00:32:10,060 Nemusíte kompilácie. 673 00:32:10,060 --> 00:32:13,210 Stačí zmeniť, a program sa prispôsobí dynamicky. 674 00:32:13,210 --> 00:32:14,620 Tak to už je málo zaujímavé. 675 00:32:14,620 --> 00:32:16,930 Ale poďme ešte o krok ďalej. 676 00:32:16,930 --> 00:32:19,760 Nechaj ma ísť dopredu a dostať zbaviť tohto programu. 677 00:32:19,760 --> 00:32:23,300 >> [MEOW SOUND] 678 00:32:23,300 --> 00:32:25,520 >> DAVID Malan: To je to, čo budeme zavolajte chybu v začiatku. 679 00:32:25,520 --> 00:32:26,770 Nemal by udržať robiť ten zvuk. 680 00:32:26,770 --> 00:32:28,340 Tak sme si poviem mu, nech prestane. 681 00:32:28,340 --> 00:32:30,435 Dobre, takže teraz som ísť do - 682 00:32:30,435 --> 00:32:32,180 Dám vedieť MIT. 683 00:32:32,180 --> 00:32:35,160 Pôjdeme sem Forever. 684 00:32:35,160 --> 00:32:37,240 A teraz chcem niečo urobiť znova a znova. 685 00:32:37,240 --> 00:32:38,760 Chystám sa ísť do riadenia. 686 00:32:38,760 --> 00:32:41,570 >> A pozrime sa, budem preťahovať môj stav, ak existuje. 687 00:32:41,570 --> 00:32:42,850 Takže teraz si všimnite logiku. 688 00:32:42,850 --> 00:32:46,430 Po kliknutí na zelenú vlajkou, robiť niečo, čo navždy, ale len to, že 689 00:32:46,430 --> 00:32:48,890 čo keď tá druhá vec je pravda. 690 00:32:48,890 --> 00:32:51,480 Chystám sa ísť, poďme povedať, snímanie. 691 00:32:51,480 --> 00:32:54,430 A ja idem do toho a vyberte dojemné a umiestnite ho tam. 692 00:32:54,430 --> 00:32:55,930 To je logický výraz. 693 00:32:55,930 --> 00:32:57,740 >> A teraz, všimnite si, v tomto poklese down menu, sú 694 00:32:57,740 --> 00:32:59,050 niektoré preddefinované hodnoty. 695 00:32:59,050 --> 00:33:00,910 Takže môžem povedať, ste dotýka okraj obrazovky? 696 00:33:00,910 --> 00:33:03,900 Alebo ste sa dotknete myši, šípka na obrazovke? 697 00:33:03,900 --> 00:33:04,620 Takže idem na to. 698 00:33:04,620 --> 00:33:08,770 A ak áno, potom som ísť dopredu a prehrávať zvukové mňau. 699 00:33:08,770 --> 00:33:11,250 Takže teraz som tak trochu majú Počiatky hry - 700 00:33:11,250 --> 00:33:13,110 rozkošný hra. 701 00:33:13,110 --> 00:33:14,060 >> [MEOW SOUND] 702 00:33:14,060 --> 00:33:17,250 >> DAVID Malan: OK, rozkošný, buggy hra. 703 00:33:17,250 --> 00:33:20,770 Nechaj ma čakať, povedzme, jedna sekunda tam. 704 00:33:20,770 --> 00:33:24,910 Teraz hrať znova, kliknutím na zelenou vlajkou. 705 00:33:24,910 --> 00:33:27,860 >> [MEOW SOUND] 706 00:33:27,860 --> 00:33:30,460 >> DAVID Malan: Tak teraz už je ako hladenie mačky. 707 00:33:30,460 --> 00:33:31,850 >> [MEOW SOUND] 708 00:33:31,850 --> 00:33:34,460 >> DAVID Malan: Dobre, teraz to kto som, aby vopred. 709 00:33:34,460 --> 00:33:39,250 Veľmi neskoro, dostane druh ľahké robiť hlúpe veci. 710 00:33:39,250 --> 00:33:40,240 Tak ma nechaj ísť sem. 711 00:33:40,240 --> 00:33:43,720 Povedzme, že sa hýčkať mačku. 712 00:33:43,720 --> 00:33:46,600 Poďme teraz otvoriť Nepoužívajte Zvieratá Cat. 713 00:33:46,600 --> 00:33:48,330 Teraz, keď budeme hrať tohle, môžete hádať, ak ste 714 00:33:48,330 --> 00:33:49,650 pri pohľade na obrazovku - 715 00:33:49,650 --> 00:33:51,090 >> [MEOW SOUND] 716 00:33:51,090 --> 00:33:52,170 >> DAVID Malan: Teraz, keď som sa hýčkať mačku 717 00:33:52,170 --> 00:33:55,420 >> [LION rev] 718 00:33:55,420 --> 00:33:57,260 >> DAVID Malan: Takže nie sú v skutočnosti hýčkať mačku v tomto prípade. 719 00:33:57,260 --> 00:34:01,350 Takže teraz máme len príklad vetva, čo sa deje v dvoch smeroch. 720 00:34:01,350 --> 00:34:03,130 Teraz mi dovoľte pokračovať a otvoriť iný tu. 721 00:34:03,130 --> 00:34:07,120 Tento jeden, aj mimo náš zdroj súbory kódu pre daný deň. 722 00:34:07,120 --> 00:34:13,199 Tak nechaj ma ísť späť do svojho zdroja adresár a ísť do, poďme vybrať 723 00:34:13,199 --> 00:34:15,610 ten chlap tu a vidieť to, čo je. 724 00:34:15,610 --> 00:34:17,449 >> Wow, v poriadku, takže teraz je to čím ďalej trochu zložitejšie. 725 00:34:17,449 --> 00:34:21,300 A predtým, než sme videli, čo ten chlap robí, Pokúsme sa odvodiť, z programu 726 00:34:21,300 --> 00:34:22,219 na pravej strane. 727 00:34:22,219 --> 00:34:25,590 A teraz poškriabaniu jasne nám umožňuje majú viac skriptov, viac 728 00:34:25,590 --> 00:34:29,730 programy spojené s jedným škriatka, sa v jednom znaku, a zdá sa, 729 00:34:29,730 --> 00:34:31,760 oni obaja pobeží jeden muž. 730 00:34:31,760 --> 00:34:35,570 Vzhľadom k tomu, a to ako z týchto programov sa spustí sa kedy zelená vlajka kliknutí, je to 731 00:34:35,570 --> 00:34:38,650 naznačuje v pokročilejšie tému, s ktoré niektorí z vás možno poznať, 732 00:34:38,650 --> 00:34:40,580 známy ako závitov, alebo multi-threading. 733 00:34:40,580 --> 00:34:44,400 >> Ukázalo sa, že dlhý príbeh krátky, počítače dnes môže v podstate robiť viac 734 00:34:44,400 --> 00:34:45,270 veci naraz. 735 00:34:45,270 --> 00:34:48,659 Alebo si môžete urobiť jednu vec naraz, takže rýchlo, že si ani nevšimnete, že 736 00:34:48,659 --> 00:34:50,150 je to vlastne jedným vec naraz. 737 00:34:50,150 --> 00:34:53,320 Ale teraz, predpokladajme, že obaja Tieto programy budú vykonávať v 738 00:34:53,320 --> 00:34:54,310 v rovnakom čase. 739 00:34:54,310 --> 00:34:57,350 A oznámenia, obaja z nich majú navždy skladačky. 740 00:34:57,350 --> 00:35:01,270 Takže oni obaja bude bežať ďalej až som narazila na červenú stopku. 741 00:35:01,270 --> 00:35:02,100 >> Takže to, čo chcú robiť? 742 00:35:02,100 --> 00:35:06,030 Na ľavej strane, ja som zrejme deklarovaní premennej s názvom stlmený. 743 00:35:06,030 --> 00:35:09,030 Takže som nemal hovoriť niečo ako nuda ako N. som to nazval stlmený to 744 00:35:09,030 --> 00:35:10,240 čas oznámiť zmysel. 745 00:35:10,240 --> 00:35:11,780 Nastavil som to rovná nule. 746 00:35:11,780 --> 00:35:16,200 Poďme si o tom myslíte ako False, alebo poďme si o tom ako False. 747 00:35:16,200 --> 00:35:17,490 >> Teraz navždy vykonajte nasledujúce kroky. 748 00:35:17,490 --> 00:35:23,280 Ak je klávesnica v medzerníkom je stlačené potom v prípade, tlmené rovný nule, 749 00:35:23,280 --> 00:35:25,930 zmeňte stlmený na rovné jednej. 750 00:35:25,930 --> 00:35:27,580 Inak nastaviť stlmený na nulu. 751 00:35:27,580 --> 00:35:30,530 Takže logicky, aj keď to je úplne banda dielikov, ktoré sa nachádza v 752 00:35:30,530 --> 00:35:33,160 Len hovorím, keď som narazila na medzerník, Čo mám robiť, aby sa premenná 753 00:35:33,160 --> 00:35:34,750 volal stlmený? 754 00:35:34,750 --> 00:35:37,170 Zmena z jednej na nulu, alebo nula až jedna. 755 00:35:37,170 --> 00:35:37,840 To je všetko. 756 00:35:37,840 --> 00:35:40,740 Takže je to ako keď sa vypínač zapnutie alebo vypnutie a pamätať si, s 757 00:35:40,740 --> 00:35:42,330 premenné, ktoré som urobil. 758 00:35:42,330 --> 00:35:45,990 >> Medzitým, na pravej strane, v Laicky povedané, aký je účel 759 00:35:45,990 --> 00:35:47,547 Skript na pravej strane? 760 00:35:47,547 --> 00:35:48,860 >> STUDENT: Ak chcete prehrať zvuk mrože. 761 00:35:48,860 --> 00:35:52,500 >> DAVID Malan: Ak chcete prehrať zvuk Sea Lion, keď nie je stlmený, a 762 00:35:52,500 --> 00:35:53,480 Povaha tejto premennej. 763 00:35:53,480 --> 00:35:57,360 Takže sme zdieľanie stať, aby som tak povedal, zdieľanie informácií medzi týmito dvoma 764 00:35:57,360 --> 00:36:00,540 skripty, pretože zistíte tu sme navždy nasledujúceho postupu. 765 00:36:00,540 --> 00:36:04,620 Je-li stlmený je nula, takže ak to nie je stlmený - Ak stlmený je false, potom sa hra 766 00:36:04,620 --> 00:36:05,980 to mrože zvuk. 767 00:36:05,980 --> 00:36:09,930 A myslieť na seba, hi, hi, hi, pre dve sekundy, chvíľu počkajte a potom 768 00:36:09,930 --> 00:36:11,140 znova skontrolujte. 769 00:36:11,140 --> 00:36:15,150 Takže ak teraz pôjdeme sem na ľavej strane, kde je ten chlap, a stlačte 770 00:36:15,150 --> 00:36:16,662 zelená vlajka, 771 00:36:16,662 --> 00:36:30,260 >> [SEA LION SOUND] 772 00:36:30,260 --> 00:36:31,910 >> DAVID Malan: V akom okamihu sa to naozaj otravné? 773 00:36:31,910 --> 00:36:33,440 Vzhľadom k tomu, bude to trvať večne. 774 00:36:33,440 --> 00:36:36,490 Takže niekedy, nekonečné slučky, aby som tak povedal, sú úmyselné. 775 00:36:36,490 --> 00:36:41,140 Ale v tomto prípade, len čo som narazia na medzerník, on sa zastaví. 776 00:36:41,140 --> 00:36:42,800 Teraz sa program neukončí. 777 00:36:42,800 --> 00:36:44,760 Je to stále beží v týchto slučiek. 778 00:36:44,760 --> 00:36:46,540 Ale keď som si medzerníka znova - 779 00:36:46,540 --> 00:36:47,851 >> [SEA LION SOUND] 780 00:36:47,851 --> 00:36:49,650 >> DAVID Malan: Bude sa vyberať tam, kde on skončil. 781 00:36:49,650 --> 00:36:53,240 Takže je tam jeden spôsob, ako nám to niečo znovu a znovu, ale že 782 00:36:53,240 --> 00:36:54,920 čas, len podmienečne. 783 00:36:54,920 --> 00:36:58,940 No, keď už sme v tomto duchu, ako robiť veci znova a znova, dovoľte mi, aby som 784 00:36:58,940 --> 00:37:01,370 ísť do iného takého príklad. 785 00:37:01,370 --> 00:37:04,370 Tenhle zavoláme počítanie ovečiek. 786 00:37:04,370 --> 00:37:05,710 >> A všimnite si, čo ten chlap robí. 787 00:37:05,710 --> 00:37:08,540 Je to vlastne niečo ako pseudokódu sme hrali s na 788 00:37:08,540 --> 00:37:12,230 Streda, čím sa nastaví nejaký čítač, myslieť na to, ako je N znovu, 789 00:37:12,230 --> 00:37:14,030 nula, sa vykoná nasledujúce navždy. 790 00:37:14,030 --> 00:37:17,960 Hovorí pultu je hodnota pre jeden Po druhé, čaká druhé, a potom 791 00:37:17,960 --> 00:37:19,430 mení čítača o jednotku. 792 00:37:19,430 --> 00:37:21,570 A v tejto súvislosti, že práve znamená to krokoch. 793 00:37:21,570 --> 00:37:23,250 Takže jeden pridá k nej. 794 00:37:23,250 --> 00:37:25,830 Tak toto je doslova - 795 00:37:25,830 --> 00:37:27,890 že to nie je presne to, čo si myslíme, že ako počítanie ovečiek. 796 00:37:27,890 --> 00:37:33,120 Je to ovce robí počítanie, navždy, a to až od nuly. 797 00:37:33,120 --> 00:37:35,560 >> Takže môžeme robiť podobné veci tam, logicky. 798 00:37:35,560 --> 00:37:37,750 Ale teraz poďme sa snažia vyčistiť niektoré z týchto vecí sa. 799 00:37:37,750 --> 00:37:43,440 Nechaj ma ísť napred sa do jednoduchej Príkladom, kedy naša mačka sa práve chystá 800 00:37:43,440 --> 00:37:44,750 začať kašľať. 801 00:37:44,750 --> 00:37:48,830 Dobre, takže tu máme kašeľ 0 - 802 00:37:48,830 --> 00:37:50,685 počítačoví experti začať počítanie od 0. 803 00:37:50,685 --> 00:37:53,480 Tak táto mačka je len tak kašlať trikrát. 804 00:37:53,480 --> 00:37:54,890 A tu je návod, ako som implementoval, že. 805 00:37:54,890 --> 00:38:00,130 Po kliknutí zelená vlajka, kašeľ, počkajte, kašeľ, počkať, kašeľ, počkajte. 806 00:38:00,130 --> 00:38:02,470 A ja som to jednoduchým pretiahnutím a pretiahnutím dielikov. 807 00:38:02,470 --> 00:38:04,740 Alebo keď začnete vŕtať Scratch, uvidíte, môžete skutočne 808 00:38:04,740 --> 00:38:08,620 duplicitné kúsky, takže si môžete urobiť veci rýchlejšie bez preťahovania 809 00:38:08,620 --> 00:38:10,310 a klesá reklamné Nauseum. 810 00:38:10,310 --> 00:38:12,680 >> Ale my nie sme na najlepšej ceste sem. 811 00:38:12,680 --> 00:38:15,210 Vzhľadom k tomu, ako mám urobiť ho kašeľ štvrtýkrát? 812 00:38:15,210 --> 00:38:16,790 No, mohol by som nejako ísť sem. 813 00:38:16,790 --> 00:38:19,420 Mohol by som duplikovať a potom vložiť to tam. 814 00:38:19,420 --> 00:38:21,740 Ako môžem ho kašlať piatykrát? 815 00:38:21,740 --> 00:38:23,230 No, skopírujte a vložte znova. 816 00:38:23,230 --> 00:38:24,210 Alebo pretiahnite kvapka znova. 817 00:38:24,210 --> 00:38:26,920 A veľmi rýchlo, tento program spustí sa naozaj, ale naozaj zbytočné, 818 00:38:26,920 --> 00:38:28,880 naozaj dlho, ale naozaj nezaujímavé. 819 00:38:28,880 --> 00:38:30,120 Ale je tu spôsob, ako vyčistiť to. 820 00:38:30,120 --> 00:38:33,680 Aký je zrejmý spôsob, Na čistenie sa deje? 821 00:38:33,680 --> 00:38:36,280 >> OK, takže sme mohli v skutočnosti naozaj ísť von, a keď narazí na priestor 822 00:38:36,280 --> 00:38:37,070 bar, nechať ho kašľať. 823 00:38:37,070 --> 00:38:40,150 Ale ak chcem niečo urobiť opakovane, pripomínajú, že máme 824 00:38:40,150 --> 00:38:41,310 určitú kontrolu konštruuje. 825 00:38:41,310 --> 00:38:43,800 Dovoľte mi, aby som presunúť z cesta, ísť pod kontrolu. 826 00:38:43,800 --> 00:38:47,340 Dovoľte mi to opakovať, povedzme trikrát. 827 00:38:47,340 --> 00:38:49,410 A teraz mi dovoľte ukradnúť niektoré z týchto dielikov. 828 00:38:49,410 --> 00:38:50,980 Dovoľte mi, aby som snap to tu. 829 00:38:50,980 --> 00:38:52,400 Nechaj ma vyhodiť úplne. 830 00:38:52,400 --> 00:38:55,400 >> A teraz mám lepšiu navrhnutý program. 831 00:38:55,400 --> 00:38:55,920 Prečo? 832 00:38:55,920 --> 00:39:00,540 Chcem chcete zmeniť počet opakovaní táto mačka kašľa, všetko, čo mám 833 00:39:00,540 --> 00:39:05,640 urobiť, je zmeniť jednu premennú, alebo jedna hodnota, skôr z troch na štyri, alebo 834 00:39:05,640 --> 00:39:06,700 päť, alebo šesť. 835 00:39:06,700 --> 00:39:09,060 Alebo by som mohol niečo urobiť s výhradami, i, s priestorom 836 00:39:09,060 --> 00:39:10,320 bar, keby som chcel. 837 00:39:10,320 --> 00:39:11,780 >> Tak to je všeobecný princíp. 838 00:39:11,780 --> 00:39:14,950 Akonáhle začnete kopírovanie a vkladanie kódu, či už je to v scratch, prípadne vo 839 00:39:14,950 --> 00:39:18,340 C, robíte niečo zle, s najväčšou pravdepodobnosťou. 840 00:39:18,340 --> 00:39:21,950 Alebo aspoň, akonáhle ste prekročení niektoré primerané počty kópií a 841 00:39:21,950 --> 00:39:24,610 pasty, ste pravdepodobne robí niečo zlé. 842 00:39:24,610 --> 00:39:26,740 >> Ale viete čo? 843 00:39:26,740 --> 00:39:27,590 Ja to naozaj takto. 844 00:39:27,590 --> 00:39:28,980 To nie je najčistejšie prevedenie. 845 00:39:28,980 --> 00:39:32,860 Prial by som si tam bol kúsok puzzle s názvom kašeľ, pretože potom by som to neurobil 846 00:39:32,860 --> 00:39:36,100 mať na vykonanie tohto sám, postarom, podľa 847 00:39:36,100 --> 00:39:38,220 čo hovoria, a čakať - 848 00:39:38,220 --> 00:39:40,320 čo keby boli len kašeľ skladačky. 849 00:39:40,320 --> 00:39:41,330 >> No, môžem vlastne robiť, že. 850 00:39:41,330 --> 00:39:45,010 Nechaj ma ísť do viacerých blokov, kliknite na tlačidlo Vykonajte blok, a teraz som si to 851 00:39:45,010 --> 00:39:45,610 okno tu. 852 00:39:45,610 --> 00:39:47,540 Budem volať túto vec kašeľ. 853 00:39:47,540 --> 00:39:49,400 Chystám sa ísť ďalej a kliknite na tlačidlo OK. 854 00:39:49,400 --> 00:39:53,150 A teraz oznámenia, mám nový počiatočný kus, ktorý je zakrivený na vrchole. 855 00:39:53,150 --> 00:39:56,590 A čo budem robiť s tým, že som bude kradnúť týchto blokov. 856 00:39:56,590 --> 00:39:57,800 Chystám sa dať ich sem. 857 00:39:57,800 --> 00:40:00,490 >> A teraz, s týmito tromi kúskami, som realizovaný čo budem volať 858 00:40:00,490 --> 00:40:03,530 funkcie, alebo postup, alebo niektoré z možno viete, ako metódy. 859 00:40:03,530 --> 00:40:05,050 Nepatrné rozdiely medzi slovami. 860 00:40:05,050 --> 00:40:06,950 Ale teraz, povedzme, nazývajú funkcie. 861 00:40:06,950 --> 00:40:08,750 To je len nový kúsok skladačky. 862 00:40:08,750 --> 00:40:11,000 Teraz je vykonávaná nasledovne. 863 00:40:11,000 --> 00:40:15,170 >> Ale zistíte, že Scratch nám dal fyzickej reprezentácie, ktorá celý 864 00:40:15,170 --> 00:40:16,570 blokovať sem. 865 00:40:16,570 --> 00:40:21,930 Takže teraz môžem len pretiahnuť sem, povedať, opakujte trikrát, a 866 00:40:21,930 --> 00:40:26,420 čo sa stane teraz, keď hrám Tento skript je iba jeden program 867 00:40:26,420 --> 00:40:27,500 beží naraz. 868 00:40:27,500 --> 00:40:29,880 Je tu len jeden, keď zelená vlajka klikli. 869 00:40:29,880 --> 00:40:34,010 Ale to fialový blok nazvaný kašeľ účinne rozprávanie Scratch, každý 870 00:40:34,010 --> 00:40:38,160 keď vidíte, že kúsok skladačky, v skutočnosti vykonaní týchto krokov, ktoré som 871 00:40:38,160 --> 00:40:40,420 vykonávať štát ručne. 872 00:40:40,420 --> 00:40:41,410 >> Tak to je celkom elegantný. 873 00:40:41,410 --> 00:40:44,650 Ale teraz, predpokladám, že som sa rozhodol, ja nie Chcete túto mačku len kašeľ. 874 00:40:44,650 --> 00:40:46,660 Chcem, aby bolo možné kýchať rovnako. 875 00:40:46,660 --> 00:40:48,905 No, ako by sme mohli ísť o vykonávanie kýchnuť? 876 00:40:48,905 --> 00:40:51,310 Tak som mohol celkom veľa to isté. 877 00:40:51,310 --> 00:40:52,690 Mohol by som urobiť ďalší blok. 878 00:40:52,690 --> 00:40:55,940 Mohol by som zavolať túto kýchnutie, kliknite na tlačidlo OK. 879 00:40:55,940 --> 00:40:59,250 >> Potom tu som mohol skutočne sa, nechaj ma to duplicitné - 880 00:40:59,250 --> 00:41:02,850 a tam, kde by ste mali pocit, že ste asi nie je niečo v 881 00:41:02,850 --> 00:41:03,780 najlepší spôsob. 882 00:41:03,780 --> 00:41:06,670 Mohol by som povedať niečo ako: Acho, na jednu sekundu. 883 00:41:06,670 --> 00:41:07,440 Počkajte chvíľku. 884 00:41:07,440 --> 00:41:08,715 Teraz mám nový blok s názvom kýchnutí. 885 00:41:08,715 --> 00:41:10,210 A skutočne, tu to je. 886 00:41:10,210 --> 00:41:14,010 >> Ale aj to by sa mal začať cítiť - možno nie prvý týždeň triedy, ale 887 00:41:14,010 --> 00:41:15,730 podľa druhej - len trochu nadbytočné. 888 00:41:15,730 --> 00:41:17,800 Je zrejmé, že tam je nejaký redundancie tu. 889 00:41:17,800 --> 00:41:22,090 Takže mi dovoľte navrhnúť, namiesto toho, že sa zdokonalenie tejto definície nasledovne. 890 00:41:22,090 --> 00:41:24,820 >> Nechaj ma ísť k môjmu súboru menu. 891 00:41:24,820 --> 00:41:26,090 Nebudem uložiť túto verziu. 892 00:41:26,090 --> 00:41:29,080 Chystám sa ísť do jedného z moje premade súbory tu. 893 00:41:29,080 --> 00:41:31,190 A ja idem do toho a otvoriť kašeľ 2. 894 00:41:31,190 --> 00:41:32,220 Jejda, že je kašeľ 2. 895 00:41:32,220 --> 00:41:36,900 Nechaj ma ísť dopredu a otvoriť kašeľ 3, ktorý je tento zdrojový adresár. 896 00:41:36,900 --> 00:41:42,450 Kašeľ 3 a všimnite si - ach, povedal som Príbeh v nesprávnom poradí. 897 00:41:42,450 --> 00:41:45,030 Dovoľte mi, aby som zotaviť sa z tohto príbehu. 898 00:41:45,030 --> 00:41:48,990 >> Príbeh, ktorý som chcel povedať, končí s kašľom 4 - 899 00:41:48,990 --> 00:41:50,270 tu to je. 900 00:41:50,270 --> 00:41:54,380 Tak čo keby som namiesto toho, definovať väčší kus puzzle s názvom 901 00:41:54,380 --> 00:41:57,250 definovať, povedzte slovo n krát. 902 00:41:57,250 --> 00:41:59,930 Kýchanie je len, zdá sa, V Scratch, Acho. 903 00:41:59,930 --> 00:42:01,680 Tak sme to vyjadriť ako slovo, len preto, že to je 904 00:42:01,680 --> 00:42:02,750 obmedzenie programu. 905 00:42:02,750 --> 00:42:07,860 A kašeľ je [kašeľ], ale kašeľ, C-O-U-G-H. Tak to je len dva 906 00:42:07,860 --> 00:42:10,820 rôzne slová tým, v podstate, to isté. 907 00:42:10,820 --> 00:42:12,820 >> Tak som si skutočne zarobiť nový blok takhle. 908 00:42:12,820 --> 00:42:14,220 Nechcel som použiť túto možnosť ponuky predtým. 909 00:42:14,220 --> 00:42:16,960 Ale keď kliknite na tlačidlo Vytvoriť blok, si môžete vybrať niekoľko možností. 910 00:42:16,960 --> 00:42:20,900 A môžete povedať, že tento blok v skutočnosti trvá niekoľko vstupov, inak 911 00:42:20,900 --> 00:42:24,710 známy ako parameter alebo parametre, tak že môžete zmeniť správanie 912 00:42:24,710 --> 00:42:25,520 váš dom. 913 00:42:25,520 --> 00:42:28,780 >> Takže to, čo som pred chvíľou bola Volal som tento blok Say. 914 00:42:28,780 --> 00:42:30,880 A potom som si povedal, že sa string input. 915 00:42:30,880 --> 00:42:32,810 A teraz nevšimol, v predvolenom nastavení, sa hovorí, že reťazec 1. 916 00:42:32,810 --> 00:42:35,440 Reťazec je len slovo, alebo frázy, pre naše účely. 917 00:42:35,440 --> 00:42:37,810 Ale ja som jednoducho ísť dať nejaký zástupný text tam, rovnako ako v 918 00:42:37,810 --> 00:42:40,620 webové stránky, keď vidíte, užívateľské meno, alebo heslo a potom to zmizne, akonáhle 919 00:42:40,620 --> 00:42:41,550 začnete písať. 920 00:42:41,550 --> 00:42:42,720 To je všetko, čo je. 921 00:42:42,720 --> 00:42:44,590 >> A teraz idem pridať číslo vstup. 922 00:42:44,590 --> 00:42:47,180 A budem to nazývať n - ale to je dosť subjektívne. 923 00:42:47,180 --> 00:42:49,510 A potom už len nálepka, len aby tento blok trochu viac do seba 924 00:42:49,510 --> 00:42:50,570 Dôvodová - 925 00:42:50,570 --> 00:42:53,010 krát, to je to, čo som práve urobil. 926 00:42:53,010 --> 00:42:56,540 A konečný výsledok je, že som si blok, ktorý vyzerá takto. 927 00:42:56,540 --> 00:42:58,880 >> A teraz nevšimol, som pomocou opakovanie bloku. 928 00:42:58,880 --> 00:43:03,480 Ale skôr než tvrdé kódovanie tri, ja som pretiahnutím n tam, tak som 929 00:43:03,480 --> 00:43:05,530 môžete nastaviť parametre funkcie. 930 00:43:05,530 --> 00:43:08,590 Môžem túto funkciu robiť niečo iný počet, koľkokrát na základe 931 00:43:08,590 --> 00:43:09,410 táto hodnota. 932 00:43:09,410 --> 00:43:14,270 >> A všimnite si, povedzme, to je to, čo som urobil tu, keď som pretiahnuť slovo, môžem povedať nie 933 00:43:14,270 --> 00:43:17,860 pevne dané slovo, ale čo je odovzdaný na dobu jednej sekundy. 934 00:43:17,860 --> 00:43:20,200 Medzitým, ako som si znova implementovať kašeľ? 935 00:43:20,200 --> 00:43:26,980 Ja namiesto toho definovať ako kašeľ hovorí kašeľ n-krát. 936 00:43:26,980 --> 00:43:30,480 >> Takže v skratke, ja idem cez to rýchlo, ale základná myšlienka je, akonáhle 937 00:43:30,480 --> 00:43:32,750 ako začnete vidieť vo svojom programe že, počkaj, čo som urobil 938 00:43:32,750 --> 00:43:36,610 niečo také, ako predtým, môžem vytknúť niektoré spoločné 939 00:43:36,610 --> 00:43:37,090 funkčnosť? 940 00:43:37,090 --> 00:43:41,090 Môžem sa rozkladajú, čo robím do niektorých základných pojmov? 941 00:43:41,090 --> 00:43:42,070 To je to, čo tu robíme. 942 00:43:42,070 --> 00:43:44,830 A ja som stohovať tieto veci, vizuálne, nad sebou 943 00:43:44,830 --> 00:43:47,710 pretože je to dokladom toho, že myšlienka počnúc binárne, ísť do ASCII, 944 00:43:47,710 --> 00:43:51,530 robiť grafické programy, druh vrstvenie čoraz zložitejšie myšlienky na 945 00:43:51,530 --> 00:43:52,570 nad sebou. 946 00:43:52,570 --> 00:43:53,730 >> Rovnaká myšlienka tu. 947 00:43:53,730 --> 00:43:56,870 Začal som od nuly, vykonávanie kašeľ, potom si uvedomil, kašeľ je 948 00:43:56,870 --> 00:43:58,540 naozaj len niečo hovorí. 949 00:43:58,540 --> 00:44:01,630 Takže dovoľte mi, aby som namiesto toho zaviesť pojem niečo hovorí. 950 00:44:01,630 --> 00:44:05,200 A navyše to, že môžem implementovať Acho, alebo kašeľ? 951 00:44:05,200 --> 00:44:07,990 A mohli by sme urobiť viac ako varianty stále. 952 00:44:07,990 --> 00:44:10,400 >> Takže z tohto základného princípu, môžeme začať robiť 953 00:44:10,400 --> 00:44:12,180 stále zložitejších programov. 954 00:44:12,180 --> 00:44:14,100 Dovoľte mi otvoriť tento. 955 00:44:14,100 --> 00:44:18,020 Môžeme skutočne mať viac škriatkov interakcie na obrazovke naraz. 956 00:44:18,020 --> 00:44:23,470 Keď idem do svojho zdrojového adresára a urvat jeden volal témy, pripomenúť, že 957 00:44:23,470 --> 00:44:26,920 závit je len naozaj schopnosť dvoch skriptov súbeh 958 00:44:26,920 --> 00:44:28,350 strane súčasne. 959 00:44:28,350 --> 00:44:34,490 >> Všimnite si teraz, ako sa vták sprite a mačka škriatok, z ktorých obaja majú 960 00:44:34,490 --> 00:44:35,270 vlastné skripty. 961 00:44:35,270 --> 00:44:37,690 Takže upozornenie, keď kliknem mačka, som si tieto skripty. 962 00:44:37,690 --> 00:44:39,830 Keď kliknem na vtáka, Mám tieto skripty. 963 00:44:39,830 --> 00:44:42,070 Takže každý z týchto chalanov má jeho vlastné programy. 964 00:44:42,070 --> 00:44:46,680 Keď som sa na zelenú vlajku, všimnite si, že to, čo tento program robí, je 965 00:44:46,680 --> 00:44:54,090 majú mačku, neuveriteľne pomaly naháňať vtáka. 966 00:44:54,090 --> 00:44:57,120 Ale mačka má tú výhodu, že bude naprogramovaný tak, 967 00:44:57,120 --> 00:45:00,540 že bez ohľadu na to, kde sa vták je, že mačka ide k nemu. 968 00:45:00,540 --> 00:45:02,150 >> Môžeme hrať túto hru oveľa rýchlejšie. 969 00:45:02,150 --> 00:45:07,750 Takže keď som na mačky, všimnite si, že som pomocou, povedzme presunúť jeden kroky. 970 00:45:07,750 --> 00:45:11,680 Poďme si ho presunúť päť krokov na čas, takže päť bodov naraz. 971 00:45:11,680 --> 00:45:13,580 Dovoľte mi, aby som Kliknite na tlačidlo Prehrať. 972 00:45:13,580 --> 00:45:14,490 >> [LION rev] 973 00:45:14,490 --> 00:45:17,170 >> DAVID Malan: Dobre, teraz môžeme naozaj dať mačke výhodu. 974 00:45:17,170 --> 00:45:18,600 10 krokov naraz. 975 00:45:18,600 --> 00:45:20,120 >> [LION rev] 976 00:45:20,120 --> 00:45:22,770 >> DAVID Malan: Dobre, takže veľmi rýchlo, to je trochu výhodu 977 00:45:22,770 --> 00:45:23,280 pre mačku. 978 00:45:23,280 --> 00:45:25,310 Ale budem mávať na ruku niektoré detaily. 979 00:45:25,310 --> 00:45:28,240 Ale z dôvodu, že táto cesta je začína trochu iný zakaždým 980 00:45:28,240 --> 00:45:29,700 je to, že robím trochu náhodnosti. 981 00:45:29,700 --> 00:45:33,700 Ja som vlastne ukázal na mačku iným smerom podľa toho, kde som 982 00:45:33,700 --> 00:45:38,710 ho chcú začať, takže zakaždým, hry alebo animácie, je 983 00:45:38,710 --> 00:45:39,760 trochu inak. 984 00:45:39,760 --> 00:45:41,950 >> Teraz mi dovoľte predstaviť jeden ďalšie konštrukcii tu. 985 00:45:41,950 --> 00:45:43,860 Takže v tomto prípade majú rovnakú funkciu. 986 00:45:43,860 --> 00:45:46,950 Je tu tiež bude skladačky známy ako pole, alebo zo zoznamu, 987 00:45:46,950 --> 00:45:50,980 , Ktorá umožňuje uložiť viac hodnoty vnútri premennej. 988 00:45:50,980 --> 00:45:53,410 Videli sme témy, a teraz je tu akcia. 989 00:45:53,410 --> 00:45:56,330 >> Tak tu je udalosť pomocou títo dvaja tu. 990 00:45:56,330 --> 00:46:02,490 A keď otvorím súbor s názvom udalosti z dnešných príkladoch budeme 991 00:46:02,490 --> 00:46:06,940 viď program, ktorý vyzerá trochu ako je tento. 992 00:46:06,940 --> 00:46:09,630 A teraz všimnúť toho chlapa - 993 00:46:09,630 --> 00:46:11,620 tak všimnúť mám modrý Muppet klikli - 994 00:46:11,620 --> 00:46:12,990 on len robí nasledujúce. 995 00:46:12,990 --> 00:46:15,540 On nemá jeden z tých zelená vlajka kúsky puzzle. 996 00:46:15,540 --> 00:46:18,620 Má keď dostanem udalosť - 997 00:46:18,620 --> 00:46:19,970 takže niektoré ľubovoľné slovo. 998 00:46:19,970 --> 00:46:21,590 Len som vyťukal akcii tu - 999 00:46:21,590 --> 00:46:23,740 on povie, Polo, po dobu dvoch sekúnd. 1000 00:46:23,740 --> 00:46:25,800 >> Takže tí z vás, ktorí sú oboznámení sa táto hra by mohol vedieť 1001 00:46:25,800 --> 00:46:26,460 , Kam to smeruje. 1002 00:46:26,460 --> 00:46:29,800 Keby som teraz kliknite na oranžové Muppet, jeho program robí. 1003 00:46:29,800 --> 00:46:35,020 Forever, ak je klávesnica medzerník potlačená, že sa chystá povedať, Marco, 1004 00:46:35,020 --> 00:46:36,580 po dobu dvoch sekúnd na obrazovke. 1005 00:46:36,580 --> 00:46:39,590 Ale on tiež bude používať tento milovník zablokovať známe ako vysielanie. 1006 00:46:39,590 --> 00:46:42,270 Bude sa vysielať ponuku koniec citátu, "udalosť". 1007 00:46:42,270 --> 00:46:47,540 >> Medzitým, modré chlap, odvolanie, je počúvať citátom Unquote, "akcia". 1008 00:46:47,540 --> 00:46:50,760 Tak nejako, teraz, môžeme mať dvaja škriatkovia interakciu. 1009 00:46:50,760 --> 00:46:53,790 A keď sa dostaneme do programovania pre web, neskôr v termíne, bude podobne ako tento 1010 00:46:53,790 --> 00:46:58,320 byť výhodné mať svoje webové stránky niečo v reakcii na pre 1011 00:46:58,320 --> 00:47:00,130 inštancie, kliknite na tlačidlo na klávesnici. 1012 00:47:00,130 --> 00:47:02,120 >> Tak ma nechaj ísť dopredu a ťukať do medzerníku. 1013 00:47:02,120 --> 00:47:04,020 Orange chlap hovorí Marco. 1014 00:47:04,020 --> 00:47:05,840 Modrá chlap hovorí Polo. 1015 00:47:05,840 --> 00:47:10,780 Ak sa mi to znova oranžová chlap hovorí: Marco, modré chlap hovorí pólo. 1016 00:47:10,780 --> 00:47:14,130 Takže poďme si to ešte o krok ďalej. 1017 00:47:14,130 --> 00:47:18,790 Tentoraz pôjdeme, pravdepodobne len pár minút tu. 1018 00:47:18,790 --> 00:47:19,904 Máme - 1019 00:47:19,904 --> 00:47:22,380 stolná lampa, poď dole. 1020 00:47:22,380 --> 00:47:24,500 Tie sú priamo na konci. 1021 00:47:24,500 --> 00:47:25,740 OK, môžete aj prísť. 1022 00:47:25,740 --> 00:47:26,990 Máme stolové lampy pre každého. 1023 00:47:26,990 --> 00:47:28,360 Tak poď. 1024 00:47:28,360 --> 00:47:30,090 Neviem, či sa nám podarí udržať tento smiešny gag až 1025 00:47:30,090 --> 00:47:32,035 všetky semester, hoci. 1026 00:47:32,035 --> 00:47:33,530 Dobre, poď dole. 1027 00:47:33,530 --> 00:47:40,260 >> A medzitým, máme na základe príkladov vytiahnuť, len preto, aby 1028 00:47:40,260 --> 00:47:45,370 urýchliť veci sa tak, že sa mať prejav z iného 1029 00:47:45,370 --> 00:47:48,360 Predchodcom vaše použitie rovnaké základné stavebné kamene. 1030 00:47:48,360 --> 00:47:48,975 Ako sa voláte? 1031 00:47:48,975 --> 00:47:49,240 >> JOHN: John. 1032 00:47:49,240 --> 00:47:49,770 >> DAVID Malan: John. 1033 00:47:49,770 --> 00:47:50,400 Rád mnou. 1034 00:47:50,400 --> 00:47:50,650 A? 1035 00:47:50,650 --> 00:47:51,250 >> Setz: Setz. 1036 00:47:51,250 --> 00:47:53,130 >> DAVID Malan: Setz, rád mnou. 1037 00:47:53,130 --> 00:47:54,820 John, ak chcete, aby sa ako prvý, to je starý 1038 00:47:54,820 --> 00:47:55,910 Škola hrou s názvom Frogger. 1039 00:47:55,910 --> 00:47:57,530 Môžete používať klávesnicu na to rovnako. 1040 00:47:57,530 --> 00:48:02,425 A cieľom je dostať na druhú stranu ulice a vodu. 1041 00:48:02,425 --> 00:48:12,700 >> [Frogger hudba a zvuk HRY] 1042 00:48:12,700 --> 00:48:14,970 >> DAVID Malan: Je mi ľúto, nie stolná lampa pre vás dnes. 1043 00:48:14,970 --> 00:48:19,110 Dobre, Setz, by ste chcel ísť hore? 1044 00:48:19,110 --> 00:48:20,890 Dobre, poďme to urobiť znova. 1045 00:48:20,890 --> 00:48:21,430 >> Setz: Musím použiť šípky? 1046 00:48:21,430 --> 00:48:22,360 >> DAVID Malan: Len sa šípkami. 1047 00:48:22,360 --> 00:48:23,624 Hore, dole, vľavo, vpravo. 1048 00:48:23,624 --> 00:48:35,700 >> [Frogger hudba a zvuk HRY] 1049 00:48:35,700 --> 00:48:37,880 >> DAVID Malan: Zavoláme im útecha ceny dnes, 1050 00:48:37,880 --> 00:48:38,950 potom veľmi dobre. 1051 00:48:38,950 --> 00:48:40,690 Tu pre vás oboch, Jána a Setz. 1052 00:48:40,690 --> 00:48:41,940 Gratulujeme, v poriadku. 1053 00:48:41,940 --> 00:48:46,720 1054 00:48:46,720 --> 00:48:50,620 Takže znova, pretože táto hra hrá, premýšľať o tom, čo sa deje? 1055 00:48:50,620 --> 00:48:52,060 >> Po prvé, je tu zjavne veľa pohybu. 1056 00:48:52,060 --> 00:48:55,220 Ale my sme videli, ako s mačkou a vták príklad, ako môžete 1057 00:48:55,220 --> 00:48:58,350 ilúzie pohybu jednoduchým presunutím niektorých počet pixelov znova a znova. 1058 00:48:58,350 --> 00:49:00,280 A ak máte blok navždy, môžete mať tieto 1059 00:49:00,280 --> 00:49:02,120 autá robí to navždy. 1060 00:49:02,120 --> 00:49:03,720 Máme schopnosť nejakú náhodnosť. 1061 00:49:03,720 --> 00:49:06,310 Takže táto hra nemusí byť presne rovnaký zakaždým. 1062 00:49:06,310 --> 00:49:09,940 Tieto protokoly, tie autá, možno začať mierne odlišné doby tak, aby sa 1063 00:49:09,940 --> 00:49:12,690 Hra sama o sebe je oveľa zaujímavejšie s každú hru. 1064 00:49:12,690 --> 00:49:15,320 >> A medzitým, čo sme videli schopnosť počúvať medzerníkom. 1065 00:49:15,320 --> 00:49:18,830 Ale jasne, v Scratch, môžete tiež počúvať hore, dole, vľavo, vpravo, a 1066 00:49:18,830 --> 00:49:20,760 naozaj ľubovoľnej klávesy na klávesnici. 1067 00:49:20,760 --> 00:49:22,200 A tiež môžete urobiť nejaké iné veci. 1068 00:49:22,200 --> 00:49:24,660 Nechaj ma ísť dopredu a späť na webovej verzie. 1069 00:49:24,660 --> 00:49:30,280 >> Nechaj ma ísť do našej zbierky z príkladov tu. 1070 00:49:30,280 --> 00:49:36,120 A pod môjho ateliéru, video, ktorá je v podstate zložka na 1071 00:49:36,120 --> 00:49:37,780 scratch.mit.edu. 1072 00:49:37,780 --> 00:49:39,710 Máme webovej verzie že všetky uvedené projekty. 1073 00:49:39,710 --> 00:49:42,530 A uvidíme, či môžem dostať môj počítač spolupracovať tu. 1074 00:49:42,530 --> 00:49:47,180 To je napísal jeden z našich priateľov na MIT, tzv Presuňte Butterfly. 1075 00:49:47,180 --> 00:49:50,250 >> A akonáhle sa otvorí, je bude skutočne používať viac 1076 00:49:50,250 --> 00:49:51,430 môjho počítača hardware. 1077 00:49:51,430 --> 00:49:53,325 Scratch sa stane byť vykonaná s Flash. 1078 00:49:53,325 --> 00:49:56,250 Flash môže hovoriť s vašej webovej kamery, ak máte jeden. 1079 00:49:56,250 --> 00:50:00,210 Takže keď som sa do toho pustite a to na celú obrazovku , Tu kliknite na zelené vlajky, oznámenia 1080 00:50:00,210 --> 00:50:02,530 že Flash je správa zabezpečenia hovorí, chceš 1081 00:50:02,530 --> 00:50:04,210 umožňujú používať svoj webkameru? 1082 00:50:04,210 --> 00:50:05,510 >> Za normálnych okolností by ste mali asi povedal Odoprieť. 1083 00:50:05,510 --> 00:50:07,180 Ale v tomto prípade, povedzme dovoliť. 1084 00:50:07,180 --> 00:50:10,430 Potom som ti to povedať Chrome , Aby to tiež. 1085 00:50:10,430 --> 00:50:15,010 A teraz, za chvíľu, Vidíš ma, jo, já. 1086 00:50:15,010 --> 00:50:18,154 A keď moja ruka ide hore - 1087 00:50:18,154 --> 00:50:20,390 Musím sa pohnúť moja hlava v rovnakom čase. 1088 00:50:20,390 --> 00:50:21,740 K dispozícii je tiež odrazom na obrazovke. 1089 00:50:21,740 --> 00:50:23,480 Poď, ideme na to - 1090 00:50:23,480 --> 00:50:27,616 sa môžete pohybovať na obrazovke, pretože tam je tiež dielikov - ach, tie 1091 00:50:27,616 --> 00:50:31,640 vedieť, čo to je, je to preto, že aj vidieť na obrazovke projektora za mnou. 1092 00:50:31,640 --> 00:50:33,870 Takže máme trochu nekonečný čo sa tam deje. 1093 00:50:33,870 --> 00:50:36,470 >> Tak jo, budem hrať tu. 1094 00:50:36,470 --> 00:50:37,220 Tam ideme. 1095 00:50:37,220 --> 00:50:41,310 Takže je tu tiež kúsok puzzle, ktorý hovorí, keď vidíte pohyb pod 1096 00:50:41,310 --> 00:50:45,470 jeden zo škriatkov, môžete si to ísť hore, dole, vľavo, vpravo a podobne. 1097 00:50:45,470 --> 00:50:48,950 Takže máme trochu virtuálnej reality deje aj tu, všetko v rámci 1098 00:50:48,950 --> 00:50:52,570 Obmedzuje mojom prehliadači, len tu pomocou mojej webovej kamery. 1099 00:50:52,570 --> 00:50:53,980 Takže to, čo je potom na obzore. 1100 00:50:53,980 --> 00:50:58,350 Prvým problémom set, ako uvidíte, alebo webové stránky pôjde on neskôr 1101 00:50:58,350 --> 00:51:01,100 dnes večer v cs50.net, je dosť Koľko bude na dobu neurčitú. 1102 00:51:01,100 --> 00:51:04,410 A realizovať projekt Scratch , Ktoré vás zaujímajú, hry, 1103 00:51:04,410 --> 00:51:08,350 interakcie, niečo umelecké, a rozhodnúť, že si používať ľubovoľný počet 1104 00:51:08,350 --> 00:51:09,660 z týchto dielikov. 1105 00:51:09,660 --> 00:51:11,580 A to môže byť buď interaktívne týmto spôsobom. 1106 00:51:11,580 --> 00:51:15,470 Alebo to môže byť niečo viac úmyselne vykonané rozprávať príbeh. 1107 00:51:15,470 --> 00:51:19,200 >> A vskutku, to je miesto, kde skončíme off V súčasnej dobe sa jeden posledný príklad. 1108 00:51:19,200 --> 00:51:21,290 Nechaj ma ísť do nuly na mieste. 1109 00:51:21,290 --> 00:51:25,300 Nechaj ma ísť dopredu a otvoriť to a hrať jeden posledný program napísal jeden 1110 00:51:25,300 --> 00:51:29,795 svojich predchodcov, a to že jeden tu. 1111 00:51:29,795 --> 00:51:32,960 1112 00:51:32,960 --> 00:51:35,938 Dobrá, zvýšenie hlasitosti pre tento jeden. 1113 00:51:35,938 --> 00:52:53,770 >> [Prehrávanie hudby] 1114 00:52:53,770 --> 00:52:57,255 >> Rozprávač: Na ďalší CS50, David pozýva dobrovoľníka na javisku. 1115 00:52:57,255 --> 00:52:58,636 >> DAVID Malan: V tejto ukážke, budeme potrebovať jedného dobrovoľníka. 1116 00:52:58,636 --> 00:53:01,050 Chceli by ste ísť dole? 1117 00:53:01,050 --> 00:53:02,300 Ako sa voláte? 1118 00:53:02,300 --> 00:53:05,320 1119 00:53:05,320 --> 00:53:06,570 Ďalej. 1120 00:53:06,570 --> 00:53:08,394