DAVID Malan: Allt í lagi, við erum aftur. Svo fyrir spennandi Niðurstaðan, síðasta kafla okkar á forritun vefur, sem ég hélt að við myndum nota sem almennt hugtak að fanga nokkrar aðrar efni. Svo í lok af the dag, munum við í raun að gera smá snertið ekki-á forritun vefur með tungumál sem heitir JavaScript. Og ég held að við munum taka a líta á eitthvað sem tengist myndum og uppgötva eitthvað leynilega falinn í myndinni, og einnig taka a líta á the Google Maps API, umsókn forritun tengi, sem eitthvað Fulltrúi tegund af hugbúnaði það er sífellt og fáanleg í dag. En hvers vegna eigum við ekki að líta á innihaldsefnisins þessum heimi sem við höfum eins konar verið taka sem sjálfsögðum hlut hendi um nokkurt skeið, gagnagrunnur. Fyrir síðustu daga og hálft við höfum gert ráð fyrir að við höfum aðgang að gagnagrunni, en hvað vandamálið er gagnagrunnur leysa? Hvað þýðir það fyrir okkur? Hvað er það? Áhorfendur: [inaudible] DAVID Malan: Er allar upplýsingar, OK, og hvers konar upplýsinga gætir þú setur í það? Áhorfendur: [inaudible] DAVID Malan: Allar upplýsingar þú setur í það, þú munt fá til baka. Það er satt. Og á dæmigerðum vefur-undirstaða staður eða vefur umsókn, hvers konar upplýsingar, sérstaklega, gætir þú setja í? Áhorfendur: [inaudible] DAVID Malan: Notendur. Svo er það sem notandi? Áhorfendur: [inaudible] DAVID Malan: Allt í lagi, skráð notandi af the staður. Og hvað þýðir það að Upplýsingar Store notenda? Hvað semur notanda? A notandi hefur hvað? Áhorfendur: [inaudible] DAVID Malan: Já, persónulega gögn, og ég eins og það. Við skulum vera nákvæmari. Svo notandi hefur yfirleitt nafn, hvað annað gæti notandi hefur? Áhorfendur: [inaudible] DAVID Malan: An addr-- OK, svo fyrsta nafn, föðurnafn. Það er gott. Reyndar skulum laga að vegna þess að það er að fara að opna tækifæri fyrir umræðu, enn, frekar. Fornafn, eftirnafn, kyn. An ID af einhverju tagi. Hvað annað? Ég heyrði eitthvað annað áður líka. An email, póstfangi. Svo skulum staldra þar og nú íhuga ekki það sem við erum að geyma í gagnagrunninum, but-- og ekki af hverju, þar sem það er kannski augljóst að þegar þú skráir notandi, þú vilt að muna þá um nokkurt skeið. Þú vilt það ekki að bara verið geymd í vinnsluminni og vera forgotten-- svo skulum leggja áherslu á hvernig. Það kemur í ljós að í heimurinn gagnagrunna, Það er að minnsta kosti tveimur gerðum þessa dagana. Eitthvað sem kallast SQL gagnagrunn, Structured Query Language, eða, cutely hét, noSQL, sem er ekki SQL. Og seinni er dæmi um hvað gæti að kallast hlutbundin, eða hlut geyma, gagnagrunnur sem geymir hluti, og ekki, afsökun mér, eins og við munum fljótlega sjá, raðir. Þannig að við munum leggja áherslu fyrir réttlátur a augnablik á fyrsta af þessum, þ.e., SQL gagnagrunnur, ef aðeins vegna þess að það er svo þekki nú þegar, að einhver sem hefur notað Excel eða Google töflureiknar eða Apple Tölur eða allir staðall töflureikni, eða, equivalently, eða meira sophisticatedly, eitthvað eins og Microsoft Aðgang eða Oracle eða MySQL eða PostgreSQL, sem öll eru vöruheiti fyrir gerð af eftirfarandi hugmynd. A Venslagagnagrunnur er einfaldlega eitthvað sem hefur raðir og dálka. Og með raðir og dálka, Ég meina bókstaflega eitthvað eins og þetta, þannig að þar sem við gætum hafa Heiti sviði og gerð hennar hérna. Og reyndar, láttu mig nú byrja að kortleggja þetta. Svo reyndar, ég veit ekki hvers vegna ég dró sér töfluna. Við skulum halda þetta einfalt. Við höfum hérna á Upphaf borðinu okkar, þar sem þetta er nafn á sviði og þetta er gögn tegund, og tegund ég meina eftirfarandi. Er það númer, það er band, stutt band eins og orð, er það lið, er það tvöfaldur gögn, eins og mynd? Og við skulum bara stríða þetta sundur fyrir réttlátur a augnablik. Svo fyrst nafn, númer, band, stór klumpur af text-- Áhorfendur: [inaudible] DAVID Malan: Já, svo band. Og í gagnagrunni samhengi, munum við oftast kalla þetta bleikju sviði. Ég verð bara að segja bleikju nú en við erum að fara að betrumbæta þetta í smá stund. Character sviði. Eftirnafn er líklega það sama. Kyn? Karl eða kona, svo það gæti verið bleikju sviði. Það gæti verið annaðhvort quote, unquote "Karl" eða vitna, unquote "kvenkyns" eða það gæti verið m eða f. Ef þú vilt vera meira innifalið, þú gætir þurft að þriðja gildi eða einhvers konar öðrum vettvangi öllu leyti. Og svo þú gætir notað Rétt Rangt. Svæðið má kalla karl og þá gætir þú segir satt eða ósatt. En það þýðir ekki endilega að handtaka allar þær upplýsingar sem þú vilt kannski. Svo kemur í ljós að það er önnur tegund af akri, sem gæti verið gagnlegt hér í a dæmigerður gagnagrunni, sem nefnist enum, þar sem það er eðli sviði, En þú, hönnuður, fá að telja upp möguleg gildi, eins vitna, unquote "karl", vitna, unquote "kvenkyns" og svo framvegis. Svo að hvað sem gildi er í gagnagrunninn, er örugglega eðli-undirstaða, en það þarf að vera einn af þeim gildum. Við myndi sennilega ekki vilja að enum fyrsta nafn eða eftirnafn. Annars myndum við hafa að telja, eins og nafnið dregið úr, bókstaflega hvert hægt skírnarnafn og föðurnafn. OK, svo kenni hvað ætti kenni að vera? Já, svo kannski tala. Svo skulum standa með að nú, númer. Og með því að tala, tala er aðeins of breið núna. Fyrir lok seinni í dag, mér finnst eins og við ætti að vera lítið nákvæmari. Tala gæti átt eins, það gæti verið eitthvað eins 1.236. Og það er líklega ekki Hvað er átt við með auðkenni. Hvað við gerum það líklega af ID? Áhorfendur: [inaudible] DAVID Malan: Ó, OK, svo kannski er það ekki einu sinni tala. Kannski er það í raun einstakt auðkenni það er band, eins og notandanafn. Svo algerlega, gæti verið. Ég held að einhver líklega þýddi tölustafir, þó. Svo skulum vera með það. Hvers konar númer? Hvað er meira precise-- heiltölu. Svo a tala eins og 0, 1, 2, 3, þannig að við munum kalla þetta heiltala. Og jafnvel þá, ég gat að nitpicking, það er ekki í raun bara Almennt heiltala þú vilt. Þú vilt sennilega ekki neikvæð gildi, bara vegna þess, finnst það bara skrýtið. Þú vilt sennilega jákvæðar heiltölur. Svo er einnig hægt að tjá að í gagnagrunni, en nú munum við segja heiltölu. Tölvupóstur? Þetta er líklega just-- hvað? Áhorfendur: [inaudible] DAVID Malan: Það er tölvupóstur, en það er stafir, ekki satt? Það hefur bara fönkí staf eins að "við" tákn eða eitthvað annað, en það er samt persóna sviði. Og póstfang? Character sviði. Svo er það gott byrjun, en við skulum vera svolítið nákvæmari núna. Svo kemur í ljós að í gagnagrunnur, þú oft hafa val um fáguð útgáfur af þessum hlutum. Í staðreynd, í dæmigerðum SQL gagnagrunn, SQL, eða fleiri almennt, Venslagagnagrunnur, gagnagrunna með línum og dálka, þú oft fá að tilgreina ekki aðeins gerð af field-- láta mig gera nokkurt svigrúm here-- heldur einnig lengd. Svo hversu lengi er skírnarnafn? Ég held, D-A-V-I-D. Ég skil ég sennilega bara hneykslast eins helming af fólki í herberginu, hægri, þar nöfn eru lengri en fimm bréf, svo fimm virðast svolítið eigingjarn og barnaleg, svo er það betri gildi? 10, allt í lagi, og ég held við erum í lagi í herberginu. 13? 30? Hvers vegna þarf ég ekki að taka nálgun áðan þegar við voru að tala um fylki og minni? Af hverju get ég ekki bara sagt eins og 1.000? Nafn Enginn er að fara að vera lengri en 1.000. Ýta til baka. Áhorfendur: [inaudible] DAVID Malan: Já, það er eyðslusamur, rétt, sérstaklega ef flestir nöfn eru aðeins fimm eða 10 eða 15 stafir, það er mjög kostnaðarsamur. Svo þú veist hvað? Þetta er góður af a harður spurningu. Nú getum við vissulega greina English og nöfn einhverju öðru tungumáli er og reikna út, vel, hvað er average-- meðaltali er í raun ekki hjálpa us-- hvað er max er sennilega það sem við viljum í raun. En það kemur í ljós að við höfum jafnvel sumir val á tegund hér. Í a dæmigerður SQL gagnagrunn, þú hafa eitthvað sem kallast char sviði og einnig VARCHAR, V-A-R, fyrir breytu bleikju sviði. Og munurinn er þetta. A bleikju sviði, þú hönnuður, að tilgreina fyrirfram nákvæmlega lengd sviði. Svo kannski fyrsta nafn eins 20 finnst konar öruggur. Gætir þurft að gera nokkrar gúggla til sjá hvort það er í raun öruggur nógur. Það er líklega nafn með 21 stafir, en nú býst 20 er öruggur. A bleikju sviði myndi fela í gagnagrunni sem þér eru með 20 og alltaf 20 stafi. Nú ef það er bara D-A-V-I-D, 15 af þeim eru bara að fara að vera eyða stafi, en þú ert enn að nota allar 20 bæti. A varchar sviði, hins vegar er átt við band ætti að vera allt að 20 stafir en ef það er bara fimm, þú ert bara að fara að nota fimm, eða kannski sex til a sérstakt gildi í lok, svona 0 og við ræddum það táknar lok persónu röð í minni. Svo þegar finnst þér þú gætir valið bleikju móti varchar, í ljósi þess málamiðlun? Char notar sem margir stafir, varchar notar ekki meira en margir stafir. Áhorfendur: [inaudible] DAVID Malan: Allt í lagi, þegar þú veist lengd strengsins ansi sannfærandi bara að nota char, þvi ef þú veist það, bara setja það niður. Og kannski er það satt fyrir rennilás númer, í Bandaríkjunum, að minnsta kosti, 02138, það er alltaf að fara að vera fimm stafir fyrr en þú bætir bandstrik fjórum. En þú gætir hafa sumir gildi fyrir sem þú veist alltaf lengd. Eða kannski ástand tákn, eins NY fyrir New York, og MA í Massachusetts í Bandaríkjunum. Kannski þú þarft sumum tilfellum hvar sem er algerlega sanngjarnt, en með því að rökfræði, hvers vegna eru Við overthinking jafnvel þetta? Hvers vegna eigum við ekki bara að nota varchar og þá munum við bara nota alltaf tvo stafi samt, eða nota alltaf fimm stafi samt? Hvers vegna ekki bara að spara varchar fyrir allt, því að rökfræði? Það verður að vera a grípa. Áhorfendur: [inaudible] DAVID Malan: Gat skrifa eitthvað rangt. Svo er það satt. En jafnvel þá, þeir geta ekki notað meira minni en ég úthluta. Ég hef enn endanleg segja á alla lengd, svo þeir geta ekki tilviljun að það mistök, en góð hugsun. Það er meira lúmskur, en það er mjög skyld til umræðu okkar, í raun, að fylki og tengd listum fyrr. Það kemur í ljós að gagnagrunni, ef það veit að öll gildi eru af föstum lengd, jafnvel þótt sumir af þeim gildum eru auður, konar fagurfræðilega auður, D-A-V-I-D og síðan 15 eyðurnar, það kemur í ljós að ef sérhver reit er sama lengd, mikið eins og fylki höfðu allir efni hennar aftur til baka til baka til baka þannig að þú getur bara plús 1 til að fá til the næstur gildi, sama hugmynd í gagnagrunni töflunni. Ef allt karakterinn þinn strengir eru þau sömu lengd, þú hefur það sem er kallað handahófi aðgang. Ef allir strengir eru lengd 20, þú ert ekki bara gera plús 1 þú gerir bara plús 20, auk 20, auk 20, auk 20, og þú getur mjög hratt fletta í gegnum eða leita í gegnum öll gögn. A breyta bleikju sviði, hins vegar þarf ekki alltaf 20 stafi. Það gæti hafa 20 og síðan 15 og síðan 19 og síðan 10, og svo ef þú vilt leita í gegnum það, þú getur ekki bara í blindni bæta 20 bæti að fá til the næstur einn. Þú þarft bókstaflega að leitað vegna þess að brún gögn uppbygging, ef þú vilt, er tötralegur. Það fer konar inn og út miðað á raunverulegum lengd strengsins. Svo þegar þú veist lengd, sem Kareem segir, nota bleikju sviði, vegna þess að þú færð það skilvirkni þess að vera geta leitað í það hraðar þegar þú ert að leita að gögnum, annars nota breytu. Því miður, ég hef ekki gott svar hversu lengi nafn ætti að vera, en fyrir eitthvað eins nafn, myndi ég segja a varchar er algengt vegna þess að það er ekki að fara að vera fastur lengd fyrir alla. 20, ég veit ekki, 20 finnst smá þétt. Við skulum bara segja 50, 50. Það skiptir í raun ekki kostað þig að miklu meira að segja 50 í stað 40, en á einhverjum tímapunkti, þú þarft til að dómur hringja. Mjög algengar, hreinskilnislega, fyrir [? sögulegt?] ástæður, jafnvel þó að það er of mikið, er að segja 255, vegna þess að sumir tími síðan, í vinsælum kerfum gagnagrunninum, eins og MySQL, frjáls opinn uppspretta tól að mikið af fyrirtækjum eins og jafnvel Facebook notaður, þetta var hámark sjálfgefið svo að fólk bara fór með það. Svo ekki óraunhæft, en við munum nota aðeins meiri innsæi og segja, viss 50, það er líklega aðeins of. Kyn, ég eins Enum, og svo við getum þess vegna telja karl eða kona, eða kannski skilvirkari, m eða f eða einhver önnur symbology, en enum líður eins og gott val. Til að vera skýr, kyn gæti bara verið varchar, og við gætum bara öll sammála gott fólk, að alltaf að setja sömu gildi þar. Karl eða kona eða whatnot. En vandamálið þá er að við gátum, gera mistök, eins og [inaudible] lagt fyrr í öðru samhengi. Ef við gera mistök, gætum við fengið rangar gildi hjá okkur. Svo er gott um gagnagrunna hvað eins og Oracle og MySQL og aðrir, er að þú þarft þetta síðasta lag af því sem vörn DBA, gagnagrunnur stjórnandi, hver er að hanna þessa töflu eins og við eru munnlega, gæti sett í stað er enum sem verndar gegn að því að skilgreina karlkyns, kvenkyns, og svo enginn annars ekkert forritari getur tilviljun setja önnur gildi. Þannig að þetta myndi vera gott. Þetta er eiginleiki. Svo kenni, að því gefnu að tölugildi ID, það sennilega ætti að vera jákvæð heiltala. Og við gerum stundum tækifæri til að ræða lengd. Þú vildi ekki venjulega tilgreina númer hér, þú myndi í staðinn tilgreinir þetta er INT, eða stór int, eins og þeir eru venjulega kallaðir. En venjulega, heiltala væri, við skulum segja, 4 bæti. Og ef það er 4 bæti, það er hversu margir bitar? Áhorfendur: [inaudible] DAVID Malan: 32 bita. Svo hversu margir notendur geta við höfum í Skráð ef þeir hafa allir kenni og þetta ID þarf að vera einstakt? 32 bita þýðir að við höfum munstur einn, tveir, þrír, fjórir, five-- svo hversu margar mismunandi mynstur núllum og þær er hægt að hafa ef það eru 32? Það er það sama og spyrja hvað er tvær til 32? Það er stór tala sem Ég get ekki alveg rétt, en ég veit að það er um það bil 4 milljarða. Svo þýðir þetta borð gagnagrunn getur hafa fjóra milljarða notendur og það er það. Svo er þetta áhugavert hönnun vísbendingu. A viðeigandi fjöldi fyrirtækja hafa ákveðið, kannski ekki svo mikið fyrir notendur borðinu þeirra, vegna þess að hafa 4 milljarða notendur er sjaldgæft vandamál. Þetta er tegund af Facebook-stíl vandamál, ekki dæmigerður fyrirtæki vandamál. En kannski ef þú ert viðskiptanna logs eða einhvers konar gögn sem stöðugt fær skrifað inn í gagnagrunninn þinn sem algerlega gæti hafa milljarða og milljarða raðir, og þú notar heiltölu fyrir það, hvað er að fara að gerast eins fljótt og þú færð að róa númer 4 milljarða og þá reyna að setja 4000000000 og 1, svo að segja? Ég ætla að einfalda tölurnar aðeins. Þú getur skera aftur, meina ég þig verður að höndla það einhvern veginn. Og hvað tölva myndi venjulega gera, hugsa um það, jafnvel frá þessu í morgun, ef þú ert með 4-bita gildi eins og 1, 1, 1, 1, þar sem, bara að binda um morguninn saman til síðdegis, hvað er þetta númer tákna í tvöfaldur? OK, við munum gera það auðveldara. Hvað gerir þetta númer tákna í tvöfaldur? OK, við munum gera það auðveldara, hvað er þetta tákna í tvöfaldur? Áhorfendur: Þrír. DAVID Malan: Three, því Við höfum þær column-- [Hlátur] Whew! Við höfðum sjálfur dálk og twos dálki. Svo geri ráð fyrir að, örugglega, okkar [? infield?] voru ekki 32 bita, en það voru tveir bitar, getum við telja frá Notendanúmer 0, 1, 2, 3, og þá erum við eins konar aftur til notandans 00 aftur. Svo er þetta það venjulega gerist. Ef þú hefur einhvern tíma heyrt expression-- sennilega ekki, en ef þú have-- heiltala flæða, hvar þér halda ósvífni öllum bitum þínum að vera stærsta möguleg gildi, og þá þú ert út af bitum, hvað myndi venjulega gerast? Hvers vegna þarf ég að segja 00? Jæja, þetta er þrír. Hvernig get ég tákna 4? Hvernig get ég tákna að til númer 4 í tvöfaldur? Áhorfendur: [inaudible] DAVID Malan: One-- já, ekki segja 100 í sjálfu sér, vegna þess að það hefur rangt connotation, en 1-0-0. Þannig að fjöldi 1-0-0 er örugglega rétt, en ef þú hefur aðeins tvær bita, Hvað hefur þú í raun gert? Þú hefur velt yfir á 00. Og reyndar, það er það sem myndi gerast. Reyndar er hægt að hugsa um þetta meira familiarly. Ef þú manst, hvað, 16 árum síðan, heimurinn átti að enda þegar sem Y2K vandamálið gerðist. Hvers vegna var það? Jæja flestar tölvur, fyrir sanngjarnt ákvarðanir, voru að geyma tölur eins að Árið 1975 eða árið 1999 bara með því að nota tvo tölustafi í minni tölvu. Svo auðvitað, hvað gerist þegar þú færð til ársins 2000, þú ferð að þessu, eða öllu heldur, já. Svo þú ferð til ársins 2000, en ef þú ert bara að nota tvo tölustafi það lítur eins árs 00 og svo þú hafir velt yfir. Og þetta er ástæðan mikið af kerfum þarf að uppfæra á þeim tíma. Svo með því að segja, fyrirtæki eins Facebook hlaupa upp gegn þessu. Þannig að eina leiðin til að takast á við ástand, hreinskilnislega, er að sjá það. Eða hreinustu leiðin til að höndla þetta ástand er að sjá það þannig að þú ert ekki að gera breytingar síðar. Svo í stað þess 8 bæti, þú veist hvað? Ég ætla að vera framsækið hér, jafnvel þó að það er smá bjartsýnn að við erum að fara að hafa 4 milljarða og 1 notandi á heimasíðu okkar. En við skulum bara nota 8 bæti, eða 64 bitar, sem væri almennt vera kallast stór heiltala, mjög tæknileg. Og það þýðir að þú getur haft jafnvel fleiri Tölustafir númerið þitt. En þetta er mikilvægt hönnun ákvörðun, vegna þess að ef þú velur númer sem hefur of fáar bita af tjáningarkrafti þú gætir í raun að búa til padda í hugbúnaði. Allt í lagi, þannig að við skulum vefja upp með tölvupósti og póstfang. Svo email, hversu lengi ætti upp netfang vera? 50. Ég hef í raun ekki hugmynd, en það er líklega eitthvað svoleiðis, því annars enginn er að fara að skrifa þér ef það verður of löng, svo 50, við skulum fara með það fyrir nú. Póstfang, hversu lengi ætti að vera? Áhorfendur: [inaudible] DAVID Malan: Það er ekki bara Póstnúmer, þó. Póstfang, heyrði ég. Svo er þetta eins og 1 BRATTLE Square, komma, Cambridge Mass., komma, 02138. Og í raun, lát mig draga bara upp smá verkstæði hér. Þetta er eins og það er ungfrú tækifæri. Ef við höfum 1 BRATTLE Square, komma, Cambridge MA 02138, Mér finnst eins og við getum gert betur en bara póstfangið. Hvers vegna eigum við ekki að springa þetta svolítið? Hvað er ég að fara? Hvað ættum við að hafa í staðinn fyrir raðir okkar hér, kannski? Áhorfendur: [inaudible] DAVID Malan: Já, þannig að við skulum kalla það street_number, og undirstrikanir er bara algengt leið að hafa það sem lítur út eins og rúm, en það er ekki, í raun. Street, og þá city-- miður? Áhorfendur: [inaudible] DAVID Malan: Við gætum gert það. Line einn, lína tvö. Hvers vegna ekki að við munum halda það einfalt fyrir nú, en það er algerlega viðunandi ákvörðun. Og þá ríki, og þá skulum vera svolítið US-miðlægur nú og bara gera póstnúmerið, bara vegna þess að það mun leiða til áhugaverð mistök eða vandamál hér. Svo geri ráð fyrir að sé nú netfang okkar. Það er svolítið meira pirrandi að við höfum allar þessar fleiri sviðum, En nú getum við merkt það svolítið betur. Svo nú götu númer líklega ætti ekki að vera bleikju, ætti það? Hvað ætti það að vera? Áhorfendur: [inaudible] DAVID Malan: Kannski, a tala eins heiltala aftur? A stór heiltala? Þú sennilega búum ekki á 4 milljarða Main Street eða eitthvað brjálaður eins og þessi. Svo er heiltala líklega fínn, en hefur einhver lifað á heimilisfang eins 1A BRATTLE Square, eða 1 og 1/2? Þetta eru, því miður, jafnvel ef þú hefur ekki búið þar, það eru þessar frávik eins og íbúð 1A, 1B, 1C. Svo þú veist hvað, við líklega ætti ekki að fara með heiltölu, annars erum við að fara að missa sumir velta. Char sviði, kannski? Ég veit ekki hversu lengi. Það er líklega ekki að fara að vera það lengi, svo 10 eða eitthvað. Enginn er að fara að skrifa lengri númer, kannski. En aftur, ættum við líklega gefa meiri gaum að því. Kannski google, gera sumir rannsókn, en við munum fara með hugaður okkar nú. Streets, bleikju, 50, ég veit ekki. Á einhverjum tímapunkti, enginn er að fara að skrifa það á umslagi, of, þannig að það er líklega sumir efri mörk þar. City, sama, viss, svo bleikju 50. State, getur verið US-miðlægur til nú. Svo það gæti verið listi, svo góður dóms símtali ríkisins. Það gæti verið eins tvo stafi. Svo reyndar, kannski hélt ég að segja bleikju. Ég meina líklega varchar, bara fyrir suma skilvirkni, en við munum koma aftur til að ákvörðun í smá stund. Gæti verið char af lengd 2 fyrir ástand. Ef í Bandaríkjunum sem þeir hafa, eins og MA, Massachusetts, NY, New York, NJ, New Jersey, og svo framvegis. Svo það gæti verið fastur á því. DC fyrir Washington DC. En ég held, Olivier, þú Lagt nýja nálgun. Áhorfendur: [inaudible] DAVID Malan: Já, svo er það svolítið pirrandi að slá í, heldur enum gæti gert meira vit, vegna þess að þetta hætti, að minnsta kosti í Bandaríkjunum, þú gætir telja, ef tediously, en þú gerir það bara einu sinni í gagnagrunninn og aldrei aftur að hugsa um það, allir 50 tveggja eðli númer. Þannig að ég eins enum. Við skulum standa með að það, vegna þess að Það knýja konar meira dauðastirðnun. Og þá Póstnúmer? Ég held Andrew hafði hugsun á að Áhorfendur: [inaudible] DAVID Malan: Já, fimm eða níu. Við skulum bara halda það einfalt. Bara gera fimm fyrir nú. En kannski ég gat bara gera heiltölu, ekki satt? Ég gat, en þú veist hvað ég gerði þessi mistök einu sinni, í einhverjum skilningi. Árum síðan, ég var að flytja frá Microsoft Outlook til Gmail, og Outlook hefur leið útflutning alla tengiliði sem Excel skrá, a CSV skrá, aðskilin með kommum gildum skrá. Og ég gerði mistök, ég hugsa, tvöfaldur smellur það, þegar ég sótt útflutning, til að ganga úr skugga um það leit út eins og ég bjóst við. Ég hlýt að hafa högg Vista eða láta sjálfvirkt vista spark í eða eitthvað. Vegna þess að þegar ég flutt þá það inn í Gmail, það allt í uppnámi. En í mörg ár, fram á þennan dag, og Ég gerði þetta fimm, 10 árum síðan, Ég er enn að finna vini sem hafa heimilisföng sem líta svona út. Hvers vegna? Áhorfendur: [inaudible] DAVID Malan: Það tók 0, vel, frekar, það tók allt póstnúmerið sem tala, og því er það leiðandi 0 sem þýðir það hefur enga merkingu. Og svo 2138 virðist vera Póstnúmer mín. Og þetta er satt, pirrandi Excel eiginleiki þar sem ég held við vanræksla, jafnvel ef það er ætlað að bara verið texti, Microsoft Excel ákveður, láttu mig vera gagnlegt, og ó, ég sé bara tölur. Við skulum meðhöndla þetta eins og tölur. Og það truncates núllum. Ég sver til Guðs, hvert par á mánuði ég finna heimilisfang, og út af tagi OCD, ég fer aftur Eins og við höfum 0, jafnvel þótt ég aldrei senda fólk bréf eða neitt. En ég er enn að finna leifar af þessu. Svo er þetta að segja, er þetta góð hugmynd? OK, nei, vegna þess að einhver í Massachusetts, á þessu sviði, er að fara að hafa o leiðandi þá. Svo skulum við fara með eins og bleikju, sennilega, fimm. Og hér, við gerum við gæti notað enum og vér gæti telja 10.000 mögulegar zip númer, en finnst eins og það er sennilega yfir línu af, eins og, bóta. Ef þú ert að inntak sem mikið af gögnum inn í gagnagrunninn þinn til að vernda gegn einhverju. Svo bleikju áttaði þú gætir slegið í H-E-L-L-O sem upplýsingum um póstnúmer, sem er ekki, augljóslega, tölustafir. Þannig að það er engin leið, í dæmigerður gagnagrunn, að tilgreina aðeins tölustafir og aðeins fimm stafir að lengd, þannig að við erum að fara að hafa að gera það í kóða. Við erum að fara að gera það í PHP eða Java eða hvað tungumál sem við erum nota á miðlara til að framfylgja þannig þvingun. Whoo! Allt í lagi, þannig að einhverjar spurningar bara ennþá? Við skulum gera annað hönnun ákvörðun. Það kemur í ljós að þú einnig fá að velja, þegar hanna SQL gagnagrunn, eða Dæmigerð Vensla database-- þar aftur, Vensla bara þýðir raðir og dálka, það er hvernig þú skipuleggja data-- þína og átta sig á að það þýðir þetta er, Ég hef verið villandi í að ég er samningu þessa er það sem er kallað stefið fyrir gagnagrunni töflunni. Þetta er eins og upplýsingar um table-- En þegar það kemur tími að í raun að geyma gögn, og við munum gera þetta bara með dæmi hér. Ég ætla að opna Excel, því Excel gefur mér raðir og dálka. Og það er einmitt það Oracle og MySQL og önnur verkfæri mun gefa mér. Þannig að ég ætla bara að fara að nota það fyrir sakir umræðu er. Leyfðu mér að fara á undan og opna upp Fulltrúi skjal hér, stækka smá. Svo til dæmis, haus okkar eru nú fyrsta nafn, föðurnafn, kyn, ID, email, götu númer, götu, Úpps. Street, borg, ríki, bara um passar á skjánum. Svo hvað þýðir þetta er að þegar notandi skráir fyrst fyrir vefsvæðið mitt, það er að fara að vera eitthvað eins og David, Malan, m, við skulum segja 1, malan@harvard.edu, götu númer mun vera eins og 1 BRATTLE Square, Cambridge, MA, 02138, og þá svo framvegis. Svo þegar ég segi að Venslagagnagrunnur eða SQL gagnagrunnur er raðir og dálka, Ég meina þetta. Það raunveruleg gögn eru geymd í raðir og dálka. Þetta er bara tilviljun, sem við vorum að tala, og ég var bara að teikna hana út í raðir og dálka. Þetta er bara stefið, heildarnálgunin skilgreiningu. Svo á þessum sviðum hér, eða equivalently, þar, sem eru reitir sem þú hugsar Ég er líklegri til að leita á ef ég er notandi eða ef ég er gagnasafn stjórnandi? Eins og, hvað sviðum er ég reyndar að fara að leita á? Áhorfendur: [inaudible] DAVID Malan: The nafn, já svo Ég eins og the staðreynd that-- já, Netfangið gæti verið ansi algeng. Því miður, þú sagðir nafnið. Svo maybe-- og aftur, við erum konar tala í ágripi. Ég veit ekki hvers vegna þú vilt að leita að nafni, en það finnst sanngjarnt ef þú ert að leita að notanda. Kannski segir, viss, ID. Og það er hált halla, vegna þess að ég gat contrive atburðarás þar kannski yfirmaður minn hefur spurt mig, hversu margir menn höfum við á síðuna okkar? Hversu margar konur höfum við á síðuna okkar? Og svo á þeim tímapunkti, þú might vilja til að leita á kyni sviði líka, og ekkert annað. Svo er það málamiðlun hér. Aftur, það er engin rétt svar, en það er eiginleiki í flestum SQL gagnagrunna þekktur sem flokkun, þar þú, hönnuður, sem gagnasafn stjórnandi, fá að ákveða fyrirfram hvaða Fields gagnagrunnur ætti að hagræða við leit á. Þú getur mjög naively sagt, bjartsýni þetta bjartsýni að hagræða þetta, bjartsýni að og þetta, og Gagnagrunnurinn mun gera sumir töfrandi hlutur undir hetta, og gera eitthvað á þann hátt að næst þegar þú leitar á einhverjum af þessum sviðum, það mun í raun vera hraðari. Þetta er mögulegt. Það þýðir ekki að hætta sér út. En það verður að vera verð greitt. Ef þú naively, eða yfir-ákefð segja, vísitölu öllum þessum sviðum, svo að segja, gera þá alla duglegur að leita, hvaða verð ertu að borga sennilega? Áhorfendur: [inaudible] DAVID Malan: Performance. Hvað meinarðu? Jæja flutningur, að minnsta kosti í samhengi sem ég er að ræða, er betra núna. Það er skilgreining á flokkun. Það verður gert leit hraðar. Svo tími minnkar, svo að segja. Áhorfendur: [inaudible] DAVID Malan: Space. Svo aftur, eru þessir algeng viðskipti. Ég get flýtt fyrir leit, en það er að fara að kosta þig meira bæti af plássi. Hvers vegna? Jæja, við vanræksla, ef við höfum ekkert af þessi rauða stjörnur, enginn af þessum Vísitölur, sem ég er að segja, hvernig gera þú leitar að nafni í þessum gagnagrunni? Svo skulum draga okkar athygli á þessu dæmi. Ef við höfum Davíð og Scully og Kareem og Arwa og aðrir í þessum röðum, til dæmis. Svo skulum gera einmitt það. Scully er í hér, og þá Við höfum Kareem og Arwa, og allir aðrir, ef þú ert ekki hafa vísitölu skilgreind, svo að segja, það besta sem þú getur gert er línuleg leit. Ef þú leitar að Arwa, við erum ekki að fara að vera fær um að stökkva rétt við hana fljótt. Við erum að fara að byrja efst og fara alla leið til botns, ekki ólíkt upprunalega okkar Mike Smith dæmi. Ef hins vegar segi ég, hey, gagnasafn, Vísitala fyrsta nafn sviði, þá er að fara að gera eitthvað áhugamaður og styðja eitthvað eins og tvöfaldur leit. Það er líklega ekki tvöfaldur leita í sjálfu sér. Gagnagrunnar hafa tilhneigingu til að nota annað gögn uppbygging kallast b-tré, Ekki til að rugla saman með tveimur trjám, að bara gera það hraðar til að leita eitthvað lógaritmískum í náttúrunni. En verð sem þú borgar til að byggja upp það eiginleiki, að gögn uppbygging í minni, er meira bæti. Svo það gæti tekið nokkrar megabæti, sumir gígabæta, hver veit? Það veltur á þeim gögnum. Svo á einhverjum tímapunkti, þú þarft að ákveða, það er líklega ekki algengt að ræða. Svo það eru í raun sameiginleg tilvikum, ef þú hefðir virkilega að velja, hvað gæti uppáhalds sviðum þín að vera? Tölvupóstur. Og ég eins og tölvupóst vegna tölvupóst, í orði, ætti að vera einstakt. Og svo yfirleitt, þegar þú veist fyrirfram að einn af högum þínum er eða mun vera einstakt, það tilhneigingu til að vera góður sviði til að leita á, af því að þannig, þegar þú leitar að einhverju, þú ert að fara að fá aftur einn eða núll svör og þá þú ert búinn. Þú þarft ekki að halda leita enn aðra. Og svo í þessu tilfelli hér, email, svo lengi sem þú getur ekki skráð tvisvar með sama tölvupósti, er góður. ID samkvæmt skilgreiningu, í tölvunarfræði heiminum, ef þú ert að tala um að ID, sem var betra að vera einstakt. Það er tegund af inntaki af ID eða auðkenni. Og restin af þessum gæti verið, við skulum kalla þá gott að haves, en ekki raunverulega þörf. Og svo í gagnagrunni, þú tilgreinir Vísitölur, en þú getur verið jafnvel nákvæmari. Þú getur sagt, hey, gagnasafn, ganga úr skugga um að sérhver ID í þessari töflu er einstakt. Ekki einu sinni láta forritara óvart sett í tvíriti tölvupósti eða afrit kennitölu. Svo mikið eins enums vernda okkur álíka, þér Hægt er að hafa þá lægra stigi varnir. Og svo gagnasafn hönnun, í sumir skilningarvit, er góður af gaman, vegna þess að þú gerir það varnarlega. Þú ráð konar sem þú vinnur með hræðilegu, hræðilegu forritari og þú vilt að setja í eins margar varnir eins og þú getur til að vernda gögnin þín, en samtímis þú vilt til að hjálpa þeim að standa sig betur með því að velja hvaða sviðum til bjartsýni fyrir. En þú getur ekki endilega gert það í tómarúm eins og við hvers konar eru hér. Þú hefur fengið að vita hvað eru Þessar sameiginlegu tilvikum að vera. Ef verktaki er framkvæmd heimilisfang bók, þú gæti mjög vel vilja til vera fær að leita á næstum öllum sviðum, bara með eðli umsóknar. Svo kannski þú eyðir sem fleiri pláss. Hægri, einhverjar spurningar? Já. Áhorfendur: [inaudible] DAVID Malan: Nei Áhorfendur: [inaudible] DAVID Malan: Allt í lagi. Áhorfendur: [inaudible] DAVID Malan: Ó, þannig að við að tala á þann hátt nú það er alveg mál efahyggjumaður. Þannig að við erum að tala nú um Vensla gagnagrunna almennt, eða SQL gagnagrunna almennt. Áhorfendur: [inaudible] DAVID Malan: A betra orð til að nota er hægt að nota með hvaða tungumáli. Svo ég get skrifað JavaScript kóða, C númer, C ++ kóða, Java kóða, Ruby kóða, sem öll tala til a gagnagrunn og framkvæma fyrirspurnir. Í raun, það er ekki slæmt Segue til dæmis fyrirspurn. Og aftur, við erum ekki að fara að fara í Java eða C ++ eða eitthvað af því lengur, en í SQL, tungumál sem ég halda vísa, Structured Query Language, þetta sjálft er forritunarmál, en það er ætlað að vera notað fyrir, ekki óvart, Structured Query fyrirspurnir. Eftir að ég meina þetta. The vegur þú velur gögn frá MySQL gagnagrunni er þú slærð bókstaflega í forritinu eitthvað eins og að velja stjarna frá notendum. Ég er gert ráð fyrir að þetta borð, héðan í frá heitir notendur. Ég gæti kalla það eitthvað sem við viljum, En þannig er vit. Og svo að velja er mjög sameiginlegt sögn, ef þú mun í SQL, sem bókstaflega gerir það. Hvað finnst þér stjarna þýðir í þessu samhengi? Áhorfendur: [inaudible] DAVID Malan: Fyrirgefðu? Áhorfendur: [inaudible] DAVID Malan: Ekki krafist, það er meira innifalið en það, í raun og veru. Það er villtur nafnspjald staf. Stjörnu nánast alltaf þýðir neitt, þannig að þetta þýðir, í þessu tilfelli, velja allt úr gagnagrunninum. Svo þegar ég segi þetta, ég meina gefa mér aftur í hvert dálk frá borðinu mínu heitir notendum. Svo gefa mér vegna sett, eins og það er kallað. Með öðrum orðum, gefa mér afrit af töflureikni, er það sem ég er að fá á. En ef ég sagði velurðu stjarna frá notendum þar ID jafngildir 1, hversu stór er tekinn niðurstaðan sett mitt að vera þá? Eða equivalently, hversu margir línur ættu Ég afhent aftur úr gagnagrunninum? Sennilega bara einn, ef ég hef örugglega meðhöndluð ID sem einkvæmt kenni, og ef David hefur þessi auðkennið, ég ætti að fá aftur einn og aðeins einn róður sem inniheldur allar upplýsingar Davíðs. Ef ég sagði þetta þar ID jafngildir 99, ætti ég að fá til baka, í þessu samhengi, núll raðir, að minnsta kosti í augnablikinu. Hins vegar, ef ég er ekki alveg sama um allar þær upplýsingar, Ég gæti bara sagt, hvar Davíð lifa? Veldu Póstnúmer frá notendur þar ID er 1. Þetta mun velja mér aðeins Davíðs zip númer og ekki heild þess röðinni. Af hverju gæti ég gert þetta í stað þess að stjarnan fyrirspurn, sem villtur nafnspjald? Áhorfendur: [inaudible] DAVID Malan: Já, ég gæti bara þurft það. Svo er flutningur aftur svarið hér. Hvers vegna að biðja um meira upplýsingar en þú þarft, því jafnvel ef það er allt í lagi saman, þú ert enn að afrita þessi gögn, það virðist, úr gagnagrunninum í forritinu einhvern veginn, og það er bara kjánalegt ef þú Aðeins þarf fimm af þeim tölustöfum, Ekki heild á röð. Svo hvernig get ég setja inn notanda? Segjum sem svo að notandi hefur bara skráð í fyrsta skipti. The setningafræði myndi líta yfirleitt svona. Settu inn notendur, og þá myndum við segja gildum, og þá myndum við segja gildum eins, við skulum segja, Lauren Scully, videographer okkar hérna. Og næsta reitur er kyn. Þannig að við munum segja vitna, unquote "F", þá höfum kenni og ég ætla að say-- skulum þykjast hún er í raun ekki hér, þannig að við munum baka í sögunni. Svo 2 verður fyrir hana. Og svo næsta reit hér er email hennar. Svo það er að fara að vera eins og Lauren Scully og svo framvegis, og við verðum bara punktur punktur punktur það í burtu frá hér á. Nú verður það að fá smá leiðinlegur, en sem innskotið fyrirspurn myndi að lokum líta út eins og það. Ef ég vil losna við Scully, uh-ó, við skulum afskráð hana, eyðir hún reikning hennar, eyða frá notendum þar ID samsvarar 2, vilja losna við Scully. Eða ég get sagt uppfærslu notendur stillt, við skulum segja, hvað getum við breytt? Segjum sem svo að hún flytur. Setja Zip jafngildir 021-- nei, það er nú Zip hennar. 90210. Eina önnur Póstnúmer Ég veit í heiminum. Svo sem myndi breytast Zip hennar code-- raun, sem myndi ekki breyta zip kóðann hennar. Hvað gerði ég bara? Jafnvel þótt setningafræði er sennilega nýtt. Áhorfendur: [inaudible] DAVID Malan: Já, ég flutti alla að Beverly Hills, California. Svo ég ætti reyndar segja þar ID jafngildir 2. Og svo framvegis. Svo SQL er allt um þessar konar leiðbeiningar. Velja, setja, eyða, endurnýja, með þessum predicates í lok þessi þar ákvæði, svo að segja. Og það er mikið meira sem þú getur gera, en það er í raun bara sýður niður að einfaldlega, ef arcanely, tjá hvað þú vilt gagnagrunninn til að gera. Og þá gagnasafn mun reikna út, hvenær þú setja Lauren Scully inn í gagnagrunnur, hvar á að setja hana í minni þannig að við getum mjög fljótt að fá henni byggist á netfangið hennar eða á grundvelli kennitölu eða þess háttar. Já, Dan. Áhorfendur: [inaudible] DAVID Malan: Virkilega góð spurning. Mun þessar forskriftir breytast frá Microsoft Access til Oracle MySQL til PostgreSQL? Stutta svarið er að það fer. Í orði, það er mjög veruleg sameiginleg hlutmengi af SQL það er deilt yfir allt þessara gerð. Hins vegar ýmsir framleiðendur hafa added lögun að gagnagrunnum sínum til að gera ákveðna hluti utan gildissviðs þessara aðgerða, sem gæti í raun brjóta. Svo leið hönnuði verjast þessu, er að frekar en að skrifa hrár SQL kóða eins og ég er að skrifa hér, þeir nota í staðinn bókasafn, sameiginlegt bókasafn sem sjálft er tegund af hærri stigi og ágrip fjarlægð sem varan sem þú ert að nota. Og það gefur þér aðgerðir og aðferðir að hringja svo að þú aldrei í raun skrifa hrár SQL. Í orði, þá er hægt að breyta Vörurnar frá Oracle til Microsoft eða öfugt eða eitthvað annað, og þú bókstaflega breyta engu um kóðann þinn. Staðreyndin, þó, er þú stundum gefa upp einkenni sem. Þú gætir hafa valið vöru vegna þess það er got þessum virðisaukandi aðgerðir, og þú ert bara nú ekki nota þau meðvitað. Og anecdotally, hafa flest fyrirtæki aldrei að flytja í burtu frá gagnagrunni sínum. Svo á meðan þetta er gott að hafa lögun, raunveruleiki er, ef þú ert overhauling gagnasafninu, þú ert sennilega gera bunches af öðrum breytingum engu að síður, að þú gerir ekki endilega þarf að sjá það. Svo það er að öllum líkindum yfir-verkfræði vandamál, en það fer í raun eftir samhenginu. En í orði, SQL er deilt yfir þessum hinum ýmsu vörum. Virkilega góðar spurningar. Já. Áhorfendur: [inaudible] DAVID Malan: Já, svo hægt er að hugsa gagnagrunn er bara miðlara, í lok daginn, og inni í því þjóninum er a heild búnt af töflur, línur og dálka. Og þegar þú sendir fyrirspurn svona frá áætlun þitt, website, skrifað í Java, Ruby, Python, hvað, the framreiðslumaður er að fá þessa skipun og túlka hana í bókstaflega á sama hátt við ræddum áðan við túlka tungumál, og þá framkvæma nokkrar aðgerðir á núll eða fleiri raðir í núll eða fleiri borðum. Áhorfendur: [inaudible] DAVID Malan: Einmitt, nákvæmlega. Þannig að sauðakóðanum fyrir eitthvað eins og það gæti verið þessi. Í PHP skrá eða Python skrá eða Java skráin, þú þyrftir sauðakóðanum kóða, eða Scratch-eins blokkir, ef notandi smellir acme.com/register~~V í fyrsta sinn, þá setja inn notendur og svo framvegis. Og við viljum þýða þetta meira steypu númer í lokin. En í raun, við höfum öll byggingareiningar hér, jafnvel þó að við erum að sleppa sumum af framkvæmd skrefum. Svo láta mig finna sök með það sem við frábærlega gerði bara smá stund síðan. Þú hefur skapað ansi heill borð fyrir notendur. Reyndar gætum við innleiða það í nokkrum mismunandi vegu, en þú hefur í raun leitt okkur niður path-- og ég segi yður, En það er líklega fault-- mína á nokkuð óhagkvæm gagnasafn framkvæmd. Það er ekki eðlileg. Og með því eðlileg ég meina það er að fara að vera, með tímanum, veruleg offramboð, og því óhagkvæmni, sem er sóun á plássi. Byggt á aðeins það sem þú sérð hér, getur þú Ímynda hvar þessi sóun á plássi er að fara að koma frá, með tímanum, eins og fleiri og fleiri notendur skrá fyrir vefsvæðið þitt? Hvaða gögn gæti orðið ofaukið? Áhorfendur: [inaudible] DAVID Malan: Hvers meinarðu það? Áhorfendur: [inaudible] DAVID Malan: Já. Og við skulum gera ráð fyrir að því er varðar í dag að það er satt. Skrúfjárn út, og við höfum lært þetta the harður vegur, það er ekki satt. Einhvern veginn margar borgir hafa, einhvern veginn, sama póstnúmer, sem brýtur þessa frábæru innsæi. En við skulum gera ráð fyrir að sé satt, vegna þess að það er nánast alltaf satt. Svo gera ráð fyrir að Póstnúmer er alltaf í tengslum við sömu borg og ástand, sem er góður á sanngjörnu forsendu, en röng, snýr það út. En sanngjarnt forsenda tilgangi í dag. Þá geri ráð fyrir að ég bý í Cambridge, MA, samkvæmt töflu þessa notanda, og ætla að Lauren Scully býr í Cambridge, MA, og ætla að Kareem býr í Cambridge, MA, og Arwa býr í Cambridge, MA, okkur öllum í 02138. Hvers vegna erum við að muna Cambridge, MA, 02138 fyrir öllum fjórum af okkur? Hvað ætti að nægja til að muna? Áhorfendur: [inaudible] DAVID Malan: Bara Póstnúmer. Bara að 02138 er til, vegna þess að þú veist hvað við gætum gert? Við gætum fengið smá ímynda hér og hérna, skilgreina annað borð þar sem þetta er að fara til vera the nafn, þetta er að fara að vera gerð, þetta er að fara til vera the lengd, og héðan, ég er að fara að kalla þetta borgum mitt borð. Þetta var kallað, af Auðvitað notendur mitt borð. Og svo hvað ætti ég að setja hérna fyrir borgir mitt borð, finnst þér? Áhorfendur: [inaudible] DAVID Malan: Já. Svo zip og ástand og borg. Og svo gerð hér, munum við segja þetta er að fara til vera a bleikju 5 aftur, með fyrirvara um umræðu um áðan. Þetta mun vera enum, kannski eins og áður, og borgin mun vera varchar 50. Og svo núna hvað ég að eyða úr þessari töflu að útrýma þessi óhagkvæmni? Áhorfendur: [inaudible] DAVID Malan: Nice. Ríki og borg fara burt, svo að ég hef nú Brotthvarf hugsanlega óhagkvæmni fyrir redundantly muna, Cambridge, MA, Cambridge, MA, Cambridge, MA, Cambridge, MA, sem vonandi er aldrei að fara að breytast. Og jafnvel ef það virkar, það er minorly pirrandi, nú sem ég þarf að breyta það í mörgum röðum, en hér, ég gat bara breyta því á einum stað. Nú er það málamiðlun, kannski? Þetta var frábær þægilegur. Hefði öll gögnin mín vel saman. En hvað er greinilega málið núna? Áhorfendur: [inaudible] DAVID Malan: Einmitt, og ég er feginn að þú notaðir orðið ganga, því það er í raun og veru leitarorðið, í heimi Vensla gagnagrunna í SQL, það er í raun orðið sem þú gæti slegið eða að minnsta kosti flytja. Og í raun, það sem við höfum nú til að gera til að velja allar upplýsingar Davíð er eitthvað eins og að velja stjörnu notendur, ganga borgum, skráin og nú Ég ætla að bara að fara til annarrar línu þannig að þetta fits-- users.zip jafngildir cities.zip, þar users.ID er 1. Svo hvað er í gangi? Það er ljótt að leita, en þú getur konar lesa það vinstri til hægri, efst til botn. Veldu stjarna frá notendum er það sama og áður, en það er ekki frá notendum, í sjálfu sér. Það er frá notendum ganga borgum. Hvað er ég að ganga þessar tvær töflur á? Jæja, virðist, notendur töflur zip sviði, og þetta tímabil er bara sérstakur setningafræði til að tjá þessi hugmynd, og þetta er borgir töflur zip sviði. Ég vil þessir tveir að vera jafnir, en ég vil að lokum velja aðeins þær línur þar ID í notenda töflu jafngildir 1, sem gerðist að vera minn. Og bara til að vera ljóst, forritari, oftast þegar harðkóða eitthvað eins fjölda 1, því annars website eina styður David eða á mjög fyrstur notandi, þú myndi í staðinn gera eitthvað eins og ID, þar þetta táknar breyta, eitthvað sem getur breyst með tímanum, svipað í anda við það sem ég sagði áðan með þessar tegundir af staðgengla. En nú munum við bara harðkóða það sem 1. Og svo hvað þýðir þetta? Jæja, ágætur vegur til að sjón er að ef þessi hönd er notandi borð, og þessi hönd er zips borð, við erum konar finding-- og ábendingar um fingur mínar eru rennilás hérna, og ábendingar um fingur minn hér eru zip, þú ert konar interlocking það þannig að þú færð til baka leiðir Upprunalega borð, því sannarlega taka þátt tvær töflur á sameiginlegum sviði. Og það þarf ekki að vera rennilás. Það gæti verið mest allt annað, en Zip er gott, vegna þess að eitt, að það er stutt, tveir, það er alltaf Sama lengd, þannig að það er alvöru skilvirkni við það Olivier lagt hér með þátta út zip, og [Inaudible] að leggja til að við að losna um borg og ríki. Þannig að þetta er ferli þekktur sem eðlileg. Einhverjar spurningar um það? Jæja látið mig benda á þetta er góður af efni, jafnvel þó að það er nokkuð lágu stigi, þessi umræða, sem þú vildi hugsa þú ert svona fá glataður í illgresi, þetta er birtingarmynd nægur tækifæri fyrir forritara til að vera slæmt. Og í raun, jafnvel þegar við, í Námskeið Ég hef kennt, þegar við höfum haft, til dæmis, óreyndur grunnnámi forritari byggja vefsíður, við fyrstu sýn, vefsíður gætu litið frábær. Og þeir hafa allt í virkni við beðið, verktaki gerði gott starf. En þeir vissu ekki endilega að vita nóg um hönnun gagnasafn eða þeir vildu ekki að hugsa hart nóg um það hvers konar gögn og gerðir af notendum á Vefsíða ætlaði að hafa, og við finnum þá, sex mánuðum síðar, eftir að þeir hafa útskrifast eða flutt á, sem fjandinn, website okkar er í raun, raunverulega hægur. Og ég ætla ekki einu sinni að tala um að hafa milljónir eða þúsundir notenda. Ég meina nokkur hundruð notendur á háskólasvæðinu, sem allir vilja, til dæmis, versla fyrir námskeið í á sama tíma, eru þeir að nota þessi kennsluskrá Umsókn ég nefndi og málið er að fá raunverulega hægja vegna þess að það voru engar Vísitölur. Það voru engar rauðar stjörnur, svo að tala, eða við höfðum ekki endilega reiknað út sameiginleg gögn til fá nokkrar sparnaði pláss. Og svo þegar hæfnismatsferlið verktaki eða gagnasafn einstaklingur eða þess háttar, hvers konar spurninga til að hugsa um er jafnvel, þegar farið kóða einhvers, að segja, ekki endilega útlit í gegnum allt númerið þeirra, en segja, skulum líta í gegnum gagnasafn matskeið. Hvað ertu að geyma? Og þá að segja, vel, bíða mínútu, hvers vegna ertu að nota heila tölu? Hvað ef við höfum 4 milljarða og 1 af þessum línum? Og þessar tegundir af spurningum er tækifæri að eins konar ýta aftur og fá tilfinningu, þar sem ef þú ert ekki þægilegt að gera það, að hafa einhver fleiri tæknileg spyrja þessara spurninga, hvort eða ekki sem maður veit í raun efni þeirra. Og þetta er eins konar efni líka, að fólk á internetinu sem eru sjálf-kennd, kannski læra sjaldnar, vegna þess að þú ekki endilega rekast á það eins mikið, því þú getur fengið gagnagrunnur upp og keyra, en ef þú hefur lesið upp á námskeið eða verið sagði um gagnagrunn eðlileg og flokkun og flutningur, þetta eru tegundir af hlutum sem eru að fara að meiða þig. Og þú might hugsa, eða slæmt verkfræðingur gæti sagt, ó, jæja, við betri borga fyrir stærri gagnagrunn eða hraðar gagnagrunn eða bara að kasta peningum á þessu, lóðrétt umfang, ekki endilega svo. Ef þú ferð in-- og þú getur farið í eftir fact-- og bæta Vísitölur, og það gæti tekið nokkrar klukkustundir að gagnagrunninn til að byggja upp að nýju gögnum uppbygging sem ég vék að áðan, þú getur samt lagað þetta eftir því, að þetta er þar sem þú byrja að greina gott hönnuðir frá slæmur hönnuðir, ekki bara fagurfræðilega, en árangur-vitur eins og heilbrigður. Einhverjar spurningar? Nei? Svo fyrir NoSQL, sem var önnur tegund gagnasafn sem ég benti áðan, þú þarft ekki raðir og dálka. Þess í stað, þú þyrftir eitthvað sem lítur svolítið meira eins og þetta. Ég ætla að nota sameiginlega setningafræði. Hrokkið axlabönd gerst að að nota hér mikið. Þú gætir hafa eitthvað eins og fyrsta nafn er David, þú gætir hafa síðasta nafn er Malan, vitna, þú gætir hafa ID is-- afsakið, whoops-- ID er 1, tölvupóstur er malan@harvard.edu, og ég mun ekki nennir slá út restina, og þá nokkrum öðrum hlutum. Með öðrum orðum, þetta er a texta framsetning af því sem við myndum almennt kalla hlut í tölvuforriti. Og hlut er yfirleitt bara safn af helstu pör gildi. Svo aftur, þetta endurteknar þema. Við sáum lykill gildi pör í HTML, við sáum lykill par gildi nú í tengslum við gagnagrunna, og við sá lykill par gildi í samhengi af, held ég, tungumál fyrr í dag. Heldur að koma upp. Og reyndar, það er í raun hvaða gögn snýst um að, gögn og lýsigögn, eða gildi og lyklar, í sömu röð. Þannig að a non-Vensla gagnasafn, eitthvað miðað á hlutum, þar sem þú nökkurn bara allt saman og setja það í minni, myndi almennt vera mynd sem, eða hugsaði um, eins og þetta. Og ég leyfi það nú sem konar val nálgun. Og eitt er ekki endilega betra en hitt. Í raun, mjög mikið í tísku þessir dagar eru gagnagrunnar eins MongoDB og Redis og nokkrar önnur slík verkfæri, fáanleg, en þeir eru sífellt en Vogue. Sumpart vegna þess að þeir bjóða upp á viðbótar lögun yfir þessum tabular aðferðir, heldur einnig vegna þess að þeir eru svolítið auðveldara að nota, vegna þess að þú þarft ekki að hugsa eins erfitt um mikið af þessum hönnun ákvarðanir. Svo plús-merkjum og minuses. Þannig grein fyrir að það eru möguleikar umfram það sem við eyddum bara tíma á. Svo skulum gera þetta. Skulum umskipti smá aftur núna til vefur forritun, þannig að við ályktum konar í dag með eitthvað Það er svolítið snertið ekki-á, fylla í sumum eyður frá í gær. Leyfðu mér að fara á þetta fyrst. Svo muna að í gær við fengum Canonical HTML síður sem höfðu upphaflega, aðeins HTML, og þá secondarily hafði CSS, Cascading Style Sheets. Þetta er ný merki sem við gerðum ekki sjá gær, eða búa á, svokallaða handrit tag. Skrúfjárn út að þú getur raunverulega embed in a tungumál kallast JavaScript í vefnum þínum síðu og gera vefinn síður gera eitthvað. Svo hvað ég meina með því? Jæja, láttu mig fara á undan og bara lán þennan kóða um stund. Ég ætla að fara inn í Cloud9, engin þörf að fara þangað sjálfir bara enn, og ég ætla að kalla þetta alert.HTML. Ég ætla að líma í minn skrá hér. Og bara til að skýra það sem ég hef gert, látið mig fara á þetta netfang og fara að láta, og þú sérð Halló heimur. En þetta er góður af underwhelming. Mig langar að gera eitthvað svolítið öðruvísi. Þannig að ég ætla að raunverulega gera þetta. Ég ætla að fara í hér e, og á milli skriftumerki mínum, segir alert ( 'Halló, heimur'); svo tilkynning það er lítið sloppy, en ég hef fengið HTML, inni sem er tungumál kallast JavaScript, og þetta er það sem er kallað fall hringja eða aðferð kalla. Þetta er sögn, bókstaflega, í þessu tilfelli, og ég er skírskota kóða virkni að einhver annar skrifaði. Svo er það virkni að viðvörun, þannig að við skulum fara á þessa síðu nú og smelltu Hlaða aftur og nú þú sjá smá gagnvirkni. Það er góður af gamla skólanum og ljót. Þessi tegund af minnir þig á að pop-ups, ef til vill, af fyrra en það gerði gera eitthvað lítið meira forritanlegur. Svo meira en það, við skulum gera eitthvað meira áhugavert. Leyfðu mér að fara í hér og losna við þetta. Og ég ætla að fara á undan og búa til form eins og við gerðum í gær. Raunverulega, þú veist hvað? Ég ætla að fara inn í google.html, sem við byrjaði í gær, sem leit út eins þetta með þar sem við að leita að köttur En eftir það er góður af a galla í núverandi útgáfu. Það virkar fyrir ketti, en geri ráð fyrir að Ég vinna ekki og ég slá neitt, og ég smellir einfaldlega leggja. Það er skrýtin tilfinning hegðun. Tók mig til alvöru Google, ekki gefa mér villuboð. Mig langar að segja að notandinn þú þarft að gefa okkur gildi. Svo hvernig getum við gert þetta? Jæja látið mig fara aftur í Cloud9 og láta mig fara inn efst á síðunni minni og bæta við handrit tag eins og þetta, þar sem Ég ætla að slá nokkur JavaScript kóða. Og ég ætla að gera eftirfarandi. Ef (document.getelementByID-- og muna að við ræddum um það áðan, sem virka. Hvað ID vil ég að fá? Ég vil fá q, og ég ætla að segjum jafngildir ekkert, eins this-- reyndar láta mig nota gæsalappa bara fyrir consistency-- jafngildir ekkert, þá alert ( "Vinsamlegast sláðu fyrirspurn") hér. Þannig að ég hef það virðist vera eitthvað eins ástandi. Við höfum séð þessa almennu hugmynd í grunni. Það er eins og einn af þeim ráðgáta stykki sem leit svona út. Og hvað er ég að segja? Jæja, hérna, eftir ég er fara að gera eftirfarandi. Ég ætla að gefa þessa mynd reit ekki aðeins nafn q, sem er það sem fær liðið til Google, en ég er að fara að gefa það á staðnum auðkenni, einnig kallað q. En ég gat kalla þetta eitthvað sem ég vil, ég ætla bara að fara að halda það einfalt og einnig kalla það q, bara fyrir einfaldleika. Og nú ætla ég að gera eitthvað smá meira. Á reitunum hér, ég ætla að bæta það sem er kallað atburður dýraþjálfari. Á að leggja, ég vil kalla fall sem kallast staðfesta. Þetta er ekki til enn, þetta orð, eða þetta sögn sannreyna, því hvað ég ætla að gera upp hér núna er að bæta við nokkur númer. Ég ætla að segja virka staðfesta. Ég ætla að draga þetta og bæta við öðru hrokkið Brace hér og annað hér. Hugleiddu hvað þetta er nú að gera. Ég hef now-- hugsa um þetta sem búin mitt eigin þraut stykki sem gerðu það ekki áður fyrir hendi, og ég hef kallað þetta ráðgáta stykki á Staðfesta þraut stykki. Tilgangur hennar í lífinu er að framkvæma fjórum línum af kóða inni af því. Ef document.getElementById svo eðli, sem er að fara að fara í frumefni, HTML þáttur sem einstakur Hugmyndin er bara q, og þá jafnvel þótt setningafræði lítur svolítið skrítið, sem jafngildir jafngildir bara þýðir jafn. Svo þýðir að ef þáttur með einkvæmt kennimerki í q, þegar fengið, hefur ekkert gildi, jafngildir það bara vitna unquote, ekkert í það, þá hvað ég vil gera? Ég vil æpa á notanda. Og við munum ekki fara smáatriðum hér. Ég ætla að fara aftur rangar. Það er villa. Annars ætla ég að fara aftur satt. Svo annað hvort það vann eða það gerði það ekki. Rangar eða satt. Og nú ef ég var ekki að gera einhver mistök, láta mig spara þetta og endurhlaða þetta. Og láta mig bara tvöfaldur stöðva sem Ég vissi ekki, í raun, gera einhverjar innsláttarvillur, svo ég niðurlægja ekki sjálfur. Við skulum sjá hvort þetta virkar. Svo nú ætla ég að slá ketti. Það virkar samt, eða hálf virkar, amk. Nú láta mig endurhlaða hana, og nú skulum mér að reyna að senda án þess að slá anything-- fjandinn, braut það. Augnablik. Leyfðu mér að opna stjórnborðið, [Inaudible] log, endurhlaða síðunni. Leyfðu mér að reyna þetta aftur. Ó, fjandinn. Ég gleymdi. Ég gerði innsláttarvillu. Ég man hvað það er. .value. Ég ætlaði að segja ef verðmæti frumefnisins Hvers ID er q jafngildir það, þá æpa á notanda. Svo nú láta mig halda andanum aftur. Hér við fara. Þar sem við förum. Vinsamlegast sláðu fyrirspurn. Svo það er ekki að láta mig í gegnum. Ég get verið eins konar fjörugur með þetta, og í stað þess að stöðva fyrir einskis virði, Ég get sagt eitthvað eins og: Ekkert meira að leita að ketti, og nú getum við bara meira playfully láta notandi leitar fyrir hunda ef hann eða hún vill, eða ef ég fer í hér og leita ketti, nú get ég ekki. Svo er það takeaway hér? Svo einn, höfum við kynnt í heimurinn okkar á HTML og CSS, forritun virkni. Ég get reyndar nú taka ákvarðanir í kóða. Áður, allt sem ég gat gert er að merkja allt texta innihald eða myndrænt efni og segja það hvað ég á að leita eins og hvar á að birta. Nú get ég í raun að spyrja spurningar um vefsíðu og taka ákvarðanir byggðar á það, og hvetja notandann ef ég þarf að æpa á hann eða hana. Svo skulum reyna eitthvað á okkar eigin með þetta. Fara á undan, láta mig opna næstu skyggnu hér, og bara benda á eitt. Rétt eins og með CSS, við getum þáttur út JavaScript kóða okkar að sérstakri skrá, þú getur gert það sama JavaScript eins og með CSS. Og þú notar það með uppspretta eigindi af handriti merkinu. En við munum ekki flækja hlutina fyrir nú. Þess í stað, ef þú gætir fara á ekki þessa síðu, but-- láta mig færa þetta í kring í order-- fara til, ef þú gætir, þessu síðu hér. Þessi slóð hér. Það er í glærum dag. Þú gætir þurft að endurhlaða því Ég hef bætt við nokkrum hlutur. En þangað þar sem sumir þrautir bíða. Og þetta mun gefa okkur tækifæri, í örlítið meira gaman samhengi, til dabble með einhverjum JavaScript. Og þegar þú færð það, Ég skal útskýra hvað bíður. Fá grænt. Setja blár. Leikmynd grænn, setur rautt. Oops. Því miður. Þetta er umfang okkar skjöl um þessa áskorun. Og þetta er að fara að vinna eins og hér segir. Svo hvað þú hefur á þessu síðu er allt fullt mynda- þrautir með félagi í Stanford University. Svo það sem þú ert að sjá hér er nánast konar einn af þeim galdur þrautir auga, en ef þú stara bara á það, ekkert er að fara að skjóta út á þig. Frekar, eitthvað er falin í þessari mynd. Og það er falinn á eftirfarandi hátt. Myndir, eins og þið vitið, getur verið samanstendur af aðeins þremur litum. Sumir rauður, sumir blár, og sumir grænn. Og við getum gert allar litir í regnboganum með því að blanda þessum þremur litum einhvern veginn. Svo lítur þetta að mestu grænn og blár, en eins og Nick segir hér, þetta járn ráðgáta myndin er ráðgáta. Það er mynd af eitthvað frægur, hins vegar, myndin hefur verið brenglast. The frægur mótmæla er í rauðu gildi. Hins vegar rauður gildi hafa öll verið deilt með 10. Svo þeir eru of lítil með stuðlinum 10. Svo í öðrum orðum, Nick tók frumleg mynd, og hann desaturated alla af rauðu frá henni, að lækka magn af rauðu blek, ef þú vilt, í það. Blár og grænn gildi eru allir bara hégómi, handahófi gildi, aka hávaða hannað að hylja alvöru mynd. Svo hvað Nick gerði var að hann tónn niður rauðu og þá Hann kastaði bara af handahófi magn af bláum og grænum á mynd til hvers konar óskýr hvað er í raun enn þar. Þú verður að afturkalla þessar röskun til að sýna myndina. Fyrst skaltu stilla öllum bláa og græna gildi núll til að fá þá út af the vegur, og líta á árangurinn. þá margfalda hverja rauða verðmæti um 10, stigstærð aftur upp til um endanlega gildi þess. Hvað er frægur mótmæla? Svo öll að hafa þetta rétthyrningur í vafranum núna. Og eftir að það er einhver ræsir kóða, svo að segja. Þetta er JavaScript kóða sem Nick hefur skrifað fyrir þig. Og eftir að það er lína í miðjunni sem byrjar með slash slash, það er hvað er almennt kallað athugasemd. Það þýðir að það er setning til forritari sem hefur enga virkni merkingu. Það er bara sjón bending til manna. Svo þú getur farið á undan og eyða bara þessi lína, og vera frábær varkár ekki til eyða eða breyta neitt annað. Og láta mig bara að ganga í gegnum hvað þetta númer virkar og ég ætla að láta hana að þér að reikna út leyndarmál myndina. Þetta fyrsta línan hér að ég hef bara auðkenndum gefur þér eftirfarandi. Á vinstri hönd hlið, þú hefur það sem er kallað breyta sem Nick hefur geðþótta, en nokkuð sem heitir im fyrir myndina. Á hægri hönd þess merkið, Hann er að segja gefa mér nýtt vitna, unquote "einfalt mynd". Einföld mynd, í þessu samhengi er það sem er kallað bekknum, vel, það er góður af eins og a class-- tæknilega prototype-- en í raun, þetta er að gefa mér nýjan hlut, innihald sem eru á skrá, járn-puzzle.png. Með öðrum orðum, Nick hefur skapað þetta hugmynd af einfaldri mynd svo að við getum, að kennslufræðileg tilgangi, leika með mynd og breyta rautt sinni, grænn og blár gildi. Og hvernig eigum við að gera það? Þetta nokkuð dulinn setningafræði hér er góður af eins og að endurtaka blokk að sumir af þú sá í grunni fyrr í dag, þar sem þú getur endurtaka 10 sinnum. Í þessu tilviki, Nick hefur ekki hardcoded númer eins og 10. Í stað þess að hann er að segja, frumstilla breytu sem heitir x 0, að athuga hvort x er stærra en breidd myndarinnar. Og svo að vera meira viðeigandi, mynd er breyta, punktur þýðir að fara inni í honum og fá breidd þess, og Þá opna svigi, lokað svigi er bara leið forritari er segja þetta er fall. Þetta er aðferð. Þetta er virkni einhver annar skrifaði. Nota það og gefa mér aftur svar. Og þá er x ++ fínt leið segja, eftir að þú hefur gert þetta einu sinni, hækka x með 1. Með öðrum orðum, þessi er leið forritari er að framkalla lykkju sem er fara að iterate yfir öllum dálkum í mynd. Mynd er bara rist af punktar, línur og dálka af punktum. Þetta er leið til að iterating yfir öllum þeim dálkum. Og að innan, meðan við erum iterating yfir hæðir, hér og hér og hér. Svo er þetta bara leið traipsing, næstum eins og gamla skólanum ritvél, að fara bara yfir Allt mynd iteratively. Jafnvel er það ekki alveg að öllu leyti ljóst, bara taka á trú til nú, að þeim þremur línum af kóða eru saman að fara að leyfa þér að iteratively líta á hverjum pixla, sérhver punktur á myndinni. Hvað er pixla? Jæja, að vera ljóst, ef við lítum á upprunalega og stækka, ef þú setur virkilega augun að tölvuskjá, það er bara allt fullt af punktum, nokkrir þúsund punktar pakkað saman þar. Og svo hvað ert þú að gera? Hver einn af þessum punktum, endanleg skilgreining, er afleiðing af því sem er almennt kallað RGB, rauður, grænn, blár, sem aftur, er hægt að sameina til gefa þér hvaða fjölda lita. Í staðreynd, ef þú manst frá mörgum, mörgum árum síðan, skjávarpa skjár eins þetta notað til að hafa ekki eina linsu en þrír. Einn af þeim spýta út rauðu ljósi, einn af þá spýta út grænt ljós, einn af þeim spýta út bláu ljósi. Og ef þú varst í miðjum skólanum eins og ég var þar sem þeir voru aldrei almennilega takt, þú varst alltaf að horfa á sögu bíó sem voru heldur aum, vegna þess að þrír litir voru ekki sameina almennilega. En það kemur í ljós að hvert þessi gildi rauður, grænn og blár, er hægt að hafa númer sem tengist þeim. Til dæmis, 0 fyrir rauðu þýðir enga rauður, 0 Grænt þýðir ekkert grænt, og 0 fyrir bláu þýðir ekkert blár. Svo ef þú hefur ekki rautt, ekki grænn, og engin blár, hvaða lit ertu með? Áhorfendur: [inaudible] DAVID Malan: Þú myndir vona það, það er hvítt. Því miður, þetta operates-- miður? Áhorfendur: [inaudible] DAVID Malan: Svo þú raunverulega hafa svart, í þessu tilfelli. Svo ef þú hefur ekkert af þessum litir kveikt á, þú ert svartur. Hins vegar, ef þú ert, við skulum segja mikið af þeim, eins og a einhver fjöldi af rauðu, 255 um það, fullt af grænu, og mikið af bláum, sem er hvítur. Svo þetta eru tveir öfgar. Svo með því að þessum reglum, ef ég hef mikið rautt og ekkert grænt og engin blár, hvaða litur er það? Áhorfendur: [inaudible] DAVID Malan: Hægri, augljóslega. Og þá ekki rautt, fullt af grænn, engin blár, og þá ef þú have-- vel, við verðum bara að klára það, bara vegna þess, en þetta, að sjálfsögðu, nú, er blár. Og nú er hægt að sameina þessa liti. Nú sem innskot, ef einhver ykkar hafa alltaf gert sumir raunverulegur website hönnun, Þú gætir í raun sjá tákn eins og þetta. FFF-- og í raun, það er sennilega ekki einu sinni það. Það er FFFFFF. Einhver séð F er og E er og A through-- svo það kemur í ljós, við ræddum í gær um aukastaf, og í dag, svona um aukastaf. Í dag við ræddum um tvöfaldur. Skrúfjárn út, sextánskur er mjög sameiginlegt grunn kerfi til að nota í tölvunarfræði. Tvöfaldur er tveir, aukastafurinn er 10, álög er 16. Og það kemur í ljós, hvernig þú telja í sextánskur? Núll, einn, tveir, þrír, fjórir, fimm, sex, sjö, átta, níu, hvað heldur þú að nota eftir níu? Hvað er næsta tala? Við notuðum nú núll. Ég þarf 16 af þessum. Núll, einn, tveir, þrír, fjórir, fimm, sex, sjö, átta, níu, þú þarft sumir handahófskennt venju. Og hvað mannkynið ákvað nokkurn tíma síðan að eftir níu kemur bréf A og þá B og svo C. Svo þannig að þú telja í sextánskur er núll, einn, tveir, þrír, fjórir, fimm, sex, sjö, átta, níu, A, B, C, D, E, F, og það mun telja þú alla leið, það kemur í ljós, að 15. Svo núll til 15 er núll í gegnum F. Nú hvers vegna er það mikilvægt? Jæja, þegar þú hefur tvær F er, það er hvernig þú tjá 255. Svo löng saga stutt, í heimurinn Photoshop, að grafískri hönnun hugbúnaðar, í heimi vefur þróun, þar sem þú hefur fullt af litum, auðvitað, til að spila með, oft forritari mun tjá þær í sextánskur, bara vegna þess að það hefur tilhneigingu til að vera svolítið einfaldara. Jafnvel þó við fyrstu sýn það er miklu flóknari. Þannig að í öllum tilvikum, þetta er mikilvægt vegna Nick í Stanford hefur gefið okkur sex stykki af virkni að þú, verðandi forritari, mun nú hafa getu til að nota. Byggt inn í þetta vef síðu er sex virka, Sex aðferðir sem Nick skrifaði. Þrír af þeim mun fá þér númer, rauður, grænn eða blár gildi. Þrír af þeim mun setja þessi gildi. Og þessar undirstrikar eru bara tákn, þannig að þú þarft að vita hvað þeir eru. Svo með þessum þremur aðgerðum, fyrsta af þessum hlutum er að fara að vera x-hnitið og önnur af þessum hlutum er að fara til vera a y-hnit. Með öðrum orðum, sem punktur, sem pixla viltu fá græna, fá bláa, fá rauða á. Og þá hér, þetta er að fara að vera x, þetta er að fara til vera a Y gildi, og þetta er að fara að vera tala. Svo skulum gera fyrst lína af þessu saman og þá ég fara með það til þín til að reyna að leiða restina. Svo samkvæmt leiðbeiningunum á þessari síðu, þurfum við til að auka rauða með stuðlinum 10, og við þurfum að fjarlægja græna og fjarlægja blár. Við skulum byrja með síðari aðstæður. Þannig að ef ég vil, og ég ætla til að draga því að nota sum rými, ef ég vil setja rautt, græna, eða bláa gildi, Ég ætla að gera eftirfarandi. Mynd, im.setBlue, og þá byggt á fyrirmælum mínum hér, hvað þrennt ætti ég tegund inni sviga núna? Ég þarf x gildi, Y gildi, og hvaða tala ætti ég að setja hér ef ég vil losna af bláa, byggt á þessari sögu hér? Bara núll. Ef ég vil ekki blár, ég er bara að fara að breyta því á núll. Nú skulum bara ágrip hvað þetta er að gera. Ég hef hér á þessum ofan Önnur og þriðja línur, Ég hélt tvær lykkjur, Hreiður lykkjur, ef þú mun, sem eru að fara að hafa áhrif á gengur frá vinstri til hægri, toppur til botn yfir öll x gildi og öll y gildum. Því aftur, mynd sem er bara rist af línum og dálkum. Þannig að þetta er að fara að fá losa af öllum bláu. Leyfðu mér að fara í næstu línu til þín. Hvernig losna ég við alla græna? Áhorfendur: [inaudible] DAVID Malan: Nice. Áhorfendur: [inaudible] DAVID Malan: Nice. Og ég ætla að þysja út, og bara taka umönnun sem þú hefur ekki gert neinar innsláttarvillur. Og ef þú ert ánægð með það sem þú hefur gert, fara á undan og smelltu á hnappinn Hlaupa / Vista og sjá hvað þú færð. Og aftur, höfum við gert bara þrír breytingar. Við eytt sem fyrst tjá og skipta um það með þessum tveimur línum af kóða. Og það er allt í lagi ef þú þarft að lemja Friðarhlaupið / Vista hnappinn nokkrum sinnum að laga eitthvað. Og láta mig súmma einnig á minn númer svo þú getur skrifa. Góður. Svo ég sjá Andrew hefur hvað virðist vera mistök. Hann er bara got a stór svartur rétthyrningur á skjánum sínum. Er einhver annar með stór svartur rétthyrningur? Áhorfendur: Já. DAVID Malan: Big svartur rétthyrningur? OK, þannig að við skulum hugsa um hvað þetta þýðir. Við sögðum að núlli, núll, núll, svo ekki grænn, ekkert rauður, engin blár, er að fara að gefa þér svart. Og það kemur í ljós að flestir fartölvur okkar bara ekki nógu tryggð. Þú getur ekki alveg sagt það er í raun eitthvað þarna. Og ef þú konar kannski halla skjár fram og til baka, kannski sérðu a lítill eitthvað þarna? Kannski, eins konar, eins konar? Það er ekki fullkomlega svart. Áhorfendur: [inaudible] DAVID Malan: Spoiler! Það er einhver rauður þar, en muna frá forskriftum á vandamálinu, Nick tónn það niður. Hann desaturated það nokkuð, en ekki alla leið á núll. Þannig að ef við viljum stækka magn af rauðu, láta mig leggja þetta bragð. Leyfðu mér að stækka á skjánum mínum. Og láta mig fara á undan og segja upphæð jafngildir im.getRed (x, y). Þessi lína af kóða er að gefa mér eitthvað sem kallast breytu. Ég hef geðþótta, en að öllum líkindum, sæmilega kallað breyta mínum hvað, virðist? Upphæð. Bara upphæð. Ég hefði getað kallað hana eitthvað sem ég vil, en ég er nota þetta önnur aðgerð sem ég lýsti áðan að fá magn af rauðu á x Comma y. Af hverju gerði ég það? Hvað viltu gera hér? Þú þarft að add-- Áhorfendur: [inaudible] DAVID Malan: Já, kannski margfalda það með 10. Og ef þú veist þetta ekki, ég er að fara á undan og gera þetta. Ég ætla að fara á undan og segja, ég vil magn af rauðum Ég vil vera hvað sem er á rauðu, sinnum 10, og stjarnan, sem stjarna á þinn Lyklaborðið er the-- ekki nota x. Notaðu stjörnuna. Það er hvernig þú margfalda hlutina í flestum forritunarmál. Svo samkvæmt innsæi Kareem er, geymd í þessari breytu sem heitir upphæð, er hversu mikið rautt ég vil á staðsetningu xy. Hvernig, nú, ég gera það PIXEL ert að tala? Þú hefur nú þegar gert þetta áður. Þú stillir græna og blár til einskis virði, núll. Áhorfendur: [inaudible] DAVID Malan: Já, vel þú vilt það ekki til 10. Þú gerði þegar stærðfræði hér. Þannig að við erum að fá verðmæti rauður, sem er lág tala, væntanlega. Við erum að margfalda upp um 10. Það sem þú vilt gera með breytan upphæð núna? Áhorfendur: [inaudible] DAVID Malan: Nice. Svo im.set-- hvað? Áhorfendur: setRed. DAVID Malan: setRed á staðsetningu xy. Já. Og bara upphæð. Með öðrum orðum, breytu er tímabundið tákn að þú getur sett hvað sem þú vilt í. Við verður að vera að setja upp númer í það, í augnablikinu. Við höfum margfaldað það með 10 til að gera það stærra. Og nú er ég að skipta þá breytu sem því þriðja rök, eða inntak að setja rautt. Og svo að þegar þú klára það, og taka mið af the parhús-tvípunkti og sviga. Fara á undan og smelltu hlaupa / vista aftur, og þú ættir að sjá, dularfullur, hvað var í raun þar. [? Arwa,?] Hvað er það? The Eiffel Tower í fullu viðvaningur rautt, ekki alveg myrkur. það ætti að vera meira áberandi núna, já? OK. Og Andrew, ekki meira svartur kassi? Áhorfendur: [inaudible] DAVID Malan: Allt í lagi. Svo ég ætla að halda þetta á skjánum. Ef þú vilt spila með þetta síðar, ég endurskapa þetta fyrir þig. En þetta númer hérna gerði einmitt það. Hvers vegna eigum við ekki að gera eitt annað. Leyfðu mér að fletta niður lítillega. Svo í þessu tilfelli, skjávarpa er í raun ekki að gera það rétt. En á skjár þinn, þú sennilega hafa mjög rauður og mjög svartur kassi. Þetta líka, er ráðgáta sem sýnir eitthvað fræga. Hins vegar myndin hefur verið brenglast. Hið sanna ímynd, að þessu sinni, er í bláum og grænum gildum. Hins vegar hef þær allar verið skipt um 20 þannig að gildin eru mjög lítil. Rauðu gildin eru bara slembitölur, hávaði. Afturkalla slíkri röskun til að sýna sanna mynd. Svo Nick segir þá þér hvað á að gera. Setja rauða gildi á núll, og þá spilla ekki hvað það er. Margfaldið bláa og grænn gildi eftir 20. Svo það er nánast Sama program eins og áður, en þú ert að snúa ferlinu. Og ég mun setja númerið mitt úr áður á skjánum í máli Viltu að vísa aftur í það eða spila frekar með því einu. Leyfðu mér að súmma inn á það. En leysa kopar mynd þraut, númer tvö. Áhorfendur: [inaudible] DAVID Malan: Allt í lagi, þannig að þetta er ég ekki að fara að gefa eins mörgum vísbendingar. Svo ég would-- Ó, við skulum sjá, þú ert innsláttarvillu hér. Svo man, þetta hér reyndar þarf að fara þangað. Svo það sem ég myndi leggja til, ef þú vilt einblína á þessu, það er svarið. Ef þú vilt skrifa það, sem ætti að fá fyrsta einn vinna. Og þá er hægt að nota það sem innblástur fyrir þann seinni. Nice. Góður. Og fyrir forvitinn, þetta er einfalt dæmi á vísindi eða list kallað steganography, listin að fela upplýsingar í myndum. Venjulega, myndir gæti verið vatnsmerki mjög bersýnilega með merki í botni horn, en greinilega, þú getur verið miklu flóknari um það og í raun fela aðrar myndir í myndum einhvern veginn með þessari tækni. Taktu aðra 30 sekúndur, og þá munum við að minnsta kosti tilkynna hvað þú ættir að sjá. Og ég leyfi þriðja einn sem á-heimili æfa, ef þú vilt meira af áskorun þessa helgi. Og ég held Andrew gæti hafa fengið hana fyrst. Hvað er annað myndin, Andrew? Áhorfendur: Statue of Liberty. DAVID Malan: Frelsisstyttan verður svarið þetta sinn. Svo aftur, bara sumir einfaldur dæmi, markmið sem er að gefa þér tilfinningu um hvernig Við höfum þýtt myndrænu Scratch blokkir til meira pirrandi og fleira flókið kóða, en allar hugmyndir eru enn nákvæmlega það sama, að vísu með tilkomu nú af hugmyndinni um breytu, að vera fær um að geyma eitthvað tímabundið. Við skulum gera eitt snertið ekki-á, bara að nú tengja punkta að eitthvað smá meira alvöru-heiminum. Þegar þú ert tilbúin, ef þú gætir fara á þessa slóð á skjánum. Það er líka í þinn eftirlíking af skyggnur, developers.google.com/maps~~V. Skulum raunverulega gera eitthvað alvöru, svo að segja, á vefnum nota Google Maps API, eða umsókn forritun tengi, á eftirfarandi hátt. Google, eins og mörg fyrirtæki, afla a einhver fjöldi af frjáls virkni sem hægt er að nota til að byggja upp þinn eigin áhugavert forrit. Í staðreynd, ef þú hefur einhvern tíma notað Uber að fá leigubíl eða bíl, þú veist líklega að Uber hefur kort og það sýnir bíla á það. Það er, eins og ég get segja, Google Maps API. Þeir eru í raun að nota kort Google, en Uber er ekki kortlagning fyrirtæki, né myndi það vera sérstaklega áhugavert vandamál til að leysa ofan af þeirra leigubílaþjónusta vandamál. Og svo þeir ert að standa, aftur, á herðar annarra, Google í þessu tilfelli. Svo þeir nota kortin Google en þeirra eigin bíll þjónustu og aðrar slíkar aðgerðir. Þannig að við erum að fara að nýta sér þetta að gera eftirfarandi. Og ef ég hef farið of hratt, bara hringja í mig yfir í smá stund. Fús til að ágrip sumir af the ímynd efni. Þú ættir að sjá þig á síðu eins og þessa. Svo gott Google, og þeir eru meðal bestu að veita ekki aðeins API, en frjáls API sem þú getur spilað með eða nota í atvinnuskyni. Þeir byrja að rukka þig ef notkun þín er mikil, en ég fór á undan fyrirfram og skráði okkur upp fyrir a frjáls reikningur sem vonandi 10 tölvur mun ekki dæma okkur fyrir skyndilega. Svo vonandi þetta sýning vilja vinna. Og eftir að þeir hafa API fyrir Android, iOS, vefur, og vefur þjónusta, hvað sem er. Við skulum leggja áherslu á vefnum. Svo smellur bleika kassa, vefur, og að mun leiða þig, vonandi, á síðu hér. Og þeir 'got a heild búnt af API. Og það geta vera a lítill yfirþyrmandi í fyrstu, en ég ætla að stýra okkur í gegnum það sem við viljum. Efst til vinstri er Google Maps JavaScript API, JavaScript API. Svo fara á undan og smelltu á þá einn. Og það mun leiða þig núna til Eftirfarandi síða, kynningum og dæmi um kóða. Leyfðu mér að súmma út hér. Og láta mig fá okkur to-- skruna niður að þar sem það segir Stuttar skref. Skjárinn ætti að líta eins og minn. Og það er tvö skref, fá lykill og byrja að þróa. Ég gerði nú þegar skref eitt til okkur, að fá svokallaða takkann. Og þetta er algeng hugmynd. An API lykill er yfirleitt bara stór slembitölu eða string sem þú ert ímyndaður að líma inn númerið þitt, svo að Google veit hver þú ert þegar þú ert að nota þjónustu þeirra, API þeirra. Þýðir ekki að við erum rukkun neitt. Og nú, smella, í stað þess að einn, smella byrja að þróa. Ef þú gætir bara veifa mér yfir ef ekki viss hvar við erum. Þannig að við munum bara klóra yfirborð, hér en hvað Ég hélt að myndi vera sannfærandi er að í raun hafa okkur öll, nota Cloud9 í einum glugga og þetta einkatími í öðrum glugga, lets raunverulega fá okkar eigin Umsókn upp og keyra sem embed in a siðvenja Google kort í eigin vefsíðu okkar, og þá bætir eitt eða tvö lögun. En við verðum bara klóra Yfirborð hvað við getum gert. Svo bara fljótur geðheilbrigði athuga. Eru allir á þessari síðu, Google Maps JavaScript API? Ætti að segja að byrja. Við erum ekki að fara að fara í gegnum the heild hlutur með hvaða hætti. OK, í öðrum flipa, ef þú ert ekki hafa það opið, ekki fara inn í Cloud9 og fá þig bara a nýr flipi, að lokum. Svo aftur, c9.io frá í gær, c9.io, og bara að búa til nýja skrá. Og fara á undan og kalla það hvað sem þú vilt. Ég hringdi map.html mitt. Kalla það nokkuð endar í .html. Og þú ættir að vera u.þ.b. þar sem ég er í þessu ferli með bara blikkandi hvetja í tómt flipi sem heitir eitthvað eins map.html. Eða skrá, ný skrá í þetta sinn. Og nú, yfir á Google Maps JavaScript API, Við munum sleppa lestur gegnum allan þennan texta. En eftir það halló heimur er reyndar alls staðar, þú sérð það núna. Halló heimur hefur þetta stóra litríka Dæmi um a heild búnt af HTML. Fara á undan og afrita og líma bara það HTML, svo frá doc tegund efst alla leið til loka HTML tag, fara undan og afrita allar that-- aftur, það er undir halló heimur example-- og líma það inn í Cloud9 flipanum, svo að nú skjánum ætti að líta u.þ.b. eins og minn. Og þú getur vistað það, en hlaða ekki það bara ennþá. Við skulum fyrst líta á kóðinn og sjá hvort við getur ekki álykta eða læra frá því sem það er Google hefur haft okkur í blindni afrita og líma. Þeir vilja bara að hjálpa, bókstaflega, fá okkur byrjaði, en það er ekki það mikið flókið í raun það. Einhverjar spurningar bara ennþá? Við erum óhætt að sækja fram? OK. Svo fljótt, við skulum gera bara sumir fljótur heilindarathugunum. Line eitt af því sem ég sjá, og vonandi, þér sjá, hvað þýðir það, DOCTYPE HTML? Kareem, muna? Áhorfendur: [inaudible] DAVID Malan: Já. Hér kemur HTML 5. Á sama tíma, línu tveir á skjár merkir hér hey vafra, hér kemur raunverulegt HTML. Line þrjú er hey vafra, hér kemur höfuð. Line fjögur er, að sjálfsögðu, hey Vafrinn, hér kemur titilinn. Hvað gerir lína fimm gera? Reyndar er þetta ekki í raun að gera neitt fyrir okkur. Í þessu tilviki, resizes það bara síðan til vanefnda. Line sex, við höfum ekki talað um, en það skilgreinir stafagerð. Það er mismunandi leiðir til að umrita skrár, sérstaklega fyrir erlendum tungumálum. UTF-8 tilhneigingu bara að vera sjálfgefið. Svo nú munum við sjá í línu sjö í gegnum 16, sumir CSS. Og jafnvel þó að við höfum ekki séð öllum þessum hlutum áður, Við getum konar álykta. Svo línu átta leiðir, hey vafra, gilda allt eftirfarandi, sem tveir tags, virðist? HTML og líkama texta. Svo komma er nýr hlutur þar. Og það er bara leið til að tilgreina mörg merki í einu. Þá höfum við fengið hrokkið axlabönd. Svo virðist, þetta segir vafrann, gera hæð Page 100%. Svo jafnvel ef það er mjög lítið efni, gera alla síðuna, gera hlutur fylla síðuna. Gerðu kort lokum fylla síðuna. Framlegð, hvað þýðir það? Það er yfirleitt svona handahófskennt hvítt pláss í kringum brúnirnar að sumir vafra hönnuður bara ákvað að vera þar, vegna þess að það konar gerir það líta hreinni. En við viljum ekki að. Við viljum Kortið fara alla leið til brúnir. Padding, svipuð í anda við brún. Spássíur meina utan, padding leið inni, en það er sama konar samningur. Það er smá buffer milli þín og brúnir. Og þá er góð lína 13 tækifæri fyrir a fljótur yfirferðar. Hvað gerir skarpur sign kort meina, eða hashtag Kort meina? Hvað þýðir það að vísa til, í grundvallaratriðum? Áhorfendur: [inaudible] DAVID Malan: Einmitt. Þessi eign, þetta CSS eign gildir aðeins eitt, HTML tag sem hefur ID tilvísun, unquote "kortleggja". Og nú skulum hratt áfram, rolla niður til the botn af the skrá, sem er ekki of langt í burtu, og tilkynning á línu 19, ef þú límt það nákvæmlega eins og ég gerði, lína 19 hefur bara DIV, sem er skiptingu á síðunni, sem í gær I kallað rétthyrnd svæði. Það fékk ekkert í það. Það er opið tag, loka tag. En það hjartarskinn hafa einstakt auðkenni. Svo virðist sem að að gerast hér er Google er readying vefsíðu okkar til hafa lokið 100% hæð, og engin padding, engin framlegð, því hvað við erum að fara að setja inn þessarar div, sem einstakt auðkenni sem er Kortið er í raun innbyggð kort. Og við viljum það til að fylla á síðu og ekki bara vera smá rétthyrningur í miðju. Svo lína 14 álíka áherslu, að kortið sjálft ætti að hafa hæð 100%. Svo nú taka á milli línanna 20 og 28, þetta er JavaScript kóða. Og þetta er, jafnvel þó að það er setningafræðilega svolítið skrítið, Það er ekki allt sem mikið að gerast hér. Í línu 21, þetta er að lýsa eitthvað sem kallast breytu. Í stað þess að kalla það nemur, eins og við gerðum áður, við erum meira einmitt að segja Var, sem bara þýðir breytu. Við gætum hafa notað það í númer Nick, en hann gerði ekki, svo ég ekki nennir að gera það heldur. Það er breytilegt heitir kort, og þá er það fall sem er greinilega kallað initMap. Svo er þetta eins og eigin venju okkar þraut stykki í grunni. Við höfum búið til stykki af virkni heitir initMap, og þú getur konar álykta hvað er að gerast hér. Á vinstri hönd hlið, Við höfum fengið breytu, þannig að við erum að fara að setja eftirfarandi hlutur inni breytunni, frá hægri til vinstri. Hægra megin segir, hey Vafrinn gefa mér nýja Google kort. Og google.maps.map er bara angurvær leið að skilgreina sem þessa virkni tilheyrir Google Maps. Eftir sviga, höfum við séð þetta áður, hey vafra, fá mér þætti í síðunni, tag á síðunni sem einstakt auðkenni is-- Áhorfendur: [inaudible] DAVID Malan: --map. Og hvað er að gerast, vel, þessi lína saman, lína 23, er í raun að segja, hey vafra, fara að fá mér sem tóm div á síðunni sem einstakt auðkenni er kort, vegna þess að ég vil setja inn í it-- sprauta inn í það, ef þú will-- a heild búnt af efni sem gerist að vera að koma af vefnum, síðar. Og Google er að gera allt sem fyrir okkur. Svo aftur, á mjög lok dagsins, við höfum þetta dæmi um abstrakt. Ég hef ekki hugmynd um hvað Kortið er eða hvernig á að innleiða kort API. Við þurfum ekki að. Við þurfum bara að segja kortið hvar á að setja sig, og láta þá undirliggjandi framkvæmd Upplýsingar til Google. Nú er það greinilega tvö stykki af gögnum að þetta dæmi er veita til API Google. Apparently miðju kortinu, og zoom stigi, svo að segja. Og er einhver viðurkenna þetta hnit, breiddar-og lengdargráðu? Sennilega ekki, en við getum farið aftur til einkatími, bókstaflega sjá. En við munum sjá það í bara smá stund. Zoom stigi er gildi milli, ég er ekki veit, einn í 13 eða eitthvað svoleiðis. Það hefur bara að gera með hversu langt þú ert aðdregna inn eða út, og það er það. Og nú á mjög lok síðan tilkynning lína 29-- það er lítið ljótt því það wraps-- þessa línu af kóða er það niðurhal til Vafrinn raunveruleg API Google. Allar kóða sem Google verkfræðingar hafa skrifað að innleiða þetta allt eiginleiki Ívefjanleg kortum. Nú skulum ekki breyta neinu. Ef þú ert að elta eftir, fara á undan og bara spara þessi skrá, ef þú hefur örugglega það sem ég hef. Fara á veffang þess. Þú getur smellt á Run hnappinn upp efst og það mun segja þú vefslóð vefþjóninum þínum aftur. Og það mun leiða þig til a nýr flipi. Ef þú smellir á Open til map.html, og líkurnar eru þú ert fara að fá tilkynningu, villuboð, já? Villuboð, villa skilaboð? Svo því miður, the villa Skilaboðin eru ekki að uppfræða nema þú opnar raun vélinni, sem sérstakur flipi við hélt opnun í gær og svolítið fyrr í dag. En ég rakst á þetta áðan, svo ég nú mynstrağur út hvað er lausnin. Í skyggnur dag, eða frekar, í Cloud9, tilkynning sem við ekki gert eitthvað vísvitandi. Takið eftir að þetta handrit tag í lína 29, ef þú lest í gegnum það, það er eins og maps.googleapis.com/~~pobj eitthvað, eitthvað, eitthvað, þá eftir einhvern, einn af the verktaki, skrifaði í öllum höfuðborginni bréf, API lykil. Við þurfum að líma eitthvað í það. Og þetta var skref Ég gerði fyrir okkur áður, og aftur að þeir gætu svartan lista okkur ef skyndilega, 12 eða fleiri af okkur byrja að nota sama takka, en við skulum sjá hvað gerist. Svo ef þú ferð inn í dag er skyggnur, einn renna síðar, það er þetta mjög angurvær útlit Textastrengur. Fara á undan og bara að afrita það og líma það þar sem hún segir API lykil. Það er eitt sem ég sótti um. Og örugglega ekki reyna slá það út handvirkt, vegna þess að það finnst fraught með innsláttarvillur, hugsanlega. Svo bara að afrita og líma það. Og það er að fara að gera línuna lengur, en nú, bara til að vera skýr, það ætti að líta aðeins meira eins og þetta, þar sem lykill jafngildir ekki eignfærð æpa á þig. Vista síðuna þína, fara til baka til annarra flipann, endurhlaða, og vonumst til að sjá kort af hvar? Áhorfendur: Ástralía. DAVID Malan: Ástralía. Svo virðist þeir eru GPS hnit Ástralíu. Og láta mig ganga í kring fyrir réttlátur a augnablik og hjálpa þeim sem er ekki alveg það, en láta mig leggja, í gegnum Google, finna GPS hnit eigin heimabæ þínum eða eigin heimalandi þínu. Og sennilega Google getur snúið þessu upp, eða Wikipedia getur sagt þér. En velja tvær mismunandi gildi fyrir breiddar-og lengdargráðu, fara aftur í og ​​líma þær, og þá endurhlaða síðunni eftir vistun og sjá hvort þú getur haft Kort fyrir eigin heimabæ þínum. Og þegar þú ert búinn með að eftirfylgni challenge-- og ég ætla að gefa smá minna átt, vísvitandi, svo að þú vísvitandi að glíma fyrir nokkra mínútur með skjölum, breyta kortið til að vera ekki á þessu cartoonish vanræksla, en gervitungl kort. Svo þú sérð í raun gervihnött myndmál í stað þess fallegum litum. Og vísbending ég ætla að gefa þér er að breyta gerð kortsins. Fara til baka að fá byrjaði síðu fyrir innblástur. Eins og þú gætir hafa tínt, ef þú ert að leita, það eru svo margir fleiri hlutir sem þú getur gert. Sum ykkar hafa nú þegar breytt gerð kortsins. En þú getur do-- til dæmis, láttu mig fara til einhvers sem við gerðum fyrir námskeiðið Ég teach-- maps.cs50.net. Eitt af undergrads okkar gerði þetta. Við centre korti yfir Harvard Yard og yfirborð allar þessar byggja nöfn, og við höfðum hann að bæta þetta. Þannig að ef ég vil leita að, til dæmis, Matthews Hall, við höfum smá fellilistanum. Og ég held að hann sé með ræsi, því Bókasafnið við ræddum áðan um þetta. Og ef þú smellir á Matthews Hall, það strax stökk kortið að ákveðnu staðsetning, og það sýnir þú mynd í þessu litla pop-up. En jafnvel þetta litla pop-up, höfum vér ekki framkvæma. Ef ég skruna niður á okkar fá byrjaði síðu og leita að upplýsingagluggum, þú munt sjá að sumir af the virkni þér sjálfur Hægt er að bæta, að vísu með aðeins meira flókið, er eitthvað sem kallast upplýsingaglugga. Og ef ég smelli dæmi hér, og þetta er það sem er gaman, þú getur gert hlutina eins og þetta, smella á merkið og þá Voila, Upplýsingar birtist. Þannig að við höfum ekki alveg kynnt nóg aðgerðir JavaScript að mála mynd af nákvæmlega hvernig þér gæti vír allt þetta efni saman, en við höfum konar klóra yfirborðið. Í raun, það sem ég gerði bara þegar Ég smellti á þeim merki, var kveiki atburði, svokallaða á smell atburði. Og við sáum í raun atburður fyrr í dag, svokölluð leggja atburði, þegar við vorum að koma í veg notandi frá að leita að ketti. Þannig að við höfum eins konar valinn og choosed úr öllum þessum mismunandi lögun, að gefa þér tilfinningu, vonandi, af því sem þú getur raunverulega gera með aðeins meira þægindi í forritun, og alveg ókeypis auðlindir. Einhverjar spurningar? Nei? Þetta er endanleg tækifærið þitt, minnsta kosti í dag, á föstudegi, að fá neitt af brjósti þínu þannig að þú gengur héðan tilfinning öruggur og þægilegur. Já. Áhorfendur: Hvers vegna ekki þú bætir eitt í viðbót? DAVID Malan: Oh my góðvild. Ég þarf að hvíla þessa helgi, held ég. Aðrar spurningar? Áhorfendur: [inaudible] DAVID Malan: Þú can-- í Internet Explorer, hvíla í friði, þú notaðir til að vera fær um að setja VB handrit, raunverulegur undirstöðu handrit, en það raunverulega aldrei lent á. Svo er stutt svar bara JavaScript. Aðrar spurningar? Allt í lagi, vel, láta mig gera þetta. Leyfðu mér að grípa samstarfsfólk okkar utan. Þeir hafa sumir mat form sem þeir vilja allir að eyða nokkrum mínútum að fylla út. Þeir vilja til að safna þessi mynd og allir undanþágur sem þú gætir hafa úti. Þeir ætla einnig hafa vottorð. Ég giska að það er enn sumir snakk utan. Leyfðu mér að fara þetta út, og ef þú hefur einhverjar spurningar í millitíðinni, Ég ætla að ganga um meira fyrir sig og við getum fá þú ræsir. Já auðvitað. Áhorfendur: [inaudible] DAVID Malan: Það er yfirleitt satt þessa dagana. Vissulega með vefnum hugbúnaður, þú ert að halla sér á aðra þú ert annað hvort fagurfræðilega nota hluti eins ræsi, svo þú ert ekki hafa til að innleiða lágu stigi upplýsingar um valmyndir og hnappar og allt það. Þú ert að halla sér á einhvern eins og Google, svo að þér ekki að byggja upp Uber Viðskipti og kortlagning fyrirtæki, og allir tala um svipað forrit eins og heilbrigður. Í raun eru tenging vinsælar líka. Ef þú hefur notað Spotify eða allir tala um vefsíður, þú þarft að skrá þig inn til sumir websites using Facebook. Svo er það gott, það eru API fyrir innskráningu nú á dögum, svo að þú þarft ekki að hafa eigin notendum borðið og allt af eigin gagnagrunni endilega að sama marki. Þú getur látið Facebook gert allt þess flókið fyrir þig. Svo er það spennandi tími, heiðarlega, í forritun, vegna þess að það eru svo margir þriðja aðila þjónustu sem þú getur byggt ofan á. Og aftur, það verð sem þú borgar er annaðhvort fjárhagslega eða niður í miðbæ. Ef Google fer niður, svo er Uber, að öllum líkindum, en kannski er það a sanngjarnt málamiðlun. Og aftur, það var einn af þeim þemum, vonandi, fyrir the fortíð par af dögum, er þessi trade-offs. Og sjaldan er það að fara að vera rétt svar. Það er í raun betra tveggja eða fleiri svör. Pass þessum kring. Og þessar Cloud9 reikningar verði áfram að vinna, í orði, í perpetuity. Þú gætir fundið ef þú bíður í nokkra daga eða viku eða meira til að skrá þig aftur inn í þá, það gæti tekið eins og einn eða fimm mínútur að opna aftur upp, en það er bara vegna þess að þeir setja það að sofa til að vista á auðlindum.