1 00:00:00,000 --> 00:00:08,560 2 00:00:08,560 --> 00:00:10,410 >> GABRIEL Guimaraes: Hii ni CS50. 3 00:00:10,410 --> 00:00:14,740 Karibu Amazing Programu Mtandao na Ruby juu ya reli. 4 00:00:14,740 --> 00:00:19,700 Hivyo kwa mtu yeyote ambaye ni nia ya mtandao tovuti ya maendeleo na maamuzi, mtandao 5 00:00:19,700 --> 00:00:26,510 maombi, Ruby juu ya reli ni hii ajabu chombo kwamba Twitter, GitHub, 6 00:00:26,510 --> 00:00:31,470 Groupon, na kila aina ya ni nzuri, na kubwa, maombi ya mtandao ni kutumia katika 7 00:00:31,470 --> 00:00:33,080 miaka michache iliyopita. 8 00:00:33,080 --> 00:00:37,190 Na ni kweli, kweli baridi kipengele, baridi chombo, 9 00:00:37,190 --> 00:00:39,290 kwa sababu ni mpya. 10 00:00:39,290 --> 00:00:43,830 Hivyo ina wote wa nguvu mpya teknolojia kuingizwa katika moja 11 00:00:43,830 --> 00:00:49,050 mfumo ambayo husaidia kukabiliana na kila aina ya mambo ya ajabu. 12 00:00:49,050 --> 00:00:50,970 >> Lakini ni nini mfumo? 13 00:00:50,970 --> 00:00:55,700 Hivyo mfumo wa kimsingi ni kitu ambacho inajenga - 14 00:00:55,700 --> 00:00:59,680 wakati wa kuanza tovuti, kama wewe kuanza kutoka mwanzo, kama wewe kufungua 15 00:00:59,680 --> 00:01:04,530 gedit huko, na unataka na kanuni wote ya HTML yako, na kanuni zote za yako 16 00:01:04,530 --> 00:01:08,130 PHP, wote wa CSS yako, kila kitu kutoka mwanzo - 17 00:01:08,130 --> 00:01:09,690 kwamba tu kwenda kuwa mengi ya kazi. 18 00:01:09,690 --> 00:01:13,940 Na mfumo wa literally anatoa nusu ya tovuti kufanyika tayari. 19 00:01:13,940 --> 00:01:18,070 Hivyo kuanza mbali na tovuti nusu ambayo ina kila kitu huko kwa ajili yenu. 20 00:01:18,070 --> 00:01:22,690 Kama uhusiano database, na kila aina ya mambo ambayo wewe kuwa na wasiwasi 21 00:01:22,690 --> 00:01:25,040 kuhusu kama wewe kufanya hivyo kutoka mwanzo, huna na wasiwasi juu ya wale 22 00:01:25,040 --> 00:01:26,480 kiwango cha chini maelezo. 23 00:01:26,480 --> 00:01:32,360 >> Lakini leo sisi ni kwenda nje moja ya Nje kwamba Freshman ya 24 00:01:32,360 --> 00:01:34,740 darasa la 2017 ni pengine ukoo. 25 00:01:34,740 --> 00:01:40,170 Hivyo tovuti hii ni tovuti ya kwamba mimi alifanya kwa darasa wetu juu ya majira ya joto. 26 00:01:40,170 --> 00:01:46,500 Ilikuwa ni tovuti ambapo wanafunzi wa darasa la 2017 inaweza kuingia katika na 27 00:01:46,500 --> 00:01:47,480 kuingiliana na kila mmoja. 28 00:01:47,480 --> 00:01:49,610 Na kisha hii ni ramani - 29 00:01:49,610 --> 00:01:51,210 kila mtu, ambapo watu ni. 30 00:01:51,210 --> 00:01:56,970 Na tulikuwa na mchezo kitabu, mchezo nyimbo ambapo tuliona nyimbo ya watu na 31 00:01:56,970 --> 00:01:57,970 vitabu ya watu. 32 00:01:57,970 --> 00:02:00,480 Nini kama kusoma, nini wao kama kusikiliza. 33 00:02:00,480 --> 00:02:06,830 Na sehemu ya kuvutia zaidi ya hayo ni kwamba literally alichukua mimi masaa tatu 34 00:02:06,830 --> 00:02:07,840 na kanuni yote. 35 00:02:07,840 --> 00:02:13,050 Kwa sababu kama mimi alikuwa na kufanya kila kitu kutoka mwanzo, kama kufungua gedit, ni 36 00:02:13,050 --> 00:02:16,400 pengine wamechukua me 20, masaa 30. 37 00:02:16,400 --> 00:02:20,210 Lakini kwa Ruby juu ya reli, kwa sababu kila kitu kilikuwa tayari kuanzisha kwa ajili yangu, 38 00:02:20,210 --> 00:02:25,550 tu alichukua mimi masaa tatu au nne, au kitu kama hicho. 39 00:02:25,550 --> 00:02:27,580 >> Kwa hiyo kile ni Ruby juu ya reli. 40 00:02:27,580 --> 00:02:32,720 Ruby juu ya reli, tena kama sisi tayari akasema, ni mfumo. 41 00:02:32,720 --> 00:02:34,800 Hii ni picha ya mfumo. 42 00:02:34,800 --> 00:02:37,460 Hivyo ni kwenda kuanza kujenga nyumba, tayari kuwa na nusu ya 43 00:02:37,460 --> 00:02:38,320 nyumba kufanyika. 44 00:02:38,320 --> 00:02:38,970 Hiyo ni mfumo. 45 00:02:38,970 --> 00:02:40,560 Na Ruby juu ya reli ni hasa kama hiyo. 46 00:02:40,560 --> 00:02:44,440 Na unapaswa kufikiria kama, unaweza kuanza tovuti, unaweza kuanza mtandao wako 47 00:02:44,440 --> 00:02:48,830 maombi, tayari tuna nusu ya kufanyika huko. 48 00:02:48,830 --> 00:02:50,400 Lakini kwanza, ni nini Ruby? 49 00:02:50,400 --> 00:02:53,510 50 00:02:53,510 --> 00:02:58,310 Ruby juu ya reli anatumia mfano maoni mtawala, ambayo ni dhana, ambayo 51 00:02:58,310 --> 00:02:59,930 ni kweli kuvutia - 52 00:02:59,930 --> 00:03:04,250 na yote ya maombi siku hizi kutumia kitu kama hicho. 53 00:03:04,250 --> 00:03:08,630 Wazo hili la kutenganisha mambo katika sehemu tatu, mfano, maoni, na 54 00:03:08,630 --> 00:03:09,630 mtawala. 55 00:03:09,630 --> 00:03:11,950 Sisi ni kwenda kuzungumza kidogo zaidi juu ya kwamba baadaye. 56 00:03:11,950 --> 00:03:13,400 >> Kwanza, ni nini Ruby? 57 00:03:13,400 --> 00:03:14,500 Hivyo hii ni Ruby. 58 00:03:14,500 --> 00:03:17,850 Na hii ni ishara ya lugha inayoitwa Ruby. 59 00:03:17,850 --> 00:03:24,170 Ruby ni moja ya newish kutafsiriwa lugha, hivyo script. 60 00:03:24,170 --> 00:03:29,530 Ni lugha ambayo si ulioandaliwa kama C. Ni ulioandaliwa juu ya kukimbia. 61 00:03:29,530 --> 00:03:33,220 Hivyo hiyo ni nzuri kwa sababu, kama PHP, kwa mfano ni pia yake, ni 62 00:03:33,220 --> 00:03:33,960 si ulioandaliwa. 63 00:03:33,960 --> 00:03:35,710 Hiyo ni nzuri kwa sababu portable wake. 64 00:03:35,710 --> 00:03:39,740 Hivyo tu kupita code yako kutoka mashine moja hadi nyingine. 65 00:03:39,740 --> 00:03:44,440 Kutoka kwa mashine Linux, Windows mashine, kwa Mac au Apple mashine, au 66 00:03:44,440 --> 00:03:45,240 kitu kama hicho. 67 00:03:45,240 --> 00:03:49,160 Na huna haja ya kuwa na wasiwasi kuhusu maelezo kuhusu kila maalum 68 00:03:49,160 --> 00:03:49,890 mifumo ya uendeshaji. 69 00:03:49,890 --> 00:03:51,330 Ni kwenda kufanya kazi kila mahali. 70 00:03:51,330 --> 00:03:54,700 >> Na Ruby ni lugha ambayo - 71 00:03:54,700 --> 00:03:56,920 nyie pengine kumbuka hii. 72 00:03:56,920 --> 00:04:01,440 Watu kutumia heshi kutekelezwa katika C kwa meza hash 73 00:04:01,440 --> 00:04:04,860 wiki iliyopita na alikuwa kila aina ya segmentation makosa. 74 00:04:04,860 --> 00:04:12,360 Na kisha mambo hofu kuhusu kama kamba kwamba i huko, kamba i 75 00:04:12,360 --> 00:04:20,380 hapa, kwa kweli Herufi za chini au uppercase, au aina hii ya inatia mashaka 76 00:04:20,380 --> 00:04:21,410 kiwango cha chini maelezo. 77 00:04:21,410 --> 00:04:26,180 Vizuri katika Ruby, kama unataka kutekeleza meza hash, hii ni hasa jinsi 78 00:04:26,180 --> 00:04:27,100 kujenga meza hash. 79 00:04:27,100 --> 00:04:30,280 Unaweza kusema, kamusi, hiyo ni jina ya kutofautiana yangu, = "Hash.new". 80 00:04:30,280 --> 00:04:34,680 Na kisha kamusi ["foo"], na wakati mimi nina kuongeza foo kwa hash yangu meza, mimi nina 81 00:04:34,680 --> 00:04:35,960 kusema tu foo ni huko. 82 00:04:35,960 --> 00:04:38,070 >> Na kisha kama nilitaka kuangalia kama foo alikuwa huko, mimi tu kusema kama 83 00:04:38,070 --> 00:04:40,270 kamusi ["foo"] == kurudi kweli kweli. 84 00:04:40,270 --> 00:04:41,560 Ho, na kwamba hash meza yako. 85 00:04:41,560 --> 00:04:44,280 Hiyo ni utekelezaji ya hash meza katika Ruby. 86 00:04:44,280 --> 00:04:50,200 Hivyo kila mtu alitaka waweze kuwa na kutumika kitu kama Ruby kwa mwisho 87 00:04:50,200 --> 00:04:51,450 pset wiki, sawa? 88 00:04:51,450 --> 00:04:54,410 89 00:04:54,410 --> 00:04:59,050 Tuna kila aina ya sababu wanataka kutumia lugha kama Ruby. 90 00:04:59,050 --> 00:05:01,380 Ruby ina vito. 91 00:05:01,380 --> 00:05:04,000 Gem ni jina kwa ajili ya aina ya maktaba katika Ruby. 92 00:05:04,000 --> 00:05:07,490 >> Hivyo kila aina ya makala ya kuvutia kwamba unaweza kuwa, kwa mfano, kama mimi 93 00:05:07,490 --> 00:05:09,280 wanataka kuunganisha maombi yangu. 94 00:05:09,280 --> 00:05:12,470 Hiyo Harvard 2017 maombi ilikuwa jumuishi kwa Facebook. 95 00:05:12,470 --> 00:05:15,810 Hivyo unaweza kuingia katika, kupitia Facebook, kwa programu. 96 00:05:15,810 --> 00:05:19,760 Hivyo kama wewe ni kwenda kufanya hivyo, unaweza kufanya si haja ya kuwa na wasiwasi kuhusu kutuma baadhi 97 00:05:19,760 --> 00:05:23,760 HTTP ombi Facebook, na kusubiri kwa majibu, na kulazimisha 98 00:05:23,760 --> 00:05:25,150 majibu, na blah, blah, blah. 99 00:05:25,150 --> 00:05:29,120 Wewe tu kushusha gem kwamba anafanya yote kwa ajili yenu. 100 00:05:29,120 --> 00:05:30,750 Na kisha huna haja ya wasiwasi kuhusu yote. 101 00:05:30,750 --> 00:05:33,670 >> Na kisha mengi ya msaada online, bila shaka. 102 00:05:33,670 --> 00:05:37,040 Kuna wengi, wengi, tovuti ambayo ni kwenda kukusaidia wote kwa 103 00:05:37,040 --> 00:05:38,880 Ruby na reli. 104 00:05:38,880 --> 00:05:40,530 Na ni kura ya kujifurahisha na kanuni. 105 00:05:40,530 --> 00:05:46,770 Hasa kwa sababu unaweza kuacha hofu kuhusu matatizo hayo si hivyo furaha. 106 00:05:46,770 --> 00:05:50,690 Kama kama kitu fulani ni lowercase au kesi ya juu, na kisha kwa nini hili 107 00:05:50,690 --> 00:05:54,500 kutoa segmentation kosa, na unaweza kweli kupiga mbizi katika sana 108 00:05:54,500 --> 00:05:55,460 kuvutia mambo ya ajabu. 109 00:05:55,460 --> 00:05:59,650 Kupiga mbizi katika matatizo ya kweli ya baridi. 110 00:05:59,650 --> 00:06:02,420 >> Hivyo Ruby ni kama kwa C katika akili. 111 00:06:02,420 --> 00:06:05,950 Hivyo si kwenda kuwa kubwa ya kuruka kwa kweli. 112 00:06:05,950 --> 00:06:09,470 Hivyo unaweka, hiyo ni magazeti programu yetu katika Ruby. 113 00:06:09,470 --> 00:06:12,790 Nadhani unaweza kutumia magazeti pia, lakini unaweka ni nini kila mtu anatumia. 114 00:06:12,790 --> 00:06:14,490 Hivyo tu unaweka "Hello World". 115 00:06:14,490 --> 00:06:21,400 Unaweza, au unaweza si, na mabano unaozunguka 116 00:06:21,400 --> 00:06:23,280 "Hello World" huko. 117 00:06:23,280 --> 00:06:25,350 Unaweza tu kuchagua kama au kutumia hiyo. 118 00:06:25,350 --> 00:06:26,780 Na kisha x = "1". 119 00:06:26,780 --> 00:06:29,030 kitanzi wakati inaonekana pretty kiasi hicho. 120 00:06:29,030 --> 00:06:30,630 Ni tu ina chini ya syntax. 121 00:06:30,630 --> 00:06:32,590 Ni aina ya safi kidogo. 122 00:06:32,590 --> 00:06:37,380 Na kisha kama x> 25 unaweka "Big!" na mwingine unaweka "Small ...". 123 00:06:37,380 --> 00:06:39,070 Na ni aina ya C kwa maana ya kwamba. 124 00:06:39,070 --> 00:06:41,630 >> Hivyo kama wewe kuangalia kwamba, unaweza pengine mbinu kuelewa 125 00:06:41,630 --> 00:06:42,890 kila kitu kinachoendelea. 126 00:06:42,890 --> 00:06:47,750 Lakini ni nguvu zaidi. 127 00:06:47,750 --> 00:06:54,520 Nguvu zaidi kwa sababu, zaidi ya hapo, inaweza kufanya mambo ni kwamba - 128 00:06:54,520 --> 00:06:55,750 baadhi ya aina ya hackage kidogo. 129 00:06:55,750 --> 00:06:57,430 Katika C unaweza kufanya katika tu kufanya kwa line moja. 130 00:06:57,430 --> 00:06:58,680 Kwa mfano, unaweka "Mimi ni # {x}". 131 00:06:58,680 --> 00:07:04,330 132 00:07:04,330 --> 00:07:11,100 Hii ni syntax tu kwa ajili ya kuweka thamani ya X hapa, na wala magazeti 133 00:07:11,100 --> 00:07:12,160 tabia ya x. 134 00:07:12,160 --> 00:07:17,850 Katika C mnatakiwa kufanya asilimia d, na kisha kuweka x variable baada ya 135 00:07:17,850 --> 00:07:19,730 Koma hapa, au kitu kama hicho. 136 00:07:19,730 --> 00:07:22,220 >> Na katika Ruby kuna shorthand kwa kufanya hivyo tu. 137 00:07:22,220 --> 00:07:27,830 Na unaweka hii, kama x> 3, hivyo unaweza kuweka kama wote juu ya mstari mmoja. 138 00:07:27,830 --> 00:07:29,010 Na kisha orodha. 139 00:07:29,010 --> 00:07:33,320 Orodha katika C, kama safu, una kuweka wimbo wa jinsi kubwa safu yako ni au 140 00:07:33,320 --> 00:07:34,720 vinginevyo, kupata segmentation kosa. 141 00:07:34,720 --> 00:07:36,210 Safu yako ni aina moja tu. 142 00:07:36,210 --> 00:07:38,790 Hivyo ni ama safu ya malipo au safu ya integers. 143 00:07:38,790 --> 00:07:43,620 Katika kesi hiyo, mimi umba orodha hapa, kwamba safu, ambayo ina kwanza 144 00:07:43,620 --> 00:07:48,450 hiki ni kamba, John, na kisha nne, mbili - wale ni integers. 145 00:07:48,450 --> 00:07:53,590 Na kisha mimi tu kuongeza, orodha, Kushoto Angle Bracket, kushoto 146 00:07:53,590 --> 00:07:54,820 Angle Bracket, tatu. 147 00:07:54,820 --> 00:07:58,170 Hiyo ina maana append tu kitu orodha yangu. 148 00:07:58,170 --> 00:08:01,630 >> Hivyo ni aina ya zaidi ya kuvutia kwa sababu kama alitaka kutumia hii kama 149 00:08:01,630 --> 00:08:03,920 rahisi tu orodha ya integers, unaweza, kabisa. 150 00:08:03,920 --> 00:08:05,530 Hiyo ni kabisa faini. 151 00:08:05,530 --> 00:08:06,750 Tu ya kuweka integers huko. 152 00:08:06,750 --> 00:08:10,240 Lakini kama alitaka kufanya kitu ambacho zaidi ya kulazimisha, ambayo ina nyingine 153 00:08:10,240 --> 00:08:11,690 mambo, ambayo ina - 154 00:08:11,690 --> 00:08:15,480 Sijui, kila aina ya orodha katika huko, au vitu vingine kwamba ni zaidi 155 00:08:15,480 --> 00:08:16,970 kuvutia, unaweza kabisa kufanya hivyo. 156 00:08:16,970 --> 00:08:17,880 Ni kabisa faini. 157 00:08:17,880 --> 00:08:21,210 Na kisha kama unataka iterate kupitia orodha, unaweza kutumia 158 00:08:21,210 --> 00:08:24,850 zaidi C-ish aina ya mbinu. 159 00:08:24,850 --> 00:08:29,970 Hiyo ni kwa kitanzi, wewe kuanzisha variable, i = "1", au i = "0". 160 00:08:29,970 --> 00:08:32,980 Na kisha kwenda, na iterate, na kupata yote ya vipengele. 161 00:08:32,980 --> 00:08:37,559 >> Lakini pia unaweza kutumia hii zaidi Ruby-kama mbinu. 162 00:08:37,559 --> 00:08:40,289 Hiyo tu kama list.each. 163 00:08:40,289 --> 00:08:45,230 Hiyo kusema tu, kurudi kwangu mambo yote ya orodha. 164 00:08:45,230 --> 00:08:49,120 Na kufanya na kila kipengele, kuwaita ELEM. 165 00:08:49,120 --> 00:08:51,880 Hivyo hii ni jina tu kwamba mimi nina kutoa kwa kila kipengele. 166 00:08:51,880 --> 00:08:56,630 Na sasa hii ni kwenda kurudia kwa ajili ya wote mambo, na ELEM, ni kwenda 167 00:08:56,630 --> 00:09:00,790 kwa kuwa kwa njia hiyo sisi kupata kwamba hiki moja. 168 00:09:00,790 --> 00:09:04,310 Hivyo unaweza kabisa fimbo na C mbinu, lakini hii kazi pia. 169 00:09:04,310 --> 00:09:07,970 Na ni hasa kitu kimoja, OK. 170 00:09:07,970 --> 00:09:13,830 >> Na nyingine zaidi ya kwamba, ni kweli, kweli ni rahisi kuunganisha Ruby na HTML 171 00:09:13,830 --> 00:09:17,010 tangu nyie ni nia ya katika maombi ya mtandao. 172 00:09:17,010 --> 00:09:20,070 HTML ni dhahiri kitu ambacho utaenda matumizi mengi. 173 00:09:20,070 --> 00:09:25,820 Na hapa kama alitaka kuweka Ruby katika HTML, kuanza tu hapa, <%. 174 00:09:25,820 --> 00:09:28,500 Hii ina maana, hapa Ruby kuanza. 175 00:09:28,500 --> 00:09:32,130 Na kisha%>, aina ya kama PHP katika njia hiyo. 176 00:09:32,130 --> 00:09:35,520 Hapa Ruby mwisho na kisha unaweza kuweka yako tu kama hapa. 177 00:09:35,520 --> 00:09:39,400 Na kisha mimi na baadhi ya kutofautiana user.logged_in. 178 00:09:39,400 --> 00:09:45,120 Katika Ruby, sisi kwa kawaida kuongeza wale, ama kuhojiwa alama au mshangao 179 00:09:45,120 --> 00:09:48,210 alama, kama tabia ya benki, tu aina ya 180 00:09:48,210 --> 00:09:49,480 kutofautisha kati ya kazi yetu. 181 00:09:49,480 --> 00:09:52,780 Lakini wewe tu kuweka kwamba kwa ajili yako mwenyewe. 182 00:09:52,780 --> 00:09:56,910 Siyo kitu ambacho mabadiliko kitu chochote katika utendaji. 183 00:09:56,910 --> 00:10:01,160 >> Hivyo tu kuwakumbusha yangu kwamba hii ni kazi - na kazi katika Ruby, 184 00:10:01,160 --> 00:10:06,650 badala ya C, kama nilivyosema tayari, hawana haja ya mabano. 185 00:10:06,650 --> 00:10:09,740 Ili watumiaji katika kitu, hiyo ni kazi, hiyo ni mbinu. 186 00:10:09,740 --> 00:10:12,990 Lakini si wazi haja ya kuweka mabano katika huko. 187 00:10:12,990 --> 00:10:16,030 Hivyo tu kuuliza kama mtumiaji watumiaji katika, na kama mtumiaji watumiaji katika, sasa 188 00:10:16,030 --> 00:10:17,100 HTML kuanza tena. 189 00:10:17,100 --> 00:10:21,670 Hivyo Karibu, na hapa Mimi magazeti user.name. 190 00:10:21,670 --> 00:10:22,920 Na hiyo ni yake. 191 00:10:22,920 --> 00:10:24,970 192 00:10:24,970 --> 00:10:30,420 Hivyo kwamba ni pretty moja kwa moja mbele, jinsi ninyi kuunganisha Ruby na HTML yako. 193 00:10:30,420 --> 00:10:34,560 Na rasilimali, kama nilivyosema, kuna kila aina ya rasilimali kwa ajili ya Ruby. 194 00:10:34,560 --> 00:10:39,560 You guys wanaweza kuangalia hii up baadaye kwa sababu wote wawili video, na 195 00:10:39,560 --> 00:10:40,875 slides, ni kwenda kuwa inapatikana online. 196 00:10:40,875 --> 00:10:44,620 197 00:10:44,620 --> 00:10:47,180 >> Na sasa hebu kupata ndani ya reli. 198 00:10:47,180 --> 00:10:48,330 Reli ni upendo. 199 00:10:48,330 --> 00:10:49,230 Reli - 200 00:10:49,230 --> 00:10:51,030 hivyo Ruby ni lugha yake. 201 00:10:51,030 --> 00:10:54,340 OK, kama PHP, kama vile Python. 202 00:10:54,340 --> 00:10:59,980 Ni lugha kiwango cha juu, si kama C. C ya katikati, ngazi ya chini lugha katika 203 00:10:59,980 --> 00:11:05,240 maana kwamba Ruby huna kwa wasiwasi kuhusu kumbukumbu uhamishaji, na 204 00:11:05,240 --> 00:11:07,300 kuyatumia, na wale aina ya mambo. 205 00:11:07,300 --> 00:11:11,120 Lakini reli ni mpango huu kwamba iliandikwa katika Ruby. 206 00:11:11,120 --> 00:11:15,610 Na inatumia Ruby, ili kuwa na hii mfumo, kwa maana ya kuwa na uwezo wa 207 00:11:15,610 --> 00:11:18,990 kujenga kutisha maombi ya mtandao. 208 00:11:18,990 --> 00:11:21,940 >> Hivyo kuwa na kwanza kufunga Ruby juu ya mashine yako, lakini mashine nyingi 209 00:11:21,940 --> 00:11:22,630 tayari kuwa na hiyo. 210 00:11:22,630 --> 00:11:24,800 Na kisha kufunga reli juu yake. 211 00:11:24,800 --> 00:11:26,540 Tunakwenda kuzungumzia suala hilo baadaye. 212 00:11:26,540 --> 00:11:28,100 Na kwa nini Rails? 213 00:11:28,100 --> 00:11:31,470 Hivyo MVC, hiyo ni mfano wa kuigwa maoni mtawala kuongelea kidogo 214 00:11:31,470 --> 00:11:36,050 kidogo, hufanya kila kitu rahisi kwa sababu ni mgawanyiko mambo ambayo ni 215 00:11:36,050 --> 00:11:42,420 conceptually mbalimbali ndani ya mbalimbali sehemu ya maombi yako. 216 00:11:42,420 --> 00:11:45,930 Chini ya muda alitumia juu ya matatizo ngazi ya chini, tena, na sana, sana 217 00:11:45,930 --> 00:11:46,820 maarufu hivi sasa. 218 00:11:46,820 --> 00:11:52,130 Hivyo kwa ambao ni nia ya wale wote kuanzisha eneo, au katika kitu 219 00:11:52,130 --> 00:11:58,435 kama kuanza biashara, na watu katika soko la teknolojia ambao ni 220 00:11:58,435 --> 00:12:02,440 kuanzisha biashara zao wenyewe sasa hivi ni kweli, kweli mashabiki wa Ruby juu ya 221 00:12:02,440 --> 00:12:04,120 Reli kwa sababu ni hivyo haraka. 222 00:12:04,120 --> 00:12:07,510 >> Hivyo unaweza kupata kitu juu na mbio katika chini ya siku, na kwamba 223 00:12:07,510 --> 00:12:10,410 kweli nzito sana Hoja kutumia Ruby. 224 00:12:10,410 --> 00:12:13,460 Na reli 4.0 - 225 00:12:13,460 --> 00:12:15,920 ni safi sana kutoka tanuri sasa. 226 00:12:15,920 --> 00:12:16,930 Hivyo reli 4.0 - 227 00:12:16,930 --> 00:12:20,180 Nadhani kwanza kutolewa ilikuwa Machi mwaka huu. 228 00:12:20,180 --> 00:12:23,460 Na ni kweli ni nzuri, ina wote aina ya mpya, makala ya baridi. 229 00:12:23,460 --> 00:12:30,290 Hivyo Ruby juu ya reli ni mfumo kwamba daima kuwa updated kuwa na wote 230 00:12:30,290 --> 00:12:31,540 ya teknolojia mpya. 231 00:12:31,540 --> 00:12:33,710 232 00:12:33,710 --> 00:12:39,800 >> mara ya kwanza mimi alijaribu kutumia Ruby juu ya Reli, mimi alikuwa na shida hii kwa sababu mimi 233 00:12:39,800 --> 00:12:44,540 kuundwa mtandao wangu maombi ya kwanza, na inaonekana hasa kama hiyo. 234 00:12:44,540 --> 00:12:49,020 Hivyo inajenga wote wa files wale kwa wewe, na mimi nilikuwa na wazo nini - 235 00:12:49,020 --> 00:12:50,780 ni nini hii? 236 00:12:50,780 --> 00:12:54,850 Ni kuundwa wale mafaili yote, na mimi tu alitaka kujenga mpango rahisi, 237 00:12:54,850 --> 00:12:57,140 rahisi HTML tovuti. 238 00:12:57,140 --> 00:12:59,680 Na sikuweza hata kufanya kitu chochote. 239 00:12:59,680 --> 00:13:02,430 Hivyo nilikuwa kidogo kuzidiwa. 240 00:13:02,430 --> 00:13:08,350 Lakini hiyo ni moja ya mambo ambayo mara moja kuelewa, kila kitu inakuwa hivyo 241 00:13:08,350 --> 00:13:09,190 wazi sana. 242 00:13:09,190 --> 00:13:15,750 Hivyo si kuwa na kuzidiwa na kwanza mbele ya nini kujenga kwa mara ya kwanza. 243 00:13:15,750 --> 00:13:18,430 >> Hivyo kile kinachotokea ni reli inajenga wale mafaili yote. 244 00:13:18,430 --> 00:13:20,470 Basi mmoja wa kwamba ni doc, nyaraka. 245 00:13:20,470 --> 00:13:23,080 Db, kwamba kuhusiana na database. 246 00:13:23,080 --> 00:13:25,060 Lib, kwamba maktaba kuingia. 247 00:13:25,060 --> 00:13:28,200 Umma, script, na baadhi ya mambo. 248 00:13:28,200 --> 00:13:32,110 Pretty much wote wewe ni kwenda na wasiwasi kuhusu ni programu folder, hadi pale. 249 00:13:32,110 --> 00:13:34,430 Hiyo ni folder ambayo ina maombi yako. 250 00:13:34,430 --> 00:13:35,540 Wote wa files nyingine - 251 00:13:35,540 --> 00:13:37,770 baadhi yao ni muhimu, na wewe ni kwenda kujifunza kuhusu baadaye. 252 00:13:37,770 --> 00:13:42,040 Lakini wao ni tu hapa vyenye mfumo. 253 00:13:42,040 --> 00:13:46,420 Hivyo cornerstones ya kwanza ya nyumba nyie ni kujenga, OK? 254 00:13:46,420 --> 00:13:47,730 >> Lakini programu folder - 255 00:13:47,730 --> 00:13:49,630 hiyo ni moja muhimu. 256 00:13:49,630 --> 00:13:53,050 Na programu folder ina mali. 257 00:13:53,050 --> 00:13:57,690 Mali ni kila kitu pretty much kwamba ijayo. 258 00:13:57,690 --> 00:14:01,890 Picha kwa mfano, kila kitu kilicho tuli kwamba kinaendelea kuwa kupakuliwa 259 00:14:01,890 --> 00:14:03,450 na tovuti yako. 260 00:14:03,450 --> 00:14:06,850 Hivyo picha, JavaScript, CSS - 261 00:14:06,850 --> 00:14:08,520 wale aina ya mambo ni mali. 262 00:14:08,520 --> 00:14:11,310 263 00:14:11,310 --> 00:14:12,260 Controllers - 264 00:14:12,260 --> 00:14:15,190 tunakwenda kuzungumza zaidi kuhusu nini ni controllers, mifano, 265 00:14:15,190 --> 00:14:16,800 na mashamba katika pili. 266 00:14:16,800 --> 00:14:20,760 Na wasaidizi ni kazi kwamba unaweza kutumia wote juu ya kanuni yako 267 00:14:20,760 --> 00:14:22,800 kukusaidia kufanya kitu fulani. 268 00:14:22,800 --> 00:14:25,800 Kazi kama umeingia, kwa mfano - user.loggedin. 269 00:14:25,800 --> 00:14:29,500 Hiyo ni kazi ambayo pengine wewe kutumia katika maeneo yote ya yako 270 00:14:29,500 --> 00:14:30,030 maombi. 271 00:14:30,030 --> 00:14:33,590 Hivyo unaweza kuweka kitu kama kwamba katika msaidizi wako. 272 00:14:33,590 --> 00:14:34,370 >> Mailers - 273 00:14:34,370 --> 00:14:41,480 kwamba kama wewe ni kwenda kutuma barua pepe kwa watumiaji yako, 274 00:14:41,480 --> 00:14:43,420 wanataka kutumia mailer. 275 00:14:43,420 --> 00:14:46,420 Na mifano na maoni, tunakwenda kuzungumzia suala hilo hivi sasa. 276 00:14:46,420 --> 00:14:52,450 Hivyo mfano maoni mtawala, kwamba msingi ya msingi ya Ruby juu ya 277 00:14:52,450 --> 00:14:55,730 Reli, na mifumo zaidi siku hizi, kwa kuwa waaminifu. 278 00:14:55,730 --> 00:15:01,180 Hivyo tena, sisi tofauti zote za kanuni zetu katika sehemu tatu tofauti. 279 00:15:01,180 --> 00:15:02,590 mfano - 280 00:15:02,590 --> 00:15:04,620 mfano ni kimsingi database. 281 00:15:04,620 --> 00:15:06,090 Hushughulikia mambo katika database. 282 00:15:06,090 --> 00:15:10,790 >> Hivyo kila meza katika database ina sambamba file ndani ya mfano. 283 00:15:10,790 --> 00:15:13,330 Hivyo ni aina ya meza kwa watumiaji. 284 00:15:13,330 --> 00:15:18,250 Hivyo wewe ni kuhifadhi taarifa kama jina la mtumiaji, barua yao, wao 285 00:15:18,250 --> 00:15:20,970 mitaani, password yao, na mambo kama hayo. 286 00:15:20,970 --> 00:15:24,535 Wewe ni kwenda na faili moja katika mfano aitwaye user rb - 287 00:15:24,535 --> 00:15:26,240 RB kwa Ruby. 288 00:15:26,240 --> 00:15:30,180 Na hapo ni kwenda na wote ya mbinu na vigezo. 289 00:15:30,180 --> 00:15:34,130 vigezo ni kwenda yanahusiana kwa jina la mtumiaji, barua pepe, na 290 00:15:34,130 --> 00:15:35,370 kila kitu. 291 00:15:35,370 --> 00:15:37,760 >> Na wewe kwenda na mbinu. 292 00:15:37,760 --> 00:15:42,690 Hiyo itakuwa ni kitu juu ya - 293 00:15:42,690 --> 00:15:46,400 wewe ni kwenda kushughulikia habari hii katika database. 294 00:15:46,400 --> 00:15:50,220 Kujenga mfano wa kuigwa na reli, wewe tu kutumia reli kuzalisha. 295 00:15:50,220 --> 00:15:54,990 Na kujenga mambo katika reli, wewe kweli wanahitaji terminal. 296 00:15:54,990 --> 00:15:58,770 Hivyo ni terminal sana msingi wa mfumo. 297 00:15:58,770 --> 00:16:02,530 Wewe tu kuingia katika terminal, na wala reli, kuzalisha mfano wa kuigwa. 298 00:16:02,530 --> 00:16:04,670 Na jina la mfano ni mtumiaji. 299 00:16:04,670 --> 00:16:10,270 Na mimi nataka tu kwa kuwa na vigezo mbili, safu mbili, katika meza yangu. 300 00:16:10,270 --> 00:16:11,450 Hivyo kwamba ni email. 301 00:16:11,450 --> 00:16:13,080 Barua pepe ni kamba aina. 302 00:16:13,080 --> 00:16:15,450 Password, password ni pia string aina. 303 00:16:15,450 --> 00:16:16,520 Hayo ni mambo mawili tu. 304 00:16:16,520 --> 00:16:19,160 Ni aina ya simplistic user meza. 305 00:16:19,160 --> 00:16:22,490 Lakini unaweza kabisa kuweka mia kitu huko kama alitaka. 306 00:16:22,490 --> 00:16:27,620 >> Na reli pia inafanya sana, rahisi sana na kila 307 00:16:27,620 --> 00:16:30,040 aina ya mahusiano ya database. 308 00:16:30,040 --> 00:16:36,100 Hivyo kawaida, wakati una meza yako katika database, wao siyo sana 309 00:16:36,100 --> 00:16:37,570 huru ya mtu mwingine. 310 00:16:37,570 --> 00:16:39,392 Hebu fikiria juu. 311 00:16:39,392 --> 00:16:42,960 Unataka kununua na kuuza bidhaa online. 312 00:16:42,960 --> 00:16:46,620 OK, hivyo kuwa tovuti ambapo unataka kununua na kuuza bidhaa. 313 00:16:46,620 --> 00:16:55,060 Hivyo kila mtumiaji ina bidhaa nyingi kwamba user hii ni tayari kuuza. 314 00:16:55,060 --> 00:17:00,970 Na kila mtumiaji pia ina shughuli nyingi kwamba ni unaoendelea, au 315 00:17:00,970 --> 00:17:01,920 kitu kama hicho. 316 00:17:01,920 --> 00:17:05,430 Na shughuli ni na mtumiaji mwingine. 317 00:17:05,430 --> 00:17:08,310 Kila shughuli ni kwa watumiaji mbili tofauti. 318 00:17:08,310 --> 00:17:10,560 user hiyo kununua na user hiyo kuuza. 319 00:17:10,560 --> 00:17:13,920 >> Basi hizo kinachojulikana mahusiano ya database. 320 00:17:13,920 --> 00:17:17,890 Na hapa tuna hasa wale maneno, ina watu wengi na mali ya. 321 00:17:17,890 --> 00:17:19,500 Hao ndio muhimu zaidi. 322 00:17:19,500 --> 00:17:22,410 Na wewe tu kwenda kusema, kwa mfano, hii ni mfano wa 323 00:17:22,410 --> 00:17:25,740 mfano wa kuigwa katika Harvard 2017 tovuti. 324 00:17:25,740 --> 00:17:28,820 Tena, wanafunzi katika hapa - 325 00:17:28,820 --> 00:17:32,870 kila mwanafunzi katika tovuti, mwanafunzi ni mfano, ni meza database. 326 00:17:32,870 --> 00:17:37,560 Kila mwanafunzi alikuwa vitabu vingi kwa sababu wewe naweza kusema, ni favorite yako 327 00:17:37,560 --> 00:17:38,630 vitabu, kulia. 328 00:17:38,630 --> 00:17:44,450 Hivyo kila kitabu ni mali ya mwanafunzi hapa chini. 329 00:17:44,450 --> 00:17:46,910 Na sifa kupatikana - 330 00:17:46,910 --> 00:17:49,580 hiyo tu kusema, wale ni vigezo. 331 00:17:49,580 --> 00:17:53,050 Wale ni vigezo kupatikana na mfano huu. 332 00:17:53,050 --> 00:17:58,570 Na vigezo ni mwandishi wa kitabu, maelezo, Ghana, na 333 00:17:58,570 --> 00:17:59,870 jina la kitabu. 334 00:17:59,870 --> 00:18:02,700 Hivyo tu habari kuhusu kitabu. 335 00:18:02,700 --> 00:18:06,410 >> Na hapa nina njia ambayo tu aina kila kitu. 336 00:18:06,410 --> 00:18:10,710 Hivyo kufafanua na mwisho hapa, kwamba tu akisema, inakuja njia yangu. 337 00:18:10,710 --> 00:18:13,220 Self.sorted_all. 338 00:18:13,220 --> 00:18:16,390 Hiyo ni, nipe kila kitu yamepangwa, na kwamba ni jinsi gani kutekeleza 339 00:18:16,390 --> 00:18:22,360 kuchagua algorithm, ambayo ni haki rahisi. 340 00:18:22,360 --> 00:18:27,430 Lakini kimsingi, hii ni jinsi gani mfano inaonekana kama, OK. 341 00:18:27,430 --> 00:18:32,990 Je, mtu yeyote una maswali kuhusu jambo hili database? 342 00:18:32,990 --> 00:18:33,736 Mahusiano? 343 00:18:33,736 --> 00:18:36,430 Ni wazi kwamba? 344 00:18:36,430 --> 00:18:37,125 Ndiyo. 345 00:18:37,125 --> 00:18:38,490 >> Watazamaji: Je, unaweza kufanya aina algorithm? 346 00:18:38,490 --> 00:18:41,960 >> GABRIEL Guimaraes: aina algorithm, OK. 347 00:18:41,960 --> 00:18:45,340 Baada ya kupata kutumika Ruby syntax, itakuja kuwa wazi. 348 00:18:45,340 --> 00:18:48,800 Lakini kimsingi, elems ni Book.all. 349 00:18:48,800 --> 00:18:50,820 Hivyo kitabu ni jina la mfano wangu. 350 00:18:50,820 --> 00:18:55,670 Wakati kujenga mfano, inakuja na kila aina ya mbinu nzuri kwa ajili yenu. 351 00:18:55,670 --> 00:18:58,810 Hivyo dot.all ni njia ambayo anarudi vitabu vyote. 352 00:18:58,810 --> 00:19:02,560 Lakini kupata, kwa mfano, kuwapekua kitabu moja na kurudi kitabu hicho, au 353 00:19:02,560 --> 00:19:03,840 kitu kama hicho. 354 00:19:03,840 --> 00:19:05,990 Na hivyo elems ni kila kitu. 355 00:19:05,990 --> 00:19:08,870 Na Mimi tu kusema elems.sort. 356 00:19:08,870 --> 00:19:11,300 Aina ni kujengwa katika Ruby kazi. 357 00:19:11,300 --> 00:19:13,526 >> Na, kufanya ba. 358 00:19:13,526 --> 00:19:15,940 Hivyo hii wala tena ni - 359 00:19:15,940 --> 00:19:17,400 utaenda aina. 360 00:19:17,400 --> 00:19:19,850 Lakini wewe kwenda kupata hoja hii kwa ajili yangu. 361 00:19:19,850 --> 00:19:25,160 Na hoja anatumia - hii ni moja ya mambo magumu katika Ruby kweli, 362 00:19:25,160 --> 00:19:26,920 hii kufanya lolote. 363 00:19:26,920 --> 00:19:31,470 Lakini mara moja kuelewa kila kitu huja sana, angavu sana. 364 00:19:31,470 --> 00:19:37,140 Hivyo ab, hii ni kusema mahali wamiliki kwamba mimi nina kwenda kutumia - kama 365 00:19:37,140 --> 00:19:41,760 vigezo mimi nina kwenda kutumia, ni kwenda kuitwa a na b. 366 00:19:41,760 --> 00:19:43,380 Na wale ni vitabu. 367 00:19:43,380 --> 00:19:47,120 >> Basi, kwa sababu aina mahitaji ya kulinganisha vipengele, kumbuka kwamba? 368 00:19:47,120 --> 00:19:49,760 Hivyo wakati wewe kutatua mambo, wewe kulinganisha mambo mawili. 369 00:19:49,760 --> 00:19:51,900 Mimi nina kwenda kusema kwamba kila wakati wewe ni kwenda kulinganisha - 370 00:19:51,900 --> 00:19:54,350 hivyo hii ni, mimi nina kupita aina hoja. 371 00:19:54,350 --> 00:19:59,370 Na hoja ni kila kitu kutoka kufanya kwa na hapa, OK? 372 00:19:59,370 --> 00:20:02,980 Na hoja hii, ni kuwaambia tu aina jinsi ya kulinganisha. 373 00:20:02,980 --> 00:20:07,460 Aina ingekuwa kazi hapa, lakini itakuwa kulinganisha na wao 374 00:20:07,460 --> 00:20:09,530 default kulinganisha algorithm. 375 00:20:09,530 --> 00:20:13,810 Mimi nataka kulinganisha katika maalum sana njia, yaani, wakati kitabu 376 00:20:13,810 --> 00:20:16,900 iliundwa, wakati kila kitabu iliundwa. 377 00:20:16,900 --> 00:20:21,090 >> Hivyo mimi kusema, kusema jina la kwanza kitabu ni na jina la 378 00:20:21,090 --> 00:20:27,620 kitabu cha pili kama b, nataka aina kwa aina kuhusu jambo linalotokana na b.created_at hii 379 00:20:27,620 --> 00:20:30,000 ishara weird, a.created_at. 380 00:20:30,000 --> 00:20:34,350 Na ishara kwamba weird ni shorthand kwa mtu ni kubwa kuliko 381 00:20:34,350 --> 00:20:35,380 nyingine, kurudi 1. 382 00:20:35,380 --> 00:20:37,450 Kama mtu ni sawa na nyingine, kurudi sifuri. 383 00:20:37,450 --> 00:20:41,180 Kama mtu ni ndogo kuliko nyingine, kurudi minus 1. 384 00:20:41,180 --> 00:20:43,435 Hivyo kwamba ni nini ishara kwamba weird ni. 385 00:20:43,435 --> 00:20:46,680 386 00:20:46,680 --> 00:20:47,500 >> Lakini si kwamba muhimu. 387 00:20:47,500 --> 00:20:52,780 I mean, nini Mimi nataka wewe guys kupata sasa ni wazo kwamba database - 388 00:20:52,780 --> 00:20:54,150 unaweza kuwa na mfano huko. 389 00:20:54,150 --> 00:20:59,850 Hivyo huna kuwa na wasiwasi kuhusu kuunganisha na kutumia taarifa SQL, 390 00:20:59,850 --> 00:21:00,500 na mambo kama hayo. 391 00:21:00,500 --> 00:21:04,920 Pia unaweza kuunda milango ya SQL sindano na wote 392 00:21:04,920 --> 00:21:06,460 aina ya matatizo ya usalama. 393 00:21:06,460 --> 00:21:07,930 Katika kesi hiyo, huna wasiwasi juu ya hilo. 394 00:21:07,930 --> 00:21:11,880 Wewe tu kutumia njia kama book.all. 395 00:21:11,880 --> 00:21:15,210 Na kwamba, katika historia bila shaka, ni kwenda Mbegu yako, na ni 396 00:21:15,210 --> 00:21:17,570 kwenda kutumia taarifa SQL kupata vitabu vyote. 397 00:21:17,570 --> 00:21:19,650 Lakini huna kwa wasiwasi juu ya hilo. 398 00:21:19,650 --> 00:21:24,090 Hiyo ni takeaway, OK? 399 00:21:24,090 --> 00:21:26,790 >> Na wakati una taarifa belongs_to kama hii, hiyo ina maana kwamba 400 00:21:26,790 --> 00:21:31,780 mara moja una kitabu cha kitu, wewe unaweza kuona nini ni mwanafunzi wake. 401 00:21:31,780 --> 00:21:34,130 Hivyo ambayo mwanafunzi ana kitabu hiki? 402 00:21:34,130 --> 00:21:38,760 Ili tuweze tu kutumia book.student, na kwamba anatoa nini mwanafunzi ni. 403 00:21:38,760 --> 00:21:42,440 Na kwamba ni kweli kipengele kuwa. 404 00:21:42,440 --> 00:21:43,950 >> Sawa, sasa maoni. 405 00:21:43,950 --> 00:21:48,380 Hivyo mfano ni nini inaingiliana na database, sawa? 406 00:21:48,380 --> 00:21:52,240 maoni kimsingi ni HTML, na CSS, na baadhi JavaScript. 407 00:21:52,240 --> 00:21:55,080 Na kwamba ni nini user kweli anaona. 408 00:21:55,080 --> 00:21:56,540 user si kwenda kuona database yako. 409 00:21:56,540 --> 00:22:00,290 Yeye anaenda kuona baadhi ya data kutoka database iliyoingia katika mtazamaji. 410 00:22:00,290 --> 00:22:04,940 411 00:22:04,940 --> 00:22:08,410 Ruby juu ya reli inafanya kweli rahisi kufanya mashamba. 412 00:22:08,410 --> 00:22:12,780 Kwanza, kwa sababu tayari inajenga kwa ajili yenu, nje ya boksi, layout. 413 00:22:12,780 --> 00:22:16,200 >> layout ni kimsingi kitu ambacho - 414 00:22:16,200 --> 00:22:24,230 kama wote wa kurasa yako na alama juu na, mimi sijui, baadhi orodha au 415 00:22:24,230 --> 00:22:29,000 kitu kama hicho, kwamba kurasa wote wako kushiriki katika kawaida, basi huna 416 00:22:29,000 --> 00:22:34,830 haja ya kuunda wengi, wengi, HTML files ambapo mafaili yote na kwamba 417 00:22:34,830 --> 00:22:36,830 sawa HTML code. 418 00:22:36,830 --> 00:22:40,700 I mean kwamba bubu kwa sababu wewe tu kurudia code kati ya files tofauti. 419 00:22:40,700 --> 00:22:42,480 Hiyo ni dhahiri si njia nzuri. 420 00:22:42,480 --> 00:22:45,660 >> Hivyo Ruby juu ya reli inajenga layout kwa ajili yenu. 421 00:22:45,660 --> 00:22:49,770 Na hii ni kusema tu, kurasa wangu wote ni kwenda na HTML hii, kichwa hii 422 00:22:49,770 --> 00:22:54,805 cheo hapa, na wale ni style karatasi kiungo tag. 423 00:22:54,805 --> 00:22:56,800 Kuziba katika hapa CSS yangu yote. 424 00:22:56,800 --> 00:23:01,194 Kuziba katika hapa wangu wote JavaScript na baadhi meta vitambulisho. 425 00:23:01,194 --> 00:23:04,440 Hiyo ni kitu kwamba wao tu kufanya moja kwa moja kwa ajili yenu. 426 00:23:04,440 --> 00:23:07,490 Na kisha, mwisho kichwa, sasa hapa kuanza mwili. 427 00:23:07,490 --> 00:23:09,780 Na sasa hii ni maudhui yangu halisi. 428 00:23:09,780 --> 00:23:16,620 Basi, ikiwa mimi alitaka kuweka kitu kama, a menu hapa, napenda kuweka haki juu ya 429 00:23:16,620 --> 00:23:19,600 nafasi hii, au kitu kama hicho, ili kwamba wale wote kurasa yangu pamoja yake. 430 00:23:19,600 --> 00:23:21,730 Hivyo layout ni pamoja na kurasa zote. 431 00:23:21,730 --> 00:23:26,500 >> Sasa kwa kuwa mavuno hapa tu anasema, hakuna jambo gani kurasa hii ni katika, tu 432 00:23:26,500 --> 00:23:30,560 kuziba katika maudhui ya kwamba ukurasa hapa, OK? 433 00:23:30,560 --> 00:23:33,770 Na sasa ni hii, kwa mfano, maudhui ya ukurasa mmoja kwenda kuwa 434 00:23:33,770 --> 00:23:38,950 imeingia kwenye kiini kauli hii mavuno moja kwa moja na reli. 435 00:23:38,950 --> 00:23:40,700 Lakini hii ni layout pamoja na kurasa zote. 436 00:23:40,700 --> 00:23:42,500 Na huu ni mfano wa ukurasa mmoja. 437 00:23:42,500 --> 00:23:46,410 Na hii ni hasa ukurasa kwamba orodha vitabu vyote. 438 00:23:46,410 --> 00:23:49,390 Hivyo hii ni ya msingi HTML meza juu juu. 439 00:23:49,390 --> 00:23:53,730 Hivyo listing vitabu, cheo, mwandishi, maelezo, Ghana. 440 00:23:53,730 --> 00:24:00,810 >> Na hapa sisi kutumia, tena, baadhi ya Ruby syntax, @ books.each-- 441 00:24:00,810 --> 00:24:07,720 @ Aina ya anasema kwamba variable yako ni ya kimataifa katika akili. 442 00:24:07,720 --> 00:24:10,940 Kwa sababu variable hii ilikuwa kweli alitangaza katika mtawala ambayo 443 00:24:10,940 --> 00:24:12,840 wewe ni kwenda kuona hivi sasa. 444 00:24:12,840 --> 00:24:18,570 Lakini tu kuchukua nafasi ya kwamba hii @ Vitabu ni variable kwamba ni orodha ya 445 00:24:18,570 --> 00:24:20,000 yote ya vitabu. 446 00:24:20,000 --> 00:24:24,580 Hivyo books.each, wala, na tena, hii ni kusema tu jinsi gani unataka kwa jina 447 00:24:24,580 --> 00:24:29,580 kila iterators ili sisi si kuwa na wasiwasi kuhusu nne, int i 448 00:24:29,580 --> 00:24:30,630 blah, blah, blah. 449 00:24:30,630 --> 00:24:33,760 Sisi tu kuchukua kila mambo na matumizi yao. 450 00:24:33,760 --> 00:24:38,890 >> Hivyo hii ni kitabu, na kisha tu magazeti hapa. book.title, book.author, 451 00:24:38,890 --> 00:24:41,020 book.description, na blah, blah, blah. 452 00:24:41,020 --> 00:24:42,940 Na hapa link_to. 453 00:24:42,940 --> 00:24:46,840 Hivyo link_to ni tag kiungo kwamba mtumiaji anaweza bonyeza na 454 00:24:46,840 --> 00:24:49,040 huenda kwa tovuti nyingine. 455 00:24:49,040 --> 00:24:51,160 Link_to, kuonyesha kitabu husika. 456 00:24:51,160 --> 00:24:56,480 Hivyo kama user ni hamu sana katika kitabu hiki, basi anaweza bonyeza show. 457 00:24:56,480 --> 00:24:59,350 Au bonyeza hariri, kama anataka hariri kitabu. 458 00:24:59,350 --> 00:25:03,560 Au kuharibu, kama anataka kufuta kitabu kutoka database. 459 00:25:03,560 --> 00:25:06,260 OK, je, hiyo hufanya akili? 460 00:25:06,260 --> 00:25:08,610 Nzuri. 461 00:25:08,610 --> 00:25:10,600 >> Hatimaye, mtawala. 462 00:25:10,600 --> 00:25:17,150 Hivyo kimsingi mtawala ni interface kati ya 463 00:25:17,150 --> 00:25:20,040 mfano wa kuigwa na maoni. 464 00:25:20,040 --> 00:25:25,120 Hivyo mfano ni sehemu yako ya kificho kwamba ina database - 465 00:25:25,120 --> 00:25:27,620 kila meza katika database ina file husika katika 466 00:25:27,620 --> 00:25:30,120 mfano, na kadhalika. 467 00:25:30,120 --> 00:25:34,890 Na jinsi ya kufanya mfano wa kuigwa na maoni ya kiutendaji? 468 00:25:34,890 --> 00:25:36,990 Hivyo, kwa njia ya mtawala. 469 00:25:36,990 --> 00:25:43,620 Nini mtawala gani ni ni mfano wa kuigwa kwa kitu kama, kwa mfano, 470 00:25:43,620 --> 00:25:46,510 kuweka yote ya kitabu ndani ya ya kutofautiana. 471 00:25:46,510 --> 00:25:47,760 Kama hii moja, @ vitabu. 472 00:25:47,760 --> 00:25:50,200 473 00:25:50,200 --> 00:25:54,800 >> Na inahitaji kuwa ya kimataifa na hii katika kitu kwa sababu itakuja kuwa 474 00:25:54,800 --> 00:25:56,180 kupatikana kwa maoni. 475 00:25:56,180 --> 00:26:00,000 Ni si kwenda kutumika ndani ya mtawala yenyewe. 476 00:26:00,000 --> 00:26:03,160 Na tu kupungua habari kwamba maoni ni kwenda kutumia. 477 00:26:03,160 --> 00:26:08,030 Kwa mfano, hundi mtawala kama mtumiaji ni online. 478 00:26:08,030 --> 00:26:09,620 Na jinsi gani kufanya hivyo? 479 00:26:09,620 --> 00:26:11,760 Ni kweli anauliza mfano kwa sababu mfano ina 480 00:26:11,760 --> 00:26:12,890 taarifa kuhusu mtumiaji. 481 00:26:12,890 --> 00:26:15,840 Ina meza watumiaji, vitabu meza, meza nyingine. 482 00:26:15,840 --> 00:26:18,560 Hivyo mtawala anauliza kama user ni online. 483 00:26:18,560 --> 00:26:23,760 Kama mtumiaji ni online, mtawala Hushughulikia mambo kama kuweka cookie, 484 00:26:23,760 --> 00:26:28,120 au kitu kama hicho, ili kuweka muhuri kusema kwamba user ni online. 485 00:26:28,120 --> 00:26:29,930 Hakuna haja ya kuingia tena. 486 00:26:29,930 --> 00:26:34,080 >> Na itakuja kupakia variable kuitwa user, kwa mfano, kwamba 487 00:26:34,080 --> 00:26:35,130 maoni inaweza kutumia. 488 00:26:35,130 --> 00:26:42,375 Na maoni inaweza kuweka kitu hapa, kwa mfano, kuwakaribisha user.name. 489 00:26:42,375 --> 00:26:46,040 Hivyo ni kwenda kusema, welcome John, welcome James - 490 00:26:46,040 --> 00:26:47,390 kitu kama hicho, sawa? 491 00:26:47,390 --> 00:26:50,380 Basi wote wa vigezo wale kutumika katika mtazamo ni kwenda kubeba katika 492 00:26:50,380 --> 00:26:54,190 mtawala na ni kwenda kuwa ng'olewa juu ya mfano wa kuigwa. 493 00:26:54,190 --> 00:26:58,310 494 00:26:58,310 --> 00:27:00,555 >> Huu ni mfano wa mtawala. 495 00:27:00,555 --> 00:27:03,140 496 00:27:03,140 --> 00:27:08,640 Hivyo tuna, kimsingi, kila - 497 00:27:08,640 --> 00:27:10,010 sisi kuwaita wale mambo vitendo. 498 00:27:10,010 --> 00:27:11,570 Hivyo index ni action. 499 00:27:11,570 --> 00:27:13,820 Ni kazi Ruby. 500 00:27:13,820 --> 00:27:16,160 Ni njia Ruby huko. 501 00:27:16,160 --> 00:27:19,350 Lakini kwa ajili ya simu mtawala mambo hayo matendo. 502 00:27:19,350 --> 00:27:24,830 Na kila hatua kuhusiana na njia. 503 00:27:24,830 --> 00:27:29,350 Hivyo hapa njia hii, kwa mfano, ni kupata taarifa / vitabu. 504 00:27:29,350 --> 00:27:37,500 Hivyo kama wewe kwenda harvard2017.com/books, nini kinaendelea kutokea ni kanuni hii ni 505 00:27:37,500 --> 00:27:40,630 kwenda kuitwa. 506 00:27:40,630 --> 00:27:44,290 >> Na kuna file - 507 00:27:44,290 --> 00:27:46,010 napenda kufungua haraka hii halisi. 508 00:27:46,010 --> 00:27:51,310 509 00:27:51,310 --> 00:27:55,386 Kuna faili inayoitwa file mbichi ni. 510 00:27:55,386 --> 00:27:57,920 Ni si ufunguzi. 511 00:27:57,920 --> 00:28:02,330 Hivyo kuna faili inayoitwa file mbichi kwamba kimsingi mechi - 512 00:28:02,330 --> 00:28:03,580 oh, sasa ni ufunguzi. 513 00:28:03,580 --> 00:28:15,900 514 00:28:15,900 --> 00:28:17,550 Hapa, njia. 515 00:28:17,550 --> 00:28:24,440 Hivyo kimsingi mechi matatizo, uanzishaji / mpya kwa mfano, 516 00:28:24,440 --> 00:28:27,810 kitu katika mtawala. 517 00:28:27,810 --> 00:28:31,580 Hivyo kuna mtawala hii inaitwa uanzishaji mtawala, lakini nje hapa, 518 00:28:31,580 --> 00:28:32,790 tuna vitabu, kwa mfano. 519 00:28:32,790 --> 00:28:33,740 Hivyo mechi - 520 00:28:33,740 --> 00:28:39,040 vitabu / mpya, mtawala vitabu, hatua mpya. 521 00:28:39,040 --> 00:28:41,290 Hivyo kimsingi, moja kwa moja sana mambo. 522 00:28:41,290 --> 00:28:43,970 523 00:28:43,970 --> 00:28:48,770 >> Na hapa, kama alikuwa na kupata / vitabu, kufyeka ID ya vitabu, kufyeka mpya, 524 00:28:48,770 --> 00:28:53,250 wewe ni kwenda kwa kuwa Ruby njia chini huko. 525 00:28:53,250 --> 00:28:58,210 Hivyo hapa, nini ripoti hii ni kufanya ni upakiaji tu kitabu logi. 526 00:28:58,210 --> 00:28:59,570 Hiyo ni kitu ambacho - 527 00:28:59,570 --> 00:29:02,160 Mimi kuingia yote ya vitabu katika logi. 528 00:29:02,160 --> 00:29:03,050 Na aina yote. 529 00:29:03,050 --> 00:29:05,870 Hivyo hii kwenda na kurudi yamepangwa vitabu vyote. 530 00:29:05,870 --> 00:29:07,940 Hii ni mara ya pili, katika database. 531 00:29:07,940 --> 00:29:09,570 Hivyo hii ni njia ya mfano. 532 00:29:09,570 --> 00:29:12,440 Unaweza kuona njia hii kuwa kuundwa kwa mfano. 533 00:29:12,440 --> 00:29:16,170 Sasa hii ni upakiaji tu vitabu vyote na kuweka kwamba katika variable kwamba 534 00:29:16,170 --> 00:29:17,490 inaweza kuonekana kwa maoni. 535 00:29:17,490 --> 00:29:20,680 >> Kwa sababu huwezi, katikati ya HTML code yako, unaweza kuwaita 536 00:29:20,680 --> 00:29:23,940 kitu moja kwa moja kutoka mfano, kwa sababu kwa sababu mbili. 537 00:29:23,940 --> 00:29:28,260 Kwanza, kwa sababu za kiusalama kwa sababu si kweli kuvutia kuwa 538 00:29:28,260 --> 00:29:32,920 upakiaji habari moja kwa moja ndani ya kila HTML kwamba katika database. 539 00:29:32,920 --> 00:29:36,030 Na pili, kuweka yako code kweli kupangwa. 540 00:29:36,030 --> 00:29:38,800 Hivyo tofauti hasa sehemu mbalimbali. 541 00:29:38,800 --> 00:29:42,830 Hivyo BookLog.sorted_all, hii katika database na hii ni kwenda kuweka katika 542 00:29:42,830 --> 00:29:44,290 variable @ vitabu. 543 00:29:44,290 --> 00:29:47,695 Na sasa variable hii ni kupatikana ndani ya HTML code yako. 544 00:29:47,695 --> 00:29:54,610 Hivyo unaweza kuweka tu yote ya vitabu pale tu kama tulivyofanya, haki hapa. 545 00:29:54,610 --> 00:29:57,760 Hii ni kutofautiana. 546 00:29:57,760 --> 00:30:04,730 >> Na ziara respond_to kufanya | format |, hii ni aina ya Ruby syntax kwa 547 00:30:04,730 --> 00:30:08,140 kama mtumiaji ni kuuliza mimi kwa HTML code, mimi nina kwenda kwa 548 00:30:08,140 --> 00:30:09,340 kujibu kwa HTML code. 549 00:30:09,340 --> 00:30:15,500 Kama mtumiaji anayeniuliza na JSON code, ambayo ni kitu ambacho programu kwenye mtandao hutumia 550 00:30:15,500 --> 00:30:20,780 kuwasiliana baina yao, wao matumizi ya kawaida JSON au nyingine 551 00:30:20,780 --> 00:30:23,120 aina ya kitu. 552 00:30:23,120 --> 00:30:25,850 Hivyo tu anajibu kwa kutumia wale muundo mbili tofauti. 553 00:30:25,850 --> 00:30:31,720 Lakini kwa mtumiaji kawaida, hii bila haja ya kuwa hapa. 554 00:30:31,720 --> 00:30:34,060 Wewe ingekuwa tu kujibu kwa HTML, na kwamba faini. 555 00:30:34,060 --> 00:30:36,220 Hivyo si kweli na wasiwasi kwamba sana kuhusu hili. 556 00:30:36,220 --> 00:30:39,510 Hii ni line tu ya maadili ya katika maisha yetu kudhibiti kama ni wa kupakia kutoka HTML 557 00:30:39,510 --> 00:30:42,630 database, kuweka katika kitu ambacho ni kupatikana kwa maoni. 558 00:30:42,630 --> 00:30:49,870 >> Na kisha mpya, hivyo hapa Mimi nina kujenga vitabu. 559 00:30:49,870 --> 00:30:55,490 Lakini kujenga vitabu, mimi haja mwanafunzi kwa sababu mimi haja ya kujua mwanafunzi 560 00:30:55,490 --> 00:30:58,490 ambao vitabu hili ni kwa, haki. 561 00:30:58,490 --> 00:31:00,780 Hivyo @ mwanafunzi = Mwanafunzi. 562 00:31:00,780 --> 00:31:06,500 Mwanafunzi, tena, sisi ni kwa kuanzia na S kubwa ni mfano wa kuigwa mwanafunzi. 563 00:31:06,500 --> 00:31:09,380 OK, hivyo hii ni mfano wa kuigwa mwanafunzi, hii ni kwa logi mfano kitabu. 564 00:31:09,380 --> 00:31:15,150 Student.find, hivyo mimi nina kwenda kupata mwanafunzi kutumia vigezo ID. 565 00:31:15,150 --> 00:31:19,160 params.id, hii ni kupata mimi tu thamani ya ID hii kwamba ilipitishwa - 566 00:31:19,160 --> 00:31:23,410 na URL. 567 00:31:23,410 --> 00:31:25,440 >> Tu kwenda kutafuta kwamba mwanafunzi. 568 00:31:25,440 --> 00:31:28,420 Na kwanza, sisi ni kwenda kuangalia kama mwanafunzi ana baadhi ya nyimbo 569 00:31:28,420 --> 00:31:29,910 na blah, blah, blah. 570 00:31:29,910 --> 00:31:35,570 Na hii tayari Hushughulikia kesi wakati mwanafunzi 571 00:31:35,570 --> 00:31:38,340 haipo, kwa mfano. 572 00:31:38,340 --> 00:31:44,450 Na kisha, mwingine, sisi tu kujibu kitu kimoja kutumia HTML. 573 00:31:44,450 --> 00:31:47,570 Na kisha tunaweza kuruhusu user kujenga nyimbo zao. 574 00:31:47,570 --> 00:31:49,320 Hivyo hii ni mpya. 575 00:31:49,320 --> 00:31:52,580 New ni kawaida kutumika kwa, basi user kujenga kitu. 576 00:31:52,580 --> 00:31:56,440 Na kisha kuna kujenga hatua hiyo ni kawaida kutumika kwa ajili ya - 577 00:31:56,440 --> 00:31:59,040 kweli kuweka nyimbo katika database au kitu kama hicho. 578 00:31:59,040 --> 00:32:01,770 Lakini mara moja kuanza kutumia reli, mambo hayo ni kwenda kuwa 579 00:32:01,770 --> 00:32:05,110 kiasi, zaidi ya wazi. 580 00:32:05,110 --> 00:32:07,910 OK, baridi. 581 00:32:07,910 --> 00:32:09,715 Maswali yoyote hadi sasa? 582 00:32:09,715 --> 00:32:15,240 Je, ni mantiki kwa controllers, mifano, mashamba - 583 00:32:15,240 --> 00:32:17,860 yeah? 584 00:32:17,860 --> 00:32:20,980 >> Tena katika reli maombi yako - 585 00:32:20,980 --> 00:32:24,700 hivyo wote wa ambayo yanaweza kupatikana katika hapa. 586 00:32:24,700 --> 00:32:30,430 Hivyo kuwa na programu, controllers, wale wote ni wa controllers yangu. 587 00:32:30,430 --> 00:32:32,880 Hivyo kwa mfano, vitabu kudhibiti. 588 00:32:32,880 --> 00:32:35,490 Hiyo ni moja sisi tu kuona. 589 00:32:35,490 --> 00:32:36,400 Na kisha maoni. 590 00:32:36,400 --> 00:32:39,750 Na kila mtawala ina maoni kuhusishwa, sawa? 591 00:32:39,750 --> 00:32:43,750 Hivyo moja kwa moja wakati wito huu index hapa, kwa mfano, au wakati 592 00:32:43,750 --> 00:32:49,930 wito huu vitabu vipya, basi maoni, vitabu, mpya ni kwenda kuitwa. 593 00:32:49,930 --> 00:32:53,300 >> Hivyo reli anafanya kila kitu moja kwa moja kwa ajili yenu. 594 00:32:53,300 --> 00:32:59,420 Hivyo kila mtawala ina kuhusishwa kuangalia na yote ya mifano - 595 00:32:59,420 --> 00:33:01,970 hapa nina moja, mbili, tatu, nne, mifano mitano. 596 00:33:01,970 --> 00:33:05,800 Lakini hii ni mwanafunzi mfano, ili wale ni vigezo kwamba wote 597 00:33:05,800 --> 00:33:08,620 wanafunzi na - ujanibishaji, tarehe ya kuzaliwa. 598 00:33:08,620 --> 00:33:11,270 Wanafunzi ni kidogo zaidi ngumu kwa sababu kila mwanafunzi ana 599 00:33:11,270 --> 00:33:15,400 zaidi mbalimbali njia kuhusishwa na yake. 600 00:33:15,400 --> 00:33:18,770 Lakini hii ni utunzaji tu meza kwamba alikuwa wote 601 00:33:18,770 --> 00:33:21,980 wanafunzi katika database. 602 00:33:21,980 --> 00:33:24,300 >> Na, OK, kufunga reli. 603 00:33:24,300 --> 00:33:27,710 Kufunga reli, kwa kuwa waaminifu, si jambo rahisi. 604 00:33:27,710 --> 00:33:32,980 Lakini mara kupata nyuma kila kitu, ni sana, ni rahisi sana. 605 00:33:32,980 --> 00:33:38,810 Hivyo kufunga reli, wewe tu kwenda kwa tovuti, rubyandrails.org / download 606 00:33:38,810 --> 00:33:41,510 na kufuata maelekezo yao huko. 607 00:33:41,510 --> 00:33:42,700 Shusha kila kitu. 608 00:33:42,700 --> 00:33:46,600 Na unaweza kufanya hivyo aidha katika Appliance, katika CS50 Appliance, juu ya 609 00:33:46,600 --> 00:33:51,120 Windows, juu ya Mac, au uendeshaji yoyote mfumo wa uchaguzi wako. 610 00:33:51,120 --> 00:33:52,460 Ruby juu ya reli anaendesha juu ya kila kitu. 611 00:33:52,460 --> 00:33:56,680 >> Tabia mbaya ni wewe tayari Ruby imewekwa kama una Mac au - 612 00:33:56,680 --> 00:33:58,130 katika vyombo vya Nadhani Ruby ni - 613 00:33:58,130 --> 00:34:00,940 Mimi nina uhakika. 614 00:34:00,940 --> 00:34:02,440 Na kisha wewe tu na hii imewekwa. 615 00:34:02,440 --> 00:34:07,190 Na kama unataka kujenga mpya mtandao maombi, wewe tu 616 00:34:07,190 --> 00:34:10,270 kufanya reli, mpya, blog. 617 00:34:10,270 --> 00:34:12,429 Reli, mpya - 618 00:34:12,429 --> 00:34:13,310 Sijui - 619 00:34:13,310 --> 00:34:15,050 jina la tovuti yako. 620 00:34:15,050 --> 00:34:16,380 Na ni rahisi hiyo. 621 00:34:16,380 --> 00:34:19,060 >> Ni kwenda kujenga wale wote files mimi tu ilionyesha wewe. 622 00:34:19,060 --> 00:34:22,730 Lakini mfano, mtazamo, na mtawala si kwenda kuwa 623 00:34:22,730 --> 00:34:24,330 wakazi bado. 624 00:34:24,330 --> 00:34:28,710 Wewe tu kwenda na kwenda huko na na idadi ya wale folders tatu. 625 00:34:28,710 --> 00:34:32,840 Hivyo ni tabia mbaya, unataka kujenga mfano, kwa mfano, kutekeleza moja 626 00:34:32,840 --> 00:34:33,780 mfano wa kwanza. 627 00:34:33,780 --> 00:34:40,440 Hivyo tena, siku zote kujaribu bite ndogo bits ya tatizo wakati huo. 628 00:34:40,440 --> 00:34:42,659 >> Na kisha hebu sema, kujenga mfano wa kuigwa kwa watumiaji. 629 00:34:42,659 --> 00:34:44,370 Hiyo ni jambo la kwanza kama una watumiaji. 630 00:34:44,370 --> 00:34:48,440 Kisha Mimi nataka kujenga mfano wa kuigwa tu kama sisi ilionyesha hapa. 631 00:34:48,440 --> 00:34:58,470 Reli, kuzalisha, mfano, user, na kisha kamba barua pepe - tuna kuwa hapa. 632 00:34:58,470 --> 00:35:01,200 Na kujenga tu mfano kwamba, ndiyo. 633 00:35:01,200 --> 00:35:05,030 Reli kuzalisha mfano mtumiaji barua pepe: string password: kamba. 634 00:35:05,030 --> 00:35:09,650 >> Na kisha kujenga mtawala ambayo inahusika na mtumiaji. 635 00:35:09,650 --> 00:35:12,790 Na unaweza kuunda watumiaji mpya na kufanya aina wale wa mambo. 636 00:35:12,790 --> 00:35:18,280 Na kisha unaweza kuendelea na kujenga wengine wa tovuti yako. 637 00:35:18,280 --> 00:35:22,470 Baridi, maswali? 638 00:35:22,470 --> 00:35:23,230 Ndiyo. 639 00:35:23,230 --> 00:35:24,480 >> Watazamaji: [inaudible] 640 00:35:24,480 --> 00:35:27,430 641 00:35:27,430 --> 00:35:29,910 >> GABRIEL Guimaraes: Ndiyo, ndiyo, dhahiri kuwa kwenda katika mtazamo. 642 00:35:29,910 --> 00:35:31,290 Hilo ni swali nzuri sana. 643 00:35:31,290 --> 00:35:36,410 Hivyo maoni ni nini hasa ina HTML yako. 644 00:35:36,410 --> 00:35:39,240 Hivyo ni nini watumiaji ni kwenda kuona. 645 00:35:39,240 --> 00:35:46,690 Tena, hapa, hii ni mfano wa maoni. 646 00:35:46,690 --> 00:35:52,040 Ina HTML code na Ruby code wakati huo huo. 647 00:35:52,040 --> 00:35:56,010 Hivyo Ruby code ni huko kuweka mambo kutoka database, kwa mfano, 648 00:35:56,010 --> 00:35:59,150 kwamba walikuwa kubeba katika mtawala. 649 00:35:59,150 --> 00:36:04,240 Ili variable @ vitabu, kwa mfano, ina wote wa vitabu na meza 650 00:36:04,240 --> 00:36:05,340 vitabu database. 651 00:36:05,340 --> 00:36:08,680 Tukiwa na uhakika kwamba alikuwa katika mtawala. 652 00:36:08,680 --> 00:36:10,250 >> Na mtazamo - 653 00:36:10,250 --> 00:36:15,900 kila kurasa mbali tovuti yako ni kwenda na moja kuhusishwa maoni. 654 00:36:15,900 --> 00:36:21,762 Hivyo kama wewe kwenda kwenye ukurasa wa nyumbani, ukurasa wa kwanza kabisa, harvard2017.com. 655 00:36:21,762 --> 00:36:23,490 Hiyo inaonyesha ukurasa mmoja. 656 00:36:23,490 --> 00:36:26,760 Na kisha kwenda kufyeka profile. 657 00:36:26,760 --> 00:36:30,150 Hiyo kwenda kwa mtawala kwamba profile mtawala. 658 00:36:30,150 --> 00:36:34,620 Na profile mtawala ni kwenda kukupa mtazamo profile. 659 00:36:34,620 --> 00:36:37,590 Na mtazamo profile ni kwenda kuangalia kiasi fulani kama hii, lakini kwenda 660 00:36:37,590 --> 00:36:41,910 kuwa na taarifa kuhusu user, na si juu ya vitabu. 661 00:36:41,910 --> 00:36:46,840 >> Hivyo ni HTML code na CSS na wale mambo ambayo user anaona 662 00:36:46,840 --> 00:36:49,680 na Ruby code - 663 00:36:49,680 --> 00:36:52,505 kwamba kweli Prints mambo kutoka database. 664 00:36:52,505 --> 00:36:54,520 Ni kwamba zaidi wazi? 665 00:36:54,520 --> 00:36:55,080 Natumaini. 666 00:36:55,080 --> 00:36:58,066 >> Watazamaji: HTML code ni kutumika kwa kweli kufanya tovuti ya kwamba 667 00:36:58,066 --> 00:37:02,470 user anaona, lakini Ruby code ni nini hufanya tovuti kazi? 668 00:37:02,470 --> 00:37:06,500 >> GABRIEL Guimaraes: kanuni Ruby anapata waongofu na HTML. 669 00:37:06,500 --> 00:37:09,420 Kwa hiyo kile mtumiaji anapata ni HTML tu, OK? 670 00:37:09,420 --> 00:37:10,900 Ni HTML tu. 671 00:37:10,900 --> 00:37:18,740 Book.title Hii ni kwenda kubadilisha na thamani ya book.title katika HTML, OK. 672 00:37:18,740 --> 00:37:23,080 Hivyo hii yote ni katika server, na hivyo hii unategemea nini vitabu ni pale 673 00:37:23,080 --> 00:37:24,410 katika server hivi sasa. 674 00:37:24,410 --> 00:37:32,930 Lakini nini server ingekuwa mara moja maana ni tu HTML code, OK. 675 00:37:32,930 --> 00:37:36,720 >> Lakini maoni tu anatoa layout ya nini HTML ilikuwa kwenda kuangalia kama 676 00:37:36,720 --> 00:37:39,530 na nini vigezo ni kwenda kuwa. 677 00:37:39,530 --> 00:37:42,170 Aina hii ya magazeti nje, OK. 678 00:37:42,170 --> 00:37:44,360 Mambo hayo kuna kimsingi magazeti mitumbwi. 679 00:37:44,360 --> 00:37:47,430 Wao wanaenda magazeti vigezo, OK. 680 00:37:47,430 --> 00:37:49,850 Kwa hiyo kile ni HTML tu, hao - 681 00:37:49,850 --> 00:37:51,390 mwandishi, cheo, maelezo. 682 00:37:51,390 --> 00:37:53,540 Hiyo ni maudhui ya tuli. 683 00:37:53,540 --> 00:37:54,520 Hiyo si kwenda na mabadiliko. 684 00:37:54,520 --> 00:37:56,700 Hiyo ni wazi tu HTML code. 685 00:37:56,700 --> 00:37:59,080 Wale ni mitumbwi magazeti kwa vigezo - 686 00:37:59,080 --> 00:38:00,330 mambo ambayo wanategemea. 687 00:38:00,330 --> 00:38:02,350 688 00:38:02,350 --> 00:38:03,600 Baridi, zaidi maswali? 689 00:38:03,600 --> 00:38:12,120 690 00:38:12,120 --> 00:38:12,600 Nzuri? 691 00:38:12,600 --> 00:38:13,080 Ndiyo. 692 00:38:13,080 --> 00:38:15,720 >> Watazamaji: Nadhani walikuwa kufanya yote editing katika maandishi mbalimbali 693 00:38:15,720 --> 00:38:16,920 editing mpango. 694 00:38:16,920 --> 00:38:19,520 Je, sisi pia kushusha kwamba? 695 00:38:19,520 --> 00:38:24,250 >> GABRIEL Guimaraes: Yeah, mimi kama hii Nakala mhariri aitwaye TextMate. 696 00:38:24,250 --> 00:38:24,990 Na kwa kweli ni nzuri. 697 00:38:24,990 --> 00:38:26,980 Ni vizuri inafaa kwa Ruby. 698 00:38:26,980 --> 00:38:29,270 Ni rangi mambo vizuri sana. 699 00:38:29,270 --> 00:38:34,770 Hivyo TextMate, T-E-X-T. Mimi nina kwenda kuweka kwamba, kushikilia - 700 00:38:34,770 --> 00:38:42,880 701 00:38:42,880 --> 00:38:45,720 >> I mean unaweza kutumia gedit au kitu chochote unataka. 702 00:38:45,720 --> 00:38:49,970 Lakini hii ni maalum kwa ajili ya Mac, na hii ni nadhifu kweli kwa sababu unaweka yote ya 703 00:38:49,970 --> 00:38:51,000 mafaili yako chini huko. 704 00:38:51,000 --> 00:38:53,620 Na katika Ruby juu ya reli, unahitaji kubadili files mengi. 705 00:38:53,620 --> 00:38:55,890 Hivyo ni wengi, wengi files tu kwenda kutoka file moja, Rukia 706 00:38:55,890 --> 00:38:57,120 file moja au nyingine. 707 00:38:57,120 --> 00:39:02,000 Hivyo TextMate ni moja nzuri sana, lakini kuna huko nje mengi. 708 00:39:02,000 --> 00:39:03,250 Maswali zaidi? 709 00:39:03,250 --> 00:39:08,680 710 00:39:08,680 --> 00:39:09,870 OK, ndiyo? 711 00:39:09,870 --> 00:39:12,825 >> Watazamaji: Je, kuna maendeleo Mkono kupitia Ruby juu ya reli? 712 00:39:12,825 --> 00:39:15,640 713 00:39:15,640 --> 00:39:17,050 >> GABRIEL Guimaraes: Nina habari ya tukio hilo. 714 00:39:17,050 --> 00:39:19,550 Mimi si kutumika yao. 715 00:39:19,550 --> 00:39:21,570 Unaweza utafiti zaidi juu ya hilo. 716 00:39:21,570 --> 00:39:24,740 Mimi nina uhakika kama kuna yoyote jambo zuri huko nje. 717 00:39:24,740 --> 00:39:29,980 718 00:39:29,980 --> 00:39:31,030 OK, ndiyo? 719 00:39:31,030 --> 00:39:32,280 >> Watazamaji: [inaudible] 720 00:39:32,280 --> 00:39:38,340 721 00:39:38,340 --> 00:39:40,550 >> GABRIEL Guimaraes: Si reli, pengine Ruby safu. 722 00:39:40,550 --> 00:39:44,270 723 00:39:44,270 --> 00:39:49,080 Kufungua dirisha terminal na aina, "Ruby". 724 00:39:49,080 --> 00:39:52,030 Yeah, pengine, na kisha tu kufunga reli. 725 00:39:52,030 --> 00:39:57,050 Lakini kama wewe ni kwenda kufunga mpya Reli 4.0, ambayo mimi sana kupendekeza, 726 00:39:57,050 --> 00:40:02,870 unapaswa kushusha Ruby 2.0. 727 00:40:02,870 --> 00:40:04,530 Hiyo ni moja mpya pia. 728 00:40:04,530 --> 00:40:09,530 Na reli mpya 4.0 ina kitu kweli baridi kwamba 729 00:40:09,530 --> 00:40:11,260 haina na mali. 730 00:40:11,260 --> 00:40:12,810 Hushughulikia mali. 731 00:40:12,810 --> 00:40:18,860 Mali tena ni picha, files CSS, na JavaScript files. 732 00:40:18,860 --> 00:40:24,060 Hivyo jambo moja nadhifu kweli kwamba Ruby juu ya Reli haina kwa ajili yenu ni wale wote CSS 733 00:40:24,060 --> 00:40:26,980 files kwamba kuwa na kila kitu - 734 00:40:26,980 --> 00:40:32,420 tu bahasha kila kitu juu katika moja file kubwa, na hakuna nafasi au kitu chochote, 735 00:40:32,420 --> 00:40:40,120 ili kupunguza muda user mahitaji ya download kwamba kanuni kutoka server yako. 736 00:40:40,120 --> 00:40:47,780 >> Hivyo wakati unaweza kuona katika kompyuta yako, ni kwenda na kama 15 CSS files. 737 00:40:47,780 --> 00:40:49,520 Au wengi, wengi files mbalimbali CSS. 738 00:40:49,520 --> 00:40:54,890 Lakini mwisho wa siku, nini reli moja kwa moja haina kwa ajili yenu ni unaweka 739 00:40:54,890 --> 00:41:00,760 kila kitu pamoja katika faili moja kubwa ili kupunguza ombi wakati. 740 00:41:00,760 --> 00:41:02,630 Hiyo ni kweli baridi. 741 00:41:02,630 --> 00:41:02,940 Ndiyo? 742 00:41:02,940 --> 00:41:04,190 >> Watazamaji: [inaudible] 743 00:41:04,190 --> 00:41:13,910 744 00:41:13,910 --> 00:41:14,440 >> GABRIEL Guimaraes: Hasa. 745 00:41:14,440 --> 00:41:16,230 Hivyo, Google Maps muungano. 746 00:41:16,230 --> 00:41:20,200 Hiyo ni JavaScript API kutoka Google. 747 00:41:20,200 --> 00:41:23,750 Basi, mimi tu akaenda tovuti ya Google. 748 00:41:23,750 --> 00:41:29,950 Wana hii API Google Maps na mimi kupakuliwa kanuni na kuunganishwa ni 749 00:41:29,950 --> 00:41:31,610 katika mtazamo wangu. 750 00:41:31,610 --> 00:41:35,490 Kwa hiyo kile Mimi zinahitajika kufanya huko ni mimi walihitaji kupata 751 00:41:35,490 --> 00:41:37,310 maeneo kutoka database. 752 00:41:37,310 --> 00:41:38,990 Hiyo ilifanyika katika mtawala. 753 00:41:38,990 --> 00:41:40,950 Basi, mimi nikaenda kwa mtawala - 754 00:41:40,950 --> 00:41:42,350 ambapo ni mtawala. 755 00:41:42,350 --> 00:41:44,330 mtawala inaonekana kama hii. 756 00:41:44,330 --> 00:41:48,660 Got yote ya maeneo ya wanafunzi, kuweka yote ya kwamba ndani ya kubwa 757 00:41:48,660 --> 00:41:52,060 variable, orodha kubwa, kwamba ina maeneo yote. 758 00:41:52,060 --> 00:41:55,340 >> Na katika mtazamo, kwa sababu JavaScript API ni kitu katika 759 00:41:55,340 --> 00:41:55,800 kuona, sawa? 760 00:41:55,800 --> 00:42:00,440 Kwa sababu JavaScript anaendesha ndani ya HTML yako code, ni kwenda kutumwa kwa 761 00:42:00,440 --> 00:42:01,710 mtumiaji mashine. 762 00:42:01,710 --> 00:42:09,310 Na katika mtazamo, mimi kubeba yote ya habari katika API Google. 763 00:42:09,310 --> 00:42:12,080 Na alifanya yote ya kwamba kwa ajili yangu, ambayo ni kweli baridi. 764 00:42:12,080 --> 00:42:16,240 Lakini kama unataka kutumia mambo katika nyuma-mwisho, na ni kama maktaba, kwa 765 00:42:16,240 --> 00:42:18,720 mfano, tena - 766 00:42:18,720 --> 00:42:20,140 ushirikiano na Facebook. 767 00:42:20,140 --> 00:42:24,060 Hiyo ni kitu ambacho wengi, wengi, programu nyingi ni kutumia siku hizi. 768 00:42:24,060 --> 00:42:27,300 >> Hivyo kuwa na ushirikiano wako na Facebook kwa sababu ni rahisi zaidi tu 769 00:42:27,300 --> 00:42:30,450 kuingia kwenye Facebook kuliko kujenga akaunti na blah, blah, blah. 770 00:42:30,450 --> 00:42:35,120 Kisha wewe tu kutumia gem na ni kama rahisi kama kwenda gem faili yako. 771 00:42:35,120 --> 00:42:39,350 Gem file ni faili inayoitwa gem file katika chanzo orodha ya Ruby yako juu ya 772 00:42:39,350 --> 00:42:40,370 Reli mradi huo. 773 00:42:40,370 --> 00:42:43,700 Tu kwenda huko na kuongeza gem mpya. 774 00:42:43,700 --> 00:42:45,300 Na kuangalia ni juu ya Google. 775 00:42:45,300 --> 00:42:46,520 Kuna wengi, wengi, vito wengi. 776 00:42:46,520 --> 00:42:51,070 Kuna moja kwamba hasa gani hii kwa Facebook muungano. 777 00:42:51,070 --> 00:42:54,660 Mimi nina uhakika nini jina yake. 778 00:42:54,660 --> 00:42:56,680 Tu Google na wewe ni kwenda kupata hiyo. 779 00:42:56,680 --> 00:42:57,930 OK, maswali zaidi? 780 00:42:57,930 --> 00:43:01,110 781 00:43:01,110 --> 00:43:03,280 Ajabu, asante kwa kuja. 782 00:43:03,280 --> 00:43:09,227