1 00:00:00,000 --> 00:00:05,616 2 00:00:05,616 --> 00:00:07,030 >> HANNAH BLUMBERG: Hi kila mtu. 3 00:00:07,030 --> 00:00:09,530 Tunakwenda kuanza tu ya dakika kadhaa mapema 4 00:00:09,530 --> 00:00:11,738 kwa kuwa tuna mengi yote ya nyenzo kupata njia. 5 00:00:11,738 --> 00:00:12,790 Mimi nina Hana. 6 00:00:12,790 --> 00:00:13,865 Mimi nina TF. 7 00:00:13,865 --> 00:00:16,239 Maria ni kwenda kujiunga sisi katika dakika kadhaa. 8 00:00:16,239 --> 00:00:17,560 Anafundisha sehemu sahihi kabla. 9 00:00:17,560 --> 00:00:19,351 Mimi kufundisha kifungu cha haki baada, hivyo tunakwenda 10 00:00:19,351 --> 00:00:21,200 kuitunza kwa saa moja na nusu. 11 00:00:21,200 --> 00:00:25,490 >> Hivyo kama utaona hapa, tuna kabisa mada chache tunahitaji kupata njia, 12 00:00:25,490 --> 00:00:27,200 hivyo tutaweza kuwa kwenda kidogo kidogo kwa haraka. 13 00:00:27,200 --> 00:00:31,140 Lakini kama katika hatua yoyote sisi kusema kitu haraka haraka au huelewi, 14 00:00:31,140 --> 00:00:33,170 kujisikia huru kwa kupinga na maswali. 15 00:00:33,170 --> 00:00:36,610 Tunataka kuwa na uwezo wa kufanya a huu kupitia kikao kama manufaa kwa wote yenu 16 00:00:36,610 --> 00:00:37,973 iwezekanavyo. 17 00:00:37,973 --> 00:00:38,920 Kutisha. 18 00:00:38,920 --> 00:00:41,650 >> Basi hebu kuruka haki katika na baadhi ya mada kwamba sisi kweli 19 00:00:41,650 --> 00:00:46,980 sana, kwa ufupi sana kufunikwa kwa Jaribio 0 katika jaribio 0 mapitio kikao. 20 00:00:46,980 --> 00:00:48,840 Hivyo kuanzia na orodha wanaohusishwa. 21 00:00:48,840 --> 00:00:52,090 Hivyo tu kuhakikisha kuwa baadhi elimu ya msingi kuhusu orodha wanaohusishwa 22 00:00:52,090 --> 00:00:55,110 na ni vizuri kufanya baadhi ya shughuli za msingi. 23 00:00:55,110 --> 00:00:58,560 >> Hivyo tu kufanya mapitio ya, wanaohusishwa orodha ni bora kuliko arrays 24 00:00:58,560 --> 00:01:01,020 sababu wanaweza kukua dynamically. 25 00:01:01,020 --> 00:01:03,300 Hivyo tuna kuwa faida kubwa. 26 00:01:03,300 --> 00:01:06,031 Tumeona yao kutumika katika meza hash wakati sisi 27 00:01:06,031 --> 00:01:08,280 hatujui hasa ni wangapi mambo tunakwenda wanataka 28 00:01:08,280 --> 00:01:10,900 kuingiza ndani ya mfumo wetu wa data. 29 00:01:10,900 --> 00:01:15,700 Kwa bahati mbaya, tuna vipande vya orodha wanaohusishwa kote kumbukumbu, 30 00:01:15,700 --> 00:01:20,820 hivyo tutakuwa na si lazima kuwa uwezo wa kufanya mara kwa mara wakati upatikanaji 31 00:01:20,820 --> 00:01:22,502 kwa kipengele yoyote katika orodha wanaohusishwa. 32 00:01:22,502 --> 00:01:24,210 Ili kupata kipengele fulani, sisi 33 00:01:24,210 --> 00:01:26,510 na iterate zote njia tangu mwanzo. 34 00:01:26,510 --> 00:01:30,610 Hivyo kukumbuka kwamba wengi wa shughuli za msingi ni omega ya 1. 35 00:01:30,610 --> 00:01:32,130 Hivyo kuingiza ni kwenda tu kuchukua 1. 36 00:01:32,130 --> 00:01:37,520 Kufuta ni kwenda kuchukua n kwa kuwa sisi una kwenda kupata hiyo kutoka kwenye orodha. 37 00:01:37,520 --> 00:01:39,260 Na kutafuta inaweza kuchukua, saa mbaya, n. 38 00:01:39,260 --> 00:01:42,330 Hatuwezi kufanya kitu kama tafuta binary katika orodha wanaohusishwa 39 00:01:42,330 --> 00:01:45,101 tangu hatuwezi tu nasibu kuruka kwa katikati. 40 00:01:45,101 --> 00:01:45,600 Baridi. 41 00:01:45,600 --> 00:01:48,160 42 00:01:48,160 --> 00:01:48,960 Kutisha. 43 00:01:48,960 --> 00:01:50,270 >> Kidogo ya mwingi. 44 00:01:50,270 --> 00:01:53,980 Hii, tena, walifika kwenye jaribio 0, hivyo lazima super vizuri na hayo. 45 00:01:53,980 --> 00:01:57,210 Lakini kwa mwingi, tunakuomba kukumbuka stack ya trays. 46 00:01:57,210 --> 00:01:59,940 Na itakuja kuwa wa kwanza katika, mwisho nje. 47 00:01:59,940 --> 00:02:02,272 Hivyo sisi stack mambo up katika stack, na kisha 48 00:02:02,272 --> 00:02:04,980 kama sisi ni kujaribu kuchukua kitu off-- ambayo sisi kuwaita yanajitokeza mbali 49 00:02:04,980 --> 00:02:06,581 stack-- sisi kufika mbali juu. 50 00:02:06,581 --> 00:02:09,289 Na kama tunataka kuweka kitu katika stack, sisi kuiita kusukuma. 51 00:02:09,289 --> 00:02:13,170 Hivyo ni daima kwenda kuwa kupanda juu kuanzia chini kama stack ya trays. 52 00:02:13,170 --> 00:02:14,540 Kutisha. 53 00:02:14,540 --> 00:02:17,607 >> Tumekuwa mwingi kuonekana kutekelezwa na orodha zote mbili wanaohusishwa na arrays. 54 00:02:17,607 --> 00:02:19,440 Kama wewe ni kutekeleza na arrays, unataka 55 00:02:19,440 --> 00:02:22,350 kuhakikisha kuweka wimbo wa wote ukubwa na uwezo. 56 00:02:22,350 --> 00:02:27,540 Hivyo ukubwa ni kwenda kuwa sasa idadi ya mambo katika stack yako, 57 00:02:27,540 --> 00:02:32,900 ambapo uwezo ni idadi ya jumla mambo unaweza kuhifadhi katika stack yako. 58 00:02:32,900 --> 00:02:34,220 Baridi. 59 00:02:34,220 --> 00:02:35,767 >> Sana vile vile, tuna foleni. 60 00:02:35,767 --> 00:02:38,850 Katika kesi hiyo, badala ya kufikiria juu ya stack ya trays, fikiria line. 61 00:02:38,850 --> 00:02:40,697 Hii ni kwenda kuwa ya kwanza katika, kwanza nje. 62 00:02:40,697 --> 00:02:42,780 Hivyo kama wewe ni wamejipanga kwa kitu katika kuhifadhi, 63 00:02:42,780 --> 00:02:46,920 ni matumaini yetu kwamba mtu wa kwanza katika mstari ni kwenda kusaidiwa kwanza. 64 00:02:46,920 --> 00:02:49,350 >> Badala ya kusema kushinikiza na pop kama sisi kufanya kwa stack, 65 00:02:49,350 --> 00:02:52,000 sisi tu kusema enqueue na dequeue. 66 00:02:52,000 --> 00:02:54,970 Na tena, kama wewe ni utekelezaji huu kwa safu, 67 00:02:54,970 --> 00:02:56,720 tunahitaji kuweka wimbo si tu ukubwa wa 68 00:02:56,720 --> 00:03:02,390 na uwezo, lakini pia kichwa, ambayo ni kwenda kuwa mbele ya foleni yetu. 69 00:03:02,390 --> 00:03:03,010 Baridi. 70 00:03:03,010 --> 00:03:05,770 Maswali yoyote juu ya yoyote ya kwamba? 71 00:03:05,770 --> 00:03:06,320 Kutisha. 72 00:03:06,320 --> 00:03:07,640 Kusonga haki pamoja. 73 00:03:07,640 --> 00:03:08,564 >> OK, meza hash. 74 00:03:08,564 --> 00:03:10,605 Hapa ni mahali ambapo kuanza kwa kupata kweli ya kuvutia. 75 00:03:10,605 --> 00:03:14,150 Hivyo meza hash ni utekelezaji moja ya safu associative. 76 00:03:14,150 --> 00:03:16,700 Hivyo kimsingi kile kilichotokea ni sisi kuwa pembejeo hii yote, 77 00:03:16,700 --> 00:03:18,750 na sisi kutoa kwa hash kazi ambayo anasema, 78 00:03:18,750 --> 00:03:21,840 OK, hii ni mahali ambapo katika hash meza ni mali. 79 00:03:21,840 --> 00:03:24,860 >> Hivyo rahisi heshi kwamba tumeona ni kusema tu, 80 00:03:24,860 --> 00:03:28,170 OK, tuseme tunataka kuweka masharti katika hash yetu meza. 81 00:03:28,170 --> 00:03:30,870 Na wazo kweli rahisi inaweza kuwa kusema, sawa, 82 00:03:30,870 --> 00:03:34,350 hebu tu aina na barua ya kwanza ya neno. 83 00:03:34,350 --> 00:03:37,570 Hivyo unaweza kuona hapa, sisi kuchukua ndizi, sisi kuweka njia heshi, 84 00:03:37,570 --> 00:03:40,190 na inasema, hey, kwamba anatakiwa kwenda kwenye ripoti 1. 85 00:03:40,190 --> 00:03:45,120 >> Ili tuweze kimsingi kufikiria hash meza kama kundi la ndoo tofauti. 86 00:03:45,120 --> 00:03:49,880 Na kila moja ya ndoo wale ni kwenda kushikilia mkuu wa orodha wanaohusishwa. 87 00:03:49,880 --> 00:03:55,030 Na katika orodha hiyo wanaohusishwa ni wapi tunaweza kweli kuweka vipande mbalimbali ya data. 88 00:03:55,030 --> 00:03:57,820 >> Hivyo mbizi kidogo zaidi ndani ya heshi, hapa ni 89 00:03:57,820 --> 00:03:59,870 mfano mimi tu ilivyoelezwa ambapo sisi tu kusema, 90 00:03:59,870 --> 00:04:02,460 OK, kuchukua barua ya kwanza ya neno na tuko 91 00:04:02,460 --> 00:04:03,990 kwenda aina yake katika ndoo. 92 00:04:03,990 --> 00:04:08,490 Hivyo labda, kutakuwa na 26 ndoo, moja kwa kila herufi za alfabeti. 93 00:04:08,490 --> 00:04:10,090 Kwa nini si hii kubwa heshi? 94 00:04:10,090 --> 00:04:13,461 Kinachofanya zisizo bora hili? 95 00:04:13,461 --> 00:04:13,960 Naam. 96 00:04:13,960 --> 00:04:15,790 >> Watazamaji: Wewe ni kwenda kuwa na migongano. 97 00:04:15,790 --> 00:04:16,390 >> HANNAH BLUMBERG: Yeah, kwa uhakika. 98 00:04:16,390 --> 00:04:18,000 Wewe ni kwenda na migongano. 99 00:04:18,000 --> 00:04:18,954 Hivyo hiyo ni kitu kimoja. 100 00:04:18,954 --> 00:04:21,620 Na tutaweza majadiliano juu ya jinsi tunaweza kurekebisha migongano katika haki ya pili. 101 00:04:21,620 --> 00:04:23,980 Tatizo jingine na hii Hasa heshi 102 00:04:23,980 --> 00:04:25,980 ni kwamba tofauti yetu ndoo ni kwenda kuwa 103 00:04:25,980 --> 00:04:28,960 ukubwa wa pretty kasi tofauti. 104 00:04:28,960 --> 00:04:33,840 >> Tunajua kwamba kuna mengi yote maneno zaidi kwamba kuanza na kuliko X, 105 00:04:33,840 --> 00:04:38,980 hivyo sisi ni kwenda na sana ndoo unbalanced katika hash yetu meza. 106 00:04:38,980 --> 00:04:40,050 Baridi. 107 00:04:40,050 --> 00:04:41,340 Hivyo yeah, hebu kupata nyuma hatua ya migongano. 108 00:04:41,340 --> 00:04:42,900 Tufanye nini kama kuna mgongano? 109 00:04:42,900 --> 00:04:44,490 >> Tuna wanandoa chaguzi mbalimbali. 110 00:04:44,490 --> 00:04:47,600 Hivyo moja, hivyo kudhani sisi ni kujaribu kuweka berry katika hash yetu meza. 111 00:04:47,600 --> 00:04:50,370 Na tunaona, loo, tunataka kuiweka katika ripoti 1, 112 00:04:50,370 --> 00:04:52,070 lakini ndizi tayari anaishi huko. 113 00:04:52,070 --> 00:04:53,110 Je, ni sisi kwenda kufanya? 114 00:04:53,110 --> 00:04:54,560 Tuna chaguzi mbili kuu. 115 00:04:54,560 --> 00:04:58,050 >> Namba moja ni tunaweza kusema, sawa, hakuna chumba katika ripoti 1, 116 00:04:58,050 --> 00:05:03,210 lakini hebu tu kuweka kutafuta njia ya mpaka tunaweza kupata doa jingine wazi. 117 00:05:03,210 --> 00:05:08,490 Hivyo tutaweza kusema, sawa, hebu kuiweka katika doa 3. 118 00:05:08,490 --> 00:05:09,240 Hiyo ni chaguo moja. 119 00:05:09,240 --> 00:05:11,470 Hiyo inaitwa linear uchunguzi. 120 00:05:11,470 --> 00:05:15,500 >> Na chaguo la pili ni kusema, OK, vizuri, hebu tu kufanya kila mmoja ndoo 121 00:05:15,500 --> 00:05:17,470 kuwa wakuu wa orodha wanaohusishwa. 122 00:05:17,470 --> 00:05:21,910 Na ni sawa ikiwa kuna zaidi kuliko kitu kimoja katika ndoo. 123 00:05:21,910 --> 00:05:23,820 Tunakwenda tu kwa append ni kwenye mbele. 124 00:05:23,820 --> 00:05:26,032 Hivyo hapa unaweza kuona, sawa, wakati sisi kuingizwa berry, sisi 125 00:05:26,032 --> 00:05:28,240 tu alichukua ndizi, aina ya kusukuma ni juu kidogo 126 00:05:28,240 --> 00:05:29,842 na kurusha berry katika huko. 127 00:05:29,842 --> 00:05:31,050 Na hiyo ndiyo pia kabisa faini. 128 00:05:31,050 --> 00:05:32,830 Hii inaitwa tofauti chaining. 129 00:05:32,830 --> 00:05:38,100 Unaweza kufikiria hili kama aina ya kama safu ya wakuu wa orodha wanaohusishwa. 130 00:05:38,100 --> 00:05:41,950 Maswali yoyote juu ya hash meza, kazi hash? 131 00:05:41,950 --> 00:05:44,290 Kutisha. 132 00:05:44,290 --> 00:05:45,470 >> Miti na inajaribu. 133 00:05:45,470 --> 00:05:47,287 Hivyo mti ni aina yoyote muundo wa data 134 00:05:47,287 --> 00:05:49,453 ambapo kuna aina fulani ya uongozi au aina fulani 135 00:05:49,453 --> 00:05:51,247 ya cheo na vitu yako tofauti. 136 00:05:51,247 --> 00:05:53,580 Na hii itakuwa super wazi tunapoona mfano. 137 00:05:53,580 --> 00:05:56,960 Na tuliona inajaribu, pamoja na meza hash, katika pset5-- 138 00:05:56,960 --> 00:06:00,700 ambayo, tena, haki kabisa mchezo kwa hii quiz-- kama data mwingine 139 00:06:00,700 --> 00:06:03,110 miundo ambayo tunaweza kuhifadhi vitu mbalimbali. 140 00:06:03,110 --> 00:06:06,782 Katika kesi ya kamusi, sisi kuhifadhiwa na kundi la maneno. 141 00:06:06,782 --> 00:06:08,240 Basi hebu tuangalie baadhi ya miti. 142 00:06:08,240 --> 00:06:10,190 Hivyo hii ni mfano wa mti. 143 00:06:10,190 --> 00:06:13,105 Ina aina ya muundo, kwamba muundo wa kihierarkia, 144 00:06:13,105 --> 00:06:15,920 ambapo unaweza kuona kwamba hii nodi 1 juu 145 00:06:15,920 --> 00:06:20,750 ina aina fulani ya cheo juu ya 2 na 3, ambayo ni juu ya 4, 5, na 6 na 7, 146 00:06:20,750 --> 00:06:22,860 ambayo ni juu ya 8 na 9. 147 00:06:22,860 --> 00:06:25,210 Hivyo kwamba wote maana sisi na mti, hivyo unaweza tu aina 148 00:06:25,210 --> 00:06:26,660 ya picha hii katika kichwa yako. 149 00:06:26,660 --> 00:06:29,050 >> Sasa, sisi kuwa wanandoa wa miti zaidi maalumu. 150 00:06:29,050 --> 00:06:31,070 Hivyo mfano mmoja ni mti binary. 151 00:06:31,070 --> 00:06:33,290 Na mti binary ni, tena, tu kwenda kuwa 152 00:06:33,290 --> 00:06:37,040 muundo wa data na aina fulani ya uongozi, lakini kila mmoja nodes 153 00:06:37,040 --> 00:06:38,650 unaweza kuwa saa zaidi watoto wawili. 154 00:06:38,650 --> 00:06:41,530 Hapo ndipo neno mapacha anatokea. 155 00:06:41,530 --> 00:06:43,410 Hivyo hii ni mfano wa mti binary. 156 00:06:43,410 --> 00:06:45,720 Hivyo hiyo ni jamii ndogo ya miti. 157 00:06:45,720 --> 00:06:48,960 >> Sasa hebu kupata hata zaidi maalum na majadiliano juu ya mapacha trees-- binary tafuta 158 00:06:48,960 --> 00:06:51,310 miti, hasa. 159 00:06:51,310 --> 00:06:56,430 Hivyo hapa wazo ni sio tu kila nodi na saa zaidi watoto wawili, 160 00:06:56,430 --> 00:07:00,300 lakini wote wa wana wa kushoto ni kwenda kuwa ndogo 161 00:07:00,300 --> 00:07:03,450 na wote wa wana wa haki ni kwenda kuwa kubwa. 162 00:07:03,450 --> 00:07:05,890 Hivyo taarifa katika tu wetu mti binary, kuna 163 00:07:05,890 --> 00:07:08,650 hakuna uhusiano kati ya namba. 164 00:07:08,650 --> 00:07:12,990 Lakini katika kutafuta yetu mapacha mti, tunaona, OK, hapa ni 44. 165 00:07:12,990 --> 00:07:17,080 Na kila idadi ya kushoto ya 44 ni ndogo na kila kitu na haki 166 00:07:17,080 --> 00:07:17,920 ni kubwa. 167 00:07:17,920 --> 00:07:20,130 >> Na kwamba ana katika kila Kiwango cha mti. 168 00:07:20,130 --> 00:07:24,810 Hivyo hapa, hii ni ndogo kuliko 22 na hii ni kubwa kuliko 22. 169 00:07:24,810 --> 00:07:26,390 Na hiyo ndiyo binary tafuta mti. 170 00:07:26,390 --> 00:07:28,900 Kwa nini tunadhani ni kuitwa binary tafuta mti? 171 00:07:28,900 --> 00:07:30,651 Nini algorithm gani kuwakumbusha? 172 00:07:30,651 --> 00:07:31,650 Watazamaji: Search kisha. 173 00:07:31,650 --> 00:07:32,480 HANNAH BLUMBERG: Search kisha. 174 00:07:32,480 --> 00:07:35,150 Kwa sababu kama wewe ni kuangalia kwa idadi fulani katika mti huu, 175 00:07:35,150 --> 00:07:38,800 katika kila hatua, unaweza tu kubisha mbali nusu ya mti, ambayo ni kubwa. 176 00:07:38,800 --> 00:07:43,800 Na hivyo hiyo ni kwenda kutupa kitu kwamba inaonekana mengi kama tafuta binary. 177 00:07:43,800 --> 00:07:45,870 Maswali yoyote? 178 00:07:45,870 --> 00:07:47,570 Haki wote, baridi. 179 00:07:47,570 --> 00:07:48,560 >> Haki wote, anajaribu. 180 00:07:48,560 --> 00:07:49,657 Kila mtu favorite. 181 00:07:49,657 --> 00:07:51,990 Hivyo hii ni mfano kwamba tumeona rundo darasani. 182 00:07:51,990 --> 00:07:54,710 Na tena, hii ni nyingine tu njia hiyo tunaweza kuhifadhi data. 183 00:07:54,710 --> 00:07:57,530 Katika kesi ya kamusi, tena, hii ni kwenda tu kuwa masharti. 184 00:07:57,530 --> 00:08:00,870 Basi hebu angalia nini hii kwa kweli Inaonekana kama katika ngazi ya chini kidogo. 185 00:08:00,870 --> 00:08:03,690 >> Hivyo hebu tuangalie kwenye nodi katika trie moja. 186 00:08:03,690 --> 00:08:07,532 Na tunaona, sawa, kuna kwenda kuwa Boolean na node, 187 00:08:07,532 --> 00:08:09,170 pointer nodi. 188 00:08:09,170 --> 00:08:11,400 Na tunaona kwamba Boolean inaitwa is_word. 189 00:08:11,400 --> 00:08:13,490 Hivyo kimsingi, hiyo ni kwenda yanahusiana 190 00:08:13,490 --> 00:08:16,750 kwa hawa pembetatu kidogo ambayo anasema, kama wewe wameweza kujipatia hapa, 191 00:08:16,750 --> 00:08:19,100 Nimepata neno kamili. 192 00:08:19,100 --> 00:08:23,670 >> Tunajua kwamba "Turing" juu ya hapa ni neno kamili, 193 00:08:23,670 --> 00:08:28,030 ilhali tu T-U-R sio neno kwa sababu hatuoni kwamba delta kidogo. 194 00:08:28,030 --> 00:08:31,440 Na kwamba delta kidogo, tena, sambamba na is_word hii, 195 00:08:31,440 --> 00:08:34,480 hii is_word Boolean. 196 00:08:34,480 --> 00:08:36,320 Na kisha tuna safu ya watoto. 197 00:08:36,320 --> 00:08:39,860 Hivyo katika kila ngazi, na node fulani, 198 00:08:39,860 --> 00:08:42,470 na kwamba pointi nodi kwa safu ya alfabeti nzima. 199 00:08:42,470 --> 00:08:44,346 >> Hivyo unaweza kuona, tena, katika picture-- hii mimi nina 200 00:08:44,346 --> 00:08:48,170 kwenda kuweka kuruka nyuma na sana aliye mzaa kwamba kwamba safu juu 201 00:08:48,170 --> 00:08:51,640 ina rundo la tofauti nodes kuja mbali ya hiyo. 202 00:08:51,640 --> 00:08:57,140 Ina 26, au 27 kama unataka ni pamoja na tabia za ziada. 203 00:08:57,140 --> 00:09:01,320 Na hii inatupa njia ya kuhifadhi takwimu zetu 204 00:09:01,320 --> 00:09:04,450 kwa njia ambayo inaweza kuwa inaonekana juu ya kwamba unaweza kuangalia juu super kufunga. 205 00:09:04,450 --> 00:09:06,650 Chaguo-wakati kwa trie ni nini? 206 00:09:06,650 --> 00:09:07,970 >> Watazamaji: [inaudible]. 207 00:09:07,970 --> 00:09:08,300 >> HANNAH BLUMBERG: Naam. 208 00:09:08,300 --> 00:09:09,550 Katika nadharia, ni wakati wa mara kwa mara. 209 00:09:09,550 --> 00:09:13,230 Ni tu kwenda kuwa ukubwa wa neno kwamba unataka kuangalia juu. 210 00:09:13,230 --> 00:09:15,950 Hata kama sisi kuongeza zillion maneno zaidi kwa trie yetu, 211 00:09:15,950 --> 00:09:18,160 si kwenda kuchukua yetu tena kuamua 212 00:09:18,160 --> 00:09:19,690 kama neno aliyopewa ni katika trie. 213 00:09:19,690 --> 00:09:21,412 Hivyo hiyo ni kweli nzuri. 214 00:09:21,412 --> 00:09:23,697 >> Watazamaji: Je, wewe tu initialize kwamba safu? 215 00:09:23,697 --> 00:09:24,780 Amekosa hatua moja au mbili. 216 00:09:24,780 --> 00:09:26,130 Je, unaweza tu majadiliano juu ya kwamba kwa mara ya pili? 217 00:09:26,130 --> 00:09:26,680 >> HANNAH BLUMBERG: Hakika, kabisa. 218 00:09:26,680 --> 00:09:27,590 Nzuri swali. 219 00:09:27,590 --> 00:09:31,140 Swali lilikuwa, sisi na safu hiyo ni 220 00:09:31,140 --> 00:09:34,180 kwenda na nyota nodi kama kinyume na node tu, sawa? 221 00:09:34,180 --> 00:09:35,180 Baridi. 222 00:09:35,180 --> 00:09:37,990 Hivyo hapa ni nini sisi ni kusema ni safu yetu ni 223 00:09:37,990 --> 00:09:40,035 kwenda kuwa kuyatumia kwa arrays mengine. 224 00:09:40,035 --> 00:09:42,910 Hivyo ni essentially-- ni aina ya anahisi kama orodha wanaohusishwa kwa njia hii 225 00:09:42,910 --> 00:09:46,620 ambapo kila mmoja wa watoto hawa tu uhakika na nodi ijayo. 226 00:09:46,620 --> 00:09:49,030 >> Na kwa njia hiyo sisi kweli kuamua, hey, sawa, 227 00:09:49,030 --> 00:09:52,320 tumekuwa iterated kupitia nzima neno, ni neno hili katika kamusi, 228 00:09:52,320 --> 00:09:54,476 sisi tu kuangalia is_word hii. 229 00:09:54,476 --> 00:09:55,100 Mkuu swali. 230 00:09:55,100 --> 00:09:55,675 Naam. 231 00:09:55,675 --> 00:09:56,216 Watazamaji: Sawa. 232 00:09:56,216 --> 00:09:57,470 Kwa hiyo kile ni Runtime kwa trie? 233 00:09:57,470 --> 00:09:58,386 >> HANNAH BLUMBERG: Ni kweli. 234 00:09:58,386 --> 00:10:01,852 Hivyo Runtime kwa trie kwa chaguo-ni kwenda kuwa wakati mara kwa mara. 235 00:10:01,852 --> 00:10:04,310 Hivyo ni kwenda tu kuwa idadi ya herufi katika neno. 236 00:10:04,310 --> 00:10:06,310 Ni hautegemei ukubwa wa kamusi 237 00:10:06,310 --> 00:10:09,510 au ukubwa wa muundo data. 238 00:10:09,510 --> 00:10:12,170 Hivyo hapa ni mfano kidogo rahisi. 239 00:10:12,170 --> 00:10:15,430 >> Katika kesi hiyo, unaweza kuona kwamba neno popo ni katika kamusi 240 00:10:15,430 --> 00:10:18,900 na una zoom, lakini wewe hawana kitu kama zoo. 241 00:10:18,900 --> 00:10:20,050 Jinsi gani sisi kufanya zoo? 242 00:10:20,050 --> 00:10:24,276 Je, sisi kuongeza zoo kwa wetu kamusi, kwa trie zetu? 243 00:10:24,276 --> 00:10:24,776 Naam. 244 00:10:24,776 --> 00:10:27,014 >> Watazamaji: Tengeneza is_word kweli kwa [inaudible]. 245 00:10:27,014 --> 00:10:27,930 HANNAH BLUMBERG: Good. 246 00:10:27,930 --> 00:10:31,731 Hivyo tunatarajia kusema Z-O-O, na kisha sisi d unataka kuangalia mbali sanduku kuwa vilevile. 247 00:10:31,731 --> 00:10:32,230 Kubwa. 248 00:10:32,230 --> 00:10:35,160 249 00:10:35,160 --> 00:10:37,930 Hebu kulinganisha kwa ufupi sana anajaribu dhidi meza hash. 250 00:10:37,930 --> 00:10:39,770 Inajaribu ni kubwa kweli kweli kwa sababu, kama sisi alisema, 251 00:10:39,770 --> 00:10:41,610 wao kutoa mara kwa mara wakati Luke. 252 00:10:41,610 --> 00:10:44,285 Lakini hasara kubwa ya ni wao uko humongous. 253 00:10:44,285 --> 00:10:46,160 Unaweza kupata hisia, hata kwa kuangalia saa yake, 254 00:10:46,160 --> 00:10:48,454 kwamba ni kwenda kuchukua kiasi kikubwa cha kumbukumbu. 255 00:10:48,454 --> 00:10:50,620 Hivyo wao wanaenda kuwa na kiasi kubwa kuliko meza hash, 256 00:10:50,620 --> 00:10:52,270 lakini wao wanaenda kutoa sisi mara kwa kasi zaidi Luke. 257 00:10:52,270 --> 00:10:54,478 Hivyo hiyo ni aina ya yako tradeoff, nini huduma ya juu, 258 00:10:54,478 --> 00:10:57,350 kama ni kasi au kumbukumbu. 259 00:10:57,350 --> 00:11:02,251 Maswali yoyote juu ya yoyote ya kwamba, wote wa miundo C data. 260 00:11:02,251 --> 00:11:02,750 Nzuri. 261 00:11:02,750 --> 00:11:03,250 SAWA. 262 00:11:03,250 --> 00:11:07,322 Tunakwenda hoja juu ya kidogo kidogo ya maendeleo ya mtandao kwa Maria. 263 00:11:07,322 --> 00:11:08,280 MARIA ZLATKOVA: Lovely. 264 00:11:08,280 --> 00:11:09,036 SAWA. 265 00:11:09,036 --> 00:11:10,380 >> HANNAH BLUMBERG: Unaweza kutumia laptop yangu. 266 00:11:10,380 --> 00:11:11,255 >> MARIA ZLATKOVA: Nice. 267 00:11:11,255 --> 00:11:13,320 268 00:11:13,320 --> 00:11:14,912 OK, baridi. 269 00:11:14,912 --> 00:11:17,120 Kama sisi kusonga sasa kwa mtandao maendeleo, sisi aliyesema kidogo 270 00:11:17,120 --> 00:11:20,680 kuhusu kubadilisha ruhusa ya files na directories 271 00:11:20,680 --> 00:11:24,190 ili waweze kuwa kupatikana kwa watumiaji wengine, kwa dunia, 272 00:11:24,190 --> 00:11:28,640 na ili tuweze kuona ni jinsi kimsingi tunaweza kufikisha yao 273 00:11:28,640 --> 00:11:32,600 wakati sisi kuendeleza mambo kama tovuti kwamba tumekuwa wengi wao wakiwa wamekuwa wakifanya. 274 00:11:32,600 --> 00:11:36,400 >> Hivyo tuliona amri chmod, ambayo ni hali ya mabadiliko, kimsingi. 275 00:11:36,400 --> 00:11:39,300 Hiyo ni amri ya Linux na ni mabadiliko ya ruhusa 276 00:11:39,300 --> 00:11:40,410 ya mfumo wa faili vitu. 277 00:11:40,410 --> 00:11:43,370 Na mfumo wa faili kitu ni tu directory, faili, 278 00:11:43,370 --> 00:11:46,810 chochote ambacho unaweza mabadiliko ya ruhusa ya. 279 00:11:46,810 --> 00:11:53,750 >> Hivyo kuona ruhusa ya faili, sisi aina ya amri ls, orodha, -l. 280 00:11:53,750 --> 00:11:56,500 Na wakati sisi aina hiyo, sisi kawaida kuona baadhi ruhusa 281 00:11:56,500 --> 00:11:59,660 ili kuangalia aina ya kama hii mbele ya jina directory. 282 00:11:59,660 --> 00:12:01,260 Hivyo d inahusu directory. 283 00:12:01,260 --> 00:12:05,930 Na kisha tuna tatu triads kwamba kimsingi 284 00:12:05,930 --> 00:12:11,675 rejea ruhusa ya ama user, kundi, au dunia. 285 00:12:11,675 --> 00:12:16,490 >> Aina ya ruhusa kwamba tunaweza na kwa hayo makundi matatu ya watu 286 00:12:16,490 --> 00:12:20,830 ni aidha r kwa kusoma, w kwa kuandika, na x kwa kutekeleza. 287 00:12:20,830 --> 00:12:23,650 Na tunaweza kuwa wale kwa Kundi na dunia pia. 288 00:12:23,650 --> 00:12:26,940 Jambo gumu ni kwamba wakati mwingine wakati sisi aina ya amri chmod, 289 00:12:26,940 --> 00:12:32,960 tunataka aina baadhi ya idadi kwamba ilihusisha vipande tatu. 290 00:12:32,960 --> 00:12:36,990 Hivyo tunaweza kufanya kama 777 na kwamba kimsingi 291 00:12:36,990 --> 00:12:40,450 inajulikana ongezeko la thamani ya kila moja ya triads hizi 292 00:12:40,450 --> 00:12:45,060 kwa sababu r bila kutaja 4, w ingekuwa rejea 2, na x bila kutaja 1, 293 00:12:45,060 --> 00:12:50,020 hivyo wakati aliongeza up, kila moja ya namba ashuke na idadi ya nyongeza 294 00:12:50,020 --> 00:12:52,750 kwa nyongeza thamani kati ya 0 na 7. 295 00:12:52,750 --> 00:12:55,150 Hivyo tunaweza pia 0 kwa ruhusa hakuna wakati wote. 296 00:12:55,150 --> 00:12:58,200 Na kwamba itakuwa kimsingi kutupa ruhusa kwa mtumiaji ama, 297 00:12:58,200 --> 00:13:00,450 kikundi, au dunia. 298 00:13:00,450 --> 00:13:02,620 Maswali yoyote juu ya hii hadi sasa? 299 00:13:02,620 --> 00:13:05,331 >> Watazamaji: alisema anasoma ilikuwa 4? 300 00:13:05,331 --> 00:13:06,164 MARIA ZLATKOVA: Ndiyo. 301 00:13:06,164 --> 00:13:07,568 Watazamaji: [inaudible]. 302 00:13:07,568 --> 00:13:08,504 HANNAH BLUMBERG: Yup. 303 00:13:08,504 --> 00:13:11,790 Watazamaji: Na kisha kwa kuongeza wale wote wengine ingekuwa zinaonyesha namba yako. 304 00:13:11,790 --> 00:13:12,665 MARIA ZLATKOVA: Naam. 305 00:13:12,665 --> 00:13:14,970 Naam. 306 00:13:14,970 --> 00:13:17,810 Haya ni maswali makubwa. 307 00:13:17,810 --> 00:13:20,490 Nzuri. 308 00:13:20,490 --> 00:13:25,340 Baada ya hapo, sisi akaruka ndani ya HTML na a kidogo zaidi kuhusu maendeleo ya mtandao. 309 00:13:25,340 --> 00:13:27,990 Hivyo HTML tu ina maana HyperText ghafi lugha. 310 00:13:27,990 --> 00:13:30,460 Na kwamba ni ghafi lugha ambayo ni kiwango cha 311 00:13:30,460 --> 00:13:32,720 kwamba ni kutumika kujenga kurasa za mtandao. 312 00:13:32,720 --> 00:13:35,750 >> Ni wito lugha ghafi kwa sababu si kweli ulioandaliwa. 313 00:13:35,750 --> 00:13:40,310 Haisemi jinsi baadhi ya kanuni lazima wauawe au kitu kama hicho. 314 00:13:40,310 --> 00:13:44,800 Ni tu delineates na inaeleza jinsi mtandao 315 00:13:44,800 --> 00:13:46,840 ukurasa lazima kuanzisha na kila moja ya mambo yake 316 00:13:46,840 --> 00:13:48,460 na jinsi wanapaswa kuangalia kwa mtumiaji. 317 00:13:48,460 --> 00:13:53,090 318 00:13:53,090 --> 00:13:57,110 >> Baadhi ya HTML kwamba sisi wakaenda upande wa pili ni yafuatayo. 319 00:13:57,110 --> 00:14:00,500 Yote ya HTML nyaraka wetu ilianza na DOCTYPE html. 320 00:14:00,500 --> 00:14:02,550 Kisha sisi daima kuwa html tag. 321 00:14:02,550 --> 00:14:03,930 Tuna kichwa na mwili. 322 00:14:03,930 --> 00:14:07,890 Na ni muhimu kwamba HTML ina aina hii ya mfumo wa Furushi 323 00:14:07,890 --> 00:14:09,280 sababu ni wazi kabisa. 324 00:14:09,280 --> 00:14:13,200 Na kisha inakuwa wazi sana wakati sisi haja ya kufungua na kweli vitambulisho karibu. 325 00:14:13,200 --> 00:14:18,400 Na sisi daima haja ya karibu vitambulisho kwamba tumekuwa kufunguliwa. 326 00:14:18,400 --> 00:14:23,170 >> Na hapa tuna baadhi ya aina mambo mbele kwamba tunataka kuwa nayo. 327 00:14:23,170 --> 00:14:26,580 Hivyo tuna, kwa mfano, jina la CS50. 328 00:14:26,580 --> 00:14:31,980 Na kisha sisi kweli Unaweza kuunganisha karatasi style 329 00:14:31,980 --> 00:14:34,030 amefafanua kuwa jinsi sisi style tovuti yetu. 330 00:14:34,030 --> 00:14:35,650 Hiyo ni CSS. 331 00:14:35,650 --> 00:14:39,320 Tunakwenda kwenda juu yake katika michache ijayo slides pia. 332 00:14:39,320 --> 00:14:42,580 >> Ndani ya mwili, sisi kuweka baadhi ya madarasa na vitambulisho. 333 00:14:42,580 --> 00:14:45,860 Na kama kumbukumbu, tena, Vitambulisho vya ni ya kipekee na madarasa 334 00:14:45,860 --> 00:14:47,390 inaweza kwa ajili ya vitu mbalimbali. 335 00:14:47,390 --> 00:14:52,110 Na kwamba tu ina maana kwamba tunaweza kutumia madarasa na vitambulisho 336 00:14:52,110 --> 00:14:55,860 ndani ya structures-- mengine hivyo, kwa mfano, ndani ya mafaili CSS au style 337 00:14:55,860 --> 00:15:00,940 sheets-- kwa kutaja vipengele maalum na kimsingi kusema kwamba tunataka style 338 00:15:00,940 --> 00:15:03,280 au kubuni baadhi ya kipengele katika baadhi ya njia fulani. 339 00:15:03,280 --> 00:15:06,440 Na sisi rejea kwao na Vitambulisho vya zao na madarasa. 340 00:15:06,440 --> 00:15:09,870 Na tunaweza pia kutaja mambo mbalimbali na vitambulisho pia, 341 00:15:09,870 --> 00:15:13,830 lakini vitambulisho na madarasa kutupa baadhi tu versatility na nini hasa sisi 342 00:15:13,830 --> 00:15:15,850 wanataka rejea. 343 00:15:15,850 --> 00:15:19,620 >> Hivyo mfano tu. 344 00:15:19,620 --> 00:15:22,730 Tunaweza, tena, ndani ya CSS faili ambapo sisi 345 00:15:22,730 --> 00:15:25,770 wanataka kufafanua baadhi style-- hivyo rangi, fonts, 346 00:15:25,770 --> 00:15:30,340 na mambo kama hicho tunaweza kufafanua style kwa mwili. 347 00:15:30,340 --> 00:15:32,640 Hivyo kwamba itakuwa kufafanua kwa mwili mzima tag. 348 00:15:32,640 --> 00:15:36,160 Lakini basi tunaweza pia kufafanua style kwa #title. 349 00:15:36,160 --> 00:15:40,390 Na tena, hashtag inahusu yetu ID na nukta inahusu darasa letu. 350 00:15:40,390 --> 00:15:44,760 >> Na kisha kwa .info, sisi Unaweza pia kuweka baadhi ya sifa. 351 00:15:44,760 --> 00:15:49,750 Na tena, wakati sisi kurudi nyuma, tulikuwa na yetu tabaka la inaitwa maelezo na ID kichwa yetu. 352 00:15:49,750 --> 00:15:53,422 Na tunaweza kuona kwamba sisi rejea kwao na #title na .info. 353 00:15:53,422 --> 00:15:55,380 Watazamaji: Je, unaweza kusema hashtag [? kupitisha kwangu? ?] 354 00:15:55,380 --> 00:15:55,725 MARIA ZLATKOVA: Sorry? 355 00:15:55,725 --> 00:15:58,120 Watazamaji: Je, unaweza kusema hashtag [? kupitisha kwangu? ?] 356 00:15:58,120 --> 00:16:01,400 MARIA ZLATKOVA: Hashtag ina maana kitambulisho, hivyo #title 357 00:16:01,400 --> 00:16:07,890 inahusu chochote mambo na ID huu inaitwa taji. 358 00:16:07,890 --> 00:16:10,735 Na kisha nukta inahusu darasani. 359 00:16:10,735 --> 00:16:14,590 Hivyo .info inahusu kipengele hiki kwa sababu ina maelezo darasani. 360 00:16:14,590 --> 00:16:15,090 Yup. 361 00:16:15,090 --> 00:16:17,905 >> Watazamaji: Kwa nini kutofautisha yao katika HTML? 362 00:16:17,905 --> 00:16:20,985 Kwa nini unasema mambo fulani ni Vitambulisho vya na mambo fulani ni darasa? 363 00:16:20,985 --> 00:16:22,610 MARIA ZLATKOVA: Hiyo tu hadi you-- 364 00:16:22,610 --> 00:16:24,151 HANNAH BLUMBERG: Rudia swali. 365 00:16:24,151 --> 00:16:25,370 MARIA ZLATKOVA: Oh, pole. 366 00:16:25,370 --> 00:16:29,480 Kwa nini sisi kutofautisha mambo fulani kama vitambulisho na mambo mengine kama madarasa? 367 00:16:29,480 --> 00:16:34,760 Hiyo tu kwa sababu ni kweli mara nyingi kubuni uchaguzi. 368 00:16:34,760 --> 00:16:38,520 Ni inakupa mengi ya versatility katika kuwa 369 00:16:38,520 --> 00:16:43,250 uwezo wa kusema nataka bidhaa hii maalum kuwa na ID huu kwa sababu wanataka 370 00:16:43,250 --> 00:16:45,300 kufanya mambo mengi na hayo, na mimi tu 371 00:16:45,300 --> 00:16:50,010 wanataka kufafanua mtindo, mtindo fulani au rangi yoyote kwa bidhaa hiyo. 372 00:16:50,010 --> 00:16:52,630 Na njia ya kufanya hivyo ni tu kutoa ni ID. 373 00:16:52,630 --> 00:16:55,060 >> Na kisha kama mimi nataka kuwa na michache ya vitu mbalimbali 374 00:16:55,060 --> 00:16:58,940 kuwa na kwamba, badala ya kwenda na kuweka their-- 375 00:16:58,940 --> 00:17:03,840 badala ya kufanya hivyo kwa tag kwa sababu tag ingekuwa 376 00:17:03,840 --> 00:17:07,369 kuweka kiini kwa tag nzima kwa kila wakati tag kwamba ni kutumika, 377 00:17:07,369 --> 00:17:09,740 unaweza kuweka tabaka ya vitu mbalimbali. 378 00:17:09,740 --> 00:17:15,109 Na kisha tu kupata darasa kwamba na kusema Nataka style darasa hili kwa njia hiyo. 379 00:17:15,109 --> 00:17:17,579 >> Na tena, darasa Unaweza kuwa vitu mbalimbali mbalimbali 380 00:17:17,579 --> 00:17:21,150 na ID ina kuwa ya kipekee. 381 00:17:21,150 --> 00:17:21,849 Mkuu maswali. 382 00:17:21,849 --> 00:17:25,339 Yoyote maswali mengine? 383 00:17:25,339 --> 00:17:26,220 OK, kutisha. 384 00:17:26,220 --> 00:17:30,680 385 00:17:30,680 --> 00:17:35,330 Tena, hii ni jinsi selectors hizi ni inatazamwa katika CSS, na hashtag, 386 00:17:35,330 --> 00:17:40,031 kwa nukta, au bila chochote kwa kumshirikisha mtindo wa baadhi tag, 387 00:17:40,031 --> 00:17:40,530 kama mwili. 388 00:17:40,530 --> 00:17:43,500 389 00:17:43,500 --> 00:17:47,860 Na hapa tuna mkuu syntax ya jinsi hii inafanywa. 390 00:17:47,860 --> 00:17:52,830 391 00:17:52,830 --> 00:17:55,680 >> Kurudia baadhi bora mazoea kwa HTML na CSS, 392 00:17:55,680 --> 00:17:59,170 tunahitaji, tena, karibu zote tags kwamba sisi kufungua. 393 00:17:59,170 --> 00:18:03,950 Na nini sisi ilipendekeza wewe kufanya kwa ajili ya miradi yako ya mwisho, 394 00:18:03,950 --> 00:18:10,560 kama vile kwa ajili CS50 Fedha, ni kufanya kuhakikisha kwamba wote wa HTML yako linatambulisha. 395 00:18:10,560 --> 00:18:12,920 Na hiyo ni kufanyika kwa W3 Validator. 396 00:18:12,920 --> 00:18:16,940 >> Na kisha nini tulifanya na nini sisi kupendekeza kufanya 397 00:18:16,940 --> 00:18:19,790 ni kutenganisha mtindo, hivyo CSS kutoka HTML ghafi. 398 00:18:19,790 --> 00:18:24,210 Hivyo chochote kwamba inahusiana na jinsi ukurasa wako ni kwenda kuibua kuangalia 399 00:18:24,210 --> 00:18:27,330 na jinsi ni kwenda kurekebishwa anatakiwa kwenda katika CSS hati. 400 00:18:27,330 --> 00:18:33,880 Na kisha ghafi yako akisema jinsi mambo ni kuhusiana na kila mmoja ni HTML, 401 00:18:33,880 --> 00:18:37,550 na kwamba anatakiwa kwenda ndani ya ya hati yako ya HTML. 402 00:18:37,550 --> 00:18:38,590 Maswali yoyote? 403 00:18:38,590 --> 00:18:39,226 Mhm. 404 00:18:39,226 --> 00:18:42,628 >> Watazamaji: Ni nini hasa kinachoendelea tarehe na ukurasa uthibitisho 405 00:18:42,628 --> 00:18:47,945 wakati sisi ni kuthibitisha HTML kwamba [inaudible] umba? 406 00:18:47,945 --> 00:18:49,850 >> MARIA ZLATKOVA: Kwa hiyo what-- unafikiri. 407 00:18:49,850 --> 00:18:53,020 Basi nini hasa kinachoendelea tarehe na ukurasa uthibitisho 408 00:18:53,020 --> 00:18:55,570 na kwa nini tunahitaji kufanya hivyo? 409 00:18:55,570 --> 00:18:59,180 Kimsingi, sisi haja ya kufanya hivyo kwa sababu mara nyingi, kisakuzi chako, 410 00:18:59,180 --> 00:19:01,390 kama huna funga tag au kitu kama hicho, 411 00:19:01,390 --> 00:19:05,680 kisakuzi chako bado ni kwenda atatoa ukurasa na bado wanaweza kufanya kazi, 412 00:19:05,680 --> 00:19:10,840 lakini ni njia bora ya kuhakikisha kwamba umefanya, tena, imefungwa vitambulisho yako yote, 413 00:19:10,840 --> 00:19:13,190 kwamba mambo yako yote ni njia ambayo wanapaswa kuwa, 414 00:19:13,190 --> 00:19:18,470 na kimsingi kwamba ni na mikataba kwamba ni preset. 415 00:19:18,470 --> 00:19:21,970 >> Ni, tena, tu Jambo kwamba ni lazima 416 00:19:21,970 --> 00:19:24,040 kuwa kujifunza kuwa kufanya, kinyume na kuwa 417 00:19:24,040 --> 00:19:25,696 sloppier kanuni na mambo kama hayo. 418 00:19:25,696 --> 00:19:26,688 Naam. 419 00:19:26,688 --> 00:19:27,680 Oh, pole. 420 00:19:27,680 --> 00:19:29,221 Nilidhani wewe walikuwa kuongeza mkono wako. 421 00:19:29,221 --> 00:19:31,240 Watazamaji: Hapana, mimi mara tu [inaudible]. 422 00:19:31,240 --> 00:19:33,800 >> MARIA ZLATKOVA: Sawa. 423 00:19:33,800 --> 00:19:34,640 >> Watazamaji: Asante. 424 00:19:34,640 --> 00:19:36,181 >> MARIA ZLATKOVA: Bila shaka, asante. 425 00:19:36,181 --> 00:19:41,680 Hivyo tena, kinachoendelea katika jinsi habari ni kuhamishwa 426 00:19:41,680 --> 00:19:44,630 na mifano mawasiliano kuhamisha taarifa. 427 00:19:44,630 --> 00:19:45,730 TCP / IP. 428 00:19:45,730 --> 00:19:48,600 TCP tu ina maana Transmission Itifaki Kudhibiti na IP 429 00:19:48,600 --> 00:19:51,260 inahusu Itifaki ya internet. 430 00:19:51,260 --> 00:19:54,275 Na kwamba tu ina maana ya njia data ni kutolewa. 431 00:19:54,275 --> 00:19:59,470 432 00:19:59,470 --> 00:20:02,710 >> Kama tuna baadhi ya data kwamba inahitaji kutolewa kwa you-- hivyo 433 00:20:02,710 --> 00:20:06,770 wewe kufanya ombi kwa server fulani. 434 00:20:06,770 --> 00:20:09,800 Kwa mfano, wakati sisi kujaribu kupata cs50.net, 435 00:20:09,800 --> 00:20:12,420 sisi kufanya ombi kwa CS50 server na sisi 436 00:20:12,420 --> 00:20:14,720 kuona kwamba tunataka kupata aina hii ya habari. 437 00:20:14,720 --> 00:20:19,294 Na kisha ni msingi itifaki hii kwa jinsi habari hii ni kutolewa, 438 00:20:19,294 --> 00:20:21,460 server anatoa taarifa nyuma na sisi, mteja. 439 00:20:21,460 --> 00:20:25,590 Na kisha sisi ni uwezo wa kuona habari kwa ukurasa 440 00:20:25,590 --> 00:20:26,390 na kisha kuitumia. 441 00:20:26,390 --> 00:20:29,300 442 00:20:29,300 --> 00:20:33,050 >> Hivyo basi HyperText Transfer itifaki ni tu mwingine itifaki au kuweka 443 00:20:33,050 --> 00:20:37,470 ya mikataba kwamba amefafanua jinsi kivinjari na mtandao wa kompyuta 444 00:20:37,470 --> 00:20:38,890 lazima kuwasiliana. 445 00:20:38,890 --> 00:20:43,730 Na kuweka hii yote pamoja, HTTP, tena, 446 00:20:43,730 --> 00:20:50,960 tu amefafanua jinsi HyperText hii inaelezwa na HTML kwamba tumekuwa kazi yake, 447 00:20:50,960 --> 00:20:59,500 jinsi ni lazima kuwa mikononi wewe na jinsi takwimu ambazo ni mikononi wewe 448 00:20:59,500 --> 00:21:00,540 anapata wewe. 449 00:21:00,540 --> 00:21:05,990 >> Na hii ndiyo maana, kama wewe guys kumbuka kutoka darasani, tulikuwa na mengi ya maombi 450 00:21:05,990 --> 00:21:08,970 na tulikuwa na mengi ya syntax kwa maombi hayo kuwa tuko 451 00:21:08,970 --> 00:21:10,250 kwenda juu hivi sasa. 452 00:21:10,250 --> 00:21:13,270 Hivyo tena, wakati sisi kutuma ombi kwa kompyuta, 453 00:21:13,270 --> 00:21:15,920 tuna kufafanua mambo kadhaa. 454 00:21:15,920 --> 00:21:18,520 Hivyo tunahitaji kupata aina ya ombi kwamba sisi ni kuweka. 455 00:21:18,520 --> 00:21:22,180 Na tena, tuna, kwa mfano, GET ni aina moja ya njia 456 00:21:22,180 --> 00:21:25,290 kwamba sisi katika ombi letu. 457 00:21:25,290 --> 00:21:31,710 >> Na kisha HTTP / 1.1 ni tu Itifaki kwamba sisi ni kutumia sasa. 458 00:21:31,710 --> 00:21:34,224 459 00:21:34,224 --> 00:21:36,890 Zaidi ya muda, ambayo inaenda kwa itifaki ambayo sisi ni kutumia. 460 00:21:36,890 --> 00:21:40,290 Hivyo kama una swali kama kwamba juu ya jaribio lako. 461 00:21:40,290 --> 00:21:43,120 Hiyo ni mikataba kwamba tuna hadi sasa. 462 00:21:43,120 --> 00:21:46,580 >> Backslash inahusu aina gani ya mambo ya sisi ni kuomba. 463 00:21:46,580 --> 00:21:52,810 Kisha, jeshi letu ni, kwa mfano, katika hii kesi, sisi ni kujaribu kwenda google.com. 464 00:21:52,810 --> 00:21:57,070 Hivyo hii ni thamani kwa ajili ya jeshi. 465 00:21:57,070 --> 00:21:59,330 Hii ni aina ya ombi ambayo inaweza kutumwa. 466 00:21:59,330 --> 00:22:02,890 >> Na kisha aina ya majibu ambayo inaweza kutumwa, tena, kwa kuzingatia itifaki hii, 467 00:22:02,890 --> 00:22:05,190 ni mara ya pili, HTTP / 1.1. 468 00:22:05,190 --> 00:22:07,150 Hivyo hiyo ni toleo la HTTP tena. 469 00:22:07,150 --> 00:22:09,730 200 sawa tu hali ya kificho. 470 00:22:09,730 --> 00:22:12,860 Na kwamba sawa ni maneno kulingana na kwamba hali ya kificho. 471 00:22:12,860 --> 00:22:15,520 >> Na kisha maudhui-Aina inahusu aina 472 00:22:15,520 --> 00:22:20,295 kwamba ni kurudi na wewe kwamba ni kwa kuwa mtandao kwamba kupokea 473 00:22:20,295 --> 00:22:22,570 na kwamba browser yako unaweza kutoa baadaye. 474 00:22:22,570 --> 00:22:24,401 Na kwamba ni text / html. 475 00:22:24,401 --> 00:22:26,660 >> Watazamaji: Je 1.1 maana gani? 476 00:22:26,660 --> 00:22:29,910 >> MARIA ZLATKOVA: Hiyo tu toleo la of-- loo, je 1.1 maana gani? 477 00:22:29,910 --> 00:22:37,075 Hiyo ni toleo, HTTP toleo la itifaki ambayo sisi ni kutumia. 478 00:22:37,075 --> 00:22:37,700 Mkuu swali. 479 00:22:37,700 --> 00:22:38,366 Maswali mengine? 480 00:22:38,366 --> 00:22:41,222 481 00:22:41,222 --> 00:22:45,080 >> Watazamaji: Je, unaweza kuhitimisha Maudhui-Aina ya haraka kweli? 482 00:22:45,080 --> 00:22:48,150 >> MARIA ZLATKOVA: Hivyo kwamba ni nini server. 483 00:22:48,150 --> 00:22:51,020 aina ya information-- nini aina ya maudhui mara maswali. 484 00:22:51,020 --> 00:22:53,400 Ili kwamba ilikuwa aina ya habari kwamba kupata nyuma 485 00:22:53,400 --> 00:22:58,200 kutoka server, aina ya data kwamba browser Unaweza kisha 486 00:22:58,200 --> 00:23:00,604 atatoa kwamba unatumia. 487 00:23:00,604 --> 00:23:03,020 Watazamaji: Ni kwamba kile hii Itifaki ni kukueleza kwa nini? 488 00:23:03,020 --> 00:23:03,390 MARIA ZLATKOVA: Sorry? 489 00:23:03,390 --> 00:23:05,380 Watazamaji: Ni kwamba kile itifaki kusema? 490 00:23:05,380 --> 00:23:05,915 MARIA ZLATKOVA: protocol-- 491 00:23:05,915 --> 00:23:07,940 Watazamaji: --what Maudhui-Aina ni au what-- 492 00:23:07,940 --> 00:23:12,040 MARIA ZLATKOVA: itifaki ni msingi on-- ni itifaki ninawaambieni kile? 493 00:23:12,040 --> 00:23:16,070 Hiyo ni njia tu kwamba habari hii 494 00:23:16,070 --> 00:23:18,610 ilikuwa mikononi wewe kwa kuzingatia juu ya aina gani ya itifaki 495 00:23:18,610 --> 00:23:21,830 ilikuwa habari hii got mikononi nyuma yenu. 496 00:23:21,830 --> 00:23:23,500 Je, hiyo mantiki aina ya? 497 00:23:23,500 --> 00:23:28,320 498 00:23:28,320 --> 00:23:30,070 HANNAH BLUMBERG: Wewe unaweza kufikiria itifaki 499 00:23:30,070 --> 00:23:33,300 kama a-- Nadhani Profesa Malan alieleza 500 00:23:33,300 --> 00:23:36,910 darasani kama aina ya kama a-- ni kama sawa na handshaking binadamu. 501 00:23:36,910 --> 00:23:44,930 Kusema, kama, hey, mimi nina ombi na mimi kujua jinsi ya kushughulikia HTTP ya toleo 1.1. 502 00:23:44,930 --> 00:23:48,770 Na kisha server anasema, loo, sawa, I-- na wote zipo. 503 00:23:48,770 --> 00:23:51,337 Mimi pia kujua jinsi ya kukabiliana na HTTP / 1.1. 504 00:23:51,337 --> 00:23:53,170 Na mimi nina kwenda kutoa wewe nyuma baadhi ya maudhui. 505 00:23:53,170 --> 00:23:56,230 Katika kesi hiyo, ni kwenda kuwa wa aina text / html. 506 00:23:56,230 --> 00:23:58,480 Hivyo ni aina ya njia tu wao kwa communicating-- 507 00:23:58,480 --> 00:24:00,480 >> MARIA ZLATKOVA: Ni tu kuthibitisha kwamba wewe ni 508 00:24:00,480 --> 00:24:03,290 wote kufuatia huo itifaki na kwamba wote 509 00:24:03,290 --> 00:24:06,620 mteja na hivyo server-- kisakuzi chako na server-- 510 00:24:06,620 --> 00:24:09,280 aina ya kujua nini uko kuzungumza juu na kuwa na 511 00:24:09,280 --> 00:24:12,557 mkataba kwa kupita katika data. 512 00:24:12,557 --> 00:24:17,022 >> Watazamaji: Hivyo maudhui-Aina part-- maudhui-Aina maandishi / html-- hiyo ni 513 00:24:17,022 --> 00:24:18,521 sehemu tofauti ya ujumbe huo? 514 00:24:18,521 --> 00:24:20,509 Au ni sehemu ya hebu sema, 200? 515 00:24:20,509 --> 00:24:22,010 Je, 200 kuwaambia kwamba au is-- 516 00:24:22,010 --> 00:24:23,770 >> MARIA ZLATKOVA: 200 inasema yote akaenda OK. 517 00:24:23,770 --> 00:24:27,900 Na kisha ni aina ya maudhui aina ya sehemu tofauti ya ujumbe huo, 518 00:24:27,900 --> 00:24:34,274 na kusema kitu kwamba mimi Returned ina aina hii ya maandishi / html. 519 00:24:34,274 --> 00:24:35,690 Ni kutoa tu habari zaidi. 520 00:24:35,690 --> 00:24:38,700 521 00:24:38,700 --> 00:24:39,995 Kuwa na kitu cha kuongeza? 522 00:24:39,995 --> 00:24:40,495 SAWA. 523 00:24:40,495 --> 00:24:43,590 524 00:24:43,590 --> 00:24:46,530 >> Maswali yoyote juu ya hili? 525 00:24:46,530 --> 00:24:48,370 Kutisha. 526 00:24:48,370 --> 00:24:54,070 Hivyo baadhi ya wengine statuses HTTP kwamba tunaweza kupata pamoja na 200 sawa, 527 00:24:54,070 --> 00:24:59,500 wale ambao tumeona labda uwezekano wa kura ni 403 na 404. 528 00:24:59,500 --> 00:25:05,190 Hivyo 404, ikiwa ungekuwa kujaribu upatikanaji kitu ambacho haipo. 529 00:25:05,190 --> 00:25:10,460 Hivyo kwa mfano, katika yako CS50 Fedha psets, 530 00:25:10,460 --> 00:25:15,640 kama wewe alikuwa utoaji quote.html na wewe hawakuwa na faili kwamba, 531 00:25:15,640 --> 00:25:19,740 lakini badala yake alikuwa quote.php, kwamba bila kusababisha 404 Haukupatikana 532 00:25:19,740 --> 00:25:21,600 kwa sababu faili inaweza hazipo. 533 00:25:21,600 --> 00:25:25,690 >> Kwa 403 haramu, kwamba inahusu ruhusa. 534 00:25:25,690 --> 00:25:31,150 Hivyo kama baadhi ya faili si someka na dunia, unaweza kupata 403 akarudi. 535 00:25:31,150 --> 00:25:34,510 536 00:25:34,510 --> 00:25:37,810 Baadhi ya watu wengine kwamba waweza get-- 301, wakiongozwa Kudumu; 537 00:25:37,810 --> 00:25:41,300 302, Kupatikana; 304, mara ya; 400, Bad Ombi; 538 00:25:41,300 --> 00:25:47,330 na kisha Ndani Server Error kwa 500 na 503, Huduma hazipatikani. 539 00:25:47,330 --> 00:25:48,140 Ndiyo. 540 00:25:48,140 --> 00:25:51,490 >> Watazamaji: Je, sisi wanatarajiwa kukariri wale statuses yote? 541 00:25:51,490 --> 00:25:53,739 MARIA ZLATKOVA: Napenda kuwa yao juu ya kudanganya karatasi yako. 542 00:25:53,739 --> 00:25:55,146 [Kicheko] 543 00:25:55,146 --> 00:25:59,954 Watazamaji: Je, sisi wanatarajiwa kujua nini kuchochea kila mmoja? 544 00:25:59,954 --> 00:26:00,995 MARIA ZLATKOVA: Je, wao ni? 545 00:26:00,995 --> 00:26:03,870 HANNAH BLUMBERG: Kwa wale ambao tumekuwa kukimbia into-- hivyo swali was-- 546 00:26:03,870 --> 00:26:08,010 MARIA ZLATKOVA: Je, wao unatarajiwa kujua nini kila mmoja wa haya hadhi 547 00:26:08,010 --> 00:26:09,330 codes yapate yalisababisha na? 548 00:26:09,330 --> 00:26:13,240 Hivyo kwa wale ambao tumekuwa kutumika na mbio katika, napenda kusema, ndiyo. 549 00:26:13,240 --> 00:26:16,610 Hivyo tumekuwa dhahiri kuonekana 200 OK na alihadhiri katika psets. 550 00:26:16,610 --> 00:26:19,071 Tumeona 403, 404. 551 00:26:19,071 --> 00:26:20,550 Kwa wale wengine? 552 00:26:20,550 --> 00:26:22,690 >> HANNAH BLUMBERG: napenda kusema 500 inaonekana haki mchezo. 553 00:26:22,690 --> 00:26:23,330 >> MARIA ZLATKOVA: 500, yeah. 554 00:26:23,330 --> 00:26:24,246 >> HANNAH BLUMBERG: Naam. 555 00:26:24,246 --> 00:26:27,006 Tu na maana ya jumla ya nini husababisha yao. 556 00:26:27,006 --> 00:26:28,880 Na pia tu kwa hawa majina, unaweza aina ya 557 00:26:28,880 --> 00:26:32,890 kama kufanya nadhani elimu kama kwa nini hasa kilichowafanya. 558 00:26:32,890 --> 00:26:36,919 Kwa mfano, hoja ya kudumu, pengine faili limeondolewa kudumu. 559 00:26:36,919 --> 00:26:39,328 >> Watazamaji: Lakini juu ya awali mtihani, kulikuwa na hivyo 560 00:26:39,328 --> 00:26:41,050 jinsi gani unaweza kutarajia sisi kujibu hilo? 561 00:26:41,050 --> 00:26:42,883 >> HANNAH BLUMBERG: Hiyo ilikuwa na thamani ya pointi sifuri. 562 00:26:42,883 --> 00:26:45,870 Swali juu ya 418 juu ya buli ni kitaalam hali HTTP, 563 00:26:45,870 --> 00:26:47,090 lakini ilikuwa yenye thamani pointi sifuri. 564 00:26:47,090 --> 00:26:48,320 Ni wazi, wewe si unatarajiwa kujua yao. 565 00:26:48,320 --> 00:26:49,670 >> Watazamaji: Je, ni moja ya kweli? 566 00:26:49,670 --> 00:26:51,970 >> HANNAH BLUMBERG: Ni kweli moja, lakini haina maana yoyote. 567 00:26:51,970 --> 00:26:52,700 Ni tu mzaha. 568 00:26:52,700 --> 00:26:55,480 569 00:26:55,480 --> 00:26:57,010 Internet watu ni funny. 570 00:26:57,010 --> 00:26:59,680 >> MARIA ZLATKOVA: maswali Mkuu, nyie. 571 00:26:59,680 --> 00:27:01,452 Yoyote maswali mengine? 572 00:27:01,452 --> 00:27:04,891 >> Watazamaji: ni hitilafu ya seva ndani nini? 573 00:27:04,891 --> 00:27:06,640 MARIA ZLATKOVA: Ndani hitilafu ya seva tu 574 00:27:06,640 --> 00:27:10,050 ina maana kwamba umekuwa hawawezi kuwasiliana 575 00:27:10,050 --> 00:27:13,400 na server kwa sababu fulani. 576 00:27:13,400 --> 00:27:15,400 Hivyo ni si lazima kitu ambacho ina nini 577 00:27:15,400 --> 00:27:19,170 na mteja au kitu kama hicho. 578 00:27:19,170 --> 00:27:22,170 Sijui wa mfano yoyote maalum kwamba tumeenda juu ya kueleza, 579 00:27:22,170 --> 00:27:23,000 lakini yeah. 580 00:27:23,000 --> 00:27:23,250 >> HANNAH BLUMBERG: Ni kweli. 581 00:27:23,250 --> 00:27:25,625 Hivyo kwa mfano, kama hebu kusema wewe walikuwa wakifanya kazi kwenye mashup 582 00:27:25,625 --> 00:27:30,440 na server Google walishuka kwa baadhi sababu, kukatika kwa umeme, hebu sema. 583 00:27:30,440 --> 00:27:33,400 Hiyo itakuwa server ndani makosa au aina fulani of-- kama wewe 584 00:27:33,400 --> 00:27:34,630 bila kupata majibu nyuma. 585 00:27:34,630 --> 00:27:35,260 >> MARIA ZLATKOVA: Naam. 586 00:27:35,260 --> 00:27:37,050 Ni tu wakati uko hawawezi kuwasiliana 587 00:27:37,050 --> 00:27:40,299 na server kwa sababu fulani kwa sababu yake kwenda chini au sababu nyingine. 588 00:27:40,299 --> 00:27:44,430 589 00:27:44,430 --> 00:27:47,690 Hivyo kuruka ndani PHP. 590 00:27:47,690 --> 00:27:49,930 PHP, tofauti na HTML, ni lugha ya programu. 591 00:27:49,930 --> 00:27:54,820 Na sisi kuanza kutumia kwa sababu ni muhimu sana kwa ajili ya maendeleo ya mtandao. 592 00:27:54,820 --> 00:27:56,940 >> Sisi kwanza kutumika katika CS50 Fedha. 593 00:27:56,940 --> 00:28:02,240 Na kimsingi inatusaidia kuleta pamoja ghafi huu, kubuni, 594 00:28:02,240 --> 00:28:07,460 na jinsi sisi kweli kutumia taarifa kuonyesha mambo kwenye mtandao. 595 00:28:07,460 --> 00:28:11,870 Hivyo PHP yenyewe ina maana PHP HyperText Preprocessor, 596 00:28:11,870 --> 00:28:15,360 hivyo ni backnorym kujirudia kwa yenyewe. 597 00:28:15,360 --> 00:28:22,330 Na kufungua vitambulisho kwa PHP sisi kushoto na kulia mishale na alama ya kuuliza 598 00:28:22,330 --> 00:28:23,060 na php. 599 00:28:23,060 --> 00:28:25,890 >> Hivyo tumekuwa tayari kuona rundo la hayo. 600 00:28:25,890 --> 00:28:29,150 Sasa, sisi ni kwenda tu kwenda juu baadhi ya mambo ya msingi kuhusu suala hilo. 601 00:28:29,150 --> 00:28:32,280 Hivyo, pamoja na PHP, kutofautiana majina kuanza na ishara ya dola. 602 00:28:32,280 --> 00:28:35,660 Sisi si bayana, tena, kutofautiana aina tena. 603 00:28:35,660 --> 00:28:38,450 Tu kama tulivyofanya kwa C, hatuna haja ya kufanya hivyo. 604 00:28:38,450 --> 00:28:41,670 605 00:28:41,670 --> 00:28:44,490 >> Tunaweza kufanya rundo la tofauti mambo na vigezo. 606 00:28:44,490 --> 00:28:47,750 Tunaweza kuziweka pamoja na concatenating yao 607 00:28:47,750 --> 00:28:52,900 kwa dot nukuu, ambayo sisi hakuweza kufanya katika C tena. 608 00:28:52,900 --> 00:28:57,490 Tena, tuna uhodari kidogo zaidi na PHP katika suala la vigezo. 609 00:28:57,490 --> 00:29:00,080 Tena, hatuna kazi kuu. 610 00:29:00,080 --> 00:29:03,370 >> Na PHP ni kufasiriwa kinyume na ulioandaliwa, 611 00:29:03,370 --> 00:29:09,970 Hivyo tu jinsi hatukuwa kufanya kwa mafaili C, hatuna kufanya hivyo kwa PHP. 612 00:29:09,970 --> 00:29:15,440 Lakini badala yake, kwa njia hiyo lugha inaendeshwa kwa wenyewe, ni kufasiriwa. 613 00:29:15,440 --> 00:29:18,550 Na kisha loosely typed tu ina maana kwamba sisi 614 00:29:18,550 --> 00:29:22,490 hawana kutaja kutofautiana Aina na aina kutofautiana 615 00:29:22,490 --> 00:29:25,415 kufahamika katika Runtime. 616 00:29:25,415 --> 00:29:29,185 >> Watazamaji: Lakini nini alifanya wewe maana kwa nukta concatenation? 617 00:29:29,185 --> 00:29:30,060 MARIA ZLATKOVA: Ni kweli. 618 00:29:30,060 --> 00:29:37,660 Wakati tunataka kuweka mambo together-- hivyo kama tulikuwa na baadhi ya kutofautiana kwamba 619 00:29:37,660 --> 00:29:41,500 alikuwa na thamani ya 3 na tulikuwa na mwingine kutofautiana kwamba alikuwa na thamani ya kamba, 620 00:29:41,500 --> 00:29:45,920 tunaweza kuweka vigezo pamoja kwa kuweka dot katika baina yao 621 00:29:45,920 --> 00:29:46,970 na concatenating yao. 622 00:29:46,970 --> 00:29:52,670 Au tunaweza kujenga kutofautiana kuitwa jina 623 00:29:52,670 --> 00:29:56,900 na kuiweka pamoja na concatenating masharti mawili. 624 00:29:56,900 --> 00:30:00,680 >> Hivyo kama tulikuwa na kamba katika mara mbili quotes na sisi kuweka nukta baada yake, 625 00:30:00,680 --> 00:30:03,660 na kisha tulikuwa na kamba ya lingine ingekuwa kujenga kamba kabisa. 626 00:30:03,660 --> 00:30:05,242 >> Watazamaji: Sawa. 627 00:30:05,242 --> 00:30:06,450 MARIA LATVIA: Je kwamba wazi? 628 00:30:06,450 --> 00:30:07,099 Watazamaji: Naam. 629 00:30:07,099 --> 00:30:07,890 MARIA ZLATKOVA: Sawa. 630 00:30:07,890 --> 00:30:08,766 Ndiyo. 631 00:30:08,766 --> 00:30:11,146 >> Watazamaji: Unaposema kufasiriwa badala ya ulioandaliwa, 632 00:30:11,146 --> 00:30:14,160 ni wewe kuzungumza juu huna haja ya kuwa maalumu wakati 633 00:30:14,160 --> 00:30:15,906 suala la PHP dhidi C? 634 00:30:15,906 --> 00:30:18,085 635 00:30:18,085 --> 00:30:20,710 MARIA ZLATKOVA: Tunaposema kufasiriwa kinyume na ulioandaliwa, 636 00:30:20,710 --> 00:30:21,850 je, sisi ina maana gani? 637 00:30:21,850 --> 00:30:26,220 Hivyo kwamba maana yake ni kwamba hatuna haja kutekelezwa mafaili ya kuendesha PHP. 638 00:30:26,220 --> 00:30:29,870 Ina maana kwamba anaendesha kama unaendelea. 639 00:30:29,870 --> 00:30:31,650 Je, hiyo mantiki? 640 00:30:31,650 --> 00:30:32,495 Kidogo zaidi. 641 00:30:32,495 --> 00:30:34,620 HANNAH BLUMBERG: Kwa hiyo wewe unaweza kufikiria mkalimani 642 00:30:34,620 --> 00:30:38,980 kama mpango mwingine kwamba ni wajibu kwa ajili ya kwenda mstari kwa mstari kupitia PHP 643 00:30:38,980 --> 00:30:42,745 na kwa kweli utekelezaji yake, kinyume kwa kuandaa yake yote chini ya mapacha. 644 00:30:42,745 --> 00:30:46,050 Haina kweli maana yoyote kuhusu jinsi maalum tunahitaji kuwa. 645 00:30:46,050 --> 00:30:49,470 Bado tunahitaji kuwa sahihi, na wala kusahau semicolon yako, na kuhakikisha 646 00:30:49,470 --> 00:30:51,470 una ishara yako dola, na mambo kama hayo. 647 00:30:51,470 --> 00:30:52,240 Nzuri swali. 648 00:30:52,240 --> 00:30:53,115 >> MARIA ZLATKOVA: Naam. 649 00:30:53,115 --> 00:30:55,590 Hivyo mstari kwa mstari, kama kinyume na na mafaili C, 650 00:30:55,590 --> 00:30:59,100 tuna kufanya fainali nzima kabla tunaweza kweli kuendesha. 651 00:30:59,100 --> 00:31:00,360 Hiyo ni tofauti kuu. 652 00:31:00,360 --> 00:31:02,655 Lakini tena, hatuwezi kweli kuwa chini maalum. 653 00:31:02,655 --> 00:31:08,760 654 00:31:08,760 --> 00:31:13,950 Hivyo arrays katika PHP kuwakilisha kweli ramani aliamuru. 655 00:31:13,950 --> 00:31:17,550 >> Hivyo maadili arrays mshirika kwa funguo. 656 00:31:17,550 --> 00:31:23,350 Njia mbili kutangaza safu, kulingana na syntax hii, 657 00:31:23,350 --> 00:31:26,380 tunaweza kuwa wazi zaidi kwa kusema tuna safu 658 00:31:26,380 --> 00:31:31,010 na tuna key1 hii kwamba ramani kwa value1 hii, key2 kwamba ramani value2. 659 00:31:31,010 --> 00:31:34,660 Au tunaweza tu kujenga safu ambayo ina maadili yenyewe 660 00:31:34,660 --> 00:31:38,360 na kisha funguo ni kueleweka kwa namna. 661 00:31:38,360 --> 00:31:40,000 Maswali yoyote juu ya hili? 662 00:31:40,000 --> 00:31:42,500 >> Watazamaji: Je, ingekuwa funguo kuwa katika mfano wa pili? 663 00:31:42,500 --> 00:31:47,100 664 00:31:47,100 --> 00:31:47,920 0, 1, 2, 3? 665 00:31:47,920 --> 00:31:50,650 666 00:31:50,650 --> 00:31:55,780 >> MARIA ZLATKOVA: Kwa mfano, ni tu funguo katika hii si lazima 667 00:31:55,780 --> 00:31:56,550 kufanya tofauti. 668 00:31:56,550 --> 00:32:01,720 Wao tu kufafanua jinsi unaweza kutumia maadili ndani yake. 669 00:32:01,720 --> 00:32:08,660 Hivyo kama tulikuwa na foreach kitanzi katika PHP kwamba ingekuwa 670 00:32:08,660 --> 00:32:14,760 kuruhusu sisi kwenda kwa njia ya maadili yote, tunaweza kwenda kwa maadili yote, 671 00:32:14,760 --> 00:32:19,570 hata kama tulikuwa na au ulikuwa bado inaelezwa ufunguo maalum ndani ya tovuti ya 672 00:32:19,570 --> 00:32:20,820 syntax uliopita. 673 00:32:20,820 --> 00:32:23,460 >> Hivyo hata kwa aina hii wa safu, sisi bado anaweza 674 00:32:23,460 --> 00:32:26,260 na foreach kitanzi kwamba huenda kwa njia ya kila 675 00:32:26,260 --> 00:32:31,240 kuhusu maadili katika muhimu katika safu. 676 00:32:31,240 --> 00:32:36,180 Hivyo syntax ya foreach kitanzi, sisi kuanza na safu. 677 00:32:36,180 --> 00:32:38,720 678 00:32:38,720 --> 00:32:43,900 Hii kutofautiana $ arr ni safu yetu halisi kwamba sisi inavyoelezwa katika slide uliopita 679 00:32:43,900 --> 00:32:47,550 kama thamani halisi inakwenda kwamba kupitia katika kila maadili, 680 00:32:47,550 --> 00:32:50,122 bila kujali kama tulikuwa na ufunguo au la. 681 00:32:50,122 --> 00:32:53,080 Na kisha tunaweza kufanya kitu kwa thamani ndani ya foreach kitanzi. 682 00:32:53,080 --> 00:32:57,730 Hivyo tena, kama tulikuwa na safu kama hii hapa created-- 683 00:32:57,730 --> 00:33:03,270 hivyo tuna ufunguo wa foo na thamani ya bar, ufunguo wa bazi na thamani ya qux-- 684 00:33:03,270 --> 00:33:09,730 tunaweza kuwa foreach kitanzi kwamba huenda kwa njia ya safu kama thamani ufunguo 685 00:33:09,730 --> 00:33:11,900 na kisha kufanya kitu na muhimu na / au thamani. 686 00:33:11,900 --> 00:33:15,980 Lakini sisi si lazima kila mara kuwa na foreach matanzi kwamba 687 00:33:15,980 --> 00:33:19,410 huenda kwa njia ya safu kama ramani muhimu kwa thamani. 688 00:33:19,410 --> 00:33:26,060 Tunaweza kwenda kwa njia ya foreach kitanzi safu kama thamani. 689 00:33:26,060 --> 00:33:28,990 >> HANNAH BLUMBERG: Na nadhani to-- ilikuwa swali lako, nini 690 00:33:28,990 --> 00:33:31,229 ni thabiti ripoti? 691 00:33:31,229 --> 00:33:31,895 Watazamaji: Kinda. 692 00:33:31,895 --> 00:33:32,240 MARIA ZLATKOVA: Oh. 693 00:33:32,240 --> 00:33:33,406 HANNAH BLUMBERG: Ndio, ndio. 694 00:33:33,406 --> 00:33:36,150 Hivyo kimsingi, kama huna bayana ufunguo, ni kwenda kuwa 01. 695 00:33:36,150 --> 00:33:37,140 >> MARIA ZLATKOVA: Naam. 696 00:33:37,140 --> 00:33:41,718 Tu kama na C, ni sifuri indexed kama huna bayana muhimu. 697 00:33:41,718 --> 00:33:42,384 Watazamaji: Sorry. 698 00:33:42,384 --> 00:33:43,827 Je, unaweza kujaribu akizungumza kidogo nguvu zaidi? 699 00:33:43,827 --> 00:33:45,270 Mimi nina kuwa kidogo ya shida ya kusikia kila kitu. 700 00:33:45,270 --> 00:33:46,478 >> MARIA ZLATKOVA: Mimi ni hivyo pole. 701 00:33:46,478 --> 00:33:48,439 Naam, bila shaka. 702 00:33:48,439 --> 00:33:50,230 Hivyo unataka mimi kwenda juu hii tena? 703 00:33:50,230 --> 00:33:51,680 Au ni hii 704 00:33:51,680 --> 00:33:54,930 Watazamaji: Hivyo katika slide-- uliopita ikiwa unaweza tu kwenda nyuma kwa ajili ya pili moja. 705 00:33:54,930 --> 00:33:57,313 MARIA ZLATKOVA: Bila shaka, pole. 706 00:33:57,313 --> 00:33:59,237 Watazamaji: Hivyo pili safu hapa hana 707 00:33:59,237 --> 00:34:04,135 wanaonekana kuwa na thamani kwa ufunguo, aina ya [? Sababu. ?] 708 00:34:04,135 --> 00:34:05,343 MARIA ZLATKOVA: Haki, haki. 709 00:34:05,343 --> 00:34:07,608 Watazamaji: Hivyo ni jinsi gani kazi unaposema ni wote au hakuna. 710 00:34:07,608 --> 00:34:08,969 Kwangu mimi, kwamba inaonekana kama [? foo?] tayari. 711 00:34:08,969 --> 00:34:10,093 >> MARIA ZLATKOVA: Ndio, ndio. 712 00:34:10,093 --> 00:34:12,969 Hivyo tena, hii ni kuamuru ramani kwa maana hii 713 00:34:12,969 --> 00:34:15,639 kwamba kuna ni kueleweka, Kwa mfano, bahati 714 00:34:15,639 --> 00:34:20,159 hapa inaweza kueleweka kama 0, 1, 2, 3. 715 00:34:20,159 --> 00:34:25,929 Tena, hiyo ni kuwa wale bahati ni sawa wetu 716 00:34:25,929 --> 00:34:28,980 ya kuwa na funguo mapped kwenye maadili. 717 00:34:28,980 --> 00:34:34,710 Hivyo kama ufunguo yetu ilikuwa 0-- pole. 718 00:34:34,710 --> 00:34:36,524 >> HANNAH BLUMBERG: Hapana, kuna chaki hapa. 719 00:34:36,524 --> 00:34:36,929 Ni kweli ni nzuri. 720 00:34:36,929 --> 00:34:37,460 >> MARIA ZLATKOVA: Hiyo ni kubwa. 721 00:34:37,460 --> 00:34:38,260 SAWA. 722 00:34:38,260 --> 00:34:49,489 Hivyo tena, $ arr 0 itakuwa muhimu kwa ajili ya thamani 1. 723 00:34:49,489 --> 00:34:51,138 0 itakuwa muhimu kwa thamani 1. 724 00:34:51,138 --> 00:34:51,971 Watazamaji: Samahani. 725 00:34:51,971 --> 00:34:53,190 Ni asiyeonekana. 726 00:34:53,190 --> 00:34:53,659 >> HANNAH BLUMBERG: zote haki, Nevermind. 727 00:34:53,659 --> 00:34:54,980 Chalk ilikuwa wazo mbaya. 728 00:34:54,980 --> 00:34:58,030 Mimi kuchukua nyuma. 729 00:34:58,030 --> 00:35:01,425 Unaweza kufikiria funguo kama 0 ramani kwa thamani 1. 730 00:35:01,425 --> 00:35:02,300 MARIA ZLATKOVA: Naam. 731 00:35:02,300 --> 00:35:04,630 Hivyo hii ni 0, hii ni 1, 2, 3. 732 00:35:04,630 --> 00:35:05,760 Hizi zinaweza kuwa funguo yako. 733 00:35:05,760 --> 00:35:10,020 Unaweza kufikiri wao as-- yeah. 734 00:35:10,020 --> 00:35:12,740 Hivyo badala ya kuwa funguo wazi, wao uko 735 00:35:12,740 --> 00:35:17,180 aina ya kueleweka kama kuwa bahati kuanzia saa 0. 736 00:35:17,180 --> 00:35:21,630 737 00:35:21,630 --> 00:35:24,820 Chaki hakuwa na msaada. 738 00:35:24,820 --> 00:35:25,722 Naam. 739 00:35:25,722 --> 00:35:30,914 >> Watazamaji: Kwa foreach kitanzi, kama sisi alitaka kuona kama thamani, 740 00:35:30,914 --> 00:35:33,245 ingekuwa tu moja kwa moja ripoti ya 0? 741 00:35:33,245 --> 00:35:34,120 MARIA ZLATKOVA: Naam. 742 00:35:34,120 --> 00:35:35,745 Ingekuwa kwenda kwa njia ya kila mmoja wa maadili. 743 00:35:35,745 --> 00:35:39,130 Watazamaji: [inaudible] kama 0 au ingekuwa kwamba tu kufanya 0? 744 00:35:39,130 --> 00:35:43,710 >> MARIA ZLATKOVA: Ingekuwa kusema kama dola ishara na kisha 745 00:35:43,710 --> 00:35:46,266 baadhi jina kutofautiana, thamani. 746 00:35:46,266 --> 00:35:47,182 Watazamaji: [inaudible]. 747 00:35:47,182 --> 00:35:50,048 748 00:35:50,048 --> 00:35:50,964 MARIA ZLATKOVA: Sorry? 749 00:35:50,964 --> 00:35:52,839 Watazamaji: Samahani, mimi nina tu kujaribu kukumbuka. 750 00:35:52,839 --> 00:35:57,190 Jinsi gani unaweza kufanya kwamba kama unaweza kufanya hivyo moja kwa moja Indexing ni 0 tu ya? 751 00:35:57,190 --> 00:36:00,780 >> MARIA ZLATKOVA: Hivyo ni jinsi gani unaweza kufanya hivyo kama wewe hawakuwa na majina maalum ufunguo? 752 00:36:00,780 --> 00:36:01,710 >> Watazamaji: Naam. 753 00:36:01,710 --> 00:36:07,820 >> MARIA ZLATKOVA: Wewe ingekuwa tu define-- tu kusema mwenyewe kama baadhi jina. 754 00:36:07,820 --> 00:36:17,950 Hivyo katika psets yako, nyie nguvu kumbuka foreach $ mstari kama $ safu, 755 00:36:17,950 --> 00:36:24,610 sisi aliumba wenyewe hii mstari $ akisema tunataka kwenda kupitia mfululizo kama $ safu. 756 00:36:24,610 --> 00:36:28,360 Hata kama hatukuwa na $ huu wazi safu inavyoelezwa, 757 00:36:28,360 --> 00:36:31,990 tunaweza tu kwenda na kusema hii inaweza kuwa muhimu zetu, 758 00:36:31,990 --> 00:36:33,615 na kwenda tu kwa njia ya kila ya maadili. 759 00:36:33,615 --> 00:36:37,295 760 00:36:37,295 --> 00:36:41,660 >> Watazamaji: Hivyo ni thamani kutofautiana mpya sisi ni kujenga kuhifadhi [inaudible]? 761 00:36:41,660 --> 00:36:46,820 762 00:36:46,820 --> 00:36:49,990 >> MARIA ZLATKOVA: Hivyo si asili kutofautiana mpya. 763 00:36:49,990 --> 00:37:00,310 Ni kutofautiana kwamba inahusu ndani ya safu ya kila mmoja wao. 764 00:37:00,310 --> 00:37:02,060 HANNAH BLUMBERG: Ni mpya kutofautiana jina. 765 00:37:02,060 --> 00:37:04,018 MARIA ZLATKOVA: Yeah, ni mpya jina kutofautiana ni, 766 00:37:04,018 --> 00:37:06,680 lakini siyo inherently-- yeah. 767 00:37:06,680 --> 00:37:08,950 Ni tu kutofautiana mpya kwamba unaweza kufanya hivyo. 768 00:37:08,950 --> 00:37:12,680 Hivyo tu jinsi gani tulivyofanya $ mstari kama $ safu, safu 769 00:37:12,680 --> 00:37:17,980 ilikuwa mpya jina kutofautiana kwamba sisi inaweza kujenga katika foreach yetu kitanzi. 770 00:37:17,980 --> 00:37:22,065 Haina kwa preexist kabla ya hapo. 771 00:37:22,065 --> 00:37:25,777 >> Watazamaji: Je, unaweza kwenda kwa njia ya mantiki kwa kila mmoja, kwa kutumia mfano huko? 772 00:37:25,777 --> 00:37:26,610 MARIA ZLATKOVA: Mhm. 773 00:37:26,610 --> 00:37:31,240 774 00:37:31,240 --> 00:37:32,080 Oh, pole. 775 00:37:32,080 --> 00:37:33,780 Hapa ni mfano. 776 00:37:33,780 --> 00:37:34,280 Uhakika. 777 00:37:34,280 --> 00:37:38,950 Hivyo kwa kila array-- hivyo hiyo ina maana kwenda safu hii 778 00:37:38,950 --> 00:37:43,930 kama ufunguo value-- ambayo inaenda kupitia safu hii 779 00:37:43,930 --> 00:37:49,480 na kwanza kwenda na kupata foo, foo muhimu na bar thamani. 780 00:37:49,480 --> 00:37:51,570 Na kisha juu ya pili iteration ya kwa kitanzi, 781 00:37:51,570 --> 00:37:55,090 itakuja kupitia na kuchukua bazi muhimu na thamani qux. 782 00:37:55,090 --> 00:38:00,512 Na kisha unaweza kufanya kitu kwa ama wao au wote wawili. 783 00:38:00,512 --> 00:38:03,488 >> Watazamaji: Hivyo wazo nyuma kuwa hatua muhimu kwa thamani, 784 00:38:03,488 --> 00:38:07,470 je, wewe kuishia kupata? 785 00:38:07,470 --> 00:38:10,680 >> MARIA ZLATKOVA: ni wazo gani ya kuwa akizungumzia muhimu kuthamini? 786 00:38:10,680 --> 00:38:16,400 Ni mwingine tu mkataba huo, mwingine njia ya kwenda kupitia safu 787 00:38:16,400 --> 00:38:22,600 na kuwa na uwezo wa kupata ama muhimu au thamani au wote wawili na matumizi yao. 788 00:38:22,600 --> 00:38:27,100 >> Watazamaji: Nini jukumu kwa kuamuru kwamba foreach anaendesha katika? 789 00:38:27,100 --> 00:38:29,250 Hivyo kama tulikuwa kuongeza mambo ya safu baadaye, 790 00:38:29,250 --> 00:38:32,140 ingekuwa wale kuwa ndio kwanza kuitwa katika foreach safu, 791 00:38:32,140 --> 00:38:33,750 au itakuwa ni baadaye? 792 00:38:33,750 --> 00:38:37,770 >> MARIA ZLATKOVA: Kwa hiyo kile ni Ili foreach 793 00:38:37,770 --> 00:38:39,210 kitanzi huenda kwa njia ya safu katika? 794 00:38:39,210 --> 00:38:42,220 Ni inakwenda kupitia kwanza kipengele kwa kipengele mwisho, 795 00:38:42,220 --> 00:38:43,400 kwa mwisho aliongeza kipengele. 796 00:38:43,400 --> 00:38:48,020 Ikiwa kuongeza vipengele baadaye, wangeweza kuwa accessed-- mambo ya kwanza ingekuwa 797 00:38:48,020 --> 00:38:51,410 kulipata kama kwanza mambo ya safu, 798 00:38:51,410 --> 00:38:57,620 na kisha wewe d kwenda kwa njia ya kila mmoja wa mambo kama aina ya ordered-- 799 00:38:57,620 --> 00:39:02,930 si amri, lakini njia hiyo wao wamekuwa kuweka katika safu. 800 00:39:02,930 --> 00:39:06,855 >> Watazamaji: Hivyo mambo mapya ni aliongeza baadaye? 801 00:39:06,855 --> 00:39:10,680 Hivyo wao ni added-- wao utakuwa ndio mwisho katika [? iteration. ?] 802 00:39:10,680 --> 00:39:14,280 >> MARIA ZLATKOVA: mambo New can-- kimsingi, wakati mambo mapya ni aliongeza, 803 00:39:14,280 --> 00:39:16,520 ni waliongeza hadi mwisho wa safu? 804 00:39:16,520 --> 00:39:17,632 >> Watazamaji: Naam. 805 00:39:17,632 --> 00:39:18,840 MARIA ZLATKOVA: Naamini hivyo. 806 00:39:18,840 --> 00:39:20,850 Ndiyo. 807 00:39:20,850 --> 00:39:24,330 Na kisha kwa foreach yako kitanzi, baada ya umefanya aliongeza mambo mapya 808 00:39:24,330 --> 00:39:26,790 na wewe kwenda kwa njia yao, mambo mapya ingekuwa 809 00:39:26,790 --> 00:39:30,930 kuwa accessed-- kipengele mpya, ikiwa ni aliongeza mwisho, ingekuwa kupatikana jana. 810 00:39:30,930 --> 00:39:34,416 >> Watazamaji: Je, unaweza tu kutoa mfano wa kitu ambacho ingekuwa [inaudible] 811 00:39:34,416 --> 00:39:37,404 na kitu na thamani kama [inaudible] au thamani, 812 00:39:37,404 --> 00:39:38,910 like jinsi wewe d muundo huo? 813 00:39:38,910 --> 00:39:39,785 >> MARIA ZLATKOVA: Ni kweli. 814 00:39:39,785 --> 00:39:42,340 815 00:39:42,340 --> 00:39:46,410 Naweza kutoa mfano wa kile tunataka kufanya na thamani? 816 00:39:46,410 --> 00:39:52,440 Kwa hiyo kile nyie inaweza kuwa na mazoea na ni kwamba tumeenda kupitia safu 817 00:39:52,440 --> 00:39:55,380 na kimsingi kuchapishwa kila moja ya mambo, 818 00:39:55,380 --> 00:40:00,910 Kwa mfano, kama sehemu ya kuamuru orodha au kitu hicho. 819 00:40:00,910 --> 00:40:02,674 Je, hiyo mantiki au kufanya tunataka to-- 820 00:40:02,674 --> 00:40:04,340 Watazamaji: Je, sisi magazeti maadili haya nje? 821 00:40:04,340 --> 00:40:13,220 MARIA ZLATKOVA: Yeah, tunaweza magazeti na kisha kimsingi $ thamani kwa sababu katika 822 00:40:13,220 --> 00:40:16,570 thamani hiyo maalum, tunataka kuwa uchapishaji thamani ndani yake. 823 00:40:16,570 --> 00:40:20,150 Hivyo kama sisi walikuwa katika iteration yetu ya kwanza yake na sisi kuchapishwa $ thamani, 824 00:40:20,150 --> 00:40:23,775 tunataka kuwa uchapishaji bar. 825 00:40:23,775 --> 00:40:27,020 >> Watazamaji: Je, kuna pia kwa mizunguko katika PHP au tu foreach matanzi? 826 00:40:27,020 --> 00:40:30,430 >> MARIA ZLATKOVA: Kuna pia kwa mizunguko katika PHP. 827 00:40:30,430 --> 00:40:33,399 Na mantiki yao ni zaidi ya sawa na nini tumekuwa kutumika. 828 00:40:33,399 --> 00:40:34,690 Watazamaji: Hivyo thamani yake ni batili. 829 00:40:34,690 --> 00:40:35,090 MARIA ZLATKOVA: Ni kama huo. 830 00:40:35,090 --> 00:40:35,590 Naam. 831 00:40:35,590 --> 00:40:37,747 Watazamaji: Mimi tu kwenda kuuliza. 832 00:40:37,747 --> 00:40:39,695 Hivyo wakati wewe kutangaza safu, huna haja 833 00:40:39,695 --> 00:40:42,617 kuwaambia kile kawaida ni kwenda kuwa, ambayo ina maana kwamba unaweza tu 834 00:40:42,617 --> 00:40:44,417 kuongeza na kuondoa vipengele [inaudible]. 835 00:40:44,417 --> 00:40:45,250 MARIA ZLATKOVA: Yup. 836 00:40:45,250 --> 00:40:45,750 Yup. 837 00:40:45,750 --> 00:40:46,251 Hasa. 838 00:40:46,251 --> 00:40:48,875 Wakati sisi kutangaza safu, sisi huna haja ya kusema kile kawaida ni, 839 00:40:48,875 --> 00:40:51,022 ili tuweze kuongeza tu vipengele kwenye hilo baadaye pia. 840 00:40:51,022 --> 00:40:55,075 841 00:40:55,075 --> 00:40:55,700 Maswali zaidi? 842 00:40:55,700 --> 00:40:59,870 843 00:40:59,870 --> 00:41:05,950 Hivyo kuleta PHP na HTML pamoja, nini sisi tumeona vema, 844 00:41:05,950 --> 00:41:15,130 Kwa mfano, katika mfano huu, tuna HTML fomu ambayo ina uwanja pembejeo. 845 00:41:15,130 --> 00:41:18,830 >> Na pembejeo shamba ni jina tu na basi ina Kuwasilisha kifungo. 846 00:41:18,830 --> 00:41:26,040 Na wakati waandishi Kuwasilisha kifungo, katika hello.php faili wetu, 847 00:41:26,040 --> 00:41:32,130 kwa sababu mbinu kwa ajili ya aina ni kupata, tunaweza kupata chochote ni katika jina 848 00:41:32,130 --> 00:41:40,360 na hii kupata kutofautiana kimataifa ambayo is-- syntax kwa kuwa ni $ _GET. 849 00:41:40,360 --> 00:41:44,520 Na kisha tunaweza kupata chochote user pembejeo ndani ya kwamba fomu kwa ajili ya jina 850 00:41:44,520 --> 00:41:47,410 na kubainisha jina la uwanja huo. 851 00:41:47,410 --> 00:41:51,480 852 00:41:51,480 --> 00:41:55,060 >> Maswali mengine yoyote au yoyote maswali juu ya mfano huu maalum? 853 00:41:55,060 --> 00:41:58,275 >> Watazamaji: wapi PHP? 854 00:41:58,275 --> 00:41:59,150 MARIA ZLATKOVA: Hapa. 855 00:41:59,150 --> 00:42:01,150 Hivyo hii ni ufunguzi tag wetu kwa PHP. 856 00:42:01,150 --> 00:42:01,530 >> Watazamaji: Oh, haki. 857 00:42:01,530 --> 00:42:02,363 >> MARIA ZLATKOVA: Ndiyo. 858 00:42:02,363 --> 00:42:05,320 859 00:42:05,320 --> 00:42:09,609 >> HANNAH BLUMBERG:? = Ni shorthand maana hayo ni PHP na tu echo. 860 00:42:09,609 --> 00:42:10,150 Watazamaji: Oh. 861 00:42:10,150 --> 00:42:10,720 MARIA ZLATKOVA: Yeah, sorry. 862 00:42:10,720 --> 00:42:12,040 Mimi ni lazima kuwa alionyesha hilo wazi. 863 00:42:12,040 --> 00:42:13,759 >> HANNAH BLUMBERG: Magazeti. 864 00:42:13,759 --> 00:42:16,800 MARIA ZLATKOVA: Ni tu kazi ambayo inaruhusu sisi magazeti kitu. 865 00:42:16,800 --> 00:42:19,795 866 00:42:19,795 --> 00:42:20,420 Mkuu swali. 867 00:42:20,420 --> 00:42:24,140 868 00:42:24,140 --> 00:42:25,495 Hivyo going-- ndiyo. 869 00:42:25,495 --> 00:42:31,940 >> Watazamaji: Je, kuna kwenda kuwa kabisa kidogo ya mkono coding ya PHP na HTML 870 00:42:31,940 --> 00:42:33,450 juu ya jaribio 1? 871 00:42:33,450 --> 00:42:36,310 872 00:42:36,310 --> 00:42:38,810 MARIA ZLATKOVA: Kuna kuwa haki kiasi cha tafsiri 873 00:42:38,810 --> 00:42:43,330 ya PHP na HTML, si lazima kama kiasi kikubwa cha coding, 874 00:42:43,330 --> 00:42:46,960 ingawa unaweza kuwa na kuandika foreach kitanzi, ingawa, a kwa kitanzi. 875 00:42:46,960 --> 00:42:49,790 Yoyote ya mizunguko kwamba sisi kufunika hapa ni haki mchezo. 876 00:42:49,790 --> 00:42:51,889 Na hiyo ndiyo hasa hilo. 877 00:42:51,889 --> 00:42:53,430 HANNAH BLUMBERG: Napenda kuwa tayari. 878 00:42:53,430 --> 00:42:57,010 Katika njia sawa kwamba sisi aliuliza wewe kuandika rundo la kazi C juu ya jaribio 0, 879 00:42:57,010 --> 00:42:59,766 Napenda kuwa tayari kufanya sawa katika PHP na JavaScript. 880 00:42:59,766 --> 00:43:00,640 MARIA ZLATKOVA: Naam. 881 00:43:00,640 --> 00:43:03,210 HANNAH BLUMBERG: Naweza kusema a little-- kama sisi siyo 882 00:43:03,210 --> 00:43:06,251 kwenda kufanya wewe kuandika HTML mkubwa ukurasa sababu tu kwamba kidogo kidogo 883 00:43:06,251 --> 00:43:08,240 nyeti, lakini unaweza kuwa na sehemu. 884 00:43:08,240 --> 00:43:09,310 Hiyo ni haki kabisa mchezo. 885 00:43:09,310 --> 00:43:11,082 Kama dogo HTML ukurasa, kabisa haki. 886 00:43:11,082 --> 00:43:11,623 Watazamaji: Sawa. 887 00:43:11,623 --> 00:43:13,814 Vipi kuhusu katika JavaScript vile vile? 888 00:43:13,814 --> 00:43:14,730 HANNAH BLUMBERG: Naam. 889 00:43:14,730 --> 00:43:15,250 JavaScript wa haki mchezo. 890 00:43:15,250 --> 00:43:15,635 >> MARIA ZLATKOVA: Naam. 891 00:43:15,635 --> 00:43:16,801 Hiyo ni haki kabisa mchezo. 892 00:43:16,801 --> 00:43:19,280 HANNAH BLUMBERG: Tutaweza kupata kwa kuwa katika kama dakika 10. 893 00:43:19,280 --> 00:43:23,750 >> MARIA ZLATKOVA: SQL, tena, Uliza muundo lugha. 894 00:43:23,750 --> 00:43:28,651 Ni kimsingi inaruhusu sisi kusimamia data katika kimahusiano database usimamizi 895 00:43:28,651 --> 00:43:29,150 mfumo. 896 00:43:29,150 --> 00:43:31,149 Kwamba tu kimsingi ina maana kwamba tuna mahali fulani 897 00:43:31,149 --> 00:43:37,980 kuhifadhi baadhi ya data kwamba sisi kutaka kutumia katika tovuti au katika aina nyingine. 898 00:43:37,980 --> 00:43:42,190 Na kisha tuna maswali ili kupata habari kutoka database yetu, 899 00:43:42,190 --> 00:43:44,320 au kuingiza maelezo katika wao. 900 00:43:44,320 --> 00:43:47,560 Mengi ya kawaida ones-- UPDATE, Insert, SELECT, na kufuta. 901 00:43:47,560 --> 00:43:50,790 >> Hivyo kwa UPDATE, hii ni syntax kwa kuongezea data katika database. 902 00:43:50,790 --> 00:43:53,330 903 00:43:53,330 --> 00:43:57,340 Kuhuisha meza hii inaitwa meza kwa kusema SET, 904 00:43:57,340 --> 00:44:04,170 tunaweza kuweka baadhi maadili katika yote safu ya kitu kingine chochote sawa. 905 00:44:04,170 --> 00:44:09,410 Ili tuweze pia kutaja baadhi maalum viingilio kwamba tunataka kurekebisha 906 00:44:09,410 --> 00:44:11,240 na kwamba wanaweza kuwa kutumia WAPI. 907 00:44:11,240 --> 00:44:16,380 Na tunaweza bayana kwamba sisi tu wanataka kurekebisha baadhi ya mistari ambapo nyumba kwa, 908 00:44:16,380 --> 00:44:19,830 kama tulikuwa na meza ya wanafunzi na wanafunzi wote alikuwa na nyumba, 909 00:44:19,830 --> 00:44:24,890 hivyo tunataka tu kurekebisha baadhi maadili ambapo nyumba ni sawa na Currier, 910 00:44:24,890 --> 00:44:25,430 kwa mfano. 911 00:44:25,430 --> 00:44:29,120 912 00:44:29,120 --> 00:44:31,800 >> Kwa kuingiza, tunaweza kuingiza maadili fulani katika meza. 913 00:44:31,800 --> 00:44:35,150 Hivyo Kuingiza ndani ya meza, na kisha maadili, 914 00:44:35,150 --> 00:44:39,080 na kisha katika mabano, sisi kutaja ambayo maadili unataka kuingiza. 915 00:44:39,080 --> 00:44:43,220 Hivyo Kuingiza ndani ya meza, col1 na col2, thamani ya kitu val1 na val2. 916 00:44:43,220 --> 00:44:48,930 Hivyo hii kuwekeza kimsingi mstari mpya katika meza zenye maadili ya 1 na 2 917 00:44:48,930 --> 00:44:50,850 chini ya nguzo ya 1 na 2. 918 00:44:50,850 --> 00:44:54,760 >> Na kisha tunakwenda kwenda juu mfano wa haraka wa jinsi hii inaonekana 919 00:44:54,760 --> 00:44:56,310 kama katika database yetu kidogo. 920 00:44:56,310 --> 00:44:58,685 Lakini swala hii ya mwisho kwamba mimi kufikiri tunakwenda kwenda juu, 921 00:44:58,685 --> 00:45:01,450 SELECT, ni tu inaruhusu sisi kuchagua data kutoka meza 922 00:45:01,450 --> 00:45:03,080 kwa uwezekano wa matumizi yake baadaye. 923 00:45:03,080 --> 00:45:05,830 Na njia ya sisi kufanya hivyo ni sisi tu kuhifadhi katika baadhi kutofautiana. 924 00:45:05,830 --> 00:45:07,780 Na kisha tunaweza uwezekano kuitumia tena. 925 00:45:07,780 --> 00:45:10,260 >> Hivyo SELECT nyota ina maana kuchagua wote. 926 00:45:10,260 --> 00:45:13,280 Hiyo tu shorthand kwa ajili ya kuchagua wote. 927 00:45:13,280 --> 00:45:19,760 KUTOKA meza WAPI, sisi ni kuangalia kwa baadhi ya masharti maalum, 928 00:45:19,760 --> 00:45:22,290 hivyo ambapo safu sawa na kitu, kwa mfano. 929 00:45:22,290 --> 00:45:24,410 Kama sisi tu alitaka kuchagua wote kutoka meza, 930 00:45:24,410 --> 00:45:28,400 hii huchagua tu nguzo zote na safu yote kwenye meza. 931 00:45:28,400 --> 00:45:32,040 >> Na kisha kufuta kutoka meza WAPI Kanali sawa na kitu, 932 00:45:32,040 --> 00:45:36,440 hii deletes tu baadhi mstari kutoka meza yetu 933 00:45:36,440 --> 00:45:38,860 ambapo tuna baadhi ya masharti maalum. 934 00:45:38,860 --> 00:45:41,870 Katika kesi hiyo, hali ni safu sawa na kitu. 935 00:45:41,870 --> 00:45:43,460 Hivyo tu mfano wa haraka wa hii. 936 00:45:43,460 --> 00:45:49,100 Kama tuna meza hii hapa hapa na sisi kuingiza ndani ya meza, maadili haya, 937 00:45:49,100 --> 00:45:50,400 ambayo ingeweza kuingiza safu mpya. 938 00:45:50,400 --> 00:45:56,380 Na kama tulikuwa na auto-increment, hii ingekuwa tu increment ID wetu 0-1 kwa 2. 939 00:45:56,380 --> 00:46:00,010 >> Kama sisi kuchaguliwa zote kutoka kwa wanafunzi, ni tu anarudi nyanja zote na safu yote. 940 00:46:00,010 --> 00:46:02,430 Ambapo mwaka ni mkubwa kuliko au sawa na 2016, 941 00:46:02,430 --> 00:46:04,390 ambayo ingeweza tu kurudi Hana na mimi mwenyewe. 942 00:46:04,390 --> 00:46:08,360 Na kisha kama sisi tu kuchaguliwa id mwaka na mwaka KUTOKA wanafunzi 943 00:46:08,360 --> 00:46:11,710 ambapo nyumba ni Cabot House, kwamba ingekuwa, tena, kurudi Hana na mimi mwenyewe. 944 00:46:11,710 --> 00:46:14,430 >> Kisha kama sisi kufutwa kutoka wanafunzi ambapo jina ni sawa na Rob, 945 00:46:14,430 --> 00:46:16,760 ambayo ingeweza kufuta mstari mzima. 946 00:46:16,760 --> 00:46:19,696 Na kisha kama sisi kuweka jina, UPDATE wanafunzi 947 00:46:19,696 --> 00:46:21,570 SET jina sawa na Daven WAPI nyumba ni sawa 948 00:46:21,570 --> 00:46:27,010 Cabot House, ambayo inaenda kwenda safu hizo na kisha update jina. 949 00:46:27,010 --> 00:46:31,470 >> Na kisha chache aina SQL data CHAR, VARCHAR, INT, na kuelea. 950 00:46:31,470 --> 00:46:32,760 Hizi ni haki mchezo. 951 00:46:32,760 --> 00:46:36,740 Napenda kwenda tena na kuhakikisha kujua 952 00:46:36,740 --> 00:46:40,930 na kuwa nao juu ya kudanganya karatasi yako, nini kila mmoja wa wahusika wale 953 00:46:40,930 --> 00:46:44,140 zimetumika kwa nini wewe kutumika yao juu ya psets yako, 954 00:46:44,140 --> 00:46:48,050 na kuhakikisha wewe ni ukoo na starehe na kuwa na kuchagua 955 00:46:48,050 --> 00:46:51,450 aina tofauti ya data katika pset yako. 956 00:46:51,450 --> 00:46:51,950 Ndiyo. 957 00:46:51,950 --> 00:46:54,300 >> Watazamaji: Je, ilikuwa meza kwamba kuhifadhiwa? 958 00:46:54,300 --> 00:46:57,119 Yeah, ambapo ni meza hii kuhifadhiwa? 959 00:46:57,119 --> 00:46:59,160 MARIA ZLATKOVA: Naam, sasa hivi, siyo kuhifadhiwa. 960 00:46:59,160 --> 00:47:00,700 Hata hivyo, ambapo ni meza hii kuhifadhiwa? 961 00:47:00,700 --> 00:47:04,503 Lakini inaweza kuhifadhiwa katika database SQL. 962 00:47:04,503 --> 00:47:07,330 >> Watazamaji: Na ambapo ni SQL database? 963 00:47:07,330 --> 00:47:11,200 Katika kompyuta, online mahali fulani, server? 964 00:47:11,200 --> 00:47:15,000 >> MARIA ZLATKOVA: Ni inaweza kuwa idadi ya mambo mbalimbali. 965 00:47:15,000 --> 00:47:19,690 >> HANNAH BLUMBERG: Tumekuwa interfaced na Meza SQL wengi wao wakiwa na phpMyAdmin. 966 00:47:19,690 --> 00:47:22,060 Hivyo tunaweza kuuliza server kuvihifadhi kwa ajili yetu. 967 00:47:22,060 --> 00:47:23,830 Tunaweza kuhifadhi yao kwenye kompyuta yetu wenyewe. 968 00:47:23,830 --> 00:47:27,950 >> MARIA ZLATKOVA: Ni inategemea tu jinsi gani unataka kufanya hivyo mwenyewe. 969 00:47:27,950 --> 00:47:30,075 Lakini tumekuwa kuhifadhi yao, kama Hana zilizotajwa, 970 00:47:30,075 --> 00:47:31,755 juu ya phpMyAdmin, ambayo ni online. 971 00:47:31,755 --> 00:47:36,550 972 00:47:36,550 --> 00:47:39,280 Na kisha jinsi tunavyotumia PHP na SQL, sisi kuhifadhi 973 00:47:39,280 --> 00:47:43,450 ndani ya baadhi ya kutofautiana nini tumekuwa aliuliza kwa. 974 00:47:43,450 --> 00:47:48,370 >> Hivyo kama sisi CHAGUA zote kutoka historia ambapo USER_ID sawa na KIPINDI id, 975 00:47:48,370 --> 00:47:53,900 ambayo ingeweza kuchagua safu zote kwa mtu ambaye maalum 976 00:47:53,900 --> 00:47:58,327 ni watumiaji katika kutokana na historia meza na aina yao katika safu. 977 00:47:58,327 --> 00:48:00,410 Jambo zuri kujua ni kwamba CS50 swala kazi 978 00:48:00,410 --> 00:48:02,180 kulinda dhidi ya vitambulisho SQL sindano. 979 00:48:02,180 --> 00:48:07,420 Hiyo ina maana tu kwamba inafanya kuhakikisha pembejeo kwamba ni aliingia ni sahihi 980 00:48:07,420 --> 00:48:09,920 na kwamba mtu ambaye ni kuingia pembejeo 981 00:48:09,920 --> 00:48:15,100 si kujaribu pembejeo baadhi makusudi kificho kwa ama kuacha meza yetu 982 00:48:15,100 --> 00:48:17,305 au kufuta kila kitu ndani ya database yetu. 983 00:48:17,305 --> 00:48:20,060 984 00:48:20,060 --> 00:48:23,400 >> Maelezo ya haraka ya Mfano View Mdhibiti mfano, 985 00:48:23,400 --> 00:48:27,360 ni njia tu ya kuandaa na kufikiri kuhusu kanuni. 986 00:48:27,360 --> 00:48:29,100 Ni tena, kubuni dhana. 987 00:48:29,100 --> 00:48:33,380 Nini maana ni kwamba sisi can-- na ni mazoezi mazuri 988 00:48:33,380 --> 00:48:37,790 kutenganisha sehemu mbalimbali wa kanuni zetu na wanayo 989 00:48:37,790 --> 00:48:40,530 kudhibiti ndani ya mitizamo hayo matatu. 990 00:48:40,530 --> 00:48:46,700 >> Hivyo mtazamo wetu ni mara nyingi wetu templates, kwa mpangilio yetu, njia 991 00:48:46,700 --> 00:48:48,260 kwamba sisi kuweka jinsi kificho yetu inaonekana. 992 00:48:48,260 --> 00:48:55,190 Hiyo ni zaidi mafaili yetu CSS na njia kwamba sisi kuelezwa mpango wa kanuni zetu, 993 00:48:55,190 --> 00:48:55,710 kimsingi. 994 00:48:55,710 --> 00:48:59,280 Mtawala wetu ni zaidi ya kile tumekuwa kufanya na PHP mafaili. 995 00:48:59,280 --> 00:49:03,030 Hivyo tena, kufanya kazi na habari kwamba tuna 996 00:49:03,030 --> 00:49:06,700 na kufafanua jinsi habari ni kutumika, 997 00:49:06,700 --> 00:49:10,660 na kisha kupita maelezo kwamba ama kwenye mtazamo au mfano wa kuigwa. 998 00:49:10,660 --> 00:49:13,880 Na mfano wa kuigwa, kwa njia hiyo tumekuwa wamekuwa wakitumia ipo imekuwa database yetu, 999 00:49:13,880 --> 00:49:17,510 hivyo ambapo habari wetu ni kuhifadhiwa hivyo ina mahali fulani 1000 00:49:17,510 --> 00:49:21,490 kuishi katika, na yoyote ya kificho kwamba inahusiana na njia 1001 00:49:21,490 --> 00:49:25,410 kwamba tunapata kwamba maelezo au njia ambayo sisi update habari hiyo. 1002 00:49:25,410 --> 00:49:28,940 1003 00:49:28,940 --> 00:49:33,200 >> Hivyo katika mfano MVC, HTTP maombi waliotumwa mtandao wa kompyuta. 1004 00:49:33,200 --> 00:49:36,220 Kisha, mtawala kutafsiri ombi kutoka kwa mtumiaji 1005 00:49:36,220 --> 00:49:38,260 na kisha linatambulisha pembejeo mtumiaji. 1006 00:49:38,260 --> 00:49:41,580 Ni hiari kwamba tuna mtawala kuwasiliana 1007 00:49:41,580 --> 00:49:44,000 kwa mfano, ili kitu kama database yetu 1008 00:49:44,000 --> 00:49:47,500 au baadhi ya utendaji mwingine kwamba RELAYS habari. 1009 00:49:47,500 --> 00:49:50,340 Na kisha hatimaye, mtawala hupita maelezo kwenye mtazamo 1010 00:49:50,340 --> 00:49:52,090 ili iweze kuwa kulipwa na kwamba inaweza 1011 00:49:52,090 --> 00:49:55,860 kuwa wazi kwa mtu yeyote kupata ukurasa wa mtandao. 1012 00:49:55,860 --> 00:49:58,440 1013 00:49:58,440 --> 00:50:01,340 >> Maswali yoyote? 1014 00:50:01,340 --> 00:50:01,840 Kutisha. 1015 00:50:01,840 --> 00:50:04,530 1016 00:50:04,530 --> 00:50:08,469 Hivyo tena, mfano, kazi yake, tena, 1017 00:50:08,469 --> 00:50:11,260 ni kuendelea hifadhi ya taarifa, kusimamia na kuandaa data. 1018 00:50:11,260 --> 00:50:13,890 Na kile tumeona hivyo mbali ni database MySQL 1019 00:50:13,890 --> 00:50:16,200 na mafaili yoyote data ambayo inaweza kutumia. 1020 00:50:16,200 --> 00:50:20,580 >> View, uwasilishaji wa taarifa kwa user, UI, au user interface. 1021 00:50:20,580 --> 00:50:22,350 Na Mfano wa hili ni HTML. 1022 00:50:22,350 --> 00:50:23,950 Na kisha tupate kuwa na PHP ndogo. 1023 00:50:23,950 --> 00:50:28,360 Hivyo kwa kitanzi kwamba iterates zaidi ya takwimu ambazo ni kuchapishwa 1024 00:50:28,360 --> 00:50:30,720 ni sehemu ya maoni, kama kinyume na mtawala. 1025 00:50:30,720 --> 00:50:35,660 Na kisha mengi ya mafaili yetu PHP kuanguka katika mtawala jamii. 1026 00:50:35,660 --> 00:50:38,410 Ni tu Hushughulikia maombi user na anapata habari kutoka mfano wa kuigwa. 1027 00:50:38,410 --> 00:50:42,880 1028 00:50:42,880 --> 00:50:45,590 >> Kuruka ndani Document Kitu Mfano, hii tu 1029 00:50:45,590 --> 00:50:47,700 inahusu njia HTML hati ni kupangwa. 1030 00:50:47,700 --> 00:50:51,600 Na wao ni kupangwa katika mti muundo ambayo ina uongozi. 1031 00:50:51,600 --> 00:50:56,720 Hivyo kama sisi kupata [inaudible] uwakilishi wa hati, 1032 00:50:56,720 --> 00:51:02,750 tunaweza kufanya kazi na hati, kama sisi kuendesha vitu kimsingi. 1033 00:51:02,750 --> 00:51:06,630 >> Na kufanya a huu wazi kidogo kidogo, wakati 1034 00:51:06,630 --> 00:51:10,540 tuna mengi ya yetu vitambulisho tofauti kujibu 1035 00:51:10,540 --> 00:51:12,590 kwa njia tofauti tofauti katika mti wetu. 1036 00:51:12,590 --> 00:51:17,070 Na kisha kwa mfano huu, sisi na kuanzia hati nodi. 1037 00:51:17,070 --> 00:51:20,010 Tuna, basi, yetu HTML nodi kuwa kugawanyika katika kichwa na mwili. 1038 00:51:20,010 --> 00:51:22,810 Kichwa ina jina na kisha kichwa ina hello, ulimwengu. 1039 00:51:22,810 --> 00:51:24,860 Na mwili wetu tu ina hello, dunia pia. 1040 00:51:24,860 --> 00:51:28,700 1041 00:51:28,700 --> 00:51:31,900 >> Hivyo maswali yoyote juu ya yoyote ya mambo ambayo sisi kufunikwa hadi sasa? 1042 00:51:31,900 --> 00:51:35,891 Na kama sio, Hana mapenzi kuchukua na JavaScript. 1043 00:51:35,891 --> 00:51:36,390 Kutisha. 1044 00:51:36,390 --> 00:51:37,473 >> HANNAH BLUMBERG: Sawa, baridi. 1045 00:51:37,473 --> 00:51:40,980 Kama kitu anakuja na PHP au HTML, au yoyote ya mambo Maria kufunikwa, 1046 00:51:40,980 --> 00:51:42,700 sisi daima wanaweza kupima. 1047 00:51:42,700 --> 00:51:46,430 Sisi ni kufanya vizuri zaidi juu ya muda tena, hivyo kushangaza. 1048 00:51:46,430 --> 00:51:48,770 Na tu kurudi kweli haraka na hayo, 1049 00:51:48,770 --> 00:51:51,010 kama ukiangalia kila mtihani mwaka uliopita, hili 1050 00:51:51,010 --> 00:51:54,120 anakuja juu either-- hapa ni baadhi HTML, kufanya mchoro huu. 1051 00:51:54,120 --> 00:51:58,380 Au hapa ni mchoro huu, kufanya baadhi ya HTML, hivyo dhahiri kwamba mazoezi. 1052 00:51:58,380 --> 00:52:01,500 Na kisha hiyo ni moja uhakika swali kwamba unaweza kupata haki. 1053 00:52:01,500 --> 00:52:02,000 Baridi. 1054 00:52:02,000 --> 00:52:04,510 Basi hebu majadiliano juu JavaScript na jinsi ni kidogo 1055 00:52:04,510 --> 00:52:09,130 tofauti na lugha kama PHP na C, lugha mbili tuliona kabla ya wakati. 1056 00:52:09,130 --> 00:52:10,780 Hivyo namba moja, ni loosely typed. 1057 00:52:10,780 --> 00:52:14,630 Hiyo ni kama PHP, lakini tofauti na C. 1058 00:52:14,630 --> 00:52:15,890 >> Ni lugha kufasiriwa. 1059 00:52:15,890 --> 00:52:19,870 Tena, hiyo ni kama PHP, tofauti na C. Na hii 1060 00:52:19,870 --> 00:52:24,630 ni kwenda kuruhusu sisi use-- ni kazi kweli nicely kwa kurasa za mtandao. 1061 00:52:24,630 --> 00:52:28,350 Ni kwenda kuruhusu sisi kuendesha maudhui na jinsi inaonekana 1062 00:52:28,350 --> 00:52:30,300 na kile yake. 1063 00:52:30,300 --> 00:52:32,330 >> Tunakwenda kuona kidogo ya Ajax. 1064 00:52:32,330 --> 00:52:36,140 Ni inaruhusu sisi kuwasiliana asynchronously na seva tofauti 1065 00:52:36,140 --> 00:52:37,950 na kupata taarifa. 1066 00:52:37,950 --> 00:52:42,820 Na hili ni jambo kwamba kweli hutenganisha JavaScript na PHP na C 1067 00:52:42,820 --> 00:52:45,590 ni kwamba ni mteja upande. 1068 00:52:45,590 --> 00:52:49,860 Wote PHP na C ni kawaida server-upande. 1069 00:52:49,860 --> 00:52:51,960 >> Kwa sehemu kubwa na karibu kabisa kile 1070 00:52:51,960 --> 00:52:53,900 tumeona, angalau katika darasa hili, JavaScript 1071 00:52:53,900 --> 00:52:57,040 vitendo juu ya mteja upande, ambayo ina maana kwamba browser ni kweli 1072 00:52:57,040 --> 00:52:58,597 jukumu la kuendesha hiyo. 1073 00:52:58,597 --> 00:53:01,180 Na hiyo ina maana kwamba hatuna haja ya kiutendaji na kompyuta. 1074 00:53:01,180 --> 00:53:04,380 Hivyo ina maana inaweza kuwa mengi kwa kasi kwa sababu ni kweli tu ni Chrome, 1075 00:53:04,380 --> 00:53:10,420 ni Safari, ni Firefox, chochote kutumia kweli mbio wako JavaScript. 1076 00:53:10,420 --> 00:53:12,290 >> Watazamaji: Je Asynchronous maana gani? 1077 00:53:12,290 --> 00:53:13,620 >> HANNAH BLUMBERG: Ah, nini haina asynchronously maana gani? 1078 00:53:13,620 --> 00:53:14,250 Mkuu swali. 1079 00:53:14,250 --> 00:53:17,890 Asynchronously means-- vizuri, maudhui ambayo 1080 00:53:17,890 --> 00:53:22,140 tunatumia ni, sawa, sisi ni kujenga mtandao 1081 00:53:22,140 --> 00:53:23,860 na tunahitaji kupata baadhi ya taarifa. 1082 00:53:23,860 --> 00:53:28,250 Hivyo, pamoja na mfano wa mashup, baadhi ya taarifa kwamba sisi kutaka 1083 00:53:28,250 --> 00:53:30,580 ni majina ya makala. 1084 00:53:30,580 --> 00:53:33,330 Sasa, sisi could-- chaguo moja ni kufanya hivyo synchronously 1085 00:53:33,330 --> 00:53:37,940 na hiyo ina maana hebu kuacha, kwenda kupata makala, 1086 00:53:37,940 --> 00:53:41,275 kupata makala nyuma, na kisha atatoa, lakini kwamba itakuwa kweli polepole. 1087 00:53:41,275 --> 00:53:44,150 Hiyo itakuwa mbaya user uzoefu kwa sababu wewe ingekuwa tu kuwa wamekaa 1088 00:53:44,150 --> 00:53:46,630 kuna kusubiri kwa kitu cha kujibu. 1089 00:53:46,630 --> 00:53:50,020 >> Asynchronously ina maana tutaweza kuendelea kwenda kuhusu biashara yetu, 1090 00:53:50,020 --> 00:53:52,529 utoaji ukurasa, na tutaweza kutuma mbali ombi 1091 00:53:52,529 --> 00:53:54,570 hiyo ni aina ya kwenda kutokea kwa nyuma. 1092 00:53:54,570 --> 00:53:57,610 Nadhani sisi kutumia mfano katika hotuba ya wito Rob na kusema, 1093 00:53:57,610 --> 00:53:59,980 hey, unaweza ukiangalia hii up kwa ajili yangu na kupata nyuma yangu, 1094 00:53:59,980 --> 00:54:02,870 kinyume na mimi tu kusubiri juu ya simu. 1095 00:54:02,870 --> 00:54:07,020 Hivyo asynchronously ina maana yanapotokea kwa nyuma mbali na sisi 1096 00:54:07,020 --> 00:54:08,676 katika sambamba. 1097 00:54:08,676 --> 00:54:10,400 >> Mkuu swali. 1098 00:54:10,400 --> 00:54:11,830 Kitu kingine? 1099 00:54:11,830 --> 00:54:12,330 Kubwa. 1100 00:54:12,330 --> 00:54:15,020 Tutaweza kuruka mengi zaidi katika maombi Asynchronous na Ajax. 1101 00:54:15,020 --> 00:54:18,287 >> Watazamaji: Je, JavaScript-- wapi hivyo kuanguka kwa mfano-mtazamo-mtawala? 1102 00:54:18,287 --> 00:54:19,620 HANNAH BLUMBERG: Mkuu swali. 1103 00:54:19,620 --> 00:54:23,320 Wapi JavaScript kuanguka kwa mfano-mtazamo-mtawala? 1104 00:54:23,320 --> 00:54:23,930 Hm. 1105 00:54:23,930 --> 00:54:28,350 Nadhani inaweza fall-- hivyo hatuna kawaida 1106 00:54:28,350 --> 00:54:31,340 kama squish ndani kwamba dhana, lakini mimi nadhani naweza kusema, 1107 00:54:31,340 --> 00:54:34,280 OK, hivyo JavaScript kweli ni kwenda kuruhusu 1108 00:54:34,280 --> 00:54:37,587 sisi kukusanya takwimu, kutafsiri data, kweli kufanya 1109 00:54:37,587 --> 00:54:38,920 mambo ya maana na data. 1110 00:54:38,920 --> 00:54:41,100 Kwa njia hiyo, ni sana kudhibiti-kama. 1111 00:54:41,100 --> 00:54:43,900 >> Lakini pia ni kwenda kuruhusu sisi kuonyesha mambo na magazeti mambo. 1112 00:54:43,900 --> 00:54:47,021 Kwa njia hiyo, ni sana mtazamo-kama. 1113 00:54:47,021 --> 00:54:47,520 Naam. 1114 00:54:47,520 --> 00:54:51,710 Hivyo ni aina ya kama PHP katika ambapo inaweza aina ya kuwa wote. 1115 00:54:51,710 --> 00:54:53,330 Nzuri swali. 1116 00:54:53,330 --> 00:54:55,209 Kitu kingine? 1117 00:54:55,209 --> 00:54:56,000 Haki wote, kutisha. 1118 00:54:56,000 --> 00:54:57,120 Kusonga haki pamoja. 1119 00:54:57,120 --> 00:54:59,110 >> Basi hebu angalia mfano jinsi tunaweza kutumia 1120 00:54:59,110 --> 00:55:02,250 JavaScript katika moja ya mtandao mipango yetu. 1121 00:55:02,250 --> 00:55:05,680 Hivyo mimi itabidi kufikiria hili index.html pamoja na kundi la HTML. 1122 00:55:05,680 --> 00:55:08,800 Na jambo nataka wewe kuzingatia ni tag hii script. 1123 00:55:08,800 --> 00:55:13,280 Na hii anasema, sawa, nataka kukimbia baadhi JavaScript na hapa ni mahali ambapo anaishi. 1124 00:55:13,280 --> 00:55:15,400 Ni maisha katika hello.js. 1125 00:55:15,400 --> 00:55:21,120 >> Na mengi sana kama CSS, tunaweza kuweka JavaScript ndani ya HTML. 1126 00:55:21,120 --> 00:55:24,000 Kwa nini huenda tunataka tofauti kumtoa? 1127 00:55:24,000 --> 00:55:24,500 Naam. 1128 00:55:24,500 --> 00:55:25,486 >> Watazamaji: rahisi kuandika upya? 1129 00:55:25,486 --> 00:55:26,402 >> HANNAH BLUMBERG: Naam. 1130 00:55:26,402 --> 00:55:28,450 Ni rahisi kutumia hela kurasa za mtandao tofauti. 1131 00:55:28,450 --> 00:55:29,980 Ni anaendelea mambo safi. 1132 00:55:29,980 --> 00:55:32,090 Ni tu mazoezi mazuri. 1133 00:55:32,090 --> 00:55:32,590 Kutisha. 1134 00:55:32,590 --> 00:55:33,930 Jibu nzuri. 1135 00:55:33,930 --> 00:55:36,690 Hivyo nzuri, hivyo hii ni kwenda kuwa index.html yetu. 1136 00:55:36,690 --> 00:55:39,430 Na kisha chini hapa ni wetu kidogo kidogo JavaScript file. 1137 00:55:39,430 --> 00:55:42,410 >> Na wote ni anasema ni tahadhari Habari, dunia. 1138 00:55:42,410 --> 00:55:46,040 Hivyo kile kinachotokea ni wakati hii renders-- ukurasa 1139 00:55:46,040 --> 00:55:49,680 hivyo kama wewe kwenda kwenye tovuti yoyote hii is-- yote kitatokea 1140 00:55:49,680 --> 00:55:53,330 je, ni kwenda kusema, OK, mimi nina kwenda kukimbia hii code JavaScript. 1141 00:55:53,330 --> 00:55:56,370 Na hii kanuni JavaScript tu anasema tahadhari Habari, dunia. 1142 00:55:56,370 --> 00:55:59,090 Hivyo nina kwenda kupata hii kirafiki kidogo pop-up. 1143 00:55:59,090 --> 00:56:00,360 >> Baridi? 1144 00:56:00,360 --> 00:56:04,746 Hiyo ni aina ya kama yetu sana kwanza JavaScript mpango, Habari wetu, dunia. 1145 00:56:04,746 --> 00:56:07,690 1146 00:56:07,690 --> 00:56:12,190 Hebu tuangalie kidogo zaidi kuhusu nini syntax ya JavaScript inaonekana kama. 1147 00:56:12,190 --> 00:56:16,330 Na hasa, hebu kulinganisha kwa C na PHP, ambayo tumeona kabla. 1148 00:56:16,330 --> 00:56:20,610 >> Katika JavaScript, tunakwenda na var, jina la kutofautiana, na kisha 1149 00:56:20,610 --> 00:56:21,690 thamani yake halisi. 1150 00:56:21,690 --> 00:56:26,170 Na hatuna kutaja aina, tu kama katika PHP, lakini sana tofauti na katika C. 1151 00:56:26,170 --> 00:56:28,850 Hivyo kwa mfano, kama sisi alitaka kuhifadhi thamani 50, 1152 00:56:28,850 --> 00:56:32,490 katika C, tunataka kuwa na kusema, hey, C, nataka integer, 1153 00:56:32,490 --> 00:56:35,076 Mimi nina kwenda kuiita i, na thamani yake ni 50. 1154 00:56:35,076 --> 00:56:36,450 Katika PHP, ni rahisi kidogo. 1155 00:56:36,450 --> 00:56:41,880 Sisi tunasema, hey, nataka kutofautiana kuitwa i na thamani yake ni 50. 1156 00:56:41,880 --> 00:56:45,890 Sana vile vile, katika JavaScript, sisi kusema hey, nataka variable kuitwa i, 1157 00:56:45,890 --> 00:56:47,080 thamani yake ni 50. 1158 00:56:47,080 --> 00:56:52,140 Kila wakati baadae kwamba mimi kutumia i, mimi hawana haja ya kuandika var. 1159 00:56:52,140 --> 00:56:53,810 Ni tu i kutoka kwamba uhakika juu. 1160 00:56:53,810 --> 00:56:58,660 Kwa njia hiyo hiyo, katika C, ambapo mara moja tunasema int i, sisi tu kutumia i. 1161 00:56:58,660 --> 00:57:00,340 Baridi? 1162 00:57:00,340 --> 00:57:01,800 Sawa. 1163 00:57:01,800 --> 00:57:03,710 >> Kuhamia kwenye mizunguko, bahati, hizi karibu 1164 00:57:03,710 --> 00:57:06,720 kuangalia exactly-- nadhani wao ni sawa kama yale 1165 00:57:06,720 --> 00:57:09,799 mizunguko ni kwenda kuangalia kama katika kitu kama C ambapo yako kwa kitanzi 1166 00:57:09,799 --> 00:57:11,840 ni kwenda na tatu parts-- initialization, 1167 00:57:11,840 --> 00:57:13,640 hali, na update. 1168 00:57:13,640 --> 00:57:15,340 Kitanzi wakati, inaonekana exact. 1169 00:57:15,340 --> 00:57:16,390 Sisi tu kutoa hali hiyo. 1170 00:57:16,390 --> 00:57:18,264 >> Na kufanya wakati kitanzi, tena, sawa. 1171 00:57:18,264 --> 00:57:20,190 Sisi kuwapa hali hiyo. 1172 00:57:20,190 --> 00:57:24,510 Hebu sema nilitaka iterate over-- Nilitaka kufanya kitu mara tano. 1173 00:57:24,510 --> 00:57:27,840 Katika C, tupate kuandika kwa init i sawa 0. 1174 00:57:27,840 --> 00:57:30,480 i ni chini ya 5, i ++. 1175 00:57:30,480 --> 00:57:34,240 Tofauti pekee, katika JavaScript, badala ya kusema int i sawa 0, 1176 00:57:34,240 --> 00:57:36,820 tunasema var i sawa 0. 1177 00:57:36,820 --> 00:57:38,370 Nzuri. 1178 00:57:38,370 --> 00:57:41,320 Hiyo ni tofauti tu. 1179 00:57:41,320 --> 00:57:43,200 Maswali yoyote juu ya yoyote ya kwamba? 1180 00:57:43,200 --> 00:57:44,160 Ndiyo. 1181 00:57:44,160 --> 00:57:48,480 >> Watazamaji: Hivyo katika PHP, ni sawa Jambo, isipokuwa lakini kama kutofautiana? 1182 00:57:48,480 --> 00:57:49,564 Au ni kwamba var mfano? 1183 00:57:49,564 --> 00:57:50,480 HANNAH BLUMBERG: Naam. 1184 00:57:50,480 --> 00:57:52,310 Hivyo katika PHP, ni kwenda kuwa ishara ya dola. 1185 00:57:52,310 --> 00:57:59,450 Hivyo ni kwenda kwa $ i sawa 0, $ i ni chini ya 5, $ i ++. 1186 00:57:59,450 --> 00:58:02,490 Mkuu swali. 1187 00:58:02,490 --> 00:58:04,570 >> Sasa hebu majadiliano juu ya kazi maazimio. 1188 00:58:04,570 --> 00:58:07,010 Katika C, wakati sisi alitangaza kazi, sisi akampa jina 1189 00:58:07,010 --> 00:58:08,490 na sisi akampa baadhi ya vigezo. 1190 00:58:08,490 --> 00:58:10,670 Na mwanzoni, tuliandika aina. 1191 00:58:10,670 --> 00:58:12,440 Katika JavaScript, kila sisi una kufanya ni kuandika 1192 00:58:12,440 --> 00:58:15,080 keyword kazi ambayo anasema, hey, JavaScript, 1193 00:58:15,080 --> 00:58:16,570 Mimi nina kuhusu kufafanua kazi. 1194 00:58:16,570 --> 00:58:18,520 >> Katika kesi hiyo, ina jina jibu. 1195 00:58:18,520 --> 00:58:20,820 Na inachukua hoja mbili, x na y. 1196 00:58:20,820 --> 00:58:23,280 Taarifa kwamba hatuna huduma juu ya aina ya x na y. 1197 00:58:23,280 --> 00:58:26,280 Na kama C, tuna hii kurudi Keyword, 1198 00:58:26,280 --> 00:58:29,140 ili tuweze kufanya kitu kama kurudi x na y. 1199 00:58:29,140 --> 00:58:32,540 >> Na sasa kwa mara nyingine tumekuwa imeandikwa huu kwanza kazi, tunaweza kutumia kiasi popote. 1200 00:58:32,540 --> 00:58:34,740 Na hiyo ndiyo kabisa faini. 1201 00:58:34,740 --> 00:58:37,530 Jambo moja kweli ya baridi kuhusu JavaScript kwamba ni sana tofauti na C 1202 00:58:37,530 --> 00:58:40,770 ni kwamba kazi wanaweza kutendewa kama maadili. 1203 00:58:40,770 --> 00:58:43,895 Hivyo tunaweza kufanya kitu kama hapa ambapo nadhani kufunika huu up-- 1204 00:58:43,895 --> 00:58:46,400 Mimi kufunikwa juu var Jumla part-- na sisi tu alisema 1205 00:58:46,400 --> 00:58:49,850 kazi xy sawa na kurudi x pamoja y. 1206 00:58:49,850 --> 00:58:52,140 >> Hiyo ni kitu gani kuitwa kazi bila majina. 1207 00:58:52,140 --> 00:58:53,920 Ni kazi bila jina. 1208 00:58:53,920 --> 00:58:56,290 Wakati huu anasema kazi Jumla, blah, blah, blah, 1209 00:58:56,290 --> 00:58:59,340 hii itakuwa tu kusema kazi. 1210 00:58:59,340 --> 00:59:02,020 Lakini sasa hata kama nina kazi hii bila majina, 1211 00:59:02,020 --> 00:59:03,630 kazi ambayo ni kweli tu thamani. 1212 00:59:03,630 --> 00:59:05,160 Tunaweza kutibu kama thamani. 1213 00:59:05,160 --> 00:59:10,180 >> Ili tuweze kuokoa ni katika kutofautiana sawa njia tunaweza kuhifadhi 50 katika kutofautiana. 1214 00:59:10,180 --> 00:59:13,870 Hivyo tunaweza kusema, sawa, nataka kutofautiana, ni kuitwa jumla, 1215 00:59:13,870 --> 00:59:16,011 na ni kazi huu. 1216 00:59:16,011 --> 00:59:18,760 Hivyo mambo haya mawili ni kweli kwenda kufanya exact kitu, 1217 00:59:18,760 --> 00:59:21,576 lakini syntax ni kidogo tofauti na aina ya furaha kumbuka. 1218 00:59:21,576 --> 00:59:22,076 Naam. 1219 00:59:22,076 --> 00:59:25,548 >> Watazamaji: Hivyo unaweza kuwaita kazi ambayo ilikuwa bila majina kwa kusema, 1220 00:59:25,548 --> 00:59:28,244 Jumla mabano 2, 5? 1221 00:59:28,244 --> 00:59:29,160 HANNAH BLUMBERG: Naam. 1222 00:59:29,160 --> 00:59:32,280 Unaweza kupiga simu bila majina huu kazi kwa njia sawa. 1223 00:59:32,280 --> 00:59:33,350 Ungependa kufanya kiasi (2, 5) ;. 1224 00:59:33,350 --> 00:59:36,180 1225 00:59:36,180 --> 00:59:38,200 Hiyo itakuwa kabisa faini. 1226 00:59:38,200 --> 00:59:41,575 >> Kama mimi si kufanya var Jumla sawa na kazi, kama mimi tu kufutwa 1227 00:59:41,575 --> 00:59:45,480 Haya Najua ni upande wangu, lakini kujifanya mimi kufutwa Haya basi 1228 00:59:45,480 --> 00:59:46,964 kazi ambayo ni aina ya tu wamekwenda. 1229 00:59:46,964 --> 00:59:49,630 Unaweza kamwe kuitumia tena kwa sababu huna jina kwa ajili yake. 1230 00:59:49,630 --> 00:59:53,497 Ni vigumu kutaja kitu wewe hawajui nini kuwaita. 1231 00:59:53,497 --> 00:59:54,080 Nzuri swali. 1232 00:59:54,080 --> 00:59:54,580 Naam. 1233 00:59:54,580 --> 00:59:59,580 >> Watazamaji: Je, unaweza rejea jumla katika maeneo mengine kwa thamani ya x pamoja y? 1234 00:59:59,580 --> 01:00:01,940 >> HANNAH BLUMBERG: Je, unaweza kumbukumbu Jumla katika maeneo mengine 1235 01:00:01,940 --> 01:00:03,360 kwa thamani x pamoja y? 1236 01:00:03,360 --> 01:00:05,130 Sina hakika kabisa nini. 1237 01:00:05,130 --> 01:00:10,582 >> Watazamaji: Hivyo yako ya zamani nusu bila majina kazi ni jumla ni sawa na hii 1238 01:00:10,582 --> 01:00:14,452 kazi bila majina, hivyo jumla ni sasa kutofautiana kwamba can-- 1239 01:00:14,452 --> 01:00:15,410 HANNAH BLUMBERG: Haki. 1240 01:00:15,410 --> 01:00:18,980 Hivyo kiasi ni kutofautiana, lakini ni actually-- 1241 01:00:18,980 --> 01:00:23,770 hivyo jumla ni kutofautiana ambao thamani ya kazi. 1242 01:00:23,770 --> 01:00:27,030 Hivyo ni kazi, ambayo ni aina ya Jambo weird kwa wrap kichwa yako karibu 1243 01:00:27,030 --> 01:00:29,880 tangu tumekuwa kucheza na C na huwezi kufanya hivyo katika C. 1244 01:00:29,880 --> 01:00:32,679 Lakini sasa tunaweza kuwaita kuhitimisha njia ile ile tunaweza kuita Jumla hapa. 1245 01:00:32,679 --> 01:00:33,220 Watazamaji: Sawa. 1246 01:00:33,220 --> 01:00:33,970 HANNAH BLUMBERG: Naam. 1247 01:00:33,970 --> 01:00:34,553 Nzuri swali. 1248 01:00:34,553 --> 01:00:35,438 Naam. 1249 01:00:35,438 --> 01:00:39,862 >> Watazamaji: Hivyo hatuwezi kutumia prototypes katika PHP au JavaScript? 1250 01:00:39,862 --> 01:00:42,070 HANNAH BLUMBERG: Hapana, sisi huna haja ya kutumia prototypes, 1251 01:00:42,070 --> 01:00:43,880 hasa katika JavaScript. 1252 01:00:43,880 --> 01:00:49,380 Hivyo moja mbaya mazoezi jambo kwamba mimi nina kwenda kusema kwamba unapaswa kufanya 1253 01:00:49,380 --> 01:00:52,620 ni huna kuandika var i = 50. 1254 01:00:52,620 --> 01:00:54,840 Unaweza tu kuanza kufanya i = 50. 1255 01:00:54,840 --> 01:00:57,490 Na ingekuwa tu kufanya i kutofautiana kimataifa. 1256 01:00:57,490 --> 01:01:00,550 >> Ni mila mbaya sana kwa ni kamwe kusema explicity var i, 1257 01:01:00,550 --> 01:01:01,800 lakini ni kitu unaweza kufanya. 1258 01:01:01,800 --> 01:01:03,591 Mkalimani siyo kwenda yell saa wewe. 1259 01:01:03,591 --> 01:01:05,920 JavaScript ni mzuri kama, unaweza kufanya nini unataka. 1260 01:01:05,920 --> 01:01:09,301 1261 01:01:09,301 --> 01:01:09,800 Oh, pole. 1262 01:01:09,800 --> 01:01:10,300 Kuna wawili. 1263 01:01:10,300 --> 01:01:12,150 Katika suruali machungwa. 1264 01:01:12,150 --> 01:01:13,190 Endelea. 1265 01:01:13,190 --> 01:01:14,390 >> Watazamaji: Hapana, wewe kwenda kwanza. 1266 01:01:14,390 --> 01:01:16,765 >> Watazamaji: Hapana, mimi alikuwa akisema tu Sikuwa na mkono wangu juu. 1267 01:01:16,765 --> 01:01:20,248 1268 01:01:20,248 --> 01:01:20,748 SAWA. 1269 01:01:20,748 --> 01:01:26,604 Hivyo kama ungekuwa kuwaita Wakati huo wa kwanza, sasa kuhitimisha, 1270 01:01:26,604 --> 01:01:29,864 sisi kuiita njia ile ile, x, y, kama kila wakati? 1271 01:01:29,864 --> 01:01:30,780 HANNAH BLUMBERG: Naam. 1272 01:01:30,780 --> 01:01:32,572 Hivyo hizi mbili kimsingi kufanya kitu kimoja. 1273 01:01:32,572 --> 01:01:35,113 Watazamaji: Na nini faida ya kutumia moja au nyingine? 1274 01:01:35,113 --> 01:01:37,500 HANNAH BLUMBERG: Hakuna faida ya kutumia moja au nyingine. 1275 01:01:37,500 --> 01:01:40,080 Mimi nilitaka kuonyesha mbili vipande mbalimbali ya syntax. 1276 01:01:40,080 --> 01:01:42,770 Mara nyingi ambapo bila majina kazi kufanya kuwa lengo 1277 01:01:42,770 --> 01:01:48,220 ni kama hoja hadi nyingine kazi lazima kazi. 1278 01:01:48,220 --> 01:01:50,600 Na tutaweza kuona kwamba katika haki ya pili na Ajax. 1279 01:01:50,600 --> 01:01:53,577 >> Hivyo kama kwamba hakuwa na maana yoyote, kuhifadhi katika nyuma ya kichwa yako. 1280 01:01:53,577 --> 01:01:55,660 Hapo ndipo bila majina kazi inaweza kuwa na manufaa 1281 01:01:55,660 --> 01:01:58,284 kwa sababu si kweli thamani kutoa ni jina tangu tuko tu 1282 01:01:58,284 --> 01:01:59,443 kwenda kuitumia mara moja. 1283 01:01:59,443 --> 01:02:00,370 Naam. 1284 01:02:00,370 --> 01:02:03,635 >> Watazamaji: Kama x na y mabadiliko baadaye juu, itakuwa kuhitimisha mabadiliko pia? 1285 01:02:03,635 --> 01:02:06,510 HANNAH BLUMBERG: Kama x na y mabadiliko baadaye, itakuwa kuhitimisha mabadiliko pia? 1286 01:02:06,510 --> 01:02:08,840 Hivyo hii ni kweli mimi kufikiri kitu ambacho ni, 1287 01:02:08,840 --> 01:02:12,260 tena, ni tu anahisi tofauti sana kutoka C. Hii si thamani. 1288 01:02:12,260 --> 01:02:13,620 Siyo 5. 1289 01:02:13,620 --> 01:02:15,550 Ni tu kazi yenyewe. 1290 01:02:15,550 --> 01:02:19,110 Hivyo kwa haraka kama wewe kuwapa vigezo, basi utasikia kweli mahesabu ya thamani. 1291 01:02:19,110 --> 01:02:21,193 >> MARIA ZLATKOVA: Na kisha unaweza piga kazi 1292 01:02:21,193 --> 01:02:23,272 na matumizi yake ya kupata baadhi ya thamani. 1293 01:02:23,272 --> 01:02:24,230 HANNAH BLUMBERG: Haki. 1294 01:02:24,230 --> 01:02:25,250 Hasa. 1295 01:02:25,250 --> 01:02:25,863 Naam. 1296 01:02:25,863 --> 01:02:27,946 >> Watazamaji: Hivyo kama wewe tu kuhifadhi katika kutofautiana, 1297 01:02:27,946 --> 01:02:31,430 kama var x sawa Jumla ya wawili values-- 1298 01:02:31,430 --> 01:02:32,420 >> HANNAH BLUMBERG: Naam. 1299 01:02:32,420 --> 01:02:35,320 Hivyo unaweza tu kufanya var Jumla sawa Jumla ya maadili mbili. 1300 01:02:35,320 --> 01:02:37,670 Naam. 1301 01:02:37,670 --> 01:02:38,680 Yoyote maswali mengine? 1302 01:02:38,680 --> 01:02:39,642 Naam. 1303 01:02:39,642 --> 01:02:42,047 >> Watazamaji: Lakini ingekuwa kwamba kuchanganya jumla na kiasi? 1304 01:02:42,047 --> 01:02:45,062 Kama kama wewe piga Jumla yako kutofautiana, ingekuwa wewe piga kazi kiasi? 1305 01:02:45,062 --> 01:02:45,895 HANNAH BLUMBERG: Mm. 1306 01:02:45,895 --> 01:02:46,395 Mm. 1307 01:02:46,395 --> 01:02:51,253 Kama alifanya kitu kama, jumla ni sawa na kiasi 2, 5? 1308 01:02:51,253 --> 01:02:53,170 >> Watazamaji: Naam. 1309 01:02:53,170 --> 01:02:56,465 >> HANNAH BLUMBERG: Naamini kuwa ingekuwa overwrite thamani ya jumla. 1310 01:02:56,465 --> 01:02:59,290 Hivyo mwingine kuvutia Jambo kuhusu JavaScript 1311 01:02:59,290 --> 01:03:02,950 ni kwamba kutofautiana mmoja anaweza kuchukua juu ya rundo ya aina mbalimbali. 1312 01:03:02,950 --> 01:03:03,790 Bad mazoezi. 1313 01:03:03,790 --> 01:03:06,280 Ni lazima si kufanya kitu kama yale tu alisema. 1314 01:03:06,280 --> 01:03:10,240 >> Lakini katika C, kama i ni kuweka sawa na integer, 1315 01:03:10,240 --> 01:03:13,570 Tunajua kwamba ni kamwe inaenda kuwa kamba. 1316 01:03:13,570 --> 01:03:15,670 Hii si kesi katika JavaScript. 1317 01:03:15,670 --> 01:03:17,770 Yeah, swali zuri. 1318 01:03:17,770 --> 01:03:20,151 Kitu kingine? 1319 01:03:20,151 --> 01:03:20,650 Sawa. 1320 01:03:20,650 --> 01:03:21,850 Kufanya sawa kwa wakati. 1321 01:03:21,850 --> 01:03:23,050 Kuweka kwenda. 1322 01:03:23,050 --> 01:03:25,200 Sawa. 1323 01:03:25,200 --> 01:03:27,780 >> Tukiangalia safu katika JavaScript, hapa ni 1324 01:03:27,780 --> 01:03:30,250 mfano wa haraka wa safu ya masharti. 1325 01:03:30,250 --> 01:03:31,967 Na arrays unaweza kukua dynamically. 1326 01:03:31,967 --> 01:03:33,675 Hawana ukubwa fasta njia ile ile 1327 01:03:33,675 --> 01:03:37,990 wanayo yafanya katika C. Tunaweza kupata vipengele na tu mabano mraba. 1328 01:03:37,990 --> 01:03:41,720 >> Hiyo inaonekana mengi kama PHP na mengi kama C, ambapo tunaweza kusema, katika kesi hii, 1329 01:03:41,720 --> 01:03:48,360 kama nilitaka neno JavaScript, napenda Je, ARR mabano mraba na 0, 1, 2. 1330 01:03:48,360 --> 01:03:51,450 1331 01:03:51,450 --> 01:03:55,390 Na kisha kama unakumbuka katika C wakati sisi alitaka kupata urefu wa safu, 1332 01:03:55,390 --> 01:03:56,820 ni kweli annoying. 1333 01:03:56,820 --> 01:03:58,460 Lakini katika JavaScript, super rahisi. 1334 01:03:58,460 --> 01:03:59,910 Wote sisi kufanya, .length. 1335 01:03:59,910 --> 01:04:01,120 Anatoa ni urefu. 1336 01:04:01,120 --> 01:04:01,892 Hiyo ni. 1337 01:04:01,892 --> 01:04:03,140 >> Watazamaji: Hiyo ni rahisi. 1338 01:04:03,140 --> 01:04:05,306 >> HANNAH BLUMBERG: Yeah, hufanya maisha yako rahisi sana. 1339 01:04:05,306 --> 01:04:08,950 1340 01:04:08,950 --> 01:04:11,560 OK, object-- huko. 1341 01:04:11,560 --> 01:04:15,480 Vitu katika JavaScript kujisikia mengi kama structs katika C 1342 01:04:15,480 --> 01:04:18,280 na arrays associative katika PHP. 1343 01:04:18,280 --> 01:04:20,270 Kwa hiyo kile tumeona mengi ya ni JSON, ambayo 1344 01:04:20,270 --> 01:04:23,150 anasimama kwa JavaScript Object nukuu. 1345 01:04:23,150 --> 01:04:25,550 Na ni kimsingi njia ya jinsia takwimu zetu. 1346 01:04:25,550 --> 01:04:27,880 >> Basi hebu angalia mfano, pengine njia rahisi. 1347 01:04:27,880 --> 01:04:32,540 Hivyo hapa ni mfano wa kitu kwamba maduka darasani, CS50. 1348 01:04:32,540 --> 01:04:37,790 Na wakati mimi kusema darasani, I mean kweli, si like-- yeah, bila shaka, CS50. 1349 01:04:37,790 --> 01:04:40,730 Na utaona kwamba kila kitu katika kitu 1350 01:04:40,730 --> 01:04:43,526 ni kwenda kuwa zilizomo katika braces curly. 1351 01:04:43,526 --> 01:04:48,260 >> Na sisi kuanza kuhusisha majina uwanja au funguo na maadili tofauti. 1352 01:04:48,260 --> 01:04:52,920 Hivyo unaweza kuanza kuona ni jinsi gani aina hii ya anahisi kama safu associative katika PHP. 1353 01:04:52,920 --> 01:04:57,450 Hivyo sisi ni kwenda kujiunga uwanja au ufunguo jina, bila shaka, pamoja na kamba, 1354 01:04:57,450 --> 01:04:58,510 CS50. 1355 01:04:58,510 --> 01:04:59,940 >> Tunakwenda kuwa na mwalimu. 1356 01:04:59,940 --> 01:05:00,940 Tunakwenda kuwa na TFS. 1357 01:05:00,940 --> 01:05:05,240 Tunakwenda kuwa na idadi ya psets na tunakwenda na kumbukumbu. 1358 01:05:05,240 --> 01:05:10,720 Na moja jambo zuri kutambua ni wote wa mambo haya na aina mbalimbali, 1359 01:05:10,720 --> 01:05:12,020 na kwamba ni kabisa faini. 1360 01:05:12,020 --> 01:05:15,330 >> Ni faini kwa kitu, kwa kweli, ni pengine inatarajiwa ajili kitu 1361 01:05:15,330 --> 01:05:19,620 kuwa na mchanganyiko wa masharti na idadi na Booleans na arrays 1362 01:05:19,620 --> 01:05:23,420 na kingine chochote waweza wanataka kuwa na kitu ndani ya yako. 1363 01:05:23,420 --> 01:05:28,570 Na kumbuka kuwa hawa ni kwenda kuwa majina au funguo, na kisha sisi tu 1364 01:05:28,570 --> 01:05:30,300 kuweka sawa na matumbo kidogo. 1365 01:05:30,300 --> 01:05:32,015 >> Watazamaji: Nini hasa gani JSON maana gani? 1366 01:05:32,015 --> 01:05:33,890 HANNAH BLUMBERG: Nini hasa gani JSON maana gani? 1367 01:05:33,890 --> 01:05:36,470 JSON tu anasimama kwa JavaScript Object nukuu. 1368 01:05:36,470 --> 01:05:38,430 Ni njia tu ya formatting. 1369 01:05:38,430 --> 01:05:40,040 Naam. 1370 01:05:40,040 --> 01:05:41,800 Ni njia ya formatting takwimu zetu. 1371 01:05:41,800 --> 01:05:43,620 >> Katika C, ni structs. 1372 01:05:43,620 --> 01:05:45,800 Katika PHP, ni associative arrays. 1373 01:05:45,800 --> 01:05:47,120 Katika JavaScript, tuna vitu. 1374 01:05:47,120 --> 01:05:48,969 >> Watazamaji: Hivyo CS50 ni kitu? 1375 01:05:48,969 --> 01:05:51,010 HANNAH BLUMBERG: CS50 ni kitu katika kesi hii. 1376 01:05:51,010 --> 01:05:54,830 1377 01:05:54,830 --> 01:05:57,880 Sasa, jinsi gani sisi kweli kupata mashamba hayo au kubadilisha mashamba hayo. 1378 01:05:57,880 --> 01:06:03,920 Kwa mfano, tuseme tuliamua kwamba alitaka moja wachache pset muhula huu. 1379 01:06:03,920 --> 01:06:06,300 Badala ya tisa, tuko tu kwenda na nane. 1380 01:06:06,300 --> 01:06:08,240 Jinsi gani sisi kubadili hali hiyo? 1381 01:06:08,240 --> 01:06:09,436 >> Loo, njia sahihi. 1382 01:06:09,436 --> 01:06:11,060 Kuna njia mbili za tuweze kufanya hivyo. 1383 01:06:11,060 --> 01:06:13,490 Namba moja ni kwa nukta nukuu na namba mbili 1384 01:06:13,490 --> 01:06:15,750 ni pamoja na mraba bracket nukuu. 1385 01:06:15,750 --> 01:06:19,720 Hivyo, kwa mfano, kama mimi alitaka mabadiliko au upatikanaji 1386 01:06:19,720 --> 01:06:26,820 psets uwanja katika CS50 yetu kitu, kile atafanya ni CS50.psets, 1387 01:06:26,820 --> 01:06:30,770 hivyo jina la kitu nukta jina la uwanja au muhimu. 1388 01:06:30,770 --> 01:06:37,120 >> Sana vile vile, ni hasa sawa kufanya CS50, na kisha 1389 01:06:37,120 --> 01:06:42,050 katika braces mraba, psets. 1390 01:06:42,050 --> 01:06:42,837 Baridi? 1391 01:06:42,837 --> 01:06:44,298 Naam. 1392 01:06:44,298 --> 01:06:47,707 >> Watazamaji: Hivyo ni JSON kitaalam bado JavaScript, 1393 01:06:47,707 --> 01:06:51,814 ingawa katika psets sisi kutenganisha ni nje [inaudible]? 1394 01:06:51,814 --> 01:06:52,730 HANNAH BLUMBERG: Ni kweli. 1395 01:06:52,730 --> 01:06:56,290 Hivyo swali ni, ni JavaScript na JSON sawa? 1396 01:06:56,290 --> 01:07:00,750 Hivyo JSON ni nukuu, kimsingi njia ambayo sisi kuandika 1397 01:07:00,750 --> 01:07:02,700 kitu kutoka JavaScript. 1398 01:07:02,700 --> 01:07:05,190 Hivyo wao siyo sawa. 1399 01:07:05,190 --> 01:07:08,950 >> Napenda kusema JavaScript, kuna ni vitu katika JavaScript. 1400 01:07:08,950 --> 01:07:12,590 JSON inachukua vitu wale na Prints yao na maonyesho yao 1401 01:07:12,590 --> 01:07:15,160 au maduka yao kwa njia nzuri. 1402 01:07:15,160 --> 01:07:18,110 Hivyo JSON si Programu lugha kwa njia hiyo JavaScript ni. 1403 01:07:18,110 --> 01:07:20,900 Ni tu nukuu kwa vitu yetu katika JavaScript. 1404 01:07:20,900 --> 01:07:21,400 Naam. 1405 01:07:21,400 --> 01:07:24,144 >> Watazamaji: Hivyo nini hasa [Inaudible] kukamilisha? 1406 01:07:24,144 --> 01:07:25,060 HANNAH BLUMBERG: Ni kweli. 1407 01:07:25,060 --> 01:07:27,727 Hivyo hii kweli haina chochote. 1408 01:07:27,727 --> 01:07:28,935 Hii ni njia ya kupata. 1409 01:07:28,935 --> 01:07:31,393 Hivyo hebu sema tulitaka mabadiliko idadi ya seti tatizo 1410 01:07:31,393 --> 01:07:32,450 9-8. 1411 01:07:32,450 --> 01:07:34,383 Tunachofanya ni kufanya kitu kama CS50.psets = 8 ;. 1412 01:07:34,383 --> 01:07:38,500 1413 01:07:38,500 --> 01:07:39,400 >> Yeah, swali kubwa. 1414 01:07:39,400 --> 01:07:40,733 Hii ni tu kuonyesha syntax. 1415 01:07:40,733 --> 01:07:43,620 Haina kweli kufanya kitu chochote muhimu. 1416 01:07:43,620 --> 01:07:46,085 Maswali yoyote? 1417 01:07:46,085 --> 01:07:48,210 Kusonga haki pamoja. 1418 01:07:48,210 --> 01:07:51,960 >> Basi hebu tuangalie mfano wa jinsi ya haraka JavaScript kazi kwa sababu niliwaambia ni 1419 01:07:51,960 --> 01:07:55,170 anafanya mambo yote haya ya baridi na inaruhusu sisi kurekebisha kurasa za mtandao. 1420 01:07:55,170 --> 01:07:56,970 Hebu kweli kuona katika hatua. 1421 01:07:56,970 --> 01:07:59,850 Hivyo kuchukua, kwa mfano, faili hili HTML. 1422 01:07:59,850 --> 01:08:04,350 >> Na jambo nataka wewe kuzingatia ni tag hasa hili, ambayo ni kifungo, 1423 01:08:04,350 --> 01:08:06,182 na kitambulisho search_button. 1424 01:08:06,182 --> 01:08:08,670 Ni tu juu ya ukurasa. 1425 01:08:08,670 --> 01:08:10,690 Hivyo sasa hebu angalia nini sisi kweli wanaweza kufanya. 1426 01:08:10,690 --> 01:08:12,560 >> Naam, tuseme wakati wewe click kwamba kifungo, 1427 01:08:12,560 --> 01:08:16,010 tunataka kufanya alert-- wewe clicked kifungo. 1428 01:08:16,010 --> 01:08:17,840 Hebu angalia jinsi tunaweza kufanya hivyo. 1429 01:08:17,840 --> 01:08:23,869 Hivyo window.onload-- hii si kitu kwamba wameweza kuona darasani, kwa hiyo 1430 01:08:23,869 --> 01:08:26,180 Huwezi haja ya kujua kwa jaribio. 1431 01:08:26,180 --> 01:08:33,660 Lakini hii kimsingi anasema, sawa, wito kazi hii wakati dirisha mizigo. 1432 01:08:33,660 --> 01:08:35,080 >> Hivyo hiyo ni aina tu ya kuanzisha kanuni. 1433 01:08:35,080 --> 01:08:36,390 Msiwe na wasiwasi sana kuhusu hilo. 1434 01:08:36,390 --> 01:08:39,170 Nini nataka wewe kuzingatia ni katika hapa. 1435 01:08:39,170 --> 01:08:44,020 Tunasema var searchButton sawa na document.getElementByID search_button. 1436 01:08:44,020 --> 01:08:46,450 >> Hivyo kama unaweza nadhani, nini hii haina ni inasema, 1437 01:08:46,450 --> 01:08:50,920 OK, kwenda kupata kipengele pamoja ID search_button. 1438 01:08:50,920 --> 01:08:52,790 Na sasa tuna kuwa halisi kipengele na mimi nina 1439 01:08:52,790 --> 01:08:56,279 kwenda kuhifadhi katika kutofautiana searchButton. 1440 01:08:56,279 --> 01:09:00,651 Na sasa tunaweza kweli matumizi ya kwamba kipengele na mabadiliko hayo, au kupata maadili yake, 1441 01:09:00,651 --> 01:09:01,359 mambo kama hayo. 1442 01:09:01,359 --> 01:09:04,649 Tunaweza kweli kuanza kujihusisha na mtandao. 1443 01:09:04,649 --> 01:09:10,330 >> Hivyo hapa nasema, sawa, sasa kwamba nina kuwa kifungo, wakati ni clicked, 1444 01:09:10,330 --> 01:09:12,859 piga kazi hii bila majina. 1445 01:09:12,859 --> 01:09:16,811 Hivyo hii ni mahali ambapo bila majina kazi kuwa na manufaa. 1446 01:09:16,811 --> 01:09:18,060 Na je kazi nini? 1447 01:09:18,060 --> 01:09:20,529 Naam, ni tu wito huu kazi macho na inasema, 1448 01:09:20,529 --> 01:09:22,910 wewe clicked Search kifungo. 1449 01:09:22,910 --> 01:09:29,670 >> Hivyo nini kitatokea kama mimi kwenda popote HTML huu anaishi na mimi bonyeza kifungo, 1450 01:09:29,670 --> 01:09:33,729 Mimi itabidi kupata tahadhari dhana kidogo kwamba anasema wewe clicked kifungo. 1451 01:09:33,729 --> 01:09:40,710 Hivyo mambo kwa kuzingatia here-- document.getElementByID 1452 01:09:40,710 --> 01:09:44,960 anapata HTML fulani kipengele na kitambulisho huo. 1453 01:09:44,960 --> 01:09:48,529 Na sasa tunaweza kuweka kile lazima kutokea wakati 1454 01:09:48,529 --> 01:09:50,702 kwamba kipengele fulani ni clicked. 1455 01:09:50,702 --> 01:09:52,670 >> Watazamaji: Tuna kuweka yote ya kwamba katika? 1456 01:09:52,670 --> 01:09:53,162 >> HANNAH BLUMBERG: Sorry? 1457 01:09:53,162 --> 01:09:55,130 >> Watazamaji: Je, tuna kanuni kimwili yote hayo? 1458 01:09:55,130 --> 01:09:56,340 >> HANNAH BLUMBERG: Je, tuna kanuni kimwili yote hayo? 1459 01:09:56,340 --> 01:09:56,839 Ndiyo. 1460 01:09:56,839 --> 01:09:58,120 Si aina hii ya annoying? 1461 01:09:58,120 --> 01:10:00,032 Hii ni mengi ya kificho. 1462 01:10:00,032 --> 01:10:01,574 >> Watazamaji: Unaweza kuagiza kitu fulani. 1463 01:10:01,574 --> 01:10:02,532 HANNAH BLUMBERG: Haki. 1464 01:10:02,532 --> 01:10:03,610 Tunaweza kutumia kitu fulani. 1465 01:10:03,610 --> 01:10:08,140 Na katika particular-- loo, ni kuniambia nina kufundisha sehemu. 1466 01:10:08,140 --> 01:10:11,061 Hasa, hebu kutumia maktaba jQuery, 1467 01:10:11,061 --> 01:10:13,060 kwa sababu hiyo ilikuwa kweli muda mrefu na kweli annoying 1468 01:10:13,060 --> 01:10:16,860 na mimi nataka kuwa na uwezo wa kurahisisha hilo na kufanya hivyo mfupi na rahisi kuandika. 1469 01:10:16,860 --> 01:10:19,810 >> Hivyo jQuery ni maktaba JavaScript. 1470 01:10:19,810 --> 01:10:24,930 Hivyo JavaScript ni programu lugha; jQuery ni maktaba. 1471 01:10:24,930 --> 01:10:27,190 Na inafanya rundo la vitu rahisi zaidi. 1472 01:10:27,190 --> 01:10:33,230 Inafanya kubadilisha na kwenda katika kiasi HTML hati rahisi zaidi. 1473 01:10:33,230 --> 01:10:35,030 >> Inafanya utunzaji matukio rahisi zaidi. 1474 01:10:35,030 --> 01:10:37,580 Inafanya uhuishaji rahisi na inafanya Ajax rahisi zaidi. 1475 01:10:37,580 --> 01:10:40,140 Basi hebu kuruka ndani wawili wa mambo hayo hivi sasa. 1476 01:10:40,140 --> 01:10:40,900 Samahani. 1477 01:10:40,900 --> 01:10:42,620 Kabla ya kufanya, baadhi syntax ya msingi. 1478 01:10:42,620 --> 01:10:46,870 >> Hii ni nini zaidi wito kwa maktaba jQuery kuangalia kama. 1479 01:10:46,870 --> 01:10:50,520 Sisi kutumia dola hii sign-- hakuna dalili uhusiano na PHP, 1480 01:10:50,520 --> 01:10:56,030 tu inconvenient-- jina la selector, dot, na kisha hatua. 1481 01:10:56,030 --> 01:10:58,860 Basi hebu angalia baadhi mifano halisi ya jambo hilo. 1482 01:10:58,860 --> 01:11:02,980 >> Hivyo hii kweli ni sawa kificho kutokana na tukio slide. 1483 01:11:02,980 --> 01:11:08,740 Hivyo hii kwa muda mrefu, mbaya kitu inakuwa hii nicer, ndogo jambo. 1484 01:11:08,740 --> 01:11:10,370 Basi hebu jaribu kuvunja hii chini. 1485 01:11:10,370 --> 01:11:17,090 Hii inasema, sawa, jQuery-- dola hii sign-- jQuery, kupata mimi dirisha. 1486 01:11:17,090 --> 01:11:18,480 Hivyo hiyo ni selector. 1487 01:11:18,480 --> 01:11:21,800 >> Wakati ni mizigo, piga kazi hii. 1488 01:11:21,800 --> 01:11:23,880 Hivyo hiyo ni kila kitu ndani. 1489 01:11:23,880 --> 01:11:24,380 SAWA. 1490 01:11:24,380 --> 01:11:25,740 Hadi sasa, hivyo nzuri? 1491 01:11:25,740 --> 01:11:26,750 Sawa. 1492 01:11:26,750 --> 01:11:32,970 >> Sasa, jQuery, kupata mimi Jambo na kitambulisho search_button. 1493 01:11:32,970 --> 01:11:36,090 Na nini ni clicked, piga kazi hii. 1494 01:11:36,090 --> 01:11:37,900 Na kisha hii kazi ya sawa. 1495 01:11:37,900 --> 01:11:41,052 Tu kufanya kidogo ya tahadhari, wewe clicked Search kifungo. 1496 01:11:41,052 --> 01:11:42,650 >> Hivyo ni kweli ni nzuri. 1497 01:11:42,650 --> 01:11:46,260 Ni kweli unabadilika na simplifies kanuni zetu. 1498 01:11:46,260 --> 01:11:49,030 Jinsi gani mimi kujua kwamba ni ID search_button 1499 01:11:49,030 --> 01:11:50,960 na si kama darasa search_button? 1500 01:11:50,960 --> 01:11:52,024 >> Watazamaji: Hashtag? 1501 01:11:52,024 --> 01:11:52,940 HANNAH BLUMBERG: Naam. 1502 01:11:52,940 --> 01:11:56,450 Alama hii hash, ni tu kama CSS. 1503 01:11:56,450 --> 01:12:00,080 Basi kumbuka, na CSS, wakati sisi alitaka kuchagua kitu na kitambulisho, 1504 01:12:00,080 --> 01:12:01,590 tulikuwa chupa ishara. 1505 01:12:01,590 --> 01:12:05,400 Na wakati sisi alitaka kuchagua kitu na darasa, sisi kutumia dot. 1506 01:12:05,400 --> 01:12:06,870 Kubwa. 1507 01:12:06,870 --> 01:12:08,230 Mantiki? 1508 01:12:08,230 --> 01:12:11,500 Hivyo jQuery zinatakiwa tu kufanya maisha yetu rahisi. 1509 01:12:11,500 --> 01:12:12,000 Naam. 1510 01:12:12,000 --> 01:12:15,660 >> Watazamaji: Hivyo mimi nina kuchanganyikiwa kidogo kama kwa jinsi kazi bila majina kazi. 1511 01:12:15,660 --> 01:12:19,027 Je, wewe jina anonymouse hii kazi, kazi? 1512 01:12:19,027 --> 01:12:20,594 Jinsi ni wito? 1513 01:12:20,594 --> 01:12:21,510 HANNAH BLUMBERG: Ni kweli. 1514 01:12:21,510 --> 01:12:25,812 Hivyo kazi ni tu Keyword kwamba anasema, mimi nina kuhusu kufafanua kazi. 1515 01:12:25,812 --> 01:12:26,520 Watazamaji: Oh, Sawa. 1516 01:12:26,520 --> 01:12:27,353 HANNAH BLUMBERG: OK? 1517 01:12:27,353 --> 01:12:32,120 Na kisha sisi kupita kama Hoja to-- hebu kuchukua 1518 01:12:32,120 --> 01:12:37,040 one-- hii ndani ya click kazi. 1519 01:12:37,040 --> 01:12:39,420 Hivyo yeah, hivyo kazi hiyo, kazi hii bila majina, 1520 01:12:39,420 --> 01:12:40,910 inakuwa hoja halisi. 1521 01:12:40,910 --> 01:12:43,632 Basi kumbuka katika JavaScript, sisi unaweza kutibu kazi kama maadili. 1522 01:12:43,632 --> 01:12:44,340 Watazamaji: Oh, Sawa. 1523 01:12:44,340 --> 01:12:45,256 HANNAH BLUMBERG: Naam. 1524 01:12:45,256 --> 01:12:46,035 Mimi kama kwamba "loo." 1525 01:12:46,035 --> 01:12:47,490 Nzuri. 1526 01:12:47,490 --> 01:12:49,915 Maswali mengine? 1527 01:12:49,915 --> 01:12:50,505 Muda? 1528 01:12:50,505 --> 01:12:51,380 MARIA ZLATKOVA: Good. 1529 01:12:51,380 --> 01:12:52,760 Nzuri. 1530 01:12:52,760 --> 01:12:54,210 >> HANNAH BLUMBERG: Ajabu. 1531 01:12:54,210 --> 01:12:55,720 Baadhi ya haraka na manufaa jQuery. 1532 01:12:55,720 --> 01:12:57,559 Mimi si kwenda kupitia yote haya. 1533 01:12:57,559 --> 01:12:59,350 Slides hizi itakuwa up online kidogo 1534 01:12:59,350 --> 01:13:02,040 baadaye, hivyo unaweza kuangalia nje kidogo ya baadaye. 1535 01:13:02,040 --> 01:13:07,120 Lakini kimsingi, kwa ujumla mfano ana ambapo tunasema, 1536 01:13:07,120 --> 01:13:11,510 OK, hey, jQuery, hapa ni yangu selector na kisha hapa ni utekelezaji. 1537 01:13:11,510 --> 01:13:15,940 Na unaweza kufanya mambo kama upatikanaji thamani ya fomu, kupata baadhi HTML, 1538 01:13:15,940 --> 01:13:19,195 kudhibiti kile kinachotokea wakati mtumiaji elekeza fomu, mambo kama hayo. 1539 01:13:19,195 --> 01:13:20,106 Ndiyo. 1540 01:13:20,106 --> 01:13:22,090 >> Watazamaji: Hivyo katika mtihani, sisi ni kwenda haja 1541 01:13:22,090 --> 01:13:25,066 kujua mengi kabisa kutoka jQuery nyaraka. 1542 01:13:25,066 --> 01:13:31,018 Hivyo kutokana na kwamba sisi nakala / kuweka jQuery nyaraka na kudanganya karatasi yetu, 1543 01:13:31,018 --> 01:13:32,506 ambapo ni mstari inayotolewa? 1544 01:13:32,506 --> 01:13:33,957 Kama wangapi tunahitaji kujua? 1545 01:13:33,957 --> 01:13:35,290 HANNAH BLUMBERG: Mkuu swali. 1546 01:13:35,290 --> 01:13:37,765 Swali ni kimsingi kutokana na kwamba wewe 1547 01:13:37,765 --> 01:13:41,330 hawawezi kupata nyaraka jQuery wakati wa mtihani, ni kiasi gani lazima wewe 1548 01:13:41,330 --> 01:13:41,830 kujua? 1549 01:13:41,830 --> 01:13:45,540 Sisi bila kutarajia wewe kuja na baadhi ya kazi random 1550 01:13:45,540 --> 01:13:47,240 kwamba tunataka wanatarajia Google. 1551 01:13:47,240 --> 01:13:52,930 >> Mambo ambayo ni haki mchezo ni napenda kusema tu aina ya syntax ujumla, 1552 01:13:52,930 --> 01:13:58,310 kuwa na uwezo wa kuchagua na ID na na class-- hivyo tu kama CSS. 1553 01:13:58,310 --> 01:14:01,876 Na kisha kazi halisi themself, tutaweza uwezekano kukuambia. 1554 01:14:01,876 --> 01:14:02,376 Naam. 1555 01:14:02,376 --> 01:14:05,591 >> Watazamaji: Hivyo wakati wewe kuchagua na darasa itakuwa na maana nukta. 1556 01:14:05,591 --> 01:14:06,840 HANNAH BLUMBERG: Ndiyo, hasa. 1557 01:14:06,840 --> 01:14:07,340 Nzuri. 1558 01:14:07,340 --> 01:14:10,461 Wakati kuchagua na darasa, ni kwenda kuwa dot badala ya chupa ishara. 1559 01:14:10,461 --> 01:14:10,960 Ndiyo. 1560 01:14:10,960 --> 01:14:12,710 >> Watazamaji: Je, wewe kwenda juu tofauti 1561 01:14:12,710 --> 01:14:14,310 kati ya kuchagua na ID na kwa tabaka la? 1562 01:14:14,310 --> 01:14:14,560 >> HANNAH BLUMBERG: Ni kweli. 1563 01:14:14,560 --> 01:14:17,510 Tofauti kati ya kuchagua ID na kuchagua na darasa. 1564 01:14:17,510 --> 01:14:20,685 Hivyo kama Maria alisema kidogo mapema, kuna 1565 01:14:20,685 --> 01:14:26,280 inaweza tu kuwa moja HTML kipengele pamoja ID kupewa, ambapo darasani, 1566 01:14:26,280 --> 01:14:29,740 inaruhusu sisi kundi kundi mambo ya tofauti pamoja, 1567 01:14:29,740 --> 01:14:34,300 hivyo mambo ambayo ni kuhusiana, lakini si sawa. 1568 01:14:34,300 --> 01:14:35,685 Je, hiyo kujibu swali? 1569 01:14:35,685 --> 01:14:36,200 Kutisha. 1570 01:14:36,200 --> 01:14:37,194 Ndiyo. 1571 01:14:37,194 --> 01:14:40,680 >> Watazamaji: Je, kama una nyingi mambo ambayo ni katika darasa moja? 1572 01:14:40,680 --> 01:14:42,150 >> HANNAH BLUMBERG: Nini kinatokea kama una mambo mbalimbali kwamba 1573 01:14:42,150 --> 01:14:43,280 ni darasa moja? 1574 01:14:43,280 --> 01:14:45,829 Hivyo, kwa mfano, kama sisi ni kutumia safi tu JavaScript, 1575 01:14:45,829 --> 01:14:48,120 tunataka kufanya kitu kama document.getElementsByClass. 1576 01:14:48,120 --> 01:14:52,280 1577 01:14:52,280 --> 01:14:56,320 Na kisha nini kwamba kweli haina ni faida safu ya vipengele. 1578 01:14:56,320 --> 01:14:59,517 >> Na una ama iterate juu ya yao au kupata ambayo moja unataka. 1579 01:14:59,517 --> 01:15:01,350 Ni si kwenda kutoa wewe kipengele moja. 1580 01:15:01,350 --> 01:15:03,450 Ni kwenda kukupa safu ya vipengele. 1581 01:15:03,450 --> 01:15:05,280 Mkuu swali. 1582 01:15:05,280 --> 01:15:07,700 Kitu kingine? 1583 01:15:07,700 --> 01:15:09,520 Kutisha. 1584 01:15:09,520 --> 01:15:12,860 >> Hivyo nadhani kama wewe ni ukoo na yoyote jQuery wewe aliona katika pset, 1585 01:15:12,860 --> 01:15:15,600 unapaswa kuwa vizuri kwenda. 1586 01:15:15,600 --> 01:15:16,325 Swali? 1587 01:15:16,325 --> 01:15:17,610 Oh, hakuna. 1588 01:15:17,610 --> 01:15:18,859 Mimi kwa kweli kuwa na kufundisha. 1589 01:15:18,859 --> 01:15:19,358 Kupumzika. 1590 01:15:19,358 --> 01:15:20,035 Ni utakuwa faini. 1591 01:15:20,035 --> 01:15:20,660 Mimi itabidi kupata huko. 1592 01:15:20,660 --> 01:15:24,670 1593 01:15:24,670 --> 01:15:26,870 >> Hebu majadiliano juu ya Ajax. 1594 01:15:26,870 --> 01:15:31,350 Hivyo Ajax ni kwenda kuwa a-- vizuri, hebu kuanza na kile anasimama kwa. 1595 01:15:31,350 --> 01:15:32,350 Ni kifupi. 1596 01:15:32,350 --> 01:15:35,855 Ni anasimama kwa Asynchronous JavaScript na XML. 1597 01:15:35,855 --> 01:15:39,800 Na XML ni kimsingi ni kwenda kuwa [Inaudible] kwa aina ya takwimu zetu. 1598 01:15:39,800 --> 01:15:42,100 Lakini sisi si kweli kutumika XML. 1599 01:15:42,100 --> 01:15:43,430 Badala yake, sisi tu kutumia JSON. 1600 01:15:43,430 --> 01:15:48,350 >> Hivyo kimsingi, ni baadhi data-- Asynchronous, JavaScript, na data, 1601 01:15:48,350 --> 01:15:50,040 katika kesi hiyo, JSON. 1602 01:15:50,040 --> 01:15:52,820 Na lengo letu, kama sisi zilizotajwa kidogo mapema, 1603 01:15:52,820 --> 01:15:56,880 ni kuwa na uwezo wa kufanya ombi, kuwa ombi hilo kufanya 1604 01:15:56,880 --> 01:16:00,700 Jambo wake katika nyuma, lakini kuendelea 1605 01:16:00,700 --> 01:16:02,550 kufanya lolote tulikuwa na madhumuni ya kufanya. 1606 01:16:02,550 --> 01:16:06,650 Na kisha wakati habari ambazo ni tayari, basi tutaweza kuingiza. 1607 01:16:06,650 --> 01:16:08,470 >> Basi hebu angalia nini hii kweli inaonekana kama. 1608 01:16:08,470 --> 01:16:11,210 Na hii, unapaswa kuwa kidogo ukoo 1609 01:16:11,210 --> 01:16:13,680 kutoka pset8, moja tu akageuka katika. 1610 01:16:13,680 --> 01:16:16,200 Hivyo hapa ni jQuery halali kazi ili tupate 1611 01:16:16,200 --> 01:16:18,250 wanataka kujua about-- ishara hii dola. 1612 01:16:18,250 --> 01:16:21,500 Hivyo anasema jQuery kazi, .getJson. 1613 01:16:21,500 --> 01:16:25,020 >> Na nini kazi hii haina ni inachukua URL na baadhi parameters-- 1614 01:16:25,020 --> 01:16:28,000 hivyo nadhani katika kesi ya pset8, ilikuwa ni kama, 1615 01:16:28,000 --> 01:16:33,520 URL ilikuwa articles.php na vigezo alikuwa kwenda = baadhi ya kanuni za posta. 1616 01:16:33,520 --> 01:16:41,580 Na inasema, sawa, kufanya ombi kwa URL hii na vigezo fulani. 1617 01:16:41,580 --> 01:16:43,480 Na kwamba hutokea tu. 1618 01:16:43,480 --> 01:16:47,730 >> Wakati kukamilisha kufanya, ni ama kwenda kwa mafanikio kamili 1619 01:16:47,730 --> 01:16:49,370 au ni kwenda kushindwa. 1620 01:16:49,370 --> 01:16:53,480 Hivyo hii ni sawa na wito Rob na kumuuliza kufanya kitu fulani. 1621 01:16:53,480 --> 01:17:00,260 Na kisha wakati yeye wito nyuma, yeye ni ama kwenda kusema mimi nina kufanyika au nilishindwa. 1622 01:17:00,260 --> 01:17:04,030 >> Hivyo katika kesi ambapo uko kufanyika, unaweza kusema, OK, mimi nina kufanyika. 1623 01:17:04,030 --> 01:17:05,980 Na kisha wewe piga kazi hii. 1624 01:17:05,980 --> 01:17:08,915 Katika kesi hiyo, ni kwenda kuwa kazi ambayo inachukua baadhi ya habari. 1625 01:17:08,915 --> 01:17:12,890 Moja sisi kwa kawaida huduma ya juu ni data, data kwamba tulikuwa kweli akarudi 1626 01:17:12,890 --> 01:17:15,900 kutokana na wito .getJSON. 1627 01:17:15,900 --> 01:17:17,470 >> Na unaweza kufanya kitu kwa hayo. 1628 01:17:17,470 --> 01:17:23,670 Hivyo katika kesi ya pset8, sisi kuonyeshwa kama orodha. 1629 01:17:23,670 --> 01:17:29,050 Tahadhari ni kwenda kuwa kazi kiitwacho kama ombi inashindwa 1630 01:17:29,050 --> 01:17:30,450 kwa sababu yoyote. 1631 01:17:30,450 --> 01:17:35,104 Na katika kesi ya pset8, sisi tu console.log yake. 1632 01:17:35,104 --> 01:17:36,020 Maswali yoyote juu ya hilo? 1633 01:17:36,020 --> 01:17:36,300 Naam. 1634 01:17:36,300 --> 01:17:39,633 >> Watazamaji: Je, sisi tu kutumia kazi theta badala ya kazi, textStatus, jqHXR. 1635 01:17:39,633 --> 01:17:43,464 1636 01:17:43,464 --> 01:17:44,380 HANNAH BLUMBERG: Ni kweli. 1637 01:17:44,380 --> 01:17:46,713 Hivyo yeah, nadhani katika pset, sisi tu kuona kazi data. 1638 01:17:46,713 --> 01:17:48,700 Hivyo ni the-- tu ndiyo, sawa. 1639 01:17:48,700 --> 01:17:50,510 Hiyo ni nini tuliona katika pset. 1640 01:17:50,510 --> 01:17:51,480 Hiyo ni kabisa faini. 1641 01:17:51,480 --> 01:17:54,210 >> Hizi ni baadhi tu kama alitaka kujiondoa habari zaidi, 1642 01:17:54,210 --> 01:17:57,190 haya ni mambo ambayo unaweza kupata kutoka .getJSON. 1643 01:17:57,190 --> 01:17:59,040 Nzuri swali. 1644 01:17:59,040 --> 01:17:59,706 Kitu kingine? 1645 01:17:59,706 --> 01:18:00,206 Naam. 1646 01:18:00,206 --> 01:18:01,787 >> Watazamaji: Hivyo .getJSON ni Ajax? 1647 01:18:01,787 --> 01:18:02,620 HANNAH BLUMBERG: Sawa. 1648 01:18:02,620 --> 01:18:05,700 Hivyo hii ni aina ya gumu sehemu. 1649 01:18:05,700 --> 01:18:12,390 Ni kazi jQuery ambayo inaruhusu ufanye wito Asynchronous. 1650 01:18:12,390 --> 01:18:16,080 Na simu hizo Asynchronous, hiyo ni nini tumekuwa akimaanisha kama Ajax. 1651 01:18:16,080 --> 01:18:16,850 Naam. 1652 01:18:16,850 --> 01:18:20,185 Kwamba alichukua yangu kweli kwa muda mrefu kwa kuvuta mbali nilipokuwa mwanafunzi. 1653 01:18:20,185 --> 01:18:21,560 Watazamaji: Je, unaweza kusema kwamba tena? 1654 01:18:21,560 --> 01:18:22,476 HANNAH BLUMBERG: Naam. 1655 01:18:22,476 --> 01:18:23,630 Naweza kusema kwamba tena? 1656 01:18:23,630 --> 01:18:29,010 Hii kazi .getJSON, ni kazi jQuery. 1657 01:18:29,010 --> 01:18:31,970 Na itakuja kufanya wito Asynchronous. 1658 01:18:31,970 --> 01:18:35,700 Na simu hizi Asynchronous, tumekuwa wamekuwa akimaanisha wale kama Ajax. 1659 01:18:35,700 --> 01:18:39,610 1660 01:18:39,610 --> 01:18:41,872 >> Yoyote maswali mengine? 1661 01:18:41,872 --> 01:18:43,330 Tuna tu dakika kadhaa wa kushoto. 1662 01:18:43,330 --> 01:18:45,080 Na Maria kwenda kufuta na usalama 1663 01:18:45,080 --> 01:18:47,464 na kisha tunakwenda kuwa tu kuhusu kosa. 1664 01:18:47,464 --> 01:18:48,630 MARIA ZLATKOVA: Ajabu, sawa. 1665 01:18:48,630 --> 01:18:54,030 Hivyo hii is-- tu kuchukua michache hilo la sekunde ya kuangalia juu ya hili. 1666 01:18:54,030 --> 01:18:56,750 Na hii si kitu kubwa kweli kweli. 1667 01:18:56,750 --> 01:18:59,430 Na unaweza mtu kuniambia kwa nini? 1668 01:18:59,430 --> 01:19:05,650 Ni nini kinachoendelea katika foo na inaweza naweza uwezekano wa kusababisha jambo baya, 1669 01:19:05,650 --> 01:19:06,770 na kile kwamba wito? 1670 01:19:06,770 --> 01:19:07,270 Naam. 1671 01:19:07,270 --> 01:19:10,391 Watazamaji: Kama hoja hiyo ni kupita katika ni wahusika zaidi ya 12, 1672 01:19:10,391 --> 01:19:11,454 inaweza kufurika. 1673 01:19:11,454 --> 01:19:12,370 MARIA ZLATKOVA: Haki. 1674 01:19:12,370 --> 01:19:14,180 Kamilifu. 1675 01:19:14,180 --> 01:19:15,384 Je, ni kwa aitwaye? 1676 01:19:15,384 --> 01:19:16,300 Wewe tu zilizotajwa yake. 1677 01:19:16,300 --> 01:19:16,840 >> Watazamaji: Buffer kufurika. 1678 01:19:16,840 --> 01:19:18,381 >> MARIA ZLATKOVA: Yup, buffer kufurika. 1679 01:19:18,381 --> 01:19:21,230 Hivyo hii ni kitu ambacho sisi rejea kama buffer kufurika. 1680 01:19:21,230 --> 01:19:25,500 Na tunaona kwamba ndani ya foo, tumekuwa defined buffer yetu, c, 1681 01:19:25,500 --> 01:19:27,240 na ukubwa wa 12. 1682 01:19:27,240 --> 01:19:32,680 Hata hivyo, katika kuu, hatufanyi kuangalia kwa njia yoyote wakati wote 1683 01:19:32,680 --> 01:19:36,480 iwapo argv1-- ili hizo ndizo hoja ya pili. 1684 01:19:36,480 --> 01:19:39,630 Hatuna kuangalia kama ukubwa wa ni sahihi. 1685 01:19:39,630 --> 01:19:43,380 >> Hivyo kama tulikuwa na user hasa kwa makusudi 1686 01:19:43,380 --> 01:19:47,170 wanaoweka katika baadhi hoja kuwa alikuwa muda mrefu zaidi ya 12, na kisha uwezekano 1687 01:19:47,170 --> 01:19:50,850 mipaka ya kwamba hoja, alikuwa na baadhi kificho kutekelezwa 1688 01:19:50,850 --> 01:19:55,570 kwamba alikuwa anajaribu kufanya kitu mbaya nayo; basi hii, nini kitatokea, 1689 01:19:55,570 --> 01:19:59,310 ingekuwa kupuuza kurudi pepe ya foo kazi, 1690 01:19:59,310 --> 01:20:04,370 kusababisha kazi kwa wakati kurudi kutekeleza kwamba kanuni. 1691 01:20:04,370 --> 01:20:07,540 Na kisha mambo mabaya inaweza kutokea. 1692 01:20:07,540 --> 01:20:09,850 Je, hii maana kufanya kila mtu? 1693 01:20:09,850 --> 01:20:12,424 >> Na tunawezaje kujikinga na hili? 1694 01:20:12,424 --> 01:20:13,090 Mapendekezo yoyote? 1695 01:20:13,090 --> 01:20:16,480 1696 01:20:16,480 --> 01:20:21,890 Kimsingi, ndani ya uwezekano wa foo, jinsi 1697 01:20:21,890 --> 01:20:28,294 Tunaweza kuangalia kuhakikisha kuwa kwamba haiwezi kutokea? 1698 01:20:28,294 --> 01:20:33,879 >> Watazamaji: Kama kawaida 12 ni ulizidi, ungependa kutenga kumbukumbu za ziada? 1699 01:20:33,879 --> 01:20:37,170 MARIA ZLATKOVA: Pendekezo ni, kutenga kumbukumbu ya ziada ya ukubwa ilizidi. 1700 01:20:37,170 --> 01:20:39,800 Kwa kweli, tunaweza kufanya kitu a rahisi sana kuliko kuwa vilevile. 1701 01:20:39,800 --> 01:20:44,870 Tunaweza tu kupata urefu wa kamba ya hoja kwamba ni aliingia, 1702 01:20:44,870 --> 01:20:48,590 kuangalia kama kwamba ni chini kuliko au sawa na 12-- 1703 01:20:48,590 --> 01:20:50,790 ambayo ni nini tunataka kuwa kwa sababu hatutaki 1704 01:20:50,790 --> 01:20:52,373 ni kuzidi mipaka ya buffer yetu. 1705 01:20:52,373 --> 01:20:55,690 Na kisha kama hana, sisi wanaweza kufanya kazi na hoja. 1706 01:20:55,690 --> 01:21:00,296 Na kisha kama itakuwa hivyo, sisi kweli wanataka kwa Yello uwezekano katika user. 1707 01:21:00,296 --> 01:21:01,670 Lakini hii ni jinsi gani tunataka kufanya hivyo. 1708 01:21:01,670 --> 01:21:02,443 Ndiyo. 1709 01:21:02,443 --> 01:21:04,360 >> Watazamaji: Je wewe kueleza memcpy halisi haraka? 1710 01:21:04,360 --> 01:21:05,443 MARIA ZLATKOVA: Oh, pole. 1711 01:21:05,443 --> 01:21:06,040 Ndiyo. 1712 01:21:06,040 --> 01:21:11,290 Memcpy inachukua chochote is-- pole, sawa. 1713 01:21:11,290 --> 01:21:15,850 Memcpy inachukua vilivyomo katika bar, chochote ni kupita 1714 01:21:15,850 --> 01:21:18,050 kwenye foo kama hoja mstari amri. 1715 01:21:18,050 --> 01:21:19,440 Hivyo ni kwenda kuchukua argv1. 1716 01:21:19,440 --> 01:21:21,420 Argv1 inaitwa bar hapa. 1717 01:21:21,420 --> 01:21:24,453 Hivyo ni kwenda kuchukua bar na itakuja nakala yake ndani ya c. 1718 01:21:24,453 --> 01:21:25,402 >> Watazamaji: Sawa. 1719 01:21:25,402 --> 01:21:28,360 MARIA ZLATKOVA: Na itakuja copy-- Hoja ya tatu tu inahusu 1720 01:21:28,360 --> 01:21:30,601 kwa kiasi gani ni kwenda nakala katika c. 1721 01:21:30,601 --> 01:21:31,142 Watazamaji: Ah. 1722 01:21:31,142 --> 01:21:33,030 Hivyo hii moja ya kuiga wote wa basi. 1723 01:21:33,030 --> 01:21:34,310 >> MARIA ZLATKOVA: Yeah, ni kuiga yote. 1724 01:21:34,310 --> 01:21:34,810 Yep. 1725 01:21:34,810 --> 01:21:38,400 1726 01:21:38,400 --> 01:21:41,910 Kwanza, sisi kuhakikisha bar si sawa kwa null sababu ni pointer. 1727 01:21:41,910 --> 01:21:44,680 Kisha sisi kupata urefu wa kamba bar. 1728 01:21:44,680 --> 01:21:47,530 Sisi kuhakikisha kwamba ni chini ya au sawa hadi 12. 1729 01:21:47,530 --> 01:21:50,070 Na kisha kwa sababu tumekuwa alihakikisha, tunaweza kweli 1730 01:21:50,070 --> 01:21:53,122 memcpy na kuwa na uhakika kwamba hiyo ni sawa. 1731 01:21:53,122 --> 01:21:53,705 Maswali yoyote? 1732 01:21:53,705 --> 01:21:56,280 1733 01:21:56,280 --> 01:21:58,690 Kubwa. 1734 01:21:58,690 --> 01:22:00,400 Nina maswali mawili kweli au uongo. 1735 01:22:00,400 --> 01:22:05,470 Yeyote anaweza kuniambia mara moja kama hizi ni kweli au uongo? 1736 01:22:05,470 --> 01:22:07,460 Ndiyo, ni uongo. 1737 01:22:07,460 --> 01:22:07,960 Hasa. 1738 01:22:07,960 --> 01:22:09,330 Wote wawili ni uongo. 1739 01:22:09,330 --> 01:22:12,682 Hivyo kwa kutumia password moja ni wazo nzuri kwa kweli kamwe 1740 01:22:12,682 --> 01:22:14,890 kwa sababu kama mtu anajua password yako, wanaweza tu 1741 01:22:14,890 --> 01:22:16,260 kupata akaunti yako mengine yote. 1742 01:22:16,260 --> 01:22:19,260 Na kisha icons kufanya lolote kuhakikisha usalama. 1743 01:22:19,260 --> 01:22:24,900 Tunapaswa kawaida kuangalia kwa HTTPS badala ya HTTP na URL. 1744 01:22:24,900 --> 01:22:28,560 >> Na aina nyingine ya mashambulizi kwamba tumekuwa zilizotajwa, 1745 01:22:28,560 --> 01:22:31,390 Daudi ametaja katika hotuba, mashambulizi SQL sindano. 1746 01:22:31,390 --> 01:22:37,310 Sisi tayari kuona kwamba kama sisi do not CS50 swala kazi anahakikisha kuwa SQL 1747 01:22:37,310 --> 01:22:39,530 mashambulizi sindano haiwezi kutokea. 1748 01:22:39,530 --> 01:22:42,640 Lakini kama sisi si kutumia CS50, quote, unquote "katika swala," 1749 01:22:42,640 --> 01:22:46,830 tunataka kuwa ili kuhakikisha kuwa pembejeo mtumiaji si kweli baadhi SQL 1750 01:22:46,830 --> 01:22:49,670 swala ambayo kusababisha zote meza yetu kuwa imeshuka 1751 01:22:49,670 --> 01:22:54,070 au kitu mbaya kwa kutokea kwa database yetu. 1752 01:22:54,070 --> 01:22:56,790 >> Kikao cha utekaji nyara ni aina nyingine ya shambulio 1753 01:22:56,790 --> 01:23:05,940 kwamba kinachotokea wakati baadhi mbaya mtu anatumia kikao baadhi mhasiriwa 1754 01:23:05,940 --> 01:23:08,740 ID ya kupata habari kuingia. 1755 01:23:08,740 --> 01:23:13,620 Hivyo mfano yasiyo na maana sana ya kwamba ni kama kama tuna kompyuta ya umma, 1756 01:23:13,620 --> 01:23:21,120 kisha mtu mbaya magogo katika na kisha wana kuki kwamba ni kuokolewa. 1757 01:23:21,120 --> 01:23:23,380 Na kuki wala mabadiliko kwa kikao. 1758 01:23:23,380 --> 01:23:27,620 >> Kisha sisi kuwa muathirika kwenda katika na kisha kuingia katika tovuti. 1759 01:23:27,620 --> 01:23:30,290 Kuki wala mabadiliko kwa ajili ya kikao fulani. 1760 01:23:30,290 --> 01:23:33,060 Na kisha muathirika magogo katika tovuti na kisha majani. 1761 01:23:33,060 --> 01:23:36,190 Na kisha mtu ambaye huenda nyuma Basi unaweza bado kutumia ID yao kikao 1762 01:23:36,190 --> 01:23:37,430 kupata taarifa zao. 1763 01:23:37,430 --> 01:23:40,050 Hivyo hiyo ni mfano mmoja wa jinsi ambayo inaweza kutokea. 1764 01:23:40,050 --> 01:23:45,570 >> Na kisha napenda wasiwasi sana kuhusu kificho maalum au chochote 1765 01:23:45,570 --> 01:23:49,270 kama kwamba ambayo inaweza kusababisha hii, lakini kuwa na aina fulani ya wazo nini 1766 01:23:49,270 --> 01:23:51,400 vigezo kushiriki katika hii ni. 1767 01:23:51,400 --> 01:23:53,897 Na kisha kufanyia kichwa data ni aina nyingine ya shambulio 1768 01:23:53,897 --> 01:23:55,230 ambayo ina Daudi kuongelea. 1769 01:23:55,230 --> 01:23:59,730 Na ni haki inahusu nini kinaweza kutokea wakati 1770 01:23:59,730 --> 01:24:04,300 majibu, HTTP majibu ndani ya kichwa yetu 1771 01:24:04,300 --> 01:24:05,720 si sanitized vizuri. 1772 01:24:05,720 --> 01:24:14,340 >> Na yeyote kati fields-- kwa mfano, kama mtu overwrites moja ya kichwa 1773 01:24:14,340 --> 01:24:18,860 maadili vyenye chochote zaidi ya nini wanapaswa contain-- na kwa kweli 1774 01:24:18,860 --> 01:24:22,720 vyenye Kwa mfano, 200 OK hali kificho, basi wao 1775 01:24:22,720 --> 01:24:26,890 inaweza uwezekano wa kufanya kwa makusudi mambo wakati wao ni hawatakiwi. 1776 01:24:26,890 --> 01:24:30,815 Lakini napenda kuwa na wasiwasi sana mengi kuhusu kificho maalum 1777 01:24:30,815 --> 01:24:34,110 ambayo inaweza kusababisha hii, tu aina ya uelewa 1778 01:24:34,110 --> 01:24:37,290 ngazi ya juu mambo kama hayo. 1779 01:24:37,290 --> 01:24:39,570 >> Nadhani hii yote ni kwamba tuna ili kufidia. 1780 01:24:39,570 --> 01:24:40,090 Ajabu. 1781 01:24:40,090 --> 01:24:43,310 Mtu yeyote una maswali yoyote juu ya yoyote ya mambo ambayo sisi kufunikwa? 1782 01:24:43,310 --> 01:24:44,213 Ndiyo. 1783 01:24:44,213 --> 01:24:48,077 >> Watazamaji: Hivyo aina moja ya zaidi vifaa swali. 1784 01:24:48,077 --> 01:24:53,400 Ni bidhaa hasa ililenga juu ya mambo baada ya jaribio 1? 1785 01:24:53,400 --> 01:24:55,730 >> MARIA ZLATKOVA: Kwa hiyo Swali ni kwamba, ni maudhui 1786 01:24:55,730 --> 01:24:59,720 mkazo zaidi juu ya mambo baada ya jaribio 1? 1787 01:24:59,720 --> 01:25:06,070 Hivyo lengo ni juu baada ya Jaribio 1, isipokuwa 1788 01:25:06,070 --> 01:25:10,914 kuwa tunahitaji kuzingatia mambo katika pset5 na mengi ya miundo data 1789 01:25:10,914 --> 01:25:11,580 kwamba sisi mifuniko. 1790 01:25:11,580 --> 01:25:14,300 Na hatuwezi kusema kwamba sisi Unaweza kupuuza chochote kabla 1791 01:25:14,300 --> 01:25:17,120 kwamba kwa sababu hujenga juu yake pia. 1792 01:25:17,120 --> 01:25:21,845 >> Hivyo kuzingatia kwamba, pamoja na pset5 nyenzo kama ikiwa ni pamoja na wanaohusishwa orodha, mwingi, 1793 01:25:21,845 --> 01:25:23,720 foleni, na kila kitu Hana akaenda juu. 1794 01:25:23,720 --> 01:25:24,050 >> HANNAH BLUMBERG: Haki. 1795 01:25:24,050 --> 01:25:27,450 Naam, tulikwenda juu ya yote C mambo mwanzoni sana kwa haraka sana. 1796 01:25:27,450 --> 01:25:29,090 Lakini kuhakikisha kufanya mapitio ya kwamba. 1797 01:25:29,090 --> 01:25:32,700 Kurudi nyuma na kuangalia jaribio 0 mapitio. 1798 01:25:32,700 --> 01:25:36,110 >> Wanandoa maelezo zaidi vifaa, tu wakati tuna mawazo yako. 1799 01:25:36,110 --> 01:25:39,100 Sisi ni kwenda na masaa ya ofisi wote juu ya Jumatatu na Jumanne usiku. 1800 01:25:39,100 --> 01:25:41,540 Wao wanaenda kuwa katika MD 119. 1801 01:25:41,540 --> 01:25:44,220 Hii ni yote katika tovuti, hivyo kama huna kusikia, hakuna wasiwasi. 1802 01:25:44,220 --> 01:25:45,266 >> MARIA ZLATKOVA: 8:30-11:00. 1803 01:25:45,266 --> 01:25:46,260 >> HANNAH BLUMBERG: Yeah, 8:30-11:00. 1804 01:25:46,260 --> 01:25:46,910 Tutaweza kuwa huko. 1805 01:25:46,910 --> 01:25:48,368 Tutaweza kuwa kuna kujibu maswali. 1806 01:25:48,368 --> 01:25:49,480 Ni pretty baridi na furaha. 1807 01:25:49,480 --> 01:25:53,240 Nyie wanaweza kuuliza maswali yoyote kwamba una juu ya jaribio 1. 1808 01:25:53,240 --> 01:25:55,740 Na jaribio 1 ni juu ya Jumatano, hivyo bahati nzuri. 1809 01:25:55,740 --> 01:25:59,770 Kama una maswali yoyote, labda kuja kuzungumza na sisi hapa moja kwa moja. 1810 01:25:59,770 --> 01:26:00,880 Baridi. 1811 01:26:00,880 --> 01:26:01,630 Asante sana. 1812 01:26:01,630 --> 01:26:02,880 >> MARIA ZLATKOVA: Asante sana, nyie. 1813 01:26:02,880 --> 01:26:03,480 >> Watazamaji: Yay. 1814 01:26:03,480 --> 01:26:05,930 >> [Makofi] 1815 01:26:05,930 --> 01:26:07,530