1 00:00:00,000 --> 00:00:11,050 2 00:00:11,050 --> 00:00:13,351 >> ROB Bowden: To je bolj udobno oddelek, 3 00:00:13,351 --> 00:00:16,309 vendar to ne pomeni, da če vas Počutim se, kot da nisi bolj udobno 4 00:00:16,309 --> 00:00:18,420 ne boste naučili stvari tukaj. 5 00:00:18,420 --> 00:00:20,600 Torej začnimo. 6 00:00:20,600 --> 00:00:22,819 Ali imate diapozitive dogaja prav v stvari. 7 00:00:22,819 --> 00:00:24,360 Sem na tem, da pravkar sprejeti prav zdaj? 8 00:00:24,360 --> 00:00:25,680 9 00:00:25,680 --> 00:00:26,450 Preklapljanje prenosnih računalnikov. 10 00:00:26,450 --> 00:00:30,470 11 00:00:30,470 --> 00:00:32,950 >> ALLISON: Ne želite, da se spoznajte, Rob? 12 00:00:32,950 --> 00:00:34,090 >> ROB Bowden: Oh, sem Rob. 13 00:00:34,090 --> 00:00:35,182 14 00:00:35,182 --> 00:00:37,470 To je moje peto leto TF-ing CS50. 15 00:00:37,470 --> 00:00:38,760 16 00:00:38,760 --> 00:00:39,650 >> GABRIEL: Jaz sem Gabriel. 17 00:00:39,650 --> 00:00:41,610 Jaz sem vodja TF od CS50. 18 00:00:41,610 --> 00:00:44,009 Bil sem TF lani in letos. 19 00:00:44,009 --> 00:00:46,675 ALLISON: In jaz sem Alison, in to je moje drugo leto TF-ing CS50. 20 00:00:46,675 --> 00:00:48,510 21 00:00:48,510 --> 00:00:50,825 >> ROB Bowden: Dobro, ta stvar na levi strani, 22 00:00:50,825 --> 00:00:52,250 upajmo, da sem ga videl. 23 00:00:52,250 --> 00:00:54,112 Če ne zaradi tebe jo naložite za sebe, 24 00:00:54,112 --> 00:00:55,570 Morali bi ga videti v predavanju. 25 00:00:55,570 --> 00:00:56,590 26 00:00:56,590 --> 00:01:01,320 Torej je to CS50 aparata, in je naredili nekoliko njen opis 27 00:01:01,320 --> 00:01:01,880 V predavanju. 28 00:01:01,880 --> 00:01:06,890 Ampak v bistvu je to samo ti nameščen operacijski 29 00:01:06,890 --> 00:01:10,550 sistem znotraj svojega delovanja sistem, tako da bomo lahko vam 30 00:01:10,550 --> 00:01:12,540 programi brez potrebe skrbi, oh je to 31 00:01:12,540 --> 00:01:15,989 delali na obeh Windows in Mac, ali če se nekateri od vas 32 00:01:15,989 --> 00:01:17,280 že uporabljate Linux, Linux. 33 00:01:17,280 --> 00:01:18,532 34 00:01:18,532 --> 00:01:20,240 To je samo domneva, da biti skupna igranje 35 00:01:20,240 --> 00:01:23,010 to polje ima vsakdo Enako natančno okolje. 36 00:01:23,010 --> 00:01:25,344 >> Torej, če še niste to prenesli že, 37 00:01:25,344 --> 00:01:28,510 morate jo naložite, ker ste bodo potrebovali za problemskega sklopa. 38 00:01:28,510 --> 00:01:32,335 In to je dva gigabajta prenesete, tako da bo trajalo nekaj časa. 39 00:01:32,335 --> 00:01:33,780 Na Harvardu bo šlo hitro. 40 00:01:33,780 --> 00:01:35,870 41 00:01:35,870 --> 00:01:37,440 Torej CS50 aparata. 42 00:01:37,440 --> 00:01:41,980 >> Sedaj na začetku, si bomo govoriti le kup ukazni vrstici 43 00:01:41,980 --> 00:01:46,880 stvari, in tako s tem, mislim delati v tej mali okolja v tukaj. 44 00:01:46,880 --> 00:01:53,230 In opazili vse stvari Pravim tukaj zdaj 45 00:01:53,230 --> 00:01:56,900 gredo na delo, če ste v notranjosti terminalni notranjost stroja, 46 00:01:56,900 --> 00:02:00,790 ali če ste v notranjosti Okno gedit terminal 47 00:02:00,790 --> 00:02:02,090 notranjost stroja. 48 00:02:02,090 --> 00:02:03,770 Torej ti okoljih so enaki. 49 00:02:03,770 --> 00:02:04,940 50 00:02:04,940 --> 00:02:07,270 >> Ampak bom šel še tretjo pot. 51 00:02:07,270 --> 00:02:12,200 In opazil sem dol to malo IP naslov tukaj. 52 00:02:12,200 --> 00:02:15,940 Tako da vam ne bi bilo treba To storite tako, ampak to IP 53 00:02:15,940 --> 00:02:19,700 address-- zdaj, če I-- razen to je blokirana, ki jih to zadeva. 54 00:02:19,700 --> 00:02:22,790 55 00:02:22,790 --> 00:02:27,000 OK, tako da IP naslov več v terminalu 56 00:02:27,000 --> 00:02:31,090 here-- tako da je ta terminal preko Tukaj je terminal v mojem Mac. 57 00:02:31,090 --> 00:02:34,540 Torej je to v ničemer trenutno povezana z napravo sploh. 58 00:02:34,540 --> 00:02:39,360 In če ste v operacijskem sistemu Windows, potem ste bo treba prenesti nekaj 59 00:02:39,360 --> 00:02:44,430 posebej za to, zlasti ljudje uporabljajo kita, P-U-T, T-Y. 60 00:02:44,430 --> 00:02:50,700 >> Torej, kaj bom storiti, je tip SSH in nato, da je IP naslov. 61 00:02:50,700 --> 00:02:54,030 No, jharvard na ta naslov IP. 62 00:02:54,030 --> 00:03:00,150 Torej 192.168.24.220. 63 00:03:00,150 --> 00:03:02,127 To strašno sporočilo, ga ignorirati. 64 00:03:02,127 --> 00:03:02,710 Samo tip ja. 65 00:03:02,710 --> 00:03:04,550 66 00:03:04,550 --> 00:03:06,030 To je CS50 v škatli. 67 00:03:06,030 --> 00:03:07,460 Ga vpraša za geslo. 68 00:03:07,460 --> 00:03:11,910 >> In tako v veliko teh kontekstih kjer vpraša za geslo, [neslišno]. 69 00:03:11,910 --> 00:03:15,670 Imava veliko vprašanj kjer pa pravi, da to ni dejansko tipkanje. 70 00:03:15,670 --> 00:03:20,011 To vam ne kažejo znakov Geslo med tipkanjem, če sploh kaj, 71 00:03:20,011 --> 00:03:23,010 za varnostno funkcijo, ker če nekdo je videti čez ramo 72 00:03:23,010 --> 00:03:25,870 in vidijo star star, potem so 73 00:03:25,870 --> 00:03:28,640 vedeli, da vaše geslo je štiri znake. 74 00:03:28,640 --> 00:03:32,660 Torej ideja je, da bo zahteval, si za svoje geslo, vrste. 75 00:03:32,660 --> 00:03:34,490 To se ne bo pokazal ti znaki, 76 00:03:34,490 --> 00:03:36,090 ampak to je dejansko njihovo sprejemanje. 77 00:03:36,090 --> 00:03:39,210 V tem primeru boste kadarkoli kdaj videli poziv za geslo 78 00:03:39,210 --> 00:03:42,280 ki se ukvarjajo z napravo, Geslo se bo Crimson. 79 00:03:42,280 --> 00:03:43,270 Torej Crimson. 80 00:03:43,270 --> 00:03:44,730 81 00:03:44,730 --> 00:03:50,550 >> In sedaj tu notri to okno, ki je po mojem Mac, 82 00:03:50,550 --> 00:03:54,120 Jaz sem v bistvu ima Enako natančno pogled 83 00:03:54,120 --> 00:03:57,040 kot znotraj terminala v aparatu. 84 00:03:57,040 --> 00:03:58,470 Torej vam ni treba, da to storijo. 85 00:03:58,470 --> 00:04:01,300 To lahko storite vse, kar vam ponudbe notranjost stroja. 86 00:04:01,300 --> 00:04:05,140 Jaz skoraj nikoli dejansko ne kaj v aparatu. 87 00:04:05,140 --> 00:04:09,440 Sem skoraj vedno zmanjša, da zdaj Delam SSH v aparat. 88 00:04:09,440 --> 00:04:11,480 89 00:04:11,480 --> 00:04:14,180 >> Če sploh kaj, če vas imajo počasnejši računalnik, 90 00:04:14,180 --> 00:04:15,820 ste morda opazili razliko. 91 00:04:15,820 --> 00:04:18,839 To sem naredil, ker sem raje Ta terminal okno. 92 00:04:18,839 --> 00:04:20,881 Ima nekaj lastnosti, kot so Jaz lahko razdeli okno, 93 00:04:20,881 --> 00:04:22,672 in zdaj sem lahko v SSH skozi kotel. 94 00:04:22,672 --> 00:04:24,105 Imam dva SSH dogaja naenkrat. 95 00:04:24,105 --> 00:04:28,030 96 00:04:28,030 --> 00:04:32,250 Če je vaš računalnik še posebej počasna in delate v napravi, 97 00:04:32,250 --> 00:04:35,200 in se zavedaš, da je to Res laggy, karkoli. 98 00:04:35,200 --> 00:04:38,220 Kaže, da je veliko hitreje če ste SSH-ed leta. 99 00:04:38,220 --> 00:04:40,960 Sicer pa lahko deluje v obe smeri. 100 00:04:40,960 --> 00:04:42,388 >> OBČINSTVO: Kaj SSH pomeni? 101 00:04:42,388 --> 00:04:43,820 102 00:04:43,820 --> 00:04:47,479 >> ROB Bowden: Secure lupine, nekaj takega? 103 00:04:47,479 --> 00:04:48,270 Kaj SSH pomeni? 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: To je samo varne lupine. 107 00:04:56,463 --> 00:04:57,720 ROB Bowden: Secure shell. 108 00:04:57,720 --> 00:05:03,700 To je protokol, ki you-- je varen protokol, tako šifrirana. 109 00:05:03,700 --> 00:05:06,850 Ljudje ne morejo Snoop omrežja in glej, kaj govoriš, da karkoli 110 00:05:06,850 --> 00:05:08,120 ste SSH-ed. 111 00:05:08,120 --> 00:05:12,900 In v resnici, v starih dni CS50, tako v 2009 112 00:05:12,900 --> 00:05:19,300 ko sem bil novinec, tako da ste delali na CS50 problemskih sklopov, 113 00:05:19,300 --> 00:05:22,490 bil si SSH-ed do neke strežnik da je dostop do, 114 00:05:22,490 --> 00:05:23,497 in ste delali tam. 115 00:05:23,497 --> 00:05:25,330 Torej niste imeli to grafični aparat. 116 00:05:25,330 --> 00:05:26,160 Niste imeli gedit. 117 00:05:26,160 --> 00:05:28,930 Niste imeli vse te stvari, ki si lahko vizualno točko in kliknite. 118 00:05:28,930 --> 00:05:30,346 Bi morali delati na tem vmesniku. 119 00:05:30,346 --> 00:05:31,580 120 00:05:31,580 --> 00:05:33,716 Raje bi delo v tem vmesnikom. 121 00:05:33,716 --> 00:05:36,090 Torej, del tega, kar bomo se dogaja, da več kot zdaj 122 00:05:36,090 --> 00:05:39,560 kup ukaze, ki jih naj 123 00:05:39,560 --> 00:05:42,095 začnejo spoznavati s čim greste skupaj v teku. 124 00:05:42,095 --> 00:05:43,190 125 00:05:43,190 --> 00:05:45,790 In pošteno, ko vas navaditi na njih, je 126 00:05:45,790 --> 00:05:48,220 je tako veliko hitreje delujejo v tem okolju 127 00:05:48,220 --> 00:05:53,690 kot je delo z najditelja, vlečenjem in s klikom stvari. 128 00:05:53,690 --> 00:05:55,340 129 00:05:55,340 --> 00:05:57,210 >> Torej, tukaj smo. 130 00:05:57,210 --> 00:06:01,779 Zdaj sem SSH-ed v, in tako privzeto vas location-- 131 00:06:01,779 --> 00:06:04,820 Videl nekateri od teh ukazov v razredu, vendar bomo šli čez vse od njih znova. 132 00:06:04,820 --> 00:06:08,060 Privzeto mesto smo je v domači imenik. 133 00:06:08,060 --> 00:06:11,520 In imenik, le druga beseda za mapo. 134 00:06:11,520 --> 00:06:13,310 Tako smo v domačem imeniku. 135 00:06:13,310 --> 00:06:15,889 Vnesite ls, seznam datotek v ta imenik. 136 00:06:15,889 --> 00:06:17,430 Očitno sem ustvaril blah.c prej. 137 00:06:17,430 --> 00:06:19,120 138 00:06:19,120 --> 00:06:20,472 Tako da imamo imenik namizja. 139 00:06:20,472 --> 00:06:21,930 Opazite sintakse? 140 00:06:21,930 --> 00:06:27,400 141 00:06:27,400 --> 00:06:32,900 Svetlo modra poudarjanje označuje imenik in beli barvi 142 00:06:32,900 --> 00:06:34,380 kaže samo navaden datoteko. 143 00:06:34,380 --> 00:06:35,410 144 00:06:35,410 --> 00:06:37,690 Tako da se bodo nekatere druge barve, ki jih vidite. 145 00:06:37,690 --> 00:06:41,240 Izvedljiva datoteka je verjetno, biti zelena ali nekaj takega. 146 00:06:41,240 --> 00:06:44,820 OK, tako da smo v domačem imeniku. 147 00:06:44,820 --> 00:06:48,970 >> Zdaj, če želim iti v drugačen imenik, cd je ukaz želim. 148 00:06:48,970 --> 00:06:52,720 Torej spremenite imenik, nato pa mimo ime imenika 149 00:06:52,720 --> 00:06:54,020 da hočeš iti v. 150 00:06:54,020 --> 00:06:55,780 Torej, tukaj imamo štiri možnosti. 151 00:06:55,780 --> 00:07:03,397 Lahko grem v downloads, in zdaj smo videli Tukaj je posodobljena to oklepajih 152 00:07:03,397 --> 00:07:04,480 reči, da sem v ~ / prenose. 153 00:07:04,480 --> 00:07:05,620 154 00:07:05,620 --> 00:07:06,800 >> Torej, kaj je Tilda? 155 00:07:06,800 --> 00:07:10,640 To je okrajšava za vaš domači imenik. 156 00:07:10,640 --> 00:07:15,260 Torej skoraj vse, kar vam bo biti glede na vaš domači imenik, 157 00:07:15,260 --> 00:07:20,620 in pwd je le ukaz I uporabite enkrat na leto, da 158 00:07:20,620 --> 00:07:22,420 Samo natisne trenutni imenik. 159 00:07:22,420 --> 00:07:25,730 In tako vidite, da tukaj ~ / Downloads res izzveni 160 00:07:25,730 --> 00:07:26,896 do / home / jharvard / prenose. 161 00:07:26,896 --> 00:07:29,320 162 00:07:29,320 --> 00:07:32,230 Torej / home / jharvard je moj domači imenik. 163 00:07:32,230 --> 00:07:33,700 164 00:07:33,700 --> 00:07:39,400 >> Tako bomo lahko cd dot dot. 165 00:07:39,400 --> 00:07:47,800 Zdaj dot dot je poseben imenik, ki se vedno nanaša na en imenik navzgor. 166 00:07:47,800 --> 00:07:51,730 Torej, če sem v ~ / downloads, potem cd pika dot se dogaja, da me pripelje do tilda. 167 00:07:51,730 --> 00:07:52,950 168 00:07:52,950 --> 00:07:55,490 Kaj mislimo cd dot dot se dogaja, da me pripelje do sedaj? 169 00:07:55,490 --> 00:07:58,740 170 00:07:58,740 --> 00:08:00,570 To me bo pripeljala do / home. 171 00:08:00,570 --> 00:08:04,450 Torej Tilda ga tiskanja delovnega imenika, Jaz sem zdaj v / home / jharvard. 172 00:08:04,450 --> 00:08:06,060 173 00:08:06,060 --> 00:08:08,820 en direktorij gor od tistega, zdaj tu piše / home. 174 00:08:08,820 --> 00:08:12,330 175 00:08:12,330 --> 00:08:17,180 >> Sedaj cd pika pika. 176 00:08:17,180 --> 00:08:20,910 Zdaj sem v korenskem imeniku, in ga ni mogoče storiti še enkrat. 177 00:08:20,910 --> 00:08:23,340 Boste le ostali v korenski imenik večno. 178 00:08:23,340 --> 00:08:26,700 Korenski imenik ima cel kup stvari, ki, če boste želeli, da preuči, 179 00:08:26,700 --> 00:08:27,410 lahko. 180 00:08:27,410 --> 00:08:29,700 Na primer, če grem v koš, ki vsebuje 181 00:08:29,700 --> 00:08:35,789 vse te binarnosti, kot so ls, in cd, in vse te stvari. 182 00:08:35,789 --> 00:08:38,630 Torej ti ukazi morajo obstaja nekje v sistemu, 183 00:08:38,630 --> 00:08:40,820 in to je v imeniku / bin. 184 00:08:40,820 --> 00:08:44,530 Vendar je skoraj vse, kar morate storiti, je bo iz vašega domačega imenika. 185 00:08:44,530 --> 00:08:49,490 In cd brez argumentov whatsoever, lahko bi rekli, cd ~, ne potrebujejo. 186 00:08:49,490 --> 00:08:51,810 cd se dogaja, da bi vas nazaj v vašem domačem imeniku. 187 00:08:51,810 --> 00:08:53,170 188 00:08:53,170 --> 00:08:54,230 >> Ena zadnja. 189 00:08:54,230 --> 00:09:00,200 cd - vas bo pripeljala nazaj last imenik, ki ste bili v. 190 00:09:00,200 --> 00:09:04,080 Torej sem cd'd dvakrat zapored, tako da moj last imenik je bil domači imenik. 191 00:09:04,080 --> 00:09:11,520 Če grem za drastično smeti, in zdaj gremo gor in v uporabnika. 192 00:09:11,520 --> 00:09:12,550 193 00:09:12,550 --> 00:09:13,280 Uporabnik delež. 194 00:09:13,280 --> 00:09:14,840 195 00:09:14,840 --> 00:09:15,940 Pojdimo v uporabniškem delnico. 196 00:09:15,940 --> 00:09:17,140 Zdaj sem zdaj v uporabniškem delnico. 197 00:09:17,140 --> 00:09:19,320 cd - nazaj v zaboj. 198 00:09:19,320 --> 00:09:22,980 Tako da to postane še posebej koristno ko have-- in bo to ročko. 199 00:09:22,980 --> 00:09:25,660 Torej uporabnika delnico, zadnji bin, delniški bin. 200 00:09:25,660 --> 00:09:27,250 >> Tako da to postane uporaben. 201 00:09:27,250 --> 00:09:33,150 Morda boste ugotovili, da ste morali veliko, veliko, veliko ugnezdene imenikov. 202 00:09:33,150 --> 00:09:37,370 In želite narediti nekaj resnično hitro v zgornjem imeniku. 203 00:09:37,370 --> 00:09:40,330 Greš v ta imenik, bo spremembe in stvari, kot je ta, 204 00:09:40,330 --> 00:09:42,400 in zdaj želite, da gredo nazaj tja, kjer ste bili. 205 00:09:42,400 --> 00:09:43,660 cd -. 206 00:09:43,660 --> 00:09:47,320 Jaz sem vedno razočarano ko sem se zgodi, da gredo 207 00:09:47,320 --> 00:09:49,630 v tem imeniku I želel delati v. 208 00:09:49,630 --> 00:09:52,670 Vedno sem dobil uničen, ko sem je v dveh korakih namesto enega koraka, 209 00:09:52,670 --> 00:09:55,715 ker to pomeni, da je cd - se dogaja da bi v tej vmesni 210 00:09:55,715 --> 00:09:57,010 namesto tja, kamor želim iti. 211 00:09:57,010 --> 00:09:59,350 212 00:09:59,350 --> 00:10:01,450 >> Tako da smo videli vse seznam datotek. 213 00:10:01,450 --> 00:10:03,300 Vemo, kako priti okoli doslej. 214 00:10:03,300 --> 00:10:09,900 Torej, zdaj, kaj je govoril o urejanju datotek. 215 00:10:09,900 --> 00:10:18,790 Torej, v tem tečaju, ste skoraj vedno pričakuje, da uporabite gedit. 216 00:10:18,790 --> 00:10:24,410 Če želite, lahko naredi naslednji korak in začeti učiti besedila z ukazno vrstico 217 00:10:24,410 --> 00:10:25,240 urednik. 218 00:10:25,240 --> 00:10:27,560 Torej obstajajo različne možnosti. 219 00:10:27,560 --> 00:10:31,760 >> In tisti, ki so verjetno bo pomembno za vas, 220 00:10:31,760 --> 00:10:35,340 imamo Nano, Vim, in Emacs. 221 00:10:35,340 --> 00:10:40,196 Torej Nano je začetnike ukazni vrstici urejevalnik besedila. 222 00:10:40,196 --> 00:10:42,985 Torej Nano pojdimo na blah.c sem ustvaril prej. 223 00:10:42,985 --> 00:10:44,030 224 00:10:44,030 --> 00:10:46,480 To je samo ta standard C datoteko. 225 00:10:46,480 --> 00:10:51,540 In vidite cel kup stvari dogaja na dnu zaslona, 226 00:10:51,540 --> 00:10:54,100 in očitno blah.c vsebuje to C kodo. 227 00:10:54,100 --> 00:10:55,420 228 00:10:55,420 --> 00:11:00,330 >> Torej, v tem urednik, kaj je že rekel na bottom-- 229 00:11:00,330 --> 00:11:06,290 Zdaj ta simbol strešica, vidimo to ^ g, ^ X, ^ o. 230 00:11:06,290 --> 00:11:10,310 Tako, da v skoraj vseh kontekst, da vidite, 231 00:11:10,310 --> 00:11:13,530 lahko vidite ta simbol strešica v drugih krajev na spletu, na prekoračitev, 232 00:11:13,530 --> 00:11:14,450 nekaj takega. 233 00:11:14,450 --> 00:11:16,970 Skoraj vedno nanaša na nadzor. 234 00:11:16,970 --> 00:11:21,590 Tako za izhod želim narediti Control X. Control X, izstopi. 235 00:11:21,590 --> 00:11:22,750 236 00:11:22,750 --> 00:11:26,855 In sem lahko uporabite svojo puščico tipke za premikanje. 237 00:11:26,855 --> 00:11:28,010 238 00:11:28,010 --> 00:11:31,015 Opazili ne morem točko in kliknite zlahka. 239 00:11:31,015 --> 00:11:33,000 240 00:11:33,000 --> 00:11:35,010 Morate uporabiti vaše puščice tipke za premikanje. 241 00:11:35,010 --> 00:11:36,950 Morda obstaja nastavitev za točko in kliknite. 242 00:11:36,950 --> 00:11:40,000 >> Ampak, dajmo narediti nekaj sprememb. 243 00:11:40,000 --> 00:11:42,100 Zdaj Control X iti izhod. 244 00:11:42,100 --> 00:11:44,120 To se dogaja, da se reči, razen spremenjenega pufra. 245 00:11:44,120 --> 00:11:47,900 Zdaj pa hitro, y za yes, n za no. 246 00:11:47,900 --> 00:11:49,900 Control C za preklic. 247 00:11:49,900 --> 00:11:50,780 Jaz bom samo rekel ja. 248 00:11:50,780 --> 00:11:51,709 Ime datoteke za pisanje. 249 00:11:51,709 --> 00:11:53,500 Privzeto je datoteka da že je. 250 00:11:53,500 --> 00:11:54,230 Pritisnite tipko Enter. 251 00:11:54,230 --> 00:11:54,740 OK. 252 00:11:54,740 --> 00:11:58,580 Zdaj sem ravnokar uredil datoteko, jo shranili, in jo je spremenila. 253 00:11:58,580 --> 00:11:59,770 254 00:11:59,770 --> 00:12:03,000 >> Torej Nano je najlažje urejevalnik besedila navadiš. 255 00:12:03,000 --> 00:12:05,520 Alternative so Vim in Emacs. 256 00:12:05,520 --> 00:12:11,250 Tistih, ki so urejevalniki višji ravni da imajo zelo strmo krivuljo učenja. 257 00:12:11,250 --> 00:12:13,740 Torej, moja osebna preferenca je Vim. 258 00:12:13,740 --> 00:12:17,175 In ima široko paleto možnosti. 259 00:12:17,175 --> 00:12:18,210 260 00:12:18,210 --> 00:12:24,070 In ko se navadiš z njim, ne boste nikoli 261 00:12:24,070 --> 00:12:26,900 želijo, da gredo na katero koli drugo urejevalnik besedila, ker si pravkar 262 00:12:26,900 --> 00:12:29,590 imajo toliko stvari, vam na voljo v teh, 263 00:12:29,590 --> 00:12:31,690 vendar pa je potrebno res dolgo časa, da se naučijo. 264 00:12:31,690 --> 00:12:36,000 Mogoče si samo želim, da prisili si zdaj, da se navadiš na to, 265 00:12:36,000 --> 00:12:38,130 ampak bi rekel, da je vredno. 266 00:12:38,130 --> 00:12:39,660 Ampak to je težko. 267 00:12:39,660 --> 00:12:41,220 >> In potem Emacs. 268 00:12:41,220 --> 00:12:44,940 Vedno sem se borijo v Emacs, ker Vem, kako to storiti prav ničesar. 269 00:12:44,940 --> 00:12:47,755 Očitno Emacs ni privzeto nameščen na napravi. 270 00:12:47,755 --> 00:12:49,210 271 00:12:49,210 --> 00:12:51,720 Bomo verjetno dodali, da kot privzete naprav. 272 00:12:51,720 --> 00:12:59,620 273 00:12:59,620 --> 00:13:02,390 Ko boste izvedeli eno Vim ali Emacs, tam je 274 00:13:02,390 --> 00:13:04,810 nobenega pravega razloga, da bi kdaj se učijo drug, 275 00:13:04,810 --> 00:13:07,570 ampak to je povsem drugačen stil. 276 00:13:07,570 --> 00:13:10,460 OK, tako da je urejanje besedilnih datotek. 277 00:13:10,460 --> 00:13:13,374 >> OBČINSTVO: Če ste obtičali V vim zdaj, kako we-- 278 00:13:13,374 --> 00:13:18,840 279 00:13:18,840 --> 00:13:20,800 >> ROB Bowden: Obstaja več načinov v vim, 280 00:13:20,800 --> 00:13:23,770 in obstaja cela vaje za učenje vim. 281 00:13:23,770 --> 00:13:27,390 Torej, če se zgodi, da vstaviti v načinu, da 282 00:13:27,390 --> 00:13:29,930 za vnos besedila, ki si lahko vnesti, da na različne načine, 283 00:13:29,930 --> 00:13:31,610 ampak jaz je, kako prideš v vstaviti načinu. 284 00:13:31,610 --> 00:13:34,780 V ali ven iz kakršne koli posebne Način, ki ste v, samo pobeg. 285 00:13:34,780 --> 00:13:37,640 In si bash pobeg, da bi dobili iz kakršnih koli ugnezdenih načinov vaš v. 286 00:13:37,640 --> 00:13:40,360 Samo OK, zdaj sem spet v običajnem načinu. 287 00:13:40,360 --> 00:13:43,790 >> In tako v običajnem načinu, debelo črevo. 288 00:13:43,790 --> 00:13:45,160 Boste videli, da se pojavijo na dnu. 289 00:13:45,160 --> 00:13:46,240 In potem q. 290 00:13:46,240 --> 00:13:52,600 Tako da bo q nehal, če ste naredili spremembe, ki I-- se nisem spremenil? 291 00:13:52,600 --> 00:13:54,180 Imam sprememb očitno. 292 00:13:54,180 --> 00:13:57,264 Torej, če ste spremenili, bo to pravijo, lahko postavite klicaj. 293 00:13:57,264 --> 00:13:58,430 Jaz grem, da ga pokličete bang. 294 00:13:58,430 --> 00:14:02,040 Tako da lahko dajo prepoved za samo nehal ne počne ničesar, 295 00:14:02,040 --> 00:14:04,520 ali dvopičje wq bo shranite in zaprete. 296 00:14:04,520 --> 00:14:06,580 Torej w na splošno pisati. 297 00:14:06,580 --> 00:14:08,300 Torej napisati datoteko. 298 00:14:08,300 --> 00:14:09,810 Znam napisati in nehal. 299 00:14:09,810 --> 00:14:13,606 Ali pa imaš samo qx slam, q bang samo 300 00:14:13,606 --> 00:14:16,230 priti ven od tam, ne glede o vseh spremembah, ki ste jih naredili. 301 00:14:16,230 --> 00:14:21,310 302 00:14:21,310 --> 00:14:28,940 >> Vse je v redu, tako da zdaj pa si go-- lahko ustvarimo datoteke. 303 00:14:28,940 --> 00:14:30,890 Začnimo odstranjevanja datotek. 304 00:14:30,890 --> 00:14:35,450 In bom vrgel v enem Hitro nov ukaz, na dotik. 305 00:14:35,450 --> 00:14:38,200 Torej dotikajte foo. 306 00:14:38,200 --> 00:14:39,340 Touch bar. 307 00:14:39,340 --> 00:14:40,220 Dotikajte Baz. 308 00:14:40,220 --> 00:14:42,810 Če ls I, zdaj vidimo da obstajajo te datoteke. 309 00:14:42,810 --> 00:14:44,315 Oni so popolnoma prazne. 310 00:14:44,315 --> 00:14:47,178 Torej, na dotik je le preprosta način za eno, [neslišno]. 311 00:14:47,178 --> 00:14:50,850 312 00:14:50,850 --> 00:14:54,640 Dva, tehnično, samo da stanje to, da posodobi žige. 313 00:14:54,640 --> 00:14:58,470 Zato bo vsaka datoteka, ki jo ustvarite ima timestamp, povezane z njo. 314 00:14:58,470 --> 00:15:01,330 Torej je bil baz ustanovljena 14. september ob 16:21. 315 00:15:01,330 --> 00:15:02,570 316 00:15:02,570 --> 00:15:06,670 To je zdaj 16:22, tako da, če Sem se znova dotaknite Baz smo 317 00:15:06,670 --> 00:15:11,420 videli, da je bila večina baz Nedavno spremenjena ob 16:22. 318 00:15:11,420 --> 00:15:17,680 Drugače pa sem se skoraj nikoli pogled na časovne žige na datotekah. 319 00:15:17,680 --> 00:15:20,490 Torej dotik, tukaj sem samo z uporabo je ustvariti nekaj hitrih datotek. 320 00:15:20,490 --> 00:15:21,620 321 00:15:21,620 --> 00:15:27,400 >> Vse je v redu, tako da zdaj rm je ukaz, ki nam je mar tukaj. 322 00:15:27,400 --> 00:15:28,665 In bomo lahko rm boo. 323 00:15:28,665 --> 00:15:31,000 Pravijo odstranite redno prazen datotečni boo. 324 00:15:31,000 --> 00:15:34,070 In bomo lahko vnesete y, in zdaj je odstrani. 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 Odstrani redno prazno datoteko baz in vrsta n za no. 328 00:15:38,620 --> 00:15:40,060 Zdaj je ne odstrani. 329 00:15:40,060 --> 00:15:41,240 Tako bar in baz, še vedno obstajajo. 330 00:15:41,240 --> 00:15:42,232 Foo je izginil. 331 00:15:42,232 --> 00:15:43,148 GABRIEL: Pogovarjajte. 332 00:15:43,148 --> 00:15:43,970 333 00:15:43,970 --> 00:15:44,720 ROB Bowden: Great. 334 00:15:44,720 --> 00:15:45,800 335 00:15:45,800 --> 00:15:50,370 Tako siten sporočilo tukaj, odstranite redno empty-- 336 00:15:50,370 --> 00:15:52,390 Kaj delaš tam? 337 00:15:52,390 --> 00:15:54,030 Odstrani redno prazno datoteko. 338 00:15:54,030 --> 00:15:58,840 339 00:15:58,840 --> 00:16:01,610 Torej, če ne želimo, da bi moti to sporočilo, 340 00:16:01,610 --> 00:16:05,340 moremo metati v tem -F zastave, in tako, da je sila. 341 00:16:05,340 --> 00:16:11,330 In zdaj, če sem rm -f, da ne bo pravijo pa, da želite odstraniti to datoteko. 342 00:16:11,330 --> 00:16:12,040 To bo samo to. 343 00:16:12,040 --> 00:16:13,720 In ls, ne vidim tam bar več. 344 00:16:13,720 --> 00:16:14,810 345 00:16:14,810 --> 00:16:18,021 >> Zdaj, ko je potencialno nevaren ukaz. 346 00:16:18,021 --> 00:16:19,020 To kaže, da ne bo preveč slabo. 347 00:16:19,020 --> 00:16:22,240 Vrnili se bomo v drugem, kako lahko dobite zelo nevarno. 348 00:16:22,240 --> 00:16:28,740 In kaj je ustvariti nekaj temp mapo. 349 00:16:28,740 --> 00:16:30,880 mkdir, drugi ukaz. 350 00:16:30,880 --> 00:16:34,880 Torej mkdir je ukaz da ustvari imenik. 351 00:16:34,880 --> 00:16:40,650 In zdaj ga ls vidimo to lepo svetlobo blue izpostavil temp mapo. 352 00:16:40,650 --> 00:16:42,295 Ne morem cd v temp. 353 00:16:42,295 --> 00:16:44,590 In sem lahko mkdir foo. 354 00:16:44,590 --> 00:16:46,330 cd v foo. mkdir bar. 355 00:16:46,330 --> 00:16:46,860 cd v baru. 356 00:16:46,860 --> 00:16:49,400 357 00:16:49,400 --> 00:16:54,300 >> Tako vidimo, da lahko zlahka dobili v nekaj precej globoko gnezdenja. 358 00:16:54,300 --> 00:16:56,385 Zdaj kako odstraniti mapo? 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 Torej, če sem ravno poskušali rm, tako kot smo to storili z navadno datoteko, 363 00:17:03,540 --> 00:17:06,420 rm bar se bo pravijo, ni mogoče odstraniti bar. 364 00:17:06,420 --> 00:17:07,569 To je imenik. 365 00:17:07,569 --> 00:17:10,619 Obstaja poseben ukaz za odstranjevanje imenikov, vrsta. 366 00:17:10,619 --> 00:17:12,900 Torej rmdir bar. 367 00:17:12,900 --> 00:17:13,710 Zdaj je bar izginil. 368 00:17:13,710 --> 00:17:14,980 369 00:17:14,980 --> 00:17:22,680 >> OK, tako rmdir sem precej nikoli ne uporabljajo. 370 00:17:22,680 --> 00:17:32,220 Razlog being-- Zdaj pa na redni datoteke bar tukaj. 371 00:17:32,220 --> 00:17:34,780 Torej rmdir boo. 372 00:17:34,780 --> 00:17:35,760 rmdir. 373 00:17:35,760 --> 00:17:36,900 Ni odpravila foo. 374 00:17:36,900 --> 00:17:38,420 Imenik ni prazen. 375 00:17:38,420 --> 00:17:43,420 Torej, ne morete uporabljati odstraniti dir na imenik, ki ima stvari v njem. 376 00:17:43,420 --> 00:17:44,830 >> Torej, imate nekaj možnosti. 377 00:17:44,830 --> 00:17:49,780 Lahko greš v ta imenik, odstranite vse ročno, nato pa prihaja iz 378 00:17:49,780 --> 00:17:51,759 in rmdir imenik. 379 00:17:51,759 --> 00:17:53,050 To seveda zveni nadležno. 380 00:17:53,050 --> 00:17:55,000 Kaj pa, če je na tisoče datotek v tam? 381 00:17:55,000 --> 00:17:58,119 No, lahko bi rm *. 382 00:17:58,119 --> 00:17:59,410 Bomo govorili o * na sekundo. 383 00:17:59,410 --> 00:18:00,870 To v bistvu pomeni, vse stvari. 384 00:18:00,870 --> 00:18:02,030 385 00:18:02,030 --> 00:18:05,470 Ampak še bolje, tako rm -r. 386 00:18:05,470 --> 00:18:10,220 Torej rm -r-- v veliko konteksti, -r pomeni rekurzivna, 387 00:18:10,220 --> 00:18:13,810 katerih bomo govorili o tem, kaj rekurzivne sredstvi v nekaj tednih. 388 00:18:13,810 --> 00:18:18,630 Ampak to v bistvu pomeni, prečnici celota v ta imenik 389 00:18:18,630 --> 00:18:20,190 in odstranite vse. 390 00:18:20,190 --> 00:18:24,420 >> Torej rm -r foo je reči Spustimo se v imeniku foo? 391 00:18:24,420 --> 00:18:25,210 Da. 392 00:18:25,210 --> 00:18:26,800 Odstrani redno prazni datoteki foo / bar? 393 00:18:26,800 --> 00:18:27,880 394 00:18:27,880 --> 00:18:28,540 Da. 395 00:18:28,540 --> 00:18:29,760 Odstranite imenik foo? 396 00:18:29,760 --> 00:18:30,260 Da. 397 00:18:30,260 --> 00:18:31,470 398 00:18:31,470 --> 00:18:35,020 Torej, zdaj foo in vse znotraj je bil odstranjen. 399 00:18:35,020 --> 00:18:42,370 >> Zdaj pa, da je mogoče dobiti posebej moteče when-- dajmo dotikajte 1, pritisnite 2, pritisnite 3. 400 00:18:42,370 --> 00:18:44,400 Bi lahko imela cel kup datotek. 401 00:18:44,400 --> 00:18:49,060 Če bi želel, bi lahko izdelam tisoče datotek tukaj. 402 00:18:49,060 --> 00:18:53,340 In rm -r foo se dogaja biti precej nadležno. 403 00:18:53,340 --> 00:18:55,374 Ja, ja, ja, ja, ja, ja. 404 00:18:55,374 --> 00:18:57,540 Z veliko več datotek hitro videli, kako veliko krat 405 00:18:57,540 --> 00:18:58,581 Jaz bi moral ja tip. 406 00:18:58,581 --> 00:19:02,265 No, bomo videli šele pred kako lahko znebiti morali vnesti ja, -F. 407 00:19:02,265 --> 00:19:03,330 408 00:19:03,330 --> 00:19:07,020 Torej mkdir foo cd foo dotik 1 2 3. 409 00:19:07,020 --> 00:19:08,380 410 00:19:08,380 --> 00:19:17,190 OK, tako rm -rf foo se dogaja, da slepo odstranite foo celoti. 411 00:19:17,190 --> 00:19:17,960 Noben poziv. 412 00:19:17,960 --> 00:19:18,650 Ni nič. 413 00:19:18,650 --> 00:19:20,040 Foo je izginil. 414 00:19:20,040 --> 00:19:23,830 >> Tako da sem se nagibajo k uporabi tega ukaz ves čas. 415 00:19:23,830 --> 00:19:25,120 416 00:19:25,120 --> 00:19:27,830 Da omenjeno, je Zelo nevaren ukaz, 417 00:19:27,830 --> 00:19:33,240 ker če naredim nekaj podobnega To, da vas ne bo vprašal. 418 00:19:33,240 --> 00:19:34,730 To bo odšel. 419 00:19:34,730 --> 00:19:40,140 In to se dogaja precej pogosto, in celo na višji ravni CS tečajev. 420 00:19:40,140 --> 00:19:42,070 Včasih bomo videli kaj, ko nekdo 421 00:19:42,070 --> 00:19:48,360 pravi, da sem slučajno naša rm-rf ed moj dom imenik in vse moje P niza ni več. 422 00:19:48,360 --> 00:19:52,422 In to je uničujoče, vendar ni smeti lahko. 423 00:19:52,422 --> 00:19:54,380 Ni nič za vas priklicati. 424 00:19:54,380 --> 00:19:55,330 To je samo odšel. 425 00:19:55,330 --> 00:19:56,529 426 00:19:56,529 --> 00:19:58,320 Še huje bi bilo nekaj podobnega rm -rf /. 427 00:19:58,320 --> 00:19:59,432 428 00:19:59,432 --> 00:20:01,140 Torej smo pravkar razpravljali da korenski imenik. 429 00:20:01,140 --> 00:20:03,095 Ima vse datotek na vašem sistemu. 430 00:20:03,095 --> 00:20:04,120 431 00:20:04,120 --> 00:20:07,380 Stvari ponavadi dobijo precej grdo ko odstranite stvari, kot so ls, 432 00:20:07,380 --> 00:20:10,280 in cd, in vse tiste. 433 00:20:10,280 --> 00:20:15,467 >> OBČINSTVO: Kakšna je razlika med rm, RF, in rm * 434 00:20:15,467 --> 00:20:16,300 ROB Bowden: Torej rm * - 435 00:20:16,300 --> 00:20:17,700 436 00:20:17,700 --> 00:20:22,300 >> ALLISON: Vprašanje je, kaj je Razlika med rm, RF, in rm *. 437 00:20:22,300 --> 00:20:23,750 438 00:20:23,750 --> 00:20:25,950 >> ROB Bowden: Torej rm *. 439 00:20:25,950 --> 00:20:31,910 Star na splošno pomeni vse od vsebina tega imenika. 440 00:20:31,910 --> 00:20:33,540 441 00:20:33,540 --> 00:20:35,540 Poskušam razmišljati o drugih načini, ki prikazuje zvezdo. 442 00:20:35,540 --> 00:20:38,280 443 00:20:38,280 --> 00:20:44,780 No, zvezda dejansko splošno pomeni ujemanje vzorca. 444 00:20:44,780 --> 00:20:54,930 Torej, če imam datoteko z imenom dog1, dotikajte dog2 dotaknite KAT1 dotaknite KAT2. 445 00:20:54,930 --> 00:20:56,050 446 00:20:56,050 --> 00:21:02,110 Torej ls * 1 se bo tiskanje KAT1 in dog1, saj je mogoče, da je zvezda treba zapolniti 447 00:21:02,110 --> 00:21:06,270 v with-- treba biti tam, ampak zvezda je lahko bodisi mačko ali psa. 448 00:21:06,270 --> 00:21:07,247 To je wild card. 449 00:21:07,247 --> 00:21:08,580 To je beseda, iščem. 450 00:21:08,580 --> 00:21:09,120 Wild card. 451 00:21:09,120 --> 00:21:10,180 452 00:21:10,180 --> 00:21:13,960 Ali sem lahko ls pes *, in Jaz sem dobil, da vidite dog1, dog2. 453 00:21:13,960 --> 00:21:16,870 Torej tistih, ki so naštete datotek , ki se ujemajo, da so določeni vzorec. 454 00:21:16,870 --> 00:21:18,150 Lahko uporabite ls na ta način. 455 00:21:18,150 --> 00:21:19,350 456 00:21:19,350 --> 00:21:22,020 >> Ls * zvezda tekme ničesar. 457 00:21:22,020 --> 00:21:25,710 Tako se dogaja, da natisnete vse vsebina tega imenika 458 00:21:25,710 --> 00:21:27,290 Ker vsi ujemajo. 459 00:21:27,290 --> 00:21:30,130 To ne bo natisniti ničesar v imenikih zgornjih ravni. 460 00:21:30,130 --> 00:21:38,680 Če imam sub imenik, foo, in dotikajte 1 2 3-- zdaj, če rm * zvezdo, 461 00:21:38,680 --> 00:21:41,450 odstranite KAT1, KAT2 dog1, dog2. 462 00:21:41,450 --> 00:21:42,340 Ni mogoče odstraniti foo. 463 00:21:42,340 --> 00:21:43,090 To je imenik. 464 00:21:43,090 --> 00:21:43,920 465 00:21:43,920 --> 00:21:50,340 >> Torej zvezda razširi na vse datoteke v imeniku. 466 00:21:50,340 --> 00:21:55,210 Torej tehnično rm * je, kot pravi rm KAT1, KAT2 dog1, dog2, foo. 467 00:21:55,210 --> 00:22:03,630 Ker se rm -RF, tehnično bi zvezda dosegli, kar smo želeli, vendar rm -rf-- 468 00:22:03,630 --> 00:22:06,090 če grem ven iz tega imenik, rm -rf temp, 469 00:22:06,090 --> 00:22:08,890 da se dogaja, da gredo v temp in rekurzivno odstraniti vse. 470 00:22:08,890 --> 00:22:11,260 471 00:22:11,260 --> 00:22:21,060 >> Torej zvezda je ločen, da je ta Razume se, by-- tako to stvar 472 00:22:21,060 --> 00:22:25,090 da tečem v to stvar da me je spodbudilo za ukaze 473 00:22:25,090 --> 00:22:28,770 in nato izvajanje in delaš jim kličem to moja lupina. 474 00:22:28,770 --> 00:22:31,930 In tako je ta lupina je sam program. 475 00:22:31,930 --> 00:22:35,010 In če sem hotel, sem lahko vodijo v / bin / bash. 476 00:22:35,010 --> 00:22:36,930 Lupina se imenuje bash. 477 00:22:36,930 --> 00:22:39,340 In zdaj smo opazili nekaj se je nekoliko spremenila, 478 00:22:39,340 --> 00:22:42,200 in da je zato, ker mojih nastavitvah shell so nekoliko drugačni. 479 00:22:42,200 --> 00:22:45,415 >> Ampak zdaj sem tehnično vodenje shell v moji prvotni lupini, 480 00:22:45,415 --> 00:22:49,570 in sem lahko zaprete to lupino, in zdaj Jaz sem nazaj v mojo vrhnje lupine. 481 00:22:49,570 --> 00:22:55,240 Namen rekel da is-- zvezda. 482 00:22:55,240 --> 00:22:59,020 Torej zvezda je nekaj z bash razume. 483 00:22:59,020 --> 00:23:04,260 Torej rm -rf, -rf zastava le za rm razumeti. 484 00:23:04,260 --> 00:23:06,380 Ve, da ko vas mimo -RF, ki vas 485 00:23:06,380 --> 00:23:09,520 želim, da bi rekurzivno odstrani vse datoteke brez poziva. 486 00:23:09,520 --> 00:23:13,960 Zvezda je nekaj, kar se razume ga bash da ko rečeš rm *, 487 00:23:13,960 --> 00:23:16,890 bash ne bo rekel, hej rm *, odstranite zvezdico. 488 00:23:16,890 --> 00:23:21,010 Bash je reči rm * odstranite KAT1, KAT2 dog1, dog2. 489 00:23:21,010 --> 00:23:24,305 To je samodejno načrtuje širjenje vse datoteke v imeniku. 490 00:23:24,305 --> 00:23:29,100 491 00:23:29,100 --> 00:23:33,140 >> In podobno Tilda je drugo Simbol, ki bash razume. 492 00:23:33,140 --> 00:23:37,130 Ko rečeš cd ~, bash razširi da na vašem domačem imeniku. 493 00:23:37,130 --> 00:23:38,910 494 00:23:38,910 --> 00:23:40,210 Druga vprašanja, ki do sedaj? 495 00:23:40,210 --> 00:23:42,760 496 00:23:42,760 --> 00:23:46,060 OK, tako da bomo začeli dogaja hitro. 497 00:23:46,060 --> 00:23:47,700 498 00:23:47,700 --> 00:23:48,545 >> Dokončanje Tab. 499 00:23:48,545 --> 00:23:49,670 Samo da bi ga vrgel ven. 500 00:23:49,670 --> 00:23:51,530 Veliko ljudi ne uresničiti ta obstaja. 501 00:23:51,530 --> 00:23:55,060 Torej, če sem tip cd dow, I bi rad šel v prenose. 502 00:23:55,060 --> 00:23:56,700 Ne rabim, da tip nloads. 503 00:23:56,700 --> 00:23:57,960 504 00:23:57,960 --> 00:24:00,770 Jaz lahko samo pritisnemo Tab. 505 00:24:00,770 --> 00:24:03,794 Zato priznava, da dow je predpona, ki 506 00:24:03,794 --> 00:24:05,710 ne ujema ničesar drugje v tem imeniku, 507 00:24:05,710 --> 00:24:07,520 tako da bo dokončanje za vas. 508 00:24:07,520 --> 00:24:08,610 Zdaj lahko vnesete. 509 00:24:08,610 --> 00:24:10,110 >> Jaz tudi ne, da rekurzivno. 510 00:24:10,110 --> 00:24:11,205 Torej mkdir foo. 511 00:24:11,205 --> 00:24:12,480 512 00:24:12,480 --> 00:24:13,300 Pojdimo v foo. 513 00:24:13,300 --> 00:24:14,830 mkdir bar. 514 00:24:14,830 --> 00:24:17,345 Torej grem nazaj v moj dom imenik, vidim prenose. 515 00:24:17,345 --> 00:24:19,040 516 00:24:19,040 --> 00:24:21,860 Zdaj jeziček spet udaril, samodejno dogaja, da izpolnite foo. 517 00:24:21,860 --> 00:24:22,880 To je samo imenik. 518 00:24:22,880 --> 00:24:25,340 Jeziček spet udaril, samodejno dogaja, da izpolnite vrstico. 519 00:24:25,340 --> 00:24:26,798 Torej, zdaj sem v (~ Prenosi / foo / bar). 520 00:24:26,798 --> 00:24:27,310 521 00:24:27,310 --> 00:24:31,692 >> Tako da je ta zaključek tab, ko sem prišel do uradnih ur, 522 00:24:31,692 --> 00:24:33,400 in stojim pred nekdo rama, 523 00:24:33,400 --> 00:24:40,470 in oni bodo rm D-O-W-N-L-O--D-S, umiram. 524 00:24:40,470 --> 00:24:41,990 Kartica samo, jeziček, jeziček, tab. 525 00:24:41,990 --> 00:24:44,550 526 00:24:44,550 --> 00:24:45,630 Torej jeziček zagotovo uporabljen. 527 00:24:45,630 --> 00:24:47,890 528 00:24:47,890 --> 00:24:49,840 In podobno gor in dol, veliko ljudi 529 00:24:49,840 --> 00:24:51,930 prav to se je zgodilo nikoli udaril gor in dol. 530 00:24:51,930 --> 00:24:54,870 Pa bom šel skozi prejšnja ukazi, tako da, če si tekel nekaj, 531 00:24:54,870 --> 00:24:58,300 in ga želite znova zagnati, Samo počakaj, dokler ne prideš do njega. 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 >> Tako hitro, nekatere druge stvari. 536 00:25:03,585 --> 00:25:04,800 537 00:25:04,800 --> 00:25:05,930 Pojdimo nazaj v temp. 538 00:25:05,930 --> 00:25:06,976 539 00:25:06,976 --> 00:25:08,125 Ustvarimo nekaj datotek. 540 00:25:08,125 --> 00:25:10,480 541 00:25:10,480 --> 00:25:15,215 Torej, tukaj, jaz sem samo bo seznam nekaj besed. 542 00:25:15,215 --> 00:25:18,460 543 00:25:18,460 --> 00:25:21,035 pes, mačka, mijav. 544 00:25:21,035 --> 00:25:23,940 545 00:25:23,940 --> 00:25:26,040 Naredimo psa, ribe. 546 00:25:26,040 --> 00:25:27,500 547 00:25:27,500 --> 00:25:32,320 Torej, zdaj rep je zelo Uporabni ukazi, ki jih 548 00:25:32,320 --> 00:25:37,820 uporabljajo po vsej iskanje datoteke za določeno besedilo, 549 00:25:37,820 --> 00:25:40,910 in tehnično lahko naredite resnično kompleksne izraze za to, da se ujemajo. 550 00:25:40,910 --> 00:25:44,830 >> Torej, tukaj, če sem grep, in kaj ne želim iskati? 551 00:25:44,830 --> 00:25:49,130 Recimo, da iščem za mačke in Želim poiskati vse te datoteke. 552 00:25:49,130 --> 00:25:50,650 Torej, kako naj naredim vse te datoteke? 553 00:25:50,650 --> 00:25:51,900 Star. 554 00:25:51,900 --> 00:25:54,939 Tako da v eni datoteki, imam mačka. 555 00:25:54,939 --> 00:25:56,980 Verjetno sem lahko imela pozval, da nekaj boljšega, 556 00:25:56,980 --> 00:25:59,063 ker to izgleda številke ali nekaj vrstic. 557 00:25:59,063 --> 00:26:01,590 Toda v eni datoteki imam linijo z mačko. 558 00:26:01,590 --> 00:26:04,160 V datoteki dveh imam črto z mačko. 559 00:26:04,160 --> 00:26:07,280 Torej, zdaj sem lahko ogledate znotraj ene datoteke in glej oh yeah, da datoteka imela mačko. 560 00:26:07,280 --> 00:26:10,210 Obvestilo datoteka tri ni ujemal ker mačka ni notri. 561 00:26:10,210 --> 00:26:13,882 Lahko grep za Meow. 562 00:26:13,882 --> 00:26:14,840 Vložiti le dve ima, mijav. 563 00:26:14,840 --> 00:26:16,120 564 00:26:16,120 --> 00:26:20,640 >> Tako da to lahko kombinirate, spet z -r, ki 565 00:26:20,640 --> 00:26:23,580 Kot sem že povedal pogosto pomeni rekurzivna. 566 00:26:23,580 --> 00:26:29,800 In tako sem lahko prišel sem gor, grep -r of-- za vsak primer pa si uredite 567 00:26:29,800 --> 00:26:32,010 samo ta, da bi vrgel mačko notri. 568 00:26:32,010 --> 00:26:38,800 Torej grep -r za vsako instanco mačka v tem imeniku. 569 00:26:38,800 --> 00:26:41,600 In to bo rekurzivno iskalnik podimenike. 570 00:26:41,600 --> 00:26:43,940 Torej, v Baz, tam je mačka. 571 00:26:43,940 --> 00:26:45,570 V temp / 2, tam je mačka. 572 00:26:45,570 --> 00:26:47,960 In v temp / 1 obstaja mačka. 573 00:26:47,960 --> 00:26:50,045 Tako da je iskanje v datotekah. 574 00:26:50,045 --> 00:26:51,250 575 00:26:51,250 --> 00:26:55,090 >> Sedaj lahko uporabite tudi najdbo. 576 00:26:55,090 --> 00:26:59,640 In tako ugotovite, je posebej o išče datoteke z isto ime. 577 00:26:59,640 --> 00:27:02,490 Torej, dajmo narediti nekaj več. 578 00:27:02,490 --> 00:27:03,660 Pojdimo v prenose. 579 00:27:03,660 --> 00:27:04,680 580 00:27:04,680 --> 00:27:05,380 Dotikajte dog1. 581 00:27:05,380 --> 00:27:06,840 582 00:27:06,840 --> 00:27:07,770 Dotikajte KAT2. 583 00:27:07,770 --> 00:27:09,290 584 00:27:09,290 --> 00:27:10,760 Dotikajte cat_dog. 585 00:27:10,760 --> 00:27:14,550 586 00:27:14,550 --> 00:27:15,975 Dotikajte catcat. 587 00:27:15,975 --> 00:27:18,270 588 00:27:18,270 --> 00:27:23,810 >> Torej, želim, da bi našli vse, Datoteke s psom na ime. 589 00:27:23,810 --> 00:27:28,060 Torej najti, in za najdaljši Čas nisem spomnil 590 00:27:28,060 --> 00:27:33,760 kako najti delal, dokler nisem končno prebral nekaj naredila tako jasno. 591 00:27:33,760 --> 00:27:35,784 Tako ugotovili, samodejno rekurzivno. 592 00:27:35,784 --> 00:27:36,950 Vam ni treba opraviti -r. 593 00:27:36,950 --> 00:27:38,090 594 00:27:38,090 --> 00:27:39,110 Torej najti piko. 595 00:27:39,110 --> 00:27:40,750 Še nismo govorili o piko. 596 00:27:40,750 --> 00:27:44,800 Ker dot dot vedno pomeni en imenik navzgor. 597 00:27:44,800 --> 00:27:46,960 Dot vedno pomeni trenutni imenik. 598 00:27:46,960 --> 00:27:51,390 Tako da sem lahko rm -r piko enak način sem lahko rm -rf *. 599 00:27:51,390 --> 00:27:53,140 Na koncu so izpolnitev isto stvar. 600 00:27:53,140 --> 00:27:56,040 rm -rf dot se dogaja, da se odstranijo Celoten trenutni imenik. 601 00:27:56,040 --> 00:27:57,440 602 00:27:57,440 --> 00:27:59,680 >> OK, kar ne želim, da tam narediti. 603 00:27:59,680 --> 00:28:01,490 604 00:28:01,490 --> 00:28:04,320 Ampak najti piko. 605 00:28:04,320 --> 00:28:07,920 Tako rekurzivno iskanje tok imenik, in zdaj je vse 606 00:28:07,920 --> 00:28:14,125 Po tem so kup zastav, ki jih uporabite izključiti stvari iz donosa. 607 00:28:14,125 --> 00:28:17,250 Tako našli dot vrne vse, kar je lahko najdete na trenutni imenik. 608 00:28:17,250 --> 00:28:19,700 To so vse datoteke rekurzivno iskanje. 609 00:28:19,700 --> 00:28:21,250 Bomo videli, nekateri od tistih v sekundi. 610 00:28:21,250 --> 00:28:23,150 611 00:28:23,150 --> 00:28:27,140 >> Toda v primeru, da ste se spraševala, kako naj naredim da, tako Command K, na vsaj 612 00:28:27,140 --> 00:28:29,660 v mojem terminalu v Mac z odličnimi refleksi. 613 00:28:29,660 --> 00:28:34,660 Control L splošno počisti je za vse vrste terminala. 614 00:28:34,660 --> 00:28:36,480 Vnesete lahko tudi jasno. 615 00:28:36,480 --> 00:28:38,410 In če ste kdaj v čudno scenario-- 616 00:28:38,410 --> 00:28:42,790 to se mi je zgodilo par time-- kjer barve vaših pozivov 617 00:28:42,790 --> 00:28:46,590 so vse zamočil, ali vam niso mogli videti ničesar 618 00:28:46,590 --> 00:28:51,232 so vnesli ko tipkate, ker včasih kot barva ozadja je nastavljena 619 00:28:51,232 --> 00:28:53,940 Enako kot barvo ospredja in zdaj ne vidite pisave. 620 00:28:53,940 --> 00:28:55,110 621 00:28:55,110 --> 00:28:59,830 Reset je nekaj, kar samo resetira ste na privzeto črnim ozadjem, 622 00:28:59,830 --> 00:29:01,840 bela spredaj, ali karkoli nastavite njih. 623 00:29:01,840 --> 00:29:03,390 624 00:29:03,390 --> 00:29:04,790 >> Torej, kje smo ostali? 625 00:29:04,790 --> 00:29:05,930 Najdi pika. 626 00:29:05,930 --> 00:29:09,360 Torej, zdaj je vse mimo tega točka omejuje na rezultate 627 00:29:09,360 --> 00:29:11,450 nekaj, kar se ujema dati vzorec. 628 00:29:11,450 --> 00:29:16,110 Torej, tukaj želim iskati vse z imenom mačko. 629 00:29:16,110 --> 00:29:17,300 Nimam nič. 630 00:29:17,300 --> 00:29:18,390 Zakaj je to tako? 631 00:29:18,390 --> 00:29:21,230 No, jaz sem samo iskal nekaj z natanko ime mačka. 632 00:29:21,230 --> 00:29:25,150 Če želim iskati nekaj da ima nekaj vzorec, in cat-- 633 00:29:25,150 --> 00:29:28,890 citati tehnično niso potrebne, vendar sem jih metali noter. 634 00:29:28,890 --> 00:29:32,720 Sedaj ugotovi catcat ker to je edina stvar, ki 635 00:29:32,720 --> 00:29:36,040 ima nekaj samovoljno Vzorec sledi mačk. 636 00:29:36,040 --> 00:29:41,950 Sem lahko dal mačka *, in zdaj našli catcat, cat_dog, KAT2 637 00:29:41,950 --> 00:29:45,245 ker to so vse stvari z mačko na začetku sledila nič. 638 00:29:45,245 --> 00:29:46,120 To lahko kombinirate. 639 00:29:46,120 --> 00:29:50,480 Če želite poiskati vse datoteke C da imate lahko naredite * .c. 640 00:29:50,480 --> 00:29:51,960 Tukaj smo blah.c. 641 00:29:51,960 --> 00:29:53,000 642 00:29:53,000 --> 00:29:55,020 Tako da je najdba del. 643 00:29:55,020 --> 00:29:55,770 Lahko iščete. 644 00:29:55,770 --> 00:29:58,270 Ima cel kup zastav za nadaljnjih omejitev. 645 00:29:58,270 --> 00:30:00,960 In eden od njih, recimo, -d. 646 00:30:00,960 --> 00:30:02,110 647 00:30:02,110 --> 00:30:04,435 Tako opuščena. 648 00:30:04,435 --> 00:30:05,425 649 00:30:05,425 --> 00:30:06,550 Oh, to ni tisto, kar hočem. 650 00:30:06,550 --> 00:30:07,730 Ni -d. 651 00:30:07,730 --> 00:30:08,860 Vrsta d. 652 00:30:08,860 --> 00:30:13,820 Torej najti piko - tip d. 653 00:30:13,820 --> 00:30:17,760 Torej, kaj je pravkar storil je iščem za vse datoteke v trenutnem imeniku 654 00:30:17,760 --> 00:30:21,680 z a-- d stoji za directory-- tip imenik. 655 00:30:21,680 --> 00:30:24,430 Ta vrne vse imenike v trenutnem imeniku. 656 00:30:24,430 --> 00:30:27,670 In tip F je vse redno datoteke, vseh ne imenikov. 657 00:30:27,670 --> 00:30:29,809 Tako, da je samo Primer druge načine, ki jih 658 00:30:29,809 --> 00:30:32,350 Omejite lahko drugo iskanje kot samo ime datoteke. 659 00:30:32,350 --> 00:30:34,126 660 00:30:34,126 --> 00:30:35,570 >> Minilo je 30 minut. 661 00:30:35,570 --> 00:30:36,848 Še vedno dogaja. 662 00:30:36,848 --> 00:30:38,132 >> ALLISON: Jaz bom vetrič skozi. 663 00:30:38,132 --> 00:30:39,670 Vse bo v redu. 664 00:30:39,670 --> 00:30:41,460 >> ROB Bowden: Torej, nekaj drugih stvari. 665 00:30:41,460 --> 00:30:45,700 Zdaj bang, klicaj. 666 00:30:45,700 --> 00:30:50,530 Tako da na splošno means-- No, pa poglejmo primer. 667 00:30:50,530 --> 00:30:52,230 Torej! F, kaj se da boš naredil? 668 00:30:52,230 --> 00:30:53,520 669 00:30:53,520 --> 00:30:57,810 Torej se zdi, da imajo ponovi najdba dot-tipa f. 670 00:30:57,810 --> 00:30:59,240 Kaj pa! G? 671 00:30:59,240 --> 00:31:00,760 Da samo grep -r mačka *. 672 00:31:00,760 --> 00:31:02,010 673 00:31:02,010 --> 00:31:05,720 Torej bang lahko uporabite, da ponovite pred kratkim naredil ukaz. 674 00:31:05,720 --> 00:31:13,280 Torej, če sem tip! GRE, da se bo ponovno tek ukazi, ki je začel s GRE najbolj 675 00:31:13,280 --> 00:31:14,060 v zadnjem času. 676 00:31:14,060 --> 00:31:17,090 >> In si lahko ogledate vse te ukaze z zgodovino. 677 00:31:17,090 --> 00:31:17,880 Torej zgodovina. 678 00:31:17,880 --> 00:31:19,630 To so vsi Ukazi sem danes poganjajo. 679 00:31:19,630 --> 00:31:21,089 680 00:31:21,089 --> 00:31:23,130 In dobro, to ni dobesedno omejena do danes, 681 00:31:23,130 --> 00:31:25,180 vendar sem uporabil samo to aparat z današnjim dnem. 682 00:31:25,180 --> 00:31:28,730 To je vaša celotna Zgodovina vašega bash lupini, 683 00:31:28,730 --> 00:31:30,433 razen da odreže na neki točki. 684 00:31:30,433 --> 00:31:33,474 OBČINSTVO: Kaj se zgodi, če vam Zgodovina [neslišno] ukaz in napake 685 00:31:33,474 --> 00:31:35,430 v rezultat bo še vedno tiskate the-- 686 00:31:35,430 --> 00:31:44,110 >> ROB Bowden: Ja, če je Napaka v enem od teh commands-- 687 00:31:44,110 --> 00:31:48,090 tako da recimo, da je Ukaz napake ni bilo mogoče najti. 688 00:31:48,090 --> 00:31:49,312 689 00:31:49,312 --> 00:31:50,520 Še vedno pojavlja v zgodovini. 690 00:31:50,520 --> 00:31:52,620 691 00:31:52,620 --> 00:31:53,170 Vse je v redu. 692 00:31:53,170 --> 00:31:54,750 693 00:31:54,750 --> 00:31:56,040 Druga vprašanja o ničemer? 694 00:31:56,040 --> 00:31:58,760 695 00:31:58,760 --> 00:32:00,300 Tako da je pok. 696 00:32:00,300 --> 00:32:04,230 >> Zdaj pa res koristen ukaz, človek. 697 00:32:04,230 --> 00:32:07,750 Tako, da vam Navodilo za dani ukaz. 698 00:32:07,750 --> 00:32:11,640 Torej, recimo, človek ls, tako to se mi pokazala ls. 699 00:32:11,640 --> 00:32:13,400 Našteva vsebine imenika. 700 00:32:13,400 --> 00:32:17,150 In to je, če vidim, da so te različne zastave, ki obstajajo. 701 00:32:17,150 --> 00:32:21,340 Tako vidimo, da ls -l obstaja če bi prebral to. ls -l 702 00:32:21,340 --> 00:32:26,150 mi daje to popolni seznam Imenik s tem, kdo je lastnik datoteke, 703 00:32:26,150 --> 00:32:29,750 velikost datoteke, spremenjeni žig. 704 00:32:29,750 --> 00:32:31,130 705 00:32:31,130 --> 00:32:34,980 Torej ls -a je še eden, ki ga morda dejansko uporabo nekoliko pogosteje. 706 00:32:34,980 --> 00:32:38,130 -al je moj najpogostejši flag preteklem ls. 707 00:32:38,130 --> 00:32:42,520 >> Torej -a, opazili tam je veliko več datotek, kot le ls. 708 00:32:42,520 --> 00:32:44,170 ls -a. 709 00:32:44,170 --> 00:32:46,170 Kaj je skupnega z vsemi temi datotekami? 710 00:32:46,170 --> 00:32:47,790 Se začnejo s piko. 711 00:32:47,790 --> 00:32:54,710 Torej je ta konvencija v Linuxu, ki Datoteke, ki se začnejo s piko, so skrita. 712 00:32:54,710 --> 00:32:58,330 Torej, to samo pomeni, da Ko smo le ravne ls, 713 00:32:58,330 --> 00:33:04,170 ali pa iščeš ta imenik prek enakovredno finder ali Windows 714 00:33:04,170 --> 00:33:07,250 Explorer enakovredno, da smo Ne želim, da se te datoteke dot. 715 00:33:07,250 --> 00:33:09,680 Ti samo onesnažujejo pogled na stvari. 716 00:33:09,680 --> 00:33:11,790 Torej so skriti razen če je posebej 717 00:33:11,790 --> 00:33:14,250 od njih zahteva, z nekaj podobnega -a. 718 00:33:14,250 --> 00:33:18,920 Tako sem lahko cd v .local, in vidim da je ta sama imenik z 719 00:33:18,920 --> 00:33:22,220 imenika v skupni rabi, in aplikacije in blah blah blah. 720 00:33:22,220 --> 00:33:24,520 Torej dot, datoteke oni samo skrite. 721 00:33:24,520 --> 00:33:26,250 722 00:33:26,250 --> 00:33:29,355 >> OK, tako da drugi pomembni tisti. 723 00:33:29,355 --> 00:33:30,490 724 00:33:30,490 --> 00:33:32,000 Imam nekaj kar lahko preskočite. 725 00:33:32,000 --> 00:33:38,160 Naj samo resnično hitro govoriti o Datoteka preusmerjanje stvari so. 726 00:33:38,160 --> 00:33:43,020 Tako da je celoten kompleks series stvari, ki jih lahko naredite z njimi, 727 00:33:43,020 --> 00:33:47,204 ampak da bi jih videli, recimo, echo. 728 00:33:47,204 --> 00:33:47,870 Drug ukaz. 729 00:33:47,870 --> 00:33:48,920 Res neumen ukaz. 730 00:33:48,920 --> 00:33:50,710 Vse to pa je, print, kaj sem rekel, da. 731 00:33:50,710 --> 00:33:52,070 Tako odmeva zdravo. 732 00:33:52,070 --> 00:33:53,850 Samo odmevalo pozdravi zaslonu. 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 Echoes zdravo svet. 736 00:33:57,890 --> 00:34:02,650 >> Torej, en ukaz ali ena simbol, ki bash razume 737 00:34:02,650 --> 00:34:07,620 ta presega simbolom, da je izhod simbolu datoteke. 738 00:34:07,620 --> 00:34:10,940 Torej, če sem izhod, da je to foo, tam je zdaj datoteka 739 00:34:10,940 --> 00:34:15,100 imenovana foo, znotraj kar je zdravo svet. 740 00:34:15,100 --> 00:34:18,489 Torej, opazil, da ko sem echo Zdravo svet cev v foo, 741 00:34:18,489 --> 00:34:19,980 ni echo Hello World. 742 00:34:19,980 --> 00:34:22,630 Namesto tega je bila dana v datoteki foo. 743 00:34:22,630 --> 00:34:25,340 In še ukaz samo ga vrgel na vas, mačka. 744 00:34:25,340 --> 00:34:29,191 To je preprost način, da le popolnoma izpis vsebine datoteke 745 00:34:29,191 --> 00:34:31,440 tako da mi ne bi bilo treba odpreti urejevalnik besedila, da si jo ogledate. 746 00:34:31,440 --> 00:34:34,159 Torej vsebina foo datoteke so zdravo svet. 747 00:34:34,159 --> 00:34:38,460 In sem lahko mačka blah.c, je vsebina tega. 748 00:34:38,460 --> 00:34:42,123 >> Še enkrat, to so ukazi, da ne Pričakujemo, da boste imeli jih vse zapomnil. 749 00:34:42,123 --> 00:34:43,860 Ideja je, da ste jih videli. 750 00:34:43,860 --> 00:34:45,735 Morda delate nekaj, in ste 751 00:34:45,735 --> 00:34:47,230 kot da sem bolan odpiranje te datoteke. 752 00:34:47,230 --> 00:34:50,120 Želim si, da bi lahko samo poglej na vsebino resnično hitro. 753 00:34:50,120 --> 00:34:52,320 Lahko bi to naredil, potem ozremo nazaj in reči, oh I 754 00:34:52,320 --> 00:34:55,250 zapomni si nekaj podobnega da obstaja, in da je mačka. 755 00:34:55,250 --> 00:35:00,630 >> Tako da se bo v datoteko. 756 00:35:00,630 --> 00:35:06,639 Zdaj ni res vse dobro Primer branja iz datoteke še. 757 00:35:06,639 --> 00:35:08,930 Kaj je nekaj, kar traja nekaj od standarda v? 758 00:35:08,930 --> 00:35:10,010 759 00:35:10,010 --> 00:35:11,544 Koli preprost ukaz Linux? 760 00:35:11,544 --> 00:35:13,480 761 00:35:13,480 --> 00:35:16,970 Ko pridemo do njega, v nekaj tedne vsi piece-- dobro, 762 00:35:16,970 --> 00:35:20,470 ta teden imate kos kjer si začnete jemati prispevek od uporabnika. 763 00:35:20,470 --> 00:35:23,696 In tako ponavadi tipkanjem da je vhod na tipkovnici. 764 00:35:23,696 --> 00:35:25,570 Namesto da vnesete Vhod na tipkovnici, 765 00:35:25,570 --> 00:35:30,950 lahko namesto cev v iz datoteke tako da, ko boste to storili Mario, ./mario, 766 00:35:30,950 --> 00:35:35,200 cev v od posamezne datoteke in da se dogaja, da zaženete program mario. 767 00:35:35,200 --> 00:35:37,300 Ni pričakoval vhoda tipkovnice, namesto tega pa je 768 00:35:37,300 --> 00:35:39,650 le, da bo prebral vrstice iz datoteke foo. 769 00:35:39,650 --> 00:35:45,230 >> Torej, večja kot foo ga postavlja v datoteko foo, in manj kot foo 770 00:35:45,230 --> 00:35:50,170 meni stvari iz spisa foo in uporablja, da kot izhodišče za ta program. 771 00:35:50,170 --> 00:35:51,520 772 00:35:51,520 --> 00:36:00,630 In samo, da ga vidim, bi lahko tudi echo foo bar baz, in nato namesto enega 773 00:36:00,630 --> 00:36:03,850 več, naredimo dva v foo. 774 00:36:03,850 --> 00:36:05,610 Kaj naj bi to naredil? 775 00:36:05,610 --> 00:36:07,180 Samo pripne na datoteko. 776 00:36:07,180 --> 00:36:15,360 Torej, namesto odpovednega roka, če mi odmeva bla v foo in potem mačka foo, to je samo bla. 777 00:36:15,360 --> 00:36:18,285 Torej, ko se izhod v datoteko tako, popolnoma prepiše datoteko. 778 00:36:18,285 --> 00:36:19,330 779 00:36:19,330 --> 00:36:22,740 Če si želite priložiti, double [? greder. ?] 780 00:36:22,740 --> 00:36:24,080 >> In nazadnje je cev. 781 00:36:24,080 --> 00:36:29,590 Pipe Gets veliko bolj zapletena, kjer je potrebno izhod enega ukaza 782 00:36:29,590 --> 00:36:32,320 in ga hrani v naslednji ukaz. 783 00:36:32,320 --> 00:36:36,140 Tako da nekateri običajna stvar, zgodovina. 784 00:36:36,140 --> 00:36:37,920 Torej, Uh, ne želim, da pogled na to. 785 00:36:37,920 --> 00:36:40,680 786 00:36:40,680 --> 00:36:44,485 Prikaži vse ukaze v moji zgodovini kjer sem grep-ed za nekaj. 787 00:36:44,485 --> 00:36:45,360 Ne, to je zmedeno. 788 00:36:45,360 --> 00:36:50,360 Prikaži vse ukaze, kjer se mi zdi. 789 00:36:50,360 --> 00:36:52,360 Vse najdete ukaze sem kdaj tekel. 790 00:36:52,360 --> 00:36:55,050 >> Torej zgodovina. 791 00:36:55,050 --> 00:36:59,017 Zdaj Zgodovina izhodi na Zaslon seznam ukazov, 792 00:36:59,017 --> 00:37:00,850 vendar ne želim, da izhodna žogo na zaslonu. 793 00:37:00,850 --> 00:37:03,445 Namesto tega bom cevi njim v grep. 794 00:37:03,445 --> 00:37:04,790 795 00:37:04,790 --> 00:37:07,830 Torej, kaj je grep za vse primere najdbi. 796 00:37:07,830 --> 00:37:09,550 797 00:37:09,550 --> 00:37:17,000 Torej sedaj, namesto da grep pridobivanju input namesto of-- 798 00:37:17,000 --> 00:37:24,360 grep lahko obravnava kot input-- smo uporabo grep nekoliko drugače tukaj. 799 00:37:24,360 --> 00:37:29,550 Torej, namesto da vnesete seznam stvari, ki smo želeli poiskati 800 00:37:29,550 --> 00:37:31,070 in dejal grep jemlje kot vhod. 801 00:37:31,070 --> 00:37:34,810 Torej, če jaz prav grep našli, ga čaka me na vrsto stvari. 802 00:37:34,810 --> 00:37:37,661 Torej mačka zdravo našli. 803 00:37:37,661 --> 00:37:38,160 Pozdravljeni. 804 00:37:38,160 --> 00:37:40,430 805 00:37:40,430 --> 00:37:40,930 Najdi. 806 00:37:40,930 --> 00:37:43,670 Obvestilo vsakič, ko vtipkate najdem priznava, da sem tipkal najdbo. 807 00:37:43,670 --> 00:37:44,880 808 00:37:44,880 --> 00:37:49,540 Torej, namesto tega bo iskanje datotek za najti. 809 00:37:49,540 --> 00:37:53,930 >> Torej zgodovina se zdaj dogaja, da izhodna seznam vseh ukazov. 810 00:37:53,930 --> 00:37:55,200 811 00:37:55,200 --> 00:37:58,100 Mi smo dajanje takega obsega, in smo krmljenje je grep, 812 00:37:58,100 --> 00:38:00,180 in zato je izpljunil vse primerke našel. 813 00:38:00,180 --> 00:38:02,170 814 00:38:02,170 --> 00:38:05,570 Razlog, da sem rekel, da bi se pomešala je, če I-- je še vedno nejasna. 815 00:38:05,570 --> 00:38:07,030 Če sem grep za grep. 816 00:38:07,030 --> 00:38:08,755 817 00:38:08,755 --> 00:38:11,130 Opazite, da je precej vedno prikazuje ukaz sem 818 00:38:11,130 --> 00:38:15,280 tekel, ker ta ukaz sama grep znotraj njega. 819 00:38:15,280 --> 00:38:16,580 820 00:38:16,580 --> 00:38:20,674 >> OK, tako da kakršna koli vprašanja o vsem tem? 821 00:38:20,674 --> 00:38:22,340 In ga bom prenese več na tej točki. 822 00:38:22,340 --> 00:38:24,690 Upajmo, da je to lepo Pregled vseh ukazov 823 00:38:24,690 --> 00:38:30,100 da vam ni treba imeti naučene, toda ti predstavljajo 824 00:38:30,100 --> 00:38:32,950 solid 95% tega, kar sem narediti v ukazni vrstici. 825 00:38:32,950 --> 00:38:34,310 826 00:38:34,310 --> 00:38:39,140 Prav tako ne pozabite, da v ukazni vrstici sama, bash je programski jezik, 827 00:38:39,140 --> 00:38:43,070 in tako, ko prideš do njega, ga morda želeli narediti res zapletene stvari. 828 00:38:43,070 --> 00:38:47,522 In tako se je stvari, kot so zanke, in če-jev, in vse tiste 829 00:38:47,522 --> 00:38:50,230 da boš navaditi s svojimi programskimi jeziki. 830 00:38:50,230 --> 00:38:53,660 Ampak to je izven Področje uporabe tega oddelka. 831 00:38:53,660 --> 00:38:55,520 832 00:38:55,520 --> 00:38:56,985 OK, tako da ni vprašanja? 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: Ali boste to-- 836 00:38:59,450 --> 00:39:01,158 ALLISON: Zmorem na rudnik, če hočeš. 837 00:39:01,158 --> 00:39:02,626 Vidimo lahko, kaj se zgodi. 838 00:39:02,626 --> 00:39:03,750 ROB Bowden: Off k Allison. 839 00:39:03,750 --> 00:39:05,090 ALLISON: Woo. 840 00:39:05,090 --> 00:39:07,504 Si težko dejanje slediti, Rob. 841 00:39:07,504 --> 00:39:08,920 Želiš, da preklopite z vami? 842 00:39:08,920 --> 00:39:10,246 Ali imaš, OK. 843 00:39:10,246 --> 00:39:13,590 844 00:39:13,590 --> 00:39:16,990 Bom poskusil in ne precej so dolgotrajni tam. 845 00:39:16,990 --> 00:39:20,619 846 00:39:20,619 --> 00:39:22,660 Poglejmo, če bo to deluje tako, kot želim, da. 847 00:39:22,660 --> 00:39:26,170 848 00:39:26,170 --> 00:39:26,670 Mogoč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 Da. 852 00:39:28,796 --> 00:39:30,460 853 00:39:30,460 --> 00:39:34,066 >> Tako da sem le, da bo zelo hitro iti prek spremenljivke, zank, pogojnih, 854 00:39:34,066 --> 00:39:35,440 in malo na prevajalnik. 855 00:39:35,440 --> 00:39:38,570 Če imate vprašanja, na vsak čas, prosim nehaj me. 856 00:39:38,570 --> 00:39:42,750 Ti fantje me bo spomnil, da ponovite Vaše vprašanje v primeru, sem pozabil, 857 00:39:42,750 --> 00:39:44,210 vendar ne sme biti preveč slabo. 858 00:39:44,210 --> 00:39:45,850 >> Torej spremenljivk, ja. 859 00:39:45,850 --> 00:39:48,060 Nimamo enega od vaših Scratch kosov tukaj. 860 00:39:48,060 --> 00:39:50,440 Prepričan sem, da večina od vas, če ste imeli neke vrste igre 861 00:39:50,440 --> 00:39:53,810 ki ste jo ustvarili z Scratch, ste imeli slediti nekaj podobnega rezultata, 862 00:39:53,810 --> 00:39:55,870 ali časa, ali kaj podobnega. 863 00:39:55,870 --> 00:39:58,080 Torej tiste svetlo oranžna kosi, ki jih vidimo tam 864 00:39:58,080 --> 00:40:02,630 so le oblika Scratch od spremenljivke, in vam bo zagotovo 865 00:40:02,630 --> 00:40:04,640 uporabljali spremenljivke skozi svoje programe. 866 00:40:04,640 --> 00:40:07,350 Če niste, nisem ravno prepričani, kaj počnete. 867 00:40:07,350 --> 00:40:09,000 868 00:40:09,000 --> 00:40:12,215 >> Ampak vseeno, velika stvar, definiranje spremenljivk. 869 00:40:12,215 --> 00:40:13,630 870 00:40:13,630 --> 00:40:16,970 Z C ima vsaka spremenljivka da ima tip izjavil: 871 00:40:16,970 --> 00:40:22,090 zato sem ti dal zelo splošno eden na vrhu. 872 00:40:22,090 --> 00:40:24,045 Tako boste imeli svoj tip in potem karkoli 873 00:40:24,045 --> 00:40:25,420 ste se odločili, da pokličete vašo spremenljivko. 874 00:40:25,420 --> 00:40:27,500 875 00:40:27,500 --> 00:40:29,680 Torej, v tem primeru, vrsto V vašem spremenljivo seznamu. 876 00:40:29,680 --> 00:40:31,400 >> Imamo tri primere. 877 00:40:31,400 --> 00:40:34,439 Char nekega razreda, iz razreda A, ki je kaj 878 00:40:34,439 --> 00:40:36,230 Prepričan sem, da si vsi želimo, da se v tem razredu. 879 00:40:36,230 --> 00:40:37,380 880 00:40:37,380 --> 00:40:40,670 Določite lahko mnogokratnik spremenljivke na eni liniji 881 00:40:40,670 --> 00:40:43,880 dokler vsi so enakega tipa, ki je naš drugi primer tam 882 00:40:43,880 --> 00:40:46,409 kjer imate tri spremenljivke, x, y in z. 883 00:40:46,409 --> 00:40:47,200 Oni so vse boje. 884 00:40:47,200 --> 00:40:49,160 885 00:40:49,160 --> 00:40:53,250 In potem lahko tudi v tem zadnjem Primer z int rezultat in število 886 00:40:53,250 --> 00:40:56,510 ekip, lahko jih inicializacijo tam. 887 00:40:56,510 --> 00:41:01,270 >> Torej, v srednjem primer, če smo samo še plovec od X, Y in Z, 888 00:41:01,270 --> 00:41:02,730 tistih, ki se še ni vključila. 889 00:41:02,730 --> 00:41:04,140 Nimajo vrednosti. 890 00:41:04,140 --> 00:41:05,600 Ali imajo smeti vrednosti. 891 00:41:05,600 --> 00:41:07,370 892 00:41:07,370 --> 00:41:10,790 In če ste poskušali in njihovo uporabo, prevajalnik bo kričati na vas. 893 00:41:10,790 --> 00:41:14,727 Moraš tako razglasi in inicializirati svoje spremenljivke. 894 00:41:14,727 --> 00:41:16,310 Torej, v tej zadnji, delamo tako. 895 00:41:16,310 --> 00:41:19,320 Smo razglasitvi spremenljivke za rezultat in število ekip, 896 00:41:19,320 --> 00:41:24,134 in smo jih inicializacijo, kar njihovo začetno vrednost 7 in 4 897 00:41:24,134 --> 00:41:24,675 oz. 898 00:41:24,675 --> 00:41:26,310 899 00:41:26,310 --> 00:41:27,190 Cool. 900 00:41:27,190 --> 00:41:28,550 Vsi dobro? 901 00:41:28,550 --> 00:41:29,470 Super. 902 00:41:29,470 --> 00:41:31,690 >> OK, tako da nekateri dogovori. 903 00:41:31,690 --> 00:41:35,965 Če ste vi prebrali skozi stilu 50, ti 904 00:41:35,965 --> 00:41:39,510 so le nekaj stvari, ki bi jih radi za vam izvajati v vašem stilu. 905 00:41:39,510 --> 00:41:41,230 Tako pomembnih imen. 906 00:41:41,230 --> 00:41:45,700 Če začnete kliče stvari samo x, y in z, zlasti 907 00:41:45,700 --> 00:41:47,902 kot ste dobili v daljši Programi, ste 908 00:41:47,902 --> 00:41:49,610 verjetno bo zmesti sebe in biti 909 00:41:49,610 --> 00:41:52,930 všeč, kaj je ta spremenljivka se nanaša na. 910 00:41:52,930 --> 00:41:55,880 Nimam pojma, kaj to pomeni. 911 00:41:55,880 --> 00:41:59,280 >> Torej, če je to pomenilo, da imajo ocena, call it rezultat. 912 00:41:59,280 --> 00:42:05,720 Če je to pomenilo, da imajo nekatere odgovor ali ima za posledico, da ga takšno ime. 913 00:42:05,720 --> 00:42:09,920 Za zank, ki jih bo priti v na naslednji diapozitiv, 914 00:42:09,920 --> 00:42:12,985 enoposteljne spremenljivke pisma so v redu. 915 00:42:12,985 --> 00:42:16,033 916 00:42:16,033 --> 00:42:18,449 ROB Bowden: I, j in k sta le dogovori za za zanke 917 00:42:18,449 --> 00:42:22,050 da je vsakdo od njih pričakuje, da se imenuje i, j in k. 918 00:42:22,050 --> 00:42:26,890 Lahko pokličete them-- vidim vrstico stolpec ali vrstica klic včasih 919 00:42:26,890 --> 00:42:29,450 za dve ugnezdenih zank in To je tudi neke vrste standardni. 920 00:42:29,450 --> 00:42:31,450 Ampak se i in j popolnoma razumeti. 921 00:42:31,450 --> 00:42:33,670 >> ALLISON: Ja, jaz in j ste popolnoma v redu. 922 00:42:33,670 --> 00:42:36,250 Zaradi jasnosti podobnega v nekaterih vaših P sklopov, 923 00:42:36,250 --> 00:42:39,745 je morda smiselno, da imajo več opisni stvari tam samo 924 00:42:39,745 --> 00:42:40,920 slediti njim. 925 00:42:40,920 --> 00:42:45,100 Ampak mislim, da i, j in k mislim Velika večina nas vse uporabe. 926 00:42:45,100 --> 00:42:46,890 927 00:42:46,890 --> 00:42:50,340 >> ROB Bowden: S temi konvencije, zato je slog pomemben. 928 00:42:50,340 --> 00:42:53,520 To je ena izmed štirih osi na katerega ste razvrščeni, 929 00:42:53,520 --> 00:42:58,110 in to je tako enostavno pojdi čez Vaše P nastavljena na koncu in se prepričajte 930 00:42:58,110 --> 00:42:59,770 da ne obstajajo stilistične napake. 931 00:42:59,770 --> 00:43:01,742 Zato poskrbite, da ste pravilno tabbing. 932 00:43:01,742 --> 00:43:03,200 Poskrbite, da vaše spremenljivke se imenujejo. 933 00:43:03,200 --> 00:43:04,450 Pustite nekaj pripomb. 934 00:43:04,450 --> 00:43:06,677 To je zelo enostavno, da bi dobili te točke. 935 00:43:06,677 --> 00:43:09,510 Vam ni treba razmišljati o karkoli, da bi dobili te točke. 936 00:43:09,510 --> 00:43:11,093 Nimate, da ugotovimo kaj ven. 937 00:43:11,093 --> 00:43:12,640 To je samo zato je lepa. 938 00:43:12,640 --> 00:43:14,850 >> ALLISON: Pravzaprav smo imajo stil 50, ki 939 00:43:14,850 --> 00:43:17,920 vam bo povedal, kje ste zlorabili up, če ste se zajebavam na slog 940 00:43:17,920 --> 00:43:21,180 in vam bo povedal točno tisto, kar vam morate popraviti in kako jo morate popraviti. 941 00:43:21,180 --> 00:43:23,900 Prav tako je samo dobro, da omenimo da je seveda politika 942 00:43:23,900 --> 00:43:27,200 da če ste v pisarni ure in vaša koda je zmešnjava, 943 00:43:27,200 --> 00:43:30,200 lahko odkloni pomoč ste, dokler ne izgleda lepše. 944 00:43:30,200 --> 00:43:34,310 Torej, začeti prav, voditi dosledno stil, 945 00:43:34,310 --> 00:43:37,100 ste tudi samo dogaja, da bi vaše življenje celota veliko lažje, če 946 00:43:37,100 --> 00:43:38,730 skušaš iti skozi debug. 947 00:43:38,730 --> 00:43:41,510 Če ste poskušali ugotoviti, kam ste manjka kodrasti naramnicami 948 00:43:41,510 --> 00:43:44,890 in so po vsem mestu, ste prav tako svoje življenje težje. 949 00:43:44,890 --> 00:43:47,217 Tako da so skladni s stilom. 950 00:43:47,217 --> 00:43:48,800 Obljubim, da bom lahko vaše življenje lažje. 951 00:43:48,800 --> 00:43:50,330 Da bomo lahko naše življenje lažje. 952 00:43:50,330 --> 00:43:51,869 Vsakdo bo veliko srečnejši. 953 00:43:51,869 --> 00:43:52,910 In to je tisto, kar želite. 954 00:43:52,910 --> 00:43:54,192 955 00:43:54,192 --> 00:43:55,650 GABRIEL: Vaša ocena bo višja. 956 00:43:55,650 --> 00:43:56,858 ALLISON: Ja, in tvoj razred. 957 00:43:56,858 --> 00:43:58,410 958 00:43:58,410 --> 00:44:01,930 Če je vaš TF je, kot si ti, kaže, da je ugodna. 959 00:44:01,930 --> 00:44:02,940 960 00:44:02,940 --> 00:44:05,010 Vse je v redu, in potem samo druga točka tukaj. 961 00:44:05,010 --> 00:44:06,300 Dosledni initializations. 962 00:44:06,300 --> 00:44:09,605 Torej, kot smo videli, lahko razglasi in inicializacijo stvari. 963 00:44:09,605 --> 00:44:10,750 964 00:44:10,750 --> 00:44:13,180 Več spremenljivk na isti liniji. 965 00:44:13,180 --> 00:44:17,930 Ena stvar, ki bi si radi ne storiti je, da razglasi nekatere spremenljivke 966 00:44:17,930 --> 00:44:21,360 in jih ne inicializira na isti linija, ki jo inicializacijo druge. 967 00:44:21,360 --> 00:44:23,960 >> Torej, v primeru, da je Nima smisla sploh, 968 00:44:23,960 --> 00:44:29,050 imamo primer tukaj kjer smo razglasitvi ints 969 00:44:29,050 --> 00:44:31,180 V spremenljivk četrtletjih dimes in penijev, 970 00:44:31,180 --> 00:44:34,214 vendar četrtine in penijev nimajo začetne vrednosti. 971 00:44:34,214 --> 00:44:36,630 Mi smo jih ni inicializiran, ampak prav v sredini tam 972 00:44:36,630 --> 00:44:38,600 smo že inicializiran dimes na 0. 973 00:44:38,600 --> 00:44:41,650 Torej, ali storiti četrti, dimes, penijev. 974 00:44:41,650 --> 00:44:43,170 Ali pa četrtine enaka 0. 975 00:44:43,170 --> 00:44:43,930 Dimes enaka 0. 976 00:44:43,930 --> 00:44:46,810 Denarna enota je enaka 0, ali karkoli te začetne vrednosti. 977 00:44:46,810 --> 00:44:49,800 >> Velika stvar s stilom, biti dosledni. 978 00:44:49,800 --> 00:44:51,050 Če ste v dvomih, se dosledno. 979 00:44:51,050 --> 00:44:52,129 980 00:44:52,129 --> 00:44:53,420 Ampak sledijo našemu slogu vodnik preveč. 981 00:44:53,420 --> 00:44:54,710 982 00:44:54,710 --> 00:44:55,317 Cool. 983 00:44:55,317 --> 00:44:56,150 Vsi dobro tam? 984 00:44:56,150 --> 00:44:57,566 >> OBČINSTVO: Kje je slogovni priročnik? 985 00:44:57,566 --> 00:45:00,800 ALLISON: slogovni priročnik je on-- kaj je spletna stran? 986 00:45:00,800 --> 00:45:03,950 >> GABRIEL: Mislim, da 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 Yep. 991 00:45:06,920 --> 00:45:07,520 >> ALLISON: Da. 992 00:45:07,520 --> 00:45:10,150 Torej vprašanje, kjer je slog 50. 993 00:45:10,150 --> 00:45:12,250 manual.cs50.net/style. 994 00:45:12,250 --> 00:45:13,639 Ja? 995 00:45:13,639 --> 00:45:16,880 >> OBČINSTVO: Če smo opredeljevanju spremenljivke, je OK 996 00:45:16,880 --> 00:45:28,145 če smo se kot [neslišno] kot int rezultat in nato int cilj. 997 00:45:28,145 --> 00:45:29,873 998 00:45:29,873 --> 00:45:35,100 Torej bi lahko rekli, da zdaj smo jih imam jih definira skupaj? 999 00:45:35,100 --> 00:45:37,640 >> ALLISON: Torej, vprašanje, če bi imate odvečno kodo 1000 00:45:37,640 --> 00:45:40,940 Ko definirate spremenljivke, kot so int rezultat in 1001 00:45:40,940 --> 00:45:43,239 V naslednjo vrstico int igro? 1002 00:45:43,239 --> 00:45:46,030 ROB Bowden: Obstajajo definitivno primeri, kjer je odveč koda slaba. 1003 00:45:46,030 --> 00:45:47,738 Jaz ne bi upošteval da je odveč kodo. 1004 00:45:47,738 --> 00:45:50,970 Jaz skoraj nikoli ne razglasi multiple spremenljivke na isti liniji doslej. 1005 00:45:50,970 --> 00:45:53,736 In če nič drugega, je to zato, ker ponavadi grem neke vrste komentar 1006 00:45:53,736 --> 00:45:55,235 razloži kaj spremenljivka je. 1007 00:45:55,235 --> 00:45:57,582 Tako bom rekel int rezultat slash poševnica. 1008 00:45:57,582 --> 00:45:59,350 Spremlja karkoli. 1009 00:45:59,350 --> 00:46:00,710 V skupni poševnico poševnico. 1010 00:46:00,710 --> 00:46:01,790 1011 00:46:01,790 --> 00:46:06,455 Torej, to je veliko Grosser na ta način da jih vse na isti liniji. 1012 00:46:06,455 --> 00:46:08,080 Jaz samo nikoli jih dal na isti liniji. 1013 00:46:08,080 --> 00:46:10,580 >> ALLISON: Počutim se, kot da je osebne preference, na tej točki. 1014 00:46:10,580 --> 00:46:14,900 >> OBČINSTVO: Ali, da gre za za zanke in stvari preveč? 1015 00:46:14,900 --> 00:46:15,900 ROB Bowden: Like notri? 1016 00:46:15,900 --> 00:46:18,282 Tako kot int i je enak 0 vejico dolžina znaša nekaj? 1017 00:46:18,282 --> 00:46:19,490 Da nimaš izbire. 1018 00:46:19,490 --> 00:46:21,850 1019 00:46:21,850 --> 00:46:25,910 Z za zank inicializacijo part-- tako, ste morda le videli 1020 00:46:25,910 --> 00:46:31,520 int i je enak 0 podpičje i manj kot karkoli podpičje i plus plus. 1021 00:46:31,520 --> 00:46:33,820 Da int i enak 0, tehnično lahko tudi 1022 00:46:33,820 --> 00:46:35,770 to, kar smo videli pred z vejicami sintakso. 1023 00:46:35,770 --> 00:46:39,790 int i je enak 0 vejico j enaka 3 vejica k enaka 5. 1024 00:46:39,790 --> 00:46:41,610 1025 00:46:41,610 --> 00:46:44,320 Nimaš izbire, da se razdeli da se v več vrstic, 1026 00:46:44,320 --> 00:46:46,530 in to je standardna oprema. 1027 00:46:46,530 --> 00:46:47,780 Ga vidim je v redu. 1028 00:46:47,780 --> 00:46:49,182 1029 00:46:49,182 --> 00:46:49,890 ALLISON: Awesome. 1030 00:46:49,890 --> 00:46:52,120 No, udoben segue v zanke. 1031 00:46:52,120 --> 00:46:54,860 1032 00:46:54,860 --> 00:46:58,980 Torej, ja, tukaj imamo nekaj primerov zank, da fantje videli v Scratch. 1033 00:46:58,980 --> 00:47:01,550 In seveda vse te lahko preprosto poustvarili v C. 1034 00:47:01,550 --> 00:47:04,610 In v bistvu vam omogočajo ponoviti nekaj del kode 1035 00:47:04,610 --> 00:47:06,740 do določenega pogoja je izpolnjen, kar bomo 1036 00:47:06,740 --> 00:47:09,198 priti v desno po pogovoru o zanke z pogojnih. 1037 00:47:09,198 --> 00:47:11,150 1038 00:47:11,150 --> 00:47:12,570 >> Torej imamo tri glavne vrste. 1039 00:47:12,570 --> 00:47:17,500 Kajti, časa, in storiti nekaj časa, kar bomo vsi šli skozi prav zdaj. 1040 00:47:17,500 --> 00:47:18,860 Torej prva je za zanke. 1041 00:47:18,860 --> 00:47:20,490 1042 00:47:20,490 --> 00:47:25,034 Torej za neki pogoj, izvedete ta blok kode. 1043 00:47:25,034 --> 00:47:27,200 Imamo to kul little diagram tukaj na dnu. 1044 00:47:27,200 --> 00:47:28,230 1045 00:47:28,230 --> 00:47:32,310 Ampak v bistvu imaš v tvoja za, da v prvi vrstici, 1046 00:47:32,310 --> 00:47:34,240 boste inicializirati svoje spremenljivke. 1047 00:47:34,240 --> 00:47:38,260 >> Torej, kot smo govorili, i enako 0 ali I, je enako 10. 1048 00:47:38,260 --> 00:47:40,010 Karkoli potrebujete, da spremenljivka, da se je 1049 00:47:40,010 --> 00:47:43,970 dogaja, da se tam inicializiran, prijavljeni in inicializiran do neke vrednosti. 1050 00:47:43,970 --> 00:47:46,760 Torej imamo nekaj Pogoj, da se dogaja 1051 00:47:46,760 --> 00:47:48,900 da se preveri naše spremenljivka proti nečemu. 1052 00:47:48,900 --> 00:47:55,220 Torej, v primeru tipičen primer, kjer morda želite ta del kode 1053 00:47:55,220 --> 00:47:56,620 izvršiti petkrat. 1054 00:47:56,620 --> 00:48:02,380 Tako da bi imeli int i enak 0, in smo zażelite ko je i manj kot 5. 1055 00:48:02,380 --> 00:48:04,940 Tako da pogoj je le dogaja, da preveri, da vsak čas. 1056 00:48:04,940 --> 00:48:07,120 Če tega pogoja ocenjuje, da res, da je 1057 00:48:07,120 --> 00:48:11,162 tekoč teči kodo, ki je točno Kaj to malo diagram prikazuje. 1058 00:48:11,162 --> 00:48:12,370 1059 00:48:12,370 --> 00:48:13,639 >> In tako jo izvaja. 1060 00:48:13,639 --> 00:48:15,430 Posodablja spremenljivko, ki je tisto, kar vidimo 1061 00:48:15,430 --> 00:48:21,020 v zadnjem delu naše FOR zanka inicializacija tam. 1062 00:48:21,020 --> 00:48:22,370 1063 00:48:22,370 --> 00:48:26,030 Tako da bom samo vztrajati početje to dokler se ta pogoj ni izpolnjen, 1064 00:48:26,030 --> 00:48:28,010 in potem bo izhod zanke in nadaljuje 1065 00:48:28,010 --> 00:48:29,960 premika naprej s preostalim vašega programa. 1066 00:48:29,960 --> 00:48:31,320 1067 00:48:31,320 --> 00:48:33,620 Vsi dobro tam? 1068 00:48:33,620 --> 00:48:34,440 Cool. 1069 00:48:34,440 --> 00:48:37,780 >> Torej, tukaj je primer, zelo podoben na nekaj sem govoril. 1070 00:48:37,780 --> 00:48:42,030 Torej, želimo le, da natisnete to je CS50 10-krat. 1071 00:48:42,030 --> 00:48:44,540 Torej vidite tukaj imamo za naše, potem pa 1072 00:48:44,540 --> 00:48:47,450 inicializacijo spremenljivke i je enak 0. 1073 00:48:47,450 --> 00:48:50,610 Naš pogoj preverja da je manj kot 10. 1074 00:48:50,610 --> 00:48:55,210 Tako ocenila, da res, ko smo se prvič začetek in potem posodobi našo spremenljivko 1075 00:48:55,210 --> 00:48:58,985 vsakič, ko jo dejansko izvaja in natisne to je CS50. 1076 00:48:58,985 --> 00:49:00,510 1077 00:49:00,510 --> 00:49:02,180 In bo prenehal po 10-krat. 1078 00:49:02,180 --> 00:49:03,190 1079 00:49:03,190 --> 00:49:04,070 Cool. 1080 00:49:04,070 --> 00:49:07,130 >> Torej, medtem ko zanke so do naslednjič. 1081 00:49:07,130 --> 00:49:12,400 In kot vidite tu, imamo samo nekateri, medtem ko je ta condition-- vprašanje? 1082 00:49:12,400 --> 00:49:15,238 >> OBČINSTVO: Kako lahko skočite v resnici le ni ena številka, 1083 00:49:15,238 --> 00:49:19,030 ampak dve številki [neslišno] i plus plus plus? 1084 00:49:19,030 --> 00:49:23,390 >> ALLISON: Torej, vprašanje je bilo, kako se lahko posodobite spremenljivko z več kot eno 1085 00:49:23,390 --> 00:49:24,070 naenkrat. 1086 00:49:24,070 --> 00:49:26,860 Torej, jaz plus plus bo update po enega vsak čas. 1087 00:49:26,860 --> 00:49:32,310 Če bi želeli, da ga dopolni z dva, bi lahko naredil i plus enaka 2. 1088 00:49:32,310 --> 00:49:34,526 >> ROB Bowden: Ste videli plus enaka v predavanju še? 1089 00:49:34,526 --> 00:49:35,442 >> OBČINSTVO: [neslišno]. 1090 00:49:35,442 --> 00:49:37,440 1091 00:49:37,440 --> 00:49:42,110 >> ALLISON: To je dejansko Isto kot jaz enak i plus 2. 1092 00:49:42,110 --> 00:49:46,130 Tako se dogaja, da ga vzamete in posodablja z dvema vsakič. 1093 00:49:46,130 --> 00:49:49,432 Plus je enak, je le nekaj pravimo skladenjsko sladkorja. 1094 00:49:49,432 --> 00:49:52,390 ROB Bowden: Ja, to obstajajo za zal veliko vse aritmetične operaterji. 1095 00:49:52,390 --> 00:49:55,830 Torej i-krat, enake bi podvojitev števila. 1096 00:49:55,830 --> 00:50:02,590 j vrzel enaka 3 je enaka kot j enak j deljeno s 3. 1097 00:50:02,590 --> 00:50:07,399 >> ALLISON: Ali minus enak 2 bi pojemanje i dva vsakič. 1098 00:50:07,399 --> 00:50:08,565 ROB Bowden: Celo mod Rezultat. 1099 00:50:08,565 --> 00:50:09,690 1100 00:50:09,690 --> 00:50:13,270 Niste videli bitni operaterjev, vendar strešica enaka in znaka & enaka, 1101 00:50:13,270 --> 00:50:14,560 vse tiste obstajajo. 1102 00:50:14,560 --> 00:50:19,480 >> ALLISON: Torej, veliko krat, še posebej, s svojim prvim nekaj P sklopov, 1103 00:50:19,480 --> 00:50:22,527 boste verjetno z večanjem ena, tako da sem plus plus, j plus plus 1104 00:50:22,527 --> 00:50:24,610 so vse stvari, ki jih boš za tipično uporabo. 1105 00:50:24,610 --> 00:50:28,240 Ampak to posodobitev pogoj celoti znotraj vašega nadzora. 1106 00:50:28,240 --> 00:50:32,310 Lahko jo posodobite na kakršenkoli korakih ali na kakršen koli način ste se odločili. 1107 00:50:32,310 --> 00:50:33,389 1108 00:50:33,389 --> 00:50:35,680 Morda boste celo želeli, da bi bilo naključno število včasih. 1109 00:50:35,680 --> 00:50:37,180 1110 00:50:37,180 --> 00:50:39,580 Ampak ja, obstaja veliko stvari, ki jih lahko storite s tem. 1111 00:50:39,580 --> 00:50:41,280 Vam ne omejeno na i plus plus. 1112 00:50:41,280 --> 00:50:44,400 >> ROB Bowden: Samo, da vas Vem, da obstaja, pa tudi 1113 00:50:44,400 --> 00:50:46,960 obstaja v drugačni obliki, plus plus i. 1114 00:50:46,960 --> 00:50:51,410 Torej, če ste že kdaj iskali na spletu in se zgodi, da vidim, plus plus i, 1115 00:50:51,410 --> 00:50:52,870 precej pomeni isto stvar. 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 Dobro? 1120 00:50:56,740 --> 00:50:57,240 Super. 1121 00:50:57,240 --> 00:50:59,190 1122 00:50:59,190 --> 00:50:59,990 Torej, medtem ko zanke. 1123 00:50:59,990 --> 00:51:01,160 1124 00:51:01,160 --> 00:51:02,570 Zelo podoben. 1125 00:51:02,570 --> 00:51:03,737 Imate nekaj stanje. 1126 00:51:03,737 --> 00:51:05,820 Glavna stvar, da obvestilo tukaj je, namesto da bi 1127 00:51:05,820 --> 00:51:08,540 trije različni deli vzpostaviti, imamo eno. 1128 00:51:08,540 --> 00:51:11,090 Pravkar imamo nekaj stanje da se je preveriti. 1129 00:51:11,090 --> 00:51:14,920 In na enak način, dokler ta pogoj ovrednoten kot resničen, 1130 00:51:14,920 --> 00:51:16,840 kodo se bo teči. 1131 00:51:16,840 --> 00:51:18,870 In če je to napačen, ga bo prenehal, premikanje 1132 00:51:18,870 --> 00:51:21,930 na naslednji del vašega programa. 1133 00:51:21,930 --> 00:51:25,780 Torej, to je vrsta like-- kaj Dober primer preverjanje 1134 00:51:25,780 --> 00:51:27,215 nekaj normalnega stanja? 1135 00:51:27,215 --> 00:51:29,402 1136 00:51:29,402 --> 00:51:30,235 GABRIEL: Medtem ko je res. 1137 00:51:30,235 --> 00:51:32,110 ALLISON: Lahko bi bilo sicer res. 1138 00:51:32,110 --> 00:51:33,510 No, 1 je enak 1. 1139 00:51:33,510 --> 00:51:34,970 1140 00:51:34,970 --> 00:51:37,642 >> ROB Bowden: Lahko naredite while-- Samo namesto z zanko, 1141 00:51:37,642 --> 00:51:39,600 lahko vedno kodo zanko v while, 1142 00:51:39,600 --> 00:51:42,600 tako da sem večji od 0 ali Medtem ko sem manj kot 10. 1143 00:51:42,600 --> 00:51:45,200 1144 00:51:45,200 --> 00:51:46,010 >> ALLISON: Awesome. 1145 00:51:46,010 --> 00:51:50,640 In potem smo storili, medtem ko zanke, ki je odlična za potrditev uporabnika, kjer 1146 00:51:50,640 --> 00:51:55,370 želite, da bi dobili nekaj od tvoj uporabnik, vidim, če je veljavna, 1147 00:51:55,370 --> 00:51:57,060 in potem nadaljuje od tam. 1148 00:51:57,060 --> 00:52:04,000 Torej ena od stvari, ki se zaveda, z storiti, medtem ko je, da se bo izvršila 1149 00:52:04,000 --> 00:52:08,000 in potem bo ponovno izvršiti če je ta pogoj izpolnjen. 1150 00:52:08,000 --> 00:52:11,240 >> Torej je verjetno najboljši način, da to storijo je le, da si primer tukaj. 1151 00:52:11,240 --> 00:52:14,620 Torej, kot sem že omenil, uporabnika Validacija je res useful-- 1152 00:52:14,620 --> 00:52:17,520 ali pa whiles so res koristno pri potrjevanju pri uporabnikih. 1153 00:52:17,520 --> 00:52:19,730 Torej, to je le, da bo ponovno spodbudilo nekaj uporabnika 1154 00:52:19,730 --> 00:52:23,640 dokler ne vnesete pozitivno število, ki bi lahko bili koristni za vašo P niz 1155 00:52:23,640 --> 00:52:24,190 ta teden. 1156 00:52:24,190 --> 00:52:25,850 1157 00:52:25,850 --> 00:52:29,480 In tako v tem primeru, ko smo najprej zagnati ta program, 1158 00:52:29,480 --> 00:52:32,260 da se bo tiskanje vnesite pozitivno število. 1159 00:52:32,260 --> 00:52:34,810 To se dogaja, da bi dobili nekaj vhod od uporabnika, 1160 00:52:34,810 --> 00:52:38,320 in potem se dogaja, da preverite Vstopni proti stanju 1161 00:52:38,320 --> 00:52:39,500 da ste nastavili za to. 1162 00:52:39,500 --> 00:52:41,030 >> Torej, v tem primeru pa se dogaja, da preverite. 1163 00:52:41,030 --> 00:52:44,190 To se dogaja, da se reči, OK, je naša vhodna negativen, 1164 00:52:44,190 --> 00:52:47,175 ali je 0 ali negativen, ki bi bil veljaven. 1165 00:52:47,175 --> 00:52:48,300 Torej, potem bi ponovno poziv. 1166 00:52:48,300 --> 00:52:50,280 1167 00:52:50,280 --> 00:52:50,780 Vprašanje? 1168 00:52:50,780 --> 00:52:54,720 >> OBČINSTVO: Ali je to isto, kot takrat medtem ko zanke, če ste le kopirati to kodo 1169 00:52:54,720 --> 00:52:56,680 in dal je [neslišno] while zanko? 1170 00:52:56,680 --> 00:52:59,620 1171 00:52:59,620 --> 00:53:05,160 >> ALLISON: Torej, vprašanje je bilo, bi to je enako kot le nekaj časa 1172 00:53:05,160 --> 00:53:08,570 zanka, če bi le kopirati while zanko zgoraj. 1173 00:53:08,570 --> 00:53:12,440 Torej, v tem primeru, medtem ko je vaša zanka dogaja, da najprej preverite stanje. 1174 00:53:12,440 --> 00:53:15,300 Torej, v tem primeru, če bomo poskusili pisati le kot while, 1175 00:53:15,300 --> 00:53:18,010 bi rekli časa vhod je manj kot ena. 1176 00:53:18,010 --> 00:53:20,801 Vendar nimamo vhod za njo. 1177 00:53:20,801 --> 00:53:24,238 >> OBČINSTVO: Če vas [neslišno] while zanko, vključno s to kodo, 1178 00:53:24,238 --> 00:53:28,166 ampak potem si se soočila kodo nad while tudi. 1179 00:53:28,166 --> 00:53:31,052 Pravkar ste imeli to kodo [Neslišno] while zanko. 1180 00:53:31,052 --> 00:53:32,760 ALLISON: To bi bilo ista stvar, ja. 1181 00:53:32,760 --> 00:53:37,110 Torej bi lahko samo write-- namesto ob do-- Da. 1182 00:53:37,110 --> 00:53:37,976 1183 00:53:37,976 --> 00:53:39,350 GABRIEL: Ampak to je bolj elegantno. 1184 00:53:39,350 --> 00:53:41,020 ALLISON: Ja, to je bolj elegantno. 1185 00:53:41,020 --> 00:53:44,560 Lahko dobite v oblikovanju in malenkosti, ampak ja, lahko popolnoma storiti. 1186 00:53:44,560 --> 00:53:45,850 1187 00:53:45,850 --> 00:53:47,072 Katera koli druga vprašanja? 1188 00:53:47,072 --> 00:53:49,240 1189 00:53:49,240 --> 00:53:50,250 OK, v redu. 1190 00:53:50,250 --> 00:53:55,540 >> Zato smo se veliko pogovarjali o pogojih z vsemi temi zank, ki jih imamo, 1191 00:53:55,540 --> 00:53:58,615 tako da smo dejansko dobili v razmere v logičnih izrazov. 1192 00:53:58,615 --> 00:53:59,990 1193 00:53:59,990 --> 00:54:03,440 Again, jih uporabite v C, tako da samo nekako prehajamo 1194 00:54:03,440 --> 00:54:06,050 od več grafičnega vmesnika dejansko kodiranje. 1195 00:54:06,050 --> 00:54:07,480 1196 00:54:07,480 --> 00:54:09,100 >> Cool, da ena velika, če. 1197 00:54:09,100 --> 00:54:11,130 1198 00:54:11,130 --> 00:54:17,070 V bistvu samo nam omogoča, da uvedejo nekaj logike v naš program in preverjanje 1199 00:54:17,070 --> 00:54:17,790 sys pogoji. 1200 00:54:17,790 --> 00:54:22,150 Torej, v tem primeru, OK, je n večji kot 0? 1201 00:54:22,150 --> 00:54:24,070 Da, to je, da lahko to izvede. 1202 00:54:24,070 --> 00:54:28,060 To je samo preverjanje nekaterih Pogoj, da ste 1203 00:54:28,060 --> 00:54:33,565 nastaviti, kar mislim, da smo vsi zadovoljni s preverjanjem pogojev. 1204 00:54:33,565 --> 00:54:35,975 1205 00:54:35,975 --> 00:54:36,475 Cool. 1206 00:54:36,475 --> 00:54:38,760 1207 00:54:38,760 --> 00:54:44,530 Torej, če je še tvoja druga, lahko rečeš OK, če je to res, 1208 00:54:44,530 --> 00:54:46,150 storite to prva stvar. 1209 00:54:46,150 --> 00:54:48,720 V nasprotnem primeru vam želim Privzeta in narediti nekaj drugega. 1210 00:54:48,720 --> 00:54:51,977 1211 00:54:51,977 --> 00:54:55,060 Tako kot v tem primeru, ali boste izbrali pozitivno število ali negativno število. 1212 00:54:55,060 --> 00:54:56,500 Imate samo dve možnosti. 1213 00:54:56,500 --> 00:54:59,550 Jo potrebujete za izvedbo, ne glede kakšne so vaše uporabniške vhodi. 1214 00:54:59,550 --> 00:55:02,920 Torej lahko rečemo, dobro, je večja od 0? 1215 00:55:02,920 --> 00:55:03,480 Cool. 1216 00:55:03,480 --> 00:55:04,480 Natisni pozitivno število. 1217 00:55:04,480 --> 00:55:06,153 Če je ni, natisnite negativen. 1218 00:55:06,153 --> 00:55:06,960 Vsi dobro? 1219 00:55:06,960 --> 00:55:14,920 >> Nato pa ena stvar, da priznajo, je da če je pogoj izpolnjen, če, 1220 00:55:14,920 --> 00:55:16,650 sicer ne bo nikoli tudi izvršiti. 1221 00:55:16,650 --> 00:55:19,210 Samo eden od teh bo izvršiti naenkrat. 1222 00:55:19,210 --> 00:55:20,410 Torej, to je kompromis. 1223 00:55:20,410 --> 00:55:21,720 Ne boste dobili, da imajo oboje. 1224 00:55:21,720 --> 00:55:23,566 Ali boste imeli prvi pogoj. 1225 00:55:23,566 --> 00:55:25,440 Ali boste imeli, če ali drugje, ni tako. 1226 00:55:25,440 --> 00:55:26,849 1227 00:55:26,849 --> 00:55:28,890 Ki lahko nato, da se stvari še bolj zapleteno, 1228 00:55:28,890 --> 00:55:31,060 ker lahko storite, če, sicer se, in nato drugega. 1229 00:55:31,060 --> 00:55:32,810 Torej v tem primeru smo imajo tri pogoje. 1230 00:55:32,810 --> 00:55:34,830 1231 00:55:34,830 --> 00:55:38,370 In še enkrat, samo eden od teh je dogaja, da na koncu se izvede. 1232 00:55:38,370 --> 00:55:41,030 Torej boste morda sprašujete dobro, kaj, če vas 1233 00:55:41,030 --> 00:55:45,510 nekaj, kar lahko izpolnijo dva takšna. 1234 00:55:45,510 --> 00:55:49,520 Mogoče karkoli ste vnašanjem izpolnjuje oba pogoja 1235 00:55:49,520 --> 00:55:51,811 kajti če in else if. 1236 00:55:51,811 --> 00:55:53,060 Edina stvar, ki se dogaja, da teče 1237 00:55:53,060 --> 00:55:56,240 >> ALLISON: Takoj, ko najde nekaj da izpolnjuje pogoj, da 1238 00:55:56,240 --> 00:55:59,790 ocenjuje, da drži, da je kaj se dogaja, da teče in nič drugega. 1239 00:55:59,790 --> 00:56:04,440 Torej, če si imel, je ta številka med 0 in 5 za svoj prvi, 1240 00:56:04,440 --> 00:56:10,530 ali je ta številka med 3 in 5 za drugega, če dela, 1241 00:56:10,530 --> 00:56:15,550 in vnesete number-- Rekel sem 0 in 5 in-- 4. 1242 00:56:15,550 --> 00:56:18,110 To bo udaril prvi. 1243 00:56:18,110 --> 00:56:20,960 To se dogaja, da se reči, OK, to število med 0 in 5. 1244 00:56:20,960 --> 00:56:22,480 Izvršiti in oditi. 1245 00:56:22,480 --> 00:56:25,340 To ne bo nikoli udaril to drugo možnost. 1246 00:56:25,340 --> 00:56:26,394 Cool? 1247 00:56:26,394 --> 00:56:27,250 Super. 1248 00:56:27,250 --> 00:56:31,300 >> OK imamo tudi izjave preklopijo, želite še more-- ali žal, 1249 00:56:31,300 --> 00:56:31,965 Stikalo je naslednji. 1250 00:56:31,965 --> 00:56:33,540 1251 00:56:33,540 --> 00:56:34,990 Jaz sem že pred sebe tukaj. 1252 00:56:34,990 --> 00:56:36,370 1253 00:56:36,370 --> 00:56:39,210 Spet, multipla če bloki kjer je, kot sem rekel 1254 00:56:39,210 --> 00:56:45,600 je takoj, ko se vam zdi stanje da je izpolnjen, in če drugega, če drugega, 1255 00:56:45,600 --> 00:56:46,630 pušča. 1256 00:56:46,630 --> 00:56:49,560 Če morate preveriti več stvari, ste 1257 00:56:49,560 --> 00:56:53,000 želeli uporabiti, ker da bo preveril, vsakič tukaj. 1258 00:56:53,000 --> 00:56:58,060 Tako da bo ta teče skozi in če je večja ali enaka 90, 1259 00:56:58,060 --> 00:56:59,160 da se bo izpisal. 1260 00:56:59,160 --> 00:57:00,530 1261 00:57:00,530 --> 00:57:03,600 In bo trajal skozi in preveriti vsak izmed njih. 1262 00:57:03,600 --> 00:57:06,444 >> OBČINSTVO: Torej to ne bi bilo bolj buggy kot [neslišno]. 1263 00:57:06,444 --> 00:57:07,735 To ne bi bilo všeč [neslišno]? 1264 00:57:07,735 --> 00:57:10,990 1265 00:57:10,990 --> 00:57:15,740 >> ALLISON: vprašanje je, bi bilo to buggy ali pa to stori, kar hočeš. 1266 00:57:15,740 --> 00:57:19,830 Res je odvisno od česa hočeš iz svojega programa. 1267 00:57:19,830 --> 00:57:22,291 >> OBČINSTVO: Mislim, kot če daš 90 v. 1268 00:57:22,291 --> 00:57:23,290 ALLISON: Če si dal 90-- 1269 00:57:23,290 --> 00:57:24,206 OBČINSTVO: [neslišno]. 1270 00:57:24,206 --> 00:57:25,584 1271 00:57:25,584 --> 00:57:27,250 GABRIEL: boš dobil dve stvari. 1272 00:57:27,250 --> 00:57:28,916 ALLISON: boš dobil dve stvari. 1273 00:57:28,916 --> 00:57:29,420 Da, dva. 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: No. 1277 00:57:34,580 --> 00:57:35,288 >> ROB Bowden: Four. 1278 00:57:35,288 --> 00:57:37,070 1279 00:57:37,070 --> 00:57:40,070 Če si dal 90, pa ti bo rekel, dobil A, imaš B, imaš C, 1280 00:57:40,070 --> 00:57:40,545 imaš D. 1281 00:57:40,545 --> 00:57:41,461 >> OBČINSTVO: [neslišno]. 1282 00:57:41,461 --> 00:57:42,196 1283 00:57:42,196 --> 00:57:42,820 ALLISON: Right. 1284 00:57:42,820 --> 00:57:44,778 Tako da sem odvisen od tega, kaj želim od vas program. 1285 00:57:44,778 --> 00:57:47,050 Včasih boste morali preveriti več stvari. 1286 00:57:47,050 --> 00:57:49,970 1287 00:57:49,970 --> 00:57:55,270 Boste dobili veliko globlje v to, kar Dobro oblikovanje je kot greš naprej. 1288 00:57:55,270 --> 00:57:57,090 Važno, da se zavedaš, da je to 1289 00:57:57,090 --> 00:58:01,090 bo preveril vse štiri pogoje tukaj. 1290 00:58:01,090 --> 00:58:05,860 Ker če bi bilo to, če drugega, če drug če drugega, bi udaril, da je prvi primer, 1291 00:58:05,860 --> 00:58:07,950 bi natisniti imaš A in bi morali narediti. 1292 00:58:07,950 --> 00:58:10,250 >> ROB Bowden: Tudi če bomo odločil, da se to spremeni, da če 1293 00:58:10,250 --> 00:58:13,880 in je večja ali enaka 90, če in večja ali enaka 80, 1294 00:58:13,880 --> 00:58:19,710 in manj kot ali enako 89, če n večji od ali enak 70, 1295 00:58:19,710 --> 00:58:23,830 in n manjša ali enaka 79, tako da bo pravilna. 1296 00:58:23,830 --> 00:58:27,190 Da se bo to, kar si želimo, vendar še vedno preverja, vsak je. 1297 00:58:27,190 --> 00:58:34,050 >> Torej, medtem ko je v prvem scenariju, če bomo vnesite 90 s samo če else if else if, 1298 00:58:34,050 --> 00:58:37,300 in vnesemo 90, potem to se dogaja, da popravi. 1299 00:58:37,300 --> 00:58:39,615 To bo preveril najprej ena, print imaš A, 1300 00:58:39,615 --> 00:58:42,590 preskočite vse, zato, ker je že našli enega, ki dela. 1301 00:58:42,590 --> 00:58:46,360 Vsi primeri se med seboj izključujejo na osnovi če else if else if. 1302 00:58:46,360 --> 00:58:48,630 Torej bo to izvrši Prvo če, potem je to storjeno. 1303 00:58:48,630 --> 00:58:49,790 Pa bom šel do konca. 1304 00:58:49,790 --> 00:58:52,400 >> Ker če bomo spremenili da je to tisto, kar sem bil 1305 00:58:52,400 --> 00:58:54,204 rekoč z manj kot ali enaka 89. 1306 00:58:54,204 --> 00:58:55,620 To se dogaja, da se preveri prvo. 1307 00:58:55,620 --> 00:58:56,560 To bo natisniti. 1308 00:58:56,560 --> 00:58:58,010 To bo preveriti še enega. 1309 00:58:58,010 --> 00:58:59,010 To ne bo natisniti. 1310 00:58:59,010 --> 00:58:59,910 Preverite tretjo. 1311 00:58:59,910 --> 00:59:00,620 Ne gre za tiskanje. 1312 00:59:00,620 --> 00:59:01,495 Preverite četrti. 1313 00:59:01,495 --> 00:59:02,420 Zdaj gre za tiskanje. 1314 00:59:02,420 --> 00:59:05,380 Torej, v tem primeru, če drugega različica, saj ti primeri 1315 00:59:05,380 --> 00:59:09,120 se medsebojno izključujeta, to je bolje izkoristiti, če else if else if, 1316 00:59:09,120 --> 00:59:12,970 ker da se dogaja, da imajo manj preverjanja pogojev 1317 00:59:12,970 --> 00:59:14,750 kot to različico. 1318 00:59:14,750 --> 00:59:17,692 1319 00:59:17,692 --> 00:59:18,400 ALLISON: Awesome. 1320 00:59:18,400 --> 00:59:20,580 Torej, še ena stvar, ki jo lahko storiti, je izjave stikalo. 1321 00:59:20,580 --> 00:59:23,104 1322 00:59:23,104 --> 00:59:25,270 V bistvu switch stavek bo v neko spremenljivko, 1323 00:59:25,270 --> 00:59:28,780 v tem primeru je n, in določa, katere zadeve za izvedbo. 1324 00:59:28,780 --> 00:59:33,106 Torej, to je tudi eden, če vaš primeri bi morala biti nekako izključujeta. 1325 00:59:33,106 --> 00:59:35,210 1326 00:59:35,210 --> 00:59:37,940 Torej v tem primeru, če mi smo dobili eno, to je 1327 00:59:37,940 --> 00:59:42,270 dogaja, da se ujemajo karkoli, da variable-- karkoli vrednost n 1328 00:59:42,270 --> 00:59:48,700 je na eni od teh primerih je, 1, 2, ali 3 in natisnete ustrezno črto. 1329 00:59:48,700 --> 00:59:51,870 >> In potem, če opazite tukaj imamo tudi privzeto 1330 00:59:51,870 --> 00:59:54,670 ki jo sicer lahko mislili, da je vaš drugje. 1331 00:59:54,670 --> 00:59:58,510 Torej, če ste izbrali katero koli drugo številko poleg 1, 2 in 3 v tem primeru 1332 00:59:58,510 --> 00:59:59,885 to je le, da bo tiskanje neveljavna. 1333 00:59:59,885 --> 01:00:03,690 1334 01:00:03,690 --> 01:00:08,390 Odločanju, kdaj uporabiti investicijske sklade v primerjavi z če elses versus stikal se dogaja 1335 01:00:08,390 --> 01:00:12,590 biti nekaj, da boste fantje glej oblikujemo pametno, kot ste začeli pisati 1336 01:00:12,590 --> 01:00:15,270 bolj zapletene programe, in Ni težko hitro in pravila 1337 01:00:15,270 --> 01:00:16,330 kdaj jih uporabiti. 1338 01:00:16,330 --> 01:00:17,890 Res je odvisno od vaše kontekstu. 1339 01:00:17,890 --> 01:00:18,590 >> ROB Bowden: In ravno da ga vrgel ven 1340 01:00:18,590 --> 01:00:20,131 ker je bolj udobno oddelek. 1341 01:00:20,131 --> 01:00:20,920 1342 01:00:20,920 --> 01:00:25,053 Stikala, se nagibajo k be-- da ste omejeni 1343 01:00:25,053 --> 01:00:27,430 na različne načine si Uporabite jih lahko, saj investicijski skladi, 1344 01:00:27,430 --> 01:00:30,100 stanje lahko precej veliko karkoli želite. 1345 01:00:30,100 --> 01:00:33,410 S stikali primere morajo biti številke, 1346 01:00:33,410 --> 01:00:37,770 ali tehnično so lahko črke, vendar znakov, kot smo videli, so le številke. 1347 01:00:37,770 --> 01:00:44,250 Torej morajo biti številke, ampak stikala so res bolj učinkovito, kot če bi 1348 01:00:44,250 --> 01:00:50,060 else if else if, ker tudi ob zgledu before-- dobro, 1349 01:00:50,060 --> 01:00:51,486 Primer razred zdi dobra. 1350 01:00:51,486 --> 01:00:52,550 1351 01:00:52,550 --> 01:00:57,080 >> No, recimo, tukaj, smo namesto tega storiti je to, če else if else if scenarij. 1352 01:00:57,080 --> 01:01:00,930 Torej, če je n enak enak 1, natisnite si izbral majhno število. 1353 01:01:00,930 --> 01:01:04,490 Če drugega, če je n enak enak 2, si izbral srednjo številko. 1354 01:01:04,490 --> 01:01:06,550 Else če Rezult enak 3, visoka. 1355 01:01:06,550 --> 01:01:08,060 Else neveljavna. 1356 01:01:08,060 --> 01:01:09,820 >> Torej, recimo, da je bil naš scenarij. 1357 01:01:09,820 --> 01:01:14,060 Torej, recimo, da vnesemo 4, tako da pričakujemo, da bo veljaven. 1358 01:01:14,060 --> 01:01:17,410 Tako da, če drugega če drug če je pristop se bo delo, je 1359 01:01:17,410 --> 01:01:18,740 preveri prvi pogoj. 1360 01:01:18,740 --> 01:01:19,776 To ni zadovoljna. 1361 01:01:19,776 --> 01:01:21,150 Tako preverimo drugi pogoj. 1362 01:01:21,150 --> 01:01:21,940 To ni zadovoljna. 1363 01:01:21,940 --> 01:01:23,023 Preverite tretji pogoj. 1364 01:01:23,023 --> 01:01:23,640 Niso zadovoljni. 1365 01:01:23,640 --> 01:01:26,650 Torej gremo na drug in natisniti neveljavna. 1366 01:01:26,650 --> 01:01:30,169 >> Tako se stikalo dela je pripravlja navzdol 1367 01:01:30,169 --> 01:01:31,960 v tisto, kar bomo poklicati skok mizo. 1368 01:01:31,960 --> 01:01:33,180 1369 01:01:33,180 --> 01:01:37,120 Glavna ideja bitje da ko vnesete 4, 1370 01:01:37,120 --> 01:01:39,090 lahko takoj pojdite na privzeto. 1371 01:01:39,090 --> 01:01:41,460 To ni potrebno, da preverijo am primera I 1? 1372 01:01:41,460 --> 01:01:42,350 Nope to ni to. 1373 01:01:42,350 --> 01:01:42,850 Primer 2? 1374 01:01:42,850 --> 01:01:43,240 Nope. 1375 01:01:43,240 --> 01:01:43,770 Primer 3? 1376 01:01:43,770 --> 01:01:44,270 Nope. 1377 01:01:44,270 --> 01:01:45,090 Privzeto. 1378 01:01:45,090 --> 01:01:47,610 OK, to mora biti, kjer sem želite, in nato izvršiti to. 1379 01:01:47,610 --> 01:01:49,590 Ne, takoj skoči na privzeto. 1380 01:01:49,590 --> 01:01:51,900 Ali pa vnesem 2, to je takoj šel za 2 1381 01:01:51,900 --> 01:01:54,060 ne da bi morali iti skozi 1. primeru. 1382 01:01:54,060 --> 01:01:57,820 >> Torej, na ta način, realno danes, da je 1383 01:01:57,820 --> 01:02:00,250 ne, da je veliko povečanje učinkovitosti. 1384 01:02:00,250 --> 01:02:02,880 Ponavadi računalniki so precej hitro, in to ne da veliko. 1385 01:02:02,880 --> 01:02:07,270 Vendar je res, da stikala so hitrejši. 1386 01:02:07,270 --> 01:02:10,380 Če ste res težaven optimizirati, uporabite stikalo. 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 In potem imamo Ternarni operaterja. 1390 01:02:15,270 --> 01:02:19,470 Torej, vem, da sem že prej omenil beseda skladenjska sladkor. 1391 01:02:19,470 --> 01:02:24,160 Torej, to je samo stvari, ki bi koda veliko bolj jedrnato. 1392 01:02:24,160 --> 01:02:25,590 Torej, to je eden od teh primerov. 1393 01:02:25,590 --> 01:02:31,430 >> Torej temarni upravljavec vprašaj debelo črevo, kot smo videli v nizu linije 1394 01:02:31,430 --> 01:02:35,810 je enaka n večji od 100 question mark visoke debelega črevesa nizka. 1395 01:02:35,810 --> 01:02:41,800 Torej v bistvu, kako to deluje, je, da je n večji kot 100, je pogoj. 1396 01:02:41,800 --> 01:02:43,674 Zato mislim, da lahko smiselna. 1397 01:02:43,674 --> 01:02:44,840 To je kot sprašujem. 1398 01:02:44,840 --> 01:02:47,320 To je rekel, oh, je n večji od 100. 1399 01:02:47,320 --> 01:02:48,340 Kdo ve? 1400 01:02:48,340 --> 01:02:50,750 In če se ocenjuje, da Res, da se dogaja, da vam 1401 01:02:50,750 --> 01:02:54,270 Prva stvar, ki je je na seznamu, ki je visoka. 1402 01:02:54,270 --> 01:02:55,840 Sicer pa se dogaja, da vam nizke. 1403 01:02:55,840 --> 01:03:01,210 Torej, to je samo zelo preprosta in učinkovit način za to, kot če drugje. 1404 01:03:01,210 --> 01:03:02,780 To je vse, kar je. 1405 01:03:02,780 --> 01:03:07,450 >> In če bi to napisal kot če še pogojna, 1406 01:03:07,450 --> 01:03:12,480 bi bilo, če je n večji od 100, se vrnite visoka. 1407 01:03:12,480 --> 01:03:14,220 Else, se vrnite nizka. 1408 01:03:14,220 --> 01:03:17,570 To je samo še veliko več jedrnat način pisanja. 1409 01:03:17,570 --> 01:03:27,090 >> ROB Bowden: Torej, to zlasti primer se vsakič, ko delaš nekaj 1410 01:03:27,090 --> 01:03:30,190 kot je ta, to je vzorec kadar uporabljam trikomponentnih zelo pogosto. 1411 01:03:30,190 --> 01:03:31,540 1412 01:03:31,540 --> 01:03:35,460 Torej še nismo govorili o obsegu, ampak Sovražim videti String s podpičjem. 1413 01:03:35,460 --> 01:03:39,150 Če je n večji od 100, je enako visoko. 1414 01:03:39,150 --> 01:03:40,660 Else, y enako nizka. 1415 01:03:40,660 --> 01:03:45,070 Tako da vzorec, teh pet vrstic kode dobesedno 100% časa 1416 01:03:45,070 --> 01:03:49,800 se lahko prenesejo v kaj je bil tam z tememem. 1417 01:03:49,800 --> 01:03:52,340 Torej temarni, ena vrstica kode. 1418 01:03:52,340 --> 01:03:54,640 Če drugega, pet. 1419 01:03:54,640 --> 01:03:56,910 To je primer, spomnim ven vsak čas. 1420 01:03:56,910 --> 01:03:59,250 To bi odličen kraj za tememem operaterja. 1421 01:03:59,250 --> 01:04:00,647 To je tako čista. 1422 01:04:00,647 --> 01:04:01,980 Ampak ljudje nikoli ne uporabljajte. 1423 01:04:01,980 --> 01:04:06,140 1424 01:04:06,140 --> 01:04:08,030 >> ALLISON: Vzemi proč Gabe. 1425 01:04:08,030 --> 01:04:11,110 >> GABRIEL: Torej, zdaj vi vsi naučili v predavanju ta teden 1426 01:04:11,110 --> 01:04:13,420 da vse, kar je v Računalnik je binarna, kajne? 1427 01:04:13,420 --> 01:04:14,570 Tako kot svetilk tukaj. 1428 01:04:14,570 --> 01:04:16,492 Lahko bodisi vklopiti in izklopiti. 1429 01:04:16,492 --> 01:04:18,450 In vse, kar je, mislim, dobesedno vse. 1430 01:04:18,450 --> 01:04:24,272 Nekatere številke in črke, in godala, in celo kodo, da napišete, ko 1431 01:04:24,272 --> 01:04:26,480 to gets pripravljeni za stroj Koda in stvari, kot je ta, 1432 01:04:26,480 --> 01:04:29,230 tako da vse izvira na 0 in 1 ". 1433 01:04:29,230 --> 01:04:34,540 >> In tako, ko sva se ukvarjajo s celih števil, ki 1434 01:04:34,540 --> 01:04:38,000 je nekaj, kar je tehnično zelo preprosta, moramo biti sposobni narediti stvari 1435 01:04:38,000 --> 01:04:40,630 kot jih je dodal, kar je Verjetno eden od najpreprostejših stvari 1436 01:04:40,630 --> 01:04:42,300 lahko storite na dva cela, kajne? 1437 01:04:42,300 --> 01:04:47,410 Torej, seštevanje in odštevanje deluje samo kot da deluje v decimalni zapis, 1438 01:04:47,410 --> 01:04:50,780 razen tu je binarna, kajne? 1439 01:04:50,780 --> 01:04:52,090 Tako da je v osnovi dva. 1440 01:04:52,090 --> 01:04:54,070 Torej, dodamo 1 plus 1. 1441 01:04:54,070 --> 01:04:57,020 Ki daje 0 in 1 prenaša. 1442 01:04:57,020 --> 01:05:01,335 In kar naprej delaš, da je tako zdaj gre bolj zanimivo vprašanje. 1443 01:05:01,335 --> 01:05:03,730 1444 01:05:03,730 --> 01:05:07,710 >> Vemo, kako predstavljajo vse pozitivna cela števila v računalniku, 1445 01:05:07,710 --> 01:05:09,870 vendar pa bo ta vaja. 1446 01:05:09,870 --> 01:05:15,240 Pretvarjaj se, da si fantje so vse leta 1960 ali nekaj poskuša ustvariti računalnik, 1447 01:05:15,240 --> 01:05:19,950 in boste prišli do dne način shranjevanja minus 1, 1448 01:05:19,950 --> 01:05:22,554 na primer, ali zmanjšana za vse celo za to zadevo. 1449 01:05:22,554 --> 01:05:23,470 Kako bi to naredil? 1450 01:05:23,470 --> 01:05:27,820 1451 01:05:27,820 --> 01:05:29,220 Vse ideje? 1452 01:05:29,220 --> 01:05:31,302 Samo mečejo ničesar na mene. 1453 01:05:31,302 --> 01:05:32,264 Ja? 1454 01:05:32,264 --> 01:05:39,480 >> OBČINSTVO: [neslišno] imenuje posebno če je vaš [neslišno]. 1455 01:05:39,480 --> 01:05:42,590 >> GABRIEL: Določite lahko gradbena bit, ki bo 0 ali 1. 1456 01:05:42,590 --> 01:05:45,590 Recimo eno, če je pozitiven in 0, če je negativna. 1457 01:05:45,590 --> 01:05:48,171 In nato preostanek bitov je samo, da shranite številko. 1458 01:05:48,171 --> 01:05:48,670 Cool. 1459 01:05:48,670 --> 01:05:49,990 Tako da je zelo dobra ideja. 1460 01:05:49,990 --> 01:05:51,550 Imamo, ne vem, 200. 1461 01:05:51,550 --> 01:05:54,720 In če prvi bit vklopljena, potem je to plus 200. 1462 01:05:54,720 --> 01:05:57,270 Če je izklopljen, je minus 200. 1463 01:05:57,270 --> 01:05:58,380 Cool. 1464 01:05:58,380 --> 01:06:01,350 >> Obstaja samo en majhen problem s tem, 1465 01:06:01,350 --> 01:06:05,370 ki je, če se trudimo, da povzamem stvari. 1466 01:06:05,370 --> 01:06:18,910 Torej, zamisliti imamo 11.111 tukaj, in smo seštevek to z 00.100 karkoli. 1467 01:06:18,910 --> 01:06:21,630 Če ti dve pozitivni, da je v redu. 1468 01:06:21,630 --> 01:06:24,470 Ampak potem, če eden od jim je negativen, tako kot 1469 01:06:24,470 --> 01:06:27,410 recimo, da je to malo tukaj je tisti, ki je odgovoren 1470 01:06:27,410 --> 01:06:31,390 for-- bom narediti separate-- tako da to pomeni, da je ta številka tu 1471 01:06:31,390 --> 01:06:31,970 pa je pozitiven. 1472 01:06:31,970 --> 01:06:34,450 To pomeni, da je to ena število tukaj je negativen, kajne? 1473 01:06:34,450 --> 01:06:37,010 >> Ampak potem, ko ste dogaja, da jih povzamemo, si 1474 01:06:37,010 --> 01:06:40,180 potrebujete, če izjavo pravijo, oh, če je to 0, 1475 01:06:40,180 --> 01:06:43,479 potem bo moj znesek bo nekaj drugega, kajne? 1476 01:06:43,479 --> 01:06:45,270 Tako da je nekoliko bolj pameten način, da to 1477 01:06:45,270 --> 01:06:48,520 da, ki se imenuje dvojiški komplement. 1478 01:06:48,520 --> 01:06:52,350 Torej v bistvu tisto, kar smo storiti je, da definiramo minus 1 1479 01:06:52,350 --> 01:06:57,250 da je stvar, če smo dodali do 1 0 nas daje. 1480 01:06:57,250 --> 01:06:59,470 1481 01:06:59,470 --> 01:07:00,860 Naj ponovim, da je. 1482 01:07:00,860 --> 01:07:03,280 Torej, recimo, da je to tukaj, 1. 1483 01:07:03,280 --> 01:07:08,110 1484 01:07:08,110 --> 01:07:13,570 Kaj je stvar, ki naravno v naravnih števil 1485 01:07:13,570 --> 01:07:15,570 doda, da nam 0 daje? 1486 01:07:15,570 --> 01:07:19,150 1487 01:07:19,150 --> 01:07:21,030 Kaj pa, če se trudimo, da jo dodate na to številko? 1488 01:07:21,030 --> 01:07:22,830 1489 01:07:22,830 --> 01:07:28,032 Bomo have-- OK, tako da je dodajanje. 1490 01:07:28,032 --> 01:07:32,820 1491 01:07:32,820 --> 01:07:38,065 Bomo imeli 1 plus 1 je 0, in potem to prenaša. 1492 01:07:38,065 --> 01:07:40,160 1493 01:07:40,160 --> 01:07:45,490 In potem bomo dobili 0 znova. 1494 01:07:45,490 --> 01:07:47,730 1495 01:07:47,730 --> 01:07:48,820 Sem že zmeden. 1496 01:07:48,820 --> 01:07:51,670 In boš dobil 0 in 0 in 0 in 0 in 0 in 0. 1497 01:07:51,670 --> 01:07:52,450 Veliko 0-ih. 1498 01:07:52,450 --> 01:07:56,240 >> Na zelo zadnji, nismo bo lahko to prenesejo, 1499 01:07:56,240 --> 01:07:59,614 ker recimo, da smo samo trgovanje z eno bajt, tako da samo 8 bitov. 1500 01:07:59,614 --> 01:08:02,780 Torej, kaj računalnik počne privzeto je samo pozabi o tem [neslišno] 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 Torej je to, kar se imenuje v dvojiški komplement. 1504 01:08:06,880 --> 01:08:15,180 Mi enostavno definirati minus 1 biti stvar tukaj, da če dodamo, da 1 1505 01:08:15,180 --> 01:08:15,995 bi vam 0. 1506 01:08:15,995 --> 01:08:17,609 1507 01:08:17,609 --> 01:08:20,180 In to je zelo kul ker smo v resnici ne 1508 01:08:20,180 --> 01:08:24,090 Potrebujemo pozno izvajati drugačen tip vsote 1509 01:08:24,090 --> 01:08:26,590 glede na to, da je negativno ali pozitivno število. 1510 01:08:26,590 --> 01:08:27,465 Ali to smiselno? 1511 01:08:27,465 --> 01:08:28,740 1512 01:08:28,740 --> 01:08:32,370 >> Torej, ena stvar, ki delamo tukaj za pretvorbo 1513 01:08:32,370 --> 01:08:38,550 med pozitivni in negativni celo potem bomo preleteli vse, 1514 01:08:38,550 --> 01:08:40,930 in nato dodamo 1 do te številke. 1515 01:08:40,930 --> 01:08:43,140 Če poskusite narediti sami na kos papirja, 1516 01:08:43,140 --> 01:08:44,681 boste videli, da ima smisel. 1517 01:08:44,681 --> 01:08:51,000 Ampak, če vzamem to številko tukaj, to je pet. 1518 01:08:51,000 --> 01:08:54,859 Torej, če sem flip vse tukaj, tako 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 In potem dodam 1 do njega. 1522 01:09:00,130 --> 01:09:02,750 Bom imela ravno minus 5. 1523 01:09:02,750 --> 01:09:03,250 OK? 1524 01:09:03,250 --> 01:09:06,220 >> Ta vrsta je smiselna, ker če poskusite, da povzamem to s številko 1525 01:09:06,220 --> 01:09:10,229 da smo imeli prej, kar was-- dajmo še enkrat flip to. 1526 01:09:10,229 --> 01:09:12,999 Bilo je 101 in veliko je 0. 1527 01:09:12,999 --> 01:09:13,795 1528 01:09:13,795 --> 01:09:15,670 Če poskušate dodati ta dve številki skupaj, 1529 01:09:15,670 --> 01:09:16,961 boš imel natanko 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 Vsa vprašanja? 1533 01:09:19,884 --> 01:09:20,759 >> OBČINSTVO: [neslišno] 1534 01:09:20,759 --> 01:09:25,790 1535 01:09:25,790 --> 01:09:27,280 >> GABRIEL: Kaj misliš s tem? 1536 01:09:27,280 --> 01:09:29,240 >> OBČINSTVO: Negative za Pozitiven [neslišno]. 1537 01:09:29,240 --> 01:09:33,215 >> GABRIEL: No, ste flip in dodate 1 vedno. 1538 01:09:33,215 --> 01:09:34,081 1539 01:09:34,081 --> 01:09:34,580 Ja. 1540 01:09:34,580 --> 01:09:36,910 1541 01:09:36,910 --> 01:09:39,680 OK, tako kodiranja znakov tudi binarne datoteke. 1542 01:09:39,680 --> 01:09:42,649 Imamo ASCII tabelo, kot ste videli tudi v predavanju, kajne? 1543 01:09:42,649 --> 01:09:45,040 Torej, to je v bistvu preslikava stvari. 1544 01:09:45,040 --> 01:09:50,960 In tukaj ne morem dovolj poudariti, da je za računalnik, in 65 1545 01:09:50,960 --> 01:09:52,770 so dobesedno ista stvar. 1546 01:09:52,770 --> 01:10:03,430 Torej, če sem napisati nekaj podobnega char c enaka, bi lahko hkrati 1547 01:10:03,430 --> 01:10:06,890 samo napisati 65 tukaj, in to bi bilo popolnoma enako, OK? 1548 01:10:06,890 --> 01:10:08,470 Ni razlike whatsoever. 1549 01:10:08,470 --> 01:10:12,420 >> Mi ponavadi ponavadi dajo znaki v spremenljivkah tipa. 1550 01:10:12,420 --> 01:10:16,770 Char, ne zato, ker oni so v bistvu je za to, ampak zato, ker 1551 01:10:16,770 --> 01:10:18,050 človeškega konvencije. 1552 01:10:18,050 --> 01:10:22,410 Vendar pa lahko samo ukvarjajo s števil namesto spremenljivk tipa char, 1553 01:10:22,410 --> 01:10:23,490 in boste v redu. 1554 01:10:23,490 --> 01:10:28,410 Edina dejanska razlika med char c in int i 1555 01:10:28,410 --> 01:10:31,960 je, da ima int štiri bajte, v večini sistemi, medtem ko ima char en bajt. 1556 01:10:31,960 --> 01:10:33,070 1557 01:10:33,070 --> 01:10:35,460 Oni so v bistvu Ista stvar z vidika podatkov. 1558 01:10:35,460 --> 01:10:36,990 1559 01:10:36,990 --> 01:10:37,990 Kaj se bo tako natisnete tukaj? 1560 01:10:37,990 --> 01:10:43,780 Tukaj smo za tiskanje cifro pomočjo printf s plus 1, in tako kot cela števila, 1561 01:10:43,780 --> 01:10:46,240 znakov je mogoče povzeti, da znakov je mogoče povzeti tako. 1562 01:10:46,240 --> 01:10:47,890 Torej, to je točno 65. 1563 01:10:47,890 --> 01:10:49,950 Tako se dogaja, da je 66, in tu imamo 1564 01:10:49,950 --> 01:10:56,860 65 plus malo velik minus, ki bo, jaz res ne vem. 1565 01:10:56,860 --> 01:11:00,900 Vendar pa bo natanko vrzel Med velikimi tiskanimi črkami 1566 01:11:00,900 --> 01:11:07,800 in in manjše črke, tako bomo dobili majhen a, kajne? 1567 01:11:07,800 --> 01:11:08,300 Ja. 1568 01:11:08,300 --> 01:11:11,740 Torej, to se dogaja, da natisnete znak, ki je točno to ena. 1569 01:11:11,740 --> 01:11:12,260 Dobro? 1570 01:11:12,260 --> 01:11:12,860 Vsa vprašanja? 1571 01:11:12,860 --> 01:11:16,320 1572 01:11:16,320 --> 01:11:19,430 >> Tukaj imamo kup drugačen Vrste za numerične spremenljivke. 1573 01:11:19,430 --> 01:11:20,620 Smo že govorili o notr. 1574 01:11:20,620 --> 01:11:21,740 1575 01:11:21,740 --> 01:11:27,760 Float je samo način to-- je to res smešno, ker ko sem prvič izvedela 1576 01:11:27,760 --> 01:11:32,320 programiranje nazaj v dan s Python, Prvi program, kar sem jih kdaj 1577 01:11:32,320 --> 01:11:37,480 poskušal pisati, sem videl, da je bilo tip poklical in tip se imenuje plovec. 1578 01:11:37,480 --> 01:11:39,800 In float je za vsa realna števila. 1579 01:11:39,800 --> 01:11:43,290 Potem sem vprašal, zakaj naj bi Kar sem jih kdaj uporabiti int potem? 1580 01:11:43,290 --> 01:11:45,590 Ker če lahko uporabim vse realne številke s plovcem, 1581 01:11:45,590 --> 01:11:47,120 Jaz bi samo prenehate uporabljati ints, kajne? 1582 01:11:47,120 --> 01:11:49,550 Ker realne številke podobno kot bolj generična. 1583 01:11:49,550 --> 01:11:51,820 1584 01:11:51,820 --> 01:11:54,060 >> Izkazalo se je, da je to ne velja za računalnike 1585 01:11:54,060 --> 01:11:58,480 ker oni so v bistvu različni stvari. 1586 01:11:58,480 --> 01:12:01,470 Torej celih in plovci, operacije, da vam z njimi 1587 01:12:01,470 --> 01:12:04,739 bistveno razlikujejo, saj na način, ki so shranjene, OK? 1588 01:12:04,739 --> 01:12:07,280 Bomo govorili malo malo več o tem v sekundi. 1589 01:12:07,280 --> 01:12:09,110 >> Zato še enkrat je samo večji float. 1590 01:12:09,110 --> 01:12:12,830 Ponavadi v večini sistemov, float je štiri bajte, tako kot int. 1591 01:12:12,830 --> 01:12:15,440 In dvojno osem bajtov. 1592 01:12:15,440 --> 01:12:21,450 Dolgo dolgo je pravzaprav zgolj simbol ki jo pripnemo na vrsto kot notr. 1593 01:12:21,450 --> 01:12:24,040 Pravite, long long int, kot je ta. 1594 01:12:24,040 --> 01:12:28,550 Dolgo dolgo int x, da bi bilo več. 1595 01:12:28,550 --> 01:12:32,310 Torej, v večini sistemov, ki bo dala osem bajtov namesto običajnih štirih. 1596 01:12:32,310 --> 01:12:35,620 In lahko dejansko spusti leta, tako da lahko samo rečem dolgo dolgo, 1597 01:12:35,620 --> 01:12:37,240 in da deluje preveč, OK? 1598 01:12:37,240 --> 01:12:42,850 To lahko storite tudi druge stvari, kot so unsigned int, ali spet samo nepodpisana 1599 01:12:42,850 --> 01:12:43,680 Prav tako bi delovalo. 1600 01:12:43,680 --> 01:12:49,370 In to bi lahko x je spremenljivka tako kot vse, kar je pozitivno, 1601 01:12:49,370 --> 01:12:53,231 tako da vam ne morem imeti negativen številke na način, da smo videli tukaj. 1602 01:12:53,231 --> 01:12:56,484 1603 01:12:56,484 --> 01:12:58,650 Torej, po čudovito plavajočo vejico in natančnost. 1604 01:12:58,650 --> 01:13:01,890 To je eden od razlogov, zakaj vas želite uporabljati ints namesto plovci, 1605 01:13:01,890 --> 01:13:04,370 ker so Ints 100% natančen, kajne? 1606 01:13:04,370 --> 01:13:06,170 To je točno to številko. 1607 01:13:06,170 --> 01:13:11,910 Za plavajoče točke, če vas pravijo odgovor enak 1 nad 10-- 1608 01:13:11,910 --> 01:13:14,690 Slučajno sem imel točno to Program tukaj, float.c. 1609 01:13:14,690 --> 01:13:16,390 1610 01:13:16,390 --> 01:13:19,420 Ki tiska na 20 decimalnih mest. 1611 01:13:19,420 --> 01:13:23,270 1 deljeno z 10, in da ponavadi je 0,1, kajne? 1612 01:13:23,270 --> 01:13:27,910 Ampak tukaj, če naredimo float in potem smo jo vodijo, 1613 01:13:27,910 --> 01:13:30,320 vidimo, da to ni ravno 0.1. 1614 01:13:30,320 --> 01:13:33,570 To je nekaj, kar 0,149. 1615 01:13:33,570 --> 01:13:35,570 >> In zakaj je to? 1616 01:13:35,570 --> 01:13:40,390 Ker si ne morem predstavljati vsak single mogoče realno število v pomnilniku 1617 01:13:40,390 --> 01:13:42,730 ker obstajajo uncountably mnogi od njih. 1618 01:13:42,730 --> 01:13:48,360 Tako da smo tehnično sposobni samo predstavljata končno količino njih 1619 01:13:48,360 --> 01:13:50,470 s končno količino podatkov. 1620 01:13:50,470 --> 01:13:52,050 Ampak to je res zanimivo. 1621 01:13:52,050 --> 01:13:54,920 Zdaj se zastavlja Vprašanje, kako bi jo 1622 01:13:54,920 --> 01:13:59,299 lotili predstavlja to z bitov, kajne? 1623 01:13:59,299 --> 01:14:00,340 Torej, kako se shranjujejo boje? 1624 01:14:00,340 --> 01:14:01,970 1625 01:14:01,970 --> 01:14:03,730 Z števil je bilo enostavno. 1626 01:14:03,730 --> 01:14:06,690 Ampak s plovci želite da se poveča razpon, 1627 01:14:06,690 --> 01:14:10,530 in želite, da bi lahko za zastopanje ogromne številke in zelo drobne številke, kot je 1628 01:14:10,530 --> 01:14:14,210 0.000001 hkrati. 1629 01:14:14,210 --> 01:14:15,180 Torej še enkrat, isto igro. 1630 01:14:15,180 --> 01:14:20,470 Ima kdo kakšno idejo, kako bi lahko šel okoli predstavlja plovec v spomin? 1631 01:14:20,470 --> 01:14:26,820 1632 01:14:26,820 --> 01:14:27,970 Samo mečejo ničesar. 1633 01:14:27,970 --> 01:14:29,930 1634 01:14:29,930 --> 01:14:30,856 Ja, prosim. 1635 01:14:30,856 --> 01:14:33,552 >> OBČINSTVO: [neslišno] kot če bi bila dva Ints in en 1636 01:14:33,552 --> 01:14:36,890 da [neslišno] in eden počutje vse, kar je za decimalno vejico. 1637 01:14:36,890 --> 01:14:37,640 GABRIEL: OK, cool. 1638 01:14:37,640 --> 01:14:40,300 Torej dve različni celi števili. 1639 01:14:40,300 --> 01:14:45,260 Lahko imaš 12,45, tako da je 12 in 45. 1640 01:14:45,260 --> 01:14:45,890 Lepo. 1641 01:14:45,890 --> 01:14:46,973 Kaj ere si hotel reči? 1642 01:14:46,973 --> 01:14:48,420 1643 01:14:48,420 --> 01:14:49,430 Ista stvar? 1644 01:14:49,430 --> 01:14:49,930 Ja? 1645 01:14:49,930 --> 01:14:55,630 >> OBČINSTVO: [neslišno] zapis kjer vas loči bazo. 1646 01:14:55,630 --> 01:14:58,910 >> GABRIEL: znanstveni zapis, ja to je običajno, kaj se dogaja. 1647 01:14:58,910 --> 01:15:01,350 Torej je to, kar se imenuje mantiso. 1648 01:15:01,350 --> 01:15:06,490 To je tisto, kar je pravzaprav številko, nato pa eksponent 1649 01:15:06,490 --> 01:15:08,780 je le, če je vejica, kajne? 1650 01:15:08,780 --> 01:15:13,720 Torej, to se dogaja, da je nekaj Obliko 1, 2, 3, 4, 5-krat 10 1651 01:15:13,720 --> 01:15:15,000 na minus 4. 1652 01:15:15,000 --> 01:15:17,800 Pravkar sem spoznal that-- ja, točno. 1653 01:15:17,800 --> 01:15:23,372 In potem je to 10 do minus 4, je dogaja, da opredelijo, kjer je vejica, OK? 1654 01:15:23,372 --> 01:15:24,330 V Braziliji, ki jih uporabljamo vejico. 1655 01:15:24,330 --> 01:15:26,795 Tukaj vidva uporabite piko. 1656 01:15:26,795 --> 01:15:27,640 Torej pika. 1657 01:15:27,640 --> 01:15:28,860 1658 01:15:28,860 --> 01:15:34,840 >> In to je kul, ker potem lahko osredotočiti veliko vaših bitov na tem tipu 1659 01:15:34,840 --> 01:15:40,863 tod na mantiso, in nato, da je bo vaš dejanski natančnost. 1660 01:15:40,863 --> 01:15:41,920 1661 01:15:41,920 --> 01:15:47,175 In to lahko storite bodisi v decimalni ali v sistemu, ki temelji na binarnem. 1662 01:15:47,175 --> 01:15:49,781 Obstajajo različni načinov za izvedbo tega. 1663 01:15:49,781 --> 01:15:50,280 Vprašanja? 1664 01:15:50,280 --> 01:15:55,918 1665 01:15:55,918 --> 01:15:56,418 Ja? 1666 01:15:56,418 --> 01:15:57,508 1667 01:15:57,508 --> 01:15:59,841 OBČINSTVO: Koliko mesta po decimalne [neslišno]? 1668 01:15:59,841 --> 01:16:05,240 1669 01:16:05,240 --> 01:16:12,610 >> GABRIEL: To je zapleteno vprašanje, ker je nikoli zares 100% natančen, 1670 01:16:12,610 --> 01:16:15,680 ker kot vidite tu, za nekatere številke je 100% natančna. 1671 01:16:15,680 --> 01:16:20,350 Verjamem, da če bi dal 0,5 tu to se dogaja, da je 100% natančna. 1672 01:16:20,350 --> 01:16:22,220 To se dogaja, da je 0,500000. 1673 01:16:22,220 --> 01:16:24,170 Torej, v tem primeru, to je odlično. 1674 01:16:24,170 --> 01:16:27,330 Toda v drugih primerih, je veliko manj popolna. 1675 01:16:27,330 --> 01:16:35,010 Po mojih izkušnjah, tako kot do štiri, pet decimalna mesta je precej natančen. 1676 01:16:35,010 --> 01:16:38,300 Če uporabljate dvojna, da se bo je veliko bolj natančna kot to, OK? 1677 01:16:38,300 --> 01:16:42,750 >> ROB Bowden: Torej, samo da mečejo nekaj več kontekst na plovci, 1678 01:16:42,750 --> 01:16:46,320 Nikoli ne pozabite, 100% kako je spec plovci dejansko deluje, 1679 01:16:46,320 --> 01:16:52,660 ampak jaz se vedno spomnim da plava začeli že grdo. 1680 01:16:52,660 --> 01:16:55,460 1681 01:16:55,460 --> 01:17:00,930 Torej ideja je, da ko prideš v resnici, res velike številke ali zares 1682 01:17:00,930 --> 01:17:03,470 majhne številke, smo začeli slabša 1683 01:17:03,470 --> 01:17:05,860 razlikovanju med dva tesna plovci. 1684 01:17:05,860 --> 01:17:09,180 >> Torej, kako mi je všeč, da razmišljajo o je s plavajočo vejico nenatančnosti, 1685 01:17:09,180 --> 01:17:11,890 obstajata dve plovci da če sem jih skušal opredeliti 1686 01:17:11,890 --> 01:17:15,150 v C, kljub temu, da oni so različne številke, 1687 01:17:15,150 --> 01:17:17,340 oni bo razlagati tako, da je enako število, 1688 01:17:17,340 --> 01:17:19,006 zato, ker jih ne moremo shraniti drugače. 1689 01:17:19,006 --> 01:17:20,540 Moramo uporabiti enake koščke. 1690 01:17:20,540 --> 01:17:23,220 In tako, ko smo prišli do res, res veliko število, 1691 01:17:23,220 --> 01:17:28,460 govorim kot 10 do 300 ali Nekaj, da je na tej točki 1692 01:17:28,460 --> 01:17:33,240 da je od 10 do 300, ali 5-krat 10 do 300 1693 01:17:33,240 --> 01:17:37,020 ni mogoče diferencirati 7-krat 10 do 300. 1694 01:17:37,020 --> 01:17:39,660 Tako da je zelo velika razlika med dvema številkama. 1695 01:17:39,660 --> 01:17:43,830 >> Ampak potem, ko prideš dol za normalne stvari dosega, 1696 01:17:43,830 --> 01:17:45,770 ste nagnjeni k biti precej dober razlikovanju. 1697 01:17:45,770 --> 01:17:49,020 In potem, ko prideš dol res majhna, ste tudi dobili spet precej slabo. 1698 01:17:49,020 --> 01:17:52,529 Tako kot cel kup 0,0000, postane precej slabo. 1699 01:17:52,529 --> 01:17:53,820 GABRIEL: Ja, tako hitro note. 1700 01:17:53,820 --> 01:17:54,670 Nikoli to storite. 1701 01:17:54,670 --> 01:17:57,590 Nikoli ne poskušajte primerjati plava uporabi enaka je enaka, 1702 01:17:57,590 --> 01:18:02,800 ker tudi če so že skoraj Enako, skoraj enaka ni enaka. 1703 01:18:02,800 --> 01:18:06,360 Torej, kaj si ponavadi je odštejete jim, da absolutno vrednost, da 1704 01:18:06,360 --> 01:18:12,380 in videli, če je to manjše od 0,0001 ali nekaj takega, OK? 1705 01:18:12,380 --> 01:18:12,880 In ohladimo. 1706 01:18:12,880 --> 01:18:16,630 Vem, da veliko ljudi nekaj ozadja v Java, 1707 01:18:16,630 --> 01:18:19,700 še posebej tisti, ki so storili AP računalništvo, kajne? 1708 01:18:19,700 --> 01:18:23,630 In Java je jezik ki temelji predvsem na C, 1709 01:18:23,630 --> 01:18:26,570 da ima nekaj zelo velike razlike. 1710 01:18:26,570 --> 01:18:31,430 Ampak za zanke in investicijskih skladov, stvari, kot so da, oni so vse enako sintakso. 1711 01:18:31,430 --> 01:18:35,240 Imam nekaj programov tukaj za prikaz tega. 1712 01:18:35,240 --> 01:18:37,050 >> Tako na primer, preprosto zdravo svet. 1713 01:18:37,050 --> 01:18:43,140 1714 01:18:43,140 --> 01:18:46,600 To je zdravo svet v C, ki vas fantje so zagotovo seznanjeni z, 1715 01:18:46,600 --> 01:18:49,100 in ta in ta je v Java. 1716 01:18:49,100 --> 01:18:53,100 Tako v Javi imamo to public class, zdravo svet, 1717 01:18:53,100 --> 01:18:57,050 in public static void Glavni in godala args. 1718 01:18:57,050 --> 01:18:59,665 Tetive args se dogaja pojavljati v C zelo kmalu. 1719 01:18:59,665 --> 01:19:00,740 1720 01:19:00,740 --> 01:19:01,990 Vendar pa še ni šel tja. 1721 01:19:01,990 --> 01:19:06,060 Zdaj imamo tukaj nična, kar pomeni, da je glavna ne sprejme nobenih argumentov. 1722 01:19:06,060 --> 01:19:09,220 In potem imamo System.out.println, in to je 1723 01:19:09,220 --> 01:19:11,140 nekako enakovredni za printf. 1724 01:19:11,140 --> 01:19:17,150 Tukaj ne bomo res potrebovali poševnico nazaj n ker print ln stori za vas. 1725 01:19:17,150 --> 01:19:19,680 To pa doda poševnice nazaj n na koncu linije. 1726 01:19:19,680 --> 01:19:22,540 1727 01:19:22,540 --> 01:19:30,415 >> Ampak, če greš v nekaj podobnega Kajti vi 1728 01:19:30,415 --> 01:19:32,590 lahko vidimo, da oni precej ista stvar. 1729 01:19:32,590 --> 01:19:37,390 Torej inicializacijo, in stanje in posodobitev 1730 01:19:37,390 --> 01:19:42,050 is-- sem zamudil prostor here-- oni precej ista stvar, razen Java 1731 01:19:42,050 --> 01:19:44,430 ima za nekaj več na visoki ravni stvari. 1732 01:19:44,430 --> 01:19:46,010 1733 01:19:46,010 --> 01:19:49,610 Tukaj lahko storimo plus I in Java bo samodejno 1734 01:19:49,610 --> 01:19:52,730 bi to i tu, ki je celo število, v niz, 1735 01:19:52,730 --> 01:19:55,200 in nato dodajte dve strune skupaj. 1736 01:19:55,200 --> 01:19:57,570 Tukaj v C moramo storiti in% d. 1737 01:19:57,570 --> 01:20:15,310 1738 01:20:15,310 --> 01:20:18,170 Linija tukaj, za izgleda popolnoma enako. 1739 01:20:18,170 --> 01:20:37,760 >> In če pogledamo, če IFS tudi videti popolnoma enako, kajne? 1740 01:20:37,760 --> 01:20:39,290 1741 01:20:39,290 --> 01:20:44,650 Tako pravi velike razlike v tistih stvareh, ki jih vidite tukaj. 1742 01:20:44,650 --> 01:20:47,530 Public static, nična, potem javni razred, če. 1743 01:20:47,530 --> 01:20:48,990 1744 01:20:48,990 --> 01:20:52,360 Torej Java je tisto, kar je imenuje navidezni stroj. 1745 01:20:52,360 --> 01:20:53,560 1746 01:20:53,560 --> 01:21:00,150 In to je zelo močno temelji na kaj se imenuje objektno programiranje, 1747 01:21:00,150 --> 01:21:04,120 ki je zelo, zelo pogosti paradigma za programiranje danes. 1748 01:21:04,120 --> 01:21:10,870 In ta razred, kar je tisto, kar vidiš, nekaj od objekta usmerjenosti, 1749 01:21:10,870 --> 01:21:14,214 se boste ustvarili razred, nato pa vam lahko izpeljemo predmete iz tega razreda. 1750 01:21:14,214 --> 01:21:16,380 Ne bomo preveč govori veliko o tem, da je v CS50, 1751 01:21:16,380 --> 01:21:18,213 ampak to je definitivno nekaj res kul, 1752 01:21:18,213 --> 01:21:21,440 še posebej, če hočeš, da gredo v bolj prefinjena izdelava spletnih strani 1753 01:21:21,440 --> 01:21:24,050 Na koncu tečaja, kot oddajte svoj končni projekt 1754 01:21:24,050 --> 01:21:26,430 in nekaj lepih okvirov in stvari. 1755 01:21:26,430 --> 01:21:31,250 >> Torej v bistvu ideja je, da vas Ne želim, da ponovno izvajati nekaj, 1756 01:21:31,250 --> 01:21:36,330 tako da boste ustvarili nekaj, kar je zelo splošen, kot obliko, 1757 01:21:36,330 --> 01:21:38,310 in potem si ustvariti različnih oblik iz njega, 1758 01:21:38,310 --> 01:21:40,240 in nato iz vsake te oblike, da ustvarite 1759 01:21:40,240 --> 01:21:45,110 nekatere bolj specifične oblike v treh dimenzije ali nekaj takega. 1760 01:21:45,110 --> 01:21:48,799 In imajo to hierarhijo jih podedovali od drugih, ki so, tako 1761 01:21:48,799 --> 01:21:51,840 vse funkcije in spremenljivke, ki velika oblika tukaj je, vsi ti 1762 01:21:51,840 --> 01:21:54,110 se dogaja, da imajo, in vse to so dogaja, da imajo, in tako naprej in tako naprej. 1763 01:21:54,110 --> 01:21:55,640 Tako da je osnovna ideja. 1764 01:21:55,640 --> 01:21:59,170 >> C nima, ampak C ++ ima pa toliko funkcijo. 1765 01:21:59,170 --> 01:22:02,710 In Java močno vplivajo ga objekta usmerjenosti, 1766 01:22:02,710 --> 01:22:05,310 tako da je, zakaj vidite Razred tukaj ves čas. 1767 01:22:05,310 --> 01:22:10,790 In druga stvar je, To Java navidezni stroj. 1768 01:22:10,790 --> 01:22:13,790 Torej to, mislim, da je zelo pametna ideja. 1769 01:22:13,790 --> 01:22:17,020 Torej, kaj so ljudje, ki izumil java storil je 1770 01:22:17,020 --> 01:22:19,630 niso želeli sestaviti svoj kodeks dvakrat 1771 01:22:19,630 --> 01:22:23,990 če bi morali teči v operacijskem sistemu Windows, ali Mac ali Linux, tako da to, kar počnejo 1772 01:22:23,990 --> 01:22:26,740 se dobesedno teči nekaj takega aparata, 1773 01:22:26,740 --> 01:22:29,630 ampak res ne vidim, da se dogaja. 1774 01:22:29,630 --> 01:22:32,430 Tako, da obratujejo virtualni stroj znotraj vašega računalnika, ki 1775 01:22:32,430 --> 01:22:34,940 je v bistvu všeč mini operacijski sistem. 1776 01:22:34,940 --> 01:22:37,920 In da operacijski Namen sistema v življenju 1777 01:22:37,920 --> 01:22:41,430 je le, da delujejo kar se imenuje byte code. 1778 01:22:41,430 --> 01:22:47,411 >> Torej, namesto v C, na način, kako bi zbrati je to, da če in zaženite 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 Pozabil sem poševnice nazaj v. 1782 01:22:55,290 --> 01:23:00,240 V Java, bi vam najprej Java C za njihovo zbiranje, if.c. 1783 01:23:00,240 --> 01:23:06,440 1784 01:23:06,440 --> 01:23:08,252 Ni C. se je dot java. 1785 01:23:08,252 --> 01:23:09,460 1786 01:23:09,460 --> 01:23:12,140 In potem boste morali teči ne ./. 1787 01:23:12,140 --> 01:23:15,440 Dobiš to novo datoteko if.class, vendar vam ne morem 1788 01:23:15,440 --> 01:23:17,980 teči if.class zdaj samo kot smo to naredili prej. 1789 01:23:17,980 --> 01:23:19,440 To ni izvedljiva. 1790 01:23:19,440 --> 01:23:20,630 Moraš teči. 1791 01:23:20,630 --> 01:23:23,410 Moraš ga napajajo Program se imenuje Java, 1792 01:23:23,410 --> 01:23:28,260 in ta program je virtualni stroj, in potem vam if.class, ali če. 1793 01:23:28,260 --> 01:23:28,760 Da. 1794 01:23:28,760 --> 01:23:30,890 In potem to deluje. 1795 01:23:30,890 --> 01:23:33,740 OK, tako da je ta vrsta virtualni stroj dogaja. 1796 01:23:33,740 --> 01:23:37,700 C ne da, tako da, če bi bil jaz dal ta program v okolju Windows, 1797 01:23:37,700 --> 01:23:40,516 to ne bi delovalo v C. V Java počne. 1798 01:23:40,516 --> 01:23:41,015 Vprašanja? 1799 01:23:41,015 --> 01:23:43,430 1800 01:23:43,430 --> 01:23:44,030 Cool. 1801 01:23:44,030 --> 01:23:47,160 To je, če za super oddelku za danes. 1802 01:23:47,160 --> 01:23:49,462