DAVID Malan: pob hawl, yr ydym yn ôl. Felly, ar gyfer yr cyffrous gloi, mae ein adran olaf ar raglennu we, yr wyf yn meddwl y bydden ni'n ei ddefnyddio fel term cyffredinol i ddal ychydig o bynciau sy'n weddill. Felly, ar ddiwedd y dydd, byddwn yn ei wneud mewn gwirionedd ychydig o ymarferol raglennu we gyda iaith o'r enw JavaScript. Ac yr wyf yn credu y byddwn yn cymryd golwg ar rywbeth sy'n gysylltiedig â delweddau a darganfod rhywbeth cuddio gyfrinachol yn delwedd, a hefyd yn edrych ar y Google Mapiau API, rhaglennu cais rhyngwyneb, fel rhywbeth cynrychiolydd y math o feddalwedd dyna gynyddol a ar gael am ddim heddiw. Ond pam nad ydym yn cymryd golwg mewn cynhwysyn i'r byd hwn ein bod ni wedi bod yn fath o gan gymryd yn ganiataol yn bodoli am beth amser, cronfa ddata. Ar gyfer y diwrnod yn y gorffennol ac hanner rydym wedi tybio ein bod yn cael mynediad i gronfa ddata, ond pa broblem yn cronfa ddata datrys? Beth mae'n ei wneud i ni? Beth yw e? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Yn dal yr holl wybodaeth, OK, a pha fathau o wybodaeth efallai y byddwch yn ei roi ynddo? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Unrhyw wybodaeth eich rhoi mewn iddo, byddwch yn cael yn ôl. Mae hynny'n wir. Ac ar safle nodweddiadol ar y we neu ar y we cais, pa fathau o wybodaeth, yn benodol, efallai y byddwch yn ei roi i mewn? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Defnyddwyr. Felly beth defnyddiwr? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: OK, cofrestru defnyddiwr y safle. A beth mae'n ei olygu i gwybodaeth i ddefnyddwyr storio '? Beth cyfansoddi defnyddiwr? Mae gan ddefnyddiwr beth? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Yeah, personol data, ac yr wyf yn hoffi hynny. Gadewch i ni fod yn fwy manwl gywir. Felly defnyddiwr fel arfer mae ganddo enw, beth arall y defnyddiwr ei gael? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Mae OK addr--, enw felly cyntaf, enw olaf. Mae hyny'n dda. A dweud y gwir, gadewch i ni atgyweiria hynny, oherwydd ei fod yn mynd i agor cyfle i trafodaeth, yn dal, ymhellach. enw cyntaf, enw olaf, rhyw. ID o ryw fath. Beth arall? Clywais rhywbeth arall o'r blaen, hefyd. E-bost, cyfeiriad post. Felly gadewch i ni oedi yno ac yn awr yn ystyried Nid yw hyn yr ydym yn storio yn y gronfa ddata, but-- ac nid pam, gan ei fod yn bosibl amlwg bod unwaith y byddwch yn cofrestru defnyddiwr, yr ydych am eu cofio am beth amser. Nid ydych am i dim ond yn cael ei storio mewn RAM ac yn cael eu forgotten-- felly gadewch i ni ganolbwyntio ar y sut. Mae'n ymddangos bod yn fyd cronfeydd data, mae o leiaf ddau fath y dyddiau hyn. Rywbeth o'r enw cronfa ddata SQL, Iaith Ymholiad Strwythuredig, neu, a enwyd cutely, noSQL, nad yw'n SQL. Ac yr olaf yn enghraifft o'r hyn y gallai cael eu galw gwrthrych-oriented, neu storfa gwrthrych, cronfa ddata sy'n storio gwrthrychau, ac nid, esgus mi, fel y byddwn yn fuan yn gweld, rhesi. Felly byddwn yn canolbwyntio am ychydig funudau'n ar y cyntaf o'r rhain, sef, yn SQL cronfa ddata, os mai dim ond am ei fod yn mor gyfarwydd yn barod, i unrhyw un sydd wedi defnyddio Excel neu Taflenni Google neu Apple Rhifau neu unrhyw safon rhaglen taenlen, neu, cyfwerth ei, neu mwy sophisticatedly, rhywbeth fel Microsoft Mynediad neu Oracle neu MySQL neu PostgreSQL, pob un ohonynt yn enwau cynnyrch ar gyfer gweithrediadau y syniad canlynol. Mae cronfa ddata berthynol, yn syml, rhywbeth sydd rhesi a cholofnau. Ac erbyn rhesi a cholofnau, Yr wyf yn llythrennol yn golygu rhywbeth fel hyn, felly lle y gallem gael y enwi cae a'i math dros yma. Ac mewn gwirionedd, gadewch i mi yn awr yn dechrau mapio'r rhain. Felly mewn gwirionedd, nid wyf yn gwybod pam Tynnais siart ar wahân. Gadewch i ni gadw yn syml hwn. Mae gennym i'r dde yma mae'r dechreuadau ein bwrdd, lle dyma enw'r cae ac mae hyn yn y math data, ac yn ôl math yr wyf yn golygu y canlynol. A yw'n rif, a yw'n llinyn, llinyn byr fel gair, a yw'n paragraff, a yw'n data deuaidd, fel delwedd? A gadewch i ni dim ond tynnu coes hwn ar wahân am ychydig funudau'n. Felly enw cyntaf, rhif, llinyn, darn mawr o text-- GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Ie, felly llinyn. Ac mewn cyd-destun cronfa ddata, rydym annhymerus ' fel arfer yn galw maes torgoch hwn. 'N annhymerus' jyst dweud torgoch am nawr ond rydym yn mynd i fireinio hyn mewn eiliad. maes Cymeriad. Cyfenw debyg yr un fath. Rhyw? Gwryw neu fenyw, felly mae'n Gallai fod yn cae torgoch. Gallai fod yn naill ai dyfyniad, unquote "Gwrywaidd" neu dyfyniad, unquote "benyw" neu gallai fod yn m neu f. Os ydych chi am fod yn fwy cynhwysol, efallai y bydd angen i chi trydydd werth neu ryw fath o faes arall yn gyfan gwbl. Ac felly gallech ddefnyddio gwir ffug. Gallai'r maes yn cael eu galw yn ddynion, ac yna gallech ddweud gywir neu'n anghywir. Ond nid yw o reidrwydd yn cipio yr holl wybodaeth efallai y byddwch eisiau. Felly, mae'n troi allan yna fath arall o gae a allai fod yn ddefnyddiol yma mewn cronfa ddata nodweddiadol, a elwir yn enum, lle mae'n faes gymeriad, ond chi, y dylunydd, cyrraedd gyfrif y gwerthoedd posibl, fel dyfyniad, unquote "gwrywaidd", dyfynnwch, unquote "benywaidd" ac yn y blaen. Felly pa bynnag werth yn eich cronfa ddata, yn wir seiliedig gymeriad, ond mae'n rhaid iddo fod yn un o'r gwerthoedd hynny. Rydym yn debyg na fyddai eisiau enum am enw cyntaf neu enw olaf. Fel arall byddem wedi i gyfrif, fel mae'r enw yn deillio o, yn llythrennol bob enw cyntaf posibl ac enw olaf. Iawn, felly ID hyn y dylai ID fod? Ie, felly efallai rif. Felly gadewch i ni gadw at hynny am y tro, rhif. Ac yn ôl nifer, rhif i ' ychydig yn rhy eang yn awr. Ar gyfer diwedd yr ail dydd, yr wyf yn teimlo fel ein bod Dylai fod ychydig yn fwy manwl gywir. Gallai nifer golygu fel, mae'n Gallai fod yn rhywbeth fel 1.236. A dyna debyg nad yr hyn yr ydym yn ei olygu gan adnabod. Beth ydym yn ôl pob tebyg yn ei olygu gan ID? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: O, OK, felly efallai nid yw'n hyd yn oed nifer. Efallai ei fod mewn gwirionedd yn adnabod unigryw dyna llinyn, fel enw defnyddiwr. Felly hollol, gallai fod. Yr wyf yn meddwl rhywun yn ôl pob tebyg Golygai rhifol, er. Felly gadewch i ni aros gyda hynny. Pa fath o rif? Beth yw mwy precise-- yn gyfanrif. Felly mae nifer tebyg 0, 1, 2, 3, felly byddwn yn galw hyn yn gyfanrif. A hyd yn oed wedyn, gallwn fod yn nitpicking, mae'n ddim wir yn unig cyfanrif cyffredinol ydych ei eisiau. Mae'n debygol nad ydych eisiau gwerthoedd negatif, dim ond oherwydd, 'i jyst yn teimlo'n od. Mae'n debyg y byddwch am i gyfanrifau positif. Felly, gallwch hefyd fynegi bod mewn cronfa ddata, ond am y tro, byddwn yn dweud cyfanrif. E-bost? Mae hyn yn fwy na thebyg just-- yn beth? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Mae'n e-bost, ond mae hynny'n cymeriadau, dde? 'I jyst gymeriad ffynci fel yn "yn" symbol neu rywbeth arall, ond mae'n dal i fod yn faes cymeriad. A chyfeiriad post? maes Cymeriad. Felly dyna ddechrau braf, ond gadewch i ni fod ychydig yn fwy manwl gywir yn awr. Felly, mae'n ymddangos bod yn cronfa ddata, byddwch yn aml cael dewis dros fwy mireinio fersiynau o'r pethau hyn. Yn wir, mewn cronfa ddata SQL nodweddiadol, SQL, neu'n fwy cyffredinol, cronfa ddata berthynol, cronfeydd data gyda rhesi a cholofnau, byddwch yn aml cael i bennu nid yn unig y math o field-- gadewch i mi wneud rhai Yma-- ystafell ond hefyd y hyd. Felly pa mor hir yw enw cyntaf? Yr wyf yn meddwl, D-A-V-I-D. OK, got it wyf yn ôl pob tebyg dim ond troseddu fel hanner o'r bobl yn yr ystafell, ar y dde, ers eich enwau yn hirach na phum llythyrau, felly pump yn ymddangos ychydig yn hunanol a naïf, felly beth mae gwerth gwell? 10, i gyd yn iawn, ac yr wyf yn meddwl rydym yn OK yn yr ystafell. 13? 30? Pam nad ydw i'n cymryd y dull o gynharach pan fyddwn yn yn sôn am araeau a cof? Pam nad ydw i'n jyst dweud fel 1,000? enw Nid oes unrhyw un yn mynd i fod yn fwy na 1,000. Gwthio Nol. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Yeah, mae'n gwastraffus, ar y dde, yn enwedig os yw'r rhan fwyaf o enwau yn dim ond pump neu 10 neu 15 cymeriadau, mae hynny'n wastraffus iawn. Felly, rydych yn gwybod beth? Mae hwn yn fath o gwestiwn caled. Yn awr, gallwn yn sicr ddadansoddi Saesneg ac enwau unrhyw iaith arall a chyfrif i maes, yn dda, beth yw'r Nid yw cyfartaledd average-- yn wir helpu us-- beth yw'r max yn yn ôl pob tebyg yr hyn yr ydym ei eisiau. Ond mae'n troi allan rydym hyd yn oed wedi rhywfaint o ddewis dros y math yma. Mewn cronfa ddata SQL nodweddiadol, byddwch yn wedi rhywbeth a elwir yn cae char a hefyd yn varchar, V-A-R, ar gyfer cae torgoch amrywiol. Ac mae'r gwahaniaeth yn hyn. Mae cae torgoch, byddwch yn y dylunydd, rhaid i bennu o flaen llaw yr union hyd y cae. Felly efallai yr enw cyntaf hoffi 20 teimlo'n fath o ddiogel. Efallai y bydd rhaid i wneud ychydig o googling i weld os mae hynny'n ddigon mewn gwirionedd yn ddiogel. Mae fwy na thebyg enw gyda 21 cymeriadau, ond am y tro, mae'n debyg 20 yn ddiogel. Byddai cae torgoch awgrymu mewn cronfa ddata sy'n eich yn defnyddio 20 a bob amser yn 20 llythyren. Nawr, os mai dim ond D-A-V-I-D, 15 o'r rheiny yn jyst yn mynd i fod yn gymeriadau wag, ond eich bod yn dal i ddefnyddio pob 20 bytes. Mae cae varchar, mewn cyferbyniad, yn golygu'r Dylai llinyn fod hyd at 20 llythyren ond os mai dim ond pump, eich bod ond yn mynd i ddefnyddio'r pump, chwech neu efallai am werth arbennig ar y diwedd, fel 'na 0 buom yn trafod y arwydd diwedd cymeriad dilyniant yn y cof. Felly pan ydych chi'n meddwl efallai y byddwch yn dewis torgoch erbyn varchar, o gofio bod cyfaddawd? Torgoch yn defnyddio bod llawer o gymeriadau, varchar yn defnyddio dim mwy na bod llawer o gymeriadau. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: OK, os ydych chi'n gwybod y hyd y llinyn eithaf gymhellol i jyst arfer torgoch, 'achos os ydych yn ei wybod, dim ond ei roi i lawr. Ac efallai mai dyna wir am zip cod, yn yr Unol Daleithiau, o leiaf, 02138, mae bob amser yn mynd i fod pump cymeriadau nes i chi ychwanegu'r llinell doriad pedwar. Ond efallai y byddwch yn cael rhywfaint o werthoedd ar gyfer yr ydych bob amser yn gwybod hyd. Neu efallai symbolau wladwriaeth, fel NY i Efrog Newydd, ac MA ar gyfer Massachusetts yn yr Unol Daleithiau. Efallai eich bod yn cael rhywfaint o sefyllfaoedd lle mae hynny'n gwbl resymol, ond erbyn y rhesymeg, pam mae rydym hyd yn oed yn overthinking hyn? Pam nad ydym yn jyst arfer varchar ac yna rydym annhymerus unig bob amser yn defnyddio dau gymeriad beth bynnag, neu bob amser yn defnyddio pum cymeriad beth bynnag? Pam na dim ond arbed varchar i popeth, gan y rhesymeg? Rhaid cael dal. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Allech ysgrifennu rhywbeth o'i le. Felly mae hynny'n wir. Ond hyd yn oed wedyn, ni allant ddefnyddio mwy o gof na mi dyrannu. Rwy'n dal i gael y rownd derfynol dweud dros y hyd, felly ni allant ddamweiniol wneud y camgymeriad, ond meddwl da. Mae'n fwy cynnil, ond mae'n gysylltiedig iawn at ein trafodaeth, mewn gwirionedd, o araeau a'u cysylltu rhestri gynharach. Mae'n ymddangos bod cronfa ddata, os mae'n gwybod bod pob un o'r gwerthoedd yn o hyd penodol, hyd yn oed os mae rhai o'r gwerthoedd hynny yn wag, math o esthetaidd wag, D-A-V-I-D ac yna 15 bylchau, mae'n troi allan, os pob maes hwn yn yr un hyd, yn debyg amrywiaeth oedd gan ei holl bethau cefn wrth gefn wrth gefn i yn ôl fel y fe allech chi jyst ac 1 i gyrraedd y nesaf gwerth, un syniad mewn tabl cronfa ddata. Os bydd pob un o'ch cymeriad llinynnau yr un hyd, gennych yr hyn a elwir mynediad hap. Os yw'r holl dannau o Hyd 20, nad ydych yn unig gwneud ac 1 ydych yn unig yn ei wneud yn ogystal â 20, yn ogystal â 20, ynghyd â 20, ynghyd â 20, a gallwch gyflym iawn sgrolio drwy'r neu chwilio drwy eich holl ddata. Mae cae torgoch amrywiol, mewn cyferbyniad, nid yw bob amser yn cael 20 llythyren. y gallai ei gael 20 ac yna 15 ac yna 19 ac yna 10, ac felly os ydych am chwilio trwyddo, nad ydych yn gallu dim ond blindly ychwanegu 20 bytes i fynd i'r un nesaf. Mae'n rhaid i chi llythrennol i chwilio drwy oherwydd bod ymyl y strwythur data, os mynnwch, yn carpiog. Mae'n fath o yn mynd i mewn ac yn seiliedig allan ar y darn gwirioneddol y llinyn. Felly, pan fyddwch yn gwybod hyd, fel y Kareem yn dweud, defnyddiwch cae torgoch, oherwydd eich bod yn ennill y effeithlonrwydd o fod yn gallu chwilio trwyddi yn gyflymach pan ydych yn chwilio am ddata, fel arall ddefnyddio newidyn. Yn anffodus, nid oes gennyf ateb da pa mor hir y dylai'r enw fod yn, ond ar gyfer rhywbeth fel enw, byddwn yn dweud mae varchar yn gyffredin oherwydd nid yw'n mynd i fod yn hyd penodol i bawb. 20, Nid wyf yn gwybod, 20 teimlo'n ychydig o dynn. Gadewch i 'jyst dweud 50, 50. Nid yw'n iawn eich bod yn costio llawer mwy i'w ddweud 50 yn hytrach na 40, ond ar ryw bwynt, bydd angen i wneud galwad barn. gyffredin iawn, a dweud y gwir, am [? hanesyddol?] rhesymau, hyd yn oed er ei fod yn ormodol, yw dweud 255, gan fod beth amser yn ôl, mewn systemau cronfa ddata poblogaidd, fel MySQL, offeryn ffynhonnell agored am ddim bod llawer o gwmnïau hoffi hyd yn oed Facebook a ddefnyddiwyd, hwn oedd y diofyn uchafswm felly mae pobl jyst yn mynd ag ef. Felly nid afresymol, ond rydym annhymerus ' yn defnyddio ychydig yn fwy greddf ac yn dweud, yn sicr 50, dyna yn ôl pob tebyg ychydig yn ormodol. Rhyw, yr wyf yn hoffi enum, ac felly yr ydym, felly, yn gallu cyfrif gwryw neu fenyw, neu efallai yn fwy effeithlon, m neu f neu ryw symbology eraill, ond enum teimlo fel yn ddewis da yno. I fod yn glir, rhyw Gallai fod yn ddim ond varchar, a gallem dim ond i gyd cytuno ar bobl ag 'n glws, i bob amser yn rhoi'r un gwerthoedd yno. Gwryw neu fenyw neu whatnot. Ond y broblem felly, yw y gallem gwneud camgymeriad, fel [Anghlywadwy] arfaethedig yn gynharach mewn cyd-destun gwahanol. Os byddwn yn gwneud camgymeriad, gallem gael gwerthoedd anghywir yn ein cronfa ddata. Felly beth sy'n neis am gronfeydd data fel Oracle a MySQL ac eraill, yw bod gennych hon ddiwethaf haen o amddiffyniad lle gweinyddwr eich DBA, cronfa ddata, pwy bynnag sy'n dylunio tabl hwn fel rydym yn llafar, a allai roi i mewn i le enum sy'n amddiffyn yn erbyn hynny drwy bennu gwryw, benyw, ac felly does neb arall all unrhyw rhaglennydd yn ddamweiniol mewnosod unrhyw werth arall. Felly byddai hyn yn beth da. Mae hwn yn nodwedd. Felly ID, gan dybio ID rhifol, mae'n Mae'n debyg y dylai fod yn gyfanrif positif. Ac rydym weithiau mae gennym cyfle i drafod hyd. Ni fyddech chi fel arfer nodi nifer yma, byddech yn lle hynny yn nodi mae hwn yn int, neu int mawr, gan eu bod fel arfer gelwir. Ond yn nodweddiadol, yn gyfanrif fyddai, gadewch i ni ddweud, 4 bytes. Ac os yw'n 4 bytes, dyna faint o ddarnau? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: 32 ddarnau. Felly, faint o ddefnyddwyr y gallwn gael mewn ein cronfa ddata os ydynt i gyd yn cael ID ac Adnabod rhaid i hyn fod yn unigryw? 32 darnau golygu gennym batrymau o un, dau, tri, pedwar, five-- felly faint o batrymau gwahanol o zeros a gall rhai sydd gennych os oes 32? Dyna yr un peth â gofyn beth yw dau i'r 32? Mae'n nifer fawr sy'n ni allaf ei gael yn iawn, ond yr wyf yn gwybod ei fod yn bod tua 4 biliwn. Felly, mae hyn yn golygu y gall eich tabl cronfa ddata cael phedwar biliwn o ddefnyddwyr a dyna ni. Felly mae hwn yn ddiddorol Goblygiad dylunio. Mae nifer gweddus o gwmnïau wedi penderfynu, efallai nid yn gymaint ar gyfer eu bwrdd defnyddwyr, gan fod cael 4 biliwn a defnyddwyr yn broblem prin. Mae hwn yn fath o Facebook-arddull broblem, nid problem cwmni nodweddiadol. Ond efallai os oes gennych logiau trafod neu ryw fath o ddata sy'n gyson cael hysgrifennu i mewn i'ch cronfa ddata y gallai gwbl gael biliynau a biliynau o rhesi, ac ydych yn defnyddio cyfanrif ar ei gyfer, beth sy'n mynd i ddigwydd cyn gynted ag y byddwch yn cael i rwyfo rhif 4 biliwn a ac yna rydych yn ceisio mewnosoder y 4 biliynfed ac 1, fel petai? Im 'yn symleiddio'r rhifau ychydig. Gallwch dorri yn ôl, yr wyf yn golygu i chi rhaid i ymdrin â hwy rywsut. A beth fyddai cyfrifiadur fel arfer yn ei wneud, meddwl am y peth hyd yn oed gan y bore yma, os oes gennych werth 4-bit fel 1, 1, 1, 1, a, dim ond i glymu'r bore at ei gilydd i y prynhawn, beth mae nifer hwn gynrychioli mewn deuaidd? OK, byddwn yn ei gwneud yn haws. Beth mae'r rhif hwn cynrychioli mewn deuaidd? OK, byddwn yn ei gwneud yn haws, beth mae hyn yn ei gynrychioli mewn deuaidd? GYNULLEIDFA: Tri. DAVID Malan: Three, gan fod mae gennym y rhai column-- [Chwerthin] Whew! Cawsom y golofn rhai a'r golofn deuoedd. Felly debyg bod, yn wir, mae ein [? Nid yw tir âr?] Roedd 32 o ddarnau, ond bai'n dau darnau, y gallwn cyfrif o rif 0, 1, 2, 3 defnyddiwr, ac yna rydym yn fath o yn ôl i'r defnyddiwr 00 eto. Felly, mae hyn yn beth sy'n digwydd fel arfer. Os ydych chi erioed wedi clywed y expression-- yn ôl pob tebyg dim rhaid, ond os ydych have-- gorlif cyfanrif, lle rydych yn cadw flipping eich holl ddarnau i fod y gwerthoedd mwyaf posibl, ac yna ydych allan o ddarnau, beth fyddai fel arfer yn digwydd? Pam ydw i'n dweud 00? Wel, mae hyn yn dri. Sut ydw i'n cynrychioli 4? Sut ydw i'n gynrychioli'r ar gyfer rhif 4 mewn deuaidd? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: One-- yeah, peidiwch â dweud 100 per se, oherwydd ei fod wedi y anghywir arwyddocâd, ond 1-0-0. Felly y rhif hwnnw 1-0-0 yn wir gywir, ond os oes gennych ond dau darnau, beth ydych chi wedi'i wneud mewn gwirionedd? Rydych chi wedi rholio drosodd i 00. Ac yn wir, dyna beth fyddai'n digwydd. A dweud y gwir, gallwch feddwl am hyn yn fwy cyfarwydd. Os cofiwch, beth, 16 mlynedd yn ôl, mae'r byd oedd i fod i ben pan fydd y broblem Y2K ddigwyddodd. Pam oedd hynny? Wel y rhan fwyaf o gyfrifiaduron, er penderfyniadau rhesymol, yn storio rhifau fel y blwyddyn 1975 neu'r flwyddyn 1999 gan ddim ond gan ddefnyddio dau ddigid er cof y cyfrifiadur. Felly, wrth gwrs, beth sy'n digwydd pan fyddwch yn mynd at y flwyddyn 2000, byddwch yn mynd i hwn, neu yn hytrach, yeah. Felly, byddwch yn mynd at y flwyddyn 2000, ond os rydych yn unig gan ddefnyddio dau ddigid mae'n edrych fel y flwyddyn 00 ac felly eich bod wedi rholio drosodd. A dyma pam mae llawer o systemau angen diweddaru'r ar y pryd. Felly, gyda dweud hynny, cwmnïau fel Facebook yn rhedeg i fyny yn erbyn hyn. Felly, yr unig ffordd i ymdrin â'r sefyllfa, a dweud y gwir, yw rhagweld iddo. Neu'r ffordd glanaf i trin y sefyllfa hon yw rhagweld iddo fel nad ydych yn ei wneud rhaid i wneud newidiadau nes ymlaen. Felly, yn lle 8 bytes, eich bod yn gwybod beth? Rydw i'n mynd i fod yn flaengar yma, hyd yn oed er 'i' ychydig yn optimistaidd y rydym yn mynd i gael 4 biliwn a ac 1 o ddefnyddwyr ar ein gwefan. Ond gadewch i ni dim ond yn defnyddio 8 bytes, neu 64 darnau, a fyddai arfer yn a elwir yn cyfanrif mawr, technegol iawn. Ac mae hynny'n ei olygu yw y gallwch gael hyd yn oed mwy digidau eich rhif. Ond mae hyn yn bwysig penderfyniad dylunio, oherwydd os ydych yn dewis rhif sy'n Mae rhy ychydig o ddarnau o expressiveness fe allech chi greu mewn gwirionedd nam yn eich meddalwedd. Mae pob hawl, felly gadewch i lapio fyny gyda e-bost a chyfeiriad post. Felly e-bost, pa mor hir y dylai cyfeiriad e-bost fod? 50. Fi 'n sylweddol i ddim syniad, ond mae'n yn ôl pob tebyg rhywbeth fel 'na, oherwydd fel arall nad oes neb yn mynd i ysgrifennu atoch os yw'n mynd yn rhy hir, felly 50, gadewch i ni fynd â ni am y tro. cyfeiriad post, pa mor hir y dylai hynny fod? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Nid yw'n dim ond cod zip, er. cyfeiriad post, yr wyf yn clywed. Felly, mae hyn yn debyg 1 Square Brattle, coma, Caergrawnt Mass., coma, 02138. Ac yn wir, gadewch i mi dim ond tynnu i fyny ychydig taflen waith yma. Mae hyn yn teimlo fel ei fod yn yn gyfle a gollwyd. Os oes gennym 1 Square Brattle, coma, Caergrawnt MA 02138, Rwy'n teimlo fel y gallwn wneud yn well na cyfeiriad post yn unig. Pam nad ydym yn ffrwydro hyn ychydig bach? Beth ydw i'n mynd yn? Beth ddylem ni yn lle hynny gael ar gyfer ein rhesi yma, efallai? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Yeah, felly gadewch i ni alw street_number, ac mae tanlinellu yn unig yw gyffredin ffordd o gael yr hyn edrych fel gofod, ond nid yw'n, mewn gwirionedd. Street, ac yna city-- flin? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Gallem wneud hynny. Llinell un, llinell dau. Pam peidiwch byddwn yn cadw yn syml am y tro, ond mae hynny'n gwbl penderfyniad derbyniol. Ac yna y wladwriaeth, ac yna gadewch i ni fod ychydig yn US-centric am nawr a dim ond gwneud cod zip, dim ond oherwydd bydd yn arwain at gamgymeriad diddorol neu broblem yma. Felly mae'n debyg dyna awr ein cyfeiriad. Mae'n ychydig yn fwy blino bod gennym yr holl gaeau mwy hyn, ond erbyn hyn gallwn tagio pethau ychydig yn well. Rhif Felly nawr stryd yn ôl pob tebyg Ni ddylai fod yn torgoch, dylai ef? Beth ddylai fod? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Efallai, mae nifer fel cyfanrif eto? Mae cyfanrif mawr? Mae'n debygol nad ydych yn byw ar 4 biliwn a Main Street neu unrhyw beth crazy fel 'na. Felly cyfanrif yn ôl pob tebyg iawn, ond gan unrhyw un erioed wedi byw mewn cyfeiriad hoffi Sgwâr Brattle 1A, neu 1 a 1/2? Mae'r pethau hyn yn bodoli, yn anffodus, hyd yn oed os nad ydych chi wedi byw yno, mae yna anghysondebau hyn fel fflat 1A, 1B, 1C. Felly rydych yn gwybod beth, rydym yn fwy na thebyg Ni ddylai fynd gyda cyfanrif, fel arall rydym yn mynd i golli rhywfaint o werthiannau. maes yn Torgoch, efallai? Nid wyf yn gwybod pa mor hir. Mae'n fwy na thebyg yn mynd i fod hynny hir, felly 10 neu rywbeth. Nid oes unrhyw un yn mynd i ysgrifennu nifer hirach, efallai. Ond unwaith eto, mae'n debyg y dylai rhoi mwy o feddwl i hynny. Efallai google, yn gwneud rhywfaint o waith ymchwil, ond byddwn yn mynd â'n perfedd am y tro. Strydoedd, cols, 50, nid wyf yn gwybod. Ar ryw adeg, does neb yn mynd ei ysgrifennu ar amlen, hefyd, felly mae'n debyg rhai arffiniau uchaf yno. City, un peth, yn sicr, felly Torgoch 50. Y Wladwriaeth, yn gallu bod US-centric am y tro. Felly gallai fod yn rhestr, mor garedig o o farn, y wladwriaeth. Gallai fod yn debyg ddau gymeriad. Felly mewn gwirionedd, efallai, yr wyf yn cadw dweud torgoch. Yr wyf yn fwy na thebyg yn golygu varchar, dim ond ar gyfer rhai effeithlonrwydd, ond byddwn yn dod yn ôl at y penderfyniad hwnnw mewn eiliad. A allai fod yn torgoch o hyd 2 ar gyfer y wladwriaeth. Os yn yr Unol Daleithiau sydd ganddynt, fel MA, Massachusetts, NY, Efrog Newydd, NJ, New Jersey, ac yn y blaen. Felly gallai fod yn sefydlog ar hynny. DC i Washington DC. Ond rwy'n credu, Olivier, rydych arfaethedig dull arall. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Yeah, felly mae'n ychydig yn blino teipio, ond gallai enum gwneud mwy o synnwyr, oherwydd bod y ffordd hon, o leiaf yn yr Unol Daleithiau, gallech gyfrif, os tediously, ond byddwch yn gwneud hynny dim ond unwaith yn eich cronfa ddata a rhaid i byth eto i feddwl am ei, pob 50 godau dwy-cymeriad. Felly, yr wyf yn hoffi enum. Gadewch i ni aros gyda hynny yno, oherwydd mae'n fath o yn gorfodi mwy o drylwyredd. Ac yna zip cod? Yr wyf yn meddwl roedd gan Andrew meddwl ar hynny GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Yeah, pump neu naw. Gadewch i 'jyst gadw'n syml. Dim ond gwneud pump am y tro. Ond efallai y gallwn jyst gwneud yn gyfanrif, dde? Y gallwn, ond eich bod yn gwybod beth, yr wyf yn gwneud camgymeriad hwn unwaith, mewn rhai synnwyr. Flynyddoedd yn ôl, roeddwn yn mudo o Microsoft Outlook i Gmail, ac Outlook wedi ffordd o allforio eich holl gysylltiadau fel ffeil Excel, ffeil CSV, atalnod gwahanu gwerthoedd ffeil. Ac yr wyf yn gwneud y camgymeriad, yr wyf yn yn meddwl, o ddwbl glicio arno, ar ôl i mi llwytho i lawr y allforio, i gwnewch yn siŵr ei fod yn edrych fel yr oeddwn yn disgwyl. rhaid fy mod wedi taro Achub neu adael auto-arbed cic mewn neu rywbeth. Oherwydd pan wyf wedyn mewnforio i mewn Gmail, mae'r cyfan yn gweithio. Ond ar gyfer y blynyddoedd, hyd y dydd hwn, ac Fe wnes pump hyn, 10 mlynedd yn ôl, Rwy'n dal i ddod o hyd i ffrindiau sydd wedi cyfeiriadau sy'n edrych fel hyn. Pam? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Cymerodd y 0, yn dda, yn hytrach, mae'n cymerodd y cod zip gyfan fel nifer, ac felly mae'n blaenllaw 0 sy'n golygu nid oes ganddo ystyr. Ac felly 2138 yn ymddangos i fod yn fy cod zip. Ac mae hyn yn, dweud y gwir, mae Excel blino nodwedd lle yr wyf yn meddwl yn ddiofyn, hyd yn oed os yw'n golygu i jyst fod yn destun, Microsoft Excel penderfynu, gadewch i mi fod yn ddefnyddiol, a oh, yr wyf yn gweld rhifau yn unig. Gadewch i ni drin y rhain fel rhifau. Ac mae'n truncates y sero blaenllaw. Tyngaf i Dduw, bob cwpl o fisoedd Rwy'n dod o hyd i gyfeiriad, ac allan o rhyw fath o OCD, yr wyf yn mynd yn ôl i mewn ac ychwanegwch y 0, er fy mod yn byth anfon llythyrau bobl neu unrhyw beth. Ond dw i'n dal i ddod o hyd i olion o hyn. Felly mae hyn yn ei ddweud, a yw hyn yn syniad da? OK, na, gan fod unrhyw un yn Massachusetts, yn yr ardal hon, yn mynd i gael o eu harwain. Felly, gadewch i ni fynd gyda tebyg torgoch, yn ôl pob tebyg, pump. Ac yma, sylweddoli ein Gallai ddefnyddio enum ac rydym yn Gallai cyfrif 10,000 codau zip bosibl, ond sy'n teimlo fel ei fod yn fwy na thebyg groesi llinell o, fel, budd-daliadau. Os oes gennych chi i mewnbwn a llawer o ddata i mewn i'ch cronfa ddata i amddiffyn yn erbyn rhywbeth. sylweddolodd Felly torgoch gallech deipio yn H-E-L-L-O fel eich cod zip, nad yw'n, yn amlwg, rhifol. Felly does dim ffordd, yn cronfa ddata nodweddiadol, i bennu unig rhifol a dim ond pum nod o hyd, felly rydym yn mynd i gael i wneud hynny mewn cod. Rydym yn mynd i wneud hynny yn PHP neu Java neu beth bynnag iaith rydym yn defnyddio ar y gweinydd i orfodi y math hwnnw o gyfyngiad. Whoo! Mae pob hawl, felly unrhyw gwestiynau eto? Gadewch i ni wneud penderfyniadau dylunio arall. Mae'n ymddangos bod chi hefyd yn cael i ddewis, wrth ddylunio cronfa ddata SQL, neu database-- perthynol nodweddiadol lle eto, perthynol yn unig golygu rhesi a cholofnau, dyna sut i drefnu eich data-- ac yn sylweddoli bod ystyr hyn yw, Rydw i wedi bod yn gamarweiniol mewn hynny, rwy'n drawing-- hwn yn yr hyn a elwir y sgema ar gyfer tabl cronfa ddata. Mae hyn yn debyg i'r manylebau ar gyfer y table-- ond pan ddaw amser i storio data mewn gwirionedd, ac fe wnawn hyn yn unig trwy esiampl yma. Rydw i'n mynd i agor Excel, oherwydd Bydd Excel yn rhoi rhesi a cholofnau mi. A dyna yn union beth Oracle a Bydd MySQL ac offer eraill yn rhoi i mi. Felly Im 'jyst yn mynd i ddefnyddio er mwyn y drafodaeth yn. Gadewch i mi fynd yn ei flaen ac yn agor i fyny Dogfen cynrychiolydd yma, chwyddo i mewn ychydig. Felly, er enghraifft, mae ein penawdau yn awr enw cyntaf, enw olaf, rhyw, ID, e-bost, rhif stryd stryd whoops. Street, dinas, y wladwriaeth, dim ond am yn cyd-fynd ar y sgrin. Felly beth mae hyn yn ei olygu yw bod pan fydd defnyddiwr cofrestri cyntaf ar gyfer fy ngwefan, mae'n mynd i fod yn rhywbeth fel Dafydd, Malan, m, gadewch i ni ddweud 1, malan@harvard.edu, rhif stryd bydd fod yn debyg 1 Square Brattle, Cambridge, MA, 02138, ac yna yn y blaen. Felly, pan fyddaf yn dweud bod cronfa ddata berthynol neu gronfa ddata SQL yw rhesi a cholofnau, Yr wyf yn golygu hyn. Bod data gwirioneddol yn cael ei storio mewn rhesi a cholofnau. Mae hyn yn unig yw cyd-ddigwyddiad, ein bod yn siarad, ac yr oeddwn yn tynnu ei allan mewn rhesi a cholofnau. Mae hyn yn unig y sgema, y diffiniad cyffredinol. Felly o'r meysydd hyn yma, neu cyfwerth ei, yno, sef y caeau yn eich barn chi Rwy'n debygol o chwilio ar os rwy'n defnyddiwr neu os wyf gweinyddwr cronfa ddata? Fel, pa feysydd ydw i'n mewn gwirionedd yn mynd i chwilio am? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Enw, yeah felly Rwy'n hoffi'r ffaith that-- yeah, Gallai e-bost fod yn eithaf cyffredin. Mae'n ddrwg gennym, dywedasoch enw. Felly maybe-- ac unwaith eto, rydym yn math o siarad yn y haniaethol. Nid wyf yn gwybod pam byddech yn fod yn chwilio am enw, ond sy'n teimlo'n rhesymol os ydych chi'n chwilio am ddefnyddiwr. yn datgan Efallai, yn sicr, adnabod. Ac mae'n llithrig llethr, oherwydd y gallwn contrive sefyllfa lle efallai fy rheolwr wedi gofyn i mi, faint o ddynion sydd gennym ar ein safle? Faint o fenywod sydd gennym ni ar ein safle? Ac felly ar y pwynt hwnnw, efallai y byddwch am i chwilio ar y cae rhyw, hefyd, a dim byd arall. Felly mae 'na cyfaddawd yma. Unwaith eto, does dim ateb cywir, ond mae yn nodwedd yn y rhan fwyaf cronfeydd data SQL a elwir yn mynegeio, lle chi, y dylunydd, y gweinyddwr cronfa ddata, cael penderfynu ymlaen llaw pa caeau dylai'r gronfa ddata optimize am chwiliadau ar. Fe allech chi ddweud ddiniwed iawn, gwneud y gorau hyn, gwneud y gorau, yn gwneud y gorau hyn, optimeiddio hynny ac mae hyn, a'r gronfa ddata fydd gwneud rhyw beth hudol o dan y cwfl, a gwneud rhywbeth yn y fath fodd bod y tro nesaf y byddwch yn chwilio ar unrhyw un o'r meysydd hyn, bydd yn, mewn gwirionedd, fod yn gyflymach. Mae hyn yn bosibl. Nid yw'n canslo ei hun allan. Ond rhaid cael pris a dalwyd. Os byddwch yn ddiniwed, neu dros-frwdfrydig dyweder, mynegai holl feysydd hyn, fel petai, yn eu gwneud yn i gyd effeithlon chwilio, pa bris yr ydych yn ôl pob tebyg yn talu? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Perfformiad. Beth ydych chi'n ei olygu? Wel perfformiad, o leiaf yn y cyd-destun dwi'n trafod, yn well yn awr. Dyna y diffiniad o mynegeio. Bydd yn gwneud chwiliadau cyflymach. Felly, y tro yn gostwng, fel petai. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Gofod. Felly eto, mae'r rhain yn masnach gyffredin. Gallaf cyflymu eich chwiliadau, ond mae'n mynd i gostio mwy wrthych bytes o ofod. Pam? Wel, yn ddiofyn, os oes gennym yr un o'r sêr coch yma, nid yw'r un o'r mynegeion hyn, fel yr wyf ddim yn dweud, sut ydych chi'n chwilio am enw yn y gronfa ddata hon? Felly gadewch i ni dynnu ein sylw at yr enghraifft hon. Os oes gennym David a Scully a Kareem ac Arwa ac eraill mewn rhesi hyn, er enghraifft. Felly gadewch i ni wneud yn union hynny. Scully yn fan hyn, ac yna rydym wedi Kareem, a Arwa, a phawb arall, os nad ydych yn â mynegrif diffiniedig, fel petai, y gorau y gallwch ei wneud yw chwilio llinol. Os ydych yn chwilio am Arwa, nid ydym yn mynd i fod yn gallu neidio i'r dde at ei yn gyflym. Rydym yn mynd i ddechrau top a fynd yr holl ffordd i'r gwaelod, nid annhebyg i'n gwreiddiol Mike Smith enghraifft. Os, fodd bynnag, yr wyf yn dweud, hey, cronfa ddata, mynegai y cae enw cyntaf, Yna, mae'n mynd i wneud rhywbeth ffansi ac yn cefnogi rhywbeth fel chwiliad deuaidd. Dyw hi ddim yn ôl pob tebyg chwiliad deuaidd fel y cyfryw. Cronfeydd data yn tueddu i ddefnyddio un arall strwythur data elwir b-coed, ni ddylid ei gymysgu gyda choed deuaidd, mai dim ond yn ei gwneud yn gyflymach i chwilio rhywbeth logarithmig o ran eu natur. Ond mae'r pris a dalwch i adeiladu fod nodwedd, y strwythur data mewn cof, yn fwy bytes. Felly gallai gymryd rhai megabeit, rhai gigabeit, pwy a ŵyr? Mae'n dibynnu ar y data. Felly, ar ryw adeg, rhaid i chi benderfynu, mae'n debyg nad yn achos cyffredin. Felly beth yw'r comin gwirioneddol achosion, os ydych yn wir gorfod dewis, beth allai eich hoff gaeau fod? E-bost. Ac yr wyf yn hoffi e-bost oherwydd bod e-bost, mewn theori, dylai fod yn unigryw. Ac felly fel arfer, pan fyddwch yn gwybod ymlaen llaw fod un o'ch caeau neu a fydd yn unigryw, bod yn tueddu i fod yn faes da i chwilio am, oherwydd y ffordd honno, pan fyddwch yn chwilio am rywbeth, ydych yn mynd i fynd yn ôl un neu sero ymatebion ac yna rydych yn ei wneud. Nid oes rhaid i chi gadw chwilio am eto eraill. Ac felly yn yr achos hwn yma, e-bost, cyn belled nad ydych yn gallu cofrestru ddwywaith gyda'r un e-bost, yn un da. ID trwy ddiffiniad, yn y byd gwyddoniaeth gyfrifiadurol, os ydych yn sôn am ID, a oedd wedi bod yn unigryw yn well. Dyna fath o arwyddocâd y o adnabod neu ddynodwr. A gallai gweddill o'r rhain fod, gadewch i ni yn eu galw 'n glws i haves, ond nid yw'n ofynnol mewn gwirionedd. Ac felly mewn cronfa ddata, eich bod yn nodi mynegeion, ond gallwch fod yn hyd yn oed yn fwy manwl gywir. Gallwch ddweud, hey, cronfa ddata, gwnewch yn siŵr bod pob ID yn y tabl hwn yn unigryw. Peidiwch â hyd yn oed yn gadael i rhaglennydd rhoi ddamweiniol mewn neges e-bost dyblyg neu dyblygu rif adnabod. Mae cymaint fel enums ein diogelu yn yr un modd, yr ydych Gall gael amddiffynfeydd lefel is-hynny. Ac felly dylunio cronfa ddata, yn ychydig o synnwyr, yn fath o hwyl, oherwydd eich bod yn ei wneud yn amddiffynnol. Rydych fath o tybio eich bod yn gweithio gyda rhaglenwyr ofnadwy, erchyll a'ch bod am roi cymaint o amddiffynfeydd ag y gallwch i ddiogelu eich data, ond ar yr un pryd yr ydych am i'w helpu i berfformio'n well trwy ddewis pa caeau i wneud y gorau i. Ond ni allwch wneud o reidrwydd yn gwactod fel rydym math o yma. Mae'n rhaid i chi wybod beth yw'r achosion cyffredin hynny fodolaeth. Os bydd y datblygwyr yn gweithredu llyfr cyfeiriadau, efallai y byddwch yn dda iawn am fod yn gallu i chwilio ar bron bob maes, dim ond drwy natur y cais. Felly, efallai eich bod yn treulio hynny lle ychwanegol. Iawn, unrhyw gwestiynau? Yeah. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Na GYNULLEIDFA: [Anghlywadwy] DAVID Malan: OK. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: O, felly rydym yn yn siarad mewn ffordd Erbyn hyn mae hynny'n hollol iaith agnostig. Felly yr ydym yn sôn yn awr am cronfeydd data perthynol yn fwy cyffredinol, neu SQL cronfeydd data yn fwy cyffredinol. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Gair well defnyddio yw, gellir ei ddefnyddio gan unrhyw iaith. Felly, yr wyf yn gallu ysgrifennu cod JavaScript, C cod, C ++ cod, Java cod, Ruby cod, pob un ohonynt yn siarad â cronfa ddata a gweithredu ymholiadau. Yn wir, nid yw hynny ddim yn ddrwg segue i enghraifft ymholiad. Ac eto, nid ydym yn mynd i fynd i mewn i Java neu C ++ neu unrhyw un sydd anymore, ond yn SQL, yr iaith y mae yr wyf yn cadw gan gyfeirio, Iaith Ymholiad Strwythuredig, mae hyn ynddo'i hun yn iaith raglennu, ond mae'n fod i gael ei ddefnyddio ar gyfer, dim syndod, strwythuredig ymholiadau ymholiad. Gan fy mod yn golygu hyn. Mae'r ffordd yr ydych yn dewis data o gronfa ddata MySQL yn eich llythrennol teipio eich rhaglen rhywbeth fel seren dewiswch gan ddefnyddwyr. Yr wyf yn tybio bod y tabl hwn, Gelwir hyn ymlaen yn cael ei ddefnyddwyr. Gallwn alw unrhyw beth yr ydym am ei gael, ond y math hwnnw o yn gwneud synnwyr. Ac felly dethol yn iawn ferf gyffredin, os ydych yn fydd, yn SQL, hynny llythrennol yn gwneud hynny. Beth ydych chi'n meddwl seren olygu yn y cyd-destun hwn? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Mae'n ddrwg gen i? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Ddim yn ofynnol, mae'n fwy cynhwysol na hynny, mewn gwirionedd. Mae'n y cymeriad cerdyn gwyllt. Seren yn golygu unrhyw beth bron bob amser, felly mae hyn yn golygu, yn yr achos hwn, dewiswch popeth o'r gronfa ddata. Felly, pan fyddaf yn dweud hyn, yr wyf yn golygu roi i mi yn ôl pob colofn oddi wrth fy mwrdd o'r enw ddefnyddwyr. Felly rhoi canlyniad set mi, fel ei fod yn enw. Mewn geiriau eraill, rhoi copi o'r fi taenlen, yn yr hyn Im 'yn cael ar. Ond os y dywedais dewiswch seren gan ddefnyddwyr lle ID dychwelyd 1, dylai pa mor fawr fy set canlyniad fod yna? Neu cyfwerth ei, dylai faint o resi Rwyf yn cael ei drosglwyddo yn ôl oddi wrth y gronfa ddata? Yn ôl pob tebyg dim ond un, os oes gen i wir drin ID fel dynodwr unigryw, ac os David bod gan ID unigryw, yr wyf yn Dylai fynd yn ôl un a dim ond un rhes sy'n cynnwys yr holl wybodaeth Dewi. Os byddaf yn dweud lle mae hyn ID yn hafal i 99, dylwn fynd yn ôl, yn y cyd-destun hwn, sero rhes, o leiaf ar hyn o bryd. Fodd bynnag, os wyf yn ddim wir yn poeni am yr holl wybodaeth honno, Gallwn ddweud, ble mae David yn byw? cod zip Dewiswch o'r defnyddwyr lle ID yw 1. Bydd hyn yn dewis i mi yn unig zip Dewi cod ac nid y cyfan o'r y rhes. Pam y gallai wyf yn gwneud hyn yn lle yr ymholiad seren, y cerdyn gwyllt? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Yeah, efallai mai dim ond ei angen. Felly perfformiad yw'r ateb yma eto. Pam gofyn am fwy o wybodaeth nag sydd ei angen, oherwydd hyd yn oed os mae'n iawn at ei gilydd, yn rhaid i chi gopïo data hwnnw, mae'n ymddangos, o'r gronfa ddata i mewn i'ch rhaglen rhywsut, a dim ond gwirion os ydych dim ond angen pump o ddigidau hynny, nid yw gyfanrwydd y rhes. Felly sut ydw i'n mewnosod defnyddiwr? Tybiwch defnyddiwr yn unig gofrestru am y tro cyntaf. Byddai'r cystrawen fel arfer yn edrych fel hyn. Mewnosod i ddefnyddwyr, ac yna byddem yn dweud gwerthoedd, ac yna byddem yn dweud gwerthoedd fel, gadewch i ni ddweud, Lauren Scully, ein videographer iawn yma. A'r cae nesaf yw rhyw. Felly, byddwn yn dweud dyfyniad, unquote "F", yna mae gennym ID ac rwy'n mynd i say-- gadewch i ni esgus nad oedd hi mewn gwirionedd yma, felly byddwn yn ailddirwyn yn y stori. Felly, bydd 2 yn cael ei ei adnabod. Ac yna y cae nesaf dyma yw ei e-bost. Felly mae'n mynd i fod fel Lauren Scully ac yn y blaen, a byddwn yn jyst dot dot dot ef i ffwrdd o fan hyn ymlaen. Nawr bydd yn cael ychydig ddiflas, ond y mewnosodiad ymholiad Byddai yn y pen draw yn edrych fel 'na. Os ydw i eisiau i gael gwared ar Scully, uh-oh, gadewch i ddadgofrestru hi, mae hi'n dileu ei gyfrif, dileu gan ddefnyddwyr ble ID hafal 2, Bydd cael gwared ar Scully. Neu gallaf ddweud defnyddwyr diweddaru a osodwyd, gadewch i ni ddweud, beth allen ni ei newid? Gadewch i ni dybio ei bod yn symud. zip Set hafal 021-- Na, dyna hi zip cyfredol. 90210. Yr unig cod zip arall Yr wyf yn gwybod yn y byd. Felly fyddai'n newid ei zip code-- mewn gwirionedd, Ni fyddai'n newid ei cod zip. Beth wnes i jyst yn ei wneud? Er bod y gystrawen yn ôl pob tebyg newydd. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Yeah, yr wyf yn symud pawb i Beverly Hills, Califfornia. Felly, yr wyf dylai gwirionedd dweud ble ID hafal 2. Ac yn y blaen. Felly SQL yn ymwneud rhain math o gyfarwyddiadau. Dewiswch, mewnosoder, dileu, diweddaru, gyda predicates hyn ar ddiwedd cymalau lle mae'r rhain, fel petai. Ac mae llawer mwy y gallwch yn ei wneud, ond mae'n wirioneddol yn unig boils i lawr yn syml, os arcanely, gan fynegi yr hyn yr ydych am i'r gronfa ddata i wneud. Ac yna y gronfa ddata Bydd chyfrif i maes, pan byddwch yn mewnosod Lauren Scully i mewn i'r cronfa ddata, ble i rhoi hi mewn cof er mwyn i ni gael yn gyflym iawn ei seilio ar ei chyfeiriad e-bost neu yn seiliedig ar ei rhif adnabod neu debyg. Yeah, Dan. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Cwestiwn Really da. A fydd sgriptiau hyn yn newid o Microsoft Access i Oracle i MySQL i PostgreSQL? Yr ateb byr yw ei fod yn dibynnu. Mewn theori, mae iawn is-set gyffredin sylweddol o SQL sy'n ei rhannu ar draws yr holl o'r gweithrediadau hyn. Fodd bynnag, mae gwahanol gweithgynhyrchwyr rhaid i nodweddion ychwanegol at eu cronfeydd data i wneud pethau penodol y tu hwnt i gwmpas y nodweddion hyn, a allai fod, mewn gwirionedd, yn torri. Felly, y ffordd y datblygwyr gwrych yn erbyn hyn, yw bod yn hytrach nag ysgrifennu amrwd SQL cod fel mod i'n ysgrifennu yma, maent yn hytrach yn defnyddio llyfrgell, llyfrgell cyffredin sy'n ei hun yn fath o uwch-lefel a chrynodebau ffwrdd pa gynnyrch rydych yn ei ddefnyddio. Ac mae'n rhoi i chi swyddogaethau a gweithdrefnau i alw er mwyn i chi byth mewn gwirionedd yn ysgrifennu SQL crai. Mewn theori, yna, gallwch newid cynnyrch o Oracle i Microsoft neu i'r gwrthwyneb neu unrhyw beth arall, ac yr ydych yn llythrennol newid unrhyw beth am eich cod. Y gwirionedd, fodd bynnag, yw, rydych weithiau rhoi'r gorau i nodweddion o ganlyniad. Efallai eich bod wedi dewis cynnyrch oherwydd 'i' got nodweddion gwerth ychwanegol hyn, ac rydych yn unig yn awr nid eu defnyddio yn ymwybodol. Ac yn anecdotaidd, rhan fwyaf o gwmnïau yn tueddu byth i symud i ffwrdd oddi wrth eu cronfa ddata. Felly, er bod hwn yn braf cael nodwedd, y realiti yw, os ydych yn atgyweirio eich cronfa ddata, rydych yn yn ôl pob tebyg gan wneud tusw o newidiadau eraill beth bynnag, nad ydych yn ei wneud o reidrwydd Mae angen i ragweld hynny. Felly mae'n gellid dadlau dros-lunio y broblem, ond mae'n wir yn dibynnu ar y cyd-destun. Ond mewn theori, SQL yn cael ei rannu ar draws cynnyrch amrywiol hyn. cwestiynau yn dda iawn. Yeah. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Yeah, felly gallwch feddwl cronfa ddata yn unig yw gweinyddwr, ar ddiwedd y y dydd, ac y tu mewn o hynny gweinydd yn criw cyfan o tablau, rhesi a cholofnau. A phan fyddwch yn anfon ymholiad fel hyn oddi wrth eich rhaglen, eich gwefan, a ysgrifennwyd yn Java, Ruby, Python, beth bynnag, y gweinydd yn derbyn gorchymyn hwn a'i ddehongli mewn llythrennol yr un ffordd rydym yn trafod yn gynharach gyda ieithoedd dehongli, ac yna perfformio rhywfaint o weithredu ar sero neu fwy o resi yn sero neu fwy o dablau. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Yn union, yn union. Felly mae'r pseudocode am rywbeth fel y gallai hynny fod hwn. Yn eich ffeil PHP neu'ch ffeil Python neu eich ffeil Java, byddai gennych cod pseudocode, neu blociau Scratch-fel fel, pe ymweliadau defnyddiwr acme.com/register~~V am y tro cyntaf, yna rhowch i mewn i ddefnyddwyr ac yn y blaen. A byddem drosi hyn i mwy o cod concrid yn y diwedd. Ond mewn gwirionedd, yr ydym i gyd wedi blociau adeiladu yma, hyd yn oed er ein bod yn sgipio rhai o'r camau gweithredu. Felly, gadewch i mi ddod o hyd i fai â'r hyn yr ydym rhyfeddol a wnaeth ychydig funudau'n ôl. Yr ydych wedi creu 'n bert tabl cyflawn ar gyfer defnyddwyr. Rhaid cyfaddef, gallem weithredu mewn ychydig o ffyrdd gwahanol, ond yr ydych wedi arwain ni mewn gwirionedd i lawr y path-- a dywedaf wrthych, ond mae'n debyg fy fault-- o deg gweithredu cronfa ddata aneffeithlon. Dyw hi ddim yn normaleiddio. Ac erbyn normaleiddio wyf yn ei olygu mae yn mynd i fod, dros gyfnod o amser, yn diswyddo sylweddol, ac felly aneffeithlonrwydd, sy'n wastraff o le. Yn seiliedig ar dim ond yr hyn a welwch yma, gall ydych yn rhagweld ble gwastraff hwn o ofod yn mynd i ddod o, dros gyfnod o amser, fel gofrestru mwy a mwy o ddefnyddwyr ar gyfer eich gwefan? Pa ddata a allai ddod yn ddi-waith? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Pam ydych chi'n ei olygu hynny? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Yeah. A gadewch i ni dybio at y dibenion heddiw fod hynny'n wir. Troi allan, ac rydym wedi dysgu hwn y ffordd galed, nid yw hynny'n wir. Rhywsut dinasoedd lluosog, rywsut, yr un cod zip, sy'n torri hwn greddf gwych. Ond gadewch i ni dybio bod hynny'n wir, oherwydd ei fod yn bron bob amser yn wir. Felly mae'n debyg bod cod zip yw gysylltiedig bob amser gyda yr un ddinas a wladwriaeth, sy'n fath o dybiaeth resymol, ond anghywir, mae'n troi allan. Ond yn dybiaeth resymol ar gyfer dibenion heddiw. Yna mae'n debyg fy mod yn byw yng Nghaergrawnt, MA, yn ôl y tabl defnyddiwr hwn, a ac mae'n debyg bod Lauren Scully yn byw yn Cambridge, MA, ac mae'n debyg bod Kareem byw yn Cambridge, MA, a Arwa yn byw yng Nghaergrawnt, MA, mae pob un ohonom yn 02138. Pam yr ydym yn cofio Caergrawnt, MA, 02138 gyfer pob pedwar ohonom? Beth ddylai ddigon i'w gofio? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Dim ond y cod zip. Dim ond bod yn bodoli 02138, oherwydd eich bod yn gwybod yr hyn y gallem ei wneud? gallem gael ychydig ffansi yma ac dros yma, diffinio tabl arall lle mae hyn yn mynd i fod y enw, mae hyn yn mynd i fod y math, mae hyn yn mynd i fod y hyd, ac o hyn ymlaen, rwy'n mynd i alw hyn yn fy mwrdd dinasoedd. Cafodd hyn ei alw, o gwrs, fy mwrdd i ddefnyddwyr. Ac felly beth ddylwn i ei roi dros yma am fy mwrdd dinasoedd, yn eich barn chi? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Yeah. Felly zip a wladwriaeth a dinas. Ac felly y math yma, byddwn yn dweud mae hyn yn mynd i fod yn torgoch 5 eto, yn amodol ar y ddadl o gynharach. Bydd hwn yn enum, efallai fel o'r blaen, bydd a dinas yn varchar 50. Ac felly yn awr beth ydw i'n ei gael i ddileu o'r tabl hwn i gael gwared ar y aneffeithlonrwydd? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Nice. Wladwriaeth a dinas yn mynd i ffwrdd, felly dwi wedi nawr dileu yr aneffeithlonrwydd potensial i gofio redundantly, Caergrawnt, MA, Cambridge, MA, Cambridge, MA, Cambridge, MA, a fydd, gobeithio, yn byth yn mynd i newid. A hyd yn oed os yw'n gwneud hynny, mae'n minorly blino, yn awr bod rhaid i mi newid mewn rhesi lluosog, tra yma, gallwn jyst ei newid mewn un lle. Nawr beth y fasnach-off, efallai? Roedd hyn yn super gyfleus. Wedi cael fy holl ddata 'n glws at ei gilydd. Ond yr hyn sy'n amlwg yn yr achos yn awr? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Yn union, ac rwy'n falch i chi ei ddefnyddio y gair yn ymuno, oherwydd dyna mewn gwirionedd y gair allweddol, ym myd cronfeydd data perthynol yn SQL, ei fod yn air go iawn i chi Efallai deipio neu o leiaf gyfleu. Ac yn wir, yr hyn sydd gennym yn awr i wneud i ddewis gwybodaeth lawn Sant yn rhywbeth fel seren dewiswch o defnyddwyr, yn ymuno â dinasoedd, on-- ac yn awr Rydw i'n mynd i jyst symud i ail linell fel bod y users.zip fits-- hafal cities.zip, lle mae users.ID yn dychwelyd 1. Felly beth sy'n mynd ymlaen? Mae'n hyll edrych, ond gallwch math o ei ddarllen o'r chwith i'r dde, top i'r gwaelod. Dewiswch seren gan ddefnyddwyr yr un fath ag o'r blaen, ond nid yw'n gan ddefnyddwyr, fel y cyfryw. Mae'n gan ddefnyddwyr yn ymuno â dinasoedd. Beth ydw i'n ymuno y ddau tablau ar? Wel, mae'n debyg, y tablau defnyddwyr zip cae, ac y cyfnod hwn yn unig yw arbennig cystrawen i fynegi y syniad hwnnw, ac mae hyn yn y tablau dinasoedd sip maes. Yr wyf am y ddau i fod yn gyfartal, ond yr wyf am i ddewis yn y pen draw dim ond rhesi hynny lle ID yn y tabl defnyddiwr yn hafal i 1, a oedd yn digwydd bod mi. A dim ond i fod yn glir, yn rhaglennydd, fel arfer pan hardcode rhywbeth fel rhif 1, oherwydd fel arall y gwefan yn unig yn cefnogi David neu'r defnyddiwr yn gyntaf iawn, byddwch Byddai yn lle hynny yn ei wneud rhywbeth fel ID, lle mae hyn yn cynrychioli amrywiol, rhywbeth y Gall newid dros amser, yn debyg mewn ysbryd at yr hyn a ddywedais yn gynharach â'r mathau hyn o bachau. Ond am nawr byddwn yn jyst hardcode fel 1. Ac felly beth yw ystyr hyn? Wel, yn ffordd braf i ddychmygu mae hyn yn os law hwn yw'r tabl defnyddwyr, ac â llaw hwn yw'r sipiau bwrdd, rydym yn fath o finding-- ac flaenau fy mysedd yn zip dros yma, ac flaenau fy mysedd dyma zip, rydych yn math o cyd-gloi ei fel eich bod yn mynd yn ôl y deillio tabl gwreiddiol, gan wirioneddol ymuno y ddau dabl ar y cae cyffredin. Ac nid oes rhaid iddo fod yn zip. Gallai fod yn y rhan fwyaf o unrhyw beth arall, ond zip yn braf, oherwydd un, mae'n fyr, dau, mae bob amser y un hyd, felly does effeithlonrwydd go iawn i'r hyn Olivier a gynigir yma gyda ffactoreiddio allan i'r sip, ac [Anghlywadwy] yn cynnig ein bod yn cael gwared o ddinas a gwladwriaethau. Felly, mae hyn yw'r broses a elwir yn normaleiddio. Unrhyw gwestiynau ar hynny? Wel gadewch i mi nodi dyma'r math o bethau, hyd yn oed er 'i' lefel isel-deg, drafodaeth hon, y byddech yn meddwl eich bod yn fath o gael ar goll yn y chwyn, mae hyn yn amlygiad o digonedd cyfle i ddatblygwyr i fod yn ddrwg. Ac yn wir, hyd yn oed pan fyddwn yn, yn cyrsiau Rydw i wedi eu dysgu, pan rydym wedi cael, er enghraifft, dibrofiad rhaglenwyr israddedig adeiladu gwefannau, ar yr olwg gyntaf, gallai'r gwefannau edrych yn wych. Ac mae ganddynt bob un o'r ymarferoldeb yr ydym yn gofyn, y datblygwyr yn gwneud gwaith da. Ond nid ydynt o reidrwydd yn gwybod digon am ddylunio cronfa ddata neu nad oeddent yn meddwl yn galed digon am y mathau o ddata a'r mathau o ddefnyddwyr y gwefan yn mynd i gael, ac yr ydym yn dod o hyd, yna, chwe mis yn ddiweddarach, ar ôl iddynt wedi graddio neu'n symud ymlaen, hynny damn ei, ein gwefan yn wirioneddol, wirioneddol araf. Ac nid wyf hyd yn oed yn siarad am gael miliynau neu filoedd o ddefnyddwyr. Yr wyf yn golygu ychydig gannoedd o ddefnyddwyr ar y campws, pob un ohonynt yn hoffi, er enghraifft, siopa am gyrsiau yn yr un pryd, maen nhw'n defnyddio'r catalog cwrs cais grybwyllais a'r peth yn mynd yn wir yn araf oherwydd nad oedd unrhyw mynegeion. Nid oedd unrhyw sêr coch, felly i siarad, neu os nad oedd gennym o reidrwydd hystyried allan data cyffredin i cael rhywfaint o arbedion o le. Ac felly pan fetio datblygwr neu berson cronfa ddata neu debyg, y mathau o gwestiynau i feddwl drwy hyd yn oed, wrth adolygu cod rhywun, i ddweud, nid o reidrwydd yn edrych trwy eu holl cod, ond yn dweud, gadewch i ni edrych drwy'r tablau gronfa ddata. Beth ydych chi'n storio? Ac yna i ddweud, yn dda, arhoswch funud, pam yr ydych yn defnyddio cyfanrif? Beth os oes gennym 4 biliwn a a 1 o'r rhesi hyn? A mathau hyn o cwestiynau yn gyfle i fath o gwthio yn ôl ac cael ymdeimlad o, lle os nad ydych yn gyfforddus yn gwneud iddo, cael rhywun mwy technegol ofyn y cwestiynau hyn, ai peidio mae'r person yn gwybod yn iawn eu stwff. Ac mae hyn yn y math o stwff, hefyd, bod pobl ar y rhyngrwyd sydd yn hunan-ddysgedig, efallai dysgu yn llai aml, oherwydd eich bod nid ydynt o reidrwydd yn dod ar ei draws cymaint, oherwydd gallwch gael y gronfa ddata i fyny a rhedeg, ond oni bai eich bod wedi darllen i fyny ar sesiynau tiwtorial neu wedi bod gwybod am normaleiddio cronfa ddata a mynegeio a pherfformiad, mae'r rhain yn y math o bethau sydd yn mynd i brifo chi. Ac efallai y byddwch yn meddwl, neu beiriannydd drwg Efallai dweud, oh, yn dda, tâl yr ydym yn well ar gyfer cronfa ddata mwy neu gronfa ddata yn gyflymach neu dim ond taflu arian ar hyn, raddfa fertigol, nid o reidrwydd felly. Os byddwch yn mynd in-- a gallwch fynd i mewn ar ôl y mynegeion fact-- ac i greu, a gallai fod yn cymryd ychydig oriau ar gyfer yr cronfa ddata i adeiladu y data newydd Strwythur yr oeddwn cyfeiriwyd ato'n gynharach, gallwch barhau i atgyweiria hon ar ôl y ffaith, mai dyma lle rydych dechrau gwahaniaethu dylunwyr da o ddrwg dylunwyr, nid yn unig yn esthetig, ond mae perfformiad-ddoeth hefyd. Unrhyw gwestiynau? Na? Felly, ar gyfer NoSQL, sef y fath arall o gronfa ddata y mae y crybwyllais yn gynharach, Nid oes rhaid i chi rhesi a cholofnau. Yn lle hynny, byddai'n rhaid i chi rywbeth sy'n edrych ychydig yn fwy fel hyn. Rydw i'n mynd i ddefnyddio cystrawen cyffredin. bresys Curly yn digwydd i yn cael ei ddefnyddio yma cryn dipyn. Efallai eich bod wedi rywbeth fel enw cyntaf yw David, allai fod gennych diwethaf enw i yw Malan, dyfyniadau, allai fod gennych ID yw-- esgusodwch fi, ID whoops-- yw 1, e-bost yw malan@harvard.edu, ac ni wnaf trafferthu teipio allan y gweddill, ac yna rhai pethau eraill. Mewn geiriau eraill, mae hyn yn cynrychiolaeth testunol o'r hyn y byddem yn galw ar y cyfan gwrthrych mewn rhaglen gyfrifiadurol. A gwrthrych yn gyffredinol yn unig casgliad o barau gwerth allweddol. Felly unwaith eto, mae hyn yn thema gyson. Gwelsom parau gwerth allweddol yn HTML, gwelsom parau gwerth allweddol yn awr yng nghyd-destun cronfeydd data, ac yr ydym Gwelodd parau gwerth allweddol yn y cyd-destun o, yr wyf yn meddwl, iaith yn gynharach heddiw. Cadw yn dod i fyny. Ac yn wir, dyna 'n sylweddol pa ddata boils i lawr i, data a metadata, neu werthoedd ac allweddi, yn y drefn honno. Felly di-berthynol cronfa ddata, sy'n seiliedig ar rywbeth ar wrthrychau, ble 'ch jyst yn clystyru popeth at ei gilydd ac yn ei roi mewn cof, byddai arfer yn llun fel, neu'n meddwl am, gan fod hyn. A byddaf yn gadael hynny yn awr fel fath o ymagwedd amgen. Ac nid un o reidrwydd yn well na'r llall. Yn wir, yn fawr iawn yn ffasiynol y dyddiau hyn yn cael eu systemau cronfa ddata fel MongoDB a Redis ac ychydig offer o'r fath eraill, ar gael am ddim, ond maent yn gynyddol yn en Vogue. Yn rhannol oherwydd eu bod yn cynnig ychwanegol nodweddion dros ymagweddau tabl hyn, ond hefyd oherwydd eu bod yn ychydig yn haws i'w defnyddio, oherwydd nad oes rhaid i chi feddwl mor galed am lawer o benderfyniadau cynllunio hyn. Felly pwyntiau cadarnhaol a negyddol. Felly sylweddoli mae yna opsiynau tu hwnt i'r hyn rydym yn unig treulio amser ar. Felly gadewch i ni wneud hyn. Gadewch i bontio ychydig yn ôl yn awr i raglenni ar y we, fel ein bod yn fath o gasgliad heddiw gyda rhywbeth mae hynny'n ychydig o ymarferol, llenwi mewn rhai bylchau o ddoe. Gadewch i mi fynd at hyn yn gyntaf. Felly dwyn i gof bod ddoe roedd gennym rai HTML canonaidd tudalennau a oedd i ddechrau, dim ond HTML, ac yna yn ail roedd gan CSS, taflenni arddull rhaeadrol. Mae hwn yn tag newydd nad wnaethom gweld ddoe, neu fynd ar ôl, hyn a elwir yn tag sgript. Troi allan y gallwch chi mewn gwirionedd yn ymgorffori iaith o'r enw Javascript yn eich gwe dudalen a gwneud eich gwe tudalennau gwneud rhywbeth. Felly beth ddylwn i ei olygu wrth hynny? Wel, gadewch i mi fynd yn ei flaen a dim ond benthyg cod hwn am eiliad. Rydw i'n mynd i fynd i mewn i Cloud9, nid oes angen i fynd yno eich hunain eto, ac rwy'n mynd i alw alert.HTML hwn. Rydw i'n mynd i bastio yn fy ffeil fan hyn. A dim ond i egluro yr hyn yr wyf wedi ei wneud, gadewch i mi fynd i'r cyfeiriad hwn a mynd i rybuddio, a byddwch yn gweld y Byd Helo. Ond mae hyn yn fath o underwhelming. Rwyf am wneud rhywbeth ychydig yn wahanol. Felly, yr wyf i'n mynd i wneud hyn mewn gwirionedd. Rydw i'n mynd i fynd i mewn yma e, ac mewn rhwng fy tagiau sgript, dweud yn effro ( 'helo, byd'); felly rhybudd mae'n ychydig yn flêr, ond mae gen i HTML, tu mewn sydd yn iaith o'r enw JavaScript, ac mae hyn yn hyn a elwir yn swyddogaeth galw neu weithdrefn galw. Mae hon yn ferf, yn llythrennol, yn yr achos hwn, ac yr wyf yn galw ar ymarferoldeb cod bod rhywun arall yn ysgrifennu. Er mwyn i swyddogaeth yn effro, felly gadewch i ni fynd i'r dudalen hon yn awr a chliciwch reload, ac yn awr ydych weld ychydig o ryngweithio. Mae'n fath o hen ysgol ac yn hyll. Mae'r math hwn o eich atgoffa o'r pop-ups, efallai, a fu ond yr oedd yn gwneud rhywbeth yn ychydig yn fwy rhaglennol. Felly yn fwy na hynny, gadewch i ni wneud rhywbeth mwy diddorol. Gadewch i mi fynd i mewn yma a chael gwared o hyn. Ac yr wyf i'n mynd i fynd yn ei flaen a greu ffurf fel y gwnaethom ddoe. A dweud y gwir, eich bod yn gwybod beth? Rydw i'n mynd i fynd i mewn i google.html, yr ydym dechrau ar ddoe, a oedd yn edrych fel hwn, trwy yr ydym yn chwilio am gath Ond sylwi mae fath o nam yn y fersiwn gyfredol. Mae'n gweithio ar gyfer cathod, ond mae'n debyg bod Dydw i ddim yn cydweithredu ac yr wyf deipio dim byd, ac yr wyf yn syml yn chliciwch ar cyflwyno. Dyna fath o ymddygiad 'n annaearol. Cymerodd fi i'r gwir Google, nid oedd yn rhoi neges gwall mi. Hoffwn i ddweud wrth y defnyddiwr mae angen i chi roi gwerth i ni. Felly sut y gallwn wneud hyn? Wel gadewch i mi fynd yn ôl i mewn i Cloud9 a gadewch i mi fynd i ben fy dudalen ac ychwanegu tag sgript fel hyn, lle Rydw i'n mynd i deipio rhywfaint cod JavaScript. Ac yr wyf i'n mynd i wneud y canlynol. Os (document.getelementByID-- ac adalw ein bod yn siarad am hynny yn gynharach, swyddogaeth honno. Pa ID ydw i am ei gael? Rwyf am gael q, a dw i'n mynd i dyweder hafal dim byd, fel this-- mewn gwirionedd yn gadael i mi ddefnyddio dyfynodau dwbl yn unig ar gyfer consistency-- hafal ddim, Yna effro ( "Teipiwch ymholiad") fan hyn. Felly, yr wyf wedi hyn sy'n ymddangos i fod yn rhywbeth fel amod. Rydym wedi gweld syniad cyffredinol hwn yn Scratch. Mae fel un o'r rhai a pos darnau oedd yn edrych fel hyn. A beth ydw i'n ei ddweud? Wel, i lawr yma, yn sylwi fy mod mynd i wneud y canlynol. Rydw i'n mynd i roi'r ffurflen hon maes yn nid yn unig yn enw q, a oedd yn yw'r hyn yn cael ei basio i Google, ond rwy'n mynd i roi cynnig dynodwr lleol, Gelwir q hefyd. Ond allwn i alw unrhyw beth hwn rwy'n eisiau, Im 'jyst yn mynd i gadw pethau'n syml a hefyd ei alw'n q, dim ond ar gyfer symlrwydd. Ac yn awr yr wyf i'n mynd i wneud rhywbeth ychydig yn fwy. Ar y caeau ffurflen yma, dw i'n mynd i ychwanegwch yr hyn a elwir yn trafodwr digwyddiad. Ar cyflwyno, yr wyf am alw swyddogaeth o'r enw validate. Nid yw hyn yn bodoli eto, mae hyn yn gair, neu y validate ferf, oherwydd yr hyn yr wyf i'n mynd i wneud hyd yma yn awr yn ychwanegu ychydig o cod. Rydw i'n mynd i ddweud validate swyddogaeth. Rydw i'n mynd i indent hyn ac ychwanegu un arall Brace cyrliog yma ac un arall yma. Ystyriwch beth mae hyn yn awr yn ei wneud. Mae'n rhaid i mi now-- feddwl am hyn fel creu fy darn pos eich hun nad oedd yn flaenorol yn bodoli, ac yr wyf wedi galw y pos darnau y darn pos dilysu. Ei bwrpas mewn bywyd yw i weithredu y pedair llinell o god tu mewn iddo. Os document.getElementByID felly gysyniadol, sydd yn mynd i fynd i mewn i'r elfen, yr elfen HTML y mae ei unigryw syniad yn unig q, ac yna hyd yn oed er y gystrawen yn edrych ychydig yn od, hynny gyfartal yn dychwelyd yn unig yn golygu gyfartal. Felly mae hynny'n golygu os yw'r elfen gyda'r dynodwr unigryw o q, pan gotten, oes unrhyw werth, 'i jyst yn dychwelyd dyfyniad unquote, dim byd i mewn 'na, yna beth ydw i am ei wneud? Rwyf am i gweiddi ar y defnyddiwr. Ac ni fyddwn yn mynd fanwl iawn yma. Rydw i'n mynd i ddychwelyd ffug. Mae hynny'n gamgymeriad. Arall, yr wyf i'n mynd i ddychwelyd yn wir. Hynny naill ai ei fod yn gweithio neu nad oedd. Ffug neu yn wir. Ac yn awr os nad oeddwn yn gwneud unrhyw gamgymeriadau, gadewch i mi yn arbed hyn ac yn ail-lwytho hyn. A gadewch i mi gwirio jyst dwbl y na wnes i, mewn gwirionedd, yn gwneud unrhyw typos, felly nid wyf yn codi cywilydd fy hun. Gadewch i ni weld a yw hyn yn gweithio. Felly, yn awr rwy'n mynd i deipio cathod. Mae'n dal i weithio, neu waith hanner, o leiaf. Nawr, gadewch i mi ail-lwytho iddo, ac yn awr yn gadael fi ceisio cyflwyno heb deipio anything-- damn, mae'n torrodd. Un funud. Gadewch i mi agor y consol, [Anghlywadwy] log, ail-lwytho'r dudalen. Gadewch i mi roi cynnig ar hyn eto. O, damn iddo. Anghofiais i. Rwy'n gwneud typo. Yr wyf yn cofio yr hyn ydyw. .value. Yr wyf yn bwriadu ei ddweud os yw gwerth yr elfen y mae eu ID yn q yn hafal hynny, yna gweiddi ar y defnyddiwr. Felly nawr gadewch i mi ddal fy anadl eto. Yma rydym yn mynd. Dyna ni. Teipiwch ymholiad. Felly nid yw'n adael i mi drwy. Gallaf fod yn fath o chwareus gyda hyn, ac yn hytrach na gwirio am unrhyw werth, Gallaf ddweud rhywbeth fel, dim mwy chwilio am cathod, ac erbyn hyn gallwn jyst yn fwy chwareus gadael y chwiliad defnyddiwr ar gyfer cŵn os yw ef neu hi eisiau, neu os byddaf yn mynd i mewn yma ac chwilio am cathod, yn awr ni allaf. Felly beth yw'r prydau parod yma? Felly un, rydym wedi cyflwyno i ein byd o HTML a CSS, ymarferoldeb rhaglennu. Gallaf mewn gwirionedd yn awr wneud penderfyniadau mewn cod. Yn flaenorol, y cyfan y gallwn i ei wneud yw marcio i fyny cynnwys testunol neu gynnwys graffigol ac yn dweud ei fod yn beth i edrych hoffi a ble i arddangos. Nawr gall Fi 'n weithredol ofyn gwestiynau i'r dudalen we a gwneud penderfyniadau yn seiliedig arno, ac yn annog y defnyddiwr os bydd angen i mi gweiddi ar iddo neu iddi. Felly gadewch i ni roi cynnig ar rywbeth ar ein hunain gyda hyn. Fynd yn ei flaen, gadewch i mi agor y sleid nesaf yma, a dim ond tynnu sylw un peth. Yn union fel gyda CSS, gallwn ffactor allan ein cod JavaScript i ffeil ar wahân, gallwch chi ei wneud yr un peth gyda JavaScript fel gyda CSS. A ydych yn defnyddio bod defnyddio ffynhonnell priodoli y tag sgript. Ond ni fyddwn yn cymhlethu pethau am y tro. Yn lle hynny, os gallech ewch i ni y dudalen hon, but-- gadewch i mi symud o gwmpas hwn yn order-- mynd i, os ydych yn allai, y dudalen hon yma. Mae'r URL yma. Mae'n mewn sleidiau heddiw. Efallai y bydd rhaid i chi ail-lwytho oherwydd Rwyf wedi ychwanegu un neu ddau o beth. Ond mynd yno lle mae rhai posau aros. A bydd hyn yn rhoi cyfle i ni, mewn cyd-destun ychydig yn fwy o hwyl, i dabble gyda rhai JavaScript. A phan fyddwch yn cyrraedd yno, 'N annhymerus' yn esbonio beth yn aros. Get gwyrdd. Gosod glas. Setiau wyrdd, yn gosod goch. Wps. Mae'n ddrwg gennym. Mae hyn yn y maint ein dogfennau ar gyfer yr her hon. Ac mae hyn yn mynd i weithio fel a ganlyn. Felly, yr hyn yr ydych yn ei gael ar hyn dudalen yn criw cyfan o bosau ddelwedd gan buddy ym Mhrifysgol Stanford. Felly, yr hyn yr ydych yn ei weld yma bron math o un o bosau llygad hud hynny, ond os ydych yn unig yn syllu arno, dim byd yn mynd i pop allan ar chi. Yn hytrach, mae rhywbeth yn cuddio yn y ddelwedd hon. Ac mae'n cuddio yn y ffordd ganlynol. Delweddau, fel y gwyddoch, yn gallu bod gyfansoddwyd o ddim ond tri lliw. Mae rhai coch, mae rhai glas, ac mae rhai gwyrdd. A gallwn wneud yr holl lliwiau yn yr enfys trwy gymysgu y rhai tri lliw rywsut. Felly, mae hyn yn edrych yn wyrdd yn bennaf ac glas, ond fel Nick dweud yma, y ddelwedd hon pos haearn yn pos. Mae'n cynnwys delwedd o rhywbeth enwog, fodd bynnag, y ddelwedd wedi cael ei ystumio. Mae'r gwrthrych enwog yn y gwerthoedd coch. gwerthoedd Fodd bynnag, y coch i gyd wedi ei rannu â 10. Felly, maent yn rhy fach gan ffactor o 10. Felly, mewn geiriau eraill, Nick Cymerodd ddelwedd wreiddiol, ac efe a desaturated gyd o'r coch ohono, gostwng y swm o coch inc, os mynnwch, ynddo. Mae'r gwerthoedd glas a gwyrdd i gyd yn unig yn ddiystyr, gwerthoedd ar hap, aka gynlluniwyd sŵn i guddio y ddelwedd go iawn. Felly yr hyn a wnaeth Nick oedd ef toned i lawr y coch ac yna e jyst taflu ar hap symiau o glas a gwyrdd ar y ddelwedd i fath o guddio beth sydd mewn gwirionedd yn dal i fod yno. Mae'n rhaid i chi dadwneud distortions hyn i ddangos y ddelwedd. Yn gyntaf, yn gosod yr holl werthoedd glas a gwyrdd i sero i'w cael allan o'r ffordd, ac edrych ar y canlyniad. yna lluoswch pob gwerth coch â 10, cennu yn ôl i fyny at tua ei werth terfynol. Beth yw'r gwrthrych enwog? Felly pob un ohonoch wedi petryal hwn yn eich porwr ar hyn o bryd. Ac yn sylwi bod rhywfaint o cod cychwynnol, fel petai. Mae hyn yn JavaScript cod sy'n Nick wedi ysgrifennu i chi. Ac yn sylwi fod yna llinell yn y canol sy'n yn dechrau gyda slaes slaes, dyna hyn a elwir yn gyffredinol sylw. Mae'n golygu ei fod yn ymadrodd i'r rhaglennydd nad oes ganddo unrhyw ystyr swyddogaethol. 'I' jyst ciw gweledol i'r dynol. Felly, gallwch fynd yn ei flaen ac dileu yn union hynny llinell, a bod yn super ofalus i beidio â ddileu neu newid unrhyw beth arall. A gadewch i mi dim ond i chi gerdded trwy'r pa cod hwn yn ei wneud a byddaf yn gadael ei i chi chyfrif i maes y ddelwedd cudd. Mae'r llinell gyntaf yma fy mod i wedi jyst amlygedig yn rhoi'r canlynol i chi. Ar yr ochr chwith, gennych yr hyn a elwir newidyn bod Nick wedi fympwyol, ond yn galw rhesymol im i ddelwedd. Ar yr ochr dde o'r hafalnod, mae'n ei ddweud yn rhoi newydd i mi dyfyniad, unquote "delwedd syml". delwedd syml, yn y cyd-destun hwn yn hyn a elwir yn ddosbarth, yn dda, ei fod yn fath o fel class-- dechnegol yn prototype-- ond mewn gwirionedd, mae hyn yn rhoi gwrthrych newydd i mi, cynnwys ohonynt yn y ffeil, haearn-puzzle.png. Mewn geiriau eraill, Nick wedi creu syniad hwn o ddelwedd syml fel y gallwn, er pedagogaidd dibenion, chwarae gyda'r ddelwedd a newid ei coch, gwerthoedd gwyrdd, a glas. A sut ydym ni'n gwneud hynny? Mae'r gystrawen braidd yn cryptig yma yn fath o fel y bloc ailadrodd bod rhai ohonoch yn gweld yn Scratch gynharach heddiw, lle gallwch ailadrodd 10 gwaith. Yn yr achos hwn, nid yw gan Nick hardcoded nifer tebyg 10. Yn hytrach mae'n ei ddweud, ymgychwyn newidyn a elwir x i 0, gwirio os x yn llai na lled y ddelwedd. Ac felly i fod yn fwy priodol, delwedd yw'r amrywiol, dot yn golygu mynd y tu mewn ohono a chael ei lled, a Yna paren agored, ar gau paren yn unig yw ffordd yn rhaglennydd yn o ddweud hyn yn swyddogaeth. Mae hon yn weithdrefn. Mae hyn yn swyddogaeth rhywun arall yn ysgrifennu. Defnyddiwch ef ac yn rhoi i mi yn ôl ateb. Ac yna x ++ yn ffordd ffansi o gan ddywedyd, ar ôl i chi wedi gwneud hyn unwaith, cynyddiad x erbyn 1. Mewn geiriau eraill, mae hyn yn yn ffordd yn rhaglennydd yn o gymell dolen sy'n mynd i ailadrodd drosodd pob un o'r colofnau yn delwedd. Delwedd yn unig yw grid o dotiau, rhesi a cholofnau o ddotiau. Mae hyn yn ffordd o ailadrodd dros yr holl o'r colofnau hynny. Ac ar y tu mewn, yn y cyfamser, rydym yn ailadrodd dros y uchder, yma ac yma ac yma. Felly, mae hyn yn unig yw ffordd o traipsing, bron fel hen deipiadur ysgol, i jyst yn mynd dros y ddelwedd gyfan ailadroddol. Hyd yn oed nid yw hynny'n hollol gyfan gwbl clir, dim ond yn cymryd ar ffydd am y tro, bod y rhai tair llinell cod gyda'i gilydd yn mynd i ganiatáu i chi edrych ailadroddol ar bob picsel, pob dot yn y llun. Beth yw picsel? Wel, i fod yn glir, os edrychwn yn y gwreiddiol ac yn chwyddo i mewn, os ydych yn wir yn rhoi eich llygaid i sgrîn y cyfrifiadur, dyna dim ond criw cyfan o ddotiau, nifer o mil dotiau pacio at ei gilydd yno. Ac felly beth ydych chi ynghylch i'w wneud? Mae pob un o'r dotiau hynny, diffiniad terfynol, yn ganlyniad i beth sydd ar y cyfan Gelwir RGB, coch, gwyrdd, glas, a oedd yn eto, gellir eu cyfuno i rhoi unrhyw nifer o liwiau i chi. Yn wir, os ydych yn cofio o lawer, flynyddoedd lawer yn ôl, sgriniau taflunydd fel y pethau hyn arfer cael nid un lens ond tri. Mae un ohonynt yn boeri allan golau coch, un o nhw boeri allan golau gwyrdd, un ohonynt boeri allan golau glas. Ac os oeddech mewn ysgol ganol fel yr oeddwn lle maent byth yn cyd-fynd yn briodol, yr oeddech yn bob amser yn gwylio ffilmiau hanes bod ychydig yn ystumio, oherwydd nad oedd y tri lliw yn cyfuno iawn. Ond mae'n troi allan bod pob un o'r gwerthoedd hyn coch, gwyrdd, a glas, Gall gael nifer gysylltiedig â hwy. Er enghraifft, 0 am coch yn golygu dim coch, 0 am wyrdd golygu dim gwyrdd, a 0 am glas yn golygu dim glas. Felly, os nad oes gennych coch, dim gwyrdd, a dim glas, pa liw sydd gennych? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: byddai chi gobeithio hynny, mae'n wyn. Yn anffodus, mae hyn yn operates-- sori? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Felly yr ydych mewn gwirionedd cael du, yn yr achos hwn. Felly os oes gennych un o'r rhain lliwiau droi ymlaen, mae gennych du. Fodd bynnag, os oes gennych, gadewch i ni ddweud llawer ohonynt, fel llawer o goch, 255 ohono, llawer o wyrdd, ac mae llawer o sidan glas, sydd yn wyn. Felly mae'r rhain yn y ddau begwn. Felly, erbyn rhesymeg hon, os oes gen i lawer o goch a dim gwyrdd a dim glas, pa liw yw hynny? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Iawn, yn amlwg. Ac yna dim coch, llawer o gwyrdd, dim glas, ac yna os ydych yn have-- yn dda, byddwn yn jyst orffen y peth, dim ond oherwydd, ond mae hyn, wrth gwrs, yn awr, yn las. Ac yn awr gallwch gyfuno lliwiau hyn. Nawr fel o'r neilltu, os bydd unrhyw un gennych wneud erioed rhai gwirioneddol dylunio gwefannau, efallai y byddwch mewn gwirionedd gweld symbolau fel hyn. FFF-- ac mewn gwirionedd, mae'n Mae'n debyg na hyd yn oed hynny. Mae'n FFFFFF. Dylai unrhyw un a welwyd F ac E erioed ac A through-- felly mae'n troi allan, buom yn siarad ddoe am degol, a heddiw, math o tua degol. Heddiw, buom yn siarad am deuaidd. Troi allan, hecsadegol yn iawn system sylfaen gyffredin i'w defnyddio mewn cyfrifiadureg. Binary yw dau, degol yn 10, hecs yw 16. Ac mae'n troi allan, sut mae chi gyfrif yn hecsadegol? Zero, un, dau, tri, pedwar, pump, chwech, saith, wyth, naw, beth ydych chi'n ei ddefnyddio ar ôl naw? Beth yw'r rhif nesaf? Rydym eisoes defnyddio sero. Fi angen 16 o'r rhain. Zero, un, dau, tri, pedwar, pump, chwech, saith, wyth, naw, ydych angen rhywfaint o confensiwn mympwyol. A beth ddynoliaeth penderfynodd peth amser yn ôl bod ar ôl naw daw'r llythyr A ac yna B ac yna C. Felly, y ffordd yr ydych yn cyfrif yn hecsadegol yn sero, un, dau, tri, pedwar, pump, chwech, saith, wyth, naw, A, B, C, D, E, F, ac y bydd yn cyfrif chi yr holl ffordd, mae'n troi allan, i 15. Felly sero i 15 yn sero drwy F. Nawr pam yw bod yn arwyddocaol? Wel, pan fydd gennych ddau F, dyna sut yr ydych yn mynegi 255. Cyn belled stori fer, yn fyd Photoshop, bod meddalwedd dylunio graffig, ym myd datblygu gwefan, lle mae gennych lawer o liwiau, wrth gwrs, i chwarae gyda, Yn aml bydd rhaglenwyr mynegi rhai mewn hecsadegol, dim ond oherwydd ei fod yn tueddu i fod ychydig yn symlach. Hyd yn oed er ar yr olwg gyntaf mae'n llawer mwy cymhleth. Felly, mewn unrhyw achos, mae hyn yn bwysig gan fod Nick yn Stanford wedi rhoi chwe darn o functionality ni eich bod chi, y rhaglenwyr cyw, Bydd yn awr yn cael y gallu i ddefnyddio. Hadeiladu i mewn we hon dudalen yn chwe swyddogaethau, chwe gweithdrefnau y Nick yn ysgrifennu. Mae tri ohonynt yn cael chi rif, coch, gwyrdd, neu werth las. Mae tri ohonynt yn gosod y gwerth hwnnw. Ac tanlinellau hyn yn unig dalfannau, felly mae angen i chi wybod beth yw'r rheini. Felly, gyda hyn tair swyddogaeth, y cyntaf o'r pethau hyn yn mynd i fod yn gyfesuryn-x, a'r ail o'r pethau hyn yn mynd i fod yn y-chydlynu. Mewn geiriau eraill, sy'n dot, a oedd yn picsel ydych chi am gael y gwyrdd, cael y glas, yn cael y coch. Ac yna yma, mae hyn yn mynd i fod x, mae hyn yn mynd i fod yn y gwerth, ac mae hyn yn mynd i fod yn rhif. Felly gadewch i ni wneud y cyntaf llinell o hyn gyda'n gilydd ac yna byddaf yn gadael i chi i geisio i ddiddwytho y gweddill. Felly ôl y cyfarwyddiadau ar y dudalen hon, mae angen i gynyddu'r goch gan ffactor o 10, ac mae angen i ni gael gwared ar y gwyrdd a chael gwared ar y glas. Gadewch i ni ddechrau gyda'r senarios olaf. Felly os ydw i eisiau, ac rwy'n mynd i indent drwy ddefnyddio rhai mannau, os ydw i am osod y coch, y gwyrdd, neu werth las, Rydw i'n mynd i wneud y canlynol. Image, im.setBlue, ac yna yn seiliedig ar fy cyfarwyddiadau yma, beth ddylwn i dri pheth teipiwch tu mewn cromfachau yn awr? Fi angen gwerth x, y y gwerth, a pha rif ddylwn i roi yma os wyf am i gael gwared o'r glas, yn seiliedig ar y stori hon fan hyn? Dim ond yn sero. Os ydw i eisiau dim glas, Im 'jyst mynd i newid i sero. Nawr, gadewch i jyst ailadrodd yr hyn y mae hyn yn ei wneud. Gennyf yma ar ben hyn ail a thrydydd llinellau, Rwy'n Honnodd dau dolenni, dolenni nythu, os ydych yn Bydd, bod yn mynd i gael yr effaith o symud ymlaen o'r chwith i'r dde, top i'r gwaelod dros bob un o'r x gwerthoedd a phob un o'r y gwerthoedd. Oherwydd unwaith eto, mae darlun yn dim ond grid o resi a cholofnau. Felly, mae hyn yn mynd i gael gwared ar yr holl las. Gadewch i mi adael yn y llinell nesaf i chi. Sut ydw i'n cael gwared ar yr holl gwyrdd? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Nice. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Nice. Ac yr wyf i'n mynd i chwyddo allan, a dim ond yn cymryd gofalu am nad ydych wedi gwneud unrhyw typos. Ac os ydych chi'n gyfforddus gyda'r hyn yr ydych wedi ei wneud, mynd yn ei flaen a chliciwch y botwm Rhedeg / Achub a gweld yr hyn yr ydych yn ei gael. Ac eto, rydym wedi gwneud dim ond tri newid. Rydym yn dileu hynny yn gyntaf sylwadau ac yn lle'r â'r rhain dwy linell o god. Ac mae'n iawn os bydd angen i daro y botwm Run / Save cwpl o weithiau at atgyweiria rhywbeth. A gadewch i mi hefyd chwyddo i mewn ar fy cod fel y gallwch trawsgrifio. Da. Felly, yr wyf yn gweld Andrew wedi hyn ymddangos i fod yn gamgymeriad. Mae o jyst got a du mawr petryal ar ei sgrin. A oes unrhyw un arall yn cael petryal du mawr? GYNULLEIDFA: Oes. DAVID Malan: petryal du Mawr? Iawn, felly gadewch i ni feddwl am ystyr hyn. Rydym yn dweud bod sero, sero, sero, felly dim gwyrdd, dim coch, dim glas, yn mynd i roi ddu chi. Ac mae'n troi allan y rhan fwyaf o'n gliniaduron nid yn unig yn cael digon o ffyddlondeb. Ni allwch eithaf ddweud yno mewn gwirionedd yn rhywbeth yno. Ac os ydych yn fath o efallai pwyso eich sgrîn ymlaen ac yn ôl, efallai ydych yn gweld Ychydig rhywbeth yno? Efallai, math o, math o? Dyw hi ddim yn berffaith ddu. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Spoiler! Mae rhywfaint o goch yno, ond cofio o manylebau o'r broblem, Nick toned i lawr. Roedd desaturated ei braidd, ond nid yr holl ffordd i sero. Felly, os ydym am i chwyddo y swm o goch, gadewch i mi gynnig hon castia. Gadewch i mi chwyddo i mewn ar fy sgrin. A gadewch i mi fynd yn ei flaen ac yn dweud swm hafal im.getRed (x, y). Mae'r llinell hon o god yn rhoi i mi rhywbeth a elwir yn amrywiol. Mae gen i fympwyol, ond, gellid dadlau, Gelwir rhesymol fy newidyn beth, yn ôl pob golwg? Swm. Dim ond swm. Gallwn i wedi ei alw unrhyw beth yr wyf am ei gael, ond rwy'n gan ddefnyddio'r swyddogaeth arall hon a ddisgrifiais yn gynharach i gael y swm o coch ar x atalnod y. Pam wnes i wneud hynny? Beth ydych chi eisiau ei wneud yma? Mae angen i chi add-- GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Ie, efallai luosi 10. Ac os nad ydych yn gwybod hyn, rwy'n mynd i fynd yn ei flaen ac yn gwneud hyn. Rydw i'n mynd i fynd yn ei flaen a dyweder, yr wyf am y swm o coch Dwi am fod beth bynnag wrth goch, amseroedd 10, a seren, mae'r seren ar eich bysellfwrdd yn Nid the-- yn defnyddio x. Defnyddiwch y seren. Dyna sut yr ydych yn lluosi pethau yn y rhan fwyaf o ieithoedd rhaglennu. Felly yn ôl greddf Kareem, a storio mewn newidyn hwn a elwir yn swm, yw faint o goch wyf am ei gael ar xy lleoliad. Sut, yn awr, ydw i'n gwneud hynny Pixel cael y rhif hwnnw? Rydych eisoes wedi gwneud hyn o'r blaen. Rydych yn gosod y gwyrdd a'r glas i unrhyw werth, i sero. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Ie, wel nad ydych am i 10. Rydych eisoes yn gwneud y math yma. Felly, rydym yn cael y gwerth o goch, sydd yn nifer isel, yn ôl pob tebyg. Rydym yn lluosi gan 10. Yr hyn yr ydych am ei wneud gyda y swm amrywiol yn awr? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Nice. Felly im.set-- beth? GYNULLEIDFA: setRed. DAVID Malan: setRed, yn xy lleoliad. Yeah. Ac yn union swm. Mewn geiriau eraill, mae newidyn hon yn cadw'r dros dro eich bod yn gallu rhoi unrhyw beth yr ydych am ei gael yn. Rydym yn digwydd bod yn rhoi Rhif ynddo, ar hyn o bryd. Rydym wedi lluosi iddo gan 10 i'w wneud yn fwy. Ac yn awr yr wyf i'n amnewid newidyn sy'n fel y trydydd dadl, neu fewnbwn i osod goch. Ac felly unwaith y byddwch orffen hynny, ac yn cymryd sylw o'r hanner colon a'r cromfachau. Mynd yn ei flaen a chliciwch rhedeg / arbed eto, ac yr ydych Dylai weld, hudol, beth oedd mewn gwirionedd yno. [? Arwa,?] Beth sydd yno? Y Tŵr Eiffel yn llawn-fledged coch, ddim yn hollol dywyll. dylai fod yn fwy amlwg erbyn hyn, ie? IAWN. Ac Andrew, blwch dim mwy du? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: pob hawl. Felly byddaf yn cadw hyn ar y sgrin. Os ydych am chwarae gyda hyn yn ddiweddarach, 'n annhymerus' ail-greu'r hyn i chi. Ond cod hwn yma a wnaeth yn union hynny. Pam nad ydym yn gwneud un arall. Gadewch i mi sgroliwch i lawr ychydig. Felly, yn yr achos hwn, mae'r taflunydd nid yw'n wir yn gwneud cyfiawnder ag ef. Ond ar eich sgriniau, mae'n debyg gael blwch coch iawn a du iawn. Mae hyn, hefyd, yn pos sy'n Dengys rhywbeth enwog. Fodd bynnag, mae'r ddelwedd wedi cael ei ystumio. Mae'r llun yn wir, y tro hwn, yn yn y gwerthoedd glas a gwyrdd. Fodd bynnag, maent i gyd ei rhannu 20 felly mae'r gwerthoedd yn fach iawn. Mae'r gwerthoedd coch yn unig rhifau ar hap, sŵn. Dadwneud distortions hyn i ddatgelu y llun cywir. Felly Nick wedyn yn dweud wrthych beth i'w wneud. Gosodwch y gwerthoedd coch i sero, ac yna peidiwch difetha yr hyn ydyw. Yna lluoswch y glas a gwerthoedd gwyrdd erbyn 20. Felly mae bron yr un rhaglen ag o'r blaen, ond eich bod yn gwrthdroi'r broses. A mi roi fy cod o o'r blaen ar y sgrin rhag ofn ydych chi eisiau cyfeirio'n ôl ato neu chwarae ymhellach â bod un. Gadewch i mi chwyddo i mewn ar hynny. Ond datrys image copr pos, rhif dau. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Iawn, felly mae hyn yn un rwy'n Nid yw mynd i roi cymaint o awgrymiadau. Felly, yr wyf would-- oh, gadewch i ni gweld, mae gennych typo yma. Felly cofiwch, mae hyn yn fan hyn mewn gwirionedd mae angen i fynd yno. Felly beth fyddwn i'n cynnig, os ydych chi eisiau canolbwyntio ar yr un yma, does yr ateb. Os ydych am i drawsgrifio hynny, bod ddylai gael yr un cyntaf yn gweithio. Ac yna gallwch ddefnyddio hynny fel ysbrydoliaeth ar gyfer yr ail un. Nice. Da. Ac ar gyfer y chwilfrydig, mae hyn yn enghraifft syml o wyddoniaeth neu gelfyddyd Gelwir steganography, y grefft o guddio gwybodaeth mewn delweddau. Yn nodweddiadol, efallai y delweddau fod yn dyfrnodi amlwg yn iawn gyda logo yn y gwaelod cornel, ond yn amlwg, yr ydych Gall fod yn llawer mwy soffistigedig am y peth ac mewn gwirionedd cuddio delweddau eraill yn yr Delweddau rywsut gyda'r dechneg hon. Cymerwch 30 eiliad arall, ac yna rydym annhymerus ' o leiaf yn cyhoeddi hyn y dylech ei weld. A byddaf yn gadael y trydydd un fel ymarfer yn y cartref, os hoffech fwy o herio y penwythnos yma. Ac yr wyf yn meddwl Andrew gallai wedi gotten yn gyntaf. Beth yw'r ail ddelwedd, Andrew? GYNULLEIDFA: Cerflun o Liberty. DAVID Malan: Cerflun o Liberty fydd yr ateb y tro hwn. Felly unwaith eto, dim ond rhai syml enghreifftiau, y nod ohonynt yw rhoi ymdeimlad o sut yr ydych yn rydym wedi cyfieithu Scratch darluniadol blociau i fwy blino a mwy cod gymhleth, ond mae pob un o'r syniadau yn dal i fod yn union yr un fath, er mai gyda chyflwyniad yn awr y syniad o amrywiol, sef gallu storio rhywbeth dros dro. Gadewch i ni wneud un yn fwy ymarferol, yn unig yn awr i gysylltu'r dotiau i rywbeth ychydig yn fwy byd go iawn. Pan fyddwch yn barod, os gallech ewch i'r URL hwn ar y sgrin. Dyna hefyd yn eich copi o'r sleidiau, developers.google.com/maps~~V. Gadewch i ni mewn gwirionedd yn gwneud rhywbeth go iawn, fel petai, ar y we gan ddefnyddio'r API Google Maps, neu rhyngwyneb rhaglennu cymhwysiad, yn y ffordd ganlynol. Google, fel llawer o gwmnïau, darparu llawer o functionality rhad ac am ddim y gallwch ei ddefnyddio i adeiladu eich ceisiadau diddorol eu hunain. Yn wir, os ydych chi wedi defnyddio erioed Uber i gael tacsi neu gar, mae'n debyg eich bod yn gwybod bod Uber wedi a mapio ac mae'n dangos ceir arno. Hynny yw, hyd eithaf ag y gallaf dweud, Google Maps API. Maent yn cael eu mewn gwirionedd gan ddefnyddio mapiau Google, ond nid Uber yn gwmni mapio, ac ni fyddai hynny yn problem arbennig o ddiddorol i ddatrys ar ben eu problem gwasanaeth ceir. Ac felly maent yn sefyll, eto, ar ysgwyddau pobl eraill, Google yn yr achos hwn. Felly, maent yn defnyddio mapiau Google ond eu pen eu hunain gwasanaethau car a nodweddion eraill o'r fath. Felly, rydym yn mynd i fanteisio o hyn i wneud y canlynol. Ac os ydw i wedi mynd yn rhy gyflym, dim ond fy ffonio dros mewn munud. Hapus i ailadrodd rhai o'r stwff ddelwedd. Dylech weld eich hun ar dudalen fel hyn. Felly Google yn neis, a eu bod ymhlith y goreuon o ddarparu nid yn unig yn APIs, ond APIs rhad ac am ddim sy'n eich Gall chwarae gyda neu ddefnyddio yn fasnachol. Maent yn dechrau codi tâl i chi os yw eich defnydd yn uchel, ond yr wyf yn mynd yn ei flaen o flaen llaw a lofnodwyd ni i fyny ar gyfer cyfrif am ddim hynny, gobeithio, 10 cyfrifiadur Ni fydd anghymwyso ni am sydyn. Felly gobeithio y mae hyn Bydd arddangosiad yn gweithio. Ac yn sylwi eu bod yn cael APIs ar gyfer Android, iOS, gwasanaethau ar y we, ac ar y we, beth bynnag yw hynny. Gadewch i ni ganolbwyntio ar y we. Felly cliciwch ar y blwch pinc, ar y we, a bod byddwch yn arwain, gobeithio, at dudalen fan hyn. Ac maen nhw wedi cael criw cyfan o APIs. A gall fod ychydig yn llethol ar y dechrau, ond byddaf yn ein tywys drwy'r hyn yr ydym ei eisiau. Ar yr ochr chwith uchaf yw'r Mapiau Google JavaScript API, mae'r API JavaScript. Felly mynd yn ei flaen a chliciwch bod un. A fydd yn eich arwain yn awr at y yn dilyn dudalen, demos a chod sampl. Gadewch i mi chwyddo allan fan hyn. A gadewch i mi gael i ni canlynol-- sgrolio i lawr i lle mae'n dweud camau cychwyn cyflym. Dylai eich sgrîn yn edrych fel pwll. Ac mae dau gam, yn cael allwedd a dechrau datblygu. Rwyf eisoes yn gwneud cam un ar gyfer ni, cael allwedd fel y'u gelwir. Ac mae hyn yn syniad cyffredin. Allwedd API yn gyffredinol yn unig rhif ar hap mawr neu linyn chi sydd i fod i bastio i mewn i'ch cod, fel bod Google yn gwybod pwy ydych chi pan eich bod yn defnyddio eu gwasanaeth, eu API. Nid yw'n golygu ein bod cael ei godi unrhyw beth. Ac yn awr, cliciwch, yn hytrach na un, cliciwch ddechrau datblygu. Pe gallech jyst tonnau mi drosodd os nad yn siwr lle yr ydym. Felly byddwn yn jyst crafu'r wyneb, dyma ond beth Roeddwn i'n meddwl y byddai yn gymhellol yw mewn gwirionedd yn cael pob un ohonom, gan ddefnyddio Cloud9 mewn un ffenestr a tiwtorial hwn mewn ffenestr arall, gadael i mewn gwirionedd yn cael ein hunain Cais i fyny a rhedeg sy'n ymgorffori arferiad Google map yn ein tudalen we eich hun, ac yna ychwanegu un neu ddau o nodweddion. Ond byddwn yn jyst crafu'r wyneb yr hyn y gallwn ei wneud. Felly dim ond gwiriad pwyll gyflym. A yw pawb yn y dudalen hon, Google Maps JavaScript API? Dylai ddweud dechrau arni. Nid ydym yn mynd i fynd drwy'r yr holl beth mewn unrhyw fodd. OK, mewn tab arall, os nad ydych yn ei wneud wedi ei agor, peidiwch â mynd i mewn i Cloud9 ac yn cael eich hun i ychydig tab newydd, yn y pen draw. Felly eto, c9.io o ddoe, c9.io, a dim ond creu ffeil newydd. Ac yn mynd yn ei flaen a galw mae'n beth bynnag yr hoffech. Gelwais fy map.html. Alw unrhyw beth yn dod i ben mewn html. A dylech fod yn fras lle yr wyf yn y broses hon gyda dim ond brydlon amrantu mewn gwag tab o'r enw rhywbeth fel map.html. Neu ffeil, ffeiliau newydd y tro hwn. Ac yn awr, drosodd ar y Google Maps JavaScript API, byddwn sgip darllen drwy holl destun hwn. Ond yn sylwi bod byd helo yw yn wir ym mhob man, i chi ei weld yn awr. Helo Mae gan y byd hwn mawr lliwgar enghraifft o criw cyfan o HTML. Mynd yn ei flaen ac yn copïo a gludo yn unig hynny HTML, felly oddi wrth y math doc ar y brig yr holl ffordd at y tag HTML yn agos, ewch ei flaen a chopïo pob un that-- eto, dyna o dan y byd helo example-- a bastio i mewn i'ch hynny tab Cloud9, fel bod nawr eich sgrîn Dylai edrych yn fras fel fy. A gallwch ei chadw, ond peidiwch lwytho eto. Gadewch i ni edrych yn gyntaf ar y cod a gweld os ydym yn Ni all casglu neu ddysgu o'r hyn y mae Google wedi i ni ddall copïo a gludo. Maent yn unig am helpu, yn llythrennol, yn cael ein cychwyn, ond nid oes cymaint â hynny cymhlethdod mewn gwirionedd yno. Unrhyw gwestiynau eto? Rydym yn ddiogel i fwrw ymlaen? IAWN. Mor gyflym, gadewch i ni dim ond gwneud rhai gwiriadau callineb gyflym. Llinell un o'r hyn yr wyf gweld, a gobeithio, byddwch yn gweler, beth mae hynny'n ei olygu, HTML DOCTYPE? Kareem, cofio? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Ydw. Yma, yn dod HTML 5. Yn y cyfamser, llinell dau ar y sgrin yma yn golygu hey porwr, yma hon y HTML gwirioneddol. Llinell tri yw hey porwr, yma hon y pen. Llinell pedwar yw, wrth gwrs, hey porwr, yma hon y teitl. Beth mae llinell pump yn ei wneud? Mewn gwirionedd, nid yw hyn yn 'n sylweddol yn gwneud unrhyw beth i ni. Yn yr achos hwn, 'i jyst newid maint y dudalen at ball. Llinell chwech, nid ydym wedi siarad amdano, ond mae'n pennu'r amgodio cymeriad. Mae gwahanol ffyrdd i amgodio ffeil, yn enwedig ar gyfer ieithoedd tramor. UTF-8 yn unig yn tueddu i fod yn ddiofyn. Felly nawr byddwn yn gweld yn unol saith drwy 16, mae rhai CSS. A hyd yn oed er nad ydym wedi gweld pob un o'r pethau hyn o'r blaen, gallwn fath o infer. Felly llinell wyth ffordd, hey porwr, yn gymwys bob un o'r canlynol y mae dau dag, yn ôl pob golwg? Mae'r HTML a chorff testun. Felly mae'r coma yw'r peth newydd yno. A dim ond yn ffordd o gan nodi tagiau lluosog ar unwaith. Yna, rydym wedi cael y braces cyrliog. Felly mae'n debyg, mae hyn yn dweud wrth y porwr, gwneud uchder y dudalen 100%. Felly hyd yn oed os oes ychydig iawn cynnwys, yn gwneud y dudalen gyfan, gwneud y peth lenwi'r dudalen. Gwnewch y map yn y pen draw lenwi'r dudalen. Ymyl, beth mae hynny'n ei olygu? Dyna fel arfer fel mympwyol gofod gwyn o amgylch yr ymylon bod rhai dylunydd porwr yn unig Penderfynodd ddylai fod yno, oherwydd ei fod yn math o gwneud i bethau edrych yn lanach. Ond nid ydym am hynny. Rydym am i'r map mynd yr holl ffordd i'r ymylon. Padio, yn debyg mewn ysbryd i ymylon. Ymylon golygu y tu allan, fodd padding y tu mewn, ond mae'n yr un math o fargen. Mae'n ychydig o byffer rhyngoch chi a'r ymylon. Ac yna llinell 13 yn dda Cyfle am adolygiad cyflym. Beth mae map arwydd miniog golygu, neu olygu map hashtag? Beth mae bod yn cyfeirio at, mewn egwyddor? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Yn union. eiddo hwn, yr eiddo hwn CSS yn berthnasol i dim ond un peth, y tag HTML sydd â adnabod o ddyfyniad, unquote "map". Ac yn awr gadewch i ni ymlaen yn gyflym, sgrolio i lawr i waelod y ffeil, a oedd yn Nid yn rhy bell i ffwrdd, a rhybudd ar-lein 19, os ydych yn gludwch yn union fel y gwnes, llinell 19 Mae gan unig yw div, sydd yn rhaniad y dudalen, sy'n ddoe wyf Gelwir rhanbarth hirsgwar. Mae'n ddim byd ynddo. Mae'n tag agored, tag cau. Ond oes ganddo ID unigryw. Felly yr hyn sy'n ymddangos i fod yn digwydd yma yw Google yn readying ein tudalen ar y we i cael cyflawn uchder o 100%, ac nid oes unrhyw padin, dim ymylon, gan fod hyn yr ydym yn mynd i roi y tu mewn o div hwn, y mae eu ID unigryw yw map, yn fap wreiddio gwirioneddol. Ac rydym am iddo lenwi y dudalen ac nid dim ond fod rhywfaint petryal bach yn y canol. Felly llinell 14 yn yr un modd yn pwysleisio, y map ei hun ddylai gael uchder o 100%. Felly nawr yn sylwi rhwng llinellau 20 a 28, mae hyn yn JavaScript cod. Ac mae hyn yn, hyd yn oed er 'i' syntactically ychydig yn rhyfedd, Nid oes i gyd bod llawer sy'n digwydd fan hyn. Yn unol 21, mae hyn yn datgan rhywbeth a elwir yn amrywiol. Yn hytrach na galw yn symiau, fel y gwnaethom o'r blaen, rydym yn fwy manwl gywir yn dweud var, a dim ond yn golygu amrywiol. Gallem fod wedi defnyddio hynny yn cod Nick, ond nid oedd, felly yr wyf yn Nid oedd yn trafferthu gwneud hynny chwaith. Mae'n newidyn a elwir yn map, ac yna mae swyddogaeth sy'n Gelwir pob golwg initMap. Felly, mae hyn yn debyg ein hun arfer darn pos yn Scratch. Rydym wedi creu darn o ymarferoldeb a elwir initMap, a gallwch fath o awgrymu beth sy'n digwydd fan hyn. Ar yr ochr chwith, mae gennym newidiol, felly rydym yn mynd i roi y canlynol beth y tu mewn newidyn hynny, o'r dde i'r chwith. Yr ochr dde yn dweud, hey porwr, roi map Google newydd i mi. Ac google.maps.map yn unig yw ffordd ffynci o nodi y swyddogaeth hon yn perthyn i Google Maps. Ar ôl y cromfachau, rydym wedi gweld hyn o'r blaen, hey porwr, yn cael m 'r elfennau yn y dudalen, mae'r tag yn y dudalen y mae eu ID unigryw yw-- GYNULLEIDFA: [Anghlywadwy] DAVID Malan: --map. A beth sy'n digwydd, yn dda, y llinell hon gyda'n gilydd, llinell 23, yn ei hanfod gan ddywedyd, hey porwr, ewch ca 'm bod div gwag ar y dudalen y mae eu ID unigryw yn map, oherwydd yr wyf am i fewnosod i mewn iddo-- chwistrellu i mewn iddo, os ydych will-- criw cyfan o gynnwys sy'n digwydd i fod yn dod oddi ar y we, ar ôl hynny. A Google yn gwneud hynny i gyd i ni. Felly eto, ar ddiwedd y dydd, mae gennym enghraifft hon o dynnu. Nid oes gennyf unrhyw syniad beth yw map neu sut i weithredu API map. Nid oes angen i arnom. jyst angen i ni ddweud wrth y map ble i roi ei hun, ac yn gadael y rhai sy'n sail gweithredu manylion at Google. Erbyn hyn mae yna yn ôl pob golwg ddau ddarn o ddata bod yr enghraifft hon yn darparu i Google API. Mae'n debyg ganol y map, a'r lefel chwyddo, fel petai. Ac oes unrhyw un yn cydnabod y rhain cyfesurynnau, lledred a hydred? Mwy na thebyg, ond gallwn fynd yn ôl at y tiwtorial, yn llythrennol yn gweld. Ond byddwn yn ei weld mewn dim ond eiliad. lefel chwyddo yn werth rhwng, nid wyf yn ei wneud gwybod, un o bob 13 neu rywbeth fel 'na. 'I jyst wedi ei wneud gyda pa mor bell ydych yn chwyddo i mewn neu allan, a dyna ni. Ac yn awr ar ddiwedd y y dudalen, llinell rhybudd 29-- mae'n ychydig yn hyll oherwydd mae'n wraps-- llinell hon o god yw'r hyn downloads i'r porwr Google API gwirioneddol. Mae pob un o'r cod sy'n Google peirianwyr wedi ysgrifennu sy'n gweithredu hyn yn gyfan nodwedd o fapiau fewnosod. Nawr, gadewch i ni newid unrhyw beth. Os ydych yn dilyn ar hyd, mynd yn ei flaen a dim ond eithrio bod ffeil, os ydych yn wir gennych yr hyn yr wyf wedi. Ewch at ei URL. Gallwch glicio ar y botwm Run i fyny top a fydd yn dweud chi URL eich gweinydd gwe eto. A bydd yn eich arwain at tab newydd. Os cliciwch chi Agored i map.html, a groes yn eich bod yn mynd i gael rhybudd, neges gwall, ie? neges gwall, neges gwall? Felly yn anffodus, mae'r gwall Nid yw neges yw bod goleuo oni bai eich bod mewn gwirionedd yn agor y consol, y tab arbennig ni Cedwir agor ddoe a ychydig yn gynharach heddiw. Ond yr wyf yn baglu ar draws hyn yn gynharach, felly yr wyf eisoes cyfrifedig allan yr hyn y mae'r ateb yw. Yn sleidiau heddiw, neu yn hytrach, yn Cloud9, rhybudd nad ydym yn gwneud rhywbeth yn fwriadol. Sylwch fod sgript hwn tag yn llinell 29, os ydych yn darllen drwyddo, mae fel maps.googleapis.com/ rhywbeth, rhywbeth, rhywbeth, Yna sylwi rhywun, un o'r datblygwyr, Ysgrifennodd ym mhob cyfalaf llythyrau, eich allwedd API. Mae angen i ni bastio rhywbeth i mewn 'na. A hyn oedd y cam Fe wnes i ni o'r blaen, ac unwaith eto gallent rhestr ddu ni os yn sydyn, 12 neu mwy ohonom yn dechrau gan ddefnyddio'r un allweddol, ond gadewch i ni weld beth sy'n digwydd. Felly, os byddwch yn mynd i mewn i heddiw sleidiau, un sleid yn ddiweddarach, mae hwn llinyn ffynci-edrych yn iawn o destun. Mynd yn ei flaen ac yn jyst adysgrifia hynny a bastio 'lle mae'n dweud eich allwedd API. Dyna'r un yr wyf yn cofrestru ar gyfer. Ac nid yn bendant yn ceisio ei deipio allan â llaw, oherwydd ei fod yn teimlo'n llawn gyda camgymeriadau teipio, o bosibl. Felly jyst adysgrifia a bastio hynny. Ac mae'n mynd i wneud y llinell yn hwy, ond erbyn hyn, dim ond i fod yn glir, dylai edrych ychydig yn fwy fel hyn, lle nad yw allwedd hafal cyfalafu gweiddi ar chi. Arbedwch eich tudalen, ewch yn ôl i'r tab arall, ail-lwytho, ac yn gobeithio i weld map o ble? GYNULLEIDFA: Awstralia. DAVID Malan: Awstralia. Felly mae'n debyg y rheini yw'r Cyfesurynnau GPS o Awstralia. A gadewch i mi gerdded o gwmpas am ychydig funudau'n ac yn helpu unrhyw un nad ydynt yn eithaf yno, ond gadewch i mi gynnig, trwy Google, dod o hyd Cyfesurynnau GPS eich hometown hun neu eich gwlad cartref eich hun. Ac mae'n debyg y gall Google droi hyn Gall fyny, neu Wicipedia dweud wrthych. Ond sy'n dewis dau werthoedd gwahanol ar gyfer lledred a hydred, mynd yn ôl i mewn ac yn eu gludo, a Yna ail-lwytho'r dudalen ar ôl achub a gweld os allwch chi gael map ar gyfer eich hometown hun. A phan fyddwch chi'n ei wneud gyda hynny, mae'r dilynol challenge-- a byddaf yn rhoi ychydig yn llai cyfeiriad, yn fwriadol, er mwyn i chi yn fwriadol rhaid i frwydro am gwpl cofnodion gyda'r ddogfennaeth, newid y map i fod nad yw hyn diofyn cartoonish, ond map lloeren. Felly, byddwch yn gweld lloeren delweddaeth yn lle y lliwiau 'n bert. Ac mae'r awgrym byddaf yn rhoi i chi yw newid math y map yn. Ewch yn ôl at hynny gael Dechreuodd dudalen am ysbrydoliaeth. Fel y gallech fod wedi lloffa, os ydych yn chwilio, mae cymaint o fwy pethau y gallwch eu gwneud. Mae rhai ohonoch eisoes wedi newidiodd y math map. Ond gallwch do-- er enghraifft, gadewch i mi mynd i rywbeth a wnaethom ar gyfer y cwrs Rwy'n teach-- maps.cs50.net. Un o'n israddedigion yn gwneud hyn. Rydym yn canolbwyntio ein map dros Harvard Yard a troshaenu pob un o'r enwau adeiladu hyn, a chawsom ef ychwanegu hyn. Felly os ydw i am chwilio am, er enghraifft, Neuadd Matthews, mae gennym ychydig o cwymplen. Ac yr wyf yn meddwl ei fod yn defnyddio'r bootstrap, mae'r llyfrgell rydym yn trafod yn gynharach ar gyfer hyn. Ac os ydych yn clicio ar Matthews Hall, unwaith neidio y map i ryw lleoliad, ac mae'n dangos chi lun yn yr ychydig pop-up. Ond hyd yn oed hyn ychydig pop-up, doedden ni ddim yn rhoi ar waith. Os byddaf yn sgroliwch i lawr ar ein gael Dechreuodd dudalen a chwilio am ffenestri info, byddwch yn gweld bod rhai o'r functionality chi eich hun Gall ychwanegu, er gyda ychydig yn fwy cymhleth, yn rhywbeth a elwir yn ffenestr info. Ac os wyf yn clicio enghraifft yma, ac mae hyn yn beth sy'n hwyl, gallwch wneud pethau fel hyn, glicio ar marciwr ac yna voila, gwybodaeth pops i fyny. Felly nid ydym wedi eithaf cyflwyno digon o nodweddion o JavaScript i baentio darlun o sut yn union yr ydych Gallai gwifren holl bethau hyn gyda'i gilydd, ond rydym wedi fath o crafu'r wyneb. Yn wir, yr hyn yr wyf yn unig oedd pan Yr wyf yn clicio ar y marciwr, yn sbarduno digwyddiad, mae hyn a elwir ar y digwyddiad cliciwch. Ac rydym mewn gwirionedd yn gweld digwyddiad yn gynharach heddiw, yr hyn a elwir digwyddiad cyflwyno, pan oeddem yn atal y defnyddiwr rhag chwilio am gathod. Felly, rydym wedi math o pigo a choosed o blith yr holl nodweddion amrywiol hyn, i roi ymdeimlad i chi, gobeithio, yr hyn a allwch mewn gwirionedd wneud gyda ychydig yn fwy cysur mewn rhaglenni, ac adnoddau rhad ac am ddim. Unrhyw gwestiynau? Na? Dyma eich cyfle olaf, o leiaf heddiw, ar ddydd Gwener, i gael unrhyw beth oddi ar eich brest fel eich bod yn cerdded allan o'r yma teimlo'n hyderus ac yn gyfforddus. Ydw. GYNULLEIDFA: Pam na gwneud chi ychwanegu un peth arall? DAVID Malan: O fy daioni. Mae angen i mi orffwys y penwythnos hwn, yr wyf yn meddwl. Cwestiynau eraill? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Rydych can-- mewn Internet Explorer, gorffwys mewn heddwch, chi ei ddefnyddio i fod yn gallu rhoi VB sgript, rhithwir sgript sylfaenol, ond sydd wir yn byth yn dal ar. Felly yr ateb byr yn unig yw JavaScript. Cwestiynau eraill? Mae pob hawl, yn dda, gadewch i mi wneud hyn. Gadewch i mi cydio ein cydweithwyr y tu allan. Mae ganddynt rhywfaint o werthuso ffurflenni y maent am i bawb i dreulio ychydig o funudau yn llenwi'r allan. Maent yn awyddus i gasglu y ffurf honno ac unrhyw hepgoriadau a allai fod gennych y tu allan. Byddant hefyd yn cael tystysgrifau. Rwy'n dyfalu mae dal rhai byrbrydau tu allan. Gadewch i mi basio hyn allan, ac os ydych yn gennych unrhyw gwestiynau yn y cyfamser, 'N annhymerus' cerdded o gwmpas yn fwy yn unigol a gallwn helpu i ddechrau. Ie wrth gwrs. GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Dyna fel arfer yn wir y dyddiau hyn. Yn sicr gyda gwe meddalwedd, rydych yn pwyso ar bobl eraill eich bod naill ai esthetaidd gan ddefnyddio pethau fel bootstrap, fel nad ydych yn ei wneud rhaid i weithredu'r lefel isel manylion o fwydlenni a botymau a hynny i gyd. Rydych yn pwyso ar rywun fel Google er mwyn i chi Nid oes yn rhaid i adeiladu Uber busnes a busnes mapio, ac unrhyw nifer o tebyg ceisiadau yn ogystal. Yn wir, logins yn boblogaidd, hefyd. Os ydych chi wedi defnyddio Spotify neu unrhyw nifer o wefannau, byddwch yn logio i mewn i rai gwefannau sy'n defnyddio Facebook. Felly beth braf, mae yna yn APIs ar gyfer mewngofnodi dyddiau hyn, fel nad oes gennych i gael eich bwrdd defnyddwyr ei hun a phob un o'ch cronfa ddata eich hun o reidrwydd i'r un graddau. Gallwch roi Facebook yn gwneud popeth o'r cymhlethdod i chi. Felly mae'n gyfnod cyffrous, yn onest, yn rhaglennu, oherwydd bod cymaint o trydydd parti gwasanaethau y gallwch adeiladu ar ben. Ac eto, y pris a dalwch yn naill ai ariannol neu amser segur. Os bydd Google yn mynd i lawr, felly hefyd Uber, gellid dadlau, ond efallai mae hynny'n rhesymol cyfaddawd. Ac eto, dyna oedd un o'r themâu, gobeithio, ar gyfer y dyddiau diwethaf, yw hyn cyfaddawdau. Ac anaml yno yn mynd i fod yn ateb cywir. Mae'n wir yn y gwell o ddau neu fwy o atebion. Pasiwch y rhain o gwmpas. A bydd cyfrifon Cloud9 rhain yn parhau i weithio, mewn theori, am byth. Efallai y byddwch yn dod o hyd os ydych yn aros ychydig ddyddiau neu wythnos neu fwy i fewngofnodi yn ôl i mewn iddynt, gallai gymryd fel un neu pum munud i agor yn ôl i fyny, ond dim ond oherwydd eu bod yn rhoi iddo i gysgu i arbed ar adnoddau.