1 00:00:00,000 --> 00:00:01,940 >> [Jwe mizik] 2 00:00:01,940 --> 00:00:11,130 3 00:00:11,130 --> 00:00:14,620 >> DAVID Malan: Sa a se CS 50, ak sa a se kòmansman an nan semèn nèf. 4 00:00:14,620 --> 00:00:18,240 Ak sa ki nou te panse nou ta fè jodi a se pa sèlman fèmen chapit la sou semèn pase a 5 00:00:18,240 --> 00:00:22,670 materyèl kote nou konsantre sou sèvè pwogram entènèt kòt ak PHP ak SQL, 6 00:00:22,670 --> 00:00:23,549 kèk bagay baz done. 7 00:00:23,549 --> 00:00:25,590 Nou pral pale sou yon ti jan nan jodi a sekirite ak Lè sa a, 8 00:00:25,590 --> 00:00:29,590 tranzisyon nan yon pwogram bò kliyan lang li te ye tankou JavaScript. 9 00:00:29,590 --> 00:00:31,330 Men, anvan, gen kèk Bondye vin delivre. 10 00:00:31,330 --> 00:00:35,030 >> Ou ka sonje ke sou Mèkredi, mwen mete soti 11 00:00:35,030 --> 00:00:37,550 yo ekri yon sit entènèt ki te pran nan opinyon itilizatè a 12 00:00:37,550 --> 00:00:41,120 pa yon HTML fòme ki Lè sa a, ki estoke ke non opinyon itilizatè, telefòn 13 00:00:41,120 --> 00:00:43,124 chif, ak cellphone transpòtè nan baz done a. 14 00:00:43,124 --> 00:00:45,540 Lè sa a, mwen te gen yon ti kras lòd liy script ekri nan PHP 15 00:00:45,540 --> 00:00:47,956 ki te sipoze repekte sou ranje yo nan baz done a 16 00:00:47,956 --> 00:00:49,400 e pou voye soti mesaj tèks. 17 00:00:49,400 --> 00:00:53,870 Malgre plizyè, tantativ plizyè, nou pa t 'jwenn ki k ap travay nan fen an. 18 00:00:53,870 --> 00:00:57,820 >> Se konsa, mwen depanse tout semèn sa a ap travay sou sa Kòd jwenn nou sot pase pwen an 19 00:00:57,820 --> 00:01:01,220 kote nou te kite, annakò ak sa tout Mwen te resevwa nan fen Mèkredi 20 00:01:01,220 --> 00:01:05,500 te sa a mesaj tèks soti nan Mago jan mwen plede, 21 00:01:05,500 --> 00:01:09,940 ki te swiv pa yon mesaj tèks soti nan yon lòt kondisip klas, Ou te gen sa a David. 22 00:01:09,940 --> 00:01:14,030 Ki te swiv pa yon sèl sa a, bèl ankouraje. 23 00:01:14,030 --> 00:01:15,840 Kenbe sou prale a, trè ankourajan. 24 00:01:15,840 --> 00:01:20,960 Mwen prèske te resevwa li jiskaske then-- ak sa a, se nòt la nou te fini nan Mèkredi. 25 00:01:20,960 --> 00:01:25,850 Lè sa a, aktyèlman petèt mwen pi renmen, yon ti moman pita, sa a te vin nan. 26 00:01:25,850 --> 00:01:27,000 Modi Viv Stream. 27 00:01:27,000 --> 00:01:31,080 >> Se konsa, jounen jodi a, nou ranje sa a ak yon rapid gade nan ki sa mwen te fè depi. 28 00:01:31,080 --> 00:01:35,440 Se konsa, tout nan kòd sa a se disponib sou entènèt nan semèn pase a, semèn uit, 29 00:01:35,440 --> 00:01:36,300 sous kòd. 30 00:01:36,300 --> 00:01:39,425 Men, ou pral wè ke mwen te ale nan, ak mwen aktyèlman netwaye bagay sa yo yon ti jan. 31 00:01:39,425 --> 00:01:42,080 Mwen prezante yon koup lòt karakteristik nan yon baz done SQL. 32 00:01:42,080 --> 00:01:45,300 Pou egzanp, olye ke jis fè konpayi asirans nan var Char 33 00:01:45,300 --> 00:01:47,310 jan mwen panse ke mwen te fè sou vole a semèn pase a. 34 00:01:47,310 --> 00:01:49,820 Mwen olye defini li kòm sa ki rele yon enumerasyon. 35 00:01:49,820 --> 00:01:53,310 >> Se konsa, kèk nan ou ta ka gen pou wè sa a kòm nou eksplore C. anom se aktyèlman 36 00:01:53,310 --> 00:01:56,820 yon karakteristik nan C kote ou ka resanse yon pakèt antye nan konstan 37 00:01:56,820 --> 00:01:59,640 epi plase yo valè otomatik, tankou yonn, de, twa, kat 38 00:01:59,640 --> 00:02:01,330 san yo pa gen nimewo Kòd difisil. 39 00:02:01,330 --> 00:02:04,780 Se konsa, SQL sipòte menm bagay la tou, annakò ak sa si ou gen yon jaden baz done ke ou sèlman 40 00:02:04,780 --> 00:02:09,389 vle pran sou youn nan fini valè, ou ka literalman presize l ' 41 00:02:09,389 --> 00:02:13,120 jan mwen te fè gen pou kat popilè US cellphone transpòtè. 42 00:02:13,120 --> 00:02:13,819 >> Se konsa, mwen te fè sa. 43 00:02:13,819 --> 00:02:16,610 Apre sa, mwen te fè yon kantite chanjman kòm byen, ki pi enpòtan an nan yo ki 44 00:02:16,610 --> 00:02:20,090 te jwenn imel k ap travay paske sonje, ke pwogram sa a konte sou ki 45 00:02:20,090 --> 00:02:23,470 jeneralman yo rele yon imèl bay SMS pòtay, ki se jis 46 00:02:23,470 --> 00:02:27,670 yon fason anpenpan nan li di ke Verizon, ak AT & T, ak lòt jan sipòte yon sèvè, 47 00:02:27,670 --> 00:02:30,740 kote si li resevwa imel, li konvèti li nan SMS 48 00:02:30,740 --> 00:02:33,290 epi voye soti yon tèks mesaj bay telefòn yon moun. 49 00:02:33,290 --> 00:02:37,010 Se konsa, si m 'te fè sa a kòrèkteman, isit la se yon nouvo ak amelyore fòm 50 00:02:37,010 --> 00:02:39,259 ki pral pou pale ak nouvo ak amelyore Kòd, ki 51 00:02:39,259 --> 00:02:40,300 ou ka jwe ak sou entènèt. 52 00:02:40,300 --> 00:02:44,140 Epi li pral èspere ke fè m ' BEEP telefòn nan jis moman yon. 53 00:02:44,140 --> 00:02:47,240 >> Se konsa, premye, mwen pral tape nan non mwen. 54 00:02:47,240 --> 00:02:51,400 Dezyèmman, mwen pa pwal fè sa a tan sa a. 55 00:02:51,400 --> 00:02:53,920 Mwen pral Enspekte Eleman. 56 00:02:53,920 --> 00:02:56,710 Lè sa a se jis yon ti bagay konsa, mwen pa fè sa 57 00:02:56,710 --> 00:02:59,250 kreye èdtan nan pòs pwodiksyon travay jan mwen te fè dènye tan. 58 00:02:59,250 --> 00:03:02,300 Gen kounye a se nimewo telefòn mwen. 59 00:03:02,300 --> 00:03:03,560 >> Mwen pral chwazi Verizon. 60 00:03:03,560 --> 00:03:10,260 Ak isit la, se pou yo vire sou mikwofòn sa a isit la, ak bi sa a nan telefòn mwen isit la. 61 00:03:10,260 --> 00:03:13,130 Mwen pral klike sou Anrejistre, ki ta dwe èspere ke 62 00:03:13,130 --> 00:03:14,530 mete l 'nan baz done a. 63 00:03:14,530 --> 00:03:16,780 Koulye a, mwen pral pou yo ale nan la pwogram liy lòd, ki 64 00:03:16,780 --> 00:03:20,825 te rapèl rele dot koupe tèks, ak travèse dwèt ou. 65 00:03:20,825 --> 00:03:24,092 66 00:03:24,092 --> 00:03:26,527 Isit la nou ale. 67 00:03:26,527 --> 00:03:27,501 >> [Dings TELEFÒN] 68 00:03:27,501 --> 00:03:28,962 >> [Aplodisman] 69 00:03:28,962 --> 00:03:31,815 70 00:03:31,815 --> 00:03:34,940 DAVID Malan: Se konsa, plezi pi plis pase this-- li a plezi, nan kou, si mwen jwenn nan li. 71 00:03:34,940 --> 00:03:38,004 Men, li la plezi pi plis, mwen te panse, si nou kreye youn nan moman sa yo fim 72 00:03:38,004 --> 00:03:40,420 kote tankou yon bagay ki reyèlman move te rive nan mond lan, 73 00:03:40,420 --> 00:03:42,860 ak renmen tout pèp la nan NSA cellphones kòmanse bip 74 00:03:42,860 --> 00:03:44,860 ak mesaj tèks avèrtir yo sa a reyalite. 75 00:03:44,860 --> 00:03:47,026 Se konsa, mwen te panse nou ta eseye rkree menm bagay la tou isit la, 76 00:03:47,026 --> 00:03:49,610 annakò ak sa pa lè l sèvi avèk yon baz done, Mwen olye nan avanse 77 00:03:49,610 --> 00:03:51,490 te ekri yon pwogram ki sanble tankou sa a. 78 00:03:51,490 --> 00:03:53,660 >> Sa a se yon index.php-- ak mwen mete kòd sa a sou entènèt 79 00:03:53,660 --> 00:03:56,710 kòm well-- ki aparamman jis rann form.php, 80 00:03:56,710 --> 00:04:00,990 lè l sèvi avèk yon style paradigm mv ke nou pale sou nan plis detay nan seri pwoblèm 81 00:04:00,990 --> 00:04:01,650 sèt. 82 00:04:01,650 --> 00:04:02,910 Fòm Sa se trè senp. 83 00:04:02,910 --> 00:04:06,634 Li nan ale nan soumèt a yon dosye rele here.php via pòs. 84 00:04:06,634 --> 00:04:09,300 Epi li aparamman pral mande pou yon non, ak yon nimewo telefòn, 85 00:04:09,300 --> 00:04:11,400 ak Lè sa a via nan sa yo rele Chwazi meni an, li nan 86 00:04:11,400 --> 00:04:14,250 pral ba ou nan omwen kat popilè US transpòtè cellphone, 87 00:04:14,250 --> 00:04:17,470 ak Lè sa a pèmèt ou efektivman pran prezans pa klike isit la. 88 00:04:17,470 --> 00:04:20,471 >> Ak isit la, pandan se tan, ki pral prete kèk nan Kòd la soti nan dènye fwa. 89 00:04:20,471 --> 00:04:22,553 Men, si ou jis koudèy sa a, ou pral wè ke gen nan 90 00:04:22,553 --> 00:04:23,900 yon pakèt antye nan erè kont kouran. 91 00:04:23,900 --> 00:04:26,640 Men, bote a nan fen an se ke nou pa ap ekri nan yon baz done jodi a. 92 00:04:26,640 --> 00:04:29,130 Nou ap kenbe li senp epi jis voye soti èspere ke 93 00:04:29,130 --> 00:04:32,190 yon mesaj tèks via fonksyon mwen te ekri sou sot pase kèk jou rele nan 94 00:04:32,190 --> 00:04:36,270 Tèks, ki se nan Fonksyon. php, ki se ankò disponib sou entènèt. 95 00:04:36,270 --> 00:04:38,210 >> Se konsa, si ou ta renmen patisipe nan sa a. 96 00:04:38,210 --> 00:04:40,190 Nou pa ap ale nan dwe estoke anyen. 97 00:04:40,190 --> 00:04:43,809 Ale nan URL sa a isit la nan tan reyèl. 98 00:04:43,809 --> 00:04:46,850 pa soumèt li jis ankò, men kite a wè si nou ka gen youn nan sa yo fim 99 00:04:46,850 --> 00:04:49,830 moman kote tout moun nan cellphone kòmanse bip, èspere ke jis 100 00:04:49,830 --> 00:04:53,580 yon fwa ane sa a kontrèman ak nan 2011 ki kote sa a te ale oribleman courbe. 101 00:04:53,580 --> 00:04:58,910 E yon fwa ou ale nan adrès sa, ou ta dwe wè yon fòm super senp 102 00:04:58,910 --> 00:05:03,884 ke si ou gen yon non, yon telefòn selilè nimewo, ak yon konpayi asirans cellphone ki 103 00:05:03,884 --> 00:05:06,175 matche lis la gen, ale pi devan epi ranpli fòm nan. 104 00:05:06,175 --> 00:05:07,880 Men, pa frape soumèt jis ankò. 105 00:05:07,880 --> 00:05:10,850 >> Fòm nan k ap pase yo gade tankou sa a. 106 00:05:10,850 --> 00:05:13,660 Ale pi devan epi tape nan non ou, nimewo telefòn. 107 00:05:13,660 --> 00:05:17,670 Op, yon moun k ap pase devan yo nan koub la. 108 00:05:17,670 --> 00:05:18,170 Li nan OK. 109 00:05:18,170 --> 00:05:19,340 OK, tout moun nan ranpli fòm nan. 110 00:05:19,340 --> 00:05:21,400 Sa a ta dwe travay sou yon telefòn, tou, si ou vle. 111 00:05:21,400 --> 00:05:23,695 Tout dwa, sou mak ou, debarase mete, ale. 112 00:05:23,695 --> 00:05:24,195 Frape isit la. 113 00:05:24,195 --> 00:05:27,275 114 00:05:27,275 --> 00:05:27,775 Ki sa? 115 00:05:27,775 --> 00:05:31,140 116 00:05:31,140 --> 00:05:31,640 No 117 00:05:31,640 --> 00:05:34,410 118 00:05:34,410 --> 00:05:40,250 Mwen fè sèman devan Bondye, mwen fè tès sa a plizyè fwa jodi a. 119 00:05:40,250 --> 00:05:41,720 Ou te resevwa li? 120 00:05:41,720 --> 00:05:43,145 >> [Entèrpozisyon vwa] 121 00:05:43,145 --> 00:05:46,470 122 00:05:46,470 --> 00:05:49,560 >> DAVID Malan: OK, erè itilizatè petèt. 123 00:05:49,560 --> 00:05:50,550 Sa a de. 124 00:05:50,550 --> 00:05:53,300 Li te travay pou de soti nan yon kèk santèn, twa, kat. 125 00:05:53,300 --> 00:05:55,940 OK, sa a, se bon. 126 00:05:55,940 --> 00:05:58,520 Kat soti nan senk pou Correct ki jan sou. 127 00:05:58,520 --> 00:05:59,810 >> Se konsa, sa jis rive? 128 00:05:59,810 --> 00:06:02,727 Se konsa, prezimableman, san yo pa wè ou ekran, poukisa ta ka li te errored? 129 00:06:02,727 --> 00:06:05,518 Li pwobableman ke nou te jis ap eseye fè twòp koneksyon 130 00:06:05,518 --> 00:06:08,110 sèvè lapòs Harvard la tout nan yon fwa soti nan adrès la IP menm. 131 00:06:08,110 --> 00:06:10,740 Mwen jis devine depi m 'pa t' gen liksye a nan tès 132 00:06:10,740 --> 00:06:13,220 Kòd sa a ak kèk 300 moun nan avanse 133 00:06:13,220 --> 00:06:16,040 men pou kounye a reyalize ke ke omwen yo ta dwe 134 00:06:16,040 --> 00:06:18,250 gen vinn travay la fè tan sa a. 135 00:06:18,250 --> 00:06:22,880 >> Tout dwa, Se konsa, poukisa se tout la sa a plis konvnabl nan sa k ap pase sou? 136 00:06:22,880 --> 00:06:24,900 Oke premye, yon rapid koup la anons. 137 00:06:24,900 --> 00:06:29,350 Se konsa, yon sèl, si ou ta renmen yo rantre nan Chang, ak Nick, ak lòt moun yo nan manje midi sa a Vandredi, 138 00:06:29,350 --> 00:06:32,400 fè RSVP nan URL la abityèl la. 139 00:06:32,400 --> 00:06:35,650 Si w ap panse a konsantre nan oswa fè yon segondè nan CS, 140 00:06:35,650 --> 00:06:38,941 si wi ou non ou se yon sophomore, oswa elèv nevyèm ane, oswa menm jinyò oswa ansyen nan pwen sa a 141 00:06:38,941 --> 00:06:42,490 epi yo ka toujou peze nan kou yo, reyalize ke lekòl la jeni 142 00:06:42,490 --> 00:06:45,620 se rasanble pou gratis Ben ak Krèm glase Jerry a ak konsèy 143 00:06:45,620 --> 00:06:48,910 sa a yon ti tan apre klas Mèkredi nan 4:00 PM nan bilding lan CS 144 00:06:48,910 --> 00:06:49,771 nan Maxwell Dworkin. 145 00:06:49,771 --> 00:06:51,520 Si sa a se twò vit sou ekran an, jis ale 146 00:06:51,520 --> 00:06:55,260 cs50.harvard.edu pou yon lyen nan evènman an Facebook 147 00:06:55,260 --> 00:06:57,140 kote ou ka wè plis detay. 148 00:06:57,140 --> 00:07:01,390 >> Pandan se tan, mwen te panse mwen ta korije yon lòt bagay mwen goofed nan Mèkredi. 149 00:07:01,390 --> 00:07:04,400 Sanble ke ID Mak la sou Facebook pa t 'twa. 150 00:07:04,400 --> 00:07:05,230 Li te kat. 151 00:07:05,230 --> 00:07:08,330 Vire soti li te gen plis tès kont pase mwen sonje. 152 00:07:08,330 --> 00:07:12,400 Men, sa ki sa a te santi tankou yon opòtinite fè se rale moute yon URL tankou sa a. 153 00:07:12,400 --> 00:07:16,680 >> Se konsa, li sanble ke Facebook te gen yon API, Aplikasyon pou pwogramasyon Entèfas, 154 00:07:16,680 --> 00:07:20,070 ki se yon mekanis annakò ou ka mande done programe 155 00:07:20,070 --> 00:07:24,480 nan Facebook ak jwenn tounen machin enfòmasyon lizib, pa paj wèb 156 00:07:24,480 --> 00:07:28,690 men tèks jis anvan tout koreksyon, yon bagay rele JavaScript Notasyon objè. 157 00:07:28,690 --> 00:07:32,150 Ak an reyalite, si mwen ale nan sa a URL, ak rale nan, pa default, 158 00:07:32,150 --> 00:07:34,960 sa a se Mak la piblikman enfòmasyon ki aksesib. 159 00:07:34,960 --> 00:07:37,430 >> Ak detay nan enteresan isit la se jis ke li ID 160 00:07:37,430 --> 00:07:40,670 se vre, nimewo kat, ki mwen reyalize pi vit ke m 'te fè sa a. 161 00:07:40,670 --> 00:07:44,260 Ou ka fè sa tèt ou si ou konnen non itilizatè Facebook ou a si ou gen youn. 162 00:07:44,260 --> 00:07:45,440 Jis tape l 'moute tèt la. 163 00:07:45,440 --> 00:07:46,640 E pa youn nan sa a se prive. 164 00:07:46,640 --> 00:07:48,670 Mwen jis ap fè sa a menm nan mòd nan enkoyito. 165 00:07:48,670 --> 00:07:49,900 Se konsa, mwen pa menm louvri sesyon an. 166 00:07:49,900 --> 00:07:54,440 Epi ou ap wè ke mwen aparamman te nimewo itilizatè 6.454 167 00:07:54,440 --> 00:07:56,480 sou Facebook, ki se pa twò move jou sa yo. 168 00:07:56,480 --> 00:07:59,900 Se konsa, kanmèm, ou ap wè tou plis enfòmasyon la. 169 00:07:59,900 --> 00:08:02,150 >> Epi aspè nan itil nan ki se ke ou 170 00:08:02,150 --> 00:08:06,890 ta ka ekri lojisyèl pwòp ou a, ki yon jan kanmenm entegre done tankou sa a 171 00:08:06,890 --> 00:08:08,170 nan aplikasyon pwòp ou yo. 172 00:08:08,170 --> 00:08:10,650 Ou ka pèmèt itilizatè yo ale nan sit entènèt ou, 173 00:08:10,650 --> 00:08:14,190 pa lè l sèvi avèk pwòp yo koutim ak non itilizatè modpas men petèt login Facebook yo 174 00:08:14,190 --> 00:08:16,170 epi pou yo jwenn enfòmasyon menm sou zanmi yo, 175 00:08:16,170 --> 00:08:18,740 si yo apwouve sa yo, oswa menm jan an. 176 00:08:18,740 --> 00:08:21,430 Se konsa, sonje ke CS50, tou, gen kèk nan APIs pwòp li yo, 177 00:08:21,430 --> 00:08:24,620 yonn pou done yo kou catalogue, kèk pou bon akolad meni yo nan manje a 178 00:08:24,620 --> 00:08:26,730 koulwa, nan tout la bilding ak kote 179 00:08:26,730 --> 00:08:30,930 sou lakou lekòl la nou gen yon API pou kòm byen ke ou ka sijè rechèch Menm jan an tou epi pou yo jwenn 180 00:08:30,930 --> 00:08:35,520 tounen done textuelle ke ou ka entegre nan yon PHP, oswa JavaScript, oswa menm, 181 00:08:35,520 --> 00:08:38,320 menm si mwens souvan, yon C baze sou pwojè final la. 182 00:08:38,320 --> 00:08:41,190 >> Vreman vre devan yo pou final la pwojè se yon jalons kèk. 183 00:08:41,190 --> 00:08:42,980 Ou te resevwa yon imèl nan men nou lòt jou a. 184 00:08:42,980 --> 00:08:45,761 Reyalize ke pwopozisyon an se akòz sa a ap vini Lendi. 185 00:08:45,761 --> 00:08:49,010 Li nan pa nesesèman obligatwa, men ou bezwen resevwa zanmi ansèyman ou 186 00:08:49,010 --> 00:08:51,260 apwobasyon anvan yo fè nenpòt ki chanjman apre sa. 187 00:08:51,260 --> 00:08:54,280 Lè sa a, devan yo se yon kantite lòt jalons. 188 00:08:54,280 --> 00:08:56,542 >> Se konsa, yo toumante ou, tou, ak kèk posiblite, 189 00:08:56,542 --> 00:08:58,250 nou gen yon pakèt moun sou sa yo anpoul limyè Hue. 190 00:08:58,250 --> 00:09:01,190 Se konsa, kèk nan ou nèg kounye a gen kèk nan sa yo nan chanm dòtwa ou kòm byen. 191 00:09:01,190 --> 00:09:02,920 Apre sa, yo tou gen yon API. 192 00:09:02,920 --> 00:09:07,300 Se konsa, sonje moun semèn anpoul binè de sa ki DAN BRADLEY ak Ansel 193 00:09:07,300 --> 00:09:08,780 Duff kreye pou nou. 194 00:09:08,780 --> 00:09:12,560 Yo te konn itilize yon koòdone lojisyèl sa a anpoul limyè, ki nan moman sa a 195 00:09:12,560 --> 00:09:15,232 se konekte nan elektrisite ak Lè sa a via fil 196 00:09:15,232 --> 00:09:17,690 se ki konekte nan yon ti bagay rele Bridge la desann isit la, 197 00:09:17,690 --> 00:09:21,280 tankou yon ti propriétaires routeur nan aparèy sa a an patikilye. 198 00:09:21,280 --> 00:09:26,540 >> Men, li sanble si mwen konnen ki jan yo voye mesaj HTTP, menm jan nou tout kounye a fè, 199 00:09:26,540 --> 00:09:31,670 Mwen ka voye yon mesaj tankou sa a anpoul sa a limyè yo vire l 'limen oubyen etenn 200 00:09:31,670 --> 00:09:34,000 oswa fè nenpòt ki kantite operasyon lòt sou li. 201 00:09:34,000 --> 00:09:36,110 Remake li pa nan jwenn, li pa nan post. 202 00:09:36,110 --> 00:09:37,760 Genyen yon lòt yon sèl rele mete. 203 00:09:37,760 --> 00:09:39,630 Genyen aktyèlman yon kèk lòt vèb sa yo. 204 00:09:39,630 --> 00:09:42,920 Men, remake gen nan yon chemen a, koupe API, koupe pwomotè nouvo, 205 00:09:42,920 --> 00:09:44,990 koupe limyè, koupe yon sèl, koupe eta. 206 00:09:44,990 --> 00:09:49,060 >> Sa a aparamman jis la chemen ki konpayi an, Philips, 207 00:09:49,060 --> 00:09:51,640 deside ou gen frape ak yon demann HTTP 208 00:09:51,640 --> 00:09:55,010 si ou vle chanje eta a nan anpoul la lè l sèvi avèk HTTP 1.1. 209 00:09:55,010 --> 00:09:56,380 Lè sa a, remake liy lan vid. 210 00:09:56,380 --> 00:10:00,170 Lè sa a, anfen sa ki sanble kalite yon etalaj nan kèk sòt, 211 00:10:00,170 --> 00:10:04,730 sa a ankò ki pral yo dwe rele JavaScript Notasyon objè, oswa Jason. 212 00:10:04,730 --> 00:10:08,000 Ak ki sa ou wè isit la se ke gen twa kle valè pè. 213 00:10:08,000 --> 00:10:09,115 >> Yon kle rele sou. 214 00:10:09,115 --> 00:10:10,990 Ak valè li yo aparamman ki pral yo dwe vre. 215 00:10:10,990 --> 00:10:13,612 Luminozite se 128, ki se kèk kalite Int. 216 00:10:13,612 --> 00:10:15,820 Lè sa a, tan tranzisyon se zewo, ki se aparamman 217 00:10:15,820 --> 00:10:17,970 konbyen tan li k ap pase yo pran yo vire bagay sa a sou. 218 00:10:17,970 --> 00:10:19,890 >> Se konsa, kounye a anpoul sa a limyè se nan. 219 00:10:19,890 --> 00:10:22,880 Men, si mwen fè egzakteman this-- kite m 'ale nan yon fèy twonpe ti kras 220 00:10:22,880 --> 00:10:25,200 ki Dann mete kanpe nan advance-- ak mwen pral 221 00:10:25,200 --> 00:10:27,920 ale pi devan ak fè kopi lòd sa a. 222 00:10:27,920 --> 00:10:30,200 Pli, kòm kèk nan nou ta ka yo te rete ranmase grap lòj sou CS50 223 00:10:30,200 --> 00:10:35,080 Diskite se yon sèvis piblik tankou telne sa yo ke ou ka simulation demann HTTP, 224 00:10:35,080 --> 00:10:36,360 espesyalman mete. 225 00:10:36,360 --> 00:10:39,710 Mwen ka voye done sa a, espesyalman sa nou jis 226 00:10:39,710 --> 00:10:43,430 te wè yon ti moman de sa espesyalman nan URL sa a sou isit la. 227 00:10:43,430 --> 00:10:46,310 Lè sa a, Pli ki pral okipe tout nan tèt yo voulu 228 00:10:46,310 --> 00:10:47,600 ak analyzes gen nan. 229 00:10:47,600 --> 00:10:54,700 >> Se konsa, tout mwen dwe fè se kopi sa a nan yon fenèt tèminal ak Lè sa a frape Mete. 230 00:10:54,700 --> 00:10:56,000 Epi anpoul la limyè ale sou. 231 00:10:56,000 --> 00:10:59,060 Lè sa a se tout ale atravè tout òdinatè mwen wirelessly 232 00:10:59,060 --> 00:11:01,960 yon jan kanmenm desann nan pon an, ki se lè sa a ap pale ak anpoul sa a limyè. 233 00:11:01,960 --> 00:11:02,960 Mwen kapab fè yon lòt bagay. 234 00:11:02,960 --> 00:11:07,050 Mwen ka fè bagay sa a ale wouj pou egzanp. 235 00:11:07,050 --> 00:11:11,040 Mwen ka pou egzanp fè bagay sa a ale vèt. 236 00:11:11,040 --> 00:11:12,220 Mwen ka fè l 'ale ble. 237 00:11:12,220 --> 00:11:14,760 >> Ak Avi nan chak nan sa yo sikonstans yo, tout ke mwen chanje 238 00:11:14,760 --> 00:11:18,540 se sa yo rele valè a Hue aktyèlman ba li kèk koulè. 239 00:11:18,540 --> 00:11:20,320 Se pou m 'kole yon sèl sa a nan kòm byen. 240 00:11:20,320 --> 00:11:21,000 Kounye a li nan ble. 241 00:11:21,000 --> 00:11:24,672 >> Epi ou ka fè menm amateur bagay where-- kite a ale nan vèt. 242 00:11:24,672 --> 00:11:26,630 Apre sa, mwen te kapab fè sa a nan kou ak Kòd pwòp mwen. 243 00:11:26,630 --> 00:11:30,670 Men, menm API nan tèt li sipòte operasyon fenki 244 00:11:30,670 --> 00:11:35,510 tankou sa a, ki pral kounye a bezwen deranje nou pou pwochen 30 segonn yo. 245 00:11:35,510 --> 00:11:39,170 >> Se konsa, sa a, se yon sèl gou nan sa ou ta ka fè ak yon API, yon sèl sa a ki enplike 246 00:11:39,170 --> 00:11:40,010 anpoul limyè. 247 00:11:40,010 --> 00:11:42,510 Remake byen ke CS50 gen yon koup pè Google Glass si ou ta 248 00:11:42,510 --> 00:11:45,380 renmen atake yon bagay sou liy sa yo, Arduino Uno, ki 249 00:11:45,380 --> 00:11:48,670 yo se ti òdinatè ti kras, esansyèlman, sou yon tablo sikwi ti kras 250 00:11:48,670 --> 00:11:50,470 ke ou kapab konekte fil kouran ak lòt bagay 251 00:11:50,470 --> 00:11:52,732 ak aktyèlman kontwòl anviwònman reyèl mond ou. 252 00:11:52,732 --> 00:11:54,940 Lè sa a, gen yon koup jwèt nan nouvo ke nou genyen. 253 00:11:54,940 --> 00:11:59,294 Sa a yon sèl literalman jis te rive nan Lòt jou pa lapòs, yon Myo Brasher. 254 00:11:59,294 --> 00:12:01,710 Apre sa, mwen te panse li nan yon fason yo fè ou jwenn eksite sou pwojè 255 00:12:01,710 --> 00:12:03,720 ke ou ta ka sèvi ak ak pyès ki nan konpitè sa a ta 256 00:12:03,720 --> 00:12:08,900 gen yo jwe sa a kout clip yo ke yo itilize yo toumante jan 257 00:12:08,900 --> 00:12:10,500 ke nou ap viv kounye a nan tan kap vini an. 258 00:12:10,500 --> 00:12:13,494 259 00:12:13,494 --> 00:12:15,490 >> [Jwe mizik] 260 00:12:15,490 --> 00:13:33,410 261 00:13:33,410 --> 00:13:37,109 >> DAVID Malan: Se konsa, nan jis yon kèk semèn, ou twò bon pou yo fre nan jis la CS50. 262 00:13:37,109 --> 00:13:39,150 Yon lòt aparèy ki nou gen yon pakèt moun sou ke nou ap 263 00:13:39,150 --> 00:13:42,090 kè kontan yo prete soti pou pwojè yo rele yon kontwolè mouvman. 264 00:13:42,090 --> 00:13:45,030 Sa a se yon aparèy ti kras USB ou konekte nan yon òdinatè ki 265 00:13:45,030 --> 00:13:47,520 pèmèt ou kominike avèk laptop ou, Mac oswa PC, 266 00:13:47,520 --> 00:13:51,570 tankou si ou te gen tankou yon Xbox Kinect ak aktyèlman fè mosyon fizik anpil 267 00:13:51,570 --> 00:13:54,509 tankou nou wè nan sa a vizyon nan tan kap vini an. 268 00:13:54,509 --> 00:13:56,505 >> [Jwe mizik] 269 00:13:56,505 --> 00:15:03,380 270 00:15:03,380 --> 00:15:06,260 >> DAVID Malan: Se konsa, menm si ou gen okenn lide ki jan yon bagay tankou sa 271 00:15:06,260 --> 00:15:10,050 kapab pètèt dwe envante oswa nan travay ou sou yon nivo pyès ki nan konpitè, pa gen pwoblèm. 272 00:15:10,050 --> 00:15:13,520 Menm apre jis yon kèk mwa nan CS50, ak yon konpreyansyon sou pwogram 273 00:15:13,520 --> 00:15:19,460 plis jeneralman, ak pwogram entènèt plis dènyèman, ak Lè sa a tou APIs, ak HTTP, 274 00:15:19,460 --> 00:15:21,830 ou pral gen aksè via APIs lojisyèl si ou 275 00:15:21,830 --> 00:15:24,680 vle prete youn nan sa yo aparèy ki aktyèlman pale ak li 276 00:15:24,680 --> 00:15:27,180 epi yo pa gen enkyete sou aplikasyon an kache 277 00:15:27,180 --> 00:15:30,220 detay, ki se konplètman ki konsistan avèk sa a nosyon nan stratifikasyon 278 00:15:30,220 --> 00:15:33,610 yon distraksyon ke nou te gen wè nan tout semès la. 279 00:15:33,610 --> 00:15:37,990 >> Se konsa, tou pandan fen semèn nan, te wè yon moso koup la nouvèl. 280 00:15:37,990 --> 00:15:40,640 Ale premye, ale nan seminè si ou ta renmen aprann yon bagay 281 00:15:40,640 --> 00:15:42,160 plis sou nenpòt ki kantite sijè. 282 00:15:42,160 --> 00:15:43,340 Al gade nan URL la a. 283 00:15:43,340 --> 00:15:45,890 Lè sa a yon sèl te voye nan m 'pa Chang, ki moun ki ou konnen, 284 00:15:45,890 --> 00:15:47,850 ki moun ki nan enprime lame nou an nan elefan. 285 00:15:47,850 --> 00:15:49,910 Epi li te yon gran tit jan sa a. 286 00:15:49,910 --> 00:15:51,280 Mwen se pè anpil nan nouvo televizyon mwen. 287 00:15:51,280 --> 00:15:54,301 Poukisa mwen se pè yo vire sa a Bagay sou yo ak sou ou ta ka twò. 288 00:15:54,301 --> 00:15:56,050 Se konsa, nou ap kounye a nan la pwen nan semès la, 289 00:15:56,050 --> 00:15:58,860 tou, kote menm si ou gen mwendr an nan konpreyansyon 290 00:15:58,860 --> 00:16:02,620 nan ki jan entènèt la ap travay, ak HTTP, ak sekirite, bagay sa yo tankou sa a 291 00:16:02,620 --> 00:16:03,980 ta dwe kòmanse trape je ou. 292 00:16:03,980 --> 00:16:07,450 Men, tou, ou pral konprann si wi ou non bagay sa yo se oswa yo pa 293 00:16:07,450 --> 00:16:08,430 menas vrè. 294 00:16:08,430 --> 00:16:10,940 >> Se konsa, mwen te pran yon kèk Ekstrè soti nan atik sa a isit la. 295 00:16:10,940 --> 00:16:12,540 Ak istwa a se jan sa a. 296 00:16:12,540 --> 00:16:14,300 Mwen se kounye a mèt kay la nan yon nouvo televizyon entelijan, ki 297 00:16:14,300 --> 00:16:18,470 pwomès yo delivre difizyon miltimedya kontni, jwèt, app, 298 00:16:18,470 --> 00:16:21,450 medya sosyal, ak entènèt Navigasyon, o ak televizyon tou. 299 00:16:21,450 --> 00:16:24,410 Pwoblèm nan sèlman se ke mwen se kounye a pè yo sèvi ak li, di otè a. 300 00:16:24,410 --> 00:16:29,592 Ou ta dwe, tou, si ou li nan politik la vi prive 46 paj pou televizyon ou. 301 00:16:29,592 --> 00:16:31,800 Kantite lajan an nan done sa Kolekte bagay se stupéfiants. 302 00:16:31,800 --> 00:16:35,710 Li journaux kote, ki lè, ki jan, ak pou konbyen tan ou sèvi ak televizyon an. 303 00:16:35,710 --> 00:16:38,190 Li kouche swiv bonbon, kòm nou te diskite, 304 00:16:38,190 --> 00:16:40,560 ak alèt fèt yo detekte lè ou gen 305 00:16:40,560 --> 00:16:43,185 wè kontni an patikilye oswa yon mesaj imel patikilye 306 00:16:43,185 --> 00:16:45,230 si ou vle tcheke imel sou televizyon ou. 307 00:16:45,230 --> 00:16:48,430 Li anrejistre apps yo ou sèvi ak, sou sit entènèt yo ou vizite, 308 00:16:48,430 --> 00:16:52,280 ak fason ou kominike avèk kontni, fè tout sa via televizyon entelijan ou. 309 00:16:52,280 --> 00:16:55,470 Li te tou, creepier yet-- sa a, se mwen addition-- 310 00:16:55,470 --> 00:16:58,140 gen yon bati nan kamera ak rekonesans vizaj. 311 00:16:58,140 --> 00:17:01,010 >> Rezon ki se bay kontwòl jès pou televizyon an 312 00:17:01,010 --> 00:17:05,490 ak pèmèt ou antre nan pèsonalize kont lè l sèvi avèk figi ou. 313 00:17:05,490 --> 00:17:08,940 Sou tèt la, imaj yo se sove sou televizyon a olye pou yo Uploaded 314 00:17:08,940 --> 00:17:09,940 nan yon sèvè rèstriktirasyon. 315 00:17:09,940 --> 00:17:12,520 Sou anba kote an, entènèt la koneksyon fè televizyon an antye 316 00:17:12,520 --> 00:17:14,811 vilnerab a entru ki moun ki te demontre kapasite nan 317 00:17:14,811 --> 00:17:16,700 yo pran konplete kontwòl sou machin nan. 318 00:17:16,700 --> 00:17:20,880 >> Plis boulvèsan, tankou si ki pa te entelijan ase, se mikwofòn la. 319 00:17:20,880 --> 00:17:23,599 TV a gen anpil yon vwa rekonesans karakteristik 320 00:17:23,599 --> 00:17:26,859 ki pèmèt telespektatè yo kontwole ekran an ak kòmandman vwa. 321 00:17:26,859 --> 00:17:30,290 Men, sèvis la vini ak yon avètisman olye menasan. 322 00:17:30,290 --> 00:17:33,030 Tanpri dwe okouran ke si mo pale ou gen ladan yo 323 00:17:33,030 --> 00:17:36,210 pèsonèl oswa lòt sansib enfòmasyon, ke enfòmasyon 324 00:17:36,210 --> 00:17:40,310 yo pral nan mitan done yo pran epi ki transmèt nan yon twazyèm pati. 325 00:17:40,310 --> 00:17:40,870 Got sa? 326 00:17:40,870 --> 00:17:45,860 pa di pèsonèl oswa sansib bagay nan devan televizyon ou. 327 00:17:45,860 --> 00:17:47,280 >> Se konsa, sa a se aktyèlman pou reyèl. 328 00:17:47,280 --> 00:17:50,530 Lè li nan difisil pa wè si ou ale nan Pi bon Achte oswa tankou an pou televizyon 329 00:17:50,530 --> 00:17:51,030 jou sa yo. 330 00:17:51,030 --> 00:17:52,540 Yo ap tout entelijan nan kèk fason. 331 00:17:52,540 --> 00:17:54,740 Apre sa, yo ap vin pi entelijan ak creepier. 332 00:17:54,740 --> 00:17:57,490 Apre sa, yo ap tou senpleman kolekte done nan fason ki nou te pale sou 333 00:17:57,490 --> 00:18:01,840 ak Lè sa a transfere li via HTTP oswa kèk lòt pwotokòl nan kèk sèvè. 334 00:18:01,840 --> 00:18:05,720 >> Se konsa, sa a te nan yon atik nan yon plezi nan sit entènèt sa a sou entènèt 335 00:18:05,720 --> 00:18:08,940 isit la, ki te pale osijè de yon ensèk patikilye oswa fè erè Kòd 336 00:18:08,940 --> 00:18:11,340 ke nou ka aktyèlman mare nan diskisyon semèn pase a. 337 00:18:11,340 --> 00:18:15,730 Se konsa, gran tit sa a te kòm sa a, istwa a ale isit la, 338 00:18:15,730 --> 00:18:18,720 Josh Breckman te travay pou yon konpayi ki te ateri yon kontra 339 00:18:18,720 --> 00:18:22,390 yo devlope yon jesyon kontni sistèm, oswa CMS ke yo ap rele, 340 00:18:22,390 --> 00:18:24,380 pou yon sit entènèt gouvènman jistis gwo. 341 00:18:24,380 --> 00:18:27,300 Anpil nan pwojè a ki enplike devlope yon sistèm jesyon kontni 342 00:18:27,300 --> 00:18:29,840 se konsa ke anplwaye ta dwe kapab bati epi kenbe 343 00:18:29,840 --> 00:18:31,877 janm chanje nan kontni pou sit yo. 344 00:18:31,877 --> 00:18:34,210 Bagay sa yo te ale trè byen pou yon kèk jou apre ou fin ale viv. 345 00:18:34,210 --> 00:18:37,020 Men, sou jou sis, bagay sa yo te ale pa konsa pou sa byen. 346 00:18:37,020 --> 00:18:39,500 Tout moun nan kontni an sou la te sit entènèt konplètman disparèt. 347 00:18:39,500 --> 00:18:42,950 Epi tout paj mennen nan default la, tanpri antre paj entènèt kontni. 348 00:18:42,950 --> 00:18:43,810 Whoops. 349 00:18:43,810 --> 00:18:46,080 Josh te rele nan mennen ankèt, ak remake 350 00:18:46,080 --> 00:18:49,390 ke youn patikilyèman anbarasman adrès ekstèn IP te gen 351 00:18:49,390 --> 00:18:53,380 ale nan ak efase tout nan kontni an sou sistèm nan. 352 00:18:53,380 --> 00:18:56,290 >> Adrès la IP pa t 'fè pati nan kèk Bent HACKER lòt bò dlo 353 00:18:56,290 --> 00:18:58,340 sou detwi itil enfòmasyon gouvènman an. 354 00:18:58,340 --> 00:19:05,190 Li rezoud a googlebot.com, Anpil pwòp sit entènèt rale Spider Google la. 355 00:19:05,190 --> 00:19:06,010 Whoops. 356 00:19:06,010 --> 00:19:09,150 Apre yon ti jan nan rechèch ak eskalade alantou sa yo jwenn yon backup noncorrupt, 357 00:19:09,150 --> 00:19:10,180 Josh te jwenn pwoblèm nan. 358 00:19:10,180 --> 00:19:12,700 >> Te gen yon itilizatè kopye ak kopye kèk kontni soti nan yon 359 00:19:12,700 --> 00:19:15,670 paj nan yon lòt, ki gen ladan yon Edit ipèrtèkst 360 00:19:15,670 --> 00:19:17,577 edite kontni an sou paj la. 361 00:19:17,577 --> 00:19:20,160 Nòmalman sa a pa ta dwe yon pwoblèm depi yon itilizatè deyò ta 362 00:19:20,160 --> 00:19:24,320 bezwen antre nan yon non ak modpas, men sistèm nan otantifikasyon CMS, 363 00:19:24,320 --> 00:19:27,520 sistèm nan login, pa t 'pran an kont 364 00:19:27,520 --> 00:19:30,980 sofistike ranje andedan teknik nan Google Spider. 365 00:19:30,980 --> 00:19:31,700 Whoops. 366 00:19:31,700 --> 00:19:33,610 >> Kòm li vire soti, Google Spider pa sèvi ak 367 00:19:33,610 --> 00:19:36,950 bonbon, ki vle di ke li kapab fasil kontoune yon chèk pou la 368 00:19:36,950 --> 00:19:39,840 ki louvri sesyon sou seri bonbon yo dwe fo. 369 00:19:39,840 --> 00:19:42,620 Li te tou pa peye atansyon sou JavaScript, ki ta nòmalman 370 00:19:42,620 --> 00:19:45,170 pouse ak redireksyon itilizatè ki pa louvri sesyon an. 371 00:19:45,170 --> 00:19:48,610 Li sepandan swiv chak HyperLink sou chak paj li jwenn, 372 00:19:48,610 --> 00:19:51,700 ki gen ladan moun ki gen Efase Page nan tit la. 373 00:19:51,700 --> 00:19:52,650 Whoops. 374 00:19:52,650 --> 00:19:56,070 >> Se konsa, sa sa vle di nan plis tèm teknik men san patipri aksesib? 375 00:19:56,070 --> 00:19:58,340 Li jis vle di ke nan tout sit entènèt yo, 376 00:19:58,340 --> 00:20:02,287 yo te gen URL pa kontrèman ak yon sèl sa a ki ou ta ka wè nan pwoblèm mete sèt. 377 00:20:02,287 --> 00:20:04,620 Rapèl nan pwoblèm mete sèt oswa ou konnen nan pwoblèm mete sèt 378 00:20:04,620 --> 00:20:06,411 ke w ap defye, pami lòt bagay, 379 00:20:06,411 --> 00:20:08,570 nan vann aksyon sou non nan itilizatè. 380 00:20:08,570 --> 00:20:14,010 Men, mete ann aplikasyon ke karakteristik nan chemen nan jwenn atravè lyen nan itilizatè ou 381 00:20:14,010 --> 00:20:16,880 koòdone, pwobableman pa lide a intélijant 382 00:20:16,880 --> 00:20:20,300 paske si sit ou se yon jan kanmenm aksesib swa pa yon moun 383 00:20:20,300 --> 00:20:23,577 ki moun ki nan klike alantou oswa achte yon bot tankou Google la oswa yon Spider 384 00:20:23,577 --> 00:20:26,160 menm jan yo ap rele sa se sèlman rale entènèt la, nan ap eseye endèks 385 00:20:26,160 --> 00:20:29,060 entènèt la kòm yon motè rechèch, yo te kapab trè fasil 386 00:20:29,060 --> 00:20:31,340 frape atravè jwenn sa a kalite URL. 387 00:20:31,340 --> 00:20:33,770 Epi sa a, fonksyonèl ekivalan a, nan ka sa a, 388 00:20:33,770 --> 00:20:37,000 vann tout aksyon nan Google. 389 00:20:37,000 --> 00:20:40,030 >> Koulye a, franchman, li nan konplètman so ki CMS nan 390 00:20:40,030 --> 00:20:43,240 itilize JavaScript ak bonbon aplike sistèm login li yo 391 00:20:43,240 --> 00:20:47,100 epi yo pa fè sa bò sèvè, kòm ou nèg fè epi yo pral nan pset 7-- 392 00:20:47,100 --> 00:20:49,940 gen nan yon login.php file-- toujou, toujou, 393 00:20:49,940 --> 00:20:52,789 toujou sekirite yo ta dwe fè sou bò a sèvè, 394 00:20:52,789 --> 00:20:56,080 pa sou bò a kliyan paske, tankou sa a Atik sijere epi ou ta ka tèt ou 395 00:20:56,080 --> 00:20:59,600 wè nan kèk pwen, li se trivial pou yon itilizatè, bon oubyen move, 396 00:20:59,600 --> 00:21:02,860 a jis fèmen JavaScript nou pa mansyone bonbon. 397 00:21:02,860 --> 00:21:06,020 Se konsa, se sa ki WTF chak jou ou. 398 00:21:06,020 --> 00:21:07,970 >> Genyen yon sèl plis, ki se jis kalite pè, 399 00:21:07,970 --> 00:21:11,360 se konsa mwen pral mansyone li si sèlman kòm yon leson lavi. 400 00:21:11,360 --> 00:21:14,850 Chak fwa ou sèvi ak yon aplikasyon rele tankou Snapchat oswa tankou an 401 00:21:14,850 --> 00:21:19,380 ki di foto sa yo sèlman pase pou senk segonn, dis segond, oswa etajèr. 402 00:21:19,380 --> 00:21:21,680 Yo ap efemèr Sa se absoliman pa ka a. 403 00:21:21,680 --> 00:21:25,670 Menm jan ak pa gen okenn fason, nimerik, aplike kèk fòm videyo, 404 00:21:25,670 --> 00:21:30,150 oswa imaj, oswa textuelle pataje sa yo ke yon moun k ap resevwa sou fen nan lòt 405 00:21:30,150 --> 00:21:31,660 pa ka yon jan kanmenm konsève pou done yo. 406 00:21:31,660 --> 00:21:34,300 >> Nan fason ki pi nayif, yon moun te kapab pran telefòn yo. 407 00:21:34,300 --> 00:21:36,850 Apre sa, yo genyen yon dezyèm fenèt 10 pandan y ap gade nan kèk menen 408 00:21:36,850 --> 00:21:39,410 jis pran kèk lòt telefòn ak foto l ', evidamman. 409 00:21:39,410 --> 00:21:41,660 Se konsa, ou ka prezève yon bagay nimerik ki fason. 410 00:21:41,660 --> 00:21:44,620 Gen kèk nan ou konnen ki jan yo pran Ekran sou telefòn ou. 411 00:21:44,620 --> 00:21:49,290 An reyalite, si ou pa konnen sa a, reyalize ke omwen Snapchat, 412 00:21:49,290 --> 00:21:51,040 e mwen panse lòt aplikasyon pou jou sa yo, 413 00:21:51,040 --> 00:21:53,720 omwen fè w konnen si nan moun k ap resevwa gen aktyèlman 414 00:21:53,720 --> 00:21:55,310 pran yon D 'nan imaj ou. 415 00:21:55,310 --> 00:22:00,870 >> Men, pi mal ankò, sa a te snappening a, kòm yon moun envante li dènyèman, 416 00:22:00,870 --> 00:22:04,680 kote kèk 100,000 mèt te lage 417 00:22:04,680 --> 00:22:09,310 nan sa ki rele yon dosye torrent sou sit entènèt divès kalite finalman. 418 00:22:09,310 --> 00:22:12,000 Ak sa yo ki genyen yon pakèt antye nan mesaj prive ak posts. 419 00:22:12,000 --> 00:22:15,210 Li sanble pi fò nan yo Benign, Se konsa, pa sa ou ta ka atann. 420 00:22:15,210 --> 00:22:17,580 Men, paske se moun ki te gen itilize yon sit entènèt twazyèm pati, 421 00:22:17,580 --> 00:22:20,270 antre nan ak Snapchat yo non itilizatè ak modpas ak Lè sa a 422 00:22:20,270 --> 00:22:23,470 ekonomize tout nan mèt yo sou sa a sit entènèt twazyèm pati. 423 00:22:23,470 --> 00:22:26,130 Epi li te ke twazyèm pati sit entènèt ki te rache, 424 00:22:26,130 --> 00:22:30,710 ki jis vle di ke yon moun kalkile konnen kouman jwenn tout 100,000 plis nan imaj sa yo 425 00:22:30,710 --> 00:22:33,822 nan pwòp yo kondwi difisil pou pataje ki vin apre. 426 00:22:33,822 --> 00:22:36,030 Franchman, isit la tou, li nan sòt nan so ki Snapchat 427 00:22:36,030 --> 00:22:39,360 se aplike nan yon fason ke yon twazyèm pati ka sòt nan segman aks dèz 428 00:22:39,360 --> 00:22:43,310 done yo e ke li pa nan mare nan ou pwòp aplikasyon kouri sou telefòn nan. 429 00:22:43,310 --> 00:22:46,947 Men, isit la, tou, reyalize ke sa yo bagay sa yo pa ta dwe trape ou pa sipriz, 430 00:22:46,947 --> 00:22:49,030 oswa omwen gen yo ta dwe gen yon leson lavi nan isit la. 431 00:22:49,030 --> 00:22:52,220 Si w ta renmen teknik la detay, ale nan ki URL gen 432 00:22:52,220 --> 00:22:53,570 sa a, se nan glisad a jodi a. 433 00:22:53,570 --> 00:23:00,960 Tout dwa, nenpòt kesyon sou leson lavi jodi a nan CS? 434 00:23:00,960 --> 00:23:02,710 Vire ki la. 435 00:23:02,710 --> 00:23:04,970 Nenpòt bagay nan tout? 436 00:23:04,970 --> 00:23:06,301 Nenpòt bagay nan tout? 437 00:23:06,301 --> 00:23:09,050 Mwen te gen yon anpil nan moun tcheke Snapchat yo oswa yon bagay kounye a. 438 00:23:09,050 --> 00:23:11,690 >> Tout dwa, se konsa SQL, Estriktire rekèt Lang. 439 00:23:11,690 --> 00:23:12,509 Se pou yo vlope sa a. 440 00:23:12,509 --> 00:23:14,300 Epi tou, menm si nou ap jis grate 441 00:23:14,300 --> 00:23:16,310 sifas la nan sa a lang, nou pral ba ou 442 00:23:16,310 --> 00:23:18,930 ase nan lang lan nan fòm lan nan pset 7 443 00:23:18,930 --> 00:23:22,140 pou ke ou ka atake kèk san patipri komen fonctionnalités. 444 00:23:22,140 --> 00:23:24,912 Men mwen reyalize gen yon koup bagay sa yo nou pa mande pou ou, 445 00:23:24,912 --> 00:23:27,120 men yo ap ale nan dwe enpòtan vini pwojè final 446 00:23:27,120 --> 00:23:30,760 ak sètènman vini fè aktyèl sit ak itilizatè aktyèl 447 00:23:30,760 --> 00:23:32,040 se desizyon sa a konsepsyon. 448 00:23:32,040 --> 00:23:34,460 >> Li sanble ke nan yon baz done miskl, ou 449 00:23:34,460 --> 00:23:37,460 gen grap nan chwa ki genyen tankou kalite yo done pou kolòn ou 450 00:23:37,460 --> 00:23:41,670 ak lòt bagay, men ou yo te genyen tou chwa a nan yon depo sa yo rele 451 00:23:41,670 --> 00:23:44,570 motè pou tout moun nan done ou a, sòt nan nan sistèm dosye, 452 00:23:44,570 --> 00:23:46,700 si w ap yo konnen yo, pou tout moun nan done ou. 453 00:23:46,700 --> 00:23:48,830 Ki sa ki fòma se li finalman ki estoke nan? 454 00:23:48,830 --> 00:23:53,300 Ak sa ki pi komen an, petèt, te gen MyiSAM ak InnoDB, tèm teknik 455 00:23:53,300 --> 00:23:56,060 ke nou pral pran swen sou sèlman nan limit ki ke yon moun gen 456 00:23:56,060 --> 00:23:58,500 ak youn pa gen karakteristik sa a. 457 00:23:58,500 --> 00:24:00,390 >> Sipoze ke ou gen yon ti kras dòtwa frijidè. 458 00:24:00,390 --> 00:24:03,030 Epi ta kwè ke ou menm ak ou kolokasyon, ki moun ki pataje frijidè sa a, 459 00:24:03,030 --> 00:24:04,682 yo se reyèlman fanatik nan lèt di. 460 00:24:04,682 --> 00:24:07,140 Lè sa a se, an reyalite, ki jan la te istwa te di m 'fason tounen 461 00:24:07,140 --> 00:24:10,890 nan jou a lè m 'te pran yon kou rele CS 161 Operating Systems, ki 462 00:24:10,890 --> 00:24:12,580 Menm jan an tou eksplore sijè sa a. 463 00:24:12,580 --> 00:24:13,760 Se konsa, ou te gen frijidè sa a. 464 00:24:13,760 --> 00:24:14,630 W ap soti nan lèt. 465 00:24:14,630 --> 00:24:17,000 Epi ou vin lakay ou, kolokasyon ou a toujou nan klas oswa kèlkeswa sa, 466 00:24:17,000 --> 00:24:19,208 epi ou deside, mwen pral ale deyò epi yo jwenn kèk lèt. 467 00:24:19,208 --> 00:24:22,630 Se konsa, ou fèmen frijidè a, prisons chanm nan dòtwa, ale lòtbò lari a 468 00:24:22,630 --> 00:24:25,330 CVS oubyen nenpòt kote, epi pou yo jwenn nan liy yo achte kèk lèt. 469 00:24:25,330 --> 00:24:28,960 >> Pandan se tan, kolokasyon ou vin lakay ou soti nan klas la, rantre nan sal la dòtwa, 470 00:24:28,960 --> 00:24:31,802 ouvè frijidè a, tou reyalize ooph, nou ap soti nan lèt. 471 00:24:31,802 --> 00:24:33,760 Se konsa, li oswa li te fèmen nan frijidè ak Lè sa a k ap pase 472 00:24:33,760 --> 00:24:35,610 pou yo ale nan lòt CVS a, ki k ap pase yo dwe 473 00:24:35,610 --> 00:24:38,470 yon blòk lwen lòt CVS yo nan kare la, ak vin nan liy 474 00:24:38,470 --> 00:24:40,230 gen jwenn kèk lèt. 475 00:24:40,230 --> 00:24:42,524 Koulye a, nan kou, yon kèk minit apre, ou tou de jwenn tounen, 476 00:24:42,524 --> 00:24:44,690 ak pi move a nan tout posib rezilta te rive fèt. 477 00:24:44,690 --> 00:24:45,792 Tou de nan nou gen lèt. 478 00:24:45,792 --> 00:24:47,500 Epi ou pa fè sa vrèman tankou lèt ki anpil. 479 00:24:47,500 --> 00:24:49,625 Se konsa, youn nan yo se jis ale nan kòwonp nan kèk pwen. 480 00:24:49,625 --> 00:24:55,941 Se konsa, kounye a ou gen yon kantite lajan twòp nan lèt nan frijidè a tout paske poukisa? 481 00:24:55,941 --> 00:24:57,072 >> [Fèbl] 482 00:24:57,072 --> 00:24:59,780 DAVID Malan: Yeah, ou pa t ' yon jan kanmenm kominike youn ak lòt 483 00:24:59,780 --> 00:25:00,904 ke ou te resevwa lèt. 484 00:25:00,904 --> 00:25:04,320 Se konsa, nan pi senp la fason nan mond lan imen, 485 00:25:04,320 --> 00:25:08,390 ki jan ou ta ka evite sa a komik senaryo sa yo soti nan pase 486 00:25:08,390 --> 00:25:09,750 ke ou sèlman fini ak yon sèl. 487 00:25:09,750 --> 00:25:10,840 Tèks yo, repons lan se wi bon. 488 00:25:10,840 --> 00:25:12,877 Men, ki jan lòt bagay? 489 00:25:12,877 --> 00:25:13,460 Post-li nòt. 490 00:25:13,460 --> 00:25:14,626 DAVID Malan: Yon Post-li nòt. 491 00:25:14,626 --> 00:25:17,150 Nenpòt fòm kominikasyon ki di kolokasyon ou 492 00:25:17,150 --> 00:25:18,670 pa antre nan frijidè a pou lèt. 493 00:25:18,670 --> 00:25:20,440 Mwen pral ale réapprovisionnement sou pwòp mwen. 494 00:25:20,440 --> 00:25:22,770 Se konsa, ou yon jan kanmenm bezwen fèmen resous sa a. 495 00:25:22,770 --> 00:25:27,180 Se konsa, nou ka fè sa nou kapab this-- kalite ruin istwa a ak vire nan yon istwa CS 496 00:25:27,180 --> 00:25:30,360 kijan panse a sa a kòm jis tankou yon varyab, ki se estoke kèk valè. 497 00:25:30,360 --> 00:25:32,570 E yo gen dwa kounye a, nan valè nan lèt se zewo, 498 00:25:32,570 --> 00:25:35,410 ki ou pa vle ou kolokasyon yo enspekte varyab sa 499 00:25:35,410 --> 00:25:38,730 ak Lè sa a pran yon desizyon l 'oswa tèt li baze sou eta a nan varyab sa 500 00:25:38,730 --> 00:25:42,430 si w ap nan pwosesis la nan chanje eta a nan varyab sa a. 501 00:25:42,430 --> 00:25:46,140 >> Se konsa yonn nan liy yo nan SQL ke nou ba ou nan pset 7 spesifikasyon 502 00:25:46,140 --> 00:25:47,310 se yon sèl sa a isit la. 503 00:25:47,310 --> 00:25:49,740 Apre sa, nou pa depanse yon gwo kantite tan pale sou li. 504 00:25:49,740 --> 00:25:55,100 Men, li vire soti, si ou yo ap eseye achte kèk aksyon nan CS50 finans 505 00:25:55,100 --> 00:25:58,000 ki ou deja genyen kèk aksyon nan, ou 506 00:25:58,000 --> 00:26:01,750 vle kapab fè yon nimewo de bagay sa yo imedyatman yo ansanm. 507 00:26:01,750 --> 00:26:04,360 Ou vle pou kapab efektivman, sou yon nivo segondè yo, 508 00:26:04,360 --> 00:26:06,700 tcheke tout dwa, si mwen vle yo achte plis aksyon nan gratis, 509 00:26:06,700 --> 00:26:08,780 nou nan stock peni pale sou nan espèk a, 510 00:26:08,780 --> 00:26:10,660 Mwen vle premye chèk konbyen aksyon m 'genyen. 511 00:26:10,660 --> 00:26:11,810 Epi ta kwè li nan senk. 512 00:26:11,810 --> 00:26:14,600 Epi ta kwè mwen vle achte 10 plis, mwen finalman 513 00:26:14,600 --> 00:26:17,069 vle gen 15 aksyon nan stock. 514 00:26:17,069 --> 00:26:18,360 Se konsa, mwen gen mande de kesyon. 515 00:26:18,360 --> 00:26:20,230 Ki sa ki nan eta a nan varyab la? 516 00:26:20,230 --> 00:26:21,470 Ki sa ki nan eta a nan ranje a? 517 00:26:21,470 --> 00:26:22,970 Konbyen aksyon mwen genyen kounye a? 518 00:26:22,970 --> 00:26:24,636 Lè sa a, ou vle ale pi devan epi mete ajou li. 519 00:26:24,636 --> 00:26:27,720 Se konsa, sa a, se analòg la nan lèt nan ke ou tcheke ranje a, 520 00:26:27,720 --> 00:26:30,730 ak Lè sa a ou vle mete li paske si ou vle achte 10 aksyon, 521 00:26:30,730 --> 00:26:32,521 ou pa ta vle chanje ranje a nan 10, ou 522 00:26:32,521 --> 00:26:35,300 vle chanje li nan 5 plis 10 oswa, nan kou, 15. 523 00:26:35,300 --> 00:26:40,030 >> Sa a liy nan kòd asire ke sa yo de lide konseptyèl ekspresyon 524 00:26:40,030 --> 00:26:42,810 rive ansanm oswa pa nan tout. 525 00:26:42,810 --> 00:26:46,920 Pa gen moun ki, ki gen ladan kèk lòt itilizatè ki moun ki nan louvri sesyon an sou sit wèb la menm, 526 00:26:46,920 --> 00:26:49,900 ka yon jan kanmenm entèwonp kont kouran an nan ranje a 527 00:26:49,900 --> 00:26:52,960 ak jour an nan ranje a, nan chwazi epi mete ajou a si ou pral. 528 00:26:52,960 --> 00:26:57,360 Ak sentaks la se pa super evidan, men liy yon sèl sa a, depi lontan se li se, 529 00:26:57,360 --> 00:27:01,150 asire ke de operasyon sa yo tcheke varyab la oswa tcheke ranje a 530 00:27:01,150 --> 00:27:04,660 epi mete ajou ranje a rive atomically. 531 00:27:04,660 --> 00:27:06,849 >> Oh, isit la nou ale ankò. 532 00:27:06,849 --> 00:27:07,890 Mesaj tèks sou telefòn mwen. 533 00:27:07,890 --> 00:27:09,954 Se konsa, kite a fè sa a yon ti kras pi plis konkrè. 534 00:27:09,954 --> 00:27:12,120 Sipoze ke ou pa ap mete ann aplikasyon yon frijidè, 535 00:27:12,120 --> 00:27:16,400 epi ou pa ap mete ann aplikasyon PSet 7 men yon bank aktyèl, 536 00:27:16,400 --> 00:27:20,000 oswa yon ATM, yon Otomatik Teller Machin, annakò ak sa ou yon jan kanmenm 537 00:27:20,000 --> 00:27:22,960 vle pou kapab pèmèt itilizatè yo transfere lajan 538 00:27:22,960 --> 00:27:24,500 soti nan yon kont nan yon lòt. 539 00:27:24,500 --> 00:27:25,100 OK, kwoke sou. 540 00:27:25,100 --> 00:27:26,683 Mwen pral bèbè sa a kounye a, di ou mèsi. 541 00:27:26,683 --> 00:27:30,450 Se konsa, nou vle pou avanse pou lajan soti nan yon nimewo kont 542 00:27:30,450 --> 00:27:33,600 nan yon kont diferan Nimewo, espesyalman $ 100. 543 00:27:33,600 --> 00:27:37,690 Se konsa, sa a se kalite yon abitrè egzanp, annakò ak sa nou la a, ATM lan, 544 00:27:37,690 --> 00:27:41,060 ta ka vle egzekite de SQL demann, fè soustraksyon soti nan yon kont, 545 00:27:41,060 --> 00:27:42,430 epi ajoute nan lòt kont lan. 546 00:27:42,430 --> 00:27:46,766 Men, ou vle asire ke sa yo de liy tou de rive oswa ou pa nan tout. 547 00:27:46,766 --> 00:27:48,640 Ou pa vle yon bagay ap resevwa koupe. 548 00:27:48,640 --> 00:27:51,440 Ou pa fè sa kèk move nèg entelijan yon jan kanmenm kanpe nan Bank of America 549 00:27:51,440 --> 00:27:53,270 ak de ATM nan devan nan l 'ak yon jan kanmenm 550 00:27:53,270 --> 00:27:55,270 sòt de sezisman nan la kòmande nan menm tan an, 551 00:27:55,270 --> 00:28:01,230 èspere ke ap eseye dedwi $ 200 olye pou nan $ 100 ak sèlman li te gen $ 100 kredite. 552 00:28:01,230 --> 00:28:04,450 Nan ti bout tan, ou vle sa a yo konpòte egzakteman jan ou atann. 553 00:28:04,450 --> 00:28:06,540 >> Ak wout la ou fè sa a nan SQL baz done se 554 00:28:06,540 --> 00:28:09,350 ou vlope l 'nan sa ki nan rele yon tranzaksyon. 555 00:28:09,350 --> 00:28:14,290 Literalman nan SQL, ou ka rele CS50 nan fonksyon rechèch ak quote unquote kòmansman 556 00:28:14,290 --> 00:28:15,370 tranzaksyon. 557 00:28:15,370 --> 00:28:18,640 Lè sa a, ou ka egzekite nenpòt ki kantite nan demann SQL ki vini apre, 558 00:28:18,640 --> 00:28:20,870 men pa youn nan yo pran efè sou baz done a 559 00:28:20,870 --> 00:28:25,880 jiskaske ou rele sijè rechèch quote unquote komèt, si ankò lè l sèvi avèk PHP. 560 00:28:25,880 --> 00:28:29,810 Ak nan fason sa a, ou ka asire ke menm si ou gen 1,000 itilizatè tout 561 00:28:29,810 --> 00:28:32,080 frape baz done ou an menm tan an, SQL 562 00:28:32,080 --> 00:28:34,540 pral pwomèt ke sa yo de demann yo pral 563 00:28:34,540 --> 00:28:36,740 aplike yon sèl dwa apre lòt la. 564 00:28:36,740 --> 00:28:40,330 Se konsa, ou pa fini ak excès de lèt oswa kantite lajan an sa ki mal, finalman, 565 00:28:40,330 --> 00:28:40,830 nan lajan. 566 00:28:40,830 --> 00:28:43,110 >> Se konsa, kenbe sa a nan tèt ou, pa tèlman pou pset 7 567 00:28:43,110 --> 00:28:45,250 men pou pwojè final si w ap aktyèlman 568 00:28:45,250 --> 00:28:49,690 ap eseye pou avanse pou pi alantou done atravè tab menm jan ou ta ka isit la. 569 00:28:49,690 --> 00:28:53,980 Men, petèt menm ki pi senp ak plis evidan ak konprann ak yon egzanp 570 00:28:53,980 --> 00:28:54,860 se yon sèl sa a isit la. 571 00:28:54,860 --> 00:28:57,760 Men, yon moun par nou sou sa a jis lòt jou a 572 00:28:57,760 --> 00:28:59,600 lè l 'wè yon bagay ki sanble sou entènèt. 573 00:28:59,600 --> 00:29:03,480 >> Se konsa, nan konesans mwen, sistèm nan PIN se pa vilnerab a atak sa a. 574 00:29:03,480 --> 00:29:06,637 Apre sa, mwen pa gen okenn lide si li menm itilizasyon baz done a SQL anba kapo a. 575 00:29:06,637 --> 00:29:08,470 Men, kite a sèvi ak li pou dedomajman pou la nan diskisyon. 576 00:29:08,470 --> 00:29:10,178 Isit la nan ekran an ki Jan yo gen tandans Harvard 577 00:29:10,178 --> 00:29:13,620 wè lè antre nan ak yo Nimewo ID Harvard ak peny yo. 578 00:29:13,620 --> 00:29:19,020 Epi ta kwè ke sistèm lan te PIN aplike nan PHP ak miskl ak yon 579 00:29:19,020 --> 00:29:22,000 baz done a, kòd a ke yon moun ane ta ka yo te ekri de sa 580 00:29:22,000 --> 00:29:23,270 ta ka gade tankou sa a. 581 00:29:23,270 --> 00:29:25,230 Premyèman, deklare yon varyab rele non itilizatè. 582 00:29:25,230 --> 00:29:27,560 Ak jis jwenn ki soti nan supèrglobal la POST. 583 00:29:27,560 --> 00:29:30,140 Lè sa a, jwenn yon lòt varyab rele modpas ak fè menm bagay la. 584 00:29:30,140 --> 00:29:33,080 Lè sa a, jis egzekite sa a sijè rechèch lontan isit la, 585 00:29:33,080 --> 00:29:36,690 chwazi zetwal soti nan itilizatè ki kote non itilizatè egal sa yo ak sa 586 00:29:36,690 --> 00:29:38,510 ak modpas egal sa yo ak sa yo. 587 00:29:38,510 --> 00:29:40,660 >> Remake Curly a aparèy òtopedik mwen te itilize isit la 588 00:29:40,660 --> 00:29:42,880 jis vle di PHP, ale pi devan epi ranplase 589 00:29:42,880 --> 00:29:45,400 valè a nan sa yo de varyab la a. 590 00:29:45,400 --> 00:29:50,090 Yo ap pa estrikteman nesesè, men yo gen tandans pou fè pou evite erè sentaks sibtil. 591 00:29:50,090 --> 00:29:53,650 Se konsa, sa a sanble konplètman kòrèk nan premye gade. 592 00:29:53,650 --> 00:29:54,240 Epi li se. 593 00:29:54,240 --> 00:29:56,680 Ou te kapab aplike nan sistèm PIN nan fason sa. 594 00:29:56,680 --> 00:30:00,460 >> Men, si ke yon super lespri ak move elèv 595 00:30:00,460 --> 00:30:03,020 D 'sa a kòm peny li. 596 00:30:03,020 --> 00:30:05,550 Se konsa, mwen te retire bal la siy isit la nan Metye moute a, 597 00:30:05,550 --> 00:30:08,760 epi mwen te aktyèlman te revele sa li oswa li te ta ka sezisman. 598 00:30:08,760 --> 00:30:10,350 Lè li nan yon ti kras etranj. 599 00:30:10,350 --> 00:30:13,850 Men, sa ki sote soti nan ou nan potansyèlman inkyétant sou D 'itilizatè a, 600 00:30:13,850 --> 00:30:16,450 menm si ou pa gen okenn lide ki sa yon atak piki SQL vle di. 601 00:30:16,450 --> 00:30:20,300 Poukisa sa a gade yon ti kras bagay ki rete kèsyonab? 602 00:30:20,300 --> 00:30:21,050 Ki sa ki nan sa? 603 00:30:21,050 --> 00:30:21,550 [Fèbl] 604 00:30:21,550 --> 00:30:24,260 DAVID Malan: oswa a se yon ti kras sispèk. 605 00:30:24,260 --> 00:30:26,310 An reyalite, sa a, se yon mo kle soti nan SQL. 606 00:30:26,310 --> 00:30:28,105 Se konsa, ki pa anonse byen. 607 00:30:28,105 --> 00:30:29,980 Lefèt ke gen nan tout sa yo quotes sèl 608 00:30:29,980 --> 00:30:32,646 there-- an reyalite, youn nan pi fasil la fason yo kraze kèk baz done 609 00:30:32,646 --> 00:30:35,880 se lè ou tape nan yon non tankou O'Reilly ki gen yon apostwòf nan li 610 00:30:35,880 --> 00:30:38,600 paske si moun nan ki te ekri kòd a dèyè sèn nan 611 00:30:38,600 --> 00:30:41,570 pa pran an kont ke gen ta kapab quotes sèl nan yon itilizatè a 612 00:30:41,570 --> 00:30:45,060 D ', ak li oswa li te ap itilize ap itilize quotes sèl nan kòd yo, 613 00:30:45,060 --> 00:30:46,040 move bagay ka rive. 614 00:30:46,040 --> 00:30:47,870 >> An reyalite, pi mal ankò, konsidere sa a. 615 00:30:47,870 --> 00:30:50,600 Si sa a te ankò kòd la ke yon moun nan ane Harvard 616 00:30:50,600 --> 00:30:53,100 Anons sa pibliye depi te ekri pou pikèt la sistèm, remake sa ki nan 617 00:30:53,100 --> 00:30:56,220 sou jwenn ranplase pou non itilizatè ak modpas 618 00:30:56,220 --> 00:30:59,780 si itilizatè a kalite nan ankò skroob kòm non itilizatè yo 619 00:30:59,780 --> 00:31:03,960 ak Lè sa a yon sèl, de, twa, kat, senk, quote oswa quote unquote yon sèl egal 620 00:31:03,960 --> 00:31:04,660 site yon sèl. 621 00:31:04,660 --> 00:31:07,220 Ak Avi sa ki nan kle isit la se itilizatè a pa te 622 00:31:07,220 --> 00:31:09,900 te kòmanse modpas yo oswa PIN yo ak yon quote. 623 00:31:09,900 --> 00:31:12,610 Apre sa, yo pa gen te fini li ak yon quote paske li oswa li te 624 00:31:12,610 --> 00:31:16,315 se an konsideran ke si la pwogramè pa t 'konsa byen file, 625 00:31:16,315 --> 00:31:18,690 yo pral gen moun ki quotes sèl nan kòd yo. 626 00:31:18,690 --> 00:31:19,860 >> Se konsa, isit la nan kòd la. 627 00:31:19,860 --> 00:31:23,820 Epi sibstitisyon a ki ta ka kounye a rive se sa a. 628 00:31:23,820 --> 00:31:26,350 Apre sa, mwen te souliye sa te itilizatè a tape nan. 629 00:31:26,350 --> 00:31:28,480 Se konsa, anvan, apre yo fin. 630 00:31:28,480 --> 00:31:33,330 Ak Avi sa ki nan léjèrman inkyétant kounye a apeprè mwatye nan dwa nan sa a kòd SQL? 631 00:31:33,330 --> 00:31:36,300 Li se yon ti kras pi plis konplèks, Byensir, pase demann sa yo nou te wè. 632 00:31:36,300 --> 00:31:38,550 Men, sa a pa kapab pètèt gen yon bon bagay si ou se 633 00:31:38,550 --> 00:31:42,240 li di chwazi zetwal, ki se chwazi tout bagay soti nan tab itilizatè a la 634 00:31:42,240 --> 00:31:46,630 kote non itilizatè egal skroob ak modpas egal yon sèl, de, twa, kat, 635 00:31:46,630 --> 00:31:49,610 senk oswa yon sèl egal yon sèl. 636 00:31:49,610 --> 00:31:53,860 Ki sa ki nan enplikasyon a ki lojik nan ki sot pase a kloz prezimableman? 637 00:31:53,860 --> 00:31:55,650 Se jis nan toujou vrè. 638 00:31:55,650 --> 00:31:59,930 >> Epi paske nou te sòt de dvine oswa kalkile konnen pa esè ak erè 639 00:31:59,930 --> 00:32:02,760 ki pwogramè a ki te ekri sa a kòd pa t ' 640 00:32:02,760 --> 00:32:07,250 antisipe yon moun moun oubyen move sezisman nan quotes sèl kòm byen, 641 00:32:07,250 --> 00:32:10,350 nou ka syntactically ranpli rechèch la SQL 642 00:32:10,350 --> 00:32:12,260 ak yon bagay absurde men yon bagay ki 643 00:32:12,260 --> 00:32:15,930 se syntactically kòrèk ki toujou evalye vre. 644 00:32:15,930 --> 00:32:19,130 Se konsa, si se sa a kòd ki te itilize yo reponn kesyon an vre oubyen fo yo ta dwe 645 00:32:19,130 --> 00:32:22,930 dwe itilizatè sa a pèmèt yo pase a, repons se toujou aparamman pral 646 00:32:22,930 --> 00:32:26,930 yo dwe vre paske sa a se toujou pral yo ka chwazi yon bagay nan men baz done a 647 00:32:26,930 --> 00:32:29,280 paske yon sèl nan kou toujou egal yon sèl. 648 00:32:29,280 --> 00:32:30,360 >> Se konsa, sa ki nan solisyon an? 649 00:32:30,360 --> 00:32:33,290 Oke nan pset 7, nou aktyèlman evite sa a tout ansanm. 650 00:32:33,290 --> 00:32:37,360 Nou ba ou yon fonksyon rechèch, epi nou ankouraje w sèvi ak mak kesyon 651 00:32:37,360 --> 00:32:40,430 kòm placeholders, menm jan nan Lespri Bondye a% s printf a, 652 00:32:40,430 --> 00:32:43,710 men sa ki nan kle sou mak yo kesyon isit la se si ou aktyèlman li nan 653 00:32:43,710 --> 00:32:46,950 functions.php, kote nou an se fonksyon rechèch aplike, 654 00:32:46,950 --> 00:32:52,780 moun mak kesyon yo chape, annakò ak sa anyen ki kapab yon danje 655 00:32:52,780 --> 00:32:58,210 tankou se yon quote yon sèl vire nan yon sèl chape quote. 656 00:32:58,210 --> 00:33:00,590 >> Se konsa, sa a se sa ki nan k ap fèt vreman si ou 657 00:33:00,590 --> 00:33:04,850 itilize fonksyon rechèch CS50 a oswa nenpòt ki kantite nan twazyèm pati bibliyotèk gratis ki 658 00:33:04,850 --> 00:33:06,000 fè menm bagay la. 659 00:33:06,000 --> 00:33:09,850 pa gen pwoblèm nan ka sa a, nan vèt, si gen itilizatè a tape nan yon quote yon sèl 660 00:33:09,850 --> 00:33:12,070 paske rechèch la fonksyon ki nou te ekri se 661 00:33:12,070 --> 00:33:15,120 pral ajoute backslashes anvan nenpòt ki sa yo quote danjere. 662 00:33:15,120 --> 00:33:17,360 Se konsa, sa a se pa, nan reyalite, ap pase yo dwe legi. 663 00:33:17,360 --> 00:33:20,910 Sa a se tankou sezisman nan yon fou kap modpas sa a, se, nan kou, pa pral 664 00:33:20,910 --> 00:33:23,490 yo dwe aktyèl modpas skroob la. 665 00:33:23,490 --> 00:33:28,260 >> Se konsa, Takeaway a pou CS50 se youn, absoliman toujou sèvi ak yon bagay 666 00:33:28,260 --> 00:33:30,860 tankou fonksyon rechèch CS50 nan oswa nan bibliyotèk ki kache, 667 00:33:30,860 --> 00:33:32,560 ki k ap pase yo dwe rele apelasyon. 668 00:33:32,560 --> 00:33:35,880 Men, pa janm, pa janm, pa janm fè kòd tankou sa a 669 00:33:35,880 --> 00:33:39,472 san yo pa chape oswa foubi menm jan yo di entrain ou yo. 670 00:33:39,472 --> 00:33:42,430 Epi ou pral nan kèk pwen pwobableman vini nan tout kèk sit entènèt tankou sa a. 671 00:33:42,430 --> 00:33:46,060 An reyalite, li sanble yo dwe ka a tankou nan ayopò yo ak otèl nan kote 672 00:33:46,060 --> 00:33:48,880 kote yo gen gratis Wi-Fi aksè ki di ou gen konekte yo, 673 00:33:48,880 --> 00:33:51,010 sit entènèt sa yo yo toujou oribleman aplike. 674 00:33:51,010 --> 00:33:55,680 Se konsa, yon sòt de plezi nan fè egzèsis nan kay la, pa pou rezon move oswa plis 675 00:33:55,680 --> 00:33:59,170 nan yon plezi sou wout la fè egzèsis, se yo jis tape 676 00:33:59,170 --> 00:34:02,850 yon apostwòf, yon quote yon sèl, nan yon fòm sou kèk sit entènèt 677 00:34:02,850 --> 00:34:03,810 ak wè sa ki rive. 678 00:34:03,810 --> 00:34:06,660 Men, si sèvè a aksidan oswa bay ou kèk kalite mesaj erè, 679 00:34:06,660 --> 00:34:09,690 li ka trè byen se ki yon moun pa te antisipe sa a. 680 00:34:09,690 --> 00:34:15,239 Lè sa a, ou ta dwe alète apwopriye a otorite ak kontinye pa gen plis. 681 00:34:15,239 --> 00:34:20,843 >> Se konsa, kounye a ou ta dwe èspere ke mesye konprann yon ti jan pi plis imè geek isit la. 682 00:34:20,843 --> 00:34:24,120 >> [Ri] 683 00:34:24,120 --> 00:34:27,571 684 00:34:27,571 --> 00:34:29,070 DAVID Malan: Ou konnen ou se yon geek. 685 00:34:29,070 --> 00:34:30,944 Pou pwochen plizyè nan ane, ou pral sonje 686 00:34:30,944 --> 00:34:33,520 ki moun ki ti kras Tablo Bobby se paske nan desen sa a isit la. 687 00:34:33,520 --> 00:34:36,760 Se konsa, kenbe sa nan tèt ou kòm nou kontèks switch yon dènye tan 688 00:34:36,760 --> 00:34:38,770 jodi a JavaScript. 689 00:34:38,770 --> 00:34:41,600 Nou te depanse relativman ti kras tan sou sentaks la nan PHP 690 00:34:41,600 --> 00:34:43,440 paske li la aktyèlman super menm jan ak C. 691 00:34:43,440 --> 00:34:47,300 Ak joliman ase, JavaScript twò se super ki sanble ak sentaks C a 692 00:34:47,300 --> 00:34:49,639 kòm byen ke nou pral wè nan jis yon ti moman epi kòm nou pral 693 00:34:49,639 --> 00:34:51,205 wè pita semèn sa a an patikilye. 694 00:34:51,205 --> 00:34:54,080 Ki sa ou kapab fè avèk lang sa a, menm si, se tout plis la pwisan, 695 00:34:54,080 --> 00:34:55,790 sitou ak APIs. 696 00:34:55,790 --> 00:34:56,960 >> Men, anvan yon toune rapid. 697 00:34:56,960 --> 00:35:00,450 Se konsa, yon sèl, nan JavaScript, gen nan pa gen okenn fonksyon prensipal yo, ki se bèl. 698 00:35:00,450 --> 00:35:02,650 Menm jan ak PHP, ou ka jis ekri kòd. 699 00:35:02,650 --> 00:35:04,310 Kondisyon gade tankou sa a. 700 00:35:04,310 --> 00:35:07,100 Ak ekspresyon Boolean ta ka gade tankou sa a oswa tankou sa a. 701 00:35:07,100 --> 00:35:09,530 Switch egziste, epi yo ta ka gade tankou sa a. 702 00:35:09,530 --> 00:35:10,970 Kat pasan gade tankou sa a. 703 00:35:10,970 --> 00:35:12,390 Pandan y ap pasan gade tankou sa a. 704 00:35:12,390 --> 00:35:14,160 Èske whiles gade tankou sa a. 705 00:35:14,160 --> 00:35:16,850 Lè sa a, ranje gade tankou sa a, trè menm jan ak PHP. 706 00:35:16,850 --> 00:35:20,740 Men, remake, ki nan JavaScript ou deklare yon varyab pa avèk yon dola 707 00:35:20,740 --> 00:35:25,190 siyen, pa avèk yon kalite done, men literalman lè li di var pou varyab anvan li. 708 00:35:25,190 --> 00:35:27,900 Li twò se blesi tape nan ke li genyen kalite, 709 00:35:27,900 --> 00:35:29,729 men ou pa klèman deklare yo. 710 00:35:29,729 --> 00:35:31,520 Lè sa a, yon fisèl, pou egzanp, ta ka gade 711 00:35:31,520 --> 00:35:34,350 tankou sa a, ki fisèl yo te rele nan nan ka sa a. 712 00:35:34,350 --> 00:35:35,410 Lè sa a, yon objè. 713 00:35:35,410 --> 00:35:37,010 Ak sa yo nou pral wè plis anvan lontan. 714 00:35:37,010 --> 00:35:41,470 Epi yon objè se petèt youn nan la pi souvan wè done estrikti 715 00:35:41,470 --> 00:35:44,050 nan yon JavaScript ki baze pwogram paske li pèmèt 716 00:35:44,050 --> 00:35:46,680 ou asosye abitrè valè kle pè jis 717 00:35:46,680 --> 00:35:51,240 tankou ranje asosyatif PHP a ak jis tankou pwòp tab regle ou 718 00:35:51,240 --> 00:35:54,042 oswa eseye jan nou aplike yon kèk semèn tounen. 719 00:35:54,042 --> 00:35:56,250 Se konsa, kite a aktyèlman wè sa ki nou ka fè ak JavaScript. 720 00:35:56,250 --> 00:35:59,410 Ak nan patikilye, sa a se yon lis lesiv nan karakteristik 721 00:35:59,410 --> 00:36:02,300 ki navigatè gen sa pèmèt nou zen JavaScript 722 00:36:02,300 --> 00:36:05,470 nan yon sit entènèt nan fason ki anba la a. 723 00:36:05,470 --> 00:36:09,340 JavaScript se souvan yo itilize kòm yon kliyan bò lang scripting. 724 00:36:09,340 --> 00:36:10,130 Li pa nan konpile. 725 00:36:10,130 --> 00:36:11,370 Li twò se entèprete. 726 00:36:11,370 --> 00:36:15,740 Men, kontrèman ak PHP, ki te kouri sou sèvè a, nan sèvè wèb la, 727 00:36:15,740 --> 00:36:18,220 oswa andedan gwo twou san fon nan la kliyan, JavaScript 728 00:36:18,220 --> 00:36:22,190 se diferan nan ke li anjeneral kouri nan navigatè a. 729 00:36:22,190 --> 00:36:26,060 >> Se konsa, nenpòt Kòd JavaScript ou kòmanse ekri pou 8 PSet, oswa pwojè final ou a, 730 00:36:26,060 --> 00:36:29,890 oswa nan mond reyèl la se jeneralman ale yo dwe sove sou sèvè a, absoliman 731 00:36:29,890 --> 00:36:33,110 nan yon HTML dot dot oswa JS pou JavaScript dosye. 732 00:36:33,110 --> 00:36:35,770 Men, navigatè a ki pral nan download ki JavaScript 733 00:36:35,770 --> 00:36:39,530 Kòd egzanp pwòp ou a Chrome, oswa IE, oswa Firefox, oswa kèlkeswa sa. 734 00:36:39,530 --> 00:36:43,870 Ak kòd la se aktyèlman pral jwenn egzekite andedan nan navigatè pwòp ou yo. 735 00:36:43,870 --> 00:36:46,560 Jis fè sa-a plis reyèl, kite a wè sa a nan fòm konkrè. 736 00:36:46,560 --> 00:36:50,120 >> Nou pa gen okenn lide ki sa Kòd sa a fè san yo pa reyèlman lekti atravè li. 737 00:36:50,120 --> 00:36:52,670 Men, kite m 'ale nan Facebook.com san yo pa antre nan. 738 00:36:52,670 --> 00:37:00,440 Kite m 'ale nan Enspekte Eleman epi ale nan, kite la di, Rezo ak Reload paj la. 739 00:37:00,440 --> 00:37:04,150 Epitou, n ap see-- kite m 'chanjman nan Reload Page jwenn tout demann yo nan nouvo. 740 00:37:04,150 --> 00:37:08,850 Ak anpil premye a dosye mwen wè se CSS, CSS. 741 00:37:08,850 --> 00:37:10,880 Isit la nan premye a JavaScript dosye, e mwen gen 742 00:37:10,880 --> 00:37:14,600 okenn lide ki sa sa a fè, men isit la se kèk nan kòd la JavaScript 743 00:37:14,600 --> 00:37:16,180 ki kondui Facebook. 744 00:37:16,180 --> 00:37:18,400 Li pa menm reyèlman ki revele rale nan. 745 00:37:18,400 --> 00:37:20,260 Li nan toujou menm jan absurde. 746 00:37:20,260 --> 00:37:24,341 >> Men, ou pral wè menm desann anba a, gen nan menm plis nan dosye JavaScript sa yo. 747 00:37:24,341 --> 00:37:24,840 Whoops. 748 00:37:24,840 --> 00:37:25,440 Sa se yon ping. 749 00:37:25,440 --> 00:37:28,550 Ann al desann yon ti kras pi lwen, pi lwen, pi lwen. 750 00:37:28,550 --> 00:37:29,894 Genyen yon sèl. 751 00:37:29,894 --> 00:37:31,238 Genyen yon sèl. 752 00:37:31,238 --> 00:37:31,880 Genyen yon sèl. 753 00:37:31,880 --> 00:37:35,820 >> Se konsa, menm si Facebook, dèyè a sèn, ki ekri nan pati nan PHP 754 00:37:35,820 --> 00:37:39,100 ak Facebook a vèsyon pwòp ladan l ', gen nan yon kantite lajan gwo JavaScript. 755 00:37:39,100 --> 00:37:41,330 An reyalite, nenpòt nan la diskite ou fè sou Facebook, 756 00:37:41,330 --> 00:37:45,520 nenpòt nan dènye yo aliye delè ki rive nan tan reyèl, nan tout sa 757 00:37:45,520 --> 00:37:47,944 se kondwi pa JavaScript. 758 00:37:47,944 --> 00:37:48,444 Yeah? 759 00:37:48,444 --> 00:37:50,235 >> ODYANS: Mwen pa si si sa a se Facebook, 760 00:37:50,235 --> 00:37:53,624 men mwen te panse ke Facebook devlope pwòp Kòd ak lang nan-kay yo? 761 00:37:53,624 --> 00:37:54,540 DAVID Malan: Yo te fè sa. 762 00:37:54,540 --> 00:37:58,110 Se konsa, Se poutèt sa mwen di yon divèjans nan PHP rele Hip Hop yo ke yo aktyèlman 763 00:37:58,110 --> 00:38:03,440 te ajoute karakteristik nan tankou ke lè Mak premye aplike Facebook, 764 00:38:03,440 --> 00:38:04,710 li te ekri nan PHP. 765 00:38:04,710 --> 00:38:07,370 Ak ki sòt de te rete sòt nan nan lang fen devan 766 00:38:07,370 --> 00:38:09,030 yo ke yo itilize pou anpil nan kodaj yo, men li 767 00:38:09,030 --> 00:38:11,870 pa te gen yon lang sa a, se balans patikilyèman byen dè milya 768 00:38:11,870 --> 00:38:12,630 nan moun. 769 00:38:12,630 --> 00:38:15,300 Se konsa, yo gen te ajoute pwòp yo amelyorasyon dèyè sèn nan. 770 00:38:15,300 --> 00:38:17,049 Apre sa, yo sèvi ak nenpòt ki kantite nan lòt lang 771 00:38:17,049 --> 00:38:19,170 pou plizyè moso nan enfrastrikti yo. 772 00:38:19,170 --> 00:38:24,080 Se konsa, repons lan se wi, li nan yon divèjans nan ki sa nou kounye a konnen kòm PHP. 773 00:38:24,080 --> 00:38:26,610 >> Se konsa, kite a pran yon gade nan yon koup nan egzanp 774 00:38:26,610 --> 00:38:28,890 nan ki jan nou ta ka sèvi ak JavaScript isit la. 775 00:38:28,890 --> 00:38:32,530 Nan kòd sous la jodi a, nou gen yon pakèt moun sou dosye, premye a nan yo ki, 776 00:38:32,530 --> 00:38:34,090 kite a rele Dom zewo. 777 00:38:34,090 --> 00:38:36,770 Se konsa, Dom zewo sanble jan sa a. 778 00:38:36,770 --> 00:38:40,730 Kite m 'ale nan anyè sa a epi louvri moute domzero.html, 779 00:38:40,730 --> 00:38:44,970 tèt la nan ki te gen yon kalite doc deklarasyon, li di isit la vini HTML 5. 780 00:38:44,970 --> 00:38:46,440 Epi, koulye a isit la nan yon tag HTML. 781 00:38:46,440 --> 00:38:47,540 Isit la nan tag nan tèt. 782 00:38:47,540 --> 00:38:49,210 Ak isit la nan sa ki nouvo jodi a. 783 00:38:49,210 --> 00:38:52,620 >> Nou kounye a gen yon tag script andedan nan tèt la nan paj la. 784 00:38:52,620 --> 00:38:55,290 Lè sa a aparamman fè trè ti kras, men avi 785 00:38:55,290 --> 00:38:58,410 ke mwen te defini yon script, yon JavaScript. 786 00:38:58,410 --> 00:39:01,050 Epi kòm yon sou kote, depi sa a se yon miskonsepsyon komen, 787 00:39:01,050 --> 00:39:05,220 JavaScript gen absoliman anyen fè ak Java, lang nan 788 00:39:05,220 --> 00:39:08,010 ke kèk nan ou ta ka te aprann nan APCs. 789 00:39:08,010 --> 00:39:10,480 Li te plis nan yon maketing Bagay pase anyen, 790 00:39:10,480 --> 00:39:12,980 monte coattails yo nan Java ane de sa. 791 00:39:12,980 --> 00:39:17,300 Men, JavaScript, anyen fè ak Java, jis Menm jan an tou, ak annoyingly, 792 00:39:17,300 --> 00:39:18,480 konfizyon yo te rele. 793 00:39:18,480 --> 00:39:21,890 >> Se konsa, isit la se kouman ou deklare yon fonksyon nan JavaScript, literalman di fonksyon, 794 00:39:21,890 --> 00:39:24,556 Lè sa a, non an nan fonksyon an, Lè sa a, nenpòt agiman li ta ka pran, 795 00:39:24,556 --> 00:39:25,530 jis tankou nan PHP. 796 00:39:25,530 --> 00:39:28,990 Vire soti nan JavaScript, youn nan pi plis nan fonksyon anmèdan ki egziste se Avètisman. 797 00:39:28,990 --> 00:39:31,392 Sa a se yon fenèt ti kras ki pral pòp leve, li alète ou 798 00:39:31,392 --> 00:39:32,600 nan kèk moso nan enfòmasyon. 799 00:39:32,600 --> 00:39:33,766 Li nan jeneralman dezaprouve sou li. 800 00:39:33,766 --> 00:39:35,980 Men, nou pral sèvi ak li kòm nou an premye fè egzèsis isit la. 801 00:39:35,980 --> 00:39:37,900 >> Remake yon karakteristik kèk nan JavaScript. 802 00:39:37,900 --> 00:39:41,524 Quotes sèl ak quotes doub pa aktyèlman gen pwoblèm ankò. 803 00:39:41,524 --> 00:39:43,690 Quotes sèl ak doub quotes ka echanje, 804 00:39:43,690 --> 00:39:46,220 Lè nou konsidere ke nan C, ou gen yo sèvi quotes doub pou strings, 805 00:39:46,220 --> 00:39:48,150 epi ou gen de sèl site pou charaktèr. 806 00:39:48,150 --> 00:39:51,150 Nan mond lan JavaScript, anpil moun, pi fò moun 807 00:39:51,150 --> 00:39:54,970 sèvi ak quotes sèl alantou strings jis paske li nan yon bagay stylistic. 808 00:39:54,970 --> 00:39:58,330 Men, sa ki nan operatè a plis isit la, ki nou pa te wè anvan? 809 00:39:58,330 --> 00:39:59,836 >> ODYANS: seri. 810 00:39:59,836 --> 00:40:00,960 DAVID Malan: seri. 811 00:40:00,960 --> 00:40:02,450 Se konsa, C pa menm gen sa a. 812 00:40:02,450 --> 00:40:04,820 PHP gen operatè a dot, ki fè sa ki sa a. 813 00:40:04,820 --> 00:40:09,710 JavaScript gen operatè a plis, ki konfizyon se jis tankou Java. 814 00:40:09,710 --> 00:40:11,440 Kounye a ki sa k ap pase sou isit la? 815 00:40:11,440 --> 00:40:14,260 >> Se konsa, isit la nan kote yon debaz konpreyansyon yo genyen sou foto sa a 816 00:40:14,260 --> 00:40:17,010 nou jete moute yon koup jou de sa vin antre nan jwe. 817 00:40:17,010 --> 00:40:19,620 Sonje lè nou te gen yon senp vèsyon an yon HTML page-- 818 00:40:19,620 --> 00:40:20,830 li jis te di, alo nan lemonn. 819 00:40:20,830 --> 00:40:22,770 Lè sa a, nou te trase yon pye bwa a dwat a, ki 820 00:40:22,770 --> 00:40:27,320 te gen yon pakèt moun sou rektang ak liy konekte yo tankou yon pyebwa fanmi yo. 821 00:40:27,320 --> 00:40:30,820 Se konsa, sa a, se sa yo rele Dom la oswa Dokiman objè ki gen konpòtman egzanplè. 822 00:40:30,820 --> 00:40:36,759 Epi li vire soti ke ou kapab jwenn aksè nan rektang nan ki pye bwa ak sentaks 823 00:40:36,759 --> 00:40:37,550 tankou sa ki annapre yo. 824 00:40:37,550 --> 00:40:41,370 Ou literalman di dokiman, ki se yon espesyal varyab mondyal nan yon JavaScript 825 00:40:41,370 --> 00:40:45,890 pwogram ki gen yon fonksyon asosye ak li ke ou kapab jwenn aksè nan 826 00:40:45,890 --> 00:40:50,280 menm jan ak yon struct, men ou tou senpleman di dot ak Lè sa a non fonksyon an, 827 00:40:50,280 --> 00:40:52,390 jwenn eleman pa ID. 828 00:40:52,390 --> 00:40:55,460 >> Eleman nan mwen vle jwenn se aparamman site non unquote. 829 00:40:55,460 --> 00:40:57,150 Lè sa a, mwen vle jwenn valè li yo. 830 00:40:57,150 --> 00:40:58,330 Koulye a, nou ap vin devan yo nan tèt nou. 831 00:40:58,330 --> 00:41:00,038 Mwen pa menm asire ki sa tout sa a se sou yo. 832 00:41:00,038 --> 00:41:03,000 Se pou yo vit pou pi devan pou HTML a sou paj la, ki se super senp. 833 00:41:03,000 --> 00:41:05,370 >> Avi ke mwen te defini yon fòm desann isit la. 834 00:41:05,370 --> 00:41:07,940 Avi mwen te bay li yon inik ID, menm si nou pa te itilize 835 00:41:07,940 --> 00:41:08,870 atribi sa a anvan. 836 00:41:08,870 --> 00:41:11,300 Men, sa a egziste nan HTML. 837 00:41:11,300 --> 00:41:15,570 Ou ka inikman idantifye kèk moso nan HTML ak yon idantifyan tankou sa a. 838 00:41:15,570 --> 00:41:19,880 >> Avi kounye a this-- vire soti HTML sipòte, pou chak ke lis lesiv 839 00:41:19,880 --> 00:41:22,490 yon ti moman de sa, yon antye pakèt moun sou pòtè evènman. 840 00:41:22,490 --> 00:41:25,060 Lè sa a kap okipe-evènman di sou soumèt. 841 00:41:25,060 --> 00:41:28,730 Sou soumèt a itilizatè a sa a fòm, rele Kòd sa a. 842 00:41:28,730 --> 00:41:31,360 Ak kòd la ki k ap pase yo dwe rele oswa egzekite 843 00:41:31,360 --> 00:41:35,260 se egzakteman sa a, grèk la fonksyon ki te swiv pa retounen fo. 844 00:41:35,260 --> 00:41:37,360 Tout lòt bagay yo ta dwe dwe trè yo konnen yo. 845 00:41:37,360 --> 00:41:42,050 >> Isit la se yon D 'nan tèks kalite, ki gen ID, nan ka sa a, se pral fè non. 846 00:41:42,050 --> 00:41:45,430 Nou pa gen yon non atribi aktyèl time-- sa a ak yon bouton soumèt. 847 00:41:45,430 --> 00:41:48,330 Se konsa, paj la ki kapab lakòz sanble tankou sa a. 848 00:41:48,330 --> 00:41:52,890 Ak konpòtman an ki kapab lakòz, ou pral wè, sanble tankou sa a. 849 00:41:52,890 --> 00:41:56,940 Paj la li gen tout pouvwa a lokal yo di, alo David, diman yon estetik plezi 850 00:41:56,940 --> 00:41:58,340 fason yo voye bonjou pou yon itilizatè. 851 00:41:58,340 --> 00:41:59,950 Men, sa ki aktyèlman ale sou? 852 00:41:59,950 --> 00:42:01,360 >> Oke, konsidere sa sa a se. 853 00:42:01,360 --> 00:42:02,310 Sa a se yon jaden tèks. 854 00:42:02,310 --> 00:42:04,635 Ak selon a HTML isit la, mwen te bay li 855 00:42:04,635 --> 00:42:07,350 yon idantifyan inik rele quote Non unquote. 856 00:42:07,350 --> 00:42:09,770 Pandan se tan, mwen te di lè itilizatè a soumèt fòm sa a 857 00:42:09,770 --> 00:42:13,820 pa frape Mete oswa klike soumèt nan bouton, rele fonksyon an rele Di 858 00:42:13,820 --> 00:42:15,410 ak Lè sa a retounen fo. 859 00:42:15,410 --> 00:42:16,870 Se pou nou konsidere moun ki nan do. 860 00:42:16,870 --> 00:42:20,590 Avi lè mwen klike sou soumèt a, URL nan paj sa a pa chanje. 861 00:42:20,590 --> 00:42:22,420 Icon navigatè a pa t 'kòmanse bondi. 862 00:42:22,420 --> 00:42:27,050 Mwen pa t 'ale nenpòt kote, epi ki nan literalman paske mwen te di retounen fo. 863 00:42:27,050 --> 00:42:31,534 Retounen Fo sikui kout oswa arè konpòtman an default nan yon fòm. 864 00:42:31,534 --> 00:42:33,700 Se konsa, ki Lè sa a, kite nou ak yon sèl sa a final kesyon. 865 00:42:33,700 --> 00:42:34,764 Ki sa ki Di fè? 866 00:42:34,764 --> 00:42:36,680 Oke, Di aparamman rele yon fonksyon rele 867 00:42:36,680 --> 00:42:39,250 Alert, pase nan yon sèl lontan agiman sa a, se 868 00:42:39,250 --> 00:42:43,950 rezilta a nan konkatenan ansanm yon pakèt moun sou chèn, alo espas vigil, 869 00:42:43,950 --> 00:42:45,810 Lè sa a, tou sa sa a tounen lakay la. 870 00:42:45,810 --> 00:42:51,490 Se konsa, dokiman, se tankou yon mondyal varyab ak sa yo ki rasin nan ki pye bwa, 871 00:42:51,490 --> 00:42:55,560 rele yon fonksyon espesyal, otreman kounye a li te ye kòm yon metòd. 872 00:42:55,560 --> 00:42:57,650 Yon fonksyon sa a, se andedan nan yon varyab se 873 00:42:57,650 --> 00:42:59,640 rele yon metòd olye pou yo yon fonksyon. 874 00:42:59,640 --> 00:43:01,570 >> Se konsa, jwenn eleman pa ID. 875 00:43:01,570 --> 00:43:03,940 Ki sa ki eleman ou vle jwenn pa ID li yo? 876 00:43:03,940 --> 00:43:06,970 Site non unquote ak Lè sa a, espesyalman apresye. 877 00:43:06,970 --> 00:43:12,000 Se konsa, nan lòt mo, ki tou senpleman Kòd jwenn jaden an tèks ki gen ID se non 878 00:43:12,000 --> 00:43:13,380 ak Lè sa a vin valè li yo. 879 00:43:13,380 --> 00:43:16,460 Se konsa, si m 'te chanje sa a epi di Davin olye pou yo David, 880 00:43:16,460 --> 00:43:20,670 , epi klike soumèt, kounye a nou gen yon salitasyon pou Davin. 881 00:43:20,670 --> 00:43:22,890 >> Tout dwa, se konsa tout bon ak bon. 882 00:43:22,890 --> 00:43:25,480 Men, kite a wè si nou ka fè sa a yon ti kras cleaner depi jis 883 00:43:25,480 --> 00:43:28,190 ekri kòd tankou sa a se jeneralman yo pral dezaprouve sou li. 884 00:43:28,190 --> 00:43:30,060 Sa a se pral fè yon gade scarier. 885 00:43:30,060 --> 00:43:32,330 Men, sa ki nan premye a diferans ke ou sonje isit la 886 00:43:32,330 --> 00:43:35,970 nan vèsyon sa-a san konte nan non chanje Dom youn? 887 00:43:35,970 --> 00:43:41,110 Ki sa ki struktural parèt diferan sou sa a kont lòt la? 888 00:43:41,110 --> 00:43:41,932 Yeah? 889 00:43:41,932 --> 00:43:43,890 ODYANS: Èske fòm lan sou tèt nan script la kounye a? 890 00:43:43,890 --> 00:43:46,570 DAVID Malan: Yeah, fòm la se sou tèt nan script la pou kèk rezon kirye. 891 00:43:46,570 --> 00:43:48,736 Se konsa, sa a, se premye bagay la ki sote soti nan m ', tou. 892 00:43:48,736 --> 00:43:50,990 Ak Erezman omwen, pati sa a se ki idantik. 893 00:43:50,990 --> 00:43:53,470 Se konsa, bagay la sèlman ki sanble yo dwe diferan se sa a. 894 00:43:53,470 --> 00:43:55,296 >> Se konsa, isit la nan sa ki nan pwòp sou JavaScript 2. 895 00:43:55,296 --> 00:43:57,420 Epi li fè li difisil yo konprann nan premye gade, 896 00:43:57,420 --> 00:44:00,670 espesyalman pou pwojè final si w ap chèche a echantiyon Kòd sou entènèt, 897 00:44:00,670 --> 00:44:04,200 men li klou desann nan kèk debaz karakteristik Massachusetts Institute of Technology. 898 00:44:04,200 --> 00:44:06,230 Isit la ankò se ke mondyal plase dokiman. 899 00:44:06,230 --> 00:44:09,540 Isit la ankò se metòd ki oswa fonksyon ki di jwenn eleman nan pa ID. 900 00:44:09,540 --> 00:44:11,570 Fwa sa a, mwen vle jwenn ID la te rele Demo. 901 00:44:11,570 --> 00:44:12,490 Ki kote se sa? 902 00:44:12,490 --> 00:44:15,400 Sa a aparamman dwa isit la, fòm nan tèt li. 903 00:44:15,400 --> 00:44:20,010 >> Epi, koulye a remake ke aparamman si mwen jwenn tounen ki ne soti nan pye bwa a ki 904 00:44:20,010 --> 00:44:22,940 reprezante fòm nan tèt li, se pa yon jaden tèks, 905 00:44:22,940 --> 00:44:26,970 li vire soti ke fòm, ki ne oswa rektang soti nan pye bwa a, 906 00:44:26,970 --> 00:44:30,450 gen sa nou ap rele yon pwopriyete, trè, trè, trè menm jan an 907 00:44:30,450 --> 00:44:35,390 nan Lespri Bondye a yon struct nan C. Se jis yon manm done andedan nan rektang sa a. 908 00:44:35,390 --> 00:44:38,300 >> Se konsa, mwen te gen fòm nan isit la, ak mwen atache, 909 00:44:38,300 --> 00:44:44,650 oswa mwen plase, Sou li yo soumèt kap okipe ou pito Nan soumèt pwopriyete 910 00:44:44,650 --> 00:44:45,740 fonksyon sa a. 911 00:44:45,740 --> 00:44:49,000 Lè sa a se, pa lwen, fou a Bagay konsa byen lwen syntactically. 912 00:44:49,000 --> 00:44:53,610 Li sanble nan JavaScript ak nan PHP, ak franchman pou ki matyè nan C, 913 00:44:53,610 --> 00:44:58,990 menm si nou pa fè l ', ou kapab ajoute nameless, anonim, oswa AKA LAMBDA 914 00:44:58,990 --> 00:45:03,000 fonksyon ki pa gen yon non men yo ka rele Alòske. 915 00:45:03,000 --> 00:45:07,050 >> Se konsa, sa m ap fè isit la se mwen plase sa a Sou soumèt pwopriyete, ki 916 00:45:07,050 --> 00:45:14,330 se andedan nan sa a ne nan pye bwa Dom mwen, yon fonksyon, konsèy fonksyon si ou pral. 917 00:45:14,330 --> 00:45:16,310 Ki fonksyon pa gen okenn non, men sa pa fè sa 918 00:45:16,310 --> 00:45:19,110 gen pwoblèm paske nou pral wè nan yon moman ki jan yo rele li. 919 00:45:19,110 --> 00:45:21,780 Lè yo rele fonksyon sa a, Kòd sa a vin egzekite, lè sa a 920 00:45:21,780 --> 00:45:24,210 fo yo voye li tounen jis tankou anvan. 921 00:45:24,210 --> 00:45:25,800 >> Men, remake sa m 'te fè. 922 00:45:25,800 --> 00:45:27,830 Nan pwen sa a nan la istwa, mwen gen yon fòm. 923 00:45:27,830 --> 00:45:30,190 Li nan te resevwa yon ID inik rele Demo. 924 00:45:30,190 --> 00:45:33,740 Desann isit la, mwen gen yon tag script ki ègzekutra Kòd sa a. 925 00:45:33,740 --> 00:45:37,720 Li tache nan ki ne nan pye bwa a yo li nan Sou soumèt 926 00:45:37,720 --> 00:45:40,260 pwopriyete sa a fonksyon isit la. 927 00:45:40,260 --> 00:45:44,310 Ak jis pa nati nan ki jan navigatè travay, lè m 'kounye a klike sou soumèt oswa frape Antre, 928 00:45:44,310 --> 00:45:45,889 ki fonksyon ki pral jwenn yo rele. 929 00:45:45,889 --> 00:45:48,680 Li pa bezwen yon non paske moun ki èk an gen sousi ki sa li yo rele. 930 00:45:48,680 --> 00:45:52,540 Tan la sèlman li nan tout tan tout tan pral jwenn rele se lè mwen soumèt fòm nan. 931 00:45:52,540 --> 00:45:55,130 Gen nan pa gen bezwen pou m ', pwomotè a imen, 932 00:45:55,130 --> 00:45:57,330 yo aktyèlman rele li nenpòt lòt kote. 933 00:45:57,330 --> 00:46:00,720 >> Koulye a, jis kòm yon kol, tankou si ki pa te lide koube ase, 934 00:46:00,720 --> 00:46:03,330 nou ka menm fè sa-a gade plis skre lè l sèvi avèk 935 00:46:03,330 --> 00:46:05,850 yon bibliyotèk super popilè rele jQuery. 936 00:46:05,850 --> 00:46:08,760 An reyalite jQuery ak JavaScript yo souvan conflated. 937 00:46:08,760 --> 00:46:12,790 Ak sa ki nou pral fè nan Mèkredi se kòmansman lè l sèvi avèk lang sa a ak bibliyotèk sa yo 938 00:46:12,790 --> 00:46:16,030 yo bati de pli zan pli asenkron ak aplikasyon pou dinamik 939 00:46:16,030 --> 00:46:18,950 tankou kat jeyografik ap resevwa aplikasyon pou, aplikasyon pou 940 00:46:18,950 --> 00:46:22,360 ki ajou Paj Web la nan byen tan, anpil tankou Facebook oswa Gchat 941 00:46:22,360 --> 00:46:27,130 fè, ak pa gen okenn ankò Fèmen tèt nou nan frape soumèt pa yon jwenn oswa jis pòs 942 00:46:27,130 --> 00:46:27,630 pou kont li. 943 00:46:27,630 --> 00:46:29,055 Se konsa, mwen pral wè ou nan Mèkredi. 944 00:46:29,055 --> 00:46:31,805 945 00:46:31,805 --> 00:46:35,550 >> [Jwe mizik] 946 00:46:35,550 --> 00:48:09,728