1 00:00:00,000 --> 00:00:00,060 2 00:00:00,060 --> 00:00:01,560 >> DAVID Malan: zote haki, sisi ni nyuma. 3 00:00:01,560 --> 00:00:03,830 Hivyo kwa kusisimua kumalizia, sehemu yetu ya mwisho 4 00:00:03,830 --> 00:00:06,900 juu ya programu ya mtandao, ambayo mimi walidhani tunatarajia kutumia kama neno la jumla 5 00:00:06,900 --> 00:00:08,440 kukamata wachache mada iliyobaki. 6 00:00:08,440 --> 00:00:10,390 Hivyo mwisho wa siku, tutaweza kweli kufanya 7 00:00:10,390 --> 00:00:14,830 kidogo ya mikono juu ya programu ya mtandao na lugha inayoitwa JavaScript. 8 00:00:14,830 --> 00:00:17,510 Na nadhani tutaweza kuangalia katika kitu kuhusiana na picha 9 00:00:17,510 --> 00:00:20,040 na kugundua kitu siri siri katika picha, 10 00:00:20,040 --> 00:00:23,230 na pia tuangalie Google Maps API, programu ya maombi 11 00:00:23,230 --> 00:00:26,040 interface, kama kitu mwakilishi wa aina ya programu 12 00:00:26,040 --> 00:00:28,800 hiyo ni inazidi na uhuru inapatikana leo. 13 00:00:28,800 --> 00:00:32,029 >> Lakini kwa nini sio sisi kuchukua kuangalia katika kingo ya dunia hii 14 00:00:32,029 --> 00:00:34,070 kwamba tumekuwa aina ya imekuwa kuchukua kwa nafasi ipo 15 00:00:34,070 --> 00:00:36,720 kwa muda fulani, database. 16 00:00:36,720 --> 00:00:39,150 Kwa kipindi cha siku na nusu tumekuwa kudhani 17 00:00:39,150 --> 00:00:42,910 kwamba tuna upatikanaji wa database, lakini nini tatizo gani database kutatua? 18 00:00:42,910 --> 00:00:45,540 Je, ni nini kwa ajili yetu? 19 00:00:45,540 --> 00:00:47,030 Ni nini? 20 00:00:47,030 --> 00:00:48,679 >> Watazamaji: [inaudible] 21 00:00:48,679 --> 00:00:51,720 DAVID Malan: Ana taarifa zote, OK, na ni aina gani ya habari 22 00:00:51,720 --> 00:00:53,186 inaweza kuweka ndani yake? 23 00:00:53,186 --> 00:00:54,590 >> Watazamaji: [inaudible] 24 00:00:54,590 --> 00:00:56,450 >> DAVID Malan: Taarifa yoyote wewe kuweka ndani yake, itabidi kupata nyuma. 25 00:00:56,450 --> 00:00:57,070 Hiyo ni kweli. 26 00:00:57,070 --> 00:01:01,900 Na juu ya kawaida tovuti ya mtandao msingi au mtandao maombi, ni aina gani ya habari, 27 00:01:01,900 --> 00:01:03,385 hasa, inaweza kuweka katika? 28 00:01:03,385 --> 00:01:04,260 Watazamaji: [inaudible] 29 00:01:04,260 --> 00:01:05,051 DAVID Malan: Watumiaji. 30 00:01:05,051 --> 00:01:07,000 Basi nini user? 31 00:01:07,000 --> 00:01:09,765 >> Watazamaji: [inaudible] 32 00:01:09,765 --> 00:01:11,640 DAVID Malan: OK, kusajiliwa mtumiaji wa tovuti. 33 00:01:11,640 --> 00:01:15,100 Na nini maana ya kuhifadhi watumiaji 'habari? 34 00:01:15,100 --> 00:01:17,260 Nini composes user? 35 00:01:17,260 --> 00:01:18,331 user ana nini? 36 00:01:18,331 --> 00:01:19,206 Watazamaji: [inaudible] 37 00:01:19,206 --> 00:01:21,040 DAVID Malan: Yeah, binafsi data, na mimi kama hiyo. 38 00:01:21,040 --> 00:01:21,970 Hebu kuwa sahihi zaidi. 39 00:01:21,970 --> 00:01:25,275 Hivyo user kawaida ina jina, kile kingine inaweza mtumiaji kuwa? 40 00:01:25,275 --> 00:01:26,150 Watazamaji: [inaudible] 41 00:01:26,150 --> 00:01:29,130 DAVID Malan: addr-- OK, jina hivyo kwanza, jina la mwisho. 42 00:01:29,130 --> 00:01:29,630 Hiyo ni nzuri. 43 00:01:29,630 --> 00:01:31,463 Kwa kweli, hebu kurekebisha kwamba, kwa sababu itakuja 44 00:01:31,463 --> 00:01:35,010 kufungua fursa kwa majadiliano, bado, zaidi. 45 00:01:35,010 --> 00:01:39,090 Jina la kwanza, jina la mwisho, ya kijinsia. 46 00:01:39,090 --> 00:01:41,820 47 00:01:41,820 --> 00:01:43,481 ID ya aina fulani. 48 00:01:43,481 --> 00:01:43,980 Kipi kingine? 49 00:01:43,980 --> 00:01:45,438 Nilisikia kitu kingine kabla, pia. 50 00:01:45,438 --> 00:01:51,600 email, anwani ya posta. 51 00:01:51,600 --> 00:01:58,170 >> Basi hebu pause huko na sasa kufikiria si kile sisi ni hifadhi katika database, 52 00:01:58,170 --> 00:02:01,980 but-- na si kwa nini, tangu ni labda dhahiri kwamba mara moja kujiandikisha user, 53 00:02:01,980 --> 00:02:03,730 unataka kukumbuka kwao kwa muda fulani. 54 00:02:03,730 --> 00:02:05,480 Hutaki kwa tu kuhifadhiwa katika RAM 55 00:02:05,480 --> 00:02:08,690 na kuwa forgotten-- hivyo hebu kuzingatia namna gani. 56 00:02:08,690 --> 00:02:11,700 >> Ni zinageuka kuwa katika ulimwengu wa database, 57 00:02:11,700 --> 00:02:14,410 kuna angalau aina mbili siku hizi. 58 00:02:14,410 --> 00:02:20,010 Kitu kinachoitwa SQL database, Uliza muundo lugha, 59 00:02:20,010 --> 00:02:24,770 au, cutely jina lake, NoSQL, ambayo si SQL. 60 00:02:24,770 --> 00:02:26,980 Na mwisho ni mfano wa nini kinaweza 61 00:02:26,980 --> 00:02:30,660 kuitwa kitu-oriented, au kitu kuhifadhi, database 62 00:02:30,660 --> 00:02:36,010 kwamba maduka vitu, na si, kisingizio Kwangu mimi, kama hivi karibuni tutaona, safu. 63 00:02:36,010 --> 00:02:41,800 >> Hivyo tutaweza kuzingatia kwa muda tu juu ya ya kwanza ya haya, yaani, SQL 64 00:02:41,800 --> 00:02:46,850 Mbegu, kama tu kwa sababu ni hivyo ukoo tayari, kwa mtu yeyote 65 00:02:46,850 --> 00:02:51,070 ambaye ametumia Excel au Karatasi Google au Apple 66 00:02:51,070 --> 00:02:53,740 Hesabu au kiwango chochote spreadsheet mpango, 67 00:02:53,740 --> 00:02:56,040 au, equivalently, au zaidi sophisticatedly, 68 00:02:56,040 --> 00:02:58,610 kitu kama Microsoft Upatikanaji au Oracle 69 00:02:58,610 --> 00:03:03,890 au MySQL au PostgreSQL, ambayo yote ni majina ya bidhaa kwa ajili ya utekelezaji 70 00:03:03,890 --> 00:03:04,865 wazo zifuatazo. 71 00:03:04,865 --> 00:03:10,350 >> database kimahusiano ni tu kitu ambayo ina safu na nguzo. 72 00:03:10,350 --> 00:03:12,850 Na kwa safu na nguzo, I literally maana kitu 73 00:03:12,850 --> 00:03:21,860 kama hii, hivyo ambapo tupate kuwa jina la uwanja na aina yake hapa. 74 00:03:21,860 --> 00:03:25,800 Na kweli, basi mimi sasa kuanza kwa ramani hizo. 75 00:03:25,800 --> 00:03:29,420 Hivyo kweli, sijui kwa nini nilitoa chati tofauti. 76 00:03:29,420 --> 00:03:30,780 Hebu kuweka rahisi hii. 77 00:03:30,780 --> 00:03:34,830 >> Tuna haki hapa mwanzo wa meza yetu, ambapo 78 00:03:34,830 --> 00:03:40,150 hii ni jina la uwanja na hii ni aina data, 79 00:03:40,150 --> 00:03:41,660 na kwa aina I mean zifuatazo. 80 00:03:41,660 --> 00:03:45,510 Je, ni idadi, je, ni kamba, short kamba kama neno, 81 00:03:45,510 --> 00:03:49,340 Ni aya, je, ni data binary, kama picha? 82 00:03:49,340 --> 00:03:51,980 Na hebu tu tease hii mbali kwa muda tu. 83 00:03:51,980 --> 00:03:57,575 Hivyo jina la kwanza, idadi, kamba, kubwa chunk ya text-- 84 00:03:57,575 --> 00:03:58,450 Watazamaji: [inaudible] 85 00:03:58,450 --> 00:03:59,616 DAVID Malan: Ndiyo, hivyo kamba. 86 00:03:59,616 --> 00:04:04,744 Na katika mazingira ya database, tutaweza kawaida kuwaita uwanja huu char. 87 00:04:04,744 --> 00:04:07,660 Mimi itabidi kusema char kwa sasa lakini tuko kwenda kuburudisha hii katika wakati huu. 88 00:04:07,660 --> 00:04:09,180 Tabia uwanja. 89 00:04:09,180 --> 00:04:11,365 jina la mwisho pengine ni sawa. 90 00:04:11,365 --> 00:04:11,865 Kijinsia? 91 00:04:11,865 --> 00:04:16,230 92 00:04:16,230 --> 00:04:18,310 >> Mwanamume au mwanamke, hivyo ni inaweza kuwa char shamba. 93 00:04:18,310 --> 00:04:21,380 Ni inaweza kuwa ama quote, unquote "Kiume" au quote, unquote "kike" 94 00:04:21,380 --> 00:04:23,650 au inaweza kuwa m au f. 95 00:04:23,650 --> 00:04:26,540 Kama unataka kuwa zaidi ya umoja, unaweza haja thamani ya tatu 96 00:04:26,540 --> 00:04:28,640 au aina fulani ya uwanja mwingine kabisa. 97 00:04:28,640 --> 00:04:31,350 Na hivyo unaweza kutumia uongo kweli. 98 00:04:31,350 --> 00:04:35,036 uwanja inaweza kuitwa kiume, na basi unaweza kusema kweli au uongo. 99 00:04:35,036 --> 00:04:38,160 Lakini hiyo haina lazima kukamata wote wa habari unaweza kutaka. 100 00:04:38,160 --> 00:04:41,118 >> Hivyo ni zamu huko nje ni aina nyingine ya shamba ambayo inaweza kuwa na manufaa hapa 101 00:04:41,118 --> 00:04:46,040 katika database ya kawaida, iitwayo enum, ambapo ni uwanja tabia, 102 00:04:46,040 --> 00:04:50,480 lakini wewe, designer, kupata enumerate maadili inawezekana, 103 00:04:50,480 --> 00:04:54,630 kama quote, unquote "kiume", kunukuu, unquote "kike" na kadhalika. 104 00:04:54,630 --> 00:04:57,620 Ili lo lote thamani ni katika orodha yako, 105 00:04:57,620 --> 00:05:00,670 ni kweli tabia-msingi, lakini ina kuwa moja ya maadili hayo. 106 00:05:00,670 --> 00:05:03,520 Sisi pengine bila wanataka enum kwa jina la kwanza au jina la mwisho. 107 00:05:03,520 --> 00:05:05,630 Vinginevyo tungekuwa na enumerate, kama jina 108 00:05:05,630 --> 00:05:09,570 hupata kutoka, literally kila Inawezekana jina la kwanza na jina la mwisho. 109 00:05:09,570 --> 00:05:13,960 >> OK, hivyo ID kile lazima ID kuwa? 110 00:05:13,960 --> 00:05:15,200 Ndiyo, hivyo labda idadi. 111 00:05:15,200 --> 00:05:17,870 Basi hebu fimbo na kwamba kwa sasa, idadi. 112 00:05:17,870 --> 00:05:22,010 Na kwa idadi, idadi ni kidogo pana sana sasa. 113 00:05:22,010 --> 00:05:23,900 Kwa maana mwisho wa pili siku, Najisikia kama sisi 114 00:05:23,900 --> 00:05:25,280 lazima kidogo sahihi zaidi. 115 00:05:25,280 --> 00:05:29,280 Idadi inaweza kuwa na maana kama, inaweza kuwa kitu kama 1.236. 116 00:05:29,280 --> 00:05:31,500 Na kwamba pengine si nini maana sisi na ID. 117 00:05:31,500 --> 00:05:34,635 Tufanye nini pengine maana na ID? 118 00:05:34,635 --> 00:05:36,382 >> Watazamaji: [inaudible] 119 00:05:36,382 --> 00:05:38,590 DAVID Malan: Oh, OK, hivyo labda ni hata idadi. 120 00:05:38,590 --> 00:05:42,840 Labda ni kweli kitambulisho kipekee hiyo ni kamba, kama jina la mtumiaji. 121 00:05:42,840 --> 00:05:44,580 Hivyo kabisa, inaweza kuwa. 122 00:05:44,580 --> 00:05:46,730 Nadhani mtu pengine maana numeric, ingawa. 123 00:05:46,730 --> 00:05:48,460 Basi hebu kukaa na kwamba. 124 00:05:48,460 --> 00:05:49,320 Ni aina gani ya namba? 125 00:05:49,320 --> 00:05:51,960 Nini zaidi precise-- integer. 126 00:05:51,960 --> 00:05:56,710 Hivyo idadi kama 0, 1, 2, 3, hivyo tutaweza wito huu integer. 127 00:05:56,710 --> 00:05:58,909 Na hata basi, mimi naweza kuwa nitpicking, ni 128 00:05:58,909 --> 00:06:00,700 si kweli tu ujumla integer unataka. 129 00:06:00,700 --> 00:06:04,340 Pengine hawataki maadili hasi, kwa sababu tu, tu anahisi weird. 130 00:06:04,340 --> 00:06:06,070 Pengine wanataka integers chanya. 131 00:06:06,070 --> 00:06:07,920 Hivyo unaweza pia kueleza kwamba katika database, 132 00:06:07,920 --> 00:06:09,450 lakini kwa sasa, tutaweza kusema integer. 133 00:06:09,450 --> 00:06:10,650 >> Barua pepe? 134 00:06:10,650 --> 00:06:13,550 Hii pengine ni just-- nini? 135 00:06:13,550 --> 00:06:14,460 >> Watazamaji: [inaudible] 136 00:06:14,460 --> 00:06:16,980 >> DAVID Malan: Ni email, lakini hiyo ni wahusika, haki? 137 00:06:16,980 --> 00:06:19,813 Ni tu ina tabia funky kama "Katika" ishara au kitu kingine, 138 00:06:19,813 --> 00:06:21,580 lakini bado ni shamba tabia. 139 00:06:21,580 --> 00:06:23,900 Na anwani ya posta? 140 00:06:23,900 --> 00:06:25,360 Tabia uwanja. 141 00:06:25,360 --> 00:06:31,400 Hivyo hiyo ni mwanzo mzuri, lakini hebu kuwa kidogo zaidi sahihi sasa. 142 00:06:31,400 --> 00:06:34,540 >> Hivyo zinageuka kuwa katika Mbegu, wewe mara nyingi 143 00:06:34,540 --> 00:06:39,120 kuwa na uchaguzi juu ya kuandaliwa zaidi matoleo ya mambo haya. 144 00:06:39,120 --> 00:06:44,330 Kwa kweli, katika kawaida SQL database, SQL, au zaidi kwa ujumla, kimahusiano database, 145 00:06:44,330 --> 00:06:46,680 databaser na safu na nguzo, wewe mara nyingi 146 00:06:46,680 --> 00:06:53,610 kupata kutaja si tu ya aina ya shamba lake; basi mimi kufanya baadhi here-- chumba 147 00:06:53,610 --> 00:06:56,600 lakini pia urefu. 148 00:06:56,600 --> 00:06:59,900 >> Hivyo kwa muda gani ni jina la kwanza? 149 00:06:59,900 --> 00:07:07,060 Nadhani, D-A-V-I-D. Sawa, nimeipata mimi pengine tu mashaka kama nusu 150 00:07:07,060 --> 00:07:11,260 ya watu katika chumba, kulia, tangu majina yako ni marefu kuliko tano 151 00:07:11,260 --> 00:07:16,608 barua, hivyo tano inaonekana ubinafsi kidogo na wasiojua, hivyo nini thamani bora? 152 00:07:16,608 --> 00:07:19,320 153 00:07:19,320 --> 00:07:24,330 10, sawa, na nadhani tuko OK katika chumba hicho. 154 00:07:24,330 --> 00:07:26,254 13? 155 00:07:26,254 --> 00:07:27,541 30? 156 00:07:27,541 --> 00:07:29,540 Kwa nini si mimi kuchukua mbinu ya awali wakati sisi 157 00:07:29,540 --> 00:07:31,081 walikuwa wanazungumza juu ya arrays na kumbukumbu? 158 00:07:31,081 --> 00:07:32,450 Kwa nini si mimi tu kusema kama 1,000? 159 00:07:32,450 --> 00:07:35,260 jina la mtu yeyote ni kwenda kwa kuwa mrefu zaidi ya 1,000. 160 00:07:35,260 --> 00:07:36,706 Sukuma nyuma. 161 00:07:36,706 --> 00:07:38,005 >> Watazamaji: [inaudible] 162 00:07:38,005 --> 00:07:40,130 DAVID Malan: Yeah, ni fujo, haki, hasa 163 00:07:40,130 --> 00:07:44,630 kama majina ya watu watano tu au 10 au wahusika 15, hiyo ni fujo sana. 164 00:07:44,630 --> 00:07:45,810 Hivyo unajua nini? 165 00:07:45,810 --> 00:07:48,020 Hii ni aina ya swali ngumu. 166 00:07:48,020 --> 00:07:51,721 Sasa, tunaweza hakika kuchambua English na majina lugha nyingine yoyote ya 167 00:07:51,721 --> 00:07:54,470 na kufikiri, vizuri, ni nini wastani average-- haina kweli 168 00:07:54,470 --> 00:07:57,150 kusaidia us-- nini max ni pengine ni nini sisi kweli unataka. 169 00:07:57,150 --> 00:07:59,920 Lakini zinageuka sisi hata baadhi uchaguzi juu ya aina hapa. 170 00:07:59,920 --> 00:08:03,400 >> Katika mfano SQL database, wewe kuwa kitu kinachoitwa shamba char 171 00:08:03,400 --> 00:08:07,505 na pia varchar, V-A-R, kwa shamba kutofautiana char. 172 00:08:07,505 --> 00:08:08,630 Na tofauti ni hii. 173 00:08:08,630 --> 00:08:12,400 uwanja char, wewe designer, kuwa na bayana mapema 174 00:08:12,400 --> 00:08:14,900 halisi urefu wa shamba. 175 00:08:14,900 --> 00:08:20,530 Hivyo labda jina la kwanza kama 20 anahisi aina ya salama. 176 00:08:20,530 --> 00:08:23,950 Inaweza kuwa kwa kufanya baadhi googling kwa kuona kama hiyo ni kweli usalama wa kutosha. 177 00:08:23,950 --> 00:08:26,910 Kuna pengine jina na 21 wahusika, lakini kwa sasa, tuseme 20 178 00:08:26,910 --> 00:08:27,620 ni salama. 179 00:08:27,620 --> 00:08:30,070 >> uwanja char ingekuwa kuashiria katika database kwamba 180 00:08:30,070 --> 00:08:33,289 ni kwa kutumia 20 na siku zote 20 wahusika. 181 00:08:33,289 --> 00:08:37,419 Sasa kama ni tu D-A-V-I-D, 15 za wale ni kwenda tu kuwa wahusika tupu, 182 00:08:37,419 --> 00:08:40,450 lakini bado uko kutumia ka zote 20. 183 00:08:40,450 --> 00:08:46,302 uwanja varchar, kwa kulinganisha, ina maana kamba lazima wahusika hadi 20 184 00:08:46,302 --> 00:08:48,260 lakini kama ni tano tu, wewe tu kwenda kutumia 185 00:08:48,260 --> 00:08:51,270 tano, au labda sita kwa ajili ya thamani maalum mwishoni, 186 00:08:51,270 --> 00:08:54,980 kama kwamba 0 tulijadili kwamba kunaashiria mwisho wa tabia 187 00:08:54,980 --> 00:08:56,790 mlolongo katika kumbukumbu. 188 00:08:56,790 --> 00:08:59,950 >> Hivyo wakati unafikiri unaweza kuchagua char 189 00:08:59,950 --> 00:09:05,240 dhidi ya varchar, kutokana na kwamba biashara-off? 190 00:09:05,240 --> 00:09:09,321 Char anatumia kwamba wahusika wengi, varchar anatumia hakuna zaidi ya kwamba wahusika wengi. 191 00:09:09,321 --> 00:09:10,196 Watazamaji: [inaudible] 192 00:09:10,196 --> 00:09:13,859 193 00:09:13,859 --> 00:09:16,900 DAVID Malan: Sawa, wakati unajua urefu wa kamba pretty kulazimisha 194 00:09:16,900 --> 00:09:19,316 kutumia tu char, 'kusababisha kama unajua hilo, tu kuiweka chini. 195 00:09:19,316 --> 00:09:23,390 Na labda hiyo ni kweli kwa zip kanuni, katika Marekani, angalau, 02138, 196 00:09:23,390 --> 00:09:26,660 ni daima kwenda kuwa tano wahusika mpaka kuongeza dash nne. 197 00:09:26,660 --> 00:09:29,750 Lakini unaweza kuwa na baadhi maadili kwa ambayo daima kujua urefu. 198 00:09:29,750 --> 00:09:32,310 Au labda alama hali, kama NY kwa New York, 199 00:09:32,310 --> 00:09:33,811 na MA kwa Massachusetts katika Marekani. 200 00:09:33,811 --> 00:09:36,560 Labda huna kuwa na baadhi ya hali ambapo hiyo ni kabisa kuridhisha, 201 00:09:36,560 --> 00:09:39,520 lakini kwa mantiki hiyo, kwa nini sisi hata overthinking hili? 202 00:09:39,520 --> 00:09:41,800 Mbona sisi tu kutumia varchar na kisha tutaweza tu 203 00:09:41,800 --> 00:09:46,730 daima kutumia wahusika wawili anyway, au daima kutumia wahusika tano anyway? 204 00:09:46,730 --> 00:09:50,300 Mbona si tu kuokoa varchar kwa kila kitu, kwa mantiki hiyo? 205 00:09:50,300 --> 00:09:51,677 Lazima kuna samaki. 206 00:09:51,677 --> 00:09:52,552 Watazamaji: [inaudible] 207 00:09:52,552 --> 00:09:54,952 208 00:09:54,952 --> 00:09:56,660 DAVID Malan: Je kuandika kitu kibaya. 209 00:09:56,660 --> 00:09:58,090 Hivyo kwamba ni kweli. 210 00:09:58,090 --> 00:10:01,030 Lakini hata hivyo, hawawezi kutumia zaidi ya kumbukumbu kuliko mimi kutenga. 211 00:10:01,030 --> 00:10:03,340 Mimi bado wana fainali kusema juu ya urefu, 212 00:10:03,340 --> 00:10:06,780 hivyo hawawezi ajali kufanya kwamba kosa, lakini mawazo mazuri. 213 00:10:06,780 --> 00:10:10,510 Ni mwerevu, lakini ni kuhusiana na sana kwa mjadala wetu, kwa kweli, ya arrays 214 00:10:10,510 --> 00:10:12,390 na wanaohusishwa orodha mapema. 215 00:10:12,390 --> 00:10:16,290 >> Ni zinageuka kuwa database, ikiwa anajua kwamba wote wa maadili ni 216 00:10:16,290 --> 00:10:19,250 ya urefu fasta, hata kama baadhi ya maadili hayo ni tupu, 217 00:10:19,250 --> 00:10:22,484 aina ya aesthetically tupu, D-A-V-I-D na kisha 15 blanks, 218 00:10:22,484 --> 00:10:24,650 zinageuka kuwa kama kila uwanja ni urefu sawa, 219 00:10:24,650 --> 00:10:28,670 kiasi kama safu alikuwa wote wa mambo yake nyuma kwa nyuma kwa nyuma kwa nyuma ili 220 00:10:28,670 --> 00:10:33,480 unaweza tu plus 1 kwa kupata ijayo thamani, wazo moja katika meza database. 221 00:10:33,480 --> 00:10:37,550 Kama wote wa tabia yako masharti ni urefu sawa, 222 00:10:37,550 --> 00:10:39,390 una kile kinachoitwa upatikanaji random. 223 00:10:39,390 --> 00:10:41,850 Kama masharti yote ni ya urefu 20, huna tu 224 00:10:41,850 --> 00:10:45,230 kufanya plus 1 wewe tu kufanya plus 20, plus 20, plus 20, plus 20, 225 00:10:45,230 --> 00:10:48,775 na unaweza kwa haraka sana kitabu kupitia au kutafuta njia yote ya takwimu yako. 226 00:10:48,775 --> 00:10:54,420 >> kutofautiana char shamba, kwa kulinganisha, haina daima kuwa wahusika 20. 227 00:10:54,420 --> 00:10:58,000 Ni inaweza kuwa 20 na kisha 15 na kisha 19 na kisha 10, 228 00:10:58,000 --> 00:11:00,720 na hivyo kama unataka kutafuta kwa njia hiyo, huwezi tu upofu 229 00:11:00,720 --> 00:11:03,050 kuongeza 20 ka kwa kupata moja ijayo. 230 00:11:03,050 --> 00:11:07,280 You literally kutafuta njia kwa sababu makali ya muundo data, 231 00:11:07,280 --> 00:11:08,340 kama wewe, ni chakavu. 232 00:11:08,340 --> 00:11:11,480 Ni aina ya unaendelea ndani na nje msingi juu ya urefu halisi ya kamba. 233 00:11:11,480 --> 00:11:14,460 Hivyo wakati wewe kujua urefu, kama Kareem anasema, kutumia uwanja char, 234 00:11:14,460 --> 00:11:16,460 kwa sababu unaweza kupata kwamba ufanisi wa kuwa 235 00:11:16,460 --> 00:11:19,170 uwezo wa kutafuta njia hiyo kwa kasi wakati wewe ni kuangalia kwa data, 236 00:11:19,170 --> 00:11:20,550 vinginevyo kutumia kutofautiana. 237 00:11:20,550 --> 00:11:24,450 >> Kwa bahati mbaya, mimi sina jibu nzuri kwa muda gani jina lazima, 238 00:11:24,450 --> 00:11:26,360 lakini kwa kitu kama jina, napenda kusema 239 00:11:26,360 --> 00:11:28,470 varchar ni jambo la kawaida kwa sababu si kwenda 240 00:11:28,470 --> 00:11:30,430 kuwa urefu fasta kwa kila mtu. 241 00:11:30,430 --> 00:11:33,650 20, sijui, 20 anahisi tight kidogo. 242 00:11:33,650 --> 00:11:36,460 Hebu sema tu 50, 50. 243 00:11:36,460 --> 00:11:39,210 Ni kweli haina gharama wewe kwamba mengi zaidi ya kusema 50 badala ya 40, 244 00:11:39,210 --> 00:11:41,260 lakini wakati fulani, unahitaji kupiga simu hukumu. 245 00:11:41,260 --> 00:11:43,090 >> kawaida sana, kusema ukweli, kwa [? kihistoria?] 246 00:11:43,090 --> 00:11:47,670 sababu, ingawa ni nyingi, ni kusema 255, kwa sababu baadhi ya wakati uliopita, 247 00:11:47,670 --> 00:11:51,440 katika mifumo maarufu database, kama MySQL, bure wazi chanzo chombo 248 00:11:51,440 --> 00:11:53,790 kwamba mengi ya makampuni kama hata Facebook kutumika, 249 00:11:53,790 --> 00:11:56,654 hii ilikuwa chaguo-msingi upeo hivyo watu tu akaenda nayo. 250 00:11:56,654 --> 00:11:59,070 Hivyo si haina maana, lakini tutaweza kutumia Intuition zaidi kidogo 251 00:11:59,070 --> 00:12:02,970 na kusema, hakika 50, hiyo ni pengine kidogo kupita kiasi. 252 00:12:02,970 --> 00:12:05,720 >> Jinsia, sijui kama enum, na hivyo tunaweza hiyo 253 00:12:05,720 --> 00:12:08,760 enumerate mwanamume au mwanamke, au labda kwa ufanisi zaidi, 254 00:12:08,760 --> 00:12:13,420 m au f au baadhi ya symbology nyingine, lakini enum anahisi kama uchaguzi mzuri huko. 255 00:12:13,420 --> 00:12:16,740 Kuwa wazi, jinsia inaweza tu kuwa varchar, 256 00:12:16,740 --> 00:12:19,090 na tunaweza tu wote kukubaliana watu kama nzuri, 257 00:12:19,090 --> 00:12:21,010 daima kuweka maadili sawa huko. 258 00:12:21,010 --> 00:12:22,720 Mwanamume au mwanamke au whatnot. 259 00:12:22,720 --> 00:12:27,800 >> Lakini tatizo basi, ni kwamba tunaweza kufanya makosa, kama [inaudible] mapendekezo 260 00:12:27,800 --> 00:12:29,140 mapema katika mazingira tofauti. 261 00:12:29,140 --> 00:12:32,780 Kama sisi kufanya makosa, tunaweza kupata maadili sahihi katika database yetu. 262 00:12:32,780 --> 00:12:36,320 Hivyo nini ni nzuri kuhusu database kama Oracle na MySQL na wengine, 263 00:12:36,320 --> 00:12:39,280 ni kwamba una hii ya mwisho safu ya ulinzi ambapo 264 00:12:39,280 --> 00:12:43,010 DBA, Mbegu yako msimamizi, yeyote ni kubuni meza hii kama sisi 265 00:12:43,010 --> 00:12:46,440 ni maneno, inaweza kuweka katika nafasi enum kwamba 266 00:12:46,440 --> 00:12:51,250 kulinda dhidi ya kwamba na kubainisha wanaume, wanawake, na hivyo hakuna mtu 267 00:12:51,250 --> 00:12:54,230 mwingine hakuna programu Unaweza ajali kuingiza thamani yoyote. 268 00:12:54,230 --> 00:12:55,480 Hivyo hii itakuwa ni jambo jema. 269 00:12:55,480 --> 00:12:56,660 Hii ni hulka. 270 00:12:56,660 --> 00:13:00,760 >> Hivyo ID, kuchukua ID numeric, ni pengine lazima sifuri. 271 00:13:00,760 --> 00:13:04,380 Na sisi wakati mwingine kufanya kuwa fursa ya kujadili urefu. 272 00:13:04,380 --> 00:13:06,830 Wewe ungekuwa si kawaida kutaja idadi hapa, 273 00:13:06,830 --> 00:13:11,310 ungependa badala kutaja hii ni int, au int kubwa, 274 00:13:11,310 --> 00:13:12,980 kama wao uko kawaida kuitwa. 275 00:13:12,980 --> 00:13:18,840 Lakini kwa kawaida, integer itakuwa, hebu sema, 4 ka. 276 00:13:18,840 --> 00:13:23,694 Na kama ni 4 ka, hiyo ni bits ngapi? 277 00:13:23,694 --> 00:13:24,630 >> Watazamaji: [inaudible] 278 00:13:24,630 --> 00:13:26,610 >> DAVID Malan: 32 bits. 279 00:13:26,610 --> 00:13:30,270 Hivyo ni jinsi watumiaji wengi tunaweza kuwa katika database yetu kama wote wana ID 280 00:13:30,270 --> 00:13:33,320 na ID hii ina kuwa ya kipekee? 281 00:13:33,320 --> 00:13:36,780 32 bits maana tuna chati ya moja, mbili, tatu, nne, five-- 282 00:13:36,780 --> 00:13:41,000 chati hivyo ngapi tofauti ya zeros na ndio unaweza kuwa kama kuna 32? 283 00:13:41,000 --> 00:13:43,235 Hiyo ni kitu kimoja kama kuuliza nini miwili na 32? 284 00:13:43,235 --> 00:13:46,472 285 00:13:46,472 --> 00:13:48,430 Ni idadi kubwa kwamba Siwezi kabisa kupata haki, 286 00:13:48,430 --> 00:13:50,270 lakini Mimi najua ni takribani bilioni 4. 287 00:13:50,270 --> 00:13:53,970 Hivyo hii ina maana Mbegu yako meza inaweza kuwa na watumiaji bilioni nne na hiyo ni yake. 288 00:13:53,970 --> 00:13:56,410 >> Hivyo hii ni ya kuvutia kubuni maana. 289 00:13:56,410 --> 00:14:00,840 idadi ya heshima ya makampuni wameamua, labda si sana 290 00:14:00,840 --> 00:14:04,860 kwa watumiaji yao mezani, kwa sababu kuwa na bilioni 4 watumiaji ni tatizo nadra. 291 00:14:04,860 --> 00:14:08,410 Hii ni aina ya Facebook-style tatizo, si ya kawaida kampuni tatizo. 292 00:14:08,410 --> 00:14:12,670 Lakini labda kama una shughuli magogo au aina fulani ya data kwamba daima 293 00:14:12,670 --> 00:14:15,610 anapata kuandikwa katika orodha yako kwamba kabisa inaweza kuwa na mabilioni 294 00:14:15,610 --> 00:14:18,900 na mabilioni ya safu, na matumizi integer kwa ajili yake, 295 00:14:18,900 --> 00:14:22,750 nini kitatokea kwa haraka kama kupata mstari idadi bilioni 4 296 00:14:22,750 --> 00:14:26,210 na kisha kujaribu kuingiza 4000000000 na 1, hivyo kusema? 297 00:14:26,210 --> 00:14:29,610 Mimi nina kurahisisha idadi bit. 298 00:14:29,610 --> 00:14:33,740 >> Unaweza kukata nyuma, I mean wewe na kushughulikia hilo kwa namna fulani. 299 00:14:33,740 --> 00:14:37,910 Na nini kompyuta ingekuwa kawaida kufanya, kufikiri juu yake tangu asubuhi hii, 300 00:14:37,910 --> 00:14:42,430 kama una thamani 4-bit kama 1, 1, 1, 1, ambayo, 301 00:14:42,430 --> 00:14:44,920 tu kufunga asubuhi pamoja ili alasiri, nini 302 00:14:44,920 --> 00:14:48,369 haina idadi hii kuwakilisha katika binary? 303 00:14:48,369 --> 00:14:49,410 OK, tutaweza kufanya hivyo ni rahisi. 304 00:14:49,410 --> 00:14:53,310 Je idadi hii kuwakilisha katika binary? 305 00:14:53,310 --> 00:14:56,794 OK, tutaweza kufanya hivyo ni rahisi, nini gani hii kuwakilisha katika binary? 306 00:14:56,794 --> 00:14:57,460 Watazamaji: Tatu. 307 00:14:57,460 --> 00:14:59,670 DAVID Malan: Tatu, kwa sababu tuna ndio column-- 308 00:14:59,670 --> 00:15:00,450 [Kicheko] 309 00:15:00,450 --> 00:15:01,350 Whew! 310 00:15:01,350 --> 00:15:03,980 Tulikuwa na ndio safu na wawili-wawili safu. 311 00:15:03,980 --> 00:15:07,250 Hivyo kudhani kuwa, kwa kweli, yetu [? infield?] hawakuwa 32 bits, 312 00:15:07,250 --> 00:15:13,440 lakini walikuwa bits mbili, tunaweza kuhesabu kutoka kwa mtumiaji idadi 0, 1, 2, 3, 313 00:15:13,440 --> 00:15:18,040 na kisha sisi ni aina ya nyuma kwa mtumiaji 00 tena. 314 00:15:18,040 --> 00:15:19,739 Hivyo hii ni nini kawaida hutokea. 315 00:15:19,739 --> 00:15:22,780 Kama wameweza milele kusikia kujieleza pengine sina, lakini kama wewe have-- 316 00:15:22,780 --> 00:15:26,500 integer kufurika, ambapo kuweka flipping wote wa bits yako 317 00:15:26,500 --> 00:15:29,640 kuwa na maadili kubwa iwezekanavyo, na kisha uko nje ya bits, 318 00:15:29,640 --> 00:15:30,850 nini ingekuwa kawaida kutokea? 319 00:15:30,850 --> 00:15:32,280 Kwa nini nasema 00? 320 00:15:32,280 --> 00:15:33,220 Naam, hii ni tatu. 321 00:15:33,220 --> 00:15:34,230 Je, mimi kuwakilisha 4? 322 00:15:34,230 --> 00:15:36,890 323 00:15:36,890 --> 00:15:38,915 Je, mimi kuwakilisha kwa namba 4 katika binary? 324 00:15:38,915 --> 00:15:39,790 Watazamaji: [inaudible] 325 00:15:39,790 --> 00:15:41,780 DAVID Malan: One-- yeah, usiseme 100 per se, 326 00:15:41,780 --> 00:15:44,190 kwa sababu ina makosa connotation, lakini 1-0-0. 327 00:15:44,190 --> 00:15:48,920 Hivyo idadi hiyo 1-0-0 ni kweli sahihi, lakini kama wewe tu na sarafu mbili, 328 00:15:48,920 --> 00:15:50,820 una nini kweli kosa gani? 329 00:15:50,820 --> 00:15:53,219 Umefanya akavingirisha juu ya 00. 330 00:15:53,219 --> 00:15:54,760 Na hakika, kwamba ni nini kitatokea. 331 00:15:54,760 --> 00:15:56,884 Kwa kweli, unaweza kufikiria kuhusu hili familiarly zaidi. 332 00:15:56,884 --> 00:15:59,350 Kama unakumbuka, nini, miaka 16 iliyopita, dunia 333 00:15:59,350 --> 00:16:03,380 ilitakiwa mwisho wakati tatizo Y2K kilichotokea. 334 00:16:03,380 --> 00:16:04,330 Kwa nini? 335 00:16:04,330 --> 00:16:08,170 Vizuri zaidi kompyuta, kwa maamuzi ya busara, 336 00:16:08,170 --> 00:16:15,320 walikuwa kuhifadhi idadi kama mwaka wa 1975 au mwaka 1999 337 00:16:15,320 --> 00:16:19,010 kwa kutumia tu tarakimu mbili katika kumbukumbu ya kompyuta. 338 00:16:19,010 --> 00:16:21,950 Hivyo bila shaka, kile kinachotokea wakati kupata mwaka 2000, 339 00:16:21,950 --> 00:16:25,790 wewe kwenda hii, au tuseme, yeah. 340 00:16:25,790 --> 00:16:30,120 Hivyo wewe kwenda mwaka 2000, lakini kama wewe ni tu kwa kutumia tarakimu mbili inaonekana 341 00:16:30,120 --> 00:16:32,660 kama mwaka 00 na hivyo umefanya akavingirisha juu. 342 00:16:32,660 --> 00:16:36,820 Na hii ni kwa nini mengi ya mifumo ya zinahitajika kuwa updated wakati huo. 343 00:16:36,820 --> 00:16:42,500 >> Hivyo kwa kuwa alisema, makampuni kama Picha kukimbia juu ya hili. 344 00:16:42,500 --> 00:16:46,147 Hivyo njia pekee ya kushughulikia hali hiyo, kusema ukweli, ni wanatarajia yake. 345 00:16:46,147 --> 00:16:47,980 Au njia safi kwa kushughulikia hali hii 346 00:16:47,980 --> 00:16:50,330 ni wanatarajia hivyo huna na kufanya mabadiliko baadaye. 347 00:16:50,330 --> 00:16:51,970 Hivyo badala ya 8 ka, unajua nini? 348 00:16:51,970 --> 00:16:54,261 Mimi nina kwenda kuwa mbele-kufikiri hapa, hata kama ni 349 00:16:54,261 --> 00:16:56,760 kidogo matumaini kuwa tunakwenda kuwa na bilioni 4 350 00:16:56,760 --> 00:16:58,850 na 1 watumiaji kwenye tovuti yetu. 351 00:16:58,850 --> 00:17:01,790 Lakini hebu tu kutumia 8 ka, au 64 bits, ambayo itakuwa kwa ujumla kuwa 352 00:17:01,790 --> 00:17:05,640 aitwaye integer kubwa, kiufundi sana. 353 00:17:05,640 --> 00:17:10,280 Na hiyo ina maana tu unaweza kuwa na tarakimu hata zaidi katika idadi yako. 354 00:17:10,280 --> 00:17:12,599 Lakini hii ni muhimu uamuzi wa kubuni, 355 00:17:12,599 --> 00:17:16,400 kwa sababu kama wewe kuchagua idadi hiyo ina bits wachache mno wa expressiveness 356 00:17:16,400 --> 00:17:19,089 unaweza kweli kujenga mdudu katika programu yako. 357 00:17:19,089 --> 00:17:21,750 >> Haki ya wote, hivyo hebu gubika kwa barua pepe na anwani ya posta. 358 00:17:21,750 --> 00:17:26,369 Hivyo email, kwa muda gani lazima anwani ya barua pepe kuwa? 359 00:17:26,369 --> 00:17:26,869 50. 360 00:17:26,869 --> 00:17:29,220 Mimi kwa kweli sielewi, lakini ni pengine kitu kama hicho, 361 00:17:29,220 --> 00:17:32,261 kwa sababu vinginevyo hakuna mtu kwenda kuandika wewe kama anapata muda mrefu sana, hivyo 50, 362 00:17:32,261 --> 00:17:33,360 hebu kwenda nayo kwa sasa. 363 00:17:33,360 --> 00:17:35,770 Postal mitaani, muda gani lazima kuwa ni nani? 364 00:17:35,770 --> 00:17:38,325 365 00:17:38,325 --> 00:17:39,200 Watazamaji: [inaudible] 366 00:17:39,200 --> 00:17:41,900 367 00:17:41,900 --> 00:17:43,890 >> DAVID Malan: Siyo tu zip code, ingawa. 368 00:17:43,890 --> 00:17:45,720 Postal mitaani, nikasikia. 369 00:17:45,720 --> 00:17:50,720 Hivyo hii ni kama 1 Brattle Square, comma, Cambridge Misa., comma, 02138. 370 00:17:50,720 --> 00:17:53,860 Na kwa kweli, napenda tu kuvuta up karatasi kidogo hapa. 371 00:17:53,860 --> 00:17:56,510 Hii anahisi kama ni amekosa nafasi. 372 00:17:56,510 --> 00:18:01,480 Kama tuna 1 Brattle Square, comma, Cambridge MA 02138, 373 00:18:01,480 --> 00:18:04,510 Najisikia kama tunaweza kufanya vizuri kuliko tu anwani ya posta. 374 00:18:04,510 --> 00:18:07,100 Mbona sisi kulipuka hii kidogo? 375 00:18:07,100 --> 00:18:08,030 Hivi mimi kupata saa? 376 00:18:08,030 --> 00:18:10,970 Tufanye badala yake kuwa kwa safu yetu hapa, labda? 377 00:18:10,970 --> 00:18:12,260 >> Watazamaji: [inaudible] 378 00:18:12,260 --> 00:18:17,579 >> DAVID Malan: Yeah, hivyo hebu kuiita street_number, 379 00:18:17,579 --> 00:18:20,620 na kusisitiza ni ya kawaida tu njia ya kuwa na kile kinachoonekana kama nafasi, 380 00:18:20,620 --> 00:18:22,360 lakini siyo, kwa kweli. 381 00:18:22,360 --> 00:18:26,240 Mitaani, na kisha city-- pole? 382 00:18:26,240 --> 00:18:28,440 >> Watazamaji: [inaudible] 383 00:18:28,440 --> 00:18:29,690 DAVID Malan: Tunaweza kufanya hivyo. 384 00:18:29,690 --> 00:18:30,702 Mstari mmoja, line mbili. 385 00:18:30,702 --> 00:18:32,410 Mbona sisi kushika ni rahisi kwa sasa, 386 00:18:32,410 --> 00:18:34,840 lakini hiyo ni kabisa uamuzi kukubalika. 387 00:18:34,840 --> 00:18:38,180 Na kisha serikali, na kisha hebu kuwa ni kidogo US-centric kwa sasa 388 00:18:38,180 --> 00:18:42,040 na tu kufanya zip code, kwa sababu tu kutakuwa na kusababisha makosa ya kuvutia 389 00:18:42,040 --> 00:18:43,090 au tatizo hapa. 390 00:18:43,090 --> 00:18:44,655 Hivyo kudhani kuwa sasa anwani yetu. 391 00:18:44,655 --> 00:18:47,280 Ni kidogo annoying zaidi kwamba tuna mashamba hayo yote zaidi, 392 00:18:47,280 --> 00:18:49,200 lakini sasa tunaweza kumtambulisha mambo kidogo bora. 393 00:18:49,200 --> 00:18:53,210 >> idadi Hivyo sasa mitaani pengine haipaswi kuwa char, lazima hilo? 394 00:18:53,210 --> 00:18:54,835 Ni lazima kuwa kitu gani? 395 00:18:54,835 --> 00:18:55,710 Watazamaji: [inaudible] 396 00:18:55,710 --> 00:18:57,835 DAVID Malan: Labda, idadi kama integer tena? 397 00:18:57,835 --> 00:19:00,170 integer kubwa? 398 00:19:00,170 --> 00:19:02,170 Pengine hawaishi bilioni 4 Main Street 399 00:19:02,170 --> 00:19:03,490 au chochote mambo kama hayo. 400 00:19:03,490 --> 00:19:06,850 Hivyo integer pengine mzuri, lakini ina mtu yeyote 401 00:19:06,850 --> 00:19:13,880 aliyewahi kuishi katika anuani kama 1A Brattle Square, au 1 na 1/2? 402 00:19:13,880 --> 00:19:17,030 Haya mambo yapo, kwa bahati mbaya, hata kama wewe si aliishi huko, 403 00:19:17,030 --> 00:19:21,240 kuna mapungufu hayo kama ghorofa 1A, 1B, 1C. 404 00:19:21,240 --> 00:19:24,260 Hivyo unajua nini, sisi pengine wasiende integer, 405 00:19:24,260 --> 00:19:27,440 vinginevyo tunakwenda kupoteza baadhi ya mauzo. 406 00:19:27,440 --> 00:19:29,920 >> Char shamba, labda? 407 00:19:29,920 --> 00:19:30,870 Sijui muda gani. 408 00:19:30,870 --> 00:19:33,370 Ni pengine si kwenda kuwa kwamba kwa muda mrefu, hivyo 10 au kitu. 409 00:19:33,370 --> 00:19:34,950 Hakuna mtu anaenda kuandika idadi tena, labda. 410 00:19:34,950 --> 00:19:37,070 Lakini tena, sisi lazima pengine kufikiria zaidi kwamba. 411 00:19:37,070 --> 00:19:39,900 Labda google, kufanya baadhi ya utafiti, lakini tutaweza kwenda na guts yetu kwa sasa. 412 00:19:39,900 --> 00:19:44,565 Mitaa, char, 50, sijui. 413 00:19:44,565 --> 00:19:46,940 Katika hatua nyingine, hakuna mtu kwenda kuandika ni juu ya bahasha, 414 00:19:46,940 --> 00:19:49,350 pia, hivyo kuna pengine baadhi ya mipaka ya juu huko. 415 00:19:49,350 --> 00:19:54,200 City, sawa, hakika, hivyo Char 50. 416 00:19:54,200 --> 00:19:59,120 >> Hali, inaweza kuwa US-centric kwa sasa. 417 00:19:59,120 --> 00:20:01,850 Hivyo inaweza kuwa orodha, hivyo aina ya wito hukumu, serikali. 418 00:20:01,850 --> 00:20:04,000 Ni inaweza kuwa kama wahusika wawili. 419 00:20:04,000 --> 00:20:06,140 Hivyo kweli, labda, mimi naendelea kusema char. 420 00:20:06,140 --> 00:20:09,420 Mimi pengine maana varchar, tu kwa ajili ya baadhi ufanisi, 421 00:20:09,420 --> 00:20:12,240 lakini tutaweza kuja nyuma kwa kuwa uamuzi katika wakati huu. 422 00:20:12,240 --> 00:20:16,150 Inaweza kuwa char ya urefu 2 kwa serikali. 423 00:20:16,150 --> 00:20:20,670 Kama katika Marekani wana, kama MA, Massachusetts, NY, New York, NJ, New 424 00:20:20,670 --> 00:20:22,100 Jersey, na kadhalika. 425 00:20:22,100 --> 00:20:23,630 Hivyo inaweza kuwa fasta wakati huo. 426 00:20:23,630 --> 00:20:25,900 DC kwa Washington DC. 427 00:20:25,900 --> 00:20:29,915 >> Lakini nadhani, Olivier, wewe mapendekezo mbinu nyingine. 428 00:20:29,915 --> 00:20:30,790 Watazamaji: [inaudible] 429 00:20:30,790 --> 00:20:33,670 DAVID Malan: Yeah, hivyo ni kidogo annoying aina katika, 430 00:20:33,670 --> 00:20:37,890 lakini enum inaweza kufanya maana zaidi, kwa sababu kwa njia hii, angalau katika Marekani, 431 00:20:37,890 --> 00:20:41,320 unaweza enumerate, kama tediously, lakini wewe kufanya hivyo mara moja tu katika orodha yako 432 00:20:41,320 --> 00:20:47,480 na kamwe tena kuwa na kufikiri juu ya hivyo, 50 namba zote mbili tabia. 433 00:20:47,480 --> 00:20:48,660 Hivyo mimi kama enum. 434 00:20:48,660 --> 00:20:51,720 Hebu fimbo na kwamba kuna sababu ni aina ya utekelezaji ukali zaidi. 435 00:20:51,720 --> 00:20:53,620 Na kisha zip code? 436 00:20:53,620 --> 00:20:55,306 Nadhani Andrew alikuwa na mawazo juu ya kwamba 437 00:20:55,306 --> 00:20:56,180 Watazamaji: [inaudible] 438 00:20:56,180 --> 00:20:57,240 DAVID Malan: Yeah, tano au tisa. 439 00:20:57,240 --> 00:20:58,323 Hebu tu kushika ni rahisi. 440 00:20:58,323 --> 00:20:59,380 Tu kufanya tano kwa sasa. 441 00:20:59,380 --> 00:21:03,070 Lakini labda mimi naweza tu kufanya integer, haki? 442 00:21:03,070 --> 00:21:08,750 Mimi naweza, lakini unajua nini, nilifanya kosa hili mara moja, katika baadhi ya hisia. 443 00:21:08,750 --> 00:21:13,110 Miaka iliyopita, nilikuwa kuhama kutoka Microsoft Outlook na Gmail, 444 00:21:13,110 --> 00:21:18,640 na Outlook ina njia ya kusafirisha yote ya mawasiliano yako kama faili Excel, 445 00:21:18,640 --> 00:21:21,280 CSV file, comma kutengwa maadili file. 446 00:21:21,280 --> 00:21:23,950 Na mimi alifanya makosa, mimi kufikiri, ya kubonyeza mara mbili yake, 447 00:21:23,950 --> 00:21:27,380 mara moja mimi kupakuliwa kuuza nje, kwa kuhakikisha inaonekana kama mimi ilivyotarajiwa. 448 00:21:27,380 --> 00:21:31,320 Mimi ni lazima kuwa kugonga Ila au basi auto-kuokoa kick katika au kitu. 449 00:21:31,320 --> 00:21:35,100 Kwa sababu wakati mimi basi nje ndani Gmail, ni wote kazi. 450 00:21:35,100 --> 00:21:39,910 Lakini kwa miaka, hadi leo hii, na Nilifanya hivyo mitano, miaka 10 iliyopita, 451 00:21:39,910 --> 00:21:44,380 Mimi bado kutafuta marafiki ambao wana anwani kwamba kuangalia kama hii. 452 00:21:44,380 --> 00:21:45,700 Kwa nini? 453 00:21:45,700 --> 00:21:47,900 >> Watazamaji: [inaudible] 454 00:21:47,900 --> 00:21:50,650 >> DAVID Malan: Ni alichukua 0, vizuri, badala yake, 455 00:21:50,650 --> 00:21:53,810 alichukua zip code nzima kama idadi, na kwa hiyo ni 456 00:21:53,810 --> 00:21:56,590 kuongoza 0 ambayo ina maana haina maana. 457 00:21:56,590 --> 00:21:59,470 Na hivyo 2138 inaonekana kuwa zip code yangu. 458 00:21:59,470 --> 00:22:07,100 Na hii ni, kusema ukweli, annoying Excel kipengele ambapo nadhani by default, 459 00:22:07,100 --> 00:22:10,980 hata kama ni maana ya tu kuwa maandishi, Microsoft Excel 460 00:22:10,980 --> 00:22:13,780 anaamua, napenda kuwa na manufaa, na oh, naona namba tu. 461 00:22:13,780 --> 00:22:15,290 Hebu kutibu haya kama idadi. 462 00:22:15,290 --> 00:22:16,790 Na truncates zeros kuongoza. 463 00:22:16,790 --> 00:22:19,165 >> Naapa kwa Mungu, kila wanandoa cha miezi mimi kupata mitaani, 464 00:22:19,165 --> 00:22:22,300 na nje ya aina ya OCD, mimi kurejea katika na kuongeza 0, ingawa mimi kamwe 465 00:22:22,300 --> 00:22:23,700 kutuma watu barua au kitu chochote. 466 00:22:23,700 --> 00:22:25,510 Lakini mimi bado kutafuta mabaki ya hii. 467 00:22:25,510 --> 00:22:28,820 Hivyo hii ni kusema, ni hii ni wazo nzuri? 468 00:22:28,820 --> 00:22:31,610 OK, hapana, kwa sababu mtu yeyote katika Massachusetts, katika eneo hili, 469 00:22:31,610 --> 00:22:33,270 ni kwenda na o uongozi wao. 470 00:22:33,270 --> 00:22:38,070 Basi hebu kwenda kwa kama char, pengine, tano. 471 00:22:38,070 --> 00:22:41,450 >> Na hapa, kutambua sisi inaweza kutumia enum na sisi 472 00:22:41,450 --> 00:22:44,600 inaweza enumerate 10,000 codes iwezekanavyo zip, 473 00:22:44,600 --> 00:22:48,530 lakini kwamba anahisi kama ni pengine kuvuka mstari wa, kama, faida. 474 00:22:48,530 --> 00:22:51,350 Kama una pembejeo kwamba data mengi katika orodha yako 475 00:22:51,350 --> 00:22:52,940 kulinda dhidi ya kitu fulani. 476 00:22:52,940 --> 00:22:57,400 Hivyo char barabara unaweza aina katika H-E-L-L-O kama zip code yako, 477 00:22:57,400 --> 00:22:59,180 ambayo si, ni wazi, nambari. 478 00:22:59,180 --> 00:23:01,680 Hivyo hakuna njia, katika kawaida database, 479 00:23:01,680 --> 00:23:05,561 kutaja numeric tu na wahusika tano tu kwa muda mrefu, 480 00:23:05,561 --> 00:23:07,310 hivyo tunakwenda kuwa na kufanya hivyo katika kanuni. 481 00:23:07,310 --> 00:23:11,100 Tunakwenda kufanya hivyo katika PHP au Java au chochote lugha tuko 482 00:23:11,100 --> 00:23:14,230 kutumia kwenye server kutekeleza aina hiyo ya kikwazo. 483 00:23:14,230 --> 00:23:14,860 >> Whoo! 484 00:23:14,860 --> 00:23:18,322 Haki ya wote, hivyo maswali yoyote bado tu? 485 00:23:18,322 --> 00:23:19,780 Hebu kufanya uamuzi mwingine design. 486 00:23:19,780 --> 00:23:22,500 Ni zinageuka kuwa wewe pia kupata kuchagua, 487 00:23:22,500 --> 00:23:26,600 wakati kubuni SQL database, au kawaida database-- kimahusiano ambapo 488 00:23:26,600 --> 00:23:28,790 tena, kimahusiano tu ina maana safu na nguzo, 489 00:23:28,790 --> 00:23:35,500 kwamba ni jinsi gani kuandaa data-- yako na kutambua kwamba maana ya maneno haya ni, 490 00:23:35,500 --> 00:23:37,740 Nimekuwa kupotosha katika kwamba, mimi nina drawing-- hii 491 00:23:37,740 --> 00:23:40,190 ni kile kinachoitwa schema kwa meza database. 492 00:23:40,190 --> 00:23:42,810 Hii ni kama specifikationer kwa table-- 493 00:23:42,810 --> 00:23:48,040 lakini linapokuja suala la muda kuhifadhi data kwa kweli, 494 00:23:48,040 --> 00:23:52,081 na tutaweza kufanya kazi hii tu kwa mfano hapa. 495 00:23:52,081 --> 00:23:55,080 Mimi nina kwenda kufungua Excel, kwa sababu Excel nipe safu na nguzo. 496 00:23:55,080 --> 00:23:58,050 Na kwamba ni nini hasa Oracle na MySQL na zana nyingine atanipa. 497 00:23:58,050 --> 00:24:02,270 Hivyo mimi nina kwenda tu kutumia hivyo kwa ajili ya majadiliano ya. 498 00:24:02,270 --> 00:24:05,250 Hebu kwenda mbele na kufungua mwakilishi hati hapa, 499 00:24:05,250 --> 00:24:06,310 kuvuta kidogo. 500 00:24:06,310 --> 00:24:15,200 Hivyo kwa mfano, headers yetu ni sasa jina la kwanza, jina la mwisho, jinsia, ID, 501 00:24:15,200 --> 00:24:20,980 email, mitaani posta, mitaani, whoops. 502 00:24:20,980 --> 00:24:25,710 Mitaani, mji, jimbo, tu kuhusu inafaa kwenye screen. 503 00:24:25,710 --> 00:24:29,080 >> Hivyo nini maana ya hii ni kwamba wakati user kwanza madaftari kwa ajili ya tovuti yangu, 504 00:24:29,080 --> 00:24:32,880 itakuja kuwa kitu kama David, Malan, m, hebu sema 1, 505 00:24:32,880 --> 00:24:42,910 malan@harvard.edu, idadi mitaani mapenzi kuwa kama 1 Brattle Square, Cambridge, MA, 506 00:24:42,910 --> 00:24:44,780 02138, na kisha kadhalika. 507 00:24:44,780 --> 00:24:48,290 Hivyo wakati mimi kusema kwamba database kimahusiano au SQL database ni safu na nguzo, 508 00:24:48,290 --> 00:24:49,350 I mean hii. 509 00:24:49,350 --> 00:24:51,900 Hiyo data halisi ni kuhifadhiwa katika safu na nguzo. 510 00:24:51,900 --> 00:24:53,950 Hii ni bahati mbaya tu, kwamba sisi walikuwa wanazungumza, 511 00:24:53,950 --> 00:24:56,033 na mimi nilikuwa tu kuchora nje katika safu na nguzo. 512 00:24:56,033 --> 00:24:58,320 Hii ni tu schema, kuu ufafanuzi. 513 00:24:58,320 --> 00:25:01,640 >> Hivyo ya mashamba hayo hapa, au equivalently, kuna, 514 00:25:01,640 --> 00:25:06,270 ambayo ni mashamba ambayo unafikiri Mimi nina uwezekano wa kutafuta kwenye kama mimi nina user 515 00:25:06,270 --> 00:25:09,200 au kama mimi nina msimamizi database? 516 00:25:09,200 --> 00:25:12,426 Kama, nini mashamba Mimi kweli kwenda kutafuta kwenye? 517 00:25:12,426 --> 00:25:13,830 >> Watazamaji: [inaudible] 518 00:25:13,830 --> 00:25:17,690 >> DAVID Malan: jina, yeah hivyo Mimi kama ukweli that-- yeah, 519 00:25:17,690 --> 00:25:19,750 email inaweza kuwa pretty kawaida. 520 00:25:19,750 --> 00:25:21,440 Samahani, alisema jina. 521 00:25:21,440 --> 00:25:24,030 Hivyo maybe-- na tena, tuko aina ya kuzungumza katika abstract. 522 00:25:24,030 --> 00:25:25,988 Mimi sijui ni kwa nini wewe d kwa ajili ya kutafuta jina, 523 00:25:25,988 --> 00:25:29,340 lakini kwamba anahisi busara kama wewe ni kutafuta kwa mtumiaji. 524 00:25:29,340 --> 00:25:31,170 Labda unasema, hakika, ID. 525 00:25:31,170 --> 00:25:34,100 526 00:25:34,100 --> 00:25:36,160 >> Na ni slippery mteremko, kwa sababu mimi naweza 527 00:25:36,160 --> 00:25:38,890 uliamua mazingira ambapo labda bosi wangu aliniambia, 528 00:25:38,890 --> 00:25:40,417 jinsi watu wengi hawana tuna kwenye tovuti yetu? 529 00:25:40,417 --> 00:25:42,000 Jinsi wanawake wengi hawana tuna kwenye tovuti yetu? 530 00:25:42,000 --> 00:25:45,210 Na hivyo katika hatua hiyo, unaweza kutaka kutafuta kwenye uwanja wa kijinsia, pia, 531 00:25:45,210 --> 00:25:45,940 na kitu kingine. 532 00:25:45,940 --> 00:25:47,350 Hivyo kuna biashara-off hapa. 533 00:25:47,350 --> 00:25:49,180 Tena, hakuna jibu sahihi, lakini kuna 534 00:25:49,180 --> 00:25:53,760 ni hulka katika zaidi database SQL inayojulikana kama Indexing, ambapo 535 00:25:53,760 --> 00:25:56,100 wewe, designer, msimamizi database, 536 00:25:56,100 --> 00:26:01,730 kupata kuamua mapema ambayo mashamba database lazima kuongeza 537 00:26:01,730 --> 00:26:02,980 kwa ajili ya utafutaji juu. 538 00:26:02,980 --> 00:26:07,620 >> Unaweza naively sana kusema, optimize huu, kuongeza kwamba, optimize hii, 539 00:26:07,620 --> 00:26:10,300 kuongeza kwamba na hii, na database mapenzi 540 00:26:10,300 --> 00:26:14,882 kutenda jambo kichawi chini kofia, na kufanya kitu kwa namna 541 00:26:14,882 --> 00:26:17,090 kwamba wakati mwingine wewe kutafuta yoyote ya mashamba hayo, 542 00:26:17,090 --> 00:26:18,400 itakuwa, kwa kweli, kuwa kasi. 543 00:26:18,400 --> 00:26:19,110 Hii inawezekana. 544 00:26:19,110 --> 00:26:20,530 Haina kufuta yenyewe nje. 545 00:26:20,530 --> 00:26:22,500 Lakini lazima kuna bei ya kulipwa. 546 00:26:22,500 --> 00:26:27,220 >> Kama wewe naively, au juu-shauku kusema, ripoti zote za mashamba hayo, 547 00:26:27,220 --> 00:26:29,810 hivyo kusema, kuwafanya wote ufanisi kutafutwa, 548 00:26:29,810 --> 00:26:31,625 nini bei ni pengine kulipa? 549 00:26:31,625 --> 00:26:32,500 Watazamaji: [inaudible] 550 00:26:32,500 --> 00:26:33,090 DAVID Malan: Utendaji. 551 00:26:33,090 --> 00:26:33,798 Unamaanisha nini? 552 00:26:33,798 --> 00:26:37,380 Naam utendaji, angalau katika mazingira mimi nina kujadili, ni bora sasa. 553 00:26:37,380 --> 00:26:38,830 Hiyo ni ufafanuzi wa Indexing. 554 00:26:38,830 --> 00:26:41,180 Itakuwa kufanya upekuzi kwa kasi zaidi. 555 00:26:41,180 --> 00:26:43,366 Hivyo wakati itapungua, hivyo kusema. 556 00:26:43,366 --> 00:26:44,240 Watazamaji: [inaudible] 557 00:26:44,240 --> 00:26:45,031 DAVID Malan: Nafasi. 558 00:26:45,031 --> 00:26:46,520 Hivyo tena, hizi ni biashara ya kawaida. 559 00:26:46,520 --> 00:26:50,820 Siwezi kuharakisha utafutaji wako, lakini ni kwenda gharama ka zaidi ya nafasi. 560 00:26:50,820 --> 00:26:51,610 Kwa nini? 561 00:26:51,610 --> 00:26:55,230 Naam, by default, kama tuna hakuna hata mmoja nyota hizi nyekundu, hakuna hata mmoja bahati hizi, 562 00:26:55,230 --> 00:26:58,797 kama mimi kusema, ni jinsi gani wewe kutafuta kwa jina katika orodha hii? 563 00:26:58,797 --> 00:27:00,630 Basi hebu kuteka yetu kipaumbele kwa mfano huu. 564 00:27:00,630 --> 00:27:06,300 Kama tuna David na Scully na Kareem na Arwa na wengine katika safu hizo, 565 00:27:06,300 --> 00:27:06,910 kwa mfano. 566 00:27:06,910 --> 00:27:08,390 >> Basi hebu kufanya hasa kwamba. 567 00:27:08,390 --> 00:27:13,990 Scully ni katika hapa, na kisha tuna Kareem, na Arwa, 568 00:27:13,990 --> 00:27:18,390 na kila mtu mwingine, kama huna na index inavyoelezwa, hivyo kusema, 569 00:27:18,390 --> 00:27:20,160 bora unaweza kufanya ni linear search. 570 00:27:20,160 --> 00:27:23,470 Kama wewe kutafuta kwa Arwa, sisi siyo kwenda kuwa na uwezo wa kuruka haki yake 571 00:27:23,470 --> 00:27:24,140 haraka. 572 00:27:24,140 --> 00:27:26,556 Tunakwenda kuanza juu na kwenda njia yote hadi chini, 573 00:27:26,556 --> 00:27:28,600 si tofauti na awali wetu Mike Smith mfano. 574 00:27:28,600 --> 00:27:33,470 >> Kama, hata hivyo, nasema, hey, database, index jina la kwanza shamba, 575 00:27:33,470 --> 00:27:37,000 basi ni kwenda kufanya kitu fancier na kusaidia kitu 576 00:27:37,000 --> 00:27:38,130 kama tafuta binary. 577 00:27:38,130 --> 00:27:39,820 Ni pengine si binary search per se. 578 00:27:39,820 --> 00:27:42,810 Databases huwa na kutumia mwingine data muundo kuitwa b-miti, 579 00:27:42,810 --> 00:27:46,540 si kwa kuchanganyikiwa na miti binary, kwamba tu kufanya hivyo kwa kasi ya kutafuta 580 00:27:46,540 --> 00:27:48,500 kitu logarithmic katika asili. 581 00:27:48,500 --> 00:27:53,510 Lakini bei ya kulipa ili kujenga kwamba kipengele, kwamba muundo data katika kumbukumbu, 582 00:27:53,510 --> 00:27:54,570 ni zaidi ka. 583 00:27:54,570 --> 00:27:57,170 Hivyo inaweza kuchukua baadhi ya megabytes, baadhi gigabytes, ambaye anajua? 584 00:27:57,170 --> 00:27:58,410 Ni inategemea data. 585 00:27:58,410 --> 00:28:02,640 >> Hivyo wakati fulani, una kuamua, pengine si kesi ya kawaida. 586 00:28:02,640 --> 00:28:06,000 Kwa hiyo kile ni kawaida halisi kesi, kama kweli alikuwa na kuchagua, 587 00:28:06,000 --> 00:28:10,080 nini kinaweza mashamba yako favorite kuwa? 588 00:28:10,080 --> 00:28:10,580 Barua pepe. 589 00:28:10,580 --> 00:28:14,400 Na mimi kama email kwa sababu email, katika nadharia, lazima ziwe za kipekee. 590 00:28:14,400 --> 00:28:17,650 Na hivyo kwa kawaida, wakati unajua mapema kwamba moja ya mashamba yako 591 00:28:17,650 --> 00:28:20,277 ni au itakuwa ya kipekee, kwamba inaelekea kuwa uwanja mzuri 592 00:28:20,277 --> 00:28:22,860 kutafuta juu, kwa sababu kwa njia hiyo, wakati wewe kutafuta kitu, 593 00:28:22,860 --> 00:28:26,194 wewe ni kwenda kupata nyuma moja au sifuri majibu na kisha wewe ni kosa. 594 00:28:26,194 --> 00:28:28,110 Huwezi kuwa kuweka kuangalia kwa bado wengine. 595 00:28:28,110 --> 00:28:31,992 >> Na hivyo katika kesi hii hapa, email, hivyo muda mrefu kama huwezi kujiandikisha mara mbili 596 00:28:31,992 --> 00:28:33,450 na email huo, ni moja nzuri. 597 00:28:33,450 --> 00:28:36,710 ID kwa ufafanuzi, katika sayansi ya kompyuta duniani, 598 00:28:36,710 --> 00:28:39,610 kama wewe kuzungumza juu ya ID, kwamba alikuwa bora kuwa ya kipekee. 599 00:28:39,610 --> 00:28:42,970 Hiyo ni aina ya connotation ya ID au kitambulisho. 600 00:28:42,970 --> 00:28:46,440 Na wengine wa hawa wanaweza kuwa, hebu kuwaita nzuri ya wenye nacho, 601 00:28:46,440 --> 00:28:47,860 lakini si kweli inahitajika. 602 00:28:47,860 --> 00:28:49,976 >> Na hivyo katika database, bayana bahati, 603 00:28:49,976 --> 00:28:51,350 lakini unaweza kuwa hata zaidi sahihi. 604 00:28:51,350 --> 00:28:56,060 Unaweza kusema, hey, database, kuhakikisha kwamba kila ID katika meza hii ni ya kipekee. 605 00:28:56,060 --> 00:28:59,330 Je, si hata basi programu ajali kuweka katika email duplicate 606 00:28:59,330 --> 00:29:00,740 au kurudia idadi ID. 607 00:29:00,740 --> 00:29:03,140 Sana kama enums kutulinda vile vile, wewe 608 00:29:03,140 --> 00:29:04,881 unaweza kuwa wale ulinzi ngazi ya chini. 609 00:29:04,881 --> 00:29:07,130 Na hivyo database design, katika baadhi ya hisia, ni aina ya furaha, 610 00:29:07,130 --> 00:29:08,380 kwa sababu wewe kufanya hivyo kujitetea. 611 00:29:08,380 --> 00:29:11,460 You aina ya kudhani kuwa wewe kazi na ya kutisha, programmers kutisha 612 00:29:11,460 --> 00:29:15,550 na unataka kuweka katika ulinzi kama wengi kama unaweza kulinda data yako, 613 00:29:15,550 --> 00:29:18,940 lakini wakati huo huo unataka kuwasaidia kufanya vizuri 614 00:29:18,940 --> 00:29:21,386 kwa kuchagua ambayo mashamba ya kuongeza kwa. 615 00:29:21,386 --> 00:29:24,260 Lakini unaweza si lazima kufanya hivyo katika utupu kama sisi aina ya watu hapa. 616 00:29:24,260 --> 00:29:26,480 Nimepata kujua nini ni kesi hizo kawaida kuwa. 617 00:29:26,480 --> 00:29:29,397 Kama watengenezaji ni utekelezaji wa kitabu cha anwani, 618 00:29:29,397 --> 00:29:32,230 unaweza vizuri sana wanataka kuwa na uwezo kutafuta katika karibu kila uwanja, 619 00:29:32,230 --> 00:29:33,830 tu kwa asili ya maombi. 620 00:29:33,830 --> 00:29:37,910 Hivyo labda wewe kutumia kwamba nafasi ya ziada. 621 00:29:37,910 --> 00:29:39,090 >> Right, maswali yoyote? 622 00:29:39,090 --> 00:29:41,820 623 00:29:41,820 --> 00:29:42,486 Yeah. 624 00:29:42,486 --> 00:29:43,470 >> Watazamaji: [inaudible] 625 00:29:43,470 --> 00:29:44,404 >> DAVID Malan: Hapana 626 00:29:44,404 --> 00:29:45,279 >> Watazamaji: [inaudible] 627 00:29:45,279 --> 00:29:47,840 628 00:29:47,840 --> 00:29:48,826 >> DAVID Malan: Sawa. 629 00:29:48,826 --> 00:29:49,701 >> Watazamaji: [inaudible] 630 00:29:49,701 --> 00:29:52,420 631 00:29:52,420 --> 00:29:54,850 >> DAVID Malan: Oh, hivyo sisi ni kuzungumza kwa njia 632 00:29:54,850 --> 00:29:57,940 sasa hiyo ni lugha agnostic kabisa. 633 00:29:57,940 --> 00:30:02,370 Hivyo sisi ni kuzungumza sasa kuhusu database kimahusiano kwa ujumla zaidi, 634 00:30:02,370 --> 00:30:04,760 au SQL database zaidi kwa ujumla. 635 00:30:04,760 --> 00:30:06,870 >> Watazamaji: [inaudible] 636 00:30:06,870 --> 00:30:10,030 >> DAVID Malan: neno bora kutumia ni, inaweza kutumika na lugha yoyote. 637 00:30:10,030 --> 00:30:15,280 Hivyo siwezi kuandika JavaScript code, C kanuni, C ++ code, Java code, Ruby code, 638 00:30:15,280 --> 00:30:19,010 ambayo yote kuzungumza na database na kutekeleza maswali. 639 00:30:19,010 --> 00:30:22,310 Kwa kweli, kwamba si mbaya segue kwa mfano swala. 640 00:30:22,310 --> 00:30:25,720 Na tena, sisi siyo kwenda katika Java au C ++ au yoyote ya kwamba tena, 641 00:30:25,720 --> 00:30:29,420 lakini katika SQL, lugha ambayo mimi kuendelea akimaanisha, Strukturerad Query Language, 642 00:30:29,420 --> 00:30:32,790 hii yenyewe ni lugha ya programu, lakini ni maana ya kutumika kwa ajili ya, hakuna 643 00:30:32,790 --> 00:30:37,330 mshangao, muundo maswali swala. 644 00:30:37,330 --> 00:30:38,660 >> Kwa kuwa mimi maana hii. 645 00:30:38,660 --> 00:30:41,190 njia wewe kuchagua data kutoka MySQL database 646 00:30:41,190 --> 00:30:49,330 ni wewe literally aina katika mpango wako kitu kama kuchagua nyota kutoka kwa watumiaji. 647 00:30:49,330 --> 00:30:52,200 Mimi ni kuchukua kwamba meza hii, sasa inaitwa watumiaji. 648 00:30:52,200 --> 00:30:54,860 Mimi naweza kuiita kitu chochote tunataka, lakini aina hiyo ya mantiki. 649 00:30:54,860 --> 00:30:57,240 Na hivyo kuchagua ni sana kawaida kitenzi, kama wewe 650 00:30:57,240 --> 00:30:59,290 mapenzi, katika SQL, kwamba literally anafanya hivyo. 651 00:30:59,290 --> 00:31:02,730 Unafikiri nyota ina maana katika mazingira haya? 652 00:31:02,730 --> 00:31:04,410 >> Watazamaji: [inaudible] 653 00:31:04,410 --> 00:31:05,380 >> DAVID Malan: Mimi nasikitika? 654 00:31:05,380 --> 00:31:06,300 >> Watazamaji: [inaudible] 655 00:31:06,300 --> 00:31:09,580 >> DAVID Malan: Si required, ni umoja zaidi ya kwamba, kwa kweli. 656 00:31:09,580 --> 00:31:11,700 Ni kadi mwitu tabia. 657 00:31:11,700 --> 00:31:14,740 Nyota karibu kila mara ina maana yoyote, hivyo hii ina maana, katika kesi hii, 658 00:31:14,740 --> 00:31:16,510 kuchagua kila kitu kutoka database. 659 00:31:16,510 --> 00:31:20,730 Hivyo wakati mimi kusema hii, I mean nipe nyuma kila safu 660 00:31:20,730 --> 00:31:22,440 kutoka meza yangu aitwaye watumiaji. 661 00:31:22,440 --> 00:31:24,730 Basi nipe matokeo ya kuweka, kama ni kuitwa. 662 00:31:24,730 --> 00:31:28,210 Kwa maneno mengine, nipe nakala ya spreadsheet, ni nini mimi kupata katika. 663 00:31:28,210 --> 00:31:34,890 >> Lakini kama nilivyosema kuchagua nyota kutoka kwa watumiaji ambapo ID sawa na 1, jinsi kubwa lazima 664 00:31:34,890 --> 00:31:36,640 matokeo yangu kuweka kuwa basi? 665 00:31:36,640 --> 00:31:41,680 Au equivalently, safu ngapi lazima Mimi kuwa mitupu nyuma kutoka database? 666 00:31:41,680 --> 00:31:45,860 Pengine moja tu, kama nina hakika kutibiwa ID kama kitambulisho kipekee, 667 00:31:45,860 --> 00:31:50,710 na kama David ina kuwa ID kipekee, I lazima kupata nyuma moja na mstari mmoja tu 668 00:31:50,710 --> 00:31:53,220 zenye wote wa habari Daudi. 669 00:31:53,220 --> 00:31:56,390 Kama nilivyosema ambapo hii ID sawa na 99, mimi lazima kupata nyuma, 670 00:31:56,390 --> 00:32:00,320 kwa mantiki hii, safu sifuri, angalau kwa sasa. 671 00:32:00,320 --> 00:32:03,620 >> Hata hivyo, kama mimi si kweli huduma kuhusu habari kwamba wote, 672 00:32:03,620 --> 00:32:06,970 Mimi naweza kusema tu, ambapo gani David kuishi? 673 00:32:06,970 --> 00:32:10,860 Select zip code kutoka watumiaji ambapo ID ni 1. 674 00:32:10,860 --> 00:32:15,820 Hii kuchagua kwangu tu zip Daudi kanuni na si ukamilifu wa mstari huo. 675 00:32:15,820 --> 00:32:19,541 Kwa nini natakiwa kufanya hivyo badala ya nyota swala, kadi ya pori? 676 00:32:19,541 --> 00:32:21,950 >> Watazamaji: [inaudible] 677 00:32:21,950 --> 00:32:24,590 >> DAVID Malan: Yeah, mimi ili tu haja yake. 678 00:32:24,590 --> 00:32:26,350 Hivyo utendaji ni tena jibu hapa. 679 00:32:26,350 --> 00:32:28,540 Kwa nini kuuliza kwa zaidi Maelezo kuliko unahitaji, 680 00:32:28,540 --> 00:32:32,020 kwa sababu hata kama ni haki ya wote kwa pamoja, bado una nakala ya kwamba data, 681 00:32:32,020 --> 00:32:35,560 inaweza kuonekana, kutoka database katika mpango wako kwa namna fulani, 682 00:32:35,560 --> 00:32:38,490 na kwamba tu silly kama wewe tu haja tano ya tatu hizo, 683 00:32:38,490 --> 00:32:40,340 si ukamilifu wa mfululizo. 684 00:32:40,340 --> 00:32:42,180 >> Hivyo ni jinsi gani mimi kuingiza user? 685 00:32:42,180 --> 00:32:44,780 Tuseme user ina tu kusajiliwa kwa mara ya kwanza. 686 00:32:44,780 --> 00:32:46,560 syntax ingekuwa kawaida kuangalia kama hii. 687 00:32:46,560 --> 00:32:52,700 Kuingiza ndani ya watumiaji, na kisha tunataka kusema maadili, 688 00:32:52,700 --> 00:33:00,150 na kisha tunataka kusema maadili kama, hebu sema, Lauren Scully, 689 00:33:00,150 --> 00:33:02,380 videographer yetu hapa hapa. 690 00:33:02,380 --> 00:33:04,390 Na shamba la pili ni jinsia. 691 00:33:04,390 --> 00:33:08,020 Hivyo tutaweza kusema quote, unquote "F", basi tuna ID 692 00:33:08,020 --> 00:33:12,250 na mimi nina kwenda kwa say-- hebu kujifanya yeye si kweli hapa, 693 00:33:12,250 --> 00:33:14,380 hivyo tutaweza rewind katika hadithi. 694 00:33:14,380 --> 00:33:16,530 Hivyo 2 itakuwa ID yake. 695 00:33:16,530 --> 00:33:19,130 Na kisha shamba ijayo hapa ni email yake. 696 00:33:19,130 --> 00:33:22,140 Hivyo ni kwenda kuwa kama Lauren Scully na kadhalika, 697 00:33:22,140 --> 00:33:24,360 na tutaweza tu dot dot dot ni mbali na hapa juu. 698 00:33:24,360 --> 00:33:26,890 Sasa itakuwa kupata kidogo nyeti, lakini kuingiza swala 699 00:33:26,890 --> 00:33:28,310 hatimaye kuangalia kama hiyo. 700 00:33:28,310 --> 00:33:30,970 >> Kama mimi nataka kujikwamua Scully, uh-oh, hebu kufuta usajili 701 00:33:30,970 --> 00:33:37,420 yake, yeye deletes akaunti yake, kufuta kutoka kwa watumiaji ambapo ID sawa na 2, 702 00:33:37,420 --> 00:33:38,500 itakuwa kujikwamua Scully. 703 00:33:38,500 --> 00:33:48,050 Au naweza kusema watumiaji update kuweka, hebu sema, tunaweza kubadili nini? 704 00:33:48,050 --> 00:33:49,430 Tuseme yeye hatua. 705 00:33:49,430 --> 00:33:53,730 Kuweka zip sawa na 021-- nope, hiyo ni zip yake ya sasa. 706 00:33:53,730 --> 00:33:54,487 90210. 707 00:33:54,487 --> 00:33:56,320 tu wengine zip code Najua duniani. 708 00:33:56,320 --> 00:33:59,002 Hivyo kwamba bila mabadiliko zip yake code-- kweli, 709 00:33:59,002 --> 00:34:00,460 kwamba asingeweza kubadili msimbo yake. 710 00:34:00,460 --> 00:34:02,170 >> Je, mimi tu kufanya? 711 00:34:02,170 --> 00:34:04,292 Japokuwa syntax pengine ni mpya. 712 00:34:04,292 --> 00:34:05,302 >> Watazamaji: [inaudible] 713 00:34:05,302 --> 00:34:08,010 DAVID Malan: Yeah, mimi wakiongozwa kila mtu Beverly Hills, California. 714 00:34:08,010 --> 00:34:11,920 Hivyo mimi lazima kweli kusema ambapo ID sawa na 2. 715 00:34:11,920 --> 00:34:12,820 Na kadhalika. 716 00:34:12,820 --> 00:34:15,290 Hivyo SQL ni wote kuhusu hizi aina ya maelekezo. 717 00:34:15,290 --> 00:34:20,260 Kuchagua, kuingiza, kufuta, update, na predicates hizi mwishoni 718 00:34:20,260 --> 00:34:22,139 hizi vifungu wapi, hivyo kusema. 719 00:34:22,139 --> 00:34:25,170 Na kuna mengi zaidi unaweza kufanya, lakini ni kweli tu majipu chini 720 00:34:25,170 --> 00:34:29,750 tu, kama arcanely, akielezea nini unataka database kufanya. 721 00:34:29,750 --> 00:34:31,580 >> Na kisha database itakuwa kufikiri, wakati 722 00:34:31,580 --> 00:34:35,630 kuingiza Lauren Scully katika Mbegu, ambapo kuweka wake katika kumbukumbu 723 00:34:35,630 --> 00:34:38,230 ili tuweze haraka sana kupata yake kwa kuzingatia hotuba yake email 724 00:34:38,230 --> 00:34:42,610 au kutokana na idadi yake ID au kama. 725 00:34:42,610 --> 00:34:43,391 Yeah, Dan. 726 00:34:43,391 --> 00:34:44,266 Watazamaji: [inaudible] 727 00:34:44,266 --> 00:34:46,364 728 00:34:46,364 --> 00:34:47,780 DAVID Malan: Swali Kweli nzuri. 729 00:34:47,780 --> 00:34:50,370 Je, maandiko hayo mabadiliko kutoka Microsoft Access kwa Oracle 730 00:34:50,370 --> 00:34:52,290 kwa MySQL kwa PostgreSQL? 731 00:34:52,290 --> 00:34:53,790 jibu fupi ni inategemea. 732 00:34:53,790 --> 00:34:58,697 Katika nadharia, kuna sana muhimu ya kawaida subset ya SQL 733 00:34:58,697 --> 00:35:00,780 hiyo pamoja hela yote ya utekelezaji hizi. 734 00:35:00,780 --> 00:35:03,340 Hata hivyo, wazalishaji mbalimbali kuwa na sifa aliongeza 735 00:35:03,340 --> 00:35:07,120 kwa database yao kufanya mambo fulani zaidi ya upeo wa makala haya, 736 00:35:07,120 --> 00:35:08,720 ambayo inaweza, kwa kweli, kuvunja. 737 00:35:08,720 --> 00:35:11,210 >> Hivyo watengenezaji njia ua dhidi ya hii, 738 00:35:11,210 --> 00:35:14,350 ni kwamba badala ya kuandika mbichi SQL code kama mimi nina kuandika hapa, 739 00:35:14,350 --> 00:35:19,460 wao badala yake kutumia maktaba, maktaba ya kawaida kwamba yenyewe 740 00:35:19,460 --> 00:35:23,650 ni aina ya ngazi ya juu na abstracts mbali ambayo bidhaa unatumia. 741 00:35:23,650 --> 00:35:25,710 Na inakupa kazi na taratibu 742 00:35:25,710 --> 00:35:28,810 kuwaita ili kamwe kweli kuandika SQL ghafi. 743 00:35:28,810 --> 00:35:32,609 >> Katika nadharia, basi, unaweza kubadilisha bidhaa kutoka Oracle kwa Microsoft 744 00:35:32,609 --> 00:35:34,650 au kinyume chake au kitu chochote mwingine, na wewe literally 745 00:35:34,650 --> 00:35:36,920 mabadiliko chochote kuhusu kanuni yako. 746 00:35:36,920 --> 00:35:40,180 Hata hivyo, ukweli ni, wewe wakati mwingine kutoa juu ya makala kama matokeo. 747 00:35:40,180 --> 00:35:43,860 Unaweza wamechagua bidhaa kwa sababu ni got makala haya ongezeko la thamani, 748 00:35:43,860 --> 00:35:46,610 na uko tu sasa si kutumia yao kwa uangalifu. 749 00:35:46,610 --> 00:35:51,630 >> Na anecdotally, makampuni ya wengi huwa kamwe kuondokana na orodha yao. 750 00:35:51,630 --> 00:35:54,002 Hivyo wakati huu ni nzuri na kuwa kipengele, ukweli 751 00:35:54,002 --> 00:35:55,960 ni, kama wewe ni overhauling Mbegu yako, uko 752 00:35:55,960 --> 00:35:59,890 pengine kufanya mashada ya mabadiliko mengine anyway, kwamba si lazima 753 00:35:59,890 --> 00:36:01,360 haja wanatarajia kwamba. 754 00:36:01,360 --> 00:36:03,720 Hivyo ni arguably juu-uhandisi tatizo, 755 00:36:03,720 --> 00:36:05,670 lakini kwa kweli inategemea mazingira. 756 00:36:05,670 --> 00:36:09,960 Lakini katika nadharia, SQL ni pamoja hela bidhaa hizo mbalimbali. 757 00:36:09,960 --> 00:36:11,560 maswali mzuri. 758 00:36:11,560 --> 00:36:12,272 Yeah. 759 00:36:12,272 --> 00:36:13,147 >> Watazamaji: [inaudible] 760 00:36:13,147 --> 00:36:17,820 761 00:36:17,820 --> 00:36:21,480 >> DAVID Malan: Yeah, hivyo unaweza kufikiria database 762 00:36:21,480 --> 00:36:25,020 ni tu server, mwishoni mwa siku, na ndani ya server kwamba 763 00:36:25,020 --> 00:36:28,670 ni rundo zima la meza, safu na nguzo. 764 00:36:28,670 --> 00:36:33,410 Na wakati kutuma swala kama hili kutoka mpango wako, tovuti yako, 765 00:36:33,410 --> 00:36:39,340 yaliyoandikwa katika Java, Ruby, Python, chochote, server ni kupokea amri hii 766 00:36:39,340 --> 00:36:41,660 na kutafsiri katika literally njia hiyo hiyo 767 00:36:41,660 --> 00:36:43,660 sisi kujadiliwa mapema na kufasiriwa lugha, 768 00:36:43,660 --> 00:36:47,333 na kisha kufanya baadhi ya hatua juu ya sifuri au safu zaidi katika meza zero au zaidi. 769 00:36:47,333 --> 00:36:48,208 Watazamaji: [inaudible] 770 00:36:48,208 --> 00:36:53,540 771 00:36:53,540 --> 00:36:55,070 >> DAVID Malan: Hasa, hasa. 772 00:36:55,070 --> 00:36:58,450 Hivyo pseudocode kwa ajili ya kitu kama hiyo inaweza kuwa ni hii. 773 00:36:58,450 --> 00:37:02,450 Katika PHP faili yako au yako Python faili au Java yako file, 774 00:37:02,450 --> 00:37:09,210 ungependa kuwa kificho pseudocode, au Scratch-kama vitalu kama, kama ziara user 775 00:37:09,210 --> 00:37:19,870 acme.com/register~~V kwa mara ya kwanza, kisha kuingiza ndani ya watumiaji na kadhalika. 776 00:37:19,870 --> 00:37:22,619 Na tunataka kutafsiri huu kwa thabiti zaidi kificho katika mwisho. 777 00:37:22,619 --> 00:37:24,660 Lakini kwa kweli, tuna kila matofali ya ujenzi hapa, 778 00:37:24,660 --> 00:37:27,680 hata kama sisi ni kuruka baadhi hatua ya utekelezaji. 779 00:37:27,680 --> 00:37:31,560 >> Hivyo basi mimi kupata kosa na nini sisi ajabu alifanya tu wakati iliyopita. 780 00:37:31,560 --> 00:37:36,470 Mmetengeneza pretty meza kamili kwa watumiaji. 781 00:37:36,470 --> 00:37:38,920 Hakika, tunaweza kutekeleza hivyo kwa njia kadhaa tofauti, 782 00:37:38,920 --> 00:37:43,030 lakini una kweli imesababisha sisi chini path-- na mimi kusema wewe, 783 00:37:43,030 --> 00:37:48,080 lakini pengine fault-- yangu ya haki ufanisi utekelezaji database. 784 00:37:48,080 --> 00:37:49,950 Ni si normalized. 785 00:37:49,950 --> 00:37:52,320 >> Na kwa normalized I mean kuna ni kwenda kuwa, 786 00:37:52,320 --> 00:37:57,380 baada ya muda, redundancy muhimu, na kwa hiyo uzembe, 787 00:37:57,380 --> 00:38:00,210 kwamba ni kupoteza nafasi. 788 00:38:00,210 --> 00:38:05,650 Kulingana na tu nini kuona hapa, Unaweza wewe wanaangalia ambapo hii ni kupoteza nafasi 789 00:38:05,650 --> 00:38:08,710 atakuja kutoka, baada ya muda, kama watumiaji zaidi na zaidi kusajili 790 00:38:08,710 --> 00:38:10,860 ajili ya tovuti yako? 791 00:38:10,860 --> 00:38:13,047 Nini data inaweza kuwa redundant? 792 00:38:13,047 --> 00:38:19,084 793 00:38:19,084 --> 00:38:20,940 >> Watazamaji: [inaudible] 794 00:38:20,940 --> 00:38:22,686 >> DAVID Malan: Kwa nini na maana kwamba? 795 00:38:22,686 --> 00:38:23,561 Watazamaji: [inaudible] 796 00:38:23,561 --> 00:38:32,180 797 00:38:32,180 --> 00:38:32,930 DAVID Malan: Yeah. 798 00:38:32,930 --> 00:38:35,622 Na hebu kudhani kwa madhumuni ya leo kwamba kwamba ni kweli. 799 00:38:35,622 --> 00:38:38,330 Zamu nje, na tumejifunza hii njia ngumu, kwamba si kweli. 800 00:38:38,330 --> 00:38:41,670 Kwa namna fulani miji mbalimbali kuwa, kwa namna fulani, sawa zip code, 801 00:38:41,670 --> 00:38:43,390 ambayo mapumziko Intuition huu wa ajabu. 802 00:38:43,390 --> 00:38:46,180 Lakini hebu tuseme kwamba ni kweli, kwa sababu ni karibu kila mara ya kweli. 803 00:38:46,180 --> 00:38:51,390 Hivyo kudhani kuwa zip code ni daima ni kuhusishwa na mji huo 804 00:38:51,390 --> 00:38:53,600 na hali, ambayo ni aina ya dhana ya kuridhisha, 805 00:38:53,600 --> 00:38:54,840 lakini sahihi, ni zamu nje. 806 00:38:54,840 --> 00:38:57,310 Lakini dhana busara kwa madhumuni ya leo. 807 00:38:57,310 --> 00:39:01,650 >> Kisha tuseme kwamba mimi kuishi katika Cambridge, MA, kwa mujibu wa meza user huu, 808 00:39:01,650 --> 00:39:04,100 na tuseme kwamba Lauren Scully anaishi katika Cambridge, MA, 809 00:39:04,100 --> 00:39:06,120 na tuseme kwamba Kareem anaishi katika Cambridge, MA, 810 00:39:06,120 --> 00:39:10,400 na Arwa anaishi katika Cambridge, MA, sote katika 02138. 811 00:39:10,400 --> 00:39:15,890 Kwa nini sisi kukumbuka Cambridge, MA, 02138 ajili zote nne za yetu? 812 00:39:15,890 --> 00:39:18,903 Nini lazima inatosha kukumbuka? 813 00:39:18,903 --> 00:39:20,249 >> Watazamaji: [inaudible] 814 00:39:20,249 --> 00:39:21,540 DAVID Malan: Tu zip code. 815 00:39:21,540 --> 00:39:25,080 Tu kwamba 02138 ipo, kwa sababu unajua nini tunaweza kufanya? 816 00:39:25,080 --> 00:39:32,650 Tunaweza kupata dhana kidogo hapa na zaidi ya hapa, kufafanua meza nyingine 817 00:39:32,650 --> 00:39:35,850 ambapo hii ni kwenda kuwa jina, hii ni kwenda kuwa aina, 818 00:39:35,850 --> 00:39:38,840 hii ni kwenda kuwa urefu, na sasa, mimi nina 819 00:39:38,840 --> 00:39:42,900 kwenda kuwaita hii miji yangu mezani. 820 00:39:42,900 --> 00:39:47,011 Hii aliitwa, ya Bila shaka, watumiaji yangu mezani. 821 00:39:47,011 --> 00:39:49,885 Na hivyo kile lazima mimi kuweka juu hapa kwa ajili ya miji yangu meza, unafikiri? 822 00:39:49,885 --> 00:39:53,605 823 00:39:53,605 --> 00:39:54,535 >> Watazamaji: [inaudible] 824 00:39:54,535 --> 00:39:55,930 >> DAVID Malan: Yeah. 825 00:39:55,930 --> 00:40:01,440 Hivyo zip na hali na mji. 826 00:40:01,440 --> 00:40:05,350 Na hivyo aina hapa, tutaweza kusema hii ni kwenda kuwa char 5 tena, 827 00:40:05,350 --> 00:40:06,750 chini ya mjadala wa mapema. 828 00:40:06,750 --> 00:40:14,810 Hii itakuwa ni enum, labda kama kabla, na mji itakuwa varchar 50. 829 00:40:14,810 --> 00:40:17,960 Na hivyo sasa je, mimi kupata kufuta kutoka meza hii 830 00:40:17,960 --> 00:40:21,995 kuondokana kwamba uzembe? 831 00:40:21,995 --> 00:40:23,100 >> Watazamaji: [inaudible] 832 00:40:23,100 --> 00:40:23,850 DAVID Malan: Nice. 833 00:40:23,850 --> 00:40:30,239 Hali na mji kwenda mbali, hivyo nimekuwa sasa kuondolewa uzembe uwezo 834 00:40:30,239 --> 00:40:33,280 kwa redundantly kukumbuka, Cambridge, MA, Cambridge, MA, Cambridge, MA, 835 00:40:33,280 --> 00:40:35,712 Cambridge, MA, ambayo, hopefully ni kamwe kwenda na mabadiliko. 836 00:40:35,712 --> 00:40:37,670 Na hata kama itakuwa hivyo, ni minorly annoying, sasa 837 00:40:37,670 --> 00:40:39,750 kwamba mimi kuwa na mabadiliko hivyo katika safu mbalimbali, 838 00:40:39,750 --> 00:40:43,770 wakati hapa, mimi naweza tu mabadiliko hayo katika sehemu moja. 839 00:40:43,770 --> 00:40:46,890 >> Sasa nini biashara-off, labda? 840 00:40:46,890 --> 00:40:48,020 Hii ilikuwa ni super rahisi. 841 00:40:48,020 --> 00:40:50,730 Alikuwa data wangu wote nicely pamoja. 842 00:40:50,730 --> 00:40:53,644 Lakini nini wazi kesi sasa? 843 00:40:53,644 --> 00:40:55,684 >> Watazamaji: [inaudible] 844 00:40:55,684 --> 00:40:58,100 DAVID Malan: Hasa, na mimi nina furaha wewe alitumia neno kujiunga, 845 00:40:58,100 --> 00:41:01,320 kwa sababu hiyo ni kweli keyword, katika ulimwengu wa database kimahusiano 846 00:41:01,320 --> 00:41:05,270 katika SQL, ni neno halisi wewe wanaweza aina au angalau kufikisha. 847 00:41:05,270 --> 00:41:09,280 Na kwa kweli, nini sisi sasa una kufanya kuchagua taarifa kamili Daudi ni 848 00:41:09,280 --> 00:41:19,700 kitu kama kuchagua nyota kutoka watumiaji, kujiunga na miji, on-- na sasa 849 00:41:19,700 --> 00:41:24,010 Mimi nina kwenda tu hoja mstari wa pili hivyo kwamba hii users.zip fits-- sawa na 850 00:41:24,010 --> 00:41:34,570 cities.zip, ambapo users.ID sawa na 1. 851 00:41:34,570 --> 00:41:35,550 >> Hivyo nini kinaendelea? 852 00:41:35,550 --> 00:41:38,970 Ni mbaya kuangalia, lakini unaweza aina ya kusoma kushoto kwenda kulia, juu hadi chini. 853 00:41:38,970 --> 00:41:41,030 Select nyota kutoka kwa watumiaji ni sawa mbele, 854 00:41:41,030 --> 00:41:42,930 lakini siyo kutoka kwa watumiaji, per se. 855 00:41:42,930 --> 00:41:45,910 Ni kutoka kwa watumiaji kujiunga na miji. 856 00:41:45,910 --> 00:41:48,520 Hivi mimi kujiunga na meza hizo mbili juu ya? 857 00:41:48,520 --> 00:41:51,820 Naam, inaonekana, watumiaji meza zip shamba, 858 00:41:51,820 --> 00:41:54,810 na kipindi hiki ni tu maalum syntax ili kueleza wazo kwamba, 859 00:41:54,810 --> 00:41:58,130 na hii ni miji meza zip shamba. 860 00:41:58,130 --> 00:42:01,580 Nataka hizo mbili kuwa sawa, lakini nataka hatimaye chagua 861 00:42:01,580 --> 00:42:06,280 tu safu hizo ambapo ID katika meza watumiaji 862 00:42:06,280 --> 00:42:08,730 sawa na 1, ambayo ilitokea kuwa ya mgodi. 863 00:42:08,730 --> 00:42:11,781 >> Na tu kuwa wazi, programu, kwa kawaida wakati 864 00:42:11,781 --> 00:42:14,780 Hardcode kitu kama idadi 1, kwa sababu vinginevyo tovuti tu 865 00:42:14,780 --> 00:42:17,630 inasaidia David au user kwanza kabisa, wewe 866 00:42:17,630 --> 00:42:20,720 badala yake kufanya kitu kama ID, ambapo 867 00:42:20,720 --> 00:42:22,510 hii inawakilisha kutofautiana, kitu ambacho 868 00:42:22,510 --> 00:42:26,210 Unaweza kubadilisha baada ya muda, sawa katika roho na kile nilivyosema awali 869 00:42:26,210 --> 00:42:28,080 na aina hii ya placeholders. 870 00:42:28,080 --> 00:42:30,396 Lakini kwa sasa tutaweza tu Hardcode ni kama 1. 871 00:42:30,396 --> 00:42:31,520 Na hivyo hii ina maana gani? 872 00:42:31,520 --> 00:42:35,100 Naam, njia nzuri ya taswira hii ni kwamba kama hii mkono ni watumiaji meza, 873 00:42:35,100 --> 00:42:38,090 na mkono huu ni zips meza, sisi ni aina ya finding-- 874 00:42:38,090 --> 00:42:41,330 na ncha za vidole yangu ni zip zaidi ya hapa, na ncha za vidole yangu 875 00:42:41,330 --> 00:42:43,740 hapa ni zip, uko aina ya interlocking ni 876 00:42:43,740 --> 00:42:47,950 ili kupata nyuma na kusababisha meza ya awali, na kweli kujiunga na 877 00:42:47,950 --> 00:42:49,590 mbao mbili kwenye uwanja wa kawaida. 878 00:42:49,590 --> 00:42:50,840 Na haina kuwa zip. 879 00:42:50,840 --> 00:42:54,460 Ni inaweza kuwa kitu kingine chochote zaidi, lakini zip ni nzuri, kwa sababu moja, ni muda mfupi, 880 00:42:54,460 --> 00:42:56,470 mbili, mara nyingi ni urefu sawa, hivyo kuna 881 00:42:56,470 --> 00:43:02,270 ufanisi halisi kwa nini Olivier mapendekezo hapa 882 00:43:02,270 --> 00:43:05,200 na factoring nje zip, na [Inaudible] kupendekeza kwamba sisi kujikwamua 883 00:43:05,200 --> 00:43:07,110 ya mji na majimbo. 884 00:43:07,110 --> 00:43:11,370 >> Hivyo hii ni mchakato inayojulikana kama kuhalalisha. 885 00:43:11,370 --> 00:43:14,171 Maswali yoyote juu ya hilo? 886 00:43:14,171 --> 00:43:16,170 Naam napenda kumweka nje hii ni aina ya mambo, 887 00:43:16,170 --> 00:43:19,202 hata kama ni uungwana ngazi ya chini, huu mjadala, kwamba unaweza kudhani 888 00:43:19,202 --> 00:43:20,910 wewe ni aina ya kupata waliopotea katika magugu, 889 00:43:20,910 --> 00:43:26,690 hii ni kielelezo cha kutosha fursa kwa watengenezaji kuwa mbaya. 890 00:43:26,690 --> 00:43:29,600 Na kwa kweli, hata wakati sisi, katika kozi Nimekuwa kufundisha, wakati tulikuwa na, 891 00:43:29,600 --> 00:43:32,290 Kwa mfano, inexperienced programmers shahada ya kwanza 892 00:43:32,290 --> 00:43:35,920 kujenga tovuti, katika mtazamo wa kwanza, tovuti ili kuangalia kali. 893 00:43:35,920 --> 00:43:38,280 Na wao wana wote wa utendaji sisi ombi, 894 00:43:38,280 --> 00:43:40,650 watengenezaji alifanya kazi nzuri. 895 00:43:40,650 --> 00:43:43,370 >> Lakini hawakuwa lazima kujua kutosha kuhusu mpango database 896 00:43:43,370 --> 00:43:46,680 au hawakuwa kufikiri kwa bidii kutosha kuhusu aina ya data 897 00:43:46,680 --> 00:43:49,220 na aina ya watumiaji tovuti alikuwa anaenda kuwa, 898 00:43:49,220 --> 00:43:53,240 na tunaona, basi, miezi sita baadaye, baada ya wameweza kufuzu au wakiongozwa juu, 899 00:43:53,240 --> 00:43:56,016 kwamba damn it, tovuti yetu ni kweli, dhati ya polepole. 900 00:43:56,016 --> 00:43:58,890 Na mimi nina hata kuzungumza juu ya kuwa mamilioni au maelfu ya watumiaji. 901 00:43:58,890 --> 00:44:02,580 I mean watumiaji mia chache juu ya chuo, ambao wote kama, kwa mfano, 902 00:44:02,580 --> 00:44:04,870 duka kwa ajili ya kozi katika huo huo, wao uko 903 00:44:04,870 --> 00:44:07,010 kutumia kwamba bila shaka catalog maombi nilivyoeleza 904 00:44:07,010 --> 00:44:10,410 na jambo ni kupata kweli kupunguza kwa sababu kulikuwa hakuna bahati. 905 00:44:10,410 --> 00:44:13,740 Hakukuwa na nyota nyekundu, hivyo kwa kuzungumza, au tulikuwa na si lazima 906 00:44:13,740 --> 00:44:17,690 factored nje data kwa kawaida kupata baadhi ya pesa ya nafasi. 907 00:44:17,690 --> 00:44:21,880 >> Na hivyo wakati vetting developer au database mtu au kama, 908 00:44:21,880 --> 00:44:25,864 aina ya maswali kufikiri kwa njia ya ni hata, wakati kupitia upya kificho mtu, 909 00:44:25,864 --> 00:44:28,530 kusema, siyo lazima kuangalia kwa njia zote za kanuni zao, lakini kusema, 910 00:44:28,530 --> 00:44:30,154 hebu angalia kupitia meza database. 911 00:44:30,154 --> 00:44:31,150 Je, ni wewe kuhifadhi? 912 00:44:31,150 --> 00:44:33,941 Na kisha kusema, vizuri, kusubiri dakika, kwa nini ni wewe kutumia integer? 913 00:44:33,941 --> 00:44:36,224 Nini kama tuna bilioni 4 na 1 ya mistari haya? 914 00:44:36,224 --> 00:44:38,140 Na aina hii ya maswali ni fursa 915 00:44:38,140 --> 00:44:40,170 aina ya kushinikiza nyuma na kupata hisia ya, ambapo 916 00:44:40,170 --> 00:44:42,300 kama wewe si vizuri kufanya hivyo, kuwa na mtu zaidi ya kiufundi 917 00:44:42,300 --> 00:44:45,425 kuuliza maswali haya, kama au si mtu kweli anajua mambo yao. 918 00:44:45,425 --> 00:44:47,890 Na hii ni aina ya mambo, pia kwamba watu 919 00:44:47,890 --> 00:44:50,540 kwenye mtandao ambao ni binafsi kufundisha, labda 920 00:44:50,540 --> 00:44:53,920 kujifunza kidogo mara kwa mara, kwa sababu wewe si lazima kuja hela yake 921 00:44:53,920 --> 00:44:56,630 kama kiasi, kwa sababu unaweza kupata database juu na kukimbia, 922 00:44:56,630 --> 00:44:58,880 lakini kama umeisoma juu ya tutorials au wamekuwa 923 00:44:58,880 --> 00:45:01,880 aliiambia kuhusu kuhalalisha database na Indexing na utendaji, 924 00:45:01,880 --> 00:45:04,255 hizi ni aina ya mambo kwamba ni kwenda kuumiza wewe. 925 00:45:04,255 --> 00:45:07,480 Na unaweza kufikiri, au mhandisi mbaya anaweza kusema, oh, vizuri, sisi bora kulipa 926 00:45:07,480 --> 00:45:09,600 kwa database kubwa au database kwa kasi 927 00:45:09,600 --> 00:45:13,360 au tu kutupa fedha katika hii, wima wadogo, siyo lazima hivyo. 928 00:45:13,360 --> 00:45:16,920 Kama kwenda in-- na unaweza kwenda katika baada fact-- na kuongeza bahati, 929 00:45:16,920 --> 00:45:20,320 na inaweza kuchukua masaa machache kwa database kujenga kwamba takwimu mpya 930 00:45:20,320 --> 00:45:24,100 muundo kwamba mimi alluded mapema, bado unaweza kurekebisha hili baada ya kweli, 931 00:45:24,100 --> 00:45:26,180 kwamba hii ni wapi kuanza kutofautisha 932 00:45:26,180 --> 00:45:28,830 wabunifu nzuri kutoka mbaya wabunifu, si tu aesthetically, 933 00:45:28,830 --> 00:45:32,972 lakini utendaji-busara pia. 934 00:45:32,972 --> 00:45:33,555 Maswali yoyote? 935 00:45:33,555 --> 00:45:36,420 936 00:45:36,420 --> 00:45:37,480 Hakuna? 937 00:45:37,480 --> 00:45:41,980 Hivyo kwa NoSQL, ambayo ilikuwa aina nyingine ya database ambayo mimi alidokeza awali, 938 00:45:41,980 --> 00:45:43,490 huna safu na nguzo. 939 00:45:43,490 --> 00:45:47,000 Badala yake, ingekuwa kitu kwamba inaonekana kidogo zaidi kama hii. 940 00:45:47,000 --> 00:45:48,630 Mimi naenda kutumia syntax kawaida. 941 00:45:48,630 --> 00:45:51,270 braces curly kutokea kwa kutumika hapa mengi kabisa. 942 00:45:51,270 --> 00:45:55,400 Unaweza kuwa na kitu kama jina la kwanza ni David, 943 00:45:55,400 --> 00:46:00,180 unaweza kuwa mwisho jina ni Malan, quotes, 944 00:46:00,180 --> 00:46:07,530 unaweza kuwa ID is-- udhuru kwangu, whoops-- ID ni 1, 945 00:46:07,530 --> 00:46:13,410 email ni malan@harvard.edu, na sipendi kujisumbua kuandika nje ya mapumziko, na kisha 946 00:46:13,410 --> 00:46:14,380 baadhi ya mambo mengine. 947 00:46:14,380 --> 00:46:17,380 >> Kwa maneno mengine, hii ni textual uwakilishi 948 00:46:17,380 --> 00:46:20,720 ya nini tunataka ujumla kuwaita kitu katika programu ya kompyuta. 949 00:46:20,720 --> 00:46:26,079 Na kitu ni ujumla tu ukusanyaji wa thamani jozi muhimu. 950 00:46:26,079 --> 00:46:27,370 Hivyo tena, mada hii mara kwa mara. 951 00:46:27,370 --> 00:46:30,440 Tuliona thamani ufunguo jozi katika HTML, tuliona thamani jozi muhimu sasa 952 00:46:30,440 --> 00:46:34,020 katika mazingira ya database, na sisi aliona thamani jozi muhimu katika mazingira 953 00:46:34,020 --> 00:46:35,970 ya, nadhani, lugha mapema leo. 954 00:46:35,970 --> 00:46:36,890 Anaendelea kuja juu. 955 00:46:36,890 --> 00:46:39,620 Na hakika, hiyo kwa kweli nini data majipu chini, 956 00:46:39,620 --> 00:46:44,240 data na metadata, au maadili na funguo, kwa mtiririko huo. 957 00:46:44,240 --> 00:46:47,430 >> Hivyo mashirika yasiyo ya kimahusiano Mbegu, jambo linalotokana 958 00:46:47,430 --> 00:46:50,680 juu ya vitu, ambapo wewe tu chaka kila kitu pamoja na kuiweka 959 00:46:50,680 --> 00:46:55,640 katika kumbukumbu, ingekuwa ujumla kuwa picha kama, au mawazo ya, kama hii. 960 00:46:55,640 --> 00:47:00,500 Na mimi itabidi kuondoka kwamba sasa kama aina ya mbinu mbadala. 961 00:47:00,500 --> 00:47:03,750 Na moja si lazima bora kuliko nyingine. 962 00:47:03,750 --> 00:47:07,310 Kwa kweli, sana sana katika Vogue siku hizi ni database mifumo 963 00:47:07,310 --> 00:47:11,942 kama MongoDB na Redis na wachache zana nyingine kama hizo, kwa uhuru zaidi, 964 00:47:11,942 --> 00:47:13,400 lakini wao wanazidi sw vogue. 965 00:47:13,400 --> 00:47:18,850 Sehemu kwa sababu wao kutoa ziada makala juu ya njia hizi tabular, 966 00:47:18,850 --> 00:47:20,850 lakini pia kwa sababu wao uko kidogo rahisi kutumia, 967 00:47:20,850 --> 00:47:24,099 kwa sababu huna kufikiri kwa bidii kuhusu mengi ya maamuzi haya kubuni. 968 00:47:24,099 --> 00:47:25,970 Hivyo pluses na minuses. 969 00:47:25,970 --> 00:47:29,740 Hivyo kutambua kuna chaguzi zaidi ya kile sisi tu alitumia muda juu. 970 00:47:29,740 --> 00:47:32,310 >> Basi hebu kufanya hili. 971 00:47:32,310 --> 00:47:37,870 Hebu mpito kidogo nyuma sasa kwa programu ya mtandao, 972 00:47:37,870 --> 00:47:40,470 ili tuweze aina ya kuhitimisha leo na kitu 973 00:47:40,470 --> 00:47:43,930 hiyo ni kidogo mikono juu, kujaza katika baadhi ya mapungufu kuanzia jana. 974 00:47:43,930 --> 00:47:45,340 Hebu kwenda kwa hili la kwanza. 975 00:47:45,340 --> 00:47:49,310 Hivyo kukumbuka kwamba jana tulikuwa na baadhi ya HTML kisheria 976 00:47:49,310 --> 00:47:55,110 kurasa kwamba alikuwa awali, tu HTML, na kisha Pili alikuwa CSS, 977 00:47:55,110 --> 00:47:56,620 kuachia style karatasi. 978 00:47:56,620 --> 00:47:59,830 Hii ni tag mpya ambayo hatukuwa angalia jana, au kukaa juu, 979 00:47:59,830 --> 00:48:01,490 kinachojulikana tag script. 980 00:48:01,490 --> 00:48:05,830 >> Zinageuka unaweza kweli embed lugha inayoitwa JavaScript katika mtandao wako 981 00:48:05,830 --> 00:48:08,310 ukurasa na kufanya mtandao wako kurasa kufanya kitu. 982 00:48:08,310 --> 00:48:09,710 Basi je, mimi maana na kwamba? 983 00:48:09,710 --> 00:48:12,630 Naam, napenda kwenda mbele na tu kukopa kanuni hii kwa sasa. 984 00:48:12,630 --> 00:48:15,860 Mimi nina kwenda katika Cloud9, hakuna haja kwenda huko wenyewe bado tu, 985 00:48:15,860 --> 00:48:21,350 na mimi nina kwenda kuwaita hii alert.HTML. 986 00:48:21,350 --> 00:48:23,650 Mimi nina kwenda kuweka katika faili yangu hapa. 987 00:48:23,650 --> 00:48:32,070 Na tu kufafanua kile nimepata kufanyika, basi niende kwa anwani hii na kwenda kwa macho, 988 00:48:32,070 --> 00:48:33,870 na unaweza kuona Hello World. 989 00:48:33,870 --> 00:48:35,440 >> Lakini hii ni aina ya aghali. 990 00:48:35,440 --> 00:48:37,410 Nataka kufanya kitu tofauti kidogo. 991 00:48:37,410 --> 00:48:40,610 Hivyo nina kwenda kwa kweli kufanya hili. 992 00:48:40,610 --> 00:48:43,820 Mimi nina kwenda katika hapa e, na katika kati ya vitambulisho yangu script, 993 00:48:43,820 --> 00:48:53,460 kusema tahadhari ( 'hello, dunia'); hivyo ilani ni kidogo sloppy, lakini mimi nimepata HTML, 994 00:48:53,460 --> 00:48:56,180 ndani ya ambayo ni lugha inayoitwa JavaScript, 995 00:48:56,180 --> 00:48:59,420 na hii ni kile kinachoitwa kazi wito au utaratibu simu. 996 00:48:59,420 --> 00:49:04,500 Hii ni verb, literally, katika kesi hii, na mimi kutaja kificho utendaji 997 00:49:04,500 --> 00:49:06,310 kuwa mtu mwingine ameandika. 998 00:49:06,310 --> 00:49:09,630 >> Hivyo kwamba utendaji ni tahadhari, hivyo hebu kwenda kwa ukurasa huu 999 00:49:09,630 --> 00:49:14,046 sasa na click Reload, na sasa wewe angalia kidogo ya interactivity. 1000 00:49:14,046 --> 00:49:15,420 Ni aina ya shule zamani na mbaya. 1001 00:49:15,420 --> 00:49:18,580 Hii aina ya kuwakumbusha ninyi ya viibukizi, pengine, ya yesteryear 1002 00:49:18,580 --> 00:49:22,030 lakini haikuwa kufanya kitu a zaidi kidogo ya programu. 1003 00:49:22,030 --> 00:49:26,940 >> Hivyo zaidi ya kwamba, hebu kufanya kitu zaidi ya kuvutia. 1004 00:49:26,940 --> 00:49:30,980 Hebu kwenda katika hapa na kujikwamua hii. 1005 00:49:30,980 --> 00:49:33,840 Na mimi nina kwenda mbele na kujenga fomu kama tulivyofanya jana. 1006 00:49:33,840 --> 00:49:34,840 Kwa kweli, unajua nini? 1007 00:49:34,840 --> 00:49:37,350 Mimi nina kwenda katika google.html, ambayo sisi 1008 00:49:37,350 --> 00:49:43,027 ulianza jana, ambayo inaonekana kama huu, kupitia ambayo sisi searched kwa ajili ya paka 1009 00:49:43,027 --> 00:49:45,360 Lakini taarifa kuna aina ya mdudu katika toleo la sasa. 1010 00:49:45,360 --> 00:49:49,770 Ni kazi kwa ajili ya paka, lakini tuseme kwamba Sina kushirikiana na mimi aina ya kitu, 1011 00:49:49,770 --> 00:49:53,290 na mimi tu bonyeza kuwasilisha. 1012 00:49:53,290 --> 00:49:54,540 Hiyo ni aina ya tabia weird. 1013 00:49:54,540 --> 00:49:57,300 Alinipeleka halisi Google, hamkunipa ujumbe wa kosa. 1014 00:49:57,300 --> 00:50:00,590 Ningependa kuwaambia user unahitaji kutupa thamani. 1015 00:50:00,590 --> 00:50:01,780 >> Hivyo jinsi gani sisi kufanya hili? 1016 00:50:01,780 --> 00:50:06,790 Naam napenda kurejea katika Cloud9 na basi mimi kwenda katika juu ya ukurasa wangu 1017 00:50:06,790 --> 00:50:11,980 na kuongeza tag script kama hii, ambapo Mimi nina kwenda aina baadhi ya kanuni JavaScript. 1018 00:50:11,980 --> 00:50:15,420 Na mimi nina kwenda kufanya yafuatayo. 1019 00:50:15,420 --> 00:50:22,910 Kama (document.getelementByID-- na wanakumbuka kwamba kuongelea kwamba awali, 1020 00:50:22,910 --> 00:50:23,960 kwamba kazi. 1021 00:50:23,960 --> 00:50:25,310 Nini ID nataka kupata? 1022 00:50:25,310 --> 00:50:33,050 Nataka kupata q, na mimi nina kwenda kwa kusema ni sawa na kitu, kama hii 1023 00:50:33,050 --> 00:50:38,220 kweli napenda kutumia quotes mbili tu kwa ajili ya consistency-- ni sawa na kitu, 1024 00:50:38,220 --> 00:50:46,650 kisha tahadhari ( "Tafadhali aina swala") hapa. 1025 00:50:46,650 --> 00:50:49,200 >> Hivyo nina kile kinachoonekana kuwa kitu kama hali hiyo. 1026 00:50:49,200 --> 00:50:51,410 Tumeona wazo hili kwa ujumla katika Scratch. 1027 00:50:51,410 --> 00:50:54,240 Ni kama mmoja wa wale puzzle vipande kwamba inaonekana kama hii. 1028 00:50:54,240 --> 00:50:55,780 Na je, Mimi kusema? 1029 00:50:55,780 --> 00:50:59,520 Naam, chini hapa, taarifa mimi nina kwenda kufanya yafuatayo. 1030 00:50:59,520 --> 00:51:02,790 Mimi nina kwenda kutoa fomu hii uwanja si tu jina la q, ambayo 1031 00:51:02,790 --> 00:51:06,630 ni nini anapata kupita kwa Google, lakini mimi nina kwenda kuwapa kitambulisho mitaa, 1032 00:51:06,630 --> 00:51:07,630 Pia inaitwa q. 1033 00:51:07,630 --> 00:51:11,780 Lakini mimi naweza kuita hii kitu mimi wanataka, mimi nina kwenda tu kushika ni rahisi 1034 00:51:11,780 --> 00:51:14,570 na pia simu yake q, tu kwa unyenyekevu. 1035 00:51:14,570 --> 00:51:17,650 >> Na sasa mimi nina kwenda kufanya kitu kidogo zaidi. 1036 00:51:17,650 --> 00:51:22,600 On mashamba fomu hapa, mimi nina kwenda kwa kuongeza kile kinachoitwa tukio handler. 1037 00:51:22,600 --> 00:51:32,260 On kuwasilisha, nataka kuita kazi kuitwa validate. 1038 00:51:32,260 --> 00:51:35,520 Hii haipo bado, hii neno, au hii validate kitenzi, 1039 00:51:35,520 --> 00:51:38,560 kwa sababu nini mimi kwenda kufanya hapa sasa ni kuongeza baadhi ya kanuni. 1040 00:51:38,560 --> 00:51:42,200 >> Mimi nina kwenda kusema kazi validate. 1041 00:51:42,200 --> 00:51:48,280 Mimi nina kwenda Indent hii na kuongeza mwingine curly brace hapa na mtu mwingine hapa. 1042 00:51:48,280 --> 00:51:50,110 Fikiria nini hii sasa ni kufanya. 1043 00:51:50,110 --> 00:51:54,210 Nina now-- kufikiri ya hii kama umba yangu mwenyewe puzzle kipande kwamba alifanya si awali 1044 00:51:54,210 --> 00:51:57,440 zipo, na Nimekuwa kuitwa huu puzzle kipande validate puzzle kipande. 1045 00:51:57,440 --> 00:52:01,620 Madhumuni yake katika maisha ni kutekeleza mistari minne ya kificho ndani yake. 1046 00:52:01,620 --> 00:52:04,940 >> Kama document.getElementByID hivyo conceptually, 1047 00:52:04,940 --> 00:52:09,380 kwamba ni kwenda katika kipengele, kipengele HTML ambaye kipekee 1048 00:52:09,380 --> 00:52:12,930 Wazo ni tu q, na kisha ingawa syntax inaonekana kidogo weird, 1049 00:52:12,930 --> 00:52:16,430 kwamba sawa sawa na tu ina maana sawa. 1050 00:52:16,430 --> 00:52:20,950 Hivyo kwamba maana kama kipengele na kipekee kitambulisho cha q, wakati wamezipata, 1051 00:52:20,950 --> 00:52:25,700 hana thamani, ni tu sawa na quote unquote, hakuna kitu katika huko, 1052 00:52:25,700 --> 00:52:27,170 kisha je, nataka kufanya? 1053 00:52:27,170 --> 00:52:29,360 Nataka kelele katika user. 1054 00:52:29,360 --> 00:52:31,710 >> Na sisi si kwenda kina kubwa hapa. 1055 00:52:31,710 --> 00:52:32,960 Mimi nina kwenda na kurudi uongo. 1056 00:52:32,960 --> 00:52:34,380 Hiyo ni kosa. 1057 00:52:34,380 --> 00:52:38,746 Kingine chochote, mimi nina kwenda na kurudi kweli. 1058 00:52:38,746 --> 00:52:40,120 Hivyo aidha ni kazi au haikuwa hivyo. 1059 00:52:40,120 --> 00:52:41,800 Uongo au kweli. 1060 00:52:41,800 --> 00:52:47,820 Na sasa kama mimi si kufanya makosa yoyote, napenda kuokoa hii na upya hii. 1061 00:52:47,820 --> 00:52:50,940 Na napenda tu kuangalia mara mbili kwamba Sikuwa, kwa kweli, kufanya typos yoyote, 1062 00:52:50,940 --> 00:52:52,690 hivyo mimi si embarrass mwenyewe. 1063 00:52:52,690 --> 00:52:54,240 Hebu angalia kama hii kazi. 1064 00:52:54,240 --> 00:52:56,930 >> Hivyo sasa mimi nina kwenda aina ya paka. 1065 00:52:56,930 --> 00:52:59,421 Bado kazi, au matendo nusu, angalau. 1066 00:52:59,421 --> 00:53:02,170 Sasa basi mimi upya yake, na sasa hebu mimi kujaribu kuwasilisha bila kuandika 1067 00:53:02,170 --> 00:53:05,860 kitu, damn it, ni kuvunja. 1068 00:53:05,860 --> 00:53:06,430 wakati mmoja. 1069 00:53:06,430 --> 00:53:09,380 1070 00:53:09,380 --> 00:53:12,660 Hebu kufungua console, [Inaudible] kuingia, upya ukurasa. 1071 00:53:12,660 --> 00:53:13,576 Hebu jaribu hii tena. 1072 00:53:13,576 --> 00:53:17,000 1073 00:53:17,000 --> 00:53:17,501 Oh, damn it. 1074 00:53:17,501 --> 00:53:18,000 Nilisahau. 1075 00:53:18,000 --> 00:53:18,630 Mimi alifanya typo. 1076 00:53:18,630 --> 00:53:20,760 Nakumbuka ni nini. 1077 00:53:20,760 --> 00:53:21,350 .value. 1078 00:53:21,350 --> 00:53:27,060 Mimi maana ya kusema kama thamani ya kipengele ambao ID ni q 1079 00:53:27,060 --> 00:53:29,800 sawa na kwamba, basi kelele katika user. 1080 00:53:29,800 --> 00:53:31,870 >> Hivyo sasa napenda kushikilia pumzi yangu tena. 1081 00:53:31,870 --> 00:53:33,480 Twende sasa. 1082 00:53:33,480 --> 00:53:34,130 Kuna sisi kwenda. 1083 00:53:34,130 --> 00:53:35,010 Tafadhali aina swala. 1084 00:53:35,010 --> 00:53:36,840 Hivyo si kuruhusu mimi kupitia. 1085 00:53:36,840 --> 00:53:40,210 Mimi inaweza kuwa aina ya playful na hii, na badala ya kuangalia kwa thamani hakuna, 1086 00:53:40,210 --> 00:53:46,720 Siwezi kusema kitu kama, tena kwa ajili ya kutafuta paka, 1087 00:53:46,720 --> 00:53:51,150 na sasa tunaweza tu playfully zaidi basi search user kwa ajili ya mbwa kama yeye au yeye 1088 00:53:51,150 --> 00:53:57,490 anataka, au kama mimi kwenda katika hapa na kutafuta paka, sasa siwezi. 1089 00:53:57,490 --> 00:53:58,690 >> Basi nini takeaway hapa? 1090 00:53:58,690 --> 00:54:03,010 Hivyo moja, tumekuwa kuletwa ndani dunia yetu ya HTML na CSS, 1091 00:54:03,010 --> 00:54:04,320 Programu utendaji. 1092 00:54:04,320 --> 00:54:06,300 Kwa kweli mimi sasa kufanya maamuzi katika kanuni. 1093 00:54:06,300 --> 00:54:10,570 Hapo awali, wote mimi naweza kufanya ni alama juu textual maudhui au maudhui graphical 1094 00:54:10,570 --> 00:54:13,080 na kuwaambia ni nini kwa kuangalia kama na wapi kuonyesha. 1095 00:54:13,080 --> 00:54:16,650 Sasa mimi kweli anaweza kuuliza maswali ya ukurasa wa mtandao 1096 00:54:16,650 --> 00:54:20,010 na kufanya maamuzi ya msingi juu yake, na kuchochea mtumiaji 1097 00:54:20,010 --> 00:54:22,780 kama mimi haja ya yell saa kwake. 1098 00:54:22,780 --> 00:54:28,740 >> Basi hebu jaribu kitu juu yetu wenyewe na hii. 1099 00:54:28,740 --> 00:54:33,350 Kwenda mbele, basi mimi kufungua slide ijayo hapa, na tu kumweka nje jambo moja. 1100 00:54:33,350 --> 00:54:37,250 Tu kama na CSS, tunaweza sababu nje JavaScript kanuni zetu ili faili tofauti, 1101 00:54:37,250 --> 00:54:40,660 unaweza kufanya kitu kimoja na JavaScript kama na CSS. 1102 00:54:40,660 --> 00:54:44,520 Na matumizi kwamba kwa kutumia chanzo wanampa ya tag script. 1103 00:54:44,520 --> 00:54:46,540 Lakini sisi si mambo magumu kwa sasa. 1104 00:54:46,540 --> 00:54:50,440 Badala yake, kama unaweza kwenda si ukurasa huu, 1105 00:54:50,440 --> 00:55:02,690 but-- napenda kuzunguka hili katika order-- kwenda, kama unaweza, ukurasa hii hapa. 1106 00:55:02,690 --> 00:55:03,592 URL hii hapa. 1107 00:55:03,592 --> 00:55:04,550 Ni katika slides leo. 1108 00:55:04,550 --> 00:55:07,133 Unaweza kuwa na upya kwa sababu Nimekuwa aliongeza michache ya jambo. 1109 00:55:07,133 --> 00:55:09,970 1110 00:55:09,970 --> 00:55:13,890 >> Lakini kwenda huko ambapo baadhi puzzles wakisubiri. 1111 00:55:13,890 --> 00:55:16,670 Na hii itatupa nafasi, katika mazingira kidogo zaidi ya kujifurahisha, 1112 00:55:16,670 --> 00:55:20,610 dabble na baadhi JavaScript. 1113 00:55:20,610 --> 00:55:25,505 Na wakati kupata huko, Mimi itabidi kueleza nini watapata. 1114 00:55:25,505 --> 00:55:47,350 1115 00:55:47,350 --> 00:55:47,850 Kupata kijani. 1116 00:55:47,850 --> 00:56:03,063 1117 00:56:03,063 --> 00:56:03,562 Kuweka rangi ya bluu. 1118 00:56:03,562 --> 00:56:11,030 1119 00:56:11,030 --> 00:56:13,930 Seti ya kijani, seti nyekundu. 1120 00:56:13,930 --> 00:56:19,220 1121 00:56:19,220 --> 00:56:20,220 Oops. 1122 00:56:20,220 --> 00:56:22,330 Sorry. 1123 00:56:22,330 --> 00:56:27,630 >> Hii ni kiasi cha wetu nyaraka kwa ajili ya changamoto hii. 1124 00:56:27,630 --> 00:56:29,920 Na hii ni kwenda kufanya kazi kama ifuatavyo. 1125 00:56:29,920 --> 00:56:33,340 Hivyo nini una juu ya hii ukurasa ni rundo zima 1126 00:56:33,340 --> 00:56:38,024 ya puzzles picha na buddy Chuo Kikuu cha Stanford. 1127 00:56:38,024 --> 00:56:41,190 Hivyo nini wewe ni kuona hapa ni karibu aina ya mmoja wa wale puzzles uchawi jicho, 1128 00:56:41,190 --> 00:56:43,815 lakini kama wewe tu staré saa hiyo, kitu kinaendelea pop nje saa wewe. 1129 00:56:43,815 --> 00:56:46,000 Badala yake, kuna kitu siri katika picha hii. 1130 00:56:46,000 --> 00:56:47,790 Na ni siri katika njia zifuatazo. 1131 00:56:47,790 --> 00:56:51,740 Picha, kama unaweza kujua, inaweza kuwa linajumuisha rangi tatu tu. 1132 00:56:51,740 --> 00:56:53,346 Baadhi nyekundu, baadhi ya bluu, na baadhi ya kijani. 1133 00:56:53,346 --> 00:56:55,220 Na tunaweza kufanya kila rangi katika upinde wa mvua 1134 00:56:55,220 --> 00:56:57,570 kwa kuchanganya rangi hizo tatu kwa namna fulani. 1135 00:56:57,570 --> 00:57:01,940 >> Hivyo hii inaonekana zaidi ya kijani na bluu, lakini kama Nick anasema hapa, 1136 00:57:01,940 --> 00:57:04,060 hii picha chuma puzzle ni puzzle. 1137 00:57:04,060 --> 00:57:06,780 Ina sura ya kitu maarufu, hata hivyo, 1138 00:57:06,780 --> 00:57:08,310 picha imekuwa potofu. 1139 00:57:08,310 --> 00:57:11,500 kitu maarufu ni katika maadili nyekundu. 1140 00:57:11,500 --> 00:57:13,810 maadili Hata hivyo, nyekundu na wote wamekuwa kugawanywa na 10. 1141 00:57:13,810 --> 00:57:16,230 Hivyo wao ni ndogo mno kwa sababu ya 10. 1142 00:57:16,230 --> 00:57:18,280 Hivyo kwa maneno mengine, Nick alichukua picha ya awali, 1143 00:57:18,280 --> 00:57:21,500 na yeye desaturated zote nyekundu kutoka hayo, 1144 00:57:21,500 --> 00:57:23,850 kupunguza kiasi cha nyekundu wino, kama wewe, katika hilo. 1145 00:57:23,850 --> 00:57:26,060 >> maadili ya bluu na kijani wote ni tu maana, 1146 00:57:26,060 --> 00:57:30,000 maadili random, aka kelele iliyoundwa Obscure picha halisi. 1147 00:57:30,000 --> 00:57:32,250 Kwa hiyo kile Nick alifanya alikuwa yeye toned chini nyekundu na kisha 1148 00:57:32,250 --> 00:57:34,380 yeye tu kurusha random kiasi cha bluu na kijani 1149 00:57:34,380 --> 00:57:37,590 katika picha ya aina ya wasio na cheo nini ni kweli bado yapo. 1150 00:57:37,590 --> 00:57:41,089 Lazima tengua uharibifu hizi yatangaza picha. 1151 00:57:41,089 --> 00:57:44,255 Kwanza, kuweka maadili yote ya bluu na kijani na sifuri ili kupata yao nje ya njia, 1152 00:57:44,255 --> 00:57:48,700 na kuangalia matokeo. kisha kuzidisha kila thamani nyekundu na 10, 1153 00:57:48,700 --> 00:57:51,720 kuongeza nyuma hadi takriban thamani yake ya mwisho. 1154 00:57:51,720 --> 00:57:53,035 Nini ni kitu maarufu? 1155 00:57:53,035 --> 00:57:57,920 >> Basi wote wa una Mstatili hii katika browser yako hivi sasa. 1156 00:57:57,920 --> 00:58:00,830 Na taarifa kuwa kuna baadhi ya starter kificho, hivyo kusema. 1157 00:58:00,830 --> 00:58:04,370 Hii ni JavaScript kificho kwamba Nick ameandika kwa ajili yenu. 1158 00:58:04,370 --> 00:58:07,250 Na taarifa kwamba kuna line katikati kwamba 1159 00:58:07,250 --> 00:58:10,380 huanza na kufyeka kufyeka, hiyo ni nini ujumla aitwaye maoni. 1160 00:58:10,380 --> 00:58:14,660 Ina maana ni maneno ya programu kwamba haina maana kazi. 1161 00:58:14,660 --> 00:58:16,520 Ni tu cue Visual binadamu. 1162 00:58:16,520 --> 00:58:18,670 >> Hivyo unaweza kwenda mbele na kufuta tu kwamba line, 1163 00:58:18,670 --> 00:58:22,214 na kuwa super makini kwa kufuta au kubadilisha kitu kingine chochote. 1164 00:58:22,214 --> 00:58:25,130 Na napenda tu kutembea wewe kupitia nini kanuni hii anafanya na mimi itabidi kuondoka ni 1165 00:58:25,130 --> 00:58:28,580 na wewe na takwimu nje picha ya siri. 1166 00:58:28,580 --> 00:58:32,226 Hii mstari wa kwanza hapa kwamba mimi wameweza tu yalionyesha anatoa zifuatazo. 1167 00:58:32,226 --> 00:58:34,100 Upande wa kushoto, una kile kinachoitwa 1168 00:58:34,100 --> 00:58:39,140 kutofautiana kwamba Nick ina kiholela, lakini sababu aitwaye im kwa picha. 1169 00:58:39,140 --> 00:58:41,660 Upande wa kulia ya ishara kwamba sawa, 1170 00:58:41,660 --> 00:58:45,240 yeye kusema nipe mpya quote, unquote "rahisi picha". 1171 00:58:45,240 --> 00:58:49,680 >> Rahisi picha, katika hali hii ni kile kinachoitwa darasani, vizuri, 1172 00:58:49,680 --> 00:58:53,910 ni aina ya kama class-- kitaalam prototype-- lakini kwa kweli, 1173 00:58:53,910 --> 00:58:58,000 hii ni kunipa kitu mpya, yaliyomo ambayo ni file, 1174 00:58:58,000 --> 00:58:59,610 chuma-puzzle.png. 1175 00:58:59,610 --> 00:59:03,190 Kwa maneno mengine, Nick imeunda wazo hili la mfano rahisi 1176 00:59:03,190 --> 00:59:05,920 hivyo kwamba tunaweza, kwa ufundishaji madhumuni, kucheza na picha 1177 00:59:05,920 --> 00:59:09,790 na mabadiliko ya nyekundu wake, kijani, na bluu maadili. 1178 00:59:09,790 --> 00:59:11,750 >> Na jinsi sisi kufanya hivyo? 1179 00:59:11,750 --> 00:59:15,360 Hii syntax kwa kiasi fulani cryptic hapa ni aina ya kama kuzuia kurudia 1180 00:59:15,360 --> 00:59:19,140 kwamba baadhi ya wewe aliona katika Scratch mapema leo, ambapo unaweza kurudia mara 10. 1181 00:59:19,140 --> 00:59:22,220 Katika kesi hiyo, Nick ina si hardcoded idadi kama 10. 1182 00:59:22,220 --> 00:59:28,020 Badala yeye ni kusema, initialize x variable kuitwa kwa 0, 1183 00:59:28,020 --> 00:59:33,180 kuangalia kama x ni chini ya upana wa picha. 1184 00:59:33,180 --> 00:59:38,160 >> Na hivyo kuwa zaidi sahihi, picha ni kutofautiana, dot ina maana kwenda ndani yake 1185 00:59:38,160 --> 00:59:40,900 na kupata upana wake, na kisha paren wazi, imefungwa 1186 00:59:40,900 --> 00:59:43,687 paren ni njia tu programu ya ya kusema hii ni kazi. 1187 00:59:43,687 --> 00:59:44,520 Hii ni utaratibu. 1188 00:59:44,520 --> 00:59:46,430 Hii ni utendaji mtu mwingine aliandika. 1189 00:59:46,430 --> 00:59:48,570 Matumizi yake na nipe nyuma jibu. 1190 00:59:48,570 --> 00:59:53,610 Na kisha x ++ ni njia dhana ya akisema, baada ya umefanya kosa hili mara moja, 1191 00:59:53,610 --> 00:59:55,850 increment x na 1. 1192 00:59:55,850 --> 00:59:58,760 Kwa maneno mengine, hii ni njia programu ya 1193 00:59:58,760 --> 01:00:05,760 ya inducing kitanzi hiyo ni kwenda iterate juu ya 1194 01:00:05,760 --> 01:00:10,410 wote wa nguzo katika picha. 1195 01:00:10,410 --> 01:00:14,790 >> picha ni tu gridi ya dots, safu na nguzo ya dots. 1196 01:00:14,790 --> 01:00:18,270 Hii ni njia ya iterating juu ya yote ya nguzo hizo. 1197 01:00:18,270 --> 01:00:20,770 Na juu ya ndani, wakati huo huo, sisi ni iterating 1198 01:00:20,770 --> 01:00:24,030 zaidi ya urefu, hapa na hapa na hapa. 1199 01:00:24,030 --> 01:00:29,442 Hivyo hii ni njia tu ya traipsing, karibu kama typewriter shule ya zamani, 1200 01:00:29,442 --> 01:00:32,230 kwenda zaidi ya picha nzima iteratively. 1201 01:00:32,230 --> 01:00:36,370 Hata si kwamba kabisa kabisa wazi, tu kuchukua juu ya imani kwa sasa, 1202 01:00:36,370 --> 01:00:38,880 kwamba wale mistari mitatu wa kanuni pamoja ni 1203 01:00:38,880 --> 01:00:43,090 kwenda kuruhusu iteratively kuangalia katika kila pixel, kila dot katika picha. 1204 01:00:43,090 --> 01:00:43,790 >> Nini pixel? 1205 01:00:43,790 --> 01:00:46,250 Naam, kuwa wazi, kama sisi kuangalia katika awali na kuvuta, 1206 01:00:46,250 --> 01:00:49,060 kama kweli kuweka macho yako kwa screen kompyuta, hiyo ni 1207 01:00:49,060 --> 01:00:53,510 tu rundo zima la dots, kadhaa dots elfu packed pamoja huko. 1208 01:00:53,510 --> 01:00:56,180 Na hivyo ni nini kuhusu kufanya nini? 1209 01:00:56,180 --> 01:00:59,240 Kila mmoja dots hizo, ufafanuzi wa mwisho, 1210 01:00:59,240 --> 01:01:06,350 ni matokeo ya kile kwa ujumla aitwaye RGB, nyekundu, kijani, bluu, ambayo 1211 01:01:06,350 --> 01:01:09,940 tena, inaweza kuwa pamoja na kukupa idadi yoyote ya rangi. 1212 01:01:09,940 --> 01:01:13,200 >> Kwa kweli, kama unakumbuka kutoka kwa watu wengi, miaka mingi iliyopita, 1213 01:01:13,200 --> 01:01:17,320 skrini projector kama hayo kutumika kwa kuwa si Lens moja lakini tatu. 1214 01:01:17,320 --> 01:01:20,700 Mmoja wao mate nje taa nyekundu, moja ya yao mate nje mwanga kijani, mmoja wao 1215 01:01:20,700 --> 01:01:21,600 mate nje mwanga wa bluu. 1216 01:01:21,600 --> 01:01:24,391 Na kama ungekuwa katika shule ya kati kama nilikuwa ambapo walikuwa kamwe 1217 01:01:24,391 --> 01:01:27,000 vizuri na kompyuta, ungekuwa daima kuangalia sinema historia 1218 01:01:27,000 --> 01:01:29,770 waliokuwa kidogo potofu, kwa sababu rangi tatu hawakuwa 1219 01:01:29,770 --> 01:01:30,970 kuchanganya vizuri. 1220 01:01:30,970 --> 01:01:36,330 >> Lakini zinageuka kwamba kila mmoja maadili haya nyekundu, kijani, na bluu, 1221 01:01:36,330 --> 01:01:37,980 unaweza kuwa na idadi kuhusishwa na wao. 1222 01:01:37,980 --> 01:01:42,500 Kwa mfano, 0 kwa ajili ya nyekundu ina maana hakuna nyekundu, 0 kwa ajili ya kijani ina maana hakuna kijani, 1223 01:01:42,500 --> 01:01:45,120 na 0 kwa bluu ina maana hakuna bluu. 1224 01:01:45,120 --> 01:01:49,403 Hivyo kama wewe huna nyekundu, hakuna kijani, na hakuna bluu, nini rangi gani? 1225 01:01:49,403 --> 01:01:51,009 >> Watazamaji: [inaudible] 1226 01:01:51,009 --> 01:01:52,800 DAVID Malan: ingekuwa matumaini hivyo, ni nyeupe. 1227 01:01:52,800 --> 01:01:55,333 Kwa bahati mbaya, hii operates-- pole? 1228 01:01:55,333 --> 01:01:56,380 >> Watazamaji: [inaudible] 1229 01:01:56,380 --> 01:01:58,630 DAVID Malan: Hivyo wewe kweli na nyeusi, katika kesi hii. 1230 01:01:58,630 --> 01:02:01,530 Hivyo kama una hakuna haya rangi akageuka juu, una nyeusi. 1231 01:02:01,530 --> 01:02:06,510 Hata hivyo, kama una, hebu sema mengi wao, kama mengi ya nyekundu, 255 ya hayo, 1232 01:02:06,510 --> 01:02:10,340 mengi ya kijani, na mengi ya bluu, kwamba ni nyeupe. 1233 01:02:10,340 --> 01:02:12,230 Basi hizi ni extremes mbili. 1234 01:02:12,230 --> 01:02:17,460 Hivyo kwa mantiki hii, kama nina mengi ya nyekundu na hakuna kijani na hakuna bluu, 1235 01:02:17,460 --> 01:02:18,485 nini rangi ni kwamba? 1236 01:02:18,485 --> 01:02:19,360 Watazamaji: [inaudible] 1237 01:02:19,360 --> 01:02:20,610 DAVID Malan: Right, ni wazi. 1238 01:02:20,610 --> 01:02:25,940 Na kisha hakuna nyekundu, mengi ya kijani, hakuna bluu, na kisha 1239 01:02:25,940 --> 01:02:29,590 kama wewe have-- vizuri, tutaweza tu kumaliza hivyo, kwa sababu tu, lakini hii, bila shaka, 1240 01:02:29,590 --> 01:02:31,350 sasa, ni rangi ya bluu. 1241 01:02:31,350 --> 01:02:33,030 Na sasa unaweza kuchanganya rangi hizi. 1242 01:02:33,030 --> 01:02:36,430 Sasa kama kando, kama mmoja wenu na milele kufanyika baadhi halisi tovuti ya kubuni, 1243 01:02:36,430 --> 01:02:38,360 wewe ni wazi kunaweza angalia alama kama hii. 1244 01:02:38,360 --> 01:02:42,030 FFF-- na kwa kweli, ni pengine hata hiyo. 1245 01:02:42,030 --> 01:02:44,380 Ni FFFFFF. 1246 01:02:44,380 --> 01:02:48,970 >> Mtu yeyote milele kuonekana F na E ya na through-- hivyo ni zamu nje, 1247 01:02:48,970 --> 01:02:52,970 sisi aliyesema jana kuhusu decimal, na leo, aina ya juu decimal. 1248 01:02:52,970 --> 01:02:54,570 Leo kuongelea mapacha. 1249 01:02:54,570 --> 01:02:59,010 Zamu nje, hexadecimal ni sana mfumo wa kawaida msingi kwa kutumia katika kompyuta. 1250 01:02:59,010 --> 01:03:04,960 Binary ni mbili, decimal ni 10, hex ni 16. 1251 01:03:04,960 --> 01:03:08,640 Na zinageuka, ni jinsi gani kuhesabu katika hexadecimal? 1252 01:03:08,640 --> 01:03:11,620 Sifuri, moja, mbili, tatu, nne, tano, sita, saba, nane, 1253 01:03:11,620 --> 01:03:14,730 tisa, gani unatumia baada ya tisa? 1254 01:03:14,730 --> 01:03:16,600 Nini idadi ya hapo? 1255 01:03:16,600 --> 01:03:19,180 Sisi tayari kutumika sifuri. 1256 01:03:19,180 --> 01:03:20,570 Nahitaji 16 ya hizi. 1257 01:03:20,570 --> 01:03:25,770 Sifuri, moja, mbili, tatu, nne, tano, sita, saba, nane, tisa, 1258 01:03:25,770 --> 01:03:27,520 unahitaji baadhi ya mkataba kiholela. 1259 01:03:27,520 --> 01:03:30,810 >> Na nini mwanadamu aliamua baadhi ya wakati iliyopita kwamba baada ya tisa huja barua 1260 01:03:30,810 --> 01:03:34,450 A na kisha B na kisha C. Hivyo njia wewe kuhesabu katika hexadecimal 1261 01:03:34,450 --> 01:03:37,040 ni sifuri, moja, mbili, tatu, nne, tano, sita, saba, nane, tisa, 1262 01:03:37,040 --> 01:03:42,880 , B, C, D, E, F, na kwamba itakuwa kuhesabu wewe njia yote, ni zamu nje, na 15. 1263 01:03:42,880 --> 01:03:47,850 Hivyo zero 15 ni sifuri kupitia F. Sasa kwa nini hilo ni jambo muhimu? 1264 01:03:47,850 --> 01:03:51,570 Naam, wakati una mbili F ya, kwamba ni jinsi gani kueleza 255. 1265 01:03:51,570 --> 01:03:54,350 >> Hivyo muda mrefu hadithi fupi, katika ulimwengu wa Photoshop, 1266 01:03:54,350 --> 01:03:57,299 kwamba graphic kubuni programu, katika ulimwengu wa maendeleo ya mtandao, 1267 01:03:57,299 --> 01:03:59,590 ambapo una kura ya rangi, bila shaka, kwa kucheza na, 1268 01:03:59,590 --> 01:04:02,350 mara nyingi programmers mapenzi kueleza hayo katika hexadecimal, 1269 01:04:02,350 --> 01:04:05,260 kwa sababu tu inaelekea kuwa kidogo rahisi. 1270 01:04:05,260 --> 01:04:07,850 Japokuwa katika mtazamo wa kwanza ni ngumu zaidi. 1271 01:04:07,850 --> 01:04:11,590 >> Hivyo katika kesi yoyote, hii ni muhimu kwa sababu Nick katika Stanford 1272 01:04:11,590 --> 01:04:15,100 ametupa vipande sita ya utendaji kwamba, programmers budding, 1273 01:04:15,100 --> 01:04:17,060 sasa wana uwezo wa kutumia. 1274 01:04:17,060 --> 01:04:19,960 Kujengwa katika mtandao huu ukurasa ni kazi sita, 1275 01:04:19,960 --> 01:04:21,820 taratibu sita ambayo Nick aliandika. 1276 01:04:21,820 --> 01:04:26,800 Watatu kati yao kupata wewe posta, nyekundu, kijani, au thamani ya bluu. 1277 01:04:26,800 --> 01:04:28,787 Watatu kati yao itaweka thamani hiyo. 1278 01:04:28,787 --> 01:04:30,620 Na inasisitiza hizi ni placeholders tu, 1279 01:04:30,620 --> 01:04:32,600 hivyo unahitaji kujua nini wale ni. 1280 01:04:32,600 --> 01:04:36,240 >> Hivyo, pamoja na kazi hizi tatu, kwanza ya mambo haya 1281 01:04:36,240 --> 01:04:39,190 ni kwenda kuwa x-kuratibu, na ya pili ya mambo haya 1282 01:04:39,190 --> 01:04:40,700 ni kwenda kuwa y-kuratibu. 1283 01:04:40,700 --> 01:04:44,650 Kwa maneno mengine, ambayo dot, ambayo pixel hawana unataka kupata kijani ya, 1284 01:04:44,650 --> 01:04:46,480 kupata rangi ya bluu ya, kupata nyekundu ya. 1285 01:04:46,480 --> 01:04:51,440 Na kisha hapa, hii ni kwenda kuwa x, hii ni kwenda kuwa y thamani, 1286 01:04:51,440 --> 01:04:55,379 na hii ni kwenda kuwa idadi. 1287 01:04:55,379 --> 01:04:57,170 Basi hebu kufanya kwanza mstari wa hii pamoja 1288 01:04:57,170 --> 01:05:00,220 na kisha mimi itabidi kuondoka na wewe kujaribu kuthibitisha mapumziko. 1289 01:05:00,220 --> 01:05:03,100 Hivyo kwa mujibu wa maelekezo kwenye ukurasa huu, tunahitaji 1290 01:05:03,100 --> 01:05:08,960 kuongeza nyekundu kwa sababu ya 10, na tunahitaji kuondoa kijani 1291 01:05:08,960 --> 01:05:09,930 na kuondoa bluu. 1292 01:05:09,930 --> 01:05:12,410 Hebu kuanza na matukio ya mwisho. 1293 01:05:12,410 --> 01:05:17,760 Hivyo kama nataka, na mimi nina kwenda Indent kwa kutumia baadhi ya maeneo, 1294 01:05:17,760 --> 01:05:22,291 kama nataka kuweka nyekundu, kijani, au thamani ya bluu, 1295 01:05:22,291 --> 01:05:23,540 Mimi nina kwenda kufanya yafuatayo. 1296 01:05:23,540 --> 01:05:31,280 >> Image, im.setBlue, na kisha kuzingatia maelekezo yangu hapa, 1297 01:05:31,280 --> 01:05:36,700 nini mambo matatu lazima mimi aina ndani ya mabano sasa? 1298 01:05:36,700 --> 01:05:41,960 Nahitaji thamani x, y thamani, na nini idadi 1299 01:05:41,960 --> 01:05:48,770 lazima mimi kuweka hapa kama nataka kujikwamua ya bluu, msingi hadithi hii hapa? 1300 01:05:48,770 --> 01:05:49,630 Tu sifuri. 1301 01:05:49,630 --> 01:05:52,420 Kama mimi nataka hakuna bluu, mimi nina tu kwenda na mabadiliko hayo na sifuri. 1302 01:05:52,420 --> 01:05:54,465 >> Sasa hebu tu kurejea nini hii ni kufanya. 1303 01:05:54,465 --> 01:05:56,970 1304 01:05:56,970 --> 01:06:01,170 Nina hapa juu ya haya juu pili na ya tatu mistari, 1305 01:06:01,170 --> 01:06:04,080 Mimi alidai loops mbili, nested loops, kama wewe 1306 01:06:04,080 --> 01:06:08,360 itakuwa, kwamba ni kwenda kuwa na athari ya inaendelea kutoka kushoto kwenda kulia, 1307 01:06:08,360 --> 01:06:11,590 juu hadi chini juu ya yote ya x maadili na wote wa y maadili. 1308 01:06:11,590 --> 01:06:15,167 Kwa sababu tena, picha ni tu gridi ya safu na nguzo. 1309 01:06:15,167 --> 01:06:17,000 Hivyo hii ni kwenda kupata kuondoa yote ya bluu. 1310 01:06:17,000 --> 01:06:18,627 Basi mimi kuondoka katika mstari karibu na wewe. 1311 01:06:18,627 --> 01:06:20,043 Je, mimi kujikwamua kijani wote? 1312 01:06:20,043 --> 01:06:23,747 1313 01:06:23,747 --> 01:06:25,140 >> Watazamaji: [inaudible] 1314 01:06:25,140 --> 01:06:26,151 >> DAVID Malan: Nice. 1315 01:06:26,151 --> 01:06:28,260 >> Watazamaji: [inaudible] 1316 01:06:28,260 --> 01:06:30,850 >> DAVID Malan: Nice. 1317 01:06:30,850 --> 01:06:36,120 Na mimi nina kwenda kuvuta nje, na tu kuchukua huduma ya kwamba umefanya haijafanya typos yoyote. 1318 01:06:36,120 --> 01:06:39,390 Na kama wewe ni starehe na nini umefanya kosa, 1319 01:06:39,390 --> 01:06:42,936 kwenda mbele na bonyeza kifungo Kukimbia / Ila na kuona nini kupata. 1320 01:06:42,936 --> 01:06:46,982 1321 01:06:46,982 --> 01:06:48,690 Na tena, tumekuwa alifanya tatu tu mabadiliko. 1322 01:06:48,690 --> 01:06:52,130 Sisi ilifutwa kwamba kwanza kutoa maoni na nafasi yake kuchukuliwa 1323 01:06:52,130 --> 01:06:53,575 na mistari hizi mbili za kanuni. 1324 01:06:53,575 --> 01:06:55,742 1325 01:06:55,742 --> 01:06:58,450 Na ni sawa kama wewe haja ya kugonga Run / Save kifungo mara kadhaa 1326 01:06:58,450 --> 01:07:01,190 kurekebisha kitu. 1327 01:07:01,190 --> 01:07:03,610 >> Na napenda pia kuvuta yangu kanuni hivyo unaweza nukulu. 1328 01:07:03,610 --> 01:07:04,110 Nzuri. 1329 01:07:04,110 --> 01:07:08,720 Kwa hiyo naona Andrew ana nini inaonekana kuwa ni makosa. 1330 01:07:08,720 --> 01:07:11,110 Yeye tu got nyeusi kubwa mstatili juu ya screen yake. 1331 01:07:11,110 --> 01:07:13,120 Je, mtu mwingine na kubwa nyeusi Mstatili? 1332 01:07:13,120 --> 01:07:13,390 >> Watazamaji: Ndiyo. 1333 01:07:13,390 --> 01:07:14,360 >> DAVID Malan: Big nyeusi Mstatili? 1334 01:07:14,360 --> 01:07:16,068 OK, hivyo hebu fikiria kuhusu nini maana ya hii. 1335 01:07:16,068 --> 01:07:20,560 Sisi alisema kuwa sifuri, sifuri, sifuri, hivyo hakuna kijani, hakuna nyekundu, hakuna bluu, 1336 01:07:20,560 --> 01:07:21,980 ni kwenda kukupa nyeusi. 1337 01:07:21,980 --> 01:07:24,467 Na zinageuka kuwa zaidi ya Laptops wetu 1338 01:07:24,467 --> 01:07:25,800 tu hawana uaminifu wa kutosha. 1339 01:07:25,800 --> 01:07:27,750 Huwezi kabisa kuwaambia kuna ni kweli kitu huko. 1340 01:07:27,750 --> 01:07:30,340 Na kama wewe aina ya labda konda screen yako mbele na nyuma, 1341 01:07:30,340 --> 01:07:32,850 labda unaona kitu kidogo huko? 1342 01:07:32,850 --> 01:07:34,820 Labda, aina ya, aina ya? 1343 01:07:34,820 --> 01:07:36,640 Siyo kikamilifu nyeusi. 1344 01:07:36,640 --> 01:07:38,050 >> Watazamaji: [inaudible] 1345 01:07:38,050 --> 01:07:39,510 >> DAVID Malan: Spoiler! 1346 01:07:39,510 --> 01:07:42,610 Kuna baadhi ya nyekundu pale, lakini kukumbuka kutoka specifikationer 1347 01:07:42,610 --> 01:07:44,940 cha tatizo, Nick toned chini. 1348 01:07:44,940 --> 01:07:47,860 Yeye desaturated kiasi fulani, lakini si njia yote ya sifuri. 1349 01:07:47,860 --> 01:07:51,670 Hivyo kama tunataka ukuu wa kiasi ya nyekundu, napenda kupendekeza mbinu hii. 1350 01:07:51,670 --> 01:07:53,750 Hebu kuvuta juu ya screen yangu. 1351 01:07:53,750 --> 01:07:58,678 Na napenda kwenda mbele na kusema Kiasi hicho ni sawa im.getRed (x, y). 1352 01:07:58,678 --> 01:08:02,440 1353 01:08:02,440 --> 01:08:05,790 >> mstari wa kanuni ni kunipa kitu kinachoitwa kutofautiana. 1354 01:08:05,790 --> 01:08:09,643 Nina kiholela, lakini, arguably, sababu inaitwa kutofautiana yangu ni nini, 1355 01:08:09,643 --> 01:08:10,143 inaonekana? 1356 01:08:10,143 --> 01:08:13,530 1357 01:08:13,530 --> 01:08:14,340 Kiasi. 1358 01:08:14,340 --> 01:08:14,980 Tu kiasi. 1359 01:08:14,980 --> 01:08:16,960 Mimi nilikuwa ve kuitwa ni kitu chochote nataka, lakini mimi nina 1360 01:08:16,960 --> 01:08:19,490 kutumia kazi hii nyingine kwamba mimi ilivyoelezwa mapema 1361 01:08:19,490 --> 01:08:25,359 kupata kiasi cha nyekundu katika x comma y. 1362 01:08:25,359 --> 01:08:27,520 Kwa nini mimi kufanya hivyo? 1363 01:08:27,520 --> 01:08:30,004 Unataka nini cha kufanya hapa? 1364 01:08:30,004 --> 01:08:32,910 1365 01:08:32,910 --> 01:08:33,619 Unahitaji add-- 1366 01:08:33,619 --> 01:08:34,493 Watazamaji: [inaudible] 1367 01:08:34,493 --> 01:08:36,279 DAVID Malan: Ndiyo, labda kuzidisha ni kwa 10. 1368 01:08:36,279 --> 01:08:38,862 Na kama huna kujua hii, mimi nina kwenda mbele na kufanya hili. 1369 01:08:38,862 --> 01:08:42,060 Mimi nina kwenda mbele na kusema, nataka kiasi cha nyekundu 1370 01:08:42,060 --> 01:08:46,550 Nataka kuwa chochote ni katika nyekundu, mara 10, 1371 01:08:46,550 --> 01:08:50,330 na nyota, asterisk juu yako keyboard ni the-- hawatumii x. 1372 01:08:50,330 --> 01:08:51,569 Matumizi nyota. 1373 01:08:51,569 --> 01:08:55,350 Hiyo ni jinsi gani kuzidisha mambo katika lugha zaidi ya programu. 1374 01:08:55,350 --> 01:08:59,790 >> Hivyo kulingana na Intuition Kareem ya, kuhifadhiwa katika hii variable kuitwa kiasi, 1375 01:08:59,790 --> 01:09:03,649 ni kiasi gani nyekundu nataka katika eneo xy. 1376 01:09:03,649 --> 01:09:11,500 Jinsi gani, sasa, je, mimi kufanya kwamba Pixel kuwa idadi hiyo? 1377 01:09:11,500 --> 01:09:12,859 Umefanya tayari amefanya hili kabla. 1378 01:09:12,859 --> 01:09:17,666 Wewe kuweka kijani na bluu na hakuna thamani, na sifuri. 1379 01:09:17,666 --> 01:09:18,540 Watazamaji: [inaudible] 1380 01:09:18,540 --> 01:09:20,040 DAVID Malan: Ndiyo, vizuri huna unataka kwa 10. 1381 01:09:20,040 --> 01:09:21,460 Tayari alifanya math hapa. 1382 01:09:21,460 --> 01:09:24,779 Hivyo sisi ni kupata thamani ya nyekundu, ambayo ni idadi ndogo, labda. 1383 01:09:24,779 --> 01:09:26,180 Sisi ni kuzidisha up na 10. 1384 01:09:26,180 --> 01:09:29,139 Nini unataka kufanya na kiasi kutofautiana sasa? 1385 01:09:29,139 --> 01:09:30,130 >> Watazamaji: [inaudible] 1386 01:09:30,130 --> 01:09:30,880 >> DAVID Malan: Nice. 1387 01:09:30,880 --> 01:09:34,616 Hivyo im.set-- nini? 1388 01:09:34,616 --> 01:09:35,640 >> Watazamaji: setRed. 1389 01:09:35,640 --> 01:09:39,760 >> DAVID Malan: setRed, katika eneo xy. 1390 01:09:39,760 --> 01:09:40,260 Yeah. 1391 01:09:40,260 --> 01:09:41,200 Na tu kiasi. 1392 01:09:41,200 --> 01:09:44,257 Kwa maneno mengine, kutofautiana ni placeholder muda 1393 01:09:44,257 --> 01:09:45,840 kuwa unaweza kuweka kitu chochote unataka katika. 1394 01:09:45,840 --> 01:09:48,680 Sisi kutokea kwa kuwa na kuweka idadi katika hilo, kwa sasa. 1395 01:09:48,680 --> 01:09:51,569 Tumekuwa kuyagawa hiyo kwa 10 kwa kufanya hivyo kubwa. 1396 01:09:51,569 --> 01:09:56,480 Na sasa mimi nina kugeuza kwamba kutofautiana kama hoja kwamba tatu, au pembejeo 1397 01:09:56,480 --> 01:09:57,810 kuweka nyekundu. 1398 01:09:57,810 --> 01:10:00,440 Na hivyo kwamba mara moja kumaliza kwamba, na kuchukua kumbuka 1399 01:10:00,440 --> 01:10:02,330 ya nusu colons na mabano. 1400 01:10:02,330 --> 01:10:06,290 >> Kwenda mbele na bonyeza kukimbia / kuokoa tena, na wewe 1401 01:10:06,290 --> 01:10:10,690 unapaswa kuona, magically, nini ilikuwa kweli huko. [? Arwa,?] Nini huko? 1402 01:10:10,690 --> 01:10:16,412 Mnara wa Eiffel katika full-fledged nyekundu, si kabisa giza. 1403 01:10:16,412 --> 01:10:17,870 ni lazima kuwa wazi zaidi sasa, ndiyo? 1404 01:10:17,870 --> 01:10:18,840 SAWA. 1405 01:10:18,840 --> 01:10:20,215 Na Andrew, hakuna zaidi nyeusi sanduku? 1406 01:10:20,215 --> 01:10:21,090 Watazamaji: [inaudible] 1407 01:10:21,090 --> 01:10:22,180 DAVID Malan: zote haki. 1408 01:10:22,180 --> 01:10:23,610 Hivyo mimi itabidi kuweka hii juu ya screen. 1409 01:10:23,610 --> 01:10:27,010 Kama unataka kucheza na hii baadaye, mimi itabidi recreate hii kwa ajili yenu. 1410 01:10:27,010 --> 01:10:29,140 Lakini kanuni hii hapa alifanya hasa kwamba. 1411 01:10:29,140 --> 01:10:31,460 Mbona sisi kufanya kila mmoja wetu. 1412 01:10:31,460 --> 01:10:33,880 Hebu kitabu chini kidogo. 1413 01:10:33,880 --> 01:10:36,760 >> Hivyo katika kesi hii, projector kweli haina kufanya hivyo haki. 1414 01:10:36,760 --> 01:10:40,486 Lakini kwenye skrini yako, pengine kuwa na sanduku nyekundu sana na nyeusi sana. 1415 01:10:40,486 --> 01:10:42,610 Hii pia, ni puzzle kwamba inaonyesha kitu maarufu. 1416 01:10:42,610 --> 01:10:44,193 Hata hivyo, picha imekuwa potofu. 1417 01:10:44,193 --> 01:10:47,740 mfano wa kweli, wakati huu, ni katika maadili bluu na kijani. 1418 01:10:47,740 --> 01:10:51,820 Hata hivyo, wameweza wote wamekuwa kugawanywa kwa asilimia 20 hivyo maadili ni ndogo sana. 1419 01:10:51,820 --> 01:10:54,660 maadili nyekundu ni tu idadi random, kelele. 1420 01:10:54,660 --> 01:10:57,190 Tendua kupotosha hizi yatangaza mfano wa kweli. 1421 01:10:57,190 --> 01:10:59,200 >> Hivyo Nick kisha atakwambia nini cha kufanya. 1422 01:10:59,200 --> 01:11:04,290 Kuweka maadili nyekundu na sifuri, na basi si nyara ni nini. 1423 01:11:04,290 --> 01:11:07,110 Kisha kuzidisha bluu na maadili ya kijani kwa asilimia 20. 1424 01:11:07,110 --> 01:11:09,820 Hivyo ni karibu mpango sawa mbele, 1425 01:11:09,820 --> 01:11:11,380 lakini wewe ni kupunguza mchakato. 1426 01:11:11,380 --> 01:11:13,780 Nami nitatia kanuni yangu kutoka kabla kwenye screen katika kesi 1427 01:11:13,780 --> 01:11:16,650 unataka rejea nyuma yake au kucheza zaidi na kuwa moja. 1428 01:11:16,650 --> 01:11:18,100 Hebu kuvuta juu ya hilo. 1429 01:11:18,100 --> 01:11:21,450 Lakini kutatua shaba sanamu puzzle, namba mbili. 1430 01:11:21,450 --> 01:11:37,623 1431 01:11:37,623 --> 01:11:40,580 >> Watazamaji: [inaudible] 1432 01:11:40,580 --> 01:11:44,010 >> DAVID Malan: OK, hivyo hii moja mimi nina si kwenda kutoa mwanga kama wengi. 1433 01:11:44,010 --> 01:11:47,220 Hivyo mimi would-- loo, hebu kuona, una typo hapa. 1434 01:11:47,220 --> 01:11:49,621 Basi kumbuka, hii hapa kweli mahitaji ya kwenda huko. 1435 01:11:49,621 --> 01:11:52,870 Hivyo nini napenda kupendekeza, kama unataka kuzingatia hili, kuna jibu. 1436 01:11:52,870 --> 01:11:57,060 Kama unataka nukulu hiyo, lazima kupata kwanza moja ya kazi. 1437 01:11:57,060 --> 01:11:59,910 Na kisha unaweza kutumia kama msukumo kwa ajili ya moja ya pili. 1438 01:11:59,910 --> 01:12:02,230 Nice. 1439 01:12:02,230 --> 01:12:02,730 Nzuri. 1440 01:12:02,730 --> 01:12:05,430 1441 01:12:05,430 --> 01:12:08,180 >> Na kwa curious, hii ni mfano rahisi 1442 01:12:08,180 --> 01:12:11,080 ya sayansi au sanaa aitwaye steganography, 1443 01:12:11,080 --> 01:12:14,100 sanaa ya kuficha habari katika picha. 1444 01:12:14,100 --> 01:12:16,890 Kwa kawaida, picha inaweza kuwa watermarked blatantly sana 1445 01:12:16,890 --> 01:12:19,500 na alama katika chini kona, lakini ni wazi, wewe 1446 01:12:19,500 --> 01:12:22,070 inaweza kuwa kiasi kisasa zaidi kuhusu hilo na kwa kweli 1447 01:12:22,070 --> 01:12:25,050 kuficha picha nyingine katika Picha namna fulani na mbinu hii. 1448 01:12:25,050 --> 01:12:59,890 1449 01:12:59,890 --> 01:13:05,770 >> Kuchukua sekunde 30, na kisha tutaweza angalau kutangaza nini unapaswa kuona. 1450 01:13:05,770 --> 01:13:08,330 Na mimi itabidi kuondoka tatu moja kama at-nyumbani mazoezi, 1451 01:13:08,330 --> 01:13:11,353 kama Ningependa zaidi ya changamoto mwishoni mwa wiki hii. 1452 01:13:11,353 --> 01:13:18,240 1453 01:13:18,240 --> 01:13:20,390 Na nadhani Andrew nguvu waliopata ni ya kwanza. 1454 01:13:20,390 --> 01:13:22,645 Nini ni picha ya pili, Andrew? 1455 01:13:22,645 --> 01:13:23,920 >> Watazamaji: Sanamu ya Uhuru. 1456 01:13:23,920 --> 01:13:28,500 >> DAVID Malan: Sanamu ya Uhuru itakuwa jibu wakati huu. 1457 01:13:28,500 --> 01:13:31,140 Hivyo tena, baadhi tu rahisi mifano, lengo la ambayo 1458 01:13:31,140 --> 01:13:35,040 ni kukupa hisia ya jinsi tumekuwa kutafsiriwa mchoro Scratch 1459 01:13:35,040 --> 01:13:40,410 vitalu annoying zaidi na zaidi kificho ngumu, lakini yote ya mawazo 1460 01:13:40,410 --> 01:13:42,980 bado ni sawa, angalau kwa kuanzishwa 1461 01:13:42,980 --> 01:13:48,380 sasa wa dhana ya kutofautiana, kuwa uwezo wa kuhifadhi kitu kwa muda. 1462 01:13:48,380 --> 01:13:51,750 >> Hebu kufanya moja zaidi mikono juu, tu kwa sasa kuunganisha dots 1463 01:13:51,750 --> 01:13:53,880 kwa kitu kidogo zaidi halisi ya dunia. 1464 01:13:53,880 --> 01:13:56,610 Wakati uko tayari, kama unaweza kwenda URL hii juu ya screen. 1465 01:13:56,610 --> 01:14:00,610 Hiyo ni pia katika nakala yako ya slides, developers.google.com/maps~~V. 1466 01:14:00,610 --> 01:14:03,660 Hebu kweli kufanya kitu halisi, hivyo kusema, kwenye mtandao 1467 01:14:03,660 --> 01:14:07,600 kutumia Google Maps API, au maombi ya programu interface, 1468 01:14:07,600 --> 01:14:08,940 kwa njia hii. 1469 01:14:08,940 --> 01:14:12,341 >> Google, kama makampuni mengi, hutoa mengi ya bure utendaji 1470 01:14:12,341 --> 01:14:14,840 kwamba unaweza kutumia ili kujenga yako mwenyewe kuvutia maombi. 1471 01:14:14,840 --> 01:14:18,890 Kwa kweli, kama wameweza milele kutumika Uber kupata teksi au gari, 1472 01:14:18,890 --> 01:14:21,640 pengine kujua kwamba Uber ina a map na inaonyesha magari juu yake. 1473 01:14:21,640 --> 01:14:24,870 Hiyo ni, kama bora kama naweza kuwaambia, Google Maps API. 1474 01:14:24,870 --> 01:14:28,884 Wao ni kweli kwa kutumia ramani ya Google, lakini Uber si ramani kampuni hiyo, 1475 01:14:28,884 --> 01:14:31,050 wala ingekuwa kwamba kuwa kuvutia hasa tatizo 1476 01:14:31,050 --> 01:14:33,510 kutatua juu ya zao gari huduma tatizo. 1477 01:14:33,510 --> 01:14:35,510 Na hivyo wao ni amesimama, tena, juu ya mabega 1478 01:14:35,510 --> 01:14:37,520 wa wengine, Google katika kesi hii. 1479 01:14:37,520 --> 01:14:42,850 Hivyo wao kutumia ramani ya Google ila nafsi zao gari huduma na sifa nyingine kama hizo. 1480 01:14:42,850 --> 01:14:47,770 >> Hivyo sisi ni kwenda kuchukua faida ya hii kufanya yafuatayo. 1481 01:14:47,770 --> 01:14:50,230 Na kama nimekuwa wamekwenda kwa haraka sana, tu simu yangu juu ya katika wakati huu. 1482 01:14:50,230 --> 01:14:53,500 Furaha kwa kurejea baadhi ya mambo ya picha. 1483 01:14:53,500 --> 01:14:56,290 Unapaswa kuona mwenyewe katika ukurasa kama hii. 1484 01:14:56,290 --> 01:14:58,230 Hivyo nzuri ya Google, na wao uko kati ya bora 1485 01:14:58,230 --> 01:15:01,364 la kutoa APIs si tu, lakini bure APIs kwamba 1486 01:15:01,364 --> 01:15:02,780 Unaweza kucheza na au kutumia kibiashara. 1487 01:15:02,780 --> 01:15:06,450 Hawana kuanza kumshutumu wewe kama matumizi yako ni ya juu, lakini mimi alikwenda mbele mapema 1488 01:15:06,450 --> 01:15:10,490 na kutiwa saini us kufungua akaunti ya bure kwamba, hopefully, 10 kompyuta 1489 01:15:10,490 --> 01:15:12,480 si humkoshwa nasi kwa ghafla. 1490 01:15:12,480 --> 01:15:14,320 Hivyo hopefully hii maandamano itakuwa kazi. 1491 01:15:14,320 --> 01:15:18,840 >> Na taarifa kwamba wana APIs kwa Android, iOS, huduma za mtandao, na mtandao, 1492 01:15:18,840 --> 01:15:19,620 chochote kile. 1493 01:15:19,620 --> 01:15:20,700 Hebu kuzingatia kwenye mtandao. 1494 01:15:20,700 --> 01:15:26,560 Hivyo bonyeza nyekundu sanduku, mtandao, na kwamba itasababisha wewe, hopefully, kwa ukurasa 1495 01:15:26,560 --> 01:15:27,630 hapa. 1496 01:15:27,630 --> 01:15:29,335 Na wameweza got rundo zima la APIs. 1497 01:15:29,335 --> 01:15:31,210 Na inaweza kuwa ni kidogo balaa kwa mara ya kwanza, 1498 01:15:31,210 --> 01:15:33,000 lakini mimi itabidi Bad nasi kupitia nini tunataka. 1499 01:15:33,000 --> 01:15:38,500 >> Juu kushoto ni Maps Google JavaScript API, JavaScript API. 1500 01:15:38,500 --> 01:15:40,380 Hivyo kwenda mbele na bonyeza kwamba moja. 1501 01:15:40,380 --> 01:15:49,360 Na kwamba, nitakuongozeni sasa kwa zifuatazo ukurasa, demos na kanuni sampuli. 1502 01:15:49,360 --> 01:15:51,190 Hebu zoom nje hapa. 1503 01:15:51,190 --> 01:15:56,300 Na napenda kupata yetu to-- kitabu chini kwa ambapo anasema hatua haraka kuanza. 1504 01:15:56,300 --> 01:15:57,970 screen yako lazima kuangalia kama yangu. 1505 01:15:57,970 --> 01:16:01,130 >> Na kuna hatua mbili, kupata ufunguo na kuanza zinazoendelea. 1506 01:16:01,130 --> 01:16:04,190 Mimi tayari alifanya hatua moja kwa sisi, kupata kinachojulikana muhimu. 1507 01:16:04,190 --> 01:16:05,320 Na hii ni wazo la kawaida. 1508 01:16:05,320 --> 01:16:09,210 ufunguo API kwa ujumla ni tu big idadi random au kamba 1509 01:16:09,210 --> 01:16:11,130 kwamba wanatakiwa ya kuweka katika kanuni yako, 1510 01:16:11,130 --> 01:16:15,280 ili Google anajua wewe ni nani wakati unatumia huduma yao, API yao. 1511 01:16:15,280 --> 01:16:17,370 Haina maana tuko kushitakiwa kitu chochote. 1512 01:16:17,370 --> 01:16:21,030 Na sasa, click, badala ya moja, bonyeza kuanza zinazoendelea. 1513 01:16:21,030 --> 01:16:25,990 Kama unaweza tu kukitikisa me zaidi kama uhakika ambapo sisi ni. 1514 01:16:25,990 --> 01:16:28,040 >> Hivyo tutaweza tu scratch uso, hapa lakini kile 1515 01:16:28,040 --> 01:16:31,000 Nilidhani itakuwa nzito ni kweli kuwa sisi sote, 1516 01:16:31,000 --> 01:16:34,240 kutumia Cloud9 katika dirisha moja na mafunzo haya katika dirisha lingine, 1517 01:16:34,240 --> 01:16:37,120 lets kweli kupata yetu wenyewe maombi juu na kukimbia 1518 01:16:37,120 --> 01:16:40,920 kwamba embeds desturi Google map katika tovuti yetu wenyewe, 1519 01:16:40,920 --> 01:16:43,010 na kisha anaongeza makala moja au mbili. 1520 01:16:43,010 --> 01:16:45,520 Lakini tutaweza tu scratch uso wa nini tunaweza kufanya. 1521 01:16:45,520 --> 01:16:47,020 >> Hivyo tu haraka sanity hundi. 1522 01:16:47,020 --> 01:16:49,740 Ni kila mmoja katika ukurasa huu, Google Maps API JavaScript? 1523 01:16:49,740 --> 01:16:50,872 Lazima kusema kupata kuanza. 1524 01:16:50,872 --> 01:16:53,330 Sisi siyo kwenda kupitia jambo zima kwa njia yoyote. 1525 01:16:53,330 --> 01:16:58,090 OK, katika tabo nyingine, kama huna kuwa ni wazi, je kwenda katika Cloud9 1526 01:16:58,090 --> 01:17:03,500 na kupata mwenyewe kwa tu tabo mpya, hatimaye. 1527 01:17:03,500 --> 01:17:11,070 Hivyo tena, c9.io kutoka jana, c9.io, na tu kuunda faili mpya. 1528 01:17:11,070 --> 01:17:13,500 Na kwenda mbele na wito hivyo chochote Ningependa. 1529 01:17:13,500 --> 01:17:16,495 Mimi kuitwa map.html ya mgodi. 1530 01:17:16,495 --> 01:17:17,870 Kuiita chochote na kuishia katika html. 1531 01:17:17,870 --> 01:17:23,930 1532 01:17:23,930 --> 01:17:26,580 Na unapaswa kuwa takribani ambapo mimi katika mchakato huu 1533 01:17:26,580 --> 01:17:31,470 na tu haraka blinking katika tupu tab aitwaye kitu kama map.html. 1534 01:17:31,470 --> 01:17:35,808 1535 01:17:35,808 --> 01:17:38,148 Au faili, faili mpya wakati huu. 1536 01:17:38,148 --> 01:17:41,960 1537 01:17:41,960 --> 01:17:48,000 >> Na sasa, zaidi ya juu Google Maps API JavaScript, 1538 01:17:48,000 --> 01:17:50,010 tutaweza ruka kusoma kwa njia zote za fungu hili. 1539 01:17:50,010 --> 01:17:53,760 Lakini taarifa kwamba hujambo dunia ni Hakika kila mahali, unaweza kuona ni sasa. 1540 01:17:53,760 --> 01:17:58,020 Jambo dunia ina hii kubwa rangi mfano wa kundi zima la HTML. 1541 01:17:58,020 --> 01:18:03,590 Kwenda mbele na nakala na kuweka tu kwamba HTML, hivyo kutokana na aina doc utafutaji juu 1542 01:18:03,590 --> 01:18:08,810 njia yote ya karibu HTML tag, kwenda mbele na nakala zote za that-- tena, 1543 01:18:08,810 --> 01:18:14,430 hiyo ni chini ya dunia hodi example-- na kuweka kwamba katika tab yako Cloud9, 1544 01:18:14,430 --> 01:18:17,996 ili sasa screen yako inapaswa kuangalia takribani kama yangu. 1545 01:18:17,996 --> 01:18:22,280 1546 01:18:22,280 --> 01:18:24,520 >> Na unaweza kuokoa yake, lakini huna mzigo bado tu. 1547 01:18:24,520 --> 01:18:26,290 Hebu kwanza kuangalia kanuni na kuona kama sisi 1548 01:18:26,290 --> 01:18:29,110 hawezi kudai au kujifunza kutokana na kile ni Google 1549 01:18:29,110 --> 01:18:30,860 imekuwa na sisi upofu nakala na kuweka. 1550 01:18:30,860 --> 01:18:33,334 Wao wanataka tu kusaidia, literally, kupata yetu ilianza, 1551 01:18:33,334 --> 01:18:35,500 lakini kuna si kwamba kiasi utata kweli huko. 1552 01:18:35,500 --> 01:18:40,100 1553 01:18:40,100 --> 01:18:42,210 Maswali yoyote tu bado? 1554 01:18:42,210 --> 01:18:43,790 Tuko salama kusonga mbele? 1555 01:18:43,790 --> 01:18:44,330 SAWA. 1556 01:18:44,330 --> 01:18:46,800 >> Kwa hiyo kwa haraka, hebu tu kufanya baadhi ya haraka sanity hundi. 1557 01:18:46,800 --> 01:18:48,800 Mstari mmoja wa kile kuona, na hopefully, wewe 1558 01:18:48,800 --> 01:18:51,710 kuona, hiyo ina maana gani, doctype HTML? 1559 01:18:51,710 --> 01:18:52,385 Kareem, kukumbuka? 1560 01:18:52,385 --> 01:18:53,260 Watazamaji: [inaudible] 1561 01:18:53,260 --> 01:18:53,968 DAVID Malan: Ndiyo. 1562 01:18:53,968 --> 01:18:54,870 Hiyo inakuja HTML 5. 1563 01:18:54,870 --> 01:18:57,950 Wakati huo huo, kujipanga mbili juu ya screen hapa ina maana hey browser, 1564 01:18:57,950 --> 01:18:59,482 hiyo inakuja HTML halisi. 1565 01:18:59,482 --> 01:19:01,440 Mstari tatu ni hey browser, hiyo inakuja kichwa. 1566 01:19:01,440 --> 01:19:04,260 Mstari nne ni, bila shaka, hey browser, inakuja cheo. 1567 01:19:04,260 --> 01:19:07,780 Je line tano nini? 1568 01:19:07,780 --> 01:19:09,930 Kwa kweli, hii haina kweli kufanya kitu chochote kwa ajili yetu. 1569 01:19:09,930 --> 01:19:13,340 Katika kesi hiyo, ni tu resizes ukurasa wa chaguo-msingi. Mstari sita, 1570 01:19:13,340 --> 01:19:16,140 sisi si aliongea kuhusu, lakini bayana encoding tabia. 1571 01:19:16,140 --> 01:19:19,181 Kuna njia tofauti encode files, hasa kwa lugha za kigeni. 1572 01:19:19,181 --> 01:19:21,100 UTF-8 tu inaelekea kuwa chaguo-msingi. 1573 01:19:21,100 --> 01:19:26,580 >> Hivyo sasa tutaweza kuona katika mstari saba hadi 16, baadhi CSS. 1574 01:19:26,580 --> 01:19:29,260 Na hata kama tumekuwa si kuonekana mambo yote haya kabla, 1575 01:19:29,260 --> 01:19:30,810 tunaweza aina ya infer. 1576 01:19:30,810 --> 01:19:37,075 Hivyo kujipanga njia nane, hey browser, kuomba yote ya yafuatayo ambayo vitambulisho mbili, 1577 01:19:37,075 --> 01:19:37,575 inaonekana? 1578 01:19:37,575 --> 01:19:40,650 1579 01:19:40,650 --> 01:19:41,701 HTML na maandishi mwili. 1580 01:19:41,701 --> 01:19:43,200 Hivyo comma ni jambo jipya huko. 1581 01:19:43,200 --> 01:19:46,140 Na kwamba ni njia tu ya kubainisha vitambulisho nyingi kwa mara moja. 1582 01:19:46,140 --> 01:19:47,640 >> Kisha sisi tumepewa braces curly. 1583 01:19:47,640 --> 01:19:51,170 Hivyo inaonekana, hii anaelezea browser, kufanya urefu wa ukurasa 100%. 1584 01:19:51,170 --> 01:19:54,170 Hivyo hata kama kuna kidogo sana maudhui, kufanya ukurasa mzima, 1585 01:19:54,170 --> 01:19:55,530 kufanya jambo kujaza ukurasa. 1586 01:19:55,530 --> 01:19:57,524 Kufanya ramani hatimaye kujaza ukurasa. 1587 01:19:57,524 --> 01:19:58,690 Margin, hiyo ina maana gani? 1588 01:19:58,690 --> 01:20:01,559 Hiyo ni kawaida kama holela nafasi nyeupe pembezoni mwa 1589 01:20:01,559 --> 01:20:04,350 kwamba baadhi designer browser tu aliamua lazima kuna, kwa sababu 1590 01:20:04,350 --> 01:20:05,540 aina ya hufanya mambo kuangalia safi. 1591 01:20:05,540 --> 01:20:06,498 Lakini hatutaki hiyo. 1592 01:20:06,498 --> 01:20:08,710 Tunataka ramani kwenda njia yote ya edges. 1593 01:20:08,710 --> 01:20:10,930 Padding, sawa katika roho kwa kishindo. 1594 01:20:10,930 --> 01:20:14,980 Kishindo maana nje, padding njia ndani, lakini ni moja aina ya mpango huo. 1595 01:20:14,980 --> 01:20:17,520 Ni kidogo ya buffer kati ya wewe na edges. 1596 01:20:17,520 --> 01:20:21,170 >> Na kisha line 13 ni nzuri nafasi kwa ajili ya mapitio ya haraka. 1597 01:20:21,170 --> 01:20:26,440 Je mkali ramani ishara maana, au hashtag ramani ina maana gani? 1598 01:20:26,440 --> 01:20:29,650 Je, hiyo kutaja, katika kanuni? 1599 01:20:29,650 --> 01:20:31,485 >> Watazamaji: [inaudible] 1600 01:20:31,485 --> 01:20:32,360 DAVID Malan: Hasa. 1601 01:20:32,360 --> 01:20:36,900 Mali hii, CSS mali hii inatumika kwa jambo moja tu, tag HTML 1602 01:20:36,900 --> 01:20:41,180 ambayo ina ID ya quote, unquote "ramani". 1603 01:20:41,180 --> 01:20:44,460 Na sasa hebu kufunga mbele, kitabu chini kwa chini ya faili, ambayo 1604 01:20:44,460 --> 01:20:49,860 si mbali sana, na taarifa juu ya mstari 19, kama wewe kuweka ni hasa kama mimi, 1605 01:20:49,860 --> 01:20:53,405 line 19 ina tu div, ambayo ni mgawanyo wa ukurasa, ambayo jana mimi 1606 01:20:53,405 --> 01:20:54,820 aitwaye rectangular kanda. 1607 01:20:54,820 --> 01:20:55,820 Ni got kitu ndani yake. 1608 01:20:55,820 --> 01:20:57,550 Ni tag wazi, karibu tag. 1609 01:20:57,550 --> 01:20:59,490 Lakini haina kuwa na ID ya kipekee. 1610 01:20:59,490 --> 01:21:02,090 >> Hivyo kile inaonekana kuwa kinachotokea hapa ni Google 1611 01:21:02,090 --> 01:21:05,880 ni readying mtandao wetu ukurasa wa kuwa kamili 100% urefu, 1612 01:21:05,880 --> 01:21:09,680 na hakuna padding, hakuna kishindo, kwa sababu nini tunakwenda kuweka ndani ya 1613 01:21:09,680 --> 01:21:13,647 div hii, ambao ID kipekee ni ramani, ni halisi iliyoingia ramani. 1614 01:21:13,647 --> 01:21:15,480 Na tunataka kujaza ukurasa na si tu 1615 01:21:15,480 --> 01:21:17,560 kuwa baadhi ya Mstatili ndogo katikati. 1616 01:21:17,560 --> 01:21:24,220 Hivyo line 14 vile vile inasisitiza, map yenyewe inapaswa kuwa na urefu wa 100%. 1617 01:21:24,220 --> 01:21:29,220 >> Hivyo sasa taarifa kati ya mistari 20 na 28, hii ni JavaScript kificho. 1618 01:21:29,220 --> 01:21:33,020 Na hii ni, hata kama ni syntactically ajabu kidogo, 1619 01:21:33,020 --> 01:21:34,730 kuna si yote kwamba mengi kinachoendelea hapa. 1620 01:21:34,730 --> 01:21:39,310 Katika mstari 21, hii ni kutangaza kitu kinachoitwa kutofautiana. 1621 01:21:39,310 --> 01:21:42,030 Badala ya kuiita sawa, kama tulivyofanya kabla, 1622 01:21:42,030 --> 01:21:44,500 tuko kwa usahihi kusema var, ambayo ina maana kutofautiana. 1623 01:21:44,500 --> 01:21:46,520 Tunaweza wametumia kwamba katika kificho Nick, lakini hakufanya hivyo, hivyo mimi 1624 01:21:46,520 --> 01:21:48,190 haikujali kufanya hivyo aidha. 1625 01:21:48,190 --> 01:21:50,240 Ni kutofautiana kuitwa map, na kisha kuna 1626 01:21:50,240 --> 01:21:53,360 kazi hiyo ni inaonekana aitwaye initMap. 1627 01:21:53,360 --> 01:21:55,780 >> Hivyo hii ni kama desturi yetu wenyewe puzzle kipande katika Scratch. 1628 01:21:55,780 --> 01:21:58,830 Tumekuwa umba kipande cha utendaji inaitwa initMap, 1629 01:21:58,830 --> 01:22:00,980 na unaweza aina ya infer nini kinaendelea hapa. 1630 01:22:00,980 --> 01:22:02,930 Upande wa kushoto, sisi tumepewa kutofautiana, 1631 01:22:02,930 --> 01:22:06,000 hivyo tunakwenda kuweka zifuatazo Jambo ndani ya variable kwamba, 1632 01:22:06,000 --> 01:22:07,362 kutoka kulia kwenda kushoto. 1633 01:22:07,362 --> 01:22:11,940 mkono wa kulia upande anasema, hey browser, nipe ramani mpya ya Google. 1634 01:22:11,940 --> 01:22:16,490 Na google.maps.map ni njia tu funky ya kubainisha kwamba utendaji hii 1635 01:22:16,490 --> 01:22:19,790 ni mali ya Google Maps. 1636 01:22:19,790 --> 01:22:23,010 >> Baada ya mabano, tumeona hili kabla, hey browser, kupata 1637 01:22:23,010 --> 01:22:29,210 me vipengele katika ukurasa, tag katika ukurasa ambao kipekee ID is-- 1638 01:22:29,210 --> 01:22:30,710 >> Watazamaji: [inaudible] 1639 01:22:30,710 --> 01:22:31,790 >> DAVID Malan: --map. 1640 01:22:31,790 --> 01:22:35,770 Na kile kinachoendelea, vizuri, mstari huu pamoja, line 23, 1641 01:22:35,770 --> 01:22:38,630 ni kimsingi akisema, hey browser, kwenda kupata me 1642 01:22:38,630 --> 01:22:42,800 kwamba div tupu kwenye ukurasa ambao ID kipekee ni ramani, 1643 01:22:42,800 --> 01:22:45,600 kwa sababu nataka kuingiza katika it-- kuingiza ndani yake, 1644 01:22:45,600 --> 01:22:49,520 kama wewe will-- rundo zima ya bidhaa za hiyo ikitokea kuwa kuja kutoka mtandao, 1645 01:22:49,520 --> 01:22:50,427 hatimaye. 1646 01:22:50,427 --> 01:22:52,010 Na Google kufanya yote ya kwamba kwa ajili yetu. 1647 01:22:52,010 --> 01:22:55,350 >> Hivyo tena, katika mwisho wa siku, tuna mfano huu wa kufikirika tu. 1648 01:22:55,350 --> 01:22:58,610 Mimi sijui nini ramani ni au jinsi ya kutekeleza ramani API. 1649 01:22:58,610 --> 01:22:59,460 Hatuna haja ya. 1650 01:22:59,460 --> 01:23:02,740 Sisi tu haja ya kuwaambia ramani ambapo kuweka yenyewe, na kuondoka 1651 01:23:02,740 --> 01:23:04,880 wale utekelezaji msingi maelezo ya Google. 1652 01:23:04,880 --> 01:23:08,190 Sasa kuna inaonekana vipande viwili vya data 1653 01:23:08,190 --> 01:23:11,940 kwamba mfano huu ni kutoa kwa API Google. 1654 01:23:11,940 --> 01:23:16,450 Inavyoonekana katikati ya ramani, na zoom ngazi, hivyo kusema. 1655 01:23:16,450 --> 01:23:21,390 >> Na haina mtu yeyote kutambua haya kuratibu, latitude na longitude? 1656 01:23:21,390 --> 01:23:24,364 Pengine, lakini tunaweza kurudi nyuma kwa mafunzo, literally kuona. 1657 01:23:24,364 --> 01:23:25,780 Lakini tutaweza kuona katika muda tu. 1658 01:23:25,780 --> 01:23:29,880 Zoom ngazi ni thamani kati ya, sijui unajua, mmoja katika 13 au kitu kama hicho. 1659 01:23:29,880 --> 01:23:32,880 Ni tu ina nini na jinsi mbali wewe ni zoomed ndani au nje, na hiyo ni yake. 1660 01:23:32,880 --> 01:23:35,690 Na sasa katika mwisho wa ukurasa, taarifa mstari 29-- 1661 01:23:35,690 --> 01:23:39,960 ni kidogo mbaya kwa sababu ni wraps-- hii mstari wa kanuni 1662 01:23:39,960 --> 01:23:44,570 ni nini downloads kwa kisakuzi API halisi ya Google. 1663 01:23:44,570 --> 01:23:47,500 Wote wa kificho kwamba Google wahandisi wameandika kwamba kutekeleza 1664 01:23:47,500 --> 01:23:50,000 kipengele hiki nzima ya ramani embeddable. 1665 01:23:50,000 --> 01:23:51,470 >> Sasa hebu mabadiliko ya kitu chochote. 1666 01:23:51,470 --> 01:23:54,761 Kama wewe ni kufuatia pamoja, kwenda mbele na tu kuokoa faili kwamba, kama wewe kweli kuwa 1667 01:23:54,761 --> 01:23:55,760 nini nina. 1668 01:23:55,760 --> 01:23:57,370 Nenda kwa URL yake. 1669 01:23:57,370 --> 01:23:59,820 Unaweza bonyeza kifungo kukimbia juu juu na kwamba atakuambia 1670 01:23:59,820 --> 01:24:03,050 wewe URL ya mtandao wa kompyuta yako tena. 1671 01:24:03,050 --> 01:24:06,010 Na itasababisha wewe tabo mpya. 1672 01:24:06,010 --> 01:24:11,910 Kama wewe click Open kwa map.html, na ni tabia mbaya wewe ni 1673 01:24:11,910 --> 01:24:15,520 kwenda kupata tahadhari, ujumbe wa makosa, ndiyo? 1674 01:24:15,520 --> 01:24:18,570 Ujumbe wa makosa, makosa ujumbe? 1675 01:24:18,570 --> 01:24:21,170 >> Hivyo kwa bahati mbaya, kosa ujumbe si kwamba mwangaza 1676 01:24:21,170 --> 01:24:23,890 isipokuwa kama kweli kufungua console, kwamba tab maalum sisi 1677 01:24:23,890 --> 01:24:27,110 naendelea kufungua jana na kidogo mapema leo. 1678 01:24:27,110 --> 01:24:29,445 Lakini mimi mashaka katika hili mapema, hivyo mimi tayari 1679 01:24:29,445 --> 01:24:30,820 figured nini ufumbuzi ni. 1680 01:24:30,820 --> 01:24:34,440 Katika slides leo, au badala yake, katika Cloud9, ilani 1681 01:24:34,440 --> 01:24:36,430 kwamba sisi hakufanya kitu kwa makusudi. 1682 01:24:36,430 --> 01:24:40,690 Taarifa kwamba hii tag script katika line 29, kama wewe kusoma kwa njia hiyo, 1683 01:24:40,690 --> 01:24:44,440 ni kama maps.googleapis.com/ kitu, kitu, kitu, 1684 01:24:44,440 --> 01:24:46,430 kisha taarifa ya mtu, mmoja wa watengenezaji, 1685 01:24:46,430 --> 01:24:50,040 aliandika katika mji mkuu zote barua, API yako muhimu. 1686 01:24:50,040 --> 01:24:51,700 >> Tunahitaji kuweka kitu katika huko. 1687 01:24:51,700 --> 01:24:53,450 Na hii ilikuwa ni hatua Mimi alifanya kwa ajili yetu kabla, 1688 01:24:53,450 --> 01:24:57,190 na tena wapate Svartlistade sisi kama ghafla, 12 au zaidi ya sisi 1689 01:24:57,190 --> 01:24:59,470 kuanza kutumia ufunguo huo, lakini hebu angalia nini kinatokea. 1690 01:24:59,470 --> 01:25:03,030 Hivyo kama wewe kwenda katika leo slides, slide moja baadaye, kuna 1691 01:25:03,030 --> 01:25:07,070 sana funky-kuangalia hii kamba ya maandishi. 1692 01:25:07,070 --> 01:25:12,230 Kwenda mbele na nakala tu na kuuweka ambapo anasema API yako muhimu. 1693 01:25:12,230 --> 01:25:15,120 Hiyo ni moja mimi saini kwa ajili ya. 1694 01:25:15,120 --> 01:25:17,700 >> Na dhahiri si kujaribu kuandika nje manually, 1695 01:25:17,700 --> 01:25:21,210 kwa sababu anahisi mkali na typos, uwezekano. 1696 01:25:21,210 --> 01:25:23,260 Hivyo tu nakala na kuweka hiyo. 1697 01:25:23,260 --> 01:25:26,090 Na itakuja kufanya mstari tena, lakini sasa, tu kuwa wazi, 1698 01:25:26,090 --> 01:25:29,540 ni lazima kuangalia zaidi kidogo kama hii, ambapo muhimu ni sawa na si 1699 01:25:29,540 --> 01:25:32,200 mtaji kunguruma katika wewe. 1700 01:25:32,200 --> 01:25:34,810 Hifadhi ukurasa wako, kurudi nyuma tab mengine, upya, 1701 01:25:34,810 --> 01:25:36,770 na matumaini ya kuona ramani ya wapi? 1702 01:25:36,770 --> 01:25:37,790 >> Watazamaji: Australia. 1703 01:25:37,790 --> 01:25:38,748 >> DAVID Malan: Australia. 1704 01:25:38,748 --> 01:25:41,200 Hivyo inaonekana wale ni GPS kuratibu ya Australia. 1705 01:25:41,200 --> 01:25:44,491 Na napenda kutembea kwa muda tu na kusaidia mtu yeyote ambaye si huko kabisa, 1706 01:25:44,491 --> 01:25:47,729 lakini napenda kupendekeza, kupitia Google, kupata GPS kuratibu ya mji yako mwenyewe 1707 01:25:47,729 --> 01:25:48,770 au mwenyewe nyumbani nchi yako. 1708 01:25:48,770 --> 01:25:51,436 Na pengine Google anaweza kurejea huu up, au Wikipedia anaweza kukuambia. 1709 01:25:51,436 --> 01:25:54,410 Lakini kuchagua maadili mbili tofauti kwa latitude na longitude, 1710 01:25:54,410 --> 01:25:57,530 kurudi nyuma katika na kuweka yao, na kisha upya ukurasa baada ya kuokoa 1711 01:25:57,530 --> 01:26:00,718 na kuona kama unaweza kuwa na map kwa ajili ya mji yako mwenyewe. 1712 01:26:00,718 --> 01:26:04,500 1713 01:26:04,500 --> 01:26:08,042 >> Na wakati wewe ni kosa na kwamba, kufuatilia challenge-- 1714 01:26:08,042 --> 01:26:11,250 na mimi nitakupa kidogo kidogo mwelekeo, makusudi, ili makusudi 1715 01:26:11,250 --> 01:26:13,791 kuwa na mapambano kwa wanandoa dakika na nyaraka, 1716 01:26:13,791 --> 01:26:18,740 mabadiliko ramani kuwa si hii cartoonish default, lakini ramani satellite. 1717 01:26:18,740 --> 01:26:24,600 Hivyo kweli kuona satellite picha badala ya rangi pretty. 1718 01:26:24,600 --> 01:26:29,710 >> Na ladha Mimi nitakupa ni mabadiliko ya aina ya ramani. 1719 01:26:29,710 --> 01:26:33,084 Kwenda nyuma ya kuwa kupata ilianza ukurasa kwa ajili ya uongozi. 1720 01:26:33,084 --> 01:26:40,599 1721 01:26:40,599 --> 01:26:42,390 Kama unaweza kuwa zilizopatikana, kama wewe ni kuangalia, 1722 01:26:42,390 --> 01:26:44,250 kuna watu wengi zaidi mambo unaweza kufanya. 1723 01:26:44,250 --> 01:26:46,380 Baadhi ya una tayari iliyopita aina ramani. 1724 01:26:46,380 --> 01:26:49,890 Lakini unaweza do-- kwa mfano, napenda kwenda kwa kitu tulivyofanya kwa ajili ya kozi 1725 01:26:49,890 --> 01:26:52,050 Mimi teach-- maps.cs50.net. 1726 01:26:52,050 --> 01:26:53,470 Moja ya undergrads yetu alifanya hivyo. 1727 01:26:53,470 --> 01:26:58,890 Sisi kituo cha ramani yetu juu ya Harvard Yard na overlay wote wa majina haya jengo, 1728 01:26:58,890 --> 01:27:01,070 na tulikuwa naye kuongeza hii. 1729 01:27:01,070 --> 01:27:04,270 Hivyo kama nataka kutafuta, Kwa mfano, Matthews Hall, 1730 01:27:04,270 --> 01:27:05,730 tuna kidogo kushuka chini menu. 1731 01:27:05,730 --> 01:27:09,080 Na nadhani yeye kutumia Bootstrap, maktaba sisi kujadiliwa mapema kwa hili. 1732 01:27:09,080 --> 01:27:12,190 Na kama wewe bonyeza Matthews Hall, ni mara moja 1733 01:27:12,190 --> 01:27:14,790 anaruka ramani ya fulani eneo, na inaonyesha 1734 01:27:14,790 --> 01:27:16,440 wewe picha katika hii kidogo pop-up. 1735 01:27:16,440 --> 01:27:18,670 >> Lakini hata hii kidogo pop-up, sisi haikutekeleza. 1736 01:27:18,670 --> 01:27:27,521 Kama mimi kitabu chini ya kupata yetu ilianza ukurasa na kuangalia kwa maelezo madirisha, 1737 01:27:27,521 --> 01:27:29,770 utaona kwamba baadhi ya utendaji wewe mwenyewe 1738 01:27:29,770 --> 01:27:31,561 Unaweza kuongeza, angalau kwa kidogo zaidi utata, 1739 01:27:31,561 --> 01:27:33,970 ni kitu kinachoitwa info dirisha. 1740 01:27:33,970 --> 01:27:37,190 Na kama mimi bonyeza mfano hapa, na hii ni nini furaha, 1741 01:27:37,190 --> 01:27:40,530 unaweza kufanya mambo kama hii, kubonyeza alama na kisha voila, 1742 01:27:40,530 --> 01:27:42,400 Maelezo pops up. 1743 01:27:42,400 --> 01:27:45,874 >> Hivyo tuna kabisa vishawishi sifa za kutosha za JavaScript 1744 01:27:45,874 --> 01:27:49,040 rangi picha ya hasa jinsi inaweza waya yote ya mambo haya kwa pamoja, 1745 01:27:49,040 --> 01:27:50,706 lakini tumekuwa aina ya scratched uso. 1746 01:27:50,706 --> 01:27:53,140 Kwa kweli, ni nini mimi tu alifanya wakati Mimi clicked juu ya marker kwamba, 1747 01:27:53,140 --> 01:27:55,819 ilikuwa kuchochea tukio, a kinachojulikana juu ya tukio click. 1748 01:27:55,819 --> 01:27:57,610 Na sisi kweli waliona tukio mapema leo, 1749 01:27:57,610 --> 01:28:00,670 kinachojulikana kuwasilisha tukio, tulipokuwa kuzuia 1750 01:28:00,670 --> 01:28:02,490 user kutoka kwa ajili ya kutafuta paka. 1751 01:28:02,490 --> 01:28:06,560 Hivyo tumekuwa aina ya ilichukua na choosed kutoka miongoni mwa makala haya yote mbalimbali, 1752 01:28:06,560 --> 01:28:08,990 kukupa hisia, hopefully, ya nini unaweza kweli 1753 01:28:08,990 --> 01:28:11,000 kufanya na kidogo zaidi faraja katika programu, 1754 01:28:11,000 --> 01:28:12,587 na rasilimali bure kabisa. 1755 01:28:12,587 --> 01:28:15,856 1756 01:28:15,856 --> 01:28:18,770 >> Maswali yoyote? 1757 01:28:18,770 --> 01:28:19,790 Hakuna? 1758 01:28:19,790 --> 01:28:22,542 Hii ni nafasi yako ya mwisho, angalau leo, siku ya Ijumaa, 1759 01:28:22,542 --> 01:28:25,000 kupata kitu chochote mbali kifua yako hivyo kwamba kutembea nje ya hapa 1760 01:28:25,000 --> 01:28:27,067 hisia za kujiamini na starehe. 1761 01:28:27,067 --> 01:28:27,566 Ndiyo. 1762 01:28:27,566 --> 01:28:29,740 >> Watazamaji: Kwa nini si kuongeza jambo moja zaidi? 1763 01:28:29,740 --> 01:28:32,720 >> DAVID Malan: Oh wangu wema. 1764 01:28:32,720 --> 01:28:35,260 Nahitaji kupumzika mwishoni mwa wiki hii, nadhani. 1765 01:28:35,260 --> 01:28:36,180 Maswali mengine? 1766 01:28:36,180 --> 01:28:37,055 >> Watazamaji: [inaudible] 1767 01:28:37,055 --> 01:28:44,130 1768 01:28:44,130 --> 01:28:46,810 >> DAVID Malan: can-- katika Internet Explorer, kupumzika kwa amani, 1769 01:28:46,810 --> 01:28:49,310 wewe kutumika kuwa na uwezo wa kuweka VB script, virtual msingi script, 1770 01:28:49,310 --> 01:28:50,643 lakini kwa kweli kamwe hawakupata juu. 1771 01:28:50,643 --> 01:28:52,490 Hivyo jibu fupi ni tu JavaScript. 1772 01:28:52,490 --> 01:28:55,144 1773 01:28:55,144 --> 01:28:55,810 Maswali mengine? 1774 01:28:55,810 --> 01:28:58,427 1775 01:28:58,427 --> 01:28:59,760 Haki ya wote, vizuri, basi mimi kufanya hivyo. 1776 01:28:59,760 --> 01:29:02,070 Hebu kunyakua wenzetu nje. 1777 01:29:02,070 --> 01:29:04,500 Wana baadhi tathmini aina kwamba wanataka kila mtu 1778 01:29:04,500 --> 01:29:06,310 kwa kutumia dakika chache kujaza. 1779 01:29:06,310 --> 01:29:08,775 Wanataka kukusanya fomu kuwa na yoyote waivers kwamba unaweza kuwa nje. 1780 01:29:08,775 --> 01:29:10,240 Wao utakuwa pia kuwa na vyeti. 1781 01:29:10,240 --> 01:29:12,380 Mimi guessing kuna bado baadhi ya vitafunio nje. 1782 01:29:12,380 --> 01:29:14,360 Nipishe hizi nje, na kama wewe una maswali yoyote wakati huo huo, 1783 01:29:14,360 --> 01:29:17,120 Mimi itabidi kutembea mmoja mmoja zaidi na tunaweza kupata wewe kuanza. 1784 01:29:17,120 --> 01:29:17,879 Ndiyo, bila shaka. 1785 01:29:17,879 --> 01:29:18,754 Watazamaji: [inaudible] 1786 01:29:18,754 --> 01:29:26,737 1787 01:29:26,737 --> 01:29:28,570 DAVID Malan: Hiyo kawaida kweli siku hizi. 1788 01:29:28,570 --> 01:29:30,730 Hakika kwa mtandao programu, wewe ni leaning 1789 01:29:30,730 --> 01:29:32,901 juu ya wengine wewe ni ama aesthetically kutumia vitu 1790 01:29:32,901 --> 01:29:35,400 kama Bootstrap, hivyo huna kuwa na kutekeleza kiwango cha chini 1791 01:29:35,400 --> 01:29:37,169 maelezo ya menus na vifungo na wote. 1792 01:29:37,169 --> 01:29:39,210 Wewe ni leaning juu ya mtu kama Google ili uweze 1793 01:29:39,210 --> 01:29:42,050 hawana kujenga Uber biashara na biashara ya ramani, 1794 01:29:42,050 --> 01:29:44,850 na idadi yoyote ya sawa maombi pia. 1795 01:29:44,850 --> 01:29:46,350 >> Kwa kweli, logins ni maarufu, pia. 1796 01:29:46,350 --> 01:29:48,500 Ikiwa umetumia Spotify au idadi yoyote ya Nje, 1797 01:29:48,500 --> 01:29:51,210 wewe utakuwa kuingia kwenye baadhi Nje kutumia Facebook. 1798 01:29:51,210 --> 01:29:53,350 Kwa hiyo kile ni nzuri, kuna ni APIs kwa logins 1799 01:29:53,350 --> 01:29:56,570 siku hizi, ili huna kuwa na watumiaji yako mwenyewe meza 1800 01:29:56,570 --> 01:29:59,440 na wote wa database yako mwenyewe lazima kwa kiwango sawa. 1801 01:29:59,440 --> 01:30:01,795 Unaweza basi Facebook kufanya yote ya kuwa utata kwa ajili yenu. 1802 01:30:01,795 --> 01:30:03,920 Hivyo ni wakati wa kusisimua, uaminifu, katika programu, 1803 01:30:03,920 --> 01:30:07,200 kwa sababu kuna watu wengi chama cha tatu Huduma uweze kujenga juu ya. 1804 01:30:07,200 --> 01:30:10,890 >> Na tena, bei ya kulipa ni ama fedha au downtime. 1805 01:30:10,890 --> 01:30:13,750 Kama Google inakwenda chini, hivyo haina Uber, arguably, 1806 01:30:13,750 --> 01:30:15,690 lakini labda hiyo ni busara biashara-off. 1807 01:30:15,690 --> 01:30:18,040 Na tena, kwamba alikuwa mmoja wa mandhari, hopefully, kwa wanandoa wa zamani wa siku, 1808 01:30:18,040 --> 01:30:18,780 ni hizi biashara awamu ya pili. 1809 01:30:18,780 --> 01:30:20,738 Na mara chache ni pale kwenda kuwa jibu sahihi. 1810 01:30:20,738 --> 01:30:25,700 Ni kweli ni bora majibu mawili au zaidi. 1811 01:30:25,700 --> 01:30:26,682 >> Kupita hizi kote. 1812 01:30:26,682 --> 01:30:36,830 1813 01:30:36,830 --> 01:30:41,110 >> Na akaunti hizo Cloud9 itaendelea kufanya kazi, katika nadharia, katika milele. 1814 01:30:41,110 --> 01:30:45,000 Unaweza kupata kama wewe kusubiri siku chache au wiki moja au zaidi kwa kuingia tena ndani yao, 1815 01:30:45,000 --> 01:30:49,170 inaweza kuchukua kama moja au dakika tano kufungua nyuma juu, 1816 01:30:49,170 --> 01:30:54,090 lakini hiyo ni kwa sababu tu wao kuweka ni kulala ili kuokoa juu ya rasilimali. 1817 01:30:54,090 --> 01:31:10,527