1 00:00:00,000 --> 00:00:02,620 [Powered by Google Translate] [Semajno 7, daŭrigis] 2 00:00:02,620 --> 00:00:05,090 [Davido J. Malan, Harvard University] 3 00:00:05,090 --> 00:00:07,780 [Jen CS50.] [CS50.TV] 4 00:00:07,780 --> 00:00:09,810 Bone. Bonvenon Back. Ĉi tiu estas CS50, 5 00:00:09,810 --> 00:00:12,100 kaj ĉi tiu estas la fino de semajno 7. 6 00:00:12,100 --> 00:00:15,460 Do unu el tiuj stultaj iom aĵoj kiu iras ĉirkaŭ la Interreto 7 00:00:15,460 --> 00:00:24,080 kaj ni slurped supren, kaj tio devus nun fari iom da geeky senco al vi. 8 00:00:24,080 --> 00:00:28,330 Nu, tio estis amuza al tiu ulo ol estis al vi guys. 9 00:00:28,330 --> 00:00:32,619 Parolante pri, nu, infanoj, 10 00:00:32,619 --> 00:00:42,550 hodiaŭ estas Nate naskiĝtago. 11 00:00:42,550 --> 00:00:46,630 Doni al vi la senton de kiom bona Nate kaj mi estas 12 00:00:46,630 --> 00:00:50,140 ĉe retejo disvolviĝo surbaze de lundo la klaso kaj bazita nun pri tio, 13 00:00:50,140 --> 00:00:53,170 Mi pensis mi elsxiros Nate ĉefpaĝon, se vi ne vidis ĝin ankoraŭ. 14 00:00:53,170 --> 00:00:57,020 Ĉi tie ia Nate HTML. 15 00:00:57,020 --> 00:00:59,380 Do vidu lian fontkodojn se vi ŝatus vidi kiel fari tion, kaj Nate, 16 00:00:59,380 --> 00:01:02,250 se ni povus embarass vi ĵus mallonge, la personaro got you iom ion 17 00:01:02,250 --> 00:01:06,080 se vi ŝatus dividi iuj deserto kun iu el la infanoj en la klaso tie. 18 00:01:06,080 --> 00:01:10,150 Se vi ŝatus venu malsupren. 19 00:01:10,150 --> 00:01:14,350 Vi ĉiuj aplaŭdas kaj estas tre bela, sed neniu sidas ie proksime Nate, 20 00:01:14,350 --> 00:01:17,560 ial, en tiu reen zono. 21 00:01:17,560 --> 00:01:24,020 Do eble vi povas trovi iujn ulojn por ĝui ĉi tiuj kun. 22 00:01:24,020 --> 00:01:33,380 Happy Birthday, Nate. 23 00:01:33,380 --> 00:01:37,660 >> Pliaj hellos: Ni montris paron klipoj el nia CS50x studentoj. 24 00:01:37,660 --> 00:01:39,710 Se vi ŝatus vidi kiu ajn ĝi estas en la mondo 25 00:01:39,710 --> 00:01:41,850 ke tio sekvi kune, vi povas direkti al ĉi URL, 26 00:01:41,850 --> 00:01:45,780 kie Jozef, unu el niaj TFs, ĝi kunmetis muntado de varoj 27 00:01:45,780 --> 00:01:50,290 de ĉiu, kiu estis submitting tiuj filmetoj, inter ili Rick Astley. 28 00:01:50,290 --> 00:01:53,010 Kaj se vi rulumu tra tiuj, estas vere sufiĉe inspira 29 00:01:53,010 --> 00:01:56,890 por vidi la diversecon de landoj kaj urboj, el kiu popolo devena. 30 00:01:56,890 --> 00:02:00,830 Do se vi ŝatus rigardi ke, kiu estos supren tra la fino de la semestro. 31 00:02:00,830 --> 00:02:05,370 Hodiaŭ ni daŭrigos nian rigardi la TTT, retejo programado, HTML kaj similaj, 32 00:02:05,370 --> 00:02:08,280 kaj ni ankaŭ tagmanĝi antaŭvidi ĉi vendredo 33 00:02:08,280 --> 00:02:11,360 se vi ŝatus, kaj aparte, ne faris tiel antaŭe. 34 00:02:11,360 --> 00:02:13,630 Ĉi vendreda temo estos Nate naskiĝtago, 35 00:02:13,630 --> 00:02:15,700 do se vi volas havi naskiĝtago tagmanĝi kun Nate 36 00:02:15,700 --> 00:02:17,500 kaj aliaj, kelkaj el niaj geamikoj el industrio, 37 00:02:17,500 --> 00:02:19,300 bonvolu kapon por ke URL tie. 38 00:02:19,300 --> 00:02:22,510 Spaco, kiel ĉiam, estas limigita. Ankaŭ, se vi forgesis, 39 00:02:22,510 --> 00:02:26,460 rimarkas ke venontan semajnon estas la limdato por problemo starigis 4 de denuncanto ĉasi, 40 00:02:26,460 --> 00:02:30,070 per post rekuperi ĉiuj el tiuj JPEG-oj de card.raw, 41 00:02:30,070 --> 00:02:32,880 vi kaj via sekcio mortigas, se vi ŝatus, povas provi fotante 42 00:02:32,880 --> 00:02:36,100 kiel multaj el la komputilaj sciencistoj de tiu memoro karto ebla, 43 00:02:36,100 --> 00:02:39,070 kaj vi kaj via sekcio estos tiam gajni fabelajn premion. 44 00:02:39,070 --> 00:02:44,470 Referi al pset 4 La specifo pri kio submeti kaj por kiam. 45 00:02:44,470 --> 00:02:47,650 Ankaŭ, se vi volas havi vian handiwork senmortigita 46 00:02:47,650 --> 00:02:51,400 en la paso de afiŝinto kaj lia historio de vestoj, 47 00:02:51,400 --> 00:02:54,010 scias, ke vi estas bonvena nun komenci submitting dezajnoj 48 00:02:54,010 --> 00:02:57,180 por ĉi-jara T-ĉemizoj kaj sweatshirts kaj similaj. 49 00:02:57,180 --> 00:02:59,200 Ni faros nian eblon por inkludi tiom kiom ni povas, 50 00:02:59,200 --> 00:03:01,440 sed ni devos iuj membroj de la personaro revizio ĉiuj dezajnoj 51 00:03:01,440 --> 00:03:04,180 por certigi ke ili estas kohera kun la especificaciones, 52 00:03:04,180 --> 00:03:07,500 kaj ni tiam preni ĝenerale manpleno da ili, por esti elmetita. 53 00:03:07,500 --> 00:03:10,620 Do se vi estas la dezajno tipo, nur scias, ke la postuloj 54 00:03:10,620 --> 00:03:14,030 por grafikaĵoj estas PNG, almenaŭ 200 DPI, 55 00:03:14,030 --> 00:03:16,520 ili ne estu pli ol 4000 x 4000 rastrumeroj, 56 00:03:16,520 --> 00:03:19,010 kaj ne pli ol 10 MB, sed vi bonvena uzi tion kiel 57 00:03:19,010 --> 00:03:22,430 Photoshop aŭ GIMP aŭ pluraj grafikaj programoj, 58 00:03:22,430 --> 00:03:24,590 kion ajn vi havas je via dispono. 59 00:03:24,590 --> 00:03:28,280 >> Ankaŭ sur la horizonto estas la fina projekto. La fina projekto vere estas la klimakso de 50, 60 00:03:28,280 --> 00:03:30,560 per la tuta faritaj en la kurso, 61 00:03:30,560 --> 00:03:33,170 estas via ŝanco vere fari vian propran aferon. 62 00:03:33,170 --> 00:03:35,280 Kaj kiu povas esti simple fari ion por amuzo, 63 00:03:35,280 --> 00:03:38,160 ĝi povas esti por solvi iujn prema problemo vian studento grupo havas, 64 00:03:38,160 --> 00:03:40,980 por iu nova TTT-ejo, iun novan kolekton mekanismo por datumoj. 65 00:03:40,980 --> 00:03:43,420 Ĝi povas esti moveblaj apliko por Android, por iOS. 66 00:03:43,420 --> 00:03:46,030 Vere, la ĉielo estas la limo, kaj dum la venontaj semajnoj, 67 00:03:46,030 --> 00:03:50,900 kiel ni transiro de C al tiuj pli altnivelaj lingvoj kiel PHP kaj Javascript, 68 00:03:50,900 --> 00:03:55,150 vi trovos vin mem pli kaj pli familiarizada kun iu reala mondo teknikoj, 69 00:03:55,150 --> 00:03:57,800 iuj reala mondo iloj, kaj por kompletigi tion, 70 00:03:57,800 --> 00:04:00,170 scias, ke la kurso havas historion de seminarioj, 71 00:04:00,170 --> 00:04:02,880 per dum la venontaj kelkaj semajnoj, kelkaj el la instruistecon 72 00:04:02,880 --> 00:04:06,160 kaj amikoj de nia el la campus proponos nedeviga seminarioj 73 00:04:06,160 --> 00:04:08,540 kiu iras supre kaj preter tio, kio tipe farita en sekcio 74 00:04:08,540 --> 00:04:11,090 enkonduki vin al aĵoj kiel Android programado, 75 00:04:11,090 --> 00:04:13,450 enkonduki vin al aĵoj kiel iOS programado 76 00:04:13,450 --> 00:04:15,950 aŭ pli plibonigita retejo disvolviĝo teknikoj. 77 00:04:15,950 --> 00:04:17,970 Ekzistas tuta historio de ĉi tiuj jam ensalutintaj. 78 00:04:17,970 --> 00:04:25,000 Se vi iras al cs50.net/seminars, ni estis farante tion por sufiĉe iuj jaroj, 79 00:04:25,000 --> 00:04:28,740 kaj vi vidos ke enarkivigitaj tie kun PDFs kaj filmetoj kaj similaj 80 00:04:28,740 --> 00:04:33,090 Estas pluraj dekduoj videos de seminarioj. 81 00:04:33,090 --> 00:04:37,380 Lasta jaro, ekzemple, ni havis seminario pri acing vian teknikan intervjuoj, 82 00:04:37,380 --> 00:04:40,980 se vi vere serĉis por foriri kaj do an internulejo aŭ plentempa koncerto. 83 00:04:40,980 --> 00:04:43,450 Windows moveblaj disvolviĝo, Android disvolviĝo, Google Maps, 84 00:04:43,450 --> 00:04:47,700 API, CSS, disvolvante la BlackBerry, Emakso. 85 00:04:47,700 --> 00:04:52,610 Vere, vi estas bonvena rigardu iu el tiuj seminarioj ĉe via oportuneco. 86 00:04:52,610 --> 00:04:57,080 Kaj ni estos tenante iuj novaj ĉi semestro, tiel. 87 00:04:57,080 --> 00:04:59,020 >> Do kio estas antaŭeniras kun la fina projekto? 88 00:04:59,020 --> 00:05:01,090 Nu, unue, kvankam ĉi tiu dato estas iom tuja, 89 00:05:01,090 --> 00:05:06,460 ĉi tio estas vere ĝuste ŝanco por komenci pensadon pri la fina projekto tute realisme. 90 00:05:06,460 --> 00:05:10,550 Ni scias nur la komencoj de iuj de kio ni ankoraŭ kovrante en la kurso, 91 00:05:10,550 --> 00:05:13,470 HTML, PHP kaj similaj, sed vi ja ĉiuj konas la TTT, 92 00:05:13,470 --> 00:05:16,270 kaj mi bias ĉi konversacio al la TTT nur pro 93 00:05:16,270 --> 00:05:18,380 plej multaj homoj finas fari TTT-bazita fino projektoj, 94 00:05:18,380 --> 00:05:20,260 sed tio estas tute ne bezonata. 95 00:05:20,260 --> 00:05:22,260 Uzanta C estas fajna, objektiva C, Java, 96 00:05:22,260 --> 00:05:25,350 iu ajn alia lingvo vi eble konas aŭ deziras scii estas sufiĉe bone. 97 00:05:25,350 --> 00:05:29,370 Sed por ricevi la sukoj fluas komence, ni atendas la submetiĝo de preproposal 98 00:05:29,370 --> 00:05:33,520 kiuj, por la PDF en la retejo, kiu nun estas en cs50.net, 99 00:05:33,520 --> 00:05:36,080 kaj supre maldekstre vi vidos finon projekto 100 00:05:36,080 --> 00:05:38,920 estas la specifo por la fina projekto, 101 00:05:38,920 --> 00:05:41,470 kaj tie estas detaloj en la preproposal kaj similaj. 102 00:05:41,470 --> 00:05:44,760 Ĝi sufiĉe abscesoj malsupren al retmesaĝon al via instruado ulo 103 00:05:44,760 --> 00:05:48,450 nur frapi ĉe konversacion kun li aŭ ŝi pri kio vi pensas. 104 00:05:48,450 --> 00:05:52,510 Sur projects.cs50.net estas deponejo de ideoj el onin sur kampuso 105 00:05:52,510 --> 00:05:54,480 se vi luktas por veni kun iu ideo, 106 00:05:54,480 --> 00:06:01,140 kaj manual.cs50.net/APIs estas deponejo de ligiloj al API. 107 00:06:01,140 --> 00:06:06,710 >> Kion, tamen, estas API? 108 00:06:06,710 --> 00:06:09,790 Kio estas API? Mi diris, ke almenaŭ dufoje, 109 00:06:09,790 --> 00:06:12,640 laŭ la transskriboj de la lastaj semajnoj. 110 00:06:12,640 --> 00:06:17,050 Kio estas tio? [Studento, nekomprenebla] 111 00:06:17,050 --> 00:06:19,340 >> Konsentite, bona. Do io programado interfaco. 112 00:06:19,340 --> 00:06:22,710 Apliko programado interfaco, kaj ĉi tiu povas preni plurajn formojn, 113 00:06:22,710 --> 00:06:25,850 sed kion tiu vere abscesoj malsupren al estas kodo 114 00:06:25,850 --> 00:06:29,660 ke iu alia hs skribita aŭ datumoj ke iu alia kolektis 115 00:06:29,660 --> 00:06:33,670 kiu estas disponebla al vi en iu programita vojo. 116 00:06:33,670 --> 00:06:36,630 Vi povas skribi kodo en C, PHP, Python, Rubeno, 117 00:06:36,630 --> 00:06:38,760 kion ajn via lingvo de elekto tipe estas, 118 00:06:38,760 --> 00:06:42,240 kaj vi povas iel konstrui sur iu alia funcionalidad 119 00:06:42,240 --> 00:06:44,440 aŭ iu alia estas aro de datumoj. 120 00:06:44,440 --> 00:06:47,210 Ekzemple, se mi iras al ĉi ligilon ĉi tie, 121 00:06:47,210 --> 00:06:50,750 kaj vi vidos paro de ligiloj en la posta paĝo 122 00:06:50,750 --> 00:06:56,093 per kiu ni havas CS50 propra API, kiu estas tre Harvard-centrita, kaj poste triaj API. 123 00:06:56,930 --> 00:06:59,300 Inter la triaj API estas vere utilaj aĵoj 124 00:06:59,300 --> 00:07:01,780 kiel povi sendi SMS de la homo, 125 00:07:01,780 --> 00:07:04,690 povi ricevi SMS teksto mesaĝojn de popolo. 126 00:07:04,690 --> 00:07:08,160 Kaj tion tiel ke vi havu nenian ideon kiel apliki mem, 127 00:07:08,160 --> 00:07:10,440 sed danke al servoj, iuj senpagaj kaj kelkaj komercaj, 128 00:07:10,440 --> 00:07:14,000 vi povas konstrui sur la pinto tiuj kaj do iom da intereso al vi. 129 00:07:14,000 --> 00:07:16,990 Inter CS50 la API estas tiuj kampuso centrita aĵojn kiel 130 00:07:16,990 --> 00:07:21,480 Harvard kursoj, energio, eventoj, nutrado, mapoj, novaĵoj, tweets kaj Shuttleboy memstare, 131 00:07:21,480 --> 00:07:23,940 kaj jen estas API kiuj aspektas iom io tiamaniere. 132 00:07:23,940 --> 00:07:26,990 >> Lasu min eltiri supren la HarvardFood API. 133 00:07:26,990 --> 00:07:30,620 Se vi iam estis en HUD afiŝinto, vi verŝajne estis tie 134 00:07:30,620 --> 00:07:35,410 justaj vidi kio estas por vespermanĝo aŭ por vidi kion la horoj estas por iu d-salono. 135 00:07:35,410 --> 00:07:38,000 Nu, ne aparte facila por navigi, 136 00:07:38,000 --> 00:07:41,100 kaj tiel kion ni faris iom da tempo estis ni skribis programaro, 137 00:07:41,100 --> 00:07:47,270 okazas ke en PHP, kiuj reale ekrano tergratado la tuteco de HUD de afiŝinto. 138 00:07:47,270 --> 00:07:51,400 Apantallar skrapaĵo ion signifas por skribi programon en lingvo kiel PHP 139 00:07:51,400 --> 00:07:55,270 kiu ŝajnigas esti retumilo, kvankam vi povus ruli ĝin al komando prompto, 140 00:07:55,270 --> 00:07:58,180 kiu ŝajnigas esti retumilo, ligo al retejo, 141 00:07:58,180 --> 00:08:01,480 Elŝutoj lia HTML, la lingvo en kiu ĝi estas skribita, 142 00:08:01,480 --> 00:08:04,300 kaj poste legas ĝin, aŭ pli specife, parses ĝin 143 00:08:04,300 --> 00:08:06,140 supre sube, maldekstre dekstren. 144 00:08:06,140 --> 00:08:08,870 Kaj kion ni faris estis ni skribis niajn kodo tiel ke 145 00:08:08,870 --> 00:08:12,910 ajn vidis ion en tiu HTML kiu similis iun sur la menuo, 146 00:08:12,910 --> 00:08:16,470 kiel hamburgero, ni devus tiam importi ke en nian propran datumaron. 147 00:08:16,470 --> 00:08:20,410 Kaj iam vidis nutricional enhavo, ni devus importi ke en nian propran datumaron. 148 00:08:20,410 --> 00:08:23,090 Kaj kion ni faris estis levilo la fakto ke HUD afiŝinto, 149 00:08:23,090 --> 00:08:27,280 kvankam eble estus iom de defio por ni homoj por navigi 150 00:08:27,280 --> 00:08:32,559 sub la kapuĉo, ĉiuj la HTML estas generita per siaj propraj komputilaj programoj. 151 00:08:32,559 --> 00:08:35,159 Do ĉiuj en HTML, kvankam ĝi povus rigardi senorda, 152 00:08:35,159 --> 00:08:38,026 kiel plej retejojn sub la kapuĉo sekvas ŝablono. 153 00:08:38,260 --> 00:08:40,799 Do ni simple pasigis paron horoj elŝeligi ke mastro 154 00:08:40,799 --> 00:08:44,240 tiel ke en la fino, ni forĵetu ĉiuj senorda HTML, 155 00:08:44,240 --> 00:08:47,340 ĉiuj la estetiko de aŭdaca Facing kaj kursivo kaj similaj, 156 00:08:47,340 --> 00:08:52,350 kaj kion ni tiam povos fari estas elmontri ke samaj datumoj. 157 00:08:52,350 --> 00:08:54,870 Ekzemple, en ĉi tiu maniero. 158 00:08:54,870 --> 00:08:56,840 Do ni, laŭ la dokumentado tie, 159 00:08:56,840 --> 00:08:59,190 ili informis la mondon, ke se vi petas la URL 160 00:08:59,190 --> 00:09:03,310 kiu similas tiun, food.cs50.net / io, 161 00:09:03,310 --> 00:09:07,220 kaj vi provizis iujn parametrojn, kiujn ni parolos pri hodiaŭ, 162 00:09:07,220 --> 00:09:11,780 kiel fino-dato tempo, komenco-dato tempo, manĝo ktp, 163 00:09:11,780 --> 00:09:14,090 kion niaj serviloj revenos al vi, ekzemple, 164 00:09:14,090 --> 00:09:18,740 estas CSV-dosiero, komo separted valoroj kiel Excel-dosiero, 165 00:09:18,740 --> 00:09:23,140 enhavanta ĉion por matenmanĝo sur ĉi aparta dato en marto pasintjare 166 00:09:23,140 --> 00:09:25,450 kiam mi hazarde redakti ĉi dokumentado. 167 00:09:25,450 --> 00:09:27,870 >> Por tiuj, kiuj konas, CSV ne estas la sola formato de dosiero. 168 00:09:27,870 --> 00:09:30,610 Ekzistas alia formato kiu estas ĉio pli versátil 169 00:09:30,610 --> 00:09:32,670 vokis JSON, JavaScript Objekto Skribmaniero. 170 00:09:32,670 --> 00:09:34,770 La datumoj povas reveni en tiu formato. 171 00:09:34,770 --> 00:09:38,110 Do la takeaway tie estas ke ĉu vi pikita en ĉi API 172 00:09:38,110 --> 00:09:41,170 aŭ ajna alia de CS50 aŭ de io tie en Interreto, 173 00:09:41,170 --> 00:09:45,560 aŭ nenio, rimarkas ke la mondo pli kaj pli komencis normigi 174 00:09:45,560 --> 00:09:47,670 kiel maŝinoj intercomunican. 175 00:09:47,670 --> 00:09:50,660 Ni uzas normon datumoj formatoj kiel CSV aŭ JSON. 176 00:09:50,660 --> 00:09:54,320 Kaj kion tio signifas por vi estas oni povas skribi la interesa parto de programo 177 00:09:54,320 --> 00:09:56,580 kiu lasas vian uzanto serĉi manĝ-salono menuo, 178 00:09:56,580 --> 00:10:00,010 kiu lasas ilin krei listojn de favoritos kiu lasas ilin akiri tekston alarmas 179 00:10:00,010 --> 00:10:02,480 kiam lia preferata manĝo estas estonta servis en iu d-salono 180 00:10:02,480 --> 00:10:07,090 uzante iu alia datenaroj kaj konstruaĵo supre de siaj API. 181 00:10:07,090 --> 00:10:13,600 Do pli en kiu en formo de seminarioj kaj la dokumentaron, ke vi havas tie en linio. 182 00:10:13,600 --> 00:10:16,450 Do tiuj, do, estas API. 183 00:10:16,450 --> 00:10:18,900 >> Kiu alportas nin al HTML. Rapida recap. 184 00:10:18,900 --> 00:10:22,920 Kio estas HTML? 185 00:10:22,920 --> 00:10:25,000 [Studento, nekomprenebla] >> Bona. Hipertekstaj Markup Language. 186 00:10:25,000 --> 00:10:31,300 Iu alia, kio estas Hipertextual Markup Language? 187 00:10:31,300 --> 00:10:37,340 Hipertekstaj Markup Language. 188 00:10:37,340 --> 00:10:40,330 Okay. Do HTML, hiperteksto. 189 00:10:40,330 --> 00:10:43,100 Hipertekstaj nur aludas al la retejo, plejparte. 190 00:10:43,100 --> 00:10:45,730 Markup signifas ke ĝi ne estas vere programlingvo, HTML. 191 00:10:45,730 --> 00:10:48,120 Tio ne estas lingvo kiu vi povas esprimi logiko in 192 00:10:48,120 --> 00:10:50,710 Ĝi ne havas buklojn. Ĝi ne havas kondiĉojn. 193 00:10:50,710 --> 00:10:52,820 Ĝi ne havas funkciojn, per si mem. 194 00:10:52,820 --> 00:10:56,680 Pli ĝuste, ĝi havas tion nomas etikedoj, aŭ pli ĝuste, elementoj. 195 00:10:56,680 --> 00:10:59,970 Kaj tiuj elementoj havas komencon kaj finon etikedoj etikedoj, 196 00:10:59,970 --> 00:11:04,300 aŭ malfermita etikedoj kaj fermitaj etikedoj, kaj kion tiuj etikedoj ĝenerale signifas por foliumilo estas, 197 00:11:04,300 --> 00:11:09,270 komenci fari ion kaj tiam ĉesi fari ion, kvankam ekzistas esceptoj al tiu. 198 00:11:09,270 --> 00:11:12,480 Foje estas nur 'metis linerompo tie,' ekzemple. 199 00:11:12,480 --> 00:11:15,150 Kaj ni vidis ekzemplojn de tiu alia tago, inter grasaj alfrontas, 200 00:11:15,150 --> 00:11:17,430 linisaltojn kaj poste kelkajn aliajn etikedojn. 201 00:11:17,430 --> 00:11:19,880 Do HTML estas la lingvo en kiu retpaĝoj estas skribita. 202 00:11:19,880 --> 00:11:23,760 Do, se mi iras al iu kiel Google.com 203 00:11:23,760 --> 00:11:26,180 kaj tiri supren nur ilia hejmpaĝo, 204 00:11:26,180 --> 00:11:29,690 memori, ke se vi dekstre alklaku aŭ kontroli klaku 205 00:11:29,690 --> 00:11:32,140 kaj rigardu view paĝo fonto, tipe 206 00:11:32,140 --> 00:11:34,420 ĝi estas kompleta salaton tiujn tagojn sub la kapuĉo, sed tio estas ĉar 207 00:11:34,420 --> 00:11:38,170 komputiloj ne zorgas pri blanka spaco, tiel ĉi tio ne devas aspekti bela. 208 00:11:38,170 --> 00:11:40,240 Sed se ni zomi en partoj de ĝi, 209 00:11:40,240 --> 00:11:43,460 rimarki, ke Chrome, nur por esti bela, ĝi koloro kodita aĵoj. 210 00:11:43,460 --> 00:11:48,460 Fakte, ĉi tiu estas la unua etikedo kiun ni vidis en la retpaĝo. 211 00:11:48,460 --> 00:11:51,750 Kaj ankaux HTML 5, la lasta versio de ĉi tiu lingvo, 212 00:11:51,750 --> 00:11:53,830 ne havas tiun aferon al la komenco, 213 00:11:53,830 --> 00:11:57,820 00:12:03,580 sed tio estas nur ia normo kiu diras, hey mondo, tie venas HTML dosiero en versio 5. 215 00:12:03,580 --> 00:12:08,920 >> La interesa parto komencas ĉi tie. Do 00:12:11,640 de la HTML elementoj lasta fojo. 217 00:12:11,640 --> 00:12:14,630 Kio estis tiuj du ĉefaj infanoj? 218 00:12:14,630 --> 00:12:17,170 Kapo kaj korpo, samkiel la knabo kun la tatuaje antaŭ momento. 219 00:12:17,170 --> 00:12:19,640 Ekzistas du porcioj de retpaĝo, kapo kaj korpo, 220 00:12:19,640 --> 00:12:23,750 kaj revokon, do, ke eble la plej simpla retpaĝo ni povus fari similas ĉi. 221 00:12:23,750 --> 00:12:27,460 Kaj mi dentado ĝin nur por esti ia neta kaj ordigita per mia kodo, 222 00:12:27,460 --> 00:12:30,710 sed kio estas vere grava estas, ke ekzistas iu hierarkio al ĉi tio. 223 00:12:30,710 --> 00:12:35,420 Kaj neniu etikedo kiun mi malfermis Mi fermis kaj ke estas do tiu simetrio 224 00:12:35,420 --> 00:12:38,300 al ĉiuj de la markado kiun mi kreis. 225 00:12:38,300 --> 00:12:41,620 Do lastan fojon ni komencis skribi retpaĝojn sur mia propra portebla. 226 00:12:41,620 --> 00:12:45,470 Mi malfermis teksto redakto, mi savis la dosieron kiel hello.html, 227 00:12:45,470 --> 00:12:50,190 Mi tiam trenis la dosieron sur mia krozilo, kaj voila, mi havis paĝo en la interreto. 228 00:12:50,190 --> 00:12:53,110 Nun, ĝi ne estas sufiĉe la kazo, mi havis paĝo sur mia malmola disko, 229 00:12:53,110 --> 00:12:58,260 kaj mi estis laŭvorte la sola persono en la mondo, kiuj vidus ke retpaĝo en retumilo. 230 00:12:58,260 --> 00:13:00,670 >> Do hodiaŭ, ni enkondukas reala retservilo 231 00:13:00,670 --> 00:13:02,750 kaj la nocio de reale utilante enhavo en Interreto 232 00:13:02,750 --> 00:13:04,970 kaj kiel tio cxiuj komencas persvadi kune. 233 00:13:04,970 --> 00:13:08,350 Do rezultas ke ĉio ĉi tempo en la CS50 aparaton 234 00:13:08,350 --> 00:13:11,590 Vi havis ttt-servilo en via komputilo. 235 00:13:11,590 --> 00:13:16,560 Ni, en justeco, nur uzis ĝin por gedit, por Clang, por GDB kaj similaj, 236 00:13:16,560 --> 00:13:21,000 sed ankaŭ instalitaj de ni por vi en la aparaton estas ttt-servilo, 237 00:13:21,000 --> 00:13:23,940 kaj tio ttt-servilo okazas al esti libera, malfermita fontokodo, 238 00:13:23,940 --> 00:13:26,580 unu el la plej popularaj en la mondo, nomata Apache. 239 00:13:26,580 --> 00:13:31,340 Lia pli teknika nomo estas httpd, la d esti por demono tie, 240 00:13:31,340 --> 00:13:34,110 kio estas teknika vorto por servilo. 241 00:13:34,110 --> 00:13:38,690 Do instalita en la CS50 aparaton estas ttt-servilo, kaj kion tio signifas? 242 00:13:38,690 --> 00:13:43,740 Nu, servanto retejo estas, koncepte, iuj servilo en Interreto kiu utilas ĉe retejo enhavo. 243 00:13:43,740 --> 00:13:48,630 Kiam petis dosiero, ĝi kraĉas el la HTML kiu formas tiu dosiero, kaj voila. 244 00:13:48,630 --> 00:13:51,370 Vi vidas iujn afiŝinto ĉefpaĝon. 245 00:13:51,370 --> 00:13:54,970 Sed servilo estas, pli precize, peco de programaro. 246 00:13:54,970 --> 00:13:59,190 Ĝi ne devas esti sur fizika maŝino, ĝi nur devas esti peco de programaro kurado. 247 00:13:59,190 --> 00:14:01,980 Do la CS50 aparaton, kompreneble, estas peco de programaro 248 00:14:01,980 --> 00:14:04,270 kvankam ĝi estas speco de ŝajnigante esti maŝino. 249 00:14:04,270 --> 00:14:06,960 Ĝi estas ŝajnigante esti komputilo ene de komputilo, 250 00:14:06,960 --> 00:14:11,140 sed tio nur signifas ke la aparaton povas certe kuri aĵojn kiel ttt-serviloj. 251 00:14:11,140 --> 00:14:13,260 Ĝi povas reale kuri retpoŝto serviloj. 252 00:14:13,260 --> 00:14:16,440 Ni povis kuri kun tuja mesaĝado servilo en la aparaton se ni volis, 253 00:14:16,440 --> 00:14:20,780 kaj ja, ni kuros unu alia tipo de servilo, konata kiel datumbazo servilo, mySQL. 254 00:14:20,780 --> 00:14:22,620 Sed pli en tiu proksima semajno. 255 00:14:22,620 --> 00:14:26,400 Tio signifas ke mi povas vere viziti retpaĝojn 256 00:14:26,400 --> 00:14:30,480 interne de mia aparaton uzante retumilo ene la aparaton 257 00:14:30,480 --> 00:14:33,600 aŭ eĉ en mia propra komputilo, mia Mac aŭ mia komputilo. 258 00:14:33,600 --> 00:14:37,780 Do kion tio signifas? Ĝi rezultas ke ajna momento, ke vi uzas Linukso komputilo, 259 00:14:37,780 --> 00:14:40,910 lia alnomo estas "loka gastiganto." 260 00:14:40,910 --> 00:14:43,370 Ĝi ne havas nomon de regado ĉar ni ne aĉetis domajna nomo 261 00:14:43,370 --> 00:14:46,590 por ion kiel la aparaton, do ĝia defaŭlta nomo estas loka gastiganto. 262 00:14:46,590 --> 00:14:50,470 >> Sed por atingi la aparaton por komenci servi ĉe retpaĝojn, 263 00:14:50,470 --> 00:14:52,270 ni devas krei ilin unua. 264 00:14:52,270 --> 00:14:55,200 Do ni faru tion. Lasu min iri al terminalo fenestro tie 265 00:14:55,200 --> 00:14:58,190 kaj rimarki ke mi estas cxe mia tipa John Harvard prompto. 266 00:14:58,190 --> 00:15:01,670 Lasu min kaj tajpu ls, kaj ni vidos iujn familiara aferojn de ĉi tiu semestro, 267 00:15:01,670 --> 00:15:04,580 labortablo, downloads, Dropbox ktp, 268 00:15:04,580 --> 00:15:07,540 sed nun ni komencas plenumi nian atenton al kelkaj. 269 00:15:07,540 --> 00:15:11,530 En multaj Linukso ttt-serviloj ne estas tio dosierujo nomita publika html, 270 00:15:11,530 --> 00:15:15,630 sed ni tuj salti ke unu por nun kaj enfokusigi tion, vhosts. 271 00:15:15,630 --> 00:15:18,850 Ĉiu scias kia vhost estas? 272 00:15:18,850 --> 00:15:21,110 Nur stulta slango por virtuala gastiganto, 273 00:15:21,110 --> 00:15:23,850 kaj kion ĉi tio signifas estas ke en tipa servilo 274 00:15:23,850 --> 00:15:26,810 vi povas reale akcepti multnombraj retejoj. 275 00:15:26,810 --> 00:15:31,500 Vi povas aĉeti domajna nomo kiel foo.com, kaj vi povas gastigi ĝin sur servilo. 276 00:15:31,500 --> 00:15:36,100 Sed vi povas ankaŭ aĉeti bar.com kaj gastigi ĝin sur la sama servilo. 277 00:15:36,100 --> 00:15:40,250 La kialo estas, retumiloj estas sufiĉe inteligenta por informi la servilo 278 00:15:40,250 --> 00:15:45,880 kiam uzanto estas petante iun retpaĝon, kio domajna nomo de la uzanto volas la hejmpaĝo por. 279 00:15:45,880 --> 00:15:48,760 Do kio estas agrabla pri ĉi tio vi ne bezonas unu fizika servilo 280 00:15:48,760 --> 00:15:52,040 aŭ unu CS50 aparaton por ĉiu retejo vi eble volas krei. 281 00:15:52,040 --> 00:15:55,520 Vi povas uzi la saman servilon kaj evoluigi cent malsamaj retpaĝaroj. 282 00:15:55,520 --> 00:15:58,770 Kaj efektive, se vi estas persono provas komenci TTT-ejo, 283 00:15:58,770 --> 00:16:02,100 ĉu por amuzo aŭ por komerco, tipe vi iros sur la Interreto, 284 00:16:02,100 --> 00:16:04,650 kaj vi pagos iu dek dolaroj monate, cent dolarojn monate 285 00:16:04,650 --> 00:16:06,670 gastigi vian retpaĝaron por vi. 286 00:16:06,670 --> 00:16:11,060 Kaj la vojon kiu funkcias estas ili ŝarĝo aliaj personoj 287 00:16:11,060 --> 00:16:13,160 dek dolaroj monate aŭ cent dolaroj monate 288 00:16:13,160 --> 00:16:17,200 gastigi fremdajn retejoj sur lia sama servilo. 289 00:16:17,200 --> 00:16:20,740 La motivo povas fari tion estas pro ĉi tiu funkcio nomita bhosts, 290 00:16:20,740 --> 00:16:23,790 sed pli por ke, kiam gxi venas tempo por fino projektoj. 291 00:16:23,790 --> 00:16:28,360 >> Cxar nun, ni nur plonĝi en tie. Do cd vhosts, kaj se mi tajpas ls nun, 292 00:16:28,360 --> 00:16:31,370 rimarkas, ke ekzistas dosierujo en tie nomitaj lokaj gastiganto. 293 00:16:31,370 --> 00:16:33,440 Tio estas ĉar, implicite, la aparaton figuroj 294 00:16:33,440 --> 00:16:36,160 vi iam tuj kuri unu afiŝinto sur aparaton. 295 00:16:36,160 --> 00:16:38,970 Tio ne estas vere la vera mondo, temas ne reala mondo ttt-servilo. 296 00:16:38,970 --> 00:16:41,690 Do lasu min iri en loka gastiganto, kaj nun ni vidos tien 297 00:16:41,690 --> 00:16:44,290 lasta dosierujon nomita HTML. 298 00:16:44,290 --> 00:16:47,080 Do estas iom profunda, la hierarkio, sed se kaj kiam 299 00:16:47,080 --> 00:16:51,230 vi decidas komenci disvolvi multnombraj retejoj dum la venontaj n monatoj aŭ jaroj, 300 00:16:51,230 --> 00:16:54,370 tian dosierujo strukturo emas esti utila. 301 00:16:54,370 --> 00:16:56,560 Nun ni iru al HTML kiel mi ĵus faris, 302 00:16:56,560 --> 00:16:59,010 tipo ls, kaj nenio estas tie. 303 00:16:59,010 --> 00:17:01,390 Do nun ni faru tion. Lasu min malfermi Chrome 304 00:17:01,390 --> 00:17:07,300 ene de la aparaton, kaj lasu min iri al http://localhost. 305 00:17:07,300 --> 00:17:14,440 Do laŭvorte la nomo por mia aparaton, eniru, kaj mi alvenas indekso de /. 306 00:17:14,440 --> 00:17:18,290 Ĉi tio ne vere montras min nenio de intereso, 307 00:17:18,290 --> 00:17:23,400 sed ĝi rezultas ke kion ni vidas estas ke dosierujo, HTML. 308 00:17:23,400 --> 00:17:25,770 Estas nenio ene ol dosierujo ĝuste nun, 309 00:17:25,770 --> 00:17:28,750 do anstataŭe, kion mi tuj devos fari estas unue krei dosieron. 310 00:17:28,750 --> 00:17:33,530 Krei HTML-dosieron kiel ni faris lundon, sed ĉi-foje metis ĝin interne de la aparaton. 311 00:17:33,530 --> 00:17:36,830 Por tiuj el vi, kiuj penas sekvi kune kun porteblaj nun, 312 00:17:36,830 --> 00:17:42,040 lasu min fari unu flanken ke estos kovrita en la ttt-bazita pset, 313 00:17:42,040 --> 00:17:44,280 sed por atingi tiun labori por la unua fojo, 314 00:17:44,280 --> 00:17:49,830 vi tuj devas kuri ĉi komando: sudo servo httpd komenco. 315 00:17:49,830 --> 00:17:52,670 Kaj jen, denove, ripetos en la lastaj pset, 316 00:17:52,670 --> 00:17:55,460 sed se vi ludas kune hejme nun, la TTT-servilo 317 00:17:55,460 --> 00:17:58,660 estas malŝaltita en la aparaton, kaj tio estas tiel, ke ĝi ne SAP ĉe RAM 318 00:17:58,660 --> 00:18:01,960 kaj memoro por 7 semajnoj el la semestro kiam ni ne bezonas ĝin. 319 00:18:01,960 --> 00:18:05,190 Do vi bezonas kuri ĉi komando fojon, kaj vi ricevos potencon tiel. 320 00:18:05,190 --> 00:18:07,920 Tiam vi devus povi ludi kune tie. 321 00:18:07,920 --> 00:18:10,330 Nun ni iru returne en tiu ĉi dosierujo. 322 00:18:10,330 --> 00:18:12,770 Tiu dosierujo estas malplena, do lasu min komenci kreante dosieron, 323 00:18:12,770 --> 00:18:16,360 gedit hello.html. 324 00:18:16,360 --> 00:18:20,930 >> Bone. Gedit estas malfermita, kiel kutime. Lasu min fari DOCTYPE, html, 325 00:18:20,930 --> 00:18:25,270 html, mi get antaŭ mi kaj komenci fermante mia etikedoj anticipe. 326 00:18:25,270 --> 00:18:28,380 Nun mi havas la kapon. Lasu min kaj fermi la kapon, 327 00:18:28,380 --> 00:18:32,450 lasu min nun fari la titolon de la paĝo, saluton mondo kiel lasta fojo, 328 00:18:32,450 --> 00:18:34,790 proksima titolo, nun lasu min fari korpo. 329 00:18:34,790 --> 00:18:38,130 En ĉi tie mi diros saluton, mondo kun iuj exclams 330 00:18:38,130 --> 00:18:40,550 fari certe ke ĝi estas malsama linio. 331 00:18:40,550 --> 00:18:45,800 Fermi korpo, kaj nun lasu min iri antaŭen kaj enarkivigi savi. 332 00:18:45,800 --> 00:18:48,470 Lasu min reiri al mia fina fenestro, kaj se mi tajpas ls, 333 00:18:48,470 --> 00:18:51,830 Mi devus, supozeble, vidu hello.html. Kaj mi faros. 334 00:18:51,830 --> 00:18:55,070 Do nun ni reiros al mia retumilo, klaku reŝargi, 335 00:18:55,070 --> 00:18:58,930 kaj vi povas vidi, ni ja interne de ĉi HTML dosierujo. 336 00:18:58,930 --> 00:19:02,310 Mi ne vidas retpaĝo ankoraŭ, kio estas Apache, la TTT-servilo, 337 00:19:02,310 --> 00:19:04,670 nur montrante al mi la liston enhavon de tiu ĉi dosierujo. 338 00:19:04,670 --> 00:19:08,260 Ĝuste kiel Mac OS aŭ Windows estus tipe fari en via propra loka malmola disko. 339 00:19:08,260 --> 00:19:12,730 Do se mi volas vidi ĉi tiu retpaĝo, mi povas alklaki ĉi ligon iom tie, hello.html, 340 00:19:12,730 --> 00:19:15,160 kaj ja, jen kion mi atendis vidi. 341 00:19:15,160 --> 00:19:18,080 Nun, denove, tio ne estas URL ke iu el vi povas viziti ĝuste nun, 342 00:19:18,080 --> 00:19:20,760 ĉar por vin, lokaj gastiganto, se vi havas porteblan komputilon tien, 343 00:19:20,760 --> 00:19:23,050 estas referenco al via propra petskribo de la aparaton. 344 00:19:23,050 --> 00:19:25,900 Ĉi tiu estas sur mia propra persona aparaton, 345 00:19:25,900 --> 00:19:29,080 sed ĉi tiu estas speco de mutaj por mi havi, havi 346 00:19:29,080 --> 00:19:34,480 uzanto kiel mi alklaku hello.html al reale vidi la enhavon de tiu ĉi paĝo. 347 00:19:34,480 --> 00:19:42,590 Ĝi rezultas ke ttt-serviloj kiel Apache lasu vi havas defaŭlta dosieron por ajna TTT-servilo. 348 00:19:42,590 --> 00:19:44,640 Rimarku tie ni havas hello.html. 349 00:19:44,640 --> 00:19:48,410 Kio estas la komando en Linukso por alinomi dosieron? 350 00:19:48,410 --> 00:19:50,870 >> MV, por movado. Do mi faru tion, 351 00:19:50,870 --> 00:19:55,870 kaj lasu min renomi hello.html al index.html. 352 00:19:55,870 --> 00:19:58,610 Lasu min tajpi ls konfirmi ĝi estas nun renomita. 353 00:19:58,610 --> 00:20:03,250 Nun ĉi tiu tuj - se mi reiros al lokaj gastiganto, 354 00:20:03,250 --> 00:20:06,710 rimarki nun ke mi aŭtomate vidante ke retpaĝo. 355 00:20:06,710 --> 00:20:11,740 Tiu estas identa al mia reale faras / index.html, 356 00:20:11,740 --> 00:20:14,740 sed la bela afero nun estas ke la ttt-servilo estas decidi, 357 00:20:14,740 --> 00:20:18,830 ho, se vi havas dosieron kiu, per homa konvencioj, nomiĝas index.html, 358 00:20:18,830 --> 00:20:21,200 lasu min montri al la uzanto kiu dosiero defaŭlte 359 00:20:21,200 --> 00:20:25,290 anstataŭ iuj stultaj katalogo kantoj kiu estas tute ne uzantamika. 360 00:20:25,290 --> 00:20:28,900 Ja, plej retejoj vi vizitas en la Interreto ne havas liston de dosieroj al alklaku, 361 00:20:28,900 --> 00:20:34,040 ili nur montri al vi la enhavojn. Do jen kiel ni povas fari tion, index.html. 362 00:20:34,040 --> 00:20:37,000 Do tiu estas la tuta amuza kaj bona, sed ĉi tiu estas sufiĉe simpla retpaĝo. 363 00:20:37,000 --> 00:20:41,640 Lasu min kaj malfermu index.html en mia vhosts, 364 00:20:41,640 --> 00:20:47,620 lokaj gastigantoj, html dosierujo, kaj estu la aldonu iom da pli granda intereso. 365 00:20:47,620 --> 00:20:56,120 Do tie estas saluton mondo; ni anstataŭ diri 'Jen CS50, Harvard College aj jaroj. . '. 366 00:20:56,120 --> 00:21:00,000 Do la komenco de la kurso katalogo priskribo de iu tipo tie. 367 00:21:00,000 --> 00:21:03,780 Nun, se mi povos reŝargi, mi devus vidi tion en mia hejmpaĝo. 368 00:21:03,780 --> 00:21:09,560 Konsentite, kaj mi vidas tion, sed supozas ke mi volas nun listigi iuj pli enhavo en ĉi tiu dosiero. 369 00:21:09,560 --> 00:21:15,160 Mi povis iri cxi tie kaj diru kondiĉoj neniu, 370 00:21:15,160 --> 00:21:18,740 kvankam kelkaj el vi verŝajne volas, 'Ha ha ha, ne kondiĉoj.' 371 00:21:18,740 --> 00:21:24,320 Sed - oficiale. Do reŝargi, kaj nun ni havas la saman Quirk kiun ni vidis lastfoje. 372 00:21:24,320 --> 00:21:26,240 Sed kial estas tiu? Ĝi estis simpla riparas. 373 00:21:26,240 --> 00:21:31,440 Kial tiu ĉi paĝo rompita? 374 00:21:31,440 --> 00:21:34,170 [Studento, nekomprenebla] >> Jes, ni solvis tion doni 375 00:21:34,170 --> 00:21:37,440 per eksplicite diras la retumilo 'metis linerompo tie.' 376 00:21:37,440 --> 00:21:39,440 Kaj tio ĉar, denove, retumilo nur faros 377 00:21:39,440 --> 00:21:42,610 eksplicite kion la markado lingvo diras ĝin fari, 378 00:21:42,610 --> 00:21:45,730 tiel kvankam vi eble trafis eniri unufoje aŭ dufoje aŭ eĉ dek fojojn, 379 00:21:45,730 --> 00:21:49,870 ĝi tuj kombini ke ĉiuj enen sola spaco, kun nur konvencio. 380 00:21:49,870 --> 00:21:52,770 Do, se vi vere volas linerompo, vi devas uzi la br etikedo, 381 00:21:52,770 --> 00:21:56,840 kaj nun rimarkas, kiel lundo, mi metis la / ene de ĉi etikedo, 382 00:21:56,840 --> 00:22:00,090 nur pro tio simple ne sentas bone 383 00:22:00,090 --> 00:22:02,990 komenci linerompo tiam halti ĝin kun nenio en inter. 384 00:22:02,990 --> 00:22:07,740 >> Do la konvencio en HTML estas malfermi kaj fermi etikedo samtempe. 385 00:22:07,740 --> 00:22:11,050 Kiel flanken, vi vidos multajn retejojn en libroj ne faras tion. 386 00:22:11,050 --> 00:22:14,240 Estas ĝentile fari aŭ ne fari ĝin, sed ni devus diskuti 387 00:22:14,240 --> 00:22:17,430 ke dezajno-sagxa kaj stile, ĉi tiu estas nur bona 388 00:22:17,430 --> 00:22:20,540 ĉar tiam ĉiu etikedo estas ambaŭ malfermita kaj fermita iel. 389 00:22:20,540 --> 00:22:23,370 Do nun ni savi kaj reŝarĝi. Reiru al la retumilo, okay. 390 00:22:23,370 --> 00:22:26,680 Nun ni fari kelkajn progresojn, sed ĝi ne estas sufiĉe sufiĉas. 391 00:22:26,680 --> 00:22:33,210 Ni iru antaŭen kaj ektajpu en iu pli longa korpo de teksto. 392 00:22:33,210 --> 00:22:40,610 Do ni diru: Rapida bruna vulpo saltas super pigran hundon. " 393 00:22:40,610 --> 00:22:42,700 Kaj nun mi ĵus kopii kaj alglui ĉi kelkajn fojojn 394 00:22:42,700 --> 00:22:45,040 por ke ni havas alineo de teksto. 395 00:22:45,040 --> 00:22:47,780 Lasu min reiri tien. Do ĝi ne serĉis tre bona. 396 00:22:47,780 --> 00:22:50,000 Mi havas linerompo, do estas bone, 397 00:22:50,000 --> 00:22:52,140 sed nun, kiam ni alveni al la punkto de havi retpaĝon 398 00:22:52,140 --> 00:22:55,640 kiu havas multajn enhavo kaj ne nur simpla linioj pruvi HTML, 399 00:22:55,640 --> 00:22:58,570 ni povas komenci pensi pri tio kiel reala alineojn. 400 00:22:58,570 --> 00:23:01,590 Kaj ni povas komenci strukturi nia retpaĝo iom pli pure. 401 00:23:01,590 --> 00:23:05,120 Kaj efektive, kion mi povas fari estas iri tie interne de mia korpo etikedo, 402 00:23:05,120 --> 00:23:09,400 kaj vi scias kion, se 'Ĉi tiu estas CS50. . '. vere demarks la komenco de alineo, 403 00:23:09,400 --> 00:23:11,310 bone, ni tag ĝin kiel tia. 404 00:23:11,310 --> 00:23:13,570 Lasu min indent la teksto, kun nur konvencio, mi diru 405 00:23:13,570 --> 00:23:15,710 ke tiu alineo finiĝas tie, 406 00:23:15,710 --> 00:23:18,320 kaj tiam anstataŭ do ĉi linerompo, lasu min nur diri 407 00:23:18,320 --> 00:23:23,300 ke tio apartenas tie kaj kiel nova alineo, 408 00:23:23,300 --> 00:23:27,610 kaj mi ĵus rapide indent por nur clobbering ĉio ĉi aĵoj. 409 00:23:27,610 --> 00:23:30,660 >> Do nun ni havas dentado paragrafo tie, 410 00:23:30,660 --> 00:23:33,510 kaj nun nia markado komencas ricevi iom pli 411 00:23:33,510 --> 00:23:37,070 semantike kohera kun kion ni provas fari. 412 00:23:37,070 --> 00:23:40,130 Ni havas novan alineon, do ni nomas ĝin paragrafo kun la p etikedo. 413 00:23:40,130 --> 00:23:43,370 Ni havas dua alineo, do ni nomas ĝin paragrafo kun la p etikedo. 414 00:23:43,370 --> 00:23:45,850 Kaj nun, kion la navegador tipe fari 415 00:23:45,850 --> 00:23:48,490 estas ĝuste kiel en angla libro aŭ eseo, 416 00:23:48,490 --> 00:23:51,280 kie vi tipe vidi iujn linisaltojn inter alineoj. 417 00:23:51,280 --> 00:23:53,720 Foliumiloj faros por vi aŭtomate. 418 00:23:53,720 --> 00:23:56,680 Do nun ni havas du alineojn kaj ni povas daŭrigi ĉi. 419 00:23:56,680 --> 00:23:58,770 Sed, kompreneble, en la retejo, kiam vi havas korpojn de teksto 420 00:23:58,770 --> 00:24:01,370 ĝi ne estas tipe nur grandega _blobs_ de teksto. 421 00:24:01,370 --> 00:24:04,040 Estas ofte hiperligoj en tie. 422 00:24:04,040 --> 00:24:07,250 Do, se ni volas, ekzemple, ili inkludas kelkajn ligojn tie, 423 00:24:07,250 --> 00:24:10,760 supozi kio povus esti de intereso en ajna retpaĝo Mi kreas ĉi tie estas - 424 00:24:10,760 --> 00:24:12,780 lasu min iri al Google.com, 425 00:24:12,780 --> 00:24:16,540 kaj lasu min serĉi rapida bruna vulpo. 426 00:24:16,540 --> 00:24:22,150 Iru al Google bildoj, kaj, kion pri - tiu ĉi estas bela. 427 00:24:22,150 --> 00:24:27,420 Ni iros kun ĉi. Do jen ni havas rapidan bruna vulpo jumping super mallaborema hundo. 428 00:24:27,420 --> 00:24:30,560 Do kion mi faros cxi tie, ĝuste pro manifestacio, 429 00:24:30,560 --> 00:24:32,950 estas supozi, ke tiu imago estis sur mia servilo, 430 00:24:32,950 --> 00:24:35,240 kaj mi estis krei tiujn bildojn. 431 00:24:35,240 --> 00:24:38,720 Kion mi nur faris estis dekstre alklaku aŭ kontroli klaku sur la bildo, 432 00:24:38,720 --> 00:24:42,370 kaj kion vi vidas en plej foliumiloj estas iom menuo - 433 00:24:42,370 --> 00:24:48,800 ĉesi fari tion - iom menuo kiu permesas vin elekti kopion ligas situo aŭ kopion URL. 434 00:24:48,800 --> 00:24:52,750 Do lasu min reiri nun al mia HTML, kaj supozu ke mi volas 435 00:24:52,750 --> 00:24:56,420 al hyperlink ĉi tion al alia retpaĝo. 436 00:24:56,420 --> 00:24:58,640 >> Kio estis la etikedo nomita por tiu? 437 00:24:58,640 --> 00:25:01,650 [Studento, nekomprenebla] >> Jes. Do href por hiper referenco. 438 00:25:01,650 --> 00:25:04,660 Lasu min kaj almeti ke in 439 00:25:04,660 --> 00:25:07,290 Ĝi estas bela longa URL, do lasu min zoom reen eksteren. 440 00:25:07,290 --> 00:25:09,950 Fermi krampoj, tiel nun rimarkas mi maniero ĉi tien 441 00:25:09,950 --> 00:25:11,960 ĉar tio URL okazis esti bela longa. 442 00:25:11,960 --> 00:25:15,180 Lasu min rulumi tra tie al la fino de rapida bruna vulpo, 443 00:25:15,180 --> 00:25:18,830 kaj poste mi fermu etikedo kun 00:25:21,280 kie mi nur fermas la nomo de la etikedo. 445 00:25:21,280 --> 00:25:24,470 Nun lasu min antaŭeniri kaj savi la dosieron, reŝarĝi la retpaĝo, 446 00:25:24,470 --> 00:25:27,880 kaj nun, implicite, ke tuj oni substrekis en bluo por mi, 447 00:25:27,880 --> 00:25:31,980 sed vere, mi povas nun alklaku tion kaj voila. Jen tiu bildo. 448 00:25:31,980 --> 00:25:33,990 Kaj ĝi ne devas esti bildo; povis esti ligitaj 449 00:25:33,990 --> 00:25:36,270 al iu alia hazarda paĝo en Interreto. 450 00:25:36,270 --> 00:25:39,610 Mi povus fari tion, ekzemple, kun CS50, do unu lasta ekzemplo tie. 451 00:25:39,610 --> 00:25:42,730 Jen estas CS50 'povus sencon por iri al, href = 452 00:25:42,730 --> 00:25:50,340 http://www.cs50.net, proksime citaĵo, proksime ankro. 453 00:25:50,340 --> 00:25:53,990 Do nun tio estas eĉ mallanga URL, kaj ĉi-foje ni ne tuj ligi al bildo. 454 00:25:53,990 --> 00:25:57,880 Ni anstataŭ tuj ligilon al alia paĝo. 455 00:25:57,880 --> 00:25:59,840 Nun, ni havas bildon tie. 456 00:25:59,840 --> 00:26:02,970 Mi sentas min kiel ni povas fari iom pli bona ol nur ligi al bildo. 457 00:26:02,970 --> 00:26:05,760 Kio se ni volas vere korpigi ĝin en nia propra retpaĝo? 458 00:26:05,760 --> 00:26:09,290 >> Nu, kion mi povas fari tie estas, anstataŭ ligas al ĉi tiu grafikaĵo, 459 00:26:09,290 --> 00:26:14,690 lasu min anstataŭ tranĉi la URL, kaj ni liveri de tiu hyperlink kaj purigi ĉi supre. 460 00:26:14,690 --> 00:26:17,190 Kaj ni iros malsupren tie kaj forigi ĉi. 461 00:26:17,190 --> 00:26:20,910 Ni ne vere bezonas cxiujn tiujn frazojn nun, do lasu min mallongigi la paĝon iomete. 462 00:26:20,910 --> 00:26:24,530 Kaj poste malsupren tie lasu min iri antaŭen en nova alineo, 463 00:26:24,530 --> 00:26:30,100 diras, ke mi ne volas teksto nun, mi volas bildon kies fonto tuj estos tiu URL. 464 00:26:30,100 --> 00:26:33,100 Bildo, kiel linerompo, estas ĉu ekzistas aŭ ne estas. 465 00:26:33,100 --> 00:26:35,900 Do mi tuj fermi la etikedo. 466 00:26:35,900 --> 00:26:39,440 Lasu min nun kaj fermas la paragrafo ke mi estas ene, 467 00:26:39,440 --> 00:26:43,010 kaj se ĉiu iras bone saluton, mondo, se mi povos reŝargi nun, 468 00:26:43,010 --> 00:26:45,520 Mi ja vidas tute interne mia propra retpaĝo bildon. 469 00:26:45,520 --> 00:26:48,570 Do nun ni havas bildon etikedo, ankron etikedo kaj similaj, 470 00:26:48,570 --> 00:26:51,320 kaj por bonan mezuron, lasu min fari unu alia afero ke tio ofte neglektata 471 00:26:51,320 --> 00:26:55,900 en retejoj tiuj tagoj: Ni provizi iujn priskriba teksto por ĉi tiu bildo 472 00:26:55,900 --> 00:26:58,090 por homoj kiuj estas sur movkomputilo 473 00:26:58,090 --> 00:27:00,640 kaj sekve eble ne povos elŝuti ĉi bildon tre rapide, 474 00:27:00,640 --> 00:27:03,310 por homoj, kiuj estas blindaj kaj eble ne povos vidi la bildon 475 00:27:03,310 --> 00:27:06,480 sed ili eble havas ekranon leganto kiu povas diri al ili kion ĉi tiu bildo estas de. 476 00:27:06,480 --> 00:27:09,100 Kaj fari tion, estas alia atributo por bildon-etikedoj 477 00:27:09,100 --> 00:27:11,290 vokis alt, por alternativaj tekston. 478 00:27:11,290 --> 00:27:14,650 Kaj kion mi povos fari tie diros: Tio estas rapida bruna vulpo. 479 00:27:14,650 --> 00:27:17,650 Tiel ke eĉ se la homa ne povas vidi la bildon sur la ekrano, 480 00:27:17,650 --> 00:27:20,560 li aŭ ŝi povas almenaŭ aŭdi, kiel kun iu peco de programaro, 481 00:27:20,560 --> 00:27:23,080 kio vere estas tie en la ekrano. 482 00:27:23,080 --> 00:27:25,040 >> Tio ne ŝanĝas la estetiko de la paĝo, 483 00:27:25,040 --> 00:27:27,640 sed estas sendube bona praktiko por uzantoj. 484 00:27:27,640 --> 00:27:31,760 Bone, ni lasu tiun ĉi paĝon en sia nuna formo, 485 00:27:31,760 --> 00:27:33,890 sed ni vidu, se ni ne povas nun prezenti 486 00:27:33,890 --> 00:27:36,210 iuj bona alirojn al skribi tiujn retpaĝojn, 487 00:27:36,210 --> 00:27:39,980 iuj lecionoj kiuj tuj servos al ni krom niaj paĝoj ricevas pli kaj pli kompleksa. 488 00:27:39,980 --> 00:27:42,220 Kion ni ne faros dum la venontaj semajnoj 489 00:27:42,220 --> 00:27:46,810 estas promeni vi tra ĉiuj kelkdek HTML etikedoj kiuj estas. 490 00:27:46,810 --> 00:27:49,800 Multe kiel en nulo reen en semajno 0, ĝi probable estos sufiĉi 491 00:27:49,800 --> 00:27:52,120 doni altnivela superrigardon de kelkaj el la konceptoj, 492 00:27:52,120 --> 00:27:54,530 rapida ĝiras de kelkaj el la blokoj vi probable povos, 493 00:27:54,530 --> 00:27:58,240 bela komforte, por navigi en via propra, la diversaj puzlo pecojn. 494 00:27:58,240 --> 00:28:00,460 Kaj tio okazos denove en HTML, tre probable, 495 00:28:00,460 --> 00:28:04,320 per ekzistas ampleksaj rimedoj en la Reto ke ni notas vin, 496 00:28:04,320 --> 00:28:06,920 diversaj lernolibroj, se vi preferas legi lernolibron, 497 00:28:06,920 --> 00:28:10,560 kiu iras al vi tra ĉiuj el la diversaj aferoj, kiujn vi povas fari kun HTML, 498 00:28:10,560 --> 00:28:16,100 sed vere, ni vidis ĝis nun en HTML plejparto de la fundamentaj konceptoj. 499 00:28:16,100 --> 00:28:19,900 Ni havas la nocion de etikedoj esti malfermu, etikedoj esti fermita. 500 00:28:19,900 --> 00:28:22,100 Iuj etikedoj kiuj ambaŭ malfermis kaj fermis 501 00:28:22,100 --> 00:28:24,620 en la senco ke ili estas malplenaj; devus esti nenio ene de ili 502 00:28:24,620 --> 00:28:27,490 kiel bildo etikedo aŭ linerompo, kiuj estas ĝuste tie. 503 00:28:27,490 --> 00:28:32,330 Ni ankaŭ rigardis jam en la nocio de atributo, kiel alt aŭ fonto. 504 00:28:32,330 --> 00:28:36,410 Avizo, ke tiuj vortoj emas, per konvencio, esti mallonga kaj konciza. 505 00:28:36,410 --> 00:28:39,140 >> Ni ne havas bontrovo super kio tio estas nomitaj, 506 00:28:39,140 --> 00:28:42,060 iu alia kiu elpensis HTML suprenvenis kun tiuj nomoj. 507 00:28:42,060 --> 00:28:44,710 Do vi nur devas komenci al koni aŭ serĉi, ajna tempo vi bezonas ilin, 508 00:28:44,710 --> 00:28:47,160 kion la nomoj estas por ĉi tiuj etikedoj kaj atributoj. 509 00:28:47,160 --> 00:28:49,510 En la kazo de tiuj atributoj, atribuas ĝenerale 510 00:28:49,510 --> 00:28:52,900 modifi la konduton de iuj etikedo. 511 00:28:52,900 --> 00:28:55,710 En ĉi tiu kazo, la fonto atributo rakontas la bildo etikedo 512 00:28:55,710 --> 00:28:57,940 kion la fonto de la bildo estu. 513 00:28:57,940 --> 00:29:04,460 La href atributo rakontas la ankron etikedo kio devus reale esti ligas al. 514 00:29:04,460 --> 00:29:06,800 Sed en terminoj de la strukturo de retpaĝo, kvankam Facebook 515 00:29:06,800 --> 00:29:09,680 kaj Google kaj similaj rigardu kiel kompleta salaton 516 00:29:09,680 --> 00:29:12,560 sub la kapuĉo unuavide, se vi komencos legi per ĝi 517 00:29:12,560 --> 00:29:16,950 pli metode, ili cxiuj sekvi tiun baza, baza strukturo. 518 00:29:16,950 --> 00:29:19,660 Sed ni povas plibonigi la estilización pri tio. 519 00:29:19,660 --> 00:29:24,180 Do lasu min iri al kelkaj ekzemploj kiujn mi preparis anticipe. 520 00:29:24,180 --> 00:29:27,280 Lasu min kaj kopii ilin de alia dosierujo tie 521 00:29:27,280 --> 00:29:29,380 kaj metis ilin en tiu ĉi dosierujo. 522 00:29:29,380 --> 00:29:32,210 Anticipe, kion mi faris estis prepari kelkajn dosierojn: 523 00:29:32,210 --> 00:29:35,670 search0, search1, search2, kaj search3 kaj 4. 524 00:29:35,670 --> 00:29:38,740 Lasu min kaj malfermu la unua de tiuj dosieroj, 525 00:29:38,740 --> 00:29:42,570 kaj ni vidu, se ni ne povas komenci krei nian propran serĉilo. 526 00:29:42,570 --> 00:29:46,530 Sur la supro de ĉi tiu dosiero, kiel estas ordinare la kazo en klaso, nur aron da komentoj. 527 00:29:46,530 --> 00:29:49,760 En HTML, tamen, la rimedoj, per kiuj oni komencas komenton 528 00:29:49,760 --> 00:29:55,640 estas 00:29:59,800 Kiam vi estas preta por deteni ke komenton, vi povas fari ->. 530 00:29:59,800 --> 00:30:02,380 Do ĉio ĉe la supro en bluo estas nur komento. 531 00:30:02,380 --> 00:30:04,620 >> Ĉi tio estas mia DOCTYPE deklaro, kiu denove, 532 00:30:04,620 --> 00:30:07,080 vi povas simple kopii kaj almeti la fido, por nun. 533 00:30:07,080 --> 00:30:10,410 Tiu simple rakontas la retumilo, 'Jen venas iu HTML 5.' 534 00:30:10,410 --> 00:30:13,600 Sub kiu, en linio 14, estas la unua el miaj realaj etikedoj, 535 00:30:13,600 --> 00:30:16,900 kaj ĉi nur diras, kiel antaŭe, tie venas iu HTML, 536 00:30:16,900 --> 00:30:19,460 jen la kapon de mia paĝo, tie venas la titolo, 537 00:30:19,460 --> 00:30:23,900 kaj tiam, male, tio estas por la titolo, jen por la kapo. 538 00:30:23,900 --> 00:30:26,460 Jen nun venas la korpo de mia paĝo. 539 00:30:26,460 --> 00:30:31,040 Do kelkaj novaj etikedoj nun: h1 staras por kapo 1. 540 00:30:31,040 --> 00:30:33,850 Estas tradicio en HTML por multaj jaroj malantaŭen 541 00:30:33,850 --> 00:30:37,990 havi malsamajn grandecojn de teksto. 542 00:30:37,990 --> 00:30:41,980 Kaj reen en la tago, ĉiu signifis, ĝenerale, nur grandaj kaj grasaj. 543 00:30:41,980 --> 00:30:45,860 Sed estas ankaŭ h2, kiu estas granda sed ne sufiĉe tiel grandaj kaj grasaj. 544 00:30:45,860 --> 00:30:49,320 Estas h3, kiu estas speco de granda sed ne preskaux granda kaj aŭdaca, 545 00:30:49,320 --> 00:30:52,380 kaj tiel plu, la tutan vojon malsupren al h6. 546 00:30:52,380 --> 00:30:55,550 Tiuj tagoj, tamen, h1, h2 kaj h3 vere signifis 547 00:30:55,550 --> 00:30:57,980 por havi pli semantikan signifon al ili, 548 00:30:57,980 --> 00:31:01,100 per h1 estas vere rubro: la rubriko de reta paĝo, 549 00:31:01,100 --> 00:31:04,210 la rubriko de kolumno aŭ ion kiel tiu de teksto. 550 00:31:04,210 --> 00:31:09,030 Do mi intence diris h1 CS50 serĉo> h1 551 00:31:09,030 --> 00:31:12,640 al specifiy ke ĉi tio estas vere la rubro, la titolo de mia paĝo. 552 00:31:12,640 --> 00:31:14,850 Ne la titolon en la titolo trinkejo senso, 553 00:31:14,850 --> 00:31:18,960 sed la titolo kiun vi vere vidas en la retpaĝo mem, en la korpo. 554 00:31:18,960 --> 00:31:20,990 Nun ĉi tio, vi povas verŝajne diveni kio estas, 555 00:31:20,990 --> 00:31:23,110 eĉ kvankam ni havas kelkajn novajn pecojn de sintakso. 556 00:31:23,110 --> 00:31:25,930 Tio estas formo. Do la retejo vere ricevas interesajn 557 00:31:25,930 --> 00:31:28,770 kiam retejoj preni enigo de uzantoj. 558 00:31:28,770 --> 00:31:31,700 En ĉi tiu klaso, en la problemo surtabligis retejo programado, 559 00:31:31,700 --> 00:31:33,880 ni ne tuj faros TTT-ejo, per, 560 00:31:33,880 --> 00:31:37,570 kun statika enhavo kiu montras fotojn kiujn vi prenis, 561 00:31:37,570 --> 00:31:40,010 aŭ ĉi estas mia vivresumo, kaj aferojn pri mi, 562 00:31:40,010 --> 00:31:42,450 ĉar tio estas relative facila por meti kune. 563 00:31:42,450 --> 00:31:44,400 Estas malfacile fari tion bela en la TTT, 564 00:31:44,400 --> 00:31:46,390 sed almenaŭ metante enhavo estas sufiĉe banala. 565 00:31:46,390 --> 00:31:49,380 Sed aĵoj vere interesa kiam iu povas viziti vian retejon 566 00:31:49,380 --> 00:31:52,260 kaj provizu enigo kaj povas plenigi formoj, 567 00:31:52,260 --> 00:31:55,800 povas kontroli ekstere markobutonojn kaj povas interagi kun viaj retejo. 568 00:31:55,800 --> 00:31:57,780 Kaj efektive, probable ĉiu paĝo vi zorgas pri 569 00:31:57,780 --> 00:32:00,710 tiujn tagojn, en ĉiu detalo, estas iel interaga. 570 00:32:00,710 --> 00:32:03,110 Facebook, Google, kaj similaj, kiuj uzanto enigo 571 00:32:03,110 --> 00:32:05,100 kaj produkti akomoditan eligo. 572 00:32:05,100 --> 00:32:07,780 >> Do ni komencu fari tion nun. Estu la transiro nun 573 00:32:07,780 --> 00:32:11,150 el ĝuste uzi HTML por markado de statika enhavo 574 00:32:11,150 --> 00:32:14,790 kiel anstataŭ transdono mekanismo por dinamika enhavo. 575 00:32:14,790 --> 00:32:17,350 Kaj al tiu celo, ni apliki niajn proprajn serĉilo. 576 00:32:17,350 --> 00:32:20,820 Ni faru tion jene. Jen la formo etikedo. 577 00:32:20,820 --> 00:32:24,090 La ago atributo precizigas ke kiam la uzanto plenigas tiun formularon 578 00:32:24,090 --> 00:32:28,400 per sia klavaro, estos donita al ĉi URL tie. 579 00:32:28,400 --> 00:32:31,230 Do mi estas speco de kaptiloj. Ĝi okazas porti nin iomete pli longa 580 00:32:31,230 --> 00:32:33,780 ol unu klaso al apliki la tuta serĉilon, 581 00:32:33,780 --> 00:32:35,880 do ni nur faru la antaŭan fino, por tiel diri. 582 00:32:35,880 --> 00:32:38,650 Ni faros la parto kiu lasas al la uzanto serĉo, kaj ni ordigi de liberigas al Google 583 00:32:38,650 --> 00:32:40,950 la malmola parto de trovo serĉrezultoj, 584 00:32:40,950 --> 00:32:43,520 sed, specife, mi tuj parolos al Google retservilo 585 00:32:43,520 --> 00:32:46,710 uzante unu el du tre popularaj metodoj. 586 00:32:46,710 --> 00:32:50,000 Unu esti get, alia, ke ni fine vidas, estante post, 587 00:32:50,000 --> 00:32:52,660 kvankam ekzistas aliaj kiuj malpli ofte uzataj. 588 00:32:52,660 --> 00:32:56,440 Do nepre nur conjures la ideon de, mi volas ricevi iun enhavon, get iuj rezultoj de serĉo. 589 00:32:56,440 --> 00:32:58,440 Ĉi, vi povas eble diveni kion ĉi faras. 590 00:32:58,440 --> 00:33:01,900 Tio estas ia enigo, ĝi estas, fakte, tuj serĉos kiel teksto kampo, 591 00:33:01,900 --> 00:33:05,200 kaj la nomo de tiu enigo, la nomo de tiu variablo, por tiel diri, 592 00:33:05,200 --> 00:33:08,610 tuj estos q por konsulto de konvencio. 593 00:33:08,610 --> 00:33:11,700 Kaj denove, la tipo de ĉi enigo ne tuj estos checkbox; 594 00:33:11,700 --> 00:33:13,890 ĝi ne tuj estos menuo; ĝi tuj estos tekston kampo 595 00:33:13,890 --> 00:33:18,060 kiel skribata ĉi atributo tie, kaj tiu teksto skatolo, 596 00:33:18,060 --> 00:33:20,680 kiel linerompo, estas ĉu ekzistas aŭ ne. 597 00:33:20,680 --> 00:33:24,480 Do ni havas malplenan elemento kun la oblikvo ene ol etikedo. 598 00:33:24,480 --> 00:33:28,050 Tiam Mi tuj metos linion ripozon, kaj vi povas, eble, divenu kion ĉi tuj faros. 599 00:33:28,050 --> 00:33:30,210 Tio estas alia speco de formo enigo. 600 00:33:30,210 --> 00:33:32,350 >> Ĉi tiu okazas al esti uzita por submeti la formo. 601 00:33:32,350 --> 00:33:36,140 Do tiu tuj estos la granda butono kiu la uzanto povas klaki por submeti la formo, 602 00:33:36,140 --> 00:33:40,800 kaj la stampo sur tiu butono tuj estos 'CS50 Serĉu. 603 00:33:40,800 --> 00:33:44,170 Fermi formo, proksime korpo, proksime HTML. 604 00:33:44,170 --> 00:33:46,280 Ni vidu kion ni havas en la formo de ĉi tiu retpaĝo. 605 00:33:46,280 --> 00:33:48,260 Do mi iros al mia krozilo, 606 00:33:48,260 --> 00:33:50,360 lasu min iri, ankoraŭ, al lokaj gastiganto. 607 00:33:50,360 --> 00:33:54,650 Ĉi tiu estas ankoraŭ index.html, do se mi volas vidi ĉi tiun dosieron nomata search0, 608 00:33:54,650 --> 00:33:59,710 Mi povas simple fari / search0.html, eniru - 609 00:33:59,710 --> 00:34:01,880 kaj la unua el miaj eraroj. 610 00:34:01,880 --> 00:34:04,400 Kio okazas? Mi klare ne rajtas 611 00:34:04,400 --> 00:34:06,430 aliri ĉi tiun dosieron, por iu kialo. 612 00:34:06,430 --> 00:34:10,170 Sed tio estas ĉar, malsame al la laboro ni faris ĝis nun en C, 613 00:34:10,170 --> 00:34:14,340 kie la programoj kiujn vi skribas estas alprenita al esti runable de vi, 614 00:34:14,340 --> 00:34:17,590 plenumebla de vi, tio ne estas vere la kazo sur la retejo, 615 00:34:17,590 --> 00:34:21,010 per kelkfoje vi eble volas krei dosierojn en servanto, 616 00:34:21,010 --> 00:34:23,310 sed vi ne volas ke la tuta mondo por povi vidi ilin. 617 00:34:23,310 --> 00:34:25,469 Pli ĝuste, vi volas ke la mondo vidu iun dosieroj 618 00:34:25,469 --> 00:34:27,730 sed ne aliaj, nur por privatecon de sake. 619 00:34:27,730 --> 00:34:30,730 Do ĝi estas pli de opt-in bazo kiam vi faras tion en la TTT. 620 00:34:30,730 --> 00:34:32,810 Kaj tial mi vere tajpi ls tie, 621 00:34:32,810 --> 00:34:37,440 kaj vi vidos la dosierojn mi havas, sed memori, ke se mi faras ls-l longe, 622 00:34:37,440 --> 00:34:41,520 Mi ricevos pli longa listo kiu donas al mi iom pli da detaloj pri ĉi tiuj dosieroj 623 00:34:41,520 --> 00:34:45,139 kiuj estas nun, vere, por la unua fojo rilatajn al ni. 624 00:34:45,139 --> 00:34:47,840 Rimarku ke en la ekstrema dekstrularo estas la nomoj de miaj dosieroj, 625 00:34:47,840 --> 00:34:50,690 kaj tiam la tempo je kiu ili Laste redaktita je aŭ kopiitaj. 626 00:34:50,690 --> 00:34:54,370 Ĉi tiu nombro jen kio? Ĉu vi memoras? 627 00:34:54,370 --> 00:34:56,400 La grandeco en bajtoj, kiel granda la dosiero. 628 00:34:56,400 --> 00:34:59,520 >> Do mi ŝajnas havi ian logo en tie estas pli granda ol cxiuj aliaj dosieroj. 629 00:34:59,520 --> 00:35:03,610 Ĉi tiu estas, kiu mi estas, tion mi estas kaj kion grupo mi in 630 00:35:03,610 --> 00:35:07,430 Sed tiam, super tie maldekstre estas iom de kripta vico, 631 00:35:07,430 --> 00:35:10,040 kaj ni parolis, mi pensas, mallonge pri tio en la pasinteco, 632 00:35:10,040 --> 00:35:12,050 sed ĉi tio devas vidi kun permesoj. 633 00:35:12,050 --> 00:35:14,020 Kaj eĉ se tiu estas iom malprecizaj, 634 00:35:14,020 --> 00:35:17,270 RW probable signifas legis & skribi. 635 00:35:17,270 --> 00:35:22,560 Do rezultas ke tiuj strekoj signifi malsamajn arojn de permesoj por malsamaj homoj. 636 00:35:22,560 --> 00:35:24,730 Kaj la ŝablono estas, esence, kiel sekvas. 637 00:35:24,730 --> 00:35:27,650 Kiam vi vidas vico de strekoj tie, ili aspektas kiel sekvas. 638 00:35:27,650 --> 00:35:30,450 Jen haltostreko, tiam ekzistas tri pli strekoj, 639 00:35:30,450 --> 00:35:33,390 tiam tie estas alia tri, tiam tie estas alia tri. 640 00:35:33,390 --> 00:35:36,800 La unua estas ĉu strekon aŭ ĝia anonco de dosierujo. 641 00:35:36,800 --> 00:35:40,220 Por ke oni estas sufiĉe facila. Se ĝi estas dosierujo, diras d, alie ĝi estas streketo. 642 00:35:40,220 --> 00:35:44,080 Jen kelkaj aliaj kazoj, sed por nun ni nur zorgas pri dosieroj kaj dosierujoj. 643 00:35:44,080 --> 00:35:48,090 Tiuj tri sekvaj strekoj - kaj mi artefarite insertos la spacoj. 644 00:35:48,090 --> 00:35:50,490 Ili estis, evidente, ne tie, kiam ni vidis ilin antaŭ momento. 645 00:35:50,490 --> 00:35:52,900 Ĉi tiuj estas la dosiero mastro permesoj, 646 00:35:52,900 --> 00:35:55,840 kaj memori de dua monato, ke ĝi legis & skribi. 647 00:35:55,840 --> 00:35:58,560 Tio estis ĉar mi, kiel la persono kiu kreis ĉi tiun dosieron antaŭ momento, 648 00:35:58,560 --> 00:36:01,250 Mi, nur implicite, en Linukso komputilo, 649 00:36:01,250 --> 00:36:03,910 havas la kapablon por daŭrigi legante kaj skribante ke dosiero. 650 00:36:03,910 --> 00:36:07,170 >> Do la mastruma sistemo nur donas al mi RW aŭtomate. 651 00:36:07,170 --> 00:36:10,840 Meze aĵoj rilatas al mia grupo, kiu de studentoj, 652 00:36:10,840 --> 00:36:14,590 kiu estas speco de sensignifa en la aparaton ĉar mi estas la sola persono uzanta la aparaton. 653 00:36:14,590 --> 00:36:16,620 Do mi simple skuu miajn manojn en tiu ĉimomente. 654 00:36:16,620 --> 00:36:19,190 Sed la lastaj estas pli gravaj por la TTT. 655 00:36:19,190 --> 00:36:21,580 Jen ĉiuj aliaj en la mondo, kaj la fakto 656 00:36:21,580 --> 00:36:24,600 ke tio estas --- signifas ke neniu alia en la mondo 657 00:36:24,600 --> 00:36:26,680 havas neniun permesojn al ĉi tiu dosiero. 658 00:36:26,680 --> 00:36:29,180 Klare estas problemo, do mi devas redifini tiun 659 00:36:29,180 --> 00:36:33,830 per iel donante al la mondo kio? Legu & skribi? 660 00:36:33,830 --> 00:36:35,850 Tio probable muta, ĉu ne? Mi ne volas ke neniu en la TTT 661 00:36:35,850 --> 00:36:38,530 iri por viziti mian paĝon kaj iel ŝanĝas tiu dosiero, 662 00:36:38,530 --> 00:36:40,800 kvankam ili vere ne povis kun HTML-dosiero, 663 00:36:40,800 --> 00:36:44,110 sed gxuste en komenco, probable nur volas ilin por povi legi ĝin. 664 00:36:44,110 --> 00:36:47,910 Kion ĝi signifas por legi ĝin? Ĝi ne signifas ke ili tuj zorgas pri la efektiva HTML, 665 00:36:47,910 --> 00:36:51,820 sed la retumilo bezonas por povi analizi ke markado lingvo, 666 00:36:51,820 --> 00:36:53,720 supre sube, maldekstre dekstren. 667 00:36:53,720 --> 00:36:57,990 Do iu en la TTT bezonas por povi legi ĝin, do mi minimume bezonas por doni ĝin r. 668 00:36:57,990 --> 00:37:00,240 Mi povas fari tion en kelkaj diversaj manieroj, sed eble 669 00:37:00,240 --> 00:37:03,080 la plej simpla estas kuri ĉi komando tie. 670 00:37:03,080 --> 00:37:10,860 Chmod, ŝanĝi modon, tiam a + r tiel ĉiuj, ĉiuj en la mondo + legi, 671 00:37:10,860 --> 00:37:13,830 kaj tiam la nomo de la dosiero, search0.html. 672 00:37:13,830 --> 00:37:18,310 >> Nun se mi faras ls-l denove, rimarki ke tiu dosiero ŝanĝiĝis, 673 00:37:18,310 --> 00:37:21,440 kaj ja, mi turnis sur r por ĉiuj. 674 00:37:21,440 --> 00:37:23,350 Mi ankaŭ turnis ĝin sur mia grupo, sed tio estas bone, 675 00:37:23,350 --> 00:37:27,150 ĉar se mi turnis en la por ĉiuj, mia grupo estas subaro de tiu. 676 00:37:27,150 --> 00:37:31,480 Por ke estas bone ankaŭ. Tiu simple signifas la komputilo nun faris legebla. 677 00:37:31,480 --> 00:37:34,430 Nun mi reiros al mia retumilo, klaku reŝargi. 678 00:37:34,430 --> 00:37:36,330 Ha-ha. Ni nun havas CS50 Search. 679 00:37:36,330 --> 00:37:39,830 Mi zoomed en iom artefarite - bela hida serĉilo. 680 00:37:39,830 --> 00:37:41,930 Sed ni vidu se ĝi efektive funkcias. 681 00:37:41,930 --> 00:37:45,880 Unue, lasu min fari rapidan prudento ĉeko, lasu min kontroli klaku kaj vidi paĝon fonto. 682 00:37:45,880 --> 00:37:50,780 Rimarku ke ene Chrome ni nun vidas la saman HTML, ke mi mem kreis. 683 00:37:50,780 --> 00:37:55,420 Ili ne konfuzi ĉi tie, tamen. Mi ne povas komenci ŝanĝi la kodon ĉi tie, 684 00:37:55,420 --> 00:37:59,420 ĉar la retumilo havas nurlega vido de tiu kodo. 685 00:37:59,420 --> 00:38:06,060 La retumilo ĵus demandis loka gastiganto por dosiero nomata search0.html. 686 00:38:06,060 --> 00:38:09,490 Ĝi estas nun pura koincido ke la aparaton 687 00:38:09,490 --> 00:38:13,480 hazarde estas en la sama komputilo kiel mia retumilo. 688 00:38:13,480 --> 00:38:20,470 Mi povis nur devas, ekvivalente, ili tajpis en www.facebook.com/search0.html, 689 00:38:20,470 --> 00:38:23,830 kaj se Facebook havis dosieron nomatan tio, mi devus tiam esti vidinte ilian HTML. 690 00:38:23,830 --> 00:38:27,360 Kaj, kompreneble, mi ne povas ŝanĝi la dosieron kiu revenas de Facebook, ĉu. 691 00:38:27,360 --> 00:38:29,360 Do nun ni estas speco de desdibujando la linioj. 692 00:38:29,360 --> 00:38:32,130 La aparaton estas ambaŭ servilo, utilante supren retpaĝojn, 693 00:38:32,130 --> 00:38:34,870 sed estas ankaŭ kliento en la senco ke mi uzas legilo 694 00:38:34,870 --> 00:38:37,630 por fakte parolas al tiu servilo. 695 00:38:37,630 --> 00:38:39,610 Do ni vidu se mia Google serĉilon funkcias. 696 00:38:39,610 --> 00:38:44,930 Lasu min kaj serĉi rapida bruna vulpo, eniru. 697 00:38:44,930 --> 00:38:47,540 Kaj voila, mi nun havas mian propran serĉilo. 698 00:38:47,540 --> 00:38:51,460 >> Sed kiel faras ĉi tiu laboro? 699 00:38:51,460 --> 00:38:55,380 Iom de trecho, sed - kaj nun vi ne povas vidi, ĝuste, la parto kiu estas de intereso. 700 00:38:55,380 --> 00:38:57,370 Rimarki kio okazas. 701 00:38:57,370 --> 00:39:00,430 Rimarki la URL. Rezultas, ke tiu metodo, 702 00:39:00,430 --> 00:39:02,780 vokis get, estas super-simpla. 703 00:39:02,780 --> 00:39:10,270 Kiam vi specifi en formo kiu vi volas 'get' rezultoj de iu servilo, 704 00:39:10,270 --> 00:39:13,200 kio okazas al fari estas preni kion ajn vi tajpis en la formon 705 00:39:13,200 --> 00:39:15,290 kaj metis ĝin en la URL. 706 00:39:15,290 --> 00:39:18,580 Ĝi tuj normigi kiel gets meti en la URL jene. 707 00:39:18,580 --> 00:39:22,290 Rimarku ke tiu estas la URL kiu estis la valoro de mia agado atributo. 708 00:39:22,290 --> 00:39:24,730 Tie estas kie mi volis la formon por fini. 709 00:39:24,730 --> 00:39:26,950 Sed tiam rimarkos ĉi demandosigno. 710 00:39:26,950 --> 00:39:30,230 Tio estas konvencio en la TTT per havigi uzanto enigo 711 00:39:30,230 --> 00:39:35,320 al retejo, vi aldonas al la URL demandon marko, 712 00:39:35,320 --> 00:39:38,330 kaj tiam vi havos tutan faskon da ŝlosilaj valoro paroj. 713 00:39:38,330 --> 00:39:42,380 La nomo de klavo, alie sciata kiel parametro en la retejo, 714 00:39:42,380 --> 00:39:46,380 tiam vi havas egalan signon, tiam vi havas la valoron de tiu parametro. 715 00:39:46,380 --> 00:39:49,810 Do ĝi estas esence ŝanĝiĝema nomon kaj variablo valoron, 716 00:39:49,810 --> 00:39:54,250 sed tiuj variabloj de nomoj kaj valoroj venis de la HTML formo. 717 00:39:54,250 --> 00:39:56,250 Kial la pluses tie, ĉu vi opinias? 718 00:39:56,250 --> 00:39:59,340 Ĉar mi ne tajpi + en inter miaj vortoj. 719 00:39:59,340 --> 00:40:01,430 [Studento, nekomprenebla] 720 00:40:01,430 --> 00:40:05,080 >> Jes, ĝi estas nur por Interspacigo. Odds estas, kiam vi vidis la URL, 721 00:40:05,080 --> 00:40:07,320 ekzistas neniam ajn spacoj en ĝin, se nur ĉar 722 00:40:07,320 --> 00:40:09,440 se estus, vi ne povus vere kopii kaj alglui ĝin 723 00:40:09,440 --> 00:40:12,700 enen IM aux en retmesaĝon ĉar tio rompus. 724 00:40:12,700 --> 00:40:15,420 Vi volas la tuta afero estos unu apuda linio de signoj. 725 00:40:15,450 --> 00:40:18,450 >> Do la foliumilo estas sufiĉe inteligenta por realigi, uh-uh. 726 00:40:18,450 --> 00:40:22,610 Ne nur metis spacon tie. Lasu min kodi la spaco en iu norma maniero. 727 00:40:22,610 --> 00:40:25,170 Unu el la konvencioj por fari ĝin estas havi la retumilo 728 00:40:25,170 --> 00:40:29,350 aŭtomate metas + kie vi devus alie havas spacon. 729 00:40:29,350 --> 00:40:32,140 Do nun, avizo Google estis speco de uzantamika. 730 00:40:32,140 --> 00:40:34,380 Mi certe ne kreis tiun ĉi paĝon, 731 00:40:34,380 --> 00:40:37,200 sed ili prepopulated ilia propra teksto kampo 732 00:40:37,200 --> 00:40:39,490 kun kio, precize, mi tajpis in 733 00:40:39,490 --> 00:40:43,090 Supozu mi volas serĉi ion alian, kiel pigra hundo. 734 00:40:43,090 --> 00:40:45,340 Mi povas simple tajpi ĉi tie, re-serĉo. 735 00:40:45,340 --> 00:40:47,730 Rimarku ke la URL ŝanĝas tien, 736 00:40:47,730 --> 00:40:51,390 sed rimarkas tiam ke mi povas vere serĉi ion mi volas 737 00:40:51,390 --> 00:40:53,610 nur kompreni kiel URLoj laboro. 738 00:40:53,610 --> 00:40:56,840 Mi povus fari mallaborema kato, eniri, 739 00:40:56,840 --> 00:41:01,370 kaj rimarki nun mi ricevas tre pigra - ni? Mi sentas, ke ni devus. 740 00:41:01,370 --> 00:41:09,900 Mi alvenas tre mallaborema kato. 741 00:41:09,900 --> 00:41:11,930 Bone. Tiu estas unu el la stupidest aferoj ni faris. 742 00:41:11,930 --> 00:41:17,160 Sed tio estas mallaborema kato. 743 00:41:17,160 --> 00:41:19,730 Cxiuokaze, kio estas la ŝlosilo takeaway tie? 744 00:41:19,730 --> 00:41:22,830 Nun ni estas speco de ludi en la mondo de HTTP. 745 00:41:22,830 --> 00:41:26,050 HTML estas ĝuste ĉi tiu markado lingvo, malfermita etikedo, proksime etikedo, 746 00:41:26,050 --> 00:41:29,490 kiu rakontas navegador kiel redonu enhavo en retpaĝo. 747 00:41:29,490 --> 00:41:32,850 Sed kiam vi komencas transdoni datumoj trans la Interreto 748 00:41:32,850 --> 00:41:36,290 inter foliumilo kaj servilo, jen kie ĉi protokolo 749 00:41:36,290 --> 00:41:39,370 konata kiel hiperteksto Transfer Protocol transprenas. 750 00:41:39,370 --> 00:41:42,630 Ĉi tiu estas la speco de homa konvencio, kiam Sam kaj mi manpremis lundon, 751 00:41:42,630 --> 00:41:48,300 komenci rilato kaj tiam fermante rilaton, sama ideo tie. 752 00:41:48,300 --> 00:41:53,100 Kiel Google rezultojn revenanta al mi? 753 00:41:53,100 --> 00:41:55,290 Kiel mia formo submetiĝo tuj Google? 754 00:41:55,290 --> 00:41:58,160 Nu, memoru de la alia tago, kio vere okazas 755 00:41:58,160 --> 00:42:02,150 sub la kapuĉo, kiam vi petas retpaĝon estas, 756 00:42:02,150 --> 00:42:04,860 Via retumilo sendas iom-kamufla mesaĝon kiel 757 00:42:04,860 --> 00:42:09,510 GET / HTTP/1.1 por la defaŭlta hejmpaĝo. 758 00:42:09,510 --> 00:42:13,000 >> Aŭ, en ĉi tiu kazo, ĉar mi specife petis pli frue 759 00:42:13,000 --> 00:42:17,340 search0.html, ĉi tiam estus la iom-kamufla mesaĝon 760 00:42:17,340 --> 00:42:20,040 ke mia retumilo sendas al la aparato. 761 00:42:20,040 --> 00:42:23,090 Aŭ, en ĉi tiu kazo de Google, kio efektive sendis 762 00:42:23,090 --> 00:42:33,740 Estas peto al / serĉo, kaj do? q = mallaborema kato, kun pli tie. 763 00:42:33,740 --> 00:42:36,790 Do tiu mesaĝo, ke Mi, la homa, mi neniam tajpas, 764 00:42:36,790 --> 00:42:40,620 sed estas sendita de mia krozilo, jen kiel HTTP okazas. 765 00:42:40,620 --> 00:42:43,240 Ĉi tiu estas la ekvivalento de nia esti skuatan manoj. 766 00:42:43,240 --> 00:42:46,320 Ĉi tio estas la peto, kaj la servilo estas pri sendi respondon. 767 00:42:46,320 --> 00:42:48,560 Do ni rigardu ĉi sube la kapuĉo. 768 00:42:48,560 --> 00:42:55,320 Kiel antaŭe, oni povas malfermi tiu speciala kampo en retumilo. 769 00:42:55,320 --> 00:42:58,720 Rigardi paĝo, inspekti elementoj. 770 00:42:58,720 --> 00:43:01,550 Do sub inspekti elemento, rimarki ke kio okazis en Chrome, 771 00:43:01,550 --> 00:43:04,160 kaj IE kaj Firefox havas similajn mekanismojn, 772 00:43:04,160 --> 00:43:07,370 ni havas ĉi tiujn programisto iloj atingebla al ni. 773 00:43:07,370 --> 00:43:09,630 Normala homo ne uzas tiujn foliojn. 774 00:43:09,630 --> 00:43:11,940 Sed ni, nun, estas interesita en kio okazas 775 00:43:11,940 --> 00:43:13,890 sub la kapuĉo en la reto nivelo. 776 00:43:13,890 --> 00:43:16,130 Do se mi elsxiros la reto nivelo tie, 777 00:43:16,130 --> 00:43:18,510 lasu min iri antaŭen kaj etendi tiun fenestron, 778 00:43:18,510 --> 00:43:21,840 malfermi tiun eniron tien, kaj rigardu la titolaj. 779 00:43:21,840 --> 00:43:26,010 Do kio okazas kiam mi petas dosiero de servanto retejo 780 00:43:26,010 --> 00:43:29,410 estas mia retumilo sendas tuta amaso de aferoj. 781 00:43:29,410 --> 00:43:32,390 Kaj lasu min vidi fonton. Do sub peto kapoj, 782 00:43:32,390 --> 00:43:35,250 kaj ĉi tiu estas nur Chrome montrante al mi iom diagnozaj eligo, 783 00:43:35,250 --> 00:43:37,340 ia kiel erarserĉilo de iu varo, 784 00:43:37,340 --> 00:43:40,500 rimarki, ke kion mi reliefigis tie estas ĝuste kion 785 00:43:40,500 --> 00:43:47,060 Chrome sendas al la servilo por peti dosieron nomatan search0.html. 786 00:43:47,060 --> 00:43:50,160 Ĝi diras la servilo kio pensas lia nomo estas, 787 00:43:50,160 --> 00:43:52,210 danke al tiu gasto dupunkto kampo, tiam ekzistas iu 788 00:43:52,210 --> 00:43:56,950 bela esotérica havajxoj en tie, kiel ion por fari kun datoj kaj tempoj, 789 00:43:56,950 --> 00:43:59,720 ion fari kun la lingvoj ke la retumilo komprenas, 790 00:43:59,720 --> 00:44:02,850 sed la vere grava linioj estas tiuj du unuaj tie. 791 00:44:02,850 --> 00:44:05,490 >> Kion faras la servilo respondi kun? Nu, se ni rulumu malsupren tie 792 00:44:05,490 --> 00:44:08,510 kaj vidi fonton de tiu afero, rimarki ke la servilo 793 00:44:08,510 --> 00:44:13,700 respondis kun iom críptico mesaĝon tiel, 304 ne modifitaj. 794 00:44:13,700 --> 00:44:16,030 Tio estas iom stranga, Ke mi efektive provas ripari ĉi. 795 00:44:16,030 --> 00:44:18,670 Lasu min premadu movo kaj alklaku reŝarĝi ĉi tien 796 00:44:18,670 --> 00:44:22,460 devigi la retumilo al reale fari ĉi tiun peton por la unua fojo. 797 00:44:22,460 --> 00:44:25,700 Tiam lasu min zomi, kaj ni vidos, ke la servilo la respondo, 798 00:44:25,700 --> 00:44:28,950 ĉar mi tenis movo, estas 200 OK. 799 00:44:28,950 --> 00:44:31,170 Do vi probable neniam vidis la nombro 200 800 00:44:31,170 --> 00:44:33,300 en la kunteksto de la retejo, sed kion nombroj 801 00:44:33,300 --> 00:44:36,760 vi foje vidis neatendite el servilo? 802 00:44:36,760 --> 00:44:42,010 404, dosiero ne trovita; 403, malpermesita; 500, servilo eraro. 803 00:44:42,010 --> 00:44:44,890 Estas do tiuj nombraj kodoj ke la mondo uzas en la retejo 804 00:44:44,890 --> 00:44:47,870 por signifi eraroj, ĝuste kiel C funkcioj 805 00:44:47,870 --> 00:44:51,030 povas reveni eraroj kaj ĉefa povas reveni eliro kodoj. 806 00:44:51,030 --> 00:44:54,160 200, tamen, vi malofte vidas ĉar ĝi signifas ĉio estas bone. 807 00:44:54,160 --> 00:44:59,000 Kaj 304 al vi probable neniam vidos ĉar kio ĝi signifas? 808 00:44:59,000 --> 00:45:03,330 Ke nenio havas - ni vidu se ni povas simuli ĉi denove - 809 00:45:03,330 --> 00:45:07,170 Ho, nun ĝi ne estas kunlaboranta. 304 diris ne modifita, 810 00:45:07,170 --> 00:45:09,170 do kial la servilo eĉ respondi? 811 00:45:09,170 --> 00:45:12,550 Nu, por rendimento, servanto retejo aŭtomate por vi, 812 00:45:12,550 --> 00:45:16,570 se la dosiero ankoraŭ ne ŝanĝis, ĝi ne retransmit la tuta HTML dosiero. 813 00:45:16,570 --> 00:45:19,150 Ĝi devos simple diru al la retumilo ĝi ne ŝanĝiĝis. 814 00:45:19,150 --> 00:45:21,220 Simple uzu la kopion vi jam havas. 815 00:45:21,220 --> 00:45:22,650 Do tie estas tio nocio de caching en TTT 816 00:45:22,650 --> 00:45:25,840 por prezento, tiel ke vi ne malŝpari tempon kaj malŝparo elektra bendlarĝo, bendlarĝo 817 00:45:25,840 --> 00:45:29,160 elŝuti dosierojn denove kaj denove nenecese. 818 00:45:29,160 --> 00:45:31,460 >> Sed ĉi tiu retpaĝo, nun, estis super-simpla, 819 00:45:31,460 --> 00:45:34,980 kaj ĝi nur montris al mi la HTML kiu revenis. 820 00:45:34,980 --> 00:45:40,940 Ni efektive uzi la reton langeto nun fari Google serĉo kiel rapida bruna vulpo. 821 00:45:40,940 --> 00:45:43,010 Lasu min tiam klaku CS50 serĉo, 822 00:45:43,010 --> 00:45:46,950 kaj nun, rimarki en la fundo tie tutan faskon da aĵoj revenis 823 00:45:46,950 --> 00:45:49,900 ĉar kiam mi vizitas reala afiŝinto kiel Google.com, 824 00:45:49,900 --> 00:45:53,520 ili havas bildojn, ili havas tekston, ili havas lingvon nomata JavaScript tie. 825 00:45:53,520 --> 00:45:55,940 Do ĉiu vico en ĉi tiu tabulo cxi tie 826 00:45:55,940 --> 00:46:01,490 reprezentas iun ke Google kracxis el en respondo al mia sola peto. 827 00:46:01,490 --> 00:46:04,160 Tiu, kiun mi prizorgas, tamen, estas ĉi unua. 828 00:46:04,160 --> 00:46:08,420 Kaj se mi iros al la serĉo, peto, klaku vidi fonto tie, 829 00:46:08,420 --> 00:46:11,300 rimarki ke, efektive, la kamufla mesaĝon ke mia retumilo sendis 830 00:46:11,300 --> 00:46:15,010 al Google estis tiuj du linioj tie, 831 00:46:15,010 --> 00:46:18,420 sekvata de kelkaj arkaikaj informojn cxi tie kion ni ignoras nun. 832 00:46:18,420 --> 00:46:20,890 Sed rimarki, ankaŭ, kion Chrome estas sufiĉe utila kun, 833 00:46:20,890 --> 00:46:24,540 ĝi estas ankaŭ montrante al mi la demando ŝnuro kiu estis sendita in 834 00:46:24,540 --> 00:46:27,410 Do anstataŭ montri al mi tiun, kiu estis laŭvorte senditaj, 835 00:46:27,410 --> 00:46:30,800 se mi ĝin vidi malkodita, Chrome, nur por elpurigi intencoj, 836 00:46:30,800 --> 00:46:34,270 por programistoj kiel ni, ĝi estas ĵus montrante al mi homredaktitan amika versio de - 837 00:46:34,270 --> 00:46:36,390 kiu ne estas kiel vi literumi vulpo, ŝajne. 838 00:46:36,390 --> 00:46:40,520 Mi ĵus rimarkis ĉi nun - sed ĝi montras al vi, kion mi, ŝajne, tajpita. 839 00:46:40,520 --> 00:46:45,340 Dume, la respondo ke revenis de la servilo estas denove 200 OK. 840 00:46:45,340 --> 00:46:47,930 Sed inkludis en tiu respondo, kompreneble, 841 00:46:47,930 --> 00:46:51,920 se ni reale vidi la paĝon de HTML - 842 00:46:51,920 --> 00:46:55,440 sorry, ĉi tiu estas iom klavaro ŝparvojo iris malbone hodiaŭ. 843 00:46:55,440 --> 00:46:59,020 >> Mi trakti ĉi poste. Do, se ni efektive vidi la paĝon de fonto, 844 00:46:59,020 --> 00:47:02,990 kion mi povas fari cxi tie klakante respondo, 845 00:47:02,990 --> 00:47:10,080 ĉi tiu estas kio vere kracxis reen, krom ke críptico 200 OK mesaĝon de la servilo. 846 00:47:10,080 --> 00:47:12,520 Iom críptico, sed kie estas ĉiuj ĉi devenante? 847 00:47:12,520 --> 00:47:15,570 Nu, ni faru unu alia afero ĉi tie. Alia iom-kamufla komando, 848 00:47:15,570 --> 00:47:20,530 sed ĉi tiu estas iom neta en tiu ĝi malkaŝas al ni precize kio okazas sub la kapuĉo. 849 00:47:20,530 --> 00:47:22,530 Do mi estas reen sur mia Mac ĉi tie, mi konektita 850 00:47:22,530 --> 00:47:25,980 tra programo nomata SSH, Secure Shell, al alia servilo 851 00:47:25,980 --> 00:47:28,940 ĉar la plimulto de Harvard komputiloj bloki la komando ni komencis forkuri 852 00:47:28,940 --> 00:47:31,640 ĉar ne estas tio komando sur iu serviloj nomis traceroute 853 00:47:31,640 --> 00:47:34,810 kiu permesas vin spuri la vojo inter punktoj a kaj b, 854 00:47:34,810 --> 00:47:37,020 kaj tiel multe ni estis prenante tute por donita 855 00:47:37,020 --> 00:47:40,170 ke mi povas tajpi en Google.com kaj iel atingi datumoj reen 856 00:47:40,170 --> 00:47:43,530 el duonvoje tra la lando aŭ duone trans la mondo. 857 00:47:43,530 --> 00:47:45,810 Kun traceroute ni povas reale plonĝi en iom profunda 858 00:47:45,810 --> 00:47:49,370 pri kiel la Interreto funkcias, kaj vidu kio okazas sub la kapuĉo. 859 00:47:49,370 --> 00:47:54,440 Do ni iru antaŭen kaj arbitre paŭsi itineron al, ni diru, Stanford.edu, 860 00:47:54,440 --> 00:47:57,150 kiu estas la tuta lando, kaj sukceson eniri. 861 00:47:57,150 --> 00:47:59,380 Tiu komando povas esti super-rapida aŭ super-malrapida, 862 00:47:59,380 --> 00:48:02,010 sed kion ni vidas nun, linio por linio, 863 00:48:02,010 --> 00:48:08,060 estas ĉiu el la ŝtupoj aŭ lupolo inter ni kaj Palo Alto, aŭ Stanford, 864 00:48:08,060 --> 00:48:11,010 kie havas sian ttt-servilo. 865 00:48:11,010 --> 00:48:16,600 Do kion signifas ĉiu de ĉi tiuj linioj reprezentas pli konkrete, kvankam? 866 00:48:16,600 --> 00:48:19,100 Peco de slango de Interreto? [Studento, nekomprenebla] 867 00:48:19,100 --> 00:48:21,570 >> Kio estas tio? [Studento, nekomprenebla] 868 00:48:21,570 --> 00:48:25,390 >> Ho, do estas fojoj, sed kion signifas ĉiu vico - Kion mi volas diri per lupolo? 869 00:48:25,390 --> 00:48:29,140 >> Nu, estas ĉi tiuj aferoj en Interreto nomita routers. 870 00:48:29,140 --> 00:48:33,020 Kaj routers, kiel la nomo sugestas, itinero informoj el punkto a por noti b. 871 00:48:33,020 --> 00:48:36,920 Sed estas pluraj punktoj preter a kaj b. 872 00:48:36,920 --> 00:48:40,010 Estas c kaj d kaj e kaj f inter vico 1, 873 00:48:40,010 --> 00:48:43,480 kio okazas al esti mia komputilo IP adreson, 874 00:48:43,480 --> 00:48:46,890 aŭ mia nombraj adreson, kiu unike identigas mia komputilo, 875 00:48:46,890 --> 00:48:50,300 kaj paŝo 15, kiu estas fakte la sesa retservilo, 876 00:48:50,300 --> 00:48:54,640 ŝajne, ke mi infiriendo el tiu aux versio 6 de ilia ttt-servilo en Stanford. 877 00:48:54,640 --> 00:48:56,680 Sed kio estas speco de neta estas, ni povas vidi la vojon 878 00:48:56,680 --> 00:49:00,480 ke mia 0-aj kaj 1-oj prenas el mia komputilo al Stanford. 879 00:49:00,480 --> 00:49:02,500 Do paŝo 1 estas mia propra komputilo adreso. 880 00:49:02,500 --> 00:49:05,760 Ĉiu komputilo en la Interreto havas unikan ensalutilo kiu similas ĉi. 881 00:49:05,760 --> 00:49:08,150 Number.number.number.number. 882 00:49:08,150 --> 00:49:10,370 Ie sur tiu ĉi tereno, probable en la scienco centro, 883 00:49:10,370 --> 00:49:16,780 estas router nomis Core Gateway 2-te83, kion ajn tio signifas, 884 00:49:16,780 --> 00:49:20,590 do tio estas unu el Harvard granda fantazio routers kiu itineroj multon de siaj trafiko. 885 00:49:20,590 --> 00:49:24,640 Jen alia de Harvard routers, ĉi tiu estas Limo Gateway, 886 00:49:24,640 --> 00:49:28,310 limo signifo estas probable en la periferio de kampuso ie. 887 00:49:28,480 --> 00:49:32,790 Tiam ekzistas nox unu, vico 4, kiu estas Norda Vojkruciĝo, 888 00:49:32,790 --> 00:49:35,070 kio estas granda ISP, Interreto servo provizanto, 889 00:49:35,070 --> 00:49:37,740 ke lokoj kiel Harvard konekti ĝis. 890 00:49:37,740 --> 00:49:40,760 Sed tiam aĵoj iom interesa en linio 6. 891 00:49:40,760 --> 00:49:45,960 Kie estas miaj bitoj subite? Kansas. 892 00:49:45,960 --> 00:49:49,300 La mondo havas kutimon uzi flughaveno kodoj en tereno de tiuj aferoj, 893 00:49:49,300 --> 00:49:52,900 aŭ almenaŭ mallongigoj por ŝtatoj aŭ urboj, 894 00:49:52,900 --> 00:49:56,490 tiel ĝi aspektas kiel, en nur 60 m, 895 00:49:56,490 --> 00:49:59,420 paketon da informoj, 0-aj kaj 1 estas de mia portebla komputilo 896 00:49:59,420 --> 00:50:03,210 atingis la tutan vojon al Kansas, kaj denove, en 60 m. 897 00:50:03,210 --> 00:50:08,180 >> Cetere, post Kansas, ili prenis oni ĝiras tra Houston, probable, 898 00:50:08,180 --> 00:50:10,140 kiel sugestita de la nomo de ĉi servilo. 899 00:50:10,140 --> 00:50:13,310 Do ĝuste kiel servanto en Interreto devas havi nombraj adreson, 900 00:50:13,310 --> 00:50:18,360 ĝi povas ankaŭ, laŭvole, havas iomete pli homa-amika adreso kiun homoj venis supren kun. 901 00:50:18,360 --> 00:50:20,510 Nun, en paŝo 8, ni ne scias, kiel tio estas. 902 00:50:20,510 --> 00:50:22,550 Kelkfoje routers nur speco de ignori vin, 903 00:50:22,550 --> 00:50:25,010 kaj ili simple ne respondi la demandojn, do estas bone. 904 00:50:25,010 --> 00:50:29,290 La unu post paŝo 8 estas ŝajne kie? L.A. 905 00:50:29,290 --> 00:50:35,290 Rimarki en nur 78 m, kio portas al ni homoj kiel 6 + horojn por fari fizike, 906 00:50:35,290 --> 00:50:40,110 prenas pakojn de informo sur interreto 78 m vojaĝi ke for. 907 00:50:40,110 --> 00:50:45,890 Paŝo 10 estas en LA tiel, kaj paŝo 11 ŝajnas esti iris norden, ĝis proksime Stanford. 908 00:50:45,890 --> 00:50:48,750 Tio estas ilia limo enkursigilo, aŭ limo enkursigilo. 909 00:50:48,750 --> 00:50:51,240 Paro paŝoj en Stanford kiuj ignorante ni, 910 00:50:51,240 --> 00:50:55,610 kaj laste, ni alvenas al la retservilo en nur 87 m. 911 00:50:55,610 --> 00:50:57,760 Nun, ĉiuj tiuj nombroj, kiel flanken, 912 00:50:57,760 --> 00:51:00,640 nur diri al vi kiom longe ĝi prenas por datumoj akiri de mi 913 00:51:00,640 --> 00:51:03,530 al ĉiu el tiuj routers, kaj ne accumulative. 914 00:51:03,530 --> 00:51:06,960 Kio ĉi programo ne estas, ĝi unue sendas mesaĝon, esence, al la unua enkursigilo. 915 00:51:06,960 --> 00:51:09,490 Tiam unu al la dua enkursigilo, tiam unu al la tria enkursigilo, 916 00:51:09,490 --> 00:51:12,610 mezurante ĉiufoje. Do teorie, ĉi tiuj tempoj estos kreskanta 917 00:51:12,610 --> 00:51:14,860 aŭ almenaŭ sufiĉe proksime al unu la alian, 918 00:51:14,860 --> 00:51:18,090 kaj, efektive, la aĵoj kiuj estas ĝuste sur kampuso estas super-malgranda. 919 00:51:18,090 --> 00:51:20,820 Tuj kiam oni komencas tuj trans la lando, ĝi prenas datumoj 920 00:51:20,820 --> 00:51:24,830 iom pli vojaĝi, pli proksime al 100 m, doni aŭ preni. 921 00:51:24,830 --> 00:51:28,330 Sed ni iru al la alia direkto nun. Kion pri la Universitato de Cambridge en la UK? 922 00:51:28,330 --> 00:51:32,540 Lasu min anstataŭ kuri traceroute de www.cam por Cambridge, 923 00:51:32,540 --> 00:51:36,710 . Ac por akademiaj,. Uk, kaj sukceson eniri tien. 924 00:51:36,710 --> 00:51:38,830 Tio estis bela malbenita rapide. 925 00:51:38,830 --> 00:51:43,300 Mia datumoj laŭvorte iris al Cambridge, Anglio, en tiu divido dua de tempo. 926 00:51:43,300 --> 00:51:45,340 >> Do ni vidas la padon kiu ĝin portis. 927 00:51:45,340 --> 00:51:47,520 Harvard, Harvard, Harvard, Norda Vojkruciĝo, 928 00:51:47,520 --> 00:51:52,690 kio estas ISP, kaj tiam ĉi tiu estas Norda Vojkruciĝo, kaj tiam bam. 929 00:51:52,690 --> 00:51:58,320 Kio estas inter ŝtupoj 6 kaj 7, router 6 kaj 7? 930 00:51:58,320 --> 00:52:02,040 La Atlantika Oceano. Kaj ni infiriendo ĉi de la fakto ke 931 00:52:02,040 --> 00:52:06,530 ni iru el 20 m tie al 80 m tie. 932 00:52:06,530 --> 00:52:10,050 Do io prenis 60 m, donu aŭ preni, akiri pli. 933 00:52:10,050 --> 00:52:12,910 Kaj kiu estis probable granda korpo de akvo. 934 00:52:12,910 --> 00:52:15,250 Kio iras sur post tio? Nu, jen ni estas en Londono, 935 00:52:15,250 --> 00:52:18,860 nur 88 m poste. Pli Londono, pli Londono, 936 00:52:18,860 --> 00:52:21,730 ne certas kie ĉi tio estas, sed ni supozas ke estas ekster de Londono, 937 00:52:21,730 --> 00:52:26,390 Kembriĝo tie, kaj fine ni - laŭvorte, Universitato de Kembriĝo 938 00:52:26,390 --> 00:52:29,500 . Something.net, kaj poste, fine, en linio 16, 939 00:52:29,500 --> 00:52:31,720 sia TTT-servilo estas ŝajne nomas Scorpius 940 00:52:31,720 --> 00:52:35,500 sub la kapuĉo, kvankam ni scias kiel www. 941 00:52:35,500 --> 00:52:38,790 Ia menso-blovado, mi pensas. La unua fojo mi faris tion, ĝi tute blovis mian menson. 942 00:52:38,790 --> 00:52:41,670 Bedaŭrinde, Harvard blokas ĉi tiu tipo de trafiko, tipe, en la reto. 943 00:52:41,670 --> 00:52:44,340 Do vi ne povas fari ĝin super facile. 944 00:52:44,340 --> 00:52:48,500 Rimarki, tamen, ĉi tie eblas. 945 00:52:48,500 --> 00:52:53,630 Bone. Ni prenu nian 5-minuta paŭzo tie. Ni revenos kaj mergi en pli profunda. 946 00:52:53,630 --> 00:53:00,850 Do ni estas dorso, kaj ni ia ambled pri en kelkaj diversaj direktoj tie. 947 00:53:00,850 --> 00:53:03,700 Do ni resumos precize kio daŭras ĉi tie. 948 00:53:03,700 --> 00:53:07,990 Ni komencis la konversacion parolas tiun lingvon nomata HTML. 949 00:53:07,990 --> 00:53:10,680 Denove, ne estas programlingvo. Estas nur markado lingvo 950 00:53:10,680 --> 00:53:15,490 tio estas plejparte pri estetiko kaj strukturado de enhavo en la formo de retpaĝo. 951 00:53:15,490 --> 00:53:19,220 Sed HTML do bezonas ian mekanismon 952 00:53:19,220 --> 00:53:22,870 por vojaĝi inter foliumilo kaj servilo. 953 00:53:22,870 --> 00:53:28,360 HTML do ia rajdas sur supro de ĉi tiu alia lingvo, 954 00:53:28,360 --> 00:53:31,280 aŭ pli ĝuste, protokolon, konata kiel HTTP. 955 00:53:31,280 --> 00:53:33,730 >> Kaj HTTP, kiel ni vidis ĝin ĝis nun, 956 00:53:33,730 --> 00:53:37,140 estas ia analoga al tiu homa konvencio de skuante manoj. 957 00:53:37,140 --> 00:53:39,940 Kiam retumilo volas peti paĝon el servilo, 958 00:53:39,940 --> 00:53:43,450 ordonas ke "get" peto de retumilo al servilo, 959 00:53:43,450 --> 00:53:48,040 kaj tiam la servilo respondas kun nombro kiel 200, ĉiuj estas bone, 960 00:53:48,040 --> 00:53:53,290 tiel kiel la HTML aŭ iu malbona nombro kiel 404, dosiero ne estas trovita. 961 00:53:53,290 --> 00:53:58,220 Sed dume, HTTP mem ne estas la interreto, per si mem. 962 00:53:58,220 --> 00:54:01,550 HTTP estas nur servo, karakteriza de la Interreto 963 00:54:01,550 --> 00:54:05,530 multe kiel G babilejo estas alia servo, multe kiel retpoŝta adreso estas alia servo. 964 00:54:05,530 --> 00:54:09,180 Ekzistas ĉiaj aferoj ni povas fari en la interreto. 965 00:54:09,180 --> 00:54:12,670 HTTP estas nur unu el tiuj aplikoj. 966 00:54:12,670 --> 00:54:17,210 Do sur la supro de - HTTP estas sur io alia 967 00:54:17,210 --> 00:54:21,750 kiuj ni ne menciis laŭnome, vi eble auxdis pri laŭnome, TCP / IP. 968 00:54:21,750 --> 00:54:25,160 Do la rakonton ni ĵus diris estas pri 969 00:54:25,160 --> 00:54:28,720 kiom datumoj vojaĝas de punkto a por noti b. 970 00:54:28,720 --> 00:54:30,950 Kaj en ĉi tiu kazo, ni vidis je tre malalta nivelo 971 00:54:30,950 --> 00:54:33,060 enkursigilo router router al enkursigilo, 972 00:54:33,060 --> 00:54:35,390 kiel la datumoj estas reale esti transdonita. 973 00:54:35,390 --> 00:54:40,510 Sed survoje, tuj renkontos diversaj malhelpoj. 974 00:54:40,510 --> 00:54:43,770 Krom tiuj routers, estas aĵoj nomata firewalls en Interreto, 975 00:54:43,770 --> 00:54:46,680 kaj tiel datumoj, kiel ni estis nur transdoni 976 00:54:46,680 --> 00:54:49,720 de mi al Stanford, de mi al Cambridge, 977 00:54:49,720 --> 00:54:54,560 estas sendita al, je tiu nivelo, iu vokis IP-adreso. 978 00:54:54,560 --> 00:54:57,340 Ni vidis tion antaŭ momento, kaj IP-adreso 979 00:54:57,340 --> 00:55:02,480 estas nur nombraj adreso de la formo w.x.y.z, 980 00:55:02,480 --> 00:55:08,070 kie ĉiu el ili estas inter, donu aŭ preni, 0 kaj 255, 981 00:55:08,070 --> 00:55:10,080 kvankam vi ne povas sufiĉe uzi ĉiujn el tiuj numeroj. 982 00:55:10,080 --> 00:55:14,220 Sed ĉiu el tiuj lokon posedantoj estas nombro inter 0 kaj 255. 983 00:55:14,220 --> 00:55:16,820 Do IP adreso tiuj tagoj estas 32 bitoj. 984 00:55:16,820 --> 00:55:20,780 >> Nun, kiu donas al ni kiom da eblaj IP adresoj en la mondo? 985 00:55:20,780 --> 00:55:24,420 Malglate 4 miliardoj, ĉar ajna momento ni rakonti en potencoj de 2 986 00:55:24,420 --> 00:55:27,760 tuta vojo ĝis 32 de iu, kiu kutime donas al ni 4 miliardoj. 987 00:55:27,760 --> 00:55:30,160 Por ke estas multa IP-adresojn, sed vi eble legis, 988 00:55:30,160 --> 00:55:32,410 aŭ vi eble nun rimarkas en la populara gazetaro, 989 00:55:32,410 --> 00:55:36,020 puŝon al nova versio de IP nomis IPv6. 990 00:55:36,020 --> 00:55:38,290 Ĝuste nun ni uzas versio 4. 991 00:55:38,290 --> 00:55:41,060 Ĉu vere ne estis versio 5, ni simple saltante rajton 6. 992 00:55:41,060 --> 00:55:46,760 Versio 6 tuj uzos 128 bitoj por IP-adresojn, kiu estas freaking grandega. 993 00:55:46,760 --> 00:55:49,430 Ni ne elĉerpas por sufiĉe tempo nun, 994 00:55:49,430 --> 00:55:52,980 sed ni komencis kuri el versio 4 IP-adresojn, 995 00:55:52,980 --> 00:55:56,110 ĉar ĉiuj el ni devas ne nur aĵoj kiel tekkomputiloj kaj tablo-komputiloj, 996 00:55:56,110 --> 00:55:58,700 multon el ni havas telefonojn, multe el ni havas aliajn mekanismojn 997 00:55:58,700 --> 00:56:01,600 kiel TiVo kaj similaj, kiuj havas IP sin. 998 00:56:01,600 --> 00:56:03,720 Harvard mem dekmiloj da komputiloj. 999 00:56:03,720 --> 00:56:07,970 Do la mondo estas vere kurante el IP, almenaŭ de ĉi formularo. 1000 00:56:07,970 --> 00:56:10,340 Do dum la venontaj jaroj, vi tuj vidos la adresoj 1001 00:56:10,340 --> 00:56:12,870 sur via propra komputilo probable malrapide ŝanĝos 1002 00:56:12,870 --> 00:56:16,740 kiel pli kaj pli kompanioj kaj universitatoj komencos por apogi la nova versio. 1003 00:56:16,740 --> 00:56:22,770 Sed IP-adreso ne estas sufiĉa por komputilo por peti informon de komputilo b. 1004 00:56:22,770 --> 00:56:24,950 Ĉar komputilo b eblus servilo, 1005 00:56:24,950 --> 00:56:27,600 kaj servanto, kiel mi menciis antaŭe, povas fari aroj da aĵoj. 1006 00:56:27,600 --> 00:56:29,940 Ĝi povas gastigi retpaĝojn, ĝi povas esti retpoŝto servilo, 1007 00:56:29,940 --> 00:56:32,310 eblas Skype servilo, ĝi povas esti G babilejon servilo. 1008 00:56:32,310 --> 00:56:35,870 >> Ĉiuj ĉi tiuj malsamaj servoj kiuj povas esti provizita en servanto 1009 00:56:35,870 --> 00:56:38,330 povis ĉiuj, fizike, esti sur la sama maŝino. 1010 00:56:38,330 --> 00:56:40,380 Do aldone al IP-adresojn, 1011 00:56:40,380 --> 00:56:43,250 la mondo havas aĵojn nomas havenoj sur la interreto. 1012 00:56:43,250 --> 00:56:47,830 Al haveno estas nur nombro, do estas unika nombro por HTTP. 1013 00:56:47,830 --> 00:56:50,280 Lia nombro estas 80. 1014 00:56:50,280 --> 00:56:55,870 HTTP ankaŭ uzas numeron 443, sed pli specife, por ĉifrita HTTPS. 1015 00:56:55,870 --> 00:57:00,030 Kiam ajn vi vidas la s, por sekura, ke tio uzante malsama nombro. 1016 00:57:00,030 --> 00:57:06,580 Estas aliaj nombroj, kiel 25, uzita por iu nomita SMTP, alie konata kiel retpoŝto. 1017 00:57:06,580 --> 00:57:09,620 Estas io nomata 22 por SSH, 1018 00:57:09,620 --> 00:57:11,850 kaj jen mia tuta amaso de aliaj havenoj tie. 1019 00:57:11,850 --> 00:57:14,460 Nun, ni homoj malofte vidas tiujn numerojn. 1020 00:57:14,460 --> 00:57:21,970 Tamen, kiam vi tajpas en parolado kiel http://www.facebook.com, 1021 00:57:21,970 --> 00:57:26,560 la retumilo estas sekrete enmeto 80, ĉar vi uzas HTTP. 1022 00:57:26,560 --> 00:57:30,630 Se vi, anstataŭe, tipo HTTPS, ĝi estas sekrete enmeto 443. 1023 00:57:30,630 --> 00:57:35,180 Kaj ni povas ia vidi ĉi permane se mi tiri supren Brower 1024 00:57:35,180 --> 00:57:41,850 kaj iru al http://www.facebook.com:80. 1025 00:57:41,850 --> 00:57:44,550 Tial eksplicite citante ne nur la nomo de la retejo 1026 00:57:44,550 --> 00:57:47,650 sed la haveno, ke mi volas paroli al, kaj sukceson eniri. 1027 00:57:47,650 --> 00:57:50,170 Rimarku malaperas, ĉar la retumilo supozas, 1028 00:57:50,170 --> 00:57:53,360 oh, 80, mi eĉ ne tuj tedas montrante ke por vi. 1029 00:57:53,360 --> 00:57:56,400 Sed la kialo estas ke se mi vere volis sendi iun retmesaĝon, 1030 00:57:56,400 --> 00:58:02,340 Mi vere sendante ĝin al ili sur haveno 25, kiu estante SMTP. 1031 00:58:02,340 --> 00:58:04,890 Iom de simplificación, sed iuj el vi havas amikojn 1032 00:58:04,890 --> 00:58:09,290 kiu fakte labori en Facebook, kaj ili, simile, havi servilojn kiuj ricevas retpoŝton. 1033 00:58:09,290 --> 00:58:12,610 >> Ajn vi sendu retmesaĝon, kion gmail faras por vi 1034 00:58:12,610 --> 00:58:14,960 aŭ Outlook aŭ kion ajn programon vi uzas, 1035 00:58:14,960 --> 00:58:19,270 ĝi estas speco de sekrete enmeto tiu numero tiel, 25, en tiu kazo. 1036 00:58:19,270 --> 00:58:24,490 Estas ĉi tiu kombino de IP adreso kaj numero kiu unike identigas 1037 00:58:24,490 --> 00:58:29,190 komputilo en la Interreto kaj specifa servo en tiu komputilo. 1038 00:58:29,190 --> 00:58:33,460 Nun, kompreneble, la plimulto de ni probable neniam tajpis permane IP-adreso. 1039 00:58:33,460 --> 00:58:37,340 Eble vi havas en la aparaton, sed en la reala mondo, ne tiel multe. 1040 00:58:37,340 --> 00:58:42,750 Kial ni ne tajpi IP en retumiloj? 1041 00:58:42,750 --> 00:58:45,860 Laborus, fakte, ni povas vidi ĉi; lasu min montri vin 1042 00:58:45,860 --> 00:58:50,000 unu alia komando kiu devus funkcii plej ie sur Harvard kampuso sur Mac aŭ PC. 1043 00:58:50,000 --> 00:58:53,970 Estas ĉi tiu komando nomis nslookup, nomo servilo lookup. 1044 00:58:53,970 --> 00:58:59,960 Se mi rigardas supren www.cnn.com, rezultas ke CNN havas - ho, interesa. 1045 00:58:59,960 --> 00:59:03,180 CNN komencis uzi Amazonoj retejo servoj. 1046 00:59:03,180 --> 00:59:06,380 Vi eble scias pri cloud computing, Amazona la unu el la grandaj agantoj de nubo komputado. 1047 00:59:06,380 --> 00:59:10,240 Kion mi nur faris estis, mi diris: Donu al mi la adreson de CNN la ttt-servilo: 1048 00:59:10,240 --> 00:59:14,090 sed ĝi rezultas ke CNN la ttt-servilo estas administrata de Amazono, 1049 00:59:14,090 --> 00:59:16,030 Amazonoj servoj retejo, ĉi sugestas. 1050 00:59:16,030 --> 00:59:19,680 Kaj la adreso de tiu servilo estas ĉi tie. 1051 00:59:19,680 --> 00:59:22,350 Do mi ne certas se tio funkcios, ĉar ili ne kutimis uzi Amazon. 1052 00:59:22,350 --> 00:59:32,830 Sed ni provu tion; http://, IP, eniru, kaj - 1053 00:59:32,830 --> 00:59:35,690 ĉu tuj funkcias? 1054 00:59:35,690 --> 00:59:39,280 Jes. Tuj funkcias. Interreto estas super-malrapida hodiaŭ. 1055 00:59:39,280 --> 00:59:43,680 Sed, tre frue, vi vidos iujn novaĵojn rakonton. 1056 00:59:43,680 --> 00:59:48,360 Tie ni iru. Banko de Ameriko esti demandado. Bone. 1057 00:59:48,360 --> 00:59:54,000 >> Ĉi tio estas ĉar tiu ĉi IP adreso nur okazas per sinonimo www.cnn.com. 1058 00:59:54,000 --> 00:59:59,920 Kompreneble, estus horora marketing diri, vizitu nin en la TTT ĉe 50.112.94.127. 1059 00:59:59,920 --> 01:00:02,370 Vi ŝatus neniam memoras. Do eĉ tiuj tagoj vi eble memoras aferojn 1060 01:00:02,370 --> 01:00:07,210 kiel 1-800-COLLECT aŭ mnemonikoj la mondo venadis kun por telefonnumerojn. 1061 01:00:07,210 --> 01:00:09,540 Kiuj, antaŭ poŝtelefonoj, estis iom malfacile memori 1062 01:00:09,540 --> 01:00:11,800 ĝis vi povus simple tajpu ĝin en kaj forgesas pri ĝi. 1063 01:00:11,800 --> 01:00:15,730 Do la interreto ankaŭ havas ĉi tiun konvencion de nomoj kaj IP-adresojn, 1064 01:00:15,730 --> 01:00:17,770 kaj estas tio tie nomis DNS-serviloj, 1065 01:00:17,770 --> 01:00:23,870 domajna nomo sistemoj servantoj, kiuj tradukas IP en nomoj kaj inverse. 1066 01:00:23,870 --> 01:00:26,340 Do, tio estas kion okazas sub la kapuĉo. 1067 01:00:26,340 --> 01:00:29,540 En la fino, ni devas TCP / IP, kio estas ĉi tiu tre malalta nivelo protokolo 1068 01:00:29,540 --> 01:00:32,570 ke, vere, nur ricevas 0-aj kaj 1-oj tra la Interreto, 1069 01:00:32,570 --> 01:00:36,030 kaj tio faras metante ilin en virtuala koverton, 1070 01:00:36,030 --> 01:00:38,820 se vi volos, kaj skribi sur la eksteron de la koverto 1071 01:00:38,820 --> 01:00:43,930 la IP-adreso de la destino, kaj ankaŭ la nombraj haveno nombro 1072 01:00:43,930 --> 01:00:47,520 de la servo de tiu destino, ke li volas paroli. 1073 01:00:47,520 --> 01:00:51,060 Dume, en la koverto ekzistas ankaŭ iu scias kiel reveno adreson, 1074 01:00:51,060 --> 01:00:55,600 kio estas via IP-adreso, tiel ke kiam CNN gets paketon da informo de vi, 1075 01:00:55,600 --> 01:00:58,710 malfermas tiun virtualan koverton, vidas ke vi deziras la hejmpaĝo, 1076 01:00:58,710 --> 01:01:04,630 scias de la sendinto parto de ĉi virtuala koverton, kiun sendi la HTML reen al. 1077 01:01:04,630 --> 01:01:07,470 Do ni rigardu tiun en iom pli detale. 1078 01:01:07,470 --> 01:01:11,370 Tiu estas el kompanio nomita Ericson, de kelkaj jaroj malantaŭen. 1079 01:01:11,370 --> 01:01:14,780 Kaj ili prenis iom liberecoj kun kiom la interreto efektive funkcias, 1080 01:01:14,780 --> 01:01:18,920 sed pentras multe pli vida bildo ol nura kreto ĉe tie. 1081 01:01:18,920 --> 01:01:26,690 Do mi donos al vi "A Bit de la Interreto." 1082 01:02:26,660 --> 01:02:29,840 >> [Rakontanto] Unuafoje en la historio, 1083 01:02:29,840 --> 01:02:35,260 popolo kaj maŝinaro laboras kune, realigante sonĝo. 1084 01:02:35,260 --> 01:02:38,910 Al kunigante forto kiu ne konas geografiajn limojn. 1085 01:02:38,910 --> 01:02:43,230 Sen konsideri raso, kredo aux koloro. 1086 01:02:43,230 --> 01:02:47,770 Nova erao kie komunikado vere alproksimigi homojn. 1087 01:02:47,770 --> 01:02:50,070 Jen 1088 01:02:50,070 --> 01:02:54,980 La Tagiĝo de la Reto. 1089 01:02:54,980 --> 01:03:04,640 Volas scii kiel funkcias? Klaku tie ĉi por komenci vian vojaĝon en la Reto. 1090 01:03:04,640 --> 01:03:07,890 Nun, ĝuste kio okazis kiam vi alklakis ligantaj? 1091 01:03:07,890 --> 01:03:10,150 Vi komencis fluo de informo. 1092 01:03:10,150 --> 01:03:13,310 Ĉi tiu informo vojaĝas malsupren en via propra persona mailroom 1093 01:03:13,310 --> 01:03:18,500 kie S-ro IP pakoj ĝin, etiketo, kaj sendas gxin sur lian vojon. 1094 01:03:18,500 --> 01:03:20,960 Ĉiu pakoj estas limigita en lia grandeco. 1095 01:03:20,960 --> 01:03:23,880 La poŝto ĉambro devas decidi kiel dividi la informo 1096 01:03:23,880 --> 01:03:26,070 kaj kiel paki gxin. 1097 01:03:26,070 --> 01:03:29,550 Nun, la pako bezonas etikedo enhavas gravajn informojn 1098 01:03:29,550 --> 01:03:35,570 kiel sendinto la adreson, ricevilo de adreson, kaj la tipo de pakoj estas. 1099 01:03:51,700 --> 01:03:54,980 Ĉar ĉi tiu aparta pako elirinte sur la Interreto, 1100 01:03:54,980 --> 01:03:57,720 ĝi ankaŭ ricevas adreson por la prokura servilo, 1101 01:03:57,720 --> 01:04:01,520 kiuj havas specialan funkcion, ĉar ni vidos poste. 1102 01:04:01,520 --> 01:04:06,650 La pako nun ĵetis sur via loka areo reto, aŭ LAN. 1103 01:04:06,650 --> 01:04:10,160 Ĉi tiu reto uzas por konekti ĉiujn lokajn komputiloj ' 1104 01:04:10,160 --> 01:04:15,900 routers, presiloj, kaj tiel plu, por informo interŝanĝo ene de la fizika muroj de la konstruaĵo. 1105 01:04:15,900 --> 01:04:20,290 La LAN estas bela descontrolada loko, kaj, bedaŭrinde, 1106 01:04:20,290 --> 01:04:23,950 akcidentoj povas okazi. 1107 01:04:31,190 --> 01:04:34,710 La vojo de la Lan estas pakita kun ĉiaj informoj. 1108 01:04:34,710 --> 01:04:38,900 Ĉi tiuj estas pakoj IP, Novell pakojn, AppleTalk pakoj. 1109 01:04:38,900 --> 01:04:41,270 Ili iras kontraŭ trafiko, kiel kutime. 1110 01:04:41,270 --> 01:04:44,260 La loka enkursigilo legas la adreson kaj, se necese, 1111 01:04:44,260 --> 01:04:48,520 levas la paketon sur alia reto. 1112 01:04:48,520 --> 01:04:54,270 Ha, la enkursigilo. Simbolo de kontrolo en ŝajne desorganizada mondo. 1113 01:04:54,270 --> 01:05:05,480 [Router murmurante kaj parolante al si mem] 1114 01:05:05,480 --> 01:05:10,030 >> [Rakontanto] Tie li estas, sistema, uncaring, metoda, 1115 01:05:10,030 --> 01:05:14,150 konservativa, kaj foje ne tute ĝis akceli. 1116 01:05:14,150 --> 01:05:17,680 Sed almenaŭ ĝi estas ĝusta, plejparte. 1117 01:05:32,270 --> 01:05:36,820 Kiel la pakoj forlasi la enkursigilo, ili faras sian vojon en la kompania Interreto 1118 01:05:36,820 --> 01:05:40,830 kaj kapo por la enkursigilo ŝaltilon. 1119 01:05:40,830 --> 01:05:46,250 Iom pli efika ol la enkursigilo, la enkursigilo ŝaltilo ludas rapida kaj malfiksas kun IP pakoj, 1120 01:05:46,250 --> 01:05:48,920 lerte enrutamiento ilin kune lia vojo. 1121 01:05:48,920 --> 01:05:52,130 Cifereca 'pinball sorcxisto,' se vi volas. 1122 01:05:52,130 --> 01:06:04,270 [Router ŝaltilo parolante al si mem] 1123 01:06:09,830 --> 01:06:12,150 [Rakontanto] Kiel pakoj alveni al ilia destino, 1124 01:06:12,150 --> 01:06:14,740 ili estas reprenita de la reto interfaco, 1125 01:06:14,740 --> 01:06:18,040 preta por esti senditaj al la sekvanta nivelo. 1126 01:06:18,040 --> 01:06:21,010 En ĉi tiu kazo, la prokurilo. 1127 01:06:21,010 --> 01:06:25,040 La prokura estas uzita de multaj entreprenoj kiel speco de duona viro 1128 01:06:25,040 --> 01:06:27,630 por malpliigi la ŝarĝon sur la interreta konekto 1129 01:06:27,630 --> 01:06:32,240 kaj por kialoj de sekureco, tiel. 1130 01:06:32,240 --> 01:06:38,750 Kiel vi povas vidi, la pakoj estas ĉiuj de diversaj grandecoj dependanta sur iliaj enhavo. 1131 01:06:55,210 --> 01:07:01,890 La prokura malfermas la paketon kaj serĉas la TTT-adreson aŭ URL. 1132 01:07:01,890 --> 01:07:04,950 Depende ĉu la adreso estas akceptebla, 1133 01:07:04,950 --> 01:07:08,000 la pakon estas sendita al la Interreto. 1134 01:07:13,890 --> 01:07:19,630 Ekzistas, tamen, kelkaj adresoj kiuj ne plenumas kun la aprobo de la prokura. 1135 01:07:19,630 --> 01:07:25,680 Tio estas, kompania aŭ mastrumado gvidlinioj. 1136 01:07:25,680 --> 01:07:30,580 Ĉi tiuj estas resume traktis. 1137 01:07:30,580 --> 01:07:32,410 Ni devos nenio de tio. 1138 01:07:32,410 --> 01:07:36,350 Por tiuj, kiuj faras ĝin, ĝi estas sur la vojo denove. 1139 01:07:46,850 --> 01:07:53,310 >> Sekva supren, la fajroŝirmilo. 1140 01:07:53,310 --> 01:07:57,410 La korporacia firewall utilas du celoj. 1141 01:07:57,410 --> 01:08:02,420 Ĝi malhelpas iu prefere aĉaj aferoj de la Interreto de alvenantan al la intranet, 1142 01:08:02,420 --> 01:08:10,280 kaj ĝi povas ankaŭ malhelpi sentema kompania informo de esti senditaj sur la interreto. 1143 01:08:10,280 --> 01:08:12,980 Unufoje tra la fajroŝirmilo, router reprenas la pakon 1144 01:08:12,980 --> 01:08:18,180 kaj metas ĝin sur multe pli mallarĝa vojo, aŭ bando, kiel ni diras. 1145 01:08:18,180 --> 01:08:23,720 Evidente, la vojo ne estas sufiĉe larĝa por porti ilin ĉiujn. 1146 01:08:23,720 --> 01:08:29,319 Nun, eble vi demandas kio okazas al ĉiuj tiuj pakoj kiuj ne faras ĝin survoje. 1147 01:08:29,319 --> 01:08:32,270 Nu, kiam s-ro IP ne ricevos agnoskon 1148 01:08:32,270 --> 01:08:35,000 ke paketon estis ricevitaj en pro tempo, 1149 01:08:35,000 --> 01:08:39,890 li simple sendas anstataŭas pako. 1150 01:08:39,890 --> 01:08:44,760 Ni estas nun preta por eniri la mondon de la Interreto. 1151 01:08:44,760 --> 01:08:49,370 Al araneaĵo de interkonektitaj retoj kiuj ampleksas nia tuta terglobo. 1152 01:08:49,370 --> 01:08:56,050 Ĉi tie, routers kaj ŝaltiloj establi ligojn inter retoj. 1153 01:08:56,050 --> 01:08:59,200 Nun, la Reto estas tute malsama medio ol vi trovos 1154 01:08:59,200 --> 01:09:01,569 ene de la protektaj muroj de via Lan. 1155 01:09:01,569 --> 01:09:04,060 Cxi tie, estas la Sovaĝa Okcidento. 1156 01:09:04,060 --> 01:09:06,359 Plena de spaco, plena de ŝancoj, 1157 01:09:06,359 --> 01:09:09,760 multe da aferojn por esplori kaj lokoj iri. 1158 01:09:09,760 --> 01:09:12,760 Danke al tre malmultan kontrolon kaj regulado, 1159 01:09:12,760 --> 01:09:18,300 novaj ideoj trovi fekundan grundon por peli la koverto de siaj ebloj. 1160 01:09:18,300 --> 01:09:22,330 Sed pro tiu libereco, iuj danĝeroj ankaŭ insidas. 1161 01:09:22,330 --> 01:09:27,000 Vi neniam scias, kiam vi renkontos la timinda ping de morto, 1162 01:09:27,000 --> 01:09:29,890 speciala versio de normala peto ping, 1163 01:09:29,890 --> 01:09:35,720 kiu iuj stultaj pensis ĝis salaton ĉe konfiditaj Cebaot. 1164 01:09:35,720 --> 01:09:39,130 La vojo nia pakoj preni estu satelite, 1165 01:09:39,130 --> 01:09:43,090 telefonaj linioj, sendrata, aŭ eĉ transoceánico kablo. 1166 01:09:43,090 --> 01:09:46,520 Ili ne ĉiam prenas la plej rapida aŭ mallonga itineroj eblas, 1167 01:09:46,520 --> 01:09:50,290 sed ili ricevos tie eventuale. 1168 01:09:50,290 --> 01:09:55,230 Eble por tio ĝi estas foje nomita "The World Wide Atendu." 1169 01:09:55,230 --> 01:09:57,980 Sed kiam ĉiu laboras glate, 1170 01:09:57,980 --> 01:10:03,800 vi povas ĉirkaŭiri la terglobo kvinoble pli en la guto de ĉapelo, laŭvorte. 1171 01:10:03,800 --> 01:10:08,230 Kaj ĉiuj por la kosto de loka alvoko aŭ malpli. 1172 01:10:08,230 --> 01:10:15,070 Proksime de la fino de nia destino, ni trovos alian firewall. 1173 01:10:15,070 --> 01:10:18,420 >> Depende sur via perspektivo kiel datumoj paketon, 1174 01:10:18,420 --> 01:10:23,730 la firewall eblus bastiono de sekureco aŭ timata kontraŭulo. 1175 01:10:23,730 --> 01:10:28,530 Ĉio dependas de kiu flanko vi estas en kaj kion via intencoj estas. 1176 01:10:28,530 --> 01:10:34,990 La firewall estas desegnita por enlasi nur tiuj pakoj kiuj kunvenas liaj kriterioj. 1177 01:10:34,990 --> 01:10:39,360 Ĉi firewall estas operacii sur havenoj 80 kaj 25. 1178 01:10:39,360 --> 01:10:46,630 Ĉiuj provoj eniri tra aliaj havenoj estas fermita por negoco. 1179 01:10:57,660 --> 01:11:03,480 Haveno 25 estas uzata por ejon pakoj, 1180 01:11:03,480 --> 01:11:10,720 dum haveno 80 estas la enirejo por pakojn de la Interreto por la TTT-servilo. 1181 01:11:10,720 --> 01:11:15,080 Interne de la fajroŝirmilo, pakoj projektita pli funde. 1182 01:11:15,080 --> 01:11:17,970 Iuj pakoj fari facile tra kutimoj, 1183 01:11:17,970 --> 01:11:21,420 dum aliaj vidas nur iom dubinda. 1184 01:11:21,420 --> 01:11:24,060 Nun, la fajroŝirmilo oficiro ne facile mistifiki, 1185 01:11:24,060 --> 01:11:32,120 kiel kiam ĉi ping de morto paketon provas maski kiel normala ping pako. 1186 01:11:32,120 --> 01:11:37,520 [Firewall oficiro parolante pakoj] 1187 01:11:37,520 --> 01:11:40,510 [Rakontanto] Por tiuj pakoj bonŝanca sufiĉa por fari ĝin ĉi tie, 1188 01:11:40,510 --> 01:11:45,730 la vojaĝo estas preskaŭ finita. 1189 01:11:45,730 --> 01:11:52,130 Estas nur linio sur la interfaco por esti ricevita supren en la TTT-servilo. 1190 01:11:52,130 --> 01:11:55,440 Nuntempe, servanto retejo povas funkcii en multaj aferoj, 1191 01:11:55,440 --> 01:11:59,230 el mainframe al retejo cam al la komputilo sur via skribotablo. 1192 01:11:59,230 --> 01:12:01,720 Kial ne estas via fridujo? 1193 01:12:01,720 --> 01:12:04,870 Kun la pozitiva instalinstrukciojn, vi povas diveni, se vi havas la diatezojn 1194 01:12:04,870 --> 01:12:08,390 por Kokido Cacciatore, aŭ se vi devas iri butikumi. 1195 01:12:08,390 --> 01:12:11,760 Memoru, ĉi tiu estas la tagiĝo de la Reto. 1196 01:12:11,760 --> 01:12:17,310 Preskaŭ nenio eblas. 1197 01:12:17,310 --> 01:12:20,440 Unu post unu, la pakoj estas ricevitaj, 1198 01:12:20,440 --> 01:12:26,320 malfermita, kaj malpakis. 1199 01:12:26,320 --> 01:12:31,200 La informoj ili enhavas, tio estas, vian peton por informo, 1200 01:12:31,200 --> 01:12:34,830 estas sendita al la TTT-servilo apliko. 1201 01:12:41,540 --> 01:12:47,140 La paketon mem estas reciklitaj, 1202 01:12:47,140 --> 01:12:57,570 preta por esti uzita denove, kaj plena de viaj petis informon, 1203 01:12:57,570 --> 01:13:03,340 alparolis, kaj sendis sur lia vojo reen al vi. 1204 01:13:03,340 --> 01:13:13,250 Reen preter la fajroŝirmilo, routers, kaj tra la Interreto. 1205 01:13:13,250 --> 01:13:21,020 Reen tra via kompania firewall 1206 01:13:21,020 --> 01:13:24,180 kaj sur vian interfaco, 1207 01:13:24,180 --> 01:13:31,180 preta por provizi vian retumilon kun la informo vi petis. 1208 01:13:31,180 --> 01:13:39,840 Tio estas, ĉi tiu filmo. 1209 01:13:39,840 --> 01:13:43,550 Plaĉis liaj penadoj, kaj konfidante la bona mondo, 1210 01:13:43,550 --> 01:13:50,250 nia fidinda datumoj pakoj rajdi sur blissfully en sunsubiron de alia tago, 1211 01:13:50,250 --> 01:13:56,880 sciante plene ili servis al iliaj mastroj bone. 1212 01:13:56,880 --> 01:14:02,560 Nun, ne estas tiel feliĉa fino? 1213 01:14:02,560 --> 01:14:07,040 [Malan] Konsentite, tio sufiĉas. Ni vidos vin proksima semajno. 1214 01:14:07,040 --> 01:14:10,040 [CS50.TV]