1 00:00:00,000 --> 00:00:01,390 2 00:00:01,390 --> 00:00:04,890 >> [Musika sa pag-play] 3 00:00:04,890 --> 00:00:10,955 4 00:00:10,955 --> 00:00:12,580 David J MALAN: Lahat ng karapatan, maligayang pagdating pabalik. 5 00:00:12,580 --> 00:00:13,600 Ito ay CS50. 6 00:00:13,600 --> 00:00:15,540 Ito ang katapusan ng linggo pitong. 7 00:00:15,540 --> 00:00:18,180 At ito ay ang katapusan ng na hayop na kumakain ng mga bulok na bagay mang-aso mula sa problema magtakda ng apat 8 00:00:18,180 --> 00:00:19,220 na maaari mong isipin. 9 00:00:19,220 --> 00:00:21,650 Pagkatapos pagbawi lahat ng mga JPEG na ng kawani, 10 00:00:21,650 --> 00:00:24,820 ikaw ay hinamon, kung gusto mo, sa Kuhanan ng larawan ang iyong sarili na may marami 11 00:00:24,820 --> 00:00:25,981 ng mga tao hangga't maaari. 12 00:00:25,981 --> 00:00:28,480 Nakakuha kami ng buong bungkos ng mga pagsusumite sa nakalipas na ilang linggo, 13 00:00:28,480 --> 00:00:32,980 sa katunayan, marami-dami bago mismo tanghali ngayon, ang ilan sa kung saan ay ang mga dito, 14 00:00:32,980 --> 00:00:37,670 nahuli dito in-- mukhang like-- Annenberg Hall sa oras ng opisina, isa dito 15 00:00:37,670 --> 00:00:39,530 sa Lowell House na may Nick. 16 00:00:39,530 --> 00:00:41,750 Narito ang Ramon na nahuli sa telepono. 17 00:00:41,750 --> 00:00:43,870 Ito ay sa isang CS50 tanghalian. 18 00:00:43,870 --> 00:00:46,840 Ito ay Jason Skyping sa isang mas creative kamag-aaral, 19 00:00:46,840 --> 00:00:48,280 na phoned sa kanya sa ganitong paraan. 20 00:00:48,280 --> 00:00:49,690 Hindi namin alam kung ano ito ay. 21 00:00:49,690 --> 00:00:51,940 >> [Tawa] 22 00:00:51,940 --> 00:00:54,570 >> David J MALAN: Ngunit na nagkakahalaga ng isang gigabyte. 23 00:00:54,570 --> 00:00:56,960 Narito ang Chang, na Literal na tumakbo off ang yugto 24 00:00:56,960 --> 00:01:00,480 upang maiwasang makunan ng larawan isa araw, ngunit sa huli ay nahuli. 25 00:01:00,480 --> 00:01:02,050 Narito ang Nick. 26 00:01:02,050 --> 00:01:03,480 Narito ang Nick. 27 00:01:03,480 --> 00:01:04,080 Narito ang Nick. 28 00:01:04,080 --> 00:01:05,090 29 00:01:05,090 --> 00:01:07,670 At dito ay Alison ayon sa mga patlang. 30 00:01:07,670 --> 00:01:11,840 At Zamyla kahit na ang nakita sa isang kumpetisyon ng ballroom. 31 00:01:11,840 --> 00:01:14,100 Kaya tayo pupunta sa pamamagitan ng mga larawang ito, malaman 32 00:01:14,100 --> 00:01:16,690 nagsumite ng karamihan pinakamaaga, at gantimpala 33 00:01:16,690 --> 00:01:20,662 isang kamangha-manghang mga premyo, pati na ipinangako sa spec. 34 00:01:20,662 --> 00:01:23,120 At makikita din sundin namin ang tungkol sa ang puwang na iyon ay kasangkot. 35 00:01:23,120 --> 00:01:26,860 >> Ang isang pares ng mga announcements-- kaya tanghalian ay, muli, ito Biyernes sa 13:15. 36 00:01:26,860 --> 00:01:30,420 Kung nais mong sumali sa amin, RSVP sa URL na iyon dito. 37 00:01:30,420 --> 00:01:33,730 Jason lilitaw muli dito mula sa isa ng mga seksyon ng ilang mga taon 38 00:01:33,730 --> 00:01:35,510 bumalik, na nangyari upang mahulog sa Halloween. 39 00:01:35,510 --> 00:01:38,950 At sa katunayan, bihis siya bilang isang kalabasa sa partikular na taon. 40 00:01:38,950 --> 00:01:42,700 Kung pinapanood mo ang seksyong ito ng kanyang mula 2011 seksyon 41 00:01:42,700 --> 00:01:46,480 walong, kung gusto mong malaman, sa CS50.tv, sa palagay ko 42 00:01:46,480 --> 00:01:49,730 ito ay ang taon kung saan ang kanyang mga naka magpahitit ay gumagana. 43 00:01:49,730 --> 00:01:52,490 >> Kung pagkatapos ay panoorin mo ang katulad seksyon sa 2012, 44 00:01:52,490 --> 00:01:55,620 makikita mo ang Jason magkano impis, dahil ang suit hindi na functioned, 45 00:01:55,620 --> 00:01:58,060 na kung saan ay lamang na sabihin ito Biyernes, kung ikaw ay 46 00:01:58,060 --> 00:02:02,720 i-paghiwa-hiwain ng kalabasa na may Daven at Gabe at iba pa, RSVP sa ulo 47 00:02:02,720 --> 00:02:04,480 sa cs50.harvard.edu address. 48 00:02:04,480 --> 00:02:06,200 Ipinapangako ito upang maging mahusay na masaya. 49 00:02:06,200 --> 00:02:08,660 Daven, kami ay sinabi, ay inukit pumpkins lahat ng kanyang buhay. 50 00:02:08,660 --> 00:02:11,930 Gabriel mula sa Brazil ay hindi kailanman inukit isang kalabasa para sa Halloween. 51 00:02:11,930 --> 00:02:14,700 Kaya doon sa kanila bilang siya natututo. 52 00:02:14,700 --> 00:02:16,830 >> Mga Seminar, meanwhile-- kaya makikita mo matuto sa lalong madaling panahon 53 00:02:16,830 --> 00:02:20,650 tungkol sa kung ano ang aming mga inaasahan ay para sa ang pangwakas na proyekto, na mahalagang 54 00:02:20,650 --> 00:02:23,150 ay pasingawan sa pagdisenyo at pagpapatupad ng mga 55 00:02:23,150 --> 00:02:26,440 karamihan ng anumang proyekto ng interes sa sa iyo, kahit na napapailalim sa pag-apruba 56 00:02:26,440 --> 00:02:28,490 at patnubay mula sa iyong pagtuturo kapwa. 57 00:02:28,490 --> 00:02:32,110 Patungo sa katapusan ng semestre, ipakilala kami ng isang bilang 58 00:02:32,110 --> 00:02:35,610 ng mga seminar, na kung saan ay opsyonal klase pinangunahan ng mga Fellows pagtuturo at Harvard 59 00:02:35,610 --> 00:02:38,570 mga kawani, mga kaibigan ng mga kurso sa buong campus, sa iba't-ibang mga paksa na 60 00:02:38,570 --> 00:02:41,470 ay tanghential sa kalakip syllabus kurso ng 61 00:02:41,470 --> 00:02:45,590 ngunit gayunman naaangkop, masaya, at naiiba para sa mga potensyal na huling proyekto. 62 00:02:45,590 --> 00:02:49,530 >> Halimbawa, una, kung nais Upang magparehistro, pumunta sa URL na iyon doon. 63 00:02:49,530 --> 00:02:53,010 At ito ay ang lineup para sa seminar mag-isa sa taong ito. 64 00:02:53,010 --> 00:02:56,060 Ngunit Napagtanto mayroon kaming dose-dosenang seminar mula sa nakaraang taon, ang lahat ay 65 00:02:56,060 --> 00:02:59,774 ay naka-link sa menu ng Mga Seminar pagpipilian ng website ng kurso na. 66 00:02:59,774 --> 00:03:02,190 Kaya kung ang iyong iniisip tungkol sa lagpas sa iyong kaginhawahan zone 67 00:03:02,190 --> 00:03:05,060 o nakakakuha ng ilang mga bagong kasanayan, halimbawa, mga programa sa iPhone 68 00:03:05,060 --> 00:03:08,100 apps na may Swift, isang bagong wika mula sa Apple o Layunin-C 69 00:03:08,100 --> 00:03:11,230 o Android apps o programming [? cue?] ilaw na mga bombilya, o anumang sa mga paksa 70 00:03:11,230 --> 00:03:15,490 hanggang dito at higit pa, dahil tseke ang pahina ng pagpaparehistro. 71 00:03:15,490 --> 00:03:19,730 >> Kaya nagsimula at Napagpasyahan namin sa Lunes sa pagtingin sa HTTP. 72 00:03:19,730 --> 00:03:22,675 Kaya mabilis refresher-- HTTP, HTTP. 73 00:03:22,675 --> 00:03:24,045 Ngunit ano ang na talagang ibig sabihin? 74 00:03:24,045 --> 00:03:26,805 75 00:03:26,805 --> 00:03:27,930 Ano ba talagang ay na ibig sabihin? 76 00:03:27,930 --> 00:03:30,665 77 00:03:30,665 --> 00:03:31,290 Iyan ba ay kamay? 78 00:03:31,290 --> 00:03:33,074 79 00:03:33,074 --> 00:03:34,740 Alam ko lang ka scratching ang inyong ulo. 80 00:03:34,740 --> 00:03:36,400 Ngunit gusto mong ipanukala kung ano ang HTTP ay? 81 00:03:36,400 --> 00:03:37,792 82 00:03:37,792 --> 00:03:40,576 >> Madla: Paano mga computer makipag-ugnayan sa [hindi marinig]. 83 00:03:40,576 --> 00:03:41,517 84 00:03:41,517 --> 00:03:43,100 David J MALAN: Naiwan ako ng huling bahagi. 85 00:03:43,100 --> 00:03:45,774 Paano mga computer makipag-ugnayan with-- 86 00:03:45,774 --> 00:03:47,325 >> Madla: Internet server. 87 00:03:47,325 --> 00:03:50,450 David J MALAN: Good-- na may internet mga server, at partikular, mga web server. 88 00:03:50,450 --> 00:03:53,533 Dahil pagpapabalik, may isang bungkos ng mga serbisyo sa internet, ang ilan ay 89 00:03:53,533 --> 00:03:57,349 gamitin mo marahil araw-araw sa pagitan ng chat at mensahe, chat, at web page, at e-mail, 90 00:03:57,349 --> 00:03:57,890 at ang mga tulad. 91 00:03:57,890 --> 00:04:00,900 At HTTP lamang ang protocol na mga web browser 92 00:04:00,900 --> 00:04:03,750 magsalita kapag nakikipag-ugnay sa mga web server, at vice versa. 93 00:04:03,750 --> 00:04:05,580 At ang analog sa mundo ng tao ay maaaring maging, 94 00:04:05,580 --> 00:04:08,730 Pahabain ko ang aking kamay upang kalugin ang ilang mga iba pang mga tao at siya 95 00:04:08,730 --> 00:04:11,970 Kinikilala sa pamamagitan ng pagpapalawig ang kanyang kamay pati na rin. 96 00:04:11,970 --> 00:04:13,970 Kaya na ang isang protocol lamang, isang hanay ng mga convention. 97 00:04:13,970 --> 00:04:15,630 >> At kung ano talaga ang mga convention? 98 00:04:15,630 --> 00:04:18,640 Well, kahulihan babagsak ito lamang pagpapadala ng mga mensahe nang pabalik-balik, 99 00:04:18,640 --> 00:04:19,770 bilang namin itinatanghal dito. 100 00:04:19,770 --> 00:04:22,520 At mayroong ilang mga paraan sa kung saan maaari kang magpadala ng mga mensaheng ito. 101 00:04:22,520 --> 00:04:24,360 At marahil ang pinaka karaniwan ay kilala bilang get. 102 00:04:24,360 --> 00:04:26,510 At makikita natin ang contrast upang ito bago ang haba. 103 00:04:26,510 --> 00:04:30,010 >> Ngunit ang isang hiling get mula sa isang browser sa server hitsura tulad ito. 104 00:04:30,010 --> 00:04:32,960 Ito ay isang bungkos ng teksto na ito ay naglalagay sa loob ng isang virtual na sobre. 105 00:04:32,960 --> 00:04:35,854 Sa labas ng sobre na pumunta ng ilang mga piraso ng mga detalye. 106 00:04:35,854 --> 00:04:37,770 Ano ang kailangang pumunta sa sobre, kaya upang magsalita, 107 00:04:37,770 --> 00:04:41,820 upang makakuha ng isang kahilingan tulad ng ito mula sa akin sa isang web server? 108 00:04:41,820 --> 00:04:42,320 Oo. 109 00:04:42,320 --> 00:04:43,270 >> Madla: Ang iyong IP address. 110 00:04:43,270 --> 00:04:45,890 >> David J MALAN: Aking IP address sa Mula field, kaya upang magsalita, 111 00:04:45,890 --> 00:04:49,490 at siyempre, ang IP address ng recipient. 112 00:04:49,490 --> 00:04:52,710 Ngunit sa kaso ng isang web packet, kailangan namin ng kaunti pa sa detalye 113 00:04:52,710 --> 00:04:55,254 Ito ay hindi sapat lamang sa magpadala ng isang sobre sa isang server, 114 00:04:55,254 --> 00:04:57,670 dahil ang server na maaaring nakikinig para sa iba't ibang mga uri ng 115 00:04:57,670 --> 00:04:59,180 ng trapiko sa internet. 116 00:04:59,180 --> 00:05:01,370 Kaya ano pa ang kailangan namin bukod sa IP ng pinadadalhan? 117 00:05:01,370 --> 00:05:02,723 118 00:05:02,723 --> 00:05:03,222 Oo? 119 00:05:03,222 --> 00:05:04,241 >> Madla: ba ito TCP? 120 00:05:04,241 --> 00:05:05,074 David J MALAN: Mahusay. 121 00:05:05,074 --> 00:05:06,470 TCP-- 122 00:05:06,470 --> 00:05:07,340 >> Madla: Address. 123 00:05:07,340 --> 00:05:09,340 >> David J MALAN: Address, o port, pati na ang tawag dito. 124 00:05:09,340 --> 00:05:11,010 Isara ang, ngunit isang numero ng TCP port. 125 00:05:11,010 --> 00:05:12,220 At mayroong isang bungkos ng mga ito. 126 00:05:12,220 --> 00:05:14,310 Ngunit tiyak ang pinaka pamilyar na dapat kalaunan 127 00:05:14,310 --> 00:05:17,590 maging 80, na kung saan ay ang default na isa na ginagamit para sa trapiko sa web. 128 00:05:17,590 --> 00:05:20,040 At isa pang pamilyar isa sa lalong madaling panahon ay magiging 443, 129 00:05:20,040 --> 00:05:24,280 na ginagamit para sa mga secure web trapiko, mga URL na nagsisimula sa https. 130 00:05:24,280 --> 00:05:26,650 >> Kaya ito ay kung ano ang napupunta sa loob ng na sobre. 131 00:05:26,650 --> 00:05:29,780 At kumuha / lamang ay nangangahulugan, ibigay sa akin ang default na web page. 132 00:05:29,780 --> 00:05:32,700 Bigyan mo ako ng root ng matapang magmaneho sa web server na iyon. 133 00:05:32,700 --> 00:05:36,050 At sana, ang web server ay tumugon kasama, OK 134 00:05:36,050 --> 00:05:39,630 at ang bilang 200, na kung saan ay lamang isang convention sinasabi, oo, ang lahat ng 135 00:05:39,630 --> 00:05:40,470 talaga ang OK. 136 00:05:40,470 --> 00:05:41,680 Narito ang pahina. 137 00:05:41,680 --> 00:05:45,510 Ang uri ng mga web page ay pagpunta sa maging teksto, ngunit higit na partikular, HTML, 138 00:05:45,510 --> 00:05:47,010 na kung saan kami ay tungkol sa sumisid pabalik sa. 139 00:05:47,010 --> 00:05:49,877 At ang tuldok na tuldok tuldok lang paraan, narito ang HTML. 140 00:05:49,877 --> 00:05:51,710 At na kung saan kami pick up ang mga kuwento ngayong araw, 141 00:05:51,710 --> 00:05:55,740 aktwal na pagsusulat ng HTML, Hypertext Markup Language, na 142 00:05:55,740 --> 00:05:57,727 ay ang wika na kung saan mga web page ay nakasulat. 143 00:05:57,727 --> 00:05:59,060 Ito ay hindi isang programming language. 144 00:05:59,060 --> 00:06:01,270 Walang mga pag-andar o loop o kundisyon. 145 00:06:01,270 --> 00:06:03,800 Ito ay isang markup language, pati na rin ulit makita ngayon, 146 00:06:03,800 --> 00:06:07,240 na nagbibigay-daan sa iyo upang tukuyin ang kung paano buuin at stylize 147 00:06:07,240 --> 00:06:09,300 aesthetically isang web page. 148 00:06:09,300 --> 00:06:11,470 >> Kaya ito ay ang isa at tanging page namin talaga 149 00:06:11,470 --> 00:06:13,930 tumingin sa, kung sa madaling sabi, sa Lunes. 150 00:06:13,930 --> 00:06:16,250 At makapansin ng ilang kapansin-pansin na katangian. 151 00:06:16,250 --> 00:06:20,170 Marami ng mga bukas na naka-anggulong bracket at malapit naka-anggulong bracket. 152 00:06:20,170 --> 00:06:23,160 Sa pagitan ng mga naka-anggulong bracket mga salita. 153 00:06:23,160 --> 00:06:25,660 At kami ay pagpunta sa simulan pagtawag sa mga salitang iyon tag. 154 00:06:25,660 --> 00:06:28,800 Kaya bukas bracket ulo at closed bracket ulo 155 00:06:28,800 --> 00:06:33,620 ang mga bukas at closed tag, o ang mga tag ng pagsisimula at pagtatapos 156 00:06:33,620 --> 00:06:37,660 ayon sa pagkakabanggit, ng isang elemento ng HTML, dahil kakailanganin tumawag namin ito, na tinatawag na ulo. 157 00:06:37,660 --> 00:06:41,760 At sa parehong nalalapat magulong pag-uusap sa katawan sa HTML at iba pa. 158 00:06:41,760 --> 00:06:43,970 >> At kung ano ang magaling ay HTML-- at sa katunayan, kami ay 159 00:06:43,970 --> 00:06:47,187 gastusin lubha maliit na oras sa ito, dahil makikita mo karamihan lang malaman 160 00:06:47,187 --> 00:06:49,770 kung ano ang Nagtatampok ito ay may kapag aktwal na magkaroon ng isang kongkreto problema 161 00:06:49,770 --> 00:06:52,820 sa solve-- makikita mo na isang browser ay medyo pipi. 162 00:06:52,820 --> 00:06:56,450 Lamang ito ng pagpunta sa do-- hindi hindi katulad isang computer-- kung ano ang iyong sasabihin nito. 163 00:06:56,450 --> 00:06:59,279 At kaya kapag mayroon kang bukas bracket HTML sa itaas napaka 164 00:06:59,279 --> 00:07:01,320 doon, na mahalagang Nangangahulugan lamang, hey, browser, 165 00:07:01,320 --> 00:07:04,090 dito ay isang web page na nakasulat sa HTML. 166 00:07:04,090 --> 00:07:06,130 >> Kapag nakikita ito ng bukas na bracket ulo, na nangangahulugan lamang, 167 00:07:06,130 --> 00:07:10,350 hey, browser, dito ay ang ulo, o ang pinakamataas na bahagi ng aking web page. 168 00:07:10,350 --> 00:07:14,192 Kapag nakikita ito ng isang closed bracket ulo, na nangangahulugan lamang, hey, 169 00:07:14,192 --> 00:07:15,150 na ito para sa ulo. 170 00:07:15,150 --> 00:07:16,420 Standby para sa ibang bagay. 171 00:07:16,420 --> 00:07:18,878 At na ibang bagay ay sa malas pagpunta sa maging sa katawan. 172 00:07:18,878 --> 00:07:22,630 At kapag wala kang isang tag, tulad ng ikaw ay halo, kuwit, mundo, 173 00:07:22,630 --> 00:07:26,610 na lamang ang magiging mga raw na teksto na sa huli ay ipinapakita sa screen. 174 00:07:26,610 --> 00:07:29,220 >> Ngayon, mapapansin mo masyadong ang indentation dito. 175 00:07:29,220 --> 00:07:32,160 Maaari mong marahil magpakilala kung paano namin stylizing ito. 176 00:07:32,160 --> 00:07:34,850 Sa bawat oras na buksan ko ng tag, kaya upang makipag-usap, mag-indent ko. 177 00:07:34,850 --> 00:07:38,540 At sa bawat oras na isinara ko ang ng tag, ko i-un-indent, 178 00:07:38,540 --> 00:07:40,690 katulad sa espiritu sa kulot tirante. 179 00:07:40,690 --> 00:07:43,470 At higit pa na, uri ako ng gumagamit ng aking paghatol. 180 00:07:43,470 --> 00:07:48,380 Abiso na hindi ako nag-abala sa pagpindot Ipasok sa loob ng na tag na pamagat. 181 00:07:48,380 --> 00:07:48,990 Bakit? 182 00:07:48,990 --> 00:07:51,920 Well, nagpasya ko lang ang hitsura nito ng maliit na mas malinis sa akin, ang mga tao, 183 00:07:51,920 --> 00:07:53,181 upang hindi mag-abala lang ginagawa iyon. 184 00:07:53,181 --> 00:07:54,930 Kaya muli, mayroong ilang mga paghatol na tawag lamang 185 00:07:54,930 --> 00:07:57,670 tulad ng doon ay nasa C o anumang wika. 186 00:07:57,670 --> 00:08:04,110 >> Ngunit mapansin Masyadong na ito indentation lends mismo sa isang sakit sa modelo, 187 00:08:04,110 --> 00:08:05,670 hindi sa paglipas ng makapagpalubha ito. 188 00:08:05,670 --> 00:08:07,020 Ngunit isang puno, tama? 189 00:08:07,020 --> 00:08:09,290 Kung sa tingin mo ng isang web pahina, tila nakasulat na 190 00:08:09,290 --> 00:08:12,050 tulad nito, bilang mabuti naka-indent na paraan, 191 00:08:12,050 --> 00:08:17,390 maaari mong halos isipin ang bukas bracket HTML closed bracket tag na ito ay demarcating 192 00:08:17,390 --> 00:08:21,380 ang root ng isang node, isang pamilya puno style na node sa istilo ng mga puno 193 00:08:21,380 --> 00:08:22,900 tumingin kami sa huling Biyernes. 194 00:08:22,900 --> 00:08:27,630 >> At sa katunayan, mayroon kami sa kanan dito kung ano ang makikita namin tumawag sa isang DOM, D-O-M, dokumento 195 00:08:27,630 --> 00:08:31,680 object modelo, isang magarbong paraan ng pagsabi isang puno na kumakatawan na HTML. 196 00:08:31,680 --> 00:08:36,140 At mapansin na HTML ay, makikita namin sinasabi, tulad ng isang pamilya tree, dalawang bata. 197 00:08:36,140 --> 00:08:37,659 Sa kaliwa ay ang ulo. 198 00:08:37,659 --> 00:08:39,179 Sa kanang ay katawan. 199 00:08:39,179 --> 00:08:44,220 >> At tulad ng walang kahulugan pag-iisip ehersisyo, ulo, siyempre, ay kung gaano karaming mga bata 200 00:08:44,220 --> 00:08:46,070 ayon sa istraktura na ito? 201 00:08:46,070 --> 00:08:48,200 Kaya lang, title-- at iyon ang dahilan kung bakit mayroon kaming 202 00:08:48,200 --> 00:08:50,580 ang arrow ng pagpunta mula sa ulo sa pamagat. 203 00:08:50,580 --> 00:08:55,110 Kaya kahit na ang taong iyon sa puno ng pamilya ay may lamang isang supling. 204 00:08:55,110 --> 00:08:58,230 At pagkatapos ay ang pamagat mismo maaari ay nagsabi na magkaroon ng masyadong bata. 205 00:08:58,230 --> 00:09:01,780 >> Isipin na ang HTML ay may kumusta, kuwit, mundo sa ilalim nito. 206 00:09:01,780 --> 00:09:06,090 At lamang ko na iginuhit ito sa loob ng isang hugis-itlog sa halip ng isang parihaba lamang 207 00:09:06,090 --> 00:09:10,559 ihatid magkakahulugang na kahit ito ay isang node sa tree, kaya upang magsalita, 208 00:09:10,559 --> 00:09:12,100 ito ay isang uri ng sa panimula naiiba. 209 00:09:12,100 --> 00:09:12,800 Ito ay hindi isang tag. 210 00:09:12,800 --> 00:09:14,780 O higit pang maayos, hindi isang elemento. 211 00:09:14,780 --> 00:09:16,590 Ito ay lamang ng isang tekstong node, kung habilin sa iyo. 212 00:09:16,590 --> 00:09:18,990 Ngunit ang mga ito ay ganap na di-makatwirang tao balarila. 213 00:09:18,990 --> 00:09:23,180 Ito ay ngayon lang ang aking paraan ng na kumakatawan sa kung ano ang idedetalye ko ang isang pinagsamang 214 00:09:23,180 --> 00:09:24,340 tawagan ang dokumento. 215 00:09:24,340 --> 00:09:27,750 >> At bilang isang bukod, ang mga bagay sa ang sobrang kaliwang tuktok na sulok, 216 00:09:27,750 --> 00:09:32,080 bukas bracket exclamation point doc uri ng HTML, ito kamukha ng tag, 217 00:09:32,080 --> 00:09:35,560 ngunit ito ang ugok sulok kaso kung saan na lamang doon, kopyahin at ilagay 218 00:09:35,560 --> 00:09:38,460 upang ipahiwatig ang mga browser ito ay HTML bersyon 5. 219 00:09:38,460 --> 00:09:41,540 Pinapanatili Ang mundo sa pagbabago ng kung ano ang unang linya ng code sa isang pahina ay dapat. 220 00:09:41,540 --> 00:09:43,820 Ito ay nangangahulugan lamang na bersyon 5. 221 00:09:43,820 --> 00:09:45,950 Kaya ito ay hindi pa gaanong katulad ng iba. 222 00:09:45,950 --> 00:09:48,120 >> Ang lahat ng mga karapatan, kaya may na sinabi, makikita mo na ngayon Pinahahalagahan 223 00:09:48,120 --> 00:09:50,767 ang patas na ito ugok tattoo isang tao Nakakuha. 224 00:09:50,767 --> 00:09:51,990 >> [Tawa] 225 00:09:51,990 --> 00:09:54,210 >> David J MALAN: Lahat ng karapatan, at ngayon sabihin aktwal na dive 226 00:09:54,210 --> 00:09:55,710 sa paggawa ng isang bagay na may ito. 227 00:09:55,710 --> 00:09:58,610 Makikita mo isipin na huling beses Ako nagbukas ang CS50 Appliance 228 00:09:58,610 --> 00:10:01,650 at ginawa ko ng isang bagay bilang simple ng pagbubukas up gedit. 229 00:10:01,650 --> 00:10:05,190 At na-save ko ang file kahit na sa aking desktop-- wala kahit saan special-- 230 00:10:05,190 --> 00:10:05,870 bilang hello.html. 231 00:10:05,870 --> 00:10:07,100 232 00:10:07,100 --> 00:10:10,984 >> Kaya hayaan mo akong gawin iyon again-- hello.html ang Enter. 233 00:10:10,984 --> 00:10:13,900 At ngayon sa file na ito, pupuntahan ko sige at ginagaya kung ano ang namin lamang 234 00:10:13,900 --> 00:10:18,850 saw-- doc uri ng html Pagkatapos ay pupuntahan ko gawin bukas bracket html closed bracket. 235 00:10:18,850 --> 00:10:21,890 At pagkatapos ay ako pagpunta sa preemptively buksan at isara ang tag. 236 00:10:21,890 --> 00:10:22,390 Bakit? 237 00:10:22,390 --> 00:10:23,598 Para lang hindi ko makalimutan mamaya. 238 00:10:23,598 --> 00:10:26,850 Ito ay mahusay na kasanayan lamang, tulad ng pagbubukas at isara ang kulot brace ang lahat nang sabay-sabay. 239 00:10:26,850 --> 00:10:28,900 >> At pagkatapos ay kung ano ang dumating sa tabi? 240 00:10:28,900 --> 00:10:30,582 Maaari mong isipin na ang tattoo. 241 00:10:30,582 --> 00:10:31,450 >> Madla: ulo Ang. 242 00:10:31,450 --> 00:10:32,500 >> David J MALAN: ulo Ang. 243 00:10:32,500 --> 00:10:36,020 At pagkatapos in dito, ako Nagkaroon ng pamagat, sa tingin ko. 244 00:10:36,020 --> 00:10:39,886 At ang pamagat ay nagkataon, kumusta, mundo malapit pamagat. 245 00:10:39,886 --> 00:10:42,760 At pagkatapos ay down na dito, katawan, ng course-- pagkatapos isara namin ang tag katawan. 246 00:10:42,760 --> 00:10:45,660 At pagkatapos lamang medyo redundantly, Ako ang nasa parehong bagay down na dito. 247 00:10:45,660 --> 00:10:47,150 >> Kaya inaangkin ko na ito ay isang web page. 248 00:10:47,150 --> 00:10:49,050 Ito ay isang bagay na maaaring mabuhay ngayon sa web, 249 00:10:49,050 --> 00:10:51,925 kahit na siyempre, ito ay literal na naninirahan sa aking desktop ngayon. 250 00:10:51,925 --> 00:10:55,837 Ngunit sa katunayan, kung i-minimize ko gedit, Makikita ko bang makita sa aking desktop icon nito. 251 00:10:55,837 --> 00:10:58,420 Kahit na ito ay ang appliance, maaari mong gawin ito sa Mac OS 252 00:10:58,420 --> 00:11:01,580 walang TextEdit o Windows sa Notepad kahit. 253 00:11:01,580 --> 00:11:06,115 >> At kung pumunta ako magpatuloy at i-double-click na kahit na, at select-- rin, sabihin 254 00:11:06,115 --> 00:11:07,990 Hindi piliin na dahil Hindi pagbubukas ng Chrome ang. 255 00:11:07,990 --> 00:11:09,281 Sabihin sige at buksan ang Chrome. 256 00:11:09,281 --> 00:11:10,160 257 00:11:10,160 --> 00:11:14,040 At pagkatapos ay gawin Command-O para bukas At mag-navigate sa aking desktop 258 00:11:14,040 --> 00:11:15,320 at buksan ang file na iyon. 259 00:11:15,320 --> 00:11:20,120 Iyon ay kung paano binibigyang-kahulugan ng isang browser HTML, itaas hanggang sa ibaba, kaliwa papuntang kanan. 260 00:11:20,120 --> 00:11:21,314 Uy, browser narito ang HTML. 261 00:11:21,314 --> 00:11:21,980 Narito ang ulo. 262 00:11:21,980 --> 00:11:23,250 Narito ang pamagat. 263 00:11:23,250 --> 00:11:24,090 Narito ang katawan. 264 00:11:24,090 --> 00:11:26,620 At sa katunayan, ito ay kung paano ito ay nag-render na web page. 265 00:11:26,620 --> 00:11:27,800 >> Ngunit mapansin ang URL. 266 00:11:27,800 --> 00:11:32,430 Wala sa mga na maaari mong makuha ang partikular na ito pahina sa iyong laptop ngayon, 267 00:11:32,430 --> 00:11:34,910 kahit na sa loob ng iyong appliance sa pamamagitan ng URL na iyon, 268 00:11:34,910 --> 00:11:40,130 dahil ang file: // nagpapahiwatig ito ay talagang sa aking file system, ang aking hard drive, 269 00:11:40,130 --> 00:11:40,990 hindi sa iyo. 270 00:11:40,990 --> 00:11:42,440 Kaya ito ay hindi lahat na kapaki-pakinabang. 271 00:11:42,440 --> 00:11:44,940 >> Ilipat ngayon papunta sa Hayaan gamit ang isang aktwal na web server. 272 00:11:44,940 --> 00:11:48,309 At ito ay lumiliko ang CS50 Appliance ay higit pa sa isang kapaligiran kung saan 273 00:11:48,309 --> 00:11:51,100 maaari mong isulat ang C code at sumulat ng libro at patakbuhin ito tulad ng na-paggawa. 274 00:11:51,100 --> 00:11:55,500 Ito ay din configure ng kawani na kumakatawan sa isang tipikal na web 275 00:11:55,500 --> 00:11:58,290 server na sa internet, isa na maaari mong bayaran para sa 276 00:11:58,290 --> 00:12:00,210 o isang bagay na sa tinatawag na ulap. 277 00:12:00,210 --> 00:12:02,600 >> At ito ay tumatakbo karaniwang libreng open source 278 00:12:02,600 --> 00:12:06,160 software, halimbawa, ng isang bagay tinatawag na Apache, na marahil 279 00:12:06,160 --> 00:12:08,700 pa rin ang pinaka-popular na web server software sa mundo 280 00:12:08,700 --> 00:12:11,030 na libu-libong mga website ang gumagamit ngayon. 281 00:12:11,030 --> 00:12:13,420 At kahit din itong software tulad ng MySQL, 282 00:12:13,420 --> 00:12:16,240 kung saan ay isang server ng database na makikita sa huli namin sa, 283 00:12:16,240 --> 00:12:18,330 na kung saan ay lamang na sabihin Maaari ba akong magsimula pagpapagamot 284 00:12:18,330 --> 00:12:22,040 aking appliance tulad ng isang ganap na nasimulan server na hindi ako magbabayad para sa ibang lugar. 285 00:12:22,040 --> 00:12:25,980 Ito lamang ang nabubuhay sa aking sariling laptop para sa mga layunin ng pag-unlad at kaginhawaan. 286 00:12:25,980 --> 00:12:27,870 >> Kaya sabihin sige at samantalahin na ito. 287 00:12:27,870 --> 00:12:30,120 Pupunta ako sa magpatuloy at buksan ang isang terminal na window. 288 00:12:30,120 --> 00:12:33,030 At ako pagpunta sa sige at move-- talaga, una ako 289 00:12:33,030 --> 00:12:34,860 pagpunta upang mag-navigate sa aking desktop. 290 00:12:34,860 --> 00:12:36,400 Kung gagawin ko l, mayroong hello.html. 291 00:12:36,400 --> 00:12:37,022 292 00:12:37,022 --> 00:12:38,730 At ako pagpunta sa pumunta Magpatuloy at simulan ang paggamit ng 293 00:12:38,730 --> 00:12:40,800 isang bagong direktoryo hindi namin hindi ginagamit bago ngayon. 294 00:12:40,800 --> 00:12:46,840 >> hello.html-- Pupunta ako sa ilipat sa ../vhosts para sa virtual na hosts-- 295 00:12:46,840 --> 00:12:50,940 higit pa sa na sa future-- at pagkatapos ay sa isang direktoryo na tinatawag na localhost, 296 00:12:50,940 --> 00:12:54,420 kung saan ay ang palayaw na ibinigay sa halos sa anumang computer, kahit na ito ang isang Mac, PC, 297 00:12:54,420 --> 00:12:57,560 o Linux na computer, at pagkatapos ay partikular sa isang direktoryo na namin, 298 00:12:57,560 --> 00:13:01,260 ang mga kawani ay nilikha para sa iyo kapag -download mo ang appliance na tinatawag na 299 00:13:01,260 --> 00:13:01,760 pampubliko. 300 00:13:01,760 --> 00:13:04,551 At bilang nagmumungkahi ang pangalan nito, kahit ano Naglagay ako sa folder na ito, sa teorya, 301 00:13:04,551 --> 00:13:07,790 ay pagpunta sa ngayon pampubliko, ng hindi bababa sa mga tao 302 00:13:07,790 --> 00:13:10,030 na may isang direktang koneksyon sa aking computer. 303 00:13:10,030 --> 00:13:13,160 >> Kaya ngayon hayaan mo akong sige at gawin cd sa na parehong directory 304 00:13:13,160 --> 00:13:15,490 kaya ang maaari kong makita kung ano ang nagaganap at uri ng l. 305 00:13:15,490 --> 00:13:17,630 At sa katunayan, iyon ang tanging bagay sa doon. 306 00:13:17,630 --> 00:13:23,250 Inaangkin ko na ngayon na dahil inilagay ko ito -file hello.html sa loob ng isang direktoryo 307 00:13:23,250 --> 00:13:26,940 tinatawag na pampublikong sa loob ng isang direktoryo tinatawag na localhost sa loob ng isang direktoryo 308 00:13:26,940 --> 00:13:29,810 tinatawag na vhosts, na salamat sa staff CS50 309 00:13:29,810 --> 00:13:34,390 Na-pre-configure upang maging ang root ng iyong web server, 310 00:13:34,390 --> 00:13:36,900 Ko sana ngayon gawin ito. 311 00:13:36,900 --> 00:13:38,390 >> Pupunta ako upang buksan ang isang bagong tab. 312 00:13:38,390 --> 00:13:40,090 At ako pagpunta sa pumunta hindi mag-file: //. 313 00:13:40,090 --> 00:13:44,520 Pupunta ako upang magamit ang aktwal na http / localhost, na 314 00:13:44,520 --> 00:13:47,470 muli, ay ang palayaw para sa aking sariling server. 315 00:13:47,470 --> 00:13:51,085 At pagkatapos ay ako pagpunta upang pumunta sa kung ano ang -file pangalan, upang maging malinaw lang? 316 00:13:51,085 --> 00:13:52,680 317 00:13:52,680 --> 00:13:54,320 Saan marahil pagpunta ay ang kwentong ito? 318 00:13:54,320 --> 00:13:56,066 319 00:13:56,066 --> 00:13:56,565 hello.html. 320 00:13:56,565 --> 00:13:58,350 321 00:13:58,350 --> 00:14:04,270 >> Kaya sa ibang salita, gusto kong ngayon na ito ang aking sariling computer, ang aking sariling appliance, 322 00:14:04,270 --> 00:14:05,660 parang ito ay isang aktwal na server. 323 00:14:05,660 --> 00:14:07,490 Palayaw nito ay localhost. 324 00:14:07,490 --> 00:14:10,210 Ngunit sa tingin ng localhost bilang tulad ng Facebook.com google.com, kahit ano. 325 00:14:10,210 --> 00:14:11,600 Ito ay lamang ang aking lokal na pangalan. 326 00:14:11,600 --> 00:14:14,810 At pagkatapos ay ang panghuling nais ko ay nasa root ng hard drive, kaya upang magsalita, 327 00:14:14,810 --> 00:14:17,729 o sa root ng web server, samakatuwid ang forward slash at pagkatapos ay 328 00:14:17,729 --> 00:14:18,770 ang pangalan ng file hello.html. 329 00:14:18,770 --> 00:14:19,880 330 00:14:19,880 --> 00:14:21,930 >> Hayaan akong mag-zoom out at pindutin ang Enter. 331 00:14:21,930 --> 00:14:24,266 At sa katunayan, mayroong aking web page sa ngayon. 332 00:14:24,266 --> 00:14:25,390 Kaya ito ay bahagyang naiiba. 333 00:14:25,390 --> 00:14:26,880 At tulad ng underwhelming. 334 00:14:26,880 --> 00:14:27,904 Ito ay ang lumang bersyon. 335 00:14:27,904 --> 00:14:29,070 Hayaan akong lumiit ang font pabalik. 336 00:14:29,070 --> 00:14:29,745 Ito ang gulang. 337 00:14:29,745 --> 00:14:30,890 Ito ang bago. 338 00:14:30,890 --> 00:14:35,430 Ngunit ano ang nangyayari sa panimula ngayon ay ang HTTP ay ginagamit. 339 00:14:35,430 --> 00:14:39,344 >> Ay gawin ang isang maliit na mas malinaw o hayaan, kung habilin sa iyo, ang kaunti pa kumplikadong. 340 00:14:39,344 --> 00:14:41,760 Hayaan akong pumunta sa kanang ibaba sulok ng aking appliance. 341 00:14:41,760 --> 00:14:44,000 At mapansin na ang lahat ng ito oras, mayroong naging isang numero. 342 00:14:44,000 --> 00:14:47,330 Iyon ay ang natatanging address ng iyong CS50 Appliance. 343 00:14:47,330 --> 00:14:50,800 Ito ay isang pribadong address, bilang ipinahiwatig sa pamamagitan ng 172.16, 344 00:14:50,800 --> 00:14:53,860 na nangangahulugan lamang mo lamang pisikal na Maaaring i-access ng web server na ito. 345 00:14:53,860 --> 00:14:56,340 Lahat ay firewalled at mabuti protektado mula sa ibang bahagi 346 00:14:56,340 --> 00:14:58,130 ng mundo dahil sa pagtugon. 347 00:14:58,130 --> 00:15:01,920 >> At mapansin na ngayon kung pumunta ako sa address na ito, hindi sa aking appliance, 348 00:15:01,920 --> 00:15:04,340 ngunit sa Mac OS-- ako pupunta upang bumalik sa paglipas dito. 349 00:15:04,340 --> 00:15:05,930 Ito ang aking Mac ngayon. 350 00:15:05,930 --> 00:15:08,460 At ngayon pupuntahan ko upang buksan up ang bersyon na ito ng Chrome dito. 351 00:15:08,460 --> 00:15:17,370 At ako pagpunta sa pumunta sa http: //172.16.25 / At nakakalimutan ko ang rest-- 133. 352 00:15:17,370 --> 00:15:25,210 >> Kaya ako pupunta upang bisitahin ang mula sa aking Mac na IP address /hello.html ang Enter. 353 00:15:25,210 --> 00:15:29,850 At ngayon nakikita ko mula sa aking Mac na ang aking CS50 Appliance, kung sino ang 354 00:15:29,850 --> 00:15:32,600 IP address ay na numero, ay sa katunayan gumagana 355 00:15:32,600 --> 00:15:34,320 tulad ng isang web server sa internet. 356 00:15:34,320 --> 00:15:36,944 Hindi nito ay may magandang madaling tandaan pangalan tulad ng Facebook.com, 357 00:15:36,944 --> 00:15:40,370 ngunit ito ay gumagamit ng HTTP sa malas, kahit Chrome 358 00:15:40,370 --> 00:15:43,560 ay uri ng Pinasisimple ng mundo para sa atin ngunit sa amin hindi nagpapakita ng HTTP. 359 00:15:43,560 --> 00:15:46,210 Ngunit ito ay eksaktong na sa katunayan. 360 00:15:46,210 --> 00:15:48,470 Ay sine-save lamang ang Chrome ng ilang keystroke mga araw na ito. 361 00:15:48,470 --> 00:15:50,530 At iyon ang nakikita namin ngayon. 362 00:15:50,530 --> 00:15:51,890 >> Kaya na ang lahat ng fine at mabuti. 363 00:15:51,890 --> 00:15:53,740 Ngunit ito ay isang medyo underwhelming pahina. 364 00:15:53,740 --> 00:15:56,230 Hayaan akong pumunta sa at gawin ang isang bagay isang maliit na iba't ibang ngayon. 365 00:15:56,230 --> 00:15:57,910 Kaya hayaan mo akong bumalik sa gedit. 366 00:15:57,910 --> 00:16:00,580 At sa halip na si, mundo, maglagay ng isang imahe ipaalam. 367 00:16:00,580 --> 00:16:05,880 At na-claim ko mula sa before-- ipaalam sa akin pumunta sa publiko ang aking direktoryo ng localhost. 368 00:16:05,880 --> 00:16:10,580 At ipaalam sa akin sige at kopyahin ang isang buong bungkos ng mga file mula ngayon 369 00:16:10,580 --> 00:16:15,633 mula sa aking mga folder Dropbox sa dito. 370 00:16:15,633 --> 00:16:19,470 371 00:16:19,470 --> 00:16:21,680 >> Ngayon kung nagta-type ako l, hanapin sa lahat ng mga file na ito 372 00:16:21,680 --> 00:16:24,940 na ipinamahagi ko ang ng website kurso sa maaga sa ngayon, 373 00:16:24,940 --> 00:16:26,830 isa rito ay hello.html pa rin. 374 00:16:26,830 --> 00:16:27,830 Kaya mayroong isa na iyon. 375 00:16:27,830 --> 00:16:30,730 At maalala muli ang isang walang isip mula sa huling time-- cat.jpg. 376 00:16:30,730 --> 00:16:34,550 Kaya hayaan mo akong subukan na i-embed cat.jpg sa loob ng aking web page. 377 00:16:34,550 --> 00:16:37,690 >> Pupunta ako sa sige at gawin cat.jpg, i-save. 378 00:16:37,690 --> 00:16:38,950 Hayaan akong bumalik sa Chrome. 379 00:16:38,950 --> 00:16:41,140 At hayaan mo akong mag-zoom in sa Font at ngayon i-reload. 380 00:16:41,140 --> 00:16:43,090 381 00:16:43,090 --> 00:16:45,030 Oops, kung saan ko bang ilagay ito? 382 00:16:45,030 --> 00:16:48,210 383 00:16:48,210 --> 00:16:51,520 Standby-- Mayroon akong pa rin ang lumang bersyon mula sa aking desktop nakabukas. 384 00:16:51,520 --> 00:16:56,020 Kaya hayaan mo akong pumunta sa aking vhost, aking localhost, aking pampublikong, at hello.html. 385 00:16:56,020 --> 00:16:57,320 386 00:16:57,320 --> 00:17:00,670 Kaya ngayon hayaan mo akong sige at Sabihin cat.jpg sa loob ng katawan 387 00:17:00,670 --> 00:17:02,830 kung saan ako gusto mo itong maging ipinapakita at i-reload. 388 00:17:02,830 --> 00:17:04,560 Siyempre, hindi ito tama. 389 00:17:04,560 --> 00:17:08,050 >> Kaya kailangan kong sabihin sa browser ng kaunti higit sadyang kung ano ang gusto ko ito gawin. 390 00:17:08,050 --> 00:17:10,210 I-type ang pangalan ay Malinaw na hindi sapat. 391 00:17:10,210 --> 00:17:15,134 Kaya isipin na nagkaroon ng isa pang tag, imahe, img para sa maikling. 392 00:17:15,134 --> 00:17:17,550 Iyon ay dahil lamang tao hindi gusto ang uri ng buong salita. 393 00:17:17,550 --> 00:17:19,050 At pagkatapos ay maaari naming gawin pinagmulan = "cat.jpg". 394 00:17:19,050 --> 00:17:21,470 395 00:17:21,470 --> 00:17:23,550 >> At ngayon ako pagpunta sa gawin iba't ibang isang bagay dito. 396 00:17:23,550 --> 00:17:25,390 Kahit na ang lahat ng ang aming mga tag kaya ngayon ay may 397 00:17:25,390 --> 00:17:28,086 nagkaroon ito paniwala ng isang simulan tag at isang end tag, 398 00:17:28,086 --> 00:17:30,210 na hindi talaga gumawa kahulugan para sa isang larawan, i-right? 399 00:17:30,210 --> 00:17:32,430 Isang imahe ay alinman sa may o hindi doon. 400 00:17:32,430 --> 00:17:36,650 At upang ang mga tao na dumating up sa isang mas simpleng convention. 401 00:17:36,650 --> 00:17:40,310 Kapag mayroon kang isang tag na maaari kapwa magsimula at magtapos sa parehong time-- 402 00:17:40,310 --> 00:17:43,790 maaari itong walang laman, kaya upang speak-- lamang ilagay ang forward slash sa loob ng na tag 403 00:17:43,790 --> 00:17:44,710 sa dulo. 404 00:17:44,710 --> 00:17:45,776 405 00:17:45,776 --> 00:17:47,150 Ngayon hayaan mo akong bumalik sa aking browser. 406 00:17:47,150 --> 00:17:50,377 Pindutin ang I-reload ang mapahamak, isang bagay na mali. 407 00:17:50,377 --> 00:17:52,460 Marahil ay nakita mo na ito paminsan-minsan sa web, 408 00:17:52,460 --> 00:17:53,600 kahit na hindi ito naging iyong kasalanan. 409 00:17:53,600 --> 00:17:54,766 Ito ay kasalanan ng server ng web. 410 00:17:54,766 --> 00:17:56,240 Ano odes mukhang ito upang ipahiwatig? 411 00:17:56,240 --> 00:17:57,450 412 00:17:57,450 --> 00:17:58,009 Ito ay nasira. 413 00:17:58,009 --> 00:17:59,300 Iyon ay kung saan ang imahe ay pagmamay-ari. 414 00:17:59,300 --> 00:17:59,700 Oo? 415 00:17:59,700 --> 00:18:01,560 >> Madla: Ngunit hindi May access ang mga imahe. 416 00:18:01,560 --> 00:18:03,070 >> David J MALAN: Ito ay hindi May access ang mga imahe. 417 00:18:03,070 --> 00:18:05,230 Iyon, o kahit na mas masahol pa, marahil hindi ito kahit na umiiral. 418 00:18:05,230 --> 00:18:06,729 Makita kung hindi namin maaaring i-diagnose natin iyon. 419 00:18:06,729 --> 00:18:09,390 Isipin mula sa huling panahon na kung sa Chrome, sa appliance, 420 00:18:09,390 --> 00:18:11,870 o kahit na sa iyong Mac o PC, pumunta ka sa menu ng Nag-develop 421 00:18:11,870 --> 00:18:14,650 at pumunta sa Mga Tool ng Developer pagpipiliang ito, na malamang na ikaw ay 422 00:18:14,650 --> 00:18:16,850 hindi gaano karami o kailanman ginamit. 423 00:18:16,850 --> 00:18:20,780 At kung pumunta ako sa network at i-reload ang pahina, 424 00:18:20,780 --> 00:18:24,110 ang aktwal na tingnan ang HTTP ipaalam mga hiling na ginagawa. 425 00:18:24,110 --> 00:18:28,400 >> Mukhang hello.html ay sa katunayan OK, samakatuwid ay ibinigay ang 200. 426 00:18:28,400 --> 00:18:30,630 Ngunit cat.jpg ay isang 403. 427 00:18:30,630 --> 00:18:31,650 Kaya ito ay hindi isang 404. 428 00:18:31,650 --> 00:18:33,490 Marahil ay umiiral ang file. 429 00:18:33,490 --> 00:18:35,250 403 Ibig sabihin ipinagbabawal. 430 00:18:35,250 --> 00:18:37,790 Kaya ito ay isang maliit na nakalilito. 431 00:18:37,790 --> 00:18:42,340 Pupunta ako sa bumalik sa aking terminal na window. 432 00:18:42,340 --> 00:18:43,700 Hayaan akong mag-zoom in dito. 433 00:18:43,700 --> 00:18:44,750 At hayaan mo akong gawin ang isang l. 434 00:18:44,750 --> 00:18:46,430 Mayroong mga parehong file. 435 00:18:46,430 --> 00:18:49,410 >> Ngayon ipaalam sa akin gawin ang isang l-l, kung saan ikaw ay malamang na 436 00:18:49,410 --> 00:18:53,350 ginamit bago ang upang tingnan ang file laki siguro o timestamp. 437 00:18:53,350 --> 00:18:55,590 At nakita namin ang maramihang mga napakatinding impormasyon. 438 00:18:55,590 --> 00:18:57,040 Ngunit mapansin ang ilang mga detalye. 439 00:18:57,040 --> 00:19:01,660 Narito ang hello.html sa Ang hilera dito at narito ang cat.jpg. 440 00:19:01,660 --> 00:19:02,934 441 00:19:02,934 --> 00:19:05,850 At ito ay lamang ng appliance pagiging friendly na sa pamamagitan ng pag-highlight ng JPEG ng user 442 00:19:05,850 --> 00:19:07,380 sa mga lilang tulad nito. 443 00:19:07,380 --> 00:19:11,470 Ngunit ano pa ang ibang tabi ang laki ng file at ang pangalan ng file? 444 00:19:11,470 --> 00:19:13,438 445 00:19:13,438 --> 00:19:14,754 >> Madla: [hindi marinig]. 446 00:19:14,754 --> 00:19:16,920 David J MALAN: Oo, may dalawa pang R sa paglipas dito. 447 00:19:16,920 --> 00:19:20,170 Pansinin kung ano ang pagpunta sa hello.html. 448 00:19:20,170 --> 00:19:24,050 Kaya ito ay lumiliko out na ang pangalan ng pampublikong direktoryong ito ay mahalaga. 449 00:19:24,050 --> 00:19:26,400 Anumang bagay sa direktoryong ito ay sinadya upang maging pampublikong. 450 00:19:26,400 --> 00:19:28,790 Pero hindi sapat upang i-drop lamang ang file sa doon. 451 00:19:28,790 --> 00:19:31,480 Kailangan mo ring baguhin ang paraan ng mga file, 452 00:19:31,480 --> 00:19:35,180 baguhin ang mga pahintulot ng ang file upang maagap na hindi 453 00:19:35,180 --> 00:19:37,650 maging default ang setting na ito, na kung saan ay na ako lamang ang makakabasa 454 00:19:37,650 --> 00:19:39,220 at isulat ito, ako pagiging may-ari. 455 00:19:39,220 --> 00:19:43,540 Gusto ko ng buong mundo ang lahat sa makakabasa aking file, kaya na magsalita. 456 00:19:43,540 --> 00:19:44,950 Magbasa nangangahulugan lamang tingnan ito. 457 00:19:44,950 --> 00:19:49,780 >> At sa katunayan, bilang makikita mo sa problema -set pitong, na kung ano ang ibig sabihin ng mga R ni ang. 458 00:19:49,780 --> 00:19:53,160 Hayaan masama ni Ang dalawang R lahat tao sa mundo basahin din ito, 459 00:19:53,160 --> 00:19:55,300 lalo na ngayon na ito ay nasa direktoryong ito. 460 00:19:55,300 --> 00:19:59,620 Kaya ang pinakasimpleng paraan upang ayusin ito ay upang pumunta sa aking prompt at gawin chmod para sa pagbabago 461 00:19:59,620 --> 00:20:05,580 mode at pagkatapos ay gawin ang isang + r, sama-sama, lahat, lahat, pati r para nabasa na, 462 00:20:05,580 --> 00:20:07,944 at pagkatapos ay cat.jpg ang Enter. 463 00:20:07,944 --> 00:20:10,360 Wala mukhang mangyayari, na Karaniwan ay nangangahulugan ng isang magandang bagay. 464 00:20:10,360 --> 00:20:13,850 Kaya l-l again-- ngayon Tingnan natin ang cat.jpg ipaalam. 465 00:20:13,850 --> 00:20:15,750 At ang pahintulot na ito mukhang ay nagbago. 466 00:20:15,750 --> 00:20:18,670 Bilang isang bukod, kung gumawa ka ng pagkakamali at mo, halimbawa, 467 00:20:18,670 --> 00:20:23,210 ginawa lamang your-- Hindi ko know-- sanaysay -access ng publiko sa pamamagitan ng aksidente, 468 00:20:23,210 --> 00:20:25,480 maaari mong gawin ang tapat, chmod isang-r. 469 00:20:25,480 --> 00:20:25,909 470 00:20:25,909 --> 00:20:28,200 Kahit na lantaran, hindi ito dapat nasa pampublikong direktoryo 471 00:20:28,200 --> 00:20:29,760 gayon pa man kung iyon ang pag-aalala. 472 00:20:29,760 --> 00:20:32,475 >> Kaya ngayon sabihin bumalik sa ang aking browser at i-reload. 473 00:20:32,475 --> 00:20:32,904 474 00:20:32,904 --> 00:20:34,820 At ako pagpunta sa i-click ang ang maliit na Ghostbusters 475 00:20:34,820 --> 00:20:38,030 simbolo upang i-clear ang bahaging iyon ng screen upang maaari naming makita ang mga bagong kahilingan. 476 00:20:38,030 --> 00:20:40,630 At sa katunayan, narito ang Grump Cat mula sa bago. 477 00:20:40,630 --> 00:20:43,010 Ngunit higit sa lahat, technically, mayroong 478 00:20:43,010 --> 00:20:45,565 ang numero 200, na ibig sabihin namin nakuha ko ang OK. 479 00:20:45,565 --> 00:20:47,190 Ang lahat ng mga karapatan, sa gayon na ang lahat ng fine at mabuti. 480 00:20:47,190 --> 00:20:48,940 Ngunit hindi namin ginagawa ang pinakamahusay na mga website, 481 00:20:48,940 --> 00:20:51,967 at hindi rin kami makapupunta upang subukan masyadong mahirap gawin ang fanciest ng mga website ngayon. 482 00:20:51,967 --> 00:20:54,550 Ngunit sabihin ng hindi bababa sa gawin ang isang bagay sobrang pamilyar bago dumadagundong 483 00:20:54,550 --> 00:20:56,030 -off ang ilang iba pang mga tag. 484 00:20:56,030 --> 00:20:58,470 Kaya ipagpalagay na hindi ko nais lamang ng pusa dito. 485 00:20:58,470 --> 00:21:02,530 Ipagpalagay na talaga ko gusto ito pusa mag-link sa isang bagay. 486 00:21:02,530 --> 00:21:07,210 >> Maaari ko, halimbawa gawin ang isang bagay na katulad nito. 487 00:21:07,210 --> 00:21:08,580 488 00:21:08,580 --> 00:21:12,890 isang anchor para sa href para sa hyper reference equals-- 489 00:21:12,890 --> 00:21:17,440 at hayaang gawin ni lamang ng isang bagay tulad ng www.google.com malapit 490 00:21:17,440 --> 00:21:19,540 Ilagay sa mga sipi malapit bracket. 491 00:21:19,540 --> 00:21:22,000 At ngayon maghanap ng mga pusa. 492 00:21:22,000 --> 00:21:23,520 Isara ang anchor tag. 493 00:21:23,520 --> 00:21:26,760 Kaya ito ay may lamang ng isang pag-uuri sa panimula ng bagong detalye. 494 00:21:26,760 --> 00:21:28,190 Ang tag na siyempre, ay naiiba. 495 00:21:28,190 --> 00:21:31,770 Ito ang pangalan ng isang anchor para sa href o hyper sanggunian. 496 00:21:31,770 --> 00:21:35,269 >> Ngunit higit sa lahat, mayroong ito syntactical tampok dito. 497 00:21:35,269 --> 00:21:37,810 Ito ay kung ano ang makikita namin simulan ang pagtawag Hindi isang tag, ngunit isang katangian. 498 00:21:37,810 --> 00:21:40,830 At isang attribute ay isang bagay na Binabago ang pag-uugali ng isang tag. 499 00:21:40,830 --> 00:21:45,400 At ito katangian, href, paraan baguhin ang pag-uugali ng anchor 500 00:21:45,400 --> 00:21:48,430 upang kapag-click ito, ito pupunta sa URL na ito dito. 501 00:21:48,430 --> 00:21:50,330 At syempre, na URL ay Google. 502 00:21:50,330 --> 00:21:53,951 >> Samantala, ano ang na ito -text dito magiging? 503 00:21:53,951 --> 00:21:55,950 Well, na magiging kung ano ang aktwal na tao 504 00:21:55,950 --> 00:21:58,470 nakikita bilang ang nakasalungguhit link, kasing simple ng iyon. 505 00:21:58,470 --> 00:21:59,220 Kaya sabihin subukan ito. 506 00:21:59,220 --> 00:21:59,980 Hayaan akong i-save ito. 507 00:21:59,980 --> 00:22:01,650 Ako pa rin sa hello.html. 508 00:22:01,650 --> 00:22:05,360 Ngunit sa mga bersyong online, makikita mo ang ang aktwal na pangalan ng file kami pre-naghanda. 509 00:22:05,360 --> 00:22:06,805 Hayaan akong sige at i-reload. 510 00:22:06,805 --> 00:22:08,680 At ngayon ito ay isang napaka pa rin underwhelming pahina. 511 00:22:08,680 --> 00:22:10,910 Ngunit kung mag-hover sa ibabaw ko there-- at ito ay isang maliit na maliit, 512 00:22:10,910 --> 00:22:13,576 but-- maaari mong makita sa ibaba kaliwang sulok ng iyong screen, 513 00:22:13,576 --> 00:22:15,242 sa katunayan ito ang nangyayari sa google.com. 514 00:22:15,242 --> 00:22:19,280 At kung iki-click ko na, ay ito sumibad sa akin na paraan upang ang aktwal Google. 515 00:22:19,280 --> 00:22:22,610 >> Ngunit mapansin dito isang pagkakataon para sa pagsasamantala, tulad ng isang-tabi. 516 00:22:22,610 --> 00:22:25,150 At kami ay bumalik sa iba pang mga mga isyu ng seguridad bago ang haba. 517 00:22:25,150 --> 00:22:29,290 Dahil mayroong ito paghihiwalay sa dalawang bahagi sa pagitan ng kung saan ka pumunta at kung ano ang sinasabi sa iyo, 518 00:22:29,290 --> 00:22:34,722 maaari mong gawin ang isang bagay tulad ng this-- http://www.google.com. 519 00:22:34,722 --> 00:22:37,134 OK, at ngayon kung i-reload ko pagkatapos i-save ang pahinang iyon, 520 00:22:37,134 --> 00:22:38,800 mukhang pupuntahan ko pumunta sa Google. 521 00:22:38,800 --> 00:22:40,966 Ngunit walang dahilan ko kailangang pumunta sa Google, i-right? 522 00:22:40,966 --> 00:22:47,460 Maaari ko talagang pumunta sa isang bagay tulad ng badguy.com, i-reload ang page sa paglipas dito. 523 00:22:47,460 --> 00:22:49,750 At paunawa, tinitingnan nito pa rin tulad ng Google. 524 00:22:49,750 --> 00:22:52,020 At lamang kung ako ay matalim sapat na upang mag-hover dito 525 00:22:52,020 --> 00:22:54,770 ako nakakakita ng kahit ito ay nangyayari sa pumunta sa ibang lokasyon. 526 00:22:54,770 --> 00:22:57,400 >> Kaya kung sakaling mo na nakuha ng email, lalo na 527 00:22:57,400 --> 00:22:59,610 ng isa mula sa Paypal, o para baga mula sa Paypal 528 00:22:59,610 --> 00:23:01,830 humihiling sa iyo na mag-log in sa iyong account, ito 529 00:23:01,830 --> 00:23:06,380 ang dahilan kung bakit dapat mong hindi kailanman kailanman i-click ang link sa mga email, 530 00:23:06,380 --> 00:23:07,930 nang tapat, ang anumang mga link sa mga email. 531 00:23:07,930 --> 00:23:10,380 Kung alam mo na mayroon kang aktwal na Kumita ng pera sa Paypal o Bank 532 00:23:10,380 --> 00:23:14,250 ng Amerika o Fidelity o anumang website, manu-manong i-type ito. 533 00:23:14,250 --> 00:23:17,530 Dahil tingnan kung paano kadali na linlangin ang isang tao sa kung ano ang nagtatanghal 534 00:23:17,530 --> 00:23:18,526 kamukha ng isang link. 535 00:23:18,526 --> 00:23:20,400 Ngunit ito talaga ng dati pumunta talagang kahit saan. 536 00:23:20,400 --> 00:23:23,301 >> At mayroong malayo na mas malaki banta na ito. 537 00:23:23,301 --> 00:23:25,300 Sa katunayan, ito ay isang bit ng isang pasapyaw ngayon, ngunit isa 538 00:23:25,300 --> 00:23:28,430 sa mga pinakamahusay na mga kailanman ko nakita na dahil naisara, 539 00:23:28,430 --> 00:23:34,060 ay isang tao na humantong ang mga tao to-- kaya ito ay maaaring sabihing, 540 00:23:34,060 --> 00:23:37,660 mag-click dito upang mag-log in sa iyong account, isang bank account. 541 00:23:37,660 --> 00:23:40,985 At ito ay Bank ng West. 542 00:23:40,985 --> 00:23:43,030 543 00:23:43,030 --> 00:23:44,250 >> Kaya bumili ito ng isang tao. 544 00:23:44,250 --> 00:23:47,090 At ito ay isang maliit na mas madali upang makita ang ito sa isang mono pagitan na font na naka-zoom 545 00:23:47,090 --> 00:23:49,190 in sa isang 30-foot projector. 546 00:23:49,190 --> 00:23:51,720 Ngunit kapag maliit na font sa isang e-mail na iyong natatanggap, 547 00:23:51,720 --> 00:23:54,690 ito mukhang bankofthewest.com, Hindi bankofthevvest.com, 548 00:23:54,690 --> 00:23:58,230 kung saan ang isang tao ay may bayad ng $ 10 sa bumili. 549 00:23:58,230 --> 00:24:00,840 At pagkatapos na ito na humantong sa kanila sa katumbas ng ilang hindi magandang website. 550 00:24:00,840 --> 00:24:05,540 >> At makikita mo ang too-- aktwal na maaari naming gawin this-- kung pumunta ako sa aktwal na website, 551 00:24:05,540 --> 00:24:10,335 bankofthewest.com, muli, pagpapabalik mula sa huling beses 552 00:24:10,335 --> 00:24:13,210 na kung ito ang kanilang mga web page at gusto mong malaman kung paano ito gumagana, 553 00:24:13,210 --> 00:24:15,610 maaari mong tiyak na pumunta sa Tool ng developer ng Chrome. 554 00:24:15,610 --> 00:24:18,890 At maaari mong makita ang lahat ng mga HTML na-format ng mabuti doon. 555 00:24:18,890 --> 00:24:20,890 >> Ngunit higit pa sa punto, cam-- mo ng isara ipaalam 556 00:24:20,890 --> 00:24:24,760 this-- maaari kang pumunta sa View Nag-develop Tingnan ang Pinagmulan. 557 00:24:24,760 --> 00:24:25,770 558 00:24:25,770 --> 00:24:28,350 Bakit hindi kopyahin ko lang lahat ng na At pagkatapos ay ako 559 00:24:28,350 --> 00:24:31,630 maaaring pumunta sa aking maliit na gedit window dito at gumawa ng aking sariling web page. 560 00:24:31,630 --> 00:24:33,210 I-save ito sa hello.html. 561 00:24:33,210 --> 00:24:36,770 At marahil ito ay pagpunta sa masira, dahil ito ay hindi na ito madaling karaniwang. 562 00:24:36,770 --> 00:24:41,590 Ngunit ngayon kung i-reload ko ang aking sariling pahina sa ang aking sariling CS50 Appliance at pindutin ang reload, 563 00:24:41,590 --> 00:24:42,990 OK, sinira ang ilang mga bagay-bagay. 564 00:24:42,990 --> 00:24:45,750 Ngunit ako malapit sa katangian sa pagkakaroon ng ang aking sariling website sa pagbabangko, tama? 565 00:24:45,750 --> 00:24:46,570 Ang lahat ng ito HTML-- 566 00:24:46,570 --> 00:24:47,370 >> [Tawa] 567 00:24:47,370 --> 00:24:49,210 >> David J MALAN: --I Hindi actually-- at mo 568 00:24:49,210 --> 00:24:52,210 alam mayroong isang tao out doon na Gusto i-click ang aktwal na mga link na ito masyadong. 569 00:24:52,210 --> 00:24:54,864 Kaya malinaw, sinira ang ilang mga bagay-bagay. 570 00:24:54,864 --> 00:24:56,780 Ngunit na pupuntahan humantong amin sa isang talakayan, 571 00:24:56,780 --> 00:25:00,810 hindi kinakailangan sa ngayon, tulad ng sa kung ano ang CSS, cascading style sheet, hindi, 572 00:25:00,810 --> 00:25:03,410 at kung paano mo talaga i-download ang iba pang mga file na HTML 573 00:25:03,410 --> 00:25:06,140 at JPEG file GIF mga file na Maaaring paggamit ng website. 574 00:25:06,140 --> 00:25:07,960 Ngunit lahat ng iyon ay accomplishable. 575 00:25:07,960 --> 00:25:11,110 Ngunit ito talagang kahulihan babagsak ito upang mga napakasimpleng heuristic. 576 00:25:11,110 --> 00:25:14,450 >> Kaya magparaan ng basa lamang sa pamamagitan ng ngayon hayaan ilang mga iba pang halimbawa ng HTML 577 00:25:14,450 --> 00:25:16,680 lamang upang mabigyan ka ng ideya ng kung ano pa ang maaari mong gawin. 578 00:25:16,680 --> 00:25:18,670 Halimbawa, ito ay list.html. 579 00:25:18,670 --> 00:25:23,240 Ipagpalagay na Nais kong gumawa ng isang web page may isang listahan ng mga bahay sa patyo sa loob. 580 00:25:23,240 --> 00:25:28,960 Maaaring gamitin ko ang ul tag para sa unordered listahan at pagkatapos ay ang bata item sa listahan 581 00:25:28,960 --> 00:25:33,760 at pagkatapos ay umulit over-- o listahan, rather-- ang bahay na pinag-uusapan. 582 00:25:33,760 --> 00:25:36,080 >> At kung buksan ko up, na gawin ito ipaalam. 583 00:25:36,080 --> 00:25:40,670 Tara na hindi hello.html, ngunit upang list.html. 584 00:25:40,670 --> 00:25:42,160 Diyablo. 585 00:25:42,160 --> 00:25:43,000 Paano ko ito aayusin? 586 00:25:43,000 --> 00:25:45,679 587 00:25:45,679 --> 00:25:47,220 Ito ang parehong isyu tulad ng dati, tama? 588 00:25:47,220 --> 00:25:52,510 Kaya ipaalam sa akin gawin chmod-- oops-- chmod isang + r ng list.html. 589 00:25:52,510 --> 00:25:54,610 590 00:25:54,610 --> 00:25:59,610 At ngayon kung pumunta ako pabalik sa aking browser at i-click ang I-reload, mayroong ito. 591 00:25:59,610 --> 00:26:02,360 Kaya kung sakaling mo na nais na gumawa ng mga isang Naka-bullet na listahan, maaari mong gawin iyon. 592 00:26:02,360 --> 00:26:06,210 Kung nais mong maging sobrang fancy at gumawa ng mga isang order na listahan, hindi isang unordered listahan, 593 00:26:06,210 --> 00:26:10,170 baguhin ang mga mag-ol, i-reload ang pahina, at ngayon ang browser na bilang ito para sa iyo. 594 00:26:10,170 --> 00:26:11,241 >> Ano pa ang maaari naming gawin? 595 00:26:11,241 --> 00:26:13,990 Well, isang pares ng mga others-- kung na kailangan mahaba ang mga talata ng text-- 596 00:26:13,990 --> 00:26:15,698 halimbawa, ang ilang mga Latin teksto tulad ng this-- 597 00:26:15,698 --> 00:26:20,730 at gusto mo sa hiwalay na mga talata, bukas p malapit p para sa tag na talata. 598 00:26:20,730 --> 00:26:22,010 At gawin itong muli at muli. 599 00:26:22,010 --> 00:26:26,600 At kung buksan ko ngayon up ang file na ito, paragraphs.html, na rin, ito 600 00:26:26,600 --> 00:26:27,570 ay nakakakuha ng nakakainis. 601 00:26:27,570 --> 00:26:34,320 Kaya ngayon hayaan pumunta lamang ni pabalik sa aking prompt, chmod isang + r r star .html-- 602 00:26:34,320 --> 00:26:36,099 gandang maliit na ligaw card upang magsalita. 603 00:26:36,099 --> 00:26:37,890 Dapat itong ayusin ang lahat ng ang mga problemang ito para sa akin. 604 00:26:37,890 --> 00:26:38,990 Ni-reload Hayaan. 605 00:26:38,990 --> 00:26:40,500 Mayroong tatlong mga talata. 606 00:26:40,500 --> 00:26:42,930 >> At ngayon sabihin sige at buksan ang isang iba pa. 607 00:26:42,930 --> 00:26:44,310 Paano tungkol sa talahanayan? 608 00:26:44,310 --> 00:26:46,440 Mapapansin mo na tingin talahanayan mas kumplikado nang kaunti. 609 00:26:46,440 --> 00:26:49,110 Ngunit ito ang parehong idea-- buksan ang tag, buksan ang tag, 610 00:26:49,110 --> 00:26:51,360 bukas, bukas, bukas, isara ang tag na ito, buksan ang tag. 611 00:26:51,360 --> 00:26:54,410 At ang mga mangyayari sa panindigan talahanayan, na ang hangganan ay tila 612 00:26:54,410 --> 00:26:58,500 pagpunta sa maging isang kapal 1-- anumang na hilera means-- talahanayan, talahanayan 613 00:26:58,500 --> 00:27:00,320 data, na nangangahulugan na ang isang cell. 614 00:27:00,320 --> 00:27:03,840 At kung pumunta ako pabalik sa aking browser dito at pumunta sa table.html, 615 00:27:03,840 --> 00:27:05,840 Maaari mong makita ang isang bagay tulad nito, kakila-kilabot. 616 00:27:05,840 --> 00:27:07,840 Ngunit makikita namin sa punto kung saan kami maaaring aktwal 617 00:27:07,840 --> 00:27:09,260 gumawa ng mga bagay prettier kaysa doon. 618 00:27:09,260 --> 00:27:10,530 >> Kaya ipaalam sa akin magtadhana sa ngayon. 619 00:27:10,530 --> 00:27:11,870 Mayroong bunches ng higit pang mga tag. 620 00:27:11,870 --> 00:27:15,225 At HTML ay kahanga-hanga upang kunin ang dahil, lantaran, ang lahat ng kailangan mong gawin 621 00:27:15,225 --> 00:27:17,600 ay tumingin sa umiiral na mga web page kung pamilyar ka. 622 00:27:17,600 --> 00:27:20,340 At ikaw ay tulad ng, oh, na kung paano ginawa nila ito aesthetically. 623 00:27:20,340 --> 00:27:23,159 >> O maaari mong tingnan ang anumang mga online mapagkukunan bilang sa kung paano gumagana ang HTML, 624 00:27:23,159 --> 00:27:25,700 at makikita mo na mayroong isang buong bokabularyo ng iba pang mga tag. 625 00:27:25,700 --> 00:27:30,110 Ngunit sa simpleng sakit sa modelo mag-isa na halos anumang tag binuksan mo ang 626 00:27:30,110 --> 00:27:33,620 ay na sarado, ito talaga ay makasapat upang turuan ang sarili 627 00:27:33,620 --> 00:27:36,950 Pagkatapos maunawaan HTML mga pangunahing ideya ng mga tag 628 00:27:36,950 --> 00:27:40,520 at mga katangian at ang well-formedness na-usapan natin ang tungkol sa, 629 00:27:40,520 --> 00:27:44,697 isara ang anumang bagay na maaari naming buksan nang sa gayon ay hindi namin lituhin ang isang browser. 630 00:27:44,697 --> 00:27:46,780 Kaya sabihin ngayon tumagal ito sa isang mas kawili-wiling mga antas 631 00:27:46,780 --> 00:27:48,100 sa pamamagitan ng pagpunta sa aktwal na. 632 00:27:48,100 --> 00:27:51,095 At ng pumunta sa aking Mac ipaalam dito, sa google.com. 633 00:27:51,095 --> 00:27:52,280 634 00:27:52,280 --> 00:27:54,020 Ni gawin ito at ngayon notice-- ipaalam. 635 00:27:54,020 --> 00:27:57,280 Ako agong upang pumunta sa Mga Setting, Mga Setting ng Paghahanap. 636 00:27:57,280 --> 00:28:01,070 Gusto kong i-off ang nakakainis na instant bagay na mga resulta kung saan agad itong 637 00:28:01,070 --> 00:28:02,450 Nagsisimula tumutugon sa iyong pagta-type. 638 00:28:02,450 --> 00:28:05,300 Ni gawin ito ng mas lumang paaralan upang ipaalam sa talaga namin makita kung ano ang nangyayari sa. 639 00:28:05,300 --> 00:28:08,260 >> Kaya ako pagpunta sa i-save ang aking Mga setting ng Google dito. 640 00:28:08,260 --> 00:28:11,160 At ngayon notice-- pupuntahan ko maghanap para sa isang bagay tulad ng pusa. 641 00:28:11,160 --> 00:28:14,500 At ito ang paggawa auto ay pa rin Kumpleto dito, ngunit batay sa mga bagay 642 00:28:14,500 --> 00:28:15,970 mga tao na-type sa nakaraan. 643 00:28:15,970 --> 00:28:17,490 Ngunit mapansin kung ano ang nangyayari sa mangyari. 644 00:28:17,490 --> 00:28:20,272 >> Sa URL sa sandaling ito ay ito, sa google.com lamang. 645 00:28:20,272 --> 00:28:22,650 At technically, ito ay slash. 646 00:28:22,650 --> 00:28:25,910 Ang pagse-save lamang ng Google ang isang character at hindi nagpapakita sa amin na iyon. 647 00:28:25,910 --> 00:28:30,400 Ang mga ito ay nagpapakita sa amin https, lamang upang maging napaka-reassuring na kami ay 648 00:28:30,400 --> 00:28:32,850 sa isang secure na naka-encrypt o pahina. 649 00:28:32,850 --> 00:28:35,690 >> Kaya ipaalam sa akin sige at maghanap para sa mga pusa. 650 00:28:35,690 --> 00:28:37,670 Ngayon ang nakuha ko talaga napakalaki mabilis. 651 00:28:37,670 --> 00:28:39,470 Tumingin sa haba ng URL na ito. 652 00:28:39,470 --> 00:28:43,070 Ngunit ito ay lumiliko out na ang karamihan ng mga bagay-bagay na ito sa URL ay talagang kaakit-akit na walang silbi. 653 00:28:43,070 --> 00:28:45,320 Pupunta ako upang simulan ang pagtanggal bagay na hindi ko maintindihan. 654 00:28:45,320 --> 00:28:46,560 655 00:28:46,560 --> 00:28:47,360 Nakakakita ako ng pusa. 656 00:28:47,360 --> 00:28:48,470 Nauunawaan ko ang mga pusa. 657 00:28:48,470 --> 00:28:50,380 Hindi ko alam kung bakit pusa ang naroon muli. 658 00:28:50,380 --> 00:28:52,620 Ko talagang hindi alam kung ano ang bagay na walang kapararakan ay. 659 00:28:52,620 --> 00:28:56,030 Kaya ako lamang ang pagpunta sa panatilihin -highlight at pagtatanggal ng mga bagay-bagay 660 00:28:56,030 --> 00:28:59,905 na hindi ko maintindihan, panlinis ang URL sa lamang ito. 661 00:28:59,905 --> 00:29:00,920 662 00:29:00,920 --> 00:29:02,270 >> Ngayon hayaan mo akong makakuha ng muling ipasok. 663 00:29:02,270 --> 00:29:03,814 Mukhang gumagana pa rin ang Google. 664 00:29:03,814 --> 00:29:06,980 Kaya para sa ilang mga dahilan, sila ay nagdaragdag ng isang maraming mga bagay-bagay na sa pamamagitan ng default ang kanilang mga URL. 665 00:29:06,980 --> 00:29:09,000 Ngunit ito ay hindi mahigpit na kinakailangan. 666 00:29:09,000 --> 00:29:10,340 Kaya kung ano ang maganda tungkol dito? 667 00:29:10,340 --> 00:29:13,630 Well, hayaan mo akong sige at buksan ang Inspektor ng Chrome. 668 00:29:13,630 --> 00:29:15,960 Mayroong isang maliit na shortcut ng mouse para dito. 669 00:29:15,960 --> 00:29:17,360 >> Pumunta sa tab na Network. 670 00:29:17,360 --> 00:29:19,340 At ngayon hayaan mo akong i-reload pahinang ito nang isa pang beses. 671 00:29:19,340 --> 00:29:20,280 At ako na may hawak na Shift. 672 00:29:20,280 --> 00:29:22,520 Bilang isang bukod, browser malamang na-cache o i-save 673 00:29:22,520 --> 00:29:24,697 impormasyon lamang alang-alang sa kahusayan ng. 674 00:29:24,697 --> 00:29:27,280 Ngunit kadalasan, may hawak na Shift at -reload ay pipilit lahat 675 00:29:27,280 --> 00:29:28,994 upang magsimulang muli mula sa simula. 676 00:29:28,994 --> 00:29:30,410 At iyon ang gusto kong gawin dito. 677 00:29:30,410 --> 00:29:33,550 >> At mapansin ang lahat ng mga hilera na lamang lumitaw. 678 00:29:33,550 --> 00:29:37,920 Ito ay lumiliko out na sa anumang ibinigay na web pahina, doon ay maaaring maging lamang ang isang file 679 00:29:37,920 --> 00:29:43,500 involved-- hello.html-- o may ay maaaring maging 52, tulad ng sa kasong ito. 680 00:29:43,500 --> 00:29:45,820 Kapag binisita ko ang google.com, sa malas, ang aking browser 681 00:29:45,820 --> 00:29:49,650 kicks off ang 52 hiwalay na mga kahilingan ng HTTP. 682 00:29:49,650 --> 00:29:50,520 Bakit iyon? 683 00:29:50,520 --> 00:29:53,380 >> Well, tingnan kung ano ang nasa loob ng ng pahinang ito ang mga web tuktok. 684 00:29:53,380 --> 00:29:55,620 Mayroong hindi lamang ng teksto, ngunit mayroong mga aktwal na larawan 685 00:29:55,620 --> 00:29:57,130 ng mga pusa sa ibabaw sa kanan. 686 00:29:57,130 --> 00:29:59,110 May mga makukulay na logo dito sa kaliwa. 687 00:29:59,110 --> 00:30:01,750 Mayroong ang lahat ng mga icon na ito para sa isang mikropono at iba pa. 688 00:30:01,750 --> 00:30:05,130 Marami ng mga piraso, pagbuo bloke, scratch piraso, kung habilin sa iyo, 689 00:30:05,130 --> 00:30:06,250 sa web page na ito. 690 00:30:06,250 --> 00:30:10,310 At kung ano ang ginagawa sa mga browser pagkuha ng pinakaunang file, na 691 00:30:10,310 --> 00:30:16,180 ay ang hilera dito, ito ay mahalagang iterating sa tuktok ng HTML 692 00:30:16,180 --> 00:30:19,880 hanggang sa ibaba, kaliwa papuntang kanan, naghahanap mga bagay tulad ng mga tag na imahe o iba pang mga tag 693 00:30:19,880 --> 00:30:23,160 na pagbanggit iba pang mga file at kapag nakikita ang mga ito, napupunta at kinukuha ang mga ito 694 00:30:23,160 --> 00:30:26,050 sa pamamagitan ng HTTP, praktikal buong sobre talinghaga, 695 00:30:26,050 --> 00:30:29,670 at pagkatapos ay ipinapakita ang mga ito sa naaangkop na lokasyon sa web page. 696 00:30:29,670 --> 00:30:33,370 >> Ngunit mapansin dito kung tumuon ko sa ang unang hagis, paghahanap pusa, 697 00:30:33,370 --> 00:30:37,090 mapansin na, sa katunayan ito gamit ang HTTP 1.1. 698 00:30:37,090 --> 00:30:41,690 At sa kasamaang-palad, ang Google Chrome ngayon sa bersyon 39 699 00:30:41,690 --> 00:30:45,110 ay uri ng dumbing bagay down at Hindi lumalabas sa amin ang aktwal na header. 700 00:30:45,110 --> 00:30:49,680 Ngunit kung ano ang talagang ipinadala ay isang kahilingan para hindi mabawasan nang malaki, ngunit / search? q = pusa. 701 00:30:49,680 --> 00:30:52,830 702 00:30:52,830 --> 00:30:54,340 >> Ngayon, kung bakit ay na mahalaga? 703 00:30:54,340 --> 00:30:57,110 Well, pupunta ako sa magpakilala mula sa na kung ang Google 704 00:30:57,110 --> 00:31:01,520 Sinusuportahan ng mga query ng form na ito, bakit hindi ako ipatupad ang aking sariling paghahanap 705 00:31:01,520 --> 00:31:06,420 engine para sa CS50, ngunit lamang ang front pagtatapos, lamang ang graphical interface ng gumagamit. 706 00:31:06,420 --> 00:31:09,610 At kami outsource dulo pabalik, Mga resulta ng aktwal na paghahanap sa Google. 707 00:31:09,610 --> 00:31:10,510 >> Kaya kung paano ang maaari kong gawin? 708 00:31:10,510 --> 00:31:13,820 Well, hayaan mo akong pumunta sa gedit sa paglipas dito. 709 00:31:13,820 --> 00:31:19,180 At ipaalam sa akin sige at buksan up, sabihin nating, isang bagong file. 710 00:31:19,180 --> 00:31:22,280 At ako pagpunta sa i-save ang Pansamantalang bilang search-0.html. 711 00:31:22,280 --> 00:31:25,111 712 00:31:25,111 --> 00:31:27,860 At pagkatapos ay i-kalaunan, kami ay mabilis inaabangan ang panahon na ang isa ko pre-naghanda. 713 00:31:27,860 --> 00:31:30,190 >> At pupuntahan ko mabilis na gumawa ng uri ng doc 714 00:31:30,190 --> 00:31:33,840 html bukas bracket html malapit bracket html. 715 00:31:33,840 --> 00:31:38,390 Pagkatapos ako pagpunta sa gawin ulo malapit head CS50 bukas pamagat 716 00:31:38,390 --> 00:31:40,150 Maghanap sa halip ng paghahanap sa Google. 717 00:31:40,150 --> 00:31:43,480 Down dito ako pagpunta sa may ng katawan, pababa dito malapit katawan. 718 00:31:43,480 --> 00:31:45,835 At ngayon ay kailangan ko CS50 Paghahanap. 719 00:31:45,835 --> 00:31:47,710 At talagang, sabihin bumuo ito nang paunti-unti. 720 00:31:47,710 --> 00:31:51,043 Pupunta ako sa magpatuloy at isara ito at talagang ilagay ito sa aking pampublikong direktoryo. 721 00:31:51,043 --> 00:31:52,730 Kaya ninyo akong bigyan lamang ng isang sandali. 722 00:31:52,730 --> 00:31:55,390 search-0.html-- pupuntahan ko temporally tawagan ito search.html. 723 00:31:55,390 --> 00:31:56,600 724 00:31:56,600 --> 00:31:59,750 Pupunta ako sa chmod ito ng + r search.html. 725 00:31:59,750 --> 00:32:01,072 726 00:32:01,072 --> 00:32:02,280 At ngayon ako pupunta upang buksan ito. 727 00:32:02,280 --> 00:32:03,224 728 00:32:03,224 --> 00:32:04,390 Ang lahat ng mga karapatan, sa gayon ay mabilis. 729 00:32:04,390 --> 00:32:06,800 Ngunit ang layunin lamang ay upang makakuha ng sa amin sa punto 730 00:32:06,800 --> 00:32:09,630 ng pagkakaroon ang text na ito -file na tinatawag na search.html. 731 00:32:09,630 --> 00:32:10,940 732 00:32:10,940 --> 00:32:12,790 Kaya hindi magkano upang tumingin sa pa. 733 00:32:12,790 --> 00:32:16,970 Sa katunayan, kung pumunta ako sa aking browser, at pumunta sa search.html, na ang lahat ng ito ay. 734 00:32:16,970 --> 00:32:17,720 Ngunit alam mo kung ano? 735 00:32:17,720 --> 00:32:19,000 Maaari ko bang maging isang maliit na may interes. 736 00:32:19,000 --> 00:32:22,710 Nabasa ko sa isang libro na may isang heading na tag na tinatawag na h1. 737 00:32:22,710 --> 00:32:26,100 At ako pagpunta sa sige at gamitin na bukas h1 at malapit h1. 738 00:32:26,100 --> 00:32:27,220 I-reload ang pahina. 739 00:32:27,220 --> 00:32:29,600 At ngayon ito ay mas malaki at mas agresibong, hindi lahat na kawili-wili, 740 00:32:29,600 --> 00:32:32,399 ngunit hindi bababa sa ito structurally mas kawili-wiling. 741 00:32:32,399 --> 00:32:33,940 Ngunit ngayon hayaan mo akong ipakilala ang isa pang tag. 742 00:32:33,940 --> 00:32:36,500 Ito ay lumiliko out mayroong isang form na tag. 743 00:32:36,500 --> 00:32:38,400 At hayaan mo akong isara ang tag na iyon. 744 00:32:38,400 --> 00:32:40,830 At ito ay lumiliko out doon ni isang input tag na 745 00:32:40,830 --> 00:32:44,600 May isang katangian na tinatawag na uri, na ang uri ng data ng patlang, 746 00:32:44,600 --> 00:32:45,200 kung habilin sa iyo. 747 00:32:45,200 --> 00:32:47,050 At ay magiging ng uri ng teksto. 748 00:32:47,050 --> 00:32:52,200 At ang halaga nito ay pagpunta maging CS50 Paghahanap. 749 00:32:52,200 --> 00:32:53,850 Isara ang tag. 750 00:32:53,850 --> 00:32:57,100 At doon ay magiging walang mga kuru-kuro ng pagbukas at pagsara na may hiwalay na mga tag. 751 00:32:57,100 --> 00:33:00,300 >> Hayaan akong bumalik sa paglipas dito at tingnan kung ano ang nangyayari sa, i-reload. 752 00:33:00,300 --> 00:33:01,380 Pagkuha ng mga kagiliw-giliw. 753 00:33:01,380 --> 00:33:02,950 Mukhang ito ay isang patlang ng teksto. 754 00:33:02,950 --> 00:33:04,080 755 00:33:04,080 --> 00:33:06,999 At talagang, hindi ko gusto maglagay ng halaga doon pa. 756 00:33:06,999 --> 00:33:10,040 Hayaan akong bumalik dito at talagang makakuha ng mapupuksa ang halagang ito upang panatilihin itong simple. 757 00:33:10,040 --> 00:33:12,939 Sa halip na isang halaga, ano ang Nais kong upang bigyan ang bagay na ito ay isang pangalan. 758 00:33:12,939 --> 00:33:15,230 At hindi ko alam kung ano ito ay, kaya ako bumalik sa iyon. 759 00:33:15,230 --> 00:33:18,270 >> Ngunit sa ibaba na, gusto ko gawin uri ng input = isumite. 760 00:33:18,270 --> 00:33:19,840 761 00:33:19,840 --> 00:33:22,120 At ang halaga na ito ay magiging CS50 Paghahanap. 762 00:33:22,120 --> 00:33:24,850 At kami makita kung bakit ako Inilipat ang halaga na ito. 763 00:33:24,850 --> 00:33:28,900 Kapag i-reload ako, tila kong ngayon ay may ang Beginnings ng aking sariling paghahanap 764 00:33:28,900 --> 00:33:30,820 engine, sobrang kahindik-hindik, kahit na lantaran, ito ay 765 00:33:30,820 --> 00:33:34,260 hindi malayo hagis mula sa kung ano Mukhang default na pahina ng Google tulad ng. 766 00:33:34,260 --> 00:33:37,950 >> Kung pumunta ako dito ngayon, maaari ba akong mag-type sa pusa at sana ay i-click ang Search. 767 00:33:37,950 --> 00:33:40,380 Ngunit ako hindi pa pa tapos, dahil hindi ko na ipinatupad, 768 00:33:40,380 --> 00:33:41,045 malinaw naman, isang database. 769 00:33:41,045 --> 00:33:42,940 Hindi ko pa na-crawl ang web para sa mga resulta ng paghahanap. 770 00:33:42,940 --> 00:33:44,840 Kaya kailangan kong outsource na sa Google. 771 00:33:44,840 --> 00:33:46,290 Kaya kung paano ang gagawin ko ito? 772 00:33:46,290 --> 00:33:49,170 >> Well, una sa lahat ako Kailangan mong idagdag at pagkilos 773 00:33:49,170 --> 00:33:58,460 ipatungkol sa aking form na tag na ay http://www.google.com/search. 774 00:33:58,460 --> 00:34:01,180 At alam ko na lamang mula sa pagkakaroon ng natukoy na sa pamamagitan ng pagtingin malapit 775 00:34:01,180 --> 00:34:02,505 sa kanilang mga URL. 776 00:34:02,505 --> 00:34:03,380 At ngayon kumuha ng isang hula. 777 00:34:03,380 --> 00:34:09,090 Ano ang dapat na malamang na patlang ng teksto na ito tawagin, batay sa kung saan kami ay dumating 778 00:34:09,090 --> 00:34:09,754 mula sa dati? 779 00:34:09,754 --> 00:34:11,896 780 00:34:11,896 --> 00:34:13,290 >> Madla:? Q. 781 00:34:13,290 --> 00:34:14,370 >> David J MALAN:? Q. 782 00:34:14,370 --> 00:34:17,800 At hindi namin talaga kailangan tanong markahan ito lumiliko out, ngunit q nga ito, 783 00:34:17,800 --> 00:34:20,489 q para sa query marahil sa pamamagitan ng default, lamang dahil iyon 784 00:34:20,489 --> 00:34:23,060 kung ano ang Larry at Sergey dumating up sa taon na ang nakakaraan. 785 00:34:23,060 --> 00:34:24,739 Kaya ngayon hayaan mo akong i-reload ang pahinang ito. 786 00:34:24,739 --> 00:34:26,409 Hindi ito tumingin lahat ng iba't ibang iyon. 787 00:34:26,409 --> 00:34:28,120 Ngunit ngayon panoorin kung ano ang mangyayari. 788 00:34:28,120 --> 00:34:32,360 >> Kung nagta-type ako sa pusa at pag-click CS50 Paghahanap at palayain, 789 00:34:32,360 --> 00:34:35,770 napansin ko whisked layo sa aktwal na Google. 790 00:34:35,770 --> 00:34:38,150 Ngayon, ang Google ay pagiging isang maliit na nakakainis sa na ang mga ito ay 791 00:34:38,150 --> 00:34:41,877 appending isang karagdagang parameter, kung habilin sa iyo, sa URL. 792 00:34:41,877 --> 00:34:43,960 Iyon lang ang nangyayari Awtomatikong sa Google panig. 793 00:34:43,960 --> 00:34:48,730 >> Ang mahalagang bahagi ay na mukhang ako nag-nabuo dito ang kahilingang ito. 794 00:34:48,730 --> 00:34:50,179 At sa katunayan, iyon ang mangyayari. 795 00:34:50,179 --> 00:34:53,040 Kapag mayroon kang HTML na Mukhang ganito, ito 796 00:34:53,040 --> 00:34:57,620 ay isang uri ng pagtatanda ng mga web developer para sa sinasabi, sige at lumikha ng isang form 797 00:34:57,620 --> 00:34:59,990 na kapag ito ay isinumite, ito ay pagpunta sa pumunta sa URL na ito. 798 00:34:59,990 --> 00:35:03,430 At kapag ang mga URL na ibinigay halaga para sa mga bagay tulad ng q, 799 00:35:03,430 --> 00:35:05,440 huwag pumunta lamang sa URL na ito. 800 00:35:05,440 --> 00:35:08,210 Sa totoo lang, pumunta sa tanong mark at pagkatapos q = pusa. 801 00:35:08,210 --> 00:35:09,590 802 00:35:09,590 --> 00:35:13,060 Ikabit ang parameter, ang HTTP parameter tulad na. 803 00:35:13,060 --> 00:35:15,590 >> At upang maging napaka-tumpak na lang, kung ano ang natukoy na here-- 804 00:35:15,590 --> 00:35:18,130 ngunit makikita ko maging mas explicit-- ay na ang paraan na gusto kong gamitin ang 805 00:35:18,130 --> 00:35:22,270 ay makakuha ng, sa halip ng isang bagay tulad ng post, na magpapadala kami ay makakita. 806 00:35:22,270 --> 00:35:27,710 Kaya sa maikling, sa pamamagitan lamang ng pag-unawa HTML at paggamit ng ilang mga medyo simpleng tag, 807 00:35:27,710 --> 00:35:30,610 maaari naming ngayon umpisahan ang paggawa ng ating sariling front end user 808 00:35:30,610 --> 00:35:32,850 interface ng paghahanap engine likod nito. 809 00:35:32,850 --> 00:35:34,800 >> Ngunit ito siyempre, ay medyo kahindik-hindik. 810 00:35:34,800 --> 00:35:37,259 Kaya ipaalam sa akin aktwal na buksan ang isang bahagyang mas mahusay na bersyon. 811 00:35:37,259 --> 00:35:39,800 Ito ang isa ihanda in ako -advance na may ilang mga komento. 812 00:35:39,800 --> 00:35:41,900 Ngunit makikita mo na ako halos recreated ito. 813 00:35:41,900 --> 00:35:44,150 Kaya ito ay magagamit online. 814 00:35:44,150 --> 00:35:48,050 At ako nag mangyayari sa preemptively pumunta sa https lamang upang panatilihin itong simple. 815 00:35:48,050 --> 00:35:50,610 >> At ni buksan up ng isang ngayon hayaan susunod na pag-ulit ng mga ito. 816 00:35:50,610 --> 00:35:52,510 Ay bersyon 1 sa halip na 0. 817 00:35:52,510 --> 00:35:55,315 Ano jumps out sa iyo bilang bahagyang iba't ibang sa halimbawang ito? 818 00:35:55,315 --> 00:35:59,480 819 00:35:59,480 --> 00:36:00,440 >> Madla: [hindi marinig]. 820 00:36:00,440 --> 00:36:03,020 >> Oo, mayroon ang tekstong ito Ihanay center. 821 00:36:03,020 --> 00:36:04,590 Ito ay isang maliit na kakaiba dito. 822 00:36:04,590 --> 00:36:06,150 Ngunit ito ay talagang bago. 823 00:36:06,150 --> 00:36:07,800 At marahil hulaan kung ano ang nangyayari sa mangyari. 824 00:36:07,800 --> 00:36:11,730 Kung pumunta ako sa aking browser ngayon at bisitahin ang paghahanap 1.html, 825 00:36:11,730 --> 00:36:13,090 ito ay halos ang parehong bagay. 826 00:36:13,090 --> 00:36:15,705 Ngunit ito ay mas malapit sa isang hakbang upang pagiging isang kaunti pa kaakit-akit. 827 00:36:15,705 --> 00:36:19,150 Ito ay pa rin mainit ang ulo, ngunit prettier sa na hindi bababa sa lahat ng bagay ay nakasentro ngayon. 828 00:36:19,150 --> 00:36:23,470 >> Kaya ito ay lumiliko out na kung ano ang ginagamit ko ay isa pang wika nang sama-sama na tinatawag na 829 00:36:23,470 --> 00:36:25,680 CSS, cascading style sheet. 830 00:36:25,680 --> 00:36:28,310 At CSS, lantaran, ay uri ng, sa aking personal na opinyon, 831 00:36:28,310 --> 00:36:29,775 isang atrociously idinisenyo wika. 832 00:36:29,775 --> 00:36:33,110 Ito ay napaka-nakakainis na tandaan lahat ng mga iba't-ibang detalye. 833 00:36:33,110 --> 00:36:38,479 Ngunit ito ay kung ano ang stylizes buong web sa buong mundo ngayon. 834 00:36:38,479 --> 00:36:39,270 Nasaktan ako ng isang tao. 835 00:36:39,270 --> 00:36:39,769 Lahat ng karapatan. 836 00:36:39,769 --> 00:36:43,180 Kaya sabihin bumalik dito at tingnan kung paano talaga namin ginagamit ito. 837 00:36:43,180 --> 00:36:45,940 At ito ay lumiliko out, hindi bababa sa ito ay talagang isang medyo simpleng wika. 838 00:36:45,940 --> 00:36:49,470 Ito ay lamang ang mga pangunahing mga pares ng halaga, mga katangian ng at halaga, mga katangian at halaga. 839 00:36:49,470 --> 00:36:52,080 Sa katunayan, dito ay isa tulad ng ari-arian at halaga. 840 00:36:52,080 --> 00:36:55,890 >> Sa pamamagitan lamang ng paggamit ng estilo ipatungkol sa aking katawan tag 841 00:36:55,890 --> 00:37:00,360 at pagbibigay ito ng isang halaga ng isang tutuldok salita at ng isa pang salita, 842 00:37:00,360 --> 00:37:03,730 o isang ari-arian at ng isang halaga, Maaari ko bang makakaapekto sa Estetika 843 00:37:03,730 --> 00:37:06,210 ng web page, hindi ang kinakailangang pang istraktura, 844 00:37:06,210 --> 00:37:07,550 ngunit ang Estetika nito. 845 00:37:07,550 --> 00:37:10,960 At sa pamamagitan lamang ng Googling sa paligid, Napag-alaman kong na CSS, cascading style sheet, 846 00:37:10,960 --> 00:37:14,170 ay sumusuporta sa isang ari-arian na tinatawag na text-align, na ang halaga maaari 847 00:37:14,170 --> 00:37:16,980 ay kaliwa, kanan, o center, halimbawa. 848 00:37:16,980 --> 00:37:19,990 >> Kaya ngayon kapag i-reload ko pahinang ito, ano ang nakuha ko 849 00:37:19,990 --> 00:37:22,730 ay isang nakasentro pahina, ngunit pa rin medyo mainit ang ulo. 850 00:37:22,730 --> 00:37:25,770 Sabihin sige at buksan up na bersyon 2 ng Paghahanap. 851 00:37:25,770 --> 00:37:28,570 At mapansin ngayon gumawa ako ng kaunti pa. 852 00:37:28,570 --> 00:37:33,760 Pansinin na dito sa loob ng ulo tag, mayroong maaaring maging mas mababa sa pamagat. 853 00:37:33,760 --> 00:37:35,400 Sa katunayan, may isang tag ng estilo. 854 00:37:35,400 --> 00:37:38,630 At ito ay kung saan nakakakuha ito lamang maliit na walang kaayusan nakikita CSS minsan. 855 00:37:38,630 --> 00:37:41,971 >> Abiso na mukhang kong magkaroon ng isang bagay na structurally mukhang ibang-iba. 856 00:37:41,971 --> 00:37:44,095 Ngunit dito ay ang pangalan ng ang tag Gusto kong inilarawan sa pangkinaugalian. 857 00:37:44,095 --> 00:37:47,570 Narito ang aming lumang kaibigan kulot brace at closed kulot suhay. 858 00:37:47,570 --> 00:37:50,290 At pagkatapos dito ay ari-arian at ang halaga nito. 859 00:37:50,290 --> 00:37:56,300 >> Kung load ko ang file na ito, search2.html, ang resulta ay magkapareho. 860 00:37:56,300 --> 00:37:59,300 Ngunit ito ay isang hakbang patungo sa mas mahusay na disenyo. 861 00:37:59,300 --> 00:38:04,560 Sa pamamagitan ng factoring out ito CSS, na hindi ko na Hindi commingled ito sa aking HTML. 862 00:38:04,560 --> 00:38:07,560 At sa katunayan, bilang namin makita ang, maaari ko muling gamitin ang mga katangian at halaga. 863 00:38:07,560 --> 00:38:10,420 Kung Nais kong gumawa bunches ng mga bahagi ng aking web page sa gitna, 864 00:38:10,420 --> 00:38:13,630 Hindi ko na kailangang mag-type style = text-align center sa buong lugar. 865 00:38:13,630 --> 00:38:16,580 Maaari ko bang ilagay sa isang lugar marahil, gusto hanggang sa tuktok. 866 00:38:16,580 --> 00:38:18,210 >> Ngunit kahit na ito ay hindi ang pinakamahusay na disenyo. 867 00:38:18,210 --> 00:38:21,720 Sa katunayan, ang isa sa mga bagay na matutunan mo bilang gumastos ka ng higit pa at mas maraming oras sa 868 00:38:21,720 --> 00:38:25,730 web programming ay ang mas maraming maaari mong modularize bagay at salik bagay out 869 00:38:25,730 --> 00:38:30,610 tulad ng .h file ipaalam sa amin factor bagay-bagay out, i helpers.c ipaalam sa amin factor bagay out 870 00:38:30,610 --> 00:38:31,880 ilang psets ang nakalipas. 871 00:38:31,880 --> 00:38:34,200 Katulad nito, maaari naming Gusto upang makamit ito. 872 00:38:34,200 --> 00:38:37,920 >> Kaya mapapansin sa bersyon tatlong ng search.html na hindi ko na 873 00:38:37,920 --> 00:38:40,610 Nalinis ang pinuno ng ang pahina at ilagay lamang 874 00:38:40,610 --> 00:38:43,320 sa ito, ang isang link na tag, na nasasalungat sa mga pangalan, 875 00:38:43,320 --> 00:38:44,700 ay hindi nagbibigay sa iyo ng isang hyperlink. 876 00:38:44,700 --> 00:38:49,150 Ito ay nagli-link sa isa pang file sa pamamagitan ng paraan ng isang href na halaga sa kasong ito, 877 00:38:49,150 --> 00:38:51,586 ay search-3.css 878 00:38:51,586 --> 00:38:52,960 Kaya Napag-alaman kong kami ng pagpunta mabilis. 879 00:38:52,960 --> 00:38:54,600 Ngunit lahat ako ginagawa uri ng paglipat ng mga bagay sa paligid. 880 00:38:54,600 --> 00:38:55,760 Hayaan akong bukas sa paghahanap 3.css. 881 00:38:55,760 --> 00:38:57,114 882 00:38:57,114 --> 00:38:58,530 May ito ay, walang talagang ito. 883 00:38:58,530 --> 00:39:02,270 Lamang makopya ko at ilagay ito papunta sa isang bagong -file, tulad ng isinasali namin mga bagay-bagay out 884 00:39:02,270 --> 00:39:03,509 sa iba pang mga file bago. 885 00:39:03,509 --> 00:39:05,300 At ang result-- ganap underwhelming-- 886 00:39:05,300 --> 00:39:06,730 ay magiging eksaktong pareho. 887 00:39:06,730 --> 00:39:10,490 Ngunit kami ay gumagalaw toward-- hindi, hindi. 888 00:39:10,490 --> 00:39:11,930 Oh, alam ko kung bakit. 889 00:39:11,930 --> 00:39:13,790 >> Kaya tila na maging isang bug. 890 00:39:13,790 --> 00:39:15,010 At ito ay sa ilang mga kahulugan. 891 00:39:15,010 --> 00:39:17,730 Ngunit hayaan mo akong magbukas ng aking tab na Network. 892 00:39:17,730 --> 00:39:19,660 Hayaan akong i-reload ang pahina. 893 00:39:19,660 --> 00:39:23,315 Ah, kung bakit ninyo ay hindi inilapat sa CSS? 894 00:39:23,315 --> 00:39:26,920 Well, ang CSS file, katulad, ay upang maging mundo nababasa, kaya upang makipag-usap. 895 00:39:26,920 --> 00:39:28,440 At masyadong ay kasalukuyang ipinagbabawal. 896 00:39:28,440 --> 00:39:33,760 Kaya ipaalam sa akin gawin ang isang chmod isang + r ng pagbuo ng tuldok CSS-- whoops-- 897 00:39:33,760 --> 00:39:37,067 Ikinalulungkot namin na tuldok CSS lamang ang extension ng file para sa CSS file. 898 00:39:37,067 --> 00:39:38,900 Ngayon hayaan mo akong bumalik sa ang aking browser at i-reload. 899 00:39:38,900 --> 00:39:40,910 OK, medyo mas mahusay. 900 00:39:40,910 --> 00:39:42,282 >> Ngayon ipaalam sa akin gawin ang isa huling bagay. 901 00:39:42,282 --> 00:39:42,990 Sa paghahanap-4.html. 902 00:39:42,990 --> 00:39:44,550 903 00:39:44,550 --> 00:39:48,220 Mayroon akong bersyon na naisip ko lang ay paraan mas malamig-lamig, kahit na paraan higit pa 904 00:39:48,220 --> 00:39:48,980 kumplikadong. 905 00:39:48,980 --> 00:39:50,690 Tingnan natin ang resulta ng unang Hayaan. 906 00:39:50,690 --> 00:39:52,290 Isara ang upang bigyan kami ng higit pang mga kuwarto. 907 00:39:52,290 --> 00:39:54,275 Baguhin ito upang maghanap-4, ang Enter. 908 00:39:54,275 --> 00:39:55,430 909 00:39:55,430 --> 00:39:57,200 >> At ngayon ng grupo ng mga bagay ay sira. 910 00:39:57,200 --> 00:39:59,910 Pupunta ako sa bumalik sa aking direktoryo dito. 911 00:39:59,910 --> 00:40:04,190 At ngayon lang ako pagpunta sa gawin isang chmod ng + r sa isang file-- 912 00:40:04,190 --> 00:40:07,450 dahil alam ko ito exists-- tinatawag na logo.gif, na isang larawan. 913 00:40:07,450 --> 00:40:08,590 At ngayon i-reload. 914 00:40:08,590 --> 00:40:11,040 At wow-- kaya ngayon ako malapit sa katangian, tapat, 915 00:40:11,040 --> 00:40:15,860 upang gustuhin ang 1999 bersyon ng Google, at nang tapat, ang 2014 bersyon ng Google, 916 00:40:15,860 --> 00:40:16,360 tama? 917 00:40:16,360 --> 00:40:21,920 >> Kaya ngayon ng pagpunta sa kanilang website, sa huli, kung hahanapin ko ang mga pusa. 918 00:40:21,920 --> 00:40:23,900 At talagang ito ay. 919 00:40:23,900 --> 00:40:26,410 Ngunit ano ang gagawin ko sa ibang paraan sa bersyong ito ng 4? 920 00:40:26,410 --> 00:40:28,020 Kaya hindi namin panahanan ng masyadong maraming dito dito. 921 00:40:28,020 --> 00:40:30,100 Makikita mo ang problema sa itakda ang pitong kalaunan. 922 00:40:30,100 --> 00:40:31,350 Ngunit mapansin ginawa ko ang ilang mga bagay. 923 00:40:31,350 --> 00:40:33,690 >> Ipinakilala ako ng isang div tag, na kung saan ay dibisyon, 924 00:40:33,690 --> 00:40:35,450 katulad sa espiritu sa isang tag na talata. 925 00:40:35,450 --> 00:40:38,220 Ngunit isang sangay ay tulad lamang, narito ang isang hugis-parihaba invisible rehiyon 926 00:40:38,220 --> 00:40:39,150 ng screen. 927 00:40:39,150 --> 00:40:41,680 Bigyan natin ito ng isang natatanging Hayaan identifier, isang footer, lamang 928 00:40:41,680 --> 00:40:44,700 upang maaari naming makipag-usap tungkol sa ito sa aming HTML sa ibang lugar. 929 00:40:44,700 --> 00:40:47,952 Narito ang isa pang div ng pahina na kung saan ang ID ay magiging nilalaman. 930 00:40:47,952 --> 00:40:49,160 Ito ang nilalaman ng pahina. 931 00:40:49,160 --> 00:40:51,090 At dito ay ang header ng pahina. 932 00:40:51,090 --> 00:40:54,960 >> Sa ibang salita, na hindi ko na lubos sa HTML Kasama sa pag-iisip 933 00:40:54,960 --> 00:40:57,700 tumitingin ng web page na ito bilang tatlong bahagi, isang header 934 00:40:57,700 --> 00:41:01,200 up dito gamit ang invisible na parihaba, ang nilalaman sa gitna, at pagkatapos ay 935 00:41:01,200 --> 00:41:04,800 footer pababa sa ibaba, kahit kahit na hindi namin makita ang mga bagay. 936 00:41:04,800 --> 00:41:09,940 Dahil gusto kong sa aking ulo ng pahina dito, o sa isang .css file, 937 00:41:09,940 --> 00:41:11,460 Maaari ko bang gamitin ang syntax na ito. 938 00:41:11,460 --> 00:41:13,070 >> Header ay hindi isang tag. 939 00:41:13,070 --> 00:41:17,060 Ito ay isang ID kaya lumiliko out na sa pamamagitan ng paggawa #header, 940 00:41:17,060 --> 00:41:20,840 Maaari ko ngayon ilapat ang isa o higit pang mga mga katangian ng header. 941 00:41:20,840 --> 00:41:24,130 Ang maaari kong gawin ang parehong nilalaman, ang pareho sa mga nilalaman dito. 942 00:41:24,130 --> 00:41:27,230 >> Kaya halimbawa, sa footer, abiso lahat ng mga pag-aari Magdaragdag ako. 943 00:41:27,230 --> 00:41:30,660 At alam ko umiiral ang mga ito sa pamamagitan lamang ng pagbabasa hanggang sa dokumentasyon para sa CSS. 944 00:41:30,660 --> 00:41:33,450 Laki ng font ay magiging smaller-- kaya ang ilang mga kamag-anak na laki ng font. 945 00:41:33,450 --> 00:41:34,741 Ang timbang ay magiging bold. 946 00:41:34,741 --> 00:41:37,340 Margin-- kung gaano karaming mga pixels sa paligid it-- 20 pixels. 947 00:41:37,340 --> 00:41:38,590 At ito ang nangyayari na nakasentro. 948 00:41:38,590 --> 00:41:40,256 >> Ngunit ngayon, ganito ang hitsura ng pahina. 949 00:41:40,256 --> 00:41:42,840 Kung hindi ako nasisiyahan sa ang aking kopya doon, 950 00:41:42,840 --> 00:41:46,560 Maaari kong gawin ang isang bagay tulad ng kulay pula. 951 00:41:46,560 --> 00:41:50,570 At pagkatapos ay ang maaari kong i-save ito, i-reload, at ngayon inilarawan sa pangkinaugalian ko na ang footer. 952 00:41:50,570 --> 00:41:54,130 Kaya ito ay lamang hinting sa kapangyarihan ng kung ano ang maaari mong gawin sa isang web page 953 00:41:54,130 --> 00:41:55,510 upang baguhin ang mga bagay sa paligid. 954 00:41:55,510 --> 00:41:59,080 >> At kahit na mas cool na kaysa ito, kung nais mong upang sundutin sa paligid sa aktwal na mga website, 955 00:41:59,080 --> 00:42:00,810 hindi mo maaaring permanenteng palitan ang mga ito. 956 00:42:00,810 --> 00:42:03,640 Ngunit kung buksan ko up Inspektor ng Chrome muli 957 00:42:03,640 --> 00:42:07,610 at hindi pumunta ako sa kaliwang bahagi dito, na nagpapakita ng HTML Facebook ni, 958 00:42:07,610 --> 00:42:11,380 ngunit nagpapakita sa kanang bahagi ang lahat ng CSS nito, 959 00:42:11,380 --> 00:42:13,789 maaari mong at baguhin ang mga bagay sa mabilisang. 960 00:42:13,789 --> 00:42:15,080 Kaya ipaalam sa akin sige at gawin ito. 961 00:42:15,080 --> 00:42:18,670 >> Hayaan akong sige at kontrol mag-click sa mga random na salita dito, 962 00:42:18,670 --> 00:42:21,230 -sign, at i-click ang Siyasatin ang Elemento. 963 00:42:21,230 --> 00:42:25,130 Chrome napaka-maginhawang jumps sa ang tag h1 na Facebook ay gumagamit. 964 00:42:25,130 --> 00:42:27,290 At mapansin dito Facebook May uri ng lazily 965 00:42:27,290 --> 00:42:29,960 -hard code laki ng font bilang isang ari-arian dito. 966 00:42:29,960 --> 00:42:33,530 >> Kaya ang mga cool na bagay na ay na kung talagang pumunta ako sa dito 967 00:42:33,530 --> 00:42:39,560 at sabihin, oh, Facebook, hindi ko gusto na 64 pixel, maaari na ngayong naming baguhin ang Facebook. 968 00:42:39,560 --> 00:42:42,590 Siyempre, lamang namin ang pagbabago nito para sa akin personal na sa sandaling ito. 969 00:42:42,590 --> 00:42:45,150 Ngunit ito lamang ang isa pang tool sa aming tool kit 970 00:42:45,150 --> 00:42:48,360 na pupuntahan-daan sa amin upang mag-tweak at malaman at din-diagnose 971 00:42:48,360 --> 00:42:49,729 Mga isyu sa aming sariling mga pahina ng web. 972 00:42:49,729 --> 00:42:52,270 At maaari kaming katulad pumunta sa paglipas ng dito, kung saan ay ang parehong bagay. 973 00:42:52,270 --> 00:42:55,830 Kung talagang gusto upang makakuha ng magarbong, ako ibig sabihin, ngayon, maaari mo ba talagang mutate pahina 974 00:42:55,830 --> 00:42:57,380 at gawin nakatutuwang bagay. 975 00:42:57,380 --> 00:42:59,870 >> Kaya bakit ay ang lahat ng kapaki-pakinabang? 976 00:42:59,870 --> 00:43:02,330 Well, sa huli, kami ay pagpunta sa nais na 977 00:43:02,330 --> 00:43:07,110 magagawang lumikha ng mga web page na ay hinimok sa pamamagitan ng aming sariling mga dulo pabalik, 978 00:43:07,110 --> 00:43:10,520 hindi sa pamamagitan lamang ng Google at Outsourcing dulo pabalik doon. 979 00:43:10,520 --> 00:43:13,510 Talaga namin nais sa halaga, halimbawa, 980 00:43:13,510 --> 00:43:18,830 ng pagkilos sa aming mga search engine ipatungkol upang pumunta hindi sa ibang tao, 981 00:43:18,830 --> 00:43:24,270 ngunit sa isang bagay tulad ng search.php, kung saan search.php ay sa aming sariling server, 982 00:43:24,270 --> 00:43:25,670 hindi sa ibang tao. 983 00:43:25,670 --> 00:43:30,316 >> At kaya upang makarating doon, kami talaga kailangan upang maipakilala ang isang bagong wika. 984 00:43:30,316 --> 00:43:33,190 Kaya kami na tumingin sa isang bagong wika dito, o dalawang talaga ito, HTML 985 00:43:33,190 --> 00:43:33,700 at CSS. 986 00:43:33,700 --> 00:43:36,330 Ngunit talaga sila lamang estruktural at Aesthetic wika. 987 00:43:36,330 --> 00:43:38,360 Hindi sila naka-programa wika per se. 988 00:43:38,360 --> 00:43:41,160 At iyon ang tungkol sa mas maraming mga pormal na panahon bilang namin gastusin sa kanila. 989 00:43:41,160 --> 00:43:44,910 Dahil sisimulan namin ngayon upang lumipat sa PHP. 990 00:43:44,910 --> 00:43:48,160 >> Kaya PHP ay isang aktwal na programming language. 991 00:43:48,160 --> 00:43:50,750 Ito ay isang wika scripting sa kamalayan na ito 992 00:43:50,750 --> 00:43:52,855 sinadya upang maging magaan ang timbang kaysa sa isang bagay tulad ng C. 993 00:43:52,855 --> 00:43:56,082 At ito ay isang kahulugan ng wika, na nangangahulugan na hindi ito pinagsama-sama. 994 00:43:56,082 --> 00:43:58,790 Kaya sa maikling sabi, kung ano ang ibig sabihin ng kapag ginagamit namin ang isang wika tulad ng c 995 00:43:58,790 --> 00:44:00,290 at nagkaroon kami upang ipunin ito? 996 00:44:00,290 --> 00:44:02,120 Ano ang ibig sabihin ng mag-compile C source code? 997 00:44:02,120 --> 00:44:03,864 998 00:44:03,864 --> 00:44:04,780 Madla: [hindi marinig]. 999 00:44:04,780 --> 00:44:06,184 David J MALAN: Sabihin itong muli? 1000 00:44:06,184 --> 00:44:07,100 Madla: [hindi marinig]. 1001 00:44:07,100 --> 00:44:07,962 1002 00:44:07,962 --> 00:44:08,920 David J MALAN: Perpekto. 1003 00:44:08,920 --> 00:44:10,180 Lumiliko ito ito sa binary. 1004 00:44:10,180 --> 00:44:14,200 Lumiliko ito ito sa zeroes at mga mula sa aktwal na Ingles-tulad ng source code. 1005 00:44:14,200 --> 00:44:16,424 At pagkatapos ay aming makakaya aktwal magpatakbo ng mga zeroes at mga 1006 00:44:16,424 --> 00:44:18,840 sa pamamagitan ng pagpasa ito sa pamamagitan ng CPU sa pamamagitan ng pag-click double isang icon 1007 00:44:18,840 --> 00:44:19,980 o pagpapatakbo ng isang command. 1008 00:44:19,980 --> 00:44:23,770 >> PHP at Python at Ruby at Perl at JavaScript 1009 00:44:23,770 --> 00:44:26,250 at bunches ng iba pang mga wika ay binigyang-kahulugan 1010 00:44:26,250 --> 00:44:29,290 wika, na kung saan ay upang sabihin hindi mo ipunin ang mga ito. 1011 00:44:29,290 --> 00:44:34,220 Sa halip, feed mo ang mga ito bilang input sa isang programa na tinatawag na isang interpreter. 1012 00:44:34,220 --> 00:44:36,640 At interpreter na iyon, na may ibang nagsulat, 1013 00:44:36,640 --> 00:44:40,930 bumabasa ng iyong source code sa itaas hanggang sa ibaba, ang natitira upang karapatan at binibigyang-kahulugan lamang 1014 00:44:40,930 --> 00:44:43,000 mga linya at ginagawa kung ano ang sinasabi sa iyo. 1015 00:44:43,000 --> 00:44:45,360 >> Kaya kung nakatagpo ka ng linya na nagsasabing naka-print, 1016 00:44:45,360 --> 00:44:48,660 ito ay hindi kinakailangang i-convert ang naka-print ng kaugnay na mga zero at mga bago. 1017 00:44:48,660 --> 00:44:51,910 Ito lamang ay may ito interpreter tulad ng isang malaking kung kondisyon na nagsasabing, 1018 00:44:51,910 --> 00:44:56,110 kung pagtuturo programmer ay -print, pagkatapos ay gawin ang sumusunod. 1019 00:44:56,110 --> 00:44:58,170 Kaya binibigyang-kahulugan ito lamang sa pamamagitan ng uri ng pagdadahilan 1020 00:44:58,170 --> 00:44:59,800 sa pamamagitan ng kung ano ang sinasabi mo itong gawin. 1021 00:44:59,800 --> 00:45:01,320 >> At PHP ay isa sa mga wikang ito. 1022 00:45:01,320 --> 00:45:05,310 At PHP taon na ang nakalipas ay idinisenyo tumpak para sa mga web programming. 1023 00:45:05,310 --> 00:45:08,160 At ito ay una ng isang napaka nanggigitata gulung-gulo wika. 1024 00:45:08,160 --> 00:45:10,940 At sa katunayan, mayroong isang malaking halaga ng masamang code na PHP out doon. 1025 00:45:10,940 --> 00:45:13,520 Ngunit ang wika mismo ay matured sa paglipas ng mga taon, 1026 00:45:13,520 --> 00:45:16,200 kaya magkano kaya na ito ngayon ang tunay na isang kamangha-manghang mga susunod na hakbang 1027 00:45:16,200 --> 00:45:19,970 pedagogically mula sa C dahil ito ay kaya darned pamilyar sa lahat ng bagay 1028 00:45:19,970 --> 00:45:22,380 lamang na iyong nakita sa iyo sa nakaraan ilang linggo. 1029 00:45:22,380 --> 00:45:25,724 >> Ang isang paunang pagkakaiba namin makita ay walang pangunahing pag-andar na ngayon. 1030 00:45:25,724 --> 00:45:28,890 Kapag sinimulan mo ang pagsusulat ng code, ito lamang pagpunta upang isagawa kahit na ano, 1031 00:45:28,890 --> 00:45:30,220 bilang namin makita ang ilang mga sandali. 1032 00:45:30,220 --> 00:45:33,320 Samantala, narito ang isang variable na kamukha sa PHP. 1033 00:45:33,320 --> 00:45:35,840 Ito ay isang maliit na naiiba, ngunit lamang bahagya. 1034 00:45:35,840 --> 00:45:39,380 >> Sa PHP, mayroong hindi malakas pagta-type. 1035 00:45:39,380 --> 00:45:41,430 Mayroong linggo pagta-type, na lamang nangangahulugan na may 1036 00:45:41,430 --> 00:45:44,030 ang mga uri ng data tulad ng mga string at mga numero at iba pang mga bagay. 1037 00:45:44,030 --> 00:45:47,030 Ngunit hindi mo abala sa pagtukoy ano ang mga ito ngayon. 1038 00:45:47,030 --> 00:45:48,980 Mga figure na ito PHP out para sa iyo. 1039 00:45:48,980 --> 00:45:52,030 Ang dollar sign ay isang desisyon lamang na ang PHP tao ginawa taon 1040 00:45:52,030 --> 00:45:54,890 nakaraan tulad na ang anumang variable sa PHP Nagsisimula lamang sa isang dolyar sign. 1041 00:45:54,890 --> 00:45:58,130 Ito ay talagang uri ng kapaki-pakinabang sa na ito jumps out sa iyo ng kaunti pa. 1042 00:45:58,130 --> 00:46:01,315 >> Ngunit pagkatapos na, ito ay isang kalagayan sa PHP. 1043 00:46:01,315 --> 00:46:03,140 1044 00:46:03,140 --> 00:46:04,730 Ano ang naiiba kumpara sa C? 1045 00:46:04,730 --> 00:46:07,180 1046 00:46:07,180 --> 00:46:09,600 Linlangin question-- wala, na kung saan ay talagang talagang maganda. 1047 00:46:09,600 --> 00:46:12,140 Boolean expression sa PHP-- pareho. 1048 00:46:12,140 --> 00:46:19,354 Boolean expression sa at laban sa o, switch, loop, loop, loops-- OK, 1049 00:46:19,354 --> 00:46:20,270 ang isang ito ay naiiba. 1050 00:46:20,270 --> 00:46:22,660 >> Kaya ito ay lumiliko out mayroong isang ilang iba pang mga tampok sa PHP. 1051 00:46:22,660 --> 00:46:25,243 Ang isa sa mga ito ay aktwal na ito, na kung saan ay kamangha-mangha maginhawang. 1052 00:46:25,243 --> 00:46:29,250 Kung $ numero ay isang array na iyong ipinahayag dati sa isang programa, 1053 00:46:29,250 --> 00:46:33,350 mayroon ka na ng magarbong para sa bawat bumuo na sa halip ng paggawa ng lahat ng na 1054 00:46:33,350 --> 00:46:37,020 nakakainis na ako ay katumbas ng 0, ako ay Mababa sa ito, [? ++ Ko?], 1055 00:46:37,020 --> 00:46:40,320 para sa bawat numero ng numero, kung saan ang bawat ng mga halaga ng pag-sign dolyar lamang 1056 00:46:40,320 --> 00:46:42,790 isang variable, at sa huli maaari mong isipin bilang I. 1057 00:46:42,790 --> 00:46:44,290 Maaari kang tumawag ito anumang nais mo. 1058 00:46:44,290 --> 00:46:45,770 Tumawag ako ito number. 1059 00:46:45,770 --> 00:46:48,825 Ito ay pagpunta upang umulit sa ibabaw ang array na tinatawag na numero. 1060 00:46:48,825 --> 00:46:51,200 At sa bawat pag-ulit, ito ay pagpunta sa awtomatikong i-update 1061 00:46:51,200 --> 00:46:54,340 para sa iyo ang dollar sign bilang variable sa gayon ay patuloy 1062 00:46:54,340 --> 00:46:58,210 May access ang mga variable na gusto mo nang hindi na kinakailangang gawin ang anumang mga square bracket 1063 00:46:58,210 --> 00:47:00,980 pagtatanda o pag-index sa isang array. 1064 00:47:00,980 --> 00:47:04,950 >> Higit pa iyon, kahit na mayroon kaming mga bagay tulad ng array, na hitsura halos pareho, 1065 00:47:04,950 --> 00:47:08,210 maliban ito ay napakakaraniwan, pati na kami ay makita, parehong sa PHP at JavaScript 1066 00:47:08,210 --> 00:47:10,750 na paunang simulan ang isang array paggamit ng mga square bracket. 1067 00:47:10,750 --> 00:47:12,040 C ay gumagamit ng kulot tirante. 1068 00:47:12,040 --> 00:47:15,330 Kaya ito ay bahagyang naiiba, kahit na Hindi talaga namin ang ginamit na nanlilinlang magkano. 1069 00:47:15,330 --> 00:47:20,090 >> Ngunit kahit na higit pa powerfully, May nag-uugnay array PHP, 1070 00:47:20,090 --> 00:47:23,100 kung saan ay isang magarbong paraan ng sinasabi ng hash talahanayan. 1071 00:47:23,100 --> 00:47:31,610 Sa katunayan, kung nais mong ipinapahayag ng hash talahanayan sa PHP, hindi tulad ng sa C-- kung gaano karaming 1072 00:47:31,610 --> 00:47:34,775 mga linya ng code ay tumagal sa aktwal na ipatupad ng hash talahanayan sa C? 1073 00:47:34,775 --> 00:47:38,310 O kung gaano karaming mga linya ng code ito pagkuha ipatupad ng hash talahanayan sa C? 1074 00:47:38,310 --> 00:47:39,820 Kaya ito ay marahil ng maraming, tama? 1075 00:47:39,820 --> 00:47:41,680 Ito ay ilang dosena, siguro 100 o 200. 1076 00:47:41,680 --> 00:47:42,980 Ito ay nontrivial. 1077 00:47:42,980 --> 00:47:45,420 O ito ay tungkol sa upang maging, bilang makikita mo sa lalong madaling panahon makita, nontrivial 1078 00:47:45,420 --> 00:47:48,080 upang ipatupad ng hash talahanayan [Hindi marinig] at ding try. 1079 00:47:48,080 --> 00:47:50,580 Ngunit sa PHP-- at lantaran, ako marahil ay hindi dapat sabihin sa iyo na ito 1080 00:47:50,580 --> 00:47:53,630 hanggang Monday-- sa PHP, kung gusto mo ng talahanayan, tapos na. 1081 00:47:53,630 --> 00:47:56,431 Iyon ang isang hash table-- kaya na may isang linya ng code. 1082 00:47:56,431 --> 00:47:56,930 At 1083 00:47:56,930 --> 00:47:58,810 >> Marami ng mga wika gawin iyon. 1084 00:47:58,810 --> 00:48:00,190 Magpakasaya sa pset lima. 1085 00:48:00,190 --> 00:48:01,980 Kaya ng maraming mga wika na ito. 1086 00:48:01,980 --> 00:48:03,050 1087 00:48:03,050 --> 00:48:06,140 Bigyan sila mo ang mga abstractions na ang ibang mga tao, ibang mga programmer, 1088 00:48:06,140 --> 00:48:09,870 nilikha para sa iyo upang ang maaari mong tumayo sa kanilang mga balikat 1089 00:48:09,870 --> 00:48:13,290 at simulang gamitin ang mga ideya na ito ay sukdulang nakapanghihimok, tulad ng hash table at mga puno 1090 00:48:13,290 --> 00:48:14,140 at sinusubukang. 1091 00:48:14,140 --> 00:48:17,790 Ngunit hindi mo kinakailangang magkaroon upang ipatupad ang mga bagay sa iyong sarili. 1092 00:48:17,790 --> 00:48:20,850 >> At kaya sa huli, kung ano ang kami ay pagpunta sa gumamit ng PHP para sa 1093 00:48:20,850 --> 00:48:23,580 ay potensyal na pagsusulat ng mga programa ng tinatawag na linya ng command. 1094 00:48:23,580 --> 00:48:26,600 Maaari naming muling likhain ang bawat programa na aming sinulat na ito semestre kaya sa ngayon, 1095 00:48:26,600 --> 00:48:30,410 maliban siguro Breakout na gumagamit ng SPL, na partikular sa C sa sandaling ito. 1096 00:48:30,410 --> 00:48:33,100 Ngunit nakatakda sa bawat iba pang mga problema, tiyak Mario at Caesar 1097 00:48:33,100 --> 00:48:35,300 at Vigenere at [? Crack?] At pasulong, namin 1098 00:48:35,300 --> 00:48:39,520 maaaring muling ipatupad sa PHP, at marahil ng isang maliit na mas madali. 1099 00:48:39,520 --> 00:48:43,050 >> Ngunit kung ano ang sa huli kami ng pagpunta gamitin ang PHP para ay web programming. 1100 00:48:43,050 --> 00:48:46,420 At kami ay pagpunta upang ipakilala ang susunod na linggo isang sakit sa modelo, isang tularan tinatawag na 1101 00:48:46,420 --> 00:48:49,610 MVC, tingnan modelo controller, na kung nagawa mo na ang mga programa 1102 00:48:49,610 --> 00:48:51,610 bago sa Python o Ruby o sa ibang lugar, mo 1103 00:48:51,610 --> 00:48:54,112 maaaring kilala ng koponan gamit ang Daang-bakal at Django at iba. 1104 00:48:54,112 --> 00:48:55,820 Ngunit kung ikaw ay bago sa iyo ito masyadong, makikita mo ang 1105 00:48:55,820 --> 00:48:59,652 na ito ay talagang isang napaka-natural extension ng paktorisasyon 1106 00:48:59,652 --> 00:49:01,360 at ang uri ng disenyo ng code na hindi namin 1107 00:49:01,360 --> 00:49:04,670 na ginagawa sa C. Kami ay pagpunta sa ngayon ilapat ang ilan sa mga aralin sa PHP 1108 00:49:04,670 --> 00:49:07,190 kaya na sa huli, kami ay pagpapatupad ng aming sariling mga website. 1109 00:49:07,190 --> 00:49:09,080 At kung ikaw ay isang uri ng mesmerized o nagtaka nang labis 1110 00:49:09,080 --> 00:49:10,954 na namin ang pagpunta sa gawin lahat ng kaya mabilis, 1111 00:49:10,954 --> 00:49:13,410 Napag-alaman na halos araw semestre, halos 90% 1112 00:49:13,410 --> 00:49:16,560 ng CS50 mga mag-aaral, kabilang ang mga na hindi kailanman-program bago, 1113 00:49:16,560 --> 00:49:20,329 napupunta sa paggawa ng pangwakas na mga proyekto na ay batay sa web programming. 1114 00:49:20,329 --> 00:49:23,120 At kaya makikita mo na ang pagbalik ay mataas sa darating na mga linggo. 1115 00:49:23,120 --> 00:49:24,965 Kaya kami ay nakikita mo pagkatapos ay sa Lunes. 1116 00:49:24,965 --> 00:49:27,260 1117 00:49:27,260 --> 00:49:30,120 >> Tagapagsalita 1: At ngayon, Deep Mga iniisip sa pamamagitan ng Daven Farnham. 1118 00:49:30,120 --> 00:49:34,055 1119 00:49:34,055 --> 00:49:34,780 Hash talahanayan. 1120 00:49:34,780 --> 00:49:37,180 1121 00:49:37,180 --> 00:49:38,402 >> [Tawa] 1122 00:49:38,402 --> 00:49:38,902