1 00:00:00,000 --> 00:00:01,940 >> [Daqq ta mużika] 2 00:00:01,940 --> 00:00:11,130 3 00:00:11,130 --> 00:00:14,620 >> DAVID Malan: Dan huwa CS 50, u dan huwa l-bidu ta 'disa ġimgħa. 4 00:00:14,620 --> 00:00:18,240 U dak ħsibna aħna'd nagħmlu llum mhijiex biss tagħlaq il-kapitolu fuq ġimgħa li għaddiet 5 00:00:18,240 --> 00:00:22,670 materjal fejn aħna iffukat fuq is-server programmazzjoni web ġenb ma PHP u SQL, 6 00:00:22,670 --> 00:00:23,549 xi għalf database. 7 00:00:23,549 --> 00:00:25,590 Aħna ser jitkellmu dwar daqsxejn ta ' illum is-sigurtà u mbagħad 8 00:00:25,590 --> 00:00:29,590 tranżizzjoni għal programmazzjoni naħa tal-klijent lingwa magħrufa bħala JavaScript. 9 00:00:29,590 --> 00:00:31,330 Imma l-ewwel, xi fidwa. 10 00:00:31,330 --> 00:00:35,030 >> Inti tista 'tfakkar li fuq L-Erbgħa, I stabbiliti 11 00:00:35,030 --> 00:00:37,550 jiktbu websajt li ħa fil-input utent 12 00:00:37,550 --> 00:00:41,120 minn HTML forma li mbagħad maħżuna li l-ismijiet input utent, telefon 13 00:00:41,120 --> 00:00:43,124 numri, u cellphone trasportaturi fid-database. 14 00:00:43,124 --> 00:00:45,540 U mbagħad I kellhom kmand ftit iskrittura linja miktub fil-PHP 15 00:00:45,540 --> 00:00:47,956 li suppost kellha jtenni fuq l-ringieli fid-database 16 00:00:47,956 --> 00:00:49,400 u jibgħat messaġġi. 17 00:00:49,400 --> 00:00:53,870 Minkejja diversi, diversi tentattivi, aħna ma jiksbu li xogħol sa l-aħħar. 18 00:00:53,870 --> 00:00:57,820 >> So I jintefqu din il-ġimgħa kollu taħdem fuq dan il-kodiċi li nikseb us passat il-punt 19 00:00:57,820 --> 00:01:01,220 fejn aħna jitħalla 'off, fejn kollha Sibt sa l-aħħar Erbgħa 20 00:01:01,220 --> 00:01:05,500 kien dan il-messaġġ test minn Margo kif I tħabtu, 21 00:01:05,500 --> 00:01:09,940 segwit minn messaġġ test minn ieħor classmate, You ħadthom ltqajna dan David. 22 00:01:09,940 --> 00:01:14,030 Segwit minn dan wieħed, wonderfully inkoraġġanti. 23 00:01:14,030 --> 00:01:15,840 Miżmuma fuq għaddejjin, iqawwi qalbu ħafna. 24 00:01:15,840 --> 00:01:20,960 I kważi ltqajna sal then-- u dak l-nota aħna spiċċajna nhar l-Erbgħa. 25 00:01:20,960 --> 00:01:25,850 U mbagħad fil-fatt forsi favorit tiegħi, mument wara, dan daħal. 26 00:01:25,850 --> 00:01:27,000 Indanna Live Stream. 27 00:01:27,000 --> 00:01:31,080 >> Hekk illum, aħna tiffissa dan ma 'malajr tħares lejn dak I ghamilt peress. 28 00:01:31,080 --> 00:01:35,440 Allura kollha ta 'dan il-kodiċi huwa disponibbli online minn ġimgħa li għaddiet, tmien ġimgħa, 29 00:01:35,440 --> 00:01:36,300 kodiċi tas-sors. 30 00:01:36,300 --> 00:01:39,425 U tkun taf tara li I marru permezz, u I attwalment mnaddfa affarijiet daqsxejn. 31 00:01:39,425 --> 00:01:42,080 I introdotti koppja oħra karatteristiċi ta 'database SQL. 32 00:01:42,080 --> 00:01:45,300 Per eżempju, minflok biss tagħmel trasportatur tal char var 33 00:01:45,300 --> 00:01:47,310 kif naħseb jien għamilt fuq il-fly aħħar ġimgħa. 34 00:01:47,310 --> 00:01:49,820 I minflok definit bħala dak li sejjaħ għal ENUM. 35 00:01:49,820 --> 00:01:53,310 >> U xi wħud minnkom tista raw dan kif aħna esplorati C. ENUM huwa attwalment 36 00:01:53,310 --> 00:01:56,820 karatteristika ta 'C fejn inti tista tenumera mazz sħiħ ta 'kostanti 37 00:01:56,820 --> 00:01:59,640 u jassenjawhom valuri awtomatiċi, bħal wieħed, tnejn, tlieta, erba ' 38 00:01:59,640 --> 00:02:01,330 mingħajr ma jkollhom numri tal-kodiċi iebes. 39 00:02:01,330 --> 00:02:04,780 Allura SQL jappoġġja l-istess, fejn jekk għandek qasam database li inti biss 40 00:02:04,780 --> 00:02:09,389 tixtieq li tieħu fuq waħda mill finite valuri, inti tista litteralment tispeċifika dan 41 00:02:09,389 --> 00:02:13,120 kif I għamlu hemmhekk għal erba trasportaturi popolari cellphone Istati Uniti. 42 00:02:13,120 --> 00:02:13,819 >> So I did li. 43 00:02:13,819 --> 00:02:16,610 U I għamel numru ta 'bidliet bħal sew, l-aktar importanti minnhom 44 00:02:16,610 --> 00:02:20,090 kien li tikseb email taħdem minħabba recall, li dan il-programm bbażat ruħha fuq liema 45 00:02:20,090 --> 00:02:23,470 ġeneralment imsejħa email lil Portal SMS, li huwa biss 46 00:02:23,470 --> 00:02:27,670 mod fancy ta 'tgħid li Verizon, u AT & T, u folks oħra huma favur server, 47 00:02:27,670 --> 00:02:30,740 li biha jekk tirċievi email, din tinbidel għall-SMS 48 00:02:30,740 --> 00:02:33,290 u tibgħat test messaġġ għall-telefon ta 'xi ħadd. 49 00:02:33,290 --> 00:02:37,010 Mela jekk jien għamilt dan b'mod korrett, hawnhekk hija forma ġdida u mtejba 50 00:02:37,010 --> 00:02:39,259 li ser jitkellmu ma kodiċi l-ġdid u mtejba, li 51 00:02:39,259 --> 00:02:40,300 inti tista 'tilgħab ma online. 52 00:02:40,300 --> 00:02:44,140 U wieħed jittama li tagħmel tiegħi ħoss telefon fi ftit mument. 53 00:02:44,140 --> 00:02:47,240 >> Allura l-ewwel, jien ser tip fl-isem tiegħi. 54 00:02:47,240 --> 00:02:51,400 Tieni, jien mhux ser biex jagħmlu dan dan iż-żmien. 55 00:02:51,400 --> 00:02:53,920 Jien ser tagħmel Spezzjona Element. 56 00:02:53,920 --> 00:02:56,710 U dan huwa biss ħaġa ftit so I ma 57 00:02:56,710 --> 00:02:59,250 joħolqu sigħat ta 'post-produzzjoni jaħdmu kif għamilt aħħar darba. 58 00:02:59,250 --> 00:03:02,300 Hemm issa numru tat-telefon tiegħi. 59 00:03:02,300 --> 00:03:03,560 >> I ser tagħżel Verizon. 60 00:03:03,560 --> 00:03:10,260 U hawn, ejja dawwar fuq din mikrofonu hawn, u jimmiraw dan fil-telefon tiegħi hawn. 61 00:03:10,260 --> 00:03:13,130 Jien ser ikklikkja Reġistru, li għandu nisperaw 62 00:03:13,130 --> 00:03:14,530 poġġih fid-database. 63 00:03:14,530 --> 00:03:16,780 Issa jien ser imorru għall- programm kmand linja, li 64 00:03:16,780 --> 00:03:20,825 irtirar kienet imsejħa dot mmejla test, u cross fingers tiegħek. 65 00:03:20,825 --> 00:03:24,092 66 00:03:24,092 --> 00:03:26,527 Here we go. 67 00:03:26,527 --> 00:03:27,501 >> [Dings PHONE] 68 00:03:27,501 --> 00:03:28,962 >> [Applause] 69 00:03:28,962 --> 00:03:31,815 70 00:03:31,815 --> 00:03:34,940 DAVID Malan: Allura gost aktar minn this-- huwa gost, naturalment, jekk I jsibu rwieħhom fiha. 71 00:03:34,940 --> 00:03:38,004 Iżda huwa aktar divertenti, ħsibt, jekk aħna maħluqa waħda minn dawk il-mumenti movie 72 00:03:38,004 --> 00:03:40,420 fejn bħal xi ħaġa verament ħażina ġara fid-dinja, 73 00:03:40,420 --> 00:03:42,860 u bħall-persuni kollha NSA cellphones tibda beeping 74 00:03:42,860 --> 00:03:44,860 ma messaġġi twissija biex dan il-fatt. 75 00:03:44,860 --> 00:03:47,026 So I ħsibt aħna se jipprova jirrikreaw l-istess hawn, 76 00:03:47,026 --> 00:03:49,610 li biha ma jużawx 'database, I minflok bil-quddiem 77 00:03:49,610 --> 00:03:51,490 kiteb programm li tidher bħal dan. 78 00:03:51,490 --> 00:03:53,660 >> Din hija index.php-- u nressaq online dan il-kodiċi 79 00:03:53,660 --> 00:03:56,710 kif well-- li apparentement biss jirrendi form.php, 80 00:03:56,710 --> 00:04:00,990 użu ta 'paradigma stil MVC li aħna jitkellmu dwar f'aktar dettall fil-sett problema 81 00:04:00,990 --> 00:04:01,650 sebgħa. 82 00:04:01,650 --> 00:04:02,910 Dik il-formola hija pjuttost sempliċi. 83 00:04:02,910 --> 00:04:06,634 Li għaddej biex jissottometti ruħu għal fajl imsejjaħ here.php via post. 84 00:04:06,634 --> 00:04:09,300 U huwa apparentement ser jistaqsu għal isem, u numru tat-telefon, 85 00:04:09,300 --> 00:04:11,400 u mbagħad permezz tal-hekk imsejħa Menu tagħżel, huwa 86 00:04:11,400 --> 00:04:14,250 ser jagħtuk inqas erba trasportaturi popolari cellphone Istati Uniti, 87 00:04:14,250 --> 00:04:17,470 u mbagħad jippermetti li inti effettiv jieħu attendenza billi tikklikkja hawn. 88 00:04:17,470 --> 00:04:20,471 >> U hawn, sadanittant, va jissellef xi wħud mill-kodiċi mill-aħħar darba. 89 00:04:20,471 --> 00:04:22,553 U jekk inti biss skim dan, tkun taf tara li hemm 90 00:04:22,553 --> 00:04:23,900 mazz sħiħ ta 'żball iċċekkjar. 91 00:04:23,900 --> 00:04:26,640 Iżda l-sbuħija fl-aħħar huwa li aħna mhux qed miktub għal database llum. 92 00:04:26,640 --> 00:04:29,130 Aħna qed iżommha sempliċi u biss tibgħat nisperaw 93 00:04:29,130 --> 00:04:32,190 messaġġ test via l-funzjoni I kiteb matul l-aħħar ftit jiem sejħa 94 00:04:32,190 --> 00:04:36,270 Test, li hija fil Funzjonijiet. PHP, li hija għal darb'oħra disponibbli online. 95 00:04:36,270 --> 00:04:38,210 >> Mela jekk inti tixtieq biex ikollhom sehem f'dan. 96 00:04:38,210 --> 00:04:40,190 Aħna mhux qed tmur biex tkun ħażna xejn. 97 00:04:40,190 --> 00:04:43,809 Mur dan il-URL hawn fil-ħin reali. 98 00:04:43,809 --> 00:04:46,850 Ma jissottomettux encore biss, imma ejja ara jekk nistgħu jkollhom waħda minn dawn movie 99 00:04:46,850 --> 00:04:49,830 mumenti fejn cellphone kulħadd jibda beeping, nisperaw biss 100 00:04:49,830 --> 00:04:53,580 darba din is-sena b'differenza fl-2011 fejn dan marru horribly awry. 101 00:04:53,580 --> 00:04:58,910 U ladarba inti tmur f'dak l-indirizz, inti għandek tara forma sempliċi super 102 00:04:58,910 --> 00:05:03,884 li jekk għandek isem, cell phone numru, u trasportatur cellphone li 103 00:05:03,884 --> 00:05:06,175 jaqbel mal-lista hemmhekk, mur quddiem u imla l-formola. 104 00:05:06,175 --> 00:05:07,880 Iżda ma hit jissottomettu għadha biss. 105 00:05:07,880 --> 00:05:10,850 >> Il-formola għaddej biex teżamina bħal dan. 106 00:05:10,850 --> 00:05:13,660 Jimxi 'l quddiem u tip isem tiegħek, numru tat-telefon. 107 00:05:13,660 --> 00:05:17,670 OOP, xi ħadd għaddej qabel il-kurva. 108 00:05:17,670 --> 00:05:18,170 Huwa OK. 109 00:05:18,170 --> 00:05:19,340 OK, kulħadd mimlija l-formola. 110 00:05:19,340 --> 00:05:21,400 Dan għandu jaħdmu fuq telefon, wisq, jekk inti tixtieq. 111 00:05:21,400 --> 00:05:23,695 Kull dritt, fuq il-marki tiegħek, nikseb stabbiliti, go. 112 00:05:23,695 --> 00:05:24,195 Hit Hawnhekk. 113 00:05:24,195 --> 00:05:27,275 114 00:05:27,275 --> 00:05:27,775 Liema? 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 Jiena naħlef li Alla, I ttestjati din ħinijiet multipli llum. 119 00:05:40,250 --> 00:05:41,720 Inti ltqajna? 120 00:05:41,720 --> 00:05:43,145 >> [INTERPOSING VOICES] 121 00:05:43,145 --> 00:05:46,470 122 00:05:46,470 --> 00:05:49,560 >> DAVID Malan: OK, żball mill-utent forsi. 123 00:05:49,560 --> 00:05:50,550 C'est tnejn. 124 00:05:50,550 --> 00:05:53,300 Hija ħadmet għal tnejn minn ftit mijiet, tlieta, erbgħa. 125 00:05:53,300 --> 00:05:55,940 OK, li tajjeb. 126 00:05:55,940 --> 00:05:58,520 Erbgħa minn ħamsa għal Korrettezza kif madwar. 127 00:05:58,520 --> 00:05:59,810 >> Allura dak li ġara biss? 128 00:05:59,810 --> 00:06:02,727 Allura preżumibbilment, mingħajr ma jaraw tiegħek skrins, għaliex jista 'dan ikun errored? 129 00:06:02,727 --> 00:06:05,518 Huwa probabbilment li aħna kienu biss tipprova tagħmel wisq konnessjonijiet 130 00:06:05,518 --> 00:06:08,110 biex mail server Harvard kollha fl ladarba mill-istess indirizz IP. 131 00:06:08,110 --> 00:06:10,740 Jien biss guessing peress I ma il-lussu ta 'ttestjar 132 00:06:10,740 --> 00:06:13,220 dan il-kodiċi ma 'xi 300 ruħ bil-quddiem 133 00:06:13,220 --> 00:06:16,040 iżda għal issa jirrealizzaw li li mill-inqas għandhom 134 00:06:16,040 --> 00:06:18,250 gotten-xogħol isir dan iż-żmien. 135 00:06:18,250 --> 00:06:22,880 >> Kull dritt, hekk għaliex huwa dan kollu l- aktar germane għall x'inhu għaddej? 136 00:06:22,880 --> 00:06:24,900 Ukoll l-ewwel, a quick Koppja ta 'avviżi. 137 00:06:24,900 --> 00:06:29,350 Allura wieħed, jekk inti tixtieq li jissieħbu Chang, u Nick, u oħrajn waqt l-ikla din il-ġimgħa, 138 00:06:29,350 --> 00:06:32,400 jagħmlu RSVP fuq il-URL tas-soltu hemmhekk. 139 00:06:32,400 --> 00:06:35,650 Jekk qed taħseb jikkonċentraw jew tagħmel sekondarja fil CS, 140 00:06:35,650 --> 00:06:38,941 jekk int sophomore, jew freshman, jew saħansitra junior jew anzjan f'dan il-punt 141 00:06:38,941 --> 00:06:42,490 u xorta jistgħu għafas fil-korsijiet, jirrealizzaw li l-iskola inġinerija 142 00:06:42,490 --> 00:06:45,620 huwa ġbir għall Ben b'xejn u Ġelat Jerry u konsulenza 143 00:06:45,620 --> 00:06:48,910 dan ftit wara klassi l-Erbgħa fil 04:00 fil-bini CS 144 00:06:48,910 --> 00:06:49,771 fil Maxwell Dworkin. 145 00:06:49,771 --> 00:06:51,520 Jekk dan huwa wisq malajr fuq l-iskrin, biss jmorru 146 00:06:51,520 --> 00:06:55,260 li cs50.harvard.edu għal link għall-avveniment Facebook 147 00:06:55,260 --> 00:06:57,140 fejn tista 'tara aktar dettalji. 148 00:06:57,140 --> 00:07:01,390 >> Sadanittant, ħsibt li se jikkoreġu ħaġa waħda oħra I goofed nhar l-Erbgħa. 149 00:07:01,390 --> 00:07:04,400 Jirriżulta li ID Mark fuq Facebook ma kienx tlieta. 150 00:07:04,400 --> 00:07:05,230 Kien erbgħa. 151 00:07:05,230 --> 00:07:08,330 Jinstabx huwa kellu aktar test kontijiet minn I recall. 152 00:07:08,330 --> 00:07:12,400 Imma dak li din qisni opportunità li tagħmel huwa li pull up URL bħal dan. 153 00:07:12,400 --> 00:07:16,680 >> Għalhekk jirriżulta li Facebook għandha API, Application Programming Interface, 154 00:07:16,680 --> 00:07:20,070 li huwa mekkaniżmu li bih inti jistgħu jitolbu data programmatically 155 00:07:20,070 --> 00:07:24,480 fil Facebook u terġa 'lura magna informazzjoni tinqara, mhux paġni web 156 00:07:24,480 --> 00:07:28,690 imma test biss prima, xi ħaġa imsejħa JavaScript Notazzjoni Għan. 157 00:07:28,690 --> 00:07:32,150 U fil-fatt, jekk I żjara dan URL, u zoom fi, kontumaċja, 158 00:07:32,150 --> 00:07:34,960 dan huwa Mark pubblikament informazzjoni aċċessibbli. 159 00:07:34,960 --> 00:07:37,430 >> U l-dettall interessanti hawnhekk huwa biss li ID tiegħu 160 00:07:37,430 --> 00:07:40,670 huwa tabilħaqq, numru erbgħa, li jiena realizzati malli Jien għamilt dan. 161 00:07:40,670 --> 00:07:44,260 Tista 'tagħmel dan lilek innifsek jekk inti taf username tiegħek Facebook jekk għandek wieħed. 162 00:07:44,260 --> 00:07:45,440 Just tip it up top hemmhekk. 163 00:07:45,440 --> 00:07:46,640 U xejn minn dan huwa privat. 164 00:07:46,640 --> 00:07:48,670 Jien biss tagħmel dan anki fil-modalità incognito. 165 00:07:48,670 --> 00:07:49,900 Hekk jien lanqas illoggjat. 166 00:07:49,900 --> 00:07:54,440 U int tara li I apparentement kien numru utent 6454 167 00:07:54,440 --> 00:07:56,480 fuq Facebook, li mhuwiex bad wisq dawn il-jiem. 168 00:07:56,480 --> 00:07:59,900 Allura xorta, tkun taf tara wkoll informazzjoni addizzjonali hemmhekk. 169 00:07:59,900 --> 00:08:02,150 >> U l-aspett utli ta 'dan huwa li inti 170 00:08:02,150 --> 00:08:06,890 tista 'tikteb software tiegħek stess li b'xi tintegra data bħal din 171 00:08:06,890 --> 00:08:08,170 fl-applikazzjoni tiegħek. 172 00:08:08,170 --> 00:08:10,650 Inti tista 'tagħti s-setgħa lill-utenti għall- log fis-website tiegħek, 173 00:08:10,650 --> 00:08:14,190 ma jużawx username custom tagħhom stess u password imma forsi login Facebook tagħhom 174 00:08:14,190 --> 00:08:16,170 u jiksbu l-informazzjoni anki dwar il-ħbieb tagħhom, 175 00:08:16,170 --> 00:08:18,740 jekk huma japprovaw tali, jew simili. 176 00:08:18,740 --> 00:08:21,430 Allura wieħed jinnota li CS50, wisq, għandha wħud mill APIs tagħha stess, 177 00:08:21,430 --> 00:08:24,620 wieħed għad-data katalogu tal-kors, xi wħud għall-menus hugs fil-dining 178 00:08:24,620 --> 00:08:26,730 swali, kollha tal- bini u l-postijiet 179 00:08:26,730 --> 00:08:30,930 fuq il-kampus għandna API għal kif ukoll li inti tista query bl-istess mod u jiksbu 180 00:08:30,930 --> 00:08:35,520 data testwali lura li inti tista 'tintegra fi PHP, jew JavaScript, jew saħansitra, 181 00:08:35,520 --> 00:08:38,320 għalkemm anqas komuni, ta ' C ibbażat fuq proġetti finali. 182 00:08:38,320 --> 00:08:41,190 >> Tabilħaqq quddiem għall-finali proġett huma tragwardi ftit. 183 00:08:41,190 --> 00:08:42,980 Inti ltqajna email mill us-oħra jum. 184 00:08:42,980 --> 00:08:45,761 Jirrealizzaw li l-proposta huwa dovut dan it-tnejn li ġejjin. 185 00:08:45,761 --> 00:08:49,010 Mhuwiex neċessarjament vinkolanti, imma int do bżonn li jirċievu fellows tagħlim tiegħek 186 00:08:49,010 --> 00:08:51,260 approvazzjoni qabel ma tagħmel kwalunkwe bidliet wara. 187 00:08:51,260 --> 00:08:54,280 U allura l quddiem huma numru ta 'tragwardi oħra. 188 00:08:54,280 --> 00:08:56,542 >> Allura biex tease inti, wisq, ma 'xi possibilitajiet, 189 00:08:56,542 --> 00:08:58,250 għandna mazz ta ' dawn bozoz tad-dawl lewn. 190 00:08:58,250 --> 00:09:01,190 U xi wħud minnkom guys issa għandhom xi minn dawn fil-kamra dorm tiegħek ukoll. 191 00:09:01,190 --> 00:09:02,920 U huma wkoll ikollhom API. 192 00:09:02,920 --> 00:09:07,300 Allura recall dawk ġimgħat basal binarja ilu li Dan Bradley u Ansel 193 00:09:07,300 --> 00:09:08,780 Duff maħluqa għalina. 194 00:09:08,780 --> 00:09:12,560 Huma użati interface software biex dan bozza tad-dawl, li fil-mument 195 00:09:12,560 --> 00:09:15,232 huwa pplaggjat f'elettriku u mbagħad permezz wireless 196 00:09:15,232 --> 00:09:17,690 huwa konness ma 'ħaġa ftit imsejjaħ il-Pont stabbiliti hawn, 197 00:09:17,690 --> 00:09:21,280 bħal proprjetarja router ftit għal dan il-mezz partikolari. 198 00:09:21,280 --> 00:09:26,540 >> Iżda jirriżulta jekk I taf kif jibagħtu messaġġi HTTP, kif aħna kollha do issa, 199 00:09:26,540 --> 00:09:31,670 I tista 'tibgħat messaġġ bħal dan dan bozza tad-dawl li jduru fuq jew barra 200 00:09:31,670 --> 00:09:34,000 jew jagħmlu kwalunkwe numru ta ' operazzjonijiet oħra fuqha. 201 00:09:34,000 --> 00:09:36,110 Avviż li mhuwiex jiksbu, mhuwiex post. 202 00:09:36,110 --> 00:09:37,760 Hemm wieħed oħra msejħa mressqa. 203 00:09:37,760 --> 00:09:39,630 Hemm fil-fatt ftit verbi oħra bħal dawn. 204 00:09:39,630 --> 00:09:42,920 Imma avviż hemm triq hemmhekk, mmejla API, mmejla iżviluppatur ġodda, 205 00:09:42,920 --> 00:09:44,990 mmejla dawl, mmejla waħda, mmejla istat. 206 00:09:44,990 --> 00:09:49,060 >> Dik hija apparentement biss il- triq li l-kumpanija, Philips, 207 00:09:49,060 --> 00:09:51,640 iddeċieda inti għandek hit ma 'talba HTTP 208 00:09:51,640 --> 00:09:55,010 jekk inti tixtieq li tibdel l-istat tal-bozza jużaw HTTP 1.1. 209 00:09:55,010 --> 00:09:56,380 Imbagħad avviż il-linja vojta. 210 00:09:56,380 --> 00:10:00,170 U mbagħad fl-aħħar dak qisu tip ta 'firxa ta' xi tip, 211 00:10:00,170 --> 00:10:04,730 Dan għal darb'oħra se jiġu msejħa JavaScript Notazzjoni Għan, jew Jason. 212 00:10:04,730 --> 00:10:08,000 U dak li tara hawnhekk huwa li hemm tliet pari b'valur ewlenin. 213 00:10:08,000 --> 00:10:09,115 >> Wieħed ewlenin tissejjaħ fuq. 214 00:10:09,115 --> 00:10:10,990 U l-valur tagħha apparentement se jkun veru. 215 00:10:10,990 --> 00:10:13,612 Luminożità huwa 128, li huwa xi tip ta 'int. 216 00:10:13,612 --> 00:10:15,820 U allura ħin ta 'transizzjoni huwa żero, li hija apparentement 217 00:10:15,820 --> 00:10:17,970 kemm żmien li għaddej biex jieħdu biex jibdlu din ħaġa fuq. 218 00:10:17,970 --> 00:10:19,890 >> Allura issa dritt dan bozza tad-dawl huwa off. 219 00:10:19,890 --> 00:10:22,880 Imma jekk I do eżattament this-- let me mur iqarrqu folja ftit 220 00:10:22,880 --> 00:10:25,200 li Dan twaqqaf fl advance-- u jien ser 221 00:10:25,200 --> 00:10:27,920 jimxi 'l quddiem u kopja l-kmand li ġej. 222 00:10:27,920 --> 00:10:30,200 Curl, kif xi wħud minnkom jista 'jkollok miġbura fuq CS50 223 00:10:30,200 --> 00:10:35,080 Iddiskuti huwa utilità simili telnet bħal li inti tista jissimulaw talbiet HTTP, 224 00:10:35,080 --> 00:10:36,360 speċifikament tpoġġi. 225 00:10:36,360 --> 00:10:39,710 I jista 'jibgħat din id-data, speċifikament dak li aħna biss 226 00:10:39,710 --> 00:10:43,430 raw mument ilu speċifikament għal dan il-URL hawn fuq. 227 00:10:43,430 --> 00:10:46,310 U mbagħad Curl se jimmaniġġjaw kollha tal-headers meħtieġa 228 00:10:46,310 --> 00:10:47,600 u parsing hemmhekk ta '. 229 00:10:47,600 --> 00:10:54,700 >> So I kollha għandek tagħmel huwa kopja dan fis tieqa terminal u mbagħad hit Ikteb. 230 00:10:54,700 --> 00:10:56,000 U l-bozza tad-dawl tmur fuq. 231 00:10:56,000 --> 00:10:59,060 U din hija kollha għaddejjin kompjuter tiegħi wirelessly 232 00:10:59,060 --> 00:11:01,960 b'xi mod l isfel għall-pont, li huwa mbagħad tkellem ma 'dan bozza tad-dawl. 233 00:11:01,960 --> 00:11:02,960 I tista 'tagħmel xi ħaġa oħra. 234 00:11:02,960 --> 00:11:07,050 I tista 'tagħmel dan ħaġa mur aħmar per eżempju. 235 00:11:07,050 --> 00:11:11,040 I jistgħu per eżempju jagħmlu dan ħaġa tmur aħdar. 236 00:11:11,040 --> 00:11:12,220 I jista 'jagħmilha tmur blu. 237 00:11:12,220 --> 00:11:14,760 >> U avviż f'kull wieħed minn dawn każijiet, kollha li jien jinbidlu 238 00:11:14,760 --> 00:11:18,540 huwa l-hekk imsejħa valur lewn li attwalment jagħtuh xi kulur. 239 00:11:18,540 --> 00:11:20,320 So let me paste dan wieħed fil ukoll. 240 00:11:20,320 --> 00:11:21,000 Issa huwa blu. 241 00:11:21,000 --> 00:11:24,672 >> U inti tista 'tagħmel anki fancier affarijiet where-- ejja mur aħdar. 242 00:11:24,672 --> 00:11:26,630 U I jistgħu jagħmlu dan ta ' kors bil-kodiċi tiegħi stess. 243 00:11:26,630 --> 00:11:30,670 Iżda anki l-API innifsu jappoġġja operazzjonijiet funky 244 00:11:30,670 --> 00:11:35,510 bħal dan, li issa se jolqot magħna għall-30 sekonda li jmiss. 245 00:11:35,510 --> 00:11:39,170 >> Allura dak togħma waħda mill dak li inti tista do ma 'API, dan wieħed jinvolvi 246 00:11:39,170 --> 00:11:40,010 bozoz tad-dawl. 247 00:11:40,010 --> 00:11:42,510 Innota li CS50 għandha koppja pari ta 'Google ħġieġ Jekk tixtieq 248 00:11:42,510 --> 00:11:45,380 tixtieq tindirizza xi ħaġa flimkien dawk il-linji, Arduino UNOS, li 249 00:11:45,380 --> 00:11:48,670 huma kompjuters ftit żgħira, essenzjalment, fuq bord ta 'ċirkwit ftit 250 00:11:48,670 --> 00:11:50,470 li inti tista 'tqabbad wajers u affarijiet oħra 251 00:11:50,470 --> 00:11:52,732 u fil-fatt l-kontroll ambjent tiegħek fid-dinja reali. 252 00:11:52,732 --> 00:11:54,940 U allura hemm koppja ġugarelli ta 'ġodda li għandna. 253 00:11:54,940 --> 00:11:59,294 Dan wieħed litteralment biss waslu l- ġurnata oħra bil-posta, ta 'faxxa Myo. 254 00:11:59,294 --> 00:12:01,710 U ħsibt huwa mod biex inti tikseb eċċitati dwar il-proġetti 255 00:12:01,710 --> 00:12:03,720 li inti tista 'tuża ma dan hardware kieku 256 00:12:03,720 --> 00:12:08,900 jkun li jilagħbu dan il-klipp qasir li huma jużaw biex tease folks 257 00:12:08,900 --> 00:12:10,500 li aħna issa qed jgħixu fil-futur. 258 00:12:10,500 --> 00:12:13,494 259 00:12:13,494 --> 00:12:15,490 >> [Daqq ta mużika] 260 00:12:15,490 --> 00:13:33,410 261 00:13:33,410 --> 00:13:37,109 >> DAVID Malan: Allura fi ftit ftit ġimgħat, inti wisq tista 'tkun li jibred fil-CS50 ġust. 262 00:13:37,109 --> 00:13:39,150 Mezz ieħor li aħna jkollhom mazz ta 'li aħna qed 263 00:13:39,150 --> 00:13:42,090 kuntenti li self għall-proġetti tissejjaħ kontrollur mozzjoni. 264 00:13:42,090 --> 00:13:45,030 Dan huwa mezz USB ftit inti tqabbad ma 'kompjuter li 265 00:13:45,030 --> 00:13:47,520 jippermettilek li jinteraġixxu ma ' laptop tiegħek, Mac jew PC, 266 00:13:47,520 --> 00:13:51,570 bħallikieku kellek qisni Kinect Xbox u fil-fatt jagħmlu mozzjonijiet fiżiċi ħafna 267 00:13:51,570 --> 00:13:54,509 bħal naraw f'dan viżjoni tal-futur. 268 00:13:54,509 --> 00:13:56,505 >> [Daqq ta mużika] 269 00:13:56,505 --> 00:15:03,380 270 00:15:03,380 --> 00:15:06,260 >> DAVID Malan: Hekk anke jekk għandek ebda idea kif xi ħaġa bħal dik 271 00:15:06,260 --> 00:15:10,050 possibilment jistgħu jiġu ivvintati jew xogħol fuq livell hardware, irrelevanti. 272 00:15:10,050 --> 00:15:13,520 Anke wara biss ftit xhur ta 'CS50, u konoxxenza ta 'l-ipprogrammar 273 00:15:13,520 --> 00:15:19,460 b'mod aktar ġenerali, u l-programmazzjoni web aktar reċentement, u allura wkoll APIs, u HTTP, 274 00:15:19,460 --> 00:15:21,830 inti ser ikollok aċċess permezz APIs softwer jekk inti 275 00:15:21,830 --> 00:15:24,680 do jridu tissellef waħda minn dawn mezzi biex effettivament jitkellmu miegħu 276 00:15:24,680 --> 00:15:27,180 u ma għandekx għalfejn tinkwieta dwar l-implimentazzjoni sottostanti 277 00:15:27,180 --> 00:15:30,220 dettalji, li hija kompletament konsistenti ma 'dan il-kunċett ta' saffi 278 00:15:30,220 --> 00:15:33,610 astrazzjoni li konna jintlemħu madwar il-semestru. 279 00:15:33,610 --> 00:15:37,990 >> Hekk ukoll matul il-weekend, raw biċċiet koppja ta 'aħbarijiet. 280 00:15:37,990 --> 00:15:40,640 Mur ewwel, mur seminars jekk inti tixtieq titgħallem xi ħaġa 281 00:15:40,640 --> 00:15:42,160 aktar fuq kull numru ta 'suġġetti. 282 00:15:42,160 --> 00:15:43,340 Ara l-URL hemmhekk. 283 00:15:43,340 --> 00:15:45,890 U dan wieħed kien mibgħut lill lili mill Chang, li tafu, 284 00:15:45,890 --> 00:15:47,850 Min hu istampar armata tagħna ta 'iljunfanti. 285 00:15:47,850 --> 00:15:49,910 U kien headline kif ġej. 286 00:15:49,910 --> 00:15:51,280 Jien terrified tat-TV ġdida tiegħi. 287 00:15:51,280 --> 00:15:54,301 Għaliex jien jibżgħu li jibdlu din ħaġa fuq u youd tkun wisq. 288 00:15:54,301 --> 00:15:56,050 Allura aħna qed issa fil- punt fil-semestru, 289 00:15:56,050 --> 00:15:58,860 wisq, fejn anke jekk ikollok l-iċken ta 'fehim 290 00:15:58,860 --> 00:16:02,620 ta 'kif il-web jaħdem, u HTTP, u s-sigurtà, affarijiet bħal dan 291 00:16:02,620 --> 00:16:03,980 għandhom jibdew jaqbdu l-għajnejn tiegħek. 292 00:16:03,980 --> 00:16:07,450 Iżda wkoll, inti ser tifhem jekk dawn l-affarijiet huma jew mhumiex 293 00:16:07,450 --> 00:16:08,430 theddid attwali. 294 00:16:08,430 --> 00:16:10,940 >> So I ħa siltiet ftit minn dan l-artikolu hawn. 295 00:16:10,940 --> 00:16:12,540 U l-istorja hija kif ġej. 296 00:16:12,540 --> 00:16:14,300 Jien issa s-sid ta ' TV intelliġenti ġdida, li 297 00:16:14,300 --> 00:16:18,470 iwiegħed li jagħti streaming kontenut multimedjatiku, logħob, app, 298 00:16:18,470 --> 00:16:21,450 soċjali media, u l-internet browsing, oh u TV wisq. 299 00:16:21,450 --> 00:16:24,410 L-unika problema hija li jien issa jibżgħu li jużawh, jgħid l-awtur. 300 00:16:24,410 --> 00:16:29,592 Inti tkun, wisq, jekk inti taqra permezz il-politika tal-privatezza 46 paġna għat-TV tiegħek. 301 00:16:29,592 --> 00:16:31,800 L-ammont ta 'data dan tiġbor ħaġa huwa xokkanti. 302 00:16:31,800 --> 00:16:35,710 Hija zkuk fejn, meta, kif, u għal kemm żmien inti tuża l-TV. 303 00:16:35,710 --> 00:16:38,190 Hija tistabbilixxi tracking cookies, kif konna diskussi, 304 00:16:38,190 --> 00:16:40,560 u beacons mfassla biex tiskopri meta jkollok 305 00:16:40,560 --> 00:16:43,185 kontenut partikolari meqjusa jew messaġġ email partikolari 306 00:16:43,185 --> 00:16:45,230 jekk inti tixtieq li jiċċekkjaw email fuq it-TV tiegħek. 307 00:16:45,230 --> 00:16:48,430 Dan ir-rekords l-apps inti użu, il-websajts li żżur, 308 00:16:48,430 --> 00:16:52,280 u kif inti jinteraġixxu ma 'kontenut, tagħmel kollha ta 'dak permezz tat-TV intelliġenti tiegħek. 309 00:16:52,280 --> 00:16:55,470 Hija wkoll, yet-- creepier li l-addition-- tiegħi 310 00:16:55,470 --> 00:16:58,140 tkun mibnija in camera bil rikonoxximent tal-wiċċ. 311 00:16:58,140 --> 00:17:01,010 >> L-iskop huwa li jipprovdi kontroll ġest għall-TV 312 00:17:01,010 --> 00:17:05,490 u jgħinuk biex log fil- personalizzata kont jużaw wiċċ tiegħek. 313 00:17:05,490 --> 00:17:08,940 Fuq il-rasu, l-immaġini huma ffrankati fuq it-TV minflok uploaded 314 00:17:08,940 --> 00:17:09,940 ma 'server korporattiva. 315 00:17:09,940 --> 00:17:12,520 Fuq in-naħa negattiva, l-internet konnessjoni jagħmel l-TV kollu 316 00:17:12,520 --> 00:17:14,811 vulnerabbli għall-hackers li urew il-ħila 317 00:17:14,811 --> 00:17:16,700 jieħdu l-kontroll sħiħ tal-magna. 318 00:17:16,700 --> 00:17:20,880 >> Aktar inkwetanti, kif jekk dan ma kienx intelliġenti biżżejjed, huwa l-mikrofonu. 319 00:17:20,880 --> 00:17:23,599 Il-TV tiftaħar vuċi rikonoxximent karatteristika 320 00:17:23,599 --> 00:17:26,859 li tippermetti lit-telespettaturi sabiex jikkontrollaw l-iskrin bl vuċi jikkmanda. 321 00:17:26,859 --> 00:17:30,290 Iżda s-servizz jiġi ma twissija pjuttost ominous. 322 00:17:30,290 --> 00:17:33,030 Jekk jogħġbok ikunu konxji li jekk kliem mitkellma tiegħek jinkludu 323 00:17:33,030 --> 00:17:36,210 personali jew sensittiva oħra informazzjoni, dik l-informazzjoni 324 00:17:36,210 --> 00:17:40,310 se jkunu fost l-informazzjoni maqbudin u trasmessa lil parti terza. 325 00:17:40,310 --> 00:17:40,870 Ghandek li? 326 00:17:40,870 --> 00:17:45,860 Ma jgħidux personali jew sensittivi Jittieħed quddiem TV tiegħek. 327 00:17:45,860 --> 00:17:47,280 >> Allura dan huwa attwalment għall reali. 328 00:17:47,280 --> 00:17:50,530 U huwa diffiċli li ma tara jekk inti mur Best Buy jew bħalhom għall televiżjonijiet 329 00:17:50,530 --> 00:17:51,030 dawn il-jiem. 330 00:17:51,030 --> 00:17:52,540 Huma qed kollha intelliġenti b'xi mod. 331 00:17:52,540 --> 00:17:54,740 U dawn qed jkollna aktar intelliġenti u creepier. 332 00:17:54,740 --> 00:17:57,490 U dawn qed sempliċement ġbir ta 'data b'modi li aħna ve tkellem dwar 333 00:17:57,490 --> 00:18:01,840 u mbagħad uploading dan permezz HTTP jew xi protokoll ieħor għal xi server. 334 00:18:01,840 --> 00:18:05,720 >> Allura dan kien ta 'artikolu gost f'din il-website online 335 00:18:05,720 --> 00:18:08,940 hawn, li tkellem dwar bug partikolari jew kodiċi żbaljata 336 00:18:08,940 --> 00:18:11,340 li nistgħu attwalment torbot fid-diskussjoni ġimgħa li għaddiet. 337 00:18:11,340 --> 00:18:15,730 Allura dan headline kien isegwi, l-istorja tmur hawn, 338 00:18:15,730 --> 00:18:18,720 Josh Breckman ħadem għal kumpanija li żbarkati kuntratt 339 00:18:18,720 --> 00:18:22,390 biex tiżviluppa ġestjoni tal-kontenut sistema, jew CMS kif dawn qed jissejjaħ, 340 00:18:22,390 --> 00:18:24,380 għal websajt pjuttost kbir gvern. 341 00:18:24,380 --> 00:18:27,300 Ħafna mill-proġett involva iżvilupp ta 'sistema ta' ġestjoni kontenut 342 00:18:27,300 --> 00:18:29,840 sabiex l-impjegati jkunu kapaċi li jibnu u jżommu 343 00:18:29,840 --> 00:18:31,877 l-dejjem jinbidlu kontenut għall-sit tagħhom. 344 00:18:31,877 --> 00:18:34,210 L-affarijiet marru pretty ukoll għall ftit jiem wara jmorru jgħixu. 345 00:18:34,210 --> 00:18:37,020 Imma fuq sitt jum, l-affarijiet marru mhux hekk tajjeb. 346 00:18:37,020 --> 00:18:39,500 Kollha tal-kontenut fuq l- website kienu kompletament spiċċat. 347 00:18:39,500 --> 00:18:42,950 U l-paġni kollha wasslu għall-inadempjenza, jekk jogħġbok niżżel il-paġna web kontenut. 348 00:18:42,950 --> 00:18:43,810 Whoops. 349 00:18:43,810 --> 00:18:46,080 Josh kien msejħa sabiex jinvestigaw u ndunat 350 00:18:46,080 --> 00:18:49,390 li wieħed partikolarment idejquk esterna indirizz IP kellha 351 00:18:49,390 --> 00:18:53,380 marret fi u mħassra kollha ta ' il-kontenut fuq is-sistema. 352 00:18:53,380 --> 00:18:56,290 >> L-indirizz IP ma kienx jappartjeni għal xi barranin Hacker bent 353 00:18:56,290 --> 00:18:58,340 li jkissru utli informazzjoni tal-gvern. 354 00:18:58,340 --> 00:19:05,190 Hija solvuti li googlebot.com, Stess web crawling spider Google. 355 00:19:05,190 --> 00:19:06,010 Whoops. 356 00:19:06,010 --> 00:19:09,150 Wara daqsxejn ta 'riċerka u scrambling madwar biex isibu backup noncorrupt, 357 00:19:09,150 --> 00:19:10,180 Josh sabet il-problema. 358 00:19:10,180 --> 00:19:12,700 >> A utent kien kkupjati u pasted xi kontenut minn wieħed 359 00:19:12,700 --> 00:19:15,670 paġna għall-ieħor, inkluż l Hyperlink Edit 360 00:19:15,670 --> 00:19:17,577 li jeditjaw il-kontenut fuq il-paġna. 361 00:19:17,577 --> 00:19:20,160 Normalment dan ma jkunx ta ' kwistjoni peress li l-utent barra kieku 362 00:19:20,160 --> 00:19:24,320 bżonn li jidħol isem u password, iżda s-sistema ta 'awtentikazzjoni CMS, 363 00:19:24,320 --> 00:19:27,520 is-sistema login, ma ħaditx in kunsiderazzjoni 364 00:19:27,520 --> 00:19:30,980 hacking sofistikati tekniki ta 'Google Spider. 365 00:19:30,980 --> 00:19:31,700 Whoops. 366 00:19:31,700 --> 00:19:33,610 >> Kif jirriżulta, Google Spider ma jużax 367 00:19:33,610 --> 00:19:36,950 cookies, li jfisser li tista ' faċilment bypass kontroll għall- 368 00:19:36,950 --> 00:19:39,840 huwa logged fuq cookie sett li jkun falz. 369 00:19:39,840 --> 00:19:42,620 Hija wkoll ma tingħata attenzjoni għall JavaScript, li normalment 370 00:19:42,620 --> 00:19:45,170 pront u jagħtu direzzjoni ġdida lill-utenti li mhumiex illoggjat. 371 00:19:45,170 --> 00:19:48,610 Madankollu, hija ssegwi kull hyperlink fuq kull paġna isib, 372 00:19:48,610 --> 00:19:51,700 inklużi dawk Ħassar Page fit-titolu. 373 00:19:51,700 --> 00:19:52,650 Whoops. 374 00:19:52,650 --> 00:19:56,070 >> Allura dak li jfisser dan f'aktar termini tekniċi iżda pjuttost aċċessibbli? 375 00:19:56,070 --> 00:19:58,340 Dan ifisser biss li matul website tagħhom, 376 00:19:58,340 --> 00:20:02,287 huma kellhom URLs ma b'differenza dan wieħed li inti tista 'tara fil-problema sett sebgħa. 377 00:20:02,287 --> 00:20:04,620 Recall fl problema stabbiliti seba jew jafu fi problema stabbiliti seba 378 00:20:04,620 --> 00:20:06,411 li int ikkontestata, fost affarijiet oħra, 379 00:20:06,411 --> 00:20:08,570 ibigħu l-istokk għan-nom ta 'l-utenti. 380 00:20:08,570 --> 00:20:14,010 Iżda li timplimenta dik il-karatteristika permezz tal jiksbu permezz hyperlinks fil-utent tiegħek 381 00:20:14,010 --> 00:20:16,880 interface, probabbilment mhux l-idea smartest 382 00:20:16,880 --> 00:20:20,300 għaliex jekk is-sit tiegħek huwa b'xi mod aċċessibbli jew permezz ta 'bniedem 383 00:20:20,300 --> 00:20:23,577 Min hu tikklikkja madwar jew jixtru bot bħall-Google jew Spider 384 00:20:23,577 --> 00:20:26,160 kif dawn qed jissejjaħ li jinsab biss crawling il-web jippruvaw indiċi 385 00:20:26,160 --> 00:20:29,060 il-web bħala search engine, huma setgħu faċilment 386 00:20:29,060 --> 00:20:31,340 hit permezz jiksbu dan it-tip ta 'URL. 387 00:20:31,340 --> 00:20:33,770 U li funzjonalment ekwivalenti għal, f'dan il-każ, 388 00:20:33,770 --> 00:20:37,000 bejgħ ta 'ishma kollha ta' Google. 389 00:20:37,000 --> 00:20:40,030 >> Issa franchement, huwa kompletament asinine li l-CMS 390 00:20:40,030 --> 00:20:43,240 JavaScript użati u l-cookies biex timplimenta sistema login tagħha 391 00:20:43,240 --> 00:20:47,100 u ma nagħmilx dak server sekondarji, kif inti guys tagħmel u se fl PSet 7-- 392 00:20:47,100 --> 00:20:49,940 hemm login.php file-- dejjem, dejjem, 393 00:20:49,940 --> 00:20:52,789 dejjem sigurtà għandhom ikunu isir fuq in-naħa server, 394 00:20:52,789 --> 00:20:56,080 mhux fuq il-naħa tal-klijent għaliex, kif dan artikolu jissuġġerixxi u inti tista yourself 395 00:20:56,080 --> 00:20:59,600 tara f'xi punt, huwa trivjali għal utent, tajjeb jew ħażin, 396 00:20:59,600 --> 00:21:02,860 għal ftit itfi JavaScript biex ma nsemmux cookies. 397 00:21:02,860 --> 00:21:06,020 B'tali mod li huwa WTF kuljum tiegħek. 398 00:21:06,020 --> 00:21:07,970 >> Hemm wieħed aktar, li huwa biss tip ta 'scary, 399 00:21:07,970 --> 00:21:11,360 so I ser jsemmuha jekk biss bħala lezzjoni ħajja. 400 00:21:11,360 --> 00:21:14,850 Kull meta inti tuża applikazzjoni imsejħa bħall Snapchat jew bħalhom 401 00:21:14,850 --> 00:21:19,380 li tgħid dawn ir-ritratti biss għall-aħħar ħames sekondi, għaxar sekondi, jew whatnot. 402 00:21:19,380 --> 00:21:21,680 Huma qed effimeru Dan huwa assolutament mhux il-każ. 403 00:21:21,680 --> 00:21:25,670 Bħal ma hemm ebda mod, diġitalment, biex timplimenta xi forma ta 'video, 404 00:21:25,670 --> 00:21:30,150 jew immaġni, jew testwali qsim bħal li riċevitur fuq l-oħra 405 00:21:30,150 --> 00:21:31,660 ma tista 'b'xi mod jiffrankaw l-informazzjoni. 406 00:21:31,660 --> 00:21:34,300 >> Bl-aktar mod naive, xi ħadd tista 'tieħu telefon tagħhom. 407 00:21:34,300 --> 00:21:36,850 U dawn ikollhom 10 tieni tieqa filwaqt li tħares lejn xi snap 408 00:21:36,850 --> 00:21:39,410 ħu xi telefon oħra u r-ritratt huwa, ovvjament. 409 00:21:39,410 --> 00:21:41,660 Allura inti tista 'tħares xi ħaġa diġitalment li mod. 410 00:21:41,660 --> 00:21:44,620 Xi wħud minnkom jafu kif jieħdu screenshots fuq il-mobile tiegħek. 411 00:21:44,620 --> 00:21:49,290 Fil-fatt, jekk inti ma taf dan, jirrealizzaw li mill-inqas Snapchat, 412 00:21:49,290 --> 00:21:51,040 u naħseb oħra applikazzjonijiet f'dawn il-jiem, 413 00:21:51,040 --> 00:21:53,720 inqas jgħidlek jekk il- benefiċjarju effettivament 414 00:21:53,720 --> 00:21:55,310 ħadet screenshot ta 'immaġini tiegħek. 415 00:21:55,310 --> 00:22:00,870 >> Iżda agħar għadu, din kienet l-snappening, bħala xi ħadd maħluqa reċentement, 416 00:22:00,870 --> 00:22:04,680 fejn xi 100,000 snaps kienu meħlusa 417 00:22:04,680 --> 00:22:09,310 fil dak li sejjaħ fajl torrent fuq diversi websites finalment. 418 00:22:09,310 --> 00:22:12,000 U dawn jinsabu mazz sħiħ ta 'messaġġi privati ​​u postijiet. 419 00:22:12,000 --> 00:22:15,210 Jirriżulta ħafna minnhom beninni, hekk mhux dak li int tista 'tistenna. 420 00:22:15,210 --> 00:22:17,580 Iżda għaliex in-nies kellhom użat website parti terza, 421 00:22:17,580 --> 00:22:20,270 logging ma Snapchat tagħhom username u password u mbagħad 422 00:22:20,270 --> 00:22:23,470 iffrankar kollha ta 'snaps tagħhom fuq din il-websajt parti terza. 423 00:22:23,470 --> 00:22:26,130 U kien dik il-parti terza websajt li kien Hacked, 424 00:22:26,130 --> 00:22:30,710 li ftit fisser xi ħadd dehret kif biex tikseb kollha 100,000 plus ta dawk l-immaġini 425 00:22:30,710 --> 00:22:33,822 fis hard drive tagħhom stess għall-qsim sussegwenti. 426 00:22:33,822 --> 00:22:36,030 Franchement, hawnhekk ukoll, huwa sort ta asinine li Snapchat 427 00:22:36,030 --> 00:22:39,360 huwa implimentat b'tali mod li parti terza tista sort ta jinterċettaw 428 00:22:39,360 --> 00:22:43,310 id-data u li mhuwiex marbut ma tiegħek applikazzjoni stess running fuq it-telefon. 429 00:22:43,310 --> 00:22:46,947 Iżda hawnhekk, wisq, tirrealizza li dawn affarijiet m'għandhomx qabda inti mill sorpriża, 430 00:22:46,947 --> 00:22:49,030 jew għall-inqas hemm għandu jkun lezzjoni ħajja fil hawn. 431 00:22:49,030 --> 00:22:52,220 Jekk inti tixtieq l-tekniku dettalji, tmur f'dak URL hemmhekk 432 00:22:52,220 --> 00:22:53,570 li fil slides lum. 433 00:22:53,570 --> 00:23:00,960 Kull dritt, xi mistoqsijiet dwar lum lezzjonijiet tal-ħajja fil-CS? 434 00:23:00,960 --> 00:23:02,710 Dawran li off. 435 00:23:02,710 --> 00:23:04,970 Xejn affattu? 436 00:23:04,970 --> 00:23:06,301 Xejn affattu? 437 00:23:06,301 --> 00:23:09,050 Stajt qbilna ħafna ta 'nies verifika Snapchat tagħhom jew xi ħaġa issa. 438 00:23:09,050 --> 00:23:11,690 >> Kull dritt, hekk SQL, Strutturat Mistoqsija Lingwa. 439 00:23:11,690 --> 00:23:12,509 Ejja wrap dan. 440 00:23:12,509 --> 00:23:14,300 U wkoll, anki jekk aħna qed biss grif 441 00:23:14,300 --> 00:23:16,310 il-wiċċ ta 'din lingwa, aħna ser jagħtuk 442 00:23:16,310 --> 00:23:18,930 biżżejjed tal-lingwa fil-forma ta PSet 7 443 00:23:18,930 --> 00:23:22,140 sabiex inti tista 'tindirizza xi funzjonalità pjuttost komuni. 444 00:23:22,140 --> 00:23:24,912 Iżda tirrealizza hemm koppja affarijiet aħna ma jeħtieġu minnkom, 445 00:23:24,912 --> 00:23:27,120 iżda dawn qed tmur biex tkun importanti come proġetti finali 446 00:23:27,120 --> 00:23:30,760 u ċertament ħafna jagħmlu attwali websajts ma 'utenti attwali 447 00:23:30,760 --> 00:23:32,040 hija din id-deċiżjoni tad-disinn. 448 00:23:32,040 --> 00:23:34,460 >> Jirriżulta li fil database MySQL, inti 449 00:23:34,460 --> 00:23:37,460 jkollhom għenieqed ta 'għażliet bħal tip ta 'data għall-kolonni tiegħek 450 00:23:37,460 --> 00:23:41,670 u affarijiet oħra, imma inti ukoll għandek l-għażla ta 'l-hekk imsejħa ħażna 451 00:23:41,670 --> 00:23:44,570 magna għall kollha tad-data tiegħek, t-tip tal-fajl sistema, 452 00:23:44,570 --> 00:23:46,700 jekk int familjari, għal kulħadd tad-data tiegħek. 453 00:23:46,700 --> 00:23:48,830 Dak il-format huwa finalment maħżun fil? 454 00:23:48,830 --> 00:23:53,300 U l-aktar komuni, forsi, kien MyISAM u InnoDB, termini tekniċi 455 00:23:53,300 --> 00:23:56,060 li aħna ser jimpurtahom biss sal-punt li wieħed għandu 456 00:23:56,060 --> 00:23:58,500 u wieħed ma jkollux il-karatteristika li ġejja. 457 00:23:58,500 --> 00:24:00,390 >> Ejja ngħidu li inti għandek fridge dorm ftit. 458 00:24:00,390 --> 00:24:03,030 U jissoponi li inti u tiegħek roommate, li jaqsmu din fridge, 459 00:24:03,030 --> 00:24:04,682 huma verament fond ta 'ħalib say. 460 00:24:04,682 --> 00:24:07,140 U dan huwa, fil-fatt, kif il- istorja kien qal lili mod lura 461 00:24:07,140 --> 00:24:10,890 fil-ġurnata meta I ħa kors imsejħa CS 161 Operating Systems, li 462 00:24:10,890 --> 00:24:12,580 Bl-istess mod jesplora dan is-suġġett. 463 00:24:12,580 --> 00:24:13,760 Allura inti ħadthom ltqajna dan fridge. 464 00:24:13,760 --> 00:24:14,630 Int minn ħalib. 465 00:24:14,630 --> 00:24:17,000 U inti come home, tal roommate tiegħek għadu fi klassi jew kwalunkwe, 466 00:24:17,000 --> 00:24:19,208 u inti tiddeċiedi jien ser go out u nikseb xi ħalib. 467 00:24:19,208 --> 00:24:22,630 Allura inti qrib il-fridge, lockup il-kamra dorm, mur fl-triq 468 00:24:22,630 --> 00:24:25,330 li CVS jew fejn, u jiksbu fil-linja li jixtru xi ħalib. 469 00:24:25,330 --> 00:24:28,960 >> Sadanittant, roommate tiegħek gets dar mill-klassi, jidħol fil-kamra dorm, 470 00:24:28,960 --> 00:24:31,802 jiftaħ il-fridge, jirrealizza wkoll ooph, aħna qed barra ta 'ħalib. 471 00:24:31,802 --> 00:24:33,760 Hekk hu jew hi jagħlaq il- fridge u mbagħad jiġri 472 00:24:33,760 --> 00:24:35,610 biex tmur fil-CVS oħra, li jiġri li jkun 473 00:24:35,610 --> 00:24:38,470 blokka waħda bogħod mill-CVS oħra fil-pjazza, u gets fil-linja 474 00:24:38,470 --> 00:24:40,230 hemm biex nikseb xi ħalib. 475 00:24:40,230 --> 00:24:42,524 Issa, naturalment, ftit minuti aktar tard, inti kemm nikseb lura, 476 00:24:42,524 --> 00:24:44,690 u l-agħar ta 'kollha possibbli riżultati ġara. 477 00:24:44,690 --> 00:24:45,792 Tnejn inti għandek ħalib. 478 00:24:45,792 --> 00:24:47,500 U inti ma verament bħall-ħalib li ħafna. 479 00:24:47,500 --> 00:24:49,625 Allura wieħed minnhom huwa biss ser qarsa f'xi punt. 480 00:24:49,625 --> 00:24:55,941 Allura issa għandek ammont eċċessiv tal-ħalib fil-friġġ kollha minħabba għaliex? 481 00:24:55,941 --> 00:24:57,072 >> [Inaudible] 482 00:24:57,072 --> 00:24:59,780 DAVID Malan: Yeah, inti ma b'xi jikkomunikaw ma 'xulxin 483 00:24:59,780 --> 00:25:00,904 li inti kienu jkollna ħalib. 484 00:25:00,904 --> 00:25:04,320 Hekk fil-aktar sempliċi ta ' modi fid-dinja tal-bniedem, 485 00:25:04,320 --> 00:25:08,390 kif jista 'inti tevita dan iblah xenarju mill jiġri bħal 486 00:25:08,390 --> 00:25:09,750 li inti biss tispiċċa bil wieħed. 487 00:25:09,750 --> 00:25:10,840 Test minnhom, iva tajba. 488 00:25:10,840 --> 00:25:12,877 Imma kif inkella? 489 00:25:12,877 --> 00:25:13,460 Post-jinnota. 490 00:25:13,460 --> 00:25:14,626 DAVID Malan: A nota Post-it. 491 00:25:14,626 --> 00:25:17,150 Kwalunkwe forma ta 'komunikazzjoni li tg roommate tiegħek 492 00:25:17,150 --> 00:25:18,670 ma jmorrux fil-friġġ għal ħalib. 493 00:25:18,670 --> 00:25:20,440 Jien se jmorru jerġgħu fuq tiegħi stess. 494 00:25:20,440 --> 00:25:22,770 Allura inti b'xi bżonn biex jissakkar din ir-riżorsa. 495 00:25:22,770 --> 00:25:27,180 Allura nistgħu nagħmlu this-- nistgħu tip ta ' rovina l-istorja u jduru fis storja CS 496 00:25:27,180 --> 00:25:30,360 li biha think ta 'dan bħala biss bħal varjabbli, li huwa ħażna xi valur. 497 00:25:30,360 --> 00:25:32,570 U d-dritt issa, il- valur tal-ħalib huwa żero, 498 00:25:32,570 --> 00:25:35,410 li ma tridu tiegħek roommate li jispezzjonaw dak il-varjabbli 499 00:25:35,410 --> 00:25:38,730 u mbagħad jagħmlu deċiżjoni lilu jew lilha nfisha bbażata fuq l-istat ta 'dak il-varjabbli 500 00:25:38,730 --> 00:25:42,430 jekk int fil-proċess ta ' jinbidlu l-istat ta 'dik varjabbli. 501 00:25:42,430 --> 00:25:46,140 >> Allura wieħed mill-linji ta 'SQL li aħna jtik fil PSet 7 ispeċifikazzjoni 502 00:25:46,140 --> 00:25:47,310 huwa dan wieħed hawn. 503 00:25:47,310 --> 00:25:49,740 U aħna ma jonfqu enormi ammont ta 'żmien jitkellem dwar dan. 504 00:25:49,740 --> 00:25:55,100 Iżda jirriżulta, jekk inti qed tipprova li jixtru xi stokk fil-finanzi CS50 505 00:25:55,100 --> 00:25:58,000 li diġà għandek xi ishma ta ', inti 506 00:25:58,000 --> 00:26:01,750 tixtieq li tkun tista 'tagħmel numru ta 'affarijiet istantanjament flimkien. 507 00:26:01,750 --> 00:26:04,360 Inti tixtieq li tkun tista ' effettivament, fuq livell għoli, 508 00:26:04,360 --> 00:26:06,700 check-dritt, jekk irrid li jixtru aktar ishma tal Ħieles, 509 00:26:06,700 --> 00:26:08,780 l-istokk Penny we jitkellmu dwar fil-spec, 510 00:26:08,780 --> 00:26:10,660 Irrid li l-ewwel verifika kemm ishma għandi. 511 00:26:10,660 --> 00:26:11,810 U jissoponi huwa ħamsa. 512 00:26:11,810 --> 00:26:14,600 U jissoponi Irrid li jixtru 10 aktar, I finalment 513 00:26:14,600 --> 00:26:17,069 jridu li jkollhom 15-ishma ta 'stock. 514 00:26:17,069 --> 00:26:18,360 So I għandhom jistaqsu żewġ mistoqsijiet. 515 00:26:18,360 --> 00:26:20,230 X'inhu l-istat tal-varjabbli? 516 00:26:20,230 --> 00:26:21,470 X'inhu l-istat tar-ringiela? 517 00:26:21,470 --> 00:26:22,970 Kemm ishma do I bħalissa għandhom? 518 00:26:22,970 --> 00:26:24,636 Imbagħad inti tixtieq li tmur quddiem u taġġornah. 519 00:26:24,636 --> 00:26:27,720 Allura dak l-Analog għall- ħalib li inti tiċċekkja l-ringiela, 520 00:26:27,720 --> 00:26:30,730 u allura inti tixtieq li jaġġornah għaliex jekk inti tixtieq tixtri 10-ishma, 521 00:26:30,730 --> 00:26:32,521 inti ma tridx li jibdlu il-filliera sa 10, inti 522 00:26:32,521 --> 00:26:35,300 trid tibdel għal 5 flimkien ma '10 jew, naturalment, 15. 523 00:26:35,300 --> 00:26:40,030 >> Din il-linja tal-kodiċi jiżgura li dawn iż-żewġ ideat kunċettwali 524 00:26:40,030 --> 00:26:42,810 jiġri flimkien jew xejn affattu. 525 00:26:42,810 --> 00:26:46,920 Ebda wieħed, inkluż xi utent ieħor Min hu logged in l-istess websajt, 526 00:26:46,920 --> 00:26:49,900 tista 'b'xi mod jinterrompu il-verifika tar-ringiela 527 00:26:49,900 --> 00:26:52,960 u l-aġġornament tal-filliera, il- tagħżel u l-aġġornament jekk inti se. 528 00:26:52,960 --> 00:26:57,360 U l-sintassi mhix super ovvju, iżda din il-linja wieħed, twil huwa huwa, 529 00:26:57,360 --> 00:27:01,150 jiżgura li dawn iż-żewġ operazzjonijiet jivverifika l-varjabbli jew jiċċekkjaw il-filliera 530 00:27:01,150 --> 00:27:04,660 u taġġorna l-ringiela jiġri atomically. 531 00:27:04,660 --> 00:27:06,849 >> Oh here we go darb'oħra. 532 00:27:06,849 --> 00:27:07,890 Messaġġ ta 'test fuq il-mobile tiegħi. 533 00:27:07,890 --> 00:27:09,954 Mela ejja jagħmlu dan ftit aktar konkreta. 534 00:27:09,954 --> 00:27:12,120 Ejja ngħidu li int mhux implimentazzjoni friġġ, 535 00:27:12,120 --> 00:27:16,400 u int ma implimentattivi PSet 7 iżda bank attwali, 536 00:27:16,400 --> 00:27:20,000 jew ATM, l Teller Awtomatizzata Magna, li biha inti b'xi 537 00:27:20,000 --> 00:27:22,960 tixtieq li tkun tista 'tagħti s-setgħa utenti li jittrasferixxi flus 538 00:27:22,960 --> 00:27:24,500 minn kont għal ieħor. 539 00:27:24,500 --> 00:27:25,100 OK, hang fuq. 540 00:27:25,100 --> 00:27:26,683 Jien ser mute dan issa, grazie. 541 00:27:26,683 --> 00:27:30,450 Allura aħna tixtieq li jiċċaqalqu flus minn numru tal-kont wieħed 542 00:27:30,450 --> 00:27:33,600 f'kont differenti numru, speċifikament $ 100. 543 00:27:33,600 --> 00:27:37,690 Allura dan huwa tip ta 'arbitrarja eżempju, fejn inti, l-ATM, 544 00:27:37,690 --> 00:27:41,060 tista 'tixtieq li tesegwixxi tnejn SQL mistoqsijiet, naqqas minn kont wieħed, 545 00:27:41,060 --> 00:27:42,430 u żid għall-kont ieħor. 546 00:27:42,430 --> 00:27:46,766 Iżda inti tixtieq li tiżgura li dawn żewġ linji kemm jiġri jew xejn affattu. 547 00:27:46,766 --> 00:27:48,640 Inti ma tridx xi ħaġa jkollna interrott. 548 00:27:48,640 --> 00:27:51,440 Inti ma xi Guy ħażina intelliġenti b'xi wieqfa fil Bank of America 549 00:27:51,440 --> 00:27:53,270 b'żewġ ATMs quddiem minnu u b'xi mod 550 00:27:53,270 --> 00:27:55,270 tip ta 'ittajpjar fid- jikkmanda fl-istess ħin, 551 00:27:55,270 --> 00:28:01,230 nisperaw tipprova tnaqqas $ 200 minflok ta '$ 100 u li għandhom biss $ 100 kkreditat. 552 00:28:01,230 --> 00:28:04,450 Fil-qosor, inti tixtieq li dan jaġixxu eżattament kif inti tistenna. 553 00:28:04,450 --> 00:28:06,540 >> U l-mod inti tagħmel dan fil SQL database hija 554 00:28:06,540 --> 00:28:09,350 inti wrap fil x'hemm imsejħa tranżazzjoni. 555 00:28:09,350 --> 00:28:14,290 Litteralment fil SQL, inti tista 'sejħa tal CS50 funzjoni query ma kwotazzjoni bidu unquote 556 00:28:14,290 --> 00:28:15,370 transazzjoni. 557 00:28:15,370 --> 00:28:18,640 Allura inti tista 'tesegwixxi kull numru ta 'mistoqsijiet SQL sussegwenti, 558 00:28:18,640 --> 00:28:20,870 iżda ħadd minnhom jieħdu effett fuq id-database 559 00:28:20,870 --> 00:28:25,880 sakemm inti sejħa query unquote kwotazzjoni jimpenjaw, jekk darb'oħra bl-użu PHP. 560 00:28:25,880 --> 00:28:29,810 U b'dan il-mod, inti tista 'tiżgura li anke jekk ikollok 1,000 utenti kollha 561 00:28:29,810 --> 00:28:32,080 laqtu database tiegħek fl-istess ħin, SQL 562 00:28:32,080 --> 00:28:34,540 se wegħda li dawn żewġ mistoqsijiet se jkunu 563 00:28:34,540 --> 00:28:36,740 implimentat id-dritt wieħed wara l-ieħor. 564 00:28:36,740 --> 00:28:40,330 Sabiex inti ma tispiċċa bil eċċess ta ' ħalib jew l-ammont ħażin, finalment, 565 00:28:40,330 --> 00:28:40,830 ta 'flus. 566 00:28:40,830 --> 00:28:43,110 >> Allura jżomm dan f'moħħu, mhux tant għall PSet 7 567 00:28:43,110 --> 00:28:45,250 iżda għall-proġetti finali jekk int fil-fatt 568 00:28:45,250 --> 00:28:49,690 jippruvaw jimxu data madwar madwar tabelli kif inti tista hawn. 569 00:28:49,690 --> 00:28:53,980 Imma forsi saħansitra aktar sempliċi u aktar ovvju li wieħed jifhem bi eżempju 570 00:28:53,980 --> 00:28:54,860 huwa dan wieħed hawn. 571 00:28:54,860 --> 00:28:57,760 U xi ħadd emailed magħna dwar dan biss l-oħra jum 572 00:28:57,760 --> 00:28:59,600 meta raw xi ħaġa online simili. 573 00:28:59,600 --> 00:29:03,480 >> Allura għall-għarfien tiegħi, is-sistema pin mhuwiex vulnerabbli għal dan l-attakk. 574 00:29:03,480 --> 00:29:06,637 U għandi l-ebda idea jekk anki l-użi database SQL taħt il-barnuża. 575 00:29:06,637 --> 00:29:08,470 Imma ejja jużawh għal l-fini ta 'diskussjoni. 576 00:29:08,470 --> 00:29:10,178 Hawn l-iskrin li Folks Harvard tendenza 577 00:29:10,178 --> 00:29:13,620 biex tara meta logging mal tagħhom Numru Harvard ID u pin tagħhom. 578 00:29:13,620 --> 00:29:19,020 U jissoponi li s-sistema pin kienu implimentati fil-PHP u ma 'MySQL 579 00:29:19,020 --> 00:29:22,000 database, il-kodiċi li xi ħadd snin seta 'bil-miktub ilu 580 00:29:22,000 --> 00:29:23,270 tista 'tidher bħal dan. 581 00:29:23,270 --> 00:29:25,230 L-ewwel, tiddikjara imsejħa username varjabbli. 582 00:29:25,230 --> 00:29:27,560 U biss jiksbu dak minn l-superglobal POST. 583 00:29:27,560 --> 00:29:30,140 Imbagħad nikseb varjabbli ieħor imsejħa password u jagħmlu l-istess. 584 00:29:30,140 --> 00:29:33,080 U mbagħad biss tesegwixxi din il-mistoqsija twil hawn, 585 00:29:33,080 --> 00:29:36,690 star tagħżel minn utenti fejn username ugwali tali u tali 586 00:29:36,690 --> 00:29:38,510 u password ugwali tali u tali. 587 00:29:38,510 --> 00:29:40,660 >> Avviż li l-kaboċċi braces Stajt użat hawnhekk 588 00:29:40,660 --> 00:29:42,880 jfissirx biss li PHP, mur quddiem u sostitut 589 00:29:42,880 --> 00:29:45,400 il-valur ta 'dawk iż-żewġ varjabbli hemm dritt. 590 00:29:45,400 --> 00:29:50,090 Dawn mhux qed strettament meħtieġ, iżda dawn għandhom tendenza li jiġu evitati żbalji sintassi sottili. 591 00:29:50,090 --> 00:29:53,650 Allura dan jistenna kompletament korretta ewwel daqqa t'għajn. 592 00:29:53,650 --> 00:29:54,240 U huwa. 593 00:29:54,240 --> 00:29:56,680 Inti jista 'jimplimenta l- sistema pin b'dan il-mod. 594 00:29:56,680 --> 00:30:00,460 >> Iżda jissoponi li super student intelliġenti u malizzjuż 595 00:30:00,460 --> 00:30:03,020 input dan bħala pin tiegħu jew tagħha. 596 00:30:03,020 --> 00:30:05,550 Hekk stajt jitneħħew il-bullet sinjali hawn fil-mock up, 597 00:30:05,550 --> 00:30:08,760 u stajt attwalment żvelat dak li hu jew hi jista 'jkun ittajpjar. 598 00:30:08,760 --> 00:30:10,350 U huwa ftit stramba. 599 00:30:10,350 --> 00:30:13,850 Imma dak jumps fil inti fil potenzjalment tħassib dwar l-input tal-utent, 600 00:30:13,850 --> 00:30:16,450 anki jekk ma jkollok ebda idea liema attakk injezzjoni SQL mezzi. 601 00:30:16,450 --> 00:30:20,300 Għaliex ma dan tfittex ftit fishy? 602 00:30:20,300 --> 00:30:21,050 X'hemm li? 603 00:30:21,050 --> 00:30:21,550 [Inaudible] 604 00:30:21,550 --> 00:30:24,260 DAVID Malan: Il-jew huwa ftit suspettużi. 605 00:30:24,260 --> 00:30:26,310 Fil-fatt, li l-keyword minn SQL. 606 00:30:26,310 --> 00:30:28,105 Allura li ma bode ukoll. 607 00:30:28,105 --> 00:30:29,980 Il-fatt li hemm kollha dawn kwotazzjonijiet uniku 608 00:30:29,980 --> 00:30:32,646 there-- fil-fatt, wieħed mill-eħfef modi biex ikissru xi databases 609 00:30:32,646 --> 00:30:35,880 huwa billi jittajpja fl-isem bħal O'Reilly li għandha apostrophe fiha 610 00:30:35,880 --> 00:30:38,600 għaliex jekk il-bniedem li kiteb il-kodiċi wara l-kwinti 611 00:30:38,600 --> 00:30:41,570 ma tieħu in kunsiderazzjoni li hemm Jista 'jkun kwotazzjonijiet uniku fi l-utent 612 00:30:41,570 --> 00:30:45,060 input, u hu jew hi qed tuża kwotazzjonijiet uniku fil-kodiċi tagħhom, 613 00:30:45,060 --> 00:30:46,040 affarijiet ħżiena jista 'jiġri. 614 00:30:46,040 --> 00:30:47,870 >> Fil-fatt, agħar għadu, jikkunsidraw dan. 615 00:30:47,870 --> 00:30:50,600 Jekk dan kien għal darb'oħra l-kodiċi li xi ħadd fil snin Harvard 616 00:30:50,600 --> 00:30:53,100 ilu kiteb għall-pin sistema, avviż x'hemm 617 00:30:53,100 --> 00:30:56,220 waslu biex tikseb sostitwiti għall username u password 618 00:30:56,220 --> 00:30:59,780 jekk it-tipi tal-utenti mill-ġdid skroob bħala username tagħhom 619 00:30:59,780 --> 00:31:03,960 u mbagħad wieħed, tnejn, tlieta, erba ', ħames, kwotazzjoni jew kwotazzjoni unquote wieħed ugwali 620 00:31:03,960 --> 00:31:04,660 nikkwota wieħed. 621 00:31:04,660 --> 00:31:07,220 U avviż x'hemm ċavetta hawnhekk huwa l-utent ma jkunx 622 00:31:07,220 --> 00:31:09,900 beda password tagħhom jew pin tagħhom bil-kwotazzjoni. 623 00:31:09,900 --> 00:31:12,610 U dawn ma jkunux spiċċaw dan bil-kwotazzjoni għaliex hu jew hi 624 00:31:12,610 --> 00:31:16,315 huwa wieħed jassumi li jekk l- programmer ma kienx daqshekk qawwi, 625 00:31:16,315 --> 00:31:18,690 huma ser ikollhom dawk kwotazzjonijiet uniku fil-kodiċi tagħhom. 626 00:31:18,690 --> 00:31:19,860 >> Allura hawnhekk il-kodiċi. 627 00:31:19,860 --> 00:31:23,820 U s-sostituzzjoni li jista 'jiġri issa huwa dan. 628 00:31:23,820 --> 00:31:26,350 U stajt enfasizzat dak l-utent ikun ittajpjat fil. 629 00:31:26,350 --> 00:31:28,480 Allura qabel, wara. 630 00:31:28,480 --> 00:31:33,330 U avviż x'hemm kemmxejn tħassib issa dwar il-nofs tal-lemin ta 'dan il-kodiċi SQL? 631 00:31:33,330 --> 00:31:36,300 Huwa ftit aktar kumpless, ċertament, milli l-mistoqsijiet Rajna. 632 00:31:36,300 --> 00:31:38,550 Iżda dan ma tistax possibilment tkun ħaġa tajba jekk int 633 00:31:38,550 --> 00:31:42,240 qal star tagħżel, li hija tagħżel kollox mit-tabella tal-utent 634 00:31:42,240 --> 00:31:46,630 fejn username ugwali skroob u password ugwali wieħed, tnejn, tlieta, erba ', 635 00:31:46,630 --> 00:31:49,610 ħamsa jew wieħed ugwali wieħed. 636 00:31:49,610 --> 00:31:53,860 X'hemm l-implikazzjoni loġiku din l-aħħar klawsola preżumibbilment? 637 00:31:53,860 --> 00:31:55,650 Huwa biss dejjem veru. 638 00:31:55,650 --> 00:31:59,930 >> U għaliex għandna tip ta guessed jew dehret bi prova u żball 639 00:31:59,930 --> 00:32:02,760 li l-programmer li kiteb dan il-kodiċi ma 640 00:32:02,760 --> 00:32:07,250 tantiċipa persuna umana jew ħżiena ittajpjar fl kwotazzjonijiet uniku kif ukoll, 641 00:32:07,250 --> 00:32:10,350 nistgħu sintattiku tlesti l-query SQL 642 00:32:10,350 --> 00:32:12,260 ma 'xi ħaġa jagħmel ebda sens imma xi ħaġa li 643 00:32:12,260 --> 00:32:15,930 huwa sintattiku żbaljata li dejjem jevalwa l veru. 644 00:32:15,930 --> 00:32:19,130 Hekk jekk dan il-kodiċi qed tintuża biex twieġeb il-kwistjoni vera jew falza għandha 645 00:32:19,130 --> 00:32:22,930 dan l-utent titħalla tgħaddi, il- tweġiba hija dejjem apparentement għaddej 646 00:32:22,930 --> 00:32:26,930 biex ikunu vera għaliex dan huwa dejjem se biex tagħżel xi ħaġa mid-database 647 00:32:26,930 --> 00:32:29,280 għaliex wieħed mill-kors dejjem ugwali wieħed. 648 00:32:29,280 --> 00:32:30,360 >> Allura x'inhu l-soluzzjoni? 649 00:32:30,360 --> 00:32:33,290 Ukoll fil PSet 7, għandna attwalment tevita dan kollu flimkien. 650 00:32:33,290 --> 00:32:37,360 Aħna nagħtuk funzjoni mistoqsija, u aħna ninkoraġġukom biex tuża trade marks in kwistjoni 651 00:32:37,360 --> 00:32:40,430 bħala placeholders, simili fl-ispirtu li printf tal% s, 652 00:32:40,430 --> 00:32:43,710 imma dak ewlieni dwar il-trade marks in kwistjoni hawnhekk hija jekk inti fil-fatt taqra permezz 653 00:32:43,710 --> 00:32:46,950 functions.php, fejn tagħna funzjoni query tiġi implimentata, 654 00:32:46,950 --> 00:32:52,780 dawk trade marks in kwistjoni huma maħruba, li biha xejn potenzjalment perikolużi 655 00:32:52,780 --> 00:32:58,210 bħal kwotazzjoni waħda hija mixgħula fi kwotazzjoni waħda maħruba. 656 00:32:58,210 --> 00:33:00,590 >> Allura dan huwa dak i verament jiġri jekk inti 657 00:33:00,590 --> 00:33:04,850 jużaw funzjoni mistoqsija CS50 jew kwalunkwe numru tal-libreriji ħielsa parti terza li 658 00:33:04,850 --> 00:33:06,000 jagħmlu l-istess. 659 00:33:06,000 --> 00:33:09,850 Ma jimpurtax f'dan il-każ, fl-aħdar, jekk l-utent ikun ittajpjat fil-kwotazzjoni waħda 660 00:33:09,850 --> 00:33:12,070 minħabba li l-query funzjoni li aħna kiteb huwa 661 00:33:12,070 --> 00:33:15,120 ser iżżid backslashes qabel kwalunkwe kwotazzjoni perikolużi bħal din. 662 00:33:15,120 --> 00:33:17,360 Allura dan mhux, fil- fatt, se jkun leġittimu. 663 00:33:17,360 --> 00:33:20,910 Dan huwa simili ittajpjar fil crazy tfittex password li l-, naturalment, mhux se 664 00:33:20,910 --> 00:33:23,490 li jkun password attwali skroob taċ. 665 00:33:23,490 --> 00:33:28,260 >> Allura l-takeaway għal CS50 hija waħda, assolutament dejjem jużaw xi ħaġa 666 00:33:28,260 --> 00:33:30,860 bħall-funzjoni query CS50 ta jew il-librerija sottostanti, 667 00:33:30,860 --> 00:33:32,560 li jiġri li jiġu msejħa DPO. 668 00:33:32,560 --> 00:33:35,880 Imma qatt, qatt, qatt do kodiċi bħal dan 669 00:33:35,880 --> 00:33:39,472 mingħajr jaħrab jew iscrubbing kif jgħidu inputs tiegħek. 670 00:33:39,472 --> 00:33:42,430 U inti ser f'xi punt probabbilment jiltaqgħu xi websajt bħal dan. 671 00:33:42,430 --> 00:33:46,060 Fil-fatt, jidher li jkun il-każ bħal fl-ajruporti u lukandi fil-postijiet 672 00:33:46,060 --> 00:33:48,880 fejn ikollhom ħielsa Wi-Fi aċċess li inti għandek login għal, 673 00:33:48,880 --> 00:33:51,010 dawn il-websites huma dejjem implimentati horribly. 674 00:33:51,010 --> 00:33:55,680 U għalhekk tip ta 'gost fil dar eżerċizzju, mhux għal skopijiet malizzjużi jew aktar 675 00:33:55,680 --> 00:33:59,170 ta 'gost fuq it-triq eżerċizzju, huwa biss tip 676 00:33:59,170 --> 00:34:02,850 apostrophe, kwotazzjoni waħda, ġo formola fuq xi websajt 677 00:34:02,850 --> 00:34:03,810 u tara x'jiġri. 678 00:34:03,810 --> 00:34:06,660 U jekk il-server ġġarrfu jew jagħti inti xi tip ta 'messaġġ ta' żball, 679 00:34:06,660 --> 00:34:09,690 jista 'jkun tajjeb ħafna li xi ħadd ma antiċipat din. 680 00:34:09,690 --> 00:34:15,239 U allura inti għandek twissi lill-xierqa awtoritajiet u ma jkomplux. 681 00:34:15,239 --> 00:34:20,843 >> Allura issa inti guys għandhom nisperaw jifhmu ftit aktar geek Humer hawn. 682 00:34:20,843 --> 00:34:24,120 >> [Rires] 683 00:34:24,120 --> 00:34:27,571 684 00:34:27,571 --> 00:34:29,070 DAVID Malan: Inti taf int geek. 685 00:34:29,070 --> 00:34:30,944 Għall-diversi jmiss snin, int se tiftakar 686 00:34:30,944 --> 00:34:33,520 li Tabelli Bobby ftit huwa minħabba dan cartoons hawn. 687 00:34:33,520 --> 00:34:36,760 Sabiex iżommu dan f'moħħhom kif aħna kuntest swiċċ aħħar darba 688 00:34:36,760 --> 00:34:38,770 illum biex JavaScript. 689 00:34:38,770 --> 00:34:41,600 Imxejna jintefqu relattivament ftit ħin fuq il-sintassi ta 'PHP 690 00:34:41,600 --> 00:34:43,440 għaliex huwa attwalment simili super biex C. 691 00:34:43,440 --> 00:34:47,300 U nicely biżżejjed, JavaScript wisq huwa simili super biex sintassi C 692 00:34:47,300 --> 00:34:49,639 kif ukoll aħna ser tara fil ftit mument u kif aħna ser 693 00:34:49,639 --> 00:34:51,205 tara aktar tard din il-ġimgħa b'mod partikolari. 694 00:34:51,205 --> 00:34:54,080 X'tista 'tagħmel ma' din il-lingwa, għalkemm, hija aktar qawwija, 695 00:34:54,080 --> 00:34:55,790 speċjalment ma APIs. 696 00:34:55,790 --> 00:34:56,960 >> Imma l-ewwel tour malajr. 697 00:34:56,960 --> 00:35:00,450 Allura wieħed, fl JavaScript, hemm ebda funzjoni prinċipali, li huwa sabiħ. 698 00:35:00,450 --> 00:35:02,650 Bħal ma PHP, inti tista 'biss jiktbu kodiċi. 699 00:35:02,650 --> 00:35:04,310 Kundizzjonijiet teżamina bħal dan. 700 00:35:04,310 --> 00:35:07,100 U espressjonijiet Boolean jista teżamina bħal dan jew bħal dan. 701 00:35:07,100 --> 00:35:09,530 Jeżistu swiċċijiet, u dawn tista 'tidher bħal dan. 702 00:35:09,530 --> 00:35:10,970 Erba loops teżamina bħal dan. 703 00:35:10,970 --> 00:35:12,390 Filwaqt loops teżamina bħal dan. 704 00:35:12,390 --> 00:35:14,160 Do whiles teżamina bħal dan. 705 00:35:14,160 --> 00:35:16,850 U mbagħad arrays look like dan, simili ħafna għall PHP. 706 00:35:16,850 --> 00:35:20,740 Iżda avviż, li fil JavaScript inti tiddikjara varjabbli mhux bl-dollaru 707 00:35:20,740 --> 00:35:25,190 tiffirma, mhux ma 'tip data iżda litteralment billi qal var għal varjabbli quddiemha. 708 00:35:25,190 --> 00:35:27,900 Huwa wisq huwa laxk ittajpjat fis-sens li għandha t-tipi, 709 00:35:27,900 --> 00:35:29,729 imma inti ma jiddikjarawx b'mod espliċitu. 710 00:35:29,729 --> 00:35:31,520 U mbagħad string, għal eżempju, tista 'tidher 711 00:35:31,520 --> 00:35:34,350 bħal dan, dik string qed jissejjaħ i f'dan il-każ. 712 00:35:34,350 --> 00:35:35,410 U mbagħad oġġett. 713 00:35:35,410 --> 00:35:37,010 U dawn Ser naraw aktar qabel twil. 714 00:35:37,010 --> 00:35:41,470 U l-oġġett huwa forsi waħda mill- aktar komuni li dehru strutturi ta 'dejta 715 00:35:41,470 --> 00:35:44,050 fil-JavaScript bbażata programm minħabba li jippermetti 716 00:35:44,050 --> 00:35:46,680 inti tassoċja arbitrarja pari valur ewlenin biss 717 00:35:46,680 --> 00:35:51,240 bħal arrays assoċjattiva PHP u bħad-mejda tiegħek hash stess 718 00:35:51,240 --> 00:35:54,042 jew jippruvaw kif aħna implimentati ftit ġimgħat lura. 719 00:35:54,042 --> 00:35:56,250 Mela ejja attwalment tara liema nistgħu nagħmlu ma 'JavaScript. 720 00:35:56,250 --> 00:35:59,410 U b'mod partikolari, dan huwa lista tal-londri ta 'karatteristiċi 721 00:35:59,410 --> 00:36:02,300 li browsers jkollhom dik inessu ganċ JavaScript 722 00:36:02,300 --> 00:36:05,470 fi websajt fil-mod li ġej. 723 00:36:05,470 --> 00:36:09,340 JavaScript huwa spiss jintuża bħala naħa tal-klijent lingwa scripting. 724 00:36:09,340 --> 00:36:10,130 Mhuwiex ikkompilati. 725 00:36:10,130 --> 00:36:11,370 Wisq huwa interpretat. 726 00:36:11,370 --> 00:36:15,740 Iżda b'differenza PHP, li ilu għaddej fuq is-server, fil-web server, 727 00:36:15,740 --> 00:36:18,220 jew ġewwa fil-fond ta 'l- klijenti, JavaScript 728 00:36:18,220 --> 00:36:22,190 hija differenti minħabba li dan normalment runs fil-browser. 729 00:36:22,190 --> 00:36:26,060 >> Allura kwalunkwe kodiċi JavaScript inti tibda bil-miktub għall PSet 8, jew proġett finali tiegħek, 730 00:36:26,060 --> 00:36:29,890 jew fid-dinja reali huwa ġeneralment għaddej li jiġu salvati fuq is-server, assolutament 731 00:36:29,890 --> 00:36:33,110 fil-dot HTML jew dot JS għall JavaScript fajl. 732 00:36:33,110 --> 00:36:35,770 Iżda l-browser huwa għaddej li tniżżel dik JavaScript 733 00:36:35,770 --> 00:36:39,530 kodiċi li eżempju tiegħek stess ta 'Chrome, jew IE, Firefox jew, jew ikun x'ikun. 734 00:36:39,530 --> 00:36:43,870 U l-kodiċi huwa attwalment għaddejjin biex tikseb esegwiti ġewwa tal-browser tiegħek. 735 00:36:43,870 --> 00:36:46,560 Just biex tagħmel dan aktar reali, ejja ara dan forma konkreta. 736 00:36:46,560 --> 00:36:50,120 >> Aħna għandna ebda idea dak li dan il-kodiċi ma mingħajr ma verament qari permezz ta 'dan. 737 00:36:50,120 --> 00:36:52,670 Iżda let me go għal Facebook.com mingħajr qtugħ fl. 738 00:36:52,670 --> 00:37:00,440 Let me mur Spezzjona Element u mur, ejja ngħidu, Network u rikarigu-paġna. 739 00:37:00,440 --> 00:37:04,150 U aħna ser see-- let me ċċaqlaq Reload l Paġna biex jiksbu t-talbiet kollha għall-ġdid. 740 00:37:04,150 --> 00:37:08,850 U l-ewwel ħafna fajl nara hija CSS, CSS. 741 00:37:08,850 --> 00:37:10,880 Hawn l-ewwel JavaScript fajl, u għandi 742 00:37:10,880 --> 00:37:14,600 ebda idea liema dan ma, iżda hawnhekk huwa ftit mill-kodiċi JavaScript 743 00:37:14,600 --> 00:37:16,180 li drives Facebook. 744 00:37:16,180 --> 00:37:18,400 Mhuwiex anki verament li tiżvela li zoom. 745 00:37:18,400 --> 00:37:20,260 Huwa għadu daqstant jagħmel ebda sens. 746 00:37:20,260 --> 00:37:24,341 >> Imma inti taf tara anke stabbiliti hawn taħt, hemm saħansitra aktar ta 'dawn il-fajls JavaScript. 747 00:37:24,341 --> 00:37:24,840 Whoops. 748 00:37:24,840 --> 00:37:25,440 Li l-ping. 749 00:37:25,440 --> 00:37:28,550 Ejja jinżlu ftit ulterjuri, aktar, aktar. 750 00:37:28,550 --> 00:37:29,894 Hemm wieħed. 751 00:37:29,894 --> 00:37:31,238 Hemm wieħed. 752 00:37:31,238 --> 00:37:31,880 Hemm wieħed. 753 00:37:31,880 --> 00:37:35,820 >> Allura anke jekk Facebook, wara l- xeni, huwa miktub fil-parti fil-PHP 754 00:37:35,820 --> 00:37:39,100 u Facebook stess verżjoni tiegħu, hemm ammont kbir ta 'JavaScript. 755 00:37:39,100 --> 00:37:41,330 Fil-fatt, kwalunkwe mill- chatting inti tagħmel fuq Facebook, 756 00:37:41,330 --> 00:37:45,520 kwalunkwe mill-aġġornamenti kalendarju inline li jiġri fil-ħin reali, li kollha li 757 00:37:45,520 --> 00:37:47,944 huwa mmexxi mill JavaScript. 758 00:37:47,944 --> 00:37:48,444 Yeah? 759 00:37:48,444 --> 00:37:50,235 >> UDJENZA: M'inix ċert jekk dan huwa Facebook, 760 00:37:50,235 --> 00:37:53,624 imma ħsibt li Facebook żviluppati stess in-house kodiċi tal-lingwa tagħhom? 761 00:37:53,624 --> 00:37:54,540 DAVID Malan: Huma għamlu. 762 00:37:54,540 --> 00:37:58,110 Allura hu għalhekk li jien ngħid varjanza ta ' PHP imsejħa Hip Hop li huma attwalment 763 00:37:58,110 --> 00:38:03,440 karatteristiċi miżjuda lil tali li meta Mark ewwel implimentati Facebook, 764 00:38:03,440 --> 00:38:04,710 kien miktub fil-PHP. 765 00:38:04,710 --> 00:38:07,370 U dik it-tip ta 'baqgħet t-tip tal-lingwa tarf ta 'quddiem 766 00:38:07,370 --> 00:38:09,030 li huma jużaw għal ħafna tal kodifikazzjoni tagħhom, iżda 767 00:38:09,030 --> 00:38:11,870 ma kienx f'lingwa li l- skali partikolarment tajba biex biljuni 768 00:38:11,870 --> 00:38:12,630 ta 'nies. 769 00:38:12,630 --> 00:38:15,300 U hekk li jkunu miżjuda tagħhom stess titjib wara l-kwinti. 770 00:38:15,300 --> 00:38:17,049 U li jużaw kull numru ta 'lingwi oħra 771 00:38:17,049 --> 00:38:19,170 għal diversi biċċiet ta ' infrastruttura tagħhom. 772 00:38:19,170 --> 00:38:24,080 Allura iva, huwa varjanza ta ' dak li aħna issa jkunu jafu kif PHP. 773 00:38:24,080 --> 00:38:26,610 >> Mela ejja tagħti ħarsa lejn koppja ta 'eżempji 774 00:38:26,610 --> 00:38:28,890 ta 'kif nistgħu jużaw JavaScript hawn. 775 00:38:28,890 --> 00:38:32,530 Fil-kodiċi sors tal-lum, għandna mazz ta 'fajls, l-ewwel waħda minnhom, 776 00:38:32,530 --> 00:38:34,090 ejja imsejħa DOM żero. 777 00:38:34,090 --> 00:38:36,770 Allura DOM żero jistenna kif ġej. 778 00:38:36,770 --> 00:38:40,730 Let me go fis f'dan id-direttorju u jiftħu domzero.html, 779 00:38:40,730 --> 00:38:44,970 il-quċċata ta 'liema għandha tip doc dikjarazzjoni, qal hawnhekk jidħol HTML 5. 780 00:38:44,970 --> 00:38:46,440 U issa hawnhekk xi tag HTML. 781 00:38:46,440 --> 00:38:47,540 Hawn il-lametta ras. 782 00:38:47,540 --> 00:38:49,210 U hawnhekk x'hemm ġdid illum. 783 00:38:49,210 --> 00:38:52,620 >> Issa għandna tag iskrittura ġewwa tal-kap tal-paġna. 784 00:38:52,620 --> 00:38:55,290 U dan apparentement ma ftit, imma avviż 785 00:38:55,290 --> 00:38:58,410 li stajt ddefinixxa iskrittura, a JavaScript. 786 00:38:58,410 --> 00:39:01,050 U bħala twarrib, peress li dan huwa kunċett żbaljat komuni, 787 00:39:01,050 --> 00:39:05,220 JavaScript għandha assolutament xejn li tagħmel ma 'Java, il-lingwa 788 00:39:05,220 --> 00:39:08,010 li xi wħud minnkom tista ' tgħallmu fil APCs. 789 00:39:08,010 --> 00:39:10,480 Hija kienet aktar ta 'marketing Ħaġa minn kull ħaġa oħra, 790 00:39:10,480 --> 00:39:12,980 riding l-coattails ta Java snin ilu. 791 00:39:12,980 --> 00:39:17,300 Iżda JavaScript, x'taqsam xejn mal- Java, biss bl-istess mod, u annoyingly, 792 00:39:17,300 --> 00:39:18,480 joħloq konfużjoni jismu. 793 00:39:18,480 --> 00:39:21,890 >> Allura hawnhekk hija kif inti tiddikjara funzjoni fl JavaScript, litteralment jgħidu funzjoni, 794 00:39:21,890 --> 00:39:24,556 allura l-isem tal-funzjoni, allura kwalunkwe argumenti li tista 'tieħu, 795 00:39:24,556 --> 00:39:25,530 eżatt bħal fil-PHP. 796 00:39:25,530 --> 00:39:28,990 Jirriżulta fi JavaScript, waħda mill-aktar funzjonijiet annoying li jeżistu huwa Alert. 797 00:39:28,990 --> 00:39:31,392 Din hija tieqa ftit li se pop up u inti twissija 798 00:39:31,392 --> 00:39:32,600 għal xi biċċa informazzjoni. 799 00:39:32,600 --> 00:39:33,766 Huwa ġeneralment frowned fuq. 800 00:39:33,766 --> 00:39:35,980 Iżda aħna ser tużah kif tagħna ewwel eżerċizzju hawn. 801 00:39:35,980 --> 00:39:37,900 >> Avviż ftit karatteristiċi ta 'JavaScript. 802 00:39:37,900 --> 00:39:41,524 Kwotazzjonijiet uniku u kwotazzjonijiet doppja ma attwalment jimpurtax aktar. 803 00:39:41,524 --> 00:39:43,690 Kwotazzjonijiet uniku u doppju kwotazzjonijiet jistgħu jiġu skambjati, 804 00:39:43,690 --> 00:39:46,220 billi fil-C, inti għandek tuża kwotazzjonijiet doppja għall kordi, 805 00:39:46,220 --> 00:39:48,150 u għandek żewġ waħda kwotazzjonijiet għall Chars. 806 00:39:48,150 --> 00:39:51,150 Fid-dinja JavaScript, ħafna nies, ħafna nies 807 00:39:51,150 --> 00:39:54,970 jużaw kwotazzjonijiet uniku madwar kordi sempliċiment għaliex dan huwa ħaġa stilistika. 808 00:39:54,970 --> 00:39:58,330 Imma x'inhu l-operatur plus hawn, li ma rajniex qabel? 809 00:39:58,330 --> 00:39:59,836 >> UDJENZA: Konkatenazzjoni. 810 00:39:59,836 --> 00:40:00,960 DAVID Malan: Konkatenazzjoni. 811 00:40:00,960 --> 00:40:02,450 Allura C lanqas ma jkollhom dan. 812 00:40:02,450 --> 00:40:04,820 PHP għandu l-operatur dot, li ma dan. 813 00:40:04,820 --> 00:40:09,710 JavaScript għandha l-operatur plus, li joħloq konfużjoni huwa bħad Java. 814 00:40:09,710 --> 00:40:11,440 Issa x'inhu għaddej hawn? 815 00:40:11,440 --> 00:40:14,260 >> Allura hawnhekk fejn bażiku fehim ta 'dak l-istampa 816 00:40:14,260 --> 00:40:17,010 aħna threw up koppja jiem ilu tidħol fis-play. 817 00:40:17,010 --> 00:40:19,620 Tiftakar meta kellna sempliċi verżjoni ta 'HTML page-- 818 00:40:19,620 --> 00:40:20,830 hija biss qal, bonjour dinja. 819 00:40:20,830 --> 00:40:22,770 U allura aħna ġibdet siġra lejn il-lemin, li 820 00:40:22,770 --> 00:40:27,320 kellhom mazz ta 'rettangoli u linji konnessjoni tagħhom bħal siġra tal-familja. 821 00:40:27,320 --> 00:40:30,820 Allura dak l-hekk imsejħa DOM jew Għan Mudell Dokument. 822 00:40:30,820 --> 00:40:36,759 U jirriżulta li jista 'jkollok aċċess rettangoli f'dak siġra ma sintassi 823 00:40:36,759 --> 00:40:37,550 bħall-segwenti. 824 00:40:37,550 --> 00:40:41,370 Inti litteralment jgħidu dokument, li huwa varjabbli globali speċjali fil-JavaScript 825 00:40:41,370 --> 00:40:45,890 programm li għandu funzjoni assoċjati magħha li inti tista 'aċċess 826 00:40:45,890 --> 00:40:50,280 simili għal Struct, iżda inti sempliċiment jgħidu dot u mbagħad l-isem tal-funzjoni tal-, 827 00:40:50,280 --> 00:40:52,390 nikseb element mill ID. 828 00:40:52,390 --> 00:40:55,460 >> L-element Irrid li tikseb hija apparentement nikkwota isem unquote. 829 00:40:55,460 --> 00:40:57,150 U mbagħad I rridu nġibu valur tagħha. 830 00:40:57,150 --> 00:40:58,330 Issa aħna qed jkollna l quddiem ta 'ruħna. 831 00:40:58,330 --> 00:41:00,038 M'inix ċert anke dak dan kollu huwa madwar. 832 00:41:00,038 --> 00:41:03,000 Ejja quddiem sew mal-HTML fuq il-paġna, li huwa super sempliċi. 833 00:41:03,000 --> 00:41:05,370 >> Avviż li stajt definit Formola stabbiliti hawn. 834 00:41:05,370 --> 00:41:07,940 Avviż Stajt taha unika ID, anke jekk aħna ve mhux użati 835 00:41:07,940 --> 00:41:08,870 dan l-attribut qabel. 836 00:41:08,870 --> 00:41:11,300 Iżda dan jeżisti fl HTML. 837 00:41:11,300 --> 00:41:15,570 Inti tista unikament jidentifikaw xi chunk ta HTML b'identifikatur bħal dan. 838 00:41:15,570 --> 00:41:19,880 >> Avviż issa this-- jinstabx HTML jappoġġja, per dik il-lista tal-londri 839 00:41:19,880 --> 00:41:22,490 mument ilu, kollu kemm hu mazz ta 'handlers avveniment. 840 00:41:22,490 --> 00:41:25,060 U dan l-avveniment handler jgħid fuq jissottomettu. 841 00:41:25,060 --> 00:41:28,730 Dwar il-preżentazzjoni utent ta 'din forma, sejħa tal-kodiċi ta 'wara. 842 00:41:28,730 --> 00:41:31,360 U l-kodiċi li għaddej li jinxtraw jew eżegwiti 843 00:41:31,360 --> 00:41:35,260 huwa eżattament dan, il-Grieg funzjoni segwit minn falza ritorn. 844 00:41:35,260 --> 00:41:37,360 Kollox għandu jkun pjuttost familjari. 845 00:41:37,360 --> 00:41:42,050 >> Hawnhekk hija input ta 'test tip, li l- ID, f'dan il-każ, se jkun l-isem. 846 00:41:42,050 --> 00:41:45,430 Aħna ma jkollux isem attribut attwali dan time-- u buttuna issottometti. 847 00:41:45,430 --> 00:41:48,330 Allura l-paġna li tirriżulta tidher bħal dan. 848 00:41:48,330 --> 00:41:52,890 U l-imġieba tirriżulta, tkun taf tara, tidher bħal dan. 849 00:41:52,890 --> 00:41:56,940 Il-paġna Huwa jospita lokali jgħid, bonjour David, bilkemm estetikament heureuse 850 00:41:56,940 --> 00:41:58,340 mod biex insellem utent. 851 00:41:58,340 --> 00:41:59,950 Imma dak li attwalment jiġri? 852 00:41:59,950 --> 00:42:01,360 >> Ukoll, tikkunsidra liema dan huwa. 853 00:42:01,360 --> 00:42:02,310 Dan huwa qasam tat-test. 854 00:42:02,310 --> 00:42:04,635 U skond il- HTML hawn, stajt taha 855 00:42:04,635 --> 00:42:07,350 identifikatur uniku imsejħa kwotazzjoni isem unquote. 856 00:42:07,350 --> 00:42:09,770 Sadanittant, stajt qal meta l-utent jissottometti din il-formola 857 00:42:09,770 --> 00:42:13,820 billi jolqot Ikteb jew tikklikkja l Issottometti buttuna, sejħa tal-funzjoni msejħa Greet 858 00:42:13,820 --> 00:42:15,410 u mbagħad jirritornaw Foloz. 859 00:42:15,410 --> 00:42:16,870 Ejja jikkunsidraw dawk fir-reverse. 860 00:42:16,870 --> 00:42:20,590 Avviż meta I ikklikkja Submit, il- URL ta 'din il-paġna ma tinbidilx. 861 00:42:20,590 --> 00:42:22,420 Icon tal-browser ma tibda għażil. 862 00:42:22,420 --> 00:42:27,050 I ma tmurx kullimkien, u li l- litteralment minħabba I qal ritorn foloz. 863 00:42:27,050 --> 00:42:31,534 Ritorn ċirkwiti qosra foloz jew b'waqfiet l-imġieba default ta 'forma. 864 00:42:31,534 --> 00:42:33,700 Allura li mbagħad iħalli us ma din finali mistoqsija waħda. 865 00:42:33,700 --> 00:42:34,764 X'jagħmel Greet do? 866 00:42:34,764 --> 00:42:36,680 Ukoll, Greet apparentament jitlob funzjoni msejħa 867 00:42:36,680 --> 00:42:39,250 Twissija, jgħaddi f'wieħed argument twil li l- 868 00:42:39,250 --> 00:42:43,950 ir-riżultat ta concatenating flimkien mazz ta 'substrings, Hello ispazju comma, 869 00:42:43,950 --> 00:42:45,810 allura x'ikun dan jirritorna. 870 00:42:45,810 --> 00:42:51,490 Allura dokument huwa bħal globali varjabbli għal dik għerq ta 'dak siġra, 871 00:42:51,490 --> 00:42:55,560 ssejjaħ funzjoni speċjali, inkella issa magħrufa bħala metodu. 872 00:42:55,560 --> 00:42:57,650 A funzjoni li l- ġewwa ta 'varjabbli huwa 873 00:42:57,650 --> 00:42:59,640 imsejħa metodu minflok ta 'funzjoni. 874 00:42:59,640 --> 00:43:01,570 >> Allura nikseb element mill ID. 875 00:43:01,570 --> 00:43:03,940 What do you element tixtieq li tikseb mill ID tagħha? 876 00:43:03,940 --> 00:43:06,970 Ikkwota isem unquote u imbagħad valur speċifikament. 877 00:43:06,970 --> 00:43:12,000 Allura fi kliem ieħor, dan il-kodiċi sempliċiment isib l-qasam tat-test li ID huwa l-isem 878 00:43:12,000 --> 00:43:13,380 u mbagħad gets valur tagħha. 879 00:43:13,380 --> 00:43:16,460 Hekk jekk jien kienu li jbiddlu dan u jgħidu Davin minflok David, 880 00:43:16,460 --> 00:43:20,670 u kklikkja Issottometti, issa aħna jkollhom greeting għall Davin. 881 00:43:20,670 --> 00:43:22,890 >> Kull dritt, hekk kollha multa u tajba. 882 00:43:22,890 --> 00:43:25,480 Imma ejja ara jekk nistgħu nagħmlu dan ftit cleaner peress biss 883 00:43:25,480 --> 00:43:28,190 kitba kodiċi bħal dan huwa ġeneralment ser jiġu frowned fuq. 884 00:43:28,190 --> 00:43:30,060 Dan ser tħares scarier. 885 00:43:30,060 --> 00:43:32,330 Imma x'inhu l-ewwel differenza li inti wieħed jinnota hawnhekk 886 00:43:32,330 --> 00:43:35,970 f'dan il-verżjoni minbarra l- isem jinbidlu għal waħda DOM? 887 00:43:35,970 --> 00:43:41,110 Liema strutturalment jistenna differenti dwar dan versus l-oħra? 888 00:43:41,110 --> 00:43:41,932 Yeah? 889 00:43:41,932 --> 00:43:43,890 UDJENZA: Huwa l-formola dwar quċċata tal-iskrittura issa? 890 00:43:43,890 --> 00:43:46,570 DAVID Malan: Yeah, il-formola hija fuq nett tal-iskrittura għal xi raġuni kurjużi. 891 00:43:46,570 --> 00:43:48,736 Allura li l-ewwel ħaġa li jumps fil lili, wisq. 892 00:43:48,736 --> 00:43:50,990 U Thankfully għall-inqas, din il-parti hija identika. 893 00:43:50,990 --> 00:43:53,470 Allura l-unika ħaġa li jidher li tkun differenti hija din. 894 00:43:53,470 --> 00:43:55,296 >> Allura hawnhekk x'hemm pulita dwar JavaScript 2. 895 00:43:55,296 --> 00:43:57,420 U dan jagħmilha diffiċli li jifhmu ewwel daqqa t'għajn, 896 00:43:57,420 --> 00:44:00,670 speċjalment għal proġetti finali kif qed tfittex fi kodiċi kampjun online, 897 00:44:00,670 --> 00:44:04,200 iżda li jeħodna għal xi karatteristiċi sintattika bażiċi. 898 00:44:04,200 --> 00:44:06,230 Hawnhekk għal darb'oħra huwa li dokument varjabbli globali. 899 00:44:06,230 --> 00:44:09,540 Hawnhekk ukoll hija li metodu jew il-funzjoni li tgħid tikseb l-element minn ID. 900 00:44:09,540 --> 00:44:11,570 Din id-darba nixtieq li jiksbu l-ID imsejħa demo. 901 00:44:11,570 --> 00:44:12,490 Fejn huwa li? 902 00:44:12,490 --> 00:44:15,400 Dak apparentement dritt hawnhekk, il-formola innifsu. 903 00:44:15,400 --> 00:44:20,010 >> U issa avviż li apparentement jekk I nikseb lura li node mill-siġra li 904 00:44:20,010 --> 00:44:22,940 tirrappreżenta l-forma innifsu, mhux qasam tat-test, 905 00:44:22,940 --> 00:44:26,970 jirriżulta li formola, li node jew rettangolu mill-siġra, 906 00:44:26,970 --> 00:44:30,450 għandha dak li aħna ser sejħa proprjetà, ħafna, ħafna, simili ħafna 907 00:44:30,450 --> 00:44:35,390 fl-ispirtu għal Struct fil C. Huwa biss membru tad-data ġewwa ta 'dan ir-rettangolu. 908 00:44:35,390 --> 00:44:38,300 >> Hekk stajt ltqajna l-forma hawn, u jien twaħħil, 909 00:44:38,300 --> 00:44:44,650 jew jien tassenja, li fuq tagħha Issottometti handler jew pjuttost Fuq Issottometti proprjetà 910 00:44:44,650 --> 00:44:45,740 il-funzjoni li ġejja. 911 00:44:45,740 --> 00:44:49,000 U dan huwa, bil-bosta, l-craziest Ħaġa s'issa sintattiku. 912 00:44:49,000 --> 00:44:53,610 Jirriżulta fil-JavaScript u PHP, u franchement għal dik il-kwistjoni fis-C, 913 00:44:53,610 --> 00:44:58,990 anke jekk aħna ma tagħmel dan, inti tista ' żid nameless, anonima, jew lambda AKA 914 00:44:58,990 --> 00:45:03,000 funzjonijiet li ma għandhom isem iżda jistgħu jiġu msejħa xorta. 915 00:45:03,000 --> 00:45:07,050 >> Allura dak li jien tagħmel hawn qed jien assenjazzjoni dan Fuq Issottometti proprjetà, li 916 00:45:07,050 --> 00:45:14,330 huwa ġewwa ta 'dan node ta siġra DOM tiegħi, funzjoni, pointer funzjoni jekk inti se. 917 00:45:14,330 --> 00:45:16,310 Dik il-funzjoni għandha l-ebda isem, iżda li ma 918 00:45:16,310 --> 00:45:19,110 jimpurtax għax aħna ser tara fil-mument kif hija sejħa. 919 00:45:19,110 --> 00:45:21,780 Meta din il-funzjoni huwa msejjaħ, dan il-kodiċi gets esegwiti, imbagħad 920 00:45:21,780 --> 00:45:24,210 falza huwa rritornat biss bħal qabel. 921 00:45:24,210 --> 00:45:25,800 >> Imma Avviż dak I ghamilt. 922 00:45:25,800 --> 00:45:27,830 Fuq dan il-punt fil- istorja, I għandhom forma. 923 00:45:27,830 --> 00:45:30,190 Huwa ltqajna ID unika msejħa demo. 924 00:45:30,190 --> 00:45:33,740 Down hawn, għandi tag iskrittura li tesegwixxi l-kodiċi li ġej. 925 00:45:33,740 --> 00:45:37,720 Li jagħti lill dak node fil l-siġra li huwa fuq Issottometti 926 00:45:37,720 --> 00:45:40,260 proprjetà din il-funzjoni hawn. 927 00:45:40,260 --> 00:45:44,310 U biss min-natura ta 'kif browsers xogħol, meta I issa ikklikkja Submit jew hit Ikteb, 928 00:45:44,310 --> 00:45:45,889 dik il-funzjoni se tikseb imsejħa. 929 00:45:45,889 --> 00:45:48,680 Dan ma jeħtieġx isem għaliex li l-Heck cares dak li sejjaħ. 930 00:45:48,680 --> 00:45:52,540 Il-ħin biss huwa qatt se tikseb imsejħa huwa meta I tissottometti l-formola. 931 00:45:52,540 --> 00:45:55,130 M'hemm l-ebda ħtieġa għalija, l-iżviluppatur tal-bniedem, 932 00:45:55,130 --> 00:45:57,330 li attwalment hija sejħa imkien ieħor. 933 00:45:57,330 --> 00:46:00,720 >> Issa biss bħala teaser, bħallikieku dik ma kinux mind liwi biżżejjed, 934 00:46:00,720 --> 00:46:03,330 nistgħu anki jagħmlu dan tħares aktar cryptic użu 935 00:46:03,330 --> 00:46:05,850 librerija super popolari imsejħa jQuery. 936 00:46:05,850 --> 00:46:08,760 Fil-fatt jQuery u JavaScript huma spiss conflated. 937 00:46:08,760 --> 00:46:12,790 U dak li aħna ser nagħmlu l-Erbgħa huwa bidu jużaw din il-lingwa u dawn il-libreriji 938 00:46:12,790 --> 00:46:16,030 biex jibnu aktar mhux sinkroniku u applikazzjonijiet dinamiku 939 00:46:16,030 --> 00:46:18,950 bħal mappa jkollna applikazzjonijiet, l-applikazzjonijiet 940 00:46:18,950 --> 00:46:22,360 li taġġorna l-webpage fil reali ħin, ħafna bħall Facebook jew Gchat 941 00:46:22,360 --> 00:46:27,130 tagħmel, u m'għadhomx tillimita lilna nfusna biex laqtu Issottometti minn get jew eżatt wara 942 00:46:27,130 --> 00:46:27,630 waħdu. 943 00:46:27,630 --> 00:46:29,055 So I se tara inti nhar l-Erbgħa. 944 00:46:29,055 --> 00:46:31,805 945 00:46:31,805 --> 00:46:35,550 >> [Daqq ta mużika] 946 00:46:35,550 --> 00:48:09,728