1 00:00:00,000 --> 00:00:02,620 [Powered by Google Translate] [7 Linggo, ipinagpatuloy] 2 00:00:02,620 --> 00:00:05,090 [David J. Malan, Harvard University] 3 00:00:05,090 --> 00:00:07,780 [Ito ay CS50.] [CS50.TV] 4 00:00:07,780 --> 00:00:09,810 Ayos lang. Maligayang Pagbabalik. Ito ay CS50, 5 00:00:09,810 --> 00:00:12,100 at ito ay ang katapusan ng linggo 7. 6 00:00:12,100 --> 00:00:15,460 Kaya isa sa mga bobo maliit na bagay na napupunta sa buong Internet 7 00:00:15,460 --> 00:00:24,080 at slurped namin, at dapat ito ngayon ng kaunting geeky kahulugan sa iyo. 8 00:00:24,080 --> 00:00:28,330 Well, ito ay funnier na ito tao kaysa ito ay sa iyo guys. 9 00:00:28,330 --> 00:00:32,619 Nagsasalita ng, na rin, ang mga guys, 10 00:00:32,619 --> 00:00:42,550 ngayon Nate ng kaarawan. 11 00:00:42,550 --> 00:00:46,630 Upang bigyan ka ng isang pakiramdam ng pagkakaroon ng lamang kung paano mabuting Nate at ako 12 00:00:46,630 --> 00:00:50,140 sa web development na batay sa Lunes ng klase at batay ngayon sa, 13 00:00:50,140 --> 00:00:53,170 Akala ko Gusto kong makuha ang home page ng Nate, kung hindi mo pa nakikita ko pa ito. 14 00:00:53,170 --> 00:00:57,020 Ito dito HTML ia Nate. 15 00:00:57,020 --> 00:00:59,380 Kaya makita ang kanyang sourcecode kung nais mong upang makita kung paano gawin ito, at Nate, 16 00:00:59,380 --> 00:01:02,250 kung kami embarass mo lamang maikling, kawani nakakuha ka ng isang maliit na isang bagay 17 00:01:02,250 --> 00:01:06,080 kung nais mong upang ibahagi ang ilang mga dessert na may ilang ng mga bata sa klase dito. 18 00:01:06,080 --> 00:01:10,150 Kung gusto mo sa darating sa pababa. 19 00:01:10,150 --> 00:01:14,350 Lahat mong purihin at napakabuti, ngunit walang sitting kahit saan malapit Nate, 20 00:01:14,350 --> 00:01:17,560 para sa ilang mga dahilan, sa na likod zone. 21 00:01:17,560 --> 00:01:24,020 Kaya marahil maaari mong mahanap ang ilang mga tao sa mga bisita sa mga may. 22 00:01:24,020 --> 00:01:33,380 Maligayang Bati, Nate. 23 00:01:33,380 --> 00:01:37,660 >> Karagdagang hellos: Kami ay nagpakita ng isang clip ilang mula sa aming mga mag-aaral sa CS50x. 24 00:01:37,660 --> 00:01:39,710 Kung nais mong kung sino pa ang sa mundo 25 00:01:39,710 --> 00:01:41,850 na pagsunod sa kahabaan, maaari kang magtungo sa URL na ito, 26 00:01:41,850 --> 00:01:45,780 kung saan Jose, isa sa aming mga TFs, magkasama isang monteids ng uri 27 00:01:45,780 --> 00:01:50,290 ng lahat na pagsusumite ng mga video na ito, kasama ng mga ito Rick Astley. 28 00:01:50,290 --> 00:01:53,010 At kung mag-scroll ka sa pamamagitan ng mga ito, talaga masyadong kagila- 29 00:01:53,010 --> 00:01:56,890 upang makita ang mga pagkakaiba-iba ng mga bansa at lungsod kung saan ang mga tao ay hailing. 30 00:01:56,890 --> 00:02:00,830 Kaya kung nais mong kumuha ng isang pagtingin sa na, na sa pamamagitan ng pagtatapos ng semestre. 31 00:02:00,830 --> 00:02:05,370 Ngayon ipagpapatuloy namin ang aming pagtingin sa Web, web programming, HTML at tulad, 32 00:02:05,370 --> 00:02:08,280 at din namin na tanghalian paparating na ito Biyernes 33 00:02:08,280 --> 00:02:11,360 kung nais mong, at lalo na, hindi pa nagagawa bago. 34 00:02:11,360 --> 00:02:13,630 Ito Biyernes ng tema ng kaarawan ng Nate, 35 00:02:13,630 --> 00:02:15,700 kaya kung nais mong kaarawan tanghalian na may Nate 36 00:02:15,700 --> 00:02:17,500 at iba pa, ang ilan sa aming mga kaibigan mula sa Industriya, 37 00:02:17,500 --> 00:02:19,300 mangyaring pumunta sa URL na iyon doon. 38 00:02:19,300 --> 00:02:22,510 Space, gaya ng lagi, ay limitado. Gayundin, kung nakalimutan mo ang, 39 00:02:22,510 --> 00:02:26,460 Napag-alaman na ang susunod na linggo ay ang deadline para sa mga problema na-set 4 pamamaril ng mga hayop na kumakain ng mga bulok na bagay, 40 00:02:26,460 --> 00:02:30,070 kung saan pagkatapos pagbawi ng lahat ng mga mga JPEG mula card.raw, 41 00:02:30,070 --> 00:02:32,880 sa iyo at sa iyong mga seksyong ka-, kung nais mong, maaaring subukan photographing 42 00:02:32,880 --> 00:02:36,100 bilang marami ng mga siyentipiko sa computer mula sa memory card hangga't maaari, 43 00:02:36,100 --> 00:02:39,070 at sa iyo at sa iyong seksyon ay manalo ng isang kamangha-manghang premyo. 44 00:02:39,070 --> 00:02:44,470 Sumangguni sa pset 4 detalye sa kung ano ang isumite at sa pamamagitan ng kapag. 45 00:02:44,470 --> 00:02:47,650 Gayundin, kung nais mong magkaroon ng iyong kagagawan immortalized 46 00:02:47,650 --> 00:02:51,400 sa website ng kurso at ang kasaysayan ng kasuotan, 47 00:02:51,400 --> 00:02:54,010 malaman na ikaw ay maligayang pagdating ngayon upang simulan ang pagsusumite ng mga disenyo 48 00:02:54,010 --> 00:02:57,180 para sa mga taong ito T-shirt at sweatshirt at ang mga tulad. 49 00:02:57,180 --> 00:02:59,200 Gagawin namin ang aming makakaya upang isama bilang marami hangga't makakaya namin, 50 00:02:59,200 --> 00:03:01,440 ngunit gagamitin namin ang ilang mga kasapi ng kawani ng pagsusuri lahat ng disenyo 51 00:03:01,440 --> 00:03:04,180 upang tiyakin na sila ay pare-pareho sa mga pagtutukoy, 52 00:03:04,180 --> 00:03:07,500 at pagkatapos namin pumili pangkalahatan ay isang maliit na bilang ng mga ito na exhibited. 53 00:03:07,500 --> 00:03:10,620 Kaya't kung ikaw ay ang uri ng disenyo, lamang malaman na ang mga kinakailangan 54 00:03:10,620 --> 00:03:14,030 para sa mga graphics ay PNG, hindi bababa sa 200 dpi, 55 00:03:14,030 --> 00:03:16,520 hindi sila ay dapat na higit sa 4000 x 4000 pixels, 56 00:03:16,520 --> 00:03:19,010 at hindi hihigit sa 10 MB, ngunit ikaw ay maligayang pagdating sa gamitin ang mga bagay tulad ng 57 00:03:19,010 --> 00:03:22,430 Photoshop o malambot o iba't-ibang mga graphic ng programa, 58 00:03:22,430 --> 00:03:24,590 anumang mayroon sa iyong pagtatapon. 59 00:03:24,590 --> 00:03:28,280 >> Din sa abot-tanaw ay ang panghuling proyekto. Ang huling proyekto ay talagang ang rurok ng 50, 60 00:03:28,280 --> 00:03:30,560 kung saan ng lahat ng mga asignatura sa kurso, 61 00:03:30,560 --> 00:03:33,170 ito talaga ang iyong pagkakataon upang gawin ang iyong sariling bagay. 62 00:03:33,170 --> 00:03:35,280 At na maaari lamang na gawin ang isang bagay para sa masaya, 63 00:03:35,280 --> 00:03:38,160 ito upang malutas ang ilang mga pagpindot problema ang iyong pangkat ng mag-aaral ay may, 64 00:03:38,160 --> 00:03:40,980 para sa ilang mga bagong website, ang ilang mga bagong mekanismo ng koleksyon para sa data. 65 00:03:40,980 --> 00:03:43,420 Maaari itong maging isang mobile application para sa Android, iOS. 66 00:03:43,420 --> 00:03:46,030 Talagang, ang langit ay ang limitasyon, at sa loob ng susunod na ilang linggo, 67 00:03:46,030 --> 00:03:50,900 namin ang paglipat mula sa C sa mga mas mataas na antas na mga wika tulad ng PHP at JavaScript, 68 00:03:50,900 --> 00:03:55,150 makikita mo ang nagiging familiarized ang iyong sarili na may ilang mga real-mundo na diskarte, 69 00:03:55,150 --> 00:03:57,800 ilang mga real-world na mga tool, at para madagdagan na, 70 00:03:57,800 --> 00:04:00,170 malaman na kurso na may isang kasaysayan ng mga seminar, 71 00:04:00,170 --> 00:04:02,880 kung saan sa susunod na ilang linggo, ang ilan sa mga kawani ng pagtuturo 72 00:04:02,880 --> 00:04:06,160 at mga kaibigan atin mula sa campus ay nag-aalok ng opsyonal seminar 73 00:04:06,160 --> 00:04:08,540 kung saan pumunta sa itaas at higit pa sa kung ano ang karaniwang gawin sa seksyon 74 00:04:08,540 --> 00:04:11,090 upang ipakilala ka sa mga bagay tulad ng Android programming, 75 00:04:11,090 --> 00:04:13,450 upang ipakilala ka sa mga bagay tulad ng iOS programming 76 00:04:13,450 --> 00:04:15,950 o higit pang advanced na mga diskarte sa pag-unlad ng web-. 77 00:04:15,950 --> 00:04:17,970 May isang buong kasaysayan ng mga online na. 78 00:04:17,970 --> 00:04:25,000 Kung pumunta ka sa mga cs50.net/seminars, kami ay ginagawa ito para pa ilang mga taon, 79 00:04:25,000 --> 00:04:28,740 at makikita mo na naka-archive dito sa mga PDF at video at ang mga tulad ng 80 00:04:28,740 --> 00:04:33,090 ilang dosenang mga video ng mga seminar. 81 00:04:33,090 --> 00:04:37,380 Nakaraang taon, halimbawa, nagkaroon kami ng seminar sa acing ang iyong mga teknikal na panayam, 82 00:04:37,380 --> 00:04:40,980 kung aktwal na hinahanap mo upang pumunta off at gawin ang isang internship o full-time na kalesa. 83 00:04:40,980 --> 00:04:43,450 Windows mobile na pag-unlad, Android unlad, Google Maps, 84 00:04:43,450 --> 00:04:47,700 API, CSS, pagbuo para sa BlackBerry, Emacs. 85 00:04:47,700 --> 00:04:52,610 Talagang, maligayang pagdating sa isang pagtingin sa anumang ng mga seminar na ito sa iyong kaginhawaan. 86 00:04:52,610 --> 00:04:57,080 At kami na may hawak na ilang mga bago semestre na ito, pati na rin. 87 00:04:57,080 --> 00:04:59,020 >> Kaya kung ano ay magpatuloy sa mga huling proyekto? 88 00:04:59,020 --> 00:05:01,090 Well, una, kahit na ang petsa na ito ay medyo napipintong, 89 00:05:01,090 --> 00:05:06,460 talaga ito lamang ay isang pagkakataon upang simulan ang pag-iisip tungkol sa huling proyekto medyo realistically. 90 00:05:06,460 --> 00:05:10,550 Alam namin lamang ang Beginnings ng ilang ng kung ano ang makikita pa rin namin na sumasaklaw sa kurso, 91 00:05:10,550 --> 00:05:13,470 HTML, PHP at tulad ng, ngunit hindi lahat ng mga pamilyar sa Web, 92 00:05:13,470 --> 00:05:16,270 at ako bias ang pag-uusap na ito patungo sa Web lamang dahil 93 00:05:16,270 --> 00:05:18,380 karamihan ng mga tao paggawa Web-based panghuling proyekto, 94 00:05:18,380 --> 00:05:20,260 ngunit sa pamamagitan ng ay nangangahulugan na walang kinakailangang. 95 00:05:20,260 --> 00:05:22,260 Paggamit C ay fine, layunin C, Java, 96 00:05:22,260 --> 00:05:25,350 medyo fine ang anumang iba pang mga wika na maaaring alam mo o gusto mong malaman. 97 00:05:25,350 --> 00:05:29,370 Subalit upang makuha ang mga juice na dumadaloy sa una, makikita namin inaasahan ang pagsusumite ng isang preproposal 98 00:05:29,370 --> 00:05:33,520 kung saan, ayon sa mga PDF sa website, na ngayon sa cs50.net, 99 00:05:33,520 --> 00:05:36,080 at sa tuktok na kaliwang makikita mo ang panghuling proyekto 100 00:05:36,080 --> 00:05:38,920 ang pagtutukoy para sa huling proyekto, 101 00:05:38,920 --> 00:05:41,470 at sa may mga detalye sa preproposal at ang gusto. 102 00:05:41,470 --> 00:05:44,760 Ito medyo magkano ang kahulihan babagsak ito sa isang email sa iyong kapwa ng pagtuturo 103 00:05:44,760 --> 00:05:48,450 lamang upang simulan ang isang pakikipag-usap sa kanya tungkol sa kung ano ang pinag-iisipan mo. 104 00:05:48,450 --> 00:05:52,510 Sa projects.cs50.net ay isang imbakan ng mga ideya mula sa mga tao sa campus 105 00:05:52,510 --> 00:05:54,480 kung ikaw ay struggling upang makabuo ng ilang mga ideya, 106 00:05:54,480 --> 00:06:01,140 at manual.cs50.net/APIs ay imbakan ng mga link sa Mga API. 107 00:06:01,140 --> 00:06:06,710 >> Ano, bagaman, ay isang API? 108 00:06:06,710 --> 00:06:09,790 Ano ang isang API? Ko na sinabi ito ng hindi bababa sa dalawang beses, 109 00:06:09,790 --> 00:06:12,640 ayon sa mga transcript ng sa nakalipas na ilang linggo. 110 00:06:12,640 --> 00:06:17,050 Ano iyon? [Estudyante, hindi maintindihan] 111 00:06:17,050 --> 00:06:19,340 >> Okay, mabuti. Kaya ng isang bagay na programming interface. 112 00:06:19,340 --> 00:06:22,710 Application programming interface, at ito ay maaaring tumagal ng ilang form, 113 00:06:22,710 --> 00:06:25,850 ngunit kung ano ito talagang kahulihan babagsak ito upang code 114 00:06:25,850 --> 00:06:29,660 may iba hs nakasulat o data na ang ibang tao ay nakolekta 115 00:06:29,660 --> 00:06:33,670 na magagamit sa iyo sa ilang mga program na paraan. 116 00:06:33,670 --> 00:06:36,630 Maaari mong isulat ang code sa C, PHP, Python, Ruby, 117 00:06:36,630 --> 00:06:38,760 anumang iyong wika ng pagpili ay karaniwang ay, 118 00:06:38,760 --> 00:06:42,240 at maaari mong sa paanuman bumuo kapag ng iba-andar 119 00:06:42,240 --> 00:06:44,440 o ibang tao ang hanay ng data. 120 00:06:44,440 --> 00:06:47,210 Halimbawa, kung pumunta ako sa link na ito dito, 121 00:06:47,210 --> 00:06:50,750 at makikita mo ang isang pares ng mga link sa kasunod na pahina 122 00:06:50,750 --> 00:06:56,093 kung saan mayroon kaming CS50 ng sariling mga API, na kung saan ay napaka Harvard-sentrik, at pagkatapos ang third-party na mga API. 123 00:06:56,930 --> 00:06:59,300 Kabilang sa mga third-party na Mga API ay talagang kapaki-pakinabang na bagay 124 00:06:59,300 --> 00:07:01,780 tulad ng upang magpadala ng SMS sa mga tao, 125 00:07:01,780 --> 00:07:04,690 upang makatanggap ng mga SMS text na mensahe mula sa mga tao. 126 00:07:04,690 --> 00:07:08,160 At mga bagay tulad na maaaring mayroon ka walang ideya kung paano ipatupad ang iyong sarili, 127 00:07:08,160 --> 00:07:10,440 ngunit salamat sa mga serbisyo, ang ilang mga libre at ilang komersyal, 128 00:07:10,440 --> 00:07:14,000 maaari kang bumuo ng paitaas sa mga at gawin ang isang bagay ng interes sa iyo. 129 00:07:14,000 --> 00:07:16,990 Kabilang CS50 API ng mga campus-sentrik bagay tulad ng 130 00:07:16,990 --> 00:07:21,480 Harvard kurso, enerhiya, mga kaganapan, pagkain, mga mapa, mga balita, tweet at Shuttleboy sariling, 131 00:07:21,480 --> 00:07:23,940 at ang mga ito ay mga API na tumingin ng isang maliit na bagay tulad nito. 132 00:07:23,940 --> 00:07:26,990 >> Hayaan akong hilahin ang HarvardFood API. 133 00:07:26,990 --> 00:07:30,620 Kung sakaling mo na sa HUD website, marahil ka pa doon 134 00:07:30,620 --> 00:07:35,410 lang makita kung ano ang para sa hapunan o upang makita kung ano ang mga oras para sa ilang d-hall. 135 00:07:35,410 --> 00:07:38,000 Well, ito ay hindi partikular na madaling i-navigate, 136 00:07:38,000 --> 00:07:41,100 at kaya kung ano ang namin ginawa ng ilang oras ang nakalipas ay namin sinulat ni software, 137 00:07:41,100 --> 00:07:47,270 ang mangyayari sa PHP, na aktwal na screen scrapes ang kabuuan ng website HUD. 138 00:07:47,270 --> 00:07:51,400 Upang screen simutin ang pispis isang bagay ay nangangahulugan upang magsulat ng isang programa sa isang wika tulad ng PHP 139 00:07:51,400 --> 00:07:55,270 na nagpapanggap sa isang browser, kahit na maaari mong patakbuhin ang mga ito sa isang command prompt, 140 00:07:55,270 --> 00:07:58,180 na nagpapanggap na maging isang browser, kumokonekta sa isang website, 141 00:07:58,180 --> 00:08:01,480 Dina-download nito sa HTML, ang wika kung saan ito ay nakasulat, 142 00:08:01,480 --> 00:08:04,300 at pagkatapos ay bumabasa ng ito, o higit na partikular, Pina-parse ito 143 00:08:04,300 --> 00:08:06,140 itaas hanggang sa ibaba, kaliwa hanggang kanang. 144 00:08:06,140 --> 00:08:08,870 At kung ano ang namin ginawa ay sinulat ni namin ang aming code sa isang paraan na 145 00:08:08,870 --> 00:08:12,910 anumang oras nakita namin ang isang bagay na HTML na mukhang tulad ng isang bagay sa menu, 146 00:08:12,910 --> 00:08:16,470 tulad ng hamburger, pagkatapos ay i-import namin na sa aming sariling database. 147 00:08:16,470 --> 00:08:20,410 At anumang oras nakita namin ang nutritional nilalaman, namin-import na sa aming sariling database. 148 00:08:20,410 --> 00:08:23,090 At kung ano ang ginawa namin ay pakikinabangan ang katunayan na ang website ng HUD, 149 00:08:23,090 --> 00:08:27,280 kahit na maaari itong maging isang bit ng isang hamon para sa amin tao upang mag-navigate 150 00:08:27,280 --> 00:08:32,559 sa ilalim ng hood, ang lahat ng HTML ay binuo sa pamamagitan ng kanilang sariling mga programa sa computer. 151 00:08:32,559 --> 00:08:35,159 Kaya lahat ng kanilang mga HTML, kahit na maaaring ito tumingin magulo, 152 00:08:35,159 --> 00:08:38,026 tulad ng karamihan ng mga website sa ilalim ng hood ay sumusunod sa isang pattern. 153 00:08:38,260 --> 00:08:40,799 Kaya lang namin na ginugol ng dalawang oras ang pag-uunawa na pattern 154 00:08:40,799 --> 00:08:44,240 sa gayon ay sa dulo, hindi namin itapon lahat ng magulo HTML, 155 00:08:44,240 --> 00:08:47,340 lahat ng aesthetics ng bold nakaharap at italics at ang mga tulad ng, 156 00:08:47,340 --> 00:08:52,350 at kung ano ang hindi namin gawin ay ilantad na parehong data. 157 00:08:52,350 --> 00:08:54,870 Halimbawa, sa ganitong paraan. 158 00:08:54,870 --> 00:08:56,840 Kaya namin, ayon sa ang babasahin dito, 159 00:08:56,840 --> 00:08:59,190 kaalaman sa mundo na kung humiling ka ng isang URL 160 00:08:59,190 --> 00:09:03,310 na ganito ang hitsura, food.cs50.net / isang bagay, 161 00:09:03,310 --> 00:09:07,220 at magbigay sa iyo ng ilang mga parameter, kung saan namin makipag-usap tungkol sa ngayon, 162 00:09:07,220 --> 00:09:11,780 tulad ng end-date na oras, na start-date pagkain oras, at iba pa, 163 00:09:11,780 --> 00:09:14,090 kung ano ang aming mga server ay bumalik sa iyo, halimbawa, 164 00:09:14,090 --> 00:09:18,740 ay isang CSV file, kuwit separted halaga tulad ng isang Excel file, 165 00:09:18,740 --> 00:09:23,140 naglalaman ng lahat para sa almusal sa partikular na petsa sa Marso noong nakaraang taon 166 00:09:23,140 --> 00:09:25,450 kapag nangyari ko upang isulat ito dokumentasyon. 167 00:09:25,450 --> 00:09:27,870 >> Para sa mga pamilyar, CSV ay hindi lamang ang format ng file. 168 00:09:27,870 --> 00:09:30,610 May ibang format na ang lahat ng mga mas maraming nalalaman 169 00:09:30,610 --> 00:09:32,670 na tinatawag na JSON, JavaScript Bagay pagtatanda. 170 00:09:32,670 --> 00:09:34,770 Ang data ay maaaring bumalik sa format na iyon. 171 00:09:34,770 --> 00:09:38,110 Kaya ang takeaway dito ay na kung dive ka sa API na ito 172 00:09:38,110 --> 00:09:41,170 o anumang iba pang mga ng CS50 o anumang out doon sa Internet, 173 00:09:41,170 --> 00:09:45,560 o hindi sa lahat, nauunawaan natin na ang mundo ay nagiging nagsimula sa alisunod sa pamantayan 174 00:09:45,560 --> 00:09:47,670 kung paano machine makipag-usap. 175 00:09:47,670 --> 00:09:50,660 Ginagamit namin ang karaniwang mga format ng data tulad ng CSV o JSON. 176 00:09:50,660 --> 00:09:54,320 At kung ano ang ibig sabihin nito para sa iyo ay maaari mong isulat ang mga kawili-wiling bahagi ng isang programa 177 00:09:54,320 --> 00:09:56,580 na ay nagbibigay-daan sa iyong user maghanap sa dining hall menu, 178 00:09:56,580 --> 00:10:00,010 na ay nagbibigay-daan sa mga ito na lumikha ng mga listahan ng mga paborito na ay nagbibigay-daan sa mga ito na makakuha ng mga alerto sa teksto 179 00:10:00,010 --> 00:10:02,480 kapag ang kanilang mga paboritong pagkain ay tungkol sa almusal sa ilang d-hall 180 00:10:02,480 --> 00:10:07,090 sa pamamagitan ng paggamit ng isang tao set ng data at gusali sa tuktok ng kanilang mga API. 181 00:10:07,090 --> 00:10:13,600 Kaya higit pa sa na sa anyo ng mga seminar at dokumentasyon na mayroon ka dito online. 182 00:10:13,600 --> 00:10:16,450 Kaya iyon, pagkatapos, ay API. 183 00:10:16,450 --> 00:10:18,900 >> Na pinagsasama sa amin pabalik sa HTML. Quick pagbabalik-tanaw. 184 00:10:18,900 --> 00:10:22,920 Ano ang HTML? 185 00:10:22,920 --> 00:10:25,000 [Mag-aaral, hindi maintindihan] >> Magandang. Hypertext Markup Language. 186 00:10:25,000 --> 00:10:31,300 Ibang tao, kung ano ang Wika Hypertext Markup? 187 00:10:31,300 --> 00:10:37,340 Hypertext Markup Language. 188 00:10:37,340 --> 00:10:40,330 Okay. Kaya HTML, Hypertext. 189 00:10:40,330 --> 00:10:43,100 Hypertext lamang tumutukoy sa Web, para sa pinaka-bahagi. 190 00:10:43,100 --> 00:10:45,730 Markup nangangahulugan na ito ay hindi tunay na isang programming language, HTML. 191 00:10:45,730 --> 00:10:48,120 Ito ay hindi isang wika na maaari mong ipahayag ang logic. 192 00:10:48,120 --> 00:10:50,710 Hindi ito ay mayroong mga loop. Ito ay hindi magkaroon ng mga kondisyon. 193 00:10:50,710 --> 00:10:52,820 Hindi ito function, per se. 194 00:10:52,820 --> 00:10:56,680 Sa halip, ito ay may mga bagay na ito na tinatawag na tag, o mas maayos, elemento. 195 00:10:56,680 --> 00:10:59,970 At ang mga elementong iyon ay may tag ng pagsisimula at pagtatapos ng mga tag, 196 00:10:59,970 --> 00:11:04,300 o bukas na tag at closed tag, at kung ano ang mga tag na iyon ay pangkalahatang ibig sabihin para sa isang browser ay, 197 00:11:04,300 --> 00:11:09,270 simulan ang paggawa ng isang bagay at pagkatapos ay tumigil sa paggawa ng isang bagay, kahit na may mga pagbubukod na iyon. 198 00:11:09,270 --> 00:11:12,480 Minsan lang 'maglagay ng line break dito,' halimbawa. 199 00:11:12,480 --> 00:11:15,150 At nakita namin ang mga halimbawa ng mga na ang iba pang mga araw, sa pagitan ng naka-bold na nakaharap, 200 00:11:15,150 --> 00:11:17,430 line break, at pagkatapos ng ilang mga iba pang mga tag. 201 00:11:17,430 --> 00:11:19,880 Kaya HTML ang wika kung saan nakasulat ang mga web page. 202 00:11:19,880 --> 00:11:23,760 Kaya kung pumunta ako sa isang bagay tulad ng Google.com 203 00:11:23,760 --> 00:11:26,180 at hilahin lamang ang kanilang tahanan pahina, 204 00:11:26,180 --> 00:11:29,690 isipin ang na kung ikaw ay i-right click o kontrolin i-click ang 205 00:11:29,690 --> 00:11:32,140 at tumingin sa pinagmulan ng page view, karaniwang 206 00:11:32,140 --> 00:11:34,420 ito ay isang kumpletong gulo mga araw na ito sa ilalim ng hood, ngunit na dahil 207 00:11:34,420 --> 00:11:38,170 computer ay hindi pakialam tungkol sa puting espasyo, kaya ito ay hindi upang tumingin medyo. 208 00:11:38,170 --> 00:11:40,240 Ngunit kung kami ay mag-zoom in sa mga bahagi nito, 209 00:11:40,240 --> 00:11:43,460 mapapansin na ang Chrome, lamang na maging maganda ang, ay mga bagay na code ng kulay. 210 00:11:43,460 --> 00:11:48,460 Sa katunayan, ito ay ang unang tag na nakita natin sa isang pahina ng web. 211 00:11:48,460 --> 00:11:51,750 At muli, HTML 5, ang pinakabagong bersyon ng wikang ito, 212 00:11:51,750 --> 00:11:53,830 ay ang bagay na ito sa simula, 213 00:11:53,830 --> 00:11:57,820 00:12:03,580 ngunit ito lamang ay uri ng isang standard na nagsasabing, hey mundo, dito ay isang file na HTML sa bersyon 5. 215 00:12:03,580 --> 00:12:08,920 >> Ang kawili-wiling bahagi nagsisimula dito. Kaya 00:12:11,640 ng HTML elemento huling oras. 217 00:12:11,640 --> 00:12:14,630 Ano ang mga dalawang pangunahing mga bata? 218 00:12:14,630 --> 00:12:17,170 Ulo at katawan, tulad ng tao na may tattoo ng ilang sandali ang nakalipas. 219 00:12:17,170 --> 00:12:19,640 Mayroong dalawang mga bahagi ng web page, ulo at katawan, 220 00:12:19,640 --> 00:12:23,750 at manariwa sa diwa, pagkatapos, na marahil ang pinakasimpleng web page kami maaaring magsagawa ng ganito ang hitsura. 221 00:12:23,750 --> 00:12:27,460 At ako indent ito lamang uri ng kapong baka at maglinis sa aking code, 222 00:12:27,460 --> 00:12:30,710 ngunit kung ano ang talagang mahalaga dito na may ilang hierarchy upang ito. 223 00:12:30,710 --> 00:12:35,420 At anumang tag ko na binuksan isinara ko at samakatuwid simetrya na ito 224 00:12:35,420 --> 00:12:38,300 sa lahat ng markup na aking nilikha. 225 00:12:38,300 --> 00:12:41,620 Kaya huling beses na nagsimula kaming pagsusulat ng mga pahina ng web sa aking sariling laptop. 226 00:12:41,620 --> 00:12:45,470 Ako binuksan up ng mga edit ng teksto, naka-save na ako ang file bilang hello.html, 227 00:12:45,470 --> 00:12:50,190 Drag ko pagkatapos ang file papunta sa aking browser, at voila, ako ay may isang pahina sa Internet. 228 00:12:50,190 --> 00:12:53,110 Ngayon, hindi pa kaso; ko ay may isang pahina sa aking hard drive, 229 00:12:53,110 --> 00:12:58,260 at ako ay literal lamang ang tao sa mundo na makita na web pahina sa isang browser. 230 00:12:58,260 --> 00:13:00,670 >> Kaya ngayon, namin ipakilala ang isang aktwal na web server 231 00:13:00,670 --> 00:13:02,750 at ang paniwala ng aktwal na paghahatid ng nilalaman sa Internet 232 00:13:02,750 --> 00:13:04,970 at kung paano ito lahat ng mga pagsisimula upang magkasya sama-sama. 233 00:13:04,970 --> 00:13:08,350 Kaya ito lumiliko na ang lahat ng oras na ito sa CS50 appliance 234 00:13:08,350 --> 00:13:11,590 nagkaroon ka ng isang web server sa iyong computer. 235 00:13:11,590 --> 00:13:16,560 Namin ang, sa pagkamakatarungan, ginagamit lamang ito para sa gedit, para kumalatong, para sa GDB at ang mga tulad ng, 236 00:13:16,560 --> 00:13:21,000 kundi pati na rin na naka-install sa pamamagitan ng sa amin para sa iyo sa appliance ay isang web server, 237 00:13:21,000 --> 00:13:23,940 at web server na iyon ang mangyayari sa libreng, isang open source, 238 00:13:23,940 --> 00:13:26,580 isa ng ang pinaka-popular na mga sa mundo, na tinatawag na Apache. 239 00:13:26,580 --> 00:13:31,340 Nito sa karagdagang teknikal na pangalan ay HTTPd, ang d pagiging para sa diyablo dito, 240 00:13:31,340 --> 00:13:34,110 kung saan ay isang teknikal na salita para sa isang server. 241 00:13:34,110 --> 00:13:38,690 Kaya-install sa CS50 appliance ay isang web server, at kung ano ang na ibig sabihin nito? 242 00:13:38,690 --> 00:13:43,740 Well, ang isang web server, conceptually, ang ilang mga server sa Internet na naghahain ng nilalaman ng web. 243 00:13:43,740 --> 00:13:48,630 Kapag tinanong para sa isang file, spits ang HTML na composes file na iyon, at voila. 244 00:13:48,630 --> 00:13:51,370 Nakikita mo home page ilang website. 245 00:13:51,370 --> 00:13:54,970 Ngunit ang server ay, mas tiyak, ang isang bahagi ng software. 246 00:13:54,970 --> 00:13:59,190 Hindi ito sa isang pisikal machine, ito lamang ay isang piraso ng software na tumatakbo. 247 00:13:59,190 --> 00:14:01,980 Kaya ang CS50 appliance, siyempre, ay isang piraso ng software 248 00:14:01,980 --> 00:14:04,270 kahit na uri ng nagpapanggap na isang machine. 249 00:14:04,270 --> 00:14:06,960 Ito ay nagpapanggap bilang isang computer sa loob ng isang computer, 250 00:14:06,960 --> 00:14:11,140 ngunit lamang ay nangangahulugan na ang appliance ang tiyak na magpatakbo ng mga bagay tulad ng mga web server. 251 00:14:11,140 --> 00:14:13,260 Maaari itong aktwal na magpatakbo ng mga email server. 252 00:14:13,260 --> 00:14:16,440 Maaari naming magpatakbo ng isang instant messaging server sa appliance kung gusto naming, 253 00:14:16,440 --> 00:14:20,780 at sa katunayan, namin patakbuhin ang isa pang uri ng server, na kilala bilang isang server ng database, MySQL. 254 00:14:20,780 --> 00:14:22,620 Ngunit higit pa sa susunod na linggo. 255 00:14:22,620 --> 00:14:26,400 Nangangahulugan ito na maaari ko aktwal na bisitahin ang web mga pahina 256 00:14:26,400 --> 00:14:30,480 sa loob ng aking appliance sa pamamagitan ng paggamit ng browser sa loob ng appliance 257 00:14:30,480 --> 00:14:33,600 o kahit sa aking sariling laptop, ang aking Mac o sa aking PC. 258 00:14:33,600 --> 00:14:37,780 Kaya kung ano ang ibig sabihin nito? Ito lumiliko out anumang oras nagpapatakbo ka ng isang Linux computer na, 259 00:14:37,780 --> 00:14:40,910 ang palayaw nito ay "lokal na host." 260 00:14:40,910 --> 00:14:43,370 Ito ay hindi magkaroon ng isang pangalan ng domain dahil hindi pa namin bumili ng isang domain name 261 00:14:43,370 --> 00:14:46,590 para sa isang bagay tulad ng appliance, kaya nito ang pangalan ng default na mga lokal na host. 262 00:14:46,590 --> 00:14:50,470 >> Ngunit upang makuha ang appliance upang simulan ang paghahatid ng mga web page, 263 00:14:50,470 --> 00:14:52,270 mayroon kaming upang lumikha muna ang mga ito. 264 00:14:52,270 --> 00:14:55,200 Kaya sabihin gawin iyon. Hayaan akong pumunta sa isang window ng terminal dito 265 00:14:55,200 --> 00:14:58,190 at mapansin na ako sa aking karaniwang John Harvard prompt. 266 00:14:58,190 --> 00:15:01,670 Ipaalam sa akin sige at i-type ang mga ls, at makikita namin makita ang ilang mga pamilyar na mga bagay mula sa semestre, 267 00:15:01,670 --> 00:15:04,580 desktop, download, dropbox at iba pa, 268 00:15:04,580 --> 00:15:07,540 ngunit ngayon sisimulan namin ang magiging aming pansin sa isang ilang. 269 00:15:07,540 --> 00:15:11,530 Sa maraming mga Linux server sa web ang folder na tinatawag na pampublikong html, 270 00:15:11,530 --> 00:15:15,630 ngunit kami ay pagpunta upang laktawan na ang isa para sa ngayon at tumutok sa mga ito, vhosts. 271 00:15:15,630 --> 00:15:18,850 Sinuman malaman kung ano ang vhost ng? 272 00:15:18,850 --> 00:15:21,110 Lang bobo magulong pag-uusap para sa virtual host, 273 00:15:21,110 --> 00:15:23,850 at kung ano ang ibig sabihin nito ay na sa isang tipikal na server 274 00:15:23,850 --> 00:15:26,810 maaari mong aktwal na-host ng maramihang mga website. 275 00:15:26,810 --> 00:15:31,500 Maaari kang bumili ng pangalan ng domain tulad ng foo.com, at maaari mong i-host ang mga ito sa isang server. 276 00:15:31,500 --> 00:15:36,100 Ngunit maaari ka ring bumili bar.com at host ito sa parehong server. 277 00:15:36,100 --> 00:15:40,250 Ang dahilan sa pagiging, ang mga browser na smart sapat upang ipaalam sa server 278 00:15:40,250 --> 00:15:45,880 kapag ang isang gumagamit ay humihiling ng ilang mga webpage, ano pangalan ng domain ng gumagamit ang nais homepage para sa. 279 00:15:45,880 --> 00:15:48,760 Kaya kung ano ang magaling tungkol sa hindi mo kailangan ng isang pisikal na server 280 00:15:48,760 --> 00:15:52,040 o isang CS50 appliance para sa bawat website baka gusto mong lumikha ng. 281 00:15:52,040 --> 00:15:55,520 Maaari mong gamitin ang parehong server at bumuo ng isang daang ibang website. 282 00:15:55,520 --> 00:15:58,770 At sa katunayan, kung ikaw ay isang tao na sinusubukang upang simulan ang isang website, 283 00:15:58,770 --> 00:16:02,100 kung katuwaan o para sa negosyo, karaniwang makikita mo pumunta sa Internet, 284 00:16:02,100 --> 00:16:04,650 at makikita mo bayaran ang isang tao sampung Bucks sa isang buwan, isang daang dolyar sa isang buwan 285 00:16:04,650 --> 00:16:06,670 upang mag-host ang iyong website para sa iyo. 286 00:16:06,670 --> 00:16:11,060 At ang paraan na gumagana singilin sila ay ibang tao 287 00:16:11,060 --> 00:16:13,160 sampung Bucks sa isang buwan o isang daang Bucks sa isang buwan 288 00:16:13,160 --> 00:16:17,200 upang mag-host ng website ng iba pang mga tao sa kanilang parehong server. 289 00:16:17,200 --> 00:16:20,740 Ang dahilan kung bakit maaari nilang gawin na dahil sa ang tampok na ito na tinatawag na bhosts, 290 00:16:20,740 --> 00:16:23,790 ngunit higit pa sa pagdating oras para sa pangwakas na proyekto. 291 00:16:23,790 --> 00:16:28,360 >> Sa ngayon, sabihin lang sumisid sa may. Kaya cd vhosts, at kung type ko ls ngayon, 292 00:16:28,360 --> 00:16:31,370 mapansin na may isang folder doon na tinatawag na lokal na host. 293 00:16:31,370 --> 00:16:33,440 Iyon ay dahil, sa pamamagitan ng default, ang mga numero ng appliance 294 00:16:33,440 --> 00:16:36,160 ka upang patakbuhin ang isang website sa isang appliance. 295 00:16:36,160 --> 00:16:38,970 Ito ay hindi talagang tunay na mundo, ito ay hindi real-mundo na web server. 296 00:16:38,970 --> 00:16:41,690 Kaya hayaan mo akong pumunta sa lokal na host, at ngayon makikita namin makita doon 297 00:16:41,690 --> 00:16:44,290 isang huling direktoryo na tinatawag na HTML. 298 00:16:44,290 --> 00:16:47,080 Kaya ng kaunti malalim, ang hierarchy, ngunit kung at kapag 299 00:16:47,080 --> 00:16:51,230 ka magpasya upang simulan ang pagbuo ng maramihang mga website sa mga susunod n buwan o taon, 300 00:16:51,230 --> 00:16:54,370 ganitong uri ng istraktura ng folder ay may gawi na maging kapaki-pakinabang. 301 00:16:54,370 --> 00:16:56,560 Ngayon ipaalam pumunta sa HTML bilang ko lang ginawa, 302 00:16:56,560 --> 00:16:59,010 uri ng ls, at walang ay doon. 303 00:16:59,010 --> 00:17:01,390 Kaya ngayon sabihin magpatuloy at gawin ito. Hayaan akong magbukas ng Chrome 304 00:17:01,390 --> 00:17:07,300 sa loob ng appliance, at ipaalam sa akin pumunta sa http://localhost. 305 00:17:07,300 --> 00:17:14,440 Kaya literal ang pangalan para sa aking appliance, ipasok, at makakuha ko ng index ng /. 306 00:17:14,440 --> 00:17:18,290 Ito ay hindi talaga nagpapakita sa akin anumang ng interes, 307 00:17:18,290 --> 00:17:23,400 ngunit ito lumiliko na kung ano ang nakikita namin na folder, HTML. 308 00:17:23,400 --> 00:17:25,770 Wala sa loob ng folder na iyon sa ngayon, 309 00:17:25,770 --> 00:17:28,750 kaya sa halip, kung ano ako pagpunta sa gawin ang unang lumikha ng isang file. 310 00:17:28,750 --> 00:17:33,530 Lumikha ng isang file na HTML tulad ng ginawa namin sa Lunes, ngunit ang oras na ito ilagay ito sa loob ng appliance. 311 00:17:33,530 --> 00:17:36,830 Para sa mga na sinusubukan upang sundin kasama ng laptop ngayon, 312 00:17:36,830 --> 00:17:42,040 hayaang gawin sa akin ng isa bukod na makikita sakop sa web-based pset, 313 00:17:42,040 --> 00:17:44,280 ngunit upang makakuha ng ito upang gumana para sa unang pagkakataon, 314 00:17:44,280 --> 00:17:49,830 ka upang patakbuhin ang command na ito: sudo serbisyo httpd simula. 315 00:17:49,830 --> 00:17:52,670 At ito, muli, ay paulit-ulit na sa huling pset, 316 00:17:52,670 --> 00:17:55,460 ngunit kung ikaw ay paglalaro ng kasama sa bahay ngayon, ang web server 317 00:17:55,460 --> 00:17:58,660 ay naka-off sa appliance, at na sa gayon ay hindi ito Sap up RAM 318 00:17:58,660 --> 00:18:01,960 at memory para sa 7 linggo ng semestre kapag hindi namin ito kailangan. 319 00:18:01,960 --> 00:18:05,190 Kaya kailangan mo upang patakbuhin ang command na ito nang isang beses, at makakakuha ka ng isang output tulad na. 320 00:18:05,190 --> 00:18:07,920 Pagkatapos ay dapat mong upang i-play sa kahabaan dito. 321 00:18:07,920 --> 00:18:10,330 Ngayon sabihin bumalik sa folder na ito. 322 00:18:10,330 --> 00:18:12,770 Ang folder na ito ay walang laman, kaya hayaan mo akong magsimula sa paglikha ng isang file, 323 00:18:12,770 --> 00:18:16,360 gedit hello.html. 324 00:18:16,360 --> 00:18:20,930 >> Ayos lang. Gedit ay bukas, gaya ng dati. Hayaan ang gawin sa akin ang doctype, html, 325 00:18:20,930 --> 00:18:25,270 html, hayaan mo akong makakuha ng nangunguna sa aking sarili at simulan ang pagsasara ng aking mga tag nang maaga. 326 00:18:25,270 --> 00:18:28,380 Ngayon Mayroon akong sa ulo. Hayaan akong magpatuloy at isara ang ulo, 327 00:18:28,380 --> 00:18:32,450 ipaalam sa akin ngayon gawin ang mga pamagat ng pahina, kumusta mundo tulad ng huling oras, 328 00:18:32,450 --> 00:18:34,790 malapit pamagat, ngayon ay hayaan mo akong gumawa ng isang katawan. 329 00:18:34,790 --> 00:18:38,130 In dito kong kamustahin, mundo na may ilang exclams 330 00:18:38,130 --> 00:18:40,550 upang gumawa ng malinaw na ito ng ibang string. 331 00:18:40,550 --> 00:18:45,800 Isara ang katawan, at ngayon hayaan mo akong magpatuloy at-file ang i-save. 332 00:18:45,800 --> 00:18:48,470 Hayaan akong bumalik sa aking terminal na window, at kung type ko ls, 333 00:18:48,470 --> 00:18:51,830 Dapat kong, siguro, tingnan ang hello.html. At gagawin ko. 334 00:18:51,830 --> 00:18:55,070 Kaya ngayon sabihin bumalik sa aking browser, i-click ang I-reload, 335 00:18:55,070 --> 00:18:58,930 at maaari mong makita kami ay sa katunayan sa loob ng ito HTML folder. 336 00:18:58,930 --> 00:19:02,310 Hindi ako nakakakita ng isang web page, ito ay Apache, web server, 337 00:19:02,310 --> 00:19:04,670 lamang nagpapakita sa akin ang mga nilalaman ng listahan ng mga direktoryong ito. 338 00:19:04,670 --> 00:19:08,260 Lamang tulad ng Mac OS o Windows ay karaniwang gawin sa iyong sariling lokal na hard drive. 339 00:19:08,260 --> 00:19:12,730 Kaya kung gusto kong makita ang web page na ito, maaari kong i-click ang maliit na link na ito dito, hello.html, 340 00:19:12,730 --> 00:19:15,160 at sa katunayan, na kung ano ako ay umaasa upang makita. 341 00:19:15,160 --> 00:19:18,080 Ngayon, muli, ito ay hindi isang URL na ang anumang mo maaaring bisitahin ngayon, 342 00:19:18,080 --> 00:19:20,760 dahil para sa iyo, lokal na host, kung mayroon ka ng isang laptop dito, 343 00:19:20,760 --> 00:19:23,050 ito ay nagre-refer sa iyong sariling pagkakataon ng appliance. 344 00:19:23,050 --> 00:19:25,900 Ito ay sa aking sariling personal na appliance, 345 00:19:25,900 --> 00:19:29,080 ngunit ito ay uri ng pipi para sa akin na magkaroon, na magkaroon ng 346 00:19:29,080 --> 00:19:34,480 ng gumagamit tulad ng aking sarili mag-click sa hello.html sa aktwal na makita ang mga nilalaman ng pahinang ito. 347 00:19:34,480 --> 00:19:42,590 Ito lumiliko out na ang mga web server tulad ng Apache ipaalam mayroon kang isang default na file para sa anumang web server. 348 00:19:42,590 --> 00:19:44,640 Mapansin dito mayroon kaming hello.html. 349 00:19:44,640 --> 00:19:48,410 Ano ang command sa Linux upang palitan ang pangalan ng isang file? 350 00:19:48,410 --> 00:19:50,870 >> MV, para sa paglipat. Kaya ipaalam sa akin gawin na, 351 00:19:50,870 --> 00:19:55,870 at ipaalam sa akin palitan ang pangalan ng hello.html sa index.html. 352 00:19:55,870 --> 00:19:58,610 Hayaan akong type ls upang kumpirmahin ngayon napalitan ng pangalan. 353 00:19:58,610 --> 00:20:03,250 Ngayon, ito ay pagpunta sa - kung pumunta ako pabalik sa lokal na host, 354 00:20:03,250 --> 00:20:06,710 mapansin ngayon na awtomatiko ako nakikita sa web page na iyon. 355 00:20:06,710 --> 00:20:11,740 Na ito ay kapareho sa aking aktwal na ginagawa / index.html, 356 00:20:11,740 --> 00:20:14,740 ngunit ang gandang bagay na ngayon ay na ang web server ng pag-uunawa, 357 00:20:14,740 --> 00:20:18,830 oh, kung mayroon kang isang file na, sa pamamagitan ng mga tao na convention, ay tinatawag na index.html, 358 00:20:18,830 --> 00:20:21,200 hayaan mo akong ipakita ang user na file sa pamamagitan ng default 359 00:20:21,200 --> 00:20:25,290 kaysa sa ilang bobo listahan ng direktoryo na kung saan ay hindi sa lahat ng user-friendly. 360 00:20:25,290 --> 00:20:28,900 Sa katunayan, karamihan sa mga website na binibisita mo sa Internet ay hindi magkaroon ng isang listahan ng mga file na mag-click sa, 361 00:20:28,900 --> 00:20:34,040 lang nila ipakita sa iyo ang nilalaman. Kaya na kung paano namin gawin iyon, index.html. 362 00:20:34,040 --> 00:20:37,000 Kaya ito ay ang lahat ng mga masaya at mabuti, ngunit ito ay isang magandang simpleng web page. 363 00:20:37,000 --> 00:20:41,640 Hayaan akong sige at buksan ang index.html sa aking vhosts, 364 00:20:41,640 --> 00:20:47,620 mga lokal na host, html direktoryo, at hayaan ang magdagdag ng isang bagay ng mas malawak na interes. 365 00:20:47,620 --> 00:20:56,120 Kaya walang halo mundo; sabihin sa halip ay sabihin ang 'ito ay CS50, Harvard College. . . ' 366 00:20:56,120 --> 00:21:00,000 Kaya sa simula ng kurso ang paglalarawan ng catalog ng ilang mga uri doon. 367 00:21:00,000 --> 00:21:03,780 Ngayon kung ako reload, dapat ko bang makita ito sa aking home page. 368 00:21:03,780 --> 00:21:09,560 Okay, at ko makita na, ngunit ipagpalagay na nais ko sa ngayon ilista ang ilang higit pang nilalaman sa file na ito. 369 00:21:09,560 --> 00:21:15,160 Maaari ba akong mag-down na dito at sasabihin, kinakailangan wala, 370 00:21:15,160 --> 00:21:18,740 bagaman ang ilan sa inyo ay marahil gusto, 'Ha ha ha, walang kinakailangan.' 371 00:21:18,740 --> 00:21:24,320 Ngunit - opisyal. Kaya reload, at ngayon ay mayroon kaming ang parehong biro na nakita namin huling beses. 372 00:21:24,320 --> 00:21:26,240 Ngunit kung bakit ay na? Ito ay isang simpleng aayos. 373 00:21:26,240 --> 00:21:31,440 Bakit pinaghiwa pahinang ito? 374 00:21:31,440 --> 00:21:34,170 [Mag-aaral, hindi maintindihan] >> Oo, kami na malutas ito bago 375 00:21:34,170 --> 00:21:37,440 sa pamamagitan ng tahasang nagsasabi sa browser 'maglagay ng line break dito.' 376 00:21:37,440 --> 00:21:39,440 At na dahil, muli, ang browser ng na lamang gawin 377 00:21:39,440 --> 00:21:42,610 tahasan kung ano ang markup language ay nagsasabi ito upang gawin, 378 00:21:42,610 --> 00:21:45,730 kaya kahit na maaari mong pindutin ang enter isa o dalawang beses o kahit sampung beses, 379 00:21:45,730 --> 00:21:49,870 ito upang pagsamahin na ang lahat sa isang solong puwang, sa pamamagitan lamang ng convention. 380 00:21:49,870 --> 00:21:52,770 Kaya kung gusto mo talagang isang line break, mayroon kang upang gamitin ang mga tag ng br, 381 00:21:52,770 --> 00:21:56,840 at ngayon abiso, tulad ng Lunes, ko bang ilagay ang / loob ng tag na ito, 382 00:21:56,840 --> 00:22:00,090 lamang dahil ito lamang ay hindi pakiramdam karapatan 383 00:22:00,090 --> 00:22:02,990 upang simulan ang isang line break pagkatapos ay itigil ito na wala sa pagitan. 384 00:22:02,990 --> 00:22:07,740 >> Kaya ang convention sa HTML upang buksan at isara ng tag nang sabay-sabay. 385 00:22:07,740 --> 00:22:11,050 Bilang isang bukod, makakakita ka ng maraming ng mga website sa mga aklat na hindi mahusay na. 386 00:22:11,050 --> 00:22:14,240 Ay tama gawin o hindi gawin ito, ngunit nais naming magtalo 387 00:22:14,240 --> 00:22:17,430 na disenyo-matalino at stylistically, ito ay mas mahusay 388 00:22:17,430 --> 00:22:20,540 dahil pagkatapos ng tag bawat ay parehong binuksan at sarado sa paanuman. 389 00:22:20,540 --> 00:22:23,370 Kaya ngayon hayaan ang i-save at i-reload. Bumalik sa browser, okay. 390 00:22:23,370 --> 00:22:26,680 Ngayon kami ay paggawa ilang mga pag-unlad, ngunit ito ay hindi pa sapat. 391 00:22:26,680 --> 00:22:33,210 Natin sige at magsimulang mag-type sa ilang na katawan ng teksto. 392 00:22:33,210 --> 00:22:40,610 Kaya sabihin nating, 'Isang mabilis na brown soro jumps sa paglipas ng tamad na aso.' 393 00:22:40,610 --> 00:22:42,700 At ngayon hayaan mo akong kopyahin lamang at i-paste ang mga ito nang ilang beses 394 00:22:42,700 --> 00:22:45,040 kaya mayroon kaming isang talata ng teksto. 395 00:22:45,040 --> 00:22:47,780 Hayaan akong bumalik sa paglipas dito. Kaya hindi ito hinahanap napakagandang. 396 00:22:47,780 --> 00:22:50,000 Akong isang line break, kaya okay lang, 397 00:22:50,000 --> 00:22:52,140 ngunit ngayon, sa sandaling kami ay pagkuha sa punto ng pagkakaroon ng isang web page 398 00:22:52,140 --> 00:22:55,640 na may maraming ng nilalaman at hindi lamang iisang linya upang ipakita HTML, 399 00:22:55,640 --> 00:22:58,570 maaari naming simulan ang mag-isip ng mga bagay na ito bilang mga aktwal na talata. 400 00:22:58,570 --> 00:23:01,590 At maaari naming simulan upang buuin ang aming web page ng kaunti pa nang malinis. 401 00:23:01,590 --> 00:23:05,120 At sa katunayan, kung ano ang maaari kong gawin ay pumunta dito sa loob ng aking katawan tag, 402 00:23:05,120 --> 00:23:09,400 at alam mo kung ano ang, kung 'Ito ang CS50. . . ' talagang demarks ang simula ng isang talata, 403 00:23:09,400 --> 00:23:11,310 mahusay, sabihin tag ito bilang tulad. 404 00:23:11,310 --> 00:23:13,570 Hayaan ang i-indent sa akin ang teksto, sa pamamagitan lamang ng convention, sabihin sabihin sa akin 405 00:23:13,570 --> 00:23:15,710 na ang talata na ito ay nagtatapos dito, 406 00:23:15,710 --> 00:23:18,320 at pagkatapos ay sa halip na ang line break na ito, ipaalam sa akin lamang sabihin 407 00:23:18,320 --> 00:23:23,300 na ito nabibilang doon at bilang isang bagong talata, 408 00:23:23,300 --> 00:23:27,610 at kukunin ko na lang mabilis indent ng sa pamamagitan ng lamang clobbering ang lahat ng ito bagay. 409 00:23:27,610 --> 00:23:30,660 >> Kaya ngayon mayroon kaming indent talata doon, 410 00:23:30,660 --> 00:23:33,510 at ngayon ang aming markup ay nagsisimula upang makakuha ng kaunti pa 411 00:23:33,510 --> 00:23:37,070 magkakahulugang mga pare-pareho sa kung ano ang sinusubukan naming gawin. 412 00:23:37,070 --> 00:23:40,130 Mayroon kaming isang talata, kaya sabihin tumawag ito ng isang talata na may tag p. 413 00:23:40,130 --> 00:23:43,370 Mayroon kaming pangalawang talata, kaya sabihin tumawag ito ng isang talata na may tag p. 414 00:23:43,370 --> 00:23:45,850 At ngayon, ano ang browser ay karaniwang gawin 415 00:23:45,850 --> 00:23:48,490 ay tulad sa isang Ingles na aklat o sanaysay, 416 00:23:48,490 --> 00:23:51,280 kung saan karaniwan mong makita ang ilang mga line break sa pagitan ng mga talata. 417 00:23:51,280 --> 00:23:53,720 Browser ay gawin na para sa iyo awtomatikong. 418 00:23:53,720 --> 00:23:56,680 Kaya ngayon mayroon kaming dalawang talata at maaari naming patuloy na ito. 419 00:23:56,680 --> 00:23:58,770 Ngunit, siyempre, sa Web, kapag mayroon kang mga katawan ng teksto 420 00:23:58,770 --> 00:24:01,370 hindi karaniwang lamang malaking blobs ng teksto. 421 00:24:01,370 --> 00:24:04,040 May ay madalas na hyperlink doon. 422 00:24:04,040 --> 00:24:07,250 Kaya kung gusto naming, halimbawa, isama ang ilang mga link doon, 423 00:24:07,250 --> 00:24:10,760 ipagpalagay kung ano ang maaaring maging ng interes sa anumang web page Lumilikha ako dito - 424 00:24:10,760 --> 00:24:12,780 hayaan mo akong pumunta sa Google.com, 425 00:24:12,780 --> 00:24:16,540 at hayaan mo akong maghanap para sa isang mabilis na brown soro. 426 00:24:16,540 --> 00:24:22,150 Pumunta sa Google imahe, at, kung paano tungkol sa - ito ay nakatutuwa. 427 00:24:22,150 --> 00:24:27,420 Ipagpapatuloy namin na ito. Kaya dito kami ay may isang mabilis na brown soro hangganan ng mundong sa paglipas ng tamad na aso. 428 00:24:27,420 --> 00:24:30,560 Kaya kung ano ako pagpunta sa gawin dito, para lamang sa ang kapakanan ng pagpapakita, 429 00:24:30,560 --> 00:24:32,950 ay ipagpalagay na ang imahe na ito sa aking server, 430 00:24:32,950 --> 00:24:35,240 at ako ay ang paglikha ng mga larawang ito. 431 00:24:35,240 --> 00:24:38,720 Ano ko lang ay ang i-right click o kontrolin click sa imahe, 432 00:24:38,720 --> 00:24:42,370 at kung ano ang makikita mo sa karamihan sa mga browser ay isang maliit na menu - 433 00:24:42,370 --> 00:24:48,800 itigil na - isang maliit na menu na nagbibigay-daan sa iyo upang pumili ng kopya lokasyon ng link o URL ng kopya. 434 00:24:48,800 --> 00:24:52,750 Kaya ipaalam sa akin bumalik ngayon sa aking HTML, at ipagpalagay na gusto ko 435 00:24:52,750 --> 00:24:56,420 sa hyperlink ito sa isa pang pahina ng web. 436 00:24:56,420 --> 00:24:58,640 >> Ano ang tag na tinatawag na para sa? 437 00:24:58,640 --> 00:25:01,650 [Mag-aaral, hindi maintindihan] >> Oo. Kaya a href para hyper reference. 438 00:25:01,650 --> 00:25:04,660 Hayaan akong magpatuloy at i-paste na. 439 00:25:04,660 --> 00:25:07,290 Ito ay isang medyo mahaba URL, kaya ipaalam sa akin mag-zoom out. 440 00:25:07,290 --> 00:25:09,950 Isara ang bracket, kaya ngayon mapansin ako ng paraan sa paglipas dito 441 00:25:09,950 --> 00:25:11,960 dahil ang URL na nangyari sa medyo mahaba. 442 00:25:11,960 --> 00:25:15,180 Hayaan ang mag-scroll sa akin sa paglipas dito sa dulo ng mabilis na brown soro, 443 00:25:15,180 --> 00:25:18,830 at pagkatapos ay hayaan mo akong isara ang tag na 00:25:21,280 kung saan isinara ko lamang ang pangalan ng tag. 445 00:25:21,280 --> 00:25:24,470 Ngayon ipaalam sa akin sige at i-save ang file na iyon, i-reload ang web page, 446 00:25:24,470 --> 00:25:27,880 at ngayon, sa pamamagitan ng default, na na nakasalungguhit sa asul para sa akin, 447 00:25:27,880 --> 00:25:31,980 ngunit sa katunayan, maaari ko ngayon i-click ito at voila. May imahe na. 448 00:25:31,980 --> 00:25:33,990 At hindi ito ay isang imahe, maaaring nai-link 449 00:25:33,990 --> 00:25:36,270 sa ilang iba pang mga random na website sa Internet. 450 00:25:36,270 --> 00:25:39,610 Maaari kong gawin ito, halimbawa, may CS50, kaya isang huling halimbawa dito. 451 00:25:39,610 --> 00:25:42,730 'Ito ang CS50' maaaring magkaroon ng kahulugan upang pumunta, href = 452 00:25:42,730 --> 00:25:50,340 http://www.cs50.net, malapit quote, malapit anchor. 453 00:25:50,340 --> 00:25:53,990 Kaya ngayon na ang isang ng mas maikling URL, at oras na ito hindi namin ay mag-link sa isang imahe. 454 00:25:53,990 --> 00:25:57,880 Sa halip Kami ay mag-link sa isa pang pahina. 455 00:25:57,880 --> 00:25:59,840 Ngayon, mayroon kaming isang imahe dito. 456 00:25:59,840 --> 00:26:02,970 Pakiramdam ko ay tulad ng maaari naming gawin ang isang maliit na mas mahusay kaysa sa lamang na nagli-link sa isang imahe. 457 00:26:02,970 --> 00:26:05,760 Ano kung gusto naming aktwal maglangkap ito sa aming sariling mga web page? 458 00:26:05,760 --> 00:26:09,290 >> Well, kung ano ang maaari kong gawin dito, kaysa sa link na ito graphic, 459 00:26:09,290 --> 00:26:14,690 ipaalam sa akin sa halip kunin ang mga URL, at magpapadala kami makakuha ng mapupuksa ng hyperlink na at linisin ito up. 460 00:26:14,690 --> 00:26:17,190 At kami na bumaba dito at mapupuksa ng ito. 461 00:26:17,190 --> 00:26:20,910 Hindi namin talagang kailangan ang lahat ng mga pangungusap sa ngayon, kaya ipaalam sa akin na paikliin ang pahina ng kaunti. 462 00:26:20,910 --> 00:26:24,530 At pagkatapos ay down na dito ipaalam sa akin magpatuloy sa isang bagong talata, 463 00:26:24,530 --> 00:26:30,100 sabihin hindi ko gustong teksto ngayon, gusto ko ang isang imahe na pinagmulan ay pagpunta sa URL na iyon. 464 00:26:30,100 --> 00:26:33,100 Isang imahe, tulad ng isang line break na, alinman doon o hindi. 465 00:26:33,100 --> 00:26:35,900 Kaya ipaalam sa akin agad na isara na tag. 466 00:26:35,900 --> 00:26:39,440 Hayaan akong magpatuloy ngayon at isara ang talata na ako sa loob, 467 00:26:39,440 --> 00:26:43,010 at kung ang lahat ng napupunta rin may halo, mundo, kung ako reload ngayon, 468 00:26:43,010 --> 00:26:45,520 Ko, sa katunayan, makita sa loob mismo ng aking sariling web page sa isang imahe. 469 00:26:45,520 --> 00:26:48,570 Kaya ngayon mayroon kaming isang imahe tag, isang anchor tag at ang mga tulad ng, 470 00:26:48,570 --> 00:26:51,320 at para sa mabuting panukala, ipaalam sa gawin sa akin ang isa pang bagay na madalas napapabayaan 471 00:26:51,320 --> 00:26:55,900 sa mga website mga araw na ito: natin magbigay ng ilang mapaglarawang teksto para sa imaheng ito 472 00:26:55,900 --> 00:26:58,090 para sa mga tao na sa isang mobile device 473 00:26:58,090 --> 00:27:00,640 at samakatuwid ay hindi maaaring upang i-download ang larawang ito masyadong mabilis, 474 00:27:00,640 --> 00:27:03,310 para sa mga taong bulag at maaaring hindi magagawang upang makita ang mga larawan 475 00:27:03,310 --> 00:27:06,480 ngunit maaari silang magkaroon ng screen reader na maaaring sabihin sa kanila kung ano ang imahe na ito ay. 476 00:27:06,480 --> 00:27:09,100 At upang gawin iyon, may isa pang katangian para sa mga tag ng imahe 477 00:27:09,100 --> 00:27:11,290 tinatawag na alt, para sa kahaliling teksto. 478 00:27:11,290 --> 00:27:14,650 At kung ano ang maaari kong gawin dito ang sabihin, 'Ito ay isang mabilis na brown soro.' 479 00:27:14,650 --> 00:27:17,650 Kaya kahit na kung ang tao ay hindi maaaring makita ang mga imahe sa screen, 480 00:27:17,650 --> 00:27:20,560 siya ay maaaring hindi bababa sa marinig, may ilang piraso ng software, 481 00:27:20,560 --> 00:27:23,080 kung ano ang aktwal na ay doon sa screen. 482 00:27:23,080 --> 00:27:25,040 >> Na hindi baguhin ang mga aesthetics ng pahina, 483 00:27:25,040 --> 00:27:27,640 ngunit ito ay tiyak na mahusay na kasanayan para sa mga gumagamit. 484 00:27:27,640 --> 00:27:31,760 Karapatan lahat, sabihin iwan ang web page na ito sa kanyang kasalukuyang form, 485 00:27:31,760 --> 00:27:33,890 ngunit hayaan makita kung hindi namin ngayon ipakilala 486 00:27:33,890 --> 00:27:36,210 ilang mas mahusay na diskarte sa pagsusulat ng mga pahina ng web, 487 00:27:36,210 --> 00:27:39,980 ilang mga aralin na upang maghatid sa amin na rin sa aming mga pahina na makakuha ng higit pa at mas kumplikadong. 488 00:27:39,980 --> 00:27:42,220 Ano ang hindi namin pagpunta sa gawin sa susunod na ilang linggo 489 00:27:42,220 --> 00:27:46,810 ay ituturo sa iyo ang lahat ng ilang mga HTML tag dosena na may. 490 00:27:46,810 --> 00:27:49,800 Magkano ang gusto sa simula sa linggo 0, marahil ay sumapat 491 00:27:49,800 --> 00:27:52,120 upang magbigay ng isang mataas na antas ng pangkalahatang-ideya ng ilan sa mga konsepto, 492 00:27:52,120 --> 00:27:54,530 isang mabilis na tour ng ilan sa mga bloke ay marahil magagawang, 493 00:27:54,530 --> 00:27:58,240 medyo kumportable, upang mag-navigate sa iyong sarili, ang iba't-ibang mga piraso ng puzzle. 494 00:27:58,240 --> 00:28:00,460 At na mangyari muli sa HTML, malamang, 495 00:28:00,460 --> 00:28:04,320 kung saan may sapat na mga mapagkukunan sa Web na namin ituro sa iyo sa, 496 00:28:04,320 --> 00:28:06,920 iba't-ibang mga aklat-aralin, kung gusto mong basahin ang isang aklat-aralin, 497 00:28:06,920 --> 00:28:10,560 na ituturo sa iyo ang lahat ng iba't-ibang mga bagay na maaari mong gawin sa HTML, 498 00:28:10,560 --> 00:28:16,100 ngunit talagang, hindi namin nakita sa gayon ay malayo sa HTML karamihan ng sa pangunahing mga konsepto. 499 00:28:16,100 --> 00:28:19,900 Mayroon kaming ang paniwala ng mga tag na binuksan, tag na sarado. 500 00:28:19,900 --> 00:28:22,100 Ilang mga tag na parehong binuksan at sarado 501 00:28:22,100 --> 00:28:24,620 sa kamalayan na sila walang laman; dapat wala sa loob ng mga ito 502 00:28:24,620 --> 00:28:27,490 tulad ng isang imahe tag o line break, na lamang doon. 503 00:28:27,490 --> 00:28:32,330 Din kami tumingin na sa paniwala ng isang katangian, tulad ng alt o pinagmulan. 504 00:28:32,330 --> 00:28:36,410 Notice na ang mga salitang ito ay may posibilidad, sa pamamagitan ng convention, maikli at maikli at malinaw. 505 00:28:36,410 --> 00:28:39,140 >> Wala kaming pagpapasya sa kung ano ang mga bagay na ito ay tinatawag na, 506 00:28:39,140 --> 00:28:42,060 ibang tao na imbento HTML ay dumating na may mga pangalan na ito. 507 00:28:42,060 --> 00:28:44,710 Kaya mo lamang upang simulan upang malaman o maghanap, anumang oras na kailangan mo ang mga ito, 508 00:28:44,710 --> 00:28:47,160 kung ano ang mga pangalan para sa mga tag at mga katangian. 509 00:28:47,160 --> 00:28:49,510 Sa kaso ng mga mga katangian, nagdudulot sa pangkalahatan 510 00:28:49,510 --> 00:28:52,900 baguhin ang pag-uugali ng ilang mga tag. 511 00:28:52,900 --> 00:28:55,710 Sa kasong ito, ang pinagmulan ng katangian Sinasabi ng imahe tag 512 00:28:55,710 --> 00:28:57,940 kung ano ang pinagmulan ng imahe ay dapat na. 513 00:28:57,940 --> 00:29:04,460 Ang href attribute ay nagsasabi sa ang anchor tag na kung ano ang dapat ito aktwal na nagli-link sa. 514 00:29:04,460 --> 00:29:06,800 Ngunit sa mga tuntunin ng istraktura ng isang web page, kahit Facebook 515 00:29:06,800 --> 00:29:09,680 at ng Google at tulad ng hitsura tulad ng isang kumpletong gulo 516 00:29:09,680 --> 00:29:12,560 sa ilalim ng hood sa unang tingin, kung sinimulan mong basahin sa pamamagitan nito 517 00:29:12,560 --> 00:29:16,950 mas methodically, lahat ng mga ito ay sundin ang mga pangunahing, ang pangunahing istraktura. 518 00:29:16,950 --> 00:29:19,660 Ngunit maaari naming mapabuti ang ang estilisasyon ng mga bagay na ito. 519 00:29:19,660 --> 00:29:24,180 Kaya hayaan mo akong pumunta sa ilang mga halimbawa na handa ko nang maaga. 520 00:29:24,180 --> 00:29:27,280 Hayaan akong sige at kopyahin ang mga ito mula sa isa pang folder dito 521 00:29:27,280 --> 00:29:29,380 at ilagay ang mga ito sa direktoryong ito. 522 00:29:29,380 --> 00:29:32,210 Nang maaga, ano ko ginawa ay maghanda ng ilang mga file na ito: 523 00:29:32,210 --> 00:29:35,670 search0, search1, search2, at search3 at 4. 524 00:29:35,670 --> 00:29:38,740 Hayaan akong sige at buksan ang unang ng mga file, 525 00:29:38,740 --> 00:29:42,570 at sabihin makita kung hindi namin maaaring magsimulang upang lumikha ng aming sariling search engine. 526 00:29:42,570 --> 00:29:46,530 Sa tuktok ng file na ito, na karaniwang ang kaso sa klase, lamang ng grupo ng mga komento. 527 00:29:46,530 --> 00:29:49,760 Sa HTML, bagaman, ang mga paraan kung sinimulan mo ang isang komento 528 00:29:49,760 --> 00:29:55,640 ay <-! at pagkatapos ikaw ay sa loob ng isang komento, isang multi-line komento. 529 00:29:55,640 --> 00:29:59,800 Kapag handa ka na upang itigil na komento, maaari mong gawin ->. 530 00:29:59,800 --> 00:30:02,380 Kaya lahat sa tuktok sa asul ay isang komento. 531 00:30:02,380 --> 00:30:04,620 >> Ito ang aking doctype deklarasyon, na muli, 532 00:30:04,620 --> 00:30:07,080 maaari mong kopyahin lamang at i-paste sa pananampalataya, sa ngayon. 533 00:30:07,080 --> 00:30:10,410 Ito lamang ay nagsasabi sa ang browser, 'Narito ay ilang HTML 5.' 534 00:30:10,410 --> 00:30:13,600 Ibaba na, sa ika-14 linya, ay ang unang ng aking aktwal na mga tag, 535 00:30:13,600 --> 00:30:16,900 at ito sabi lang, tulad ng dati, dito ay ilang mga HTML, 536 00:30:16,900 --> 00:30:19,460 dito ay ang ulo ng aking pahina, dito ay ang pamagat, 537 00:30:19,460 --> 00:30:23,900 at pagkatapos, pasalungat, na ito para sa pamagat na ito para sa ulo. 538 00:30:23,900 --> 00:30:26,460 Narito ngayon ay ang body ng aking pahina. 539 00:30:26,460 --> 00:30:31,040 Kaya ilang mga bagong tag ngayon: h1 ay nakatayo para sa heading 1. 540 00:30:31,040 --> 00:30:33,850 May isang tradisyon sa HTML para sa maraming mga taon sa likod 541 00:30:33,850 --> 00:30:37,990 ng pagkakaroon ng iba't ibang mga laki ng teksto. 542 00:30:37,990 --> 00:30:41,980 At pabalik sa araw, ang bawat isa nilalayong, sa pangkalahatan, lamang na malaki at naka-bold. 543 00:30:41,980 --> 00:30:45,860 Ngunit mayroon ding h2, na malaki ngunit hindi masyadong malaki at bold. 544 00:30:45,860 --> 00:30:49,320 Mayroong h3, na uri ng malaki ngunit hindi halos bilang malaki at bold, 545 00:30:49,320 --> 00:30:52,380 at iba pa, ang lahat ng mga paraan pababa sa h6. 546 00:30:52,380 --> 00:30:55,550 Mga araw na ito, bagaman, h1, h2 at h3 ang talagang nilalayong 547 00:30:55,550 --> 00:30:57,980 mas semantiko kahulugan sa kanila, 548 00:30:57,980 --> 00:31:01,100 kung saan h1 ay talagang isang heading: ang heading ng isang web page, 549 00:31:01,100 --> 00:31:04,210 ang heading ng isang haligi o ng isang bagay tulad ng teksto. 550 00:31:04,210 --> 00:31:09,030 Kaya ko na sadyang sinabi h1 CS50 paghahanap> h1 551 00:31:09,030 --> 00:31:12,640 sa specifiy na talaga ito ng pamagat na, ang pamagat ng aking pahina. 552 00:31:12,640 --> 00:31:14,850 Hindi ang pamagat sa kamalayan ng bar ng pamagat, 553 00:31:14,850 --> 00:31:18,960 ngunit ang pamagat na iyong aktwal na makita sa web page mismo, sa katawan. 554 00:31:18,960 --> 00:31:20,990 Ngayon ito, maaari mong marahil hulaan kung ano ito ay, 555 00:31:20,990 --> 00:31:23,110 kahit na mayroon kaming ilang mga bagong piraso ng syntax. 556 00:31:23,110 --> 00:31:25,930 Ito ay isang anyo. Kaya web nakakakuha ng talagang kawili-wili 557 00:31:25,930 --> 00:31:28,770 kapag website na input mula sa mga gumagamit. 558 00:31:28,770 --> 00:31:31,700 Sa ganitong klase, sa problema sa web programming, 559 00:31:31,700 --> 00:31:33,880 hindi namin ay pagpunta sa gumawa ng isang website, per se, 560 00:31:33,880 --> 00:31:37,570 sa static na nilalaman na nagpapakita ng mga larawan na iyong kinuha, 561 00:31:37,570 --> 00:31:40,010 o ito ang aking resume, at mga bagay tungkol sa akin, 562 00:31:40,010 --> 00:31:42,450 dahil ang mga bagay ay relatibong madaling upang pagsamahin. 563 00:31:42,450 --> 00:31:44,400 Mahirap upang gumawa ng mga bagay na maganda sa Web, 564 00:31:44,400 --> 00:31:46,390 ngunit hindi bababa sa paglalagay ng hanggang nilalaman ay medyo hindi mahalaga. 565 00:31:46,390 --> 00:31:49,380 Ngunit bagay makakuha ng talagang kawili-wiling kapag ang isang tao ay bisitahin ang iyong website 566 00:31:49,380 --> 00:31:52,260 at magbigay ng input at maaaring punan ang mga form, 567 00:31:52,260 --> 00:31:55,800 maaaring suriin off ang checkbox at maaaring makipag-ugnayan sa iyong website. 568 00:31:55,800 --> 00:31:57,780 At sa katunayan, marahil bawat website na mahalaga sa iyo tungkol sa 569 00:31:57,780 --> 00:32:00,710 mga araw na ito, sa anumang detalye, ay sa paanuman interactive. 570 00:32:00,710 --> 00:32:03,110 Facebook, Google, at tulad ng, na tumagal ng input ng user 571 00:32:03,110 --> 00:32:05,100 at makagawa ng na-customize na output. 572 00:32:05,100 --> 00:32:07,780 >> Kaya natin simulan upang gawin na ngayon. Natin ang transition ngayon 573 00:32:07,780 --> 00:32:11,150 mula sa lamang gamit ang HTML para sa markup ng static na nilalaman 574 00:32:11,150 --> 00:32:14,790 bilang sa halip ng paghahatid ng mekanismo para sa dynamic na nilalaman. 575 00:32:14,790 --> 00:32:17,350 At patungo sa layuning iyon, sabihin ipatupad ang aming sariling search engine. 576 00:32:17,350 --> 00:32:20,820 Natin gawin ito tulad ng sumusunod. Narito ang form na tag. 577 00:32:20,820 --> 00:32:24,090 Ang pagkilos attribute tinutukoy na kapag ang user ay punan ang form na ito 578 00:32:24,090 --> 00:32:28,400 sa kanilang mga keyboard, ito ay isinumite sa URL na ito dito. 579 00:32:28,400 --> 00:32:31,230 Kaya ako uri ng pagdaraya. Ito ay pagpunta sa amin ang kaunti na 580 00:32:31,230 --> 00:32:33,780 sa isang klase upang ipatupad ang buong search engine, 581 00:32:33,780 --> 00:32:35,880 kaya makikita lang namin gawin ang front end, kaya na magsalita. 582 00:32:35,880 --> 00:32:38,650 Gagawin namin ang bahagi na nagbibigay-daan sa ang user sa paghahanap, at magpapadala kami pag-uri-uriin ng tumikin sa Google 583 00:32:38,650 --> 00:32:40,950 ang mahirap na bahagi ng paghahanap ng mga resulta ng paghahanap, 584 00:32:40,950 --> 00:32:43,520 ngunit, partikular, ako pagpunta sa makipag-usap sa web server ng Google 585 00:32:43,520 --> 00:32:46,710 gamit ang isa sa dalawang napaka-tanyag na mga pamamaraan sa. 586 00:32:46,710 --> 00:32:50,000 Isa na makakuha ng, isa pang, na kami ay makakita, na post, 587 00:32:50,000 --> 00:32:52,660 kahit na mayroong iba na hindi gaanong madalas na ginagamit. 588 00:32:52,660 --> 00:32:56,440 Kaya makakuha lamang conjures ang ideya ng, Gusto kong makakuha ng ilang nilalaman, makakuha ng ilang mga resulta ng paghahanap. 589 00:32:56,440 --> 00:32:58,440 Ito, maaari mong marahil hulaan kung ano ang ginagawa. 590 00:32:58,440 --> 00:33:01,900 Ito ay ilang mga uri ng mga input, ito, sa katunayan, pagpunta sa hitsura ng isang patlang ng teksto, 591 00:33:01,900 --> 00:33:05,200 at ang pangalan ng na input, ang pangalan ng variable na, upang magsalita, 592 00:33:05,200 --> 00:33:08,610 na q para sa query sa pamamagitan ng convention. 593 00:33:08,610 --> 00:33:11,700 At muli, ang uri ng mga input na ito ay hindi pagpunta sa isang checkbox; 594 00:33:11,700 --> 00:33:13,890 hindi ito magiging isang menu; ito ay pagpunta sa isang patlang ng teksto 595 00:33:13,890 --> 00:33:18,060 tulad ng naitala sa pamamagitan ng katangiang ito dito, at text box na ito, 596 00:33:18,060 --> 00:33:20,680 tulad ng isang line break na, ay maaaring doon o hindi. 597 00:33:20,680 --> 00:33:24,480 Kaya mayroon kaming isang walang laman na element na may slash sa loob ng na tag. 598 00:33:24,480 --> 00:33:28,050 Pagkatapos ako pagpunta sa maglagay ng line break, at maaari mong, marahil, hulaan kung ano ito ay pagpunta sa gawin. 599 00:33:28,050 --> 00:33:30,210 Ito ay isa pang uri ng form na input. 600 00:33:30,210 --> 00:33:32,350 >> Ito ng pagpunta sa ginagamit para sa pagsusumite ng form. 601 00:33:32,350 --> 00:33:36,140 Kaya ito ay ang malaking button na ang gumagamit ay maaaring i-click ang upang isumite ang form, 602 00:33:36,140 --> 00:33:40,800 at ang label sa pindutan na ay pagpunta sa 'CS50 Paghahanap.' 603 00:33:40,800 --> 00:33:44,170 Isara ang form, malapit katawan, malapit HTML. 604 00:33:44,170 --> 00:33:46,280 Natin makita kung ano ang mayroon kami sa form ng web page na ito. 605 00:33:46,280 --> 00:33:48,260 Kaya hayaan mo akong pumunta sa aking browser, 606 00:33:48,260 --> 00:33:50,360 hayaan mo akong pumunta, pa rin, sa mga lokal na host. 607 00:33:50,360 --> 00:33:54,650 Ito ay pa rin index.html, kaya kung gusto kong makita ang file na ito na tinatawag na search0, 608 00:33:54,650 --> 00:33:59,710 Ko lang gawin / search0.html, ipasok - 609 00:33:59,710 --> 00:34:01,880 at ang unang ng aking mga pagkakamali. 610 00:34:01,880 --> 00:34:04,400 Ano kaya ang nangyari? Ko malinaw na walang pahintulot 611 00:34:04,400 --> 00:34:06,430 upang ma-access ang file na ito, para sa ilang mga kadahilanan. 612 00:34:06,430 --> 00:34:10,170 Ngunit iyon dahil, hindi katulad ng gawa tapos kami na sa gayon ay malayo sa C, 613 00:34:10,170 --> 00:34:14,340 kung saan ang mga programa na magsulat ipinagpapalagay na maging runable mo, 614 00:34:14,340 --> 00:34:17,590 executable mo, na hindi talaga ang kaso sa Web, 615 00:34:17,590 --> 00:34:21,010 kung saan minsan baka gusto mong lumikha ng mga file sa isang server, 616 00:34:21,010 --> 00:34:23,310 ngunit hindi mo nais ang buong mundo upang makita ang mga ito. 617 00:34:23,310 --> 00:34:25,469 Sa halip, gusto mo ang mundo upang makita ang ilang mga file 618 00:34:25,469 --> 00:34:27,730 ngunit hindi pa, lamang para sa kapanan ng privacy. 619 00:34:27,730 --> 00:34:30,730 Kaya ito ay higit pa ng isang opt-in kapag ikaw ay gumagawa ng mga bagay sa Web. 620 00:34:30,730 --> 00:34:32,810 At kaya ipaalam sa akin aktwal type ang mga ls dito, 621 00:34:32,810 --> 00:34:37,440 at makikita mo ang mga file na mayroon akong, ngunit isipin ang na kung gagawin ko ls-l para sa mahabang, 622 00:34:37,440 --> 00:34:41,520 Ako makakuha ng mas mahabang listahan na nagbibigay sa akin ang ilang higit pang mga detalye tungkol sa mga file na ito 623 00:34:41,520 --> 00:34:45,139 na ngayon, talaga, para sa unang pagkakataon na may-katuturan sa amin. 624 00:34:45,139 --> 00:34:47,840 Pansinin na sa dulong kanan ng ang mga pangalan ng aking mga file, 625 00:34:47,840 --> 00:34:50,690 at pagkatapos ay ang oras kung saan ay huling sila ay binago o kinopya. 626 00:34:50,690 --> 00:34:54,370 Ang numerong ito dito ay kung ano ang? Huwag mo isipin ang? 627 00:34:54,370 --> 00:34:56,400 Ang laki sa bytes, kung paano malaki ang file. 628 00:34:56,400 --> 00:34:59,520 >> Kaya mukhang kong magkaroon ng ilang mga uri ng logo in dito na mas malaki kaysa sa lahat ng iba pang mga file. 629 00:34:59,520 --> 00:35:03,610 Ito ay kung sino ako, ito ay kung ano ako at kung anong group na ako. 630 00:35:03,610 --> 00:35:07,430 Ngunit pagkatapos, sa paglipas dito sa kaliwa ay isang bit ng misteriyoso sequence, 631 00:35:07,430 --> 00:35:10,040 at usapan natin, tingin ko, maikling tungkol sa sa nakaraan, 632 00:35:10,040 --> 00:35:12,050 ngunit ito ay may pahintulot. 633 00:35:12,050 --> 00:35:14,020 At kahit na isang maliit na malabo, 634 00:35:14,020 --> 00:35:17,270 RW marahil ay nangangahulugan na basahin at magsulat. 635 00:35:17,270 --> 00:35:22,560 Kaya ito lumiliko out na ang mga gitling magpakilala iba't ibang mga hanay ng mga pahintulot para sa iba't ibang mga tao. 636 00:35:22,560 --> 00:35:24,730 At ang pattern ay, mahalagang, tulad ng mga sumusunod. 637 00:35:24,730 --> 00:35:27,650 Kapag nakita mo ang pagkakasunud-sunod ng mga gitling dito, hanapin ang mga ito tulad ng sumusunod. 638 00:35:27,650 --> 00:35:30,450 May gitling, may tatlong higit pang mga gitling, 639 00:35:30,450 --> 00:35:33,390 pagkatapos ay may isa pang tatlong, pagkatapos ay may isa pang tatlong. 640 00:35:33,390 --> 00:35:36,800 Ang unang isa ay alinman ng gitling o ad para sa direktoryo. 641 00:35:36,800 --> 00:35:40,220 Kaya ang isang medyo madali. Kung ito ay isang folder, d sinasabi nito, kung hindi, isang gitling. 642 00:35:40,220 --> 00:35:44,080 Mayroong ilang iba pang mga kaso, ngunit sa ngayon lang namin pakialam tungkol sa mga file at mga direktoryo. 643 00:35:44,080 --> 00:35:48,090 Mga susunod na tatlong gitling - at ko na artipisyal na ipinasok ang mga puwang. 644 00:35:48,090 --> 00:35:50,490 Sila ay, malinaw naman, hindi doon kapag nakita namin ang mga ito ng ilang sandali ang nakalipas. 645 00:35:50,490 --> 00:35:52,900 Ito ang pahintulot ng may-ari ng file, 646 00:35:52,900 --> 00:35:55,840 at isipin ang mula sa isang segundo na nakalipas na ito ay basahin at isulat ang. 647 00:35:55,840 --> 00:35:58,560 Iyon ay dahil ako, bilang ang taong lumikha ng ang file na ito ng ilang sandali ang nakalipas, 648 00:35:58,560 --> 00:36:01,250 Ko, sa pamamagitan lamang ng default, sa isang Linux computer na, 649 00:36:01,250 --> 00:36:03,910 may kakayahan upang magpatuloy sa pagbabasa at pagsusulat ng file na iyon. 650 00:36:03,910 --> 00:36:07,170 >> Kaya operating system na nagbibigay sa akin RW awtomatikong. 651 00:36:07,170 --> 00:36:10,840 Sa gitna mga nauugnay sa aking pangkat, ang mga mag-aaral, 652 00:36:10,840 --> 00:36:14,590 na uri ng walang kahulugan sa appliance dahil ako ang tanging tao na gamit ang appliance. 653 00:36:14,590 --> 00:36:16,620 Kaya ipaalam sa akin lang iwagayway ang aking mga kamay sa na sa ngayon. 654 00:36:16,620 --> 00:36:19,190 Ngunit ang huling mga pinaka-mahalaga para sa Web. 655 00:36:19,190 --> 00:36:21,580 Ito ay ang iba sa mundo, at ang katotohanan 656 00:36:21,580 --> 00:36:24,600 na na --- nangangahulugan na walang ibang tao sa mundo 657 00:36:24,600 --> 00:36:26,680 ay may anumang mga pahintulot upang ang file na ito. 658 00:36:26,680 --> 00:36:29,180 Malinaw na ang isang problema, kaya kailangan ko upang ayusin ito 659 00:36:29,180 --> 00:36:33,830 sa pamamagitan ng pagbibigay sa paanuman sa mundo kung ano? Basahin at isulat ang? 660 00:36:33,830 --> 00:36:35,850 Iyon ay marahil pipi, tama? Hindi ko nais ang sinuman sa Web 661 00:36:35,850 --> 00:36:38,530 upang pumunta upang bisitahin ang aking pahina at sa paanuman baguhin ang file na iyon, 662 00:36:38,530 --> 00:36:40,800 kahit na sila talaga ay hindi maaaring may isang file na HTML, 663 00:36:40,800 --> 00:36:44,110 ngunit lamang sa prinsipyo, marahil lamang nais na magagawang basahin. 664 00:36:44,110 --> 00:36:47,910 Ano ang ibig sabihin upang mabasa ito? Hindi ito nangangahulugan sila pakialam tungkol sa aktwal na HTML, 665 00:36:47,910 --> 00:36:51,820 ngunit ang browser ay kailangan upang i-parse na markup language, 666 00:36:51,820 --> 00:36:53,720 itaas hanggang sa ibaba, kaliwa hanggang kanang. 667 00:36:53,720 --> 00:36:57,990 Kaya kailangang magagawang basahin ang isang tao sa Web, kaya Nagnais ng pinakamababang ko kailangan upang bigyan ito r. 668 00:36:57,990 --> 00:37:00,240 Ang maaari kong gawin ito sa loob ng ilang iba't ibang mga paraan, ngunit marahil 669 00:37:00,240 --> 00:37:03,080 ang pinakasimpleng ay upang patakbuhin ang command na ito dito. 670 00:37:03,080 --> 00:37:10,860 Chmod, pagbabago mode, pagkatapos ng + r kaya lahat, lahat ng tao sa mundo + basahin, 671 00:37:10,860 --> 00:37:13,830 at pagkatapos ay ang pangalan ng file, search0.html. 672 00:37:13,830 --> 00:37:18,310 >> Ngayon kung gagawin ko ls-l muli, mapansin na ang file na ay nagbago, 673 00:37:18,310 --> 00:37:21,440 at sa katunayan, ko na naka-on ang r para sa lahat. 674 00:37:21,440 --> 00:37:23,350 Ko na rin naka ito para sa aking pangkat, ngunit na fine, 675 00:37:23,350 --> 00:37:27,150 dahil kung ako naka-in para sa lahat, ang aking grupo ay isang subset ng mga iyon. 676 00:37:27,150 --> 00:37:31,480 Kaya na fine masyadong. Ito ay nangangahulugan lamang na ngayon ang computer ito nababasa. 677 00:37:31,480 --> 00:37:34,430 Ngayon ipaalam sa akin bumalik sa aking browser, i-click ang I-reload. 678 00:37:34,430 --> 00:37:36,330 Ah-ha. Na kami ngayon CS50 Search. 679 00:37:36,330 --> 00:37:39,830 Ko na naka-zoom in sa isang maliit na artipisyal na - medyo kakila-kilabot na search engine. 680 00:37:39,830 --> 00:37:41,930 Ngunit ipaalam sa makita kung ito aktwal na gumagana. 681 00:37:41,930 --> 00:37:45,880 Una, ipaalam sa gawin sa akin ang isang mabilis na check ng katinuan, hayaan mo akong kontrolin click at tingnan ang page source. 682 00:37:45,880 --> 00:37:50,780 Pansinin na sa loob ng Chrome ngayon nakikita namin ang parehong HTML na ko sa aking sarili nilikha. 683 00:37:50,780 --> 00:37:55,420 Hindi nalilito dito, bagaman. Hindi ko simulan ang pagbabago ng code dito, 684 00:37:55,420 --> 00:37:59,420 dahil ang browser ay isang read-only na view ng ang code na ito. 685 00:37:59,420 --> 00:38:06,060 Ang browser ay tinanong ng lokal na host para sa isang file na tinatawag search0.html. 686 00:38:06,060 --> 00:38:09,490 Ito ay purong pagkakataon na ngayon na ang appliance 687 00:38:09,490 --> 00:38:13,480 mangyayari sa parehong computer bilang aking browser. 688 00:38:13,480 --> 00:38:20,470 Ko na lang ay, equivalently, nai-type sa www.facebook.com/search0.html, 689 00:38:20,470 --> 00:38:23,830 at kung Facebook ay isang file na tinatawag na, Gusto ko pagkatapos ay nakikita ang kanilang mga HTML. 690 00:38:23,830 --> 00:38:27,360 At, siyempre, hindi ko maaaring baguhin ang file ay bumalik mula sa Facebook, alinman. 691 00:38:27,360 --> 00:38:29,360 Kaya ngayon hindi namin uri ng blurring ang linya. 692 00:38:29,360 --> 00:38:32,130 Appliance ay parehong server, na naghahain ng mga web page, 693 00:38:32,130 --> 00:38:34,870 ngunit ito rin ng client sa kamalayan na gumagamit ako ng isang browser 694 00:38:34,870 --> 00:38:37,630 upang aktwal na makipag-usap sa server na. 695 00:38:37,630 --> 00:38:39,610 Kaya ipaalam sa makita kung gumagana ang aking Google search engine. 696 00:38:39,610 --> 00:38:44,930 Hayaan akong magpatuloy at maghanap para sa mabilis na brown soro, ipasok. 697 00:38:44,930 --> 00:38:47,540 At voila, ako ngayon ang aking sariling search engine. 698 00:38:47,540 --> 00:38:51,460 >> Ngunit kung paano ito gumagana? 699 00:38:51,460 --> 00:38:55,380 Bit ng isang kahabaan, ngunit - at ngayon ay hindi mo makita, tiyak, ang bahagi na ng interes. 700 00:38:55,380 --> 00:38:57,370 Pansinin kung ano ang mangyayari. 701 00:38:57,370 --> 00:39:00,430 Pansinin ang URL. Ito ay lumiliko na na paraan ng, 702 00:39:00,430 --> 00:39:02,780 tinatawag na makakuha ng, ay napaka-simple. 703 00:39:02,780 --> 00:39:10,270 Kapag tinukoy mo sa isang form na nais mong 'makakuha ng' mga resulta mula sa ilang server, 704 00:39:10,270 --> 00:39:13,200 kung ano ang pagpunta sa gawin ay tumagal ng anumang nai-type mo sa form 705 00:39:13,200 --> 00:39:15,290 at ilagay ang mga ito sa URL. 706 00:39:15,290 --> 00:39:18,580 Ito ay pagpunta sa ilagay sa pamantayan kung paano ito ay makakakuha ng ilagay sa URL tulad ng sumusunod. 707 00:39:18,580 --> 00:39:22,290 Pansinin na ito ay ang URL na ang halaga ng aking pagkilos attribute. 708 00:39:22,290 --> 00:39:24,730 Kung saan gusto ko ang form upang tapusin. 709 00:39:24,730 --> 00:39:26,950 Ngunit pagkatapos ay mapansin ang tandang pananong na ito. 710 00:39:26,950 --> 00:39:30,230 Ito ay isang convention sa Web kung saan upang magbigay ng user input 711 00:39:30,230 --> 00:39:35,320 sa isang website, maglagay ka sa URL ng isang tandang pananong, 712 00:39:35,320 --> 00:39:38,330 at pagkatapos ay mayroon kang isang buong grupo ng mga pares ng key-value. 713 00:39:38,330 --> 00:39:42,380 Ang pangalan ng isang susi, na kilala bilang isang parameter sa Web, 714 00:39:42,380 --> 00:39:46,380 pagkatapos ay mayroon ka ng patas sign, pagkatapos ay mayroon kang ang halaga ng parameter na. 715 00:39:46,380 --> 00:39:49,810 Kaya ito ay mahalagang isang pangalan ng variable at variable na halaga ng, 716 00:39:49,810 --> 00:39:54,250 ngunit ang mga pangalan ng mga variable at halaga ay nagmula mula sa HTML form. 717 00:39:54,250 --> 00:39:56,250 Bakit ang mga plus doon, tingin mo? 718 00:39:56,250 --> 00:39:59,340 Dahil hindi ko type + sa pagitan ng aking mga salita. 719 00:39:59,340 --> 00:40:01,430 [Estudyante, hindi maintindihan] 720 00:40:01,430 --> 00:40:05,080 >> Oo, ito ay para lamang sa pagpupuwang. Logro, kailanman nakita mo ang isang URL, 721 00:40:05,080 --> 00:40:07,320 may hindi kailanman anumang mga puwang sa loob nito, kung lamang dahil 722 00:40:07,320 --> 00:40:09,440 kung mayroong, hindi ikaw talaga ay maaaring kopyahin at i-paste ito 723 00:40:09,440 --> 00:40:12,700 sa isang IM o sa isang email dahil ito ay magdudulot masira. 724 00:40:12,700 --> 00:40:15,420 Nais mong ang buong bagay sa isang magkadikit na string ng mga character. 725 00:40:15,450 --> 00:40:18,450 >> Kaya ang browser na smart sapat upang mapagtanto, uh-uh. 726 00:40:18,450 --> 00:40:22,610 Huwag lang maglagay ng espasyo sa doon. Hayaan akong encode ang espasyo sa ilang mga karaniwang paraan. 727 00:40:22,610 --> 00:40:25,170 Isa ng convention para sa paggawa nito ay ang browser 728 00:40:25,170 --> 00:40:29,350 awtomatikong maglagay ng + kung saan nais mong kung hindi ay magkaroon ng puwang. 729 00:40:29,350 --> 00:40:32,140 Kaya ngayon, ang abiso ng Google ang uri ng user-friendly. 730 00:40:32,140 --> 00:40:34,380 Tiyak ko ay hindi lumikha ng mga web page na ito, 731 00:40:34,380 --> 00:40:37,200 ngunit sila prepopulated kanilang sariling mga field ng teksto 732 00:40:37,200 --> 00:40:39,490 may ano, tiyak, ako-type. 733 00:40:39,490 --> 00:40:43,090 Ipagpalagay na gusto ko upang maghanap para sa iba pa, tulad ng tamad na aso. 734 00:40:43,090 --> 00:40:45,340 Ang maaari kong i-type lamang ito dito, muling hinanap. 735 00:40:45,340 --> 00:40:47,730 Notice na URL nagbabago dito, 736 00:40:47,730 --> 00:40:51,390 ngunit pagkatapos mapansin na maaari kong tunay na maghanap para sa kahit anong gusto kong 737 00:40:51,390 --> 00:40:53,610 lamang sa pamamagitan ng pag-unawa kung paano URL trabaho. 738 00:40:53,610 --> 00:40:56,840 Maaari kong gawin ang mga tamad na pusa, ipasok, 739 00:40:56,840 --> 00:41:01,370 at mapansin ngayon nakakakuha ako ng isang napaka-tamad - dapat namin? Pakiramdam ko ay tulad ng dapat namin. 740 00:41:01,370 --> 00:41:09,900 Nakakuha ako ng tamad pusa. 741 00:41:09,900 --> 00:41:11,930 Ayos lang. Ito ay isa ng ang stupidest bagay na ginawa namin. 742 00:41:11,930 --> 00:41:17,160 Ngunit iyon ay isang tamad na pusa. 743 00:41:17,160 --> 00:41:19,730 Paano't paano man, kung ano ang key takeaway dito? 744 00:41:19,730 --> 00:41:22,830 Ngayon hindi namin ang uri ng pag-play sa mundo ng HTTP. 745 00:41:22,830 --> 00:41:26,050 HTML ay lamang ang markup language, buksan ang tag, malapit na tag, 746 00:41:26,050 --> 00:41:29,490 na nagsasabi sa isang browser kung paano mag-render ang nilalaman sa isang web page. 747 00:41:29,490 --> 00:41:32,850 Ngunit kapag sinimulan mo ang pagpapadala ng mga data sa Internet 748 00:41:32,850 --> 00:41:36,290 sa pagitan ng mga web browser at server, na kung saan ang protocol na ito 749 00:41:36,290 --> 00:41:39,370 kilala bilang Hypertext Transfer Protocol tumatagal sa paglipas. 750 00:41:39,370 --> 00:41:42,630 Ito ang uri ng tao na convention; kapag Sam at ako shook kamay sa Lunes, 751 00:41:42,630 --> 00:41:48,300 simula ng koneksyon at pagkatapos isara ang isang koneksyon, parehong ideya dito. 752 00:41:48,300 --> 00:41:53,100 Paano ang mga resulta ng Google babalik sa akin? 753 00:41:53,100 --> 00:41:55,290 Paano ang aking pagsusumite ng form ng pagpunta sa Google? 754 00:41:55,290 --> 00:41:58,160 Well, isipin ang mula sa iba pang mga araw na kung ano talaga ang nangyayari sa 755 00:41:58,160 --> 00:42:02,150 sa ilalim ng hood kapag humiling ka ng isang web page ay, 756 00:42:02,150 --> 00:42:04,860 ang iyong browser ay pagpapadala medyo-misteriyoso mensahe tulad ng 757 00:42:04,860 --> 00:42:09,510 GET / HTTP/1.1 para sa default na home page. 758 00:42:09,510 --> 00:42:13,000 >> O, sa kasong ito, dahil ako partikular na hiniling mas maaga 759 00:42:13,000 --> 00:42:17,340 search0.html, ito pagkatapos ay medyo-misteriyoso mensahe 760 00:42:17,340 --> 00:42:20,040 na ang aking browser ay nagpapadala sa appliance. 761 00:42:20,040 --> 00:42:23,090 O, sa kasong ito ng Google, kung ano ang aktwal na ipinadala 762 00:42:23,090 --> 00:42:33,740 ay isang kahilingan sa / paghahanap, at pagkatapos? q = tamad pusa, ng plus may. 763 00:42:33,740 --> 00:42:36,790 Kaya ang mensaheng ito, na aking, ang mga tao, ako ay hindi kailanman mag-type, 764 00:42:36,790 --> 00:42:40,620 ngunit ay ipinadala sa pamamagitan ng aking browser, ito ay kung paano HTTP mangyayari. 765 00:42:40,620 --> 00:42:43,240 Ito ay ang katumbas ng aming pag-inalog kamay. 766 00:42:43,240 --> 00:42:46,320 Ito ay ang kahilingan, at ang server ay tungkol sa upang magpadala ng isang tugon. 767 00:42:46,320 --> 00:42:48,560 Kaya sabihin tingnan sa ilalim ng hood. 768 00:42:48,560 --> 00:42:55,320 Tulad ng dati, maaari naming buksan ang espesyal na patlang sa isang browser. 769 00:42:55,320 --> 00:42:58,720 Tingnan ang pahina, siyasatin ang mga elemento. 770 00:42:58,720 --> 00:43:01,550 Kaya sa ilalim siyasatin ang elemento, mapapansin na ang kung ano ang nangyari sa Chrome, 771 00:43:01,550 --> 00:43:04,160 at IE at Firefox ay may mga katulad na mekanismo, 772 00:43:04,160 --> 00:43:07,370 Mayroon kami ng mga tool na ito sa developer na access sa amin. 773 00:43:07,370 --> 00:43:09,630 Normal na tao ay hindi gamitin ang mga tab. 774 00:43:09,630 --> 00:43:11,940 Ngunit namin, ngayon, ay interesado sa kung anong nangyayari sa 775 00:43:11,940 --> 00:43:13,890 sa ilalim ng hood sa antas ng network. 776 00:43:13,890 --> 00:43:16,130 Kaya kung ko makuha ang antas network dito, 777 00:43:16,130 --> 00:43:18,510 hayaan mo akong magpatuloy at palawakin ang window na ito, 778 00:43:18,510 --> 00:43:21,840 buksan ang entry na ito dito, at tingnan ang mga header. 779 00:43:21,840 --> 00:43:26,010 Kaya kung ano ang mangyayari kapag humiling ako ng isang file mula sa isang server ng web 780 00:43:26,010 --> 00:43:29,410 ang aking browser ay nagpapadala ng isang buong grupo ng mga bagay. 781 00:43:29,410 --> 00:43:32,390 At hayaan mo akong tingnan ng pinagmulan. Kaya sa ilalim ng kahilingan header, 782 00:43:32,390 --> 00:43:35,250 at ito ay lamang Chrome na nagpapakita sa akin ang ilang diagnostic output, 783 00:43:35,250 --> 00:43:37,340 uri ng tulad ng debugger ng uri, 784 00:43:37,340 --> 00:43:40,500 mapapansin na kung ano ang nai-highlight ko dito ay tiyak kung ano ang 785 00:43:40,500 --> 00:43:47,060 Chrome ay pagpapadala ng sa server upang humiling ng isang file na tinatawag na search0.html. 786 00:43:47,060 --> 00:43:50,160 Ito ay nagsasabi sa server kung ano ang sa tingin nito ay ang pangalan nito ay, 787 00:43:50,160 --> 00:43:52,210 salamat sa host tutuldok ang patlang na ito, at pagkatapos ay ang ilang 788 00:43:52,210 --> 00:43:56,950 medyo pribado na mga bagay-bagay in dito, tulad ng isang bagay na may petsa at oras, 789 00:43:56,950 --> 00:43:59,720 isang bagay na gawin sa mga wika na nauunawaan ang browser, 790 00:43:59,720 --> 00:44:02,850 ngunit ang talagang mahalaga na linya ang mga unang dalawang dito. 791 00:44:02,850 --> 00:44:05,490 >> Ano ang server tumugon kasama? Well, kung mag-scroll pababa namin dito 792 00:44:05,490 --> 00:44:08,510 at tingnan ang pinagmulan ng bagay na ito, mapapansin na ang server 793 00:44:08,510 --> 00:44:13,700 ay sumagot na may isang medyo misteriyoso mensahe pati na rin, 304 hindi nabago. 794 00:44:13,700 --> 00:44:16,030 Iyon ay isang maliit na kakaiba; ipaalam sa akin aktwal subukan upang ayusin ito. 795 00:44:16,030 --> 00:44:18,670 Hayaan ang hawak sa akin pababa shift at i-click ang I-reload dito 796 00:44:18,670 --> 00:44:22,460 upang pilitin ang browser sa aktwal na ang kahilingan na ito sa unang pagkakataon. 797 00:44:22,460 --> 00:44:25,700 Pagkatapos ay hayaan mo akong mag-zoom in, at kami na makita ngayon na tugon ng server, 798 00:44:25,700 --> 00:44:28,950 dahil ako ay gaganapin shift, 200 OK. 799 00:44:28,950 --> 00:44:31,170 Kaya marahil mo na hindi kailanman nakita ang bilang 200 800 00:44:31,170 --> 00:44:33,300 sa konteksto ng Web, ngunit kung ano ang mga numero 801 00:44:33,300 --> 00:44:36,760 mo minsan nakikita sa hindi inaasahang mula sa isang server? 802 00:44:36,760 --> 00:44:42,010 404, Hindi natagpuan ang file; 403, Forbidden; 500, error sa server. 803 00:44:42,010 --> 00:44:44,890 Kaya may mga numeric code na ang mundo ang gumagamit sa Web 804 00:44:44,890 --> 00:44:47,870 upang magpahiwatig ng mga error, tulad ng C function 805 00:44:47,870 --> 00:44:51,030 maaaring bumalik ang mga error at pangunahing ay maaaring ibalik ang code exit. 806 00:44:51,030 --> 00:44:54,160 200, bagaman, bihirang makita dahil ito ay nangangahulugan na ang lahat ng mahusay na. 807 00:44:54,160 --> 00:44:59,000 At 304 malamang na hindi kailanman makikita dahil kung ano ang signifying? 808 00:44:59,000 --> 00:45:03,330 Na walang may - sabihin makita kung maaari namin gayahin ito muli - 809 00:45:03,330 --> 00:45:07,170 Oh, ngayon hindi cooperating. 304 sinabi hindi nabago, 810 00:45:07,170 --> 00:45:09,170 kaya bakit ay ang server kahit pagtugon? 811 00:45:09,170 --> 00:45:12,550 Well, kahusayan, isang web server ay awtomatikong para sa iyo, 812 00:45:12,550 --> 00:45:16,570 kung ang file ay hindi nagbago, hindi ito muling ipadala ang buong file na HTML. 813 00:45:16,570 --> 00:45:19,150 Ito lamang sabihin sa browser na hindi ito ay nagbago. 814 00:45:19,150 --> 00:45:21,220 Gamitin na lamang ang mayroon ka nang kopya. 815 00:45:21,220 --> 00:45:22,650 Kaya ang paniwala na ito ng pag-cache sa Web 816 00:45:22,650 --> 00:45:25,840 para sa pagganap, kaya hindi mo-aaksaya ng oras at bandwidth ng basura 817 00:45:25,840 --> 00:45:29,160 download ng mga file muli at muli hindi kinakailangan. 818 00:45:29,160 --> 00:45:31,460 >> Ngunit ang web page na ito, ngayon, ay napaka-simple, 819 00:45:31,460 --> 00:45:34,980 at ito lamang ay nagpakita sa akin ang HTML na dumating pabalik. 820 00:45:34,980 --> 00:45:40,940 Natin ang aktwal na gamitin ang tab ng network ngayon upang gawin ang isang paghahanap sa Google tulad ng mabilis na brown soro. 821 00:45:40,940 --> 00:45:43,010 Hayaan akong pagkatapos ay i-click ang CS50 paghahanap, 822 00:45:43,010 --> 00:45:46,950 at ngayon, mapapansin sa ibaba dito isang buong grupo ng mga bagay-bagay na dumating sa likod 823 00:45:46,950 --> 00:45:49,900 dahil kapag binisita ko ang isang tunay na website tulad ng Google.com, 824 00:45:49,900 --> 00:45:53,520 mayroon sila ng mga larawan, sila teksto, mayroon silang isang wika na tinatawag na JavaScript doon. 825 00:45:53,520 --> 00:45:55,940 Kaya bawat hilera sa talahanayan na ito pababa dito 826 00:45:55,940 --> 00:46:01,490 kumakatawan ng isang bagay na ang Google ay sabihin ang lahat sa tugon sa aking solong paghiling. 827 00:46:01,490 --> 00:46:04,160 Ang isa na mahalaga ko tungkol sa, bagaman, ito unang. 828 00:46:04,160 --> 00:46:08,420 At kung pumunta ako sa paghahanap, kahilingan, i-click ang tingnan ang pinagmulan dito, 829 00:46:08,420 --> 00:46:11,300 mapansin na, sa katunayan, ang misteriyoso mensahe na ang aking browser ay nagpadala ng 830 00:46:11,300 --> 00:46:15,010 sa Google ay ang dalawang linya dito, 831 00:46:15,010 --> 00:46:18,420 sinundan sa pamamagitan ng ilang arcane impormasyon pababa dito na makikita namin huwag pansinin sa ngayon. 832 00:46:18,420 --> 00:46:20,890 Ngunit paunawa, masyadong, ano Chrome ay medyo madaling gamiting may, 833 00:46:20,890 --> 00:46:24,540 din ito nagpapakita sa akin ang query string na ipinadala. 834 00:46:24,540 --> 00:46:27,410 Kaya sa halip na ipakita sa akin ito, na kung saan ay literal na ipinadala, 835 00:46:27,410 --> 00:46:30,800 kung ko bang tingnan ang mga ito decoded, Chrome, para lamang sa pag-debug sa mga layuning, 836 00:46:30,800 --> 00:46:34,270 para sa mga developer tulad ng sa amin, ito ay nagpapakita sa akin ang isang tao-friendly na bersyon ng - 837 00:46:34,270 --> 00:46:36,390 na hindi kung paano ini-ispel soro, tila. 838 00:46:36,390 --> 00:46:40,520 Ako makapansin ng ito ngayon - ngunit ito nagpapakita sa iyo kung ano ako, tila, nai-type. 839 00:46:40,520 --> 00:46:45,340 Samantala, ang tugon na dumating mula sa server muli 200 OK. 840 00:46:45,340 --> 00:46:47,930 Ngunit kasama sa na tugon, siyempre, 841 00:46:47,930 --> 00:46:51,920 kung namin ang aktwal na tingnan ang HTML ng pahina - 842 00:46:51,920 --> 00:46:55,440 Paumanhin, ito ay isang maliit na keyboard shortcut na nawala pilipit ngayon. 843 00:46:55,440 --> 00:46:59,020 >> Makikita ko haharapin ang mga ito sa ibang pagkakataon. Kaya kung namin ang aktwal na tingnan ang source ng pahina, 844 00:46:59,020 --> 00:47:02,990 kung saan ang maaari kong gawin ang dito sa pamamagitan ng pag-click tugon, 845 00:47:02,990 --> 00:47:10,080 ito ay kung ano ang aktwal na tuhugan pabalik, sa karagdagan sa na misteriyoso 200 OK mensahe mula sa server. 846 00:47:10,080 --> 00:47:12,520 Ang isang maliit na misteriyoso, ngunit kung saan ay ang lahat ng ito nagmumula? 847 00:47:12,520 --> 00:47:15,570 Well, sabihin gawin ang isa sa iba pang mga bagay dito. Isa pang medyo-misteriyoso utos, 848 00:47:15,570 --> 00:47:20,530 ngunit ang uri na ito ng isa ng kapong baka na ito ay ipinapakita sa amin nang eksakto kung ano ang nangyayari sa ilalim ng hood. 849 00:47:20,530 --> 00:47:22,530 Kaya ako pabalik sa aking Mac dito, ako konektado 850 00:47:22,530 --> 00:47:25,980 sa pamamagitan ng isang programa na tinatawag na SSH, Secure Shell, sa ibang server 851 00:47:25,980 --> 00:47:28,940 dahil karamihan ng Harvard computer ng iba-block ang command na hindi namin tungkol sa upang tumakbo 852 00:47:28,940 --> 00:47:31,640 dahil may command na ito sa ilang mga server na tinatawag na traceroute 853 00:47:31,640 --> 00:47:34,810 na nagbibigay-daan sa iyo upang kopyahin o sipiin sa pamamagitan ng pag-aninag ang ruta sa pagitan ng mga puntos at b, 854 00:47:34,810 --> 00:47:37,020 at sa gayon ay malayo kami ay pagkuha para sa ipinagkaloob 855 00:47:37,020 --> 00:47:40,170 na maaari kong i-type ang sa Google.com at sa paanuman makakuha ng mga data sa likod 856 00:47:40,170 --> 00:47:43,530 mula sa kalahatian sa buong bansa o sa kalahatian sa buong mundo. 857 00:47:43,530 --> 00:47:45,810 Na may traceroute namin ang aktwal na sumisid sa isang maliit na mas malalim 858 00:47:45,810 --> 00:47:49,370 sa kung paano gumagana ang Internet, at makita kung ano ang nangyayari sa ilalim ng hood. 859 00:47:49,370 --> 00:47:54,440 Kaya sabihin sige at kopyahin o sipiin sa pamamagitan ng pag-aninag mang isang ruta, sabihin nating, Stanford.edu, 860 00:47:54,440 --> 00:47:57,150 na sa buong bansa, at pindutin ang enter. 861 00:47:57,150 --> 00:47:59,380 Ang utos na ito ay maaaring maging napakabilis o napakabilis na mabagal, 862 00:47:59,380 --> 00:48:02,010 ngunit kung ano ang aming nakikita ngayon, linya sa pamamagitan ng linya, 863 00:48:02,010 --> 00:48:08,060 bawat isa sa ang mga hakbang o hops sa pagitan namin at ng Palo Alto, o Stanford, 864 00:48:08,060 --> 00:48:11,010 kung saan mayroon sila ng kanilang web server. 865 00:48:11,010 --> 00:48:16,600 Kaya ano ang nilalaman ng bawat isa sa mga linyang ito ay kumakatawan mas concretely, bagaman? 866 00:48:16,600 --> 00:48:19,100 Ang isang piraso ng magulong pag-uusap mula sa Internet? [Estudyante, hindi maintindihan] 867 00:48:19,100 --> 00:48:21,570 >> Ano iyan? [Estudyante, hindi maintindihan] 868 00:48:21,570 --> 00:48:25,390 >> Oh, kaya may mga beses, ngunit ano ang nilalaman ng bawat hilera - ano ko ibig sabihin sa pamamagitan ng hop? 869 00:48:25,390 --> 00:48:29,140 >> Well, may mga bagay na ito sa Internet na tinatawag na router. 870 00:48:29,140 --> 00:48:33,020 At router, ng pangalan nagmumungkahi, impormasyon sa ruta mula sa punto upang ituro b. 871 00:48:33,020 --> 00:48:36,920 Subalit may ilang mga puntos higit pa sa isang at b. 872 00:48:36,920 --> 00:48:40,010 Mayroong c at d at e at f sa pagitan ng hilera 1, 873 00:48:40,010 --> 00:48:43,480 na mangyayari sa IP address ng aking computer, 874 00:48:43,480 --> 00:48:46,890 o aking numeric address, na natatanging nagpapakilala sa aking computer, 875 00:48:46,890 --> 00:48:50,300 at hakbang 15, na kung saan ay talagang ang ikaanim na web server, 876 00:48:50,300 --> 00:48:54,640 tila, na ako inferring mula sa, o bersyon 6 ng kanilang mga web server sa Stanford. 877 00:48:54,640 --> 00:48:56,680 Ngunit kung ano ang uri ng kapong baka ay, maaari naming makita ang landas 878 00:48:56,680 --> 00:49:00,480 na aking 0 at 1 ang mga pagsasaayos mula sa aking computer sa Stanford. 879 00:49:00,480 --> 00:49:02,500 Kaya hakbang 1 address ng aking sariling computer. 880 00:49:02,500 --> 00:49:05,760 Bawat computer sa Internet ay isang natatanging identifier na ganito ang hitsura. 881 00:49:05,760 --> 00:49:08,150 Number.number.number.number. 882 00:49:08,150 --> 00:49:10,370 Sa isang lugar sa campus na ito, marahil sa center ang agham, 883 00:49:10,370 --> 00:49:16,780 ang router ng tinatawag na Core Gateway 2-te83, ang anumang na ay nangangahulugan, 884 00:49:16,780 --> 00:49:20,590 kaya ito ay isa sa Harvard malaking magarbong router na mga ruta ng maraming ng kanilang trapiko. 885 00:49:20,590 --> 00:49:24,640 Narito ang isa pang router ng Harvard ng, ang isang ito ay Border Gateway, 886 00:49:24,640 --> 00:49:28,310 hangganan kahulugan marahil ito ay isang lugar sa paligid ng campus. 887 00:49:28,480 --> 00:49:32,790 Pagkatapos may Nox isa, hilera 4, na Northern Crossroads, 888 00:49:32,790 --> 00:49:35,070 kung saan ay isang malaking ISP, Internet service provider, 889 00:49:35,070 --> 00:49:37,740 na mga lugar tulad ng Harvard kumonekta ng hanggang sa. 890 00:49:37,740 --> 00:49:40,760 Ngunit mga bagay na makakuha ng isang maliit na kawili-wili sa linya 6. 891 00:49:40,760 --> 00:49:45,960 Saan ang aking mga bits ang lahat ng isang biglaang? Kansas. 892 00:49:45,960 --> 00:49:49,300 Ang mundo ay isang ugali ng paggamit ng mga code ng airport sa isang maraming mga bagay na ito, 893 00:49:49,300 --> 00:49:52,900 o hindi bababa sa pagdadaglat para sa mga estado o lungsod, 894 00:49:52,900 --> 00:49:56,490 kaya mukhang, sa loob ng 60 ms, 895 00:49:56,490 --> 00:49:59,420 isang packet ng impormasyon, 0 at 1 mula sa aking laptop 896 00:49:59,420 --> 00:50:03,210 Nakakuha ang lahat ng mga paraan upang Kansas, at muli, sa 60 ms. 897 00:50:03,210 --> 00:50:08,180 >> Bukod dito, pagkatapos Kansas, sila kinuha ng isang tour sa pamamagitan ng Houston, marahil, 898 00:50:08,180 --> 00:50:10,140 tulad ng iminungkahing sa pamamagitan ng pangalan ng server na ito. 899 00:50:10,140 --> 00:50:13,310 Kaya tulad ng isang server sa Internet ay dapat magkaroon ng numeric address, 900 00:50:13,310 --> 00:50:18,360 Maaari din ito, opsyonal, magkaroon ng isang bahagyang mas tao-friendly address na sa mga tao na dumating sa. 901 00:50:18,360 --> 00:50:20,510 Ngayon, sa hakbang 8, hindi namin alam kung ano ito ay. 902 00:50:20,510 --> 00:50:22,550 Minsan router lamang uri ng balewalain mo, 903 00:50:22,550 --> 00:50:25,010 at hindi lang nila sagutin ang mga katanungan, kaya na fine. 904 00:50:25,010 --> 00:50:29,290 Ang isa matapos ang hakbang 8 ay tila kung saan? L.A. 905 00:50:29,290 --> 00:50:35,290 Mapansin sa lamang 78 ms, kung ano ang tumatagal sa amin ng mga tao tulad ng 6 + oras na gawin pisikal, 906 00:50:35,290 --> 00:50:40,110 tumatagal ng packet ng impormasyon sa Internet 78 ms sa paglalakbay na malayo. 907 00:50:40,110 --> 00:50:45,890 Hakbang 10 sa LA pati na rin, at hakbang 11 ay tila nawala hilaga, hanggang malapit sa Stanford. 908 00:50:45,890 --> 00:50:48,750 Ito ay kanilang hangganan router, o hangganan router. 909 00:50:48,750 --> 00:50:51,240 Ilang hakbang sa Stanford na pagbalewala sa amin, 910 00:50:51,240 --> 00:50:55,610 at sa wakas, maabot namin ang mga web server sa loob ng 87 ms. 911 00:50:55,610 --> 00:50:57,760 Ngayon, ang lahat ng mga numero na ito, bilang isang bukod, 912 00:50:57,760 --> 00:51:00,640 lamang sabihin sa iyo gaano katagal para sa mga data upang makakuha ng mula sa akin 913 00:51:00,640 --> 00:51:03,530 sa bawat isa sa mga router na ito, at hindi naiipon. 914 00:51:03,530 --> 00:51:06,960 Ano Ang program na ito ay ay, unang nagpapadala ng mensahe, mahalagang, sa unang router. 915 00:51:06,960 --> 00:51:09,490 Pagkatapos isa sa pangalawang router; pagkatapos ay isa sa ikatlong router, 916 00:51:09,490 --> 00:51:12,610 pagsukat sa bawat oras. Kaya sa teorya, mga oras na ito ay lumalaking 917 00:51:12,610 --> 00:51:14,860 o hindi bababa sa medyo malapit sa isa't isa, 918 00:51:14,860 --> 00:51:18,090 at, sa katunayan, ang mga na karapatan dito sa campus ay napakabilis na maliit. 919 00:51:18,090 --> 00:51:20,820 Sa lalong madaling simulan mo ang pagpunta sa buong bansa, ito ay tumatagal ng mga data 920 00:51:20,820 --> 00:51:24,830 ng kaunti na upang maglakbay, mas malapit sa 100 ms, bigyan o. 921 00:51:24,830 --> 00:51:28,330 Ngunit ipaalam ay pumunta sa iba pang mga direksyon ngayon. Paano tungkol sa Cambridge University sa UK? 922 00:51:28,330 --> 00:51:32,540 Ipaalam sa akin sa halip na magpatakbo ng traceroute ng www.cam para sa Cambridge, 923 00:51:32,540 --> 00:51:36,710 . AC para sa akademiko,. UK, at pindutin ang enter dito. 924 00:51:36,710 --> 00:51:38,830 Na ay medyo mapahamak mabilis. 925 00:51:38,830 --> 00:51:43,300 Ang aking data literal nagpunta sa Cambridge, England, na ikalawang hati ng panahon. 926 00:51:43,300 --> 00:51:45,340 >> Kaya sabihin makita ang path na ito kinuha. 927 00:51:45,340 --> 00:51:47,520 Harvard, Harvard, Harvard, Northern Crossroads, 928 00:51:47,520 --> 00:51:52,690 na isang ISP, at pagkatapos ito ay Northern Crossroads, at pagkatapos daya. 929 00:51:52,690 --> 00:51:58,320 Ano ang sa pagitan ng mga hakbang 6 at 7, router 6 at 7? 930 00:51:58,320 --> 00:52:02,040 Ang Atlantic Ocean. At kami ay inferring ito mula sa katotohanang ang 931 00:52:02,040 --> 00:52:06,530 pumunta namin mula sa 20 ms dito sa 80 ms dito. 932 00:52:06,530 --> 00:52:10,050 Kaya ay isang bagay na kinuha sa 60 ms, bigyan o tumagal, upang makapunta. 933 00:52:10,050 --> 00:52:12,910 At iyon ay marahil isang malaking katawan ng tubig. 934 00:52:12,910 --> 00:52:15,250 Ano ang napupunta sa pagkatapos na? Well, dito kami sa London, 935 00:52:15,250 --> 00:52:18,860 lamang 88 ms mamaya. Higit pang London, mas London, 936 00:52:18,860 --> 00:52:21,730 hindi sigurado kung saan ito ay, ngunit naming ipagpalagay labas ng London, 937 00:52:21,730 --> 00:52:26,390 Cambridge dito, at sa wakas namin - literal, University ng Cambridge 938 00:52:26,390 --> 00:52:29,500 . Something.net, at pagkatapos, sa wakas, sa ika-16 linya, 939 00:52:29,500 --> 00:52:31,720 ang kanilang mga web server ay tila tinatawag Scorpius 940 00:52:31,720 --> 00:52:35,500 sa ilalim ng hood, kahit na alam namin ito bilang www. 941 00:52:35,500 --> 00:52:38,790 Uri ng isip-pamumulaklak, sa tingin ko. Ang unang pagkakataon ko kailanman ginawa ito, lubos blew aking isip. 942 00:52:38,790 --> 00:52:41,670 Sa kasamaang palad, ang Harvard Haharangan ng ganitong uri ng trapiko, karaniwang, sa network. 943 00:52:41,670 --> 00:52:44,340 Kaya hindi mo maaaring gawin ito sobrang madali. 944 00:52:44,340 --> 00:52:48,500 Napagtanto, bagaman, ito dito ay maaari. 945 00:52:48,500 --> 00:52:53,630 Ayos lang. Natin ang aming 5-minutong break na dito. Susubukan naming bumalik at sumisid sa mas malalim. 946 00:52:53,630 --> 00:53:00,850 Kaya hindi namin pabalik, at namin ang uri ng ambled tungkol sa loob ng ilang iba't-ibang direksyon dito. 947 00:53:00,850 --> 00:53:03,700 Kaya sabihin ibuod nang eksakto kung ano ang pagpunta sa dito. 948 00:53:03,700 --> 00:53:07,990 Na sinimulan namin ang pag-uusap na pakikipag-usap tungkol sa wika na ito na tinatawag na HTML. 949 00:53:07,990 --> 00:53:10,680 Muli, hindi isang programming language. Lamang ng isang markup language 950 00:53:10,680 --> 00:53:15,490 na higit sa lahat tungkol sa aesthetics at pagbuo ng nilalaman sa form ng isang webpage. 951 00:53:15,490 --> 00:53:19,220 Ngunit HTML, samakatuwid, ay nangangailangan ng ilang uri ng mekanismo 952 00:53:19,220 --> 00:53:22,870 para sa paglalakbay sa pagitan ng mga web browser at server. 953 00:53:22,870 --> 00:53:28,360 HTML samakatuwid uri ng mga rides sa itaas ng iba pang mga wika na ito, 954 00:53:28,360 --> 00:53:31,280 o higit pa nang maayos, ang isang protocol, na kilala bilang HTTP. 955 00:53:31,280 --> 00:53:33,730 >> At ng HTTP, bilang nasaksihan namin ito sa gayon ay malayo, 956 00:53:33,730 --> 00:53:37,140 uri ng kahalintulad na ito tao convention ng alog kamay. 957 00:53:37,140 --> 00:53:39,940 Kapag ang isang browser gustong humiling ng isang pahina mula sa isang server, 958 00:53:39,940 --> 00:53:43,450 nagpapadala ito na "makakuha ng" kahilingan mula sa browser sa server, 959 00:53:43,450 --> 00:53:48,040 at pagkatapos ay ang server tumugon na may isang numero tulad ng 200, ang lahat ay okay, 960 00:53:48,040 --> 00:53:53,290 pati na rin ang HTML o ilang masamang numero tulad ng 404, ang file ay hindi nahanap. 961 00:53:53,290 --> 00:53:58,220 Ngunit samantala, HTTP mismo ay hindi Internet, per se. 962 00:53:58,220 --> 00:54:01,550 HTTP isang serbisyo, isang tampok ng Internet 963 00:54:01,550 --> 00:54:05,530 tulad ng G chat ay isa pang serbisyo, na halos tulad ng email ay isa pang serbisyo. 964 00:54:05,530 --> 00:54:09,180 Mayroong ang lahat ng mga uri ng mga bagay na maaari naming gawin sa Internet. 965 00:54:09,180 --> 00:54:12,670 HTTP ay isa lamang ng mga application na iyon. 966 00:54:12,670 --> 00:54:17,210 Kaya sa tuktok ng - HTTP sa tuktok ng iba pa 967 00:54:17,210 --> 00:54:21,750 kung saan hindi namin banggitin sa pamamagitan ng pangalan, maaaring narinig mo ng sa pamamagitan ng pangalan, TCP / IP. 968 00:54:21,750 --> 00:54:25,160 Kaya ang kuwento na sinabi lang namin may ay tungkol sa 969 00:54:25,160 --> 00:54:28,720 kung paano data paglalakbay mula sa punto upang ituro b. 970 00:54:28,720 --> 00:54:30,950 At sa kasong ito, nakita namin sa isang mababang antas 971 00:54:30,950 --> 00:54:33,060 router sa router sa router sa router, 972 00:54:33,060 --> 00:54:35,390 kung paano ang data ay aktwal na ipinadala. 973 00:54:35,390 --> 00:54:40,510 Ngunit sa kahabaan ng paraan, ito ay pagpunta sa nakatagpo ng mga iba't-ibang mga hadlang. 974 00:54:40,510 --> 00:54:43,770 Bukod sa mga router na ito, may mga bagay na tinatawag na firewall sa Internet, 975 00:54:43,770 --> 00:54:46,680 at kaya data, tulad ng na namin ang pagpapadala 976 00:54:46,680 --> 00:54:49,720 mula sa akin sa Stanford, mula sa akin sa Cambridge, 977 00:54:49,720 --> 00:54:54,560 ay ipinadala sa, sa antas na ito, ang isang bagay na tinatawag na isang IP address. 978 00:54:54,560 --> 00:54:57,340 Nakita namin ito ng ilang sandali ang nakalipas, at isang IP address 979 00:54:57,340 --> 00:55:02,480 lamang ng numeric address ng anyong w.x.y.z, 980 00:55:02,480 --> 00:55:08,070 kung saan ang bawat isa sa mga ito ay sa pagitan ng, magbigay o, 0 at 255, 981 00:55:08,070 --> 00:55:10,080 kahit na hindi pa mo maaaring gamitin ang lahat ng mga numero. 982 00:55:10,080 --> 00:55:14,220 Ngunit ang bawat isa sa mga may-hawak ng lugar na ito ay isang numero sa pagitan ng 0 at 255. 983 00:55:14,220 --> 00:55:16,820 Kaya isang IP address sa mga araw na ito ay 32 bit. 984 00:55:16,820 --> 00:55:20,780 >> Ngayon, na nagbibigay sa amin kung gaano karaming mga posibleng mga IP address sa mundo? 985 00:55:20,780 --> 00:55:24,420 Pahapyaw 4 bilyong, dahil anumang oras na namin ang pagbibilang sa kapangyarihan ng 2 986 00:55:24,420 --> 00:55:27,760 ang lahat ng paraan hanggang sa 32 ng isang bagay, na karaniwang ay nagbibigay sa amin ng 4 bilyong. 987 00:55:27,760 --> 00:55:30,160 Kaya na ng maraming ng mga IP address, ngunit maaari mong basahin, 988 00:55:30,160 --> 00:55:32,410 o maaari mong ngayon mapansin sa sikat na press, 989 00:55:32,410 --> 00:55:36,020 push papunta sa isang bagong bersyon ng mga IP na tinatawag IPv6. 990 00:55:36,020 --> 00:55:38,290 Sa ngayon namin ginagamit ang bersyon 4. 991 00:55:38,290 --> 00:55:41,060 Mayroong talaga ay hindi isang bersyon 5, lamang kami ay paglukso karapatan sa 6. 992 00:55:41,060 --> 00:55:46,760 Bersyon 6 ay pagpunta upang gamitin ang 128 bits para sa mga IP address, na kung saan ay freaking malaking. 993 00:55:46,760 --> 00:55:49,430 Hindi namin dapat tumakbo para sa pa ng ilang oras ngayon, 994 00:55:49,430 --> 00:55:52,980 ngunit sinimulan na naming ng pagka-ubos ng bersyon 4 IP address, 995 00:55:52,980 --> 00:55:56,110 dahil ang lahat sa atin ay may hindi lamang mga bagay tulad ng mga laptop at desktop, 996 00:55:56,110 --> 00:55:58,700 marami sa atin ay may telepono, marami sa atin ay may iba pang mga device 997 00:55:58,700 --> 00:56:01,600 tulad ng TiVo at katulad na may mga IP address sa kanilang sarili. 998 00:56:01,600 --> 00:56:03,720 Harvard mismo ng sampu sa libu-libong ng mga computer. 999 00:56:03,720 --> 00:56:07,970 Kaya mundo na tunay nauubusan ng mga IP address, hindi bababa sa ng form na ito. 1000 00:56:07,970 --> 00:56:10,340 Kaya sa susunod na ilang mga taon, pupunta ka upang makita ang mga address 1001 00:56:10,340 --> 00:56:12,870 sa iyong sariling computer marahil mabagal baguhin 1002 00:56:12,870 --> 00:56:16,740 ng higit pa at higit pang mga kumpanya at mga unibersidad simulan upang suportahan ang mas bagong bersyon. 1003 00:56:16,740 --> 00:56:22,770 Ngunit ang isang IP address ay hindi sapat para sa computer ng isang upang humiling ng data mula sa computer na b. 1004 00:56:22,770 --> 00:56:24,950 Dahil ang computer na b ng server, 1005 00:56:24,950 --> 00:56:27,600 at server, tulad ng nabanggit ko mas maaga, maaari gawin bunches ng mga bagay. 1006 00:56:27,600 --> 00:56:29,940 Maaari itong i-host sa mga web page, maaari itong maging isang email server, 1007 00:56:29,940 --> 00:56:32,310 maaari itong maging isang Skype server, maaari itong maging isang G chat server. 1008 00:56:32,310 --> 00:56:35,870 >> Sa lahat ng mga iba't ibang mga serbisyo na maaaring ibigay sa isang server 1009 00:56:35,870 --> 00:56:38,330 maaaring lahat, pisikal, sa parehong machine. 1010 00:56:38,330 --> 00:56:40,380 Kaya sa karagdagan sa mga IP address, 1011 00:56:40,380 --> 00:56:43,250 mundo ay may mga bagay na tinatawag na port sa Internet. 1012 00:56:43,250 --> 00:56:47,830 Port ay lamang numero, kaya may isang natatanging numero para sa HTTP. 1013 00:56:47,830 --> 00:56:50,280 Ang bilang nito ay 80. 1014 00:56:50,280 --> 00:56:55,870 Gumagamit din ng HTTP ang numero 443, ngunit higit na partikular, para sa mga naka-encrypt HTTPS. 1015 00:56:55,870 --> 00:57:00,030 Tuwing nakikita mo ang s, para sa ligtas, na gumagamit ng ibang numero. 1016 00:57:00,030 --> 00:57:06,580 May iba pang mga numero, tulad ng 25, na ginamit para sa isang bagay na tinatawag SMTP, na kilala bilang ng email. 1017 00:57:06,580 --> 00:57:09,620 May isang bagay na tinatawag na 22 para sa SSH, 1018 00:57:09,620 --> 00:57:11,850 at may isang buong grupo ng mga iba pang port out doon. 1019 00:57:11,850 --> 00:57:14,460 Ngayon, hindi namin tao ay bihirang makita ang mga numerong ito. 1020 00:57:14,460 --> 00:57:21,970 Gayunpaman, kapag nagta-type ka sa isang address tulad http://www.facebook.com, 1021 00:57:21,970 --> 00:57:26,560 browser ay lihim pagpasok 80, dahil gumagamit ka ng HTTP. 1022 00:57:26,560 --> 00:57:30,630 Kung ikaw, sa halip, uri ng HTTPS, lihim ito pagpasok 443. 1023 00:57:30,630 --> 00:57:35,180 At maaari naming uri ng makita ito nang manu-mano kung hilahin ko ng brower 1024 00:57:35,180 --> 00:57:41,850 at pumunta sa http://www.facebook.com:80. 1025 00:57:41,850 --> 00:57:44,550 Samakatuwid tahasang sumisipi hindi lamang ang pangalan ng website 1026 00:57:44,550 --> 00:57:47,650 ngunit ang port na gusto kong makipag-usap sa, at pindutin ang enter. 1027 00:57:47,650 --> 00:57:50,170 Mapansin ito mawala, dahil ang Ipinagpapalagay ng browser, 1028 00:57:50,170 --> 00:57:53,360 oh, 80, hindi ako kahit pagpunta sa abala nagpapakita na sa iyo. 1029 00:57:53,360 --> 00:57:56,400 Ngunit ang mga dahilan para sa ay na kung aktwal ko nais upang magpadala ng isang tao ng isang email, 1030 00:57:56,400 --> 00:58:02,340 Gusto ko talagang ipadala ito sa kanila sa port 25, na pagiging SMTP. 1031 00:58:02,340 --> 00:58:04,890 Isang kaunting isang oversimplification, ngunit ang ilan sa inyo ay may mga kaibigan 1032 00:58:04,890 --> 00:58:09,290 na aktwal na gumagana sa Facebook, at sila, katulad, may server na makatanggap ng email. 1033 00:58:09,290 --> 00:58:12,610 >> Anumang oras sa iyo na magpadala ng isang email, ano gmail ay ginagawa para sa iyo 1034 00:58:12,610 --> 00:58:14,960 o Outlook o anumang programa na ginagamit mo, 1035 00:58:14,960 --> 00:58:19,270 ito uri ng lihim pagpasok na numero pati na rin, 25, sa kasong iyon. 1036 00:58:19,270 --> 00:58:24,490 Ito ay ang kumbinasyon ng mga IP address at numero na natatanging nagpapakilala sa 1037 00:58:24,490 --> 00:58:29,190 isang computer sa Internet at isang partikular na serbisyo sa computer na iyon. 1038 00:58:29,190 --> 00:58:33,460 Ngayon, siyempre, karamihan sa atin na marahil hindi kailanman-type nang manu-mano ang isang IP address. 1039 00:58:33,460 --> 00:58:37,340 Siguro mayroon kang sa appliance, ngunit sa tunay na mundo, hindi kaya magkano. 1040 00:58:37,340 --> 00:58:42,750 Bakit hindi namin type ang mga IP address sa browser? 1041 00:58:42,750 --> 00:58:45,860 Ito gumagana, sa katunayan, maaari naming makita na ito, hayaan mo akong ipakita sa iyo 1042 00:58:45,860 --> 00:58:50,000 isa pang utos na dapat gumana pinaka-kahit saan sa campus ng Harvard ng sa Mac o PC. 1043 00:58:50,000 --> 00:58:53,970 May utos na ito na tinatawag na nslookup, pangalan ng server lookup. 1044 00:58:53,970 --> 00:58:59,960 Kung titingnan ko hanggang www.cnn.com, lumiliko na CNN ay may - oh, kawili-wili. 1045 00:58:59,960 --> 00:59:03,180 CNN ay nagsimula gamit ang Amazon web mga serbisyo. 1046 00:59:03,180 --> 00:59:06,380 Maaaring kilala mo ng cloud computing, Amazon isa ng malaking mga manlalaro sa cloud computing. 1047 00:59:06,380 --> 00:59:10,240 Ano ko lang ay, ko sinabi, 'Bigyan mo ako ng address ng web server ng CNN,' 1048 00:59:10,240 --> 00:59:14,090 ngunit ito lumiliko out na ang web server ng CNN ay pinamamahalaan ng Amazon, 1049 00:59:14,090 --> 00:59:16,030 Amazon web serbisyo, ito ay nagmumungkahi. 1050 00:59:16,030 --> 00:59:19,680 At ang address ng server na ito dito. 1051 00:59:19,680 --> 00:59:22,350 Kaya ako hindi sigurado kung ito ay gagana, dahil hindi nila ginagamit upang gamitin ang Amazon. 1052 00:59:22,350 --> 00:59:32,830 Ngunit sabihin subukan ito; http://, IP address, ipasok, at - 1053 00:59:32,830 --> 00:59:35,690 ito upang gumana? 1054 00:59:35,690 --> 00:59:39,280 Oo. Ito upang gumana. Internet ay napaka-mabagal na ngayon. 1055 00:59:39,280 --> 00:59:43,680 Ngunit, sa isang sandali, makikita mo makita ang ilang mga kuwento ng balita. 1056 00:59:43,680 --> 00:59:48,360 Doon kami. Bank ng Amerika ay mademanda. Ayos lang. 1057 00:59:48,360 --> 00:59:54,000 >> Ito ay dahil ang IP address na ito ang mangyayari sa pamamagitan ng magkasingkahulugan na may www.cnn.com. 1058 00:59:54,000 --> 00:59:59,920 Siyempre, ito ay kalagim-lagim sa marketing upang sabihin, bisitahin kami sa Web sa 50.112.94.127. 1059 00:59:59,920 --> 01:00:02,370 Hindi mo nais tandaan. Kaya kahit mga araw na ito maaari mong isipin ang mga bagay 1060 01:00:02,370 --> 01:00:07,210 tulad 1-800-COLLECT o nimonika mundo ay dumating up para sa mga numero ng telepono. 1061 01:00:07,210 --> 01:00:09,540 Aling, bago cell phone, sa halip mahirap matandaan 1062 01:00:09,540 --> 01:00:11,800 hanggang maaari mong i-type lamang ito sa at kalimutan ang tungkol dito. 1063 01:00:11,800 --> 01:00:15,730 Kaya ang Web, masyadong, ay ang convention na ito ng mga pangalan at mga IP address, 1064 01:00:15,730 --> 01:00:17,770 at may mga bagay na ito out may tinatawag na DNS server, 1065 01:00:17,770 --> 01:00:23,870 domain name system server, na isalin ang mga IP address sa pangalan at vice versa. 1066 01:00:23,870 --> 01:00:26,340 Kaya na ng kung ano ang nangyayari sa ilalim ng hood. 1067 01:00:26,340 --> 01:00:29,540 Sa pagtatapos, mayroon kaming TCP / IP na ito napakababang-level na protocol 1068 01:00:29,540 --> 01:00:32,570 na, talaga, lang nakakakuha ng 0 at 1 sa Internet, 1069 01:00:32,570 --> 01:00:36,030 at nagagawa ito sa pamamagitan ng paglalagay sa kanila sa isang virtual na sobre, 1070 01:00:36,030 --> 01:00:38,820 kung kalooban mo, at pagsusulat sa labas ng sobre 1071 01:00:38,820 --> 01:00:43,930 ang IP address ng destination, pati na rin ang numerong numero ng port 1072 01:00:43,930 --> 01:00:47,520 ng serbisyo sa na destination na gustong makipag-usap sa. 1073 01:00:47,520 --> 01:00:51,060 Samantala, sa sobre mayroon ding isang bagay na kilala bilang isang return address, 1074 01:00:51,060 --> 01:00:55,600 na ang iyong IP address, sa gayon ay kapag CNN ay nakakakuha ng isang packet ng impormasyon mula sa iyo, 1075 01:00:55,600 --> 01:00:58,710 magbubukas ito virtual sobre, nakikita na gusto mo ang home page, 1076 01:00:58,710 --> 01:01:04,630 alam ito mula sa nagpadala bahagi ng ito virtual sobre kanino ipadala ang HTML pabalik sa. 1077 01:01:04,630 --> 01:01:07,470 Kaya sabihin tingnan sa ito sa ng kaunti pa sa detalye. 1078 01:01:07,470 --> 01:01:11,370 Ito ay mula sa isang kumpanya na tinatawag Ericson, mula sa isang ilang taon likod. 1079 01:01:11,370 --> 01:01:14,780 At kinuha nila ang ilang mga kalayaan sa kung paano aktwal na gumagana ang Internet, 1080 01:01:14,780 --> 01:01:18,920 ngunit paints isang mas visual na larawan kaysa lamang na isulat dito. 1081 01:01:18,920 --> 01:01:26,690 Kaya ako magbibigay sa iyo ng "A Bit ng Internet." 1082 01:02:26,660 --> 01:02:29,840 >> [Tagapagsalaysay] Para sa unang pagkakataon sa kasaysayan, 1083 01:02:29,840 --> 01:02:35,260 mga tao at makinarya ay nagtatrabaho nang magkasama, napagtatanto ang isang panaginip. 1084 01:02:35,260 --> 01:02:38,910 Isang uniting lakas na alam walang heograpikal na mga hangganan. 1085 01:02:38,910 --> 01:02:43,230 Nang walang pagtatangi sa lahi, pananampalataya, o kulay. 1086 01:02:43,230 --> 01:02:47,770 Ang isang bagong panahon kung saan ang komunikasyon ay tunay na pinagsasama-tao nang. 1087 01:02:47,770 --> 01:02:50,070 Ito ay 1088 01:02:50,070 --> 01:02:54,980 Ang Dawn ng Net. 1089 01:02:54,980 --> 01:03:04,640 Gusto mong malaman kung paano ito gumagana? Mag-click dito upang simulan ang iyong paglalakbay sa Net. 1090 01:03:04,640 --> 01:03:07,890 Ngayon, eksakto kung ano ang nangyari kapag ikaw ay nag-click sa link na iyon? 1091 01:03:07,890 --> 01:03:10,150 Na sinimulan mo ang isang daloy ng impormasyon. 1092 01:03:10,150 --> 01:03:13,310 Ang impormasyon na ito ay naglalakbay sa iyong sariling personal na mailroom 1093 01:03:13,310 --> 01:03:18,500 kung saan ang Mr IP pakete ito, label ito, at ipapadala ito sa paraan. 1094 01:03:18,500 --> 01:03:20,960 Bawat packet ay limitado sa laki nito. 1095 01:03:20,960 --> 01:03:23,880 Room Ang mail ay dapat magpasya kung paano hatiin ang impormasyon 1096 01:03:23,880 --> 01:03:26,070 at kung paano ito package. 1097 01:03:26,070 --> 01:03:29,550 Ngayon, ang pakete ay nangangailangan ng isang label na naglalaman ng mahalagang impormasyon 1098 01:03:29,550 --> 01:03:35,570 tulad ng nagpadala address, address ng receiver, at ang uri ng packet ito ay. 1099 01:03:51,700 --> 01:03:54,980 Dahil ang partikular na packet ay pagpunta papunta sa Internet, 1100 01:03:54,980 --> 01:03:57,720 Nakakakuha rin ng isang address para sa proxy server, 1101 01:03:57,720 --> 01:04:01,520 na may isang espesyal na function, dahil kakailanganin namin makita mamaya. 1102 01:04:01,520 --> 01:04:06,650 Packet ngayon inilunsad papunta sa iyong lokal na lugar ng network, o LAN. 1103 01:04:06,650 --> 01:04:10,160 Ang network na ito ay ginagamit upang kumonekta ang lahat ng mga lokal na computer ' 1104 01:04:10,160 --> 01:04:15,900 router, printer, at iba pa, para sa pagpapalitan ng impormasyon sa loob ng pisikal na mga pader ng gusali. 1105 01:04:15,900 --> 01:04:20,290 Ang LAN ay isang medyo hindi nakokontrol na lugar, at, sa kasamaang-palad, 1106 01:04:20,290 --> 01:04:23,950 maaaring mangyari ang mga aksidente. 1107 01:04:31,190 --> 01:04:34,710 Sa highway ng LAN ay puno ng lahat ng mga uri ng impormasyon. 1108 01:04:34,710 --> 01:04:38,900 Ito ang IP packet, Novell packet, AppleTalk packet. 1109 01:04:38,900 --> 01:04:41,270 Sila ay pagpunta laban sa trapiko, gaya ng dati. 1110 01:04:41,270 --> 01:04:44,260 Ang lokal na router bumabasa ang address at, kung kinakailangan, 1111 01:04:44,260 --> 01:04:48,520 Lift ang packet sa isa pang network. 1112 01:04:48,520 --> 01:04:54,270 Ah, ang router. Isang simbolo ng kontrol sa isang tila ginulo mundo. 1113 01:04:54,270 --> 01:05:05,480 [Router pagbulong-bulong at pakikipag-usap sa sarili nito] 1114 01:05:05,480 --> 01:05:10,030 >> [Tagapagsalaysay] May siya ay, maparaan, uncaring, sistema, 1115 01:05:10,030 --> 01:05:14,150 konserbatibo, at kung minsan hindi pa mapabilis. 1116 01:05:14,150 --> 01:05:17,680 Ngunit hindi bababa sa siya ay eksakto, para sa pinaka-bahagi. 1117 01:05:32,270 --> 01:05:36,820 Bilang ng mga packet iwanan ang router, gumawa nila ang kanilang paraan sa corporate Internet 1118 01:05:36,820 --> 01:05:40,830 at tumuloy para sa lumipat router. 1119 01:05:40,830 --> 01:05:46,250 A bit na mas mahusay kaysa sa router, ang router switch-play ng mabilis at hindi kabit-kabit na may mga IP packet, 1120 01:05:46,250 --> 01:05:48,920 deftly routing ito sa kahabaan ng kanilang sariling paraan. 1121 01:05:48,920 --> 01:05:52,130 Isang digital 'Pinball wizard,' kung kalooban mo. 1122 01:05:52,130 --> 01:06:04,270 [Router lumipat sa pakikipag-usap sa sarili nito] 1123 01:06:09,830 --> 01:06:12,150 [Tagapagsalaysay] Bilang packet ang dumating sa kanilang destination, 1124 01:06:12,150 --> 01:06:14,740 sila makuha sa pamamagitan ng interface ng network, 1125 01:06:14,740 --> 01:06:18,040 pa handa upang ipadala sa susunod na antas. 1126 01:06:18,040 --> 01:06:21,010 Sa kasong ito, ang proxy. 1127 01:06:21,010 --> 01:06:25,040 Proxy ay ginagamit ng maraming mga kumpanya bilang uri ng isang gitnang tao 1128 01:06:25,040 --> 01:06:27,630 upang magpaliit ang load sa koneksyon sa Internet 1129 01:06:27,630 --> 01:06:32,240 at para sa mga kadahilanang pang-seguridad, pati na rin. 1130 01:06:32,240 --> 01:06:38,750 Tulad ng iyong nakikita, ang mga packet ang lahat ng iba't ibang laki depende sa kanilang nilalaman. 1131 01:06:55,210 --> 01:07:01,890 Proxy magbubukas ang packet at hitsura para sa web address o URL. 1132 01:07:01,890 --> 01:07:04,950 Depende sa kung ang address ay katanggap-tanggap, 1133 01:07:04,950 --> 01:07:08,000 packet ay ipinadala sa sa Internet. 1134 01:07:13,890 --> 01:07:19,630 Mayroong mga, gayunpaman, ang ilang mga address na hindi nakakatugon sa ang pag-apruba ng proxy. 1135 01:07:19,630 --> 01:07:25,680 Iyon ay upang sabihin, mga alituntunin sa corporate o pamamahala. 1136 01:07:25,680 --> 01:07:30,580 Mga Aaksyunan summarily may. 1137 01:07:30,580 --> 01:07:32,410 Namin wala na. 1138 01:07:32,410 --> 01:07:36,350 Para sa mga taong gumawa nito, muli sa kalsada. 1139 01:07:46,850 --> 01:07:53,310 >> Susunod, ang firewall. 1140 01:07:53,310 --> 01:07:57,410 Ang corporate firewall ng dalawang mga layunin ng. 1141 01:07:57,410 --> 01:08:02,420 Pinipigilan ang ilang halip makukulit mga bagay mula sa Internet sa darating in sa intranet, 1142 01:08:02,420 --> 01:08:10,280 at ito rin maiwasan ang sensitibong corporate impormasyon mula sa ipinapadala papunta sa Internet. 1143 01:08:10,280 --> 01:08:12,980 Kapag sa pamamagitan ng firewall, router Pinili ang packet 1144 01:08:12,980 --> 01:08:18,180 at naglalagay ito papunta sa isang mas makitid na kalsada, o bandwidth, tulad ng sinasabi namin. 1145 01:08:18,180 --> 01:08:23,720 Malinaw, ang kalsada ay hindi sapat na malawak na kumuha ang mga ito sa lahat ng. 1146 01:08:23,720 --> 01:08:29,319 Ngayon, maaari kang magtaka kung ano ang mangyayari sa lahat ng mga packet na hindi gumawa ito sa kahabaan ng paraan. 1147 01:08:29,319 --> 01:08:32,270 Well, kapag Mr IP ay hindi makatanggap ng pagkilala 1148 01:08:32,270 --> 01:08:35,000 na ang isang packet ay natanggap sa oras dahil, 1149 01:08:35,000 --> 01:08:39,890 siya lamang nagpapadala ng kapalit packet. 1150 01:08:39,890 --> 01:08:44,760 Na kami ngayon handa na upang ipasok ang mundo ng Internet. 1151 01:08:44,760 --> 01:08:49,370 Spiderweb ng interconnected network na sumasaklaw sa aming buong mundo. 1152 01:08:49,370 --> 01:08:56,050 Dito, router at switch magtatag ng mga link sa pagitan ng mga network. 1153 01:08:56,050 --> 01:08:59,200 Ngayon, ang Net ay isang ganap na magkaibang kapaligiran kaysa sa makikita mo 1154 01:08:59,200 --> 01:09:01,569 sa loob ng proteksiyon pader ng iyong LAN. 1155 01:09:01,569 --> 01:09:04,060 Dito, ang Wild West. 1156 01:09:04,060 --> 01:09:06,359 Maraming espasyo, ng maraming mga pagkakataon, 1157 01:09:06,359 --> 01:09:09,760 maraming bagay upang galugarin at mga lugar upang pumunta. 1158 01:09:09,760 --> 01:09:12,760 Salamat sa maliit na kontrol at regulasyon, 1159 01:09:12,760 --> 01:09:18,300 makahanap ng mga bagong ideya mayabong lupa upang itulak ang sobre ng kanilang mga posibilidad. 1160 01:09:18,300 --> 01:09:22,330 Ngunit dahil sa ang kalayaan na ito, ang ilang mga panganib din tumago. 1161 01:09:22,330 --> 01:09:27,000 Hindi mo alam kung makikita mo matugunan ang dreaded ping ng kamatayan, 1162 01:09:27,000 --> 01:09:29,890 isang espesyal na bersyon ng isang normal na ping kahilingan, 1163 01:09:29,890 --> 01:09:35,720 kung saan ang ilang mga tulala naisip hanggang sa gulo mapagtiwala host. 1164 01:09:35,720 --> 01:09:39,130 Ang path na aming packet tumagal ay maaaring sa pamamagitan ng satellite, 1165 01:09:39,130 --> 01:09:43,090 linya ng telepono, wireless, o kahit na sa likod ng mga karagatan cable. 1166 01:09:43,090 --> 01:09:46,520 Hindi nila palaging tumagal ang pinakamabilis o pinakamaikling ruta posible, 1167 01:09:46,520 --> 01:09:50,290 ngunit sila makakuha doon sa kalaunan. 1168 01:09:50,290 --> 01:09:55,230 Siguro na ang dahilan kung bakit minsan ito ay tinatawag na "Ang World Wide Hinihintay." 1169 01:09:55,230 --> 01:09:57,980 Ngunit kapag ang lahat ay gumagana nang maayos, 1170 01:09:57,980 --> 01:10:03,800 maaari mong iwasan ang globo limang beses sa paglipas ng sa drop ng isang sumbrero, literal. 1171 01:10:03,800 --> 01:10:08,230 At lahat para sa halaga ng isang lokal na tawag o mas mababa. 1172 01:10:08,230 --> 01:10:15,070 Malapit sa pagtatapos ng aming destination, magpapadala kami ng isa pang firewall. 1173 01:10:15,070 --> 01:10:18,420 >> Depende sa iyong pananaw bilang isang packet data, 1174 01:10:18,420 --> 01:10:23,730 firewall ay maaaring isang balwarte ng seguridad o dreaded kalaban. 1175 01:10:23,730 --> 01:10:28,530 Ang lahat ng ito ay depende sa kung aling bahagi kung nasaan ka at kung ano ang iyong mga intensyon. 1176 01:10:28,530 --> 01:10:34,990 Firewall ay dinisenyo upang ipaalam sa mga lamang ang mga packet na matugunan nito pamantayan. 1177 01:10:34,990 --> 01:10:39,360 Firewall na ito ay operating sa port 80 at 25. 1178 01:10:39,360 --> 01:10:46,630 Ang lahat ng mga pagtatangka upang ipasok sa pamamagitan ng iba pang port ay sarado para sa negosyo. 1179 01:10:57,660 --> 01:11:03,480 Port 25 ay ginagamit para sa mga packet ng mail, 1180 01:11:03,480 --> 01:11:10,720 habang ang port 80 ang pasukan para sa mga packet mula sa Internet sa server ng web. 1181 01:11:10,720 --> 01:11:15,080 Sa loob ng firewall, packet ay screen mas maigi. 1182 01:11:15,080 --> 01:11:17,970 Ang ilan sa mga packet gumawa ito nang madali sa customs, 1183 01:11:17,970 --> 01:11:21,420 habang ang iba ay tumingin ng kaunti lamang kahina-hinala. 1184 01:11:21,420 --> 01:11:24,060 Ngayon, ang mga opisyal ng firewall ay hindi lokohin, 1185 01:11:24,060 --> 01:11:32,120 tulad ng kapag sinusubukan ng ito ping ng packet ng kamatayan sa magkaila sarili bilang isang normal na ping packet. 1186 01:11:32,120 --> 01:11:37,520 [Firewall opisyal na pakikipag-usap sa packet] 1187 01:11:37,520 --> 01:11:40,510 [Tagapagsalaysay] Para sa mga packet na masuwerteng sapat na upang gawin itong ito malayo, 1188 01:11:40,510 --> 01:11:45,730 paglalakbay ay halos sa paglipas. 1189 01:11:45,730 --> 01:11:52,130 Ito ay lamang ng isang linya sa interface ay dadalhin sa web server. 1190 01:11:52,130 --> 01:11:55,440 Kasalukuyan, ang isang web server ay maaaring tumakbo sa maraming mga bagay, 1191 01:11:55,440 --> 01:11:59,230 mula sa isang kompyuter ng karaniwang sukat sa isang web cam sa computer sa iyong desk. 1192 01:11:59,230 --> 01:12:01,720 Bakit hindi refrigerator iyong? 1193 01:12:01,720 --> 01:12:04,870 Gamit ang tamang setup, maaari mong malaman kung mayroon kang ang mga kailangang katangian 1194 01:12:04,870 --> 01:12:08,390 para sa Chicken Cacciatore, o kung mayroon kang pumunta shopping. 1195 01:12:08,390 --> 01:12:11,760 Tandaan, ito ay ang bukang-liwayway ng Net. 1196 01:12:11,760 --> 01:12:17,310 Halos anumang panahon. 1197 01:12:17,310 --> 01:12:20,440 Isa-isa, ang mga packet ay natanggap, 1198 01:12:20,440 --> 01:12:26,320 nabuksan, at unpacked. 1199 01:12:26,320 --> 01:12:31,200 Ang impormasyon na naglalaman ang mga ito, iyon ay, ang iyong kahilingan para sa impormasyon, 1200 01:12:31,200 --> 01:12:34,830 ipinadala sa application ng web server. 1201 01:12:41,540 --> 01:12:47,140 Ang packet mismo ay Niresaykel, 1202 01:12:47,140 --> 01:12:57,570 handa na gagamitin muli, at puno ng iyong hiniling na impormasyon, 1203 01:12:57,570 --> 01:13:03,340 address, at nagpadala sa paraan pabalik sa iyo. 1204 01:13:03,340 --> 01:13:13,250 Bumalik nakaraang firewall, router, at hanggang sa Internet. 1205 01:13:13,250 --> 01:13:21,020 Bumalik sa pamamagitan ng iyong corporate firewall 1206 01:13:21,020 --> 01:13:24,180 at sa iyong interface, 1207 01:13:24,180 --> 01:13:31,180 handa na ibigay ang iyong mga web browser na may ang impormasyong iyong hiniling. 1208 01:13:31,180 --> 01:13:39,840 Iyon ay, ang film na ito. 1209 01:13:39,840 --> 01:13:43,550 Nasisiyahan sa kanilang mga pagsisikap, at nagtitiwala sa mas mahusay na mundo, 1210 01:13:43,550 --> 01:13:50,250 aming mapagkakatiwalaan data packet sumakay off blissfully sa paglubog ng araw ng isa pang araw, 1211 01:13:50,250 --> 01:13:56,880 alam ganap na sila Hinahain ang kanilang mga Masters na rin. 1212 01:13:56,880 --> 01:14:02,560 Ngayon, ay hindi na isang masaya pagtatapos? 1213 01:14:02,560 --> 01:14:07,040 [Malan] Okay, tama na iyan. Gagamitin namin ang susunod na linggo. 1214 01:14:07,040 --> 01:14:10,040 [CS50.TV]