1 00:00:00,000 --> 00:00:00,060 2 00:00:00,060 --> 00:00:01,560 >> DAVID Malan: Dobre, sme späť. 3 00:00:01,560 --> 00:00:03,830 Takže pre vzrušujúce záver, náš posledný úsek 4 00:00:03,830 --> 00:00:06,900 na webové programovanie, ktoré som myslel, že by sme používať ako všeobecný termín 5 00:00:06,900 --> 00:00:08,440 zachytiť niekoľko zostávajúcich tém. 6 00:00:08,440 --> 00:00:10,390 Takže na konci deň, budeme vlastne robiť 7 00:00:10,390 --> 00:00:14,830 trochu hands-on programovanie pre web s jazykom volal JavaScript. 8 00:00:14,830 --> 00:00:17,510 A myslím, že my sa pozrieme na niečo, čo súvisí s obrazmi 9 00:00:17,510 --> 00:00:20,040 a objavovanie niečoho tajne skryté v obraze, 10 00:00:20,040 --> 00:00:23,230 a tiež sa pozrieť na Google Maps API, aplikačné programové 11 00:00:23,230 --> 00:00:26,040 rozhranie, ako niečo, reprezentatívne pre typ softvéru 12 00:00:26,040 --> 00:00:28,800 To je stále viac a voľne k dispozícii dnes. 13 00:00:28,800 --> 00:00:32,029 >> Ale prečo by sme sa pozrieť pri prísada do tohto sveta 14 00:00:32,029 --> 00:00:34,070 že sme boli trochu brať ako samozrejmosť existuje 15 00:00:34,070 --> 00:00:36,720 na nejakú dobu, databázy. 16 00:00:36,720 --> 00:00:39,150 Za posledný deň a pol sme sa predpokladať, 17 00:00:39,150 --> 00:00:42,910 že máme prístup k databáze, ale aký problém sa databázy vyriešiť? 18 00:00:42,910 --> 00:00:45,540 Čo to robí pre nás? 19 00:00:45,540 --> 00:00:47,030 Čo je to? 20 00:00:47,030 --> 00:00:48,679 >> Divákov: [nepočuteľné] 21 00:00:48,679 --> 00:00:51,720 DAVID Malan: Pojme všetky informácie, OK a aké druhy informácií 22 00:00:51,720 --> 00:00:53,186 Možno ste dal v ňom? 23 00:00:53,186 --> 00:00:54,590 >> Divákov: [nepočuteľné] 24 00:00:54,590 --> 00:00:56,450 >> DAVID Malan: Všetky informácie dáte do nej, dostanete späť. 25 00:00:56,450 --> 00:00:57,070 To je pravda. 26 00:00:57,070 --> 00:01:01,900 A na typické webové stránky alebo web Aplikácie, aké druhy informácií, 27 00:01:01,900 --> 00:01:03,385 špecificky, môžete dať? 28 00:01:03,385 --> 00:01:04,260 Divákov: [nepočuteľné] 29 00:01:04,260 --> 00:01:05,051 DAVID Malan: Používatelia. 30 00:01:05,051 --> 00:01:07,000 Takže to, čo je užívateľ? 31 00:01:07,000 --> 00:01:09,765 >> Divákov: [nepočuteľné] 32 00:01:09,765 --> 00:01:11,640 DAVID Malan: OK, zapísaná Užívateľ webu. 33 00:01:11,640 --> 00:01:15,100 A čo to znamená Úložisko informácií užívateľov? 34 00:01:15,100 --> 00:01:17,260 Čo komponuje používateľa? 35 00:01:17,260 --> 00:01:18,331 Užívateľ má čo? 36 00:01:18,331 --> 00:01:19,206 Divákov: [nepočuteľné] 37 00:01:19,206 --> 00:01:21,040 DAVID Malan: Jo, osobné Údaje, a to sa mi páči. 38 00:01:21,040 --> 00:01:21,970 Buďme presnejšie. 39 00:01:21,970 --> 00:01:25,275 Takže užívateľ má zvyčajne názov, čo iného by mohol používateľ mať? 40 00:01:25,275 --> 00:01:26,150 Divákov: [nepočuteľné] 41 00:01:26,150 --> 00:01:29,130 DAVID Malan: an addr-- OK, takže prvé meno, priezvisko. 42 00:01:29,130 --> 00:01:29,630 To je dobré. 43 00:01:29,630 --> 00:01:31,463 V skutočnosti, poďme opraviť , Pretože to sa deje 44 00:01:31,463 --> 00:01:35,010 otvoriť príležitosť pre diskusie, ešte ďalej. 45 00:01:35,010 --> 00:01:39,090 Krstné meno, priezvisko, pohlavie. 46 00:01:39,090 --> 00:01:41,820 47 00:01:41,820 --> 00:01:43,481 ID nejakého druhu. 48 00:01:43,481 --> 00:01:43,980 Čo ešte? 49 00:01:43,980 --> 00:01:45,438 Počul som niečo iné predtým, taky. 50 00:01:45,438 --> 00:01:51,600 E-mail, poštová adresa. 51 00:01:51,600 --> 00:01:58,170 >> Takže poďme tam pauzu a teraz považujú nie to, čo sme ukladanie v databáze, 52 00:01:58,170 --> 00:02:01,980 ale- a nie je dôvod, prečo, pretože je možná zrejmé, že akonáhle sa zaregistrujete užívateľa, 53 00:02:01,980 --> 00:02:03,730 Ak chcete pamätať na nejakú dobu. 54 00:02:03,730 --> 00:02:05,480 Nechcete, aby ju len byť uložený v pamäti RAM 55 00:02:05,480 --> 00:02:08,690 a byť tak forgotten-- zamerajme na how. 56 00:02:08,690 --> 00:02:11,700 >> Ukazuje sa, že v svet databáz, 57 00:02:11,700 --> 00:02:14,410 tú aspoň dva typy týchto dňoch. 58 00:02:14,410 --> 00:02:20,010 Niečo, čo nazýva SQL databáze, Štruktúrovaný Dopytovací Jazyk, 59 00:02:20,010 --> 00:02:24,770 alebo cutely pomenovaný, NoSQL, ktorý nie je SQL. 60 00:02:24,770 --> 00:02:26,980 A ten je príkladom toho, čo by mohlo 61 00:02:26,980 --> 00:02:30,660 nazvať objektovo orientovaný, alebo sklad objekt, databázy 62 00:02:30,660 --> 00:02:36,010 ktorý uchováva objekty, a nie výhovorkou me, ako skoro uvidíme, riadky. 63 00:02:36,010 --> 00:02:41,800 >> Takže sa budeme sústrediť len na krátky okamih na Prvý z nich, a síce, SQL 64 00:02:41,800 --> 00:02:46,850 databázy, aj keby len preto, že je tak známy už nikomu 65 00:02:46,850 --> 00:02:51,070 kto používa Excel alebo Tabuľky Google alebo Apple 66 00:02:51,070 --> 00:02:53,740 Čísla alebo akýkoľvek štandardný tabuľkový kalkulátor, 67 00:02:53,740 --> 00:02:56,040 alebo ekvivalentne, alebo viac sofistikovane, 68 00:02:56,040 --> 00:02:58,610 niečo ako Microsoft Access alebo Oracle 69 00:02:58,610 --> 00:03:03,890 alebo MySQL alebo PostgreSQL, z ktorých všetky sú názvy produktov pre implementácie 70 00:03:03,890 --> 00:03:04,865 z nasledujúceho nápadu. 71 00:03:04,865 --> 00:03:10,350 >> Relačnej databázy je jednoducho niečo, čo má riadkov a stĺpcov. 72 00:03:10,350 --> 00:03:12,850 A riadkov a stĺpcov, Doslova som na mysli niečo 73 00:03:12,850 --> 00:03:21,860 takto, tak kde by sme mohli mať názov poľa a svojho druhu tu. 74 00:03:21,860 --> 00:03:25,800 A skutočne, nechaj ma teraz začínajú mapovať tieto. 75 00:03:25,800 --> 00:03:29,420 Takže vlastne neviem Preto som nakreslil samostatný graf. 76 00:03:29,420 --> 00:03:30,780 Skúsme udržať tento jednoduchý. 77 00:03:30,780 --> 00:03:34,830 >> Máme právo tu Počiatky nášho stola, kde 78 00:03:34,830 --> 00:03:40,150 To je názov poľa a to je dátový typ, 79 00:03:40,150 --> 00:03:41,660 a podľa typu mám na mysli nasledujúce. 80 00:03:41,660 --> 00:03:45,510 Je to číslo, je to reťazec, krátky reťazec ako slovo, 81 00:03:45,510 --> 00:03:49,340 Je to bod, je to binárne údaje, ako obrázok? 82 00:03:49,340 --> 00:03:51,980 A nech to len dráždiť toto od seba na chvíľu. 83 00:03:51,980 --> 00:03:57,575 Takže prvé meno, číslo, string, veľký kus text-- 84 00:03:57,575 --> 00:03:58,450 Divákov: [nepočuteľné] 85 00:03:58,450 --> 00:03:59,616 DAVID Malan: Áno, tak reťazec. 86 00:03:59,616 --> 00:04:04,744 A v kontexte databázy, zmienime obvykle nazývajú toto pole char. 87 00:04:04,744 --> 00:04:07,660 Budem len povedať, char nateraz ale my sme bude rafinovať to za chvíľu. 88 00:04:07,660 --> 00:04:09,180 Charakter terénu. 89 00:04:09,180 --> 00:04:11,365 Posledný názov je pravdepodobne rovnaký. 90 00:04:11,365 --> 00:04:11,865 Pohlavie? 91 00:04:11,865 --> 00:04:16,230 92 00:04:16,230 --> 00:04:18,310 >> Muž alebo žena, tak to môže byť pole char. 93 00:04:18,310 --> 00:04:21,380 Mohlo by to byť buď citát, koniec citátu "Mužské" alebo citát, koniec citátu "ženské" 94 00:04:21,380 --> 00:04:23,650 alebo to môže byť m alebo f. 95 00:04:23,650 --> 00:04:26,540 Ak chcete byť viac inkluzívny, Možno budete potrebovať tretiu hodnotu 96 00:04:26,540 --> 00:04:28,640 alebo nejaký druh iné oblasti úplne. 97 00:04:28,640 --> 00:04:31,350 A tak môžete použiť true false. 98 00:04:31,350 --> 00:04:35,036 Pole by sa dalo nazvať mužskej a potom by sa dalo povedať true alebo false. 99 00:04:35,036 --> 00:04:38,160 Ale nemusí nutne zachytiť všetky informácie, ktoré by vás mohli chcieť. 100 00:04:38,160 --> 00:04:41,118 >> Tak to dopadá je tu iný typ pole, ktoré by mohli byť užitočné tu 101 00:04:41,118 --> 00:04:46,040 v typickom databáze, nazvaný ENUM, pokiaľ sa jedná o pole znak, 102 00:04:46,040 --> 00:04:50,480 ale tie, ktoré navrhujú, dostať zoznam možných hodnôt, 103 00:04:50,480 --> 00:04:54,630 ako citát, koniec citátu "mužské", citujem: unquote "ženské", a tak ďalej. 104 00:04:54,630 --> 00:04:57,620 Takže bez ohľadu na hodnotu je v databáze, 105 00:04:57,620 --> 00:05:00,670 je skutočne znakových, avšak musí byť jedna z týchto hodnôt. 106 00:05:00,670 --> 00:05:03,520 Pravdepodobne by sme nechceli ENUM pre krstné meno alebo priezvisko. 107 00:05:03,520 --> 00:05:05,630 V opačnom prípade budeme mať výpočet, ako názov 108 00:05:05,630 --> 00:05:09,570 pochádza z doslova každý je to možné krstné meno a priezvisko. 109 00:05:09,570 --> 00:05:13,960 >> OK, takže ID čo by malo byť ID? 110 00:05:13,960 --> 00:05:15,200 Áno, možno celý rad. 111 00:05:15,200 --> 00:05:17,870 Takže poďme držať sa že pre túto chvíľu, číslo. 112 00:05:17,870 --> 00:05:22,010 A podľa čísla, číslo je trochu príliš široká teraz. 113 00:05:22,010 --> 00:05:23,900 Na konci druhého deň, mám pocit, že sme 114 00:05:23,900 --> 00:05:25,280 malo byť o niečo presnejšie. 115 00:05:25,280 --> 00:05:29,280 Počet mohlo znamenať podobne, ho by mohlo byť niečo ako 1,236. 116 00:05:29,280 --> 00:05:31,500 A to asi nebude Čo máme na mysli ID. 117 00:05:31,500 --> 00:05:34,635 Čo máme na mysli pravdepodobne pomocou ID? 118 00:05:34,635 --> 00:05:36,382 >> Divákov: [nepočuteľné] 119 00:05:36,382 --> 00:05:38,590 DAVID Malan: Oh, OK, takže Možno to nie je ani číslo. 120 00:05:38,590 --> 00:05:42,840 Možno je to skutočne jedinečný identifikátor to je reťazec, rovnako ako užívateľské meno. 121 00:05:42,840 --> 00:05:44,580 Takže absolútne, by mohol byť. 122 00:05:44,580 --> 00:05:46,730 Myslím, že niekto pravdepodobne znamenalo numerický, hoci. 123 00:05:46,730 --> 00:05:48,460 Takže poďme zostať s tým. 124 00:05:48,460 --> 00:05:49,320 Aké číslo? 125 00:05:49,320 --> 00:05:51,960 Čo je viac precise-- celé číslo. 126 00:05:51,960 --> 00:05:56,710 Takže celá rada, ako 0, 1, 2, 3, takže budeme nazývať celé číslo. 127 00:05:56,710 --> 00:05:58,909 A aj potom, by som mohol byť hľadanie hníd, to je 128 00:05:58,909 --> 00:06:00,700 Nie je naozaj len Všeobecne číslo chcete. 129 00:06:00,700 --> 00:06:04,340 Pravdepodobne nechcú záporných hodnôt, len preto, že to jednoducho divné. 130 00:06:04,340 --> 00:06:06,070 Pravdepodobne budete chcieť kladné celé čísla. 131 00:06:06,070 --> 00:06:07,920 Takže môžete tiež vyjadriť že v databáze, 132 00:06:07,920 --> 00:06:09,450 ale teraz, budeme hovoriť číslo. 133 00:06:09,450 --> 00:06:10,650 >> E-mail? 134 00:06:10,650 --> 00:06:13,550 To je pravdepodobne prostě-- Čože? 135 00:06:13,550 --> 00:06:14,460 >> Divákov: [nepočuteľné] 136 00:06:14,460 --> 00:06:16,980 >> DAVID Malan: Je to e-mail, ale to postavy, nie? 137 00:06:16,980 --> 00:06:19,813 Má proste funky charakter ako "AT" symbol alebo niečo iné, 138 00:06:19,813 --> 00:06:21,580 ale je to stále pole znak. 139 00:06:21,580 --> 00:06:23,900 A poštová adresa? 140 00:06:23,900 --> 00:06:25,360 Charakter terénu. 141 00:06:25,360 --> 00:06:31,400 Tak to je pekný začiatok, ale buďme trochu presnejšie dnes. 142 00:06:31,400 --> 00:06:34,540 >> Tak to dopadá, že vo databázy, často 143 00:06:34,540 --> 00:06:39,120 majú na výber cez jemnejšie verzie týchto vecí. 144 00:06:39,120 --> 00:06:44,330 V skutočnosti, v typickom SQL databázy, SQL, alebo všeobecnejšie, relačné databázy, 145 00:06:44,330 --> 00:06:46,680 databáz s radmi a stĺpy, často 146 00:06:46,680 --> 00:06:53,610 dostať určiť nielen na type field-- dovoľte mi urobiť nejaké miestnosti here-- 147 00:06:53,610 --> 00:06:56,600 ale aj dĺžka. 148 00:06:56,600 --> 00:06:59,900 >> Tak, ako je krstné meno? 149 00:06:59,900 --> 00:07:07,060 Myslím, že D-A-V-I-D. OK, to mám ja Pravdepodobne práve urazil ako polovicu 150 00:07:07,060 --> 00:07:11,260 ľudí v miestnosti, vpravo, pretože vaše mená sú dlhšie ako päť 151 00:07:11,260 --> 00:07:16,608 listy, takže päť zdá byť trochu sebec a naivná, takže to, čo je lepšie hodnota? 152 00:07:16,608 --> 00:07:19,320 153 00:07:19,320 --> 00:07:24,330 10, v poriadku, a myslím, Sme v poriadku v miestnosti. 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 Prečo nemôžem vziať Prístup skôr, keď sme 157 00:07:29,540 --> 00:07:31,081 hovorili o polia a pamäti? 158 00:07:31,081 --> 00:07:32,450 Prečo nie ja len povedať, ako 1000? 159 00:07:32,450 --> 00:07:35,260 Názov nikto sa deje byť dlhší ako 1,000. 160 00:07:35,260 --> 00:07:36,706 Tlačiť späť. 161 00:07:36,706 --> 00:07:38,005 >> Divákov: [nepočuteľné] 162 00:07:38,005 --> 00:07:40,130 DAVID Malan: Jo, je to nehospodárne, vpravo, zvlášť 163 00:07:40,130 --> 00:07:44,630 ak väčšina názvy sú len päť alebo desať alebo 15 znakov, že je to veľmi nehospodárne. 164 00:07:44,630 --> 00:07:45,810 Tak viete čo? 165 00:07:45,810 --> 00:07:48,020 To je trochu ťažká otázka. 166 00:07:48,020 --> 00:07:51,721 Teraz môžeme určite analyzovať anglicky a názvy akomkoľvek inom jazyku je 167 00:07:51,721 --> 00:07:54,470 a prísť na to, no, čo je average-- priemer nie je naozaj 168 00:07:54,470 --> 00:07:57,150 pomôcť us-- čo je max je asi to, čo naozaj chceme. 169 00:07:57,150 --> 00:07:59,920 Ale ukazuje sa, máme dokonca niektorí voľba nad Sem. 170 00:07:59,920 --> 00:08:03,400 >> V typickom SQL databázy, budete majú niečo, čo nazýva char poľa 171 00:08:03,400 --> 00:08:07,505 a tiež varchar, V-A-R, variabilné pole char. 172 00:08:07,505 --> 00:08:08,630 A rozdiel je to. 173 00:08:08,630 --> 00:08:12,400 Char pole, tie, ktoré navrhujú, musieť zadať vopred 174 00:08:12,400 --> 00:08:14,900 Presná dĺžka poľa. 175 00:08:14,900 --> 00:08:20,530 Takže možno krstné meno rovnako ako 20 cíti trochu bezpečia. 176 00:08:20,530 --> 00:08:23,950 Možno budete musieť urobiť nejaké googling na uvidíme, či to stačí skutočne bezpečné. 177 00:08:23,950 --> 00:08:26,910 Tam je zrejme názov s 21 znaky, ale teraz, predpokladám 20 178 00:08:26,910 --> 00:08:27,620 je v bezpečí. 179 00:08:27,620 --> 00:08:30,070 >> Pole char by znamenalo v databáze, ktorá vám 180 00:08:30,070 --> 00:08:33,289 Používate 20 a vždy 20 znakmi. 181 00:08:33,289 --> 00:08:37,419 Teraz, keď je to len D-A-V-I-D, 15 z nich sú len bude prázdne znaky, 182 00:08:37,419 --> 00:08:40,450 ale stále používate všetkých 20 bajtov. 183 00:08:40,450 --> 00:08:46,302 Varchar poľa, naopak znamená, že reťazec by mal byť až 20 znakov 184 00:08:46,302 --> 00:08:48,260 ale keď je to len päť, ste len bude používať 185 00:08:48,260 --> 00:08:51,270 päť, možno šesť Aby Špeciálna hodnota na konci, 186 00:08:51,270 --> 00:08:54,980 ako ten 0 sme diskutovali, že znamená koniec znaku 187 00:08:54,980 --> 00:08:56,790 sekvencie v pamäti. 188 00:08:56,790 --> 00:08:59,950 >> Takže keď si o tom myslíš môžete si vybrať char 189 00:08:59,950 --> 00:09:05,240 proti varcharNebo vzhľadom na to, že trade-off? 190 00:09:05,240 --> 00:09:09,321 Char používa toľko charakterov, varchar používa viac ako toľko charakterov. 191 00:09:09,321 --> 00:09:10,196 Divákov: [nepočuteľné] 192 00:09:10,196 --> 00:09:13,859 193 00:09:13,859 --> 00:09:16,900 DAVID Malan: OK, keď viete, že dĺžka reťazca celkom presvedčivé 194 00:09:16,900 --> 00:09:19,316 stačí použiť char, pretože v prípade, ty to vieš, proste dať dole. 195 00:09:19,316 --> 00:09:23,390 A možno, že to platí aj pre zips kód, v Spojených štátoch, prinajmenšom, 02138, 196 00:09:23,390 --> 00:09:26,660 je to vždy bude päť znaky, kým sa pridať pomlčku štyri. 197 00:09:26,660 --> 00:09:29,750 Ale môžete mať nejaké hodnoty ktoré vždy viete dĺžku. 198 00:09:29,750 --> 00:09:32,310 Alebo štátne symboly, ako NY do New Yorku, 199 00:09:32,310 --> 00:09:33,811 a MA Massachusetts v USA. 200 00:09:33,811 --> 00:09:36,560 Možno ste si nejaké situácie kde to je úplne rozumné, 201 00:09:36,560 --> 00:09:39,520 ale podľa tejto logiky, prečo sú dokonca sme overthinking to? 202 00:09:39,520 --> 00:09:41,800 Prečo nie my stačí použiť varchar a potom sme len bude 203 00:09:41,800 --> 00:09:46,730 Vždy použite dve postavy tak ako tak, alebo Vždy použite päť znakov vlastne je? 204 00:09:46,730 --> 00:09:50,300 Prečo nie len uložiť varchar pre všetko tým, že touto logikou? 205 00:09:50,300 --> 00:09:51,677 Tam musí byť nejaký háčik. 206 00:09:51,677 --> 00:09:52,552 Divákov: [nepočuteľné] 207 00:09:52,552 --> 00:09:54,952 208 00:09:54,952 --> 00:09:56,660 DAVID Malan: Could napísať niečo zlé. 209 00:09:56,660 --> 00:09:58,090 Takže je to pravda. 210 00:09:58,090 --> 00:10:01,030 Ale aj vtedy, nemôžu používať viac pamäte, než som prideliť. 211 00:10:01,030 --> 00:10:03,340 Stále mám finále povedať, po celej dĺžke, 212 00:10:03,340 --> 00:10:06,780 takže nemôžu náhodne robiť že chyba, ale dobrá myšlienka. 213 00:10:06,780 --> 00:10:10,510 Je to jemnejšie, ale je to veľmi príbuzné do našej diskusie, vlastne polí 214 00:10:10,510 --> 00:10:12,390 a spojových zoznamov skôr. 215 00:10:12,390 --> 00:10:16,290 >> Ukazuje sa, že v databáze, ak vie, že všetky hodnoty sú 216 00:10:16,290 --> 00:10:19,250 pevnú dĺžku, a to aj v prípade, niektoré z týchto hodnôt sú prázdne, 217 00:10:19,250 --> 00:10:22,484 druh esteticky prázdny, D-A-V-I-D a potom 15 polotovary, 218 00:10:22,484 --> 00:10:24,650 Ukazuje sa, že ak by každý pole má rovnakú dĺžku, 219 00:10:24,650 --> 00:10:28,670 podobne ako pole mala všetky svoje veci chrbtom k sebe, aby chrbtom k sebe tak, aby 220 00:10:28,670 --> 00:10:33,480 môžete len plus 1 sa dostať do ďalšej hodnota Rovnaká myšlienka v tabuľke databázy. 221 00:10:33,480 --> 00:10:37,550 Ak sú všetky vaše postava Reťazce sú rovnako dlhé, 222 00:10:37,550 --> 00:10:39,390 Máte to, čo sa nazýva random access. 223 00:10:39,390 --> 00:10:41,850 Ak sú všetky reťazce sú Dĺžka 20, vy nie len 224 00:10:41,850 --> 00:10:45,230 robiť plus 1 stačí urobiť navyše 20 plus 20 plus 20 plus 20, 225 00:10:45,230 --> 00:10:48,775 a môžete veľmi rýchlo listovať alebo prehľadávať všetky vaše dáta. 226 00:10:48,775 --> 00:10:54,420 >> Premenná pole char, naopak, nemá vždy 20 znakov. 227 00:10:54,420 --> 00:10:58,000 To môže mať 20 a potom 15 a potom 19 a potom 10, 228 00:10:58,000 --> 00:11:00,720 a tak ak chcete vyhľadávať cez to, nemôžeš len slepo 229 00:11:00,720 --> 00:11:03,050 pridá sa 20 bajtov sa dostať na ten budúci. 230 00:11:03,050 --> 00:11:07,280 Doslova musieť prehľadávať preto, že okraj dátové štruktúry, 231 00:11:07,280 --> 00:11:08,340 ak chcete, je členitý. 232 00:11:08,340 --> 00:11:11,480 Je to trochu ide dovnútra a von vychádza na skutočnú dĺžku reťazca. 233 00:11:11,480 --> 00:11:14,460 Takže keď viete, dĺžku, ako Kareem hovorí, použiť pole char, 234 00:11:14,460 --> 00:11:16,460 pretože získavaš účinnosť je 235 00:11:16,460 --> 00:11:19,170 schopný prehľadávať rýchlejšie keď hľadáte pre dáta, ktoré, 236 00:11:19,170 --> 00:11:20,550 inak používať premenné. 237 00:11:20,550 --> 00:11:24,450 >> Bohužiaľ, nemám dobrú odpoveď na tom, ako dlho by mal byť názov, 238 00:11:24,450 --> 00:11:26,360 ale na niečo také meno, povedal by som, 239 00:11:26,360 --> 00:11:28,470 VARCHAR je obyčajný pretože to nebude 240 00:11:28,470 --> 00:11:30,430 byť pevnou dĺžkou pre každého. 241 00:11:30,430 --> 00:11:33,650 20, neviem, 20 cíti trochu tesný. 242 00:11:33,650 --> 00:11:36,460 Povedzme, 50, 50. 243 00:11:36,460 --> 00:11:39,210 To nie je naozaj niečo stať, že oveľa viac, povedzme 50 miesto 40, 244 00:11:39,210 --> 00:11:41,260 ale na nejakom mieste, budete potrebovať urobiť úsudok volanie. 245 00:11:41,260 --> 00:11:43,090 >> Veľmi časté, úprimne povedané, pre [? Historický?] 246 00:11:43,090 --> 00:11:47,670 Dôvody, aj keď je to prehnané, teda 255, pretože pred nejakým časom, 247 00:11:47,670 --> 00:11:51,440 v populárnych databázových systémov, ako MySQL, bezplatný open source nástroj 248 00:11:51,440 --> 00:11:53,790 že mnoho spoločností rovnako ako aj Facebook používa, 249 00:11:53,790 --> 00:11:56,654 to je maximálna predvolená takže ľudia jednoducho išiel s ním. 250 00:11:56,654 --> 00:11:59,070 Takže nie je nerozumné, ale budeme použite trochu viac intuíciu 251 00:11:59,070 --> 00:12:02,970 a povedať, či 50, to je asi trochu prehnané. 252 00:12:02,970 --> 00:12:05,720 >> Pohlavia, mám rád ENUM, a tak môžeme teda 253 00:12:05,720 --> 00:12:08,760 vymenovať mužom alebo ženou alebo možno efektívnejšie, 254 00:12:08,760 --> 00:12:13,420 m alebo f alebo nejaký iný symbolika, ale Výpočet cíti ako dobrá voľba tam. 255 00:12:13,420 --> 00:12:16,740 Aby bolo jasno, pohlavie by mohol byť len varchar 256 00:12:16,740 --> 00:12:19,090 A mohli by sme jednoducho všetko Súhlasíte s tým, ako milí ľudia, 257 00:12:19,090 --> 00:12:21,010 vždy dať rovnaké hodnoty tam. 258 00:12:21,010 --> 00:12:22,720 Muž alebo žena, alebo ktovie čo ešte. 259 00:12:22,720 --> 00:12:27,800 >> Ale problém teda je, že sme mohli urobiť chybu, pretože [nepočuteľné] navrhla 260 00:12:27,800 --> 00:12:29,140 skôr v inom kontexte. 261 00:12:29,140 --> 00:12:32,780 Ak urobíme chybu, mohli by sme získať nesprávne hodnoty v našej databáze. 262 00:12:32,780 --> 00:12:36,320 Takže to, čo je pekné o databázach ako Oracle a MySQL a ďalšie, 263 00:12:36,320 --> 00:12:39,280 je, že máte táto posledná Vrstva obranu kde 264 00:12:39,280 --> 00:12:43,010 administrátor DBA, databázy, kto je navrhovanie tejto tabuľky ako my 265 00:12:43,010 --> 00:12:46,440 sú slovne, mohli dať na miesto ENUM, že 266 00:12:46,440 --> 00:12:51,250 chráni proti tomu zadaním muž, žena, a tak nikto 267 00:12:51,250 --> 00:12:54,230 inde nie programátor môže náhodne vložiť inú hodnotu. 268 00:12:54,230 --> 00:12:55,480 Takže by to byť dobrá vec. 269 00:12:55,480 --> 00:12:56,660 To je vlastnosť. 270 00:12:56,660 --> 00:13:00,760 >> Takže ID, za predpokladu, že číselný identifikátor, Pravdepodobne by malo byť kladné celé číslo. 271 00:13:00,760 --> 00:13:04,380 A my niekedy majú príležitosťou na diskusiu o dĺžku. 272 00:13:04,380 --> 00:13:06,830 Vy nie typicky zadať číslo tu, 273 00:13:06,830 --> 00:13:11,310 by ste namiesto toho určiť, to je int, alebo veľký int, 274 00:13:11,310 --> 00:13:12,980 pretože sú typicky volal. 275 00:13:12,980 --> 00:13:18,840 Ale typicky, celé číslo by bolo, povedzme, 4 bajty. 276 00:13:18,840 --> 00:13:23,694 A či je to 4 bajty, To je, koľko bitov? 277 00:13:23,694 --> 00:13:24,630 >> Divákov: [nepočuteľné] 278 00:13:24,630 --> 00:13:26,610 >> DAVID Malan: 32 bitov. 279 00:13:26,610 --> 00:13:30,270 Tak koľko užívateľov môžeme mať v naše databázy v prípade, že všetci majú identifikátor 280 00:13:30,270 --> 00:13:33,320 a toto číslo musí byť jedinečný? 281 00:13:33,320 --> 00:13:36,780 32 bitov znamená, že máme vzory jeden, dva, tri, štyri, five-- 282 00:13:36,780 --> 00:13:41,000 Tak ako veľa rôznych vzorov z núl a tie môžete mať, ak existujú 32? 283 00:13:41,000 --> 00:13:43,235 To je to isté ako pýtať, čo to dva na 32? 284 00:13:43,235 --> 00:13:46,472 285 00:13:46,472 --> 00:13:48,430 Je to veľké číslo, ktoré Nemôžem dosť dostať v poriadku, 286 00:13:48,430 --> 00:13:50,270 ale viem, že je to zhruba 4 miliardy. 287 00:13:50,270 --> 00:13:53,970 Takže to znamená, že vaša databáza tabuľka môže majú štyri miliardy užívateľov a to je všetko. 288 00:13:53,970 --> 00:13:56,410 >> Takže je to zaujímavá Design implikácie. 289 00:13:56,410 --> 00:14:00,840 Slušný počet spoločností sa rozhodli, možno nie toľko 290 00:14:00,840 --> 00:14:04,860 k ich stolu užívateľa, pretože majú 4 miliardy užívateľov je vzácny problém. 291 00:14:04,860 --> 00:14:08,410 To je akýsi Facebook štýlu Problém, nie je typický spoločnosť problém. 292 00:14:08,410 --> 00:14:12,670 Ale možno, ak máte protokolov transakcií alebo nejaký druh dát, ktoré sa neustále 293 00:14:12,670 --> 00:14:15,610 dostane zapísaný do databázy že absolútne mohla mať miliardy 294 00:14:15,610 --> 00:14:18,900 a miliardy riadkov, a Ak použijete číslo na to, 295 00:14:18,900 --> 00:14:22,750 čo sa stane, akonáhle dostanete do riadku číslo 4 miliardy 296 00:14:22,750 --> 00:14:26,210 a potom skúste vložiť 4000000000. a 1, tak povediac? 297 00:14:26,210 --> 00:14:29,610 Ja zjednodušenie čísla trochu. 298 00:14:29,610 --> 00:14:33,740 >> Môžete znížiť späť, mám na mysli vás musieť zvládnuť nejako. 299 00:14:33,740 --> 00:14:37,910 A aký počítač bude typicky robiť, premýšľať o tom ani z dnešného rána, 300 00:14:37,910 --> 00:14:42,430 ak máte 4-bitovú hodnotu ako 1, 1, 1, 1, ktorý, 301 00:14:42,430 --> 00:14:44,920 len zviazať ráno spoločne popoludní, čo 302 00:14:44,920 --> 00:14:48,369 nemá toto číslo predstavuje v binárnej? 303 00:14:48,369 --> 00:14:49,410 OK, budeme robiť to jednoduchšie. 304 00:14:49,410 --> 00:14:53,310 Čo toto číslo predstavujú v binárnej? 305 00:14:53,310 --> 00:14:56,794 OK, budeme robiť to jednoduchšie, aká to predstavuje v binárnej? 306 00:14:56,794 --> 00:14:57,460 Divákov: Tri. 307 00:14:57,460 --> 00:14:59,670 DAVID Malan: Tri, pretože máme tie column-- 308 00:14:59,670 --> 00:15:00,450 [Smiech], 309 00:15:00,450 --> 00:15:01,350 Uff! 310 00:15:01,350 --> 00:15:03,980 Mali sme stĺpec ones a stĺpec dvojky. 311 00:15:03,980 --> 00:15:07,250 Takže predpokladám, že skutočne naše [? infield?] neboli 32 bitov, 312 00:15:07,250 --> 00:15:13,440 ale to bolo dva bity, môžeme počítať od užívateľa číslo 0, 1, 2, 3, 313 00:15:13,440 --> 00:15:18,040 a potom sme trochu späť k užívateľovi 00 znova. 314 00:15:18,040 --> 00:15:19,739 Tak toto je to, čo zvyčajne sa stane. 315 00:15:19,739 --> 00:15:22,780 Ak ste niekedy počuli expression-- Pravdepodobne nie, ale ak have-- 316 00:15:22,780 --> 00:15:26,500 integer overflow, kde vás zachovať obracející všetky svoje bity 317 00:15:26,500 --> 00:15:29,640 byť najväčšie možné hodnoty, a potom ste mimo bitov, 318 00:15:29,640 --> 00:15:30,850 čo by sa obvykle stalo? 319 00:15:30,850 --> 00:15:32,280 Prečo to hovorím 00? 320 00:15:32,280 --> 00:15:33,220 No, to je tri. 321 00:15:33,220 --> 00:15:34,230 Ako môžem reprezentovať štyri? 322 00:15:34,230 --> 00:15:36,890 323 00:15:36,890 --> 00:15:38,915 Ako môžem reprezentovať pre číslo 4 v binárnej? 324 00:15:38,915 --> 00:15:39,790 Divákov: [nepočuteľné] 325 00:15:39,790 --> 00:15:41,780 DAVID Malan: One-- jo, Nehovorte 100 samy o sebe, 326 00:15:41,780 --> 00:15:44,190 pretože má zlý konotácie, ale 1-0-0. 327 00:15:44,190 --> 00:15:48,920 Takže číslo 1-0-0 je vskutku v poriadku, ale ak máte len dva bity, 328 00:15:48,920 --> 00:15:50,820 Čo ste vlastne urobil? 329 00:15:50,820 --> 00:15:53,219 Vy ste sa prevalil na 00. 330 00:15:53,219 --> 00:15:54,760 A vskutku, že to, čo by sa stalo. 331 00:15:54,760 --> 00:15:56,884 V skutočnosti si môžete myslieť o tom známejší. 332 00:15:56,884 --> 00:15:59,350 Ak si spomínate, čo, pred 16 rokmi, svet 333 00:15:59,350 --> 00:16:03,380 mal skončiť, keď Problém Y2K stalo. 334 00:16:03,380 --> 00:16:04,330 Prečo tomu tak bolo? 335 00:16:04,330 --> 00:16:08,170 No väčšina počítačov, pre rozumné rozhodnutie, 336 00:16:08,170 --> 00:16:15,320 bolo ukladanie čísel podobne ako rok 1975 alebo rok 1999 337 00:16:15,320 --> 00:16:19,010 len pomocou dvoch číslic V pamäti počítača. 338 00:16:19,010 --> 00:16:21,950 Takže samozrejme, čo sa stane, keď sa dostanete do roku 2000, 339 00:16:21,950 --> 00:16:25,790 pôjdete do toho, alebo skôr, jo. 340 00:16:25,790 --> 00:16:30,120 Takže idete do roku 2000, ale v prípade, používate iba dve číslice to vyzerá 341 00:16:30,120 --> 00:16:32,660 rovnako ako v roku 00 a Takže si prevrátil. 342 00:16:32,660 --> 00:16:36,820 A to je dôvod, prečo mnoho systémov potreboval byť aktualizované v tej dobe. 343 00:16:36,820 --> 00:16:42,500 >> Takže s tým povedal, firmy ako Facebook naráža na to. 344 00:16:42,500 --> 00:16:46,147 Takže jediný spôsob, ako zaobchádzať s Situácia, úprimne povedané, je to predvídať. 345 00:16:46,147 --> 00:16:47,980 Alebo najčistejšie spôsob, ako zvládnuť túto situáciu 346 00:16:47,980 --> 00:16:50,330 Je to predvídať, takže nemusíte musieť vykonať zmeny neskôr. 347 00:16:50,330 --> 00:16:51,970 Takže miesto 8 bajtov, viete čo? 348 00:16:51,970 --> 00:16:54,261 Ja budem pokrokové tu, aj keď je to 349 00:16:54,261 --> 00:16:56,760 trochu optimistický, že budeme mať 4 miliardy 350 00:16:56,760 --> 00:16:58,850 a 1 ľudí na našich webových stránkach. 351 00:16:58,850 --> 00:17:01,790 Ale poďme stačí použiť 8 bajtov, alebo 64 bitov, ktoré by vo všeobecnosti mali byť 352 00:17:01,790 --> 00:17:05,640 volal veľké číslo, veľmi technický. 353 00:17:05,640 --> 00:17:10,280 A to práve znamená, že môžete mať ešte viac číslic vášho čísla. 354 00:17:10,280 --> 00:17:12,599 Ale to je dôležitý Rozhodnutie dizajn, 355 00:17:12,599 --> 00:17:16,400 pretože ak si vybrať číslo, ktoré má príliš málo kúskov výraznosti 356 00:17:16,400 --> 00:17:19,089 by ste mohli skutočne vytvoriť chyba v softvéri. 357 00:17:19,089 --> 00:17:21,750 >> V poriadku, takže môžeme zabaliť s e-maily a poštovú adresu. 358 00:17:21,750 --> 00:17:26,369 Tak e-mail, ako dlho by mal e-mailová adresa bude? 359 00:17:26,369 --> 00:17:26,869 50. 360 00:17:26,869 --> 00:17:29,220 Naozaj netuším, ale je to Pravdepodobne niečo také, 361 00:17:29,220 --> 00:17:32,261 pretože inak nikto to bude napísať vás, ak sa dostane príliš dlho, takže 50, 362 00:17:32,261 --> 00:17:33,360 ideme s ním teraz. 363 00:17:33,360 --> 00:17:35,770 Adresa, ako dlho by to bolo? 364 00:17:35,770 --> 00:17:38,325 365 00:17:38,325 --> 00:17:39,200 Divákov: [nepočuteľné] 366 00:17:39,200 --> 00:17:41,900 367 00:17:41,900 --> 00:17:43,890 >> DAVID Malan: Nejde len poštové smerovacie číslo, hoci. 368 00:17:43,890 --> 00:17:45,720 Poštová adresa, počul som. 369 00:17:45,720 --> 00:17:50,720 Takže to je ako 1 Brattle námestie, čiarka, Cambridge Mass., čiarka, 02138. 370 00:17:50,720 --> 00:17:53,860 A v skutočnosti, dovoľte mi stačí vytiahnuť up trochu listu tu. 371 00:17:53,860 --> 00:17:56,510 Tento pocit, ako by to premárnená príležitosť. 372 00:17:56,510 --> 00:18:01,480 Ak máme 1 Brattle námestie, čiarka, Cambridge MA 02138, 373 00:18:01,480 --> 00:18:04,510 Mám pocit, že môžeme robiť lepšie než len poštovú adresu. 374 00:18:04,510 --> 00:18:07,100 Prečo nie my explodovať to trochu? 375 00:18:07,100 --> 00:18:08,030 Čo mám ide? 376 00:18:08,030 --> 00:18:10,970 Čo by sme mali mať miesto Pre naše riadkov tu, snáď? 377 00:18:10,970 --> 00:18:12,260 >> Divákov: [nepočuteľné] 378 00:18:12,260 --> 00:18:17,579 >> DAVID Malan: Jo, tak sa poďme nazývajú street_number, 379 00:18:17,579 --> 00:18:20,620 a podčiarkovník je len obyčajný spôsob, ako s čo vyzerá ako priestor, 380 00:18:20,620 --> 00:18:22,360 ale nie je to v skutočnosti. 381 00:18:22,360 --> 00:18:26,240 Street, a potom city-- ľúto? 382 00:18:26,240 --> 00:18:28,440 >> Divákov: [nepočuteľné] 383 00:18:28,440 --> 00:18:29,690 DAVID Malan: Mohli by sme to urobiť. 384 00:18:29,690 --> 00:18:30,702 Linka jedno, riadok dva. 385 00:18:30,702 --> 00:18:32,410 Prečo sa budeme držať to jednoduché pre teraz, 386 00:18:32,410 --> 00:18:34,840 ale to je úplne prijateľné rozhodnutie. 387 00:18:34,840 --> 00:18:38,180 A potom stať, a potom sa poďme byť trochu US-centric nateraz 388 00:18:38,180 --> 00:18:42,040 a jednoducho poštové smerovacie číslo, len preto, bude to viesť k zaujímavým omylom 389 00:18:42,040 --> 00:18:43,090 alebo problém tu. 390 00:18:43,090 --> 00:18:44,655 Takže predpokladám, že teraz našu adresu. 391 00:18:44,655 --> 00:18:47,280 Je to trochu nepríjemné, že máme všetky tieto viac polí, 392 00:18:47,280 --> 00:18:49,200 ale teraz môžeme označiť veci trochu lepšie. 393 00:18:49,200 --> 00:18:53,210 >> Takže teraz ulica číslo pravdepodobne by nemala byť char, by malo? 394 00:18:53,210 --> 00:18:54,835 Čo by to malo byť? 395 00:18:54,835 --> 00:18:55,710 Divákov: [nepočuteľné] 396 00:18:55,710 --> 00:18:57,835 DAVID Malan: Možno, že celá rada ako zase celé číslo? 397 00:18:57,835 --> 00:19:00,170 Veľkú integer? 398 00:19:00,170 --> 00:19:02,170 pravdepodobne nežijú na 4 miliardy Main Street 399 00:19:02,170 --> 00:19:03,490 alebo niečo šialené takhle. 400 00:19:03,490 --> 00:19:06,850 Takže celé číslo je pravdepodobne v poriadku, ale má niekoho 401 00:19:06,850 --> 00:19:13,880 kedy žil na adrese ako 1A Brattle námestia, alebo 1 a 1/2? 402 00:19:13,880 --> 00:19:17,030 Tieto veci existujú, bohužiaľ, aj keď ste tam žili, 403 00:19:17,030 --> 00:19:21,240 sú tieto anomálie ako byt 1A, 1B, 1C. 404 00:19:21,240 --> 00:19:24,260 Tak viete čo, my pravdepodobne by nemalo ísť s celým číslom, 405 00:19:24,260 --> 00:19:27,440 inak ideme stratiť niektoré predaja. 406 00:19:27,440 --> 00:19:29,920 >> Char pole, možno? 407 00:19:29,920 --> 00:19:30,870 Neviem, ako dlho. 408 00:19:30,870 --> 00:19:33,370 To asi nebude Tak dlho, tak 10 alebo tak niečo. 409 00:19:33,370 --> 00:19:34,950 Nikto sa bude písať dlhšia číslo, možno. 410 00:19:34,950 --> 00:19:37,070 Ale opäť, mali by sme pravdepodobne dať viac myslel na to. 411 00:19:37,070 --> 00:19:39,900 Možno google, urobiť nejaký výskum, ale pôjdeme so svojimi vnútornosťami pre túto chvíľu. 412 00:19:39,900 --> 00:19:44,565 Ulíc, char, 50, neviem. 413 00:19:44,565 --> 00:19:46,940 Na nejakom mieste, nikto sa deje písať na obálke, 414 00:19:46,940 --> 00:19:49,350 taky, takže je to asi Niektoré horná hranica tam. 415 00:19:49,350 --> 00:19:54,200 City, rovnaký, jasne, takže char 50. 416 00:19:54,200 --> 00:19:59,120 >> Štát môže byť US-centric zatiaľ. 417 00:19:59,120 --> 00:20:01,850 Takže by to mohlo byť zoznam, taký láskavý z úsudku, štátne. 418 00:20:01,850 --> 00:20:04,000 Mohlo by to byť ako dva znaky. 419 00:20:04,000 --> 00:20:06,140 Takže vlastne, možno, som si hovoril char. 420 00:20:06,140 --> 00:20:09,420 Asi som na mysli varchar, len na nejakú účinnosť, 421 00:20:09,420 --> 00:20:12,240 ale vrátime k toto rozhodnutie za chvíľu. 422 00:20:12,240 --> 00:20:16,150 Mohol by to byť char s dĺžkou 2 pre štát. 423 00:20:16,150 --> 00:20:20,670 Ak v Spojených štátoch, ktoré majú, rovnako ako MA, Massachusetts, NY, New York, NJ, New 424 00:20:20,670 --> 00:20:22,100 Jersey, a tak ďalej. 425 00:20:22,100 --> 00:20:23,630 Takže by to mohlo byť stanovená na to. 426 00:20:23,630 --> 00:20:25,900 DC pre Washington DC. 427 00:20:25,900 --> 00:20:29,915 >> Ale myslím si, Olivier, budete Navrhovaná iný prístup. 428 00:20:29,915 --> 00:20:30,790 Divákov: [nepočuteľné] 429 00:20:30,790 --> 00:20:33,670 DAVID Malan: Jo, takže je to Trochu nepríjemné písať, 430 00:20:33,670 --> 00:20:37,890 ale zoznam by mohol dávať väčší zmysel, preto, že týmto spôsobom, aspoň v USA, 431 00:20:37,890 --> 00:20:41,320 by ste mohli vymenovať, ak zdĺhavo, ale to urobiť len raz v databáze 432 00:20:41,320 --> 00:20:47,480 a nikdy nebudete musieť premýšľať o tom, to sú všetky 50 dvoch-znakové kódy. 433 00:20:47,480 --> 00:20:48,660 Tak som rád ENUM. 434 00:20:48,660 --> 00:20:51,720 Držme sa, že tam, pretože Tak nejako presadzuje väčšiu prísnosť. 435 00:20:51,720 --> 00:20:53,620 A potom sa poštové smerovacie číslo? 436 00:20:53,620 --> 00:20:55,306 Myslím, že Andrew mal myšlienku na to 437 00:20:55,306 --> 00:20:56,180 Divákov: [nepočuteľné] 438 00:20:56,180 --> 00:20:57,240 DAVID Malan: Jo, päť alebo deväť. 439 00:20:57,240 --> 00:20:58,323 Povedzme, aby to jednoduché. 440 00:20:58,323 --> 00:20:59,380 Len to, päť pre túto chvíľu. 441 00:20:59,380 --> 00:21:03,070 Ale možno som mohol len robiť celé číslo, nie? 442 00:21:03,070 --> 00:21:08,750 Mohol by som, ale viete, čo som urobil Táto chyba raz, v istom zmysle. 443 00:21:08,750 --> 00:21:13,110 Pred rokmi som bol migráciu z Microsoft Outlook do služby Gmail, 444 00:21:13,110 --> 00:21:18,640 a Outlook má spôsob, ako export všetky svoje kontakty ako súbor programu Excel, 445 00:21:18,640 --> 00:21:21,280 CSV súboru, oddelené čiarkami súbor hodnôt. 446 00:21:21,280 --> 00:21:23,950 A ja som urobil chybu, ja myslím, dvojité kliknutím na neho, 447 00:21:23,950 --> 00:21:27,380 Raz som stiahol vývoz k dispozícii uistite sa, že to vyzeralo, ako som očakával. 448 00:21:27,380 --> 00:21:31,320 Musím mať hit uložiť alebo nechať auto-save kop alebo tak niečo. 449 00:21:31,320 --> 00:21:35,100 Pretože keď som potom importované to do Gmailu, to všetko funguje. 450 00:21:35,100 --> 00:21:39,910 Ale po celé roky, k tomuto dňu, a Urobil som to päť, pred 10 rokmi, 451 00:21:39,910 --> 00:21:44,380 Som stále nájsť priateľov, ktorí majú adresy, ktoré vyzerajú ako tento. 452 00:21:44,380 --> 00:21:45,700 Prečo? 453 00:21:45,700 --> 00:21:47,900 >> Divákov: [nepočuteľné] 454 00:21:47,900 --> 00:21:50,650 >> DAVID Malan: Trvalo tlačidiel 0, no, skôr ju 455 00:21:50,650 --> 00:21:53,810 vzal celú poštové smerovacie číslo as veľké množstvo, a preto je 456 00:21:53,810 --> 00:21:56,590 predné 0, čo znamená, nemá žiadny význam. 457 00:21:56,590 --> 00:21:59,470 A tak 2138 sa zdá byť moje poštové smerovacie číslo. 458 00:21:59,470 --> 00:22:07,100 A to je, úprimne povedané, nepríjemné Excel Funkcia čím myslím, že v predvolenom nastavení, 459 00:22:07,100 --> 00:22:10,980 aj keby to znamenalo len byť text, Microsoft Excel 460 00:22:10,980 --> 00:22:13,780 rozhodne, nechaj ma byť užitočné, a oh, vidím len čísla. 461 00:22:13,780 --> 00:22:15,290 Poďme zaobchádzajú s tými ako čísla. 462 00:22:15,290 --> 00:22:16,790 A to skráti úvodnej nuly. 463 00:22:16,790 --> 00:22:19,165 >> Prisahám bohu, každý pár mesiacov som nájsť adresu, 464 00:22:19,165 --> 00:22:22,300 a von z akejsi OCD, idem naspäť dovnútra a pridajte 0, aj keď som nikdy 465 00:22:22,300 --> 00:22:23,700 poslať ľuďom listy alebo čokoľvek. 466 00:22:23,700 --> 00:22:25,510 Ale ja stále nachádzame zvyšky toto. 467 00:22:25,510 --> 00:22:28,820 Takže to znamená, že je to dobrý nápad? 468 00:22:28,820 --> 00:22:31,610 OK, nie, pretože každý v Massachusetts, v tejto oblasti, 469 00:22:31,610 --> 00:22:33,270 bude mať O ich vedúci. 470 00:22:33,270 --> 00:22:38,070 Takže poďme sa ako char, pravdepodobne päť. 471 00:22:38,070 --> 00:22:41,450 >> A tu, my si uvedomiť, mohol použiť ENUM a my 472 00:22:41,450 --> 00:22:44,600 mohol vymenovať 10,000 Možné poštových smerovacích čísel 473 00:22:44,600 --> 00:22:48,530 ale že sa cíti, ako by to zrejme kríženie linku, apod výhody. 474 00:22:48,530 --> 00:22:51,350 Ak máte na vstupe, ktorý veľa dát do databázy 475 00:22:51,350 --> 00:22:52,940 k ochrane proti niečomu. 476 00:22:52,940 --> 00:22:57,400 Takže char si uvedomil, stačí napísať v H-E-L-L-O ako vaše PSČ, 477 00:22:57,400 --> 00:22:59,180 ktorá nie je, samozrejme, numerické. 478 00:22:59,180 --> 00:23:01,680 Takže neexistuje žiadny spôsob, v typická databázy, 479 00:23:01,680 --> 00:23:05,561 špecifikovať iba číselné a len päť znakov, 480 00:23:05,561 --> 00:23:07,310 takže budeme mať k tomu, že v kóde. 481 00:23:07,310 --> 00:23:11,100 Budeme k tomu, že v PHP alebo Java alebo čokoľvek jazyka sme 482 00:23:11,100 --> 00:23:14,230 použitie na serveri vynútiť tento druh obmedzenia. 483 00:23:14,230 --> 00:23:14,860 >> Whoo! 484 00:23:14,860 --> 00:23:18,322 V poriadku, takže všetky otázky ešte nie? 485 00:23:18,322 --> 00:23:19,780 Poďme rozhodovať iný vzor. 486 00:23:19,780 --> 00:23:22,500 Ukazuje sa, že vás Tiež si musíme vybrať, 487 00:23:22,500 --> 00:23:26,600 Pri navrhovaní databázy SQL, alebo typické relačné database-- kde 488 00:23:26,600 --> 00:23:28,790 Znovu, relačné len znamená riadkov a stĺpcov, 489 00:23:28,790 --> 00:23:35,500 To je, ako organizovať svoje data-- a uvedomiť si, že to, čo to znamená, 490 00:23:35,500 --> 00:23:37,740 Bol som zavádzajúce že som to drawing-- 491 00:23:37,740 --> 00:23:40,190 je to, čo sa nazýva schéma pre databázové tabuľky. 492 00:23:40,190 --> 00:23:42,810 To je ako špecifikácia pre table-- 493 00:23:42,810 --> 00:23:48,040 ale keď príde čas skutočne ukladanie dát, 494 00:23:48,040 --> 00:23:52,081 a budeme to robiť len príkladom tu. 495 00:23:52,081 --> 00:23:55,080 Idem otvoriť Excel, pretože Excel mi dá riadkov a stĺpcov. 496 00:23:55,080 --> 00:23:58,050 A to je presne to, čo Oracle a MySQL a ďalšie nástroje mi dá. 497 00:23:58,050 --> 00:24:02,270 Takže som jednoducho ísť na použitie to kvôli diskusie je. 498 00:24:02,270 --> 00:24:05,250 Nechaj ma ísť dopredu a otvoriť Zástupca dokument tu 499 00:24:05,250 --> 00:24:06,310 priblížiť trochu. 500 00:24:06,310 --> 00:24:15,200 Tak napríklad, naše hlavičky sú teraz krstné meno, priezvisko, pohlavie, číslo, 501 00:24:15,200 --> 00:24:20,980 e-mail, číslo popisné, ulice, pokriky. 502 00:24:20,980 --> 00:24:25,710 Ulica, mesto, štát, len o vojde na obrazovke. 503 00:24:25,710 --> 00:24:29,080 >> Takže to, čo to znamená, že keď Užívateľ najskôr zaregistruje mojich webových stránkach, 504 00:24:29,080 --> 00:24:32,880 že to bude niečo podobné Dávid, Malan, m, povedzme 1, 505 00:24:32,880 --> 00:24:42,910 malan@harvard.edu, bude číslo popisné byť ako 1 Brattle Square, Cambridge, Massachusetts, 506 00:24:42,910 --> 00:24:44,780 02.138, a potom tak ďalej. 507 00:24:44,780 --> 00:24:48,290 Takže keď poviem, že relačné databázy alebo SQL databázy je riadkov a stĺpcov, 508 00:24:48,290 --> 00:24:49,350 Mám na mysli to. 509 00:24:49,350 --> 00:24:51,900 Že skutočná dáta sú ukladané do riadkov a stĺpcov. 510 00:24:51,900 --> 00:24:53,950 Je to len náhoda, že sme hovorili, 511 00:24:53,950 --> 00:24:56,033 a ja som jednoducho kreslenie v riadkoch a stĺpcoch. 512 00:24:56,033 --> 00:24:58,320 To je len schéma, zastrešujúcej definície. 513 00:24:58,320 --> 00:25:01,640 >> Takže z týchto polí tu, alebo ekvivalentne, tam, 514 00:25:01,640 --> 00:25:06,270 čo sú oblasti, ktoré si myslíte Som pravdepodobne hľadať na tom, či som používateľ 515 00:25:06,270 --> 00:25:09,200 alebo či som správcu databázy? 516 00:25:09,200 --> 00:25:12,426 Rovnako ako to, čo som ja polí vlastne bude hľadať ďalej? 517 00:25:12,426 --> 00:25:13,830 >> Divákov: [nepočuteľné] 518 00:25:13,830 --> 00:25:17,690 >> DAVID Malan: Meno, jo tak Páči sa mi, to-- jo, 519 00:25:17,690 --> 00:25:19,750 e-mail môže byť celkom bežné. 520 00:25:19,750 --> 00:25:21,440 Je nám ľúto, povedal meno. 521 00:25:21,440 --> 00:25:24,030 Takže maybe-- a znova, my sme druh hovoriť abstraktne. 522 00:25:24,030 --> 00:25:25,988 Neviem, prečo by si bude hľadať mená, 523 00:25:25,988 --> 00:25:29,340 ale že sa cíti rozumné, ak hľadáte pre užívateľov. 524 00:25:29,340 --> 00:25:31,170 Možno sa uvádza, iste, ID. 525 00:25:31,170 --> 00:25:34,100 526 00:25:34,100 --> 00:25:36,160 >> A je to klzké sklon, pretože som mohol 527 00:25:36,160 --> 00:25:38,890 vymyslieť scenár, kde Možno, že môj šéf požiadal ma, 528 00:25:38,890 --> 00:25:40,417 koľko mužov máme na našich stránkach? 529 00:25:40,417 --> 00:25:42,000 Koľko žien máme na našich stránkach? 530 00:25:42,000 --> 00:25:45,210 A tak na tom mieste, možno budete chcieť vyhľadávať v oblasti žien a mužov, príliš, 531 00:25:45,210 --> 00:25:45,940 a nič iné. 532 00:25:45,940 --> 00:25:47,350 Takže tam je tu trade-off. 533 00:25:47,350 --> 00:25:49,180 Opäť platí, že neexistuje správna odpoveď, ale existujú 534 00:25:49,180 --> 00:25:53,760 je funkcia vo väčšine databáz SQL známy ako indexovanie, pričom 535 00:25:53,760 --> 00:25:56,100 vy, návrhár sa správcu databázy, 536 00:25:56,100 --> 00:26:01,730 dostať sa dopredu rozhodnúť, ktorý oblastí informačných technológií databáza by mala optimalizovať 537 00:26:01,730 --> 00:26:02,980 pri vyhľadávaní. 538 00:26:02,980 --> 00:26:07,620 >> Dalo by sa povedať veľmi naivne, optimalizovať to, že optimalizovať, optimalizovať to, 539 00:26:07,620 --> 00:26:10,300 optimalizovať, že aj to, a databázy bude 540 00:26:10,300 --> 00:26:14,882 urobiť nejaké magické veci pod kapucňa a robiť niečo takým spôsobom, 541 00:26:14,882 --> 00:26:17,090 že až sa nabudúce budete hľadať Na niektoré z týchto polí, 542 00:26:17,090 --> 00:26:18,400 to bude v skutočnosti byť rýchlejší. 543 00:26:18,400 --> 00:26:19,110 Je to možné. 544 00:26:19,110 --> 00:26:20,530 To nezruší samo. 545 00:26:20,530 --> 00:26:22,500 Ale tam musí byť cena, ktorú zaplatil. 546 00:26:22,500 --> 00:26:27,220 >> Ak sa vám naivne, alebo príliš nadšene povedzme, index všetkých týchto oblastiach, 547 00:26:27,220 --> 00:26:29,810 tak povediac, aby boli všetky efektívne vyhľadávať, 548 00:26:29,810 --> 00:26:31,625 akú cenu sú pravdepodobne platiť? 549 00:26:31,625 --> 00:26:32,500 Divákov: [nepočuteľné] 550 00:26:32,500 --> 00:26:33,090 DAVID Malan: Performance. 551 00:26:33,090 --> 00:26:33,798 Čo tým myslíte? 552 00:26:33,798 --> 00:26:37,380 Aj výkonnosť, aspoň v kontext som diskutovať, je teraz lepšie. 553 00:26:37,380 --> 00:26:38,830 To je definícia indexovanie. 554 00:26:38,830 --> 00:26:41,180 To bude robiť vyhľadávanie rýchlejšie. 555 00:26:41,180 --> 00:26:43,366 Takže čas klesá, tak povediac. 556 00:26:43,366 --> 00:26:44,240 Divákov: [nepočuteľné] 557 00:26:44,240 --> 00:26:45,031 DAVID Malan: Space. 558 00:26:45,031 --> 00:26:46,520 Takže znovu, ide o bežný obchod. 559 00:26:46,520 --> 00:26:50,820 Môžem urýchliť vyhľadávanie, ale je to bude stáť viac bajtov priestoru. 560 00:26:50,820 --> 00:26:51,610 Prečo? 561 00:26:51,610 --> 00:26:55,230 No, v predvolenom nastavení, ak máme žiadny z Tieto červené hviezdy, žiadny z týchto indexov, 562 00:26:55,230 --> 00:26:58,797 ako hovorím, ako si hľadať mená v tejto databáze? 563 00:26:58,797 --> 00:27:00,630 Takže poďme čerpať naše Pozornosť na tento príklad. 564 00:27:00,630 --> 00:27:06,300 Ak máme Davida a Scullyová a Kareem a Arwa a iní v týchto radoch, 565 00:27:06,300 --> 00:27:06,910 napríklad. 566 00:27:06,910 --> 00:27:08,390 >> Takže poďme robiť presne to. 567 00:27:08,390 --> 00:27:13,990 Scullyová je tu, a potom máme Kareem a Arwa, 568 00:27:13,990 --> 00:27:18,390 a všetci ostatní, ak nemáte majú definovaný index, tak povediac, 569 00:27:18,390 --> 00:27:20,160 najlepšie, čo môžete urobiť, je lineárna hľadanie. 570 00:27:20,160 --> 00:27:23,470 Ak hľadáte Arwa, nie sme bude môcť skočiť priamo na ňu 571 00:27:23,470 --> 00:27:24,140 rýchlo. 572 00:27:24,140 --> 00:27:26,556 Chystáme sa začať vrchol a ísť celú cestu až na dno, 573 00:27:26,556 --> 00:27:28,600 nie na rozdiel od nášho pôvodného Príkladom Mike Smith. 574 00:27:28,600 --> 00:27:33,470 >> Ak však hovorím, hej, databázy, Index krstné meno poľa, 575 00:27:33,470 --> 00:27:37,000 potom to bude niečo robiť milovník a podporovať niečo 576 00:27:37,000 --> 00:27:38,130 ako binárne vyhľadávanie. 577 00:27:38,130 --> 00:27:39,820 Pravdepodobne to nie je binárne vyhľadávanie samo o sebe. 578 00:27:39,820 --> 00:27:42,810 Databáza majú tendenciu používať iný dátová štruktúra volal b-stromy, 579 00:27:42,810 --> 00:27:46,540 nesmie zamieňať s binárnymi stromy, že jednoducho robiť to rýchlejšie vyhľadávanie 580 00:27:46,540 --> 00:27:48,500 niečo logaritmickej v prírode. 581 00:27:48,500 --> 00:27:53,510 Ale cena, ktorú zaplatíte vybudovať, že vlastnosť, že štruktúra dát v pamäti, 582 00:27:53,510 --> 00:27:54,570 je viac bytov. 583 00:27:54,570 --> 00:27:57,170 Tak to by mohlo trvať niekoľko megabajtov, Niektoré GB, kto vie? 584 00:27:57,170 --> 00:27:58,410 Záleží na type dát. 585 00:27:58,410 --> 00:28:02,640 >> Takže na nejakom mieste, musíte sa rozhodnúť, to asi nie je bežný prípad. 586 00:28:02,640 --> 00:28:06,000 Takže aké sú skutočné spoločné Prípady, či naozaj musel vybrať, 587 00:28:06,000 --> 00:28:10,080 čo by mohlo byť vaše obľúbené pole? 588 00:28:10,080 --> 00:28:10,580 E-mailu. 589 00:28:10,580 --> 00:28:14,400 A páči sa mi EMAIL, pretože e-mail, Teoreticky by mal byť jedinečný. 590 00:28:14,400 --> 00:28:17,650 A tak obvykle, keď viete, vopred, že jeden z vašich polí 591 00:28:17,650 --> 00:28:20,277 je alebo bude jedinečný, že inklinuje byť dobrým poľa 592 00:28:20,277 --> 00:28:22,860 hľadať ďalej, pretože týmto spôsobom, pri hľadaní niečoho, 593 00:28:22,860 --> 00:28:26,194 budete sa dostať späť jeden alebo nulu odpovede a potom máte hotovo. 594 00:28:26,194 --> 00:28:28,110 Nemusíte sa držať hľadá napriek tomu iní. 595 00:28:28,110 --> 00:28:31,992 >> A tak v tomto prípade tu, e-mail, tak dlho, ako si nemožno registrovať dvakrát 596 00:28:31,992 --> 00:28:33,450 s rovnakým e-mailu, je dobrý. 597 00:28:33,450 --> 00:28:36,710 ID podľa definície v computer science world, 598 00:28:36,710 --> 00:28:39,610 ak hovoríte o ID, že mali lepšie byť jedinečný. 599 00:28:39,610 --> 00:28:42,970 To je niečo ako konotácie ID alebo identifikátor. 600 00:28:42,970 --> 00:28:46,440 A zvyšok z nich by mohlo byť, volajme ich pekné vyvolených, 601 00:28:46,440 --> 00:28:47,860 ale nie v skutočnosti nutná. 602 00:28:47,860 --> 00:28:49,976 >> A tak v databáze, určíte indexy, 603 00:28:49,976 --> 00:28:51,350 ale môže byť ešte presnejší. 604 00:28:51,350 --> 00:28:56,060 Môžete povedať, hej, databázy, uistite sa, ID, že každý v tejto tabuľke je jedinečný. 605 00:28:56,060 --> 00:28:59,330 Ani sa nechať programátor náhodne dať do duplicitné e-mailu 606 00:28:59,330 --> 00:29:00,740 alebo duplicitné ID číslo. 607 00:29:00,740 --> 00:29:03,140 Toľko ako výpočty chrániť nás podobne, vám 608 00:29:03,140 --> 00:29:04,881 môžu mať tieto obrany nižšej úrovne. 609 00:29:04,881 --> 00:29:07,130 A tak návrh databázy, v nejaký zmysel, je celkom sranda, 610 00:29:07,130 --> 00:29:08,380 pretože si to defenzívne. 611 00:29:08,380 --> 00:29:11,460 Môžete tak nejako predpokladá, že budete pracovať s hrozné, hrozné programátorov 612 00:29:11,460 --> 00:29:15,550 a chcete, aby v čo najväčšom počte obrany ako sa môžete chrániť svoje dáta, 613 00:29:15,550 --> 00:29:18,940 ale zároveň chcete aby im pomohla lepším výkonom 614 00:29:18,940 --> 00:29:21,386 výberom, ktorý Pole optimalizovať. 615 00:29:21,386 --> 00:29:24,260 Ale nemôžete byť nutne to v vákuum, ako sme trochu tu. 616 00:29:24,260 --> 00:29:26,480 Musíš vedieť, aké sú tieto spoločné prípady bytia. 617 00:29:26,480 --> 00:29:29,397 V prípade, že vývojári sú vykonávacie adresár, 618 00:29:29,397 --> 00:29:32,230 môžete veľmi dobre chcete byť schopní vyhľadávať na takmer vo všetkých oblastiach, 619 00:29:32,230 --> 00:29:33,830 Len podľa charakteru aplikácie. 620 00:29:33,830 --> 00:29:37,910 Takže možno budete tráviť že dodatočný priestor. 621 00:29:37,910 --> 00:29:39,090 >> Správne, nejaké otázky? 622 00:29:39,090 --> 00:29:41,820 623 00:29:41,820 --> 00:29:42,486 Jo. 624 00:29:42,486 --> 00:29:43,470 >> Divákov: [nepočuteľné] 625 00:29:43,470 --> 00:29:44,404 >> DAVID Malan: Nie. 626 00:29:44,404 --> 00:29:45,279 >> Divákov: [nepočuteľné] 627 00:29:45,279 --> 00:29:47,840 628 00:29:47,840 --> 00:29:48,826 >> DAVID Malan: OK. 629 00:29:48,826 --> 00:29:49,701 >> Divákov: [nepočuteľné] 630 00:29:49,701 --> 00:29:52,420 631 00:29:52,420 --> 00:29:54,850 >> DAVID Malan: Oh, takže sme Reč je svojím spôsobom 632 00:29:54,850 --> 00:29:57,940 Teraz je to úplne jazyk agnostik. 633 00:29:57,940 --> 00:30:02,370 Takže sme teraz hovoríme o relačnej databázy všeobecnejšie 634 00:30:02,370 --> 00:30:04,760 alebo SQL databáz všeobecnejšie. 635 00:30:04,760 --> 00:30:06,870 >> Divákov: [nepočuteľné] 636 00:30:06,870 --> 00:30:10,030 >> DAVID Malan: Lepšie slovo používať sa môže použiť každý jazyk. 637 00:30:10,030 --> 00:30:15,280 Takže môžem písať kód JavaScript, C kód, C ++ kódu, kód v jazyku Java, Ruby kód, 638 00:30:15,280 --> 00:30:19,010 z ktorých všetky hovoriť s databázy a spúšťať dotazy. 639 00:30:19,010 --> 00:30:22,310 V skutočnosti to nie je zlé segue príkladného dotazu. 640 00:30:22,310 --> 00:30:25,720 A opäť, my nebudeme ísť do Java alebo C ++ alebo nič z toho už, 641 00:30:25,720 --> 00:30:29,420 ale v SQL, jazyk, ktorý držím s odkazom, Structured Query Language, 642 00:30:29,420 --> 00:30:32,790 to samo o sebe je programovací jazyk, ale je to znamenalo, ktoré majú byť použité pre žiadny 643 00:30:32,790 --> 00:30:37,330 prekvapenie, Structured Query otázky. 644 00:30:37,330 --> 00:30:38,660 >> Tým mám na mysli to. 645 00:30:38,660 --> 00:30:41,190 Tak, ako si vybrať dáta z databázy MySQL 646 00:30:41,190 --> 00:30:49,330 Je doslova písať vo svojom programe niečo ako vyberte hviezdu zo strany užívateľov. 647 00:30:49,330 --> 00:30:52,200 Som za predpokladu, že táto tabuľka, odteraz sa nazýva užívateľov. 648 00:30:52,200 --> 00:30:54,860 Aj to by mohlo hovoriť čokoľvek chceme, ale tento druh dáva zmysel. 649 00:30:54,860 --> 00:30:57,240 A tak select je veľmi Spoločný sloveso, ak vás 650 00:30:57,240 --> 00:30:59,290 bude v SQL, ktorá doslova robí. 651 00:30:59,290 --> 00:31:02,730 Čo si myslíte star znamená, že v tomto kontexte? 652 00:31:02,730 --> 00:31:04,410 >> Divákov: [nepočuteľné] 653 00:31:04,410 --> 00:31:05,380 >> DAVID Malan: Je mi to ľúto? 654 00:31:05,380 --> 00:31:06,300 >> Divákov: [nepočuteľné] 655 00:31:06,300 --> 00:31:09,580 >> DAVID Malan: Nie je nutná, je to obsažnejšie než to, že v skutočnosti. 656 00:31:09,580 --> 00:31:11,700 Je to postava divoké karty. 657 00:31:11,700 --> 00:31:14,740 Hviezda takmer vždy znamená čokoľvek, tak to znamená, že v tomto prípade, 658 00:31:14,740 --> 00:31:16,510 vybrať všetko z databázy. 659 00:31:16,510 --> 00:31:20,730 Takže keď to hovorím, mám na mysli vráť mi každý stĺpec 660 00:31:20,730 --> 00:31:22,440 z môjho stola s názvom užívateľa. 661 00:31:22,440 --> 00:31:24,730 Tak daj mi sadu výsledkov, ako sa volá. 662 00:31:24,730 --> 00:31:28,210 Inými slovami, daj mi kópiu tabuľkový procesor, je to, čo som dostať na adrese. 663 00:31:28,210 --> 00:31:34,890 >> Ale keby som povedal, vyberte hviezda od užívateľov kde ID je rovné 1, aká veľká by mala 664 00:31:34,890 --> 00:31:36,640 môj výsledok set bude ďalej? 665 00:31:36,640 --> 00:31:41,680 Alebo ekvivalentne, mali koľko riadkov Ja sa vrátil z databázy? 666 00:31:41,680 --> 00:31:45,860 Pravdepodobne len jedno, či mám naozaj zaobchádzané ID ako jedinečný identifikátor, 667 00:31:45,860 --> 00:31:50,710 a ak je David má tento jedinečný identifikátor, I by sme sa vrátiť jeden a iba jeden riadok 668 00:31:50,710 --> 00:31:53,220 obsahujúce všetky Dávidovej informácií. 669 00:31:53,220 --> 00:31:56,390 Keby som povedal, kde ID sa rovná 99, mal by som sa vrátiť, 670 00:31:56,390 --> 00:32:00,320 v tejto súvislosti, nulový počet riadkov, aspoň v súčasnosti. 671 00:32:00,320 --> 00:32:03,620 >> Avšak, keď nemám naozaj starostlivosti o všetkých týchto informácií, 672 00:32:03,620 --> 00:32:06,970 Mohol by som len povedať, odkiaľ David žije? 673 00:32:06,970 --> 00:32:10,860 Vybrať poštové smerovacie číslo od Užívatelia kde ID je 1. 674 00:32:10,860 --> 00:32:15,820 Tým sa vyberú ku mne len Dávidov zips kód a nie celistvosť tohto riadku. 675 00:32:15,820 --> 00:32:19,541 Prečo by som to miesto robiť hviezda dotazu, divoké karty? 676 00:32:19,541 --> 00:32:21,950 >> Divákov: [nepočuteľné] 677 00:32:21,950 --> 00:32:24,590 >> DAVID Malan: Jo, ja by som mohol potrebovať iba ju. 678 00:32:24,590 --> 00:32:26,350 Takže výkon je opäť odpoveď tu. 679 00:32:26,350 --> 00:32:28,540 Prečo žiadať viac Informácie, ako je potreba, 680 00:32:28,540 --> 00:32:32,020 pretože aj keď je to v poriadku dohromady, stále máte skopírovať tieto dáta 681 00:32:32,020 --> 00:32:35,560 Zdalo by sa, z databázy do svojho programu nejakým spôsobom, 682 00:32:35,560 --> 00:32:38,490 a to je jednoducho hlúpe, ak vás Jediné, čo potrebujete päť z týchto číslic, 683 00:32:38,490 --> 00:32:40,340 Nie je celistvosť riadku. 684 00:32:40,340 --> 00:32:42,180 >> Tak ako mám vložiť užívateľa? 685 00:32:42,180 --> 00:32:44,780 Predpokladajme, že používateľ má práve registrované prvýkrát. 686 00:32:44,780 --> 00:32:46,560 Syntax by zvyčajne vyzerať napríklad takto. 687 00:32:46,560 --> 00:32:52,700 Vložiť do užívateľov, a potom by sme povedať hodnoty, 688 00:32:52,700 --> 00:33:00,150 a potom by sme povedať hodnoty ako, povedzme, Lauren Scullyovou, 689 00:33:00,150 --> 00:33:02,380 tu náš kameraman. 690 00:33:02,380 --> 00:33:04,390 A ďalšie pole pohlavia. 691 00:33:04,390 --> 00:33:08,020 Takže budeme hovoriť citát, koniec citátu "F", potom máme ID 692 00:33:08,020 --> 00:33:12,250 a budem say-- poďme predstierať, že to nie je vlastne tu, 693 00:33:12,250 --> 00:33:14,380 takže budeme vzad v príbehu. 694 00:33:14,380 --> 00:33:16,530 Takže 2 bude jej číslo. 695 00:33:16,530 --> 00:33:19,130 A potom ďalšie pole Tu je jej e-mail. 696 00:33:19,130 --> 00:33:22,140 Takže to bude ako Lauren Scullyová a tak ďalej, 697 00:33:22,140 --> 00:33:24,360 a my jednoducho dot dot dot ho odtiaľ ďalej. 698 00:33:24,360 --> 00:33:26,890 Teraz to bude trochu zdĺhavé, ale vložka dotaz 699 00:33:26,890 --> 00:33:28,310 by nakoniec vyzerať takto. 700 00:33:28,310 --> 00:33:30,970 >> Ak chcem zbaviť Scully, uh-oh, poďme odhlásiť 701 00:33:30,970 --> 00:33:37,420 ju, ona odstráni svoj účet, zmazať od užívateľov, kde ID sa rovná 2, 702 00:33:37,420 --> 00:33:38,500 sa zbaviť Scullyovej. 703 00:33:38,500 --> 00:33:48,050 Alebo môžem povedať aktualizovať užívatelia nastaviť, povedzme, čo by sme mohli zmeniť? 704 00:33:48,050 --> 00:33:49,430 Predpokladajme, že sa pohybuje. 705 00:33:49,430 --> 00:33:53,730 Set zips rovná 021-- ani náhodou, že je jej súčasný zips. 706 00:33:53,730 --> 00:33:54,487 90210. 707 00:33:54,487 --> 00:33:56,320 Jedinou ďalšie poštové smerovacie číslo Viem, že vo svete. 708 00:33:56,320 --> 00:33:59,002 Takže sa zmení Jej zips code-- v skutočnosti, 709 00:33:59,002 --> 00:34:00,460 že by sa zmeniť jej PSČ. 710 00:34:00,460 --> 00:34:02,170 >> Čo som práve urobil? 711 00:34:02,170 --> 00:34:04,292 Aj napriek tomu, že syntax je pravdepodobne nová. 712 00:34:04,292 --> 00:34:05,302 >> Divákov: [nepočuteľné] 713 00:34:05,302 --> 00:34:08,010 DAVID Malan: Jo, presťahoval som všetkým Beverly Hills v Kalifornii. 714 00:34:08,010 --> 00:34:11,920 Takže by som mal vlastne povedať, kde ID rovná 2. 715 00:34:11,920 --> 00:34:12,820 A tak ďalej. 716 00:34:12,820 --> 00:34:15,290 Takže SQL je všetko okolo nich druhy inštrukcií. 717 00:34:15,290 --> 00:34:20,260 Vyberte, vkladať, odstraňovať, aktualizovať s týmito predikátu na konci 718 00:34:20,260 --> 00:34:22,139 Tieto doložky, kde sa tak povediac. 719 00:34:22,139 --> 00:34:25,170 A je tu oveľa viac môžete áno, ale je to naozaj len scvrkáva 720 00:34:25,170 --> 00:34:29,750 jednoducho, ak arcanely, vyjadrujúce čo chcete databázy robiť. 721 00:34:29,750 --> 00:34:31,580 >> A potom databázy bude zistiť, kedy 722 00:34:31,580 --> 00:34:35,630 Vložíte Lauren Scullyová do databázy, kde ju dať do pamäti 723 00:34:35,630 --> 00:34:38,230 takže môžeme veľmi rýchlo dostať ju na základe jej e-mailovej adresy 724 00:34:38,230 --> 00:34:42,610 alebo na základe svojej identifikačné číslo alebo podobne. 725 00:34:42,610 --> 00:34:43,391 Jo, Dan. 726 00:34:43,391 --> 00:34:44,266 Divákov: [nepočuteľné] 727 00:34:44,266 --> 00:34:46,364 728 00:34:46,364 --> 00:34:47,780 DAVID Malan: Naozaj dobrá otázka. 729 00:34:47,780 --> 00:34:50,370 Budú tieto skripty zmeniť z Microsoft Access do Oracle 730 00:34:50,370 --> 00:34:52,290 MySQL do PostgreSQL? 731 00:34:52,290 --> 00:34:53,790 Stručná odpoveď je, že záleží na okolnostiach. 732 00:34:53,790 --> 00:34:58,697 V teórii, je veľmi významný spoločný podmnožinou SQL 733 00:34:58,697 --> 00:35:00,780 ktorý je zdieľaný naprieč všetkými týchto implementácií. 734 00:35:00,780 --> 00:35:03,340 Avšak, rôzni výrobcovia majú pridané funkcie 735 00:35:03,340 --> 00:35:07,120 ku svojim databázam robiť určité veci nad rámec týchto funkcií, 736 00:35:07,120 --> 00:35:08,720 ktoré by mohli v skutočnosti zlomiť. 737 00:35:08,720 --> 00:35:11,210 >> Takže vývojári akým zaistenie proti tomu, 738 00:35:11,210 --> 00:35:14,350 je to, že skôr než písať surovej SQL kód ako píšem tu, 739 00:35:14,350 --> 00:35:19,460 oni namiesto toho používať knižnicu, spoločná knižnica, ktorá sama o sebe 740 00:35:19,460 --> 00:35:23,650 je trochu vyššej úrovni a súhrny vzdialenosti, ktorá produkt, ktorý používate. 741 00:35:23,650 --> 00:35:25,710 A to vám dáva Funkcie a procedúry 742 00:35:25,710 --> 00:35:28,810 zavolať, takže už nikdy v skutočnosti napísať surové SQL. 743 00:35:28,810 --> 00:35:32,609 >> V teórii, potom môžete zmeniť Výrobky z Oracle Microsoft 744 00:35:32,609 --> 00:35:34,650 alebo vice versa, alebo niečo inde, a tie doslova 745 00:35:34,650 --> 00:35:36,920 Zmena nič o kóde. 746 00:35:36,920 --> 00:35:40,180 Skutočnosťou však je, že niekedy vzdať funkcie ako výsledok. 747 00:35:40,180 --> 00:35:43,860 Možno ste si vybrali výrobky, pretože to má tieto funkcie s pridanou hodnotou, 748 00:35:43,860 --> 00:35:46,610 a vy ste práve teraz nie je ich použitie vedome. 749 00:35:46,610 --> 00:35:51,630 >> A anecdotally, väčšina spoločností tendenciu Nikdy sa vzdialiť od svojej databázy. 750 00:35:51,630 --> 00:35:54,002 Takže aj keď je to pekné majú funkciu, realita 751 00:35:54,002 --> 00:35:55,960 znamená, že ak ste reorganizáciu databázy, že ste 752 00:35:55,960 --> 00:35:59,890 pravdepodobne robiť kytice ďalších zmien tak ako tak, že vy nie nevyhnutne 753 00:35:59,890 --> 00:36:01,360 treba predpokladať, že. 754 00:36:01,360 --> 00:36:03,720 Takže je to zrejme over-inžinierske problém, 755 00:36:03,720 --> 00:36:05,670 ale záleží na kontextu. 756 00:36:05,670 --> 00:36:09,960 Ale teoreticky, SQL je zdieľaná cez tieto rôzne produkty. 757 00:36:09,960 --> 00:36:11,560 Naozaj dobré otázky. 758 00:36:11,560 --> 00:36:12,272 Jo. 759 00:36:12,272 --> 00:36:13,147 >> Divákov: [nepočuteľné] 760 00:36:13,147 --> 00:36:17,820 761 00:36:17,820 --> 00:36:21,480 >> DAVID Malan: Jo, si môžete myslieť databázu 762 00:36:21,480 --> 00:36:25,020 je len server, na konci deň, a vo vnútri tohto servera 763 00:36:25,020 --> 00:36:28,670 je celý rad stoly, riadkov a stĺpcov. 764 00:36:28,670 --> 00:36:33,410 A pri odoslaní dotazu takhle zo svojho programu, vaše webové stránky, 765 00:36:33,410 --> 00:36:39,340 napísaný v jazyku Java, Ruby, Python, čokoľvek, server prijíma tento príkaz 766 00:36:39,340 --> 00:36:41,660 a výkladu vo doslova rovnakým spôsobom 767 00:36:41,660 --> 00:36:43,660 sme diskutovali skôr s interpretovaný jazyk, 768 00:36:43,660 --> 00:36:47,333 a potom sa vykonáva nejakú akciu na nulu alebo viac riadkov v nula alebo viac tabuliek. 769 00:36:47,333 --> 00:36:48,208 Divákov: [nepočuteľné] 770 00:36:48,208 --> 00:36:53,540 771 00:36:53,540 --> 00:36:55,070 >> DAVID Malan: Presne tak, presne tak. 772 00:36:55,070 --> 00:36:58,450 Takže v pseudokódu na niečo ako by to mohlo byť toto. 773 00:36:58,450 --> 00:37:02,450 Vo vašom PHP súboru alebo Váš Python súbor alebo vaše Java súbor, 774 00:37:02,450 --> 00:37:09,210 budete musieť pseudocode kód, alebo Stieracie-ako kamene, ako, ak používateľ navštívi 775 00:37:09,210 --> 00:37:19,870 acme.com/register~~V prvýkrát, vložte do používateľa a tak ďalej. 776 00:37:19,870 --> 00:37:22,619 A my by sme si to preložiť do viac kódu betón do konca roka. 777 00:37:22,619 --> 00:37:24,660 Ale vážne, všetci sme základné stavebné kamene tu 778 00:37:24,660 --> 00:37:27,680 aj keď sme preskakovanie niektorých z vykonávacích opatrení. 779 00:37:27,680 --> 00:37:31,560 >> Dovoľte mi teda nájsť chybu s tým, čo úžasne urobil pred chvíľou. 780 00:37:31,560 --> 00:37:36,470 Vytvorili ste pekne celá tabuľka pre užívateľov. 781 00:37:36,470 --> 00:37:38,920 Je pravda, že by sme mohli realizovať že v niekoľkými rôznymi spôsobmi, 782 00:37:38,920 --> 00:37:43,030 ale vy ste v skutočnosti nás viedli dole path-- a hovorím vám, 783 00:37:43,030 --> 00:37:48,080 ale je to asi moje fault-- z dosť Implementácia neefektívne databázy. 784 00:37:48,080 --> 00:37:49,950 Nie je to normalizovať. 785 00:37:49,950 --> 00:37:52,320 >> A tým myslím normalizovaná tam bude, 786 00:37:52,320 --> 00:37:57,380 v priebehu času, významná redundancia, a teda neefektívnosť, 787 00:37:57,380 --> 00:38:00,210 to je plytvanie miestom. 788 00:38:00,210 --> 00:38:05,650 Na len to, čo vidíte tu, môže založený môžete si predstaviť, ak to plytvanie miestom 789 00:38:05,650 --> 00:38:08,710 sa chystá pochádzajú, v priebehu doby, ako viac a viac užívateľov registrovať 790 00:38:08,710 --> 00:38:10,860 pre vaše webové stránky? 791 00:38:10,860 --> 00:38:13,047 Aké dáta sa môže stať nadbytočné? 792 00:38:13,047 --> 00:38:19,084 793 00:38:19,084 --> 00:38:20,940 >> Divákov: [nepočuteľné] 794 00:38:20,940 --> 00:38:22,686 >> DAVID Malan: Prečo myslíš, že? 795 00:38:22,686 --> 00:38:23,561 Divákov: [nepočuteľné] 796 00:38:23,561 --> 00:38:32,180 797 00:38:32,180 --> 00:38:32,930 DAVID Malan: Jo. 798 00:38:32,930 --> 00:38:35,622 A predpokladajme, že na účely Od dnešného dňa, že je to pravda. 799 00:38:35,622 --> 00:38:38,330 Ukázalo sa, a my sme sa naučili toto tvrdo, že to nie je pravda. 800 00:38:38,330 --> 00:38:41,670 Nejako viacerých mestách, nejako rovnaké poštové smerovacie číslo, 801 00:38:41,670 --> 00:38:43,390 ktorý poruší toto nádherné intuíciu. 802 00:38:43,390 --> 00:38:46,180 Ale predpokladajme, že je to pravda, pretože je to takmer vždy pravda. 803 00:38:46,180 --> 00:38:51,390 Takže predpokladám, že poštové smerovacie číslo je vždy spojená s rovnakým mestom 804 00:38:51,390 --> 00:38:53,600 a štát, ktorý je láskavý primerané predpokladu, 805 00:38:53,600 --> 00:38:54,840 ale nesprávne, to dopadá. 806 00:38:54,840 --> 00:38:57,310 Ale rozumný predpoklad pre dnešné účely. 807 00:38:57,310 --> 00:39:01,650 >> Potom predpokladám, že žijem v Cambridge, MA, podľa tabuľky tohto používateľa, 808 00:39:01,650 --> 00:39:04,100 a predpokladám, že Lauren Scullyová žije v Cambridge, Massachusetts, 809 00:39:04,100 --> 00:39:06,120 a predpokladám, že Kareem žije v Cambridge, Massachusetts, 810 00:39:06,120 --> 00:39:10,400 a Arwa žije v Cambridge, MA, každý z nás v 02138. 811 00:39:10,400 --> 00:39:15,890 Prečo sme si pamätať Cambridge, MA, 02138 pre všetky štyri z nás? 812 00:39:15,890 --> 00:39:18,903 Čo by malo stačiť mať na pamäti? 813 00:39:18,903 --> 00:39:20,249 >> Divákov: [nepočuteľné] 814 00:39:20,249 --> 00:39:21,540 DAVID Malan: Len poštové smerovacie číslo. 815 00:39:21,540 --> 00:39:25,080 Len to 02.138 existuje, pretože Viete, čo by sme mohli robiť? 816 00:39:25,080 --> 00:39:32,650 Mohli by sme si trochu fantázie tu a tu, definovať iné tabuľky 817 00:39:32,650 --> 00:39:35,850 kde to má byť meno, to bude druh, 818 00:39:35,850 --> 00:39:38,840 to bude, že je Dĺžka a odteraz, som 819 00:39:38,840 --> 00:39:42,900 bude nazývať môj miest tabuľky. 820 00:39:42,900 --> 00:39:47,011 To bolo volané, z Samozrejme, že moje užívatelia tabuľky. 821 00:39:47,011 --> 00:39:49,885 A tak čo by som mal dať sem pre moju miest stôl, myslíš? 822 00:39:49,885 --> 00:39:53,605 823 00:39:53,605 --> 00:39:54,535 >> Divákov: [nepočuteľné] 824 00:39:54,535 --> 00:39:55,930 >> DAVID Malan: Jo. 825 00:39:55,930 --> 00:40:01,440 Takže zips a štát a mesto. 826 00:40:01,440 --> 00:40:05,350 A tak typu tu, budeme hovoriť to bude char 5 znovu, 827 00:40:05,350 --> 00:40:06,750 s výhradou na diskusiu o skôr. 828 00:40:06,750 --> 00:40:14,810 To bude zoznam, snáď ako skôr, a mesto bude varchar 50. 829 00:40:14,810 --> 00:40:17,960 A tak teraz Čo získam vymazať z tejto tabuľky 830 00:40:17,960 --> 00:40:21,995 eliminovať neefektívnosť, že? 831 00:40:21,995 --> 00:40:23,100 >> Divákov: [nepočuteľné] 832 00:40:23,100 --> 00:40:23,850 DAVID Malan: Nice. 833 00:40:23,850 --> 00:40:30,239 Štátne a mestské ísť preč, takže som teraz eliminovať potenciálne neefektívnosť 834 00:40:30,239 --> 00:40:33,280 pre zapamätanie redundantne, Cambridge, MA, Cambridge, MA, Cambridge, MA, 835 00:40:33,280 --> 00:40:35,712 Cambridge, MA, čo dúfajme sa nikdy nezmení. 836 00:40:35,712 --> 00:40:37,670 A aj keď to robí, to je minorly nepríjemné, teraz 837 00:40:37,670 --> 00:40:39,750 že musím zmeniť že v niekoľkých radoch, 838 00:40:39,750 --> 00:40:43,770 zatiaľ čo tu, mohol som len zmeňte ju na jednom mieste. 839 00:40:43,770 --> 00:40:46,890 >> A teraz, čo je trade-off, snáď? 840 00:40:46,890 --> 00:40:48,020 To bolo mimoriadne výhodné. 841 00:40:48,020 --> 00:40:50,730 Mal všetky svoje dáta pekne pohromade. 842 00:40:50,730 --> 00:40:53,644 Ale čo je jednoznačne tento prípad teraz? 843 00:40:53,644 --> 00:40:55,684 >> Divákov: [nepočuteľné] 844 00:40:55,684 --> 00:40:58,100 DAVID Malan: Presne tak, a ja rád, že ste použili slovo pripojiť, 845 00:40:58,100 --> 00:41:01,320 pretože to je skutočne kľúčové slovo, vo svete relačných databáz 846 00:41:01,320 --> 00:41:05,270 v SQL, je to skutočné slovo, Možno typ alebo aspoň oznámiť. 847 00:41:05,270 --> 00:41:09,280 A v skutočnosti to, čo teraz máme robiť zvoliť Dávidov úplné informácie 848 00:41:09,280 --> 00:41:19,700 niečo ako select hviezda z Používatelia, pripojiť miest, on-- a teraz 849 00:41:19,700 --> 00:41:24,010 Chystám sa len presunúť na druhý riadok takže tento fits-- users.zip rovná 850 00:41:24,010 --> 00:41:34,570 cities.zip, kde users.ID rovná1. 851 00:41:34,570 --> 00:41:35,550 >> Tak čo sa deje? 852 00:41:35,550 --> 00:41:38,970 Je to škaredé hľadať, ale môžete druh čítať to zľava doprava, zhora nadol. 853 00:41:38,970 --> 00:41:41,030 Vybrať hviezda od užívateľov je rovnaké ako predtým, 854 00:41:41,030 --> 00:41:42,930 ale nie je to od užívateľov, sú samy o sebe. 855 00:41:42,930 --> 00:41:45,910 Je to od užívateľov pripojiť miest. 856 00:41:45,910 --> 00:41:48,520 Čo mám spájajúci tieto dva stoly ďalej? 857 00:41:48,520 --> 00:41:51,820 No, zdá sa, že Členovia Tabuľky zips poľa, 858 00:41:51,820 --> 00:41:54,810 a toto obdobie je len špeciálne Syntax vyjadriť túto myšlienku, 859 00:41:54,810 --> 00:41:58,130 A toto je mesta tabuľky zips poľa. 860 00:41:58,130 --> 00:42:01,580 Chcem tí dvaja sa rovná, ale ja chcem, aby nakoniec vybrať 861 00:42:01,580 --> 00:42:06,280 len tie riadky, kde ID v tabuľke užívateľov 862 00:42:06,280 --> 00:42:08,730 rovná 1, čo zhodou okolností moja. 863 00:42:08,730 --> 00:42:11,781 >> A len preto, aby bolo jasno, je programátor, typicky pri 864 00:42:11,781 --> 00:42:14,780 napevno niečo podobné čísla 1, pretože inak len webové stránky 865 00:42:14,780 --> 00:42:17,630 podporuje Davida alebo Úplne prvý užívateľ, budete 866 00:42:17,630 --> 00:42:20,720 by namiesto toho robiť niečo ako ID, kde 867 00:42:20,720 --> 00:42:22,510 to predstavuje Premenná, niečo, 868 00:42:22,510 --> 00:42:26,210 sa môžu časom meniť, podobný v duchu toho, čo som povedal predtým 869 00:42:26,210 --> 00:42:28,080 S týmito druhmi zástupný znak. 870 00:42:28,080 --> 00:42:30,396 Ale teraz proste budeme napevno ju ako 1. 871 00:42:30,396 --> 00:42:31,520 A tak čo to znamená? 872 00:42:31,520 --> 00:42:35,100 No, príjemný spôsob, ako predstaviť to je že v prípade tejto kombinácie je tabuľka užívateľov, 873 00:42:35,100 --> 00:42:38,090 a to ruka je na zipsy stolík, sme tak nejako finding-- 874 00:42:38,090 --> 00:42:41,330 a končeky prstov sú na zips sem a končekmi prstov 875 00:42:41,330 --> 00:42:43,740 Tu je zips, si druh ho zámkovej 876 00:42:43,740 --> 00:42:47,950 tak, že dostanete späť výsledný pôvodná tabuľka tým, že skutočne spájanie 877 00:42:47,950 --> 00:42:49,590 dva stoly na spoločnom poli. 878 00:42:49,590 --> 00:42:50,840 A to nemusí byť zips. 879 00:42:50,840 --> 00:42:54,460 Mohlo by to byť najviac niečo iné, ale zips je pekné, pretože človek, je to krátke, 880 00:42:54,460 --> 00:42:56,470 dva, je to vždy rovnakú dĺžku, takže je tu 881 00:42:56,470 --> 00:43:02,270 skutočnú účinnosť s tým, čo Olivier tu navrhovanej 882 00:43:02,270 --> 00:43:05,200 s vytknutím zips, a [Nepočuteľný] navrhuje, aby sa zbavíme 883 00:43:05,200 --> 00:43:07,110 mestá a štáty. 884 00:43:07,110 --> 00:43:11,370 >> Tak to je ten proces známy ako normalizácia. 885 00:43:11,370 --> 00:43:14,171 Akékoľvek otázky na to? 886 00:43:14,171 --> 00:43:16,170 No dovoľte mi pripomenúť, To je ten druh vecí, 887 00:43:16,170 --> 00:43:19,202 aj keď je to pomerne nízkej úrovni, Táto diskusia, ktoré by ste si mohli myslieť 888 00:43:19,202 --> 00:43:20,910 ste nejako dostať stratil v burín, 889 00:43:20,910 --> 00:43:26,690 To je prejavom dostatok príležitosť pre developerov byť zlé. 890 00:43:26,690 --> 00:43:29,600 A v skutočnosti, aj keď sme v kurzy som sa naučil, keď sme mali, 891 00:43:29,600 --> 00:43:32,290 Napríklad, neskúsený vysokoškolské programátori 892 00:43:32,290 --> 00:43:35,920 vytvárať webové stránky, na prvý pohľad, webové stránky môže vyzerať úžasne. 893 00:43:35,920 --> 00:43:38,280 A majú všetky Funkčnosť sme požadovali, 894 00:43:38,280 --> 00:43:40,650 vývojári odviedli dobrú prácu. 895 00:43:40,650 --> 00:43:43,370 >> Ale nemusela nutne vedieť dosť o návrhu databázy 896 00:43:43,370 --> 00:43:46,680 alebo nemali premýšľať dosť o typoch dát 897 00:43:46,680 --> 00:43:49,220 a typy užívateľov na webová stránka sa bude musieť, 898 00:43:49,220 --> 00:43:53,240 a my zistíme, teda o šesť mesiacov neskôr, potom, čo som absolvoval, alebo presunul, 899 00:43:53,240 --> 00:43:56,016 že sakra, naše webové stránky Je naozaj, naozaj pomaly. 900 00:43:56,016 --> 00:43:58,890 A ja to ani nehovorím o tom mať milióny či tisíce užívateľov. 901 00:43:58,890 --> 00:44:02,580 Mám na mysli niekoľko sto používateľov na akademickej pôde, všetky z nich urobiť, napríklad, 902 00:44:02,580 --> 00:44:04,870 obchod pre kurzoch v rovnakom čase, sú 903 00:44:04,870 --> 00:44:07,010 použitím tejto katalóg kurzu Žiadosť som sa zmienil 904 00:44:07,010 --> 00:44:10,410 a tá vec je stále v skutočnosti spomaliť, pretože tam neboli žiadne indexy. 905 00:44:10,410 --> 00:44:13,740 Neboli zistené žiadne červené hviezdy, takže sa hovoriť, alebo sme mali nemusí byť nutne 906 00:44:13,740 --> 00:44:17,690 vytknúť spoločné dáta získať nejaké úspory priestoru. 907 00:44:17,690 --> 00:44:21,880 >> A tak, keď preverovanie vývojárov alebo databázu osoby alebo podobne, 908 00:44:21,880 --> 00:44:25,864 druhy otázok premyslieť Je dokonca pri kontrole niečí kód, 909 00:44:25,864 --> 00:44:28,530 hovoriť, nie nutne vyzerať cez všetky ich kódu, ale hovoria, 910 00:44:28,530 --> 00:44:30,154 Pozrime sa skrz databázových tabuliek. 911 00:44:30,154 --> 00:44:31,150 Čo to ukladanie? 912 00:44:31,150 --> 00:44:33,941 A potom hovoriť, no, počkaj minúta, prečo ste pomocou celé číslo? 913 00:44:33,941 --> 00:44:36,224 Čo keď máme 4 miliardy a jeden z týchto riadkoch? 914 00:44:36,224 --> 00:44:38,140 A tieto druhy Otázky je príležitosť 915 00:44:38,140 --> 00:44:40,170 na druh tlačiť späť a získať predstavu o tom, kde 916 00:44:40,170 --> 00:44:42,300 ak nie ste spokojní robiť to, s niekým technickejší 917 00:44:42,300 --> 00:44:45,425 opýtať na tieto otázky o tom, či alebo nie človek naozaj pozná svoje veci. 918 00:44:45,425 --> 00:44:47,890 A to je ten druh veci tiež, že ľudia 919 00:44:47,890 --> 00:44:50,540 na internete, ktorí sú-samouk, možno 920 00:44:50,540 --> 00:44:53,920 učiť sa menej často, pretože vás nemusí nutne naraziť na neho 921 00:44:53,920 --> 00:44:56,630 toľko, pretože sa môžete dostať Databáza hore a beh, 922 00:44:56,630 --> 00:44:58,880 ale ak ste čítali up na seminároch alebo boli 923 00:44:58,880 --> 00:45:01,880 povedal o normalizácii databázy a indexovanie a výkon, 924 00:45:01,880 --> 00:45:04,255 jedná sa o veľa vecí, ktoré sú tí neublíži. 925 00:45:04,255 --> 00:45:07,480 A by ste si mohli myslieť, alebo zlý inžinier by sa povedať, oh, dobre, sme lepší plat 926 00:45:07,480 --> 00:45:09,600 pre väčšiu databázu alebo rýchlejší databázy 927 00:45:09,600 --> 00:45:13,360 alebo len hádzať peniaze na to, vertikálne stupnice, nemusí to tak byť. 928 00:45:13,360 --> 00:45:16,920 Ak sa vydáte in-- a môžete ísť po fact-- a pridať indexy, 929 00:45:16,920 --> 00:45:20,320 a to by mohlo trvať niekoľko hodín, než sa Databáza vybudovať, že nové údaje 930 00:45:20,320 --> 00:45:24,100 štruktúra, ktorá som spomenul predtým, stále môžete opraviť po faktu, 931 00:45:24,100 --> 00:45:26,180 že toto je miesto, kde vás začať rozlišovať 932 00:45:26,180 --> 00:45:28,830 dobrých dizajnéri z zlý dizajnéri, a to nielen z estetického hľadiska, 933 00:45:28,830 --> 00:45:32,972 ale výkon-múdry rovnako. 934 00:45:32,972 --> 00:45:33,555 Nejaké otázky? 935 00:45:33,555 --> 00:45:36,420 936 00:45:36,420 --> 00:45:37,480 Nie? 937 00:45:37,480 --> 00:45:41,980 Takže pre NoSQL, ktorý bol iný typ z databázy, ku ktorej som sa zmieňoval skôr, 938 00:45:41,980 --> 00:45:43,490 nemáte riadkov a stĺpcov. 939 00:45:43,490 --> 00:45:47,000 Namiesto toho, mali by ste mať niečo ktorá vyzerá trochu ako je tento. 940 00:45:47,000 --> 00:45:48,630 Budem používať spoločné syntax. 941 00:45:48,630 --> 00:45:51,270 Zložené zátvorky náhodou sa tu používa pomerne veľa. 942 00:45:51,270 --> 00:45:55,400 Tie by mohli mať niečo ako krstné meno je David, 943 00:45:55,400 --> 00:46:00,180 môžete mať poslednú Meno je Malan, citácie, 944 00:46:00,180 --> 00:46:07,530 môžete mať ID je-- prepáčte, whoops-- číslo 1, 945 00:46:07,530 --> 00:46:13,410 e-mail je malan@harvard.edu, a nebudem obťažovať písanie sa na ostatných, a potom 946 00:46:13,410 --> 00:46:14,380 niektoré ďalšie veci. 947 00:46:14,380 --> 00:46:17,380 >> Inými slovami, to je reprezentácie textová 948 00:46:17,380 --> 00:46:20,720 z toho, čo by sme všeobecne nazývať objekt v počítačovom programe. 949 00:46:20,720 --> 00:46:26,079 A objekt je všeobecne len zbierka párov kľúčových hodnôt. 950 00:46:26,079 --> 00:46:27,370 Takže znovu, to opakujúce sa téma. 951 00:46:27,370 --> 00:46:30,440 Videli sme páry kľúč hodnota v HTML, sme videli dvojica hodnotu kľúča teraz 952 00:46:30,440 --> 00:46:34,020 v súvislosti s databázou a my Videl páry kľúčových hodnôt v rámci 953 00:46:34,020 --> 00:46:35,970 of Myslím, že jazyk dnes. 954 00:46:35,970 --> 00:46:36,890 Udržuje prísť. 955 00:46:36,890 --> 00:46:39,620 A vskutku, to je fakt aké dáta scvrkáva, 956 00:46:39,620 --> 00:46:44,240 dáta a metadáta, alebo hodnoty a kľúče, príslušne. 957 00:46:44,240 --> 00:46:47,430 >> Tak non-relačná databázy, niečo na báze 958 00:46:47,430 --> 00:46:50,680 Na objektoch, kde sa práve zhlukujú všetko dohromady a dať ho 959 00:46:50,680 --> 00:46:55,640 do pamäte, by vo všeobecnosti zobrazený ako alebo myšlienka, pretože to. 960 00:46:55,640 --> 00:47:00,500 A nechám, že teraz ako typ alternatívneho prístupu. 961 00:47:00,500 --> 00:47:03,750 A jeden nemusí byť nutne lepší ako ostatní. 962 00:47:03,750 --> 00:47:07,310 V skutočnosti je veľmi v móde Tieto dni sú databázové systémy 963 00:47:07,310 --> 00:47:11,942 ako MongoDB a REDIS a málo iné takéto nástroje, voľne dostupné, 964 00:47:11,942 --> 00:47:13,400 ale sú stále v móde. 965 00:47:13,400 --> 00:47:18,850 Čiastočne preto, že ponúkajú dodatočné obsahuje viac ako týchto tabuľkových prístupov, 966 00:47:18,850 --> 00:47:20,850 ale aj preto, že sú trochu jednoduchšie použitie, 967 00:47:20,850 --> 00:47:24,099 pretože nemusíte premýšľať, aké ťažké o veľa týchto rozhodnutí dizajnu. 968 00:47:24,099 --> 00:47:25,970 Takže plusy a mínusy. 969 00:47:25,970 --> 00:47:29,740 Takže si uvedomiť, tam sú možnosti rámec toho, čo sme práve strávili čas. 970 00:47:29,740 --> 00:47:32,310 >> Tak ideme na to. 971 00:47:32,310 --> 00:47:37,870 Poďme prechod trochu späť na webové programovanie, 972 00:47:37,870 --> 00:47:40,470 takže sme trochu k záveru, dnes s niečím 973 00:47:40,470 --> 00:47:43,930 To je trochu hands-on, plniace V niektorých medzier od včerajška. 974 00:47:43,930 --> 00:47:45,340 Nechaj ma ísť do toho prvého. 975 00:47:45,340 --> 00:47:49,310 Takže pripomenúť, že včera sme mali nejaké kanonickej HTML 976 00:47:49,310 --> 00:47:55,110 Stránky, ktoré mali na začiatku, len HTML, a potom sekundárne mal CSS, 977 00:47:55,110 --> 00:47:56,620 kaskádové štýly. 978 00:47:56,620 --> 00:47:59,830 Jedná sa o nový tag, ktorý sme nemali Včera, alebo zaoberať, 979 00:47:59,830 --> 00:48:01,490 takzvaný tag script. 980 00:48:01,490 --> 00:48:05,830 >> Ukázalo sa, že môžete skutočne vložiť jazyk nazvaný JavaScript Váš web 981 00:48:05,830 --> 00:48:08,310 stránky a urobiť svoj web Stránky niečo urobiť. 982 00:48:08,310 --> 00:48:09,710 Tak čo mám na mysli? 983 00:48:09,710 --> 00:48:12,630 No, nechaj ma ísť dopredu a len požičať si tento kód na chvíľu. 984 00:48:12,630 --> 00:48:15,860 Chystám sa ísť do Cloud9, nie je potrebné sa tam sami ešte nie, 985 00:48:15,860 --> 00:48:21,350 a budem volať túto alert.HTML. 986 00:48:21,350 --> 00:48:23,650 Idem vložiť svoj spis sem. 987 00:48:23,650 --> 00:48:32,070 A len preto, aby bolo jasnejšie, čo som urobil, nechaj ma ísť na túto adresu a ísť upozorniť, 988 00:48:32,070 --> 00:48:33,870 a uvidíte Hello World. 989 00:48:33,870 --> 00:48:35,440 >> Ale to je trochu nezaujatý. 990 00:48:35,440 --> 00:48:37,410 Chcem robiť niečo trochu inak. 991 00:48:37,410 --> 00:48:40,610 Takže budem skutočne urobiť. 992 00:48:40,610 --> 00:48:43,820 Chystám sa ísť sem e, a medzi moje značky skriptu, 993 00:48:43,820 --> 00:48:53,460 hovoria alert ( "ahoj, svet"); takže oznámenia je to trochu nedbalý, ale mám HTML, 994 00:48:53,460 --> 00:48:56,180 vnútri ktorej je jazyk s názvom JavaScript 995 00:48:56,180 --> 00:48:59,420 a to je to, čo sa nazýva Funkcia volania alebo volania procedúr. 996 00:48:59,420 --> 00:49:04,500 To je sloveso, doslova, v tomto prípade, a ja vyvolanie funkcie kódu 997 00:49:04,500 --> 00:49:06,310 že niekto iný napísal. 998 00:49:06,310 --> 00:49:09,630 >> Takže funkčnosť je strehu, takže poďme na túto stránku 999 00:49:09,630 --> 00:49:14,046 teraz a kliknite na tlačidlo Načítať znova, a teraz pozri trochu interaktivity. 1000 00:49:14,046 --> 00:49:15,420 Je to trochu starej školy a škaredý. 1001 00:49:15,420 --> 00:49:18,580 To vám trochu pripomína pop-up, snáď, z dávnych čias 1002 00:49:18,580 --> 00:49:22,030 ale to predsa urobiť niečo trochu viac programový. 1003 00:49:22,030 --> 00:49:26,940 >> Takže viac než to, urobme niečo zaujímavejšie. 1004 00:49:26,940 --> 00:49:30,980 Nechajte ma ísť sem a zbaviť sa toho. 1005 00:49:30,980 --> 00:49:33,840 A ja idem dopredu a vytvoriť formulár ako my včera. 1006 00:49:33,840 --> 00:49:34,840 Vlastne, viete čo? 1007 00:49:34,840 --> 00:49:37,350 Chystám sa ísť do google.html, ktoré sme 1008 00:49:37,350 --> 00:49:43,027 začal včera, ktoré vyzerala ako to, prostredníctvom ktorého sme hľadali pre mačku 1009 00:49:43,027 --> 00:49:45,360 Ale všimnúť, je tu niečo ako chyba v aktuálnej verzii. 1010 00:49:45,360 --> 00:49:49,770 Pracuje pre mačky, ale predpokladám, že Aj nespolupracujú a som písať nič, 1011 00:49:49,770 --> 00:49:53,290 a ja jednoducho na tlačidlo odoslať. 1012 00:49:53,290 --> 00:49:54,540 To je trochu podivné správanie. 1013 00:49:54,540 --> 00:49:57,300 Vzal ma k skutočnému Google, mi nedali chybovú správu. 1014 00:49:57,300 --> 00:50:00,590 Chcel by som povedať užívateľa je potrebné, aby nám nejakú hodnotu. 1015 00:50:00,590 --> 00:50:01,780 >> Tak ako môžeme to urobiť? 1016 00:50:01,780 --> 00:50:06,790 No dovoľte mi vrátiť sa do Cloud9 a nechaj ma ísť do hornej časti mojej stránky 1017 00:50:06,790 --> 00:50:11,980 a pridať tag script ako je tento, kde Idem písať nejaký kód JavaScriptu. 1018 00:50:11,980 --> 00:50:15,420 A ja budem robiť nasledujúce. 1019 00:50:15,420 --> 00:50:22,910 If (document.getelementByID-- a odvolanie že sme hovorili o tom skôr, 1020 00:50:22,910 --> 00:50:23,960 táto funkcia. 1021 00:50:23,960 --> 00:50:25,310 Aké ID chcem dostať? 1022 00:50:25,310 --> 00:50:33,050 Chcem sa dostať q, a idem povedzme rovná nič, ako tohle-- 1023 00:50:33,050 --> 00:50:38,220 v skutočnosti dovoľte mi použiť dvojité úvodzovky Len pre consistency-- sa rovná nič, 1024 00:50:38,220 --> 00:50:46,650 Potom alert ( "Prosím, zadajte dotaz") tu. 1025 00:50:46,650 --> 00:50:49,200 >> Takže mám čo sa zdá byť niečo ako podmienku. 1026 00:50:49,200 --> 00:50:51,410 Videli sme túto všeobecnú myšlienku na Scratch. 1027 00:50:51,410 --> 00:50:54,240 Je to ako jeden z tých puzzle kúsky, ktoré vyzerali ako tento. 1028 00:50:54,240 --> 00:50:55,780 A čo to hovorím? 1029 00:50:55,780 --> 00:50:59,520 No, tu dole si všimnite, že som robiť nasledujúce. 1030 00:50:59,520 --> 00:51:02,790 Chystám sa dať tento formulár Pole nielen názov q, čo 1031 00:51:02,790 --> 00:51:06,630 je to, čo dostane prešiel na Google, ale ja som chystá dať mu lokálne identifikátor, 1032 00:51:06,630 --> 00:51:07,630 tiež volal q. 1033 00:51:07,630 --> 00:51:11,780 Ale ja som mohol zavolať to niečo, čo by som chcieť, ja som jednoducho ísť, aby to jednoduché 1034 00:51:11,780 --> 00:51:14,570 a tiež to nazývajú q, len pre jednoduchosť. 1035 00:51:14,570 --> 00:51:17,650 >> A teraz budem robiť niečo trochu viac. 1036 00:51:17,650 --> 00:51:22,600 Na polí formulára tu, idem pridať, čo sa nazýva spracovanie udalosti. 1037 00:51:22,600 --> 00:51:32,260 Na predložiť, chcem volať funkcia nazvaná validovať. 1038 00:51:32,260 --> 00:51:35,520 To ešte neexistuje, toto slovo, alebo to sloveso overovania, 1039 00:51:35,520 --> 00:51:38,560 pretože to, čo budem robiť up tu je pridať nejaký kód. 1040 00:51:38,560 --> 00:51:42,200 >> Idem povedať funkcie Overiť. 1041 00:51:42,200 --> 00:51:48,280 Idem odsadiť to a pridať ďalšie zložená zátvorka tu a druhá tu. 1042 00:51:48,280 --> 00:51:50,110 Pozrime sa, čo je to práve robí. 1043 00:51:50,110 --> 00:51:54,210 Mám now-- myslieť na to, ako bol vytvorený my Vlastné skladačky, ktoré neboli predtým 1044 00:51:54,210 --> 00:51:57,440 existovať, a ja som to nazval puzzle poskladať overením kúsok skladačky. 1045 00:51:57,440 --> 00:52:01,620 Jeho zmyslom života je realizovať štyri riadky kódu vnútri nej. 1046 00:52:01,620 --> 00:52:04,940 >> Ak document.getElementById tak koncepčne, 1047 00:52:04,940 --> 00:52:09,380 ktorý sa chystá ísť do prvku, HTML element, ktorého jedinečný 1048 00:52:09,380 --> 00:52:12,930 myšlienka je len q, a potom hoci Syntax vyzerá trochu divne, 1049 00:52:12,930 --> 00:52:16,430 že rovné rovná len znamená, že rovná. 1050 00:52:16,430 --> 00:52:20,950 Tak to znamená, že v prípade, že prvok s jedinečný identifikátor q, kedy dostal, 1051 00:52:20,950 --> 00:52:25,700 nemá žiadnu hodnotu, to jednoducho rovná citát koniec citátu, nič nie je, 1052 00:52:25,700 --> 00:52:27,170 potom čo chcem robiť? 1053 00:52:27,170 --> 00:52:29,360 Chcem kričať na užívateľovi. 1054 00:52:29,360 --> 00:52:31,710 >> A nepôjdeme veľmi podrobne tu. 1055 00:52:31,710 --> 00:52:32,960 Idem return false. 1056 00:52:32,960 --> 00:52:34,380 Že sa jedná o chybu. 1057 00:52:34,380 --> 00:52:38,746 Else, idem sa vrátiť pravda. 1058 00:52:38,746 --> 00:52:40,120 Takže buď to fungovalo, alebo nie. 1059 00:52:40,120 --> 00:52:41,800 Nepravdivé alebo pravda. 1060 00:52:41,800 --> 00:52:47,820 A teraz keď som neurobil žiadnu chybu, dovoľte mi zachrániť to a znovu to. 1061 00:52:47,820 --> 00:52:50,940 A nech mi práve dvakrát skontrolujte, že Nechcel som v skutočnosti vykonávať žiadne preklepy, 1062 00:52:50,940 --> 00:52:52,690 takže si nemyslím rozpakov sám. 1063 00:52:52,690 --> 00:52:54,240 Uvidíme, či to funguje. 1064 00:52:54,240 --> 00:52:56,930 >> Takže teraz budem písať mačky. 1065 00:52:56,930 --> 00:52:59,421 To ešte funguje, alebo polovica práce, minimálne. 1066 00:52:59,421 --> 00:53:02,170 Teraz mi dovoľte to znova, a teraz sa me pokúste sa o odoslaní bez písania 1067 00:53:02,170 --> 00:53:05,860 anything-- sakra, to zlomilo. 1068 00:53:05,860 --> 00:53:06,430 Chvíľku. 1069 00:53:06,430 --> 00:53:09,380 1070 00:53:09,380 --> 00:53:12,660 Dovoľte mi, aby som otvorenie konzoly, [Nepočuteľné] prihlásiť, znovu načítať stránku. 1071 00:53:12,660 --> 00:53:13,576 Skúsim to znova. 1072 00:53:13,576 --> 00:53:17,000 1073 00:53:17,000 --> 00:53:17,501 Oh, sakra. 1074 00:53:17,501 --> 00:53:18,000 Zabudol som. 1075 00:53:18,000 --> 00:53:18,630 Urobil som preklep. 1076 00:53:18,630 --> 00:53:20,760 Spomínam si, čo to je. 1077 00:53:20,760 --> 00:53:21,350 .value. 1078 00:53:21,350 --> 00:53:27,060 Chcel som povedať, ak je hodnota prvku, ktorých ID je q 1079 00:53:27,060 --> 00:53:29,800 rovná, potom kričať na používateľa. 1080 00:53:29,800 --> 00:53:31,870 >> Takže teraz mi dovoľte znova zadržať dych. 1081 00:53:31,870 --> 00:53:33,480 Ideme na to. 1082 00:53:33,480 --> 00:53:34,130 Tam sme ísť. 1083 00:53:34,130 --> 00:53:35,010 Prosím, zadajte dotaz. 1084 00:53:35,010 --> 00:53:36,840 Takže to nie je ma nechal prejsť. 1085 00:53:36,840 --> 00:53:40,210 Môžem byť trochu hravý s tým, a miesto kontroly pre žiadnu hodnotu, 1086 00:53:40,210 --> 00:53:46,720 Môžem povedať niečo ako: už nemusíte hľadať pre mačky, 1087 00:53:46,720 --> 00:53:51,150 a teraz môžeme len viac hravou nechať užívateľ hľadať pre psov ak on alebo ona 1088 00:53:51,150 --> 00:53:57,490 chce, alebo keď idem sem a vyhľadávať pre mačky, teraz nemôžem. 1089 00:53:57,490 --> 00:53:58,690 >> Takže to, čo je tu stánok s jedlom? 1090 00:53:58,690 --> 00:54:03,010 Takže jedno, sme zaviedli do náš svet HTML a CSS, 1091 00:54:03,010 --> 00:54:04,320 programovacie funkcie. 1092 00:54:04,320 --> 00:54:06,300 Môžem vlastne teraz robiť rozhodnutia v kóde. 1093 00:54:06,300 --> 00:54:10,570 Skôr, všetko, čo som mohol urobiť, je označiť textový obsah alebo grafického obsahu 1094 00:54:10,570 --> 00:54:13,080 a povedať mu, na čo sa zamerať podobne, a kde sa má zobraziť. 1095 00:54:13,080 --> 00:54:16,650 Teraz môžem vlastne pýtať otázky webové stránky 1096 00:54:16,650 --> 00:54:20,010 a urobiť rozhodnutie na základe na ňom, a vyzve užívateľa 1097 00:54:20,010 --> 00:54:22,780 keď potrebujem kričať na neho. 1098 00:54:22,780 --> 00:54:28,740 >> Tak poďme skúsiť niečo sami s tým. 1099 00:54:28,740 --> 00:54:33,350 Len do toho, dovoľte mi otvoriť ďalšiu snímku tu, a len poukázať na jednu vec. 1100 00:54:33,350 --> 00:54:37,250 Rovnako ako u CSS, môžeme vytknúť Naše JavaScript kód do samostatného súboru, 1101 00:54:37,250 --> 00:54:40,660 môžete urobiť to isté s JavaScriptu pomocou CSS. 1102 00:54:40,660 --> 00:54:44,520 A vy ju využiť pomocou zdroja atribút script tag. 1103 00:54:44,520 --> 00:54:46,540 Ale nebudeme komplikovať veci pre túto chvíľu. 1104 00:54:46,540 --> 00:54:50,440 Namiesto toho, ak si mohol prejsť na tejto stránke nie je, 1105 00:54:50,440 --> 00:55:02,690 ale-- dovoľte mi presunúť tento okolo order-- prejsť na, keby mohol, túto stránku tu. 1106 00:55:02,690 --> 00:55:03,592 Táto adresa URL tu. 1107 00:55:03,592 --> 00:55:04,550 Je to v dnešných snímok. 1108 00:55:04,550 --> 00:55:07,133 Možno budete musieť znova načítať, pretože Pridal som pár vecí. 1109 00:55:07,133 --> 00:55:09,970 1110 00:55:09,970 --> 00:55:13,890 >> Ale tam, kde niektorí hádanky čakajú. 1111 00:55:13,890 --> 00:55:16,670 A to nám dá šancu, v trochu viac zábavy kontextu, 1112 00:55:16,670 --> 00:55:20,610 fušovať s niektorými JavaScriptu. 1113 00:55:20,610 --> 00:55:25,505 A keď sa tam dostať, Vysvetlím ti to, čo čaká. 1114 00:55:25,505 --> 00:55:47,350 1115 00:55:47,350 --> 00:55:47,850 Získať zelenú. 1116 00:55:47,850 --> 00:56:03,063 1117 00:56:03,063 --> 00:56:03,562 Nastaviť modré. 1118 00:56:03,562 --> 00:56:11,030 1119 00:56:11,030 --> 00:56:13,930 Nastaví zelená, červená sady. 1120 00:56:13,930 --> 00:56:19,220 1121 00:56:19,220 --> 00:56:20,220 Och. 1122 00:56:20,220 --> 00:56:22,330 Prepáčte. 1123 00:56:22,330 --> 00:56:27,630 >> To je rozsah nášho Dokumentácia pre túto výzvu. 1124 00:56:27,630 --> 00:56:29,920 A to bude pracovať nasledujúcim spôsobom. 1125 00:56:29,920 --> 00:56:33,340 Takže to, čo máte na túto tému Stránka je celá partia 1126 00:56:33,340 --> 00:56:38,024 obrazových hádanky tým kamaráta Stanfordovej univerzity. 1127 00:56:38,024 --> 00:56:41,190 Takže to, čo vidíte tu je takmer druh jednej z týchto magické oko hádanky, 1128 00:56:41,190 --> 00:56:43,815 ale jednoducho pozerať, či na to, sa nič vyskočí na vás. 1129 00:56:43,815 --> 00:56:46,000 Skôr je niečo skryté v tomto snímku. 1130 00:56:46,000 --> 00:56:47,790 A to je skrytý v nasledujúcom spôsobom. 1131 00:56:47,790 --> 00:56:51,740 Snímky, ako možno viete, môže byť zložený z iba troch farieb. 1132 00:56:51,740 --> 00:56:53,346 Niektoré červená, niektoré modrej, a niektoré zelené. 1133 00:56:53,346 --> 00:56:55,220 A môžeme robiť všetko farby dúhy 1134 00:56:55,220 --> 00:56:57,570 zmiešaním týchto troch farieb nejako. 1135 00:56:57,570 --> 00:57:01,940 >> Takže to vyzerá väčšinou zelené a modré, ale ako hovorí tady Nick, 1136 00:57:01,940 --> 00:57:04,060 Tento železo puzzle obrázok je logická. 1137 00:57:04,060 --> 00:57:06,780 Že obsahuje obraz čo slávny, však, 1138 00:57:06,780 --> 00:57:08,310 bol obraz skreslený. 1139 00:57:08,310 --> 00:57:11,500 Slávny objekt je v červených hodnotách. 1140 00:57:11,500 --> 00:57:13,810 Avšak, červené hodnoty boli všetci delené 10. 1141 00:57:13,810 --> 00:57:16,230 Tak oni sú príliš malé faktorom 10. 1142 00:57:16,230 --> 00:57:18,280 Takže inými slovami, Nick vzal originálny obraz, 1143 00:57:18,280 --> 00:57:21,500 a on desaturated všetko z červenej z neho, 1144 00:57:21,500 --> 00:57:23,850 zníženie množstva červenej atrament, ak chcete, v ňom. 1145 00:57:23,850 --> 00:57:26,060 >> Zelenej a modrej hodnoty sú len bezvýznamné, 1146 00:57:26,060 --> 00:57:30,000 náhodné hodnoty, aka hluk navrhnutý zakryť skutočný obraz. 1147 00:57:30,000 --> 00:57:32,250 Takže to, čo urobil, bolo, že Nick zmiernil červené a potom 1148 00:57:32,250 --> 00:57:34,380 jednoducho hodil náhodné Množstvo modrá a zelená 1149 00:57:34,380 --> 00:57:37,590 Na obrazu na druhu temný čo je vlastne tam stále. 1150 00:57:37,590 --> 00:57:41,089 Musíte sa vrátiť späť tieto rozpory odhaliť obraz. 1151 00:57:41,089 --> 00:57:44,255 Po prvé, nastaviť všetky modré a zelené hodnoty na nulu dostať von z cesty, 1152 00:57:44,255 --> 00:57:48,700 a pozrieť sa na výsledok. potom vynásobiť každú červenú hodnotu 10, 1153 00:57:48,700 --> 00:57:51,720 škálovanie späť do približne jej konečná hodnota. 1154 00:57:51,720 --> 00:57:53,035 Čo je známy objekt? 1155 00:57:53,035 --> 00:57:57,920 >> Takže vy všetci majú tento obdĺžnik vo svojom prehliadači práve teraz. 1156 00:57:57,920 --> 00:58:00,830 A všimnite si, že tam je nejaká štartovacie kód, aby som tak povedal. 1157 00:58:00,830 --> 00:58:04,370 To je kód JavaScript, ktorý Nick napísal pre vás. 1158 00:58:04,370 --> 00:58:07,250 A všimnite si, že je tu čiara uprostred, že 1159 00:58:07,250 --> 00:58:10,380 začína lomkou lomítkom, to je čo sa všeobecne nazýva komentár. 1160 00:58:10,380 --> 00:58:14,660 To znamená, že je to výraz pre programátora že nemá žiadny funkčný význam. 1161 00:58:14,660 --> 00:58:16,520 Je to len vizuálny podnet k človeku. 1162 00:58:16,520 --> 00:58:18,670 >> Takže môžete ísť dopredu a odstrániť iba jeden riadok 1163 00:58:18,670 --> 00:58:22,214 a bolo super pozor, aby ste odstrániť alebo zmeniť niečo iné. 1164 00:58:22,214 --> 00:58:25,130 A dovoľte mi, aby som vás prevedú čo tento kód robí, a to nechám 1165 00:58:25,130 --> 00:58:28,580 na vás, aby ste zistili tajný obraz. 1166 00:58:28,580 --> 00:58:32,226 Tento prvý riadok tu, že som len zvýraznený vám dáva nasledujúce. 1167 00:58:32,226 --> 00:58:34,100 Na ľavej strane, Máte to, čo sa nazýva 1168 00:58:34,100 --> 00:58:39,140 premenná, ktorá má Nick ľubovoľne, ale rozumne volal im pre imidž. 1169 00:58:39,140 --> 00:58:41,660 Na pravej strane uvedeného znamienko rovnosti, 1170 00:58:41,660 --> 00:58:45,240 on hovorí mi dať nový citát, koniec citátu "simple imidž". 1171 00:58:45,240 --> 00:58:49,680 >> Jednoduchý obraz, v tejto súvislosti je to, čo sa nazýva trieda, no, 1172 00:58:49,680 --> 00:58:53,910 je to niečo ako class-- technicky prototype-- ale v skutočnosti, 1173 00:58:53,910 --> 00:58:58,000 to mi dáva nový objekt, ktorého obsah sú súbor, 1174 00:58:58,000 --> 00:58:59,610 železo-puzzle.png. 1175 00:58:59,610 --> 00:59:03,190 Inými slovami, Nick vytvoril tento pojem jednoduchého obrazu 1176 00:59:03,190 --> 00:59:05,920 takže môžeme, pre pedagogické účely, hrať sa s obrazom 1177 00:59:05,920 --> 00:59:09,790 a zmeniť jeho červená, zelenej a modrej hodnoty. 1178 00:59:09,790 --> 00:59:11,750 >> A ako sme na tom, že? 1179 00:59:11,750 --> 00:59:15,360 Toto trochu záhadný syntaxe tu Je niečo ako opakovanie bloku 1180 00:59:15,360 --> 00:59:19,140 že niektorí z vás videl v Scratch skôr Dnes, kde si môžete opakovať 10 krát. 1181 00:59:19,140 --> 00:59:22,220 V tomto prípade, Nick nemá napevno čísla ako 10. 1182 00:59:22,220 --> 00:59:28,020 Namiesto toho hovorí, inicializovať premenná s názvom x 0, 1183 00:59:28,020 --> 00:59:33,180 skontrolujte, či je x menšie ako šírka obrazu. 1184 00:59:33,180 --> 00:59:38,160 >> A tak, aby sa viac správne, ako je variabilné, bodka znamená ísť vnútri nej 1185 00:59:38,160 --> 00:59:40,900 a získať jeho šírku a Potom otvorte párenia, uzavretá 1186 00:59:40,900 --> 00:59:43,687 Paren je len programátorský spôsob, hovoriť to je funkcia. 1187 00:59:43,687 --> 00:59:44,520 Jedná sa o postup. 1188 00:59:44,520 --> 00:59:46,430 To je funkčnosť niekto iný napísal. 1189 00:59:46,430 --> 00:59:48,570 Použite ju a vráť mi odpoveď. 1190 00:59:48,570 --> 00:59:53,610 A potom x ++ je ozdobný spôsob, hovoriť, potom, čo ste urobil to raz, 1191 00:59:53,610 --> 00:59:55,850 prírastok x o 1. 1192 00:59:55,850 --> 00:59:58,760 Inými slovami, toto je programátorský spôsob, 1193 00:59:58,760 --> 01:00:05,760 vyvolať slučku, ktorý je bude iteráciu 1194 01:00:05,760 --> 01:00:10,410 všetky stĺpce v obraze. 1195 01:00:10,410 --> 01:00:14,790 >> Obraz je iba mriežka bodky, riadky a stĺpce bodov. 1196 01:00:14,790 --> 01:00:18,270 To je spôsob, ako iterácie cez všetky tieto stĺpce. 1197 01:00:18,270 --> 01:00:20,770 A na vnútornej strane, Medzitým sme iterácie 1198 01:00:20,770 --> 01:00:24,030 cez výšok, tu aj tu a tu. 1199 01:00:24,030 --> 01:00:29,442 Takže je to len spôsob, ako traipsing, skoro ako starý školský písací stroj, 1200 01:00:29,442 --> 01:00:32,230 jednoducho ísť cez Celý obraz opakovane. 1201 01:00:32,230 --> 01:00:36,370 Dokonca to nie je tak celkom úplne jasná, jednoducho vziať na vieru teraz, 1202 01:00:36,370 --> 01:00:38,880 že tieto tri riadky kódu sú spoločne 1203 01:00:38,880 --> 01:00:43,090 bude vám umožní opakovane hľadať na každom pixelu, každá bodka v obraze. 1204 01:00:43,090 --> 01:00:43,790 >> Čo je to pixel? 1205 01:00:43,790 --> 01:00:46,250 Tak aby bolo jasno, ak sa pozrieme na originálu a zväčšenie, 1206 01:00:46,250 --> 01:00:49,060 ak naozaj dať svoje oči na obrazovke počítača, to je 1207 01:00:49,060 --> 01:00:53,510 len celá rada bodov, niekoľko Tisíc bodov balené spoločne tam. 1208 01:00:53,510 --> 01:00:56,180 A tak to, čo ste asi robiť? 1209 01:00:56,180 --> 01:00:59,240 Každý z týchto bodov, konečná definícia, 1210 01:00:59,240 --> 01:01:06,350 je výsledkom toho, čo je všeobecne volal RGB, červená, zelená, modrá, ktoré 1211 01:01:06,350 --> 01:01:09,940 opäť, môžu byť kombinované, aby dať ľubovoľný počet farieb. 1212 01:01:09,940 --> 01:01:13,200 >> V skutočnosti, ak si spomeniete Z mnohých rokmi, mnoho rokov, 1213 01:01:13,200 --> 01:01:17,320 Projektorové plátna, ako sú tieto veci mával nie jednu šošovku, ale tri. 1214 01:01:17,320 --> 01:01:20,700 Jeden z nich vypľuť červené svetlo, jeden z je vypľuť zelenú, jeden z nich 1215 01:01:20,700 --> 01:01:21,600 vypľuť modré svetlo. 1216 01:01:21,600 --> 01:01:24,391 A ak ste boli na strednej škole ako som bol, kde nikdy neboli 1217 01:01:24,391 --> 01:01:27,000 správne vyrovnaný, že si Vždy sledovanie filmov histórie 1218 01:01:27,000 --> 01:01:29,770 ktoré boli mierne skreslený, pretože tieto tri farby neboli 1219 01:01:29,770 --> 01:01:30,970 Kombináciou správne. 1220 01:01:30,970 --> 01:01:36,330 >> Ale ukazuje sa, že každý z Tieto hodnoty červenej, zelenej a modrej, 1221 01:01:36,330 --> 01:01:37,980 môže mať niekoľko spojený s nimi. 1222 01:01:37,980 --> 01:01:42,500 Napríklad, 0 pre Red znamená žiadny červenej, 0 zelenej znamená, že žiadna zelená, 1223 01:01:42,500 --> 01:01:45,120 a 0 pre modré znamená bez modrej. 1224 01:01:45,120 --> 01:01:49,403 Takže ak máte nie červená, nie zelená, a nie modré, akú farbu máte? 1225 01:01:49,403 --> 01:01:51,009 >> Divákov: [nepočuteľné] 1226 01:01:51,009 --> 01:01:52,800 DAVID Malan: To by si dúfam, že je to biele. 1227 01:01:52,800 --> 01:01:55,333 Bohužiaľ, toto operates-- ľúto? 1228 01:01:55,333 --> 01:01:56,380 >> Divákov: [nepočuteľné] 1229 01:01:56,380 --> 01:01:58,630 DAVID Malan: Takže ste vlastne majú čierny, v tomto prípade. 1230 01:01:58,630 --> 01:02:01,530 Takže ak máte žiadny z nich Farby zapnutá, máte čierne. 1231 01:02:01,530 --> 01:02:06,510 Avšak, ak máte, povedzme veľa z nich, rovnako ako veľa červenej, 255 o tom, 1232 01:02:06,510 --> 01:02:10,340 veľa zelene, a mnoho z modrej, ktorá je biela. 1233 01:02:10,340 --> 01:02:12,230 Tak to sú dva extrémy. 1234 01:02:12,230 --> 01:02:17,460 Takže podľa tejto logiky, keď mám veľa červenej a zelenej nie a nie modrá, 1235 01:02:17,460 --> 01:02:18,485 akú farbu to je? 1236 01:02:18,485 --> 01:02:19,360 Divákov: [nepočuteľné] 1237 01:02:19,360 --> 01:02:20,610 DAVID Malan: Jasné, samozrejme. 1238 01:02:20,610 --> 01:02:25,940 A potom nie je červená, veľa zelená, modrá nie, a potom 1239 01:02:25,940 --> 01:02:29,590 ak ste have-- dobre, budeme len dokončiť to, len preto, že, ale to, samozrejme, 1240 01:02:29,590 --> 01:02:31,350 Teraz je modrá. 1241 01:02:31,350 --> 01:02:33,030 A teraz môžete kombinovať tieto farby. 1242 01:02:33,030 --> 01:02:36,430 Teraz ako stranou, ak je niekto z vás niekedy urobil nejakú skutočnú dizajnu webových stránok, 1243 01:02:36,430 --> 01:02:38,360 ste v skutočnosti môže pozri symboly ako je táto. 1244 01:02:38,360 --> 01:02:42,030 FFF-- a v skutočnosti, to je pravdepodobne ani to nie. 1245 01:02:42,030 --> 01:02:44,380 Je to FFFFFF. 1246 01:02:44,380 --> 01:02:48,970 >> Každý, kto niekedy videl F je a ŽP a A through-- tak to dopadá, 1247 01:02:48,970 --> 01:02:52,970 sme hovorili včera o jedno desatinné miesto, a dnes, druh o desiatkovej sústave. 1248 01:02:52,970 --> 01:02:54,570 Dnes sme hovorili o binárny. 1249 01:02:54,570 --> 01:02:59,010 Ukázalo sa, hexadecimálne je veľmi spoločný základ systému pre použitie v počítači. 1250 01:02:59,010 --> 01:03:04,960 Binárne je dve za desatinnou čiarkou je 10, hex je 16. 1251 01:03:04,960 --> 01:03:08,640 A ukázalo sa, ako robiť môžete počítať v šestnástkovej sústave? 1252 01:03:08,640 --> 01:03:11,620 Nula, jeden, dva, tri, štyri, päť, šesť, sedem, osem, 1253 01:03:11,620 --> 01:03:14,730 deväť, čo používate po deviatej? 1254 01:03:14,730 --> 01:03:16,600 Aký je ďalšie číslo? 1255 01:03:16,600 --> 01:03:19,180 Už sme použili nulu. 1256 01:03:19,180 --> 01:03:20,570 Musím 16 z nich. 1257 01:03:20,570 --> 01:03:25,770 Nula, jeden, dva, tri, štyri, päť, šesť, sedem, osem, deväť, 1258 01:03:25,770 --> 01:03:27,520 budete potrebovať nejaké ľubovoľné konvencie. 1259 01:03:27,520 --> 01:03:30,810 >> A čo ľudstvo rozhodol nejaký čas Pred že po deviatich prichádza písmeno 1260 01:03:30,810 --> 01:03:34,450 A a potom B a neskôr C. Takže ako ste počítať v hexadecimálnej 1261 01:03:34,450 --> 01:03:37,040 je nula, jedna, dva, tri, štyri, päť, šesť, sedem, osem, deväť, 1262 01:03:37,040 --> 01:03:42,880 A, B, C, D, E, F, a že sa bude počítať ste celú cestu, to dopadá, na 15. 1263 01:03:42,880 --> 01:03:47,850 Tak nula až 15 je nula až F. A prečo je to dôležité? 1264 01:03:47,850 --> 01:03:51,570 No, keď máte dva F je, že to, ako sa vyjadriť 255. 1265 01:03:51,570 --> 01:03:54,350 >> Tak dlhý príbeh krátky, v svet Photoshop, 1266 01:03:54,350 --> 01:03:57,299 že grafický dizajn softvér, vo svete vývoj webových aplikácií, 1267 01:03:57,299 --> 01:03:59,590 kde máte veľa farieb, Samozrejme, hrať s, 1268 01:03:59,590 --> 01:04:02,350 Často budú programátori vyjadrovať tie v šestnástkovej sústave, 1269 01:04:02,350 --> 01:04:05,260 len preto, že to inklinuje byť trochu jednoduchšie. 1270 01:04:05,260 --> 01:04:07,850 Aj keď sa na prvý pohľad je to oveľa zložitejšie. 1271 01:04:07,850 --> 01:04:11,590 >> Takže v každom prípade, to je dôležité pretože Nick v Stanforde 1272 01:04:11,590 --> 01:04:15,100 nám dal šesť kusov funkčnosti To si ty, pučiace programátori, 1273 01:04:15,100 --> 01:04:17,060 budú mať teraz možnosť používať. 1274 01:04:17,060 --> 01:04:19,960 Zabudované do tohto webu Stránka je šesť funkcií, 1275 01:04:19,960 --> 01:04:21,820 Šesť postupy, ktoré Nick napísal. 1276 01:04:21,820 --> 01:04:26,800 Tri z nich sa dostanete číslo, červená, zelená alebo modrá hodnotu. 1277 01:04:26,800 --> 01:04:28,787 Tri z nich sa nastaví túto hodnotu. 1278 01:04:28,787 --> 01:04:30,620 A tieto podčiarknutia sú len zástupné symboly, 1279 01:04:30,620 --> 01:04:32,600 takže je potrebné vedieť, čo to je. 1280 01:04:32,600 --> 01:04:36,240 >> Takže sa tieto tri funkcie, Prvý z týchto vecí 1281 01:04:36,240 --> 01:04:39,190 bude x-súradnicu, a druhý z týchto vecí 1282 01:04:39,190 --> 01:04:40,700 sa bude jednať o súradnici y. 1283 01:04:40,700 --> 01:04:44,650 Inými slovami, ktoré DOT, ktorý pixel chceš dostať zeleň, 1284 01:04:44,650 --> 01:04:46,480 dostať modrej, dostať červenou farbou. 1285 01:04:46,480 --> 01:04:51,440 A potom tu, to bude x, to bude Y hodnotu, 1286 01:04:51,440 --> 01:04:55,379 a to sa bude celá rada. 1287 01:04:55,379 --> 01:04:57,170 Takže poďme urobiť prvý rad dohromady 1288 01:04:57,170 --> 01:05:00,220 a potom Nechám to na vás pokúsiť sa odvodiť zvyšok. 1289 01:05:00,220 --> 01:05:03,100 Takže podľa pokynov Na tejto stránke potrebujeme 1290 01:05:03,100 --> 01:05:08,960 pre zvýšenie červené o faktor 10, a musíme odstrániť zelenú 1291 01:05:08,960 --> 01:05:09,930 a vyberte modrej. 1292 01:05:09,930 --> 01:05:12,410 Začnime s posledne spomenutých scenárov. 1293 01:05:12,410 --> 01:05:17,760 Takže ak chcem, a idem odsadiť pomocou nejakej medzery, 1294 01:05:17,760 --> 01:05:22,291 keď chcem nastaviť červenú, zelená alebo modrá hodnotu, 1295 01:05:22,291 --> 01:05:23,540 Chystám sa urobiť nasledovné. 1296 01:05:23,540 --> 01:05:31,280 >> Image, im.setBlue, a potom na základe mojich inštrukcií tu, 1297 01:05:31,280 --> 01:05:36,700 Aké tri veci by som mal typ vnútri zátvoriek teraz? 1298 01:05:36,700 --> 01:05:41,960 Musím x hodnotu, y hodnotu a aké číslo 1299 01:05:41,960 --> 01:05:48,770 By som mal dať sem, keď chcem zbaviť ničoho, založený na tomto príbehu tu? 1300 01:05:48,770 --> 01:05:49,630 Jednoducho nula. 1301 01:05:49,630 --> 01:05:52,420 Ak chcem Nedôjde k vytvoreniu modrého, som len chystá zmeniť na nulu. 1302 01:05:52,420 --> 01:05:54,465 >> Teraz sa poďme len zhrnúť, čo to robí. 1303 01:05:54,465 --> 01:05:56,970 1304 01:05:56,970 --> 01:06:01,170 Mám tu na týchto špičkových Druhý a tretí riadok, 1305 01:06:01,170 --> 01:06:04,080 Celok som dve slučky, vnorené slučky, ak vás 1306 01:06:04,080 --> 01:06:08,360 bude, že budú mať za následok postupujúci zľava doprava, 1307 01:06:08,360 --> 01:06:11,590 zhora nadol cez všetky x hodnoty a všetky hodnoty y. 1308 01:06:11,590 --> 01:06:15,167 Vzhľadom k tomu, znovu, je obraz len mriežka riadkov a stĺpcov. 1309 01:06:15,167 --> 01:06:17,000 Takže toto je dostane zbaviť všetkého čistého neba. 1310 01:06:17,000 --> 01:06:18,627 Nechaj ma odísť do ďalšieho riadku na vás. 1311 01:06:18,627 --> 01:06:20,043 Ako sa môžem zbaviť všetky zelené? 1312 01:06:20,043 --> 01:06:23,747 1313 01:06:23,747 --> 01:06:25,140 >> Divákov: [nepočuteľné] 1314 01:06:25,140 --> 01:06:26,151 >> DAVID Malan: Nice. 1315 01:06:26,151 --> 01:06:28,260 >> Divákov: [nepočuteľné] 1316 01:06:28,260 --> 01:06:30,850 >> DAVID Malan: Nice. 1317 01:06:30,850 --> 01:06:36,120 A budem oddialiť, a len brať starostlivosť o ktoré ste neurobili žiadne preklepy. 1318 01:06:36,120 --> 01:06:39,390 A ak ste pohodlné s tým, čo ste urobil, 1319 01:06:39,390 --> 01:06:42,936 pokračujte a kliknite na tlačidlo Spustiť / Uložiť a vidieť to, čo dostanete. 1320 01:06:42,936 --> 01:06:46,982 1321 01:06:46,982 --> 01:06:48,690 A opäť sme urobili len tri zmeny. 1322 01:06:48,690 --> 01:06:52,130 vypúšťa sme, že prvý komentovať a nahradil ju 1323 01:06:52,130 --> 01:06:53,575 s týmito dvoma riadky kódu. 1324 01:06:53,575 --> 01:06:55,742 1325 01:06:55,742 --> 01:06:58,450 A to je v poriadku, ak je potreba zasiahnuť tlačidlá Run / ušetriť pár krát 1326 01:06:58,450 --> 01:07:01,190 niečo napraviť. 1327 01:07:01,190 --> 01:07:03,610 >> A dovoľte mi tiež priblížiť na mojom kód, takže môžete prepísať. 1328 01:07:03,610 --> 01:07:04,110 Dobre. 1329 01:07:04,110 --> 01:07:08,720 Vidím Andrew má čo Zdá sa, že to bola chyba. 1330 01:07:08,720 --> 01:07:11,110 Len dostal veľký čierny obdĺžnik na jeho obrazovke. 1331 01:07:11,110 --> 01:07:13,120 Má niekto iný má veľký čierny obdĺžnik? 1332 01:07:13,120 --> 01:07:13,390 >> Divákov: Áno. 1333 01:07:13,390 --> 01:07:14,360 >> DAVID Malan: Veľký čierny obdĺžnik? 1334 01:07:14,360 --> 01:07:16,068 OK, takže poďme premýšľať o tom, čo to znamená. 1335 01:07:16,068 --> 01:07:20,560 Povedali sme si, že nula, nula, nula, takže nie je zelená, nie červená, nie modrá, 1336 01:07:20,560 --> 01:07:21,980 sa chystá dať tie čierna. 1337 01:07:21,980 --> 01:07:24,467 A ukázalo sa, že Väčšina našich notebookov 1338 01:07:24,467 --> 01:07:25,800 jednoducho nemajú dostatok vernosť. 1339 01:07:25,800 --> 01:07:27,750 Nemôžete docela tam povedať, je v skutočnosti niečo, čo existuje. 1340 01:07:27,750 --> 01:07:30,340 A ak ste trochu možno oprieť obrazovka dopredu a dozadu, 1341 01:07:30,340 --> 01:07:32,850 Možno to vidíte tam niečo malé? 1342 01:07:32,850 --> 01:07:34,820 Možno, druh, tak nejako? 1343 01:07:34,820 --> 01:07:36,640 Nie je to úplne čierne. 1344 01:07:36,640 --> 01:07:38,050 >> Divákov: [nepočuteľné] 1345 01:07:38,050 --> 01:07:39,510 >> DAVID Malan: Spoiler! 1346 01:07:39,510 --> 01:07:42,610 Tam je nejaká červená tam, ale pamätať zo špecifikácií 1347 01:07:42,610 --> 01:07:44,940 problému, Nick tónovaný dole. 1348 01:07:44,940 --> 01:07:47,860 On to desaturated trochu ale nie úplne na nulu. 1349 01:07:47,860 --> 01:07:51,670 Takže ak chceme zväčšiť objem červenej, dovoľte mi navrhnúť tento trik. 1350 01:07:51,670 --> 01:07:53,750 Nechaj ma priblížiť na mojej obrazovke. 1351 01:07:53,750 --> 01:07:58,678 A nechaj ma ísť napred a povedz Suma sa rovná im.getRed (x, y). 1352 01:07:58,678 --> 01:08:02,440 1353 01:08:02,440 --> 01:08:05,790 >> Tento riadok kódu sa mi dávať niečo, čo nazýva premenné. 1354 01:08:05,790 --> 01:08:09,643 Mám ľubovoľne, ale pravdepodobne, rozumne zavolal môj variabilný čo, 1355 01:08:09,643 --> 01:08:10,143 očividne? 1356 01:08:10,143 --> 01:08:13,530 1357 01:08:13,530 --> 01:08:14,340 Čiastka. 1358 01:08:14,340 --> 01:08:14,980 Len sumy. 1359 01:08:14,980 --> 01:08:16,960 Mohol som to nazval čokoľvek chcem, ale som 1360 01:08:16,960 --> 01:08:19,490 Pomocou tejto ďalšie funkcie že som opísal skôr 1361 01:08:19,490 --> 01:08:25,359 získať množstvo červenej farby u x čiarka y. 1362 01:08:25,359 --> 01:08:27,520 Prečo som to urobil? 1363 01:08:27,520 --> 01:08:30,004 Čo chcete robiť? 1364 01:08:30,004 --> 01:08:32,910 1365 01:08:32,910 --> 01:08:33,619 musíte add-- 1366 01:08:33,619 --> 01:08:34,493 Divákov: [nepočuteľné] 1367 01:08:34,493 --> 01:08:36,279 DAVID Malan: Áno, možno vynásobte ju 10 rokov. 1368 01:08:36,279 --> 01:08:38,862 A ak sa vám to neviete, že som ísť dopredu a to urobiť. 1369 01:08:38,862 --> 01:08:42,060 Chystám sa ísť dopredu a povedzme, chcem množstvo červenej 1370 01:08:42,060 --> 01:08:46,550 Chcem byť čokoľvek je v mínuse, krát 10, 1371 01:08:46,550 --> 01:08:50,330 a hviezda, hviezdička na vašom Klávesnica je the-- nepoužívajú x. 1372 01:08:50,330 --> 01:08:51,569 Použite hviezdu. 1373 01:08:51,569 --> 01:08:55,350 Takto sa množiť veci vo väčšine programovacích jazykov. 1374 01:08:55,350 --> 01:08:59,790 >> Takže podľa Kareem intuície, uložené v tejto premennej nazvanej množstvo, 1375 01:08:59,790 --> 01:09:03,649 Je koľko červený Chcem na umiestnenie xy. 1376 01:09:03,649 --> 01:09:11,500 Ako teraz mám robiť, že Pixel mať toto číslo? 1377 01:09:11,500 --> 01:09:12,859 Ste už predtým urobil. 1378 01:09:12,859 --> 01:09:17,666 Nastavíte zelená a modrej na žiadnu hodnotu, na nulu. 1379 01:09:17,666 --> 01:09:18,540 Divákov: [nepočuteľné] 1380 01:09:18,540 --> 01:09:20,040 DAVID Malan: Áno, Nechcete ho do 10. 1381 01:09:20,040 --> 01:09:21,460 Už ste urobil matematický tu. 1382 01:09:21,460 --> 01:09:24,779 Tak sa dostávame hodnotu červenej, čo je nízky počet, pravdepodobne. 1383 01:09:24,779 --> 01:09:26,180 Sme vynásobením až o 10. 1384 01:09:26,180 --> 01:09:29,139 Čo chcete robiť s Premenná suma teraz? 1385 01:09:29,139 --> 01:09:30,130 >> Divákov: [nepočuteľné] 1386 01:09:30,130 --> 01:09:30,880 >> DAVID Malan: Nice. 1387 01:09:30,880 --> 01:09:34,616 Takže im.set-- čo? 1388 01:09:34,616 --> 01:09:35,640 >> Divákov: setRed. 1389 01:09:35,640 --> 01:09:39,760 >> DAVID Malan: setRed na umiestnenie xy. 1390 01:09:39,760 --> 01:09:40,260 Jo. 1391 01:09:40,260 --> 01:09:41,200 A práve vyššie. 1392 01:09:41,200 --> 01:09:44,257 Inými slovami, premenná je dočasný zástupný 1393 01:09:44,257 --> 01:09:45,840 že si môžete dať čokoľvek chcete v. 1394 01:09:45,840 --> 01:09:48,680 My stalo, že sa dosadením Číslo v nej, v túto chvíľu. 1395 01:09:48,680 --> 01:09:51,569 Máme násobí ju 10, aby bolo väčšie. 1396 01:09:51,569 --> 01:09:56,480 A teraz som náhradou tejto premennej ako ten tretí argument, alebo vstup 1397 01:09:56,480 --> 01:09:57,810 pre nastavenie červenej. 1398 01:09:57,810 --> 01:10:00,440 A tak, že akonáhle dokončiť to, a berú na vedomie 1399 01:10:00,440 --> 01:10:02,330 z bodkočiarkou a v zátvorkách. 1400 01:10:02,330 --> 01:10:06,290 >> Pokračujte a kliknite spustiť / uložiť znova, a vy 1401 01:10:06,290 --> 01:10:10,690 Mali by ste vidieť, magicky, čo bolo v skutočnosti tam. [? Arwa ,?], Čo tam je? 1402 01:10:10,690 --> 01:10:16,412 Eiffelova veža v plnohodnotnej červená, nie tak celkom tma. 1403 01:10:16,412 --> 01:10:17,870 to by malo byť viac zrejmé teraz, áno? 1404 01:10:17,870 --> 01:10:18,840 OK. 1405 01:10:18,840 --> 01:10:20,215 A Andrew, nič viac čierna skrinka? 1406 01:10:20,215 --> 01:10:21,090 Divákov: [nepočuteľné] 1407 01:10:21,090 --> 01:10:22,180 DAVID Malan: Dobre. 1408 01:10:22,180 --> 01:10:23,610 Takže budem držať to na obrazovke. 1409 01:10:23,610 --> 01:10:27,010 Ak chcete hrať s touto neskôr, budem znovu to pre vás. 1410 01:10:27,010 --> 01:10:29,140 Ale tento kód tu urobil presne to. 1411 01:10:29,140 --> 01:10:31,460 Prečo nie my, kto iný. 1412 01:10:31,460 --> 01:10:33,880 Nechaj ma mierne posunúť nadol. 1413 01:10:33,880 --> 01:10:36,760 >> Takže v tomto prípade, projektora nie je naozaj to spravodlivosť. 1414 01:10:36,760 --> 01:10:40,486 Ale na svojich obrazovkách, pravdepodobne majú veľmi červené a veľmi čiernu skrinku. 1415 01:10:40,486 --> 01:10:42,610 Aj to je hádanka, ktorá ukazuje niečo slávnou. 1416 01:10:42,610 --> 01:10:44,193 Snímka však bol skreslený. 1417 01:10:44,193 --> 01:10:47,740 Skutočný obraz, tentokrát je v modrých a zelených hodnotách. 1418 01:10:47,740 --> 01:10:51,820 Avšak, Všetci boli rozdelení o 20, takže hodnoty sú veľmi malé. 1419 01:10:51,820 --> 01:10:54,660 Červené hodnoty sú len náhodné čísla, šum. 1420 01:10:54,660 --> 01:10:57,190 Vrátiť týchto narušení odhaliť pravdivý obraz. 1421 01:10:57,190 --> 01:10:59,200 >> Takže Nick potom vám povie, čo má robiť. 1422 01:10:59,200 --> 01:11:04,290 Nastavte červené hodnoty na nulu, a potom nekazí, čo to je. 1423 01:11:04,290 --> 01:11:07,110 Potom násobiť modré a zelené hodnoty od 20. 1424 01:11:07,110 --> 01:11:09,820 Takže je to skoro Rovnaký program ako predtým, 1425 01:11:09,820 --> 01:11:11,380 ale vy ste zvrátenie procesu. 1426 01:11:11,380 --> 01:11:13,780 A dám kód než sa na obrazovke v prípade, 1427 01:11:13,780 --> 01:11:16,650 Ak chcete sa vrátiť späť k nemu alebo hrať ďalej s tým, že jeden. 1428 01:11:16,650 --> 01:11:18,100 Nechaj ma priblížiť na to. 1429 01:11:18,100 --> 01:11:21,450 Ale riešiť medi image puzzle, číslo dva. 1430 01:11:21,450 --> 01:11:37,623 1431 01:11:37,623 --> 01:11:40,580 >> Divákov: [nepočuteľné] 1432 01:11:40,580 --> 01:11:44,010 >> DAVID Malan: OK, takže to jedno, že som nebude dať čo najviac rád. 1433 01:11:44,010 --> 01:11:47,220 Tak som would-- oh, poďme vidieť, že máte preklep tu. 1434 01:11:47,220 --> 01:11:49,621 Takže pamätajte, že to tu v skutočnosti potrebuje ísť tam. 1435 01:11:49,621 --> 01:11:52,870 Takže to, čo by som navrhoval, ak chcete zamerať sa na tento jeden, je tu odpoveď. 1436 01:11:52,870 --> 01:11:57,060 Ak chcete prepísať to, že by mal dostať prvý jeden pracovný. 1437 01:11:57,060 --> 01:11:59,910 A potom môžete použiť ako inšpiráciou pre iných. 1438 01:11:59,910 --> 01:12:02,230 Pekný. 1439 01:12:02,230 --> 01:12:02,730 Dobre. 1440 01:12:02,730 --> 01:12:05,430 1441 01:12:05,430 --> 01:12:08,180 >> A pre zvedavé, To je jednoduchý príklad 1442 01:12:08,180 --> 01:12:11,080 z vedy alebo umenia volal steganografie, 1443 01:12:11,080 --> 01:12:14,100 umenie skrývanie informácií v obrazoch. 1444 01:12:14,100 --> 01:12:16,890 Typicky môže byť obrazy vodoznakom veľmi nehanebne 1445 01:12:16,890 --> 01:12:19,500 s logom v spodnej časti roh, ale je jasné, vy 1446 01:12:19,500 --> 01:12:22,070 môže byť oveľa sofistikovanejšie o ňom a vlastne 1447 01:12:22,070 --> 01:12:25,050 skryť ďalšie obrazy v obrazoch nejako s touto technikou. 1448 01:12:25,050 --> 01:12:59,890 1449 01:12:59,890 --> 01:13:05,770 >> Trvať ďalších 30 sekúnd, a potom budeme aspoň oznámiť, čo by ste mali vidieť. 1450 01:13:05,770 --> 01:13:08,330 A Nechám tretie onu vo forme at-home cvičenia, 1451 01:13:08,330 --> 01:13:11,353 ak by ste chceli skôr ako spochybniť tento víkend. 1452 01:13:11,353 --> 01:13:18,240 1453 01:13:18,240 --> 01:13:20,390 A myslím, že by mohol Andrew ju najprv dostať. 1454 01:13:20,390 --> 01:13:22,645 Aký je druhý obraz, Andrew? 1455 01:13:22,645 --> 01:13:23,920 >> Publikum: Socha Slobody. 1456 01:13:23,920 --> 01:13:28,500 >> DAVID Malan: Socha Slobody Bude odpoveď tentoraz. 1457 01:13:28,500 --> 01:13:31,140 Takže znovu, len niekoľko jednoduchých príklady, ktorého cieľom 1458 01:13:31,140 --> 01:13:35,040 je poskytnúť vám predstavu, ako sme preložený obrazovú Scratch 1459 01:13:35,040 --> 01:13:40,410 bloky na viac nepríjemné a ďalšie zložitý kód, ale všetky myšlienky 1460 01:13:40,410 --> 01:13:42,980 sú stále presne rovnaké, aj keď sa zavedením 1461 01:13:42,980 --> 01:13:48,380 Teraz pojmu premenné, pričom schopné dočasne ukladať niečo. 1462 01:13:48,380 --> 01:13:51,750 >> Urobme ešte jeden hands-on, len preto, aby sa pospájať 1463 01:13:51,750 --> 01:13:53,880 na niečo trochu viac reálneho sveta. 1464 01:13:53,880 --> 01:13:56,610 Až budete pripravení, keď si mohol choďte na túto adresu URL na obrazovke. 1465 01:13:56,610 --> 01:14:00,610 To je tiež svoju kópiu šmykľavky, developers.google.com/maps~~V. 1466 01:14:00,610 --> 01:14:03,660 Poďme niečo robiť real, tak povediac, na webe 1467 01:14:03,660 --> 01:14:07,600 s použitím Google Maps API, alebo aplikačné programovacie rozhranie, 1468 01:14:07,600 --> 01:14:08,940 a to nasledujúcim spôsobom. 1469 01:14:08,940 --> 01:14:12,341 >> Google, rovnako ako mnoho firiem, poskytuje veľa voľného funkčnosti 1470 01:14:12,341 --> 01:14:14,840 ktoré môžete použiť na vybudovanie svojho Vlastné zaujímavé aplikácie. 1471 01:14:14,840 --> 01:14:18,890 V skutočnosti, ak ste niekedy používali Uber, aby si taxi alebo auto, 1472 01:14:18,890 --> 01:14:21,640 pravdepodobne viete, že má Uber mapy a to ukazuje vozy na ňom. 1473 01:14:21,640 --> 01:14:24,870 To znamená, že ako najlepšie môžem povedať, Google Maps API. 1474 01:14:24,870 --> 01:14:28,884 Oni sú vlastne pomocou máp Google, ale Uber nie je mapovanie spoločnosť, 1475 01:14:28,884 --> 01:14:31,050 ani by to byť Zvlášť zaujímavý problém 1476 01:14:31,050 --> 01:14:33,510 riešiť na vrchole svojej Problém autoservisov. 1477 01:14:33,510 --> 01:14:35,510 A tak stojíme, opäť na ramenách 1478 01:14:35,510 --> 01:14:37,520 druhých, Google v tomto prípade. 1479 01:14:37,520 --> 01:14:42,850 Takže oni používajú Google Maps, ale ich vlastné autoopravovniach a ďalšie podobné črty. 1480 01:14:42,850 --> 01:14:47,770 >> Takže budeme využívať z toho robiť nasledujúce. 1481 01:14:47,770 --> 01:14:50,230 A či som zašiel príliš rýchlo, stačí zavolať si ma za chvíľu. 1482 01:14:50,230 --> 01:14:53,500 Šťastný zhrnúť niektoré z obrazu vecí. 1483 01:14:53,500 --> 01:14:56,290 Mal by si sa vidieť na stránke, ako je táto. 1484 01:14:56,290 --> 01:14:58,230 Tak pekný Google, a sú to jedny z najlepších 1485 01:14:58,230 --> 01:15:01,364 poskytovať nielen API, ale bez API, ktoré vám 1486 01:15:01,364 --> 01:15:02,780 Môžete hrať s alebo komerčnému využitiu. 1487 01:15:02,780 --> 01:15:06,450 Nemajú spustiť, ak vaše použitie vás nabíja je vysoká, ale ja šiel dopredu s predstihom 1488 01:15:06,450 --> 01:15:10,490 a podpísal nás sa k účtu zdarma že dúfajme, 10 počítačov 1489 01:15:10,490 --> 01:15:12,480 nás nebudú diskvalifikovať pre naraz. 1490 01:15:12,480 --> 01:15:14,320 Tak dúfajme, že tento Demonštrácia bude fungovať. 1491 01:15:14,320 --> 01:15:18,840 >> A všimnite si, že majú API pre Android, iOS, web a webové služby, 1492 01:15:18,840 --> 01:15:19,620 čo to je. 1493 01:15:19,620 --> 01:15:20,700 Zamerajme sa na webe. 1494 01:15:20,700 --> 01:15:26,560 Takže kliknite na ružový box, web, a to vás dovedie snáď aj na stránku 1495 01:15:26,560 --> 01:15:27,630 tu. 1496 01:15:27,630 --> 01:15:29,335 A že mám veľa API. 1497 01:15:29,335 --> 01:15:31,210 A to môže byť trochu ohromujúce na prvý, 1498 01:15:31,210 --> 01:15:33,000 ale nám to riadiť tým, čo chceme. 1499 01:15:33,000 --> 01:15:38,500 >> V ľavom hornom rohu je Google Maps JavaScript API JavaScript API. 1500 01:15:38,500 --> 01:15:40,380 Preto neváhajte a kliknite na tento jeden. 1501 01:15:40,380 --> 01:15:49,360 A to vás povedie teraz na Nasledujúce stránky, ukážky a ukážkový kód. 1502 01:15:49,360 --> 01:15:51,190 Nechaj ma tu oddialiť. 1503 01:15:51,190 --> 01:15:56,300 A dovoľte mi, aby som nás to-- posunúť nadol k miestu, kde sa hovorí, že rýchle počiatočné kroky. 1504 01:15:56,300 --> 01:15:57,970 Vaša obrazovka by mala vyzerať moja. 1505 01:15:57,970 --> 01:16:01,130 >> A je tu dva kroky, získať kľúč a začať rozvíjať. 1506 01:16:01,130 --> 01:16:04,190 Už som urobil krok, jeden pre us, dostať takzvaný kľúč. 1507 01:16:04,190 --> 01:16:05,320 A je to spoločný nápad. 1508 01:16:05,320 --> 01:16:09,210 Kľúč API je spravidla len veľké náhodné číslo alebo reťazec 1509 01:16:09,210 --> 01:16:11,130 že ste mal vložiť do svojho kódu, 1510 01:16:11,130 --> 01:16:15,280 tak, že Google vie, kto ste, keď používate svoje služby, ich API. 1511 01:16:15,280 --> 01:16:17,370 Neznamená, že sme nabíja čokoľvek. 1512 01:16:17,370 --> 01:16:21,030 A teraz, kliknite namiesto jeden, kliknite na tlačidlo štart vyvíja. 1513 01:16:21,030 --> 01:16:25,990 Ak by ste mohli len zamávať mi cez ak nie si istý, kde sme. 1514 01:16:25,990 --> 01:16:28,040 >> Takže budeme len poškriabať povrchu, ale čo tu 1515 01:16:28,040 --> 01:16:31,000 Myslel som, že by bolo presvedčivé je vlastne mať všetky z nás, 1516 01:16:31,000 --> 01:16:34,240 použitím Cloud9 v jednom okne a Tento výukový program v inom okne, 1517 01:16:34,240 --> 01:16:37,120 umožňuje skutočne dostať naše vlastné Aplikácia hore a beh 1518 01:16:37,120 --> 01:16:40,920 že vloží vlastné Google máp v našej vlastnej webovej stránky, 1519 01:16:40,920 --> 01:16:43,010 a potom pridá jednu alebo dve funkcie. 1520 01:16:43,010 --> 01:16:45,520 Ale my si len poškriabať Povrch, čo môžeme urobiť. 1521 01:16:45,520 --> 01:16:47,020 >> Takže len rýchla kontrola zdravý rozum. 1522 01:16:47,020 --> 01:16:49,740 Sú všetci na tejto stránke, Google Maps API JavaScript? 1523 01:16:49,740 --> 01:16:50,872 Mal povedať, ako začať. 1524 01:16:50,872 --> 01:16:53,330 nebudeme prejsť celá vec akýmikoľvek prostriedkami. 1525 01:16:53,330 --> 01:16:58,090 OK, v inom karte, ak nie majú ju otvorenú, idú do Cloud9 1526 01:16:58,090 --> 01:17:03,500 a dostať sa do práve Novú kartu nakoniec. 1527 01:17:03,500 --> 01:17:11,070 Takže znovu, c9.io zo včerajška, c9.io, a len vytvoriť nový súbor. 1528 01:17:11,070 --> 01:17:13,500 A ísť dopredu a volania to, čo by ste chceli. 1529 01:17:13,500 --> 01:17:16,495 Zavolal som dolu map.html. 1530 01:17:16,495 --> 01:17:17,870 Nazvime to niečo končiace .html. 1531 01:17:17,870 --> 01:17:23,930 1532 01:17:23,930 --> 01:17:26,580 A vy by ste mali byť zhruba kde som v tomto procese 1533 01:17:26,580 --> 01:17:31,470 len s blikajúcim riadku v prázdny Karta s názvom niečo ako map.html. 1534 01:17:31,470 --> 01:17:35,808 1535 01:17:35,808 --> 01:17:38,148 Alebo súbor, nový súbor tentoraz. 1536 01:17:38,148 --> 01:17:41,960 1537 01:17:41,960 --> 01:17:48,000 >> A teraz, viac ako na API Google Maps JavaScript 1538 01:17:48,000 --> 01:17:50,010 budeme preskočiť čítanie cez všetky tohto textu. 1539 01:17:50,010 --> 01:17:53,760 Ale všimnite si, že je hello world naozaj všade, to vidíte teraz. 1540 01:17:53,760 --> 01:17:58,020 Hello world má tento veľký farebný Príkladom veľa HTML. 1541 01:17:58,020 --> 01:18:03,590 Pokračuj a skopírovať a vložiť len to, že HTML, takže od typu doc ​​v hornej časti 1542 01:18:03,590 --> 01:18:08,810 celú cestu až do tesného HTML tagu, choď Prepisom všetky to-- znova, 1543 01:18:08,810 --> 01:18:14,430 že je pod hello world example-- a vložiť, že do svojej karte Cloud9, 1544 01:18:14,430 --> 01:18:17,996 takže teraz obrazovka by mal vyzerať zhruba ako ja. 1545 01:18:17,996 --> 01:18:22,280 1546 01:18:22,280 --> 01:18:24,520 >> A môžete si ju uložiť, ale nenačítajú to ešte nie. 1547 01:18:24,520 --> 01:18:26,290 Poďme sa pozrieť na prvý kód a uvidíme, či budeme 1548 01:18:26,290 --> 01:18:29,110 nedá odvodiť, alebo sa dozvedieť z toho, čo je Google 1549 01:18:29,110 --> 01:18:30,860 bolo nás slepo kopírovať a vložiť. 1550 01:18:30,860 --> 01:18:33,334 Oni jednoducho chcú pomôcť, doslova, dostať nás začal, 1551 01:18:33,334 --> 01:18:35,500 ale tam to nie je moc Zložitosť v skutočnosti tam. 1552 01:18:35,500 --> 01:18:40,100 1553 01:18:40,100 --> 01:18:42,210 Nejaké otázky ešte nie? 1554 01:18:42,210 --> 01:18:43,790 Sme v bezpečí postupovať vpred? 1555 01:18:43,790 --> 01:18:44,330 OK. 1556 01:18:44,330 --> 01:18:46,800 >> Tak rýchlo, nech to jednoducho urobiť niekoľko rýchlych rýchle kontroly. 1557 01:18:46,800 --> 01:18:48,800 Linka jedno z toho, čo som vidieť, a dúfajme, že vám 1558 01:18:48,800 --> 01:18:51,710 vidieť, čo to znamená, DOCTYPE html? 1559 01:18:51,710 --> 01:18:52,385 Kareem, pripomínajú? 1560 01:18:52,385 --> 01:18:53,260 Divákov: [nepočuteľné] 1561 01:18:53,260 --> 01:18:53,968 DAVID Malan: Áno. 1562 01:18:53,968 --> 01:18:54,870 Tu prichádza HTML 5. 1563 01:18:54,870 --> 01:18:57,950 Medzitým, lemujú dva na Obrazovka tu znamená hej prehliadač, 1564 01:18:57,950 --> 01:18:59,482 Tu prichádza skutočná HTML. 1565 01:18:59,482 --> 01:19:01,440 Riadok tri je hej prehliadač, tu je hlava. 1566 01:19:01,440 --> 01:19:04,260 Linka štyri je, samozrejme, hej prehliadača, prichádza titul. 1567 01:19:04,260 --> 01:19:07,780 Čo linka päť robiť? 1568 01:19:07,780 --> 01:19:09,930 V skutočnosti to nie je robiť nič pre nás. 1569 01:19:09,930 --> 01:19:13,340 V tomto prípade je to len zmení stránku v predvolenom nastavení. Linka šesť, 1570 01:19:13,340 --> 01:19:16,140 sme sa hovoriť, ale to Určuje kódovanie znakov. 1571 01:19:16,140 --> 01:19:19,181 Je tu rôzne spôsoby, ako zakódovať súbory, najmä pre výučbu cudzích jazykov. 1572 01:19:19,181 --> 01:19:21,100 UTF-8 len inklinuje byť predvolené. 1573 01:19:21,100 --> 01:19:26,580 >> Takže teraz uvidíme v súlade sedem až 16, niektoré CSS. 1574 01:19:26,580 --> 01:19:29,260 A aj keď sme sa nevideli všetky tieto veci skôr, 1575 01:19:29,260 --> 01:19:30,810 môžeme odvodiť druh. 1576 01:19:30,810 --> 01:19:37,075 Takže linku osem prostriedky, hej prehliadač, platí všetky tieto operácie dvoch značiek, 1577 01:19:37,075 --> 01:19:37,575 očividne? 1578 01:19:37,575 --> 01:19:40,650 1579 01:19:40,650 --> 01:19:41,701 HTML a telo textu. 1580 01:19:41,701 --> 01:19:43,200 Takže čiarka je nová vec tam. 1581 01:19:43,200 --> 01:19:46,140 A to je len spôsob, zadávanie viacerých značiek naraz. 1582 01:19:46,140 --> 01:19:47,640 >> Potom sme dostali zložené zátvorky. 1583 01:19:47,640 --> 01:19:51,170 Takže zdá sa, že to hovorí prehliadači, aby výšku strana 100%. 1584 01:19:51,170 --> 01:19:54,170 Takže aj keď je tam veľmi málo obsah, aby celú stránku, 1585 01:19:54,170 --> 01:19:55,530 aby sa vec vyplnil stránku. 1586 01:19:55,530 --> 01:19:57,524 Make mapu nakoniec vyplnil stránku. 1587 01:19:57,524 --> 01:19:58,690 Margin, čo to znamená? 1588 01:19:58,690 --> 01:20:01,559 To je obvykle ako ľubovoľná biely priestor okolo okrajov 1589 01:20:01,559 --> 01:20:04,350 že niektoré prehliadače dizajnér len rozhodol, by mala byť, preto, že 1590 01:20:04,350 --> 01:20:05,540 druh robí veci vyzerajú čistejšie. 1591 01:20:05,540 --> 01:20:06,498 Ale my nechceme. 1592 01:20:06,498 --> 01:20:08,710 Chceme, aby sa mapa bude celú cestu k okrajom. 1593 01:20:08,710 --> 01:20:10,930 Polstrovanie, svojím duchom podobať marže. 1594 01:20:10,930 --> 01:20:14,980 Okraje znamená mimo, výplň prostriedky dovnútra, ale je to rovnaký druh obchodu. 1595 01:20:14,980 --> 01:20:17,520 Je to trochu vyrovnávacej pamäte medzi vami a na okrajoch. 1596 01:20:17,520 --> 01:20:21,170 >> A potom linka 13 je dobrá šanca pre rýchly prehľad. 1597 01:20:21,170 --> 01:20:26,440 Čo robí ostrý označenia map znamenať, alebo hashtag mapa znamená? 1598 01:20:26,440 --> 01:20:29,650 Čo to odkazujú na v zásade? 1599 01:20:29,650 --> 01:20:31,485 >> Divákov: [nepočuteľné] 1600 01:20:31,485 --> 01:20:32,360 DAVID Malan: Presne tak. 1601 01:20:32,360 --> 01:20:36,900 Táto vlastnosť, táto vlastnosť CSS sa týka len jednu vec, značka HTML 1602 01:20:36,900 --> 01:20:41,180 ktorý má ID citát, koniec citátu "mapu". 1603 01:20:41,180 --> 01:20:44,460 A teraz poďme rýchlo dopredu, zvitok až na koniec súboru, ktorý 1604 01:20:44,460 --> 01:20:49,860 Nie je príliš ďaleko, a upozornenie na linke 19, ak ste ju vložiť presne tak, ako ja, 1605 01:20:49,860 --> 01:20:53,405 linka 19 má len div, čo je divízia, kde som včera 1606 01:20:53,405 --> 01:20:54,820 volal obdĺžnikový región. 1607 01:20:54,820 --> 01:20:55,820 Je to nemá nič v ňom. 1608 01:20:55,820 --> 01:20:57,550 Je to otvorený tag, v blízkosti tag. 1609 01:20:57,550 --> 01:20:59,490 Ale to mať jedinečný identifikátor. 1610 01:20:59,490 --> 01:21:02,090 >> Takže to, čo sa zdá byť dialo tu je Google 1611 01:21:02,090 --> 01:21:05,880 sa chystá našu webovú stránku mať kompletný výšku 100%, 1612 01:21:05,880 --> 01:21:09,680 a nie výplň, žiadne okraje, pretože čo budeme dať dovnútra 1613 01:21:09,680 --> 01:21:13,647 tento div, ktorého jedinečný identifikátor je máp, je skutočná vloženou mapu. 1614 01:21:13,647 --> 01:21:15,480 A chceme, aby vyplniť stránku, a to nielen 1615 01:21:15,480 --> 01:21:17,560 byť nejaký malý obdĺžnik uprostred. 1616 01:21:17,560 --> 01:21:24,220 Takže linka 14 obdobne zdôrazňuje sa Pre seba by mal mať výšku 100%. 1617 01:21:24,220 --> 01:21:29,220 >> Takže teraz si všimnúť medzi riadkami 20 a 28, to je JavaScript kód. 1618 01:21:29,220 --> 01:21:33,020 A to znamená, že aj keď je to syntakticky trochu divne, 1619 01:21:33,020 --> 01:21:34,730 že to nie je tak moc tu deje. 1620 01:21:34,730 --> 01:21:39,310 V riadku 21, to prehlasuje niečo, čo nazýva premenné. 1621 01:21:39,310 --> 01:21:42,030 Namiesto toho, volať to súm, ako sme to urobili predtým, 1622 01:21:42,030 --> 01:21:44,500 budeme presnejšie hovorí var, čo znamená len premenné. 1623 01:21:44,500 --> 01:21:46,520 Mohli by sme použili, že v Nickova kód, ale neurobil to, a tak som 1624 01:21:46,520 --> 01:21:48,190 sa neobťažoval robiť to jeden. 1625 01:21:48,190 --> 01:21:50,240 Je to premenná s názvom máp, a potom je tu 1626 01:21:50,240 --> 01:21:53,360 funkcia, ktorá je vraj volal initMap. 1627 01:21:53,360 --> 01:21:55,780 >> Takže to je ako naše vlastné zvyklosti skladačky do nuly. 1628 01:21:55,780 --> 01:21:58,830 Vytvorili sme kus Funkčnosť nazývaný initMap, 1629 01:21:58,830 --> 01:22:00,980 a môžete odvodiť druh čo sa tu deje. 1630 01:22:00,980 --> 01:22:02,930 Na ľavej strane, máme premennú, 1631 01:22:02,930 --> 01:22:06,000 takže ideme dať nasledujúce vec vnútri tejto premennej, 1632 01:22:06,000 --> 01:22:07,362 sprava doľava. 1633 01:22:07,362 --> 01:22:11,940 Pravá strana hovorí, hej browser, daj mi novú mapu Google. 1634 01:22:11,940 --> 01:22:16,490 A google.maps.map je len funky spôsob, špecifikujúca, že túto funkciu 1635 01:22:16,490 --> 01:22:19,790 Patrí do Map Google. 1636 01:22:19,790 --> 01:22:23,010 >> Po zátvorkách, sme videli predtým, hej prehliadača, získate 1637 01:22:23,010 --> 01:22:29,210 me prvky v stránky, tag na stránke, ktorej jedinečný identifikátor je-- 1638 01:22:29,210 --> 01:22:30,710 >> Divákov: [nepočuteľné] 1639 01:22:30,710 --> 01:22:31,790 >> DAVID Malan: --map. 1640 01:22:31,790 --> 01:22:35,770 A čo sa deje, dobre, Táto linka spolu, linka 23, 1641 01:22:35,770 --> 01:22:38,630 je v podstate hovorí, hej prehliadač, choď si ma 1642 01:22:38,630 --> 01:22:42,800 ktoré sa vlievajú div na stránke ktorého jedinečný identifikátor je mapa, 1643 01:22:42,800 --> 01:22:45,600 pretože chcem vložiť do to-- injekciu do nej, 1644 01:22:45,600 --> 01:22:49,520 ak ste will-- veľa obsahu čo sa stane, že prichádza z webu, 1645 01:22:49,520 --> 01:22:50,427 následne. 1646 01:22:50,427 --> 01:22:52,010 A Google robí všetko pre nás. 1647 01:22:52,010 --> 01:22:55,350 >> Takže znovu, na samom konci dňa, máme tento príklad abstrakcie. 1648 01:22:55,350 --> 01:22:58,610 Nemám potuchy, čo je mapa alebo ako implementovať mapy API. 1649 01:22:58,610 --> 01:22:59,460 Nepotrebujeme sa. 1650 01:22:59,460 --> 01:23:02,740 Len musíme povedať mapy kam umiestniť seba, a odísť 1651 01:23:02,740 --> 01:23:04,880 sú základom implementácia Podrobnosti Googlu. 1652 01:23:04,880 --> 01:23:08,190 Teraz je tu zjavne dva údaje 1653 01:23:08,190 --> 01:23:11,940 že tento príklad je poskytujúca API Google. 1654 01:23:11,940 --> 01:23:16,450 Zrejme stredu mapy, a úroveň zväčšenia, tak povediac. 1655 01:23:16,450 --> 01:23:21,390 >> A niekto rozpoznať tieto súradnice, zemepisnej šírky a dĺžky? 1656 01:23:21,390 --> 01:23:24,364 Pravdepodobne nie, ale môžeme sa vrátiť na tutoriálu, doslova vidieť. 1657 01:23:24,364 --> 01:23:25,780 Ale my ho uvidíme za chvíľu. 1658 01:23:25,780 --> 01:23:29,880 Úroveň zoomu je hodnota medzi, ja nie Viete, jeden v 13. alebo niečo také. 1659 01:23:29,880 --> 01:23:32,880 Len to má čo do činenia s tým, ako ďaleko ste zväčšovať a zmenšovať, a to je všetko. 1660 01:23:32,880 --> 01:23:35,690 A teraz na samom konci stránky, vývesné linka 29-- 1661 01:23:35,690 --> 01:23:39,960 je to trochu škaredé, pretože to wraps-- tento riadok kódu 1662 01:23:39,960 --> 01:23:44,570 je to, čo stiahne do Prehliadač skutočné API Google. 1663 01:23:44,570 --> 01:23:47,500 Všetok kód, ktorý je Google inžinieri písali, ktoré implementujú 1664 01:23:47,500 --> 01:23:50,000 Celý tento rys nezabudovatelného máp. 1665 01:23:50,000 --> 01:23:51,470 >> Teraz sa poďme nič nezmení. 1666 01:23:51,470 --> 01:23:54,761 Ak ste po dobu, choďte do toho a len uložiť tento súbor, ak ste naozaj mať 1667 01:23:54,761 --> 01:23:55,760 čo mám. 1668 01:23:55,760 --> 01:23:57,370 Prejdite na jeho adresu URL. 1669 01:23:57,370 --> 01:23:59,820 Môžete kliknúť na tlačidlo Spustiť up vrchole a že povie 1670 01:23:59,820 --> 01:24:03,050 ste URL webového servera znova. 1671 01:24:03,050 --> 01:24:06,010 A to vás povedie k novej karte. 1672 01:24:06,010 --> 01:24:11,910 Ak kliknete na tlačidlo Otvoriť pre map.html, a šance sú ste 1673 01:24:11,910 --> 01:24:15,520 dostane upozornenie, chybové hlásenie, áno? 1674 01:24:15,520 --> 01:24:18,570 Chybové hlásenie, chybové hlásenie? 1675 01:24:18,570 --> 01:24:21,170 >> Takže bohužiaľ, chyba Správa nie je to poučné 1676 01:24:21,170 --> 01:24:23,890 ak ste skutočne otvoriť konzola, že karta zvláštne my 1677 01:24:23,890 --> 01:24:27,110 uchovávané otvorenie včera trochu skôr. 1678 01:24:27,110 --> 01:24:29,445 Ale ja narazil skôr, takže už som 1679 01:24:29,445 --> 01:24:30,820 prišiel na to, čo je riešenie. 1680 01:24:30,820 --> 01:24:34,440 V dnešných šmýkačky, alebo skôr v Cloud9, vývesné 1681 01:24:34,440 --> 01:24:36,430 že sme nemali robiť niečo zámerne. 1682 01:24:36,430 --> 01:24:40,690 Všimnite si, že tento skript značka v linka 29, ak budete čítať cez to, 1683 01:24:40,690 --> 01:24:44,440 Je to ako maps.googleapis.com/~~pobj niečo, niečo, niečo, 1684 01:24:44,440 --> 01:24:46,430 Všimnite si niekoho, jeden z vývojárov, 1685 01:24:46,430 --> 01:24:50,040 napísal v celom hlavnom meste listy, váš kľúč API. 1686 01:24:50,040 --> 01:24:51,700 >> Musíme vložiť niečo tam. 1687 01:24:51,700 --> 01:24:53,450 A to bol krok Urobil som pre nás predtým, 1688 01:24:53,450 --> 01:24:57,190 a opäť by mohli blacklist us Ak naraz 12 alebo viac z nás 1689 01:24:57,190 --> 01:24:59,470 začať používať rovnaký kľúč, ale uvidíme, čo sa stane. 1690 01:24:59,470 --> 01:25:03,030 Takže ak idete do dnešnej šmykľavky, jednu snímku neskôr, je tu 1691 01:25:03,030 --> 01:25:07,070 Tento veľmi funky-vyzerať ako textový reťazec. 1692 01:25:07,070 --> 01:25:12,230 Ísť dopredu a len skopírovať to a vložte ho tam, kde sa hovorí, že váš API kľúč. 1693 01:25:12,230 --> 01:25:15,120 To je ten, čo som sa prihlásili k. 1694 01:25:15,120 --> 01:25:17,700 >> A rozhodne neskúšajte písať to ručne, 1695 01:25:17,700 --> 01:25:21,210 pretože to je plný s preklepy, potenciálne. 1696 01:25:21,210 --> 01:25:23,260 Takže stačí skopírovať a vložiť to. 1697 01:25:23,260 --> 01:25:26,090 A to bude robiť linku dlhšie, ale teraz, len aby bolo jasno, 1698 01:25:26,090 --> 01:25:29,540 to by malo vyzerať trochu viac ako je tento, kde kľúč sa rovná nie 1699 01:25:29,540 --> 01:25:32,200 kapitalizované revať na vás. 1700 01:25:32,200 --> 01:25:34,810 Uložte stránku, vráťte na kartu druhú, znovu, 1701 01:25:34,810 --> 01:25:36,770 a dúfať, že vidí mapu, kde? 1702 01:25:36,770 --> 01:25:37,790 >> Divákov: Australia. 1703 01:25:37,790 --> 01:25:38,748 >> DAVID Malan: Austrália. 1704 01:25:38,748 --> 01:25:41,200 Takže zrejme to sú tie GPS súradníc z Austrálie. 1705 01:25:41,200 --> 01:25:44,491 A dovoľte mi chodiť na chvíľu a pomáhajú každému, kto nie je úplne tam, 1706 01:25:44,491 --> 01:25:47,729 ale dovoľte mi navrhnúť, cez Google, nájsť GPS súradníc zo svojej vlastnej rodné mesto 1707 01:25:47,729 --> 01:25:48,770 alebo vlastné domovskej krajiny. 1708 01:25:48,770 --> 01:25:51,436 A pravdepodobne Google môže premeniť toto up, alebo Wikipedia vám povedať. 1709 01:25:51,436 --> 01:25:54,410 Ale vybrať dve rôzne hodnoty pre zemepisnej šírky a dĺžky, 1710 01:25:54,410 --> 01:25:57,530 prejsť späť a vložiť, a potom znova načítať stránku po uložení 1711 01:25:57,530 --> 01:26:00,718 a uvidíme, či môžete mať máp pre vlastné rodnom meste. 1712 01:26:00,718 --> 01:26:04,500 1713 01:26:04,500 --> 01:26:08,042 >> A keď budete hotoví s že následná-up challenge-- 1714 01:26:08,042 --> 01:26:11,250 a ja ti dám trochu menej smer, úmyselne, takže vás zámerne 1715 01:26:11,250 --> 01:26:13,791 musieť bojovať za pár minút s dokumentáciou, 1716 01:26:13,791 --> 01:26:18,740 zmeniť mapu byť nie to cartoonish default, ale satelitná mapa. 1717 01:26:18,740 --> 01:26:24,600 Takže ste vlastne vidieť satelit snímok namiesto pekných farieb. 1718 01:26:24,600 --> 01:26:29,710 >> A náznak dám tí Ak je zmeniť typ mapy. 1719 01:26:29,710 --> 01:26:33,084 Vráť sa, že dostať začal stránky pre inšpiráciu. 1720 01:26:33,084 --> 01:26:40,599 1721 01:26:40,599 --> 01:26:42,390 Ako ste si možno zbierala, ak hľadáte, 1722 01:26:42,390 --> 01:26:44,250 je ich toľko viac čo môžete urobiť. 1723 01:26:44,250 --> 01:26:46,380 Niektorí z vás už bol zmenený typ mapy. 1724 01:26:46,380 --> 01:26:49,890 Ale môžete do-- napríklad, dovoľte mi, aby som prejsť na niečo, čo sme urobili pre kurz 1725 01:26:49,890 --> 01:26:52,050 Aj teach-- maps.cs50.net. 1726 01:26:52,050 --> 01:26:53,470 Jeden z našich undergrads to urobil. 1727 01:26:53,470 --> 01:26:58,890 My stred mapy cez Harvard Yard a prekryť všetky z týchto mien stavebných, 1728 01:26:58,890 --> 01:27:01,070 a mali sme ho pridať toto. 1729 01:27:01,070 --> 01:27:04,270 Takže keď chcem hľadať, Napríklad, Matthews Hall, 1730 01:27:04,270 --> 01:27:05,730 Máme trochu drop-down menu. 1731 01:27:05,730 --> 01:27:09,080 A myslím, že je pomocou Bootstrap, na Knižnica sme diskutovali skôr pre toto. 1732 01:27:09,080 --> 01:27:12,190 A ak kliknete na Matthews Hall, okamžite 1733 01:27:12,190 --> 01:27:14,790 skoky mapy do určitej umiestnenia, a to ukazuje 1734 01:27:14,790 --> 01:27:16,440 Ste obraz v tejto malej pop-up. 1735 01:27:16,440 --> 01:27:18,670 >> Ale aj tento malý pop-up, sme nemali realizovať. 1736 01:27:18,670 --> 01:27:27,521 Keby som sa posunúť nadol na našich získanie začal stránku a pozrite sa na informačných okien, 1737 01:27:27,521 --> 01:27:29,770 uvidíte, že niektoré z Funkčnosť vy sám 1738 01:27:29,770 --> 01:27:31,561 môže pridať, aj keď s trochu viac zložitosť, 1739 01:27:31,561 --> 01:27:33,970 je niečo, čo nazýva informačné okno. 1740 01:27:33,970 --> 01:27:37,190 A keď som na tlačidlo príklad tu, a to je to, čo je zábavné, 1741 01:27:37,190 --> 01:27:40,530 môžete robiť veci, ako je tento, Kliknutím na značku a potom voila, 1742 01:27:40,530 --> 01:27:42,400 Informácie o vyskočí. 1743 01:27:42,400 --> 01:27:45,874 >> Takže sme sa celkom zavedené dosť vlastnosti JavaScriptu 1744 01:27:45,874 --> 01:27:49,040 maľovať obraz presne tak, ako vám mohol zapojiť všetky tieto veci dohromady, 1745 01:27:49,040 --> 01:27:50,706 ale my sme trochu pod povrch. 1746 01:27:50,706 --> 01:27:53,140 V skutočnosti to, čo som práve urobil, keď Som klikol na túto značku, 1747 01:27:53,140 --> 01:27:55,819 bol spúšťací udalosť, takzvaný na udalosť click. 1748 01:27:55,819 --> 01:27:57,610 A my sme vlastne videli Udalosť dneska, 1749 01:27:57,610 --> 01:28:00,670 tzv predložiť udalosť, Keď sme boli prevenciu 1750 01:28:00,670 --> 01:28:02,490 Užívateľ pátranie po mačiek. 1751 01:28:02,490 --> 01:28:06,560 Takže sme sa trochu zdvihol a choosed zo všetkých týchto rôznych funkcií, 1752 01:28:06,560 --> 01:28:08,990 aby vám pocit, dúfajme, z toho, čo môžete vlastne 1753 01:28:08,990 --> 01:28:11,000 čo robiť s trochu viac komfort pri programovaní, 1754 01:28:11,000 --> 01:28:12,587 a úplne voľné prostriedky. 1755 01:28:12,587 --> 01:28:15,856 1756 01:28:15,856 --> 01:28:18,770 >> Nejaké otázky? 1757 01:28:18,770 --> 01:28:19,790 Nie? 1758 01:28:19,790 --> 01:28:22,542 Toto je vaša posledná šanca, že aspoň dnes, v piatok, 1759 01:28:22,542 --> 01:28:25,000 dostať niečo z vášho hrudníka takže odtiaľto 1760 01:28:25,000 --> 01:28:27,067 pocit sebavedomia a pohodlné. 1761 01:28:27,067 --> 01:28:27,566 Áno. 1762 01:28:27,566 --> 01:28:29,740 >> Divákov: Prečo nie pridáte ešte jednu vec? 1763 01:28:29,740 --> 01:28:32,720 >> DAVID Malan: Oh môj bože. 1764 01:28:32,720 --> 01:28:35,260 Musím si oddýchnuť tento víkend, myslím. 1765 01:28:35,260 --> 01:28:36,180 Ďalšie otázky? 1766 01:28:36,180 --> 01:28:37,055 >> Divákov: [nepočuteľné] 1767 01:28:37,055 --> 01:28:44,130 1768 01:28:44,130 --> 01:28:46,810 >> DAVID Malan: Vy can-- v Internet Explorer, odpočinok v mieri, 1769 01:28:46,810 --> 01:28:49,310 môžete použiť, aby bolo možné dať VB skript, virtuálne základný scenár, 1770 01:28:49,310 --> 01:28:50,643 ale že v skutočnosti nikdy pochopil. 1771 01:28:50,643 --> 01:28:52,490 Tak krátka odpoveď je jednoducho JavaScript. 1772 01:28:52,490 --> 01:28:55,144 1773 01:28:55,144 --> 01:28:55,810 Ďalšie otázky? 1774 01:28:55,810 --> 01:28:58,427 1775 01:28:58,427 --> 01:28:59,760 Dobre, dobre, nechaj ma to urobiť. 1776 01:28:59,760 --> 01:29:02,070 Nechaj ma chytiť naše kolegami vonku. 1777 01:29:02,070 --> 01:29:04,500 Majú nejaké hodnotenie formy, ktoré chcú každého 1778 01:29:04,500 --> 01:29:06,310 stráviť pár minút vypĺňanie. 1779 01:29:06,310 --> 01:29:08,775 Chcú zbierať túto formu a akýkoľvek odpustenie, ktoré ste vonku. 1780 01:29:08,775 --> 01:29:10,240 Budú mať tiež certifikáty. 1781 01:29:10,240 --> 01:29:12,380 Hádam, že to ešte nejaké občerstvenie vonku. 1782 01:29:12,380 --> 01:29:14,360 Nech prejdeme tieto von, a ak vás máte akékoľvek otázky do tej doby, 1783 01:29:14,360 --> 01:29:17,120 Budem chodiť viac individuálne a môžeme začať. 1784 01:29:17,120 --> 01:29:17,879 Áno, samozrejme. 1785 01:29:17,879 --> 01:29:18,754 Divákov: [nepočuteľné] 1786 01:29:18,754 --> 01:29:26,737 1787 01:29:26,737 --> 01:29:28,570 DAVID Malan: To je Zvyčajne platí v týchto dňoch. 1788 01:29:28,570 --> 01:29:30,730 Iste s webu softvér, budete nakláňať 1789 01:29:30,730 --> 01:29:32,901 na ostatných, či už ste esteticky použitie veci 1790 01:29:32,901 --> 01:29:35,400 ako bootstrap, takže sa nemusíte musieť vykonávať nízku úroveň 1791 01:29:35,400 --> 01:29:37,169 podrobnosti o ponukách a Tlačidlá a tak. 1792 01:29:37,169 --> 01:29:39,210 Tie opierajúci sa o niekoho ako je Google, aby vás 1793 01:29:39,210 --> 01:29:42,050 Nemusíte vybudovať Uber obchodné a mapovanie podnikania, 1794 01:29:42,050 --> 01:29:44,850 a ľubovoľný počet podobnú aplikáciách. 1795 01:29:44,850 --> 01:29:46,350 >> V skutočnosti, prihlásenie sú populárne tiež. 1796 01:29:46,350 --> 01:29:48,500 Ak ste použili Spotify alebo ľubovoľný počet webových stránok, 1797 01:29:48,500 --> 01:29:51,210 budete sa prihlásiť do niektorej webové stránky pomocou Facebooku. 1798 01:29:51,210 --> 01:29:53,350 čo takže je tu pekný, sú API pre prihlásenie 1799 01:29:53,350 --> 01:29:56,570 v dnešnej dobe, takže nemáte mať svoj vlastný užívatelia tabuľku 1800 01:29:56,570 --> 01:29:59,440 a všetky svoje vlastné databázy nutne v rovnakom rozsahu. 1801 01:29:59,440 --> 01:30:01,795 Môžete nechať Facebook robiť všetko tejto zložitosti pre vás. 1802 01:30:01,795 --> 01:30:03,920 Takže je to vzrušujúca doba, čestne, pri programovaní, 1803 01:30:03,920 --> 01:30:07,200 pretože existuje toľko treťou stranou služby, ktoré môžete stavať na vrchole. 1804 01:30:07,200 --> 01:30:10,890 >> A opäť, cena, ktorú zaplatíte, je či už finančné alebo prestoje. 1805 01:30:10,890 --> 01:30:13,750 Ak Google ide dole, tak robí Uber, pravdepodobne, 1806 01:30:13,750 --> 01:30:15,690 ale možno to je rozumný kompromis. 1807 01:30:15,690 --> 01:30:18,040 A opäť, že bol jedným z tém, dúfajme, že za posledných pár dní, 1808 01:30:18,040 --> 01:30:18,780 Práve tieto kompromisy. 1809 01:30:18,780 --> 01:30:20,738 A málokedy je tam deje byť správna odpoveď. 1810 01:30:20,738 --> 01:30:25,700 Je to naozaj lepšie z dvoch alebo viacerých odpovedí. 1811 01:30:25,700 --> 01:30:26,682 >> Odovzdať tieto okolo. 1812 01:30:26,682 --> 01:30:36,830 1813 01:30:36,830 --> 01:30:41,110 >> A tieto účty Cloud9 bude pokračovať do práce, teoreticky, na neobmedzenú dobu. 1814 01:30:41,110 --> 01:30:45,000 Dalo by sa zistiť, či budete čakať niekoľko dní alebo týždeň alebo viac prihlásiť späť do nich, 1815 01:30:45,000 --> 01:30:49,170 to môže trvať ako jeden alebo päť minút otvoriť zálohovať, 1816 01:30:49,170 --> 01:30:54,090 ale to len preto, že dal to spať ušetriť na zdroje. 1817 01:30:54,090 --> 01:31:10,527