1 00:00:00,000 --> 00:00:11,050 2 00:00:11,050 --> 00:00:13,351 >> ROB BOWDEN: Jedná sa o pohodlnejšie časť, 3 00:00:13,351 --> 00:00:16,309 ale to neznamená, že ak máte pocit, že nie ste pohodlnejšie 4 00:00:16,309 --> 00:00:18,420 budete tu nie sú učiť veci. 5 00:00:18,420 --> 00:00:20,600 Tak poďme začať. 6 00:00:20,600 --> 00:00:22,819 Máte zábery ísť priamo do veci. 7 00:00:22,819 --> 00:00:24,360 Som asi len vziať práve teraz? 8 00:00:24,360 --> 00:00:25,680 9 00:00:25,680 --> 00:00:26,450 Prepínanie notebookov. 10 00:00:26,450 --> 00:00:30,470 11 00:00:30,470 --> 00:00:32,950 >> ALLISON: Nechcete, aby predstaviť seba, Robe? 12 00:00:32,950 --> 00:00:34,090 >> ROB BOWDEN: Oh, ja som Rob. 13 00:00:34,090 --> 00:00:35,182 14 00:00:35,182 --> 00:00:37,470 To je môj piaty rok TF-ing CS50. 15 00:00:37,470 --> 00:00:38,760 16 00:00:38,760 --> 00:00:39,650 >> GABRIEL: Som Gabriel. 17 00:00:39,650 --> 00:00:41,610 Som vedúci TF na CS50. 18 00:00:41,610 --> 00:00:44,009 Bol som TF vlani a tento rok. 19 00:00:44,009 --> 00:00:46,675 ALLISON: A ja som Alison, a to je môj druhý rok TF-ing CS50. 20 00:00:46,675 --> 00:00:48,510 21 00:00:48,510 --> 00:00:50,825 >> ROB BOWDEN: Tak jo, tá vec na ľavej strane, 22 00:00:50,825 --> 00:00:52,250 Dúfam, že som to nevidel. 23 00:00:52,250 --> 00:00:54,112 Ak tomu tak nie je, pretože vás stiahnite si ju pre seba, 24 00:00:54,112 --> 00:00:55,570 mali ste to vidieť v prednáške. 25 00:00:55,570 --> 00:00:56,590 26 00:00:56,590 --> 00:01:01,320 Tak toto je CS50 zariadenie, a to robil niečo z opisu toho 27 00:01:01,320 --> 00:01:01,880 v prednáške. 28 00:01:01,880 --> 00:01:06,890 Ale v podstate je to len vy používate operačný 29 00:01:06,890 --> 00:01:10,550 Systém priamo vo Vašej prevádzke systém, takže vám môžeme dať 30 00:01:10,550 --> 00:01:12,540 programy bez nutnosti strach, oh to je 31 00:01:12,540 --> 00:01:15,989 bude pracovať v oboch systémoch Windows a Mac, alebo v prípade, že niektorí z vás 32 00:01:15,989 --> 00:01:17,280 sú už používate Linux, Linux. 33 00:01:17,280 --> 00:01:18,532 34 00:01:18,532 --> 00:01:20,240 Je to len má byť spoločné hranie 35 00:01:20,240 --> 00:01:23,010 pole, takže každý má rovnaký presný prostredie. 36 00:01:23,010 --> 00:01:25,344 >> Takže ak nemáte stiahnuť to už, 37 00:01:25,344 --> 00:01:28,510 by ste mali stiahnuť, pretože ste bude potrebovať pre problémové sady. 38 00:01:28,510 --> 00:01:32,335 A to je dve GB k stiahnutiu, takže môže chvíľu trvať. 39 00:01:32,335 --> 00:01:33,780 Na Harvarde to pôjde rýchlo. 40 00:01:33,780 --> 00:01:35,870 41 00:01:35,870 --> 00:01:37,440 Tak CS50 spotrebiča. 42 00:01:37,440 --> 00:01:41,980 >> Teraz na začiatku, budeme hovoriť o len banda príkazového riadku 43 00:01:41,980 --> 00:01:46,880 veci, a to tým, že mám na mysli prácu V tomto malom prostredí tu. 44 00:01:46,880 --> 00:01:53,230 A všimnite si všetkých vecí Hovorím tu práve teraz 45 00:01:53,230 --> 00:01:56,900 budú fungovať, ak ste vo vnútri terminál vo vnútri spotrebiča, 46 00:01:56,900 --> 00:02:00,790 alebo ak ste vo vnútri okno terminálu gedit 47 00:02:00,790 --> 00:02:02,090 vo vnútri spotrebiča. 48 00:02:02,090 --> 00:02:03,770 Takže tieto prostredia sú identické. 49 00:02:03,770 --> 00:02:04,940 50 00:02:04,940 --> 00:02:07,270 >> Ale ja idem tretiu cestu. 51 00:02:07,270 --> 00:02:12,200 A všimnite si, tu to dole málo IP adresa tady. 52 00:02:12,200 --> 00:02:15,940 Takže nemusíte mať to urobiť, ale to IP 53 00:02:15,940 --> 00:02:19,700 address-- teraz, ak Já-- okrem je to blokované tejto veci. 54 00:02:19,700 --> 00:02:22,790 55 00:02:22,790 --> 00:02:27,000 OK, takže IP adresa viac ako v termináli 56 00:02:27,000 --> 00:02:31,090 here-- takže tento terminál cez Tu je terminál v mojom počítači Mac. 57 00:02:31,090 --> 00:02:34,540 Takže toto nie je v žiadnom prípade v súčasnosti spojená so spotrebičom vôbec. 58 00:02:34,540 --> 00:02:39,360 A ak ste na Windows, potom ste bude musieť stiahnuť niečo 59 00:02:39,360 --> 00:02:44,430 špeciálne pre to, najmä ľudia majú tendenciu používajú tmely, P-U-T-T-Y. 60 00:02:44,430 --> 00:02:50,700 >> Takže to, čo budem robiť, je typ SSH a potom, že IP adresa. 61 00:02:50,700 --> 00:02:54,030 No, jharvard na tejto IP adrese. 62 00:02:54,030 --> 00:03:00,150 Tak 192.168.24.220. 63 00:03:00,150 --> 00:03:02,127 Táto desivá správa, ignorujte ju. 64 00:03:02,127 --> 00:03:02,710 Stačí zadať áno. 65 00:03:02,710 --> 00:03:04,550 66 00:03:04,550 --> 00:03:06,030 To je CS50 v krabici. 67 00:03:06,030 --> 00:03:07,460 Sa spýta na heslo. 68 00:03:07,460 --> 00:03:11,910 >> A tak v mnohých z týchto kontextoch kde sa spýta na heslo [nepočuteľné]. 69 00:03:11,910 --> 00:03:15,670 Máme veľa otázok, kde hovorí, že to nie je vlastne písať. 70 00:03:15,670 --> 00:03:20,011 Nie je vám ukázať znaky heslo pri písaní, ak vôbec niečo, 71 00:03:20,011 --> 00:03:23,010 pre funkciu zabezpečenia, pretože ak niekto sa pozerá cez rameno 72 00:03:23,010 --> 00:03:25,870 a vidí star star star star, potom sa 73 00:03:25,870 --> 00:03:28,640 viete, že vaše heslo je štyri znaky. 74 00:03:28,640 --> 00:03:32,660 Takže myšlienka je, že sa bude pýtať od vás vaše heslo, typ. 75 00:03:32,660 --> 00:03:34,490 Nebude to ukázať budete znaky, 76 00:03:34,490 --> 00:03:36,090 ale to je vlastne prijatie. 77 00:03:36,090 --> 00:03:39,210 V tomto prípade, kedykoľvek vám niekedy videl výzvy na zadanie hesla 78 00:03:39,210 --> 00:03:42,280 zaoberajúca sa spotrebičom, Heslo bude červený. 79 00:03:42,280 --> 00:03:43,270 Tak karmínovo. 80 00:03:43,270 --> 00:03:44,730 81 00:03:44,730 --> 00:03:50,550 >> A teraz tu vnútri tejto okno, ktoré je v mojom počítači Mac, 82 00:03:50,550 --> 00:03:54,120 Ja som v podstate s presne rovnaký pohľad 83 00:03:54,120 --> 00:03:57,040 ako vnútri terminálu v spotrebiči. 84 00:03:57,040 --> 00:03:58,470 Takže nemusíte to urobiť. 85 00:03:58,470 --> 00:04:01,300 Môžete to urobiť všetko, čo Ak vo vnútri spotrebiča. 86 00:04:01,300 --> 00:04:05,140 Skoro som vlastne nikdy robiť niečo v prístroji. 87 00:04:05,140 --> 00:04:09,440 Aj takmer vždy minimalizovať, že teraz Pracujem SSH do prístroja. 88 00:04:09,440 --> 00:04:11,480 89 00:04:11,480 --> 00:04:14,180 >> Keby nič iné, ak máte máte pomalšiu počítač, 90 00:04:14,180 --> 00:04:15,820 môžete zaznamenať rozdiel. 91 00:04:15,820 --> 00:04:18,839 Robím to preto, že som radšej toto okno terminálu. 92 00:04:18,839 --> 00:04:20,881 To má niektoré funkcie, ako je Aj možno rozdeliť okno, 93 00:04:20,881 --> 00:04:22,672 a teraz môžem SSH cez spotrebiča. 94 00:04:22,672 --> 00:04:24,105 Dostal som dva SSH sa deje naraz. 95 00:04:24,105 --> 00:04:28,030 96 00:04:28,030 --> 00:04:32,250 Ak je váš počítač je obzvlášť pomaly a pracujete v zariadení, 97 00:04:32,250 --> 00:04:35,200 a uvedomíte si to Naozaj LaGGy, čokoľvek. 98 00:04:35,200 --> 00:04:38,220 Má tendenciu byť oveľa rýchlejší ak ste SSH-ed v. 99 00:04:38,220 --> 00:04:40,960 Ale inak môžete pracovať v oboch smeroch. 100 00:04:40,960 --> 00:04:42,388 >> Divákov: Čo SSH znamená? 101 00:04:42,388 --> 00:04:43,820 102 00:04:43,820 --> 00:04:47,479 >> ROB BOWDEN: Secure škrupiny, niečo také? 103 00:04:47,479 --> 00:04:48,270 Čo SSH znamená? 104 00:04:48,270 --> 00:04:54,214 105 00:04:54,214 --> 00:04:55,130 GABRIEL: Secure shell. 106 00:04:55,130 --> 00:04:56,463 ALLISON: Je to len Secure Shell. 107 00:04:56,463 --> 00:04:57,720 ROB BOWDEN: Secure shell. 108 00:04:57,720 --> 00:05:03,700 Je to protokol, ktorý you-- je to zabezpečený protokol, takže šifrované. 109 00:05:03,700 --> 00:05:06,850 Ľudia nemôžu odpočúvať sieť a čo hovoríš na čokoľvek 110 00:05:06,850 --> 00:05:08,120 ste SSH-ed na. 111 00:05:08,120 --> 00:05:12,900 A v skutočnosti, v dávny dni CS50, takže v roku 2009 112 00:05:12,900 --> 00:05:19,300 keď som bol v prvom ročníku, tak, že ste pracovali na CS50 problémové súpravy, 113 00:05:19,300 --> 00:05:22,490 Bol ste SSH-ed na nejaké servera že sme dali prístup k, 114 00:05:22,490 --> 00:05:23,497 a pracoval tam. 115 00:05:23,497 --> 00:05:25,330 Takže ste nemal tento grafické zariadenie. 116 00:05:25,330 --> 00:05:26,160 Nemusel si gedit. 117 00:05:26,160 --> 00:05:28,930 Nemusel ste všetky tieto veci, ktoré môžete vizuálne bod a kliknite na tlačidlo. 118 00:05:28,930 --> 00:05:30,346 Vy ste mali pracovať v tomto rozhraní. 119 00:05:30,346 --> 00:05:31,580 120 00:05:31,580 --> 00:05:33,716 Dávam prednosť práci v tomto rozhraní. 121 00:05:33,716 --> 00:05:36,090 Takže časť toho, čo budeme sa bude v priebehu práve teraz 122 00:05:36,090 --> 00:05:39,560 sú banda Príkazy, ktoré by ste mali 123 00:05:39,560 --> 00:05:42,095 začne sa zoznámiť s čo pochodu v priebehu. 124 00:05:42,095 --> 00:05:43,190 125 00:05:43,190 --> 00:05:45,790 A úprimne povedané, akonáhle sa zvyknúť si na ne, je to 126 00:05:45,790 --> 00:05:48,220 je tak oveľa rýchlejší práce v tomto prostredí 127 00:05:48,220 --> 00:05:53,690 ako to je pracovať s nálezcu, ťahaním a kliknutím veci. 128 00:05:53,690 --> 00:05:55,340 129 00:05:55,340 --> 00:05:57,210 >> Tak sme tu. 130 00:05:57,210 --> 00:06:01,779 Teraz už len SSH-ed in, a tak Predvolené vás location-- 131 00:06:01,779 --> 00:06:04,820 videl niektoré z týchto príkazov v triede, ale pôjdeme cez všetky z nich znovu. 132 00:06:04,820 --> 00:06:08,060 Predvolené umiestnenie sme v je domovský adresár. 133 00:06:08,060 --> 00:06:11,520 A adresár, rovnako iný výraz pre zložku. 134 00:06:11,520 --> 00:06:13,310 Takže sme v domovskom adresári. 135 00:06:13,310 --> 00:06:15,889 Typ LS, zoznam súborov v tomto adresári. 136 00:06:15,889 --> 00:06:17,430 Zrejme som vytvoril blah.c skôr. 137 00:06:17,430 --> 00:06:19,120 138 00:06:19,120 --> 00:06:20,472 Takže máme adresár na ploche. 139 00:06:20,472 --> 00:06:21,930 Všimnite si zvýrazňovanie syntaxe? 140 00:06:21,930 --> 00:06:27,400 141 00:06:27,400 --> 00:06:32,900 Svetlo modrá zvýraznenie indikuje adresár a rovný biely 142 00:06:32,900 --> 00:06:34,380 označuje len obyčajný súbor. 143 00:06:34,380 --> 00:06:35,410 144 00:06:35,410 --> 00:06:37,690 Takže tam sa bude niektoré ďalšie farby, ktoré vidíte. 145 00:06:37,690 --> 00:06:41,240 Spustiteľný súbor je pravdepodobne bude byť zelené alebo niečo také. 146 00:06:41,240 --> 00:06:44,820 OK, takže sme v domovskom adresári. 147 00:06:44,820 --> 00:06:48,970 >> Teraz, keď chcem ísť do inej adresár, cd je príkaz chcem. 148 00:06:48,970 --> 00:06:52,720 Takže zmeniť adresár, a potom odovzdať názov adresára 149 00:06:52,720 --> 00:06:54,020 že chcete ísť do. 150 00:06:54,020 --> 00:06:55,780 Takže tu máme štyri možnosti. 151 00:06:55,780 --> 00:07:03,397 Môžem ísť na sťahovanie, a teraz vidíme, tu to je aktualizovaná to vsuvka 152 00:07:03,397 --> 00:07:04,480 povedať, že som v ~ / k stiahnutiu. 153 00:07:04,480 --> 00:07:05,620 154 00:07:05,620 --> 00:07:06,800 >> Takže to, čo je tilda? 155 00:07:06,800 --> 00:07:10,640 Je to skratka pre domovský adresár. 156 00:07:10,640 --> 00:07:15,260 Takže takmer všetko, čo urobiť, je ísť na byť s ohľadom na vašom domovskom adresári, 157 00:07:15,260 --> 00:07:20,620 a pwd je len príkaz Ja používam raz za rok, že 158 00:07:20,620 --> 00:07:22,420 len vypíše aktuálny adresár. 159 00:07:22,420 --> 00:07:25,730 A tak tu vidíte, že ~ / Sťahovanie naozaj rieši 160 00:07:25,730 --> 00:07:26,896 do / home / jharvard / k stiahnutiu. 161 00:07:26,896 --> 00:07:29,320 162 00:07:29,320 --> 00:07:32,230 Tak / home / jharvard je môj domovský adresár. 163 00:07:32,230 --> 00:07:33,700 164 00:07:33,700 --> 00:07:39,400 >> Takže môžeme cd dot dot. 165 00:07:39,400 --> 00:07:47,800 Teraz dot dot je špeciálny adresár, ktorý vždy odkazuje na úroveň vyššie. 166 00:07:47,800 --> 00:07:51,730 Takže keď som v ~ / sťahovania, potom cd bodkou bodka sa chystá, aby ma na vlnovku. 167 00:07:51,730 --> 00:07:52,950 168 00:07:52,950 --> 00:07:55,490 Čo si myslíme, cd dot dot bude, aby ma teraz? 169 00:07:55,490 --> 00:07:58,740 170 00:07:58,740 --> 00:08:00,570 Je mi to prinesie do / home. 171 00:08:00,570 --> 00:08:04,450 Takže Tilda tlačou pracovného adresára, Som teraz / home / jharvard. 172 00:08:04,450 --> 00:08:06,060 173 00:08:06,060 --> 00:08:08,820 o úroveň vyššie z toho, Teraz hovorí, že tu / home. 174 00:08:08,820 --> 00:08:12,330 175 00:08:12,330 --> 00:08:17,180 >> Teraz cd dot dot. 176 00:08:17,180 --> 00:08:20,910 Teraz som v koreňovom adresári, a môžete to urobiť znova. 177 00:08:20,910 --> 00:08:23,340 Budete jednoducho zostať v koreňový adresár navždy. 178 00:08:23,340 --> 00:08:26,700 Koreňový adresár má veľa veci, ktoré, ak sa chcete pozrieť na, 179 00:08:26,700 --> 00:08:27,410 môžete. 180 00:08:27,410 --> 00:08:29,700 Napríklad, keď som ísť do koša, ktorý obsahuje 181 00:08:29,700 --> 00:08:35,789 všetky tieto binárne súbory, ako napríklad ls, a CD, a všetky tie veci. 182 00:08:35,789 --> 00:08:38,630 Takže tieto príkazy potrebujú existuje niekde v systéme, 183 00:08:38,630 --> 00:08:40,820 a to je v adresári / bin. 184 00:08:40,820 --> 00:08:44,530 Ale takmer všetko, čo robíte, je bude z vášho domovského adresára. 185 00:08:44,530 --> 00:08:49,490 A cd bez akýchkoľvek argumentov, by sa dalo povedať cd ~, nemusíte. 186 00:08:49,490 --> 00:08:51,810 cd sa chystá, aby vás späť do svojho domovského adresára. 187 00:08:51,810 --> 00:08:53,170 188 00:08:53,170 --> 00:08:54,230 >> Jedna posledná. 189 00:08:54,230 --> 00:09:00,200 cd - bude vás vráti späť do posledný adresár, ktorý ste v. 190 00:09:00,200 --> 00:09:04,080 Tak som cd'd dvakrát za sebou, tak my posledný adresár bol domovský adresár. 191 00:09:04,080 --> 00:09:11,520 Ak idem na lomítko bin, a teraz poďme hore a do používateľa. 192 00:09:11,520 --> 00:09:12,550 193 00:09:12,550 --> 00:09:13,280 Užívateľ podiel. 194 00:09:13,280 --> 00:09:14,840 195 00:09:14,840 --> 00:09:15,940 Poďme do užívateľského akciu. 196 00:09:15,940 --> 00:09:17,140 Teraz som teraz v užívateľskom akciu. 197 00:09:17,140 --> 00:09:19,320 CD -, späť do zásobníka. 198 00:09:19,320 --> 00:09:22,980 Takže sa to dostane obzvlášť užitočné keď have-- a to bude prepínať. 199 00:09:22,980 --> 00:09:25,660 Takže užívateľského podielu, zadné priehradky, podiel bin. 200 00:09:25,660 --> 00:09:27,250 >> Tak toto dostane užitočné. 201 00:09:27,250 --> 00:09:33,150 Môžete nájsť sami s mnohými, veľa, veľa vnorené adresáre. 202 00:09:33,150 --> 00:09:37,370 A chcete niečo urobiť naozaj rýchlo v hornej adresára. 203 00:09:37,370 --> 00:09:40,330 Idete do tohto adresára, skontrolujte, zmeny a veci ako to, 204 00:09:40,330 --> 00:09:42,400 a teraz chceš ísť späť na miesto, kde ste boli. 205 00:09:42,400 --> 00:09:43,660 cd -. 206 00:09:43,660 --> 00:09:47,320 Ja som vždy sklamaný keď som sa náhodou ísť 207 00:09:47,320 --> 00:09:49,630 do tohto adresára I chcel robiť prácu. 208 00:09:49,630 --> 00:09:52,670 Vždy som si frustrovaný, keď som to urobil to v dvoch krokoch namiesto jedného kroku, 209 00:09:52,670 --> 00:09:55,715 pretože to znamená, že CD - sa deje aby do tejto prechodnej umiestnenie 210 00:09:55,715 --> 00:09:57,010 Miesto, kde chcem ísť. 211 00:09:57,010 --> 00:09:59,350 212 00:09:59,350 --> 00:10:01,450 >> Vidíme teda všetky súbory v zozname. 213 00:10:01,450 --> 00:10:03,300 Vieme, ako sa dostať okolo tak ďaleko. 214 00:10:03,300 --> 00:10:09,900 Takže teraz poďme hovoriť o editáciu súborov. 215 00:10:09,900 --> 00:10:18,790 Takže v tomto kurze, ste skoro vždy očakáva, že budú gedit. 216 00:10:18,790 --> 00:10:24,410 Ak chcete, môžete si vziať ďalší krok a začnite sa učiť text príkazového riadku 217 00:10:24,410 --> 00:10:25,240 editor. 218 00:10:25,240 --> 00:10:27,560 Takže existujú rôzne možnosti. 219 00:10:27,560 --> 00:10:31,760 >> A tie, ktoré sú pravdepodobne Bude pre vás relevantné, 220 00:10:31,760 --> 00:10:35,340 máme Nano, Vim, Emacs a. 221 00:10:35,340 --> 00:10:40,196 Takže Nano je pre začiatočníkov príkazového riadku textový editor. 222 00:10:40,196 --> 00:10:42,985 Takže Nano poďme na blah.c som vytvoril skôr. 223 00:10:42,985 --> 00:10:44,030 224 00:10:44,030 --> 00:10:46,480 Je to práve táto norma C súbor. 225 00:10:46,480 --> 00:10:51,540 A vidíte, veľa vecí deje v spodnej časti obrazovky, 226 00:10:51,540 --> 00:10:54,100 a zrejme blah.c obsahuje tento kód C. 227 00:10:54,100 --> 00:10:55,420 228 00:10:55,420 --> 00:11:00,330 >> Takže v tomto konkrétnom editore, to, čo hovorí na bottom-- 229 00:11:00,330 --> 00:11:06,290 Teraz tento symbol strieška, Vidíme to ^ G, ^ x, ^ O. 230 00:11:06,290 --> 00:11:10,310 Tak, že takmer vo všetkých kontext, ktorý vidíte, 231 00:11:10,310 --> 00:11:13,530 môžete vidieť, že symbol striešky v ďalšie miesta on-line, na pretečenie zásobníka, 232 00:11:13,530 --> 00:11:14,450 niečo také. 233 00:11:14,450 --> 00:11:16,970 Je takmer vždy sa odkazuje na kontrolu. 234 00:11:16,970 --> 00:11:21,590 Takže ukončiť chcem robiť Control X. Control X, ukončí. 235 00:11:21,590 --> 00:11:22,750 236 00:11:22,750 --> 00:11:26,855 A môžem používať svoj šíp klávesy pre pohyb v okolí. 237 00:11:26,855 --> 00:11:28,010 238 00:11:28,010 --> 00:11:31,015 Všimnite si nemôžem bod a kliknite na tlačidlo rýchlo. 239 00:11:31,015 --> 00:11:33,000 240 00:11:33,000 --> 00:11:35,010 Musíte použiť šípky klávesy pre pohyb v okolí. 241 00:11:35,010 --> 00:11:36,950 Tam by mohlo byť nastavenie bod a kliknite na tlačidlo. 242 00:11:36,950 --> 00:11:40,000 >> Ale poďme urobiť nejaké zmeny. 243 00:11:40,000 --> 00:11:42,100 Teraz Control X ísť exit. 244 00:11:42,100 --> 00:11:44,120 Bude to hovoriť zmenený buffer. 245 00:11:44,120 --> 00:11:47,900 Teraz je výzva, y pre áno, n pre ne. 246 00:11:47,900 --> 00:11:49,900 Control C pre zrušenie. 247 00:11:49,900 --> 00:11:50,780 Budem len povedať, že áno. 248 00:11:50,780 --> 00:11:51,709 Meno zapísať súbor. 249 00:11:51,709 --> 00:11:53,500 Predvolené nastavenie je súbor že už je. 250 00:11:53,500 --> 00:11:54,230 Stlačte kláves Enter. 251 00:11:54,230 --> 00:11:54,740 OK. 252 00:11:54,740 --> 00:11:58,580 Teraz som len upravil tento súbor, chytá, a to sa zmení. 253 00:11:58,580 --> 00:11:59,770 254 00:11:59,770 --> 00:12:03,000 >> Takže Nano je najjednoduchšie textový editor zvyknúť. 255 00:12:03,000 --> 00:12:05,520 Alternatívy sú Vim a Emacs. 256 00:12:05,520 --> 00:12:11,250 Tí, ktorí sú textové editory vyššej úrovne ktoré majú veľmi strmé krivky učenia. 257 00:12:11,250 --> 00:12:13,740 Takže moje osobné preferencie je Vim. 258 00:12:13,740 --> 00:12:17,175 A má širokú škálu možností. 259 00:12:17,175 --> 00:12:18,210 260 00:12:18,210 --> 00:12:24,070 A akonáhle si zvyknete na to, už nikdy nebudete 261 00:12:24,070 --> 00:12:26,900 ísť do akejkoľvek inej textový editor, pretože ste práve 262 00:12:26,900 --> 00:12:29,590 toľko vecí pre vás k dispozícii v týchto, 263 00:12:29,590 --> 00:12:31,690 ale to sa naozaj dlho sa učiť. 264 00:12:31,690 --> 00:12:36,000 Takže možno si len chcete vynútiť si teraz zvyknúť na to, 265 00:12:36,000 --> 00:12:38,130 ale povedal by som, že to stojí za to. 266 00:12:38,130 --> 00:12:39,660 Ale je to ťažké. 267 00:12:39,660 --> 00:12:41,220 >> A potom Emacs. 268 00:12:41,220 --> 00:12:44,940 Vždy som bojovať v Emacsu, pretože Ja viem, ako to urobiť vôbec nič. 269 00:12:44,940 --> 00:12:47,755 Zrejme Emacs nie je v predvolenom nastavení nainštalovaný na zariadení. 270 00:12:47,755 --> 00:12:49,210 271 00:12:49,210 --> 00:12:51,720 Budeme asi dodať, že ako predvolené zariadenie. 272 00:12:51,720 --> 00:12:59,620 273 00:12:59,620 --> 00:13:02,390 Akonáhle sa naučíte jeden z Vim alebo Emacs, je tu 274 00:13:02,390 --> 00:13:04,810 žiadny presvedčivý dôvod niekedy učiť druhej, 275 00:13:04,810 --> 00:13:07,570 ale je to úplne iný štýl. 276 00:13:07,570 --> 00:13:10,460 OK, takže to editáciu textových súborov. 277 00:13:10,460 --> 00:13:13,374 >> Divákov: Ak ste sa zasekol vo Vim práve teraz, ako to we-- 278 00:13:13,374 --> 00:13:18,840 279 00:13:18,840 --> 00:13:20,800 >> ROB BOWDEN: Existuje viac režimov v Vim, 280 00:13:20,800 --> 00:13:23,770 a tam sú celá návody na učenie Vim. 281 00:13:23,770 --> 00:13:27,390 Takže ak ste náhodou v režime vkladania, aby 282 00:13:27,390 --> 00:13:29,930 na zadanie textu, ktoré si môžete zadanie, ktoré rôznymi spôsobmi, 283 00:13:29,930 --> 00:13:31,610 ale aj je, ako sa dostať do režimu vkladania. 284 00:13:31,610 --> 00:13:34,780 Alebo dostať sa z akejkoľvek zvláštne režim, ktorý ste v, len útek. 285 00:13:34,780 --> 00:13:37,640 A práve bash Escape dostať z prípadných vnorených režimov vaše v. 286 00:13:37,640 --> 00:13:40,360 Len OK, teraz som späť v normálnom režime. 287 00:13:40,360 --> 00:13:43,790 >> A tak v normálnom režime, hrubého čreva. 288 00:13:43,790 --> 00:13:45,160 Môžete vidieť, že sa objaví v dolnej časti. 289 00:13:45,160 --> 00:13:46,240 A potom q. 290 00:13:46,240 --> 00:13:52,600 Takže q ukončí, ak ste vykonali zmeny, ktoré Já-- som vykonal zmeny? 291 00:13:52,600 --> 00:13:54,180 Urobil som zmeny zrejme. 292 00:13:54,180 --> 00:13:57,264 Takže ak ste vykonali zmeny, bude to povedať si môžete dať výkričník. 293 00:13:57,264 --> 00:13:58,430 Budem to nazývať rana. 294 00:13:58,430 --> 00:14:02,040 Takže si môžete dať zákaz len opustiť bez toho, aby robili niečo, 295 00:14:02,040 --> 00:14:04,520 alebo hrubého čreva WQ ušetrí a ukončite. 296 00:14:04,520 --> 00:14:06,580 Tak w všeobecne je napísať. 297 00:14:06,580 --> 00:14:08,300 Takže zapísať súbor. 298 00:14:08,300 --> 00:14:09,810 Dokážem písať a ukončite. 299 00:14:09,810 --> 00:14:13,606 Alebo môžete mať len QX slam, q bang len 300 00:14:13,606 --> 00:14:16,230 dostať von bez ohľadu na o všetkých zmenách, ktoré ste vykonali. 301 00:14:16,230 --> 00:14:21,310 302 00:14:21,310 --> 00:14:28,940 >> Dobre, tak teraz poďme go-- môžeme vytvárať súbory. 303 00:14:28,940 --> 00:14:30,890 Začnime mazanie súborov. 304 00:14:30,890 --> 00:14:35,450 A ja si len hodiť do jedného rýchle nový príkaz, kliknite na. 305 00:14:35,450 --> 00:14:38,200 Takže dotknúť foo. 306 00:14:38,200 --> 00:14:39,340 Dotykový bar. 307 00:14:39,340 --> 00:14:40,220 Dotknite sa baz. 308 00:14:40,220 --> 00:14:42,810 Ak ls Aj teraz vidíme, že tieto súbory existujú. 309 00:14:42,810 --> 00:14:44,315 Sú to úplne prázdna. 310 00:14:44,315 --> 00:14:47,178 Takže touch je len jednoduchý spôsob, ako jeden, [nepočuteľné]. 311 00:14:47,178 --> 00:14:50,850 312 00:14:50,850 --> 00:14:54,640 Dva, technicky len stáť to, že aktualizuje časové pečiatky. 313 00:14:54,640 --> 00:14:58,470 Takže každý súbor, ktorý vytvoríte má časová pečiatka s ním spojené. 314 00:14:58,470 --> 00:15:01,330 Takže Baz bol vytvorený na 14 septembra v 16:21. 315 00:15:01,330 --> 00:15:02,570 316 00:15:02,570 --> 00:15:06,670 Teraz je 16:22, takže ak Znovu som sa dotknúť baz sme 317 00:15:06,670 --> 00:15:11,420 vidieť, že Baz bol najviac nedávno zmenená na 16:22. 318 00:15:11,420 --> 00:15:17,680 Ale inak som skoro nikdy pozrite sa na časové pečiatky na súbory. 319 00:15:17,680 --> 00:15:20,490 Tak kontaktu, tu som len pomocou to vytvoriť niekoľko rýchlych súbory. 320 00:15:20,490 --> 00:15:21,620 321 00:15:21,620 --> 00:15:27,400 >> Dobre, tak teraz rm je príkaz, ktorý nám záleží tu. 322 00:15:27,400 --> 00:15:28,665 A môžeme rm vypískať. 323 00:15:28,665 --> 00:15:31,000 Povedzme, že odstránenie pravidelné prázdny súbor vypískať. 324 00:15:31,000 --> 00:15:34,070 A môžeme písať y, a teraz je to Odstráni. 325 00:15:34,070 --> 00:15:34,850 rm Baz. 326 00:15:34,850 --> 00:15:35,910 327 00:15:35,910 --> 00:15:38,620 Odstrániť pravidelné prázdny súbor Baz a typ n pre ne. 328 00:15:38,620 --> 00:15:40,060 Teraz to nie je odstránený. 329 00:15:40,060 --> 00:15:41,240 Tak bar a baz stále existujú. 330 00:15:41,240 --> 00:15:42,232 Foo je preč. 331 00:15:42,232 --> 00:15:43,148 GABRIEL: Hovor. 332 00:15:43,148 --> 00:15:43,970 333 00:15:43,970 --> 00:15:44,720 ROB BOWDEN: Skvelé. 334 00:15:44,720 --> 00:15:45,800 335 00:15:45,800 --> 00:15:50,370 Tak nepríjemné správy tu, odstráňte pravidelné empty-- 336 00:15:50,370 --> 00:15:52,390 Čo to robíš tam dole? 337 00:15:52,390 --> 00:15:54,030 Odstrániť pravidelné prázdny súbor. 338 00:15:54,030 --> 00:15:58,840 339 00:15:58,840 --> 00:16:01,610 Takže ak nechceme byť Vadí tejto správe, 340 00:16:01,610 --> 00:16:05,340 môžeme hodiť v tomto -f vlajka, a tak to je sila. 341 00:16:05,340 --> 00:16:11,330 A teraz keď som rm -f, že to nebude povedať si, že chcete odstrániť tento súbor. 342 00:16:11,330 --> 00:16:12,040 Bude to jednoducho urobiť. 343 00:16:12,040 --> 00:16:13,720 A ls, nevidím bar tam už. 344 00:16:13,720 --> 00:16:14,810 345 00:16:14,810 --> 00:16:18,021 >> Teraz, keď je potenciálne nebezpečný príkaz. 346 00:16:18,021 --> 00:16:19,020 To nebýva príliš zlé. 347 00:16:19,020 --> 00:16:22,240 Vrátime sa do druhej, ako to môže dostať naozaj nebezpečné. 348 00:16:22,240 --> 00:16:28,740 A poďme vytvoriť nejaký dočasný adresár. 349 00:16:28,740 --> 00:16:30,880 mkdir, iný príkaz. 350 00:16:30,880 --> 00:16:34,880 Takže mkdir je príkaz že je adresár. 351 00:16:34,880 --> 00:16:40,650 A teraz ls vidíme tento pekný svetlo modro zvýraznené dočasný adresár. 352 00:16:40,650 --> 00:16:42,295 Môžem CD do temp. 353 00:16:42,295 --> 00:16:44,590 A môžem mkdir foo. 354 00:16:44,590 --> 00:16:46,330 cd do foo. mkdir bar. 355 00:16:46,330 --> 00:16:46,860 cd do baru. 356 00:16:46,860 --> 00:16:49,400 357 00:16:49,400 --> 00:16:54,300 >> Vidíme teda, môžeme ľahko dostať do pekne hlbokej vnorenia. 358 00:16:54,300 --> 00:16:56,385 Teraz, ako mám odstrániť adresár? 359 00:16:56,385 --> 00:16:57,020 360 00:16:57,020 --> 00:16:57,520 rmdir. 361 00:16:57,520 --> 00:16:59,030 362 00:16:59,030 --> 00:17:03,540 Takže keď som sa rovno skúsiť rm, ako sme to urobili s pravidelným súboru 363 00:17:03,540 --> 00:17:06,420 rm bar sa chystá povedať nemožno odstrániť bar. 364 00:17:06,420 --> 00:17:07,569 Jedná sa o adresár. 365 00:17:07,569 --> 00:17:10,619 Je tu špeciálny príkaz pre odstránenie adresára, druh. 366 00:17:10,619 --> 00:17:12,900 Tak rmdir bar. 367 00:17:12,900 --> 00:17:13,710 Teraz bar je preč. 368 00:17:13,710 --> 00:17:14,980 369 00:17:14,980 --> 00:17:22,680 >> OK, takže rmdir som skoro nikdy použiť. 370 00:17:22,680 --> 00:17:32,220 Dôvodom being-- Teraz sa poďme vytvoriť obyčajný súbor bar tu. 371 00:17:32,220 --> 00:17:34,780 Tak rmdir boo. 372 00:17:34,780 --> 00:17:35,760 rmdir. 373 00:17:35,760 --> 00:17:36,900 Nepodarilo sa odstrániť foo. 374 00:17:36,900 --> 00:17:38,420 Adresár nie je prázdny. 375 00:17:38,420 --> 00:17:43,420 Takže nemôžete použiť odstrániť dir na Adresár, ktorý má veci v ňom. 376 00:17:43,420 --> 00:17:44,830 >> Takže máte niekoľko možností. 377 00:17:44,830 --> 00:17:49,780 Môžete ísť do tohto adresára, odstrániť všetko ručne a potom vyjdú 378 00:17:49,780 --> 00:17:51,759 a rmdir adresár. 379 00:17:51,759 --> 00:17:53,050 To samozrejme znie nepríjemné. 380 00:17:53,050 --> 00:17:55,000 Čo keď sú tisíce súborov v tam? 381 00:17:55,000 --> 00:17:58,119 No, mohol by si rm *. 382 00:17:58,119 --> 00:17:59,410 Porozprávame sa o * v druhom. 383 00:17:59,410 --> 00:18:00,870 To v podstate znamená, všetky tie veci. 384 00:18:00,870 --> 00:18:02,030 385 00:18:02,030 --> 00:18:05,470 Ale ešte lepšie, tak rm -r. 386 00:18:05,470 --> 00:18:10,220 Takže rm -r-- v mnohých kontexty, -r znamená rekurzívne, 387 00:18:10,220 --> 00:18:13,810 ktoré budeme hovoriť o tom, čo rekurzívne prostriedky v niekoľkých týždňov. 388 00:18:13,810 --> 00:18:18,630 Ale je to v podstate znamená posuv celistvosť tohto adresára 389 00:18:18,630 --> 00:18:20,190 a odstrániť všetko. 390 00:18:20,190 --> 00:18:24,420 >> Takže rm -r foo bude hovoriť zostúpiť do adresára foo? 391 00:18:24,420 --> 00:18:25,210 Áno. 392 00:18:25,210 --> 00:18:26,800 Odstrániť pravidelné prázdny súbor foo / bar? 393 00:18:26,800 --> 00:18:27,880 394 00:18:27,880 --> 00:18:28,540 Áno. 395 00:18:28,540 --> 00:18:29,760 Odstráňte adresár foo? 396 00:18:29,760 --> 00:18:30,260 Áno. 397 00:18:30,260 --> 00:18:31,470 398 00:18:31,470 --> 00:18:35,020 Takže teraz foo a všetko v nej bola odstránená. 399 00:18:35,020 --> 00:18:42,370 >> Teraz, keď môžete získať obzvlášť nepríjemné when-- poďme dotknúť 1, stlačte tlačidlo 2, stlačte 3. 400 00:18:42,370 --> 00:18:44,400 Môže mať veľa súborov. 401 00:18:44,400 --> 00:18:49,060 Keby som chcel, mohol by som vytvoriť tisíce súborov tu. 402 00:18:49,060 --> 00:18:53,340 A rm -r foo sa deje byť dosť nepríjemné. 403 00:18:53,340 --> 00:18:55,374 Áno, áno, áno, áno, áno, áno. 404 00:18:55,374 --> 00:18:57,540 S oveľa viac súborov, ktoré rýchlo zistiť, koľkokrát 405 00:18:57,540 --> 00:18:58,581 Budem musieť písať áno. 406 00:18:58,581 --> 00:19:02,265 No, práve sme videli skôr, ako môžeme zbaviť nutnosti písať áno, -f. 407 00:19:02,265 --> 00:19:03,330 408 00:19:03,330 --> 00:19:07,020 Takže mkdir foo foo cd touch 1 2 3. 409 00:19:07,020 --> 00:19:08,380 410 00:19:08,380 --> 00:19:17,190 OK, tak rm -rf foo bude slepo odstrániť úplne foo. 411 00:19:17,190 --> 00:19:17,960 Žiadna výzva. 412 00:19:17,960 --> 00:19:18,650 No nič. 413 00:19:18,650 --> 00:19:20,040 Foo je preč. 414 00:19:20,040 --> 00:19:23,830 >> Tak mám tendenciu použiť Príkaz po celú dobu. 415 00:19:23,830 --> 00:19:25,120 416 00:19:25,120 --> 00:19:27,830 To znamená, že, že je veľmi nebezpečný príkaz, 417 00:19:27,830 --> 00:19:33,240 pretože keby som niečo také to, nebude to výzva. 418 00:19:33,240 --> 00:19:34,730 Bude preč. 419 00:19:34,730 --> 00:19:40,140 A to sa stáva dosť často, a dokonca aj na vyššej úrovni kurzov UO. 420 00:19:40,140 --> 00:19:42,070 Niekedy sa uvidíme niečo, kde niekto 421 00:19:42,070 --> 00:19:48,360 hovorí, že som omylom naše rm rf-ed môj domov adresár a všetky moje P súpravy je preč. 422 00:19:48,360 --> 00:19:52,422 A je to zničujúce, ale nie je odpadkový kôš. 423 00:19:52,422 --> 00:19:54,380 Neexistuje nič pre vás získať. 424 00:19:54,380 --> 00:19:55,330 Je to proste preč. 425 00:19:55,330 --> 00:19:56,529 426 00:19:56,529 --> 00:19:58,320 Ešte horšie by bolo niečo ako rm -rf /. 427 00:19:58,320 --> 00:19:59,432 428 00:19:59,432 --> 00:20:01,140 Tak sme len diskutovali že koreňový adresár. 429 00:20:01,140 --> 00:20:03,095 To si myslia všetci súbory na vašom systéme. 430 00:20:03,095 --> 00:20:04,120 431 00:20:04,120 --> 00:20:07,380 Veci majú tendenciu byť dosť chaotický pri odobratí veci ako ls, 432 00:20:07,380 --> 00:20:10,280 a CD, a všetky z nich. 433 00:20:10,280 --> 00:20:15,467 >> Divákov: Aký je rozdiel medzi RM, rf, a rm * 434 00:20:15,467 --> 00:20:16,300 ROB BOWDEN: Takže rm * - 435 00:20:16,300 --> 00:20:17,700 436 00:20:17,700 --> 00:20:22,300 >> ALLISON: Otázka je to, čo je Rozdiel medzi RM, rf a rm *. 437 00:20:22,300 --> 00:20:23,750 438 00:20:23,750 --> 00:20:25,950 >> ROB BOWDEN: Tak rm *. 439 00:20:25,950 --> 00:20:31,910 Hviezda všeobecne znamená, že všetky Obsah tohto adresára. 440 00:20:31,910 --> 00:20:33,540 441 00:20:33,540 --> 00:20:35,540 Snažím sa myslieť na druhej spôsoby ukazuje hviezdu. 442 00:20:35,540 --> 00:20:38,280 443 00:20:38,280 --> 00:20:44,780 No, hrať vlastne všeobecne znamená, zodpovedajú akémukoľvek vzoru. 444 00:20:44,780 --> 00:20:54,930 Takže ak mám súbor s názvom dog1, dotknúť dog2, stlačte CAT1, dotknite sa kategórie 2. 445 00:20:54,930 --> 00:20:56,050 446 00:20:56,050 --> 00:21:02,110 Takže ls * 1 bude tlačiť CAT1 a dog1, pretože to hviezda môže byť vyplnená 447 00:21:02,110 --> 00:21:06,270 v with-- je potrebné, aby sa tam, ale hviezda môže byť buď mačka alebo pes. 448 00:21:06,270 --> 00:21:07,247 Je to divoká karta. 449 00:21:07,247 --> 00:21:08,580 To je slovo, Zháňam. 450 00:21:08,580 --> 00:21:09,120 Divoká karta. 451 00:21:09,120 --> 00:21:10,180 452 00:21:10,180 --> 00:21:13,960 Alebo by som mohol ls pes *, a Ja mám vidieť dog1, dog2. 453 00:21:13,960 --> 00:21:16,870 Takže tie sa zoznam súborov ktoré zodpovedajú konkrétny vzor. 454 00:21:16,870 --> 00:21:18,150 Môžete použiť ls týmto spôsobom. 455 00:21:18,150 --> 00:21:19,350 456 00:21:19,350 --> 00:21:22,020 >> Ls * hviezda zápasu nič. 457 00:21:22,020 --> 00:21:25,710 Takže to bude tlačiť všetky Obsah tohto adresára 458 00:21:25,710 --> 00:21:27,290 pretože všetky ich priradenie. 459 00:21:27,290 --> 00:21:30,130 To nebude tlačiť čokoľvek v hornej úrovni adresárov. 460 00:21:30,130 --> 00:21:38,680 Mám Ak podadresár, foo a dotknúť 1 2 3-- tak teraz, ak rm * hviezdičkou, 461 00:21:38,680 --> 00:21:41,450 odstrániť CAT1, kategória 2, dog1, dog2. 462 00:21:41,450 --> 00:21:42,340 Nemožno odstrániť foo. 463 00:21:42,340 --> 00:21:43,090 Jedná sa o adresár. 464 00:21:43,090 --> 00:21:43,920 465 00:21:43,920 --> 00:21:50,340 >> Tak hviezda expanduje na všetky súborov v adresári. 466 00:21:50,340 --> 00:21:55,210 Takže technicky rm * je ako tvrdiť, že rm CAT1, CAT2, dog1, dog2, foo. 467 00:21:55,210 --> 00:22:03,630 Vzhľadom k tomu, rm -rf, technicky hviezda by dosiahnuť to, čo chceme, ale rm -rf-- 468 00:22:03,630 --> 00:22:06,090 keď pôjdem z toho adresár, rm -rf temp, 469 00:22:06,090 --> 00:22:08,890 že pôjde do temp a rekurzívne odstrániť všetko. 470 00:22:08,890 --> 00:22:11,260 471 00:22:11,260 --> 00:22:21,060 >> Takže hviezda je oddelené v tom, že Je zrejmé, by-- tak túto vec 472 00:22:21,060 --> 00:22:25,090 že bežím na to, čo ktorá je výzvou pre mňa príkazy 473 00:22:25,090 --> 00:22:28,770 a potom sa vykonávania a robí je, hovorím to môj shell. 474 00:22:28,770 --> 00:22:31,930 A tak to shell je sám program. 475 00:22:31,930 --> 00:22:35,010 A keby som chcel, som mohol bežať v / bin / bash. 476 00:22:35,010 --> 00:22:36,930 Shell sa nazýva bash. 477 00:22:36,930 --> 00:22:39,340 A teraz sme si všimli niečoho mierne zmenil, 478 00:22:39,340 --> 00:22:42,200 a to preto, že moje nastavenia shell sú trochu odlišné. 479 00:22:42,200 --> 00:22:45,415 >> Ale teraz som technicky beh shell v mojom pôvodnom obale, 480 00:22:45,415 --> 00:22:49,570 a môžem opustiť tento shell, a teraz Vrátil som sa k môjmu najvyššej úrovni shellu. 481 00:22:49,570 --> 00:22:55,240 Účelom hovorí že je-- hviezdu. 482 00:22:55,240 --> 00:22:59,020 Takže hviezda je niečo, rozumie bash. 483 00:22:59,020 --> 00:23:04,260 Takže rm -rf, -rf vlajka je rozumie len rm. 484 00:23:04,260 --> 00:23:06,380 Vie, že keď vás prejsť -rf, ktoré vás 485 00:23:06,380 --> 00:23:09,520 chcem, aby to rekurzívne odstrániť všetky súbory bez výzvy na potvrdenie. 486 00:23:09,520 --> 00:23:13,960 Hviezda je niečo pochopil, o bash, že keď hovoríte rm *, 487 00:23:13,960 --> 00:23:16,890 bash nebude hovoriť hey rm *, odstráňte hviezdičku. 488 00:23:16,890 --> 00:23:21,010 Bash sa povie rm * odstrániť CAT1, kategória 2, dog1, dog2. 489 00:23:21,010 --> 00:23:24,305 Je to automaticky bude rozširovať všetky súbory v adresári. 490 00:23:24,305 --> 00:23:29,100 491 00:23:29,100 --> 00:23:33,140 >> A podobne tilda ďalšie symbol, ktorý bash rozumie. 492 00:23:33,140 --> 00:23:37,130 Keď sa povie cd ~ bash rozširuje že do vášho domovského adresára. 493 00:23:37,130 --> 00:23:38,910 494 00:23:38,910 --> 00:23:40,210 Ďalšie otázky tak ďaleko? 495 00:23:40,210 --> 00:23:42,760 496 00:23:42,760 --> 00:23:46,060 OK, takže budeme začať chodiť rýchlo. 497 00:23:46,060 --> 00:23:47,700 498 00:23:47,700 --> 00:23:48,545 >> Dokončenie Tab. 499 00:23:48,545 --> 00:23:49,670 Stačí hodiť to tam. 500 00:23:49,670 --> 00:23:51,530 Mnoho ľudí nie realizovať tento existuje. 501 00:23:51,530 --> 00:23:55,060 Takže keď som typ cd Dow, I chcem ísť do sekcie downloads. 502 00:23:55,060 --> 00:23:56,700 Nepotrebujem písať nloads. 503 00:23:56,700 --> 00:23:57,960 504 00:23:57,960 --> 00:24:00,770 Môžem len hit Tab. 505 00:24:00,770 --> 00:24:03,794 Tak uznáva, že dow je predpona, ktorá 506 00:24:03,794 --> 00:24:05,710 nezodpovedá nič inde v tomto adresári, 507 00:24:05,710 --> 00:24:07,520 tak to bude kompletný, že pre vás. 508 00:24:07,520 --> 00:24:08,610 Teraz môžem vstúpiť. 509 00:24:08,610 --> 00:24:10,110 >> Tiež som robiť, že rekurzívne. 510 00:24:10,110 --> 00:24:11,205 Tak mkdir foo. 511 00:24:11,205 --> 00:24:12,480 512 00:24:12,480 --> 00:24:13,300 Poďme do foo. 513 00:24:13,300 --> 00:24:14,830 mkdir bar. 514 00:24:14,830 --> 00:24:17,345 Takže ísť späť do môjho domu adresáre, vidím súbory na prevzatie. 515 00:24:17,345 --> 00:24:19,040 516 00:24:19,040 --> 00:24:21,860 Teraz kartu znova biť, automaticky chystá vyplniť foo. 517 00:24:21,860 --> 00:24:22,880 Je to jediný adresár. 518 00:24:22,880 --> 00:24:25,340 Kartu znova biť, automaticky chystá vyplniť baru. 519 00:24:25,340 --> 00:24:26,798 Takže teraz som v (~ k stiahnutiu / foo / bar). 520 00:24:26,798 --> 00:24:27,310 521 00:24:27,310 --> 00:24:31,692 >> Tak toto doplňovanie pomocou klávesy TAB, keď som sa dostal do pracovného času, 522 00:24:31,692 --> 00:24:33,400 a ja som stál nad niečí rameno, 523 00:24:33,400 --> 00:24:40,470 a idú rm D-O-W-N-L-O-D-S, umieram. 524 00:24:40,470 --> 00:24:41,990 Len kartu, kartu, kartu, kartu. 525 00:24:41,990 --> 00:24:44,550 526 00:24:44,550 --> 00:24:45,630 Kartu tak určite použiť. 527 00:24:45,630 --> 00:24:47,890 528 00:24:47,890 --> 00:24:49,840 A podobne a dole, veľa ľudí 529 00:24:49,840 --> 00:24:51,930 práve to sa stalo nikdy hit hore a dole. 530 00:24:51,930 --> 00:24:54,870 Bude to prejsť predchádzajúce príkazy, takže ak ste práve spustili niečo, 531 00:24:54,870 --> 00:24:58,300 a chcete ho spustiť znova, len držať, až sa dostanete k nej. 532 00:24:58,300 --> 00:24:59,870 533 00:24:59,870 --> 00:25:00,370 OK. 534 00:25:00,370 --> 00:25:01,460 535 00:25:01,460 --> 00:25:03,585 >> Tak rýchlo, niektoré ďalšie veci. 536 00:25:03,585 --> 00:25:04,800 537 00:25:04,800 --> 00:25:05,930 Poďme späť do temp. 538 00:25:05,930 --> 00:25:06,976 539 00:25:06,976 --> 00:25:08,125 Poďme vytvoriť niektoré súbory. 540 00:25:08,125 --> 00:25:10,480 541 00:25:10,480 --> 00:25:15,215 Takže tu, ja som len ísť na zoznam pár slov. 542 00:25:15,215 --> 00:25:18,460 543 00:25:18,460 --> 00:25:21,035 pes, mačka, mňau. 544 00:25:21,035 --> 00:25:23,940 545 00:25:23,940 --> 00:25:26,040 Poďme robiť psa, ryby. 546 00:25:26,040 --> 00:25:27,500 547 00:25:27,500 --> 00:25:32,320 Takže teraz rep je veľmi užitočné príkazy, ktoré ste 548 00:25:32,320 --> 00:25:37,820 slúži na vyhľadávanie v celom súbory pre konkrétny znení, 549 00:25:37,820 --> 00:25:40,910 a technicky môžete urobiť naozaj komplexné výrazy pre to, aby zodpovedala. 550 00:25:40,910 --> 00:25:44,830 >> Tak tu, keď som grep, a to, čo chcem vyhľadať? 551 00:25:44,830 --> 00:25:49,130 Povedzme, že som hľadal mačky, a Chcem vyhľadávať všetky tieto súbory. 552 00:25:49,130 --> 00:25:50,650 Tak ako to mám urobiť všetky tieto súbory? 553 00:25:50,650 --> 00:25:51,900 Hviezda. 554 00:25:51,900 --> 00:25:54,939 Takže jeden súbor, mám mačku. 555 00:25:54,939 --> 00:25:56,980 Asi som mohol mať volal to niečo lepšie, 556 00:25:56,980 --> 00:25:59,063 pretože to vyzerá ako čísla riadkov alebo niečo. 557 00:25:59,063 --> 00:26:01,590 Ale v jednom súbore mám linku s mačkou. 558 00:26:01,590 --> 00:26:04,160 V súbore dvoch mám linku s mačkou. 559 00:26:04,160 --> 00:26:07,280 Takže teraz môžem pozrieť do jedného súboru a vidieť ach jo, že súbor robil mať mačku. 560 00:26:07,280 --> 00:26:10,210 Oznámenia súbor troch nebolo uzavreté pretože mačka nie je tam. 561 00:26:10,210 --> 00:26:13,882 Môžem grep pre mňau. 562 00:26:13,882 --> 00:26:14,840 Podať iba dve má mňau. 563 00:26:14,840 --> 00:26:16,120 564 00:26:16,120 --> 00:26:20,640 >> Takže to môžete kombinovať, opäť, s -r, ktorý 565 00:26:20,640 --> 00:26:23,580 ako som už povedal skôr často znamená rekurzívne. 566 00:26:23,580 --> 00:26:29,800 A tak som si sem hore, grep -r pre of-- akékoľvek inštancie poďme upraviť 567 00:26:29,800 --> 00:26:32,010 tohle len hodiť mačku tam. 568 00:26:32,010 --> 00:26:38,800 Takže grep -r pre každú inštanciu mačka na celom tomto adresári. 569 00:26:38,800 --> 00:26:41,600 A to bude rekurzívne vyhľadať všetky podadresáre. 570 00:26:41,600 --> 00:26:43,940 Takže Baz, je to mačka. 571 00:26:43,940 --> 00:26:45,570 V temp / 2, je to mačka. 572 00:26:45,570 --> 00:26:47,960 A v temp / 1 tam je mačka. 573 00:26:47,960 --> 00:26:50,045 Tak to je vyhľadávanie v súboroch. 574 00:26:50,045 --> 00:26:51,250 575 00:26:51,250 --> 00:26:55,090 >> Teraz môžete použiť tiež nález. 576 00:26:55,090 --> 00:26:59,640 A tak si ich konkrétne o hľadať súbory s krstným menom. 577 00:26:59,640 --> 00:27:02,490 Takže poďme sa ešte viac. 578 00:27:02,490 --> 00:27:03,660 Poďme do sťahovania. 579 00:27:03,660 --> 00:27:04,680 580 00:27:04,680 --> 00:27:05,380 Dotknite dog1. 581 00:27:05,380 --> 00:27:06,840 582 00:27:06,840 --> 00:27:07,770 Dotknite sa kategórie 2. 583 00:27:07,770 --> 00:27:09,290 584 00:27:09,290 --> 00:27:10,760 Dotknite cat_dog. 585 00:27:10,760 --> 00:27:14,550 586 00:27:14,550 --> 00:27:15,975 Dotknite kočkakočka. 587 00:27:15,975 --> 00:27:18,270 588 00:27:18,270 --> 00:27:23,810 >> Tak som chcel nájsť všetky Súbory sa psom v názve. 589 00:27:23,810 --> 00:27:28,060 Takže nájsť, a najdlhšia Čas nikdy som si spomenul 590 00:27:28,060 --> 00:27:33,760 ako nájsť pracoval, až som nakoniec prečítajte si niečo, čo je tak jasné. 591 00:27:33,760 --> 00:27:35,784 Takže nájsť, automaticky rekurzívne. 592 00:27:35,784 --> 00:27:36,950 Nemusíte prejsť -r. 593 00:27:36,950 --> 00:27:38,090 594 00:27:38,090 --> 00:27:39,110 Takže nájsť bodku. 595 00:27:39,110 --> 00:27:40,750 Nehovorili sme o bod ešte. 596 00:27:40,750 --> 00:27:44,800 Vzhľadom k tomu, dot dot vždy znamená jednu úroveň vyššie. 597 00:27:44,800 --> 00:27:46,960 Dot vždy znamená aktuálny adresár. 598 00:27:46,960 --> 00:27:51,390 Takže som mohol rm -r bodku Rovnako tak môžem rm -rf *. 599 00:27:51,390 --> 00:27:53,140 Nakoniec sa dosiahnuť to isté. 600 00:27:53,140 --> 00:27:56,040 rm -rf bodka sa chystá odstrániť Celá aktuálny adresár. 601 00:27:56,040 --> 00:27:57,440 602 00:27:57,440 --> 00:27:59,680 >> OK, ktoré nechcem robiť tam. 603 00:27:59,680 --> 00:28:01,490 604 00:28:01,490 --> 00:28:04,320 Ale nájsť bodku. 605 00:28:04,320 --> 00:28:07,920 Tak rekurzívne prehľadať aktuálne adresár, a teraz je všetko 606 00:28:07,920 --> 00:28:14,125 po tomto sú banda vlajok, ktoré ste použiť na vylúčenie veci z návratu. 607 00:28:14,125 --> 00:28:17,250 Takže nájsť bodka vráti všetko, čo je nájdete z aktuálneho adresára. 608 00:28:17,250 --> 00:28:19,700 To sú všetky súbory rekurzívne vyhľadávanie. 609 00:28:19,700 --> 00:28:21,250 Uvidíme, niektoré z nich v druhom. 610 00:28:21,250 --> 00:28:23,150 611 00:28:23,150 --> 00:28:27,140 >> Ale v prípade, že ste zvedaví, ako to robím že, tak Command K, prinajmenšom 612 00:28:27,140 --> 00:28:29,660 v mojom terminálu v Mac vymaže ju. 613 00:28:29,660 --> 00:28:34,660 Control L všeobecne vymaže je pre každý druh terminálu. 614 00:28:34,660 --> 00:28:36,480 Môžete tiež zadať jasné. 615 00:28:36,480 --> 00:28:38,410 A ak ste niekedy do podivné scenario-- 616 00:28:38,410 --> 00:28:42,790 to sa mi stalo pár time-- kde farby vašich výziev 617 00:28:42,790 --> 00:28:46,590 sú spackal, alebo vám nie sú schopní vidieť nič 618 00:28:46,590 --> 00:28:51,232 napísaný pri písaní, pretože niekedy ako farba pozadia nastavená 619 00:28:51,232 --> 00:28:53,940 rovnako ako farbu popredia a teraz nemôžete vidieť písma. 620 00:28:53,940 --> 00:28:55,110 621 00:28:55,110 --> 00:28:59,830 Reset je niečo, čo jednoducho resetuje môžete predvolený čiernom pozadí, 622 00:28:59,830 --> 00:29:01,840 biela predné, alebo čokoľvek iného nastaviť im. 623 00:29:01,840 --> 00:29:03,390 624 00:29:03,390 --> 00:29:04,790 >> Tak kde sme to skončili? 625 00:29:04,790 --> 00:29:05,930 Nájsť bodka. 626 00:29:05,930 --> 00:29:09,360 Takže teraz všetko okolo tejto bod obmedzuje výsledky 627 00:29:09,360 --> 00:29:11,450 na niečo, čo zodpovedá daný vzor. 628 00:29:11,450 --> 00:29:16,110 Tak tu Chcem vyhľadávať všetko s názvom mačka. 629 00:29:16,110 --> 00:29:17,300 Nemám nič. 630 00:29:17,300 --> 00:29:18,390 Prečo je to tak? 631 00:29:18,390 --> 00:29:21,230 No, ja som len hľadal niečo, čo sa presne meno mačky. 632 00:29:21,230 --> 00:29:25,150 Chcem Ak hľadať niečo že má nejaký vzor, ​​a cat-- 633 00:29:25,150 --> 00:29:28,890 úvodzovky technicky nie sú nutné, ale ja som ich hodil tam. 634 00:29:28,890 --> 00:29:32,720 Takže teraz zistí kočkakočka z nasledujúcich dôvodov to je jediná vec, ktorá 635 00:29:32,720 --> 00:29:36,040 má niektoré ľubovoľná vzor nasleduje mačka. 636 00:29:36,040 --> 00:29:41,950 Môžem dať mačku *, a teraz nájsť kočkakočka, cat_dog, kategórie 2, 637 00:29:41,950 --> 00:29:45,245 pretože to sú všetky veci s mačkou Na začiatku nasleduje ničím. 638 00:29:45,245 --> 00:29:46,120 Môžete skombinovať. 639 00:29:46,120 --> 00:29:50,480 Ak chcete vyhľadať všetky súbory C že máte, môžete robiť * .c. 640 00:29:50,480 --> 00:29:51,960 Sme blah.c tu. 641 00:29:51,960 --> 00:29:53,000 642 00:29:53,000 --> 00:29:55,020 Tak to je nájsť práca. 643 00:29:55,020 --> 00:29:55,770 Môžete vyhľadávať. 644 00:29:55,770 --> 00:29:58,270 Má veľa vlajok pre ďalšie obmedzenia. 645 00:29:58,270 --> 00:30:00,960 A jeden z nich, povedzme -d. 646 00:30:00,960 --> 00:30:02,110 647 00:30:02,110 --> 00:30:04,435 Tak zastarané. 648 00:30:04,435 --> 00:30:05,425 649 00:30:05,425 --> 00:30:06,550 Oh, to nie je to, čo chcem. 650 00:30:06,550 --> 00:30:07,730 Nie -d. 651 00:30:07,730 --> 00:30:08,860 Typ d. 652 00:30:08,860 --> 00:30:13,820 Takže nájsť bodku - typ d. 653 00:30:13,820 --> 00:30:17,760 Takže, čo to urobil je, že som vyhľadávanie pre všetky súbory v aktuálnom adresári 654 00:30:17,760 --> 00:30:21,680 s je-- d predstavuje directory-- typ adresára. 655 00:30:21,680 --> 00:30:24,430 Vráti všetky adresáre v aktuálnom adresári. 656 00:30:24,430 --> 00:30:27,670 A typ F je všetko pravidelné súbory, všetky non adresára. 657 00:30:27,670 --> 00:30:29,809 Tak to je len Príkladom ďalších spôsobov, ako 658 00:30:29,809 --> 00:30:32,350 môže obmedziť ďalšie hľadanie než len názov súboru. 659 00:30:32,350 --> 00:30:34,126 660 00:30:34,126 --> 00:30:35,570 >> Už je to 30 minút. 661 00:30:35,570 --> 00:30:36,848 Stále pokračuje. 662 00:30:36,848 --> 00:30:38,132 >> ALLISON: Budem vánok cez. 663 00:30:38,132 --> 00:30:39,670 Bude to v poriadku. 664 00:30:39,670 --> 00:30:41,460 >> ROB BOWDEN: Takže niektoré ďalšie veci. 665 00:30:41,460 --> 00:30:45,700 Teraz bang, výkričník. 666 00:30:45,700 --> 00:30:50,530 Takže všeobecne means-- dobre, poďme si pozrieť príklad. 667 00:30:50,530 --> 00:30:52,230 Tak! F, čo sa to bude robiť? 668 00:30:52,230 --> 00:30:53,520 669 00:30:53,520 --> 00:30:57,810 No zdá sa, že opakoval find bodka -typ f. 670 00:30:57,810 --> 00:30:59,240 Čo! G? 671 00:30:59,240 --> 00:31:00,760 Že práve grep -r mačku *. 672 00:31:00,760 --> 00:31:02,010 673 00:31:02,010 --> 00:31:05,720 Takže bang môžete použiť opakovať nedávno urobili príkaz. 674 00:31:05,720 --> 00:31:13,280 Takže keď som písať! Gre, že to bude znovu-run príkazy, ktoré začali s gre najviac 675 00:31:13,280 --> 00:31:14,060 v poslednej dobe. 676 00:31:14,060 --> 00:31:17,090 >> A môžete vidieť, všetky tieto príkazy s históriou. 677 00:31:17,090 --> 00:31:17,880 Histórie tak. 678 00:31:17,880 --> 00:31:19,630 To všetko sú Príkazy som dnes spustiť. 679 00:31:19,630 --> 00:31:21,089 680 00:31:21,089 --> 00:31:23,130 A dobre, nie je to doslova obmedzená na dnes, 681 00:31:23,130 --> 00:31:25,180 ale ja som použiť iba tieto zariadenia ako dnes. 682 00:31:25,180 --> 00:31:28,730 Je to vaša celistvosť históriu Vášho bash shell, 683 00:31:28,730 --> 00:31:30,433 okrem toho, že odreže v určitom okamihu. 684 00:31:30,433 --> 00:31:33,474 Divákov: Čo sa stane, ak nemáte História [nepočuteľné] príkaz a chyby 685 00:31:33,474 --> 00:31:35,430 vo výsledku bude stále tlačiť the-- 686 00:31:35,430 --> 00:31:44,110 >> ROB BOWDEN: Áno, v prípade, že je chyba v jednom z týchto commands-- 687 00:31:44,110 --> 00:31:48,090 tak povedzme, že je Príkaz k chybe nebol nájdený. 688 00:31:48,090 --> 00:31:49,312 689 00:31:49,312 --> 00:31:50,520 Stále sa totiž javí v histórii. 690 00:31:50,520 --> 00:31:52,620 691 00:31:52,620 --> 00:31:53,170 Dobrá. 692 00:31:53,170 --> 00:31:54,750 693 00:31:54,750 --> 00:31:56,040 Ďalšie otázky týkajúce sa niečo? 694 00:31:56,040 --> 00:31:58,760 695 00:31:58,760 --> 00:32:00,300 Tak to je rana. 696 00:32:00,300 --> 00:32:04,230 >> Teraz naozaj užitočné príkaz man. 697 00:32:04,230 --> 00:32:07,750 Tak, že vám Príručka pre daný príkaz. 698 00:32:07,750 --> 00:32:11,640 Takže povedzme, že muž ls, tak to sa tiež prejavilo mi ls. 699 00:32:11,640 --> 00:32:13,400 Uvádza obsah adresára. 700 00:32:13,400 --> 00:32:17,150 A to je miesto, kde vidím, že tam sú tieto rôzne príznaky, ktoré existujú. 701 00:32:17,150 --> 00:32:21,340 Vidíme teda, že ls -l existuje ak by sme mali čítať, že. ls -l 702 00:32:21,340 --> 00:32:26,150 mi dáva túto úplný výpis adresár, ktorý vlastní súbor, 703 00:32:26,150 --> 00:32:29,750 Veľkosť súboru, upravené časovú pečiatku. 704 00:32:29,750 --> 00:32:31,130 705 00:32:31,130 --> 00:32:34,980 Takže ls -a je ešte jeden, ktorý by ste mohli skutočne používať trochu častejšie. 706 00:32:34,980 --> 00:32:38,130 -al je môj najčastejší príznak tento rok ls. 707 00:32:38,130 --> 00:32:42,520 >> Takže -a, všimnite si, že je to veľa viac súborov, než len ls. 708 00:32:42,520 --> 00:32:44,170 ls -a. 709 00:32:44,170 --> 00:32:46,170 Čo je spoločné so všetkými týmito súbormi? 710 00:32:46,170 --> 00:32:47,790 Začínajú s bodkou. 711 00:32:47,790 --> 00:32:54,710 Tak to je konvencie v Linuxe, že súbory, ktoré začínajú bodkou sú skryté. 712 00:32:54,710 --> 00:32:58,330 Tak to jednoducho znamená, že keď my len rovno ls, 713 00:32:58,330 --> 00:33:04,170 alebo si hľadáte tento adresár pomocou nálezcu ekvivalent, alebo Windows 714 00:33:04,170 --> 00:33:07,250 Ekvivalentná Explorer, že sme nechcem vidieť tieto dot súbory. 715 00:33:07,250 --> 00:33:09,680 Proste znečisťujú pohľad na vec. 716 00:33:09,680 --> 00:33:11,790 Tak oni sú skryté ak o to výslovne 717 00:33:11,790 --> 00:33:14,250 požiadať je niečo ako -a. 718 00:33:14,250 --> 00:33:18,920 Tak som si cd do .místní, a vidím že, že je sám o sebe adresár s 719 00:33:18,920 --> 00:33:22,220 zdieľaný adresár a aplikácie, a bla bla bla. 720 00:33:22,220 --> 00:33:24,520 Takže dot, súbory, sú to len skryté. 721 00:33:24,520 --> 00:33:26,250 722 00:33:26,250 --> 00:33:29,355 >> OK, takže ostatné najdôležitejšie. 723 00:33:29,355 --> 00:33:30,490 724 00:33:30,490 --> 00:33:32,000 Mám pár môžem vynechať. 725 00:33:32,000 --> 00:33:38,160 Povedzme, naozaj rýchlo hovoriť o Presmerovanie súbor vecí. 726 00:33:38,160 --> 00:33:43,020 Takže tam je celý komplex séria vecí, ktoré môžete robiť s nimi, 727 00:33:43,020 --> 00:33:47,204 ale len preto, aby ich videl, povedzme, echo. 728 00:33:47,204 --> 00:33:47,870 Ďalší príkaz. 729 00:33:47,870 --> 00:33:48,920 Naozaj hlúpy príkaz. 730 00:33:48,920 --> 00:33:50,710 Všetko, čo to urobí, je pre tlač, čo ti poviem to. 731 00:33:50,710 --> 00:33:52,070 Tak echo ahoj. 732 00:33:52,070 --> 00:33:53,850 Je to len ozvena pozdrav na obrazovku. 733 00:33:53,850 --> 00:33:55,170 734 00:33:55,170 --> 00:33:56,390 Hello world. 735 00:33:56,390 --> 00:33:57,890 Ozveny hello world. 736 00:33:57,890 --> 00:34:02,650 >> Takže jeden príkaz, alebo jedno symbol, ktorý bash chápe 737 00:34:02,650 --> 00:34:07,620 je to väčšie ako symbol, a že je výstup na symbol súboru. 738 00:34:07,620 --> 00:34:10,940 Takže ak výstup som to foo, je tu teraz súbor 739 00:34:10,940 --> 00:34:15,100 s názvom foo, vnútri čo je hello world. 740 00:34:15,100 --> 00:34:18,489 Tak si všimnite, že keď som echo hello world potrubia do foo, 741 00:34:18,489 --> 00:34:19,980 nemala echo Hello World. 742 00:34:19,980 --> 00:34:22,630 Namiesto toho bol uvedený do súboru foo. 743 00:34:22,630 --> 00:34:25,340 A ďalší povel len to hodiť na vás, mačku. 744 00:34:25,340 --> 00:34:29,191 Je to jednoduchý spôsob, ako len úplne vypísať obsah súboru 745 00:34:29,191 --> 00:34:31,440 takže nemám otvoriť textový editor pre zobrazenie. 746 00:34:31,440 --> 00:34:34,159 Takže obsah foo súbor sú hello world. 747 00:34:34,159 --> 00:34:38,460 A ja som mohol mačka blah.c, obsah sú to. 748 00:34:38,460 --> 00:34:42,123 >> Opäť platí, že sa jedná o príkazy, ktoré, nie Predpokladám, že ich všetky naspamäť. 749 00:34:42,123 --> 00:34:43,860 Myšlienka je, že ste ich videli. 750 00:34:43,860 --> 00:34:45,735 Možno, že pracujete na niečo, a vy ste 751 00:34:45,735 --> 00:34:47,230 ako ja som chorý z otvorenia tohto súboru. 752 00:34:47,230 --> 00:34:50,120 Kiež by som mohol len pozerať na obsah naozaj rýchlo. 753 00:34:50,120 --> 00:34:52,320 Dalo by sa to urobiť, potom obzrieť a povedať, oh I 754 00:34:52,320 --> 00:34:55,250 pamätať niečo ako že existuje, a je to mačka. 755 00:34:55,250 --> 00:35:00,630 >> Tak, že sa chystá do súboru. 756 00:35:00,630 --> 00:35:06,639 Teraz tam nie je naozaj k ničomu Príklad čítanie zo súboru doteraz. 757 00:35:06,639 --> 00:35:08,930 Čo je to niečo, čo má niečo z štandardne? 758 00:35:08,930 --> 00:35:10,010 759 00:35:10,010 --> 00:35:11,544 Každý jednoduchý Linux príkaz? 760 00:35:11,544 --> 00:35:13,480 761 00:35:13,480 --> 00:35:16,970 Keď sme sa k nej dostanete, v páre týždňov všetky piece-- dobre, 762 00:35:16,970 --> 00:35:20,470 tento týždeň budete mať kúsok, kde sa začnete vstup od užívateľa. 763 00:35:20,470 --> 00:35:23,696 A tak zvyčajne napíšete že vstup na klávesnici. 764 00:35:23,696 --> 00:35:25,570 Miesto písania, že vstup na klávesnicu, 765 00:35:25,570 --> 00:35:30,950 môžete namiesto toho potrubia od súboru takže keď robíte Mario, ./mario, 766 00:35:30,950 --> 00:35:35,200 potrubia v každom z daného súboru, a že to bude na spustenie programu Mario. 767 00:35:35,200 --> 00:35:37,300 Nečakal vstup na klávesnica, namiesto toho je to 768 00:35:37,300 --> 00:35:39,650 len tak čítať riadky zo súboru foo. 769 00:35:39,650 --> 00:35:45,230 >> Takže väčšie ako foo stavia do súbor foo, a menej ako foo 770 00:35:45,230 --> 00:35:50,170 berie veci zo súboru foo a používa to ako vstup do tohto programu. 771 00:35:50,170 --> 00:35:51,520 772 00:35:51,520 --> 00:36:00,630 A práve to vidieť, mohli by sme tiež echo foo bar Baz, a potom namiesto jedného 773 00:36:00,630 --> 00:36:03,850 väčšie ako, poďme robiť dva do foo. 774 00:36:03,850 --> 00:36:05,610 Čo to robí? 775 00:36:05,610 --> 00:36:07,180 Je to len pripojí k súboru. 776 00:36:07,180 --> 00:36:15,360 Takže namiesto toho všimnúť, keď sa mi echo bla do foo a potom mačka foo, je to len bla. 777 00:36:15,360 --> 00:36:18,285 Takže keď sa výstup do súboru to, kompletne prepíše tento súbor. 778 00:36:18,285 --> 00:36:19,330 779 00:36:19,330 --> 00:36:22,740 Ak si len chcete pripojiť, double [? grader. ?] 780 00:36:22,740 --> 00:36:24,080 >> A posledný je rúrka. 781 00:36:24,080 --> 00:36:29,590 Pipe dostane oveľa zložitejšie, kde trvá výstup jedného príkazu 782 00:36:29,590 --> 00:36:32,320 a napája ho do ďalšieho príkazu. 783 00:36:32,320 --> 00:36:36,140 Takže niektorí bežná vec, história. 784 00:36:36,140 --> 00:36:37,920 Tak, fuj, nechcem, aby sa na to pozrel. 785 00:36:37,920 --> 00:36:40,680 786 00:36:40,680 --> 00:36:44,485 Ukáž mi všetky príkazy v mojej minulosti kde som grep-ED za niečo. 787 00:36:44,485 --> 00:36:45,360 Nie, to je mätúce. 788 00:36:45,360 --> 00:36:50,360 Ukáž mi všetky príkazy kde nájdem. 789 00:36:50,360 --> 00:36:52,360 Všetko nájdete príkazy, čo som kedy bežal. 790 00:36:52,360 --> 00:36:55,050 >> Histórie tak. 791 00:36:55,050 --> 00:36:59,017 Teraz histórie výstupov na Obrazovka tento zoznam príkazov, 792 00:36:59,017 --> 00:37:00,850 ale ja nechcem výstup na obrazovku. 793 00:37:00,850 --> 00:37:03,445 Namiesto toho budem potrubia nej do grep. 794 00:37:03,445 --> 00:37:04,790 795 00:37:04,790 --> 00:37:07,830 Takže poďme grep pre všetky prípady nálezu. 796 00:37:07,830 --> 00:37:09,550 797 00:37:09,550 --> 00:37:17,000 Takže teraz miesto grep odberu vstup, namiesto toho of-- 798 00:37:17,000 --> 00:37:24,360 grep je schopný zvládnuť, ako input-- sme pomocou grep trochu inak tu. 799 00:37:24,360 --> 00:37:29,550 Takže namiesto písania zoznamu veci, ktoré sme chceli hľadať 800 00:37:29,550 --> 00:37:31,070 a povedal, grep berie ako vstup. 801 00:37:31,070 --> 00:37:34,810 Takže keď som to len grep nájsť, to čaká na mňa písať veci. 802 00:37:34,810 --> 00:37:37,661 Takže mačka ahoj nájsť. 803 00:37:37,661 --> 00:37:38,160 Dobrý deň. 804 00:37:38,160 --> 00:37:40,430 805 00:37:40,430 --> 00:37:40,930 Nájsť. 806 00:37:40,930 --> 00:37:43,670 Všimnite si, zakaždým, keď som si napíšete uznáva, že som napísal nález. 807 00:37:43,670 --> 00:37:44,880 808 00:37:44,880 --> 00:37:49,540 Takže namiesto toho, bude vyhľadávanie súborov na nájsť. 809 00:37:49,540 --> 00:37:53,930 >> Takže história sa teraz chystá Výstup zoznam všetkých príkazov. 810 00:37:53,930 --> 00:37:55,200 811 00:37:55,200 --> 00:37:58,100 Dávame tento výstup, a my sme kŕmenie, aby grep, 812 00:37:58,100 --> 00:38:00,180 a tak to vypľuje všetky inštancie nájsť. 813 00:38:00,180 --> 00:38:02,170 814 00:38:02,170 --> 00:38:05,570 Dôvod, prečo som povedal, že to bude mätúce ak je Já-- je stále mätúce. 815 00:38:05,570 --> 00:38:07,030 Keby som grep pre grep. 816 00:38:07,030 --> 00:38:08,755 817 00:38:08,755 --> 00:38:11,130 Všimnite si, že je to skoro vždy ukazuje príkaz som práve 818 00:38:11,130 --> 00:38:15,280 bežal, pretože tento príkaz sám má grep vnútri nej. 819 00:38:15,280 --> 00:38:16,580 820 00:38:16,580 --> 00:38:20,674 >> OK, takže všetky otázky týkajúce sa niečo? 821 00:38:20,674 --> 00:38:22,340 A ja budem prenášať ju v tomto bode. 822 00:38:22,340 --> 00:38:24,690 Dúfajme, že to je pekný Prehľad všetkých príkazov 823 00:38:24,690 --> 00:38:30,100 že nemusíte mať pamäti, ale tie tvoria 824 00:38:30,100 --> 00:38:32,950 pevná 95% z toho, čo som robiť na príkazovom riadku. 825 00:38:32,950 --> 00:38:34,310 826 00:38:34,310 --> 00:38:39,140 Tiež majte na pamäti, že príkazový riadok sám, bash je programovací jazyk, 827 00:38:39,140 --> 00:38:43,070 a tak, keď sa dostanete až na to, vy chcieť urobiť naozaj zložité veci. 828 00:38:43,070 --> 00:38:47,522 A tak to má veci, ako je slučky, a IFS, a všetky tie, 829 00:38:47,522 --> 00:38:50,230 že budete zvykať na so svojimi programovacích jazykov. 830 00:38:50,230 --> 00:38:53,660 Ale to je mimo Rozsah tejto časti. 831 00:38:53,660 --> 00:38:55,520 832 00:38:55,520 --> 00:38:56,985 OK, takže žiadne otázky? 833 00:38:56,985 --> 00:38:57,940 834 00:38:57,940 --> 00:38:58,523 ALLISON: None? 835 00:38:58,523 --> 00:38:59,450 GABRIEL: Chystáš to-- 836 00:38:59,450 --> 00:39:01,158 ALLISON: Ja to zvládnem na mňa, či chceš. 837 00:39:01,158 --> 00:39:02,626 Vidíme, čo sa deje. 838 00:39:02,626 --> 00:39:03,750 ROB BOWDEN: Vypnuté Allison. 839 00:39:03,750 --> 00:39:05,090 ALLISON: Woo. 840 00:39:05,090 --> 00:39:07,504 Si tvrdý akt sledovať, Robe. 841 00:39:07,504 --> 00:39:08,920 Chceš, aby som prejsť s vami? 842 00:39:08,920 --> 00:39:10,246 Alebo máš, OK. 843 00:39:10,246 --> 00:39:13,590 844 00:39:13,590 --> 00:39:16,990 Budem sa snažiť, a nie pomerne byť zdĺhavé tam. 845 00:39:16,990 --> 00:39:20,619 846 00:39:20,619 --> 00:39:22,660 Uvidíme, či to bude pracovať tak, ako chcem, aby to. 847 00:39:22,660 --> 00:39:26,170 848 00:39:26,170 --> 00:39:26,670 Možno, že? 849 00:39:26,670 --> 00:39:27,760 850 00:39:27,760 --> 00:39:28,296 Haha! 851 00:39:28,296 --> 00:39:28,796 Áno. 852 00:39:28,796 --> 00:39:30,460 853 00:39:30,460 --> 00:39:34,066 >> Tak som len tak rýchlo ísť pomocou premenných, cykly, podmienky, 854 00:39:34,066 --> 00:39:35,440 a trochu na kompilátora. 855 00:39:35,440 --> 00:39:38,570 Ak máte otázky na kedykoľvek, prosím, prestaň ma. 856 00:39:38,570 --> 00:39:42,750 Títo chalani mi bude pripomínať opakovať Váš dotaz v prípade, že som zabudol, 857 00:39:42,750 --> 00:39:44,210 ale nemala by byť príliš zlé. 858 00:39:44,210 --> 00:39:45,850 >> Takže premenných, jo. 859 00:39:45,850 --> 00:39:48,060 Nemáme jeden z vašich Stieracie kúsky tu. 860 00:39:48,060 --> 00:39:50,440 Som si istý, že väčšina z vás, ak je ste mali nejaké hry 861 00:39:50,440 --> 00:39:53,810 ktoré ste vytvorili pomocou Scratch, ste mali sledovať niečo ako skóre, 862 00:39:53,810 --> 00:39:55,870 alebo čas, alebo niečo také. 863 00:39:55,870 --> 00:39:58,080 Takže tí jasne oranžovej kusy, ktoré vidíme tu 864 00:39:58,080 --> 00:40:02,630 sú len Scratch forma premenné, a budete určite 865 00:40:02,630 --> 00:40:04,640 byť pomocou premenných po celú dobu svojej programy. 866 00:40:04,640 --> 00:40:07,350 Ak nie, naozaj nie som istí, že to, čo robíte. 867 00:40:07,350 --> 00:40:09,000 868 00:40:09,000 --> 00:40:12,215 >> Ale aj tak veľká vec, definovanie premenných. 869 00:40:12,215 --> 00:40:13,630 870 00:40:13,630 --> 00:40:16,970 S C každá premenná má mať typ vyhlásil, 871 00:40:16,970 --> 00:40:22,090 tak som vám dal veľmi Všeobecne jeden hore. 872 00:40:22,090 --> 00:40:24,045 Tak budete mať vaše typ a potom, čo 873 00:40:24,045 --> 00:40:25,420 sa rozhodnete volať premennú. 874 00:40:25,420 --> 00:40:27,500 875 00:40:27,500 --> 00:40:29,680 Takže v tomto prípade, typu v zozname premenných. 876 00:40:29,680 --> 00:40:31,400 >> Máme tri príklady. 877 00:40:31,400 --> 00:40:34,439 Char nejaké triede, z A, čo je to, čo 878 00:40:34,439 --> 00:40:36,230 Som si istý, že všetci chcú aby sa v tejto triede. 879 00:40:36,230 --> 00:40:37,380 880 00:40:37,380 --> 00:40:40,670 Môžete definovať viac premenné na jednej linke 881 00:40:40,670 --> 00:40:43,880 ako dlho ako oni sú všetci rovnakého typu, ktorý je naším druhým príkladom tu 882 00:40:43,880 --> 00:40:46,409 kde máte tri premenné, x, y a z. 883 00:40:46,409 --> 00:40:47,200 Sú to všetko pláva. 884 00:40:47,200 --> 00:40:49,160 885 00:40:49,160 --> 00:40:53,250 A potom sa môžete tiež, v tomto poslednom príklad s int skóre a počet 886 00:40:53,250 --> 00:40:56,510 tímov, môžete Inicializácia je tu. 887 00:40:56,510 --> 00:41:01,270 >> Tak v strednej príklade, kde sme proste plavák X, Y a Z, 888 00:41:01,270 --> 00:41:02,730 tie nie sú inicializované ešte. 889 00:41:02,730 --> 00:41:04,140 Nemajú žiadnu hodnotu. 890 00:41:04,140 --> 00:41:05,600 Alebo majú hodnoty odpadky. 891 00:41:05,600 --> 00:41:07,370 892 00:41:07,370 --> 00:41:10,790 A ak sa pokúsite a ich použitie, kompilátor bude revať na vás. 893 00:41:10,790 --> 00:41:14,727 Máte ako deklarovať a premenné inicializovať. 894 00:41:14,727 --> 00:41:16,310 Takže v tomto poslednom, robíme obaja. 895 00:41:16,310 --> 00:41:19,320 Sme deklarovanie premenných na skóre a počet tímov, 896 00:41:19,320 --> 00:41:24,134 a my sme ich inicializácia, čo im, že ich počiatočné hodnoty 7 a 4 897 00:41:24,134 --> 00:41:24,675 resp. 898 00:41:24,675 --> 00:41:26,310 899 00:41:26,310 --> 00:41:27,190 V pohode. 900 00:41:27,190 --> 00:41:28,550 Každý dobrý? 901 00:41:28,550 --> 00:41:29,470 Úžasné. 902 00:41:29,470 --> 00:41:31,690 >> OK, takže niektoré konvencie. 903 00:41:31,690 --> 00:41:35,965 Ak Prečítal vy cez štýl 50, tieto 904 00:41:35,965 --> 00:41:39,510 sú len veci, ktoré by sme chceli pre implementovať vo svojom štýle. 905 00:41:39,510 --> 00:41:41,230 Tak zmysluplné názvy. 906 00:41:41,230 --> 00:41:45,700 Ak začnete nazývať veci len x, y a z, a to najmä 907 00:41:45,700 --> 00:41:47,902 ako sa dostanete do zdĺhavejšie programy, ty si 908 00:41:47,902 --> 00:41:49,610 pravdepodobne bude pliesť sa a byť 909 00:41:49,610 --> 00:41:52,930 ako to, čo je táto premenná s odkazom na. 910 00:41:52,930 --> 00:41:55,880 Nemám potuchy, čo to znamená. 911 00:41:55,880 --> 00:41:59,280 >> Takže ak to znamenalo držať skóre, hovoria skóre. 912 00:41:59,280 --> 00:42:05,720 Ak to malo mať nejaké odpovede alebo spôsobiť, dať mu meno, ako je to. 913 00:42:05,720 --> 00:42:09,920 U slučiek, ktoré budeme dostať sa do do ďalšej snímku, 914 00:42:09,920 --> 00:42:12,985 premenné jednotlivé list sú v poriadku. 915 00:42:12,985 --> 00:42:16,033 916 00:42:16,033 --> 00:42:18,449 ROB BOWDEN: Aj, j a k sú len konvencie pre slučky 917 00:42:18,449 --> 00:42:22,050 že každý je očakáva, byť nazývaný i, j a k. 918 00:42:22,050 --> 00:42:26,890 Môžete volať them-- vidím riadok stĺpec alebo riadok volanie niekedy 919 00:42:26,890 --> 00:42:29,450 dvoch vnorených cyklov a to je tiež druh štandardom. 920 00:42:29,450 --> 00:42:31,450 Ale i a j je úplne známy. 921 00:42:31,450 --> 00:42:33,670 >> ALLISON: Jo, ja a j, že ste úplne v pohode. 922 00:42:33,670 --> 00:42:36,250 Z dôvodu jasnosti, ako je v niektorej z vašich P sád, 923 00:42:36,250 --> 00:42:39,745 to by mohlo mať zmysel mať viac popisné veci tam jednoducho 924 00:42:39,745 --> 00:42:40,920 sledovať to. 925 00:42:40,920 --> 00:42:45,100 Ale myslím, že i, j, k a myslím, že Prevažná väčšina z nás všetky použitia. 926 00:42:45,100 --> 00:42:46,890 927 00:42:46,890 --> 00:42:50,340 >> ROB BOWDEN: S týmito konvencie, takže štýl je dôležité. 928 00:42:50,340 --> 00:42:53,520 Je to jedna zo štyroch osí na ktorom ste triedi, 929 00:42:53,520 --> 00:42:58,110 a je to tak jednoduché jednoducho ísť cez Váš P stanovená na koniec, a uistite sa, že 930 00:42:58,110 --> 00:42:59,770 že tam nie sú štylistické chyby. 931 00:42:59,770 --> 00:43:01,742 Takže sa uistite, že ste tabbing správne. 932 00:43:01,742 --> 00:43:03,200 Uistite sa, že premenné sú pomenované. 933 00:43:03,200 --> 00:43:04,450 Nechajte niekoľko poznámok. 934 00:43:04,450 --> 00:43:06,677 Je veľmi ľahké sa dostať tie body. 935 00:43:06,677 --> 00:43:09,510 Nemusíte premýšľať o tom, čokoľvek, aby sa tieto body. 936 00:43:09,510 --> 00:43:11,093 Nemusíte prísť na niečo von. 937 00:43:11,093 --> 00:43:12,640 Je to len aby to vyzeralo pekne. 938 00:43:12,640 --> 00:43:14,850 >> ALLISON: V skutočnosti sme majú štýl 50, ktorý 939 00:43:14,850 --> 00:43:17,920 vám povie, kam si hrať up, ak ste poplietol na štýl 940 00:43:17,920 --> 00:43:21,180 a povie vám presne to, čo vám je potrebné opraviť, a ako je potrebné ho opraviť. 941 00:43:21,180 --> 00:43:23,900 Je to tiež len dobré sa zmieniť že to je samozrejme politika 942 00:43:23,900 --> 00:43:27,200 že ak ste v kancelárii hodín a váš kód je neporiadok, 943 00:43:27,200 --> 00:43:30,200 môžeme odmietnuť pomôcť ste až to vyzerá krajšie. 944 00:43:30,200 --> 00:43:34,310 Takže začať hneď, udržať konzistentný štýl, 945 00:43:34,310 --> 00:43:37,100 ste tiež len tak, aby sa vaše životy oveľa jednoduchšie, keď 946 00:43:37,100 --> 00:43:38,730 sa snažíte prejsť ladenie. 947 00:43:38,730 --> 00:43:41,510 Ak sa snažíte prísť na to, kam chýba zložená zátvorka 948 00:43:41,510 --> 00:43:44,890 a oni sú všade, že ste len aby svoj vlastný život ťažší. 949 00:43:44,890 --> 00:43:47,217 Takže byť v súlade so štýlom. 950 00:43:47,217 --> 00:43:48,800 Sľubujem, že to, aby váš život jednoduchší. 951 00:43:48,800 --> 00:43:50,330 Bude to náš život jednoduchší. 952 00:43:50,330 --> 00:43:51,869 Každý, kto bude oveľa šťastnejší. 953 00:43:51,869 --> 00:43:52,910 A to je to, čo chcete. 954 00:43:52,910 --> 00:43:54,192 955 00:43:54,192 --> 00:43:55,650 GABRIEL: Vaša známka bude vyššia. 956 00:43:55,650 --> 00:43:56,858 ALLISON: Áno, a vaša trieda. 957 00:43:56,858 --> 00:43:58,410 958 00:43:58,410 --> 00:44:01,930 Ak váš TF je ako vy, má tendenciu byť priaznivý. 959 00:44:01,930 --> 00:44:02,940 960 00:44:02,940 --> 00:44:05,010 V poriadku, a potom už len Druhým bodom je tu. 961 00:44:05,010 --> 00:44:06,300 Konzistentné inicializácia. 962 00:44:06,300 --> 00:44:09,605 Tak ako sme videli, môžete deklarovať a inicializovať veci. 963 00:44:09,605 --> 00:44:10,750 964 00:44:10,750 --> 00:44:13,180 Viac premenných na rovnakom riadku. 965 00:44:13,180 --> 00:44:17,930 Jedna vec, ktorú by sme vám radi nie urobiť, je, aby vyhlásil niektoré premenné 966 00:44:17,930 --> 00:44:21,360 a nemožno inicializovať je na rovnakej riadok, ktorý sa inicializuje ostatní. 967 00:44:21,360 --> 00:44:23,960 >> Takže v prípade, že z nemá zmysel vôbec, 968 00:44:23,960 --> 00:44:29,050 máme príklad tu kde sme vyhlásení celých čísel 969 00:44:29,050 --> 00:44:31,180 v premennej štvrťroku desetníky a haliere, 970 00:44:31,180 --> 00:44:34,214 ale štvrtiny a haliere nemajú žiadnu počiatočnú hodnotu. 971 00:44:34,214 --> 00:44:36,630 Sme im nie je inicializovaný, ale priamo tam uprostred 972 00:44:36,630 --> 00:44:38,600 sme už inicializovaný desaťhalierniky na 0. 973 00:44:38,600 --> 00:44:41,650 Takže buď urobiť štvrte, desaťhalierniky, haliere. 974 00:44:41,650 --> 00:44:43,170 Alebo štvrtiny rovnať 0. 975 00:44:43,170 --> 00:44:43,930 Desaťhalierniky rovná 0. 976 00:44:43,930 --> 00:44:46,810 Haliere rovný 0, alebo čokoľvek iného tieto počiatočné hodnoty. 977 00:44:46,810 --> 00:44:49,800 >> Veľká vec vo veľkom štýle, byť v súlade. 978 00:44:49,800 --> 00:44:51,050 Ak ste na pochybách, byť v súlade. 979 00:44:51,050 --> 00:44:52,129 980 00:44:52,129 --> 00:44:53,420 Ale sledujte náš štýl sprievodca taky. 981 00:44:53,420 --> 00:44:54,710 982 00:44:54,710 --> 00:44:55,317 V pohode. 983 00:44:55,317 --> 00:44:56,150 Každý, kto tam dobre? 984 00:44:56,150 --> 00:44:57,566 >> Divákov: Kde je sprievodca štýl? 985 00:44:57,566 --> 00:45:00,800 ALLISON: Sprievodca štýl je on-- čo webové stránky? 986 00:45:00,800 --> 00:45:03,950 >> GABRIEL: Myslím, že je manual.cs50.net/-- 987 00:45:03,950 --> 00:45:04,575 ALLISON: Style? 988 00:45:04,575 --> 00:45:05,610 989 00:45:05,610 --> 00:45:06,390 >> GABRIEL: Style. 990 00:45:06,390 --> 00:45:06,920 Jo. 991 00:45:06,920 --> 00:45:07,520 >> ALLISON: Áno. 992 00:45:07,520 --> 00:45:10,150 Takže otázka, kde je v štýle 50. 993 00:45:10,150 --> 00:45:12,250 manual.cs50.net/style. 994 00:45:12,250 --> 00:45:13,639 Áno? 995 00:45:13,639 --> 00:45:16,880 >> Divákov: Ak budeme definovať premenné, je to v poriadku 996 00:45:16,880 --> 00:45:28,145 Dáme Ak ako [nepočuteľné] ako int skóre a potom int cieľ. 997 00:45:28,145 --> 00:45:29,873 998 00:45:29,873 --> 00:45:35,100 Takže by si povedal, že teraz máme dostal je definovať spoločne? 999 00:45:35,100 --> 00:45:37,640 >> ALLISON: Takže, by mali Máte redundantný kód 1000 00:45:37,640 --> 00:45:40,940 pri definovaní premenné, ako je int skóre a 1001 00:45:40,940 --> 00:45:43,239 Na ďalšom riadku int hry? 1002 00:45:43,239 --> 00:45:46,030 ROB BOWDEN: Existujú určite prípady, keď redundantný kód je zlý. 1003 00:45:46,030 --> 00:45:47,738 Ja by som nepovažoval že redundantný kód. 1004 00:45:47,738 --> 00:45:50,970 Skoro som nikdy deklarovať viac premenné na rovnakom riadku v histórii. 1005 00:45:50,970 --> 00:45:53,736 A keď už, tak je to preto, zvyčajne nechám nejaký komentár 1006 00:45:53,736 --> 00:45:55,235 vysvetlí, čo je premenná pre. 1007 00:45:55,235 --> 00:45:57,582 Takže budem hovoriť int skóre lomítko lomítko. 1008 00:45:57,582 --> 00:45:59,350 Udržuje čokoľvek. 1009 00:45:59,350 --> 00:46:00,710 V celkovom lomítko lomítko. 1010 00:46:00,710 --> 00:46:01,790 1011 00:46:01,790 --> 00:46:06,455 Takže je to oveľa drsnejšie týmto spôsobom dať ich všetky na rovnakom riadku. 1012 00:46:06,455 --> 00:46:08,080 Len som nikdy dať ich na rovnakom riadku. 1013 00:46:08,080 --> 00:46:10,580 >> ALLISON: mám pocit, že je to osobné preferencie v tomto bode. 1014 00:46:10,580 --> 00:46:14,900 >> Divákov: Znamená to, že ísť na pre slučky a tak taky? 1015 00:46:14,900 --> 00:46:15,900 ROB BOWDEN: Ako vo vnútri? 1016 00:46:15,900 --> 00:46:18,282 Rovnako ako int i = 0 čiarku dĺžka sa rovná niečo? 1017 00:46:18,282 --> 00:46:19,490 Že nemáte na výber. 1018 00:46:19,490 --> 00:46:21,850 1019 00:46:21,850 --> 00:46:25,910 Vďaka za slučky inicializácii part-- tak ste mohli vidieť iba 1020 00:46:25,910 --> 00:46:31,520 int i = 0 bodkočiarka aj menej než čokoľvek bodkočiarka i a a. 1021 00:46:31,520 --> 00:46:33,820 To int i = 0, technicky môžete tiež 1022 00:46:33,820 --> 00:46:35,770 to, čo sme videli pred so syntaxou čiarkou. 1023 00:46:35,770 --> 00:46:39,790 int i = 0 čiarkou j sa rovná 3 čiarka k sa rovná 5. 1024 00:46:39,790 --> 00:46:41,610 1025 00:46:41,610 --> 00:46:44,320 Nemáte na výber rozdeliť že až do viac riadkov, 1026 00:46:44,320 --> 00:46:46,530 a to je štandardné. 1027 00:46:46,530 --> 00:46:47,780 Vidieť to je v poriadku. 1028 00:46:47,780 --> 00:46:49,182 1029 00:46:49,182 --> 00:46:49,890 ALLISON: Úžasné. 1030 00:46:49,890 --> 00:46:52,120 No, pohodlný prechod do slučiek. 1031 00:46:52,120 --> 00:46:54,860 1032 00:46:54,860 --> 00:46:58,980 Tak jo, máme tu niekoľko príkladov zo slučky, ktoré vy videli v Scratch. 1033 00:46:58,980 --> 00:47:01,550 A samozrejme všetky tieto stačí byť znovu v C. 1034 00:47:01,550 --> 00:47:04,610 A v podstate, aby vás opakovať nejakú časť kódu 1035 00:47:04,610 --> 00:47:06,740 až do určitého stavu je splnená, čo my budeme 1036 00:47:06,740 --> 00:47:09,198 dostať sa do pravej po rozhovore o slučky s conditionals. 1037 00:47:09,198 --> 00:47:11,150 1038 00:47:11,150 --> 00:47:12,570 >> Takže máme tri hlavné typy. 1039 00:47:12,570 --> 00:47:17,500 For, while, a to nejakú chvíľu, ktorá budeme všetci prejsť práve teraz. 1040 00:47:17,500 --> 00:47:18,860 Takže prvá je pre slučky. 1041 00:47:18,860 --> 00:47:20,490 1042 00:47:20,490 --> 00:47:25,034 Tak pre niektoré stavu, spustiť tento blok kódu. 1043 00:47:25,034 --> 00:47:27,200 Sme to pekné malé majú diagram tu dole. 1044 00:47:27,200 --> 00:47:28,230 1045 00:47:28,230 --> 00:47:32,310 Ale v podstate máte v Váš na, že prvý riadok, 1046 00:47:32,310 --> 00:47:34,240 budete premenné inicializovať. 1047 00:47:34,240 --> 00:47:38,260 >> Tak, ako sme hovorili o, i je rovné 0 alebo aj je rovný 10. 1048 00:47:38,260 --> 00:47:40,010 Či už budete potrebovať variabilný byť, že je to 1049 00:47:40,010 --> 00:47:43,970 bude tam inicializovaný, deklarované a inicializované na nejakú hodnotu. 1050 00:47:43,970 --> 00:47:46,760 Takže máme niektoré podmienka, že sa deje 1051 00:47:46,760 --> 00:47:48,900 bude kontrolovať naše premenná proti niečomu. 1052 00:47:48,900 --> 00:47:55,220 Takže v prípade, typický prípad, kedy Možno budete chcieť túto časť kódu 1053 00:47:55,220 --> 00:47:56,620 vykonať päťkrát. 1054 00:47:56,620 --> 00:48:02,380 Takže budeme mať int i = 0, a my chcem, aby to bolo, keď som je menšia ako 5. 1055 00:48:02,380 --> 00:48:04,940 Takže táto podmienka je len bude kontrolovať, že zakaždým. 1056 00:48:04,940 --> 00:48:07,120 Ak túto podmienku vyhodnotený ako pravdivý, je to 1057 00:48:07,120 --> 00:48:11,162 chystá spustiť kód, ktorý je presne čo tento malý diagram ukazuje. 1058 00:48:11,162 --> 00:48:12,370 1059 00:48:12,370 --> 00:48:13,639 >> A tak sa spustí ho. 1060 00:48:13,639 --> 00:48:15,430 Aktualizuje premennú, čo je to, čo vidíme, 1061 00:48:15,430 --> 00:48:21,020 V poslednej časti nášho servera na Inicializácia slučky tam. 1062 00:48:21,020 --> 00:48:22,370 1063 00:48:22,370 --> 00:48:26,030 Takže to bude len pokračovať v tom to kým táto podmienka nie je splnená, 1064 00:48:26,030 --> 00:48:28,010 a potom to bude ukončený slučky a pokračovať 1065 00:48:28,010 --> 00:48:29,960 pohybujúce sa zvyškom vášho programu. 1066 00:48:29,960 --> 00:48:31,320 1067 00:48:31,320 --> 00:48:33,620 Každý, kto tam dobre? 1068 00:48:33,620 --> 00:48:34,440 V pohode. 1069 00:48:34,440 --> 00:48:37,780 >> Tak tu je príklad, veľmi podobné na niečo, čo som práve hovoril. 1070 00:48:37,780 --> 00:48:42,030 Tak sme sa len chcete vytlačiť To je CS50 10 krát. 1071 00:48:42,030 --> 00:48:44,540 Takže vidíte, máme tu naše pre, a potom sme 1072 00:48:44,540 --> 00:48:47,450 inicializovať premennú i sa rovná 0. 1073 00:48:47,450 --> 00:48:50,610 Naša podmienka je kontrola že je to menej ako 10 rokov. 1074 00:48:50,610 --> 00:48:55,210 Tak vyhodnotiť na hodnotu true, keď sme sa prvýkrát začať, a potom aktualizuje svoje premenné 1075 00:48:55,210 --> 00:48:58,985 Vždy, keď v skutočnosti vykonáva a vytlačí je CS50. 1076 00:48:58,985 --> 00:49:00,510 1077 00:49:00,510 --> 00:49:02,180 A bude ukončený po 10-krát. 1078 00:49:02,180 --> 00:49:03,190 1079 00:49:03,190 --> 00:49:04,070 V pohode. 1080 00:49:04,070 --> 00:49:07,130 >> Takže zatiaľ čo slučky sú až nabudúce. 1081 00:49:07,130 --> 00:49:12,400 A ako vidíte tu, musíme sa nejaký čas to condition-- otázka? 1082 00:49:12,400 --> 00:49:15,238 >> Divákov: Ako môžem skočiť v skutočnosti jednoducho nie je jedno číslo, 1083 00:49:15,238 --> 00:49:19,030 ale dve čísla [nepočuteľné] i a a a? 1084 00:49:19,030 --> 00:49:23,390 >> ALLISON: Takže otázka je, ako môžete aktualizovať premennú o viac ako jeden 1085 00:49:23,390 --> 00:49:24,070 naraz. 1086 00:49:24,070 --> 00:49:26,860 Tak som a Plus Aktualizácie jeden zakaždým. 1087 00:49:26,860 --> 00:49:32,310 Ak by ste chceli aktualizovať ho dva, si to mohol urobiť aj a rovná 2. 1088 00:49:32,310 --> 00:49:34,526 >> ROB BOWDEN: Videli ste a rovná sa v prednáške ešte? 1089 00:49:34,526 --> 00:49:35,442 >> Divákov: [nepočuteľné]. 1090 00:49:35,442 --> 00:49:37,440 1091 00:49:37,440 --> 00:49:42,110 >> ALLISON: Je to skutočne to isté, ako aj rovná i a 2. 1092 00:49:42,110 --> 00:49:46,130 Takže to bude trvať to a aktualizovať dvoma zakaždým. 1093 00:49:46,130 --> 00:49:49,432 Plus rovná je proste niečo hovoríme Syntactic Sugar. 1094 00:49:49,432 --> 00:49:52,390 ROB BOWDEN: Jo, tie, pre existujú skoro všetky aritmetické operátory. 1095 00:49:52,390 --> 00:49:55,830 Tak som sa časy rovná by zdvojnásobiť počet. 1096 00:49:55,830 --> 00:50:02,590 j predel rovná 3 je rovnaký ako j sa rovná j deleno 3. 1097 00:50:02,590 --> 00:50:07,399 >> ALLISON: Alebo mínus rovná 2 by decrement aj dva zakaždým. 1098 00:50:07,399 --> 00:50:08,565 ROB BOWDEN: Aj mod rovní. 1099 00:50:08,565 --> 00:50:09,690 1100 00:50:09,690 --> 00:50:13,270 Ste ho ešte nevideli bitové operátory, ale strieška rovná a ampersand rovná, 1101 00:50:13,270 --> 00:50:14,560 všetky z tých, ktoré existujú. 1102 00:50:14,560 --> 00:50:19,480 >> ALLISON: Takže mnohokrát, a to najmä s prvou dvojicou P sád, 1103 00:50:19,480 --> 00:50:22,527 budete pravdepodobne zvyšovanie by jeden, tak som navyše plus, j a navyše 1104 00:50:22,527 --> 00:50:24,610 sú všetko veci, ideš sa obvykle používajú. 1105 00:50:24,610 --> 00:50:28,240 Ale to aktualizácia stavu je plne vo vašej kontrolou. 1106 00:50:28,240 --> 00:50:32,310 Môžete ho aktualizovať akýmikoľvek krokoch alebo akýmkoľvek spôsobom sa rozhodnete. 1107 00:50:32,310 --> 00:50:33,389 1108 00:50:33,389 --> 00:50:35,680 Možno, že dokonca chcú, aby to bolo náhodné číslo niekedy. 1109 00:50:35,680 --> 00:50:37,180 1110 00:50:37,180 --> 00:50:39,580 Ale áno, existuje veľa veci, ktoré môžete robiť s tým. 1111 00:50:39,580 --> 00:50:41,280 Nie ste obmedzený aj naviac plus. 1112 00:50:41,280 --> 00:50:44,400 >> ROB BOWDEN: Len tak vás viem, že to existuje, ale tiež 1113 00:50:44,400 --> 00:50:46,960 existuje v inej forme, a navyše aj. 1114 00:50:46,960 --> 00:50:51,410 Takže ak ste niekedy hľadanie online a náhodou vidieť a navyše aj, 1115 00:50:51,410 --> 00:50:52,870 do značnej miery znamená to isté. 1116 00:50:52,870 --> 00:50:54,377 1117 00:50:54,377 --> 00:50:54,960 ALLISON: cool. 1118 00:50:54,960 --> 00:50:56,070 1119 00:50:56,070 --> 00:50:56,740 Dobré? 1120 00:50:56,740 --> 00:50:57,240 Úžasné. 1121 00:50:57,240 --> 00:50:59,190 1122 00:50:59,190 --> 00:50:59,990 Takže zatiaľ čo slučky. 1123 00:50:59,990 --> 00:51:01,160 1124 00:51:01,160 --> 00:51:02,570 Veľmi podobné. 1125 00:51:02,570 --> 00:51:03,737 Máte nejaký stav. 1126 00:51:03,737 --> 00:51:05,820 Hlavná vec k správe Tu je miesto toho, aby 1127 00:51:05,820 --> 00:51:08,540 tri rôzne časti nastaviť, máme jeden. 1128 00:51:08,540 --> 00:51:11,090 Máme len nejaké podmienky že to je skúšaný. 1129 00:51:11,090 --> 00:51:14,920 A rovnakým spôsobom, ak táto podmienka vyhodnotená ako true, 1130 00:51:14,920 --> 00:51:16,840 Váš kód bude bežať. 1131 00:51:16,840 --> 00:51:18,870 A či je to falošný, je bude ukončená, pohyb 1132 00:51:18,870 --> 00:51:21,930 na ďalšiu časť programu. 1133 00:51:21,930 --> 00:51:25,780 Tak to je druh like--, čo je Dobrým príkladom je kontrola 1134 00:51:25,780 --> 00:51:27,215 pre niektoré normálnom stave? 1135 00:51:27,215 --> 00:51:29,402 1136 00:51:29,402 --> 00:51:30,235 GABRIEL: je síce pravda. 1137 00:51:30,235 --> 00:51:32,110 ALLISON: Dalo by sa pritom pravda robiť. 1138 00:51:32,110 --> 00:51:33,510 No, 1 je rovný 1. 1139 00:51:33,510 --> 00:51:34,970 1140 00:51:34,970 --> 00:51:37,642 >> ROB BOWDEN: Môžete to urobiť while-- len namiesto použitia pre sláčiky, 1141 00:51:37,642 --> 00:51:39,600 môžete vždy kód pre slučku v cykle while, 1142 00:51:39,600 --> 00:51:42,600 tak aj väčšie ako 0 alebo Aj keď som menej ako 10 rokov. 1143 00:51:42,600 --> 00:51:45,200 1144 00:51:45,200 --> 00:51:46,010 >> ALLISON: Úžasné. 1145 00:51:46,010 --> 00:51:50,640 A potom sme si robiť, zatiaľ čo slučky, ktorá je skvelé pre overenie užívateľa, kde 1146 00:51:50,640 --> 00:51:55,370 Ak chcete získať niečo od Vaše užívateľské, uvidíme, či je to platné, 1147 00:51:55,370 --> 00:51:57,060 a potom pokračujte odtiaľ. 1148 00:51:57,060 --> 00:52:04,000 Takže jedna z vecí, vedieť, s robiť, keď je to, že to bude robiť, 1149 00:52:04,000 --> 00:52:08,000 a potom sa znova spustiť ak je táto podmienka splnená. 1150 00:52:08,000 --> 00:52:11,240 >> Takže asi najlepší spôsob, ako to urobiť je jednoducho vidieť príklad tu. 1151 00:52:11,240 --> 00:52:14,620 Tak ako som práve spomenul, užívateľ validácia je naozaj useful-- 1152 00:52:14,620 --> 00:52:17,520 alebo si chvíle sú naozaj užitočné pri overovaní užívateľa. 1153 00:52:17,520 --> 00:52:19,730 Takže to je len tak znovu vyzve nejakého užívateľa 1154 00:52:19,730 --> 00:52:23,640 kým nevstúpi kladné číslo, ktoré by mohli byť užitočné pre vašu P sadu 1155 00:52:23,640 --> 00:52:24,190 tento týždeň. 1156 00:52:24,190 --> 00:52:25,850 1157 00:52:25,850 --> 00:52:29,480 A tak v tomto prípade, kedy najprv spustiť tento program, 1158 00:52:29,480 --> 00:52:32,260 to bude tlačiť zadajte kladné číslo. 1159 00:52:32,260 --> 00:52:34,810 Bude to mať nejaký vstup od užívateľa, 1160 00:52:34,810 --> 00:52:38,320 a potom sa to bude kontrolovať že vstup proti stavu 1161 00:52:38,320 --> 00:52:39,500 ktoré ste nastavili pre neho. 1162 00:52:39,500 --> 00:52:41,030 >> Takže v tomto prípade to bude kontrolovať. 1163 00:52:41,030 --> 00:52:44,190 Bude to povedať, OK, je náš vstup negatívny, 1164 00:52:44,190 --> 00:52:47,175 alebo je to 0 alebo negatívne, ktorá by bola neplatná. 1165 00:52:47,175 --> 00:52:48,300 Tak to by re-prompt. 1166 00:52:48,300 --> 00:52:50,280 1167 00:52:50,280 --> 00:52:50,780 Otázka? 1168 00:52:50,780 --> 00:52:54,720 >> Divákov: Je to rovnaká, ako zatiaľ čo slučke, ak si len skopírovať tento kód 1169 00:52:54,720 --> 00:52:56,680 a dať to [nepočuteľné] while? 1170 00:52:56,680 --> 00:52:59,620 1171 00:52:59,620 --> 00:53:05,160 >> ALLISON: Takže otázka bola by to byť rovnaká ako len na chvíľu 1172 00:53:05,160 --> 00:53:08,570 loop keby sme len skopírujte while vyššie. 1173 00:53:08,570 --> 00:53:12,440 Takže v tomto prípade, váš čas je slučka bude najprv skontrolujte stav. 1174 00:53:12,440 --> 00:53:15,300 Takže v tomto prípade, ak sme sa snažili písať len ako while, 1175 00:53:15,300 --> 00:53:18,010 to by som chvíľu vstup je menšia ako jedna. 1176 00:53:18,010 --> 00:53:20,801 Ale nemajú vstup pre neho. 1177 00:53:20,801 --> 00:53:24,238 >> Divákov: Ak máte [nepočuteľné] while vrátane tohto kódu, 1178 00:53:24,238 --> 00:53:28,166 ale potom zvládol kód nad while tiež. 1179 00:53:28,166 --> 00:53:31,052 Práve ste mali tento kód [Nepočuteľné] while. 1180 00:53:31,052 --> 00:53:32,760 ALLISON: Bolo by to isté, áno. 1181 00:53:32,760 --> 00:53:37,110 Takže by ste mohli len write-- namiesto toho, do-- áno. 1182 00:53:37,110 --> 00:53:37,976 1183 00:53:37,976 --> 00:53:39,350 GABRIEL: Ale to je viac elegantné. 1184 00:53:39,350 --> 00:53:41,020 ALLISON: Jo, to je viac elegantný. 1185 00:53:41,020 --> 00:53:44,560 Môžete sa dostať do dizajnu a ktovie čo ešte, ale áno, môžete úplne urobiť. 1186 00:53:44,560 --> 00:53:45,850 1187 00:53:45,850 --> 00:53:47,072 Nejaké ďalšie otázky? 1188 00:53:47,072 --> 00:53:49,240 1189 00:53:49,240 --> 00:53:50,250 OK, v pohode. 1190 00:53:50,250 --> 00:53:55,540 >> Takže sme hovorili veľa o podmienkach všetkých týchto slučiek, ktoré máme, 1191 00:53:55,540 --> 00:53:58,615 takže sme vlastne dostal do podmienky boolovských výrazov. 1192 00:53:58,615 --> 00:53:59,990 1193 00:53:59,990 --> 00:54:03,440 Opäť platí, že použitie týchto v jazyku C, tak len tak prechádzať 1194 00:54:03,440 --> 00:54:06,050 z viac grafického rozhrania skutočne kódovanie. 1195 00:54:06,050 --> 00:54:07,480 1196 00:54:07,480 --> 00:54:09,100 >> Cool, tak veľký, ak. 1197 00:54:09,100 --> 00:54:11,130 1198 00:54:11,130 --> 00:54:17,070 V podstate len nám umožňuje zaviesť určitú logiku do nášho programu a kontrola 1199 00:54:17,070 --> 00:54:17,790 sys podmienky. 1200 00:54:17,790 --> 00:54:22,150 Takže v tomto prípade, OK, n je väčšie ako 0? 1201 00:54:22,150 --> 00:54:24,070 Áno, to je, takže môžete spustiť to. 1202 00:54:24,070 --> 00:54:28,060 Je to len kontrolovať niektoré podmienka, že ste 1203 00:54:28,060 --> 00:54:33,565 nastavenie, čo myslím, že sme všetci pohodlné s kontrolou podmienok. 1204 00:54:33,565 --> 00:54:35,975 1205 00:54:35,975 --> 00:54:36,475 V pohode. 1206 00:54:36,475 --> 00:54:38,760 1207 00:54:38,760 --> 00:54:44,530 Takže ak ešte je váš druhý, môžete povedať, OK, ak je to pravda, 1208 00:54:44,530 --> 00:54:46,150 urobiť prvá vec. 1209 00:54:46,150 --> 00:54:48,720 Inak chcem, aby ste Východiskové a robiť niečo iné. 1210 00:54:48,720 --> 00:54:51,977 1211 00:54:51,977 --> 00:54:55,060 Rovnako ako v tomto prípade, môžete buď vybrať kladné číslo alebo záporné číslo. 1212 00:54:55,060 --> 00:54:56,500 Máte len dve možnosti. 1213 00:54:56,500 --> 00:54:59,550 Musíte to urobiť bez ohľadu na O tom, čo vaše užívateľské vstupy. 1214 00:54:59,550 --> 00:55:02,920 Takže môžete povedať, dobre, to je väčšie ako 0? 1215 00:55:02,920 --> 00:55:03,480 V pohode. 1216 00:55:03,480 --> 00:55:04,480 Vytlačiť kladné číslo. 1217 00:55:04,480 --> 00:55:06,153 Ak tomu tak nie je, vytlačte negatívne. 1218 00:55:06,153 --> 00:55:06,960 Každý dobrý? 1219 00:55:06,960 --> 00:55:14,920 >> A potom jedna vec, rozpoznať je že ak je splnená, ak podmienka, 1220 00:55:14,920 --> 00:55:16,650 inak sa nikdy tiež spustiť. 1221 00:55:16,650 --> 00:55:19,210 Iba jeden z nich bude vykonať naraz. 1222 00:55:19,210 --> 00:55:20,410 Takže je to kompromis. 1223 00:55:20,410 --> 00:55:21,720 Nemusíte dostať mať oboje. 1224 00:55:21,720 --> 00:55:23,566 Môžete mať buď prvý podmienku. 1225 00:55:23,566 --> 00:55:25,440 Buď máte, ak alebo inak, nie oboje. 1226 00:55:25,440 --> 00:55:26,849 1227 00:55:26,849 --> 00:55:28,890 Ktoré potom môžu robiť veci ešte zložitejšie, 1228 00:55:28,890 --> 00:55:31,060 pretože ak môžete urobiť, inde to, a potom ostatné. 1229 00:55:31,060 --> 00:55:32,810 Takže v tomto prípade sme majú tri podmienky. 1230 00:55:32,810 --> 00:55:34,830 1231 00:55:34,830 --> 00:55:38,370 A opäť, iba jeden z nich je skončí popravený. 1232 00:55:38,370 --> 00:55:41,030 Takže môžete sa pýtať, No, čo ak vás 1233 00:55:41,030 --> 00:55:45,510 niečo, čo môže splniť dva z nich. 1234 00:55:45,510 --> 00:55:49,520 Možno, že čokoľvek, čo zadanie spĺňa aj podmienku 1235 00:55:49,520 --> 00:55:51,811 pretože ak a else if. 1236 00:55:51,811 --> 00:55:53,060 Jediná vec, ktorá sa deje na beh 1237 00:55:53,060 --> 00:55:56,240 >> ALLISON: Akonáhle sa nájde niečo, čo že spĺňa podmienky na to 1238 00:55:56,240 --> 00:55:59,790 vyhodnotí ako pravda, to je to, čo to bude bežať a nič iného. 1239 00:55:59,790 --> 00:56:04,440 Takže ak ste mali, je toto číslo medzi 0 a 5 pre prvý, 1240 00:56:04,440 --> 00:56:10,530 alebo je to číslo medzi 3 a 5 pre else if časť, 1241 00:56:10,530 --> 00:56:15,550 a zadáte number-- Povedal som 0 a 5 a- 4. 1242 00:56:15,550 --> 00:56:18,110 Bude to hit prvý. 1243 00:56:18,110 --> 00:56:20,960 Je to povie OK, toto číslo medzi 0 a 5. 1244 00:56:20,960 --> 00:56:22,480 Vykonávanie a odísť. 1245 00:56:22,480 --> 00:56:25,340 To sa nikdy zasiahnuť, že druhú možnosť. 1246 00:56:25,340 --> 00:56:26,394 V pohode? 1247 00:56:26,394 --> 00:56:27,250 Úžasné. 1248 00:56:27,250 --> 00:56:31,300 >> OK máme tiež vyhlásenie prepínač ak, Ak chcete získať ešte more-- alebo ľúto, 1249 00:56:31,300 --> 00:56:31,965 Spínač sa nachádza hneď vedľa. 1250 00:56:31,965 --> 00:56:33,540 1251 00:56:33,540 --> 00:56:34,990 Som predbieham tu. 1252 00:56:34,990 --> 00:56:36,370 1253 00:56:36,370 --> 00:56:39,210 Opäť platí, že v prípade viacerých blokov kde, ako som práve povedal, 1254 00:56:39,210 --> 00:56:45,600 je, akonáhle zistíte stav že je splnená aj v prípade, else if iný, 1255 00:56:45,600 --> 00:56:46,630 opustí. 1256 00:56:46,630 --> 00:56:49,560 Ak potrebujete skontrolovať viac veci, ty si 1257 00:56:49,560 --> 00:56:53,000 bude chcieť používať to, pretože bude kontrolovať zakaždým tu. 1258 00:56:53,000 --> 00:56:58,060 Takže to bude prejsť, a ak je väčšia ako alebo rovná 90 ° C, 1259 00:56:58,060 --> 00:56:59,160 to bude tlačiť to. 1260 00:56:59,160 --> 00:57:00,530 1261 00:57:00,530 --> 00:57:03,600 A pobeží až do konca a skontrolovať každý jeden z nich. 1262 00:57:03,600 --> 00:57:06,444 >> Divákov: Takže by to bolo viac buggy než [nepočuteľné]. 1263 00:57:06,444 --> 00:57:07,735 Bolo by to ako [nepočuteľné]? 1264 00:57:07,735 --> 00:57:10,990 1265 00:57:10,990 --> 00:57:15,740 >> ALLISON: otázka by to bolo buggy, alebo to, čo chcete. 1266 00:57:15,740 --> 00:57:19,830 To naozaj záleží na tom, čo Chcete zo svojho programu. 1267 00:57:19,830 --> 00:57:22,291 >> Divákov: Myslím, ako keď dáte 90 palcov 1268 00:57:22,291 --> 00:57:23,290 ALLISON: Ak dáte 90-- 1269 00:57:23,290 --> 00:57:24,206 Divákov: [nepočuteľné]. 1270 00:57:24,206 --> 00:57:25,584 1271 00:57:25,584 --> 00:57:27,250 GABRIEL: Budeš mať dve veci. 1272 00:57:27,250 --> 00:57:28,916 ALLISON: Budeš mať dve veci. 1273 00:57:28,916 --> 00:57:29,420 Áno, dve. 1274 00:57:29,420 --> 00:57:32,420 1275 00:57:32,420 --> 00:57:33,920 >> ROB BOWDEN: Two? 1276 00:57:33,920 --> 00:57:34,580 >> ALLISON: Nie 1277 00:57:34,580 --> 00:57:35,288 >> ROB BOWDEN: Štyri. 1278 00:57:35,288 --> 00:57:37,070 1279 00:57:37,070 --> 00:57:40,070 Ak vložíte 90, bude to hovoríte dostal A, máš B, máš C, 1280 00:57:40,070 --> 00:57:40,545 máš D. 1281 00:57:40,545 --> 00:57:41,461 >> Divákov: [nepočuteľné]. 1282 00:57:41,461 --> 00:57:42,196 1283 00:57:42,196 --> 00:57:42,820 ALLISON: Správne. 1284 00:57:42,820 --> 00:57:44,778 Tak som je závislá na tom, čo chcem od vás programu. 1285 00:57:44,778 --> 00:57:47,050 Niekedy je potrebné skontrolovať viac vecí. 1286 00:57:47,050 --> 00:57:49,970 1287 00:57:49,970 --> 00:57:55,270 Získate oveľa hlbšie do toho, čo Dobrý dizajn je ako ísť dopredu. 1288 00:57:55,270 --> 00:57:57,090 Je dôležité si si uvedomiť, že táto 1289 00:57:57,090 --> 00:58:01,090 bude kontrolovať tu všetky štyri podmienky. 1290 00:58:01,090 --> 00:58:05,860 Vzhľadom k tomu, keby to bolo v prípade, else if iný ak iný by to hit, že prvá vec, 1291 00:58:05,860 --> 00:58:07,950 že by vytlačiť ste sa dostali k A a hotovo. 1292 00:58:07,950 --> 00:58:10,250 >> ROB BOWDEN: aj keď sme rozhodla zmeniť to, či 1293 00:58:10,250 --> 00:58:13,880 a väčšia ako alebo rovná 90 ° C, ak a väčšie alebo rovné 80 ° C, 1294 00:58:13,880 --> 00:58:19,710 a menšie ako alebo rovná 89, ak n väčšie ako alebo rovná 70 ° C, 1295 00:58:19,710 --> 00:58:23,830 a n menšie alebo rovné 79, takže bude správne. 1296 00:58:23,830 --> 00:58:27,190 To bude robiť to, čo chceme, ale stále kontroluje každý to. 1297 00:58:27,190 --> 00:58:34,050 >> Takže zatiaľ čo v prvom prípade, ak by sme zadajte 90 sa len v prípade, else if else if, 1298 00:58:34,050 --> 00:58:37,300 a zadáme 90, potom bude to napraviť. 1299 00:58:37,300 --> 00:58:39,615 To bude kontrolovať prvé jeden, tlač máš s A, 1300 00:58:39,615 --> 00:58:42,590 preskočiť všetko, pretože to už našiel jeden, ktorý funguje. 1301 00:58:42,590 --> 00:58:46,360 Všetky prípady sa navzájom vylučujú na základe ak else if else if. 1302 00:58:46,360 --> 00:58:48,630 Takže to bude vykonávať prvý, ak, potom je to hotovo. 1303 00:58:48,630 --> 00:58:49,790 Pôjde až do konca. 1304 00:58:49,790 --> 00:58:52,400 >> Vzhľadom k tomu, ak zmeníme to byť tým, čím som bol 1305 00:58:52,400 --> 00:58:54,204 hovorí s menej alebo rovné 89. 1306 00:58:54,204 --> 00:58:55,620 Bude to skontrolovať prvý. 1307 00:58:55,620 --> 00:58:56,560 To bude tlačiť. 1308 00:58:56,560 --> 00:58:58,010 To bude kontrolovať ten druhý. 1309 00:58:58,010 --> 00:58:59,010 To nebude tlačiť. 1310 00:58:59,010 --> 00:58:59,910 Skontrolujte, či tretie. 1311 00:58:59,910 --> 00:59:00,620 Nebude tlačiť. 1312 00:59:00,620 --> 00:59:01,495 Skontrolujte, či štvrtý. 1313 00:59:01,495 --> 00:59:02,420 Teraz ide do tlače. 1314 00:59:02,420 --> 00:59:05,380 Takže v tomto prípade, ak iný verzie, pretože tieto prípady 1315 00:59:05,380 --> 00:59:09,120 sa navzájom vylučujú, je to lepšie využitie, ak else if else if, 1316 00:59:09,120 --> 00:59:12,970 pretože to bude mať menej kontroly podmienok 1317 00:59:12,970 --> 00:59:14,750 než táto verzia. 1318 00:59:14,750 --> 00:59:17,692 1319 00:59:17,692 --> 00:59:18,400 ALLISON: Úžasné. 1320 00:59:18,400 --> 00:59:20,580 Takže ďalšia vec, ktorú môžeme urobiť, je vyhlásenie spínač. 1321 00:59:20,580 --> 00:59:23,104 1322 00:59:23,104 --> 00:59:25,270 V podstate switch sa v niektorých premenné, 1323 00:59:25,270 --> 00:59:28,780 V tomto prípade je to n, a určuje, ktorý prípad spustiť. 1324 00:59:28,780 --> 00:59:33,106 Takže to je tiež jeden, kde sa vaše prípady by mal byť druh vzájomne vylučujú. 1325 00:59:33,106 --> 00:59:35,210 1326 00:59:35,210 --> 00:59:37,940 Takže v tomto prípade, ak je my sme si jeden, je to 1327 00:59:37,940 --> 00:59:42,270 bude zodpovedať čo to proměnná-- bez ohľadu na hodnotu n 1328 00:59:42,270 --> 00:59:48,700 je na jednom z týchto prípadov, tak 1, 2, alebo 3, a vytlačiť zodpovedajúci riadok. 1329 00:59:48,700 --> 00:59:51,870 >> A potom, keď si všimnete, tu, máme tiež predvolený, 1330 00:59:51,870 --> 00:59:54,670 ktoré si môžete z myslieť ako váš iného. 1331 00:59:54,670 --> 00:59:58,510 Takže ak si vyberiete iné číslo okrem 1, 2, a 3, v tomto prípade 1332 00:59:58,510 --> 00:59:59,885 je to len bude tlačiť neplatné. 1333 00:59:59,885 --> 01:00:03,690 1334 01:00:03,690 --> 01:00:08,390 Rozhodovanie o tom, kedy použiť IFS porovnanie ak elses proti spínača sa deje 1335 01:00:08,390 --> 01:00:12,590 ako niečo, čo vy bude pozri navrhnúť múdry, ako začnete písať 1336 01:00:12,590 --> 01:00:15,270 zložitejšie programy, a tam žiadna tvrdá a rýchla pravidlá 1337 01:00:15,270 --> 01:00:16,330 kedy ich použiť. 1338 01:00:16,330 --> 01:00:17,890 To naozaj záleží na vašom kontextu. 1339 01:00:17,890 --> 01:00:18,590 >> ROB BOWDEN: A práve hodiť to tam 1340 01:00:18,590 --> 01:00:20,131 pretože to je oveľa pohodlnejšie časť. 1341 01:00:20,131 --> 01:00:20,920 1342 01:00:20,920 --> 01:00:25,053 Spínače, majú tendenciu be-- takže máte obmedzený 1343 01:00:25,053 --> 01:00:27,430 V mnohých ohľadoch si je použiť, pretože IFS, 1344 01:00:27,430 --> 01:00:30,100 stav môže byť docela čokoľvek budete chcieť. 1345 01:00:30,100 --> 01:00:33,410 S prepína prípady musia byť čísla, 1346 01:00:33,410 --> 01:00:37,770 alebo technicky môžu byť znaky, ale znaky, ako uvidíme, sú len čísla. 1347 01:00:37,770 --> 01:00:44,250 Takže musí byť čísla, ale prepínače sú naozaj účinnejšie ako v prípade 1348 01:00:44,250 --> 01:00:50,060 else if else if, pretože aj na príklade before-- dobre, 1349 01:00:50,060 --> 01:00:51,486 Príkladom stupeň sa zdá byť dobré. 1350 01:00:51,486 --> 01:00:52,550 1351 01:00:52,550 --> 01:00:57,080 >> No povedzme, že tu máme namiesto toho robiť to ako v prípade, else if else if scenár. 1352 01:00:57,080 --> 01:01:00,930 Takže ak n sa rovná rovná sa 1, vytlačte si vybral nízky počet. 1353 01:01:00,930 --> 01:01:04,490 V prípade iného, ​​pokiaľ je n rovné rovná 2, si vybral strednú číslo. 1354 01:01:04,490 --> 01:01:06,550 Else if rovná sa rovná 3, vysokým. 1355 01:01:06,550 --> 01:01:08,060 Else neplatné. 1356 01:01:08,060 --> 01:01:09,820 >> Takže povedzme, že bol náš scenár. 1357 01:01:09,820 --> 01:01:14,060 Takže povedzme, že zadáme 4, tak očakávame, že neplatné. 1358 01:01:14,060 --> 01:01:17,410 Tak, že ak else if iný ak bolo prístup bude fungovať, je 1359 01:01:17,410 --> 01:01:18,740 kontroluje prvú podmienku. 1360 01:01:18,740 --> 01:01:19,776 Nie je spokojný. 1361 01:01:19,776 --> 01:01:21,150 Tak sme skontrolovať druhú podmienku. 1362 01:01:21,150 --> 01:01:21,940 Nie je spokojný. 1363 01:01:21,940 --> 01:01:23,023 Skontrolujte, či tretiu podmienku. 1364 01:01:23,023 --> 01:01:23,640 Nie je splnená. 1365 01:01:23,640 --> 01:01:26,650 Tak sme sa ísť do iného a vytlačiť neplatné. 1366 01:01:26,650 --> 01:01:30,169 >> Spôsob, akým sa spínacie práce je to prekladá dole 1367 01:01:30,169 --> 01:01:31,960 na to, čo budeme zavolať skok tabuľky. 1368 01:01:31,960 --> 01:01:33,180 1369 01:01:33,180 --> 01:01:37,120 Hlavná myšlienka je že ak zadáte 4, 1370 01:01:37,120 --> 01:01:39,090 môže ísť ihneď na predvolené hodnoty. 1371 01:01:39,090 --> 01:01:41,460 Nie je potrebné kontrolovať som prípad 1? 1372 01:01:41,460 --> 01:01:42,350 Nie, že to nie je ono. 1373 01:01:42,350 --> 01:01:42,850 Prípad 2? 1374 01:01:42,850 --> 01:01:43,240 Nie. 1375 01:01:43,240 --> 01:01:43,770 Prípad 3? 1376 01:01:43,770 --> 01:01:44,270 Nie. 1377 01:01:44,270 --> 01:01:45,090 Default. 1378 01:01:45,090 --> 01:01:47,610 OK, to musí byť tam, kde som chcú, a potom spustiť to. 1379 01:01:47,610 --> 01:01:49,590 Nie, to okamžite skočí na predvolené hodnoty. 1380 01:01:49,590 --> 01:01:51,900 Alebo to zadám 2, je to okamžite ísť na 2 1381 01:01:51,900 --> 01:01:54,060 aby bolo nutné prejsť prípade 1. 1382 01:01:54,060 --> 01:01:57,820 >> Takže týmto spôsobom, realisticky, že dnes je 1383 01:01:57,820 --> 01:02:00,250 Nie je to moc nárastu efektívnosti. 1384 01:02:00,250 --> 01:02:02,880 Obvykle počítače sú dosť rýchlo, a to nie je tak veľký. 1385 01:02:02,880 --> 01:02:07,270 Ale je pravda, že prepínače sú rýchlejšie. 1386 01:02:07,270 --> 01:02:10,380 Ak ste naozaj snaží optimalizovať, použiť prepínač. 1387 01:02:10,380 --> 01:02:11,980 1388 01:02:11,980 --> 01:02:12,710 >> ALLISON: cool. 1389 01:02:12,710 --> 01:02:15,270 A potom máme ternárnu operátor. 1390 01:02:15,270 --> 01:02:19,470 Takže viem, že som sa zmienil predtým, slovo syntaktický cukor. 1391 01:02:19,470 --> 01:02:24,160 Takže je to len veci, ktoré kód oveľa výstižnejší. 1392 01:02:24,160 --> 01:02:25,590 Tak toto je jeden z tých prípadov. 1393 01:02:25,590 --> 01:02:31,430 >> Takže ternárnu operátor je otáznik hrubého čreva, ako vidíme v riadku reťazci 1394 01:02:31,430 --> 01:02:35,810 s sa rovná n väčšie ako 100 otáznik vysoká hrubého čreva nízka. 1395 01:02:35,810 --> 01:02:41,800 Takže v podstate, ako to funguje, je to n väčšie ako 100, je podmienkou. 1396 01:02:41,800 --> 01:02:43,674 Takže myslím, že to môže mať zmysel. 1397 01:02:43,674 --> 01:02:44,840 Je to ako pýtať otázku. 1398 01:02:44,840 --> 01:02:47,320 To hovorí oh, je n väčšie ako 100. 1399 01:02:47,320 --> 01:02:48,340 Kto vie? 1400 01:02:48,340 --> 01:02:50,750 A ak to vyhodnotí ako pravda, že to bude tak, aby vám 1401 01:02:50,750 --> 01:02:54,270 Prvá vec, ktorá je v ňom uvedené, čo je vysoká. 1402 01:02:54,270 --> 01:02:55,840 V opačnom prípade to bude, aby vám nízky. 1403 01:02:55,840 --> 01:03:01,210 Takže je to len naozaj jednoduchá a účinný spôsob, ako to urobiť, ako v prípade iného. 1404 01:03:01,210 --> 01:03:02,780 To je všetko, to je. 1405 01:03:02,780 --> 01:03:07,450 >> A ak by sme mali napísať, ako v prípade iného podmienené, 1406 01:03:07,450 --> 01:03:12,480 by bolo, keby n je väčšie ako 100, vráti vysoká. 1407 01:03:12,480 --> 01:03:14,220 Inak vráti nízka. 1408 01:03:14,220 --> 01:03:17,570 To je len oveľa stručné spôsob písania. 1409 01:03:17,570 --> 01:03:27,090 >> ROB BOWDEN: Takže tento konkrétny príklad je vždy, keď robíte niečo, čo 1410 01:03:27,090 --> 01:03:30,190 ako je toto, je vzor kde sa používa ternárnu veľmi často. 1411 01:03:30,190 --> 01:03:31,540 1412 01:03:31,540 --> 01:03:35,460 Takže sme nehovorili o objeme ešte, ale ja neznášam vidieť reťazci s bodkočiarku. 1413 01:03:35,460 --> 01:03:39,150 Ak je n väčšie ako 100, s sa rovná vysoké. 1414 01:03:39,150 --> 01:03:40,660 Inak, s rovná nízka. 1415 01:03:40,660 --> 01:03:45,070 Tak, že vzorka, tých päť riadkov kódu doslova 100% času 1416 01:03:45,070 --> 01:03:49,800 môžu byť prenesené do čo Bol tam s trojice. 1417 01:03:49,800 --> 01:03:52,340 Takže trojica, jeden riadok kódu. 1418 01:03:52,340 --> 01:03:54,640 Ak iný, päť. 1419 01:03:54,640 --> 01:03:56,910 To je príklad I bode z každého okamihu. 1420 01:03:56,910 --> 01:03:59,250 To by skvelé miesto pre ternárnu operátor. 1421 01:03:59,250 --> 01:04:00,647 Je to tak čisté. 1422 01:04:00,647 --> 01:04:01,980 Ale ľudia majú tendenciu nikdy použiť. 1423 01:04:01,980 --> 01:04:06,140 1424 01:04:06,140 --> 01:04:08,030 >> ALLISON: Daj to preč Gabe. 1425 01:04:08,030 --> 01:04:11,110 >> GABRIEL: Tak teraz vy všetci získané v prednáške tento týždeň 1426 01:04:11,110 --> 01:04:13,420 že je všetko v Počítač je binárny, že jo? 1427 01:04:13,420 --> 01:04:14,570 Rovnako ako lampy tu. 1428 01:04:14,570 --> 01:04:16,492 Môžete buď zapnúť alebo vypnúť. 1429 01:04:16,492 --> 01:04:18,450 A všetko, mám na mysli doslova všetko. 1430 01:04:18,450 --> 01:04:24,272 Niektoré čísla a znaky a reťazce, a dokonca aj kód, ktorý píšete, keď 1431 01:04:24,272 --> 01:04:26,480 sa dostane zostavené tak, aby stroj kód a podobné veci, 1432 01:04:26,480 --> 01:04:29,230 tak to všetko sa scvrkáva na 0 a 1 ". 1433 01:04:29,230 --> 01:04:34,540 >> A tak, keď máme čo do činenia s celými číslami, ktorá 1434 01:04:34,540 --> 01:04:38,000 je niečo, čo je technicky veľmi jednoduché, mali by sme byť schopní robiť veci, 1435 01:04:38,000 --> 01:04:40,630 ako ich pridanie, ktoré je Pravdepodobne jeden z najjednoduchších vecí, 1436 01:04:40,630 --> 01:04:42,300 môžete robiť dve celé čísla, že? 1437 01:04:42,300 --> 01:04:47,410 Takže sčítanie a odčítanie funguje rovnako ako to funguje v desiatkovej, 1438 01:04:47,410 --> 01:04:50,780 okrem tu je to binárny, že jo? 1439 01:04:50,780 --> 01:04:52,090 Takže je to v základe dve. 1440 01:04:52,090 --> 01:04:54,070 Takže pridať 1 + 1. 1441 01:04:54,070 --> 01:04:57,020 To sme našli 0 a 1 sa prenáša. 1442 01:04:57,020 --> 01:05:01,335 A len pokračovať v tom, že, Takže teraz je zaujímavejšia otázka. 1443 01:05:01,335 --> 01:05:03,730 1444 01:05:03,730 --> 01:05:07,710 >> Vieme, ako reprezentovať všetky pozitívne celé čísla v počítači, 1445 01:05:07,710 --> 01:05:09,870 ale urobme to cvičenie. 1446 01:05:09,870 --> 01:05:15,240 Predstierať, že vy ste všetci v roku 1960 alebo niečo, čo sa snaží vytvoriť počítač, 1447 01:05:15,240 --> 01:05:19,950 a budete musieť prísť na spôsob ukladania mínus 1, 1448 01:05:19,950 --> 01:05:22,554 napríklad, alebo mínus číslo na to príde. 1449 01:05:22,554 --> 01:05:23,470 Ako by ste to urobil? 1450 01:05:23,470 --> 01:05:27,820 1451 01:05:27,820 --> 01:05:29,220 Nejaké nápady? 1452 01:05:29,220 --> 01:05:31,302 Stačí hodiť niečo na mňa. 1453 01:05:31,302 --> 01:05:32,264 Áno? 1454 01:05:32,264 --> 01:05:39,480 >> Divákov: [nepočuteľné] určí zvláštne, ak váš [nepočuteľné]. 1455 01:05:39,480 --> 01:05:42,590 >> GABRIEL: Môžete určiť, špeciálny bit, ktorý bude 0 alebo 1. 1456 01:05:42,590 --> 01:05:45,590 Povedzme, že jeden, ak je to pozitívny a 0, ak je to negatívne. 1457 01:05:45,590 --> 01:05:48,171 A potom zvyšok bitu práve na uloženie čísla. 1458 01:05:48,171 --> 01:05:48,670 V pohode. 1459 01:05:48,670 --> 01:05:49,990 Tak to je veľmi dobrý nápad. 1460 01:05:49,990 --> 01:05:51,550 Máme, ja neviem, 200. 1461 01:05:51,550 --> 01:05:54,720 A v prípade, že prvý bit je zapnutý, potom je to navyše 200. 1462 01:05:54,720 --> 01:05:57,270 Ak je to vypnuté, to je mínus 200. 1463 01:05:57,270 --> 01:05:58,380 V pohode. 1464 01:05:58,380 --> 01:06:01,350 >> Je tu len jeden malý Problém s týmto, 1465 01:06:01,350 --> 01:06:05,370 ktorý je, ak sa snažíme zhrnúť veci. 1466 01:06:05,370 --> 01:06:18,910 Tak si predstavte máme 11111 tu, a sme ako súčet to s 00100 čokoľvek. 1467 01:06:18,910 --> 01:06:21,630 Ak tí dvaja sú pozitívne, to je v poriadku. 1468 01:06:21,630 --> 01:06:24,470 Ale potom, ak jeden z nimi je negatívne, rovnako ako 1469 01:06:24,470 --> 01:06:27,410 povedzme, že tento bit tu je ten, ktorý je zodpovedný 1470 01:06:27,410 --> 01:06:31,390 for-- budem robiť separate-- tak to znamená, že jeden toto číslo tu 1471 01:06:31,390 --> 01:06:31,970 je pozitívny. 1472 01:06:31,970 --> 01:06:34,450 To znamená, že táto jedna Číslo ktoré tu je záporná, je to tak? 1473 01:06:34,450 --> 01:06:37,010 >> Ale potom, keď ste bude im povedané, vy 1474 01:06:37,010 --> 01:06:40,180 Potrebujete if hovorí, oh, ak je to 0, 1475 01:06:40,180 --> 01:06:43,479 potom môj suma bude niečo iné, nie? 1476 01:06:43,479 --> 01:06:45,270 Takže tam je trochu viac šikovný spôsob, ako to urobiť 1477 01:06:45,270 --> 01:06:48,520 To, čo sa nazýva dvojkový doplnok. 1478 01:06:48,520 --> 01:06:52,350 Takže v podstate to, čo sme urobiť, je definujeme mínus 1 1479 01:06:52,350 --> 01:06:57,250 byť vec, ktorá v prípade sčítame 1 dáva nám 0. 1480 01:06:57,250 --> 01:06:59,470 1481 01:06:59,470 --> 01:07:00,860 Dovoľte mi to zopakovať. 1482 01:07:00,860 --> 01:07:03,280 Takže povedzme, že toto je 1. 1483 01:07:03,280 --> 01:07:08,110 1484 01:07:08,110 --> 01:07:13,570 Čo je to, čo prirodzene v prirodzených čísel 1485 01:07:13,570 --> 01:07:15,570 pripočítať k nám 0 dáva? 1486 01:07:15,570 --> 01:07:19,150 1487 01:07:19,150 --> 01:07:21,030 Čo keď sa snažíme pridať do tejto položky? 1488 01:07:21,030 --> 01:07:22,830 1489 01:07:22,830 --> 01:07:28,032 Budeme have-- OK, tak sa poďme pridať. 1490 01:07:28,032 --> 01:07:32,820 1491 01:07:32,820 --> 01:07:38,065 Budeme mať 1 + 1 0, a potom sa to prenáša. 1492 01:07:38,065 --> 01:07:40,160 1493 01:07:40,160 --> 01:07:45,490 A potom budeme mať opäť 0. 1494 01:07:45,490 --> 01:07:47,730 1495 01:07:47,730 --> 01:07:48,820 Začínam zmätený. 1496 01:07:48,820 --> 01:07:51,670 A budete mať 0 a 0 a 0, a 0, a 0 a 0. 1497 01:07:51,670 --> 01:07:52,450 Veľa 0 rokov. 1498 01:07:52,450 --> 01:07:56,240 >> Na posledný jeden, nie sme bude schopný vykonávať ju, 1499 01:07:56,240 --> 01:07:59,614 pretože povedzme, že máme iba rokovania s jedným bytom, tak len 8 bitov. 1500 01:07:59,614 --> 01:08:02,780 Takže to, čo počítač robí štandardne je jednoducho zabudne, že [nepočuteľné] 1501 01:08:02,780 --> 01:08:03,279 OK? 1502 01:08:03,279 --> 01:08:04,530 1503 01:08:04,530 --> 01:08:06,880 Tak toto je to, čo sa nazýva dvojkového doplnku. 1504 01:08:06,880 --> 01:08:15,180 Proste sme definovať mínus 1, musí byť vec tu, že ak pridáte, že na 1 1505 01:08:15,180 --> 01:08:15,995 by vám 0. 1506 01:08:15,995 --> 01:08:17,609 1507 01:08:17,609 --> 01:08:20,180 A to je celkom v pohode pretože my naozaj 1508 01:08:20,180 --> 01:08:24,090 Potrebujete neskoro realizovať iný typ súčtu 1509 01:08:24,090 --> 01:08:26,590 v závislosti na tom, či je to negatívne alebo pozitívne číslo. 1510 01:08:26,590 --> 01:08:27,465 Dáva to zmysel? 1511 01:08:27,465 --> 01:08:28,740 1512 01:08:28,740 --> 01:08:32,370 >> Takže jedna vec, ktorú robíme tu za účelom premeny 1513 01:08:32,370 --> 01:08:38,550 medzi pozitívne a negatívne číslo sa potom otočiť všetko, 1514 01:08:38,550 --> 01:08:40,930 a potom pridáme 1 na toto číslo. 1515 01:08:40,930 --> 01:08:43,140 Ak sa pokúsite urobiť sami na kus papiera, 1516 01:08:43,140 --> 01:08:44,681 budete vidieť, že to dáva zmysel. 1517 01:08:44,681 --> 01:08:51,000 Ale keď si vezmem toto číslo tu, to je päť. 1518 01:08:51,000 --> 01:08:54,859 Takže keď som fanda všetko tu, tak 1, 1, 1, 1, 1. 1519 01:08:54,859 --> 01:08:55,880 1520 01:08:55,880 --> 01:08:57,830 Flip, flip, flip. 1521 01:08:57,830 --> 01:09:00,130 A potom som pridať 1 k nemu. 1522 01:09:00,130 --> 01:09:02,750 Budem mať presne mínus 5. 1523 01:09:02,750 --> 01:09:03,250 OK? 1524 01:09:03,250 --> 01:09:06,220 >> Tento druh dáva zmysel, pretože ak sa pokúsite sčítať to s číslom 1525 01:09:06,220 --> 01:09:10,229 že sme mali predtým, čo was-- poďme otočiť to znova. 1526 01:09:10,229 --> 01:09:12,999 Bolo to 101 a kopa 0 rokov. 1527 01:09:12,999 --> 01:09:13,795 1528 01:09:13,795 --> 01:09:15,670 Ak sa pokúsite pridať tieto dve čísla dohromady, 1529 01:09:15,670 --> 01:09:16,961 budete mať presne 0. 1530 01:09:16,961 --> 01:09:18,920 1531 01:09:18,920 --> 01:09:19,460 OK. 1532 01:09:19,460 --> 01:09:19,884 Nejaké otázky? 1533 01:09:19,884 --> 01:09:20,759 >> Divákov: [nepočuteľné] 1534 01:09:20,759 --> 01:09:25,790 1535 01:09:25,790 --> 01:09:27,280 >> GABRIEL: Čo tým myslíš? 1536 01:09:27,280 --> 01:09:29,240 >> Divákov: negatívny Pozitívne [nepočuteľné]. 1537 01:09:29,240 --> 01:09:33,215 >> GABRIEL: Nie, otočiť a pridáte 1 vždy. 1538 01:09:33,215 --> 01:09:34,081 1539 01:09:34,081 --> 01:09:34,580 Jo. 1540 01:09:34,580 --> 01:09:36,910 1541 01:09:36,910 --> 01:09:39,680 OK, takže znaky kódované binárky. 1542 01:09:39,680 --> 01:09:42,649 Máme ASCII tabuľku, ako vy tiež videl v prednáške, že jo? 1543 01:09:42,649 --> 01:09:45,040 Takže je to v podstate mapovanie vecí. 1544 01:09:45,040 --> 01:09:50,960 A tu nemôžem dostatočne zdôrazniť, že počítač, a 65 1545 01:09:50,960 --> 01:09:52,770 sú doslova to isté. 1546 01:09:52,770 --> 01:10:03,430 Takže keď som sa napísať niečo ako char c rovná, mohol by som zároveň 1547 01:10:03,430 --> 01:10:06,890 stačí napísať 65 tu, a to by byť presne rovnaký, OK? 1548 01:10:06,890 --> 01:10:08,470 Neexistuje žiadny rozdiel vôbec. 1549 01:10:08,470 --> 01:10:12,420 >> Zvyčajne majú tendenciu dať znaky v premennej typu. 1550 01:10:12,420 --> 01:10:16,770 Char, nie preto, že sú v podstate stanovená, ale preto, že 1551 01:10:16,770 --> 01:10:18,050 ľudskej konvencie. 1552 01:10:18,050 --> 01:10:22,410 Ale môžete len riešenie s celými číslami miesto premennej typu char, 1553 01:10:22,410 --> 01:10:23,490 a budete v pohode. 1554 01:10:23,490 --> 01:10:28,410 Jediný skutočný rozdiel medzi char c, int i 1555 01:10:28,410 --> 01:10:31,960 je to, že int má štyri byty vo väčšine systémy, zatiaľ čo char má jeden bajt. 1556 01:10:31,960 --> 01:10:33,070 1557 01:10:33,070 --> 01:10:35,460 Sú to v podstate to isté čo sa týka dát. 1558 01:10:35,460 --> 01:10:36,990 1559 01:10:36,990 --> 01:10:37,990 Takže to, čo sa bude tlačiť tu? 1560 01:10:37,990 --> 01:10:43,780 Tu tlačíte číslicu pomocou printf so znamienkom plus 1, a rovnako ako celé čísla, 1561 01:10:43,780 --> 01:10:46,240 znaky možno zhrnúť, tak znaky môžu byť zrátané. 1562 01:10:46,240 --> 01:10:47,890 Tak to je presne 65. 1563 01:10:47,890 --> 01:10:49,950 Takže tam to bude 66, a tu máme 1564 01:10:49,950 --> 01:10:56,860 65 a trochu mínus veľký, ktorá bude, ja naozaj neviem. 1565 01:10:56,860 --> 01:11:00,900 Ale to bude presne medzera Medzi veľkými písmenami 1566 01:11:00,900 --> 01:11:07,800 a a menšie písmená, takže budeme mať malý, že jo? 1567 01:11:07,800 --> 01:11:08,300 Jo. 1568 01:11:08,300 --> 01:11:11,740 Takže to bude tlačiť charakter, ktorý je presne toto. 1569 01:11:11,740 --> 01:11:12,260 Dobré? 1570 01:11:12,260 --> 01:11:12,860 Nejaké otázky? 1571 01:11:12,860 --> 01:11:16,320 1572 01:11:16,320 --> 01:11:19,430 >> Tu máme veľa rôznych typy pre numerické ukazovatele. 1573 01:11:19,430 --> 01:11:20,620 Už hovoríme o int. 1574 01:11:20,620 --> 01:11:21,740 1575 01:11:21,740 --> 01:11:27,760 Float je len spôsob, ako to-- je to naozaj legrační, pretože keď som sa prvýkrát dozvedel, 1576 01:11:27,760 --> 01:11:32,320 naprogramovať späť v deň s Python, prvý program, čo som kedy 1577 01:11:32,320 --> 01:11:37,480 sa snažil písať, videl som, že to tam bolo Typ zavolal a typ nazvaný plávať. 1578 01:11:37,480 --> 01:11:39,800 A plavák bol pre všetky reálne čísla. 1579 01:11:39,800 --> 01:11:43,290 Tak som sa spýtal, prečo by sa Čo som kedy použiť int potom? 1580 01:11:43,290 --> 01:11:45,590 Vzhľadom k tomu, či môžem používať všetky reálne čísla s plavákom, 1581 01:11:45,590 --> 01:11:47,120 Len by som prestať používať celých čísel, je to tak? 1582 01:11:47,120 --> 01:11:49,550 Pretože reálne čísla sú rovnako ako všeobecnejšie. 1583 01:11:49,550 --> 01:11:51,820 1584 01:11:51,820 --> 01:11:54,060 >> Ukazuje sa, že je to nie je tomu tak v oblasti počítačov 1585 01:11:54,060 --> 01:11:58,480 preto, že sú v podstate rôzne veci. 1586 01:11:58,480 --> 01:12:01,470 Takže celé čísla a plaváky, operácie, ktoré môžete urobiť, aby sa im 1587 01:12:01,470 --> 01:12:04,739 sú v podstate odlišné, pretože spôsobu, akým sú uložené, OK? 1588 01:12:04,739 --> 01:12:07,280 Budeme hovoriť trochu niečo viac o tom, že v druhom. 1589 01:12:07,280 --> 01:12:09,110 >> Takže double je len väčší float. 1590 01:12:09,110 --> 01:12:12,830 Zvyčajne vo väčšine systémov, plavák sú štyri byty, rovnako ako int. 1591 01:12:12,830 --> 01:12:15,440 A double je osem bajtov. 1592 01:12:15,440 --> 01:12:21,450 Long long je vlastne len symbol ktorý pripojíte k typu, ako je int. 1593 01:12:21,450 --> 01:12:24,040 Hovoríte, že long long int takhle. 1594 01:12:24,040 --> 01:12:28,550 Long long int x, aby to dlhšie. 1595 01:12:28,550 --> 01:12:32,310 Takže vo väčšine systémov, ktoré umožnia osem bajtov namiesto obvyklých štyroch. 1596 01:12:32,310 --> 01:12:35,620 A môžete skutočne klesnúť in, tak to môže len povedať, long long, 1597 01:12:35,620 --> 01:12:37,240 a že pracuje príliš, OK? 1598 01:12:37,240 --> 01:12:42,850 Môžete si tiež robiť iné veci, ako je unsigned int, alebo opäť len unsigned 1599 01:12:42,850 --> 01:12:43,680 by tiež fungovať. 1600 01:12:43,680 --> 01:12:49,370 A že by x byť premenná ako všetko je pozitívne, 1601 01:12:49,370 --> 01:12:53,231 takže si môžete naozaj mať negatívny čísla tak, že sme sa sem videl up. 1602 01:12:53,231 --> 01:12:56,484 1603 01:12:56,484 --> 01:12:58,650 Takže po nádherné plávajúcou desatinnou čiarkou a presnosť. 1604 01:12:58,650 --> 01:13:01,890 To je jeden z dôvodov, prečo ťa chcete použiť celých čísel namiesto plavákov, 1605 01:13:01,890 --> 01:13:04,370 pretože ints sú 100% presné, že jo? 1606 01:13:04,370 --> 01:13:06,170 Je to presne to číslo. 1607 01:13:06,170 --> 01:13:11,910 Pre plávajúce body, ak máte povedať, odpoveď sa rovná 1 nad 10-- 1608 01:13:11,910 --> 01:13:14,690 A stalo sa, že to presne Program tu float.c. 1609 01:13:14,690 --> 01:13:16,390 1610 01:13:16,390 --> 01:13:19,420 Ktorá tlačí na 20 desatinných miest. 1611 01:13:19,420 --> 01:13:23,270 1 delené 10, a že Obvykle je 0,1, nie? 1612 01:13:23,270 --> 01:13:27,910 Ale tu ak urobíme plávať a potom ho spustiť, 1613 01:13:27,910 --> 01:13:30,320 vidíme, že je to presne 0,1 nie. 1614 01:13:30,320 --> 01:13:33,570 Je to 0,149 niečo. 1615 01:13:33,570 --> 01:13:35,570 >> A prečo je tomu tak? 1616 01:13:35,570 --> 01:13:40,390 Pretože nemôžete skutočne reprezentovať každý jediné možné reálne číslo v pamäti 1617 01:13:40,390 --> 01:13:42,730 preto, že tam sú uncountably mnoho z nich. 1618 01:13:42,730 --> 01:13:48,360 Takže sme technicky schopní iba predstavujú obmedzené množstvo z nich 1619 01:13:48,360 --> 01:13:50,470 s konečným množstvom dát. 1620 01:13:50,470 --> 01:13:52,050 Ale je to naozaj zaujímavé. 1621 01:13:52,050 --> 01:13:54,920 Teraz to prosí otázka, ako by ste 1622 01:13:54,920 --> 01:13:59,299 ísť o zastupovanie to s kúskami, že jo? 1623 01:13:59,299 --> 01:14:00,340 Tak, ako sa pláva uložené? 1624 01:14:00,340 --> 01:14:01,970 1625 01:14:01,970 --> 01:14:03,730 S celými číslami to bolo jednoduché. 1626 01:14:03,730 --> 01:14:06,690 Ale s plavákmi chcete maximalizovať rozsah, 1627 01:14:06,690 --> 01:14:10,530 a ak chcete mať možnosť reprezentovať obrovské množstvo a veľmi malé množstvo, ako je 1628 01:14:10,530 --> 01:14:14,210 0.000001 v rovnakom čase. 1629 01:14:14,210 --> 01:14:15,180 Takže znovu, rovnaká hra. 1630 01:14:15,180 --> 01:14:20,470 Má niekto nejaký nápad, ako by sme mohli ísť o zastupovanie plavák v pamäti? 1631 01:14:20,470 --> 01:14:26,820 1632 01:14:26,820 --> 01:14:27,970 Proste nič nehádžte. 1633 01:14:27,970 --> 01:14:29,930 1634 01:14:29,930 --> 01:14:30,856 Áno, prosím. 1635 01:14:30,856 --> 01:14:33,552 >> Divákov: [nepočuteľné] as ak je to dva a jeden ints 1636 01:14:33,552 --> 01:14:36,890 že [nepočuteľné] a jedna bytosť všetko za desatinnou čiarkou. 1637 01:14:36,890 --> 01:14:37,640 GABRIEL: OK, v pohode. 1638 01:14:37,640 --> 01:14:40,300 Takže dva rôzne celé čísla. 1639 01:14:40,300 --> 01:14:45,260 Môžete mať 12,45, takže to je 12 a 45. 1640 01:14:45,260 --> 01:14:45,890 Nice. 1641 01:14:45,890 --> 01:14:46,973 Čo ERE chceš povedať? 1642 01:14:46,973 --> 01:14:48,420 1643 01:14:48,420 --> 01:14:49,430 To isté? 1644 01:14:49,430 --> 01:14:49,930 Jo? 1645 01:14:49,930 --> 01:14:55,630 >> Divákov: [nepočuteľné] notácie kde oddeliť základňu. 1646 01:14:55,630 --> 01:14:58,910 >> GABRIEL: Vedecká notácie, jo to je zvyčajne to, čo sa stane. 1647 01:14:58,910 --> 01:15:01,350 Tak toto je to, čo sa nazýva mantisa. 1648 01:15:01,350 --> 01:15:06,490 To je to, čo je v skutočnosti číslo, a potom exponent 1649 01:15:06,490 --> 01:15:08,780 je presne tam, kde je čiarka, nie? 1650 01:15:08,780 --> 01:15:13,720 Takže to bude niečo formuláre 1, 2, 3, 4, 5 krát 10 1651 01:15:13,720 --> 01:15:15,000 na mínus 4. 1652 01:15:15,000 --> 01:15:17,800 Len som si uvedomil, that-- jo, presne tak. 1653 01:15:17,800 --> 01:15:23,372 A potom 10 k mínus 4 je bude definovať, kde je čiarka, OK? 1654 01:15:23,372 --> 01:15:24,330 V Brazílii sme používať čiarku. 1655 01:15:24,330 --> 01:15:26,795 Tu si chlapci použiť bodku. 1656 01:15:26,795 --> 01:15:27,640 Tak bodka. 1657 01:15:27,640 --> 01:15:28,860 1658 01:15:28,860 --> 01:15:34,840 >> A to je v pohode, pretože potom môžete zamerať veľa vašich bitov na toho chlapa 1659 01:15:34,840 --> 01:15:40,863 Tu, na mantisy a potom je to bude skutočná presnosť. 1660 01:15:40,863 --> 01:15:41,920 1661 01:15:41,920 --> 01:15:47,175 A môžete to urobiť buď v desiatkovej sústave alebo v systéme na báze binárne. 1662 01:15:47,175 --> 01:15:49,781 K dispozícii sú rôzne spôsoby, ako realizovať to. 1663 01:15:49,781 --> 01:15:50,280 Otázky? 1664 01:15:50,280 --> 01:15:55,918 1665 01:15:55,918 --> 01:15:56,418 Áno? 1666 01:15:56,418 --> 01:15:57,508 1667 01:15:57,508 --> 01:15:59,841 Divákov: Koľko miesta za desatinnou čiarkou [nepočuteľné]? 1668 01:15:59,841 --> 01:16:05,240 1669 01:16:05,240 --> 01:16:12,610 >> GABRIEL: To je zložitá otázka, pretože to nikdy 100% presné, 1670 01:16:12,610 --> 01:16:15,680 pretože ako vidíte tu, pre niektoré čísla, že je 100% presné. 1671 01:16:15,680 --> 01:16:20,350 Verím, že ak dáme 0.5 tu to bude 100% presné. 1672 01:16:20,350 --> 01:16:22,220 To bude 0,500000. 1673 01:16:22,220 --> 01:16:24,170 Takže v tomto prípade, je to perfektné. 1674 01:16:24,170 --> 01:16:27,330 V iných prípadoch, je to oveľa menej dokonalé. 1675 01:16:27,330 --> 01:16:35,010 Podľa mojich skúseností, rovnako ako až štyri, päť desatinných miest je celkom presný. 1676 01:16:35,010 --> 01:16:38,300 Ak používate double, že to bude byť spôsob presnejší než to, OK? 1677 01:16:38,300 --> 01:16:42,750 >> ROB BOWDEN: Takže stačí hodiť niektoré ďalšie súvislosti na plaváky, 1678 01:16:42,750 --> 01:16:46,320 Nikdy som sa spomenúť si na 100%, ako sa spec plavákov skutočne funguje, 1679 01:16:46,320 --> 01:16:52,660 ale ja si vždy pamätať že pláva začať sa chaotický. 1680 01:16:52,660 --> 01:16:55,460 1681 01:16:55,460 --> 01:17:00,930 Takže predstava, že keď sa dostanete naozaj, naozaj veľké číslo, alebo naozaj, ale naozaj 1682 01:17:00,930 --> 01:17:03,470 malé množstvo, začneme stále horšie a horšie 1683 01:17:03,470 --> 01:17:05,860 pri rozlišovaní medzi dvoma blízkymi plaváky. 1684 01:17:05,860 --> 01:17:09,180 >> Tak, ako som chcel premýšľať o tom, s plávajúcou desatinnou čiarkou nepresnosti, 1685 01:17:09,180 --> 01:17:11,890 sú dva plaváky, ktoré ak sa pokúsim špecifikovať 1686 01:17:11,890 --> 01:17:15,150 v C, a to napriek skutočnosti, že sú rôzne čísla, 1687 01:17:15,150 --> 01:17:17,340 že budeš interpretovaný ako rovnakým číslom, 1688 01:17:17,340 --> 01:17:19,006 pretože nemôžeme ukladať ich inak. 1689 01:17:19,006 --> 01:17:20,540 Musíme používať rovnaké kúsky. 1690 01:17:20,540 --> 01:17:23,220 A tak, keď sa dostaneme do Naozaj, naozaj veľké množstvo, 1691 01:17:23,220 --> 01:17:28,460 hovorí ako 10 na 300 alebo niečo, to je v tomto bode 1692 01:17:28,460 --> 01:17:33,240 že 10 až 300, alebo 5x 10 až 300 1693 01:17:33,240 --> 01:17:37,020 nemôžu byť rozlíšené od 7 krát 10 na 300. 1694 01:17:37,020 --> 01:17:39,660 Tak to je dosť veľký rozdiel medzi týmito dvoma číslami. 1695 01:17:39,660 --> 01:17:43,830 >> Ale potom, keď sa dostanete dole do normálneho rozmedzia vecí, 1696 01:17:43,830 --> 01:17:45,770 máte tendenciu byť docela dobre odlíšiť. 1697 01:17:45,770 --> 01:17:49,020 A potom, keď sa dostanete dole naozaj malý, ste tiež stále znova dosť zlý. 1698 01:17:49,020 --> 01:17:52,529 Tak ako celá banda 0,0000, dostane dosť zlé. 1699 01:17:52,529 --> 01:17:53,820 GABRIEL: Jo, tak krátka poznámka. 1700 01:17:53,820 --> 01:17:54,670 Nikdy to nerobte. 1701 01:17:54,670 --> 01:17:57,590 Nikdy sa nesnažte porovnávať pláva pomocou rovná rovná, 1702 01:17:57,590 --> 01:18:02,800 pretože aj keď sú takmer To isté, takmer rovnaká nie je rovnaká. 1703 01:18:02,800 --> 01:18:06,360 Takže to, čo zvyčajne robíte, je odpočítať je, mať absolútnu hodnotu, že 1704 01:18:06,360 --> 01:18:12,380 a uvidíme, či to je menšia než 0,0001, alebo niečo také, OK? 1705 01:18:12,380 --> 01:18:12,880 A v pohode. 1706 01:18:12,880 --> 01:18:16,630 Viem, že veľa ľudí, ktorí majú Niektoré pozadia v jazyku Java, 1707 01:18:16,630 --> 01:18:19,700 najmä tých, ktorí sa AP počítačovej vedy, nie? 1708 01:18:19,700 --> 01:18:23,630 A Java je jazyk že väčšinou založené na C, 1709 01:18:23,630 --> 01:18:26,570 to má niekoľko veľmi veľké rozdiely. 1710 01:18:26,570 --> 01:18:31,430 Ale pre slučky a investičných fondov a tak podobne to, že sú všetky rovnakú syntax. 1711 01:18:31,430 --> 01:18:35,240 Mám niekoľko programov tu pre zobrazenie tejto. 1712 01:18:35,240 --> 01:18:37,050 >> Tak napríklad, jednoduchý Hello World. 1713 01:18:37,050 --> 01:18:43,140 1714 01:18:43,140 --> 01:18:46,600 To je hello world v C, ktorá vás Chlapci sú určite oboznámení s, 1715 01:18:46,600 --> 01:18:49,100 a to a to jeden je v Jave. 1716 01:18:49,100 --> 01:18:53,100 Takže v Jave máme to public class, hello world, 1717 01:18:53,100 --> 01:18:57,050 a public static void hlavné, a reťazec args. 1718 01:18:57,050 --> 01:18:59,665 Reťazec args idú sa objaví v C veľmi krátko. 1719 01:18:59,665 --> 01:19:00,740 1720 01:19:00,740 --> 01:19:01,990 Ale poďme sa tam doteraz. 1721 01:19:01,990 --> 01:19:06,060 Práve teraz tu máme void, čo znamená, že hlavná nie je žiadne argumenty. 1722 01:19:06,060 --> 01:19:09,220 A potom máme System.out.println, a to 1723 01:19:09,220 --> 01:19:11,140 druh ekvivalentu pre printf. 1724 01:19:11,140 --> 01:19:17,150 Tu nepotrebujú spätné lomítko n, pretože tlač ln urobí za vás. 1725 01:19:17,150 --> 01:19:19,680 To pripojí spätné lomítko n na konci riadku. 1726 01:19:19,680 --> 01:19:22,540 1727 01:19:22,540 --> 01:19:30,415 >> Ale keď idete do niečo ako A pre ste 1728 01:19:30,415 --> 01:19:32,590 je vidieť, že sú skoro to isté. 1729 01:19:32,590 --> 01:19:37,390 Tak inicializácia, a stav a aktualizácie 1730 01:19:37,390 --> 01:19:42,050 je-- Cnelo sa mi priestor here-- sú skoro to isté, okrem Java 1731 01:19:42,050 --> 01:19:44,430 má ako niekoľko ďalších vecí na vysokej úrovni. 1732 01:19:44,430 --> 01:19:46,010 1733 01:19:46,010 --> 01:19:49,610 Tu môžeme urobiť a ja a Java bude automaticky 1734 01:19:49,610 --> 01:19:52,730 aby to aj tu, čo je integer, do reťazca, 1735 01:19:52,730 --> 01:19:55,200 a potom sa pripojiť dva reťazce dohromady. 1736 01:19:55,200 --> 01:19:57,570 Tu v C musíme urobiť, a% d. 1737 01:19:57,570 --> 01:20:15,310 1738 01:20:15,310 --> 01:20:18,170 Linka tu, pre vyzerá úplne rovnako. 1739 01:20:18,170 --> 01:20:37,760 >> A ak sa pozrieme na v prípade, IFS tiež vyzerajú úplne rovnako, nie? 1740 01:20:37,760 --> 01:20:39,290 1741 01:20:39,290 --> 01:20:44,650 Takže skutočné veľké rozdiely sú v tých veciach, ktoré tu vidíte. 1742 01:20:44,650 --> 01:20:47,530 Public static, void, a potom public class-li. 1743 01:20:47,530 --> 01:20:48,990 1744 01:20:48,990 --> 01:20:52,360 Takže Java má to, čo je nazýva virtuálny stroj. 1745 01:20:52,360 --> 01:20:53,560 1746 01:20:53,560 --> 01:21:00,150 A to je veľmi silne založená na tom, čo sa nazýva objektovo orientované programovanie, 1747 01:21:00,150 --> 01:21:04,120 čo je veľmi, veľmi časté paradigma programovania v dnešnej dobe. 1748 01:21:04,120 --> 01:21:10,870 A táto trieda vec je to, čo vidíte, niečo z objektovej orientácie, 1749 01:21:10,870 --> 01:21:14,214 je vytvoriť triedu a potom vás možno odvodiť objekty z danej triedy. 1750 01:21:14,214 --> 01:21:16,380 Nebudeme hovoriť príliš veľa o tom v CS50, 1751 01:21:16,380 --> 01:21:18,213 ale to je určite niečo naozaj cool, 1752 01:21:18,213 --> 01:21:21,440 najmä v prípade, že chcete ísť do sofistikovanejšie vývoj webových aplikácií 1753 01:21:21,440 --> 01:21:24,050 Na konci kurzu, ako odošlete záverečný projekt 1754 01:21:24,050 --> 01:21:26,430 a niektoré pekné rámca a veci. 1755 01:21:26,430 --> 01:21:31,250 >> Takže v podstate myšlienkou je, že vás nechcem znovu zaviesť niečo, 1756 01:21:31,250 --> 01:21:36,330 tak vytvoriť niečo, čo je veľmi všeobecný, rovnako ako tvar, 1757 01:21:36,330 --> 01:21:38,310 a potom vytvoriť rôzne tvary z nej, 1758 01:21:38,310 --> 01:21:40,240 a potom sa z každého Tieto tvary môžete vytvoriť 1759 01:21:40,240 --> 01:21:45,110 niektoré ďalšie špecifické tvary v troch rozmery alebo niečo také. 1760 01:21:45,110 --> 01:21:48,799 A majú túto hierarchiu, ktoré dedí od ostatných, takže 1761 01:21:48,799 --> 01:21:51,840 všetky funkcie a všetky premenné, ktoré veľký tvar tu má všetky tieto 1762 01:21:51,840 --> 01:21:54,110 budú mať, a všetky z nich sú bude mať, a tak ďalej a tak ďalej. 1763 01:21:54,110 --> 01:21:55,640 Tak to je základná myšlienka. 1764 01:21:55,640 --> 01:21:59,170 >> C nemá, ale C ++ má mať takú funkciu. 1765 01:21:59,170 --> 01:22:02,710 A Java je silne ovplyvnený o objektovej orientácie, 1766 01:22:02,710 --> 01:22:05,310 tak to je dôvod, prečo vidíte trieda tu po celú dobu. 1767 01:22:05,310 --> 01:22:10,790 A ďalšia vec je, Tento Java virtual machine. 1768 01:22:10,790 --> 01:22:13,790 Takže to, myslím, že je to veľmi šikovný nápad. 1769 01:22:13,790 --> 01:22:17,020 Takže to, čo ľudia, ktorí vynašiel java urobil, je 1770 01:22:17,020 --> 01:22:19,630 nechceli, aby zostaviť svoj kód dvakrát 1771 01:22:19,630 --> 01:22:23,990 keby ho spustiť v systéme Windows, alebo Mac alebo Linux, takže to, čo robia 1772 01:22:23,990 --> 01:22:26,740 je doslova beží niečo ako zariadenie, 1773 01:22:26,740 --> 01:22:29,630 ale nemáte naozaj vidieť že sa to deje. 1774 01:22:29,630 --> 01:22:32,430 Tak sa spustiť virtuálny stroj vnútri počítača, ktoré 1775 01:22:32,430 --> 01:22:34,940 je v podstate ako mini operačný systém. 1776 01:22:34,940 --> 01:22:37,920 A to prevádzkové Účelom systému je v živote 1777 01:22:37,920 --> 01:22:41,430 je len spustiť to, čo sa nazýva bajt kódu. 1778 01:22:41,430 --> 01:22:47,411 >> Takže namiesto toho, v C, tak by sme kompilácie je to, aby v prípade, a spustite 1779 01:22:47,411 --> 01:22:47,910 ./if. 1780 01:22:47,910 --> 01:22:53,510 1781 01:22:53,510 --> 01:22:55,290 Zabudol som spätné lomítko v. 1782 01:22:55,290 --> 01:23:00,240 V Jave, by ste urobili ako prvé Java C sa ho skompilovať if.c. 1783 01:23:00,240 --> 01:23:06,440 1784 01:23:06,440 --> 01:23:08,252 Nie je to C. Je to bodka java. 1785 01:23:08,252 --> 01:23:09,460 1786 01:23:09,460 --> 01:23:12,140 A potom budete musieť spustiť nie ./. 1787 01:23:12,140 --> 01:23:15,440 Dostanete tento nový súbor if.class, ale nemôžete naozaj 1788 01:23:15,440 --> 01:23:17,980 spustiť if.class teraz len ako sme to urobili predtým. 1789 01:23:17,980 --> 01:23:19,440 To nie je spustiteľný. 1790 01:23:19,440 --> 01:23:20,630 Musíte spustiť. 1791 01:23:20,630 --> 01:23:23,410 Musíte kŕmiť do program s názvom Java, 1792 01:23:23,410 --> 01:23:28,260 a že program je virtuálny stroj, a potom robiť if.class, alebo ak. 1793 01:23:28,260 --> 01:23:28,760 Áno. 1794 01:23:28,760 --> 01:23:30,890 A potom to funguje. 1795 01:23:30,890 --> 01:23:33,740 OK, takže to je druh virtuálny stroj deje. 1796 01:23:33,740 --> 01:23:37,700 C nemá, takže ak by som mal aby tento program v počítači so systémom Windows, 1797 01:23:37,700 --> 01:23:40,516 že to nebude fungovať v C. V Jave to robí. 1798 01:23:40,516 --> 01:23:41,015 Otázky? 1799 01:23:41,015 --> 01:23:43,430 1800 01:23:43,430 --> 01:23:44,030 V pohode. 1801 01:23:44,030 --> 01:23:47,160 To je v prípade, Super sekciu pre dnešok. 1802 01:23:47,160 --> 01:23:49,462