1 00:00:00,000 --> 00:00:00,500 2 00:00:00,500 --> 00:00:10,960 [Musika nagpe-play] 3 00:00:10,960 --> 00:00:12,960 Roger ZURAWICKI: Hi, ang aking pangalan ay Roger Zurawicki, 4 00:00:12,960 --> 00:00:16,410 at ako ay sumasaklaw sa ang CS50 Hukay ng seminar. 5 00:00:16,410 --> 00:00:21,520 Hukay ay isang bagong framework nakatuon sa mga bagong uri ng web, 6 00:00:21,520 --> 00:00:25,220 hindi gumagawa ng PHP mga kahilingan -balik uri 7 00:00:25,220 --> 00:00:29,070 ng web nakita natin sa PHPP set, ngunit ang mas dynamic ang JavaScript 8 00:00:29,070 --> 00:00:31,370 mga bahagi ng web. 9 00:00:31,370 --> 00:00:36,260 Mga bagay Hukay maaaring gawin Kabilang Live na Pag-update 10 00:00:36,260 --> 00:00:42,380 at agad na pakikipag sa pagitan ng mga user ng parehong website. 11 00:00:42,380 --> 00:00:46,420 >> Para sa seminar, mayroon kaming -host na code sa aking GitHub. 12 00:00:46,420 --> 00:00:49,690 Maaari kang pumunta sa URL na ito at i-download ito. 13 00:00:49,690 --> 00:00:53,085 Kung alam mo kung paano gamitin Git, maaari mong mai-clone ang imbakan. 14 00:00:53,085 --> 00:00:55,460 Kung hindi mo alam kung paano gamitin Git o hindi gumamit ng GitHub, 15 00:00:55,460 --> 00:00:57,030 na ganap fine. 16 00:00:57,030 --> 00:01:00,480 Ipapakita ko sa iyo talagang mabilis kung paano namin maaaring pumunta sa GitHub, 17 00:01:00,480 --> 00:01:03,604 at mayroong isang opsyon upang -download ng zip doon. 18 00:01:03,604 --> 00:01:06,770 Sa sandaling i-download mo direktoryong ito, ikaw Maaari makapagsimula sa pag-play sa aming mga code. 19 00:01:06,770 --> 00:01:10,200 20 00:01:10,200 --> 00:01:13,190 >> Karagdagang impormasyon tungkol sa Hukay maaaring matagpuan sa meteor.com. 21 00:01:13,190 --> 00:01:16,580 Sa Seminar folder, ako talaga May ilang Hukay ng mga proyekto na maaari naming gamitin. 22 00:01:16,580 --> 00:01:20,380 23 00:01:20,380 --> 00:01:26,400 Isa sa mga folder na mayroon kami sa aming proyekto seminar ay ang todos app. 24 00:01:26,400 --> 00:01:28,780 Kaya kung pumunta ako sa ito ko, -install Hukay. 25 00:01:28,780 --> 00:01:35,690 Kaya upang patakbuhin ito, kailangan ko lang i-type Hukay, at Hukay ang mag-iinstall. 26 00:01:35,690 --> 00:01:38,310 Gaya ng nakikita mo, mayroon kaming upang tiyaking naka-install namin Hukay. 27 00:01:38,310 --> 00:01:40,562 Kaya ako lamang ng pagpunta sa patakbuhin ito nang isa pang beses 28 00:01:40,562 --> 00:01:42,520 upang matiyak na Hukay Naka-install nang maayos. 29 00:01:42,520 --> 00:01:46,370 30 00:01:46,370 --> 00:01:48,450 >> Habang mayroon akong Hukay -install, maaari kong ipakita sa iyo 31 00:01:48,450 --> 00:01:53,760 ang ilang mga live na demo ng Hukay ng site pagpunta live na ngayon sa internet. 32 00:01:53,760 --> 00:01:57,990 Mayroon akong isang demo ng aming mga app. 33 00:01:57,990 --> 00:02:00,740 Maaari mong i-access ito sa sumusunod na URL. 34 00:02:00,740 --> 00:02:06,350 Ito ang gagawin app na aming mayroon sa aming direktoryo seminar. 35 00:02:06,350 --> 00:02:09,940 Ang URL para sa ito ay rozu-rabbit.meteor.com. 36 00:02:09,940 --> 00:02:14,782 Makikita mo na Hukay ng habilin talaga -host ang iyong mga proyekto Hukay ng libre. 37 00:02:14,782 --> 00:02:17,490 At sa dulo ng mga seminar, magagawa mong gawin ito pati na rin. 38 00:02:17,490 --> 00:02:20,550 39 00:02:20,550 --> 00:02:22,160 >> Ito ay isang gawin listahan ng app. 40 00:02:22,160 --> 00:02:27,740 At maaari mong mag-sign in, lumikha ng mga account, at magdagdag ng mga gawain. 41 00:02:27,740 --> 00:02:30,020 Maaari kang lumikha ng isang account tulad nito. 42 00:02:30,020 --> 00:02:33,050 43 00:02:33,050 --> 00:02:35,850 At ngayon, sa sandaling mayroon kang isang account, maaari kang magdagdag ng mga gawain. 44 00:02:35,850 --> 00:02:42,780 Halimbawa, ang isa sa mga gawain ko maaaring kailangan upang pumunta kunin ang mga laundry. 45 00:02:42,780 --> 00:02:45,160 At kung ikaw ay nasa ito site sa online, ikaw ay 46 00:02:45,160 --> 00:02:49,790 talaga makita ang gawaing ito sa ang iyong computer sa real time. 47 00:02:49,790 --> 00:02:53,760 >> Maaari ko bang ipakita sa iyo ng isang mabilis na demo ng ito sa pamamagitan ng pagbubukas rozu-kuneho 48 00:02:53,760 --> 00:02:56,700 sa isa pang tab na may parehong URL. 49 00:02:56,700 --> 00:03:00,360 At nakita namin na ang parehong data ay lumalabas. 50 00:03:00,360 --> 00:03:02,240 Maaari din naming patakbuhin ito sa ng ibang browser. 51 00:03:02,240 --> 00:03:03,420 Sabihin ba akong magpatakbo nito sa Safari. 52 00:03:03,420 --> 00:03:04,720 Sa ganoong paraan hindi namin naka-log in. 53 00:03:04,720 --> 00:03:07,750 54 00:03:07,750 --> 00:03:11,060 Kaya mayroon kaming ang parehong Hukay app, at sa sandaling naglo-load ito, 55 00:03:11,060 --> 00:03:13,910 ipapakita namin makita ang parehong data ginawa namin sa unang isa. 56 00:03:13,910 --> 00:03:16,710 Gaya ng nakikita mo, hindi ako naka-log in dito. 57 00:03:16,710 --> 00:03:20,000 At kapag ang data tseke madla, ito-a-update sa lahat ng mga browser 58 00:03:20,000 --> 00:03:20,910 nang sabay-sabay. 59 00:03:20,910 --> 00:03:23,740 Ito ay isa sa mga tunay cool na tampok tungkol sa Hukay. 60 00:03:23,740 --> 00:03:27,700 Sa halos walang trabaho, mo magkaroon ng isang live na pag-update ng app 61 00:03:27,700 --> 00:03:31,240 na ang mga pagbabago sa lahat ng ng iyong device nang sabay-sabay. 62 00:03:31,240 --> 00:03:36,690 >> Kung check ko ang check box dito sa aking listahan na gawin, magkakaroon kami ng, 63 00:03:36,690 --> 00:03:41,230 sa aking iba pang mga browser ng Chrome, naka-check ang item na ito. 64 00:03:41,230 --> 00:03:42,605 At nangyari ito agad. 65 00:03:42,605 --> 00:03:46,340 66 00:03:46,340 --> 00:03:47,280 Lahat ng karapatan. 67 00:03:47,280 --> 00:03:52,730 Kaya mukhang Hukay pag-install ay handa na ngayon. 68 00:03:52,730 --> 00:03:57,000 Kaya ngayon sabihin bumalik sa todos app at patakbuhin ito nang lokal. 69 00:03:57,000 --> 00:04:01,599 >> Kung mayroon kang isang proyekto Hukay, maaari mong tumakbo lang ito gamit ang command Hukay. 70 00:04:01,599 --> 00:04:03,640 Sa sandaling gawin mo ito, Hukay ay gumawa ng ilang paghahanda 71 00:04:03,640 --> 00:04:06,120 upang tiyakin na ang lahat ng ang iyong code ay nasa tseke. 72 00:04:06,120 --> 00:04:12,440 At pagkatapos ay makikita ito sabihin sa iyo na ang proyekto ay handa na ilalabas. 73 00:04:12,440 --> 00:04:17,750 Maaaring kailangan mong payagan ang iyong firewall, kung bloke iyong computer. 74 00:04:17,750 --> 00:04:22,440 >> Kaya kung ano Hukay ay nagsasabi sa akin ngayon ay na ang sa website na ito 75 00:04:22,440 --> 00:04:26,100 lokal sa aking computer, maaari kong makita kung ano ang proyekto ay Hukay. 76 00:04:26,100 --> 00:04:29,290 Tandaan na sa ngayon, ang aking mga app Hindi ma-access sa internet. 77 00:04:29,290 --> 00:04:35,170 Tatalakayin natin kung paano upang dalhin ang iyong Hukay app na may live na site ng kaunti sa ibang pagkakataon. 78 00:04:35,170 --> 00:04:40,510 Kaya ako lamang ng pagpunta sa kopyahin ito URL ngayon at pumunta sa Google Chrome. 79 00:04:40,510 --> 00:04:42,600 >> At ito ay ang gawin ilista mula sa halimbawa. 80 00:04:42,600 --> 00:04:46,080 Maaari mong makita ang mga ito ipinatupad ang ilang higit pang mga tampok dito. 81 00:04:46,080 --> 00:04:49,210 Mayroon kaming iba't ibang mga tab, namin magkaroon ng parehong mga tampok ng account, 82 00:04:49,210 --> 00:04:52,141 at maaari naming magdagdag ng mga bagong listahan. 83 00:04:52,141 --> 00:04:54,140 Ngayon, isa sa mga tunay magaling na tampok tungkol sa Hukay 84 00:04:54,140 --> 00:04:57,450 ay maaari hindi lamang ito gumana sa iyong web browser, 85 00:04:57,450 --> 00:05:00,030 ngunit maaari ka ring lumikha katutubong iPhone at Android 86 00:05:00,030 --> 00:05:02,990 apps sa pamamagitan ng isang tool na tinatawag na PhoneGap. 87 00:05:02,990 --> 00:05:06,740 >> Kaya ang ilang mga proyekto ay darating pre-configure para sa pagpapatakbo 88 00:05:06,740 --> 00:05:08,700 sa iOS, tulad nito todos app. 89 00:05:08,700 --> 00:05:14,780 Kaya lahat ng kailangan kong gawin upang patakbuhin ito sa iOS ay nagta-type Hukay, patakbuhin, at pagkatapos ay iOS. 90 00:05:14,780 --> 00:05:17,540 At kapag gagawin ko na, Hukay ay maghanda muli ang package. 91 00:05:17,540 --> 00:05:21,670 At pagkatapos, sa sandaling handa na ito, ipapakita ito -load ang iOS simulator sa aking utos. 92 00:05:21,670 --> 00:05:24,745 Tandaan maaari mo lamang magpatakbo ng iOS apps kung mayroon kang isang Mac computer. 93 00:05:24,745 --> 00:05:27,650 94 00:05:27,650 --> 00:05:30,730 Maaari mong patakbuhin ang iyong mga app sa Android sa lahat ng platform. 95 00:05:30,730 --> 00:05:34,070 96 00:05:34,070 --> 00:05:38,290 >> Maaari mong gawin ngayon makita na ang aking iPhone simulator ay dumating up sa aking screen. 97 00:05:38,290 --> 00:05:40,370 At sa ilang sandali lamang, Makikita ito load ng app. 98 00:05:40,370 --> 00:05:46,070 99 00:05:46,070 --> 00:05:48,490 Kung ginawa namin ito ng kaunti lamang mas maliit upang magkasya sa screen, 100 00:05:48,490 --> 00:05:50,780 nakikita namin na mayroon kami sa aming mga iPhone app. 101 00:05:50,780 --> 00:05:53,220 At kaya lang hindi namin makakuha ng nalilito, gumawa ng ipaalam 102 00:05:53,220 --> 00:05:59,790 Tiyaking hindi namin sa parehong website, ang mga lokal na host 3000. 103 00:05:59,790 --> 00:06:03,490 >> Kaya dito mismo ay isang halimbawa ng Hukay ng app Mayroon akong, 104 00:06:03,490 --> 00:06:08,770 ang todos app, tumatakbo sa parehong mga isang telepono at sa isang web browser. 105 00:06:08,770 --> 00:06:10,770 At kapag binago ko ang mga bagay-bagay sa web browser, 106 00:06:10,770 --> 00:06:12,675 ito agad ang papunta sa telepono. 107 00:06:12,675 --> 00:06:16,500 At maaari ko bang tanggalin ang isang bagay sa telepono, at ito ang mga pagbabago sa web browser. 108 00:06:16,500 --> 00:06:21,050 >> Ngayon, normal na lumikha ng mga native telepono app para sa iOS o Android, 109 00:06:21,050 --> 00:06:26,090 kailangan mong malaman alinman sa Java o Layunin ng teknolohiya C. Ang paggamit Hukay 110 00:06:26,090 --> 00:06:29,240 upang payagan ang JavaScript upang tumakbo bilang sa iyong app ay tinatawag na PhoneGap. 111 00:06:29,240 --> 00:06:31,320 Ano ang iyong app tunay ay ay isang web browser. 112 00:06:31,320 --> 00:06:34,500 At Hukay humahawak ng lahat ang nakakalito bahagi kasangkot 113 00:06:34,500 --> 00:06:39,820 para sa pagdadala na web browser upang iyong iPhone o ang iyong Android device. 114 00:06:39,820 --> 00:06:42,210 Maaari mong makita na ang user interface ay makinis, 115 00:06:42,210 --> 00:06:45,290 at mukha itong at pakiramdam napaka tulad ng isang native na app. 116 00:06:45,290 --> 00:06:48,620 Abisuhan na kung pumunta ako sa bahay screen na ngayon, kumuha din ako ng isang icon. 117 00:06:48,620 --> 00:06:50,880 Ito ay hindi isang website tulad ng gusto mong makita sa Safari. 118 00:06:50,880 --> 00:06:51,860 Ito ay sarili nitong app. 119 00:06:51,860 --> 00:06:54,130 Maaari mong i-install at tanggalin ito kung gusto mo. 120 00:06:54,130 --> 00:06:59,500 121 00:06:59,500 --> 00:07:04,436 >> Maaari Panandalian naming ipakita sa iyo kung ano ang code para sa ganitong uri ng todos kamukha app. 122 00:07:04,436 --> 00:07:08,260 Kung tumingin ka sa todos folder, makikita mo ang maraming mga folder. 123 00:07:08,260 --> 00:07:11,440 Ngunit sa kabuuan ng seminar, kami ay 124 00:07:11,440 --> 00:07:14,780 maunawaan kung ano ang bawat folder ay ginagamit para sa. 125 00:07:14,780 --> 00:07:17,830 Sabihin pumunta sa terminal kaya namin Maaari makita ang mga file ng kaunti mas mahusay. 126 00:07:17,830 --> 00:07:20,410 >> Pupunta ako sa pindutin ang Control C upang itigil ang server, 127 00:07:20,410 --> 00:07:22,770 at ngayon ako pabalik sa todos app. 128 00:07:22,770 --> 00:07:26,660 Mayroon akong iba't-ibang mga folder dito, tulad ng sa folder ng kliyente, ang folder ng server. 129 00:07:26,660 --> 00:07:30,500 At mga folder na ibig sabihin lang na lahat ng bagay sa folder ng kliyente 130 00:07:30,500 --> 00:07:32,630 maipo-pinaandar sa iyong web browser. 131 00:07:32,630 --> 00:07:35,530 Lahat sa isang folder ng server maipo-pinaandar sa isang server. 132 00:07:35,530 --> 00:07:38,100 >> Ano ang gusto kong ituro out na kung ano ang namin ay may 133 00:07:38,100 --> 00:07:42,140 kapag nagkaroon kami sa aming pagtakbo ng telepono at ang aming mga web browser, ang mga mga kliyente. 134 00:07:42,140 --> 00:07:45,730 Ngunit kung ano ang tumatakbo sa isang terminal, iyon ang server. 135 00:07:45,730 --> 00:07:48,710 Mayroon kaming iba pang mga folder, tulad ng Lib, na code library, 136 00:07:48,710 --> 00:07:51,050 tulad ng iyong helper -andar, kung saan maaari kang 137 00:07:51,050 --> 00:07:53,710 gamitin sa parehong client at server. 138 00:07:53,710 --> 00:07:55,820 At pagkatapos ay mayroon kang isang pampublikong folder at mga mapagkukunan 139 00:07:55,820 --> 00:07:59,310 na kinakailangan para sa pagkuha ng folder ang iyong mga imahe at iba pang mga CSS load. 140 00:07:59,310 --> 00:08:02,630 141 00:08:02,630 --> 00:08:09,360 >> Kung na-install mo Hukay, kami ay magpatuloy sa tutorial para sa Hukay. 142 00:08:09,360 --> 00:08:12,790 Maaari kang pumunta sa URL na ito, meteor.com/install, 143 00:08:12,790 --> 00:08:17,990 upang makakuha ng sa linya ng command na ako Nagpakita sa iyo na i-install Hukay. 144 00:08:17,990 --> 00:08:20,240 Susubukan naming dumaan sa unang Ilang hakbang na ito upang makakuha ng mas mahusay na 145 00:08:20,240 --> 00:08:22,760 sa palagay tungkol sa kung paano i-install Hukay. 146 00:08:22,760 --> 00:08:28,000 >> Ngunit una, sa tingin ko ito mahalaga na sinusuri namin ng kaunting JavaScript. 147 00:08:28,000 --> 00:08:32,360 Upang ipakita sa iyo ang ilang mga halimbawa ng kung paano pwedeng isalin sa ating kaalaman C 148 00:08:32,360 --> 00:08:34,950 upang JavaScript, na hindi ko na Nilikha ang ilang halimbawa. 149 00:08:34,950 --> 00:08:36,940 Ang mga ito sa direktoryo js. 150 00:08:36,940 --> 00:08:41,750 Kaya kung sa folder mo ang mga seminar tumingin, mayroong isang folder na tinatawag na js. 151 00:08:41,750 --> 00:08:44,540 At in dito, mayroon kaming ilang mga halimbawa. 152 00:08:44,540 --> 00:08:50,120 >> Ay buksan ang unang Hayaan Halimbawa at makita nang masyadong mabilis. 153 00:08:50,120 --> 00:08:53,980 Kung ano ang nakikita namin ay ang iyong karaniwang kumusta na utos mundo. 154 00:08:53,980 --> 00:08:56,520 Napansin mo sa C na Mayroon pa masyadong ng ilang linya. 155 00:08:56,520 --> 00:09:00,490 At bilang alam CS50 mga mag-aaral, kailangan namin ng isang pangunahing pag-andar, 156 00:09:00,490 --> 00:09:05,730 at mayroon kaming upang isama ang karaniwang I / O library upang tawagan printf. 157 00:09:05,730 --> 00:09:09,320 >> Tingnan natin kung paano ikinukumpara ang JavaScript Hayaan. 158 00:09:09,320 --> 00:09:11,560 Pupunta ako upang buksan ex1.js. 159 00:09:11,560 --> 00:09:14,650 Nagkomento out kung ano ang C code magiging ganito ang hitsura, 160 00:09:14,650 --> 00:09:17,550 at ang linya sa ibaba ay lahat Kailangan mong patakbuhin sa Node. 161 00:09:17,550 --> 00:09:20,452 Hindi mo kailangan ng isang pangunahing pag-andar, mo Hindi kailangang isama ang anumang mga file, 162 00:09:20,452 --> 00:09:21,660 at hindi mo na kailangan upang bumalik. 163 00:09:21,660 --> 00:09:23,810 Tawagan mo lang console.log. 164 00:09:23,810 --> 00:09:26,370 Ito ang katumbas ng iyong printf. 165 00:09:26,370 --> 00:09:29,310 >> At madadala ang parehong argumento printf ginagawa. 166 00:09:29,310 --> 00:09:33,870 At upang patakbuhin ito, sa halip na tumatakbo ang gumawa ex1, 167 00:09:33,870 --> 00:09:38,930 Gusto mong tawagin lang Node ex1.js. 168 00:09:38,930 --> 00:09:41,830 Isulat mo Node at pagkatapos ay ang file, at maipo-tumakbo. 169 00:09:41,830 --> 00:09:43,580 Hindi nito ma-pinagsama-sama. 170 00:09:43,580 --> 00:09:45,970 JavaScript ay isang kahulugan ng wika. 171 00:09:45,970 --> 00:09:49,150 Kaya ito ay hindi kailangang maging Pinagsama-sama bago ito tumakbo. 172 00:09:49,150 --> 00:09:53,450 Kung Nais kong patakbuhin ang ex1.c, Kailangan ko bang gumawa muna ito, 173 00:09:53,450 --> 00:09:59,160 at pagkatapos ay maaari kong patakbuhin ang executable upang makakuha ng parehong resulta. 174 00:09:59,160 --> 00:10:02,460 >> Ng mabilis na masakop ang ilan Hayaan iba pang mga konsepto JavaScript. 175 00:10:02,460 --> 00:10:04,490 Tingnan natin ang halimbawa ng dalawang Hayaan. 176 00:10:04,490 --> 00:10:14,690 Sa ex2.js, sa ex2.c, kaya namin makita na mayroon kaming ilang code. 177 00:10:14,690 --> 00:10:16,550 Hayaan akong mabilis na pumunta sa isang mas mahusay na editor ng teksto 178 00:10:16,550 --> 00:10:18,400 na ipapakita ang mga mga bagong linya ng mas mahusay ng kaunti. 179 00:10:18,400 --> 00:10:21,760 180 00:10:21,760 --> 00:10:22,380 Lahat ng karapatan. 181 00:10:22,380 --> 00:10:24,190 Narito mayroon kaming Halimbawa 2.c. 182 00:10:24,190 --> 00:10:27,360 Narito mayroon kaming iba't ibang mga uri na namin ang pag-print out. 183 00:10:27,360 --> 00:10:30,880 At bilang alam namin, printf ay tumatagal ng iba't ibang bahagdan argumento 184 00:10:30,880 --> 00:10:34,050 i-access ang iba't ibang mga piraso ng data. 185 00:10:34,050 --> 00:10:36,840 Kung gusto naming i-print isang string, tinatawag naming% s. 186 00:10:36,840 --> 00:10:40,390 Kung gusto naming tumawag sa isang Lumulutang bilang punto, na tinatawag naming% f. 187 00:10:40,390 --> 00:10:45,810 At walang madaling paraan upang tumawag sa isang Boolean sa pamamagitan nito tama o mali halaga. 188 00:10:45,810 --> 00:10:50,760 Ngunit kung gumamit ka ng% d, maaari kang makakuha ng isang 0 o 1 para sa mga maling at totoo. 189 00:10:50,760 --> 00:10:53,270 >> JavaScript ay isang bit nicer para sa amin. 190 00:10:53,270 --> 00:10:57,740 Sa JavaScript, tingnan natin ang ilang ipaalam pagkakaiba na mayroon kami sa file na ito. 191 00:10:57,740 --> 00:11:05,790 Una, napansin mo na sa C na mayroon kami upang simulan ang bawat variable sa isang uri. 192 00:11:05,790 --> 00:11:06,940 S ay isang pansamantalang trabaho star. 193 00:11:06,940 --> 00:11:08,930 Ito ay isang string, at ito Hindi maaaring anumang iba pang uri. 194 00:11:08,930 --> 00:11:10,450 N ay isang float. 195 00:11:10,450 --> 00:11:11,780 B ay isang Bool. 196 00:11:11,780 --> 00:11:14,220 >> Ngunit sa JavaScript, may mga dynamic na uri. 197 00:11:14,220 --> 00:11:16,400 Nangangahulugan iyon na hindi mo gusto kailangang sabihin sa JavaScript 198 00:11:16,400 --> 00:11:17,860 kung anong uri ang iyong mga variable ay magiging. 199 00:11:17,860 --> 00:11:22,730 Ikaw sabihin lang var para sa variable, ang pangalan ng variable, at pagkatapos ay ang halaga nito. 200 00:11:22,730 --> 00:11:24,690 Kaya maaaring maging isang var kahit ano talaga. 201 00:11:24,690 --> 00:11:25,640 Maaari itong maging isang string. 202 00:11:25,640 --> 00:11:27,300 Maaari itong maging isang lumulutang na numero punto. 203 00:11:27,300 --> 00:11:28,560 Maaari itong maging isang character. 204 00:11:28,560 --> 00:11:31,250 Maaari itong maging isang Boolean. 205 00:11:31,250 --> 00:11:34,380 At console log gumagana ng kaunti naiiba. 206 00:11:34,380 --> 00:11:37,340 Kung nais mong i-print isang numero, tumawag ka ng% d. 207 00:11:37,340 --> 00:11:41,740 Ngunit karamihan ng mga halaga ay maaaring maging naka-print bilang mga string lamang fine. 208 00:11:41,740 --> 00:11:46,220 >> Ni patakbuhin ito sa Node Hayaan upang makita kung ano ang mangyayari. 209 00:11:46,220 --> 00:11:51,880 Maaari ko bang tumawag sa Node ex2.js, at makuha namin printf 210 00:11:51,880 --> 00:11:56,870 kasama ang halaga ng CS50, N bilang ang mga lumulutang na numero punto, 211 00:11:56,870 --> 00:12:00,620 at pagkatapos ay b bilang ng Boolean -convert sa isang string totoo. 212 00:12:00,620 --> 00:12:03,830 Paano kung ginawa namin Halimbawa 2.c? 213 00:12:03,830 --> 00:12:09,630 Well, mayroon pa rin kaming ilang higit pa annoyances sa printf. 214 00:12:09,630 --> 00:12:13,110 Pansinin na ang mga lumulutang na tuldok numero ay dapat na-format nang tama, 215 00:12:13,110 --> 00:12:18,120 at na hindi ang Boolean maaari lamang ipapakita bilang totoo o hindi. 216 00:12:18,120 --> 00:12:18,620 Lahat ng karapatan. 217 00:12:18,620 --> 00:12:22,680 Ngayon tingnan natin ang halimbawa ng tatlong ipaalam. 218 00:12:22,680 --> 00:12:26,470 Sa halimbawang tatlong, kami ay nagpapakita ng kung paano mo maaaring gamitin ng isang para sa loop. 219 00:12:26,470 --> 00:12:27,630 Sa katunayan, ito ay napaka-simple. 220 00:12:27,630 --> 00:12:31,430 Isa sa mga magaling na mga bagay tungkol sa Ang JavaScript ay na ito ay batay C. 221 00:12:31,430 --> 00:12:33,920 Ay nangangahulugan na ang marami sa iyong mga code ang magiging hitsura halos katulad na 222 00:12:33,920 --> 00:12:36,490 at pakiramdam napaka halos parehong. 223 00:12:36,490 --> 00:12:39,220 Sa isang para sa loop, ang tanging bagay na talagang nagbago dito 224 00:12:39,220 --> 00:12:41,840 ay sa halip ng int i, mayroon kaming var i. 225 00:12:41,840 --> 00:12:45,470 Maaari pa rin namin italaga ito upang mapahalagahan zero, tingnan na ito ay mas mababa sa limang, 226 00:12:45,470 --> 00:12:49,390 at dinagdagan ito ng isa sa ++ operator. 227 00:12:49,390 --> 00:12:56,286 Tinatawag namin console.log sa i, at na ay mag-print sa amin ng isang numero sa bawat linya. 228 00:12:56,286 --> 00:12:58,410 Tumakbo natin ito talagang mabilis Hayaan upang makita kung ano ang output ito. 229 00:12:58,410 --> 00:13:02,320 230 00:13:02,320 --> 00:13:03,880 Kumuha kami ng bagong numero sa bawat linya. 231 00:13:03,880 --> 00:13:06,920 Isa pang bagay na gusto ko sa iyo upang mapansin na may console.log 232 00:13:06,920 --> 00:13:09,960 Hindi mo na kailangang isulat backslash n para sa bagong linya. 233 00:13:09,960 --> 00:13:12,480 Console.log ay i-print lahat ng bagay sa sarili nitong linya. 234 00:13:12,480 --> 00:13:14,585 Iyon ay isang magaling na tampok na JavaScript ay nagbibigay sa amin. 235 00:13:14,585 --> 00:13:18,440 236 00:13:18,440 --> 00:13:22,600 >> Ngayon ay buksan ang halimbawa apat na ipaalam. 237 00:13:22,600 --> 00:13:28,710 Sa halimbawang apat, una sa C, pagtawag kami ng ilang mga pag-andar. 238 00:13:28,710 --> 00:13:33,290 Pansinin na mayroon kami na idedeklara ang -andar bago naming gamitin ang mga ito sa pangunahing. 239 00:13:33,290 --> 00:13:37,250 Kung nagkaroon kami pangunahing una at pagkatapos ay idagdag at pagkatapos ay mataas na, gumawa ng, 240 00:13:37,250 --> 00:13:39,540 kalatungin, o GCC ay bigyan kami ng isang error na nagsasabi 241 00:13:39,540 --> 00:13:41,060 na ito ay hindi alam kung ano ang mataas ay. 242 00:13:41,060 --> 00:13:42,780 Hindi nito alam kung ano ang pagdaragdag ay. 243 00:13:42,780 --> 00:13:46,480 Kaya sa C, mayroon kang maging picky tungkol sa pagkakasunud-sunod kung tawagan mo ang iyong mga pag-andar. 244 00:13:46,480 --> 00:13:49,220 245 00:13:49,220 --> 00:13:51,310 >> Tingnan natin kung paano maaari mong hayaan ang gawin ito sa JavaScript. 246 00:13:51,310 --> 00:13:56,060 Mayroon kaming iba't ibang mga file dahil doon ang ilang iba't ibang mga paraan upang magawa ito. 247 00:13:56,060 --> 00:13:58,950 Ang isang paraan ay medyo marami isang direktang pagsasalin. 248 00:13:58,950 --> 00:14:02,180 Dahil function sa C bumalik uri, at JavaScript 249 00:14:02,180 --> 00:14:05,210 hindi talaga alam o pag-aalaga tungkol sa kung ano type ka bumalik, 250 00:14:05,210 --> 00:14:06,300 hindi mo magsulat ng isang uri. 251 00:14:06,300 --> 00:14:08,100 Sa halip, kailangan mo lang isulat ang mga function, 252 00:14:08,100 --> 00:14:11,180 at lahat ng bagay ay medyo halos parehong tulad ng dati. 253 00:14:11,180 --> 00:14:14,630 >> Kapag mayroon kang isang variable, tulad ng sa magdagdag, kailangan lang namin na magsulat x at y. 254 00:14:14,630 --> 00:14:16,060 Hindi namin kailangang sabihin x ay isang int. 255 00:14:16,060 --> 00:14:18,940 Hindi namin kailangang sabihin y ay isang int. 256 00:14:18,940 --> 00:14:21,030 Bumalik kami na may parehong syntax. 257 00:14:21,030 --> 00:14:24,230 Para sa mataas, ipinahahayag namin ito sa gumana sa halip na walang bisa. 258 00:14:24,230 --> 00:14:26,110 Pansinin na kung ito ay walang bisa o hindi-walang bisa, 259 00:14:26,110 --> 00:14:28,380 lahat ng ito ay ang parehong pag-andar pa rin. 260 00:14:28,380 --> 00:14:32,440 At kami lang huwag maglagay anumang bagay na nasa panaklong, 261 00:14:32,440 --> 00:14:34,690 at mukha itong napaka halos tulad ng C code. 262 00:14:34,690 --> 00:14:37,460 At sa ibaba, maaari namin itong tumawag sa ibaba. 263 00:14:37,460 --> 00:14:42,730 >> Kung tinitingnan namin ang halimbawa 4b, napansin namin na nagbago ako ng ilang mga bagay. 264 00:14:42,730 --> 00:14:45,340 Ang tanging bagay na iyong binago ko talagang kahit na ang order. 265 00:14:45,340 --> 00:14:47,340 Mayroon kaming pareho -andar, ngunit ngayon ang mga ito ay 266 00:14:47,340 --> 00:14:52,200 ipinahayag pagkatapos na ginamit sa console.log at mataas sa linya 18, 19. 267 00:14:52,200 --> 00:14:54,740 Kung ginawa mo ito sa C, gawing gusto magtapon ng isang error. 268 00:14:54,740 --> 00:14:56,070 Narito, ito ay gumagana lamang multa. 269 00:14:56,070 --> 00:15:01,935 At maaari kong ipakita ito sa iyo sa pamamagitan ng Node sa 4b halimbawa pagtawag. 270 00:15:01,935 --> 00:15:05,350 271 00:15:05,350 --> 00:15:10,130 >> Ang isa pang paraan na maaari naming tumawag sa mga function ay sa pamamagitan ng pag-save ng pag-andar bilang variable. 272 00:15:10,130 --> 00:15:13,790 Tulad ng sinabi ko, sa isang variable ay maaaring magkaroon ng anumang uri. 273 00:15:13,790 --> 00:15:16,720 Ang isa sa mga uri ng variable ay maaaring magkaroon ay isang pag-andar. 274 00:15:16,720 --> 00:15:19,800 Kaya kung tiningnan mo ang halimbawa 4c, kung ano ang nabago ko 275 00:15:19,800 --> 00:15:24,320 dito ay var magdagdag sa halip na function ng add. 276 00:15:24,320 --> 00:15:26,807 At ngayon ay katumbas magdagdag ng isang function. 277 00:15:26,807 --> 00:15:28,140 Ang pagpapaandar na ito dito ay ang hindi kilalang. 278 00:15:28,140 --> 00:15:33,346 Ito ay walang pangalan, kaya lang -andar at pagkatapos ay ang mga panaklong. 279 00:15:33,346 --> 00:15:35,220 Ang syntax pagkatapos na ay hindi nagbabago, ngunit 280 00:15:35,220 --> 00:15:38,300 kailangang tandaan na mayroon kang isang variable na ikaw ay 281 00:15:38,300 --> 00:15:42,940 pag-iimbak ang pag-andar sa add, at isang variable na naka-iimbak ng sa mataas. 282 00:15:42,940 --> 00:15:47,620 >> Dahil magdagdag at mataas na mga variable ngayon at hindi na function, isang bagay na pagbabago. 283 00:15:47,620 --> 00:15:50,190 Ito ay isang pangkaraniwang bug nakikita ko sa Marami JavaScripts ng mga tao, 284 00:15:50,190 --> 00:15:52,410 at isang bagay na dapat tandaan. 285 00:15:52,410 --> 00:15:54,365 Kapag nagpatakbo ako ng ito, sabihin makita kung ano ang mangyayari. 286 00:15:54,365 --> 00:15:57,410 287 00:15:57,410 --> 00:15:58,230 Nakakatanggap ng error. 288 00:15:58,230 --> 00:16:01,000 Ay nagsasabing hindi natukoy sa puntong ito. 289 00:16:01,000 --> 00:16:03,520 Kaya ang sinasabi nito ito Hindi alam kung ano ang idagdag ay. 290 00:16:03,520 --> 00:16:06,010 >> Dahil ngayong magdagdag ay hindi isang function, idagdag ay isang variable. 291 00:16:06,010 --> 00:16:10,100 At hindi ka talagang ibinigay magdagdag ng halaga pa kapag ginagamit mo ito. 292 00:16:10,100 --> 00:16:14,460 Na pinagsasama-amin sa halimbawa 4d, kung saan kung nais mong gamitin ang variable tulad ng mga pag-andar, 293 00:16:14,460 --> 00:16:17,210 kailangan mo lamang upang matiyak na makuha ang halaga bago sila ginamit. 294 00:16:17,210 --> 00:16:20,200 295 00:16:20,200 --> 00:16:23,420 >> Ay lumipat sa halimbawa limang pagkatapos ay hayaan. 296 00:16:23,420 --> 00:16:27,390 Dito, makipag-usap namin tungkol sa structs sa C. Sa C, structs 297 00:16:27,390 --> 00:16:30,320 Mayroon ito nakapirming istraktura sa mga ito dahil mayroon kang idedeklara ito 298 00:16:30,320 --> 00:16:33,050 bago mo gamitin ito, at sasabihin mo ba akong magkaroon ng isang mag-aaral, 299 00:16:33,050 --> 00:16:36,645 at bawat mag-aaral ay may eksaktong ng isang pangalan, isang taon, isang kasarian. 300 00:16:36,645 --> 00:16:37,770 Ito ay upang magkaroon ng lahat ng ito. 301 00:16:37,770 --> 00:16:42,280 Hindi ito maaaring mayroon kang anumang iba pang mga halaga, at mayroon sila upang maging partikular na mga uri. 302 00:16:42,280 --> 00:16:47,540 >> Pagkatapos ay maaari naming simulan ang struct sa magaling syntax 303 00:16:47,540 --> 00:16:49,470 dahil alam ito sa pagkakasunud-sunod. 304 00:16:49,470 --> 00:16:51,460 Kaya alam nito na Roger ay isang pangalan. 305 00:16:51,460 --> 00:16:54,060 Alam nito na ang 2016 ay isang taon at M ay isang kasarian 306 00:16:54,060 --> 00:16:58,200 dahil sinabi namin ito sa ganitong listahan ay isang struct mag-aaral. 307 00:16:58,200 --> 00:17:01,607 At pagkatapos ay maaari mong i-print ito,-access s.name. 308 00:17:01,607 --> 00:17:03,690 Tingnan natin kung paano Hayaan ang gagawin namin -convert na sa JavaScript. 309 00:17:03,690 --> 00:17:06,400 310 00:17:06,400 --> 00:17:09,790 Pansinin na s ay isa na ngayong variable, at walang uri. 311 00:17:09,790 --> 00:17:10,920 Muli Ito ay isang var lamang. 312 00:17:10,920 --> 00:17:14,480 Dahil hindi mahalaga kung ang uri ng variable na ito ay isang pointer, 313 00:17:14,480 --> 00:17:17,440 ito ay isang struct, o anumang bagay. 314 00:17:17,440 --> 00:17:19,650 Mayroon kaming bahagyang naiiba syntax. 315 00:17:19,650 --> 00:17:21,890 Syntax na ito ay ang bagay na syntax. 316 00:17:21,890 --> 00:17:24,400 >> Maaaring nakita mo ito sa JSON. 317 00:17:24,400 --> 00:17:27,780 JSON talaga ang ibig sabihin ay ang JavaScript Bagay pagtatanda. 318 00:17:27,780 --> 00:17:31,240 Ito ay kung paano mo tukuyin ang bagay sa JavaScript. 319 00:17:31,240 --> 00:17:34,500 Mayroon kaming isang susi, na ang halaga, tulad ng pangalan. 320 00:17:34,500 --> 00:17:37,680 At bibigyan namin ito halaga sa ang iba pang mga bahagi ng colon. 321 00:17:37,680 --> 00:17:41,850 At isang bagay na dapat tandaan ay sa iyo hindi na kailangan upang magkaroon ng isang pangalan at isang taon 322 00:17:41,850 --> 00:17:42,980 at kasarian para sa isang bagay. 323 00:17:42,980 --> 00:17:44,570 Isang bagay na maaaring magkaroon ng mga halaga. 324 00:17:44,570 --> 00:17:46,920 Maaari itong magkaroon ng maraming hangga't gusto mo. 325 00:17:46,920 --> 00:17:50,375 >> Maaari naming gamitin ang mga bagay na ito sa loob lamang ng parehong paraan na gusto naming gamitin ang isang struct, s.name. 326 00:17:50,375 --> 00:17:53,810 327 00:17:53,810 --> 00:17:57,080 Maaari natin itong tumakbo nang mabilis talaga sa pamamagitan ng paggawa ng node halimbawa 5.c. 328 00:17:57,080 --> 00:18:00,320 329 00:18:00,320 --> 00:18:02,520 Hindi namin maaaring aktwal na magpatakbo ng isang C file sa Node. 330 00:18:02,520 --> 00:18:03,654 Hindi nito alam kung ano ang C ay. 331 00:18:03,654 --> 00:18:04,695 Alam lamang nito ang JavaScript. 332 00:18:04,695 --> 00:18:09,865 Kapag nagpatakbo namin ang ex5.js, makakakuha tayo ang halaga, na inaasahan namin. 333 00:18:09,865 --> 00:18:13,490 334 00:18:13,490 --> 00:18:15,980 >> Ay lumipat sa halimbawa anim Hayaan. 335 00:18:15,980 --> 00:18:18,930 Narito gusto ko lang makipag-usap ng kaunti kaunti pa tungkol sa array JavaScript 336 00:18:18,930 --> 00:18:20,930 dahil ang mga ito ay isang bit naiiba sa kung ano ang iyong 337 00:18:20,930 --> 00:18:26,940 ginagamit upang sa C. Ang mga array ay notated, hindi sa bracket tulad ng sa C, 338 00:18:26,940 --> 00:18:28,640 may kulot tirante, ngunit bracket. 339 00:18:28,640 --> 00:18:32,150 Maaari kang magkaroon ng isang walang laman na array, tulad ng arr sa apat na linya. 340 00:18:32,150 --> 00:18:34,680 Maaari kang magkaroon ng array may maramihang mga halaga. 341 00:18:34,680 --> 00:18:39,790 At i-access mo ang mga ito lamang ang parehong paraan sa C. 342 00:18:39,790 --> 00:18:42,990 >> Hanggang sa line pitong, ang lahat ng bagay Mukhang prangka. 343 00:18:42,990 --> 00:18:45,390 Isang menor de edad pagkakaiba ay dito sa linya 10. 344 00:18:45,390 --> 00:18:48,620 Ang paraan kang makakuha ng isang haba ng isang array ay isa lamang sa pamamagitan ng pagtawag .length. 345 00:18:48,620 --> 00:18:50,620 Isang array ay maaaring talagang maging tratuhin tulad ng isang bagay, 346 00:18:50,620 --> 00:18:54,960 at ang bagay na ito ay may haba ng ari-arian na tawagan ka upang makuha ang haba nito. 347 00:18:54,960 --> 00:18:57,350 Pansinin na ito ay iba sa C dahil sa C mo 348 00:18:57,350 --> 00:19:01,600 Mayroon bang malaman ang haba ng maagang ng panahon ang iyong mga bagay. 349 00:19:01,600 --> 00:19:04,700 >> Kaya isa pang magaling na bagay tungkol sa array ay na maaari mong magkaroon ng iba't ibang mga uri. 350 00:19:04,700 --> 00:19:07,470 Kung mayroon kang isang array sa C, may mga array ng isang tukoy na halaga, 351 00:19:07,470 --> 00:19:11,900 alinman sa isang struct pointer o sa kamay o [hindi marinig]. 352 00:19:11,900 --> 00:19:13,700 Dito, maaari kang magkaroon ng iba't ibang mga halaga. 353 00:19:13,700 --> 00:19:17,560 Ako unang nagkaroon ng mga lumulutang na numero punto, pagkatapos ng Boolean, pagkatapos ng isa pang integer. 354 00:19:17,560 --> 00:19:19,670 At talagang, maaari nilang baguhin ang mga uri ng masyadong. 355 00:19:19,670 --> 00:19:21,220 Tumingin sa 16 linya. 356 00:19:21,220 --> 00:19:26,760 Array ng dalawang Nagbabago mula sa pagiging isang numero, isang integer, na isang string. 357 00:19:26,760 --> 00:19:30,920 >> Ang isa pang magaling na bagay tungkol sa array ay dito sa 19 linya, ang mga ito ay walang katapusan na laki. 358 00:19:30,920 --> 00:19:35,900 Maaari mo lang sabihin na gusto ko ang isang bahagi ng isang daan elemento upang maging string legit. 359 00:19:35,900 --> 00:19:38,510 At ito ay hindi mukhang upang gawing kahulugan dahil ang array lamang 360 00:19:38,510 --> 00:19:41,080 May espasyo para sa mga tatlong elemento, kaya ang pagtatapos ay dapat na dalawa. 361 00:19:41,080 --> 00:19:44,800 Ngunit kapag ginawa mo ito, sabihin tingnan kung ano ang array tatlong nagiging. 362 00:19:44,800 --> 00:19:47,460 Gusto naming patakbuhin ito nang mabilis may node halimbawa six.js. 363 00:19:47,460 --> 00:19:49,990 364 00:19:49,990 --> 00:19:52,180 Makuha namin ito talagang mahaba array, at kung ano ang mangyayari 365 00:19:52,180 --> 00:19:55,100 ay mayroon kaming ang unang ilang mga elemento at pagkatapos ng isang bungkos ng mga patlang 366 00:19:55,100 --> 00:19:56,580 hanggang sa makuha namin ang aming mga string. 367 00:19:56,580 --> 00:19:58,580 JavaScript ay pumupuno sa array bilang ito kinakailangan. 368 00:19:58,580 --> 00:20:01,790 369 00:20:01,790 --> 00:20:05,420 >> Sabihin sa wakas pumunta sa aming huling halimbawa. 370 00:20:05,420 --> 00:20:08,180 Narito kami ay may isang listahan ng iba't ibang mga mag-aaral. 371 00:20:08,180 --> 00:20:11,350 Gusto kong makipag-usap ng kaunti bit tungkol sa ilang magaling na aspeto 372 00:20:11,350 --> 00:20:14,240 ng para sa loop sa JavaScript. 373 00:20:14,240 --> 00:20:17,500 Sa C, para sa mga loop ay uri ng limitado. 374 00:20:17,500 --> 00:20:21,490 Ang mga ito ay isang nakapirming istraktura, kung saan mo may isang variable, mayroon kang isang kondisyon, 375 00:20:21,490 --> 00:20:23,850 at pagkatapos mong gawin ang isang bagay sa dulo ng loop. 376 00:20:23,850 --> 00:20:27,560 At siyempre ito gumagana sa JavaScript, bilang nakita natin sa nakaraang mga halimbawa. 377 00:20:27,560 --> 00:20:31,030 Ngunit mayroon rin kaming nicer paraan ng paggawa nito sa JavaScript. 378 00:20:31,030 --> 00:20:33,870 Ito ay tinatawag na isang foreach loop. 379 00:20:33,870 --> 00:20:36,580 >> Paumanhin, sabihin bumalik sa halimbawa pitong dito. 380 00:20:36,580 --> 00:20:39,320 Maaari din naming sabihin seksyon ay isang listahan. 381 00:20:39,320 --> 00:20:43,250 Kaya ninyo ako araw-i o araw-index sa listahang iyon. 382 00:20:43,250 --> 00:20:46,255 Pagkatapos ay maaari naming makakuha ng mga mag-aaral sa pamamagitan ng seksyon ng i pagtawag lamang. 383 00:20:46,255 --> 00:20:50,690 Kaya ang lahat ng mga code ng pagtatakda ng i katumbas ng zero at pagtiyak na i 384 00:20:50,690 --> 00:20:54,420 Mas mababa kaysa sa haba at pagdaragdag ng isa upang i bawat oras, na 385 00:20:54,420 --> 00:21:00,220 ng sa iyo sinisigurado sa halip mabuti na may ganitong foreach loop. 386 00:21:00,220 --> 00:21:02,830 >> Hindi lamang gawin foreach loop magtrabaho sa listahan o array, 387 00:21:02,830 --> 00:21:06,130 sila rin magtrabaho sa mga bagay, kung saan maganda rin. 388 00:21:06,130 --> 00:21:10,240 Maaari mong makuha ang pangalan ng bawat ari-arian sa pamamagitan ng pagkuha lamang 389 00:21:10,240 --> 00:21:15,030 isang diksyunaryo o isang bagay, tulad ng mag-aaral, at pagkatapos lamang na sinasabi ninyo ako sa bawat key. 390 00:21:15,030 --> 00:21:18,920 Ang isang pangunahing ay magiging mga ari-arian, pangalan o bahay. 391 00:21:18,920 --> 00:21:22,870 Kaya kung ano ang nangyayari sa mangyari dito ay -print namin out muna ang pangalan at pagkatapos ay 392 00:21:22,870 --> 00:21:24,920 bahay ng bawat mag-aaral. 393 00:21:24,920 --> 00:21:29,170 >> Maaari ko bang patakbuhin ang sa Node talagang mabilis na ipakita sa iyo. 394 00:21:29,170 --> 00:21:35,510 Kumuha muna namin ang estilo C para sa loop, kung saan makuha namin ang bawat object pag-print. 395 00:21:35,510 --> 00:21:38,910 At pagkatapos ay mayroon kaming ang JavaScript estilo, kung saan maaari mong lamang 396 00:21:38,910 --> 00:21:41,510 i-print ang bawat key at pinahahalagahan nang paisa-isa. 397 00:21:41,510 --> 00:21:45,560 398 00:21:45,560 --> 00:21:47,050 >> Lahat ng karapatan. 399 00:21:47,050 --> 00:21:52,850 Ngayong na-sakop namin Node.js, sa palagay ko Ikinalulungkot handa na upang makapagsimula sa Hukay namin. 400 00:21:52,850 --> 00:21:56,070 Tulad ng sinabi ko, Hukay ginawang isang mahusay na trabaho ng pagsusulat ng ilang mga nalikha na na halimbawa 401 00:21:56,070 --> 00:22:00,600 para sa iyo na maaari mong galugarin sa pamamagitan ng ang tutorial na ito o sa seminar folder. 402 00:22:00,600 --> 00:22:03,750 Ngunit dito gusto kong simulan ang higit pa mula sa simula. 403 00:22:03,750 --> 00:22:06,810 >> Ay lumikha ng isang simpleng gawin application Hayaan. 404 00:22:06,810 --> 00:22:14,140 Ito ay uri ng batayan ng kung ano ang sa gawin application ay nagpakita ako sa iyo ng mas maaga ay. 405 00:22:14,140 --> 00:22:16,990 Sa tutorial na ito, ikaw ay makikita na mayroong 406 00:22:16,990 --> 00:22:20,180 isang command Hukay lumikha sa lumikha ng isang bagong proyekto Hukay. 407 00:22:20,180 --> 00:22:24,510 Kailangan mong tawagan ito upang upang magpatakbo ng Hukay ng mga proyekto dahil ito 408 00:22:24,510 --> 00:22:27,470 Tatakbo ang mga utos upang lumikha ng mga Hukay 409 00:22:27,470 --> 00:22:31,100 Ang mga file na kinakailangan para sa iyong proyekto. 410 00:22:31,100 --> 00:22:35,920 >> Kung pumunta ka sa terminal, kaya namin pumunta sa folder na tinatawag na unang hakbang. 411 00:22:35,920 --> 00:22:41,240 At hakbang isa ay sumasang-ayon sa ang unang hakbang sa tutorial. 412 00:22:41,240 --> 00:22:44,020 Abiso may mga folder, step isa, step ng dalawa, ang lahat ng mga paraan upang lima. 413 00:22:44,020 --> 00:22:47,835 At ang bawat isa ay nakaayon sa isang hakbang sa tutorial na ito. 414 00:22:47,835 --> 00:22:50,960 415 00:22:50,960 --> 00:22:52,780 Pupunta ako upang buksan ito sa aking text editor dito 416 00:22:52,780 --> 00:22:56,280 upang maaari naming makita ang isang bit ng kung ano ay nalikha. 417 00:22:56,280 --> 00:22:58,530 Napansin namin na may apat na pangunahing mga bahagi. 418 00:22:58,530 --> 00:23:01,170 Mayroong isang direktoryo Hukay, .meteor. 419 00:23:01,170 --> 00:23:03,180 At iyon na karaniwan mong Hindi kailangang pindutin. 420 00:23:03,180 --> 00:23:05,070 Hukay tumatagal ng pag-aalaga ng folder na iyon, at ito lamang 421 00:23:05,070 --> 00:23:08,640 tinitiyak na ang iyong proyekto ay gagana ng wasto. 422 00:23:08,640 --> 00:23:14,580 >> Mayroon din kaming tatlong mga file, isang file na HTML, isang JavaScript na file, at isang CSS file. 423 00:23:14,580 --> 00:23:18,670 Sa unang magsimula sa file na HTML Hayaan. 424 00:23:18,670 --> 00:23:21,310 Sa unang tingin, mukhang ito tulad ng isang normal na HTML na dokumento. 425 00:23:21,310 --> 00:23:23,490 Ngunit mapansin na mayroong ang ilang mga pagkakaiba. 426 00:23:23,490 --> 00:23:26,520 Ang isa, ito ay hindi tunay isang kumpletong dokumentong HTML. 427 00:23:26,520 --> 00:23:28,640 Kami ay nawawala ang mga tag na HTML. 428 00:23:28,640 --> 00:23:29,700 Ito ay normal. 429 00:23:29,700 --> 00:23:33,560 Sa Hukay, hindi ka inaasahan upang lumikha ng mga tag na HTML. 430 00:23:33,560 --> 00:23:35,260 Na ginawa para sa iyo. 431 00:23:35,260 --> 00:23:38,380 Gusto mong begin-- kung nais upang lumikha ng isang website, 432 00:23:38,380 --> 00:23:40,430 kailangan mo lang upang magsimula may ulo tag, 433 00:23:40,430 --> 00:23:43,510 tukuyin iyon, at pagkatapos ay tukuyin ang mga tag katawan. 434 00:23:43,510 --> 00:23:48,940 >> Ngunit kung napansin mo sa HTML file, mayroon kaming isang bagong tag. 435 00:23:48,940 --> 00:23:50,350 Mayroon kaming ang tag template. 436 00:23:50,350 --> 00:23:52,050 Ito ay hindi normal na HTML. 437 00:23:52,050 --> 00:23:55,300 Ito ay isang espesyal na bersyon ng HTML Hukay na ginagawang magagamit mo. 438 00:23:55,300 --> 00:23:57,660 Ito ay tinatawag na espasyo bar. 439 00:23:57,660 --> 00:24:00,980 Maaari mong tukuyin ang mga template ng kasing-baba mga module, uri ng tulad ng helper function, 440 00:24:00,980 --> 00:24:03,660 sa iyong C o JavaScript code. 441 00:24:03,660 --> 00:24:06,020 Ang template na ito gagawin na may pangalan ang tinatawag na gawain. 442 00:24:06,020 --> 00:24:10,520 At maaari mong makita dito mismo sa linya 13 na maaari mong tawagin ang mga template na ito. 443 00:24:10,520 --> 00:24:14,380 At kung ano Hukay ang gagawin lamang punan ang mga gawaing ito para sa iyo. 444 00:24:14,380 --> 00:24:17,540 445 00:24:17,540 --> 00:24:22,580 >> Isa pang bagay na maaari mong mapansin ay isang bit iba't-ibang ay ang bawat function. 446 00:24:22,580 --> 00:24:26,130 Ang bawat ay kukuha ng variable mga gawain at uri ng pumunta sa pamamagitan nito 447 00:24:26,130 --> 00:24:28,810 sa na foreach loop namin Nakita sa halimbawa pitong. 448 00:24:28,810 --> 00:24:34,200 Ang bawat ay maaaring tumagal ng isang diksyunaryo o isang listahan, isang object o isang listahan, 449 00:24:34,200 --> 00:24:38,820 at makikita ito pumunta lamang sa pamamagitan ng lahat ng mga mga halaga tulad ng isang foreach loop ginagawa. 450 00:24:38,820 --> 00:24:44,110 Kaya kung mayroon kaming ng grupo ng mga gawain, ito Tatawagan ng template sa bawat gawain. 451 00:24:44,110 --> 00:24:49,590 >> Magpatakbo ng mga proyekto Hukay Hayaan upang makita lamang na nangyari ito. 452 00:24:49,590 --> 00:24:53,260 Ba akong magpatakbo ng mga proyekto Hukay sa Hukay lamang o Hukay tumakbo. 453 00:24:53,260 --> 00:24:56,690 At ngayon Hukay ay kailangan lamang upang mabilis na ihanda ang proyekto, 454 00:24:56,690 --> 00:25:03,320 simulan ang database kung kinakailangan, at pagkatapos ay mag-post ang app nang lokal. 455 00:25:03,320 --> 00:25:07,200 Maaari naming pumunta sa aming web browser ngayon. 456 00:25:07,200 --> 00:25:10,215 At kami makita na namin magkaroon ng isang napaka-simpleng app. 457 00:25:10,215 --> 00:25:22,190 458 00:25:22,190 --> 00:25:29,130 Kaya kung ano ang nakita namin ipinakita up ay talagang ang unang hakbang, ang hakbang sa isang file. 459 00:25:29,130 --> 00:25:33,260 >> Ay magpatuloy sa hakbang ng dalawang dahil lamang Hayaan Sa tingin ko ito ay maglingkod ng parehong layunin. 460 00:25:33,260 --> 00:25:36,500 Lamang ako pupunta upang baguhin sa hakbang dalawang direktoryo 461 00:25:36,500 --> 00:25:39,550 at patakbuhin muli Hukay upang maaari naming makita ang template nagtrabaho lang namin na may. 462 00:25:39,550 --> 00:25:43,560 463 00:25:43,560 --> 00:25:45,730 Oo, isang tanong? 464 00:25:45,730 --> 00:25:49,724 >> Madla: Kung kami ay nakakakuha ng pahintulot tinanggihan, ay that-- kung ano ang ito 465 00:25:49,724 --> 00:25:50,390 na tinatawag na para sa? 466 00:25:50,390 --> 00:25:52,154 467 00:25:52,154 --> 00:25:54,070 Roger ZURAWICKI: Kung nagpapatakbo ka Hukay run, 468 00:25:54,070 --> 00:25:57,280 at mayroon kang pahintulot tinanggihan, ang ilan sa iyong mga file 469 00:25:57,280 --> 00:25:59,070 Maaaring hindi magkaroon ng karapatan na hanay ng pahintulot. 470 00:25:59,070 --> 00:26:03,970 Kaya kailangan mong suriin kung saan Naka-off ang mga pahintulot. 471 00:26:03,970 --> 00:26:06,030 Maaaring maging off sa iyong proyekto Hukay, 472 00:26:06,030 --> 00:26:08,550 o maaari silang maging off sa Hukay ng mga file ang kanilang mga sarili. 473 00:26:08,550 --> 00:26:13,742 >> Madla: Kung na-download ko ito ngayon lang mula sa iyong GitHub, pagkatapos ay kung ano ang dapat kong gawin 474 00:26:13,742 --> 00:26:16,110 [Hindi marinig]? 475 00:26:16,110 --> 00:26:20,110 >> Roger ZURAWICKI: Kung gusto mong upang matiyak na maaari mong i-access ito, 476 00:26:20,110 --> 00:26:21,450 mayroong isang command maaari mong patakbuhin. 477 00:26:21,450 --> 00:26:26,590 Hayaan akong mabilis na isulat ito kaya iba pang mga tao ang maaaring makakita nito. 478 00:26:26,590 --> 00:26:30,670 Pupunta ako upang magbukas ng bagong tab dito at pumunta sa aking seminar folder. 479 00:26:30,670 --> 00:26:33,500 480 00:26:33,500 --> 00:26:36,490 Chmod ay ang command upang baguhin ang mga pahintulot, 481 00:26:36,490 --> 00:26:40,060 at maaari mong sabihin r para gawin ito recursively para sa bawat file. 482 00:26:40,060 --> 00:26:46,040 At mga pahintulot, maaari mong subukang 0755 upang matiyak na ikaw ay mayroong ganap na access, 483 00:26:46,040 --> 00:26:47,820 at ang iba ay maaaring basahin. 484 00:26:47,820 --> 00:26:50,100 At kung nagpapatakbo ka lamang command na ito, ito ay gumawa ng mga 485 00:26:50,100 --> 00:26:55,800 Siguraduhin na ang mga pahintulot ay nasa -check para sa buong direktoryo. 486 00:26:55,800 --> 00:26:59,160 Maaaring ipakita sa iyo sa pagtakbo l-l ang mga pahintulot sa karagdagang detalye. 487 00:26:59,160 --> 00:27:01,290 Mukhang ito ang OK. 488 00:27:01,290 --> 00:27:03,900 >> Ano ang pinaka-Mahalaga ay na mayroon ka ng lahat ng tatlong mga 489 00:27:03,900 --> 00:27:06,610 rwx para sa lahat ng mga file sa ang direktoryo ng seminar. 490 00:27:06,610 --> 00:27:09,415 491 00:27:09,415 --> 00:27:11,330 Ibig na malutas ang problema? 492 00:27:11,330 --> 00:27:13,735 >> Madla: Sinasabi nito na nawawala operant [hindi marinig]. 493 00:27:13,735 --> 00:27:17,980 494 00:27:17,980 --> 00:27:18,740 [Hindi marinig] 495 00:27:18,740 --> 00:27:20,490 Roger ZURAWICKI: mo Mayroon upang matiyak na 496 00:27:20,490 --> 00:27:23,022 magkaroon ng isang tuldok sa dulo ng iyong command. 497 00:27:23,022 --> 00:27:23,938 Madla: [hindi marinig]. 498 00:27:23,938 --> 00:27:36,395 499 00:27:36,395 --> 00:27:37,520 Roger ZURAWICKI: Ang lahat ng karapatan. 500 00:27:37,520 --> 00:27:42,220 Ipaalam sa amin mabilis na bumalik sa lokal na host, ang app na mayroon kami. 501 00:27:42,220 --> 00:27:46,640 At makikita mo na mayroon kaming ilang mga gawain dito, tulad ng inaasahan. 502 00:27:46,640 --> 00:27:49,330 503 00:27:49,330 --> 00:27:51,990 Mayroon kaming isang bungkos ng CSS, na hindi mo kailangang mag-alala tungkol. 504 00:27:51,990 --> 00:27:53,740 Ang Hukay ng tutorial Binibigyan lang ito sa iyo 505 00:27:53,740 --> 00:27:58,010 upang gawin ang iyong gawin listahan hitsura ng bit nicer kaysa sa simpleng HTML. 506 00:27:58,010 --> 00:28:02,290 At mayroon kaming ang JavaScript na file, na Makikita ba akong mas detalyado ang isang bit sa ibang pagkakataon, 507 00:28:02,290 --> 00:28:04,272 ngunit nagbibigay lamang ito ang mga gawaing ito. 508 00:28:04,272 --> 00:28:04,980 Ito ay isang gawain. 509 00:28:04,980 --> 00:28:05,740 Ito ay gawain ng dalawang. 510 00:28:05,740 --> 00:28:06,590 Ito ay gawain tatlo. 511 00:28:06,590 --> 00:28:09,720 Kaya ito ay ang data Hukay Nagiging. 512 00:28:09,720 --> 00:28:15,590 >> Isa sa mga cool na bagay tungkol sa Hukay ay na ang mga pagbabago ay maaaring awtomatikong mangyari. 513 00:28:15,590 --> 00:28:18,990 Kung Nais kong baguhin ang pangalanan ng unang gawain, 514 00:28:18,990 --> 00:28:22,490 kaya ito ay sinasabi na ito ay hindi gawain ng isa, at ako i-save ito, 515 00:28:22,490 --> 00:28:26,370 pagkatapos ay kapag pumunta ako sa web browser, maaari mong i-refresh ito, 516 00:28:26,370 --> 00:28:30,861 at awtomatiko itong sabi ito ay hindi gawain ng isa. 517 00:28:30,861 --> 00:28:32,860 Maaari mong gawin ang parehong bagay sa alinman sa mga file na ito. 518 00:28:32,860 --> 00:28:37,940 Gumawa ng pagbabago, sa halip na gawin listahan, ako ay mayroon itong gawin sa aking listahan. 519 00:28:37,940 --> 00:28:40,980 >> At isang bagay na napansin mo lamang, na ako ay hindi kahit na mayroon upang i-refresh. 520 00:28:40,980 --> 00:28:43,960 Ang ideya ng nakakapreskong ay uri ng nalutas na para sa iyo na may Hukay. 521 00:28:43,960 --> 00:28:48,970 Sa tuwing nakita nito ang mga pagbabago na file, maglo-load ito ang mga pagbabago para sa iyo. 522 00:28:48,970 --> 00:28:53,110 Ito ay gumagana sa lahat ng mga file, kung ito ay HTML, CSS, o ang JavaScript. 523 00:28:53,110 --> 00:28:57,990 Upang ipakita sa iyo kung ano ang magiging hitsura ng app na ito tulad nang walang CSS, maaari ba akong mag-alis ng lahat ng ito. 524 00:28:57,990 --> 00:29:04,720 At kapag ito ay reload, mayroon ka na ngayong isang hindi bilang kaakit-akit na gawin listahan. 525 00:29:04,720 --> 00:29:06,370 Ilagay na nilalaman muli Hayaan. 526 00:29:06,370 --> 00:29:11,343 At tiyak na sapat, ito nagre-refresh, at ang aming CSS ay bumalik. 527 00:29:11,343 --> 00:29:11,843 Mahusay. 528 00:29:11,843 --> 00:29:15,700 529 00:29:15,700 --> 00:29:20,010 >> Maaari na ngayong ilipat sa kami kasama ang tutorial. 530 00:29:20,010 --> 00:29:23,360 Makipag-usap tungkol sa hakbang ng dalawa, ng mga template Hayaan. 531 00:29:23,360 --> 00:29:27,140 Ito ay kung ano ang nakita natin lamang may iba't ibang mga gawain. 532 00:29:27,140 --> 00:29:31,550 Hukay ay magpapaliwanag sa iyo kung ano ang mga template at kung paano gumagana ang logic na ito. 533 00:29:31,550 --> 00:29:34,760 Ngunit tumingin lang ng sa code upang ipaalam makita kung maaari naming magkaroon ng kahulugan out ng ito. 534 00:29:34,760 --> 00:29:38,030 535 00:29:38,030 --> 00:29:41,460 >> Sa napaka-simpleng application, tulad ng kung ano ang mayroon kami sa simpleng 536 00:29:41,460 --> 00:29:44,550 gawin, unang hakbang, step ng dalawa, na hakbang tatlo, apat na hakbang, hakbang sa limang, 537 00:29:44,550 --> 00:29:45,700 wala kaming anumang mga folder. 538 00:29:45,700 --> 00:29:47,533 Wala kaming server folder nabanggit ko. 539 00:29:47,533 --> 00:29:50,510 Wala kaming client folder na nabanggit. 540 00:29:50,510 --> 00:29:52,290 Kaya Hukay tatakbo ang lahat ng mga file. 541 00:29:52,290 --> 00:29:55,210 Ito magpatakbo sa parehong mga ito sa client, parehong sa server. 542 00:29:55,210 --> 00:29:58,840 >> At kung gusto mong bahagi ng iyong JavaScript code upang tumakbo lamang sa client, 543 00:29:58,840 --> 00:30:02,350 kailangan nila upang matiyak na mayroon kang isang kung pahayag, uri ng tulad ng kung ano ang 544 00:30:02,350 --> 00:30:04,890 mayroon kaming sa aming JavaScript file dito. 545 00:30:04,890 --> 00:30:08,010 Kaya Hukay, kapag lamang ito ang kliyente, pagkatapos ay ako 546 00:30:08,010 --> 00:30:12,355 gusto na tukuyin ang isang template helper na tinatawag na mga gawain. 547 00:30:12,355 --> 00:30:15,050 548 00:30:15,050 --> 00:30:19,260 Ano ang code na ito talaga Nagbibigay ba ay sinasabi nito na mayroong 549 00:30:19,260 --> 00:30:21,800 isang bagay na tinatawag na template Hukay na nagbibigay. 550 00:30:21,800 --> 00:30:23,270 At kami ay pagpunta sa magdagdag ng isang helper. 551 00:30:23,270 --> 00:30:27,680 Helpers ay ang mga gawaing ito, mga bagay tulad ng mga gawain. 552 00:30:27,680 --> 00:30:33,890 >> Makikita mo na kung pumunta namin pabalik sa HTML file, na tinatawag naming ang bawat isa sa mga gawain. 553 00:30:33,890 --> 00:30:35,750 Gawain ay hindi natukoy sa HTML. 554 00:30:35,750 --> 00:30:37,770 Ito ay tinukoy sa JavaScript. 555 00:30:37,770 --> 00:30:42,610 At kailangang Hukay malaman kung ano ang mga gawain ay kapag kami pumunta sa JavaScript dito. 556 00:30:42,610 --> 00:30:45,550 Gawain ay helper ito. 557 00:30:45,550 --> 00:30:49,830 Helper, maaari mong isipin ito bilang isang variable na template. 558 00:30:49,830 --> 00:30:51,000 At ano ang mga gawain gawin? 559 00:30:51,000 --> 00:30:53,580 Well, nagbabalik ito sa listahan ng mga halaga. 560 00:30:53,580 --> 00:30:56,750 Dahil ito ay isang listahan, maaari naming tawagan ang isa't sa loob nito. 561 00:30:56,750 --> 00:30:58,590 Kaya na ang dahilan kung bakit tinatawag naming ang bawat isa sa mga gawain. 562 00:30:58,590 --> 00:30:59,730 At ngayon ay mayroon kaming gawain. 563 00:30:59,730 --> 00:31:02,850 564 00:31:02,850 --> 00:31:03,990 >> Ano ang gawain gawin? 565 00:31:03,990 --> 00:31:07,740 Well, ito ay ang arrow dito matapos ang kulot tirante. 566 00:31:07,740 --> 00:31:09,130 Iyon ay nangangahulugang ang gawain ay isang template. 567 00:31:09,130 --> 00:31:11,100 Ito ay hindi isang lingkod, tulad ng kung ano ang nakita natin lamang. 568 00:31:11,100 --> 00:31:12,872 Ito ay isang template na tinukoy namin. 569 00:31:12,872 --> 00:31:14,080 At kung saan natukoy namin ito? 570 00:31:14,080 --> 00:31:16,950 Natukoy namin ito sa ibaba dito mismo. 571 00:31:16,950 --> 00:31:21,160 >> Lahat ng mga template na ito ay ay render isang item sa listahan, at ito ay tinatawag na teksto. 572 00:31:21,160 --> 00:31:24,160 Ngayon, mukhang may teksto helper ngunit ko makikita ipakita, mo 573 00:31:24,160 --> 00:31:26,610 na ito ay talagang pa rin isang miyembro ng data ng mga gawain. 574 00:31:26,610 --> 00:31:29,230 575 00:31:29,230 --> 00:31:33,670 Kapag tumawag ka sa bawat isa, ito ay pumupunta sa ang istraktura ng data nang kaunti. 576 00:31:33,670 --> 00:31:39,130 Tulad ng foreach loop, ito ngayon lamang ang hitsura sa unang elemento sa aming mga bagay. 577 00:31:39,130 --> 00:31:41,850 Nakakakita kami ng teksto na tinukoy dito sa aming object. 578 00:31:41,850 --> 00:31:45,350 Kaya Hukay ang smart upang malaman na kami ay pakikipag-usap tungkol sa tekstong ito, 579 00:31:45,350 --> 00:31:47,630 hindi ang helper na tinatawag na teksto. 580 00:31:47,630 --> 00:31:52,120 Ay nakakakuha Ito lang ang value ng teksto dito at ipapakita ito bilang HTML, 581 00:31:52,120 --> 00:31:55,475 at iyon ang kung paano maipatupad ang data mula sa JavaScript sa HTML. 582 00:31:55,475 --> 00:32:03,320 583 00:32:03,320 --> 00:32:07,030 >> Paglilipat sa bagaman, sa halimbawang ito matapang na namin ma-code ang mga halagang iyon. 584 00:32:07,030 --> 00:32:10,440 Hukay ang dalawang talaga maganda ang mga bagay para sa amin. 585 00:32:10,440 --> 00:32:15,050 Bukod sa live na pag-refresh na namin Nagpakita, namamahala rin ito sa aming database. 586 00:32:15,050 --> 00:32:18,750 Kung nagkaroon ka ng upang gumana sa PHP, kailangan mong i-configure ang phpMyAdmin. 587 00:32:18,750 --> 00:32:21,320 Ay nagkaroon ka ng upang siguraduhin na ang iyong mga talahanayan ay lahat sa tseke. 588 00:32:21,320 --> 00:32:24,760 Nagkaroon mong gawin ng maraming trabaho upang gawin Siguraduhin na ang iyong data ay naka-format ng tama, 589 00:32:24,760 --> 00:32:27,880 at PHP ay maaaring makipag-usap sa mga ito. 590 00:32:27,880 --> 00:32:30,170 >> Ngayon, Hukay ay gumagamit ng isang bagong tularan. 591 00:32:30,170 --> 00:32:32,310 Ito ay isang mas modernong paraan ng paghawak ng isang database. 592 00:32:32,310 --> 00:32:34,580 Ito ay isang teknolohiya na tinatawag na MongoDB. 593 00:32:34,580 --> 00:32:38,740 Tulad ng sa JavaScript, nakita namin na ito Hindi mahalaga kung anong uri nagkaroon ng data. 594 00:32:38,740 --> 00:32:39,640 Lahat ng var. 595 00:32:39,640 --> 00:32:40,570 Ito ay hindi isang charstar. 596 00:32:40,570 --> 00:32:40,930 Ito ay hindi isang int. 597 00:32:40,930 --> 00:32:41,970 Ito ay hindi isang struct. 598 00:32:41,970 --> 00:32:44,210 Ito ay var ito lamang, var iyon. 599 00:32:44,210 --> 00:32:46,320 >> Gumagana MongoDB uri ng sa parehong paraan. 600 00:32:46,320 --> 00:32:48,160 Wala kang tukuyin ang iyong mga talahanayan. 601 00:32:48,160 --> 00:32:50,860 Hindi mo na kailangang sabihin ng talahanayan May pangalan, na may isang int. 602 00:32:50,860 --> 00:32:54,710 Mayroon, hindi ko alam, isang dolyar, na isang decimal. 603 00:32:54,710 --> 00:32:58,360 Ito ay lamang ang mga bagay JavaScript, lahat ng mga vars, mahalagang. 604 00:32:58,360 --> 00:33:02,780 At ito ay isang talagang malakas paraan upang tularan ang iyong app. 605 00:33:02,780 --> 00:33:06,190 At iyon ang dahilan kung bakit Hukay tumatagal ng bentahe ng ito. 606 00:33:06,190 --> 00:33:11,080 >> Kung pumunta kami sa hakbang tatlo, tingnan natin kung ano ang nagbago. 607 00:33:11,080 --> 00:33:15,480 Kung tinitingnan namin ang mga todos HTML, hindi magkano. 608 00:33:15,480 --> 00:33:17,170 CSS ay hindi nababago. 609 00:33:17,170 --> 00:33:22,420 Ngunit ang maliit na pagbabago na nakikita namin sa HTML ay nagbago namin ang mga gawain kung paano ay tinukoy. 610 00:33:22,420 --> 00:33:23,800 Mga Gawain ay isang function ngayon. 611 00:33:23,800 --> 00:33:25,800 Nangangahulugan iyon na ang bawat oras na nais namin upang makakuha ng mga gawain, 612 00:33:25,800 --> 00:33:27,480 kami ay pagpunta upang patakbuhin ang function na ito. 613 00:33:27,480 --> 00:33:29,230 Hindi nito ibalik ang -andar bilang isang halaga. 614 00:33:29,230 --> 00:33:33,710 >> Hukay ang smart upang aktwal na patakbuhin ang -andar upang makita kung ano lumayas namin. 615 00:33:33,710 --> 00:33:36,650 At ito ay nagbalik bagay na ito na tinatawag na mga gawain. 616 00:33:36,650 --> 00:33:40,650 Nilinaw namin ang mga gawain sa linya ng isa, at ito ay isang Mongo koleksyon. 617 00:33:40,650 --> 00:33:43,170 Mongo ay nagre-refer sa ang database Hukay ng gumagamit, 618 00:33:43,170 --> 00:33:48,420 at ang bagong lamang ay nangangahulugan na gumawa ng ipaalam isang bagong koleksyon, tawagan ito gawain. 619 00:33:48,420 --> 00:33:53,540 Sa MySQL, ito ay magiging katumbas ng naghahanap ng talahanayan na tinatawag na mga gawain. 620 00:33:53,540 --> 00:33:56,350 Mongo ay may mga koleksyon, hindi table. 621 00:33:56,350 --> 00:34:00,100 Kaya ito lamang ang hitsura para sa mga gawain. 622 00:34:00,100 --> 00:34:04,820 >> Ngayon, template sa aming helper sa template, ang lahat ng 623 00:34:04,820 --> 00:34:08,380 dapat nating gawin upang makakuha ng lahat ng mga mga gawain ay ang function na ito, hanapin 624 00:34:08,380 --> 00:34:11,710 at walang laman suhay. 625 00:34:11,710 --> 00:34:14,150 Ito ay mas partikular na sa Mongo syntax. 626 00:34:14,150 --> 00:34:16,159 Mayroong maraming dokumentasyon sa online para sa kung paano 627 00:34:16,159 --> 00:34:19,360 maaari kang gumawa ng mahusay at talagang kapaki-pakinabang na mga query Mongo. 628 00:34:19,360 --> 00:34:25,560 Ngunit isang bagay tulad na ito ay mabuti sapat na para sa paghahanap lamang ang lahat ng data. 629 00:34:25,560 --> 00:34:30,100 >> Ngayon, isa sa mga isyu na maaari mong makita ay na aktwal na kami ay hindi kailanman magdagdag ng data. 630 00:34:30,100 --> 00:34:35,020 Kaya kung ano ang mangyayari kapag namin talaga tumakbo ang hakbang tatlo? 631 00:34:35,020 --> 00:34:37,550 Sabihin mabilis na pumunta sa hakbang tatlo at mapatakbo Hukay. 632 00:34:37,550 --> 00:34:42,870 633 00:34:42,870 --> 00:34:45,650 Pansinin na nagkaroon ako ng isa pang Hukay proyekto na tumatakbo sa ibang lugar, 634 00:34:45,650 --> 00:34:49,110 kaya Hukay ang hindi nagkagusto na. 635 00:34:49,110 --> 00:34:52,810 Lamang ako ng pagpunta sa mabilis na malapit sa ang iba pang mga Hukay gamit ang Control C, 636 00:34:52,810 --> 00:34:55,780 pumunta sa hakbang tatlo, at patakbuhin muli Hukay. 637 00:34:55,780 --> 00:35:01,070 638 00:35:01,070 --> 00:35:03,180 Pansinin ito ay nagsisimula MongoDB dahil MongoDB 639 00:35:03,180 --> 00:35:06,370 ay isang bahagi ng bawat proyekto Hukay. 640 00:35:06,370 --> 00:35:09,190 >> Kaya sinasabi nito na ang aking application ay may mga error. 641 00:35:09,190 --> 00:35:10,590 Iyon ay isang magaling na tampok Hukay May. 642 00:35:10,590 --> 00:35:13,700 Ginagawang siguraduhin na ang inyong HTML ay mahusay na napatotohanan. 643 00:35:13,700 --> 00:35:17,710 Ay mabilis na makita ang dahilan kung bakit ito ay maaaring maging Hayaan. 644 00:35:17,710 --> 00:35:26,110 Mukhang mayroon ko sinasadyang kinopya sa maling HTML code. 645 00:35:26,110 --> 00:35:30,610 Kung i-save ko ito ngayon, Hukay Awtomatikong i-restart ang server, 646 00:35:30,610 --> 00:35:34,650 at ngayon ang app ay tumatakbo tulad ng inaasahan. 647 00:35:34,650 --> 00:35:39,220 Pansinin na ayusin ito, maaari mo lamang tumakbo parehong file na HTML mula sa dalawang hakbang, 648 00:35:39,220 --> 00:35:40,380 kopyahin ito sa hakbang tatlo. 649 00:35:40,380 --> 00:35:43,290 650 00:35:43,290 --> 00:35:45,917 >> Maaari naming bumalik sa aming mga lokal na host. 651 00:35:45,917 --> 00:35:47,500 At ngayon nakita namin na mayroon kami sa aming gawin listahan. 652 00:35:47,500 --> 00:35:50,070 Mahusay, ngunit ito ay walang laman. 653 00:35:50,070 --> 00:35:54,210 Hindi kami talaga mayroon kayong mga mga gawain sa aming Mongo database. 654 00:35:54,210 --> 00:35:57,930 Kaya ipaalam makipag-usap tungkol sa isang ilang mga paraan na maaari naming gawin iyon. 655 00:35:57,930 --> 00:36:03,240 Kung pumunta namin pabalik sa terminal, namin maaari itong isara at magpatakbo ng Hukay ng Mongo. 656 00:36:03,240 --> 00:36:05,320 >> Kung pamilyar ka sa kung paano gumagana Hukay, 657 00:36:05,320 --> 00:36:14,100 ito talagang nagbibigay sa iyo ng access upang ang buong MongoDB para sa Hukay. 658 00:36:14,100 --> 00:36:17,570 Pansinin na mayroon ka upang patakbuhin ang Hukay muna para gumana ito. 659 00:36:17,570 --> 00:36:23,840 Kaya kung nagpatakbo ako ng ito sa isang bagong tab, ako makakabalik sa parehong directory. 660 00:36:23,840 --> 00:36:29,040 661 00:36:29,040 --> 00:36:32,570 At ngayon Hukay gumagana lamang fine. 662 00:36:32,570 --> 00:36:33,600 Ito ay isang prompt. 663 00:36:33,600 --> 00:36:36,350 664 00:36:36,350 --> 00:36:38,790 Hayaan akong gumawa ito ng kaunti Mas malaki upang maaari naming makita. 665 00:36:38,790 --> 00:36:41,550 Ang hitsura ng isang bit naiiba kaysa ito kung ano ang maaari mong gamitin sa iyo 666 00:36:41,550 --> 00:36:42,869 hindi talaga kailangan na gumamit ng Mongo. 667 00:36:42,869 --> 00:36:45,410 Ang buong punto ko dito ay sa gayon ay maaari mong gamitin ang JavaScript. 668 00:36:45,410 --> 00:36:48,250 Ngunit kung gusto mong malaman, ang Mongo API ay hindi 669 00:36:48,250 --> 00:36:50,730 gamitin ang SQL, ang Naka-istrakturang Wika Query. 670 00:36:50,730 --> 00:36:55,570 Ito ay gumagamit ng sarili nitong wika na mukhang ng maraming tulad ng JavaScript. 671 00:36:55,570 --> 00:37:00,520 Masyadong mabilis, maaari naming makita ang talahanayan sa pamamagitan ng db.tasks. 672 00:37:00,520 --> 00:37:08,940 At ito ay nagsasabi sa akin lumabas kung patatakbuhin namin mahanap, 673 00:37:08,940 --> 00:37:13,450 uri ng katulad ng kung ano namin ay may mga gamit Hukay, maaari naming i-load ang lahat ng mga elemento. 674 00:37:13,450 --> 00:37:17,330 Ang problema ay, hindi namin talaga mayroon kang anumang mga gawain na natukoy. 675 00:37:17,330 --> 00:37:20,600 Kaya hindi ito maaaring makakuha ng mga ito. 676 00:37:20,600 --> 00:37:22,130 >> Maaari naming isingit, bagaman. 677 00:37:22,130 --> 00:37:25,170 Upang maaari naming patakbuhin insert may insert command. 678 00:37:25,170 --> 00:37:29,140 At namin bigyan lang ito isang bagay, at kami lamang 679 00:37:29,140 --> 00:37:31,840 siguraduhin na ang format ay kung ano ang inaasahan namin. 680 00:37:31,840 --> 00:37:35,030 Kung itinuturing namin ang hakbang ng dalawang, Nakita namin na ang bawat gawain 681 00:37:35,030 --> 00:37:39,590 ay isang bagay na may teksto bilang ang susi at ang anumang 682 00:37:39,590 --> 00:37:41,640 iyong gawin ang item ay bilang isang variable. 683 00:37:41,640 --> 00:37:44,680 Kaya maaari naming gawin ang isang bagay dito. 684 00:37:44,680 --> 00:37:50,160 >> Maaari kaming magkaroon ito ay ipasok ang isang gawain tinatawag dumating ko mula sa Mongo. 685 00:37:50,160 --> 00:37:52,570 At pindutin ang Enter namin, at ito ay tumatakbo. 686 00:37:52,570 --> 00:37:56,900 Maaari naming patakbuhin mahanap muli, at kami makita na mayroong isang bagay dito. 687 00:37:56,900 --> 00:38:01,810 Mongo nagtatalaga ito ng isang ID, na sa iyo hindi talaga kailangang mag-alala tungkol sa. 688 00:38:01,810 --> 00:38:06,690 Ano ang mahalaga sa iyo ay ang data ilagay mo sa, ay ang data na lumabas. 689 00:38:06,690 --> 00:38:10,500 >> Sabihin bumalik sa aming website, at hey, load aming mga gawain. 690 00:38:10,500 --> 00:38:13,987 At maaari mong makita na dahil Hukay ay lubos na smart 691 00:38:13,987 --> 00:38:16,570 at palaging nagre-refresh para sa iyo, ako Hindi na kailangang pindutin ang pahina. 692 00:38:16,570 --> 00:38:19,160 Awtomatiko itong load. 693 00:38:19,160 --> 00:38:23,520 >> Magpatakbo ng ilang mga code sa Hayaan Bagaman ang JavaScript upang magawa ito. 694 00:38:23,520 --> 00:38:26,120 Tulad mayroon kami Node sa likod magtapos upang maisagawa ang JavaScript, 695 00:38:26,120 --> 00:38:29,280 Maaari rin naming magpatakbo ng JavaScript nang direkta sa aming mga browser. 696 00:38:29,280 --> 00:38:31,970 Maaari mong gawin ito sa pamamagitan ng isang tampok tinatawag Siyasatin ang Elemento. 697 00:38:31,970 --> 00:38:34,210 Kung karapatan ako mag-click sa isang na seksyon ng pahina, 698 00:38:34,210 --> 00:38:36,730 mayroong isang opsyon tinatawag Siyasatin ang Elemento. 699 00:38:36,730 --> 00:38:38,840 Kung nagpapatakbo ka ng isang browser tulad ng Safari, mo 700 00:38:38,840 --> 00:38:45,430 Maaaring kailanganin mong paganahin ang inyong developer mga tool bago mo makuha ang tampok na ito. 701 00:38:45,430 --> 00:38:46,930 >> Ano ang mahalaga sa kami tungkol ay ang console. 702 00:38:46,930 --> 00:38:48,930 Kaya magkakaroon kami pumunta lamang sa console sa ibaba. 703 00:38:48,930 --> 00:38:52,110 704 00:38:52,110 --> 00:38:55,970 Ngayon ay maaari naming patakbuhin ang anumang JavaScript dito, tulad ng JavaScript 705 00:38:55,970 --> 00:38:58,860 Nagpakita ang mga file ko sa js halimbawa. 706 00:38:58,860 --> 00:39:02,040 Ngunit tingnan natin ang mga gawain ngayon hayaan. 707 00:39:02,040 --> 00:39:04,955 Maaari naming patakbuhin ang aming mga command. 708 00:39:04,955 --> 00:39:07,830 At sana ay magagawa ko magagawang ito medyo mas malaki upang maaari naming makita ang lahat. 709 00:39:07,830 --> 00:39:14,390 710 00:39:14,390 --> 00:39:18,450 >> Kung nagpapatakbo tasks.find namin, at ikaw ay makita na ito ay ang eksaktong parehong code 711 00:39:18,450 --> 00:39:24,840 na ang JavaScript ginagamit ng file sa hakbang tatlo, ito task.find. 712 00:39:24,840 --> 00:39:29,100 Maaari naming patakbuhin ang parehong bagay, at ngayon makuha namin ang ilang mga kakatwang mga bagay-bagay. 713 00:39:29,100 --> 00:39:31,050 Paano talaga namin makuha ang data? 714 00:39:31,050 --> 00:39:34,860 Well, mayroon kaming upang mapatakbo ito command na tinatawag na makuha ang. 715 00:39:34,860 --> 00:39:37,150 >> Ito ay napaka-kapaki-pakinabang para sa pag-debug. 716 00:39:37,150 --> 00:39:41,000 Ano makuha mo dito ay isang cursor, at ito ay 717 00:39:41,000 --> 00:39:44,890 gandang paraan Hukay ay -optimize na data fetching. 718 00:39:44,890 --> 00:39:48,270 Cursor na ito ay may lahat ng mga tampok para sa live na pag-update at i-refresh ang pahina 719 00:39:48,270 --> 00:39:49,650 kapag ang isang bagay ay nagbago. 720 00:39:49,650 --> 00:39:51,280 Ngunit hindi ito makakuha amin ang data. 721 00:39:51,280 --> 00:39:52,720 Maaari naming makuha ang data sa pamamagitan ng fetch. 722 00:39:52,720 --> 00:39:56,880 At nakita mo ang mayroon kaming isang bagay, at ito ay katulad lamang ng kung ano ang namin ay may sa Mongo, 723 00:39:56,880 --> 00:40:00,040 may isang ID at ang teksto ilalagay namin sa. 724 00:40:00,040 --> 00:40:04,200 >> Kaya paano namin magpasok ng isang item sa Hukay? 725 00:40:04,200 --> 00:40:07,250 Well, mayroon lang namin gawain. 726 00:40:07,250 --> 00:40:09,990 At pagkatapos ay maaari naming patakbuhin ang parehong insert utos, 727 00:40:09,990 --> 00:40:17,520 pagbibigay ng isang diksyunaryo o isang bagay na na may katulad na format, teksto 728 00:40:17,520 --> 00:40:22,340 at pagkatapos ay ko mula sa console. 729 00:40:22,340 --> 00:40:27,240 Tingnan sa itaas dahil kapag ako ay gawin ito, ito ay nagpapakita up sa website 730 00:40:27,240 --> 00:40:29,660 awtomatiko. 731 00:40:29,660 --> 00:40:33,291 >> Pansinin na maaari kang maglagay ng kahit ano Gusto mo sa mga item na ito. 732 00:40:33,291 --> 00:40:35,040 Hindi nito kailangang magkaroon ng isang nakapirming istraktura. 733 00:40:35,040 --> 00:40:39,790 Maaari akong magkaroon ng isang katumbas ng numero ng tatlong at b katumbas ng false. 734 00:40:39,790 --> 00:40:41,600 At lahat ng mga gawa. 735 00:40:41,600 --> 00:40:46,000 Maaari ko bang kahit piliing hindi magsama ng teksto sa lahat. 736 00:40:46,000 --> 00:40:48,320 Lamang na ito ay hindi inirerekomenda bagaman dahil pagkatapos Hukay 737 00:40:48,320 --> 00:40:50,920 Hindi alam kung ano ang ipapakita. 738 00:40:50,920 --> 00:40:53,110 Ngunit sa bawat kaso, namin makakuha ng isang ID, at iyon ang 739 00:40:53,110 --> 00:40:54,785 ang ID ng bagay na maaari mong gamitin. 740 00:40:54,785 --> 00:41:01,120 741 00:41:01,120 --> 00:41:03,280 >> Habang patuloy kami sa basa-apat na hakbang at limang, 742 00:41:03,280 --> 00:41:06,870 ang tutorial ay magpapakita sa iyo paraan na maaari kang lumikha ng mga elemento ng UI paggamit 743 00:41:06,870 --> 00:41:13,130 ang alam mo na HTML lumikha ng iba't ibang mga gawain. 744 00:41:13,130 --> 00:41:15,440 Tingnan natin ang hakbang na apat na talagang mabilis Hayaan. 745 00:41:15,440 --> 00:41:18,290 Susubukan naming makita na naidagdag namin isang seksyon tungkol sa mga kaganapan. 746 00:41:18,290 --> 00:41:20,874 Mga Template ay maaaring magkaroon ng helpers, na kumuha sa amin data. 747 00:41:20,874 --> 00:41:22,040 Ngunit ito rin ay tumawag sa kaganapan. 748 00:41:22,040 --> 00:41:25,300 At ito ay kung saan bagay-bagay naging kapaki-pakinabang, dahil kaganapan 749 00:41:25,300 --> 00:41:28,590 ay kung ano ang mangyayari kapag nag-click ka sa iba't ibang bagay sa iyong website. 750 00:41:28,590 --> 00:41:33,790 >> Narito, ang aming code ay nagsasabi amin upang idagdag ang kaganapang ito. 751 00:41:33,790 --> 00:41:38,860 Idagdag ito kapag naisumite mo na isang bagay na may klase bagong gawain. 752 00:41:38,860 --> 00:41:41,910 Ano ang mayroon kang dito ay isang CSS selector. 753 00:41:41,910 --> 00:41:45,870 Kaya ito lamang ang hitsura para sa isang HTML elemento na may klase bagong gawain. 754 00:41:45,870 --> 00:41:47,940 At mukha itong para sa kaganapan, tulad ng isumite. 755 00:41:47,940 --> 00:41:51,050 Kasama sa iba pang mga kaganapan -click, hover, i-double click, 756 00:41:51,050 --> 00:41:54,450 katulad ng kung ano makuha mo sa normal na HTML. 757 00:41:54,450 --> 00:41:56,770 >> Ano ba ninyo ito dito ay isang function ngayon. 758 00:41:56,770 --> 00:42:01,210 At maaari kang magkaroon ng mga code sa na function. 759 00:42:01,210 --> 00:42:06,360 Function na ito ay kung ano ang nagtatapos up pagkuha tinatawag na kapag isinumite mo ang bagong gawain. 760 00:42:06,360 --> 00:42:12,170 Tingnan natin ang HTML para lang Hayaan natin maunawaan kung ano ang bagong gawain ay. 761 00:42:12,170 --> 00:42:15,570 Nagdagdag kami ng isang form dito may klase bagong gawain. 762 00:42:15,570 --> 00:42:19,880 At ito ay isang input na tumatagal ng teksto. 763 00:42:19,880 --> 00:42:22,605 At ito ay kung saan namin ay magdadagdag ng aming bagong gawain. 764 00:42:22,605 --> 00:42:25,520 765 00:42:25,520 --> 00:42:29,780 >> Magpatakbo ng sunod na apat sa Hayaan website upang makita kung ano ang mukhang. 766 00:42:29,780 --> 00:42:32,710 Maaari naming tumigil muna out ng MongoDB namin ay may 767 00:42:32,710 --> 00:42:35,300 mula sa aming mga nakaraang mga Halimbawa gamit ang Control C. 768 00:42:35,300 --> 00:42:37,690 At palitan natin ito sa ipaalam ang hakbang sa apat na direktoryo. 769 00:42:37,690 --> 00:42:41,000 770 00:42:41,000 --> 00:42:42,920 Susubukan naming patakbuhin muli Hukay upang simulan ang server. 771 00:42:42,920 --> 00:42:46,850 772 00:42:46,850 --> 00:42:50,510 At sa kasamaang palad, nagkaroon ako Hukay na tumatakbo sa isa pang terminal. 773 00:42:50,510 --> 00:42:53,080 Kaya ako lamang ng pagpunta sa tiyakin na ito sarado. 774 00:42:53,080 --> 00:43:01,805 Ay tumigil na ito at pagbabago Hayaan sa bahagi apat, apat na hakbang. 775 00:43:01,805 --> 00:43:02,305 OK. 776 00:43:02,305 --> 00:43:11,220 777 00:43:11,220 --> 00:43:13,250 >> Ngayon aming Hukay code ay tumatakbo. 778 00:43:13,250 --> 00:43:19,480 At maaari mong makita na ito na-update, nang walang sa amin kahit na nagkakaproblema upang i-refresh ang pahina. 779 00:43:19,480 --> 00:43:24,410 Ano ang nagbago dito ngayon na wala kaming anumang gawain, 780 00:43:24,410 --> 00:43:29,530 ngunit kami ay may isang form dito, ito kahon ng teksto, upang magdagdag ng aming bagong gawain. 781 00:43:29,530 --> 00:43:31,550 At maaari naming i-type ang aming gawain dito. 782 00:43:31,550 --> 00:43:34,564 Dumating ako mula sa pahina ng HTML. 783 00:43:34,564 --> 00:43:36,105 Kapag pinindot ko ang Enter, ito Kaka-isinumite. 784 00:43:36,105 --> 00:43:39,180 785 00:43:39,180 --> 00:43:44,540 >> Maaari naming makita kung ano ang nangyari bilang natukoy ng JavaScript code. 786 00:43:44,540 --> 00:43:49,930 Ano ang function na ito ginawa noon ay kunin ang teksto mula sa form na ito, 787 00:43:49,930 --> 00:43:53,680 at pagkatapos lamang na tinatawag na tasks.insert, tulad ng ginawa namin sa console. 788 00:43:53,680 --> 00:43:56,410 Pinili rin nilang upang magdagdag ng petsa createdAt. 789 00:43:56,410 --> 00:43:59,840 Ito ay kung paano mo gagawin tukuyin ang kasalukuyang oras. 790 00:43:59,840 --> 00:44:03,220 Pagkatapos nito, kini-clear nito ang na form sa pamamagitan ng paggawa Siguraduhin na ang halaga ay ang walang laman na string. 791 00:44:03,220 --> 00:44:06,550 >> At pagkatapos nito tawag return false sa tiyakin na walang tao ang mangyayari. 792 00:44:06,550 --> 00:44:10,350 Kapag bumalik ka false mula sa isang form ng kaganapan, na humihinto pagpapatupad. 793 00:44:10,350 --> 00:44:14,520 Sabihin ang isang form ay isang aksyon, tulad sumailalim sa isang pahina ng PHP. 794 00:44:14,520 --> 00:44:16,980 Kung hindi mo ay ibinalik false, gusto mo nagbabalik ng tunay. 795 00:44:16,980 --> 00:44:18,500 Ito ay napupunta sa paggawa ng kahilingang iyon. 796 00:44:18,500 --> 00:44:20,590 Mali intercepts ito at Humihinto ito doon. 797 00:44:20,590 --> 00:44:23,510 798 00:44:23,510 --> 00:44:28,610 >> Kaya na ay isang maliit na demo tungkol sa kung paano gumagana Hukay, at hindi namin 799 00:44:28,610 --> 00:44:30,980 naging pagsunod sa mga pagtuturo para sa isang habang. 800 00:44:30,980 --> 00:44:33,560 At maaari mong huwag mag -atubiling patuloy na gawin ito. 801 00:44:33,560 --> 00:44:37,760 Maraming mapagkukunan, at ang tutorial ay talagang lamang 802 00:44:37,760 --> 00:44:40,400 napakabuti tungkol sa nagpapaliwanag kung ano ang nangyayari. 803 00:44:40,400 --> 00:44:44,362 Ko nais upang ipakita sa iyo ngayon, sa ang ilang minuto namin pakaliwa, 804 00:44:44,362 --> 00:44:46,320 kung ano ang ilan sa mga mas cool na tampok ng Hukay, 805 00:44:46,320 --> 00:44:48,772 at kung ano ang ilan sa mga mas kapaki-pakinabang na mga pakete. 806 00:44:48,772 --> 00:44:51,730 Isa sa mga magagandang bagay tungkol sa Hukay ay na mayroon kang isang package ng system. 807 00:44:51,730 --> 00:44:55,620 Madali mong isama ang code na libu-libong mga developer 808 00:44:55,620 --> 00:44:58,840 isinulat sa buong mundo sa iyong proyekto Hukay. 809 00:44:58,840 --> 00:45:02,410 Isang halimbawa nito ay ang kung ano ang maaari kang gawin sa hakbang siyam ng pagtuturo, kung saan 810 00:45:02,410 --> 00:45:07,435 na sinusubukan mong magdagdag ng mga account sa iyong proyekto Hukay. 811 00:45:07,435 --> 00:45:10,010 812 00:45:10,010 --> 00:45:13,690 Kung mayroon kaming CS50 PHP proyekto, gusto naming magkaroon 813 00:45:13,690 --> 00:45:17,810 umasa sa ang balangkas o sa aming sariling code upang gumawa ng mga 814 00:45:17,810 --> 00:45:20,820 Tiyaking ligtas na namin pinangangasiwaan ang mga password at mga username 815 00:45:20,820 --> 00:45:23,120 at pag-iimbak ng database at ang lahat ng iyon. 816 00:45:23,120 --> 00:45:25,670 >> Ito ay lumiliko out Hukay ay may ilang mga pakete upang gawin iyon para sa iyo, 817 00:45:25,670 --> 00:45:29,160 at upang gawin ito sa lalong madaling. 818 00:45:29,160 --> 00:45:31,950 Ano ang maaari naming gawin ay magdagdag ng ilang mga pakete. 819 00:45:31,950 --> 00:45:37,450 Kaya hayaan gawin na karapatan ngayon sa ating console. 820 00:45:37,450 --> 00:45:42,460 Pupunta ako upang lumabas ang proyekto at karapatan na pumunta sa sira-todos ngayon. 821 00:45:42,460 --> 00:45:47,450 822 00:45:47,450 --> 00:45:50,050 Ngayon, sira-todos ay ang proyekto na 823 00:45:50,050 --> 00:45:53,500 Magkakaroon matapos tapos may 11 hakbang o step 12, 824 00:45:53,500 --> 00:45:55,250 sa dulo ng tutorial na ito. 825 00:45:55,250 --> 00:45:58,642 At sa mabilis na makita ang dito upang makita ipaalam ano ang mga iba't ibang mga tampok na mayroon kami. 826 00:45:58,642 --> 00:46:01,610 Gumawa ng lang masiguradong tumatakbo Hayaan. 827 00:46:01,610 --> 00:46:04,400 Minsan mas nagtatagal ang isang habang upang i-refresh, ngunit eto. 828 00:46:04,400 --> 00:46:09,710 >> Mayroon kaming aming pagpipilian upang itago Kumpleto na gawain, at maaari naming mag-sign in. 829 00:46:09,710 --> 00:46:11,770 At ito ay ginawa nang may Hukay ang package. 830 00:46:11,770 --> 00:46:12,270 Ito ay mahusay na. 831 00:46:12,270 --> 00:46:14,910 Ngayon kami username at pag-sign password sa. 832 00:46:14,910 --> 00:46:19,170 Ngunit paano kung gusto naming idagdag isa pang uri ng mekanismo sa pag-login? 833 00:46:19,170 --> 00:46:22,560 Ipagpalagay natin na nais kong mag-log in gamit ang aking Hukay account. 834 00:46:22,560 --> 00:46:27,270 Pupunta ako sa magpatakbo ng bulalakaw add, at ito ay ang syntax para sa pagdaragdag ng mga package. 835 00:46:27,270 --> 00:46:32,160 Maaari ko bang sabihin account, at accounts.meteor. 836 00:46:32,160 --> 00:46:35,720 Ito ay pagpunta sa ngayon ang -load ito ang package at. 837 00:46:35,720 --> 00:46:40,480 Maaari mong makita na mayroon akong hindi natagpuan ang tamang pangalan ng package. 838 00:46:40,480 --> 00:46:42,820 >> Kaya paano mo malaman ang tungkol sa mga pakete? 839 00:46:42,820 --> 00:46:46,380 Doon na rin ang isang mahusay na website, nagawa makukuha sa pamamagitan ng Hukay ng mga tao, 840 00:46:46,380 --> 00:46:47,780 tinatawag na atmospherejs.com. 841 00:46:47,780 --> 00:46:52,520 Atmospherejs, isang salita, tuldok com, ay isang mahusay na imbakan 842 00:46:52,520 --> 00:46:57,660 para sa paghahanap ng lahat ng mga Hukay mga package sa imbakan. 843 00:46:57,660 --> 00:47:05,140 Maaari ba akong maghanap ng mga account, at pagkatapos ay Makikita ito ipakita sa akin ang lahat ng may-katuturang mga bagay-bagay, 844 00:47:05,140 --> 00:47:07,320 lahat ng mga pakete kasama ang pangalan ng account. 845 00:47:07,320 --> 00:47:10,180 846 00:47:10,180 --> 00:47:13,270 >> Habang na naglo-load, maaari naming subukang ang pagdaragdag ng ilang mga iba pang mga pakete. 847 00:47:13,270 --> 00:47:19,380 Siguro ang Hukay ng package ay hindi gumagana sa ngayon, ngunit maaari kong idagdag Facebook. 848 00:47:19,380 --> 00:47:22,860 849 00:47:22,860 --> 00:47:27,190 Maaari ba akong magdagdag ng mga account at pagkatapos ay patakbuhin muli ang proyekto Hukay. 850 00:47:27,190 --> 00:47:33,260 851 00:47:33,260 --> 00:47:36,900 Sa sandaling magsimula ito, tingnan natin kung ano ang nagbago sa website. 852 00:47:36,900 --> 00:47:40,010 853 00:47:40,010 --> 00:47:44,580 Maaari mong see-- maaari kong mayroon upang i-refresh ito dito. 854 00:47:44,580 --> 00:47:47,320 >> Mayroon akong isang pindutan i-configure ang pag-login sa Facebook. 855 00:47:47,320 --> 00:47:49,765 At dito, mayroon akong lahat ang mga tagubilin sa Hukay 856 00:47:49,765 --> 00:47:52,960 ay inihanda para sa iyo para sa -set up ng isang Facebook app. 857 00:47:52,960 --> 00:47:58,990 At maaari mong gamitin na impormasyon upang idagdag ang iyong ID. 858 00:47:58,990 --> 00:48:04,130 Sa sandaling na tapos na, magkakaroon ka ng Facebook sa pag-login nagtatrabaho sa iyong app. 859 00:48:04,130 --> 00:48:08,559 >> Lamang ako pupunta upang makakuha ng isang app ID at ng isang lihim na, 860 00:48:08,559 --> 00:48:10,100 upang ipakita sa iyo lamang kung paano maaaring gumana ito. 861 00:48:10,100 --> 00:48:16,000 862 00:48:16,000 --> 00:48:20,360 Kakailanganin mo ng Facebook account gamitin ang mga pagpipilian ng nag-develop Facebook. 863 00:48:20,360 --> 00:48:31,160 864 00:48:31,160 --> 00:48:35,290 Hayaan akong lamang mabilis na mahanap ang Hukay ng key na kinakailangan. 865 00:48:35,290 --> 00:48:46,994 866 00:48:46,994 --> 00:48:49,160 Mayroon akong isa pang proyekto Hukay na pupuntahan ko gamitin, 867 00:48:49,160 --> 00:48:55,590 at ako lamang ang pagpunta sa tumagal ang mga key mula sa file na iyon. 868 00:48:55,590 --> 00:49:14,410 869 00:49:14,410 --> 00:49:20,930 >> At sa sandaling mahanap ko ito, makikita lamang maging ko magagawang upang kopyahin ang mga key sa aking Facebook. 870 00:49:20,930 --> 00:49:23,489 Kaya dito ay ang susi. 871 00:49:23,489 --> 00:49:24,280 At ito ay sikreto. 872 00:49:24,280 --> 00:49:26,071 Hindi ka dapat maging pagbabahagi nito sa mga tao. 873 00:49:26,071 --> 00:49:28,870 874 00:49:28,870 --> 00:49:30,910 At pagkatapos mong bigyan ito ang iyong lihim na app. 875 00:49:30,910 --> 00:49:33,560 At ito ay kaya Facebook alam na ikaw mo. 876 00:49:33,560 --> 00:49:37,630 877 00:49:37,630 --> 00:49:39,080 At i-save mo ang configuration. 878 00:49:39,080 --> 00:49:45,160 879 00:49:45,160 --> 00:49:48,640 >> Sa tingin ko ay nasa proseso ako ay tumigil sa aking Hukay ng app. 880 00:49:48,640 --> 00:49:52,290 Kaya gusto ko lang gawin tiyaking ito ay pa rin doon. 881 00:49:52,290 --> 00:49:54,962 882 00:49:54,962 --> 00:49:58,610 OK, gumawa ng bang aming Hukay ng server ipaalam Tumatakbo kaya ang web page ay tumatakbo. 883 00:49:58,610 --> 00:50:02,440 Pansinin kung ihinto namin ang Hukay server, ang pahina ay may pa rin. 884 00:50:02,440 --> 00:50:04,700 Hindi ito maa-update lamang na ngayon. 885 00:50:04,700 --> 00:50:10,290 Hukay ng server ay kinakailangan para sa pagtiyak na ang pahina ay live. 886 00:50:10,290 --> 00:50:14,050 >> OK, naisumite ko na ito, at ngayon Maaari ba akong mag-sign in gamit ang Facebook. 887 00:50:14,050 --> 00:50:17,400 Ngayon na ang isang bagay lamang ng pagkakaroon ng mga pop up Facebook 888 00:50:17,400 --> 00:50:21,710 at paglalagay sa iyong account impormasyon at mga pag-log in. 889 00:50:21,710 --> 00:50:24,520 890 00:50:24,520 --> 00:50:27,930 Sa sandaling gawin mo iyon, maaari Facebook mangyamot sa iyo ng ilang higit pang seguridad. 891 00:50:27,930 --> 00:50:29,810 Kaya namin lamang tumigil doon. 892 00:50:29,810 --> 00:50:34,110 Ang punto ay na kapag tapos ka na may na, magkakaroon ka ng pag-log in sa Facebook. 893 00:50:34,110 --> 00:50:37,850 >> Hukay ay may isang bungkos ng iba pang mga pakete pati na rin. 894 00:50:37,850 --> 00:50:39,200 Maaari kang mag-log in sa Google+. 895 00:50:39,200 --> 00:50:40,500 Maaari kang mag-log in gamit ang GitHub. 896 00:50:40,500 --> 00:50:42,170 Maaari kang mag-log in gamit ang Twitter. 897 00:50:42,170 --> 00:50:44,870 O kung naghahanap ka, ipapakita sa iyo makahanap ng maraming iba pang mga bagay 898 00:50:44,870 --> 00:50:49,170 tulad ng Meetup, LinkedIn, at Hukay ng Nag-develop. 899 00:50:49,170 --> 00:50:53,100 Kaya Hukay ng Nag-develop ay ang package ako ay naghahanap para sa. 900 00:50:53,100 --> 00:50:56,170 bulalakaw magdagdag ng mga account-bulalakaw-develop. 901 00:50:56,170 --> 00:51:06,192 902 00:51:06,192 --> 00:51:07,900 Sa pansamantala, ako Gusto rin upang magrekomenda 903 00:51:07,900 --> 00:51:11,340 sa ilang ibang mga pakete para sa iyong proyekto. 904 00:51:11,340 --> 00:51:14,670 Maaaring patunayan kapaki-pakinabang sa isama ang jQuery package. 905 00:51:14,670 --> 00:51:17,909 Nagbibigay-daan ito sa iyo upang gamitin ang jQuery sa iyong mga kliyente. 906 00:51:17,909 --> 00:51:21,200 Maaari mong gawin lamang ito sa isang linya, at Hukay ay siguraduhin na ang hanggang sa petsa 907 00:51:21,200 --> 00:51:21,825 sa jQuery. 908 00:51:21,825 --> 00:51:24,330 909 00:51:24,330 --> 00:51:27,450 Inirerekomenda ko rin houston: admin. 910 00:51:27,450 --> 00:51:31,550 >> Ito ay uri ng tulad ng isang phpMyAdmin uri ng tool para sa iyong MongoDB. 911 00:51:31,550 --> 00:51:33,890 Pinapayagan ka nito na i-edit medyo madali ang iyong data 912 00:51:33,890 --> 00:51:37,950 nang hindi na kinakailangang pumunta sa Mongo shell, tulad ng ginawa ko ay mas maaga sa seminar. 913 00:51:37,950 --> 00:51:43,160 914 00:51:43,160 --> 00:51:47,101 Kaya ngayon na na tumatakbo, na tumakbo ipaalam Hukay muli at tingnan kung ano ang maaari naming gawin. 915 00:51:47,101 --> 00:51:56,240 916 00:51:56,240 --> 00:52:00,720 >> Napansin mo na ang pagdagdag ng ilang mga pakete maaaring mayroon sila ipakita ang ilang mga babala. 917 00:52:00,720 --> 00:52:02,720 Hindi mo kailangang mag-alala tungkol na may houston. 918 00:52:02,720 --> 00:52:06,040 919 00:52:06,040 --> 00:52:10,810 Kaya maaari naming ngayon ay may opsyon upang i-configure Hukay ng admin. 920 00:52:10,810 --> 00:52:15,080 At bibigyan ka nila ng mga direksyon kung nais mong i-set up na. 921 00:52:15,080 --> 00:52:17,750 922 00:52:17,750 --> 00:52:20,440 >> Maaari din namin ngayon pumunta sa / admin. 923 00:52:20,440 --> 00:52:23,280 Ito ay inihatid sa iyo sa pamamagitan ng houston package. 924 00:52:23,280 --> 00:52:27,470 At ito ay Hukay ng admin interface. 925 00:52:27,470 --> 00:52:30,660 Lumikha mo lamang ng isang admin account, tulad ng sa gayon. 926 00:52:30,660 --> 00:52:38,150 At kung i-refresh mo ang pahina, maaari kang May ilang mga koleksyon sa paglitaw. 927 00:52:38,150 --> 00:52:40,980 928 00:52:40,980 --> 00:52:43,460 >> Ito ay isang napaka-kapaki-pakinabang na tool, at Lubos kong irekomenda ito. 929 00:52:43,460 --> 00:52:46,717 930 00:52:46,717 --> 00:52:49,050 Maaari mong makita na dahil houston ay nagbibigay sa ilang mga error, 931 00:52:49,050 --> 00:52:52,330 wala kaming anumang mga koleksyon sa paglitaw sa ngayon. 932 00:52:52,330 --> 00:52:56,800 Ang paraan na nais mong gamitin houston ay tinitiyak na nakukuha ng function na ito 933 00:52:56,800 --> 00:52:58,860 na tinatawag na sa iyong simpleng-todos. 934 00:52:58,860 --> 00:53:01,370 Kaya houston hindi alam kung ano ang aking mga gawain ay. 935 00:53:01,370 --> 00:53:04,490 >> Kami set up ng isang Mongo koleksyon na tinatawag na mga gawain. 936 00:53:04,490 --> 00:53:11,390 Tara sa sira-todos at lamang tiyakin na nasa JavaScript, 937 00:53:11,390 --> 00:53:16,295 nagdagdag kami ng mga gawain sa aming mga koleksyon. 938 00:53:16,295 --> 00:53:19,340 939 00:53:19,340 --> 00:53:25,670 Ngayon nai-save namin, at ito ay ang pagbuo ang application, nakakapreskong. 940 00:53:25,670 --> 00:53:26,750 At Tingnan natin ipaalam. 941 00:53:26,750 --> 00:53:29,090 Ngayon ay mayroon kaming ilang mga gawain. 942 00:53:29,090 --> 00:53:32,630 At maaari naming magdagdag ng ilang mga bagong gawain. 943 00:53:32,630 --> 00:53:35,840 Ngunit kung gusto naming idagdag ang mga gawain, gawin natin ito gamit ang app mismo ipaalam. 944 00:53:35,840 --> 00:53:39,660 945 00:53:39,660 --> 00:53:41,050 >> Ngayon ay maaari naming magdagdag ng ilang data. 946 00:53:41,050 --> 00:53:53,410 Hi, ito ay isang gawain. 947 00:53:53,410 --> 00:53:57,080 Tila uri ng kakaiba na Hindi namin nakikitang anumang gawain. 948 00:53:57,080 --> 00:54:00,290 949 00:54:00,290 --> 00:54:05,260 Maaari naming gusto upang suriin kung mayroon kaming anumang mga error dito, o marahil sa ibang lugar. 950 00:54:05,260 --> 00:54:08,810 951 00:54:08,810 --> 00:54:20,260 Kung tayo pumunta sa admin, na tila kakaiba. 952 00:54:20,260 --> 00:54:24,080 Kung hilahin mo ang iyong imbakan pagkatapos ito seminar, 953 00:54:24,080 --> 00:54:27,580 Ako ay matiyak na simpleng-todos gumagana sa houston. 954 00:54:27,580 --> 00:54:30,370 Sa kasamaang palad, hindi ito mukhang maging nagtatrabaho sa ito napaka sandali. 955 00:54:30,370 --> 00:54:34,810 956 00:54:34,810 --> 00:54:37,640 >> Mayroon bang anumang iba pang mga tanong? 957 00:54:37,640 --> 00:54:41,800 Houston normal ay isang tool na gumagana nang mahusay. 958 00:54:41,800 --> 00:54:44,510 Houston partikular na ay isang bit buggier kaysa sa iba pang mga, 959 00:54:44,510 --> 00:54:49,470 ngunit gagawin ko inirerekomenda ito kapag ito gumagana. 960 00:54:49,470 --> 00:54:50,080 Oo. 961 00:54:50,080 --> 00:54:52,395 >> Madla: Ano ang maaari mong gawin may package Facebook 962 00:54:52,395 --> 00:54:54,270 sa sandaling ang isang gumagamit ay naka-log in gamit ang kanilang mga Facebook? 963 00:54:54,270 --> 00:54:55,978 >> Roger ZURAWICKI: Sa sandaling ng isang user-log in, 964 00:54:55,978 --> 00:54:59,540 maaari kang gumawa ng mga tawag sa API sa Facebook. 965 00:54:59,540 --> 00:55:02,890 Isang maraming na namamalagi nang higit pa sa paano bubukas Facebook kanilang API. 966 00:55:02,890 --> 00:55:05,120 Hukay, tiyaking Mayroon ang koneksyon. 967 00:55:05,120 --> 00:55:09,300 Ngunit lahat pagkatapos na ay isang bagay na ng pag-aaral kung paano gamitin ang Facebook API. 968 00:55:09,300 --> 00:55:10,216 Madla: [hindi marinig]. 969 00:55:10,216 --> 00:55:17,756 970 00:55:17,756 --> 00:55:18,880 Roger ZURAWICKI: Ang lahat ng karapatan. 971 00:55:18,880 --> 00:55:21,670 Maraming salamat sa inyo para sa ito CS50 seminar sa Hukay. 972 00:55:21,670 --> 00:55:24,060 Kung mayroon kang anumang mga katanungan, Maaari mong i-email sa akin 973 00:55:24,060 --> 00:55:28,319 sa aking email address Nakalista sa ibaba ang seminar. 974 00:55:28,319 --> 00:55:30,110 At ikalulugod kong upang sagutin ang iyong mga tanong. 975 00:55:30,110 --> 00:55:33,020 Makikita ko rin na sa CS50 Hackathon dapat 976 00:55:33,020 --> 00:55:35,550 Kailangan mo ng tulong sa iyong mga proyekto Hukay. 977 00:55:35,550 --> 00:55:37,650 Salamat sa iyo para sa panonood. 978 00:55:37,650 --> 00:55:38,816