1 00:00:00,000 --> 00:00:11,120 2 00:00:11,120 --> 00:00:12,590 >> SPEAKER: Jsem [neslyšitelné]. 3 00:00:12,590 --> 00:00:14,820 A já jsem v posledním ročníku na Leverett House. 4 00:00:14,820 --> 00:00:18,700 Studuji informatiku, a já jsem pro TF CS50. 5 00:00:18,700 --> 00:00:21,640 Jako nováček jsem neměl ani notebook nebo smartphone. 6 00:00:21,640 --> 00:00:23,550 Neměl jsem zkušenosti s programováním. 7 00:00:23,550 --> 00:00:29,690 CS50 byl nejpamátnější kurz, který Vzal jsem na Harvardu, protože to bylo 8 00:00:29,690 --> 00:00:32,960 boj, ale to byl opravdu zábava zápas současně. 9 00:00:32,960 --> 00:00:37,670 A já jsem udělal spoustu úžasné, trvalé přátelé, a naučil jsem se spoustu opravdu 10 00:00:37,670 --> 00:00:38,830 použitelných dovedností. 11 00:00:38,830 --> 00:00:43,480 Jsem tak rád, že jsem se nenechal moje Nedostatek pozadí být omluvou pro mě 12 00:00:43,480 --> 00:00:44,840 nebere CS50. 13 00:00:44,840 --> 00:00:46,220 Jsem [neslyšitelné]. 14 00:00:46,220 --> 00:00:48,910 Jsem senior na Leverett Dům, třída 2014. 15 00:00:48,910 --> 00:00:51,670 A vzal jsem CS50. 16 00:00:51,670 --> 00:00:52,380 >> DAVID Malan: Tak tohle je CS50. 17 00:00:52,380 --> 00:00:54,400 Toto je na konci týdne nula. 18 00:00:54,400 --> 00:00:58,500 A vzpomenout, kde jsme začali v poslední době, S těmito lampy, které byly 19 00:00:58,500 --> 00:01:01,420 tak populární, že jsme šli a koupil víc dnes. 20 00:01:01,420 --> 00:01:03,790 Takže myslím, že to bude naše věc v tomto roce - 21 00:01:03,790 --> 00:01:07,230 stolní lampy, pokud jste přišli na pódium, alespoň dokud jsme dojdou. 22 00:01:07,230 --> 00:01:11,570 >> Ale jsme použili tyto vzpomínat, zavést základy reprezentace dat. 23 00:01:11,570 --> 00:01:15,640 Potřebovali jsme způsob, jak začít představuje informace uvnitř počítače. 24 00:01:15,640 --> 00:01:18,650 A nejjednodušší způsob jak to udělat, aby byl se jedna ze složek, elektřina. 25 00:01:18,650 --> 00:01:21,760 A nejjednodušší, co můžete udělat s elektřina je zapnout a vypnout. 26 00:01:21,760 --> 00:01:23,520 Nechte proud elektronů nebo ne. 27 00:01:23,520 --> 00:01:27,930 A pomocí těchto dvou základních stavů, mimo a nebo nepravdivé a pravdivé, nebo nulové a 28 00:01:27,930 --> 00:01:31,290 jeden, jsme začali vidět, že můžeme stavět up, v tomto případě, s ohledem 29 00:01:31,290 --> 00:01:33,720 cibule, více čísel než jen nula a jedna. 30 00:01:33,720 --> 00:01:36,160 Spočítali jsme tak vysoko, jak je sedm, Například, naposledy. 31 00:01:36,160 --> 00:01:38,840 Ale vše, co musíte udělat, je udržet házení stále více a více žárovky u toho 32 00:01:38,840 --> 00:01:41,820 problém, a opravdu, můžeme reprezentovat libovolné číslo, které jsme 33 00:01:41,820 --> 00:01:42,970 může přát. 34 00:01:42,970 --> 00:01:47,230 >> No, my jsme přešli rychle a pak na Od středy do tohoto bytu dobrovolníků. 35 00:01:47,230 --> 00:01:52,040 8 bitů je to, co obvykle nazýváme byte, takže tady jsme měli osm dobrovolníků 36 00:01:52,040 --> 00:01:54,900 Středa, kteří byli společně představuje osm bitů. 37 00:01:54,900 --> 00:01:56,750 A když se jejich ruce šel nahoru, že se jeden. 38 00:01:56,750 --> 00:01:58,530 A když se jejich ruce byly dole, bylo nulové. 39 00:01:58,530 --> 00:02:01,970 A měli jsme tyhle lidi přijít na jevišti proč? 40 00:02:01,970 --> 00:02:06,530 Co jsme mohli udělat s Tato sekvence bitů? 41 00:02:06,530 --> 00:02:07,510 >> Chcete-li vytvořit abecedu. 42 00:02:07,510 --> 00:02:11,550 Podařilo se nám vybudovat na vrcholu, že předchozí ponaučení a skutečně 43 00:02:11,550 --> 00:02:14,200 začít dělat zajímavější informace, které je alespoň více 44 00:02:14,200 --> 00:02:15,330 známe lidi. 45 00:02:15,330 --> 00:02:18,360 A to bude opakující se tématem v 50, ale i počítač 46 00:02:18,360 --> 00:02:21,470 věda obecně, tato myšlenka vrstvení, kde se na konci 47 00:02:21,470 --> 00:02:24,820 den, pokud jste opravdu začali Základy s počítačem, ano, 48 00:02:24,820 --> 00:02:25,760 to je nul a jedniček. 49 00:02:25,760 --> 00:02:27,480 A pod tím je to jen elektřina. 50 00:02:27,480 --> 00:02:30,840 Ale velmi rychle začít, aby se těm, nízká úroveň informací jako samozřejmost 51 00:02:30,840 --> 00:02:35,600 a začít vrstvy na vrcholu minulosti pracoval provedeno tak, že se v konečném výsledku 52 00:02:35,600 --> 00:02:38,610 konec semestru a, opravdu, obecněji jako počítačové odborníky 53 00:02:38,610 --> 00:02:42,790 a programátoři mohou udělat nějaké opravdu silné věci s využitím práce 54 00:02:42,790 --> 00:02:46,620 že my sami udělali a také stál na ramenou ostatních. 55 00:02:46,620 --> 00:02:49,300 >> Nyní jsme se rychle přeměnila ve středu z téměř museli 56 00:02:49,300 --> 00:02:52,080 představují informace, které chtějí aby s tím něco udělat. 57 00:02:52,080 --> 00:02:54,170 Takže to, co jsme se definovat algoritmus, jak? 58 00:02:54,170 --> 00:02:57,340 59 00:02:57,340 --> 00:02:58,900 Sledem instrukcí. 60 00:02:58,900 --> 00:03:03,380 Takže je to řada instrukcí, počet kroků, které vás, lidských nebo 61 00:03:03,380 --> 00:03:07,160 počítač, je častější, by proveďte jednu po druhé, aby 62 00:03:07,160 --> 00:03:08,100 dosáhnout určitého cíle. 63 00:03:08,100 --> 00:03:11,360 A měli jsme hodně branek minule, z nichž jeden je počítat 64 00:03:11,360 --> 00:03:12,250 lidé v místnosti. 65 00:03:12,250 --> 00:03:15,560 A další takový příklad byl najít Mike Smith v telefonním seznamu. 66 00:03:15,560 --> 00:03:19,750 >> Takže si možná vzpomenou, že jsem vytrhl telefon kniha v polovině k tomuto účelu se 67 00:03:19,750 --> 00:03:21,280 hledání Mike Smith. 68 00:03:21,280 --> 00:03:24,000 Cílem této vizuální bylo prokázat, opět, že jsme 69 00:03:24,000 --> 00:03:27,770 doslova trhá tento problém poloviny, na polovinu, na polovinu, a velmi 70 00:03:27,770 --> 00:03:31,750 rychle, jako jít od 1.000 stran jen na jedné jediné stránce. 71 00:03:31,750 --> 00:03:34,860 Ti z vás, kteří chybělo na Středa, Myslel jsem, že přehrávat 72 00:03:34,860 --> 00:03:36,820 některé záběry z toho, co jste vynechal. 73 00:03:36,820 --> 00:03:38,914 Pojďme se podívat. 74 00:03:38,914 --> 00:03:40,906 >> [PŘEHRÁVÁNÍ] 75 00:03:40,906 --> 00:03:55,360 76 00:03:55,360 --> 00:03:55,990 >> -Tak jdeme. 77 00:03:55,990 --> 00:04:01,432 1500 stran, pěkný čistý linie, legitimní slza. 78 00:04:01,432 --> 00:04:02,850 >> [END PŘEHRÁVÁNÍ] 79 00:04:02,850 --> 00:04:05,230 >> DAVID Malan: Tak to byla středa. 80 00:04:05,230 --> 00:04:09,150 My přechod, i když ve středu nyní se chtějí reprezentovat algoritmy 81 00:04:09,150 --> 00:04:12,410 v některých poněkud standardním způsobem, a to nejen popisovat je verbálně, ale 82 00:04:12,410 --> 00:04:16,290 snaží se vyjádřit písemně nebo na obrazovce počítače, takže jsme mohli 83 00:04:16,290 --> 00:04:19,170 začnou se zlepšit a změnit je, a nakonec vlastně 84 00:04:19,170 --> 00:04:21,160 analyzovat, jak správně nebo jak rychle byli. 85 00:04:21,160 --> 00:04:23,360 >> Takže jsme zavedli tento pojem z pseudokódu, který v 86 00:04:23,360 --> 00:04:26,410 Laicky řečeno, je to, co? 87 00:04:26,410 --> 00:04:26,930 OK, slova. 88 00:04:26,930 --> 00:04:28,730 Pojďme trochu hlouběji. 89 00:04:28,730 --> 00:04:32,540 Anglicky, jistě, jsou ale k čemu? 90 00:04:32,540 --> 00:04:35,180 Slova, s nimiž vytvořit nebo reprezentovat algoritmy. 91 00:04:35,180 --> 00:04:38,380 Takže tam nikdo známý jazyk jako pseudokódu ve světě. 92 00:04:38,380 --> 00:04:41,110 Je to jen, že v angličtině nebo bez ohledu na váš mluvený jazyk je použít 93 00:04:41,110 --> 00:04:44,930 jakési povrchní zápisu sdělit myšlenka velmi stručně. 94 00:04:44,930 --> 00:04:47,930 Ale uvidíme, že určitě se Angličtina pseudokódu, a ukazuje se, 95 00:04:47,930 --> 00:04:51,700 většině programovacích jazyků sami je derivát angličtině sám, 96 00:04:51,700 --> 00:04:55,750 zjistíme, že tam je nějaký standardní způsoby, jak reprezentovat pseudocode a 97 00:04:55,750 --> 00:04:57,150 i programování kódu. 98 00:04:57,150 --> 00:05:00,200 Takže jak začnete vidět i ty nejjednodušší příklady dnes uvědomit, tito 99 00:05:00,200 --> 00:05:02,160 Obdobné bude opakovat příští týden. 100 00:05:02,160 --> 00:05:04,710 >> Takže pseudokódu byl nějaký jazyka připomínající 101 00:05:04,710 --> 00:05:06,170 programovací jazyk. 102 00:05:06,170 --> 00:05:09,260 A první příklad jsme viděli vizuálně napsaný to bylo jedno. 103 00:05:09,260 --> 00:05:12,870 To bylo jen třístupňový program cílem bylo zjistit, kolik 104 00:05:12,870 --> 00:05:15,650 lidí v koleji pro že video na středu. 105 00:05:15,650 --> 00:05:19,040 Ale tam bylo několik zajímavých aspektů tohoto nejjednodušším programu. 106 00:05:19,040 --> 00:05:20,320 >> A to bude opakující se témata. 107 00:05:20,320 --> 00:05:22,930 Takže pro ty, kteří jsou obeznámeni s To je, jsme zavedli proměnné. 108 00:05:22,930 --> 00:05:25,650 A pravděpodobně všichni v této místnosti je obeznámeni s proměnnou v 109 00:05:25,650 --> 00:05:27,250 kontext algebry. 110 00:05:27,250 --> 00:05:31,190 Ale tady v programování, proměnné jsou, jeden, může být 111 00:05:31,190 --> 00:05:32,220 říká, co chceme. 112 00:05:32,220 --> 00:05:33,620 Byli jsme s použitím n jako čítač. 113 00:05:33,620 --> 00:05:37,490 Ale mohli bychom použít slovo čítač, nebo jak uvidíte, téměř jakýkoli výraz, který 114 00:05:37,490 --> 00:05:40,240 by vás mohly zaujmout tak dlouho, jak je to popisný, ale je to opravdu jen 115 00:05:40,240 --> 00:05:41,250 skladový kontejner. 116 00:05:41,250 --> 00:05:44,170 Je to kus paměti, některé číslo bitů, a to se liší od počítače, jak 117 00:05:44,170 --> 00:05:47,020 počet bitů, které tam jsou, že skládat této proměnné. 118 00:05:47,020 --> 00:05:48,450 >> Ale můžeme dát hodnoty v něm. 119 00:05:48,450 --> 00:05:50,740 Dosud jsme jen dát čísla. 120 00:05:50,740 --> 00:05:52,290 Ale můžeme dát aktuální slova. 121 00:05:52,290 --> 00:05:53,420 Můžeme dát odstavců. 122 00:05:53,420 --> 00:05:54,560 Můžeme dát obrázky - 123 00:05:54,560 --> 00:05:57,860 nic, opravdu můžeme reprezentovat pomocí nul a jedniček, můžeme dát do 124 00:05:57,860 --> 00:05:59,820 Tento vyšší stupeň pojem proměnné. 125 00:05:59,820 --> 00:06:01,350 >> Takže docela rovně vpřed tam. 126 00:06:01,350 --> 00:06:02,210 A to je jeden řádek. 127 00:06:02,210 --> 00:06:05,340 Ale velmi rychle se přesunul z linka, kdo skutečně 128 00:06:05,340 --> 00:06:06,600 co se této proměnné. 129 00:06:06,600 --> 00:06:10,330 A v řadě tři, jsme aktualizovali N. My zvýšen N. A mohli bychom to napsat 130 00:06:10,330 --> 00:06:11,330 libovolný počet způsobů. 131 00:06:11,330 --> 00:06:14,460 Ale snad nejviditelnější je jen říci, nastavte N roven 132 00:06:14,460 --> 00:06:16,440 co je N plus 1. 133 00:06:16,440 --> 00:06:17,740 Tak to byl náš přírůstek. 134 00:06:17,740 --> 00:06:18,740 >> Mezitím byla smyčka. 135 00:06:18,740 --> 00:06:20,720 A tohle, to je pravděpodobně docela intuitivní. 136 00:06:20,720 --> 00:06:24,250 Smyčka je prostě něco v programu že se stane znovu a znovu, některé 137 00:06:24,250 --> 00:06:25,190 druh cyklu. 138 00:06:25,190 --> 00:06:29,300 A to klíčové fráze tu pro každého, je vlastně velmi časté ve většině 139 00:06:29,300 --> 00:06:32,300 programovací jazyky, včetně ty, uvidíme v průběhu. 140 00:06:32,300 --> 00:06:35,850 Kdykoli vidíte slovo, že obvykle vyvolává představu, že 141 00:06:35,850 --> 00:06:38,410 smyčky, něco cyklické, je na spadnutí. 142 00:06:38,410 --> 00:06:40,980 >> Ale stojí to za zmínku jedna jiný syntaktický detail. 143 00:06:40,980 --> 00:06:44,660 Skutečnost, že třetí řádek je vlastně členité mít hit 144 00:06:44,660 --> 00:06:46,920 Mezerník Několikrát je záměrné. 145 00:06:46,920 --> 00:06:49,870 Protože lidská konvence je taková, že když děláte něco, co znovu a 146 00:06:49,870 --> 00:06:54,860 opět, ve smyčce, jak začal na lince dvě, odsadit něco, co patřilo 147 00:06:54,860 --> 00:06:58,880 na tuto smyčku, aby bylo zřejmé, že je to linie tři, a ne, například, 148 00:06:58,880 --> 00:07:01,910 linka čtyři nebo pět, kdyby bylo linky pro nebo pět, které jsou 149 00:07:01,910 --> 00:07:03,010 Část, která smyček. 150 00:07:03,010 --> 00:07:07,340 Tak to jednoduché odsazení sděluje, že základní myšlenka. 151 00:07:07,340 --> 00:07:09,390 >> Tak jsme aplikovali algoritmus, nyní na několik příkladů. 152 00:07:09,390 --> 00:07:12,620 A to taky jednoduchý příklad v reálném světě. 153 00:07:12,620 --> 00:07:15,440 Ale to bude reprezentativní jak byste jít o testování 154 00:07:15,440 --> 00:07:17,500 Vlastníte stále složitější programy. 155 00:07:17,500 --> 00:07:21,050 Můžete vyzkoušet několik scénářů, z nichž některé zástupci vstupy, a uvidíme, jestli 156 00:07:21,050 --> 00:07:22,180 získat požadované výstupy. 157 00:07:22,180 --> 00:07:25,090 >> Takže tento příklad měl dva lidé sedí v pokoji na koleji. 158 00:07:25,090 --> 00:07:27,170 Na levé straně je to stejné pseudo kód. 159 00:07:27,170 --> 00:07:30,800 A to je screen shot z velmi Posledním krokem použití této 160 00:07:30,800 --> 00:07:35,270 algoritmus na tyto vstupy, kde byli dva lidé v místnosti, a 161 00:07:35,270 --> 00:07:39,190 vzpomínám, jak jsme krokovat řádky jednoho, a dva a tři, a dva 162 00:07:39,190 --> 00:07:41,000 a tři a hotovo - 163 00:07:41,000 --> 00:07:44,870 na konci tohoto algoritmu, jsme měli skutečně počítá dva chlapíci, kteří jsou 164 00:07:44,870 --> 00:07:45,360 v místnosti. 165 00:07:45,360 --> 00:07:47,190 >> Takže jsme pak zkoušeli jiný příklad. 166 00:07:47,190 --> 00:07:48,990 A my jsme řekli, co v případě, že jsou nula lidí v místnosti? 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 opravdu to bylo. 169 00:07:51,305 --> 00:07:55,240 To jen tak se stane, že dva linky a tím, řádek tři nebo 170 00:07:55,240 --> 00:07:56,620 nebude provádět. 171 00:07:56,620 --> 00:07:59,790 Oni se to nestane vůbec protože jsou to prostě neplatí, pokud 172 00:07:59,790 --> 00:08:01,210 tam je nula lidí v místnosti. 173 00:08:01,210 --> 00:08:02,300 >> Ale není to velký problém. 174 00:08:02,300 --> 00:08:06,620 Řádek jedna inicializuje N na nulu, takže i když pouze jeden řádek z tohoto 175 00:08:06,620 --> 00:08:10,930 Program vlastně nakonec byla užitečná, to ještě dá správnou odpověď, protože 176 00:08:10,930 --> 00:08:13,780 indikována oranžový nule v dolní části. 177 00:08:13,780 --> 00:08:16,300 Ale pak jsme se rozhodli, že se druh hloupé algoritmu. 178 00:08:16,300 --> 00:08:17,060 Bylo to dost pomalé. 179 00:08:17,060 --> 00:08:19,720 Jistě, můžu udělat dvě, čtyři, šest, osm, deset, když 180 00:08:19,720 --> 00:08:20,990 počtu osob v místnosti. 181 00:08:20,990 --> 00:08:25,030 >> Tak jsme vylepšený algoritmus, pseudokódu, říkat, nyní v souladu dvou, 182 00:08:25,030 --> 00:08:29,710 pro každou dvojici osob v místnosti, pokračovat, v souladu tři, přírůstek 183 00:08:29,710 --> 00:08:32,200 v dvěma na každé iteraci. 184 00:08:32,200 --> 00:08:35,530 Tak, že by zde pracovali pro tato dvojice osob v místnosti. 185 00:08:35,530 --> 00:08:38,530 >> Ale pak, když začnete přemýšlet o tom, to, a to nebude trvat dlouho, 186 00:08:38,530 --> 00:08:40,710 si uvědomit, počkej to je chystá rozbít, to se zlomí 187 00:08:40,710 --> 00:08:42,679 v jakém jednoduchý případ? 188 00:08:42,679 --> 00:08:45,500 Pokud jsou tři lidé v místnosti, nebo obecněji, když je 189 00:08:45,500 --> 00:08:47,660 lichý počet lidí pokoj, včetně jednoho. 190 00:08:47,660 --> 00:08:50,390 Dovolujeme si ujít tuto osobu tady, protože nejsou tam žádné takové páry. 191 00:08:50,390 --> 00:08:58,510 Tak jsme rychle řešit místo zavedení, jaké další 192 00:08:58,510 --> 00:09:02,560 programovací konstrukty na pseudokódu. 193 00:09:02,560 --> 00:09:04,955 >> Tak stavu, se nazývá to, nebo pobočka. 194 00:09:04,955 --> 00:09:08,420 A to chtěl zprostředkovat vizuálně, Myšlenka pobočky, rozcestí 195 00:09:08,420 --> 00:09:11,080 kde si můžete buď to udělat nebo, možná, něco jiného. 196 00:09:11,080 --> 00:09:15,750 A skutečně jsme se tento problém řešit tím, přidáním řádku 4 tím, že říká, opravdu, na 197 00:09:15,750 --> 00:09:20,820 samého konce, jestliže se jedna osoba zůstává, pak jděte do toho a počítat je zvláštní. 198 00:09:20,820 --> 00:09:24,460 Takže si nějak zvláštní případ je, tak mluvit, takže nyní můžeme zvládnout 199 00:09:24,460 --> 00:09:27,810 i i počet lidí, kteří a lichý počet lidí. 200 00:09:27,810 --> 00:09:30,260 >> Nyní to jsou jen některé ze způsobů, jak mohli jsme to vyjádřil. 201 00:09:30,260 --> 00:09:33,590 A upřímně řečeno, mohl jsem být ještě nit vybíravý, když to přišlo k mému výběru 202 00:09:33,590 --> 00:09:35,040 Angličtina pro pseudokódu. 203 00:09:35,040 --> 00:09:36,970 Ale aspoň duch myšlenka je dopravena. 204 00:09:36,970 --> 00:09:40,725 Pokud jste podal tento kód příteli kdo není v CS, nebo nikdy neudělal 205 00:09:40,725 --> 00:09:44,560 CS, je pravděpodobné, že by mohla přijít, uvedeny tři lidi v místnosti, jak 206 00:09:44,560 --> 00:09:46,870 Počet těchto lidí na základě základě těchto pokynů. 207 00:09:46,870 --> 00:09:49,920 A to je vše opravdu chceme dosáhnout s pseudokódu, nějak 208 00:09:49,920 --> 00:09:54,300 standardizovat, jak na to jdeme představující nápady, takže můžeme 209 00:09:54,300 --> 00:09:56,670 začít dělat složitější co ještě. 210 00:09:56,670 --> 00:09:58,845 >> Tak to nás vede pak dnes, skutečné kódu. 211 00:09:58,845 --> 00:10:01,950 Začneme se naprogramovat dnes, i když v přátelském prostředí. 212 00:10:01,950 --> 00:10:05,940 A pak jsme přechod velmi rychle více tajemné syntax, ale ten, který 213 00:10:05,940 --> 00:10:10,340 uvidíte je v zásadě stejná jako myšlenky uvidí projevuje 214 00:10:10,340 --> 00:10:11,990 ten druhý jazyk dnes. 215 00:10:11,990 --> 00:10:13,920 Je to prostě bude vypadat trochu jiný. 216 00:10:13,920 --> 00:10:16,590 >> Takže spíše než jen volat tento kód, jsem bude o něco přesnější 217 00:10:16,590 --> 00:10:20,170 a říkají, dále při psaní programu, píšete zdrojový kód. 218 00:10:20,170 --> 00:10:21,990 Je to něco jako pseudokódu. 219 00:10:21,990 --> 00:10:26,540 Ale uvidíme, není to trochu volné pokud jde o výběr slov 220 00:10:26,540 --> 00:10:27,310 který používáte. 221 00:10:27,310 --> 00:10:31,300 Při programování v jazyce, máte používat slova, fráze,, 222 00:10:31,300 --> 00:10:36,020 syntax, že ostatní lidé se rozhodli představují 223 00:10:36,020 --> 00:10:37,240 že konkrétní 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ální programovací jazyk jako C, protože budeme nakonec vidět, je 226 00:10:42,330 --> 00:10:43,590 standardizovaný jinými lidmi. 227 00:10:43,590 --> 00:10:45,590 >> Tak jak jsme se jít o psaní nějaký zdrojový kód? 228 00:10:45,590 --> 00:10:46,810 No já jdu a udělej to. 229 00:10:46,810 --> 00:10:49,100 Chystám se jít dopředu a otevřít okno tady. 230 00:10:49,100 --> 00:10:50,210 Více informací o této příští týden. 231 00:10:50,210 --> 00:10:52,300 Ale to je s názvem zařízení CS50 spotřebiče. 232 00:10:52,300 --> 00:10:55,480 Běžím kus softwaru na mém Mac, když můžete udělat totéž 233 00:10:55,480 --> 00:11:00,580 na počítači s Windows, který dává mi iluze běží jiný 234 00:11:00,580 --> 00:11:03,700 operační systém zcela vpravo Zde v okně na mém Macu. 235 00:11:03,700 --> 00:11:06,790 Právě jsem plně stíněný to tak nemusíte skutečně vidět Mac OS právě teď. 236 00:11:06,790 --> 00:11:08,340 >> Jedná se o operační systém s názvem Linux. 237 00:11:08,340 --> 00:11:09,300 Je to velmi populární. 238 00:11:09,300 --> 00:11:10,120 Je to velmi rychle. 239 00:11:10,120 --> 00:11:12,950 Je to velmi volná, který dělal to velmi přesvědčivé, zejména v 240 00:11:12,950 --> 00:11:13,970 komerční svět. 241 00:11:13,970 --> 00:11:17,200 A více na to ke konci Semestr, kdy používáme Linux docela dost 242 00:11:17,200 --> 00:11:21,230 pro webové programování a hosting skutečné webové stránky a projekty. 243 00:11:21,230 --> 00:11:24,910 Takže teď, jen vím, že se jedná o desktop , který je určen vypadat mlhavě 244 00:11:24,910 --> 00:11:26,750 známé Windows a Mac OS. 245 00:11:26,750 --> 00:11:29,110 Je to jen má několik různých jmen a ikony pro věci. 246 00:11:29,110 --> 00:11:32,510 Ale to je tzv. CS50 zařízení, virtuální stroj, který, 247 00:11:32,510 --> 00:11:35,310 od příštího týdne bude vy spustit uvnitř okna na 248 00:11:35,310 --> 00:11:36,960 vlastní Mac nebo PC. 249 00:11:36,960 --> 00:11:39,760 >> Pro dnešek, jdu otevřít nejjednodušší programů. 250 00:11:39,760 --> 00:11:41,110 Říká se gedit. 251 00:11:41,110 --> 00:11:42,565 A to je jen grafický editor. 252 00:11:42,565 --> 00:11:44,695 Je to něco jako Microsoft Slovo, ale jednodušší. 253 00:11:44,695 --> 00:11:47,110 Je to něco jako textu upravit nebo poznámkový blok. 254 00:11:47,110 --> 00:11:50,280 Je to jen velmi jednoduchý program s která psát slova na obrazovce. 255 00:11:50,280 --> 00:11:54,510 To jen tak, co se stane, že když uložím soubory, které jsem vytvořit, kdy tento pořad 256 00:11:54,510 --> 00:11:59,860 ve speciálním rozšíření, jako je. c, místo toho z. doc nebo. xls, nebo cokoliv 257 00:11:59,860 --> 00:12:04,190 jste obeznámeni s, můžu vlastně programy využívající i tento jednoduchý 258 00:12:04,190 --> 00:12:05,130 textový editor. 259 00:12:05,130 --> 00:12:05,770 >> Takže dovolte mi, abych to udělal. 260 00:12:05,770 --> 00:12:09,330 Nech mě jít napřed a ušetřete tento soubor nejprve jako hello.c. 261 00:12:09,330 --> 00:12:12,350 A opět, uživatelské rozhraní seznámit se na vás rychle. 262 00:12:12,350 --> 00:12:14,160 Ale teď, já jsem jen psát v názvu souboru. 263 00:12:14,160 --> 00:12:17,410 Jdu uložit do své John Harvard domovský adresář. 264 00:12:17,410 --> 00:12:20,810 A teď mám tuto kartu, která označuje, Jsem opravdu úpravách 265 00:12:20,810 --> 00:12:23,070 soubor s názvem hello.c. 266 00:12:23,070 --> 00:12:24,510 Takže nic moc zajímavé, ale. 267 00:12:24,510 --> 00:12:26,000 >> A teď to bude pěkně mystický. 268 00:12:26,000 --> 00:12:28,370 Chystám se přiblížíte, jen takže je to více vidět. 269 00:12:28,370 --> 00:12:35,780 A já začnu psát zahrnovat stdio.h, int main, void, otevřený kudrnaté 270 00:12:35,780 --> 00:12:40,140 rovnátka, jedna, dva, tři, čtyři místa odsazení, tisk f, pro tisk 271 00:12:40,140 --> 00:12:44,450 něco formátování, cituji konec citátu, "Hello, world" zpětné lomítko, n, v blízkosti 272 00:12:44,450 --> 00:12:49,640 Nabídka, uzavřená závorka, středník, zadejte Backspace, Backspace, Backspace, 273 00:12:49,640 --> 00:12:52,310 backspace, uzavřená složená závorka - 274 00:12:52,310 --> 00:12:53,350 Naprogramoval jsem. 275 00:12:53,350 --> 00:12:57,380 >> Dobře, takže to je super jednoduchý program opravdu program, který 276 00:12:57,380 --> 00:12:59,070 někdo začíná s programování. 277 00:12:59,070 --> 00:13:02,300 A vše, co dělá, protože celé jeho složitosti, je vytisknout na 278 00:13:02,300 --> 00:13:04,160 obrazovka, hádejte co? 279 00:13:04,160 --> 00:13:04,910 Hello world. 280 00:13:04,910 --> 00:13:07,500 Ale to nestačí jen napsat 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ázvem c. 283 00:13:11,300 --> 00:13:14,380 Je uložen v současné době soubor s názvem hello.c. 284 00:13:14,380 --> 00:13:16,180 >> Nyní se podívejte na dně na obrazovce zde. 285 00:13:16,180 --> 00:13:17,890 Další informace o tomto znovu, nadcházejících týdnech. 286 00:13:17,890 --> 00:13:19,570 Ale to je to, co budeme nazývat okno terminálu. 287 00:13:19,570 --> 00:13:21,290 Je to bliká, černá a bílé dotaz. 288 00:13:21,290 --> 00:13:24,390 Je to něco jako staré školy rozhraní počítač, který obvykle není 289 00:13:24,390 --> 00:13:27,050 použít myš nebo jiné grafické prvky. 290 00:13:27,050 --> 00:13:28,320 Je to prostě používá klávesnice. 291 00:13:28,320 --> 00:13:30,970 A mohu psát příkazy na to bliká výzva. 292 00:13:30,970 --> 00:13:33,820 >> A pro dnešní účely, já jsem jen jít na zadejte následující - 293 00:13:33,820 --> 00:13:35,610 aby ahoj. 294 00:13:35,610 --> 00:13:39,370 A tento program, aby se, je to jen program, který, v reálném světě v těchto 295 00:13:39,370 --> 00:13:40,690 dnech, bychom dvakrát klikněte na. 296 00:13:40,690 --> 00:13:44,580 Ale v tomto rozhraní pro dnešek, jsme bude psát své jméno na tuto výzvu. 297 00:13:44,580 --> 00:13:47,980 ahoj, aby je doslova chystá aby mi program s názvem ahoj. 298 00:13:47,980 --> 00:13:51,360 A to bude dělat tak tím, že hledá pro soubor, jen tím, že 299 00:13:51,360 --> 00:13:53,460 Ve výchozím nastavení tzv. hello.c. 300 00:13:53,460 --> 00:13:57,260 Bude předpokládat, chci program v jazyce C podle povahy, jak tento počítač 301 00:13:57,260 --> 00:13:58,230 je nakonfigurován. 302 00:13:58,230 --> 00:13:59,550 >> Tak jsem se do toho pusťte a stiskněte klávesu Enter. 303 00:13:59,550 --> 00:14:02,050 Vidím nějaké mystické výstup, ale to se stane příliš 304 00:14:02,050 --> 00:14:03,330 seznámit zanedlouho. 305 00:14:03,330 --> 00:14:06,870 To se stalo spustit kompilátor více na to ve chvíli, tzv. zvonění. 306 00:14:06,870 --> 00:14:09,080 Ale teď mám jen další bliká výzva. 307 00:14:09,080 --> 00:14:13,060 A můžu jít do toho hned a zadejte tečku lomítko, za nezajímavých důvodů budeme 308 00:14:13,060 --> 00:14:14,730 vrátit se příští týden - 309 00:14:14,730 --> 00:14:15,910 ahoj. 310 00:14:15,910 --> 00:14:19,650 >> Takže všechny tyto snahy dosud jen napsat nejjednodušší programy, které, 311 00:14:19,650 --> 00:14:22,640 jakmile jsem Enter, to dělá. 312 00:14:22,640 --> 00:14:24,510 Tak jsem napsal svůj první program. 313 00:14:24,510 --> 00:14:27,500 Tak jsem schválně tropit žerty Tento velmi jednoduchý program, 314 00:14:27,500 --> 00:14:28,540 na několika důvodů. 315 00:14:28,540 --> 00:14:31,990 Za prvé, je to těžké se dostat nadšeni o přijetí třídy, pokud 316 00:14:31,990 --> 00:14:33,430 to je konec hry. 317 00:14:33,430 --> 00:14:37,100 >> Ale víc než to, že tam je Mnoho rozptýlení tady. 318 00:14:37,100 --> 00:14:40,640 Poprvé se naučíte programu, ty z vás, méně pohodlné, a 319 00:14:40,640 --> 00:14:43,410 dokonce i já, zpět v den, kdy jsem poprvé viděl něco podobného - můžete se trochu 320 00:14:43,410 --> 00:14:46,500 figury, že v pořádku, tohoto je v tiskové Hello World. 321 00:14:46,500 --> 00:14:47,860 Ale je tu tolik rozptýlení. 322 00:14:47,860 --> 00:14:52,110 Je toho tolik, syntaxe na obrazovce že se dostane do cesty velmi 323 00:14:52,110 --> 00:14:54,170 jednoduché, jinak jednoduchý, nápady. 324 00:14:54,170 --> 00:14:56,700 >> Takže, co budeme dělat dnes jsme dám stranou C a přijít 325 00:14:56,700 --> 00:14:57,630 zpět na které v pondělí. 326 00:14:57,630 --> 00:15:00,860 A budeme používat grafické programovací jazyk s názvem Scratch. 327 00:15:00,860 --> 00:15:04,470 Jedná se o programovací jazyk, který jsem zmiňoval ve středu, že se děje 328 00:15:04,470 --> 00:15:08,870 které nám umožní dělat stejný druh věcí ale přimhouřit oči, pro dnešek, 329 00:15:08,870 --> 00:15:12,270 do složených závorek, závorky, středníky, a všechny ty hloupé 330 00:15:12,270 --> 00:15:15,680 rozptýlení, které se dostanou do cesty, v to první den, na některé základní, pěkný 331 00:15:15,680 --> 00:15:17,230 zajímavé nápady. 332 00:15:17,230 --> 00:15:21,350 >> Takže k tomuto účelu, já jdu zpět na plochu sem a 333 00:15:21,350 --> 00:15:25,890 představit vám jako alternativu k, který program, který bude vypadat 334 00:15:25,890 --> 00:15:30,790 Něco málo světla to. 335 00:15:30,790 --> 00:15:33,930 To je, jak budeme realizovat, že stejný program dnes - dvě puzzle 336 00:15:33,930 --> 00:15:37,710 kousky, které, když propletený a kliknete, řekne světu, 337 00:15:37,710 --> 00:15:39,000 hello world. 338 00:15:39,000 --> 00:15:41,200 >> Takže pojďme vlastně jít tam. 339 00:15:41,200 --> 00:15:44,965 Takže budu pokračovat a otevřít web známý jako scratch.mit.edu. 340 00:15:44,965 --> 00:15:47,980 341 00:15:47,980 --> 00:15:52,040 A to mě vede k tento web zde. 342 00:15:52,040 --> 00:15:54,660 Předem jsem přihlášen do této webové stránky a první problémy, které 343 00:15:54,660 --> 00:15:55,910 vás provede některé z těchto kroků. 344 00:15:55,910 --> 00:15:58,930 Chystám se jít dál a klepněte na tlačítko na mém poškrábání složky zde. 345 00:15:58,930 --> 00:16:00,720 >> A to se mi ukázat některé projekty, které jsem 346 00:16:00,720 --> 00:16:02,570 ve skutečnosti vytvořena předem. 347 00:16:02,570 --> 00:16:05,860 A ukázalo se, že tento grafický programovací jazyk nejen se děje 348 00:16:05,860 --> 00:16:08,480 aby nám program přetažením sbíráním těchto dílků, můžete 349 00:16:08,480 --> 00:16:09,730 nepotřebujete ani speciální software. 350 00:16:09,730 --> 00:16:13,190 To vše je zakotvena v prohlížeči tak, že můžete udělat to, teoreticky, na 351 00:16:13,190 --> 00:16:16,810 vaše počítače právě teď, jak někteří z vás může být, aniž by museli 352 00:16:16,810 --> 00:16:19,870 software jako CS50 spotřebiče která přijde příští týden. 353 00:16:19,870 --> 00:16:24,200 >> Takže jsem jít do horního rohu zde a klikněte na tlačítko Vytvořit. 354 00:16:24,200 --> 00:16:27,840 A za chvíli budu mít prázdný displej, přes který můžu začít 355 00:16:27,840 --> 00:16:30,380 programování v této grafické programovací prostředí. 356 00:16:30,380 --> 00:16:36,140 Ale tentokrát to bude mnohem, mnohem jednodušší, aby skutečně učinit. 357 00:16:36,140 --> 00:16:41,560 Takže za chvíli, kdy Wi-Fi spolupracuje, nyní máme tuto obrazovku. 358 00:16:41,560 --> 00:16:44,870 Tak rychle slovní turné, ale troufám si říci, jistě, když se ponoříte do 359 00:16:44,870 --> 00:16:46,840 Prvním problémem set, budete toto všechno velmi 360 00:16:46,840 --> 00:16:48,315 dostupné a poměrně intuitivní. 361 00:16:48,315 --> 00:16:50,900 Ale pojďme malovat mentální obraz jen na chvíli. 362 00:16:50,900 --> 00:16:54,620 >> Tak pod tuto výzvu říká uložení změny, jste asi vidět poškrábání. 363 00:16:54,620 --> 00:16:55,570 Jedná se 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, co budeme říkat jeviště, tento velký bílý obdélník na 366 00:17:00,740 --> 00:17:03,120 které se mohou pohybovat nahoru, dolů, vlevo, pravdu, a to, opravdu, 367 00:17:03,120 --> 00:17:04,670 Jiné druhy akcí. 368 00:17:04,670 --> 00:17:08,780 >> Mezitím, v polovině tohoto uživatele rozhraní, máme spoustu 369 00:17:08,780 --> 00:17:09,750 skládačky. 370 00:17:09,750 --> 00:17:14,060 A uvidíte, že říkají věci jako pohybovat deset kroků, otočil 15 stupňů, 371 00:17:14,060 --> 00:17:15,550 bod v určitém směru. 372 00:17:15,550 --> 00:17:17,910 Ale je tu kategorie bloky až zde. 373 00:17:17,910 --> 00:17:21,410 Takže když jdu na vzhled, uvidíte, že je tu další kousky skládačky, které 374 00:17:21,410 --> 00:17:25,530 zřejmě bude vyprávět tento cit pro pozdravit, přemýšlet, ukázat 375 00:17:25,530 --> 00:17:26,780 sám schovat. 376 00:17:26,780 --> 00:17:30,830 Kdybych šel do Sounds, to dopadá je tu způsob, jak přehrávat zvuky jako mňau, 377 00:17:30,830 --> 00:17:32,670 zastavit všechny zvuky, hrát buben. 378 00:17:32,670 --> 00:17:36,530 >> Tak dlouhý příběh krátký, je tu celá banda dílků, které vám dovolují 379 00:17:36,530 --> 00:17:40,920 sdělit tuto kočku, nebo libovolný počet jiné charaktery, co má dělat. 380 00:17:40,920 --> 00:17:43,850 Ale aby se to všechno stalo vám je třeba začít s programováním. 381 00:17:43,850 --> 00:17:48,090 A to velký bílý box, nebo šedá krabice, na na pravé straně, to je místo, kde 382 00:17:48,090 --> 00:17:50,170 Chystám se skutečně přetáhnout pokles těchto dílků. 383 00:17:50,170 --> 00:17:54,320 To je můj prázdný textu okno ekvivalent. 384 00:17:54,320 --> 00:17:57,070 >> Takže budu pokračovat a klepněte na tlačítko Řízení ve středu. 385 00:17:57,070 --> 00:17:58,540 Nebo spíš, dovolte mi začít až do akce. 386 00:17:58,540 --> 00:18:01,530 V rámci akce lavici, zjistíte, pár věcí, které jsou záměrně 387 00:18:01,530 --> 00:18:05,240 zakřivený na vrcholu tak, že pravděpodobně nemají Interlock na 388 00:18:05,240 --> 00:18:06,710 horní části skládačky. 389 00:18:06,710 --> 00:18:10,160 A to proto, že Demark začátek programu, start 390 00:18:10,160 --> 00:18:11,910 scénář, abych tak řekl. 391 00:18:11,910 --> 00:18:16,290 Takže když jsem se do toho pusťte a táhněte, když zelená vlajka kliknete sem, a pak jsem 392 00:18:16,290 --> 00:18:18,060 aby tato kočka říci, něco, co na první pohled. 393 00:18:18,060 --> 00:18:20,510 Takže jsem jít pod vypadá panel. 394 00:18:20,510 --> 00:18:24,060 A já jdu do toho a chytit pozdravit blok a přetáhněte a umístěte, 395 00:18:24,060 --> 00:18:27,220 a pustit tak, aby se automaticky blokuje tam. 396 00:18:27,220 --> 00:18:28,640 >> A pak jsem si všimnout, klikněte na text. 397 00:18:28,640 --> 00:18:31,960 A mohu přepsat, aby to bylo více specifické jako, řekněme, hello world. 398 00:18:31,960 --> 00:18:36,340 A teď tu máme program, který jsem žádat odpovídá, že mnohem více 399 00:18:36,340 --> 00:18:39,670 tajemný Program jsem implementoval v C před chvílí. 400 00:18:39,670 --> 00:18:43,130 >> Když jdu pryč na levé straně, Všimněte si, že je to velká stopka 401 00:18:43,130 --> 00:18:44,520 a velká zelená vlajka. 402 00:18:44,520 --> 00:18:46,390 Dovolte mi přiblížit pro přehlednost. 403 00:18:46,390 --> 00:18:49,390 A když jsem se teď na tuto zelenou vlajku, asi tušíte, co to jako první 404 00:18:49,390 --> 00:18:51,920 Program je nyní dělat. 405 00:18:51,920 --> 00:18:55,420 Takže tam taky, my programování, ale nejsme ve skutečnosti dostat zapadl 406 00:18:55,420 --> 00:18:58,980 v některých z těch, syntaktické, drobné detaily. 407 00:18:58,980 --> 00:19:01,120 >> Ale pojďme zkusit něco trochu zajímavější. 408 00:19:01,120 --> 00:19:04,840 Nech mě jít do mé složky Scratch zde. 409 00:19:04,840 --> 00:19:10,210 A vlastně mi dovolte, abych tak ať mi otevřou samostatný program zde jen 410 00:19:10,210 --> 00:19:17,830 moment, maximalizovat okno, Soubor Otevřít, a já jdu do dnešní 411 00:19:17,830 --> 00:19:18,620 zdrojový adresář. 412 00:19:18,620 --> 00:19:21,660 Jako vždy, zjistíte, dnes a kupředu, že všechny dnešní příkladů 413 00:19:21,660 --> 00:19:25,225 jsou k dispozici uvnitř Kurz web. 414 00:19:25,225 --> 00:19:31,170 >> A budu pokračovat tady a vybrat se trochu něco jiného. 415 00:19:31,170 --> 00:19:33,970 Tenhle, pro které Potřebuji dobrovolníka. 416 00:19:33,970 --> 00:19:36,850 Kdo by rád lampu dnes? 417 00:19:36,850 --> 00:19:40,600 OK, jak se o někom něco - jste na konci? 418 00:19:40,600 --> 00:19:42,124 Pojď dolů. 419 00:19:42,124 --> 00:19:47,230 Nyní byste se rádi zúčastnili, nebo jen říct, začít s lampou? 420 00:19:47,230 --> 00:19:48,190 >> VANESSA: [neslyšitelné]. 421 00:19:48,190 --> 00:19:48,465 >> DAVID Malan: OK. 422 00:19:48,465 --> 00:19:49,610 Výborný, co jste jméno? 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 pojď nahoru a Vanessa se děje vzít kontrolu nad svým 427 00:19:53,840 --> 00:19:55,490 klávesnice jen na chvíli. 428 00:19:55,490 --> 00:19:57,850 A to, co jsem udělal tu jen pro čas je saké, když jsem si uvědomil, 429 00:19:57,850 --> 00:20:01,070 Wi-Fi je trochu pomalý, Scratch, programování prostředí, které jsme 430 00:20:01,070 --> 00:20:04,110 použití, lze také stáhnout a spustit na vašem počítači. 431 00:20:04,110 --> 00:20:06,360 Takže to, co jsem udělal před přednáškou, v případ, že se stane, je, že jsem stáhnout 432 00:20:06,360 --> 00:20:09,120 všechny soubory se chystáte hrát takže může běžet o něco více 433 00:20:09,120 --> 00:20:10,840 rychle přímo zde na mém notebooku. 434 00:20:10,840 --> 00:20:13,460 Takže to je důvod, proč teď jsem viděl Mac specifické rozhraní. 435 00:20:13,460 --> 00:20:15,510 >> Takže budu pokračovat a otevřít tenhle. 436 00:20:15,510 --> 00:20:18,400 Chystám se jít dopředu a teď na celé obrazovce okno. 437 00:20:18,400 --> 00:20:21,740 A jak uvidíte, můžeme velmi rychle, jak to bylo studentů, jeden z 438 00:20:21,740 --> 00:20:26,360 vaši předchůdci, jít od Hello World k mnohem přesvědčivější 439 00:20:26,360 --> 00:20:27,020 aplikace. 440 00:20:27,020 --> 00:20:28,180 Tak tady je návod. 441 00:20:28,180 --> 00:20:29,500 Jo, a máme jednu věc. 442 00:20:29,500 --> 00:20:31,640 Myslel jsem, že to bude zábava, protože, normálně, budeme natáčet 443 00:20:31,640 --> 00:20:32,440 kamery tímto způsobem. 444 00:20:32,440 --> 00:20:34,100 Myslel jsem, že by bylo zábavné, pokud Vanessa, jsme mohli vidět svět 445 00:20:34,100 --> 00:20:35,120 vašima očima. 446 00:20:35,120 --> 00:20:36,670 Tak tady máme nějaké Google Glass. 447 00:20:36,670 --> 00:20:39,290 >> [Užaslý vzdechy] 448 00:20:39,290 --> 00:20:41,610 >> DAVID Malan: Budeme jen dávat daleko stolní lampy dnes. 449 00:20:41,610 --> 00:20:43,530 >> [Smích] 450 00:20:43,530 --> 00:20:45,260 >> Takže mi dovolte narážka to. 451 00:20:45,260 --> 00:20:49,340 Dobře, takže to dotknout. 452 00:20:49,340 --> 00:20:51,910 OK, sklo, nahrávat video. 453 00:20:51,910 --> 00:20:55,700 454 00:20:55,700 --> 00:20:56,950 Dobře, Vanessa? 455 00:20:56,950 --> 00:21:00,940 456 00:21:00,940 --> 00:21:05,560 Teď, když stranou, která nemá nic společného co do činění s Scratch, když se podíváte 457 00:21:05,560 --> 00:21:08,540 mírně nahoru a vpravo, uvidíte doslovný sklo, a vy byste měli 458 00:21:08,540 --> 00:21:09,650 viz trochu obdélníkové okno. 459 00:21:09,650 --> 00:21:11,500 Měli byste vidět všechny své spolužáky natáčí právě teď? 460 00:21:11,500 --> 00:21:11,840 Ano. 461 00:21:11,840 --> 00:21:12,340 >> VANESSA: Ano. 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 pořádku. 464 00:21:15,170 --> 00:21:16,660 Budeme uvolňovat tyto záběry později. 465 00:21:16,660 --> 00:21:18,460 Pro tuto chvíli, obrátit vaši pozornost na obrazovku zde. 466 00:21:18,460 --> 00:21:20,990 A co váš předchůdce udělal je dát nějaké pokyny na obrazovce 467 00:21:20,990 --> 00:21:22,670 jen pomocí programu pro malování. 468 00:21:22,670 --> 00:21:25,040 Takže budete, v okamžiku, stisknutím mezerníku začnou. 469 00:21:25,040 --> 00:21:27,790 A pak některé dílky jdou do pohybu po obrazovce nahoru. 470 00:21:27,790 --> 00:21:30,900 A chcete trefit šipkami, jen jako v reálném DDR, v souladu 471 00:21:30,900 --> 00:21:32,740 se věci seřazovat s těmito šipkami. 472 00:21:32,740 --> 00:21:33,020 >> VANESSA: OK. 473 00:21:33,020 --> 00:21:33,800 >> DAVID Malan: jsi hrát předtím. 474 00:21:33,800 --> 00:21:34,140 >> VANESSA: Jo. 475 00:21:34,140 --> 00:21:37,330 >> DAVID Malan: Dobře, Vanessa, jděte do toho a vzít to pryč. 476 00:21:37,330 --> 00:22:53,082 >> [MUSIC - Kayne West, "silnější"] 477 00:22:53,082 --> 00:22:57,080 >> [APPLAUSE] 478 00:22:57,080 --> 00:22:59,750 >> DAVID Malan: Tak pojďme teď krok od toho. 479 00:22:59,750 --> 00:23:01,230 Tak jasně, to je konec hry. 480 00:23:01,230 --> 00:23:02,880 Na konci hry není hello world. 481 00:23:02,880 --> 00:23:05,520 Ale nemusíte nutně dělat věci, které jsou tak interaktivní. 482 00:23:05,520 --> 00:23:06,810 Můžete si také udělat animaci. 483 00:23:06,810 --> 00:23:10,790 Tak například, další z tvých nástupci z tohoto programu zde 484 00:23:10,790 --> 00:23:14,100 který vypráví příběh více než to implementovali hru. 485 00:23:14,100 --> 00:23:19,180 Tak mě nech jít dopředu a otevřít zde Program v našem stejném adresáři se zdrojovými kódy 486 00:23:19,180 --> 00:23:20,300 od dnešního dne. 487 00:23:20,300 --> 00:23:26,990 Tenhle hovor a začněme s, cookie milostný příběh. 488 00:23:26,990 --> 00:23:30,750 >> A ne, aby to příliš akademické, ale jak se budete dívat tohle, myslím, že se 489 00:23:30,750 --> 00:23:34,030 sami sebe, které z jednoduchých Programovací pojmy Mluvili jsme 490 00:23:34,030 --> 00:23:34,630 o dosud - 491 00:23:34,630 --> 00:23:39,250 proměnné a smyčky, a podmínky, Váš předchůdce se pravděpodobně používat jen 492 00:23:39,250 --> 00:23:41,090 k provádění některých vizualizací. 493 00:23:41,090 --> 00:23:41,760 Vidíte zde. 494 00:23:41,760 --> 00:23:44,118 Tak jsem vám cookie milostný příběh. 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 - želvy, "Happy Together"] 498 00:24:09,272 --> 00:24:58,328 499 00:24:58,328 --> 00:25:00,560 >> DAVID Malan: Dobře, takže tam, jsme měli cookie milostný příběh. 500 00:25:00,560 --> 00:25:01,360 Ale i tam - 501 00:25:01,360 --> 00:25:01,755 >> [APPLAUSE] 502 00:25:01,755 --> 00:25:08,110 >> DAVID Malan: Tak jo, i tam, přemýšlet o tom, jak ty šla od srdce 503 00:25:08,110 --> 00:25:10,410 spodní do horní části obrazovky, tam byl vlastně trochu 504 00:25:10,410 --> 00:25:11,440 náhodnost děje. 505 00:25:11,440 --> 00:25:14,150 A skutečně, uvidíme, že ani v Nejjednodušší z prostředí, jako je 506 00:25:14,150 --> 00:25:18,180 Scratch, jak v C, můžete vygenerovat náhodná čísla, nebo iluze 507 00:25:18,180 --> 00:25:21,110 náhodná čísla, takže je hra trochu zajímavější, než by to mohlo 508 00:25:21,110 --> 00:25:23,390 bylo, kdyby jste měli absolutně pevný kódované všechno. 509 00:25:23,390 --> 00:25:26,360 >> V hnutí, které vidíte, jsou tam je nějaký druh reakce. 510 00:25:26,360 --> 00:25:28,840 Jakmile perník muž se dotýká perník žena, ona 511 00:25:28,840 --> 00:25:30,000 Zdá se, že odejít. 512 00:25:30,000 --> 00:25:33,580 A tak, ve skutečnosti, můžete provádět ve většině programovacích jazyků, pojem 513 00:25:33,580 --> 00:25:38,680 událostí, přičemž je-li jedna ruka se dotýká Na druhé straně, to může vyvolat některé 514 00:25:38,680 --> 00:25:41,270 ze zdrojového kódu skutečně vykonat. 515 00:25:41,270 --> 00:25:43,740 Můžete poslouchat jako věci na obrazovce. 516 00:25:43,740 --> 00:25:47,310 >> Takže pojďme si rychlou prohlídku, pak, některé ze stavebních kamenů, které můžeme použít 517 00:25:47,310 --> 00:25:48,790 k dosažení některých z těchto cílů. 518 00:25:48,790 --> 00:25:51,630 Tak tady je to, co budeme od nynějška zavolejte prohlášení. 519 00:25:51,630 --> 00:25:55,030 Prohlášení se stane být fialové Scratch, trochu něco takového, 520 00:25:55,030 --> 00:25:56,120 ale to je subjektivní. 521 00:25:56,120 --> 00:26:00,140 Příkaz je jen kousek puzzle, nebo obecněji, instrukce, která 522 00:26:00,140 --> 00:26:03,370 říká počítači dělat něco, prohlášení. 523 00:26:03,370 --> 00:26:04,680 >> Tak tady je to jednoduchý vzorek. 524 00:26:04,680 --> 00:26:05,930 Say hello world. 525 00:26:05,930 --> 00:26:08,180 Dalším z nich by mohl být počkejte jednu sekundu. 526 00:26:08,180 --> 00:26:10,840 Takže tento kousek skládačky, který je podporován V Scratch, necháme váš 527 00:26:10,840 --> 00:26:13,050 znaky pauzy pro některé počet sekund. 528 00:26:13,050 --> 00:26:15,330 I to je jen konstatování. 529 00:26:15,330 --> 00:26:18,640 >> Zde další máme další více zajímavý, přehrávat zvuk mňau, a 530 00:26:18,640 --> 00:26:21,480 malá šipka znamená, že Scratch, to je rozbalovací menu. 531 00:26:21,480 --> 00:26:22,590 Takže můžete importovat zvuky. 532 00:26:22,590 --> 00:26:25,095 Můžete nahrávat zvuky a dělat jiné zábavné věci na začátku. 533 00:26:25,095 --> 00:26:28,450 A to, že i když se na konci dne, je to jen konstatování. 534 00:26:28,450 --> 00:26:31,250 Ale teď pojďme představit více Zajímavou, že známý jako 535 00:26:31,250 --> 00:26:32,630 Logický výraz. 536 00:26:32,630 --> 00:26:35,180 Kapitál B, pojmenoval chlapík jménem Bool. 537 00:26:35,180 --> 00:26:39,500 >> A Logický výraz je jen skládačky, nebo obecněji, 538 00:26:39,500 --> 00:26:42,980 informace, která je buď true nebo false - 539 00:26:42,980 --> 00:26:45,830 jedna nebo nula, ano nebo ne. 540 00:26:45,830 --> 00:26:48,420 Takže je to jen jeden z těch, dva protiklady. 541 00:26:48,420 --> 00:26:52,840 Takže jeden takový logický výraz v Svět Scratch vypadá takto modrá 542 00:26:52,840 --> 00:26:53,560 skládačky. 543 00:26:53,560 --> 00:26:56,735 A to se ptá na otázku, myš dolů, a která může být, z 544 00:26:56,735 --> 00:26:58,430 Samozřejmě, true nebo false. 545 00:26:58,430 --> 00:27:01,710 Tak s tímto puzzle v Scratch, dobře, budete moci zjistit, zda jsou 546 00:27:01,710 --> 00:27:05,490 puzzle, pokud je myš, ve skutečnosti, že podržení lidskou interakce 547 00:27:05,490 --> 00:27:06,550 s programem. 548 00:27:06,550 --> 00:27:08,860 >> Tohle je trochu abstraktní, ale ty dvě bílé krabičky 549 00:27:08,860 --> 00:27:09,740 jsou jen pro čísla. 550 00:27:09,740 --> 00:27:12,950 Takže si můžete dělat věci, jako je tato číslo menší než ostatní? 551 00:27:12,950 --> 00:27:16,180 A pokud ano, bude Scratch chovat jedna cesta nebo jiný. 552 00:27:16,180 --> 00:27:17,505 Tohle je trochu grafický. 553 00:27:17,505 --> 00:27:21,840 Je-li objekt sprite, je-li kočka, pro instance, je ve skutečnosti dotýká 554 00:27:21,840 --> 00:27:22,510 ukazatel myši. 555 00:27:22,510 --> 00:27:25,780 Takže pokud něco šipka hlava se vznáší na kočky, pak tento 556 00:27:25,780 --> 00:27:28,030 skládačky vyhodnotí na true. 557 00:27:28,030 --> 00:27:31,870 Bude to pravda, v tom případě, pokud jste použít tento logický výraz, protože my budeme 558 00:27:31,870 --> 00:27:36,340 vidět ve chvíli, na pobočce, můžete Buď to, nebo si můžete udělat to, 559 00:27:36,340 --> 00:27:39,940 stejně jako jsme měli podmínku, že kontrolována, je tu ještě jeden poslední člověk 560 00:27:39,940 --> 00:27:40,460 v místnosti? 561 00:27:40,460 --> 00:27:42,070 Pokud ano, přidat. 562 00:27:42,070 --> 00:27:44,430 Jinak, nebojte se dál. 563 00:27:44,430 --> 00:27:48,650 >> Takže Logický výraz může být také a-ed společně nebo nebo-ed dohromady. 564 00:27:48,650 --> 00:27:53,120 Takže můžete kombinovat booleovských výrazů a říkat to a to musí být pravda pro 565 00:27:53,120 --> 00:27:54,710 Celá věc je to pravda. 566 00:27:54,710 --> 00:27:56,520 A tady je více reálný svět příkladem. 567 00:27:56,520 --> 00:28:00,060 Pokud jste použili CS50 kurzy udělat kurz nakupování, tato zaškrtávací políčka 568 00:28:00,060 --> 00:28:03,520 tam, kde pokud si zkontrolujte, zda políčko vedle do kurzů, bude to říkat, ano, 569 00:28:03,520 --> 00:28:07,860 zobrazit pouze mi kurzy, které hodnota Q je 4,5 nebo vyšší. 570 00:28:07,860 --> 00:28:10,610 Pokud nepotvrdíte, ne, ne starosti. 571 00:28:10,610 --> 00:28:13,910 Nebo podobně, na práva, nemusí Konflikt s kurzy beru, 572 00:28:13,910 --> 00:28:15,650 to je buď true nebo false. 573 00:28:15,650 --> 00:28:16,715 Je to jen logický výraz. 574 00:28:16,715 --> 00:28:20,080 Takže celou tu dobu, kdy jste používali webové stránky s zaškrtávacích políček, jsi jen 575 00:28:20,080 --> 00:28:23,570 přepínání ekvivalent Boolean Výraz zapnutí a vypnutí. 576 00:28:23,570 --> 00:28:25,270 >> Takže v jaké formě se používá tohle? 577 00:28:25,270 --> 00:28:28,820 No, Scratch, uvidíme za chvíli že existují podmínky, že 578 00:28:28,820 --> 00:28:29,560 vypadat takto. 579 00:28:29,560 --> 00:28:33,130 A to je docela rozumné, protože mnoho jako v pseudokódu, se odsazený 580 00:28:33,130 --> 00:28:38,550 druh tvaru U dílků, střední že něco uvnitř, že u je 581 00:28:38,550 --> 00:28:41,390 bude provádět, nebo ne, záleží na tom, kde je. 582 00:28:41,390 --> 00:28:45,310 Takže pokud logický výraz, pak co je uvnitř dostane popraven. 583 00:28:45,310 --> 00:28:46,800 >> Mezitím tam if / else bloku. 584 00:28:46,800 --> 00:28:50,320 Takže pokud chcete, větev, která jde to Tak nebo tak, že Scratch dává nám to. 585 00:28:50,320 --> 00:28:54,500 A této logiky, nyní, i přesto, že skládačky je zjevně příliš malá 586 00:28:54,500 --> 00:28:57,400 k zaklínění něco uvnitř ní, kousky puzzle poškrábání, jsou 587 00:28:57,400 --> 00:28:58,150 jen poroste. 588 00:28:58,150 --> 00:29:01,370 Když přetáhnete nad něčím, to bude jen růst, aby se vešly bez ohledu na to 589 00:29:01,370 --> 00:29:02,510 se snažíte dělat. 590 00:29:02,510 --> 00:29:07,230 >> Takže můžeme vzít dvě z těchto věcí a aby se třícestný rozcestí tak 591 00:29:07,230 --> 00:29:11,300 že buď to, či ono, čili ta druhá věc, jen tím, že jim hnízdění 592 00:29:11,300 --> 00:29:12,070 tímto způsobem. 593 00:29:12,070 --> 00:29:14,370 Samozřejmě, pokud si to udělat taky moc, to začíná být ošklivé. 594 00:29:14,370 --> 00:29:17,660 Ale v tomto okamžiku, že jste ve skutečnosti pravděpodobně ne programování velmi dobře. 595 00:29:17,660 --> 00:29:20,490 A tak, že bude opakující téma také, že z módy. 596 00:29:20,490 --> 00:29:22,790 To, jak dobře se vlastně formátování kódu? 597 00:29:22,790 --> 00:29:24,580 Nebo, jak dobře si navrhnout svůj kód? 598 00:29:24,580 --> 00:29:26,430 Ale o tom více v budoucnu. 599 00:29:26,430 --> 00:29:27,470 >> A teď máme smyčky. 600 00:29:27,470 --> 00:29:30,310 Je to pěkná navždy smyčka Scratch což doslova znamená, že - do 601 00:29:30,310 --> 00:29:32,710 co je uvnitř to ještě jednou, a znovu a znovu. 602 00:29:32,710 --> 00:29:35,880 Můžete být konkrétnější a říci, Proveďte následující věc 10 krát. 603 00:29:35,880 --> 00:29:37,620 Můžete také použít proměnné. 604 00:29:37,620 --> 00:29:40,260 Můžete přijít s nějakým jménem v tom trochu klesnout a řekl, dej mi 605 00:29:40,260 --> 00:29:43,190 proměnné s názvem n a nastavte je rovna nějaké hodnoty. 606 00:29:43,190 --> 00:29:44,910 A pak můžete mít funkce. 607 00:29:44,910 --> 00:29:46,850 Ale o těch za chvíli. 608 00:29:46,850 --> 00:29:49,140 >> Dovolte mi vrátit se k mému Scratch rozhraní. 609 00:29:49,140 --> 00:29:50,970 A dovolte mi, abych do toho tentokrát. 610 00:29:50,970 --> 00:29:56,660 A pojďme dál a otevřít, řekněme, příklad z - 611 00:29:56,660 --> 00:29:58,740 že je to trochu zajímavější. 612 00:29:58,740 --> 00:30:00,750 Nech mě jít napřed, a ve skutečnosti, dovolte mi, aby to sám. 613 00:30:00,750 --> 00:30:01,960 Nepotřebuji, aby toto. 614 00:30:01,960 --> 00:30:03,390 Nech mě jít do Soubor, Nový. 615 00:30:03,390 --> 00:30:04,740 Chystám se jít do akce. 616 00:30:04,740 --> 00:30:08,460 Chystám se jít, když zelenou vlajkou klikli a já jdu na zvuk. 617 00:30:08,460 --> 00:30:11,590 A budu přetahovat to skládačky, přehrávat zvuk mňau. 618 00:30:11,590 --> 00:30:12,580 To západky k sobě. 619 00:30:12,580 --> 00:30:14,327 A teď, když jsem klepněte na zelenou 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 teď pojďme udělat něco trochu logičtější jen prokázat, že 623 00:30:21,560 --> 00:30:22,760 můžeme pro tuto chvíli. 624 00:30:22,760 --> 00:30:25,550 Chystám se uvolněte to z toho chlapa. 625 00:30:25,550 --> 00:30:27,000 Chystám se jít na kontrolu. 626 00:30:27,000 --> 00:30:28,770 A já jdu chytit podmínku. 627 00:30:28,770 --> 00:30:30,600 Takže pokud se něco poté. 628 00:30:30,600 --> 00:30:32,020 Tak to je, jak to tam vypadá. 629 00:30:32,020 --> 00:30:33,890 Tak jsem třeba logický výraz. 630 00:30:33,890 --> 00:30:38,130 A nech mě jít napřed a řekl: nech mě jít na provozovatele. 631 00:30:38,130 --> 00:30:40,270 Chystám se udělat něco mírně Mathy, jen tak pro legraci. 632 00:30:40,270 --> 00:30:43,600 Chystám se jít sem a říci, je-li něco, co je menší než něco jiného, 633 00:30:43,600 --> 00:30:45,030 jděte do toho a něco udělat. 634 00:30:45,030 --> 00:30:46,890 Takže teď, víte co, náhodný blok. 635 00:30:46,890 --> 00:30:51,620 Tak zjistíte, jak kdybych vznášet se nad to věc tady, že budou chytat tam. 636 00:30:51,620 --> 00:30:54,090 >> Takže teď, oznámení, začínám dělat něco, co již logičtěji 637 00:30:54,090 --> 00:30:54,650 zajímavé. 638 00:30:54,650 --> 00:30:59,720 Je-li náhodné číslo mezi 1 a 10 je nižší než, řekněme, šest. 639 00:30:59,720 --> 00:31:03,670 Mám-li si vybrat šest, které v podstatě znamená, proveďte následující kroky s 50% 640 00:31:03,670 --> 00:31:03,980 pravděpodobnost. 641 00:31:03,980 --> 00:31:05,460 Je to jako hodit mincí. 642 00:31:05,460 --> 00:31:07,330 Teď můžu něco udělat podmíněně. 643 00:31:07,330 --> 00:31:10,800 A to je něco, co budu udělat, je hrát zvuk. 644 00:31:10,800 --> 00:31:14,280 Takže teď, když jsem klikněte na obrazovku vlajka, je to jako házet mincí. 645 00:31:14,280 --> 00:31:14,610 >> [MEOW SOUND] 646 00:31:14,610 --> 00:31:17,160 >> DAVID Malan: Bylo hlavy nebo kdo ví co ještě tam. 647 00:31:17,160 --> 00:31:17,920 Udělejme to znovu. 648 00:31:17,920 --> 00:31:18,860 >> [MEOW SOUND] 649 00:31:18,860 --> 00:31:19,790 >> DAVID Malan: Heads znovu. 650 00:31:19,790 --> 00:31:20,280 >> [MEOW SOUND] 651 00:31:20,280 --> 00:31:21,500 >> DAVID Malan: Heads znovu. 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, pokud se to nekonečně dlouho, dostaneme 50% meows 655 00:31:29,545 --> 00:31:32,180 a 50% mlčení. 656 00:31:32,180 --> 00:31:34,850 Takže tam, jen základní stavební blok, který nám umožňuje dělat. 657 00:31:34,850 --> 00:31:37,710 Ale to je trochu nudné, že mám aby kliknutím na toto tlačítko. 658 00:31:37,710 --> 00:31:39,810 Takže pojďme se jen drag and hodit všechny z nich pryč. 659 00:31:39,810 --> 00:31:42,270 Pokud se odtáhl je do středu, budou jen odstranit sami. 660 00:31:42,270 --> 00:31:43,760 >> Nech mě jít až na ovládání. 661 00:31:43,760 --> 00:31:46,060 Nech mě jít navždy. 662 00:31:46,060 --> 00:31:49,952 A tentokrát jdu dělat něco minorly nepříjemné. 663 00:31:49,952 --> 00:31:51,560 >> [Smích] 664 00:31:51,560 --> 00:31:53,370 >> DAVID Malan: A nech mě jít a udělej kontrolu. 665 00:31:53,370 --> 00:31:57,260 Počkejte jednu vteřinu, jen tak to není pří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 není přirozené. 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 upozornění Co je, pěkné o Scratch, pro ty z vás, kteří 671 00:32:06,406 --> 00:32:09,210 mít předchozí programovací zkušenosti, můžete Nemusíte spustit a zastavit. 672 00:32:09,210 --> 00:32:10,060 Nemusíte kompilace. 673 00:32:10,060 --> 00:32:13,210 Stačí změnit, a program se přizpůsobí dynamicky. 674 00:32:13,210 --> 00:32:14,620 Tak to už je málo zajímavé. 675 00:32:14,620 --> 00:32:16,930 Ale pojďme ještě o krok dál. 676 00:32:16,930 --> 00:32:19,760 Nech mě jít dopředu a dostat zbavit tohoto 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, co budeme zavolejte chybu v začátku. 679 00:32:25,520 --> 00:32:26,770 Neměl by udržet dělat ten zvuk. 680 00:32:26,770 --> 00:32:28,340 Tak jsme si řeknu mu, ať přestane. 681 00:32:28,340 --> 00:32:30,435 Dobře, takže teď jsem jít do - 682 00:32:30,435 --> 00:32:32,180 Dám vědět MIT. 683 00:32:32,180 --> 00:32:35,160 Půjdeme sem Forever. 684 00:32:35,160 --> 00:32:37,240 A teď chci něco udělat znovu a znovu. 685 00:32:37,240 --> 00:32:38,760 Chystám se jít do řízení. 686 00:32:38,760 --> 00:32:41,570 >> A podívejme se, budu přetahovat můj stav, pokud existuje. 687 00:32:41,570 --> 00:32:42,850 Takže teď si všimněte logiku. 688 00:32:42,850 --> 00:32:46,430 Po klepnutí na zelenou vlajkou, dělat něco, co navždy, ale pouze to, že 689 00:32:46,430 --> 00:32:48,890 co když ta druhá věc je pravda. 690 00:32:48,890 --> 00:32:51,480 Chystám se jít, pojďme říci, snímání. 691 00:32:51,480 --> 00:32:54,430 A já jdu do toho a vyberte dojemné a umístěte jej 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 teď, všimněte si, v tomto poklesu down menu, jsou 694 00:32:57,740 --> 00:32:59,050 některé předem definované hodnoty. 695 00:32:59,050 --> 00:33:00,910 Takže můžu říct, jste dotýká okraj obrazovky? 696 00:33:00,910 --> 00:33:03,900 Nebo jste se dotknete myši, šipka na obrazovce? 697 00:33:03,900 --> 00:33:04,620 Takže jdu na to. 698 00:33:04,620 --> 00:33:08,770 A pokud ano, pak jsem jít dopředu a přehrávat zvukové mňau. 699 00:33:08,770 --> 00:33:11,250 Takže teď jsem tak trochu mají Počátky 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 Nech mě čekat, řekněme, jedna sekunda tam. 704 00:33:20,770 --> 00:33:24,910 Teď hrát znovu, 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 teď už je jako hlazení kočky. 707 00:33:30,460 --> 00:33:31,850 >> [MEOW SOUND] 708 00:33:31,850 --> 00:33:34,460 >> DAVID Malan: Dobře, teď to kdo jsem, aby předem. 709 00:33:34,460 --> 00:33:39,250 Velmi pozdě, dostane druh snadné dělat hloupé věci. 710 00:33:39,250 --> 00:33:40,240 Tak mě nech jít sem. 711 00:33:40,240 --> 00:33:43,720 Řekněme, že se hýčkat kočku. 712 00:33:43,720 --> 00:33:46,600 Pojďme nyní otevřít Nepoužívejte Zvířata Cat. 713 00:33:46,600 --> 00:33:48,330 Teď, když budeme hrát tohle, můžete hádat, pokud jste 714 00:33:48,330 --> 00:33:49,650 při pohledu na obrazovku - 715 00:33:49,650 --> 00:33:51,090 >> [MEOW SOUND] 716 00:33:51,090 --> 00:33:52,170 >> DAVID Malan: Teď, když jsem se hýčkat kočku 717 00:33:52,170 --> 00:33:55,420 >> [LION řev] 718 00:33:55,420 --> 00:33:57,260 >> DAVID Malan: Takže nejsou ve skutečnosti hýčkat kočku v tomto případě. 719 00:33:57,260 --> 00:34:01,350 Takže teď máme jen příklad větev, co se děje ve dvou směrech. 720 00:34:01,350 --> 00:34:03,130 Nyní mi dovolte pokračovat a otevřít jiný tady. 721 00:34:03,130 --> 00:34:07,120 Tento jeden, i mimo náš zdroj soubory kódu pro daný den. 722 00:34:07,120 --> 00:34:13,199 Tak nech mě jít zpátky do svého zdroje adresář a jít do, pojďme vybrat 723 00:34:13,199 --> 00:34:15,610 ten chlap tady a vidět to, co je. 724 00:34:15,610 --> 00:34:17,449 >> Wow, v pořádku, takže teď je to čím dál trochu složitější. 725 00:34:17,449 --> 00:34:21,300 A předtím, než jsme viděli, co ten chlap dělá, Pokusme se odvodit, z programu 726 00:34:21,300 --> 00:34:22,219 na pravé straně. 727 00:34:22,219 --> 00:34:25,590 A teď poškrábání jasně nám umožňuje mají více skriptů, více 728 00:34:25,590 --> 00:34:29,730 programy spojené s jedním skřítka, se v jednom znaku, a zdá se, 729 00:34:29,730 --> 00:34:31,760 oni oba poběží jeden muž. 730 00:34:31,760 --> 00:34:35,570 Vzhledem k tomu, a to jak z těchto programů se spustí se kdy zelená vlajka kliknutí, je to 731 00:34:35,570 --> 00:34:38,650 naznačuje v pokročilejší téma, s které někteří z vás možná znát, 732 00:34:38,650 --> 00:34:40,580 známý jako závitů, nebo multi-threading. 733 00:34:40,580 --> 00:34:44,400 >> Ukázalo se, že dlouhý příběh krátký, počítače dnes může v podstatě dělat více 734 00:34:44,400 --> 00:34:45,270 věci najednou. 735 00:34:45,270 --> 00:34:48,659 Nebo si můžete udělat jednu věc najednou, takže rychle, že si ani nevšimnete, že 736 00:34:48,659 --> 00:34:50,150 je to vlastně jedním věc najednou. 737 00:34:50,150 --> 00:34:53,320 Ale teď, předpokládejme, že oba Tyto programy budou provádět v 738 00:34:53,320 --> 00:34:54,310 ve stejnou dobu. 739 00:34:54,310 --> 00:34:57,350 A oznámení, oba z nich mají navždy skládačky. 740 00:34:57,350 --> 00:35:01,270 Takže oni oba bude běžet dál až jsem narazila na červenou stopku. 741 00:35:01,270 --> 00:35:02,100 >> Takže to, co chtějí dělat? 742 00:35:02,100 --> 00:35:06,030 Na levé straně, já jsem zřejmě deklarování proměnné s názvem ztlumen. 743 00:35:06,030 --> 00:35:09,030 Takže jsem neměl říkat něco jako nuda jako N. jsem to nazval ztlumen to 744 00:35:09,030 --> 00:35:10,240 čas sdělit smysl. 745 00:35:10,240 --> 00:35:11,780 Nastavil jsem to rovna nule. 746 00:35:11,780 --> 00:35:16,200 Pojďme si o tom myslíte jako False, nebo pojďme si o tom jako False. 747 00:35:16,200 --> 00:35:17,490 >> Nyní navždy proveďte následující kroky. 748 00:35:17,490 --> 00:35:23,280 Je-li klávesnice v mezerníkem je stisknuto pak v případě, tlumené roven nule, 749 00:35:23,280 --> 00:35:25,930 změňte ztlumen na rovné jedné. 750 00:35:25,930 --> 00:35:27,580 Jinak nastavit ztlumen na nulu. 751 00:35:27,580 --> 00:35:30,530 Takže logicky, i když to je úplně banda dílků, které se nachází v 752 00:35:30,530 --> 00:35:33,160 Jen říkám, když jsem narazila na mezerník, Co mám dělat, aby se proměnná 753 00:35:33,160 --> 00:35:34,750 volal ztlumen? 754 00:35:34,750 --> 00:35:37,170 Změna z jedné na nulu, nebo nula až jedna. 755 00:35:37,170 --> 00:35:37,840 To je vše. 756 00:35:37,840 --> 00:35:40,740 Takže je to jako když se vypínač zapnutí nebo vypnutí a pamatovat si, s 757 00:35:40,740 --> 00:35:42,330 proměnné, které jsem udělal. 758 00:35:42,330 --> 00:35:45,990 >> Mezitím, na pravé straně, v Laicky řečeno, jaký je účel 759 00:35:45,990 --> 00:35:47,547 Skript na pravé straně? 760 00:35:47,547 --> 00:35:48,860 >> STUDENT: Chcete-li přehrát zvuk lachtan. 761 00:35:48,860 --> 00:35:52,500 >> DAVID Malan: Chcete-li přehrát zvuk Sea Lion, když není ztlumen, a 762 00:35:52,500 --> 00:35:53,480 Povaha této proměnné. 763 00:35:53,480 --> 00:35:57,360 Takže jsme sdílení stát, abych tak řekl, sdílení informací mezi těmito dvěma 764 00:35:57,360 --> 00:36:00,540 skripty, protože zjistíte zde jsme navždy následujícího postupu. 765 00:36:00,540 --> 00:36:04,620 Je-li ztlumen je nula, takže pokud to není ztlumen - li ztlumen je false, pak se hra 766 00:36:04,620 --> 00:36:05,980 to lachtan zvuk. 767 00:36:05,980 --> 00:36:09,930 A myslet na sebe, hi, hi, hi, pro dvě sekundy, chvíli počkejte a pak 768 00:36:09,930 --> 00:36:11,140 znovu zkontrolujte. 769 00:36:11,140 --> 00:36:15,150 Takže pokud teď půjdeme sem na levé straně, kde je ten chlap, a stiskně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 jakém okamžiku se to opravdu otravné? 773 00:36:31,910 --> 00:36:33,440 Vzhledem k tomu, bude to trvat věčně. 774 00:36:33,440 --> 00:36:36,490 Takže někdy, nekonečné smyčky, abych tak řekl, jsou úmyslné. 775 00:36:36,490 --> 00:36:41,140 Ale v tomto případě, jakmile jsem narazí na mezerník, on se zastaví. 776 00:36:41,140 --> 00:36:42,800 Nyní se program neukončí. 777 00:36:42,800 --> 00:36:44,760 Je to stále běží v těchto smyček. 778 00:36:44,760 --> 00:36:46,540 Ale když jsem si mezerníku znovu - 779 00:36:46,540 --> 00:36:47,851 >> [SEA LION SOUND] 780 00:36:47,851 --> 00:36:49,650 >> DAVID Malan: Bude se vybírat tam, kde on skončil. 781 00:36:49,650 --> 00:36:53,240 Takže je tam jeden způsob, jak nám to něco znovu a znovu, ale že 782 00:36:53,240 --> 00:36:54,920 čas, jen podmíněně. 783 00:36:54,920 --> 00:36:58,940 No, když už jsme v tomto duchu, jak dělat věci znovu a znovu, dovolte mi, abych 784 00:36:58,940 --> 00:37:01,370 jít do jiného takového příklad. 785 00:37:01,370 --> 00:37:04,370 Tenhle zavoláme počítání oveček. 786 00:37:04,370 --> 00:37:05,710 >> A všimněte si, co ten chlap dělá. 787 00:37:05,710 --> 00:37:08,540 Je to vlastně něco jako pseudokódu jsme hráli s na 788 00:37:08,540 --> 00:37:12,230 Středa, čímž se nastaví nějaký čítač, myslet na to, jak je N znovu, 789 00:37:12,230 --> 00:37:14,030 nula, se provede následující navždy. 790 00:37:14,030 --> 00:37:17,960 Říká pultu je hodnota pro jeden Za druhé, čeká druhé, a potom 791 00:37:17,960 --> 00:37:19,430 mění čítače o jedničku. 792 00:37:19,430 --> 00:37:21,570 A v této souvislosti, že právě znamená to krocích. 793 00:37:21,570 --> 00:37:23,250 Takže jeden přidá k ní. 794 00:37:23,250 --> 00:37:25,830 Tak tohle je doslova - 795 00:37:25,830 --> 00:37:27,890 že to není přesně to, co si myslíme, že jako počítání oveček. 796 00:37:27,890 --> 00:37:33,120 Je to ovce dělá počítání, navždy, a to až od nuly. 797 00:37:33,120 --> 00:37:35,560 >> Takže můžeme dělat podobné věci tam, logicky. 798 00:37:35,560 --> 00:37:37,750 Ale teď pojďme se snaží vyčistit některé z těchto věcí se. 799 00:37:37,750 --> 00:37:43,440 Nech mě jít napřed se do jednoduché Příkladem, kdy naše kočka se právě chystá 800 00:37:43,440 --> 00:37:44,750 začít kašlat. 801 00:37:44,750 --> 00:37:48,830 Dobře, takže tady máme kašel 0 - 802 00:37:48,830 --> 00:37:50,685 počítačoví odborníci začít počítání od 0. 803 00:37:50,685 --> 00:37:53,480 Tak tato kočka je jen tak kašlat třikrát. 804 00:37:53,480 --> 00:37:54,890 A tady je návod, jak jsem implementoval, že. 805 00:37:54,890 --> 00:38:00,130 Po klepnutí zelená vlajka, kašel, počkejte, kašel, počkat, kašel, počkejte. 806 00:38:00,130 --> 00:38:02,470 A já jsem to pouhým přetažením a přetažením dílků. 807 00:38:02,470 --> 00:38:04,740 Nebo když začnete vrtat Scratch, uvidíte, můžete skutečně 808 00:38:04,740 --> 00:38:08,620 duplicitní kousky, takže si můžete udělat věci rychleji bez přetahování 809 00:38:08,620 --> 00:38:10,310 a klesá reklamní nauseum. 810 00:38:10,310 --> 00:38:12,680 >> Ale my nejsme na nejlepší cestě sem. 811 00:38:12,680 --> 00:38:15,210 Vzhledem k tomu, jak mám udělat ho kašel počtvrté? 812 00:38:15,210 --> 00:38:16,790 No, mohl bych nějak jít sem. 813 00:38:16,790 --> 00:38:19,420 Mohl bych duplikovat a pak vložit to tam. 814 00:38:19,420 --> 00:38:21,740 Jak mohu ho kašlat popáté? 815 00:38:21,740 --> 00:38:23,230 No, zkopírujte a vložte znovu. 816 00:38:23,230 --> 00:38:24,210 Nebo přetáhněte kapka znovu. 817 00:38:24,210 --> 00:38:26,920 A velmi rychle, tento program spustí se opravdu, ale opravdu zbytečné, 818 00:38:26,920 --> 00:38:28,880 opravdu dlouho, ale opravdu nezajímavé. 819 00:38:28,880 --> 00:38:30,120 Ale je tu způsob, jak vyčistit to. 820 00:38:30,120 --> 00:38:33,680 Jaký je zřejmý způsob, K čištění se děje? 821 00:38:33,680 --> 00:38:36,280 >> OK, takže jsme mohli ve skutečnosti opravdu jít ven, a když narazí na prostor 822 00:38:36,280 --> 00:38:37,070 bar, nechat ho kašlat. 823 00:38:37,070 --> 00:38:40,150 Ale pokud chci něco udělat opakovaně, připomínají, že máme 824 00:38:40,150 --> 00:38:41,310 určitou kontrolu konstruuje. 825 00:38:41,310 --> 00:38:43,800 Dovolte mi, abych přesunout z cesta, jít pod kontrolu. 826 00:38:43,800 --> 00:38:47,340 Dovolte mi to opakovat, řekněme třikrát. 827 00:38:47,340 --> 00:38:49,410 A teď mi dovolte ukrást některé z těchto dílků. 828 00:38:49,410 --> 00:38:50,980 Dovolte mi, abych snap to tady. 829 00:38:50,980 --> 00:38:52,400 Nech mě vyhodit úplně. 830 00:38:52,400 --> 00:38:55,400 >> A teď mám lepší navržený program. 831 00:38:55,400 --> 00:38:55,920 Proč? 832 00:38:55,920 --> 00:39:00,540 Chci-li změnit počet opakování tato kočka kašle, vše, co mám 833 00:39:00,540 --> 00:39:05,640 udělat, je změnit jednu proměnnou, nebo jedna hodnota, spíše ze tří na čtyři, nebo 834 00:39:05,640 --> 00:39:06,700 pět, nebo šest. 835 00:39:06,700 --> 00:39:09,060 Nebo bych mohl něco udělat s výhradami, i, s prostorem 836 00:39:09,060 --> 00:39:10,320 bar, kdybych chtěl. 837 00:39:10,320 --> 00:39:11,780 >> Tak to je obecný princip. 838 00:39:11,780 --> 00:39:14,950 Jakmile začnete kopírování a vkládání kódu, ať už je to v scratch, případně ve 839 00:39:14,950 --> 00:39:18,340 C, děláte něco špatně, s největší pravděpodobností. 840 00:39:18,340 --> 00:39:21,950 Nebo alespoň, jakmile jste překročení některé přiměřené počty kopií a 841 00:39:21,950 --> 00:39:24,610 pasty, jste pravděpodobně něco nesprávného. 842 00:39:24,610 --> 00:39:26,740 >> Ale víte co? 843 00:39:26,740 --> 00:39:27,590 Já to opravdu takhle. 844 00:39:27,590 --> 00:39:28,980 To není nejčistší provedení. 845 00:39:28,980 --> 00:39:32,860 Přál bych si tam byl kousek puzzle s názvem kašel, protože pak bych to neudělal 846 00:39:32,860 --> 00:39:36,100 mít k provedení tohoto sám, postaru, podle 847 00:39:36,100 --> 00:39:38,220 co říkají, a čekat - 848 00:39:38,220 --> 00:39:40,320 co kdyby byli jen kašel skládačky. 849 00:39:40,320 --> 00:39:41,330 >> No, můžu vlastně dělat, že. 850 00:39:41,330 --> 00:39:45,010 Nech mě jít do více bloků, klepněte na tlačítko Proveďte blok, a teď jsem si to 851 00:39:45,010 --> 00:39:45,610 okno zde. 852 00:39:45,610 --> 00:39:47,540 Budu volat tuto věc kašel. 853 00:39:47,540 --> 00:39:49,400 Chystám se jít dál a klepněte na tlačítko OK. 854 00:39:49,400 --> 00:39:53,150 A nyní oznámení, mám nový počáteční kus, který je zakřivený na vrcholu. 855 00:39:53,150 --> 00:39:56,590 A co budu dělat s tím, že jsem bude krást těchto bloků. 856 00:39:56,590 --> 00:39:57,800 Chystám se dát je sem. 857 00:39:57,800 --> 00:40:00,490 >> A teď, s těmito třemi kousky, jsem realizován co budu volat 858 00:40:00,490 --> 00:40:03,530 funkce, nebo postup, nebo některé z možná víte, jako metody. 859 00:40:03,530 --> 00:40:05,050 Nepatrné rozdíly mezi slovy. 860 00:40:05,050 --> 00:40:06,950 Ale teď, řekněme, nazývají funkce. 861 00:40:06,950 --> 00:40:08,750 To je jen nový kousek skládačky. 862 00:40:08,750 --> 00:40:11,000 Nyní je prováděna takto. 863 00:40:11,000 --> 00:40:15,170 >> Ale zjistíte, že Scratch nám dal fyzické reprezentace, která celý 864 00:40:15,170 --> 00:40:16,570 blokovat sem. 865 00:40:16,570 --> 00:40:21,930 Takže teď můžu jen přetáhnout sem, říci, opakujte třikrát, a 866 00:40:21,930 --> 00:40:26,420 co se stane teď, když hraju Tento skript je pouze jeden program 867 00:40:26,420 --> 00:40:27,500 běží najednou. 868 00:40:27,500 --> 00:40:29,880 Je tu jen jeden, když zelená vlajka klikli. 869 00:40:29,880 --> 00:40:34,010 Ale to fialový blok nazvaný kašel účinně vyprávění Scratch, každý 870 00:40:34,010 --> 00:40:38,160 když vidíte, že kousek skládačky, ve skutečnosti provedení těchto kroků, které jsem 871 00:40:38,160 --> 00:40:40,420 stát provádět ručně. 872 00:40:40,420 --> 00:40:41,410 >> Tak to je docela elegantní. 873 00:40:41,410 --> 00:40:44,650 Ale teď, předpokládám, že jsem se rozhodl, já ne Chcete tuto kočku jen kašel. 874 00:40:44,650 --> 00:40:46,660 Chci, aby bylo možné kýchat stejně. 875 00:40:46,660 --> 00:40:48,905 No, jak bychom mohli jít o provádění kýchnout? 876 00:40:48,905 --> 00:40:51,310 Tak jsem mohl docela hodně to samé. 877 00:40:51,310 --> 00:40:52,690 Mohl bych udělat další blok. 878 00:40:52,690 --> 00:40:55,940 Mohl bych zavolat tuto kýchnutí, klepněte na tlačítko OK. 879 00:40:55,940 --> 00:40:59,250 >> Pak tady jsem mohl skutečně se, nech mě to duplicitní - 880 00:40:59,250 --> 00:41:02,850 a tam, kde byste měli pocit, že jste asi není něco v 881 00:41:02,850 --> 00:41:03,780 nejlepší způsob. 882 00:41:03,780 --> 00:41:06,670 Mohl bych říct něco jako: achoo, na jednu sekundu. 883 00:41:06,670 --> 00:41:07,440 Počkejte chvilku. 884 00:41:07,440 --> 00:41:08,715 Teď mám nový blok s názvem kýchnutí. 885 00:41:08,715 --> 00:41:10,210 A skutečně, tady to je. 886 00:41:10,210 --> 00:41:14,010 >> Ale i to by se měl začít cítit - možná ne první týden třídy, ale 887 00:41:14,010 --> 00:41:15,730 podle druhé - jen trochu nadbytečné. 888 00:41:15,730 --> 00:41:17,800 Je zřejmé, že tam je nějaký redundance zde. 889 00:41:17,800 --> 00:41:22,090 Takže mi dovolte navrhnout, namísto toho, že se zdokonalení této definice následovně. 890 00:41:22,090 --> 00:41:24,820 >> Nech mě jít k mému souboru menu. 891 00:41:24,820 --> 00:41:26,090 Nebudu uložit tuto verzi. 892 00:41:26,090 --> 00:41:29,080 Chystám se jít do jednoho z moje premade soubory zde. 893 00:41:29,080 --> 00:41:31,190 A já jdu do toho a otevřít kašel 2. 894 00:41:31,190 --> 00:41:32,220 Jejda, že je kašel 2. 895 00:41:32,220 --> 00:41:36,900 Nech mě jít dopředu a otevřít kašel 3, který je tento zdrojový adresář. 896 00:41:36,900 --> 00:41:42,450 Kašel 3 a všimněte si - ach, řekl jsem Příběh v nesprávném pořadí. 897 00:41:42,450 --> 00:41:45,030 Dovolte mi, abych zotavit se z tohoto příběhu. 898 00:41:45,030 --> 00:41:48,990 >> Příběh, který jsem chtěl říct, končí s kašlem 4 - 899 00:41:48,990 --> 00:41:50,270 tady to je. 900 00:41:50,270 --> 00:41:54,380 Tak co kdybych místo toho, definovat větší kus puzzle s názvem 901 00:41:54,380 --> 00:41:57,250 definovat, řekněte slovo n krát. 902 00:41:57,250 --> 00:41:59,930 Kýchání je jen, zdá se, V Scratch, achoo. 903 00:41:59,930 --> 00:42:01,680 Tak jsme to vyjádřit jako slovo, jen proto, že to je 904 00:42:01,680 --> 00:42:02,750 omezení programu. 905 00:42:02,750 --> 00:42:07,860 A kašel je [kašel], ale kašel, C-O-U-G-H. Tak to je jen dva 906 00:42:07,860 --> 00:42:10,820 různá slova tím, v podstatě, totéž. 907 00:42:10,820 --> 00:42:12,820 >> Tak jsem si skutečně vydělat nový blok takhle. 908 00:42:12,820 --> 00:42:14,220 Nechtěl jsem použít tuto možnost nabídky dříve. 909 00:42:14,220 --> 00:42:16,960 Ale když klepněte na tlačítko Vytvořit blok, si můžete vybrat několik možností. 910 00:42:16,960 --> 00:42:20,900 A můžete říci, že tento blok ve skutečnosti trvá několik vstupů, jinak 911 00:42:20,900 --> 00:42:24,710 známý jako parametr nebo parametry, tak že můžete změnit chování 912 00:42:24,710 --> 00:42:25,520 váš dům. 913 00:42:25,520 --> 00:42:28,780 >> Takže to, co jsem před chvílí byla Volal jsem tento blok Say. 914 00:42:28,780 --> 00:42:30,880 A pak jsem si řekl, že se string input. 915 00:42:30,880 --> 00:42:32,810 A teď nevšiml, ve výchozím nastavení, se říká, že řetězec 1. 916 00:42:32,810 --> 00:42:35,440 Řetězec je jen slovo, nebo fráze, pro naše účely. 917 00:42:35,440 --> 00:42:37,810 Ale já jsem prostě jít dát nějaký zástupný text tam, stejně jako v 918 00:42:37,810 --> 00:42:40,620 webové stránky, když vidíte, uživatelské jméno, nebo heslo a pak to zmizí, jakmile 919 00:42:40,620 --> 00:42:41,550 začnete psát. 920 00:42:41,550 --> 00:42:42,720 To je vše, co je. 921 00:42:42,720 --> 00:42:44,590 >> A teď jdu přidat číslo vstup. 922 00:42:44,590 --> 00:42:47,180 A budu to nazývat n - ale to je dost subjektivní. 923 00:42:47,180 --> 00:42:49,510 A pak už jen nálepka, jen aby tento blok trochu více do sebe 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, co jsem právě udělal. 926 00:42:53,010 --> 00:42:56,540 A konečný výsledek je, že jsem si blok, který vypadá takto. 927 00:42:56,540 --> 00:42:58,880 >> A teď nevšiml, jsem pomocí opakování bloku. 928 00:42:58,880 --> 00:43:03,480 Ale spíše než tvrdé kódování tři, já jsem přetažením n tam, tak jsem 929 00:43:03,480 --> 00:43:05,530 můžete nastavit parametry funkce. 930 00:43:05,530 --> 00:43:08,590 Můžu tuto funkci dělat něco jiný počet, kolikrát na základě 931 00:43:08,590 --> 00:43:09,410 tato hodnota. 932 00:43:09,410 --> 00:43:14,270 >> A všimněte si, řekněme, to je to, co jsem udělal tady, když jsem přetáhnout slovo, mohu říci ne 933 00:43:14,270 --> 00:43:17,860 pevně dané slovo, ale co je předán na dobu jedné sekundy. 934 00:43:17,860 --> 00:43:20,200 Mezitím, jak jsem si znovu implementovat kašel? 935 00:43:20,200 --> 00:43:26,980 Já místo toho definovat jako kašel říká kašel n-krát. 936 00:43:26,980 --> 00:43:30,480 >> Takže ve zkratce, já jdu přes to rychle, ale základní myšlenka je, jakmile 937 00:43:30,480 --> 00:43:32,750 jak začnete vidět ve svém programu že, počkej, co jsem udělal 938 00:43:32,750 --> 00:43:36,610 něco takového, jako dříve, mohu vytknout některé společné 939 00:43:36,610 --> 00:43:37,090 funkčnost? 940 00:43:37,090 --> 00:43:41,090 Mohu se rozkládají, co dělám do některých základních pojmů? 941 00:43:41,090 --> 00:43:42,070 To je to, co tu děláme. 942 00:43:42,070 --> 00:43:44,830 A já jsem stohovat tyto věci, vizuálně, nad sebou 943 00:43:44,830 --> 00:43:47,710 protože je to dokladem toho, že myšlenka počínaje binární, jít do ASCII, 944 00:43:47,710 --> 00:43:51,530 dělat grafické programy, druh vrstvení stále složitější myšlenky na 945 00:43:51,530 --> 00:43:52,570 nad sebou. 946 00:43:52,570 --> 00:43:53,730 >> Stejná myšlenka tady. 947 00:43:53,730 --> 00:43:56,870 Začal jsem od nuly, provádění kašel, pak si uvědomil, kašel je 948 00:43:56,870 --> 00:43:58,540 opravdu jen něco říká. 949 00:43:58,540 --> 00:44:01,630 Takže dovolte mi, abych místo toho zavést pojem něco říká. 950 00:44:01,630 --> 00:44:05,200 A navíc to, že mohu implementovat achoo, nebo kašel? 951 00:44:05,200 --> 00:44:07,990 A mohli bychom udělat víc jako varianty stále. 952 00:44:07,990 --> 00:44:10,400 >> Takže z tohoto základního principu, můžeme začít dělat 953 00:44:10,400 --> 00:44:12,180 stále složitějších programů. 954 00:44:12,180 --> 00:44:14,100 Dovolte mi otevřít tenhle. 955 00:44:14,100 --> 00:44:18,020 Můžeme skutečně mít více skřítky interakce na obrazovce najednou. 956 00:44:18,020 --> 00:44:23,470 Když jdu do svého zdrojového adresáře a urvat jeden volal témata, připomenout, že 957 00:44:23,470 --> 00:44:26,920 závit je jen opravdu schopnost dvou skriptů souběh 958 00:44:26,920 --> 00:44:28,350 straně současně. 959 00:44:28,350 --> 00:44:34,490 >> Všimněte si nyní, jak se pták sprite a kočka skřítek, z nichž oba mají 960 00:44:34,490 --> 00:44:35,270 vlastní skripty. 961 00:44:35,270 --> 00:44:37,690 Takže upozornění, když kliknu kočka, jsem si tyto skripty. 962 00:44:37,690 --> 00:44:39,830 Když kliknu na ptáka, Mám tyto skripty. 963 00:44:39,830 --> 00:44:42,070 Takže každý z těchto kluků má jeho vlastní programy. 964 00:44:42,070 --> 00:44:46,680 Když jsem se na zelenou vlajku, všimněte si, že to, co tento program dělá, je 965 00:44:46,680 --> 00:44:54,090 mají kočku, neuvěřitelně pomalu honit ptáka. 966 00:44:54,090 --> 00:44:57,120 Ale kočka má tu výhodu, že bude naprogramován tak, 967 00:44:57,120 --> 00:45:00,540 že bez ohledu na to, kde se pták je, že kočka jde k němu. 968 00:45:00,540 --> 00:45:02,150 >> Můžeme hrát tuto hru mnohem rychleji. 969 00:45:02,150 --> 00:45:07,750 Takže když jsem na kočky, všimněte si, že jsem pomocí, řekněme přesunout jeden kroky. 970 00:45:07,750 --> 00:45:11,680 Pojďme si ho přesunout pět kroků na čas, takže pět bodů najednou. 971 00:45:11,680 --> 00:45:13,580 Dovolte mi, abych Klepněte na tlačítko Přehrát. 972 00:45:13,580 --> 00:45:14,490 >> [LION řev] 973 00:45:14,490 --> 00:45:17,170 >> DAVID Malan: Dobře, teď můžeme opravdu dát kočce výhodu. 974 00:45:17,170 --> 00:45:18,600 10 kroků najednou. 975 00:45:18,600 --> 00:45:20,120 >> [LION řev] 976 00:45:20,120 --> 00:45:22,770 >> DAVID Malan: Dobře, takže velmi rychle, to je trochu výhodu 977 00:45:22,770 --> 00:45:23,280 pro kočku. 978 00:45:23,280 --> 00:45:25,310 Ale budu mávat na ruku některé detaily. 979 00:45:25,310 --> 00:45:28,240 Ale z důvodu, že tato cesta je začíná trochu jiný pokaždé 980 00:45:28,240 --> 00:45:29,700 je to, že dělám trochu náhodnosti. 981 00:45:29,700 --> 00:45:33,700 Já jsem vlastně ukázal na kočku jiným směrem podle toho, kde jsem 982 00:45:33,700 --> 00:45:38,710 ho chtějí začít, takže pokaždé, hry nebo animace, je 983 00:45:38,710 --> 00:45:39,760 trochu jinak. 984 00:45:39,760 --> 00:45:41,950 >> Nyní mi dovolte představit jeden další konstrukci zde. 985 00:45:41,950 --> 00:45:43,860 Takže v tomto případě mají stejnou funkci. 986 00:45:43,860 --> 00:45:46,950 Je tu také bude skládačky známý jako pole, nebo ze seznamu, 987 00:45:46,950 --> 00:45:50,980 , která umožňuje uložit více hodnoty uvnitř proměnné. 988 00:45:50,980 --> 00:45:53,410 Viděli jsme témata, a nyní je tu akce. 989 00:45:53,410 --> 00:45:56,330 >> Tak tady je událost pomocí tihle dva tady. 990 00:45:56,330 --> 00:46:02,490 A když otevřu soubor s názvem události z dnešních příkladech budeme 991 00:46:02,490 --> 00:46:06,940 viz program, který vypadá trochu jako je tento. 992 00:46:06,940 --> 00:46:09,630 A teď všimnout toho chlapa - 993 00:46:09,630 --> 00:46:11,620 tak všimnout mám modrý Muppet klikli - 994 00:46:11,620 --> 00:46:12,990 on jen dělá následující. 995 00:46:12,990 --> 00:46:15,540 On nemá jeden z těch zelená vlajka kousky puzzle. 996 00:46:15,540 --> 00:46:18,620 Má když obdržím událost - 997 00:46:18,620 --> 00:46:19,970 takže některé libovolné slovo. 998 00:46:19,970 --> 00:46:21,590 Jen jsem vyťukal akci zde - 999 00:46:21,590 --> 00:46:23,740 on řekne, Polo, po dobu dvou sekund. 1000 00:46:23,740 --> 00:46:25,800 >> Takže ti z vás, kteří jsou obeznámeni se tato hra by mohl vědět 1001 00:46:25,800 --> 00:46:26,460 , kam to směřuje. 1002 00:46:26,460 --> 00:46:29,800 Kdybych nyní klikněte na oranžové Muppet, jeho program dělá. 1003 00:46:29,800 --> 00:46:35,020 Forever, pokud je klávesnice mezerník potlačena, že se chystá říct, Marco, 1004 00:46:35,020 --> 00:46:36,580 po dobu dvou sekund na obrazovce. 1005 00:46:36,580 --> 00:46:39,590 Ale on také bude používat tento milovník zablokovat známé jako vysílání. 1006 00:46:39,590 --> 00:46:42,270 Bude se vysílat nabídku konec citátu, "událost". 1007 00:46:42,270 --> 00:46:47,540 >> Mezitím, modré chlap, odvolání, je poslouchat citátem unquote, "akce". 1008 00:46:47,540 --> 00:46:50,760 Tak nějak, teď, můžeme mít dva skřítci interakci. 1009 00:46:50,760 --> 00:46:53,790 A když se dostaneme do programování pro web, později v termínu, bude podobně jako tento 1010 00:46:53,790 --> 00:46:58,320 být výhodné mít své webové stránky něco v reakci na pro 1011 00:46:58,320 --> 00:47:00,130 instance, klepněte na tlačítko na klávesnici. 1012 00:47:00,130 --> 00:47:02,120 >> Tak mě nech jít dopředu a ťukat do mezerníku. 1013 00:47:02,120 --> 00:47:04,020 Orange chlap říká Marco. 1014 00:47:04,020 --> 00:47:05,840 Modrá chlap říká Polo. 1015 00:47:05,840 --> 00:47:10,780 Pokud se mi to znova oranžová chlap říká: Marco, modré chlap říká pólo. 1016 00:47:10,780 --> 00:47:14,130 Takže pojďme si to ještě o krok dále. 1017 00:47:14,130 --> 00:47:18,790 Tentokrát půjdeme, pravděpodobně jen pár minut zde. 1018 00:47:18,790 --> 00:47:19,904 Máme - 1019 00:47:19,904 --> 00:47:22,380 stolní lampa, pojď dolů. 1020 00:47:22,380 --> 00:47:24,500 Ty jsou přímo na konci. 1021 00:47:24,500 --> 00:47:25,740 OK, můžete i přijít. 1022 00:47:25,740 --> 00:47:26,990 Máme stolní lampy pro každého. 1023 00:47:26,990 --> 00:47:28,360 Tak pojď. 1024 00:47:28,360 --> 00:47:30,090 Nevím, jestli se nám podaří udržet tento směšný gag až 1025 00:47:30,090 --> 00:47:32,035 všechny semestr, ačkoli. 1026 00:47:32,035 --> 00:47:33,530 Dobře, pojď dolů. 1027 00:47:33,530 --> 00:47:40,260 >> A mezitím, máme na základě příkladů vytáhnout, jen proto, aby 1028 00:47:40,260 --> 00:47:45,370 urychlit věci se tak, že se mít projev z jiného 1029 00:47:45,370 --> 00:47:48,360 Předchůdcem vaše použití stejné základní stavební kameny. 1030 00:47:48,360 --> 00:47:48,975 Jak se jmenujete? 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, pokud chcete, aby se jako první, to je starý 1038 00:47:54,820 --> 00:47:55,910 Škola hrou s názvem Frogger. 1039 00:47:55,910 --> 00:47:57,530 Můžete používat klávesnici na to stejně. 1040 00:47:57,530 --> 00:48:02,425 A cílem je dostat na druhou 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 líto, ne stolní lampa pro vás dnes. 1043 00:48:14,970 --> 00:48:19,110 Dobře, Setz, byste chtěl jít nahoru? 1044 00:48:19,110 --> 00:48:20,890 Dobře, pojďme to udělat znovu. 1045 00:48:20,890 --> 00:48:21,430 >> Setz: Musím použít šipky? 1046 00:48:21,430 --> 00:48:22,360 >> DAVID Malan: Jen se šipkami. 1047 00:48:22,360 --> 00:48:23,624 Nahoru, dolů, vlevo, 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 jim útěcha ceny dnes, 1050 00:48:37,880 --> 00:48:38,950 pak velmi dobře. 1051 00:48:38,950 --> 00:48:40,690 Zde pro vás oba, Jana a Setz. 1052 00:48:40,690 --> 00:48:41,940 Gratulujeme, v pořádku. 1053 00:48:41,940 --> 00:48:46,720 1054 00:48:46,720 --> 00:48:50,620 Takže znovu, protože tato hra hraje, přemýšlet o tom, co se děje? 1055 00:48:50,620 --> 00:48:52,060 >> Za prvé, je tu zjevně hodně pohybu. 1056 00:48:52,060 --> 00:48:55,220 Ale my jsme viděli, jak s kočkou a pták příklad, jak můžete 1057 00:48:55,220 --> 00:48:58,350 iluze pohybu pouhým přesunutím některých počet pixelů znovu a znovu. 1058 00:48:58,350 --> 00:49:00,280 A pokud máte blok navždy, můžete mít tyto 1059 00:49:00,280 --> 00:49:02,120 auta dělá to navždy. 1060 00:49:02,120 --> 00:49:03,720 Máme schopnost nějakou náhodnost. 1061 00:49:03,720 --> 00:49:06,310 Takže tato hra nemusí být přesně stejný pokaždé. 1062 00:49:06,310 --> 00:49:09,940 Tyto protokoly, ty auta, lze zahájit mírně odlišné doby tak, aby se 1063 00:49:09,940 --> 00:49:12,690 Hra sama o sobě je mnohem zajímavější s každou hru. 1064 00:49:12,690 --> 00:49:15,320 >> A mezitím, co jsme viděli schopnost poslouchat mezerníkem. 1065 00:49:15,320 --> 00:49:18,830 Ale jasně, v Scratch, můžete také poslouchat nahoru, dolů, vlevo, vpravo, a 1066 00:49:18,830 --> 00:49:20,760 opravdu libovolné klávesy na klávesnici. 1067 00:49:20,760 --> 00:49:22,200 A také můžete udělat nějaké jiné věci. 1068 00:49:22,200 --> 00:49:24,660 Nech mě jít dopředu a zpět na webové verze. 1069 00:49:24,660 --> 00:49:30,280 >> Nech mě jít do naší sbírky z příkladů zde. 1070 00:49:30,280 --> 00:49:36,120 A pod mého ateliéru, video, která je v podstatě slož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 webové verze že všechny uvedené projekty. 1073 00:49:39,710 --> 00:49:42,530 A uvidíme, jestli můžu dostat můj počítač spolupracovat zde. 1074 00:49:42,530 --> 00:49:47,180 To je napsal jeden z našich přátel na MIT, tzv. Přesuňte Butterfly. 1075 00:49:47,180 --> 00:49:50,250 >> A jakmile se otevře, je bude skutečně používat více 1076 00:49:50,250 --> 00:49:51,430 mého počítače hardware. 1077 00:49:51,430 --> 00:49:53,325 Scratch se stane být provedena s Flash. 1078 00:49:53,325 --> 00:49:56,250 Flash může mluvit s vaší webové kamery, pokud máte jeden. 1079 00:49:56,250 --> 00:50:00,210 Takže když jsem se do toho pusťte a to na celou obrazovku , zde klikněte na zelené vlajky, oznámení 1080 00:50:00,210 --> 00:50:02,530 že Flash je zpráva zabezpečení říká, chceš 1081 00:50:02,530 --> 00:50:04,210 umožňují používat svůj webkameru? 1082 00:50:04,210 --> 00:50:05,510 >> Za normálních okolností byste měli asi řekl Odepřít. 1083 00:50:05,510 --> 00:50:07,180 Ale v tomto případě, řekněme dovolit. 1084 00:50:07,180 --> 00:50:10,430 Pak jsem ti to říct Chrome , aby to také. 1085 00:50:10,430 --> 00:50:15,010 A teď, za chvíli, Vidíš mě, jo, já. 1086 00:50:15,010 --> 00:50:18,154 A když moje ruka jde nahoru - 1087 00:50:18,154 --> 00:50:20,390 Musím se pohnout moje hlava ve stejnou dobu. 1088 00:50:20,390 --> 00:50:21,740 K dispozici je také odrazem na obrazovce. 1089 00:50:21,740 --> 00:50:23,480 Pojď, jdeme na to - 1090 00:50:23,480 --> 00:50:27,616 se můžete pohybovat na obrazovce, protože tam je také dílků - ach, ty 1091 00:50:27,616 --> 00:50:31,640 vědět, co to je, je to proto, že i vidět na obrazovce projektoru za mnou. 1092 00:50:31,640 --> 00:50:33,870 Takže máme trochu nekonečný co se tam děje. 1093 00:50:33,870 --> 00:50:36,470 >> Tak jo, budu hrát tady. 1094 00:50:36,470 --> 00:50:37,220 Tam jdeme. 1095 00:50:37,220 --> 00:50:41,310 Takže je tu také kousek puzzle, který říká, když vidíte pohyb pod 1096 00:50:41,310 --> 00:50:45,470 jeden ze skřítků, můžete si to jít nahoru, dolů, vlevo, vpravo a podobně. 1097 00:50:45,470 --> 00:50:48,950 Takže máme trochu virtuální reality děje i zde, vše v rámci 1098 00:50:48,950 --> 00:50:52,570 Omezuje mém prohlížeči, jen zde pomocí mé webové kamery. 1099 00:50:52,570 --> 00:50:53,980 Takže to, co je pak na obzoru. 1100 00:50:53,980 --> 00:50:58,350 Prvním problémem set, jak uvidíte, nebo webové stránky půjde on později 1101 00:50:58,350 --> 00:51:01,100 dnes večer v cs50.net, je dost Kolik bude na dobu neurčitou. 1102 00:51:01,100 --> 00:51:04,410 A realizovat projekt Scratch , které vás zajímají, hry, 1103 00:51:04,410 --> 00:51:08,350 interakce, něco umělecké, a rozhodnout, že si používat libovolný počet 1104 00:51:08,350 --> 00:51:09,660 z těchto dílků. 1105 00:51:09,660 --> 00:51:11,580 A to může být buď interaktivní tímto způsobem. 1106 00:51:11,580 --> 00:51:15,470 Nebo to může být něco víc úmyslně provedeny vyprávět příběh. 1107 00:51:15,470 --> 00:51:19,200 >> A vskutku, to je místo, kde skončíme off V současné době se jeden poslední příklad. 1108 00:51:19,200 --> 00:51:21,290 Nech mě jít do nuly na místě. 1109 00:51:21,290 --> 00:51:25,300 Nech mě jít dopředu a otevřít to a hrát jeden poslední program napsal jeden 1110 00:51:25,300 --> 00:51:29,795 svých předchůdců, a to že jeden zde. 1111 00:51:29,795 --> 00:51:32,960 1112 00:51:32,960 --> 00:51:35,938 Dobrá, zvýšení hlasitosti pro tento jeden. 1113 00:51:35,938 --> 00:52:53,770 >> [Přehrávání hudby] 1114 00:52:53,770 --> 00:52:57,255 >> Vypravěč: Na další CS50, David zve dobrovolníka na jevišti. 1115 00:52:57,255 --> 00:52:58,636 >> DAVID Malan: V této ukázce, budeme potřebovat jednoho dobrovolníka. 1116 00:52:58,636 --> 00:53:01,050 Chtěli byste jít dolů? 1117 00:53:01,050 --> 00:53:02,300 Jak se jmenujete? 1118 00:53:02,300 --> 00:53:05,320 1119 00:53:05,320 --> 00:53:06,570 Dál. 1120 00:53:06,570 --> 00:53:08,394