1 00:00:00,000 --> 00:00:00,060 2 00:00:00,060 --> 00:00:01,560 >> DAVID Malan: pob hawl, yr ydym yn ôl. 3 00:00:01,560 --> 00:00:03,830 Felly, ar gyfer yr cyffrous gloi, mae ein adran olaf 4 00:00:03,830 --> 00:00:06,900 ar raglennu we, yr wyf yn meddwl y bydden ni'n ei ddefnyddio fel term cyffredinol 5 00:00:06,900 --> 00:00:08,440 i ddal ychydig o bynciau sy'n weddill. 6 00:00:08,440 --> 00:00:10,390 Felly, ar ddiwedd y dydd, byddwn yn ei wneud mewn gwirionedd 7 00:00:10,390 --> 00:00:14,830 ychydig o ymarferol raglennu we gyda iaith o'r enw JavaScript. 8 00:00:14,830 --> 00:00:17,510 Ac yr wyf yn credu y byddwn yn cymryd golwg ar rywbeth sy'n gysylltiedig â delweddau 9 00:00:17,510 --> 00:00:20,040 a darganfod rhywbeth cuddio gyfrinachol yn delwedd, 10 00:00:20,040 --> 00:00:23,230 a hefyd yn edrych ar y Google Mapiau API, rhaglennu cais 11 00:00:23,230 --> 00:00:26,040 rhyngwyneb, fel rhywbeth cynrychiolydd y math o feddalwedd 12 00:00:26,040 --> 00:00:28,800 dyna gynyddol a ar gael am ddim heddiw. 13 00:00:28,800 --> 00:00:32,029 >> Ond pam nad ydym yn cymryd golwg mewn cynhwysyn i'r byd hwn 14 00:00:32,029 --> 00:00:34,070 ein bod ni wedi bod yn fath o gan gymryd yn ganiataol yn bodoli 15 00:00:34,070 --> 00:00:36,720 am beth amser, cronfa ddata. 16 00:00:36,720 --> 00:00:39,150 Ar gyfer y diwrnod yn y gorffennol ac hanner rydym wedi tybio 17 00:00:39,150 --> 00:00:42,910 ein bod yn cael mynediad i gronfa ddata, ond pa broblem yn cronfa ddata datrys? 18 00:00:42,910 --> 00:00:45,540 Beth mae'n ei wneud i ni? 19 00:00:45,540 --> 00:00:47,030 Beth yw e? 20 00:00:47,030 --> 00:00:48,679 >> GYNULLEIDFA: [Anghlywadwy] 21 00:00:48,679 --> 00:00:51,720 DAVID Malan: Yn dal yr holl wybodaeth, OK, a pha fathau o wybodaeth 22 00:00:51,720 --> 00:00:53,186 efallai y byddwch yn ei roi ynddo? 23 00:00:53,186 --> 00:00:54,590 >> GYNULLEIDFA: [Anghlywadwy] 24 00:00:54,590 --> 00:00:56,450 >> DAVID Malan: Unrhyw wybodaeth eich rhoi mewn iddo, byddwch yn cael yn ôl. 25 00:00:56,450 --> 00:00:57,070 Mae hynny'n wir. 26 00:00:57,070 --> 00:01:01,900 Ac ar safle nodweddiadol ar y we neu ar y we cais, pa fathau o wybodaeth, 27 00:01:01,900 --> 00:01:03,385 yn benodol, efallai y byddwch yn ei roi i mewn? 28 00:01:03,385 --> 00:01:04,260 GYNULLEIDFA: [Anghlywadwy] 29 00:01:04,260 --> 00:01:05,051 DAVID Malan: Defnyddwyr. 30 00:01:05,051 --> 00:01:07,000 Felly beth defnyddiwr? 31 00:01:07,000 --> 00:01:09,765 >> GYNULLEIDFA: [Anghlywadwy] 32 00:01:09,765 --> 00:01:11,640 DAVID Malan: OK, cofrestru defnyddiwr y safle. 33 00:01:11,640 --> 00:01:15,100 A beth mae'n ei olygu i gwybodaeth i ddefnyddwyr storio '? 34 00:01:15,100 --> 00:01:17,260 Beth cyfansoddi defnyddiwr? 35 00:01:17,260 --> 00:01:18,331 Mae gan ddefnyddiwr beth? 36 00:01:18,331 --> 00:01:19,206 GYNULLEIDFA: [Anghlywadwy] 37 00:01:19,206 --> 00:01:21,040 DAVID Malan: Yeah, personol data, ac yr wyf yn hoffi hynny. 38 00:01:21,040 --> 00:01:21,970 Gadewch i ni fod yn fwy manwl gywir. 39 00:01:21,970 --> 00:01:25,275 Felly defnyddiwr fel arfer mae ganddo enw, beth arall y defnyddiwr ei gael? 40 00:01:25,275 --> 00:01:26,150 GYNULLEIDFA: [Anghlywadwy] 41 00:01:26,150 --> 00:01:29,130 DAVID Malan: Mae OK addr--, enw felly cyntaf, enw olaf. 42 00:01:29,130 --> 00:01:29,630 Mae hyny'n dda. 43 00:01:29,630 --> 00:01:31,463 A dweud y gwir, gadewch i ni atgyweiria hynny, oherwydd ei fod yn mynd 44 00:01:31,463 --> 00:01:35,010 i agor cyfle i trafodaeth, yn dal, ymhellach. 45 00:01:35,010 --> 00:01:39,090 enw cyntaf, enw olaf, rhyw. 46 00:01:39,090 --> 00:01:41,820 47 00:01:41,820 --> 00:01:43,481 ID o ryw fath. 48 00:01:43,481 --> 00:01:43,980 Beth arall? 49 00:01:43,980 --> 00:01:45,438 Clywais rhywbeth arall o'r blaen, hefyd. 50 00:01:45,438 --> 00:01:51,600 E-bost, cyfeiriad post. 51 00:01:51,600 --> 00:01:58,170 >> Felly gadewch i ni oedi yno ac yn awr yn ystyried Nid yw hyn yr ydym yn storio yn y gronfa ddata, 52 00:01:58,170 --> 00:02:01,980 but-- ac nid pam, gan ei fod yn bosibl amlwg bod unwaith y byddwch yn cofrestru defnyddiwr, 53 00:02:01,980 --> 00:02:03,730 yr ydych am eu cofio am beth amser. 54 00:02:03,730 --> 00:02:05,480 Nid ydych am i dim ond yn cael ei storio mewn RAM 55 00:02:05,480 --> 00:02:08,690 ac yn cael eu forgotten-- felly gadewch i ni ganolbwyntio ar y sut. 56 00:02:08,690 --> 00:02:11,700 >> Mae'n ymddangos bod yn fyd cronfeydd data, 57 00:02:11,700 --> 00:02:14,410 mae o leiaf ddau fath y dyddiau hyn. 58 00:02:14,410 --> 00:02:20,010 Rywbeth o'r enw cronfa ddata SQL, Iaith Ymholiad Strwythuredig, 59 00:02:20,010 --> 00:02:24,770 neu, a enwyd cutely, noSQL, nad yw'n SQL. 60 00:02:24,770 --> 00:02:26,980 Ac yr olaf yn enghraifft o'r hyn y gallai 61 00:02:26,980 --> 00:02:30,660 cael eu galw gwrthrych-oriented, neu storfa gwrthrych, cronfa ddata 62 00:02:30,660 --> 00:02:36,010 sy'n storio gwrthrychau, ac nid, esgus mi, fel y byddwn yn fuan yn gweld, rhesi. 63 00:02:36,010 --> 00:02:41,800 >> Felly byddwn yn canolbwyntio am ychydig funudau'n ar y cyntaf o'r rhain, sef, yn SQL 64 00:02:41,800 --> 00:02:46,850 cronfa ddata, os mai dim ond am ei fod yn mor gyfarwydd yn barod, i unrhyw un 65 00:02:46,850 --> 00:02:51,070 sydd wedi defnyddio Excel neu Taflenni Google neu Apple 66 00:02:51,070 --> 00:02:53,740 Rhifau neu unrhyw safon rhaglen taenlen, 67 00:02:53,740 --> 00:02:56,040 neu, cyfwerth ei, neu mwy sophisticatedly, 68 00:02:56,040 --> 00:02:58,610 rhywbeth fel Microsoft Mynediad neu Oracle 69 00:02:58,610 --> 00:03:03,890 neu MySQL neu PostgreSQL, pob un ohonynt yn enwau cynnyrch ar gyfer gweithrediadau 70 00:03:03,890 --> 00:03:04,865 y syniad canlynol. 71 00:03:04,865 --> 00:03:10,350 >> Mae cronfa ddata berthynol, yn syml, rhywbeth sydd rhesi a cholofnau. 72 00:03:10,350 --> 00:03:12,850 Ac erbyn rhesi a cholofnau, Yr wyf yn llythrennol yn golygu rhywbeth 73 00:03:12,850 --> 00:03:21,860 fel hyn, felly lle y gallem gael y enwi cae a'i math dros yma. 74 00:03:21,860 --> 00:03:25,800 Ac mewn gwirionedd, gadewch i mi yn awr yn dechrau mapio'r rhain. 75 00:03:25,800 --> 00:03:29,420 Felly mewn gwirionedd, nid wyf yn gwybod pam Tynnais siart ar wahân. 76 00:03:29,420 --> 00:03:30,780 Gadewch i ni gadw yn syml hwn. 77 00:03:30,780 --> 00:03:34,830 >> Mae gennym i'r dde yma mae'r dechreuadau ein bwrdd, lle 78 00:03:34,830 --> 00:03:40,150 dyma enw'r cae ac mae hyn yn y math data, 79 00:03:40,150 --> 00:03:41,660 ac yn ôl math yr wyf yn golygu y canlynol. 80 00:03:41,660 --> 00:03:45,510 A yw'n rif, a yw'n llinyn, llinyn byr fel gair, 81 00:03:45,510 --> 00:03:49,340 a yw'n paragraff, a yw'n data deuaidd, fel delwedd? 82 00:03:49,340 --> 00:03:51,980 A gadewch i ni dim ond tynnu coes hwn ar wahân am ychydig funudau'n. 83 00:03:51,980 --> 00:03:57,575 Felly enw cyntaf, rhif, llinyn, darn mawr o text-- 84 00:03:57,575 --> 00:03:58,450 GYNULLEIDFA: [Anghlywadwy] 85 00:03:58,450 --> 00:03:59,616 DAVID Malan: Ie, felly llinyn. 86 00:03:59,616 --> 00:04:04,744 Ac mewn cyd-destun cronfa ddata, rydym annhymerus ' fel arfer yn galw maes torgoch hwn. 87 00:04:04,744 --> 00:04:07,660 'N annhymerus' jyst dweud torgoch am nawr ond rydym yn mynd i fireinio hyn mewn eiliad. 88 00:04:07,660 --> 00:04:09,180 maes Cymeriad. 89 00:04:09,180 --> 00:04:11,365 Cyfenw debyg yr un fath. 90 00:04:11,365 --> 00:04:11,865 Rhyw? 91 00:04:11,865 --> 00:04:16,230 92 00:04:16,230 --> 00:04:18,310 >> Gwryw neu fenyw, felly mae'n Gallai fod yn cae torgoch. 93 00:04:18,310 --> 00:04:21,380 Gallai fod yn naill ai dyfyniad, unquote "Gwrywaidd" neu dyfyniad, unquote "benyw" 94 00:04:21,380 --> 00:04:23,650 neu gallai fod yn m neu f. 95 00:04:23,650 --> 00:04:26,540 Os ydych chi am fod yn fwy cynhwysol, efallai y bydd angen i chi trydydd werth 96 00:04:26,540 --> 00:04:28,640 neu ryw fath o faes arall yn gyfan gwbl. 97 00:04:28,640 --> 00:04:31,350 Ac felly gallech ddefnyddio gwir ffug. 98 00:04:31,350 --> 00:04:35,036 Gallai'r maes yn cael eu galw yn ddynion, ac yna gallech ddweud gywir neu'n anghywir. 99 00:04:35,036 --> 00:04:38,160 Ond nid yw o reidrwydd yn cipio yr holl wybodaeth efallai y byddwch eisiau. 100 00:04:38,160 --> 00:04:41,118 >> Felly, mae'n troi allan yna fath arall o gae a allai fod yn ddefnyddiol yma 101 00:04:41,118 --> 00:04:46,040 mewn cronfa ddata nodweddiadol, a elwir yn enum, lle mae'n faes gymeriad, 102 00:04:46,040 --> 00:04:50,480 ond chi, y dylunydd, cyrraedd gyfrif y gwerthoedd posibl, 103 00:04:50,480 --> 00:04:54,630 fel dyfyniad, unquote "gwrywaidd", dyfynnwch, unquote "benywaidd" ac yn y blaen. 104 00:04:54,630 --> 00:04:57,620 Felly pa bynnag werth yn eich cronfa ddata, 105 00:04:57,620 --> 00:05:00,670 yn wir seiliedig gymeriad, ond mae'n rhaid iddo fod yn un o'r gwerthoedd hynny. 106 00:05:00,670 --> 00:05:03,520 Rydym yn debyg na fyddai eisiau enum am enw cyntaf neu enw olaf. 107 00:05:03,520 --> 00:05:05,630 Fel arall byddem wedi i gyfrif, fel mae'r enw 108 00:05:05,630 --> 00:05:09,570 yn deillio o, yn llythrennol bob enw cyntaf posibl ac enw olaf. 109 00:05:09,570 --> 00:05:13,960 >> Iawn, felly ID hyn y dylai ID fod? 110 00:05:13,960 --> 00:05:15,200 Ie, felly efallai rif. 111 00:05:15,200 --> 00:05:17,870 Felly gadewch i ni gadw at hynny am y tro, rhif. 112 00:05:17,870 --> 00:05:22,010 Ac yn ôl nifer, rhif i ' ychydig yn rhy eang yn awr. 113 00:05:22,010 --> 00:05:23,900 Ar gyfer diwedd yr ail dydd, yr wyf yn teimlo fel ein bod 114 00:05:23,900 --> 00:05:25,280 Dylai fod ychydig yn fwy manwl gywir. 115 00:05:25,280 --> 00:05:29,280 Gallai nifer golygu fel, mae'n Gallai fod yn rhywbeth fel 1.236. 116 00:05:29,280 --> 00:05:31,500 A dyna debyg nad yr hyn yr ydym yn ei olygu gan adnabod. 117 00:05:31,500 --> 00:05:34,635 Beth ydym yn ôl pob tebyg yn ei olygu gan ID? 118 00:05:34,635 --> 00:05:36,382 >> GYNULLEIDFA: [Anghlywadwy] 119 00:05:36,382 --> 00:05:38,590 DAVID Malan: O, OK, felly efallai nid yw'n hyd yn oed nifer. 120 00:05:38,590 --> 00:05:42,840 Efallai ei fod mewn gwirionedd yn adnabod unigryw dyna llinyn, fel enw defnyddiwr. 121 00:05:42,840 --> 00:05:44,580 Felly hollol, gallai fod. 122 00:05:44,580 --> 00:05:46,730 Yr wyf yn meddwl rhywun yn ôl pob tebyg Golygai rhifol, er. 123 00:05:46,730 --> 00:05:48,460 Felly gadewch i ni aros gyda hynny. 124 00:05:48,460 --> 00:05:49,320 Pa fath o rif? 125 00:05:49,320 --> 00:05:51,960 Beth yw mwy precise-- yn gyfanrif. 126 00:05:51,960 --> 00:05:56,710 Felly mae nifer tebyg 0, 1, 2, 3, felly byddwn yn galw hyn yn gyfanrif. 127 00:05:56,710 --> 00:05:58,909 A hyd yn oed wedyn, gallwn fod yn nitpicking, mae'n 128 00:05:58,909 --> 00:06:00,700 ddim wir yn unig cyfanrif cyffredinol ydych ei eisiau. 129 00:06:00,700 --> 00:06:04,340 Mae'n debygol nad ydych eisiau gwerthoedd negatif, dim ond oherwydd, 'i jyst yn teimlo'n od. 130 00:06:04,340 --> 00:06:06,070 Mae'n debyg y byddwch am i gyfanrifau positif. 131 00:06:06,070 --> 00:06:07,920 Felly, gallwch hefyd fynegi bod mewn cronfa ddata, 132 00:06:07,920 --> 00:06:09,450 ond am y tro, byddwn yn dweud cyfanrif. 133 00:06:09,450 --> 00:06:10,650 >> E-bost? 134 00:06:10,650 --> 00:06:13,550 Mae hyn yn fwy na thebyg just-- yn beth? 135 00:06:13,550 --> 00:06:14,460 >> GYNULLEIDFA: [Anghlywadwy] 136 00:06:14,460 --> 00:06:16,980 >> DAVID Malan: Mae'n e-bost, ond mae hynny'n cymeriadau, dde? 137 00:06:16,980 --> 00:06:19,813 'I jyst gymeriad ffynci fel yn "yn" symbol neu rywbeth arall, 138 00:06:19,813 --> 00:06:21,580 ond mae'n dal i fod yn faes cymeriad. 139 00:06:21,580 --> 00:06:23,900 A chyfeiriad post? 140 00:06:23,900 --> 00:06:25,360 maes Cymeriad. 141 00:06:25,360 --> 00:06:31,400 Felly dyna ddechrau braf, ond gadewch i ni fod ychydig yn fwy manwl gywir yn awr. 142 00:06:31,400 --> 00:06:34,540 >> Felly, mae'n ymddangos bod yn cronfa ddata, byddwch yn aml 143 00:06:34,540 --> 00:06:39,120 cael dewis dros fwy mireinio fersiynau o'r pethau hyn. 144 00:06:39,120 --> 00:06:44,330 Yn wir, mewn cronfa ddata SQL nodweddiadol, SQL, neu'n fwy cyffredinol, cronfa ddata berthynol, 145 00:06:44,330 --> 00:06:46,680 cronfeydd data gyda rhesi a cholofnau, byddwch yn aml 146 00:06:46,680 --> 00:06:53,610 cael i bennu nid yn unig y math o field-- gadewch i mi wneud rhai Yma-- ystafell 147 00:06:53,610 --> 00:06:56,600 ond hefyd y hyd. 148 00:06:56,600 --> 00:06:59,900 >> Felly pa mor hir yw enw cyntaf? 149 00:06:59,900 --> 00:07:07,060 Yr wyf yn meddwl, D-A-V-I-D. OK, got it wyf yn ôl pob tebyg dim ond troseddu fel hanner 150 00:07:07,060 --> 00:07:11,260 o'r bobl yn yr ystafell, ar y dde, ers eich enwau yn hirach na phum 151 00:07:11,260 --> 00:07:16,608 llythyrau, felly pump yn ymddangos ychydig yn hunanol a naïf, felly beth mae gwerth gwell? 152 00:07:16,608 --> 00:07:19,320 153 00:07:19,320 --> 00:07:24,330 10, i gyd yn iawn, ac yr wyf yn meddwl rydym yn OK yn yr ystafell. 154 00:07:24,330 --> 00:07:26,254 13? 155 00:07:26,254 --> 00:07:27,541 30? 156 00:07:27,541 --> 00:07:29,540 Pam nad ydw i'n cymryd y dull o gynharach pan fyddwn yn 157 00:07:29,540 --> 00:07:31,081 yn sôn am araeau a cof? 158 00:07:31,081 --> 00:07:32,450 Pam nad ydw i'n jyst dweud fel 1,000? 159 00:07:32,450 --> 00:07:35,260 enw Nid oes unrhyw un yn mynd i fod yn fwy na 1,000. 160 00:07:35,260 --> 00:07:36,706 Gwthio Nol. 161 00:07:36,706 --> 00:07:38,005 >> GYNULLEIDFA: [Anghlywadwy] 162 00:07:38,005 --> 00:07:40,130 DAVID Malan: Yeah, mae'n gwastraffus, ar y dde, yn enwedig 163 00:07:40,130 --> 00:07:44,630 os yw'r rhan fwyaf o enwau yn dim ond pump neu 10 neu 15 cymeriadau, mae hynny'n wastraffus iawn. 164 00:07:44,630 --> 00:07:45,810 Felly, rydych yn gwybod beth? 165 00:07:45,810 --> 00:07:48,020 Mae hwn yn fath o gwestiwn caled. 166 00:07:48,020 --> 00:07:51,721 Yn awr, gallwn yn sicr ddadansoddi Saesneg ac enwau unrhyw iaith arall 167 00:07:51,721 --> 00:07:54,470 a chyfrif i maes, yn dda, beth yw'r Nid yw cyfartaledd average-- yn wir 168 00:07:54,470 --> 00:07:57,150 helpu us-- beth yw'r max yn yn ôl pob tebyg yr hyn yr ydym ei eisiau. 169 00:07:57,150 --> 00:07:59,920 Ond mae'n troi allan rydym hyd yn oed wedi rhywfaint o ddewis dros y math yma. 170 00:07:59,920 --> 00:08:03,400 >> Mewn cronfa ddata SQL nodweddiadol, byddwch yn wedi rhywbeth a elwir yn cae char 171 00:08:03,400 --> 00:08:07,505 a hefyd yn varchar, V-A-R, ar gyfer cae torgoch amrywiol. 172 00:08:07,505 --> 00:08:08,630 Ac mae'r gwahaniaeth yn hyn. 173 00:08:08,630 --> 00:08:12,400 Mae cae torgoch, byddwch yn y dylunydd, rhaid i bennu o flaen llaw 174 00:08:12,400 --> 00:08:14,900 yr union hyd y cae. 175 00:08:14,900 --> 00:08:20,530 Felly efallai yr enw cyntaf hoffi 20 teimlo'n fath o ddiogel. 176 00:08:20,530 --> 00:08:23,950 Efallai y bydd rhaid i wneud ychydig o googling i weld os mae hynny'n ddigon mewn gwirionedd yn ddiogel. 177 00:08:23,950 --> 00:08:26,910 Mae fwy na thebyg enw gyda 21 cymeriadau, ond am y tro, mae'n debyg 20 178 00:08:26,910 --> 00:08:27,620 yn ddiogel. 179 00:08:27,620 --> 00:08:30,070 >> Byddai cae torgoch awgrymu mewn cronfa ddata sy'n eich 180 00:08:30,070 --> 00:08:33,289 yn defnyddio 20 a bob amser yn 20 llythyren. 181 00:08:33,289 --> 00:08:37,419 Nawr, os mai dim ond D-A-V-I-D, 15 o'r rheiny yn jyst yn mynd i fod yn gymeriadau wag, 182 00:08:37,419 --> 00:08:40,450 ond eich bod yn dal i ddefnyddio pob 20 bytes. 183 00:08:40,450 --> 00:08:46,302 Mae cae varchar, mewn cyferbyniad, yn golygu'r Dylai llinyn fod hyd at 20 llythyren 184 00:08:46,302 --> 00:08:48,260 ond os mai dim ond pump, eich bod ond yn mynd i ddefnyddio'r 185 00:08:48,260 --> 00:08:51,270 pump, chwech neu efallai am werth arbennig ar y diwedd, 186 00:08:51,270 --> 00:08:54,980 fel 'na 0 buom yn trafod y arwydd diwedd cymeriad 187 00:08:54,980 --> 00:08:56,790 dilyniant yn y cof. 188 00:08:56,790 --> 00:08:59,950 >> Felly pan ydych chi'n meddwl efallai y byddwch yn dewis torgoch 189 00:08:59,950 --> 00:09:05,240 erbyn varchar, o gofio bod cyfaddawd? 190 00:09:05,240 --> 00:09:09,321 Torgoch yn defnyddio bod llawer o gymeriadau, varchar yn defnyddio dim mwy na bod llawer o gymeriadau. 191 00:09:09,321 --> 00:09:10,196 GYNULLEIDFA: [Anghlywadwy] 192 00:09:10,196 --> 00:09:13,859 193 00:09:13,859 --> 00:09:16,900 DAVID Malan: OK, os ydych chi'n gwybod y hyd y llinyn eithaf gymhellol 194 00:09:16,900 --> 00:09:19,316 i jyst arfer torgoch, 'achos os ydych yn ei wybod, dim ond ei roi i lawr. 195 00:09:19,316 --> 00:09:23,390 Ac efallai mai dyna wir am zip cod, yn yr Unol Daleithiau, o leiaf, 02138, 196 00:09:23,390 --> 00:09:26,660 mae bob amser yn mynd i fod pump cymeriadau nes i chi ychwanegu'r llinell doriad pedwar. 197 00:09:26,660 --> 00:09:29,750 Ond efallai y byddwch yn cael rhywfaint o werthoedd ar gyfer yr ydych bob amser yn gwybod hyd. 198 00:09:29,750 --> 00:09:32,310 Neu efallai symbolau wladwriaeth, fel NY i Efrog Newydd, 199 00:09:32,310 --> 00:09:33,811 ac MA ar gyfer Massachusetts yn yr Unol Daleithiau. 200 00:09:33,811 --> 00:09:36,560 Efallai eich bod yn cael rhywfaint o sefyllfaoedd lle mae hynny'n gwbl resymol, 201 00:09:36,560 --> 00:09:39,520 ond erbyn y rhesymeg, pam mae rydym hyd yn oed yn overthinking hyn? 202 00:09:39,520 --> 00:09:41,800 Pam nad ydym yn jyst arfer varchar ac yna rydym annhymerus unig 203 00:09:41,800 --> 00:09:46,730 bob amser yn defnyddio dau gymeriad beth bynnag, neu bob amser yn defnyddio pum cymeriad beth bynnag? 204 00:09:46,730 --> 00:09:50,300 Pam na dim ond arbed varchar i popeth, gan y rhesymeg? 205 00:09:50,300 --> 00:09:51,677 Rhaid cael dal. 206 00:09:51,677 --> 00:09:52,552 GYNULLEIDFA: [Anghlywadwy] 207 00:09:52,552 --> 00:09:54,952 208 00:09:54,952 --> 00:09:56,660 DAVID Malan: Allech ysgrifennu rhywbeth o'i le. 209 00:09:56,660 --> 00:09:58,090 Felly mae hynny'n wir. 210 00:09:58,090 --> 00:10:01,030 Ond hyd yn oed wedyn, ni allant ddefnyddio mwy o gof na mi dyrannu. 211 00:10:01,030 --> 00:10:03,340 Rwy'n dal i gael y rownd derfynol dweud dros y hyd, 212 00:10:03,340 --> 00:10:06,780 felly ni allant ddamweiniol wneud y camgymeriad, ond meddwl da. 213 00:10:06,780 --> 00:10:10,510 Mae'n fwy cynnil, ond mae'n gysylltiedig iawn at ein trafodaeth, mewn gwirionedd, o araeau 214 00:10:10,510 --> 00:10:12,390 a'u cysylltu rhestri gynharach. 215 00:10:12,390 --> 00:10:16,290 >> Mae'n ymddangos bod cronfa ddata, os mae'n gwybod bod pob un o'r gwerthoedd yn 216 00:10:16,290 --> 00:10:19,250 o hyd penodol, hyd yn oed os mae rhai o'r gwerthoedd hynny yn wag, 217 00:10:19,250 --> 00:10:22,484 math o esthetaidd wag, D-A-V-I-D ac yna 15 bylchau, 218 00:10:22,484 --> 00:10:24,650 mae'n troi allan, os pob maes hwn yn yr un hyd, 219 00:10:24,650 --> 00:10:28,670 yn debyg amrywiaeth oedd gan ei holl bethau cefn wrth gefn wrth gefn i yn ôl fel y 220 00:10:28,670 --> 00:10:33,480 fe allech chi jyst ac 1 i gyrraedd y nesaf gwerth, un syniad mewn tabl cronfa ddata. 221 00:10:33,480 --> 00:10:37,550 Os bydd pob un o'ch cymeriad llinynnau yr un hyd, 222 00:10:37,550 --> 00:10:39,390 gennych yr hyn a elwir mynediad hap. 223 00:10:39,390 --> 00:10:41,850 Os yw'r holl dannau o Hyd 20, nad ydych yn unig 224 00:10:41,850 --> 00:10:45,230 gwneud ac 1 ydych yn unig yn ei wneud yn ogystal â 20, yn ogystal â 20, ynghyd â 20, ynghyd â 20, 225 00:10:45,230 --> 00:10:48,775 a gallwch gyflym iawn sgrolio drwy'r neu chwilio drwy eich holl ddata. 226 00:10:48,775 --> 00:10:54,420 >> Mae cae torgoch amrywiol, mewn cyferbyniad, nid yw bob amser yn cael 20 llythyren. 227 00:10:54,420 --> 00:10:58,000 y gallai ei gael 20 ac yna 15 ac yna 19 ac yna 10, 228 00:10:58,000 --> 00:11:00,720 ac felly os ydych am chwilio trwyddo, nad ydych yn gallu dim ond blindly 229 00:11:00,720 --> 00:11:03,050 ychwanegu 20 bytes i fynd i'r un nesaf. 230 00:11:03,050 --> 00:11:07,280 Mae'n rhaid i chi llythrennol i chwilio drwy oherwydd bod ymyl y strwythur data, 231 00:11:07,280 --> 00:11:08,340 os mynnwch, yn carpiog. 232 00:11:08,340 --> 00:11:11,480 Mae'n fath o yn mynd i mewn ac yn seiliedig allan ar y darn gwirioneddol y llinyn. 233 00:11:11,480 --> 00:11:14,460 Felly, pan fyddwch yn gwybod hyd, fel y Kareem yn dweud, defnyddiwch cae torgoch, 234 00:11:14,460 --> 00:11:16,460 oherwydd eich bod yn ennill y effeithlonrwydd o fod yn 235 00:11:16,460 --> 00:11:19,170 gallu chwilio trwyddi yn gyflymach pan ydych yn chwilio am ddata, 236 00:11:19,170 --> 00:11:20,550 fel arall ddefnyddio newidyn. 237 00:11:20,550 --> 00:11:24,450 >> Yn anffodus, nid oes gennyf ateb da pa mor hir y dylai'r enw fod yn, 238 00:11:24,450 --> 00:11:26,360 ond ar gyfer rhywbeth fel enw, byddwn yn dweud 239 00:11:26,360 --> 00:11:28,470 mae varchar yn gyffredin oherwydd nid yw'n mynd 240 00:11:28,470 --> 00:11:30,430 i fod yn hyd penodol i bawb. 241 00:11:30,430 --> 00:11:33,650 20, Nid wyf yn gwybod, 20 teimlo'n ychydig o dynn. 242 00:11:33,650 --> 00:11:36,460 Gadewch i 'jyst dweud 50, 50. 243 00:11:36,460 --> 00:11:39,210 Nid yw'n iawn eich bod yn costio llawer mwy i'w ddweud 50 yn hytrach na 40, 244 00:11:39,210 --> 00:11:41,260 ond ar ryw bwynt, bydd angen i wneud galwad barn. 245 00:11:41,260 --> 00:11:43,090 >> gyffredin iawn, a dweud y gwir, am [? hanesyddol?] 246 00:11:43,090 --> 00:11:47,670 rhesymau, hyd yn oed er ei fod yn ormodol, yw dweud 255, gan fod beth amser yn ôl, 247 00:11:47,670 --> 00:11:51,440 mewn systemau cronfa ddata poblogaidd, fel MySQL, offeryn ffynhonnell agored am ddim 248 00:11:51,440 --> 00:11:53,790 bod llawer o gwmnïau hoffi hyd yn oed Facebook a ddefnyddiwyd, 249 00:11:53,790 --> 00:11:56,654 hwn oedd y diofyn uchafswm felly mae pobl jyst yn mynd ag ef. 250 00:11:56,654 --> 00:11:59,070 Felly nid afresymol, ond rydym annhymerus ' yn defnyddio ychydig yn fwy greddf 251 00:11:59,070 --> 00:12:02,970 ac yn dweud, yn sicr 50, dyna yn ôl pob tebyg ychydig yn ormodol. 252 00:12:02,970 --> 00:12:05,720 >> Rhyw, yr wyf yn hoffi enum, ac felly yr ydym, felly, yn gallu 253 00:12:05,720 --> 00:12:08,760 cyfrif gwryw neu fenyw, neu efallai yn fwy effeithlon, 254 00:12:08,760 --> 00:12:13,420 m neu f neu ryw symbology eraill, ond enum teimlo fel yn ddewis da yno. 255 00:12:13,420 --> 00:12:16,740 I fod yn glir, rhyw Gallai fod yn ddim ond varchar, 256 00:12:16,740 --> 00:12:19,090 a gallem dim ond i gyd cytuno ar bobl ag 'n glws, 257 00:12:19,090 --> 00:12:21,010 i bob amser yn rhoi'r un gwerthoedd yno. 258 00:12:21,010 --> 00:12:22,720 Gwryw neu fenyw neu whatnot. 259 00:12:22,720 --> 00:12:27,800 >> Ond y broblem felly, yw y gallem gwneud camgymeriad, fel [Anghlywadwy] arfaethedig 260 00:12:27,800 --> 00:12:29,140 yn gynharach mewn cyd-destun gwahanol. 261 00:12:29,140 --> 00:12:32,780 Os byddwn yn gwneud camgymeriad, gallem gael gwerthoedd anghywir yn ein cronfa ddata. 262 00:12:32,780 --> 00:12:36,320 Felly beth sy'n neis am gronfeydd data fel Oracle a MySQL ac eraill, 263 00:12:36,320 --> 00:12:39,280 yw bod gennych hon ddiwethaf haen o amddiffyniad lle 264 00:12:39,280 --> 00:12:43,010 gweinyddwr eich DBA, cronfa ddata, pwy bynnag sy'n dylunio tabl hwn fel rydym 265 00:12:43,010 --> 00:12:46,440 yn llafar, a allai roi i mewn i le enum sy'n 266 00:12:46,440 --> 00:12:51,250 amddiffyn yn erbyn hynny drwy bennu gwryw, benyw, ac felly does neb 267 00:12:51,250 --> 00:12:54,230 arall all unrhyw rhaglennydd yn ddamweiniol mewnosod unrhyw werth arall. 268 00:12:54,230 --> 00:12:55,480 Felly byddai hyn yn beth da. 269 00:12:55,480 --> 00:12:56,660 Mae hwn yn nodwedd. 270 00:12:56,660 --> 00:13:00,760 >> Felly ID, gan dybio ID rhifol, mae'n Mae'n debyg y dylai fod yn gyfanrif positif. 271 00:13:00,760 --> 00:13:04,380 Ac rydym weithiau mae gennym cyfle i drafod hyd. 272 00:13:04,380 --> 00:13:06,830 Ni fyddech chi fel arfer nodi nifer yma, 273 00:13:06,830 --> 00:13:11,310 byddech yn lle hynny yn nodi mae hwn yn int, neu int mawr, 274 00:13:11,310 --> 00:13:12,980 gan eu bod fel arfer gelwir. 275 00:13:12,980 --> 00:13:18,840 Ond yn nodweddiadol, yn gyfanrif fyddai, gadewch i ni ddweud, 4 bytes. 276 00:13:18,840 --> 00:13:23,694 Ac os yw'n 4 bytes, dyna faint o ddarnau? 277 00:13:23,694 --> 00:13:24,630 >> GYNULLEIDFA: [Anghlywadwy] 278 00:13:24,630 --> 00:13:26,610 >> DAVID Malan: 32 ddarnau. 279 00:13:26,610 --> 00:13:30,270 Felly, faint o ddefnyddwyr y gallwn gael mewn ein cronfa ddata os ydynt i gyd yn cael ID 280 00:13:30,270 --> 00:13:33,320 ac Adnabod rhaid i hyn fod yn unigryw? 281 00:13:33,320 --> 00:13:36,780 32 darnau golygu gennym batrymau o un, dau, tri, pedwar, five-- 282 00:13:36,780 --> 00:13:41,000 felly faint o batrymau gwahanol o zeros a gall rhai sydd gennych os oes 32? 283 00:13:41,000 --> 00:13:43,235 Dyna yr un peth â gofyn beth yw dau i'r 32? 284 00:13:43,235 --> 00:13:46,472 285 00:13:46,472 --> 00:13:48,430 Mae'n nifer fawr sy'n ni allaf ei gael yn iawn, 286 00:13:48,430 --> 00:13:50,270 ond yr wyf yn gwybod ei fod yn bod tua 4 biliwn. 287 00:13:50,270 --> 00:13:53,970 Felly, mae hyn yn golygu y gall eich tabl cronfa ddata cael phedwar biliwn o ddefnyddwyr a dyna ni. 288 00:13:53,970 --> 00:13:56,410 >> Felly mae hwn yn ddiddorol Goblygiad dylunio. 289 00:13:56,410 --> 00:14:00,840 Mae nifer gweddus o gwmnïau wedi penderfynu, efallai nid yn gymaint 290 00:14:00,840 --> 00:14:04,860 ar gyfer eu bwrdd defnyddwyr, gan fod cael 4 biliwn a defnyddwyr yn broblem prin. 291 00:14:04,860 --> 00:14:08,410 Mae hwn yn fath o Facebook-arddull broblem, nid problem cwmni nodweddiadol. 292 00:14:08,410 --> 00:14:12,670 Ond efallai os oes gennych logiau trafod neu ryw fath o ddata sy'n gyson 293 00:14:12,670 --> 00:14:15,610 cael hysgrifennu i mewn i'ch cronfa ddata y gallai gwbl gael biliynau 294 00:14:15,610 --> 00:14:18,900 a biliynau o rhesi, ac ydych yn defnyddio cyfanrif ar ei gyfer, 295 00:14:18,900 --> 00:14:22,750 beth sy'n mynd i ddigwydd cyn gynted ag y byddwch yn cael i rwyfo rhif 4 biliwn a 296 00:14:22,750 --> 00:14:26,210 ac yna rydych yn ceisio mewnosoder y 4 biliynfed ac 1, fel petai? 297 00:14:26,210 --> 00:14:29,610 Im 'yn symleiddio'r rhifau ychydig. 298 00:14:29,610 --> 00:14:33,740 >> Gallwch dorri yn ôl, yr wyf yn golygu i chi rhaid i ymdrin â hwy rywsut. 299 00:14:33,740 --> 00:14:37,910 A beth fyddai cyfrifiadur fel arfer yn ei wneud, meddwl am y peth hyd yn oed gan y bore yma, 300 00:14:37,910 --> 00:14:42,430 os oes gennych werth 4-bit fel 1, 1, 1, 1, a, 301 00:14:42,430 --> 00:14:44,920 dim ond i glymu'r bore at ei gilydd i y prynhawn, beth 302 00:14:44,920 --> 00:14:48,369 mae nifer hwn gynrychioli mewn deuaidd? 303 00:14:48,369 --> 00:14:49,410 OK, byddwn yn ei gwneud yn haws. 304 00:14:49,410 --> 00:14:53,310 Beth mae'r rhif hwn cynrychioli mewn deuaidd? 305 00:14:53,310 --> 00:14:56,794 OK, byddwn yn ei gwneud yn haws, beth mae hyn yn ei gynrychioli mewn deuaidd? 306 00:14:56,794 --> 00:14:57,460 GYNULLEIDFA: Tri. 307 00:14:57,460 --> 00:14:59,670 DAVID Malan: Three, gan fod mae gennym y rhai column-- 308 00:14:59,670 --> 00:15:00,450 [Chwerthin] 309 00:15:00,450 --> 00:15:01,350 Whew! 310 00:15:01,350 --> 00:15:03,980 Cawsom y golofn rhai a'r golofn deuoedd. 311 00:15:03,980 --> 00:15:07,250 Felly debyg bod, yn wir, mae ein [? Nid yw tir âr?] Roedd 32 o ddarnau, 312 00:15:07,250 --> 00:15:13,440 ond bai'n dau darnau, y gallwn cyfrif o rif 0, 1, 2, 3 defnyddiwr, 313 00:15:13,440 --> 00:15:18,040 ac yna rydym yn fath o yn ôl i'r defnyddiwr 00 eto. 314 00:15:18,040 --> 00:15:19,739 Felly, mae hyn yn beth sy'n digwydd fel arfer. 315 00:15:19,739 --> 00:15:22,780 Os ydych chi erioed wedi clywed y expression-- yn ôl pob tebyg dim rhaid, ond os ydych have-- 316 00:15:22,780 --> 00:15:26,500 gorlif cyfanrif, lle rydych yn cadw flipping eich holl ddarnau 317 00:15:26,500 --> 00:15:29,640 i fod y gwerthoedd mwyaf posibl, ac yna ydych allan o ddarnau, 318 00:15:29,640 --> 00:15:30,850 beth fyddai fel arfer yn digwydd? 319 00:15:30,850 --> 00:15:32,280 Pam ydw i'n dweud 00? 320 00:15:32,280 --> 00:15:33,220 Wel, mae hyn yn dri. 321 00:15:33,220 --> 00:15:34,230 Sut ydw i'n cynrychioli 4? 322 00:15:34,230 --> 00:15:36,890 323 00:15:36,890 --> 00:15:38,915 Sut ydw i'n gynrychioli'r ar gyfer rhif 4 mewn deuaidd? 324 00:15:38,915 --> 00:15:39,790 GYNULLEIDFA: [Anghlywadwy] 325 00:15:39,790 --> 00:15:41,780 DAVID Malan: One-- yeah, peidiwch â dweud 100 per se, 326 00:15:41,780 --> 00:15:44,190 oherwydd ei fod wedi y anghywir arwyddocâd, ond 1-0-0. 327 00:15:44,190 --> 00:15:48,920 Felly y rhif hwnnw 1-0-0 yn wir gywir, ond os oes gennych ond dau darnau, 328 00:15:48,920 --> 00:15:50,820 beth ydych chi wedi'i wneud mewn gwirionedd? 329 00:15:50,820 --> 00:15:53,219 Rydych chi wedi rholio drosodd i 00. 330 00:15:53,219 --> 00:15:54,760 Ac yn wir, dyna beth fyddai'n digwydd. 331 00:15:54,760 --> 00:15:56,884 A dweud y gwir, gallwch feddwl am hyn yn fwy cyfarwydd. 332 00:15:56,884 --> 00:15:59,350 Os cofiwch, beth, 16 mlynedd yn ôl, mae'r byd 333 00:15:59,350 --> 00:16:03,380 oedd i fod i ben pan fydd y broblem Y2K ddigwyddodd. 334 00:16:03,380 --> 00:16:04,330 Pam oedd hynny? 335 00:16:04,330 --> 00:16:08,170 Wel y rhan fwyaf o gyfrifiaduron, er penderfyniadau rhesymol, 336 00:16:08,170 --> 00:16:15,320 yn storio rhifau fel y blwyddyn 1975 neu'r flwyddyn 1999 337 00:16:15,320 --> 00:16:19,010 gan ddim ond gan ddefnyddio dau ddigid er cof y cyfrifiadur. 338 00:16:19,010 --> 00:16:21,950 Felly, wrth gwrs, beth sy'n digwydd pan fyddwch yn mynd at y flwyddyn 2000, 339 00:16:21,950 --> 00:16:25,790 byddwch yn mynd i hwn, neu yn hytrach, yeah. 340 00:16:25,790 --> 00:16:30,120 Felly, byddwch yn mynd at y flwyddyn 2000, ond os rydych yn unig gan ddefnyddio dau ddigid mae'n edrych 341 00:16:30,120 --> 00:16:32,660 fel y flwyddyn 00 ac felly eich bod wedi rholio drosodd. 342 00:16:32,660 --> 00:16:36,820 A dyma pam mae llawer o systemau angen diweddaru'r ar y pryd. 343 00:16:36,820 --> 00:16:42,500 >> Felly, gyda dweud hynny, cwmnïau fel Facebook yn rhedeg i fyny yn erbyn hyn. 344 00:16:42,500 --> 00:16:46,147 Felly, yr unig ffordd i ymdrin â'r sefyllfa, a dweud y gwir, yw rhagweld iddo. 345 00:16:46,147 --> 00:16:47,980 Neu'r ffordd glanaf i trin y sefyllfa hon 346 00:16:47,980 --> 00:16:50,330 yw rhagweld iddo fel nad ydych yn ei wneud rhaid i wneud newidiadau nes ymlaen. 347 00:16:50,330 --> 00:16:51,970 Felly, yn lle 8 bytes, eich bod yn gwybod beth? 348 00:16:51,970 --> 00:16:54,261 Rydw i'n mynd i fod yn flaengar yma, hyd yn oed er 'i' 349 00:16:54,261 --> 00:16:56,760 ychydig yn optimistaidd y rydym yn mynd i gael 4 biliwn a 350 00:16:56,760 --> 00:16:58,850 ac 1 o ddefnyddwyr ar ein gwefan. 351 00:16:58,850 --> 00:17:01,790 Ond gadewch i ni dim ond yn defnyddio 8 bytes, neu 64 darnau, a fyddai arfer yn 352 00:17:01,790 --> 00:17:05,640 a elwir yn cyfanrif mawr, technegol iawn. 353 00:17:05,640 --> 00:17:10,280 Ac mae hynny'n ei olygu yw y gallwch gael hyd yn oed mwy digidau eich rhif. 354 00:17:10,280 --> 00:17:12,599 Ond mae hyn yn bwysig penderfyniad dylunio, 355 00:17:12,599 --> 00:17:16,400 oherwydd os ydych yn dewis rhif sy'n Mae rhy ychydig o ddarnau o expressiveness 356 00:17:16,400 --> 00:17:19,089 fe allech chi greu mewn gwirionedd nam yn eich meddalwedd. 357 00:17:19,089 --> 00:17:21,750 >> Mae pob hawl, felly gadewch i lapio fyny gyda e-bost a chyfeiriad post. 358 00:17:21,750 --> 00:17:26,369 Felly e-bost, pa mor hir y dylai cyfeiriad e-bost fod? 359 00:17:26,369 --> 00:17:26,869 50. 360 00:17:26,869 --> 00:17:29,220 Fi 'n sylweddol i ddim syniad, ond mae'n yn ôl pob tebyg rhywbeth fel 'na, 361 00:17:29,220 --> 00:17:32,261 oherwydd fel arall nad oes neb yn mynd i ysgrifennu atoch os yw'n mynd yn rhy hir, felly 50, 362 00:17:32,261 --> 00:17:33,360 gadewch i ni fynd â ni am y tro. 363 00:17:33,360 --> 00:17:35,770 cyfeiriad post, pa mor hir y dylai hynny fod? 364 00:17:35,770 --> 00:17:38,325 365 00:17:38,325 --> 00:17:39,200 GYNULLEIDFA: [Anghlywadwy] 366 00:17:39,200 --> 00:17:41,900 367 00:17:41,900 --> 00:17:43,890 >> DAVID Malan: Nid yw'n dim ond cod zip, er. 368 00:17:43,890 --> 00:17:45,720 cyfeiriad post, yr wyf yn clywed. 369 00:17:45,720 --> 00:17:50,720 Felly, mae hyn yn debyg 1 Square Brattle, coma, Caergrawnt Mass., coma, 02138. 370 00:17:50,720 --> 00:17:53,860 Ac yn wir, gadewch i mi dim ond tynnu i fyny ychydig taflen waith yma. 371 00:17:53,860 --> 00:17:56,510 Mae hyn yn teimlo fel ei fod yn yn gyfle a gollwyd. 372 00:17:56,510 --> 00:18:01,480 Os oes gennym 1 Square Brattle, coma, Caergrawnt MA 02138, 373 00:18:01,480 --> 00:18:04,510 Rwy'n teimlo fel y gallwn wneud yn well na cyfeiriad post yn unig. 374 00:18:04,510 --> 00:18:07,100 Pam nad ydym yn ffrwydro hyn ychydig bach? 375 00:18:07,100 --> 00:18:08,030 Beth ydw i'n mynd yn? 376 00:18:08,030 --> 00:18:10,970 Beth ddylem ni yn lle hynny gael ar gyfer ein rhesi yma, efallai? 377 00:18:10,970 --> 00:18:12,260 >> GYNULLEIDFA: [Anghlywadwy] 378 00:18:12,260 --> 00:18:17,579 >> DAVID Malan: Yeah, felly gadewch i ni alw street_number, 379 00:18:17,579 --> 00:18:20,620 ac mae tanlinellu yn unig yw gyffredin ffordd o gael yr hyn edrych fel gofod, 380 00:18:20,620 --> 00:18:22,360 ond nid yw'n, mewn gwirionedd. 381 00:18:22,360 --> 00:18:26,240 Street, ac yna city-- flin? 382 00:18:26,240 --> 00:18:28,440 >> GYNULLEIDFA: [Anghlywadwy] 383 00:18:28,440 --> 00:18:29,690 DAVID Malan: Gallem wneud hynny. 384 00:18:29,690 --> 00:18:30,702 Llinell un, llinell dau. 385 00:18:30,702 --> 00:18:32,410 Pam peidiwch byddwn yn cadw yn syml am y tro, 386 00:18:32,410 --> 00:18:34,840 ond mae hynny'n gwbl penderfyniad derbyniol. 387 00:18:34,840 --> 00:18:38,180 Ac yna y wladwriaeth, ac yna gadewch i ni fod ychydig yn US-centric am nawr 388 00:18:38,180 --> 00:18:42,040 a dim ond gwneud cod zip, dim ond oherwydd bydd yn arwain at gamgymeriad diddorol 389 00:18:42,040 --> 00:18:43,090 neu broblem yma. 390 00:18:43,090 --> 00:18:44,655 Felly mae'n debyg dyna awr ein cyfeiriad. 391 00:18:44,655 --> 00:18:47,280 Mae'n ychydig yn fwy blino bod gennym yr holl gaeau mwy hyn, 392 00:18:47,280 --> 00:18:49,200 ond erbyn hyn gallwn tagio pethau ychydig yn well. 393 00:18:49,200 --> 00:18:53,210 >> Rhif Felly nawr stryd yn ôl pob tebyg Ni ddylai fod yn torgoch, dylai ef? 394 00:18:53,210 --> 00:18:54,835 Beth ddylai fod? 395 00:18:54,835 --> 00:18:55,710 GYNULLEIDFA: [Anghlywadwy] 396 00:18:55,710 --> 00:18:57,835 DAVID Malan: Efallai, mae nifer fel cyfanrif eto? 397 00:18:57,835 --> 00:19:00,170 Mae cyfanrif mawr? 398 00:19:00,170 --> 00:19:02,170 Mae'n debygol nad ydych yn byw ar 4 biliwn a Main Street 399 00:19:02,170 --> 00:19:03,490 neu unrhyw beth crazy fel 'na. 400 00:19:03,490 --> 00:19:06,850 Felly cyfanrif yn ôl pob tebyg iawn, ond gan unrhyw un 401 00:19:06,850 --> 00:19:13,880 erioed wedi byw mewn cyfeiriad hoffi Sgwâr Brattle 1A, neu 1 a 1/2? 402 00:19:13,880 --> 00:19:17,030 Mae'r pethau hyn yn bodoli, yn anffodus, hyd yn oed os nad ydych chi wedi byw yno, 403 00:19:17,030 --> 00:19:21,240 mae yna anghysondebau hyn fel fflat 1A, 1B, 1C. 404 00:19:21,240 --> 00:19:24,260 Felly rydych yn gwybod beth, rydym yn fwy na thebyg Ni ddylai fynd gyda cyfanrif, 405 00:19:24,260 --> 00:19:27,440 fel arall rydym yn mynd i golli rhywfaint o werthiannau. 406 00:19:27,440 --> 00:19:29,920 >> maes yn Torgoch, efallai? 407 00:19:29,920 --> 00:19:30,870 Nid wyf yn gwybod pa mor hir. 408 00:19:30,870 --> 00:19:33,370 Mae'n fwy na thebyg yn mynd i fod hynny hir, felly 10 neu rywbeth. 409 00:19:33,370 --> 00:19:34,950 Nid oes unrhyw un yn mynd i ysgrifennu nifer hirach, efallai. 410 00:19:34,950 --> 00:19:37,070 Ond unwaith eto, mae'n debyg y dylai rhoi mwy o feddwl i hynny. 411 00:19:37,070 --> 00:19:39,900 Efallai google, yn gwneud rhywfaint o waith ymchwil, ond byddwn yn mynd â'n perfedd am y tro. 412 00:19:39,900 --> 00:19:44,565 Strydoedd, cols, 50, nid wyf yn gwybod. 413 00:19:44,565 --> 00:19:46,940 Ar ryw adeg, does neb yn mynd ei ysgrifennu ar amlen, 414 00:19:46,940 --> 00:19:49,350 hefyd, felly mae'n debyg rhai arffiniau uchaf yno. 415 00:19:49,350 --> 00:19:54,200 City, un peth, yn sicr, felly Torgoch 50. 416 00:19:54,200 --> 00:19:59,120 >> Y Wladwriaeth, yn gallu bod US-centric am y tro. 417 00:19:59,120 --> 00:20:01,850 Felly gallai fod yn rhestr, mor garedig o o farn, y wladwriaeth. 418 00:20:01,850 --> 00:20:04,000 Gallai fod yn debyg ddau gymeriad. 419 00:20:04,000 --> 00:20:06,140 Felly mewn gwirionedd, efallai, yr wyf yn cadw dweud torgoch. 420 00:20:06,140 --> 00:20:09,420 Yr wyf yn fwy na thebyg yn golygu varchar, dim ond ar gyfer rhai effeithlonrwydd, 421 00:20:09,420 --> 00:20:12,240 ond byddwn yn dod yn ôl at y penderfyniad hwnnw mewn eiliad. 422 00:20:12,240 --> 00:20:16,150 A allai fod yn torgoch o hyd 2 ar gyfer y wladwriaeth. 423 00:20:16,150 --> 00:20:20,670 Os yn yr Unol Daleithiau sydd ganddynt, fel MA, Massachusetts, NY, Efrog Newydd, NJ, New 424 00:20:20,670 --> 00:20:22,100 Jersey, ac yn y blaen. 425 00:20:22,100 --> 00:20:23,630 Felly gallai fod yn sefydlog ar hynny. 426 00:20:23,630 --> 00:20:25,900 DC i Washington DC. 427 00:20:25,900 --> 00:20:29,915 >> Ond rwy'n credu, Olivier, rydych arfaethedig dull arall. 428 00:20:29,915 --> 00:20:30,790 GYNULLEIDFA: [Anghlywadwy] 429 00:20:30,790 --> 00:20:33,670 DAVID Malan: Yeah, felly mae'n ychydig yn blino teipio, 430 00:20:33,670 --> 00:20:37,890 ond gallai enum gwneud mwy o synnwyr, oherwydd bod y ffordd hon, o leiaf yn yr Unol Daleithiau, 431 00:20:37,890 --> 00:20:41,320 gallech gyfrif, os tediously, ond byddwch yn gwneud hynny dim ond unwaith yn eich cronfa ddata 432 00:20:41,320 --> 00:20:47,480 a rhaid i byth eto i feddwl am ei, pob 50 godau dwy-cymeriad. 433 00:20:47,480 --> 00:20:48,660 Felly, yr wyf yn hoffi enum. 434 00:20:48,660 --> 00:20:51,720 Gadewch i ni aros gyda hynny yno, oherwydd mae'n fath o yn gorfodi mwy o drylwyredd. 435 00:20:51,720 --> 00:20:53,620 Ac yna zip cod? 436 00:20:53,620 --> 00:20:55,306 Yr wyf yn meddwl roedd gan Andrew meddwl ar hynny 437 00:20:55,306 --> 00:20:56,180 GYNULLEIDFA: [Anghlywadwy] 438 00:20:56,180 --> 00:20:57,240 DAVID Malan: Yeah, pump neu naw. 439 00:20:57,240 --> 00:20:58,323 Gadewch i 'jyst gadw'n syml. 440 00:20:58,323 --> 00:20:59,380 Dim ond gwneud pump am y tro. 441 00:20:59,380 --> 00:21:03,070 Ond efallai y gallwn jyst gwneud yn gyfanrif, dde? 442 00:21:03,070 --> 00:21:08,750 Y gallwn, ond eich bod yn gwybod beth, yr wyf yn gwneud camgymeriad hwn unwaith, mewn rhai synnwyr. 443 00:21:08,750 --> 00:21:13,110 Flynyddoedd yn ôl, roeddwn yn mudo o Microsoft Outlook i Gmail, 444 00:21:13,110 --> 00:21:18,640 ac Outlook wedi ffordd o allforio eich holl gysylltiadau fel ffeil Excel, 445 00:21:18,640 --> 00:21:21,280 ffeil CSV, atalnod gwahanu gwerthoedd ffeil. 446 00:21:21,280 --> 00:21:23,950 Ac yr wyf yn gwneud y camgymeriad, yr wyf yn yn meddwl, o ddwbl glicio arno, 447 00:21:23,950 --> 00:21:27,380 ar ôl i mi llwytho i lawr y allforio, i gwnewch yn siŵr ei fod yn edrych fel yr oeddwn yn disgwyl. 448 00:21:27,380 --> 00:21:31,320 rhaid fy mod wedi taro Achub neu adael auto-arbed cic mewn neu rywbeth. 449 00:21:31,320 --> 00:21:35,100 Oherwydd pan wyf wedyn mewnforio i mewn Gmail, mae'r cyfan yn gweithio. 450 00:21:35,100 --> 00:21:39,910 Ond ar gyfer y blynyddoedd, hyd y dydd hwn, ac Fe wnes pump hyn, 10 mlynedd yn ôl, 451 00:21:39,910 --> 00:21:44,380 Rwy'n dal i ddod o hyd i ffrindiau sydd wedi cyfeiriadau sy'n edrych fel hyn. 452 00:21:44,380 --> 00:21:45,700 Pam? 453 00:21:45,700 --> 00:21:47,900 >> GYNULLEIDFA: [Anghlywadwy] 454 00:21:47,900 --> 00:21:50,650 >> DAVID Malan: Cymerodd y 0, yn dda, yn hytrach, mae'n 455 00:21:50,650 --> 00:21:53,810 cymerodd y cod zip gyfan fel nifer, ac felly mae'n 456 00:21:53,810 --> 00:21:56,590 blaenllaw 0 sy'n golygu nid oes ganddo ystyr. 457 00:21:56,590 --> 00:21:59,470 Ac felly 2138 yn ymddangos i fod yn fy cod zip. 458 00:21:59,470 --> 00:22:07,100 Ac mae hyn yn, dweud y gwir, mae Excel blino nodwedd lle yr wyf yn meddwl yn ddiofyn, 459 00:22:07,100 --> 00:22:10,980 hyd yn oed os yw'n golygu i jyst fod yn destun, Microsoft Excel 460 00:22:10,980 --> 00:22:13,780 penderfynu, gadewch i mi fod yn ddefnyddiol, a oh, yr wyf yn gweld rhifau yn unig. 461 00:22:13,780 --> 00:22:15,290 Gadewch i ni drin y rhain fel rhifau. 462 00:22:15,290 --> 00:22:16,790 Ac mae'n truncates y sero blaenllaw. 463 00:22:16,790 --> 00:22:19,165 >> Tyngaf i Dduw, bob cwpl o fisoedd Rwy'n dod o hyd i gyfeiriad, 464 00:22:19,165 --> 00:22:22,300 ac allan o rhyw fath o OCD, yr wyf yn mynd yn ôl i mewn ac ychwanegwch y 0, er fy mod yn byth 465 00:22:22,300 --> 00:22:23,700 anfon llythyrau bobl neu unrhyw beth. 466 00:22:23,700 --> 00:22:25,510 Ond dw i'n dal i ddod o hyd i olion o hyn. 467 00:22:25,510 --> 00:22:28,820 Felly mae hyn yn ei ddweud, a yw hyn yn syniad da? 468 00:22:28,820 --> 00:22:31,610 OK, na, gan fod unrhyw un yn Massachusetts, yn yr ardal hon, 469 00:22:31,610 --> 00:22:33,270 yn mynd i gael o eu harwain. 470 00:22:33,270 --> 00:22:38,070 Felly, gadewch i ni fynd gyda tebyg torgoch, yn ôl pob tebyg, pump. 471 00:22:38,070 --> 00:22:41,450 >> Ac yma, sylweddoli ein Gallai ddefnyddio enum ac rydym yn 472 00:22:41,450 --> 00:22:44,600 Gallai cyfrif 10,000 codau zip bosibl, 473 00:22:44,600 --> 00:22:48,530 ond sy'n teimlo fel ei fod yn fwy na thebyg groesi llinell o, fel, budd-daliadau. 474 00:22:48,530 --> 00:22:51,350 Os oes gennych chi i mewnbwn a llawer o ddata i mewn i'ch cronfa ddata 475 00:22:51,350 --> 00:22:52,940 i amddiffyn yn erbyn rhywbeth. 476 00:22:52,940 --> 00:22:57,400 sylweddolodd Felly torgoch gallech deipio yn H-E-L-L-O fel eich cod zip, 477 00:22:57,400 --> 00:22:59,180 nad yw'n, yn amlwg, rhifol. 478 00:22:59,180 --> 00:23:01,680 Felly does dim ffordd, yn cronfa ddata nodweddiadol, 479 00:23:01,680 --> 00:23:05,561 i bennu unig rhifol a dim ond pum nod o hyd, 480 00:23:05,561 --> 00:23:07,310 felly rydym yn mynd i gael i wneud hynny mewn cod. 481 00:23:07,310 --> 00:23:11,100 Rydym yn mynd i wneud hynny yn PHP neu Java neu beth bynnag iaith rydym yn 482 00:23:11,100 --> 00:23:14,230 defnyddio ar y gweinydd i orfodi y math hwnnw o gyfyngiad. 483 00:23:14,230 --> 00:23:14,860 >> Whoo! 484 00:23:14,860 --> 00:23:18,322 Mae pob hawl, felly unrhyw gwestiynau eto? 485 00:23:18,322 --> 00:23:19,780 Gadewch i ni wneud penderfyniadau dylunio arall. 486 00:23:19,780 --> 00:23:22,500 Mae'n ymddangos bod chi hefyd yn cael i ddewis, 487 00:23:22,500 --> 00:23:26,600 wrth ddylunio cronfa ddata SQL, neu database-- perthynol nodweddiadol lle 488 00:23:26,600 --> 00:23:28,790 eto, perthynol yn unig golygu rhesi a cholofnau, 489 00:23:28,790 --> 00:23:35,500 dyna sut i drefnu eich data-- ac yn sylweddoli bod ystyr hyn yw, 490 00:23:35,500 --> 00:23:37,740 Rydw i wedi bod yn gamarweiniol mewn hynny, rwy'n drawing-- hwn 491 00:23:37,740 --> 00:23:40,190 yn yr hyn a elwir y sgema ar gyfer tabl cronfa ddata. 492 00:23:40,190 --> 00:23:42,810 Mae hyn yn debyg i'r manylebau ar gyfer y table-- 493 00:23:42,810 --> 00:23:48,040 ond pan ddaw amser i storio data mewn gwirionedd, 494 00:23:48,040 --> 00:23:52,081 ac fe wnawn hyn yn unig trwy esiampl yma. 495 00:23:52,081 --> 00:23:55,080 Rydw i'n mynd i agor Excel, oherwydd Bydd Excel yn rhoi rhesi a cholofnau mi. 496 00:23:55,080 --> 00:23:58,050 A dyna yn union beth Oracle a Bydd MySQL ac offer eraill yn rhoi i mi. 497 00:23:58,050 --> 00:24:02,270 Felly Im 'jyst yn mynd i ddefnyddio er mwyn y drafodaeth yn. 498 00:24:02,270 --> 00:24:05,250 Gadewch i mi fynd yn ei flaen ac yn agor i fyny Dogfen cynrychiolydd yma, 499 00:24:05,250 --> 00:24:06,310 chwyddo i mewn ychydig. 500 00:24:06,310 --> 00:24:15,200 Felly, er enghraifft, mae ein penawdau yn awr enw cyntaf, enw olaf, rhyw, ID, 501 00:24:15,200 --> 00:24:20,980 e-bost, rhif stryd stryd whoops. 502 00:24:20,980 --> 00:24:25,710 Street, dinas, y wladwriaeth, dim ond am yn cyd-fynd ar y sgrin. 503 00:24:25,710 --> 00:24:29,080 >> Felly beth mae hyn yn ei olygu yw bod pan fydd defnyddiwr cofrestri cyntaf ar gyfer fy ngwefan, 504 00:24:29,080 --> 00:24:32,880 mae'n mynd i fod yn rhywbeth fel Dafydd, Malan, m, gadewch i ni ddweud 1, 505 00:24:32,880 --> 00:24:42,910 malan@harvard.edu, rhif stryd bydd fod yn debyg 1 Square Brattle, Cambridge, MA, 506 00:24:42,910 --> 00:24:44,780 02138, ac yna yn y blaen. 507 00:24:44,780 --> 00:24:48,290 Felly, pan fyddaf yn dweud bod cronfa ddata berthynol neu gronfa ddata SQL yw rhesi a cholofnau, 508 00:24:48,290 --> 00:24:49,350 Yr wyf yn golygu hyn. 509 00:24:49,350 --> 00:24:51,900 Bod data gwirioneddol yn cael ei storio mewn rhesi a cholofnau. 510 00:24:51,900 --> 00:24:53,950 Mae hyn yn unig yw cyd-ddigwyddiad, ein bod yn siarad, 511 00:24:53,950 --> 00:24:56,033 ac yr oeddwn yn tynnu ei allan mewn rhesi a cholofnau. 512 00:24:56,033 --> 00:24:58,320 Mae hyn yn unig y sgema, y diffiniad cyffredinol. 513 00:24:58,320 --> 00:25:01,640 >> Felly o'r meysydd hyn yma, neu cyfwerth ei, yno, 514 00:25:01,640 --> 00:25:06,270 sef y caeau yn eich barn chi Rwy'n debygol o chwilio ar os rwy'n defnyddiwr 515 00:25:06,270 --> 00:25:09,200 neu os wyf gweinyddwr cronfa ddata? 516 00:25:09,200 --> 00:25:12,426 Fel, pa feysydd ydw i'n mewn gwirionedd yn mynd i chwilio am? 517 00:25:12,426 --> 00:25:13,830 >> GYNULLEIDFA: [Anghlywadwy] 518 00:25:13,830 --> 00:25:17,690 >> DAVID Malan: Enw, yeah felly Rwy'n hoffi'r ffaith that-- yeah, 519 00:25:17,690 --> 00:25:19,750 Gallai e-bost fod yn eithaf cyffredin. 520 00:25:19,750 --> 00:25:21,440 Mae'n ddrwg gennym, dywedasoch enw. 521 00:25:21,440 --> 00:25:24,030 Felly maybe-- ac unwaith eto, rydym yn math o siarad yn y haniaethol. 522 00:25:24,030 --> 00:25:25,988 Nid wyf yn gwybod pam byddech yn fod yn chwilio am enw, 523 00:25:25,988 --> 00:25:29,340 ond sy'n teimlo'n rhesymol os ydych chi'n chwilio am ddefnyddiwr. 524 00:25:29,340 --> 00:25:31,170 yn datgan Efallai, yn sicr, adnabod. 525 00:25:31,170 --> 00:25:34,100 526 00:25:34,100 --> 00:25:36,160 >> Ac mae'n llithrig llethr, oherwydd y gallwn 527 00:25:36,160 --> 00:25:38,890 contrive sefyllfa lle efallai fy rheolwr wedi gofyn i mi, 528 00:25:38,890 --> 00:25:40,417 faint o ddynion sydd gennym ar ein safle? 529 00:25:40,417 --> 00:25:42,000 Faint o fenywod sydd gennym ni ar ein safle? 530 00:25:42,000 --> 00:25:45,210 Ac felly ar y pwynt hwnnw, efallai y byddwch am i chwilio ar y cae rhyw, hefyd, 531 00:25:45,210 --> 00:25:45,940 a dim byd arall. 532 00:25:45,940 --> 00:25:47,350 Felly mae 'na cyfaddawd yma. 533 00:25:47,350 --> 00:25:49,180 Unwaith eto, does dim ateb cywir, ond mae 534 00:25:49,180 --> 00:25:53,760 yn nodwedd yn y rhan fwyaf cronfeydd data SQL a elwir yn mynegeio, lle 535 00:25:53,760 --> 00:25:56,100 chi, y dylunydd, y gweinyddwr cronfa ddata, 536 00:25:56,100 --> 00:26:01,730 cael penderfynu ymlaen llaw pa caeau dylai'r gronfa ddata optimize 537 00:26:01,730 --> 00:26:02,980 am chwiliadau ar. 538 00:26:02,980 --> 00:26:07,620 >> Fe allech chi ddweud ddiniwed iawn, gwneud y gorau hyn, gwneud y gorau, yn gwneud y gorau hyn, 539 00:26:07,620 --> 00:26:10,300 optimeiddio hynny ac mae hyn, a'r gronfa ddata fydd 540 00:26:10,300 --> 00:26:14,882 gwneud rhyw beth hudol o dan y cwfl, a gwneud rhywbeth yn y fath fodd 541 00:26:14,882 --> 00:26:17,090 bod y tro nesaf y byddwch yn chwilio ar unrhyw un o'r meysydd hyn, 542 00:26:17,090 --> 00:26:18,400 bydd yn, mewn gwirionedd, fod yn gyflymach. 543 00:26:18,400 --> 00:26:19,110 Mae hyn yn bosibl. 544 00:26:19,110 --> 00:26:20,530 Nid yw'n canslo ei hun allan. 545 00:26:20,530 --> 00:26:22,500 Ond rhaid cael pris a dalwyd. 546 00:26:22,500 --> 00:26:27,220 >> Os byddwch yn ddiniwed, neu dros-frwdfrydig dyweder, mynegai holl feysydd hyn, 547 00:26:27,220 --> 00:26:29,810 fel petai, yn eu gwneud yn i gyd effeithlon chwilio, 548 00:26:29,810 --> 00:26:31,625 pa bris yr ydych yn ôl pob tebyg yn talu? 549 00:26:31,625 --> 00:26:32,500 GYNULLEIDFA: [Anghlywadwy] 550 00:26:32,500 --> 00:26:33,090 DAVID Malan: Perfformiad. 551 00:26:33,090 --> 00:26:33,798 Beth ydych chi'n ei olygu? 552 00:26:33,798 --> 00:26:37,380 Wel perfformiad, o leiaf yn y cyd-destun dwi'n trafod, yn well yn awr. 553 00:26:37,380 --> 00:26:38,830 Dyna y diffiniad o mynegeio. 554 00:26:38,830 --> 00:26:41,180 Bydd yn gwneud chwiliadau cyflymach. 555 00:26:41,180 --> 00:26:43,366 Felly, y tro yn gostwng, fel petai. 556 00:26:43,366 --> 00:26:44,240 GYNULLEIDFA: [Anghlywadwy] 557 00:26:44,240 --> 00:26:45,031 DAVID Malan: Gofod. 558 00:26:45,031 --> 00:26:46,520 Felly eto, mae'r rhain yn masnach gyffredin. 559 00:26:46,520 --> 00:26:50,820 Gallaf cyflymu eich chwiliadau, ond mae'n mynd i gostio mwy wrthych bytes o ofod. 560 00:26:50,820 --> 00:26:51,610 Pam? 561 00:26:51,610 --> 00:26:55,230 Wel, yn ddiofyn, os oes gennym yr un o'r sêr coch yma, nid yw'r un o'r mynegeion hyn, 562 00:26:55,230 --> 00:26:58,797 fel yr wyf ddim yn dweud, sut ydych chi'n chwilio am enw yn y gronfa ddata hon? 563 00:26:58,797 --> 00:27:00,630 Felly gadewch i ni dynnu ein sylw at yr enghraifft hon. 564 00:27:00,630 --> 00:27:06,300 Os oes gennym David a Scully a Kareem ac Arwa ac eraill mewn rhesi hyn, 565 00:27:06,300 --> 00:27:06,910 er enghraifft. 566 00:27:06,910 --> 00:27:08,390 >> Felly gadewch i ni wneud yn union hynny. 567 00:27:08,390 --> 00:27:13,990 Scully yn fan hyn, ac yna rydym wedi Kareem, a Arwa, 568 00:27:13,990 --> 00:27:18,390 a phawb arall, os nad ydych yn â mynegrif diffiniedig, fel petai, 569 00:27:18,390 --> 00:27:20,160 y gorau y gallwch ei wneud yw chwilio llinol. 570 00:27:20,160 --> 00:27:23,470 Os ydych yn chwilio am Arwa, nid ydym yn mynd i fod yn gallu neidio i'r dde at ei 571 00:27:23,470 --> 00:27:24,140 yn gyflym. 572 00:27:24,140 --> 00:27:26,556 Rydym yn mynd i ddechrau top a fynd yr holl ffordd i'r gwaelod, 573 00:27:26,556 --> 00:27:28,600 nid annhebyg i'n gwreiddiol Mike Smith enghraifft. 574 00:27:28,600 --> 00:27:33,470 >> Os, fodd bynnag, yr wyf yn dweud, hey, cronfa ddata, mynegai y cae enw cyntaf, 575 00:27:33,470 --> 00:27:37,000 Yna, mae'n mynd i wneud rhywbeth ffansi ac yn cefnogi rhywbeth 576 00:27:37,000 --> 00:27:38,130 fel chwiliad deuaidd. 577 00:27:38,130 --> 00:27:39,820 Dyw hi ddim yn ôl pob tebyg chwiliad deuaidd fel y cyfryw. 578 00:27:39,820 --> 00:27:42,810 Cronfeydd data yn tueddu i ddefnyddio un arall strwythur data elwir b-coed, 579 00:27:42,810 --> 00:27:46,540 ni ddylid ei gymysgu gyda choed deuaidd, mai dim ond yn ei gwneud yn gyflymach i chwilio 580 00:27:46,540 --> 00:27:48,500 rhywbeth logarithmig o ran eu natur. 581 00:27:48,500 --> 00:27:53,510 Ond mae'r pris a dalwch i adeiladu fod nodwedd, y strwythur data mewn cof, 582 00:27:53,510 --> 00:27:54,570 yn fwy bytes. 583 00:27:54,570 --> 00:27:57,170 Felly gallai gymryd rhai megabeit, rhai gigabeit, pwy a ŵyr? 584 00:27:57,170 --> 00:27:58,410 Mae'n dibynnu ar y data. 585 00:27:58,410 --> 00:28:02,640 >> Felly, ar ryw adeg, rhaid i chi benderfynu, mae'n debyg nad yn achos cyffredin. 586 00:28:02,640 --> 00:28:06,000 Felly beth yw'r comin gwirioneddol achosion, os ydych yn wir gorfod dewis, 587 00:28:06,000 --> 00:28:10,080 beth allai eich hoff gaeau fod? 588 00:28:10,080 --> 00:28:10,580 E-bost. 589 00:28:10,580 --> 00:28:14,400 Ac yr wyf yn hoffi e-bost oherwydd bod e-bost, mewn theori, dylai fod yn unigryw. 590 00:28:14,400 --> 00:28:17,650 Ac felly fel arfer, pan fyddwch yn gwybod ymlaen llaw fod un o'ch caeau 591 00:28:17,650 --> 00:28:20,277 neu a fydd yn unigryw, bod yn tueddu i fod yn faes da 592 00:28:20,277 --> 00:28:22,860 i chwilio am, oherwydd y ffordd honno, pan fyddwch yn chwilio am rywbeth, 593 00:28:22,860 --> 00:28:26,194 ydych yn mynd i fynd yn ôl un neu sero ymatebion ac yna rydych yn ei wneud. 594 00:28:26,194 --> 00:28:28,110 Nid oes rhaid i chi gadw chwilio am eto eraill. 595 00:28:28,110 --> 00:28:31,992 >> Ac felly yn yr achos hwn yma, e-bost, cyn belled nad ydych yn gallu cofrestru ddwywaith 596 00:28:31,992 --> 00:28:33,450 gyda'r un e-bost, yn un da. 597 00:28:33,450 --> 00:28:36,710 ID trwy ddiffiniad, yn y byd gwyddoniaeth gyfrifiadurol, 598 00:28:36,710 --> 00:28:39,610 os ydych yn sôn am ID, a oedd wedi bod yn unigryw yn well. 599 00:28:39,610 --> 00:28:42,970 Dyna fath o arwyddocâd y o adnabod neu ddynodwr. 600 00:28:42,970 --> 00:28:46,440 A gallai gweddill o'r rhain fod, gadewch i ni yn eu galw 'n glws i haves, 601 00:28:46,440 --> 00:28:47,860 ond nid yw'n ofynnol mewn gwirionedd. 602 00:28:47,860 --> 00:28:49,976 >> Ac felly mewn cronfa ddata, eich bod yn nodi mynegeion, 603 00:28:49,976 --> 00:28:51,350 ond gallwch fod yn hyd yn oed yn fwy manwl gywir. 604 00:28:51,350 --> 00:28:56,060 Gallwch ddweud, hey, cronfa ddata, gwnewch yn siŵr bod pob ID yn y tabl hwn yn unigryw. 605 00:28:56,060 --> 00:28:59,330 Peidiwch â hyd yn oed yn gadael i rhaglennydd rhoi ddamweiniol mewn neges e-bost dyblyg 606 00:28:59,330 --> 00:29:00,740 neu dyblygu rif adnabod. 607 00:29:00,740 --> 00:29:03,140 Mae cymaint fel enums ein diogelu yn yr un modd, yr ydych 608 00:29:03,140 --> 00:29:04,881 Gall gael amddiffynfeydd lefel is-hynny. 609 00:29:04,881 --> 00:29:07,130 Ac felly dylunio cronfa ddata, yn ychydig o synnwyr, yn fath o hwyl, 610 00:29:07,130 --> 00:29:08,380 oherwydd eich bod yn ei wneud yn amddiffynnol. 611 00:29:08,380 --> 00:29:11,460 Rydych fath o tybio eich bod yn gweithio gyda rhaglenwyr ofnadwy, erchyll 612 00:29:11,460 --> 00:29:15,550 a'ch bod am roi cymaint o amddiffynfeydd ag y gallwch i ddiogelu eich data, 613 00:29:15,550 --> 00:29:18,940 ond ar yr un pryd yr ydych am i'w helpu i berfformio'n well 614 00:29:18,940 --> 00:29:21,386 trwy ddewis pa caeau i wneud y gorau i. 615 00:29:21,386 --> 00:29:24,260 Ond ni allwch wneud o reidrwydd yn gwactod fel rydym math o yma. 616 00:29:24,260 --> 00:29:26,480 Mae'n rhaid i chi wybod beth yw'r achosion cyffredin hynny fodolaeth. 617 00:29:26,480 --> 00:29:29,397 Os bydd y datblygwyr yn gweithredu llyfr cyfeiriadau, 618 00:29:29,397 --> 00:29:32,230 efallai y byddwch yn dda iawn am fod yn gallu i chwilio ar bron bob maes, 619 00:29:32,230 --> 00:29:33,830 dim ond drwy natur y cais. 620 00:29:33,830 --> 00:29:37,910 Felly, efallai eich bod yn treulio hynny lle ychwanegol. 621 00:29:37,910 --> 00:29:39,090 >> Iawn, unrhyw gwestiynau? 622 00:29:39,090 --> 00:29:41,820 623 00:29:41,820 --> 00:29:42,486 Yeah. 624 00:29:42,486 --> 00:29:43,470 >> GYNULLEIDFA: [Anghlywadwy] 625 00:29:43,470 --> 00:29:44,404 >> DAVID Malan: Na 626 00:29:44,404 --> 00:29:45,279 >> GYNULLEIDFA: [Anghlywadwy] 627 00:29:45,279 --> 00:29:47,840 628 00:29:47,840 --> 00:29:48,826 >> DAVID Malan: OK. 629 00:29:48,826 --> 00:29:49,701 >> GYNULLEIDFA: [Anghlywadwy] 630 00:29:49,701 --> 00:29:52,420 631 00:29:52,420 --> 00:29:54,850 >> DAVID Malan: O, felly rydym yn yn siarad mewn ffordd 632 00:29:54,850 --> 00:29:57,940 Erbyn hyn mae hynny'n hollol iaith agnostig. 633 00:29:57,940 --> 00:30:02,370 Felly yr ydym yn sôn yn awr am cronfeydd data perthynol yn fwy cyffredinol, 634 00:30:02,370 --> 00:30:04,760 neu SQL cronfeydd data yn fwy cyffredinol. 635 00:30:04,760 --> 00:30:06,870 >> GYNULLEIDFA: [Anghlywadwy] 636 00:30:06,870 --> 00:30:10,030 >> DAVID Malan: Gair well defnyddio yw, gellir ei ddefnyddio gan unrhyw iaith. 637 00:30:10,030 --> 00:30:15,280 Felly, yr wyf yn gallu ysgrifennu cod JavaScript, C cod, C ++ cod, Java cod, Ruby cod, 638 00:30:15,280 --> 00:30:19,010 pob un ohonynt yn siarad â cronfa ddata a gweithredu ymholiadau. 639 00:30:19,010 --> 00:30:22,310 Yn wir, nid yw hynny ddim yn ddrwg segue i enghraifft ymholiad. 640 00:30:22,310 --> 00:30:25,720 Ac eto, nid ydym yn mynd i fynd i mewn i Java neu C ++ neu unrhyw un sydd anymore, 641 00:30:25,720 --> 00:30:29,420 ond yn SQL, yr iaith y mae yr wyf yn cadw gan gyfeirio, Iaith Ymholiad Strwythuredig, 642 00:30:29,420 --> 00:30:32,790 mae hyn ynddo'i hun yn iaith raglennu, ond mae'n fod i gael ei ddefnyddio ar gyfer, dim 643 00:30:32,790 --> 00:30:37,330 syndod, strwythuredig ymholiadau ymholiad. 644 00:30:37,330 --> 00:30:38,660 >> Gan fy mod yn golygu hyn. 645 00:30:38,660 --> 00:30:41,190 Mae'r ffordd yr ydych yn dewis data o gronfa ddata MySQL 646 00:30:41,190 --> 00:30:49,330 yn eich llythrennol teipio eich rhaglen rhywbeth fel seren dewiswch gan ddefnyddwyr. 647 00:30:49,330 --> 00:30:52,200 Yr wyf yn tybio bod y tabl hwn, Gelwir hyn ymlaen yn cael ei ddefnyddwyr. 648 00:30:52,200 --> 00:30:54,860 Gallwn alw unrhyw beth yr ydym am ei gael, ond y math hwnnw o yn gwneud synnwyr. 649 00:30:54,860 --> 00:30:57,240 Ac felly dethol yn iawn ferf gyffredin, os ydych yn 650 00:30:57,240 --> 00:30:59,290 fydd, yn SQL, hynny llythrennol yn gwneud hynny. 651 00:30:59,290 --> 00:31:02,730 Beth ydych chi'n meddwl seren olygu yn y cyd-destun hwn? 652 00:31:02,730 --> 00:31:04,410 >> GYNULLEIDFA: [Anghlywadwy] 653 00:31:04,410 --> 00:31:05,380 >> DAVID Malan: Mae'n ddrwg gen i? 654 00:31:05,380 --> 00:31:06,300 >> GYNULLEIDFA: [Anghlywadwy] 655 00:31:06,300 --> 00:31:09,580 >> DAVID Malan: Ddim yn ofynnol, mae'n fwy cynhwysol na hynny, mewn gwirionedd. 656 00:31:09,580 --> 00:31:11,700 Mae'n y cymeriad cerdyn gwyllt. 657 00:31:11,700 --> 00:31:14,740 Seren yn golygu unrhyw beth bron bob amser, felly mae hyn yn golygu, yn yr achos hwn, 658 00:31:14,740 --> 00:31:16,510 dewiswch popeth o'r gronfa ddata. 659 00:31:16,510 --> 00:31:20,730 Felly, pan fyddaf yn dweud hyn, yr wyf yn golygu roi i mi yn ôl pob colofn 660 00:31:20,730 --> 00:31:22,440 oddi wrth fy mwrdd o'r enw ddefnyddwyr. 661 00:31:22,440 --> 00:31:24,730 Felly rhoi canlyniad set mi, fel ei fod yn enw. 662 00:31:24,730 --> 00:31:28,210 Mewn geiriau eraill, rhoi copi o'r fi taenlen, yn yr hyn Im 'yn cael ar. 663 00:31:28,210 --> 00:31:34,890 >> Ond os y dywedais dewiswch seren gan ddefnyddwyr lle ID dychwelyd 1, dylai pa mor fawr 664 00:31:34,890 --> 00:31:36,640 fy set canlyniad fod yna? 665 00:31:36,640 --> 00:31:41,680 Neu cyfwerth ei, dylai faint o resi Rwyf yn cael ei drosglwyddo yn ôl oddi wrth y gronfa ddata? 666 00:31:41,680 --> 00:31:45,860 Yn ôl pob tebyg dim ond un, os oes gen i wir drin ID fel dynodwr unigryw, 667 00:31:45,860 --> 00:31:50,710 ac os David bod gan ID unigryw, yr wyf yn Dylai fynd yn ôl un a dim ond un rhes 668 00:31:50,710 --> 00:31:53,220 sy'n cynnwys yr holl wybodaeth Dewi. 669 00:31:53,220 --> 00:31:56,390 Os byddaf yn dweud lle mae hyn ID yn hafal i 99, dylwn fynd yn ôl, 670 00:31:56,390 --> 00:32:00,320 yn y cyd-destun hwn, sero rhes, o leiaf ar hyn o bryd. 671 00:32:00,320 --> 00:32:03,620 >> Fodd bynnag, os wyf yn ddim wir yn poeni am yr holl wybodaeth honno, 672 00:32:03,620 --> 00:32:06,970 Gallwn ddweud, ble mae David yn byw? 673 00:32:06,970 --> 00:32:10,860 cod zip Dewiswch o'r defnyddwyr lle ID yw 1. 674 00:32:10,860 --> 00:32:15,820 Bydd hyn yn dewis i mi yn unig zip Dewi cod ac nid y cyfan o'r y rhes. 675 00:32:15,820 --> 00:32:19,541 Pam y gallai wyf yn gwneud hyn yn lle yr ymholiad seren, y cerdyn gwyllt? 676 00:32:19,541 --> 00:32:21,950 >> GYNULLEIDFA: [Anghlywadwy] 677 00:32:21,950 --> 00:32:24,590 >> DAVID Malan: Yeah, efallai mai dim ond ei angen. 678 00:32:24,590 --> 00:32:26,350 Felly perfformiad yw'r ateb yma eto. 679 00:32:26,350 --> 00:32:28,540 Pam gofyn am fwy o wybodaeth nag sydd ei angen, 680 00:32:28,540 --> 00:32:32,020 oherwydd hyd yn oed os mae'n iawn at ei gilydd, yn rhaid i chi gopïo data hwnnw, 681 00:32:32,020 --> 00:32:35,560 mae'n ymddangos, o'r gronfa ddata i mewn i'ch rhaglen rhywsut, 682 00:32:35,560 --> 00:32:38,490 a dim ond gwirion os ydych dim ond angen pump o ddigidau hynny, 683 00:32:38,490 --> 00:32:40,340 nid yw gyfanrwydd y rhes. 684 00:32:40,340 --> 00:32:42,180 >> Felly sut ydw i'n mewnosod defnyddiwr? 685 00:32:42,180 --> 00:32:44,780 Tybiwch defnyddiwr yn unig gofrestru am y tro cyntaf. 686 00:32:44,780 --> 00:32:46,560 Byddai'r cystrawen fel arfer yn edrych fel hyn. 687 00:32:46,560 --> 00:32:52,700 Mewnosod i ddefnyddwyr, ac yna byddem yn dweud gwerthoedd, 688 00:32:52,700 --> 00:33:00,150 ac yna byddem yn dweud gwerthoedd fel, gadewch i ni ddweud, Lauren Scully, 689 00:33:00,150 --> 00:33:02,380 ein videographer iawn yma. 690 00:33:02,380 --> 00:33:04,390 A'r cae nesaf yw rhyw. 691 00:33:04,390 --> 00:33:08,020 Felly, byddwn yn dweud dyfyniad, unquote "F", yna mae gennym ID 692 00:33:08,020 --> 00:33:12,250 ac rwy'n mynd i say-- gadewch i ni esgus nad oedd hi mewn gwirionedd yma, 693 00:33:12,250 --> 00:33:14,380 felly byddwn yn ailddirwyn yn y stori. 694 00:33:14,380 --> 00:33:16,530 Felly, bydd 2 yn cael ei ei adnabod. 695 00:33:16,530 --> 00:33:19,130 Ac yna y cae nesaf dyma yw ei e-bost. 696 00:33:19,130 --> 00:33:22,140 Felly mae'n mynd i fod fel Lauren Scully ac yn y blaen, 697 00:33:22,140 --> 00:33:24,360 a byddwn yn jyst dot dot dot ef i ffwrdd o fan hyn ymlaen. 698 00:33:24,360 --> 00:33:26,890 Nawr bydd yn cael ychydig ddiflas, ond y mewnosodiad ymholiad 699 00:33:26,890 --> 00:33:28,310 Byddai yn y pen draw yn edrych fel 'na. 700 00:33:28,310 --> 00:33:30,970 >> Os ydw i eisiau i gael gwared ar Scully, uh-oh, gadewch i ddadgofrestru 701 00:33:30,970 --> 00:33:37,420 hi, mae hi'n dileu ei gyfrif, dileu gan ddefnyddwyr ble ID hafal 2, 702 00:33:37,420 --> 00:33:38,500 Bydd cael gwared ar Scully. 703 00:33:38,500 --> 00:33:48,050 Neu gallaf ddweud defnyddwyr diweddaru a osodwyd, gadewch i ni ddweud, beth allen ni ei newid? 704 00:33:48,050 --> 00:33:49,430 Gadewch i ni dybio ei bod yn symud. 705 00:33:49,430 --> 00:33:53,730 zip Set hafal 021-- Na, dyna hi zip cyfredol. 706 00:33:53,730 --> 00:33:54,487 90210. 707 00:33:54,487 --> 00:33:56,320 Yr unig cod zip arall Yr wyf yn gwybod yn y byd. 708 00:33:56,320 --> 00:33:59,002 Felly fyddai'n newid ei zip code-- mewn gwirionedd, 709 00:33:59,002 --> 00:34:00,460 Ni fyddai'n newid ei cod zip. 710 00:34:00,460 --> 00:34:02,170 >> Beth wnes i jyst yn ei wneud? 711 00:34:02,170 --> 00:34:04,292 Er bod y gystrawen yn ôl pob tebyg newydd. 712 00:34:04,292 --> 00:34:05,302 >> GYNULLEIDFA: [Anghlywadwy] 713 00:34:05,302 --> 00:34:08,010 DAVID Malan: Yeah, yr wyf yn symud pawb i Beverly Hills, Califfornia. 714 00:34:08,010 --> 00:34:11,920 Felly, yr wyf dylai gwirionedd dweud ble ID hafal 2. 715 00:34:11,920 --> 00:34:12,820 Ac yn y blaen. 716 00:34:12,820 --> 00:34:15,290 Felly SQL yn ymwneud rhain math o gyfarwyddiadau. 717 00:34:15,290 --> 00:34:20,260 Dewiswch, mewnosoder, dileu, diweddaru, gyda predicates hyn ar ddiwedd 718 00:34:20,260 --> 00:34:22,139 cymalau lle mae'r rhain, fel petai. 719 00:34:22,139 --> 00:34:25,170 Ac mae llawer mwy y gallwch yn ei wneud, ond mae'n wirioneddol yn unig boils i lawr 720 00:34:25,170 --> 00:34:29,750 yn syml, os arcanely, gan fynegi yr hyn yr ydych am i'r gronfa ddata i wneud. 721 00:34:29,750 --> 00:34:31,580 >> Ac yna y gronfa ddata Bydd chyfrif i maes, pan 722 00:34:31,580 --> 00:34:35,630 byddwch yn mewnosod Lauren Scully i mewn i'r cronfa ddata, ble i rhoi hi mewn cof 723 00:34:35,630 --> 00:34:38,230 er mwyn i ni gael yn gyflym iawn ei seilio ar ei chyfeiriad e-bost 724 00:34:38,230 --> 00:34:42,610 neu yn seiliedig ar ei rhif adnabod neu debyg. 725 00:34:42,610 --> 00:34:43,391 Yeah, Dan. 726 00:34:43,391 --> 00:34:44,266 GYNULLEIDFA: [Anghlywadwy] 727 00:34:44,266 --> 00:34:46,364 728 00:34:46,364 --> 00:34:47,780 DAVID Malan: Cwestiwn Really da. 729 00:34:47,780 --> 00:34:50,370 A fydd sgriptiau hyn yn newid o Microsoft Access i Oracle 730 00:34:50,370 --> 00:34:52,290 i MySQL i PostgreSQL? 731 00:34:52,290 --> 00:34:53,790 Yr ateb byr yw ei fod yn dibynnu. 732 00:34:53,790 --> 00:34:58,697 Mewn theori, mae iawn is-set gyffredin sylweddol o SQL 733 00:34:58,697 --> 00:35:00,780 sy'n ei rhannu ar draws yr holl o'r gweithrediadau hyn. 734 00:35:00,780 --> 00:35:03,340 Fodd bynnag, mae gwahanol gweithgynhyrchwyr rhaid i nodweddion ychwanegol 735 00:35:03,340 --> 00:35:07,120 at eu cronfeydd data i wneud pethau penodol y tu hwnt i gwmpas y nodweddion hyn, 736 00:35:07,120 --> 00:35:08,720 a allai fod, mewn gwirionedd, yn torri. 737 00:35:08,720 --> 00:35:11,210 >> Felly, y ffordd y datblygwyr gwrych yn erbyn hyn, 738 00:35:11,210 --> 00:35:14,350 yw bod yn hytrach nag ysgrifennu amrwd SQL cod fel mod i'n ysgrifennu yma, 739 00:35:14,350 --> 00:35:19,460 maent yn hytrach yn defnyddio llyfrgell, llyfrgell cyffredin sy'n ei hun 740 00:35:19,460 --> 00:35:23,650 yn fath o uwch-lefel a chrynodebau ffwrdd pa gynnyrch rydych yn ei ddefnyddio. 741 00:35:23,650 --> 00:35:25,710 Ac mae'n rhoi i chi swyddogaethau a gweithdrefnau 742 00:35:25,710 --> 00:35:28,810 i alw er mwyn i chi byth mewn gwirionedd yn ysgrifennu SQL crai. 743 00:35:28,810 --> 00:35:32,609 >> Mewn theori, yna, gallwch newid cynnyrch o Oracle i Microsoft 744 00:35:32,609 --> 00:35:34,650 neu i'r gwrthwyneb neu unrhyw beth arall, ac yr ydych yn llythrennol 745 00:35:34,650 --> 00:35:36,920 newid unrhyw beth am eich cod. 746 00:35:36,920 --> 00:35:40,180 Y gwirionedd, fodd bynnag, yw, rydych weithiau rhoi'r gorau i nodweddion o ganlyniad. 747 00:35:40,180 --> 00:35:43,860 Efallai eich bod wedi dewis cynnyrch oherwydd 'i' got nodweddion gwerth ychwanegol hyn, 748 00:35:43,860 --> 00:35:46,610 ac rydych yn unig yn awr nid eu defnyddio yn ymwybodol. 749 00:35:46,610 --> 00:35:51,630 >> Ac yn anecdotaidd, rhan fwyaf o gwmnïau yn tueddu byth i symud i ffwrdd oddi wrth eu cronfa ddata. 750 00:35:51,630 --> 00:35:54,002 Felly, er bod hwn yn braf cael nodwedd, y realiti 751 00:35:54,002 --> 00:35:55,960 yw, os ydych yn atgyweirio eich cronfa ddata, rydych yn 752 00:35:55,960 --> 00:35:59,890 yn ôl pob tebyg gan wneud tusw o newidiadau eraill beth bynnag, nad ydych yn ei wneud o reidrwydd 753 00:35:59,890 --> 00:36:01,360 Mae angen i ragweld hynny. 754 00:36:01,360 --> 00:36:03,720 Felly mae'n gellid dadlau dros-lunio y broblem, 755 00:36:03,720 --> 00:36:05,670 ond mae'n wir yn dibynnu ar y cyd-destun. 756 00:36:05,670 --> 00:36:09,960 Ond mewn theori, SQL yn cael ei rannu ar draws cynnyrch amrywiol hyn. 757 00:36:09,960 --> 00:36:11,560 cwestiynau yn dda iawn. 758 00:36:11,560 --> 00:36:12,272 Yeah. 759 00:36:12,272 --> 00:36:13,147 >> GYNULLEIDFA: [Anghlywadwy] 760 00:36:13,147 --> 00:36:17,820 761 00:36:17,820 --> 00:36:21,480 >> DAVID Malan: Yeah, felly gallwch feddwl cronfa ddata 762 00:36:21,480 --> 00:36:25,020 yn unig yw gweinyddwr, ar ddiwedd y y dydd, ac y tu mewn o hynny gweinydd 763 00:36:25,020 --> 00:36:28,670 yn criw cyfan o tablau, rhesi a cholofnau. 764 00:36:28,670 --> 00:36:33,410 A phan fyddwch yn anfon ymholiad fel hyn oddi wrth eich rhaglen, eich gwefan, 765 00:36:33,410 --> 00:36:39,340 a ysgrifennwyd yn Java, Ruby, Python, beth bynnag, y gweinydd yn derbyn gorchymyn hwn 766 00:36:39,340 --> 00:36:41,660 a'i ddehongli mewn llythrennol yr un ffordd 767 00:36:41,660 --> 00:36:43,660 rydym yn trafod yn gynharach gyda ieithoedd dehongli, 768 00:36:43,660 --> 00:36:47,333 ac yna perfformio rhywfaint o weithredu ar sero neu fwy o resi yn sero neu fwy o dablau. 769 00:36:47,333 --> 00:36:48,208 GYNULLEIDFA: [Anghlywadwy] 770 00:36:48,208 --> 00:36:53,540 771 00:36:53,540 --> 00:36:55,070 >> DAVID Malan: Yn union, yn union. 772 00:36:55,070 --> 00:36:58,450 Felly mae'r pseudocode am rywbeth fel y gallai hynny fod hwn. 773 00:36:58,450 --> 00:37:02,450 Yn eich ffeil PHP neu'ch ffeil Python neu eich ffeil Java, 774 00:37:02,450 --> 00:37:09,210 byddai gennych cod pseudocode, neu blociau Scratch-fel fel, pe ymweliadau defnyddiwr 775 00:37:09,210 --> 00:37:19,870 acme.com/register~~V am y tro cyntaf, yna rhowch i mewn i ddefnyddwyr ac yn y blaen. 776 00:37:19,870 --> 00:37:22,619 A byddem drosi hyn i mwy o cod concrid yn y diwedd. 777 00:37:22,619 --> 00:37:24,660 Ond mewn gwirionedd, yr ydym i gyd wedi blociau adeiladu yma, 778 00:37:24,660 --> 00:37:27,680 hyd yn oed er ein bod yn sgipio rhai o'r camau gweithredu. 779 00:37:27,680 --> 00:37:31,560 >> Felly, gadewch i mi ddod o hyd i fai â'r hyn yr ydym rhyfeddol a wnaeth ychydig funudau'n ôl. 780 00:37:31,560 --> 00:37:36,470 Yr ydych wedi creu 'n bert tabl cyflawn ar gyfer defnyddwyr. 781 00:37:36,470 --> 00:37:38,920 Rhaid cyfaddef, gallem weithredu mewn ychydig o ffyrdd gwahanol, 782 00:37:38,920 --> 00:37:43,030 ond yr ydych wedi arwain ni mewn gwirionedd i lawr y path-- a dywedaf wrthych, 783 00:37:43,030 --> 00:37:48,080 ond mae'n debyg fy fault-- o deg gweithredu cronfa ddata aneffeithlon. 784 00:37:48,080 --> 00:37:49,950 Dyw hi ddim yn normaleiddio. 785 00:37:49,950 --> 00:37:52,320 >> Ac erbyn normaleiddio wyf yn ei olygu mae yn mynd i fod, 786 00:37:52,320 --> 00:37:57,380 dros gyfnod o amser, yn diswyddo sylweddol, ac felly aneffeithlonrwydd, 787 00:37:57,380 --> 00:38:00,210 sy'n wastraff o le. 788 00:38:00,210 --> 00:38:05,650 Yn seiliedig ar dim ond yr hyn a welwch yma, gall ydych yn rhagweld ble gwastraff hwn o ofod 789 00:38:05,650 --> 00:38:08,710 yn mynd i ddod o, dros gyfnod o amser, fel gofrestru mwy a mwy o ddefnyddwyr 790 00:38:08,710 --> 00:38:10,860 ar gyfer eich gwefan? 791 00:38:10,860 --> 00:38:13,047 Pa ddata a allai ddod yn ddi-waith? 792 00:38:13,047 --> 00:38:19,084 793 00:38:19,084 --> 00:38:20,940 >> GYNULLEIDFA: [Anghlywadwy] 794 00:38:20,940 --> 00:38:22,686 >> DAVID Malan: Pam ydych chi'n ei olygu hynny? 795 00:38:22,686 --> 00:38:23,561 GYNULLEIDFA: [Anghlywadwy] 796 00:38:23,561 --> 00:38:32,180 797 00:38:32,180 --> 00:38:32,930 DAVID Malan: Yeah. 798 00:38:32,930 --> 00:38:35,622 A gadewch i ni dybio at y dibenion heddiw fod hynny'n wir. 799 00:38:35,622 --> 00:38:38,330 Troi allan, ac rydym wedi dysgu hwn y ffordd galed, nid yw hynny'n wir. 800 00:38:38,330 --> 00:38:41,670 Rhywsut dinasoedd lluosog, rywsut, yr un cod zip, 801 00:38:41,670 --> 00:38:43,390 sy'n torri hwn greddf gwych. 802 00:38:43,390 --> 00:38:46,180 Ond gadewch i ni dybio bod hynny'n wir, oherwydd ei fod yn bron bob amser yn wir. 803 00:38:46,180 --> 00:38:51,390 Felly mae'n debyg bod cod zip yw gysylltiedig bob amser gyda yr un ddinas 804 00:38:51,390 --> 00:38:53,600 a wladwriaeth, sy'n fath o dybiaeth resymol, 805 00:38:53,600 --> 00:38:54,840 ond anghywir, mae'n troi allan. 806 00:38:54,840 --> 00:38:57,310 Ond yn dybiaeth resymol ar gyfer dibenion heddiw. 807 00:38:57,310 --> 00:39:01,650 >> Yna mae'n debyg fy mod yn byw yng Nghaergrawnt, MA, yn ôl y tabl defnyddiwr hwn, a 808 00:39:01,650 --> 00:39:04,100 ac mae'n debyg bod Lauren Scully yn byw yn Cambridge, MA, 809 00:39:04,100 --> 00:39:06,120 ac mae'n debyg bod Kareem byw yn Cambridge, MA, 810 00:39:06,120 --> 00:39:10,400 a Arwa yn byw yng Nghaergrawnt, MA, mae pob un ohonom yn 02138. 811 00:39:10,400 --> 00:39:15,890 Pam yr ydym yn cofio Caergrawnt, MA, 02138 gyfer pob pedwar ohonom? 812 00:39:15,890 --> 00:39:18,903 Beth ddylai ddigon i'w gofio? 813 00:39:18,903 --> 00:39:20,249 >> GYNULLEIDFA: [Anghlywadwy] 814 00:39:20,249 --> 00:39:21,540 DAVID Malan: Dim ond y cod zip. 815 00:39:21,540 --> 00:39:25,080 Dim ond bod yn bodoli 02138, oherwydd eich bod yn gwybod yr hyn y gallem ei wneud? 816 00:39:25,080 --> 00:39:32,650 gallem gael ychydig ffansi yma ac dros yma, diffinio tabl arall 817 00:39:32,650 --> 00:39:35,850 lle mae hyn yn mynd i fod y enw, mae hyn yn mynd i fod y math, 818 00:39:35,850 --> 00:39:38,840 mae hyn yn mynd i fod y hyd, ac o hyn ymlaen, rwy'n 819 00:39:38,840 --> 00:39:42,900 mynd i alw hyn yn fy mwrdd dinasoedd. 820 00:39:42,900 --> 00:39:47,011 Cafodd hyn ei alw, o gwrs, fy mwrdd i ddefnyddwyr. 821 00:39:47,011 --> 00:39:49,885 Ac felly beth ddylwn i ei roi dros yma am fy mwrdd dinasoedd, yn eich barn chi? 822 00:39:49,885 --> 00:39:53,605 823 00:39:53,605 --> 00:39:54,535 >> GYNULLEIDFA: [Anghlywadwy] 824 00:39:54,535 --> 00:39:55,930 >> DAVID Malan: Yeah. 825 00:39:55,930 --> 00:40:01,440 Felly zip a wladwriaeth a dinas. 826 00:40:01,440 --> 00:40:05,350 Ac felly y math yma, byddwn yn dweud mae hyn yn mynd i fod yn torgoch 5 eto, 827 00:40:05,350 --> 00:40:06,750 yn amodol ar y ddadl o gynharach. 828 00:40:06,750 --> 00:40:14,810 Bydd hwn yn enum, efallai fel o'r blaen, bydd a dinas yn varchar 50. 829 00:40:14,810 --> 00:40:17,960 Ac felly yn awr beth ydw i'n ei gael i ddileu o'r tabl hwn 830 00:40:17,960 --> 00:40:21,995 i gael gwared ar y aneffeithlonrwydd? 831 00:40:21,995 --> 00:40:23,100 >> GYNULLEIDFA: [Anghlywadwy] 832 00:40:23,100 --> 00:40:23,850 DAVID Malan: Nice. 833 00:40:23,850 --> 00:40:30,239 Wladwriaeth a dinas yn mynd i ffwrdd, felly dwi wedi nawr dileu yr aneffeithlonrwydd potensial 834 00:40:30,239 --> 00:40:33,280 i gofio redundantly, Caergrawnt, MA, Cambridge, MA, Cambridge, MA, 835 00:40:33,280 --> 00:40:35,712 Cambridge, MA, a fydd, gobeithio, yn byth yn mynd i newid. 836 00:40:35,712 --> 00:40:37,670 A hyd yn oed os yw'n gwneud hynny, mae'n minorly blino, yn awr 837 00:40:37,670 --> 00:40:39,750 bod rhaid i mi newid mewn rhesi lluosog, 838 00:40:39,750 --> 00:40:43,770 tra yma, gallwn jyst ei newid mewn un lle. 839 00:40:43,770 --> 00:40:46,890 >> Nawr beth y fasnach-off, efallai? 840 00:40:46,890 --> 00:40:48,020 Roedd hyn yn super gyfleus. 841 00:40:48,020 --> 00:40:50,730 Wedi cael fy holl ddata 'n glws at ei gilydd. 842 00:40:50,730 --> 00:40:53,644 Ond yr hyn sy'n amlwg yn yr achos yn awr? 843 00:40:53,644 --> 00:40:55,684 >> GYNULLEIDFA: [Anghlywadwy] 844 00:40:55,684 --> 00:40:58,100 DAVID Malan: Yn union, ac rwy'n falch i chi ei ddefnyddio y gair yn ymuno, 845 00:40:58,100 --> 00:41:01,320 oherwydd dyna mewn gwirionedd y gair allweddol, ym myd cronfeydd data perthynol 846 00:41:01,320 --> 00:41:05,270 yn SQL, ei fod yn air go iawn i chi Efallai deipio neu o leiaf gyfleu. 847 00:41:05,270 --> 00:41:09,280 Ac yn wir, yr hyn sydd gennym yn awr i wneud i ddewis gwybodaeth lawn Sant yn 848 00:41:09,280 --> 00:41:19,700 rhywbeth fel seren dewiswch o defnyddwyr, yn ymuno â dinasoedd, on-- ac yn awr 849 00:41:19,700 --> 00:41:24,010 Rydw i'n mynd i jyst symud i ail linell fel bod y users.zip fits-- hafal 850 00:41:24,010 --> 00:41:34,570 cities.zip, lle mae users.ID yn dychwelyd 1. 851 00:41:34,570 --> 00:41:35,550 >> Felly beth sy'n mynd ymlaen? 852 00:41:35,550 --> 00:41:38,970 Mae'n hyll edrych, ond gallwch math o ei ddarllen o'r chwith i'r dde, top i'r gwaelod. 853 00:41:38,970 --> 00:41:41,030 Dewiswch seren gan ddefnyddwyr yr un fath ag o'r blaen, 854 00:41:41,030 --> 00:41:42,930 ond nid yw'n gan ddefnyddwyr, fel y cyfryw. 855 00:41:42,930 --> 00:41:45,910 Mae'n gan ddefnyddwyr yn ymuno â dinasoedd. 856 00:41:45,910 --> 00:41:48,520 Beth ydw i'n ymuno y ddau tablau ar? 857 00:41:48,520 --> 00:41:51,820 Wel, mae'n debyg, y tablau defnyddwyr zip cae, 858 00:41:51,820 --> 00:41:54,810 ac y cyfnod hwn yn unig yw arbennig cystrawen i fynegi y syniad hwnnw, 859 00:41:54,810 --> 00:41:58,130 ac mae hyn yn y tablau dinasoedd sip maes. 860 00:41:58,130 --> 00:42:01,580 Yr wyf am y ddau i fod yn gyfartal, ond yr wyf am i ddewis yn y pen draw 861 00:42:01,580 --> 00:42:06,280 dim ond rhesi hynny lle ID yn y tabl defnyddiwr 862 00:42:06,280 --> 00:42:08,730 yn hafal i 1, a oedd yn digwydd bod mi. 863 00:42:08,730 --> 00:42:11,781 >> A dim ond i fod yn glir, yn rhaglennydd, fel arfer pan 864 00:42:11,781 --> 00:42:14,780 hardcode rhywbeth fel rhif 1, oherwydd fel arall y gwefan yn unig 865 00:42:14,780 --> 00:42:17,630 yn cefnogi David neu'r defnyddiwr yn gyntaf iawn, byddwch 866 00:42:17,630 --> 00:42:20,720 Byddai yn lle hynny yn ei wneud rhywbeth fel ID, lle 867 00:42:20,720 --> 00:42:22,510 mae hyn yn cynrychioli amrywiol, rhywbeth y 868 00:42:22,510 --> 00:42:26,210 Gall newid dros amser, yn debyg mewn ysbryd at yr hyn a ddywedais yn gynharach 869 00:42:26,210 --> 00:42:28,080 â'r mathau hyn o bachau. 870 00:42:28,080 --> 00:42:30,396 Ond am nawr byddwn yn jyst hardcode fel 1. 871 00:42:30,396 --> 00:42:31,520 Ac felly beth yw ystyr hyn? 872 00:42:31,520 --> 00:42:35,100 Wel, yn ffordd braf i ddychmygu mae hyn yn os law hwn yw'r tabl defnyddwyr, 873 00:42:35,100 --> 00:42:38,090 ac â llaw hwn yw'r sipiau bwrdd, rydym yn fath o finding-- 874 00:42:38,090 --> 00:42:41,330 ac flaenau fy mysedd yn zip dros yma, ac flaenau fy mysedd 875 00:42:41,330 --> 00:42:43,740 dyma zip, rydych yn math o cyd-gloi ei 876 00:42:43,740 --> 00:42:47,950 fel eich bod yn mynd yn ôl y deillio tabl gwreiddiol, gan wirioneddol ymuno 877 00:42:47,950 --> 00:42:49,590 y ddau dabl ar y cae cyffredin. 878 00:42:49,590 --> 00:42:50,840 Ac nid oes rhaid iddo fod yn zip. 879 00:42:50,840 --> 00:42:54,460 Gallai fod yn y rhan fwyaf o unrhyw beth arall, ond zip yn braf, oherwydd un, mae'n fyr, 880 00:42:54,460 --> 00:42:56,470 dau, mae bob amser y un hyd, felly does 881 00:42:56,470 --> 00:43:02,270 effeithlonrwydd go iawn i'r hyn Olivier a gynigir yma 882 00:43:02,270 --> 00:43:05,200 gyda ffactoreiddio allan i'r sip, ac [Anghlywadwy] yn cynnig ein bod yn cael gwared 883 00:43:05,200 --> 00:43:07,110 o ddinas a gwladwriaethau. 884 00:43:07,110 --> 00:43:11,370 >> Felly, mae hyn yw'r broses a elwir yn normaleiddio. 885 00:43:11,370 --> 00:43:14,171 Unrhyw gwestiynau ar hynny? 886 00:43:14,171 --> 00:43:16,170 Wel gadewch i mi nodi dyma'r math o bethau, 887 00:43:16,170 --> 00:43:19,202 hyd yn oed er 'i' lefel isel-deg, drafodaeth hon, y byddech yn meddwl 888 00:43:19,202 --> 00:43:20,910 eich bod yn fath o gael ar goll yn y chwyn, 889 00:43:20,910 --> 00:43:26,690 mae hyn yn amlygiad o digonedd cyfle i ddatblygwyr i fod yn ddrwg. 890 00:43:26,690 --> 00:43:29,600 Ac yn wir, hyd yn oed pan fyddwn yn, yn cyrsiau Rydw i wedi eu dysgu, pan rydym wedi cael, 891 00:43:29,600 --> 00:43:32,290 er enghraifft, dibrofiad rhaglenwyr israddedig 892 00:43:32,290 --> 00:43:35,920 adeiladu gwefannau, ar yr olwg gyntaf, gallai'r gwefannau edrych yn wych. 893 00:43:35,920 --> 00:43:38,280 Ac mae ganddynt bob un o'r ymarferoldeb yr ydym yn gofyn, 894 00:43:38,280 --> 00:43:40,650 y datblygwyr yn gwneud gwaith da. 895 00:43:40,650 --> 00:43:43,370 >> Ond nid ydynt o reidrwydd yn gwybod digon am ddylunio cronfa ddata 896 00:43:43,370 --> 00:43:46,680 neu nad oeddent yn meddwl yn galed digon am y mathau o ddata 897 00:43:46,680 --> 00:43:49,220 a'r mathau o ddefnyddwyr y gwefan yn mynd i gael, 898 00:43:49,220 --> 00:43:53,240 ac yr ydym yn dod o hyd, yna, chwe mis yn ddiweddarach, ar ôl iddynt wedi graddio neu'n symud ymlaen, 899 00:43:53,240 --> 00:43:56,016 hynny damn ei, ein gwefan yn wirioneddol, wirioneddol araf. 900 00:43:56,016 --> 00:43:58,890 Ac nid wyf hyd yn oed yn siarad am gael miliynau neu filoedd o ddefnyddwyr. 901 00:43:58,890 --> 00:44:02,580 Yr wyf yn golygu ychydig gannoedd o ddefnyddwyr ar y campws, pob un ohonynt yn hoffi, er enghraifft, 902 00:44:02,580 --> 00:44:04,870 siopa am gyrsiau yn yr un pryd, maen nhw'n 903 00:44:04,870 --> 00:44:07,010 defnyddio'r catalog cwrs cais grybwyllais 904 00:44:07,010 --> 00:44:10,410 a'r peth yn mynd yn wir yn araf oherwydd nad oedd unrhyw mynegeion. 905 00:44:10,410 --> 00:44:13,740 Nid oedd unrhyw sêr coch, felly i siarad, neu os nad oedd gennym o reidrwydd 906 00:44:13,740 --> 00:44:17,690 hystyried allan data cyffredin i cael rhywfaint o arbedion o le. 907 00:44:17,690 --> 00:44:21,880 >> Ac felly pan fetio datblygwr neu berson cronfa ddata neu debyg, 908 00:44:21,880 --> 00:44:25,864 y mathau o gwestiynau i feddwl drwy hyd yn oed, wrth adolygu cod rhywun, 909 00:44:25,864 --> 00:44:28,530 i ddweud, nid o reidrwydd yn edrych trwy eu holl cod, ond yn dweud, 910 00:44:28,530 --> 00:44:30,154 gadewch i ni edrych drwy'r tablau gronfa ddata. 911 00:44:30,154 --> 00:44:31,150 Beth ydych chi'n storio? 912 00:44:31,150 --> 00:44:33,941 Ac yna i ddweud, yn dda, arhoswch funud, pam yr ydych yn defnyddio cyfanrif? 913 00:44:33,941 --> 00:44:36,224 Beth os oes gennym 4 biliwn a a 1 o'r rhesi hyn? 914 00:44:36,224 --> 00:44:38,140 A mathau hyn o cwestiynau yn gyfle 915 00:44:38,140 --> 00:44:40,170 i fath o gwthio yn ôl ac cael ymdeimlad o, lle 916 00:44:40,170 --> 00:44:42,300 os nad ydych yn gyfforddus yn gwneud iddo, cael rhywun mwy technegol 917 00:44:42,300 --> 00:44:45,425 ofyn y cwestiynau hyn, ai peidio mae'r person yn gwybod yn iawn eu stwff. 918 00:44:45,425 --> 00:44:47,890 Ac mae hyn yn y math o stwff, hefyd, bod pobl 919 00:44:47,890 --> 00:44:50,540 ar y rhyngrwyd sydd yn hunan-ddysgedig, efallai 920 00:44:50,540 --> 00:44:53,920 dysgu yn llai aml, oherwydd eich bod nid ydynt o reidrwydd yn dod ar ei draws 921 00:44:53,920 --> 00:44:56,630 cymaint, oherwydd gallwch gael y gronfa ddata i fyny a rhedeg, 922 00:44:56,630 --> 00:44:58,880 ond oni bai eich bod wedi darllen i fyny ar sesiynau tiwtorial neu wedi bod 923 00:44:58,880 --> 00:45:01,880 gwybod am normaleiddio cronfa ddata a mynegeio a pherfformiad, 924 00:45:01,880 --> 00:45:04,255 mae'r rhain yn y math o bethau sydd yn mynd i brifo chi. 925 00:45:04,255 --> 00:45:07,480 Ac efallai y byddwch yn meddwl, neu beiriannydd drwg Efallai dweud, oh, yn dda, tâl yr ydym yn well 926 00:45:07,480 --> 00:45:09,600 ar gyfer cronfa ddata mwy neu gronfa ddata yn gyflymach 927 00:45:09,600 --> 00:45:13,360 neu dim ond taflu arian ar hyn, raddfa fertigol, nid o reidrwydd felly. 928 00:45:13,360 --> 00:45:16,920 Os byddwch yn mynd in-- a gallwch fynd i mewn ar ôl y mynegeion fact-- ac i greu, 929 00:45:16,920 --> 00:45:20,320 a gallai fod yn cymryd ychydig oriau ar gyfer yr cronfa ddata i adeiladu y data newydd 930 00:45:20,320 --> 00:45:24,100 Strwythur yr oeddwn cyfeiriwyd ato'n gynharach, gallwch barhau i atgyweiria hon ar ôl y ffaith, 931 00:45:24,100 --> 00:45:26,180 mai dyma lle rydych dechrau gwahaniaethu 932 00:45:26,180 --> 00:45:28,830 dylunwyr da o ddrwg dylunwyr, nid yn unig yn esthetig, 933 00:45:28,830 --> 00:45:32,972 ond mae perfformiad-ddoeth hefyd. 934 00:45:32,972 --> 00:45:33,555 Unrhyw gwestiynau? 935 00:45:33,555 --> 00:45:36,420 936 00:45:36,420 --> 00:45:37,480 Na? 937 00:45:37,480 --> 00:45:41,980 Felly, ar gyfer NoSQL, sef y fath arall o gronfa ddata y mae y crybwyllais yn gynharach, 938 00:45:41,980 --> 00:45:43,490 Nid oes rhaid i chi rhesi a cholofnau. 939 00:45:43,490 --> 00:45:47,000 Yn lle hynny, byddai'n rhaid i chi rywbeth sy'n edrych ychydig yn fwy fel hyn. 940 00:45:47,000 --> 00:45:48,630 Rydw i'n mynd i ddefnyddio cystrawen cyffredin. 941 00:45:48,630 --> 00:45:51,270 bresys Curly yn digwydd i yn cael ei ddefnyddio yma cryn dipyn. 942 00:45:51,270 --> 00:45:55,400 Efallai eich bod wedi rywbeth fel enw cyntaf yw David, 943 00:45:55,400 --> 00:46:00,180 allai fod gennych diwethaf enw i yw Malan, dyfyniadau, 944 00:46:00,180 --> 00:46:07,530 allai fod gennych ID yw-- esgusodwch fi, ID whoops-- yw 1, 945 00:46:07,530 --> 00:46:13,410 e-bost yw malan@harvard.edu, ac ni wnaf trafferthu teipio allan y gweddill, ac yna 946 00:46:13,410 --> 00:46:14,380 rhai pethau eraill. 947 00:46:14,380 --> 00:46:17,380 >> Mewn geiriau eraill, mae hyn yn cynrychiolaeth testunol 948 00:46:17,380 --> 00:46:20,720 o'r hyn y byddem yn galw ar y cyfan gwrthrych mewn rhaglen gyfrifiadurol. 949 00:46:20,720 --> 00:46:26,079 A gwrthrych yn gyffredinol yn unig casgliad o barau gwerth allweddol. 950 00:46:26,079 --> 00:46:27,370 Felly unwaith eto, mae hyn yn thema gyson. 951 00:46:27,370 --> 00:46:30,440 Gwelsom parau gwerth allweddol yn HTML, gwelsom parau gwerth allweddol yn awr 952 00:46:30,440 --> 00:46:34,020 yng nghyd-destun cronfeydd data, ac yr ydym Gwelodd parau gwerth allweddol yn y cyd-destun 953 00:46:34,020 --> 00:46:35,970 o, yr wyf yn meddwl, iaith yn gynharach heddiw. 954 00:46:35,970 --> 00:46:36,890 Cadw yn dod i fyny. 955 00:46:36,890 --> 00:46:39,620 Ac yn wir, dyna 'n sylweddol pa ddata boils i lawr i, 956 00:46:39,620 --> 00:46:44,240 data a metadata, neu werthoedd ac allweddi, yn y drefn honno. 957 00:46:44,240 --> 00:46:47,430 >> Felly di-berthynol cronfa ddata, sy'n seiliedig ar rywbeth 958 00:46:47,430 --> 00:46:50,680 ar wrthrychau, ble 'ch jyst yn clystyru popeth at ei gilydd ac yn ei roi 959 00:46:50,680 --> 00:46:55,640 mewn cof, byddai arfer yn llun fel, neu'n meddwl am, gan fod hyn. 960 00:46:55,640 --> 00:47:00,500 A byddaf yn gadael hynny yn awr fel fath o ymagwedd amgen. 961 00:47:00,500 --> 00:47:03,750 Ac nid un o reidrwydd yn well na'r llall. 962 00:47:03,750 --> 00:47:07,310 Yn wir, yn fawr iawn yn ffasiynol y dyddiau hyn yn cael eu systemau cronfa ddata 963 00:47:07,310 --> 00:47:11,942 fel MongoDB a Redis ac ychydig offer o'r fath eraill, ar gael am ddim, 964 00:47:11,942 --> 00:47:13,400 ond maent yn gynyddol yn en Vogue. 965 00:47:13,400 --> 00:47:18,850 Yn rhannol oherwydd eu bod yn cynnig ychwanegol nodweddion dros ymagweddau tabl hyn, 966 00:47:18,850 --> 00:47:20,850 ond hefyd oherwydd eu bod yn ychydig yn haws i'w defnyddio, 967 00:47:20,850 --> 00:47:24,099 oherwydd nad oes rhaid i chi feddwl mor galed am lawer o benderfyniadau cynllunio hyn. 968 00:47:24,099 --> 00:47:25,970 Felly pwyntiau cadarnhaol a negyddol. 969 00:47:25,970 --> 00:47:29,740 Felly sylweddoli mae yna opsiynau tu hwnt i'r hyn rydym yn unig treulio amser ar. 970 00:47:29,740 --> 00:47:32,310 >> Felly gadewch i ni wneud hyn. 971 00:47:32,310 --> 00:47:37,870 Gadewch i bontio ychydig yn ôl yn awr i raglenni ar y we, 972 00:47:37,870 --> 00:47:40,470 fel ein bod yn fath o gasgliad heddiw gyda rhywbeth 973 00:47:40,470 --> 00:47:43,930 mae hynny'n ychydig o ymarferol, llenwi mewn rhai bylchau o ddoe. 974 00:47:43,930 --> 00:47:45,340 Gadewch i mi fynd at hyn yn gyntaf. 975 00:47:45,340 --> 00:47:49,310 Felly dwyn i gof bod ddoe roedd gennym rai HTML canonaidd 976 00:47:49,310 --> 00:47:55,110 tudalennau a oedd i ddechrau, dim ond HTML, ac yna yn ail roedd gan CSS, 977 00:47:55,110 --> 00:47:56,620 taflenni arddull rhaeadrol. 978 00:47:56,620 --> 00:47:59,830 Mae hwn yn tag newydd nad wnaethom gweld ddoe, neu fynd ar ôl, 979 00:47:59,830 --> 00:48:01,490 hyn a elwir yn tag sgript. 980 00:48:01,490 --> 00:48:05,830 >> Troi allan y gallwch chi mewn gwirionedd yn ymgorffori iaith o'r enw Javascript yn eich gwe 981 00:48:05,830 --> 00:48:08,310 dudalen a gwneud eich gwe tudalennau gwneud rhywbeth. 982 00:48:08,310 --> 00:48:09,710 Felly beth ddylwn i ei olygu wrth hynny? 983 00:48:09,710 --> 00:48:12,630 Wel, gadewch i mi fynd yn ei flaen a dim ond benthyg cod hwn am eiliad. 984 00:48:12,630 --> 00:48:15,860 Rydw i'n mynd i fynd i mewn i Cloud9, nid oes angen i fynd yno eich hunain eto, 985 00:48:15,860 --> 00:48:21,350 ac rwy'n mynd i alw alert.HTML hwn. 986 00:48:21,350 --> 00:48:23,650 Rydw i'n mynd i bastio yn fy ffeil fan hyn. 987 00:48:23,650 --> 00:48:32,070 A dim ond i egluro yr hyn yr wyf wedi ei wneud, gadewch i mi fynd i'r cyfeiriad hwn a mynd i rybuddio, 988 00:48:32,070 --> 00:48:33,870 a byddwch yn gweld y Byd Helo. 989 00:48:33,870 --> 00:48:35,440 >> Ond mae hyn yn fath o underwhelming. 990 00:48:35,440 --> 00:48:37,410 Rwyf am wneud rhywbeth ychydig yn wahanol. 991 00:48:37,410 --> 00:48:40,610 Felly, yr wyf i'n mynd i wneud hyn mewn gwirionedd. 992 00:48:40,610 --> 00:48:43,820 Rydw i'n mynd i fynd i mewn yma e, ac mewn rhwng fy tagiau sgript, 993 00:48:43,820 --> 00:48:53,460 dweud yn effro ( 'helo, byd'); felly rhybudd mae'n ychydig yn flêr, ond mae gen i HTML, 994 00:48:53,460 --> 00:48:56,180 tu mewn sydd yn iaith o'r enw JavaScript, 995 00:48:56,180 --> 00:48:59,420 ac mae hyn yn hyn a elwir yn swyddogaeth galw neu weithdrefn galw. 996 00:48:59,420 --> 00:49:04,500 Mae hon yn ferf, yn llythrennol, yn yr achos hwn, ac yr wyf yn galw ar ymarferoldeb cod 997 00:49:04,500 --> 00:49:06,310 bod rhywun arall yn ysgrifennu. 998 00:49:06,310 --> 00:49:09,630 >> Er mwyn i swyddogaeth yn effro, felly gadewch i ni fynd i'r dudalen hon 999 00:49:09,630 --> 00:49:14,046 yn awr a chliciwch reload, ac yn awr ydych weld ychydig o ryngweithio. 1000 00:49:14,046 --> 00:49:15,420 Mae'n fath o hen ysgol ac yn hyll. 1001 00:49:15,420 --> 00:49:18,580 Mae'r math hwn o eich atgoffa o'r pop-ups, efallai, a fu 1002 00:49:18,580 --> 00:49:22,030 ond yr oedd yn gwneud rhywbeth yn ychydig yn fwy rhaglennol. 1003 00:49:22,030 --> 00:49:26,940 >> Felly yn fwy na hynny, gadewch i ni wneud rhywbeth mwy diddorol. 1004 00:49:26,940 --> 00:49:30,980 Gadewch i mi fynd i mewn yma a chael gwared o hyn. 1005 00:49:30,980 --> 00:49:33,840 Ac yr wyf i'n mynd i fynd yn ei flaen a greu ffurf fel y gwnaethom ddoe. 1006 00:49:33,840 --> 00:49:34,840 A dweud y gwir, eich bod yn gwybod beth? 1007 00:49:34,840 --> 00:49:37,350 Rydw i'n mynd i fynd i mewn i google.html, yr ydym 1008 00:49:37,350 --> 00:49:43,027 dechrau ar ddoe, a oedd yn edrych fel hwn, trwy yr ydym yn chwilio am gath 1009 00:49:43,027 --> 00:49:45,360 Ond sylwi mae fath o nam yn y fersiwn gyfredol. 1010 00:49:45,360 --> 00:49:49,770 Mae'n gweithio ar gyfer cathod, ond mae'n debyg bod Dydw i ddim yn cydweithredu ac yr wyf deipio dim byd, 1011 00:49:49,770 --> 00:49:53,290 ac yr wyf yn syml yn chliciwch ar cyflwyno. 1012 00:49:53,290 --> 00:49:54,540 Dyna fath o ymddygiad 'n annaearol. 1013 00:49:54,540 --> 00:49:57,300 Cymerodd fi i'r gwir Google, nid oedd yn rhoi neges gwall mi. 1014 00:49:57,300 --> 00:50:00,590 Hoffwn i ddweud wrth y defnyddiwr mae angen i chi roi gwerth i ni. 1015 00:50:00,590 --> 00:50:01,780 >> Felly sut y gallwn wneud hyn? 1016 00:50:01,780 --> 00:50:06,790 Wel gadewch i mi fynd yn ôl i mewn i Cloud9 a gadewch i mi fynd i ben fy dudalen 1017 00:50:06,790 --> 00:50:11,980 ac ychwanegu tag sgript fel hyn, lle Rydw i'n mynd i deipio rhywfaint cod JavaScript. 1018 00:50:11,980 --> 00:50:15,420 Ac yr wyf i'n mynd i wneud y canlynol. 1019 00:50:15,420 --> 00:50:22,910 Os (document.getelementByID-- ac adalw ein bod yn siarad am hynny yn gynharach, 1020 00:50:22,910 --> 00:50:23,960 swyddogaeth honno. 1021 00:50:23,960 --> 00:50:25,310 Pa ID ydw i am ei gael? 1022 00:50:25,310 --> 00:50:33,050 Rwyf am gael q, a dw i'n mynd i dyweder hafal dim byd, fel this-- 1023 00:50:33,050 --> 00:50:38,220 mewn gwirionedd yn gadael i mi ddefnyddio dyfynodau dwbl yn unig ar gyfer consistency-- hafal ddim, 1024 00:50:38,220 --> 00:50:46,650 Yna effro ( "Teipiwch ymholiad") fan hyn. 1025 00:50:46,650 --> 00:50:49,200 >> Felly, yr wyf wedi hyn sy'n ymddangos i fod yn rhywbeth fel amod. 1026 00:50:49,200 --> 00:50:51,410 Rydym wedi gweld syniad cyffredinol hwn yn Scratch. 1027 00:50:51,410 --> 00:50:54,240 Mae fel un o'r rhai a pos darnau oedd yn edrych fel hyn. 1028 00:50:54,240 --> 00:50:55,780 A beth ydw i'n ei ddweud? 1029 00:50:55,780 --> 00:50:59,520 Wel, i lawr yma, yn sylwi fy mod mynd i wneud y canlynol. 1030 00:50:59,520 --> 00:51:02,790 Rydw i'n mynd i roi'r ffurflen hon maes yn nid yn unig yn enw q, a oedd yn 1031 00:51:02,790 --> 00:51:06,630 yw'r hyn yn cael ei basio i Google, ond rwy'n mynd i roi cynnig dynodwr lleol, 1032 00:51:06,630 --> 00:51:07,630 Gelwir q hefyd. 1033 00:51:07,630 --> 00:51:11,780 Ond allwn i alw unrhyw beth hwn rwy'n eisiau, Im 'jyst yn mynd i gadw pethau'n syml 1034 00:51:11,780 --> 00:51:14,570 a hefyd ei alw'n q, dim ond ar gyfer symlrwydd. 1035 00:51:14,570 --> 00:51:17,650 >> Ac yn awr yr wyf i'n mynd i wneud rhywbeth ychydig yn fwy. 1036 00:51:17,650 --> 00:51:22,600 Ar y caeau ffurflen yma, dw i'n mynd i ychwanegwch yr hyn a elwir yn trafodwr digwyddiad. 1037 00:51:22,600 --> 00:51:32,260 Ar cyflwyno, yr wyf am alw swyddogaeth o'r enw validate. 1038 00:51:32,260 --> 00:51:35,520 Nid yw hyn yn bodoli eto, mae hyn yn gair, neu y validate ferf, 1039 00:51:35,520 --> 00:51:38,560 oherwydd yr hyn yr wyf i'n mynd i wneud hyd yma yn awr yn ychwanegu ychydig o cod. 1040 00:51:38,560 --> 00:51:42,200 >> Rydw i'n mynd i ddweud validate swyddogaeth. 1041 00:51:42,200 --> 00:51:48,280 Rydw i'n mynd i indent hyn ac ychwanegu un arall Brace cyrliog yma ac un arall yma. 1042 00:51:48,280 --> 00:51:50,110 Ystyriwch beth mae hyn yn awr yn ei wneud. 1043 00:51:50,110 --> 00:51:54,210 Mae'n rhaid i mi now-- feddwl am hyn fel creu fy darn pos eich hun nad oedd yn flaenorol 1044 00:51:54,210 --> 00:51:57,440 yn bodoli, ac yr wyf wedi galw y pos darnau y darn pos dilysu. 1045 00:51:57,440 --> 00:52:01,620 Ei bwrpas mewn bywyd yw i weithredu y pedair llinell o god tu mewn iddo. 1046 00:52:01,620 --> 00:52:04,940 >> Os document.getElementByID felly gysyniadol, 1047 00:52:04,940 --> 00:52:09,380 sydd yn mynd i fynd i mewn i'r elfen, yr elfen HTML y mae ei unigryw 1048 00:52:09,380 --> 00:52:12,930 syniad yn unig q, ac yna hyd yn oed er y gystrawen yn edrych ychydig yn od, 1049 00:52:12,930 --> 00:52:16,430 hynny gyfartal yn dychwelyd yn unig yn golygu gyfartal. 1050 00:52:16,430 --> 00:52:20,950 Felly mae hynny'n golygu os yw'r elfen gyda'r dynodwr unigryw o q, pan gotten, 1051 00:52:20,950 --> 00:52:25,700 oes unrhyw werth, 'i jyst yn dychwelyd dyfyniad unquote, dim byd i mewn 'na, 1052 00:52:25,700 --> 00:52:27,170 yna beth ydw i am ei wneud? 1053 00:52:27,170 --> 00:52:29,360 Rwyf am i gweiddi ar y defnyddiwr. 1054 00:52:29,360 --> 00:52:31,710 >> Ac ni fyddwn yn mynd fanwl iawn yma. 1055 00:52:31,710 --> 00:52:32,960 Rydw i'n mynd i ddychwelyd ffug. 1056 00:52:32,960 --> 00:52:34,380 Mae hynny'n gamgymeriad. 1057 00:52:34,380 --> 00:52:38,746 Arall, yr wyf i'n mynd i ddychwelyd yn wir. 1058 00:52:38,746 --> 00:52:40,120 Hynny naill ai ei fod yn gweithio neu nad oedd. 1059 00:52:40,120 --> 00:52:41,800 Ffug neu yn wir. 1060 00:52:41,800 --> 00:52:47,820 Ac yn awr os nad oeddwn yn gwneud unrhyw gamgymeriadau, gadewch i mi yn arbed hyn ac yn ail-lwytho hyn. 1061 00:52:47,820 --> 00:52:50,940 A gadewch i mi gwirio jyst dwbl y na wnes i, mewn gwirionedd, yn gwneud unrhyw typos, 1062 00:52:50,940 --> 00:52:52,690 felly nid wyf yn codi cywilydd fy hun. 1063 00:52:52,690 --> 00:52:54,240 Gadewch i ni weld a yw hyn yn gweithio. 1064 00:52:54,240 --> 00:52:56,930 >> Felly, yn awr rwy'n mynd i deipio cathod. 1065 00:52:56,930 --> 00:52:59,421 Mae'n dal i weithio, neu waith hanner, o leiaf. 1066 00:52:59,421 --> 00:53:02,170 Nawr, gadewch i mi ail-lwytho iddo, ac yn awr yn gadael fi ceisio cyflwyno heb deipio 1067 00:53:02,170 --> 00:53:05,860 anything-- damn, mae'n torrodd. 1068 00:53:05,860 --> 00:53:06,430 Un funud. 1069 00:53:06,430 --> 00:53:09,380 1070 00:53:09,380 --> 00:53:12,660 Gadewch i mi agor y consol, [Anghlywadwy] log, ail-lwytho'r dudalen. 1071 00:53:12,660 --> 00:53:13,576 Gadewch i mi roi cynnig ar hyn eto. 1072 00:53:13,576 --> 00:53:17,000 1073 00:53:17,000 --> 00:53:17,501 O, damn iddo. 1074 00:53:17,501 --> 00:53:18,000 Anghofiais i. 1075 00:53:18,000 --> 00:53:18,630 Rwy'n gwneud typo. 1076 00:53:18,630 --> 00:53:20,760 Yr wyf yn cofio yr hyn ydyw. 1077 00:53:20,760 --> 00:53:21,350 .value. 1078 00:53:21,350 --> 00:53:27,060 Yr wyf yn bwriadu ei ddweud os yw gwerth yr elfen y mae eu ID yn q 1079 00:53:27,060 --> 00:53:29,800 yn hafal hynny, yna gweiddi ar y defnyddiwr. 1080 00:53:29,800 --> 00:53:31,870 >> Felly nawr gadewch i mi ddal fy anadl eto. 1081 00:53:31,870 --> 00:53:33,480 Yma rydym yn mynd. 1082 00:53:33,480 --> 00:53:34,130 Dyna ni. 1083 00:53:34,130 --> 00:53:35,010 Teipiwch ymholiad. 1084 00:53:35,010 --> 00:53:36,840 Felly nid yw'n adael i mi drwy. 1085 00:53:36,840 --> 00:53:40,210 Gallaf fod yn fath o chwareus gyda hyn, ac yn hytrach na gwirio am unrhyw werth, 1086 00:53:40,210 --> 00:53:46,720 Gallaf ddweud rhywbeth fel, dim mwy chwilio am cathod, 1087 00:53:46,720 --> 00:53:51,150 ac erbyn hyn gallwn jyst yn fwy chwareus gadael y chwiliad defnyddiwr ar gyfer cŵn os yw ef neu hi 1088 00:53:51,150 --> 00:53:57,490 eisiau, neu os byddaf yn mynd i mewn yma ac chwilio am cathod, yn awr ni allaf. 1089 00:53:57,490 --> 00:53:58,690 >> Felly beth yw'r prydau parod yma? 1090 00:53:58,690 --> 00:54:03,010 Felly un, rydym wedi cyflwyno i ein byd o HTML a CSS, 1091 00:54:03,010 --> 00:54:04,320 ymarferoldeb rhaglennu. 1092 00:54:04,320 --> 00:54:06,300 Gallaf mewn gwirionedd yn awr wneud penderfyniadau mewn cod. 1093 00:54:06,300 --> 00:54:10,570 Yn flaenorol, y cyfan y gallwn i ei wneud yw marcio i fyny cynnwys testunol neu gynnwys graffigol 1094 00:54:10,570 --> 00:54:13,080 ac yn dweud ei fod yn beth i edrych hoffi a ble i arddangos. 1095 00:54:13,080 --> 00:54:16,650 Nawr gall Fi 'n weithredol ofyn gwestiynau i'r dudalen we 1096 00:54:16,650 --> 00:54:20,010 a gwneud penderfyniadau yn seiliedig arno, ac yn annog y defnyddiwr 1097 00:54:20,010 --> 00:54:22,780 os bydd angen i mi gweiddi ar iddo neu iddi. 1098 00:54:22,780 --> 00:54:28,740 >> Felly gadewch i ni roi cynnig ar rywbeth ar ein hunain gyda hyn. 1099 00:54:28,740 --> 00:54:33,350 Fynd yn ei flaen, gadewch i mi agor y sleid nesaf yma, a dim ond tynnu sylw un peth. 1100 00:54:33,350 --> 00:54:37,250 Yn union fel gyda CSS, gallwn ffactor allan ein cod JavaScript i ffeil ar wahân, 1101 00:54:37,250 --> 00:54:40,660 gallwch chi ei wneud yr un peth gyda JavaScript fel gyda CSS. 1102 00:54:40,660 --> 00:54:44,520 A ydych yn defnyddio bod defnyddio ffynhonnell priodoli y tag sgript. 1103 00:54:44,520 --> 00:54:46,540 Ond ni fyddwn yn cymhlethu pethau am y tro. 1104 00:54:46,540 --> 00:54:50,440 Yn lle hynny, os gallech ewch i ni y dudalen hon, 1105 00:54:50,440 --> 00:55:02,690 but-- gadewch i mi symud o gwmpas hwn yn order-- mynd i, os ydych yn allai, y dudalen hon yma. 1106 00:55:02,690 --> 00:55:03,592 Mae'r URL yma. 1107 00:55:03,592 --> 00:55:04,550 Mae'n mewn sleidiau heddiw. 1108 00:55:04,550 --> 00:55:07,133 Efallai y bydd rhaid i chi ail-lwytho oherwydd Rwyf wedi ychwanegu un neu ddau o beth. 1109 00:55:07,133 --> 00:55:09,970 1110 00:55:09,970 --> 00:55:13,890 >> Ond mynd yno lle mae rhai posau aros. 1111 00:55:13,890 --> 00:55:16,670 A bydd hyn yn rhoi cyfle i ni, mewn cyd-destun ychydig yn fwy o hwyl, 1112 00:55:16,670 --> 00:55:20,610 i dabble gyda rhai JavaScript. 1113 00:55:20,610 --> 00:55:25,505 A phan fyddwch yn cyrraedd yno, 'N annhymerus' yn esbonio beth yn aros. 1114 00:55:25,505 --> 00:55:47,350 1115 00:55:47,350 --> 00:55:47,850 Get gwyrdd. 1116 00:55:47,850 --> 00:56:03,063 1117 00:56:03,063 --> 00:56:03,562 Gosod glas. 1118 00:56:03,562 --> 00:56:11,030 1119 00:56:11,030 --> 00:56:13,930 Setiau wyrdd, yn gosod goch. 1120 00:56:13,930 --> 00:56:19,220 1121 00:56:19,220 --> 00:56:20,220 Wps. 1122 00:56:20,220 --> 00:56:22,330 Mae'n ddrwg gennym. 1123 00:56:22,330 --> 00:56:27,630 >> Mae hyn yn y maint ein dogfennau ar gyfer yr her hon. 1124 00:56:27,630 --> 00:56:29,920 Ac mae hyn yn mynd i weithio fel a ganlyn. 1125 00:56:29,920 --> 00:56:33,340 Felly, yr hyn yr ydych yn ei gael ar hyn dudalen yn criw cyfan 1126 00:56:33,340 --> 00:56:38,024 o bosau ddelwedd gan buddy ym Mhrifysgol Stanford. 1127 00:56:38,024 --> 00:56:41,190 Felly, yr hyn yr ydych yn ei weld yma bron math o un o bosau llygad hud hynny, 1128 00:56:41,190 --> 00:56:43,815 ond os ydych yn unig yn syllu arno, dim byd yn mynd i pop allan ar chi. 1129 00:56:43,815 --> 00:56:46,000 Yn hytrach, mae rhywbeth yn cuddio yn y ddelwedd hon. 1130 00:56:46,000 --> 00:56:47,790 Ac mae'n cuddio yn y ffordd ganlynol. 1131 00:56:47,790 --> 00:56:51,740 Delweddau, fel y gwyddoch, yn gallu bod gyfansoddwyd o ddim ond tri lliw. 1132 00:56:51,740 --> 00:56:53,346 Mae rhai coch, mae rhai glas, ac mae rhai gwyrdd. 1133 00:56:53,346 --> 00:56:55,220 A gallwn wneud yr holl lliwiau yn yr enfys 1134 00:56:55,220 --> 00:56:57,570 trwy gymysgu y rhai tri lliw rywsut. 1135 00:56:57,570 --> 00:57:01,940 >> Felly, mae hyn yn edrych yn wyrdd yn bennaf ac glas, ond fel Nick dweud yma, 1136 00:57:01,940 --> 00:57:04,060 y ddelwedd hon pos haearn yn pos. 1137 00:57:04,060 --> 00:57:06,780 Mae'n cynnwys delwedd o rhywbeth enwog, fodd bynnag, 1138 00:57:06,780 --> 00:57:08,310 y ddelwedd wedi cael ei ystumio. 1139 00:57:08,310 --> 00:57:11,500 Mae'r gwrthrych enwog yn y gwerthoedd coch. 1140 00:57:11,500 --> 00:57:13,810 gwerthoedd Fodd bynnag, y coch i gyd wedi ei rannu â 10. 1141 00:57:13,810 --> 00:57:16,230 Felly, maent yn rhy fach gan ffactor o 10. 1142 00:57:16,230 --> 00:57:18,280 Felly, mewn geiriau eraill, Nick Cymerodd ddelwedd wreiddiol, 1143 00:57:18,280 --> 00:57:21,500 ac efe a desaturated gyd o'r coch ohono, 1144 00:57:21,500 --> 00:57:23,850 gostwng y swm o coch inc, os mynnwch, ynddo. 1145 00:57:23,850 --> 00:57:26,060 >> Mae'r gwerthoedd glas a gwyrdd i gyd yn unig yn ddiystyr, 1146 00:57:26,060 --> 00:57:30,000 gwerthoedd ar hap, aka gynlluniwyd sŵn i guddio y ddelwedd go iawn. 1147 00:57:30,000 --> 00:57:32,250 Felly yr hyn a wnaeth Nick oedd ef toned i lawr y coch ac yna 1148 00:57:32,250 --> 00:57:34,380 e jyst taflu ar hap symiau o glas a gwyrdd 1149 00:57:34,380 --> 00:57:37,590 ar y ddelwedd i fath o guddio beth sydd mewn gwirionedd yn dal i fod yno. 1150 00:57:37,590 --> 00:57:41,089 Mae'n rhaid i chi dadwneud distortions hyn i ddangos y ddelwedd. 1151 00:57:41,089 --> 00:57:44,255 Yn gyntaf, yn gosod yr holl werthoedd glas a gwyrdd i sero i'w cael allan o'r ffordd, 1152 00:57:44,255 --> 00:57:48,700 ac edrych ar y canlyniad. yna lluoswch pob gwerth coch â 10, 1153 00:57:48,700 --> 00:57:51,720 cennu yn ôl i fyny at tua ei werth terfynol. 1154 00:57:51,720 --> 00:57:53,035 Beth yw'r gwrthrych enwog? 1155 00:57:53,035 --> 00:57:57,920 >> Felly pob un ohonoch wedi petryal hwn yn eich porwr ar hyn o bryd. 1156 00:57:57,920 --> 00:58:00,830 Ac yn sylwi bod rhywfaint o cod cychwynnol, fel petai. 1157 00:58:00,830 --> 00:58:04,370 Mae hyn yn JavaScript cod sy'n Nick wedi ysgrifennu i chi. 1158 00:58:04,370 --> 00:58:07,250 Ac yn sylwi fod yna llinell yn y canol sy'n 1159 00:58:07,250 --> 00:58:10,380 yn dechrau gyda slaes slaes, dyna hyn a elwir yn gyffredinol sylw. 1160 00:58:10,380 --> 00:58:14,660 Mae'n golygu ei fod yn ymadrodd i'r rhaglennydd nad oes ganddo unrhyw ystyr swyddogaethol. 1161 00:58:14,660 --> 00:58:16,520 'I' jyst ciw gweledol i'r dynol. 1162 00:58:16,520 --> 00:58:18,670 >> Felly, gallwch fynd yn ei flaen ac dileu yn union hynny llinell, 1163 00:58:18,670 --> 00:58:22,214 a bod yn super ofalus i beidio â ddileu neu newid unrhyw beth arall. 1164 00:58:22,214 --> 00:58:25,130 A gadewch i mi dim ond i chi gerdded trwy'r pa cod hwn yn ei wneud a byddaf yn gadael ei 1165 00:58:25,130 --> 00:58:28,580 i chi chyfrif i maes y ddelwedd cudd. 1166 00:58:28,580 --> 00:58:32,226 Mae'r llinell gyntaf yma fy mod i wedi jyst amlygedig yn rhoi'r canlynol i chi. 1167 00:58:32,226 --> 00:58:34,100 Ar yr ochr chwith, gennych yr hyn a elwir 1168 00:58:34,100 --> 00:58:39,140 newidyn bod Nick wedi fympwyol, ond yn galw rhesymol im i ddelwedd. 1169 00:58:39,140 --> 00:58:41,660 Ar yr ochr dde o'r hafalnod, 1170 00:58:41,660 --> 00:58:45,240 mae'n ei ddweud yn rhoi newydd i mi dyfyniad, unquote "delwedd syml". 1171 00:58:45,240 --> 00:58:49,680 >> delwedd syml, yn y cyd-destun hwn yn hyn a elwir yn ddosbarth, yn dda, 1172 00:58:49,680 --> 00:58:53,910 ei fod yn fath o fel class-- dechnegol yn prototype-- ond mewn gwirionedd, 1173 00:58:53,910 --> 00:58:58,000 mae hyn yn rhoi gwrthrych newydd i mi, cynnwys ohonynt yn y ffeil, 1174 00:58:58,000 --> 00:58:59,610 haearn-puzzle.png. 1175 00:58:59,610 --> 00:59:03,190 Mewn geiriau eraill, Nick wedi creu syniad hwn o ddelwedd syml 1176 00:59:03,190 --> 00:59:05,920 fel y gallwn, er pedagogaidd dibenion, chwarae gyda'r ddelwedd 1177 00:59:05,920 --> 00:59:09,790 a newid ei coch, gwerthoedd gwyrdd, a glas. 1178 00:59:09,790 --> 00:59:11,750 >> A sut ydym ni'n gwneud hynny? 1179 00:59:11,750 --> 00:59:15,360 Mae'r gystrawen braidd yn cryptig yma yn fath o fel y bloc ailadrodd 1180 00:59:15,360 --> 00:59:19,140 bod rhai ohonoch yn gweld yn Scratch gynharach heddiw, lle gallwch ailadrodd 10 gwaith. 1181 00:59:19,140 --> 00:59:22,220 Yn yr achos hwn, nid yw gan Nick hardcoded nifer tebyg 10. 1182 00:59:22,220 --> 00:59:28,020 Yn hytrach mae'n ei ddweud, ymgychwyn newidyn a elwir x i 0, 1183 00:59:28,020 --> 00:59:33,180 gwirio os x yn llai na lled y ddelwedd. 1184 00:59:33,180 --> 00:59:38,160 >> Ac felly i fod yn fwy priodol, delwedd yw'r amrywiol, dot yn golygu mynd y tu mewn ohono 1185 00:59:38,160 --> 00:59:40,900 a chael ei lled, a Yna paren agored, ar gau 1186 00:59:40,900 --> 00:59:43,687 paren yn unig yw ffordd yn rhaglennydd yn o ddweud hyn yn swyddogaeth. 1187 00:59:43,687 --> 00:59:44,520 Mae hon yn weithdrefn. 1188 00:59:44,520 --> 00:59:46,430 Mae hyn yn swyddogaeth rhywun arall yn ysgrifennu. 1189 00:59:46,430 --> 00:59:48,570 Defnyddiwch ef ac yn rhoi i mi yn ôl ateb. 1190 00:59:48,570 --> 00:59:53,610 Ac yna x ++ yn ffordd ffansi o gan ddywedyd, ar ôl i chi wedi gwneud hyn unwaith, 1191 00:59:53,610 --> 00:59:55,850 cynyddiad x erbyn 1. 1192 00:59:55,850 --> 00:59:58,760 Mewn geiriau eraill, mae hyn yn yn ffordd yn rhaglennydd yn 1193 00:59:58,760 --> 01:00:05,760 o gymell dolen sy'n mynd i ailadrodd drosodd 1194 01:00:05,760 --> 01:00:10,410 pob un o'r colofnau yn delwedd. 1195 01:00:10,410 --> 01:00:14,790 >> Delwedd yn unig yw grid o dotiau, rhesi a cholofnau o ddotiau. 1196 01:00:14,790 --> 01:00:18,270 Mae hyn yn ffordd o ailadrodd dros yr holl o'r colofnau hynny. 1197 01:00:18,270 --> 01:00:20,770 Ac ar y tu mewn, yn y cyfamser, rydym yn ailadrodd 1198 01:00:20,770 --> 01:00:24,030 dros y uchder, yma ac yma ac yma. 1199 01:00:24,030 --> 01:00:29,442 Felly, mae hyn yn unig yw ffordd o traipsing, bron fel hen deipiadur ysgol, 1200 01:00:29,442 --> 01:00:32,230 i jyst yn mynd dros y ddelwedd gyfan ailadroddol. 1201 01:00:32,230 --> 01:00:36,370 Hyd yn oed nid yw hynny'n hollol gyfan gwbl clir, dim ond yn cymryd ar ffydd am y tro, 1202 01:00:36,370 --> 01:00:38,880 bod y rhai tair llinell cod gyda'i gilydd yn 1203 01:00:38,880 --> 01:00:43,090 mynd i ganiatáu i chi edrych ailadroddol ar bob picsel, pob dot yn y llun. 1204 01:00:43,090 --> 01:00:43,790 >> Beth yw picsel? 1205 01:00:43,790 --> 01:00:46,250 Wel, i fod yn glir, os edrychwn yn y gwreiddiol ac yn chwyddo i mewn, 1206 01:00:46,250 --> 01:00:49,060 os ydych yn wir yn rhoi eich llygaid i sgrîn y cyfrifiadur, dyna 1207 01:00:49,060 --> 01:00:53,510 dim ond criw cyfan o ddotiau, nifer o mil dotiau pacio at ei gilydd yno. 1208 01:00:53,510 --> 01:00:56,180 Ac felly beth ydych chi ynghylch i'w wneud? 1209 01:00:56,180 --> 01:00:59,240 Mae pob un o'r dotiau hynny, diffiniad terfynol, 1210 01:00:59,240 --> 01:01:06,350 yn ganlyniad i beth sydd ar y cyfan Gelwir RGB, coch, gwyrdd, glas, a oedd yn 1211 01:01:06,350 --> 01:01:09,940 eto, gellir eu cyfuno i rhoi unrhyw nifer o liwiau i chi. 1212 01:01:09,940 --> 01:01:13,200 >> Yn wir, os ydych yn cofio o lawer, flynyddoedd lawer yn ôl, 1213 01:01:13,200 --> 01:01:17,320 sgriniau taflunydd fel y pethau hyn arfer cael nid un lens ond tri. 1214 01:01:17,320 --> 01:01:20,700 Mae un ohonynt yn boeri allan golau coch, un o nhw boeri allan golau gwyrdd, un ohonynt 1215 01:01:20,700 --> 01:01:21,600 boeri allan golau glas. 1216 01:01:21,600 --> 01:01:24,391 Ac os oeddech mewn ysgol ganol fel yr oeddwn lle maent byth yn 1217 01:01:24,391 --> 01:01:27,000 cyd-fynd yn briodol, yr oeddech yn bob amser yn gwylio ffilmiau hanes 1218 01:01:27,000 --> 01:01:29,770 bod ychydig yn ystumio, oherwydd nad oedd y tri lliw yn 1219 01:01:29,770 --> 01:01:30,970 cyfuno iawn. 1220 01:01:30,970 --> 01:01:36,330 >> Ond mae'n troi allan bod pob un o'r gwerthoedd hyn coch, gwyrdd, a glas, 1221 01:01:36,330 --> 01:01:37,980 Gall gael nifer gysylltiedig â hwy. 1222 01:01:37,980 --> 01:01:42,500 Er enghraifft, 0 am coch yn golygu dim coch, 0 am wyrdd golygu dim gwyrdd, 1223 01:01:42,500 --> 01:01:45,120 a 0 am glas yn golygu dim glas. 1224 01:01:45,120 --> 01:01:49,403 Felly, os nad oes gennych coch, dim gwyrdd, a dim glas, pa liw sydd gennych? 1225 01:01:49,403 --> 01:01:51,009 >> GYNULLEIDFA: [Anghlywadwy] 1226 01:01:51,009 --> 01:01:52,800 DAVID Malan: byddai chi gobeithio hynny, mae'n wyn. 1227 01:01:52,800 --> 01:01:55,333 Yn anffodus, mae hyn yn operates-- sori? 1228 01:01:55,333 --> 01:01:56,380 >> GYNULLEIDFA: [Anghlywadwy] 1229 01:01:56,380 --> 01:01:58,630 DAVID Malan: Felly yr ydych mewn gwirionedd cael du, yn yr achos hwn. 1230 01:01:58,630 --> 01:02:01,530 Felly os oes gennych un o'r rhain lliwiau droi ymlaen, mae gennych du. 1231 01:02:01,530 --> 01:02:06,510 Fodd bynnag, os oes gennych, gadewch i ni ddweud llawer ohonynt, fel llawer o goch, 255 ohono, 1232 01:02:06,510 --> 01:02:10,340 llawer o wyrdd, ac mae llawer o sidan glas, sydd yn wyn. 1233 01:02:10,340 --> 01:02:12,230 Felly mae'r rhain yn y ddau begwn. 1234 01:02:12,230 --> 01:02:17,460 Felly, erbyn rhesymeg hon, os oes gen i lawer o goch a dim gwyrdd a dim glas, 1235 01:02:17,460 --> 01:02:18,485 pa liw yw hynny? 1236 01:02:18,485 --> 01:02:19,360 GYNULLEIDFA: [Anghlywadwy] 1237 01:02:19,360 --> 01:02:20,610 DAVID Malan: Iawn, yn amlwg. 1238 01:02:20,610 --> 01:02:25,940 Ac yna dim coch, llawer o gwyrdd, dim glas, ac yna 1239 01:02:25,940 --> 01:02:29,590 os ydych yn have-- yn dda, byddwn yn jyst orffen y peth, dim ond oherwydd, ond mae hyn, wrth gwrs, 1240 01:02:29,590 --> 01:02:31,350 yn awr, yn las. 1241 01:02:31,350 --> 01:02:33,030 Ac yn awr gallwch gyfuno lliwiau hyn. 1242 01:02:33,030 --> 01:02:36,430 Nawr fel o'r neilltu, os bydd unrhyw un gennych wneud erioed rhai gwirioneddol dylunio gwefannau, 1243 01:02:36,430 --> 01:02:38,360 efallai y byddwch mewn gwirionedd gweld symbolau fel hyn. 1244 01:02:38,360 --> 01:02:42,030 FFF-- ac mewn gwirionedd, mae'n Mae'n debyg na hyd yn oed hynny. 1245 01:02:42,030 --> 01:02:44,380 Mae'n FFFFFF. 1246 01:02:44,380 --> 01:02:48,970 >> Dylai unrhyw un a welwyd F ac E erioed ac A through-- felly mae'n troi allan, 1247 01:02:48,970 --> 01:02:52,970 buom yn siarad ddoe am degol, a heddiw, math o tua degol. 1248 01:02:52,970 --> 01:02:54,570 Heddiw, buom yn siarad am deuaidd. 1249 01:02:54,570 --> 01:02:59,010 Troi allan, hecsadegol yn iawn system sylfaen gyffredin i'w defnyddio mewn cyfrifiadureg. 1250 01:02:59,010 --> 01:03:04,960 Binary yw dau, degol yn 10, hecs yw 16. 1251 01:03:04,960 --> 01:03:08,640 Ac mae'n troi allan, sut mae chi gyfrif yn hecsadegol? 1252 01:03:08,640 --> 01:03:11,620 Zero, un, dau, tri, pedwar, pump, chwech, saith, wyth, 1253 01:03:11,620 --> 01:03:14,730 naw, beth ydych chi'n ei ddefnyddio ar ôl naw? 1254 01:03:14,730 --> 01:03:16,600 Beth yw'r rhif nesaf? 1255 01:03:16,600 --> 01:03:19,180 Rydym eisoes defnyddio sero. 1256 01:03:19,180 --> 01:03:20,570 Fi angen 16 o'r rhain. 1257 01:03:20,570 --> 01:03:25,770 Zero, un, dau, tri, pedwar, pump, chwech, saith, wyth, naw, 1258 01:03:25,770 --> 01:03:27,520 ydych angen rhywfaint o confensiwn mympwyol. 1259 01:03:27,520 --> 01:03:30,810 >> A beth ddynoliaeth penderfynodd peth amser yn ôl bod ar ôl naw daw'r llythyr 1260 01:03:30,810 --> 01:03:34,450 A ac yna B ac yna C. Felly, y ffordd yr ydych yn cyfrif yn hecsadegol 1261 01:03:34,450 --> 01:03:37,040 yn sero, un, dau, tri, pedwar, pump, chwech, saith, wyth, naw, 1262 01:03:37,040 --> 01:03:42,880 A, B, C, D, E, F, ac y bydd yn cyfrif chi yr holl ffordd, mae'n troi allan, i 15. 1263 01:03:42,880 --> 01:03:47,850 Felly sero i 15 yn sero drwy F. Nawr pam yw bod yn arwyddocaol? 1264 01:03:47,850 --> 01:03:51,570 Wel, pan fydd gennych ddau F, dyna sut yr ydych yn mynegi 255. 1265 01:03:51,570 --> 01:03:54,350 >> Cyn belled stori fer, yn fyd Photoshop, 1266 01:03:54,350 --> 01:03:57,299 bod meddalwedd dylunio graffig, ym myd datblygu gwefan, 1267 01:03:57,299 --> 01:03:59,590 lle mae gennych lawer o liwiau, wrth gwrs, i chwarae gyda, 1268 01:03:59,590 --> 01:04:02,350 Yn aml bydd rhaglenwyr mynegi rhai mewn hecsadegol, 1269 01:04:02,350 --> 01:04:05,260 dim ond oherwydd ei fod yn tueddu i fod ychydig yn symlach. 1270 01:04:05,260 --> 01:04:07,850 Hyd yn oed er ar yr olwg gyntaf mae'n llawer mwy cymhleth. 1271 01:04:07,850 --> 01:04:11,590 >> Felly, mewn unrhyw achos, mae hyn yn bwysig gan fod Nick yn Stanford 1272 01:04:11,590 --> 01:04:15,100 wedi rhoi chwe darn o functionality ni eich bod chi, y rhaglenwyr cyw, 1273 01:04:15,100 --> 01:04:17,060 Bydd yn awr yn cael y gallu i ddefnyddio. 1274 01:04:17,060 --> 01:04:19,960 Hadeiladu i mewn we hon dudalen yn chwe swyddogaethau, 1275 01:04:19,960 --> 01:04:21,820 chwe gweithdrefnau y Nick yn ysgrifennu. 1276 01:04:21,820 --> 01:04:26,800 Mae tri ohonynt yn cael chi rif, coch, gwyrdd, neu werth las. 1277 01:04:26,800 --> 01:04:28,787 Mae tri ohonynt yn gosod y gwerth hwnnw. 1278 01:04:28,787 --> 01:04:30,620 Ac tanlinellau hyn yn unig dalfannau, 1279 01:04:30,620 --> 01:04:32,600 felly mae angen i chi wybod beth yw'r rheini. 1280 01:04:32,600 --> 01:04:36,240 >> Felly, gyda hyn tair swyddogaeth, y cyntaf o'r pethau hyn 1281 01:04:36,240 --> 01:04:39,190 yn mynd i fod yn gyfesuryn-x, a'r ail o'r pethau hyn 1282 01:04:39,190 --> 01:04:40,700 yn mynd i fod yn y-chydlynu. 1283 01:04:40,700 --> 01:04:44,650 Mewn geiriau eraill, sy'n dot, a oedd yn picsel ydych chi am gael y gwyrdd, 1284 01:04:44,650 --> 01:04:46,480 cael y glas, yn cael y coch. 1285 01:04:46,480 --> 01:04:51,440 Ac yna yma, mae hyn yn mynd i fod x, mae hyn yn mynd i fod yn y gwerth, 1286 01:04:51,440 --> 01:04:55,379 ac mae hyn yn mynd i fod yn rhif. 1287 01:04:55,379 --> 01:04:57,170 Felly gadewch i ni wneud y cyntaf llinell o hyn gyda'n gilydd 1288 01:04:57,170 --> 01:05:00,220 ac yna byddaf yn gadael i chi i geisio i ddiddwytho y gweddill. 1289 01:05:00,220 --> 01:05:03,100 Felly ôl y cyfarwyddiadau ar y dudalen hon, mae angen 1290 01:05:03,100 --> 01:05:08,960 i gynyddu'r goch gan ffactor o 10, ac mae angen i ni gael gwared ar y gwyrdd 1291 01:05:08,960 --> 01:05:09,930 a chael gwared ar y glas. 1292 01:05:09,930 --> 01:05:12,410 Gadewch i ni ddechrau gyda'r senarios olaf. 1293 01:05:12,410 --> 01:05:17,760 Felly os ydw i eisiau, ac rwy'n mynd i indent drwy ddefnyddio rhai mannau, 1294 01:05:17,760 --> 01:05:22,291 os ydw i am osod y coch, y gwyrdd, neu werth las, 1295 01:05:22,291 --> 01:05:23,540 Rydw i'n mynd i wneud y canlynol. 1296 01:05:23,540 --> 01:05:31,280 >> Image, im.setBlue, ac yna yn seiliedig ar fy cyfarwyddiadau yma, 1297 01:05:31,280 --> 01:05:36,700 beth ddylwn i dri pheth teipiwch tu mewn cromfachau yn awr? 1298 01:05:36,700 --> 01:05:41,960 Fi angen gwerth x, y y gwerth, a pha rif 1299 01:05:41,960 --> 01:05:48,770 ddylwn i roi yma os wyf am i gael gwared o'r glas, yn seiliedig ar y stori hon fan hyn? 1300 01:05:48,770 --> 01:05:49,630 Dim ond yn sero. 1301 01:05:49,630 --> 01:05:52,420 Os ydw i eisiau dim glas, Im 'jyst mynd i newid i sero. 1302 01:05:52,420 --> 01:05:54,465 >> Nawr, gadewch i jyst ailadrodd yr hyn y mae hyn yn ei wneud. 1303 01:05:54,465 --> 01:05:56,970 1304 01:05:56,970 --> 01:06:01,170 Gennyf yma ar ben hyn ail a thrydydd llinellau, 1305 01:06:01,170 --> 01:06:04,080 Rwy'n Honnodd dau dolenni, dolenni nythu, os ydych yn 1306 01:06:04,080 --> 01:06:08,360 Bydd, bod yn mynd i gael yr effaith o symud ymlaen o'r chwith i'r dde, 1307 01:06:08,360 --> 01:06:11,590 top i'r gwaelod dros bob un o'r x gwerthoedd a phob un o'r y gwerthoedd. 1308 01:06:11,590 --> 01:06:15,167 Oherwydd unwaith eto, mae darlun yn dim ond grid o resi a cholofnau. 1309 01:06:15,167 --> 01:06:17,000 Felly, mae hyn yn mynd i gael gwared ar yr holl las. 1310 01:06:17,000 --> 01:06:18,627 Gadewch i mi adael yn y llinell nesaf i chi. 1311 01:06:18,627 --> 01:06:20,043 Sut ydw i'n cael gwared ar yr holl gwyrdd? 1312 01:06:20,043 --> 01:06:23,747 1313 01:06:23,747 --> 01:06:25,140 >> GYNULLEIDFA: [Anghlywadwy] 1314 01:06:25,140 --> 01:06:26,151 >> DAVID Malan: Nice. 1315 01:06:26,151 --> 01:06:28,260 >> GYNULLEIDFA: [Anghlywadwy] 1316 01:06:28,260 --> 01:06:30,850 >> DAVID Malan: Nice. 1317 01:06:30,850 --> 01:06:36,120 Ac yr wyf i'n mynd i chwyddo allan, a dim ond yn cymryd gofalu am nad ydych wedi gwneud unrhyw typos. 1318 01:06:36,120 --> 01:06:39,390 Ac os ydych chi'n gyfforddus gyda'r hyn yr ydych wedi ei wneud, 1319 01:06:39,390 --> 01:06:42,936 mynd yn ei flaen a chliciwch y botwm Rhedeg / Achub a gweld yr hyn yr ydych yn ei gael. 1320 01:06:42,936 --> 01:06:46,982 1321 01:06:46,982 --> 01:06:48,690 Ac eto, rydym wedi gwneud dim ond tri newid. 1322 01:06:48,690 --> 01:06:52,130 Rydym yn dileu hynny yn gyntaf sylwadau ac yn lle'r 1323 01:06:52,130 --> 01:06:53,575 â'r rhain dwy linell o god. 1324 01:06:53,575 --> 01:06:55,742 1325 01:06:55,742 --> 01:06:58,450 Ac mae'n iawn os bydd angen i daro y botwm Run / Save cwpl o weithiau 1326 01:06:58,450 --> 01:07:01,190 at atgyweiria rhywbeth. 1327 01:07:01,190 --> 01:07:03,610 >> A gadewch i mi hefyd chwyddo i mewn ar fy cod fel y gallwch trawsgrifio. 1328 01:07:03,610 --> 01:07:04,110 Da. 1329 01:07:04,110 --> 01:07:08,720 Felly, yr wyf yn gweld Andrew wedi hyn ymddangos i fod yn gamgymeriad. 1330 01:07:08,720 --> 01:07:11,110 Mae o jyst got a du mawr petryal ar ei sgrin. 1331 01:07:11,110 --> 01:07:13,120 A oes unrhyw un arall yn cael petryal du mawr? 1332 01:07:13,120 --> 01:07:13,390 >> GYNULLEIDFA: Oes. 1333 01:07:13,390 --> 01:07:14,360 >> DAVID Malan: petryal du Mawr? 1334 01:07:14,360 --> 01:07:16,068 Iawn, felly gadewch i ni feddwl am ystyr hyn. 1335 01:07:16,068 --> 01:07:20,560 Rydym yn dweud bod sero, sero, sero, felly dim gwyrdd, dim coch, dim glas, 1336 01:07:20,560 --> 01:07:21,980 yn mynd i roi ddu chi. 1337 01:07:21,980 --> 01:07:24,467 Ac mae'n troi allan y rhan fwyaf o'n gliniaduron 1338 01:07:24,467 --> 01:07:25,800 nid yn unig yn cael digon o ffyddlondeb. 1339 01:07:25,800 --> 01:07:27,750 Ni allwch eithaf ddweud yno mewn gwirionedd yn rhywbeth yno. 1340 01:07:27,750 --> 01:07:30,340 Ac os ydych yn fath o efallai pwyso eich sgrîn ymlaen ac yn ôl, 1341 01:07:30,340 --> 01:07:32,850 efallai ydych yn gweld Ychydig rhywbeth yno? 1342 01:07:32,850 --> 01:07:34,820 Efallai, math o, math o? 1343 01:07:34,820 --> 01:07:36,640 Dyw hi ddim yn berffaith ddu. 1344 01:07:36,640 --> 01:07:38,050 >> GYNULLEIDFA: [Anghlywadwy] 1345 01:07:38,050 --> 01:07:39,510 >> DAVID Malan: Spoiler! 1346 01:07:39,510 --> 01:07:42,610 Mae rhywfaint o goch yno, ond cofio o manylebau 1347 01:07:42,610 --> 01:07:44,940 o'r broblem, Nick toned i lawr. 1348 01:07:44,940 --> 01:07:47,860 Roedd desaturated ei braidd, ond nid yr holl ffordd i sero. 1349 01:07:47,860 --> 01:07:51,670 Felly, os ydym am i chwyddo y swm o goch, gadewch i mi gynnig hon castia. 1350 01:07:51,670 --> 01:07:53,750 Gadewch i mi chwyddo i mewn ar fy sgrin. 1351 01:07:53,750 --> 01:07:58,678 A gadewch i mi fynd yn ei flaen ac yn dweud swm hafal im.getRed (x, y). 1352 01:07:58,678 --> 01:08:02,440 1353 01:08:02,440 --> 01:08:05,790 >> Mae'r llinell hon o god yn rhoi i mi rhywbeth a elwir yn amrywiol. 1354 01:08:05,790 --> 01:08:09,643 Mae gen i fympwyol, ond, gellid dadlau, Gelwir rhesymol fy newidyn beth, 1355 01:08:09,643 --> 01:08:10,143 yn ôl pob golwg? 1356 01:08:10,143 --> 01:08:13,530 1357 01:08:13,530 --> 01:08:14,340 Swm. 1358 01:08:14,340 --> 01:08:14,980 Dim ond swm. 1359 01:08:14,980 --> 01:08:16,960 Gallwn i wedi ei alw unrhyw beth yr wyf am ei gael, ond rwy'n 1360 01:08:16,960 --> 01:08:19,490 gan ddefnyddio'r swyddogaeth arall hon a ddisgrifiais yn gynharach 1361 01:08:19,490 --> 01:08:25,359 i gael y swm o coch ar x atalnod y. 1362 01:08:25,359 --> 01:08:27,520 Pam wnes i wneud hynny? 1363 01:08:27,520 --> 01:08:30,004 Beth ydych chi eisiau ei wneud yma? 1364 01:08:30,004 --> 01:08:32,910 1365 01:08:32,910 --> 01:08:33,619 Mae angen i chi add-- 1366 01:08:33,619 --> 01:08:34,493 GYNULLEIDFA: [Anghlywadwy] 1367 01:08:34,493 --> 01:08:36,279 DAVID Malan: Ie, efallai luosi 10. 1368 01:08:36,279 --> 01:08:38,862 Ac os nad ydych yn gwybod hyn, rwy'n mynd i fynd yn ei flaen ac yn gwneud hyn. 1369 01:08:38,862 --> 01:08:42,060 Rydw i'n mynd i fynd yn ei flaen a dyweder, yr wyf am y swm o coch 1370 01:08:42,060 --> 01:08:46,550 Dwi am fod beth bynnag wrth goch, amseroedd 10, 1371 01:08:46,550 --> 01:08:50,330 a seren, mae'r seren ar eich bysellfwrdd yn Nid the-- yn defnyddio x. 1372 01:08:50,330 --> 01:08:51,569 Defnyddiwch y seren. 1373 01:08:51,569 --> 01:08:55,350 Dyna sut yr ydych yn lluosi pethau yn y rhan fwyaf o ieithoedd rhaglennu. 1374 01:08:55,350 --> 01:08:59,790 >> Felly yn ôl greddf Kareem, a storio mewn newidyn hwn a elwir yn swm, 1375 01:08:59,790 --> 01:09:03,649 yw faint o goch wyf am ei gael ar xy lleoliad. 1376 01:09:03,649 --> 01:09:11,500 Sut, yn awr, ydw i'n gwneud hynny Pixel cael y rhif hwnnw? 1377 01:09:11,500 --> 01:09:12,859 Rydych eisoes wedi gwneud hyn o'r blaen. 1378 01:09:12,859 --> 01:09:17,666 Rydych yn gosod y gwyrdd a'r glas i unrhyw werth, i sero. 1379 01:09:17,666 --> 01:09:18,540 GYNULLEIDFA: [Anghlywadwy] 1380 01:09:18,540 --> 01:09:20,040 DAVID Malan: Ie, wel nad ydych am i 10. 1381 01:09:20,040 --> 01:09:21,460 Rydych eisoes yn gwneud y math yma. 1382 01:09:21,460 --> 01:09:24,779 Felly, rydym yn cael y gwerth o goch, sydd yn nifer isel, yn ôl pob tebyg. 1383 01:09:24,779 --> 01:09:26,180 Rydym yn lluosi gan 10. 1384 01:09:26,180 --> 01:09:29,139 Yr hyn yr ydych am ei wneud gyda y swm amrywiol yn awr? 1385 01:09:29,139 --> 01:09:30,130 >> GYNULLEIDFA: [Anghlywadwy] 1386 01:09:30,130 --> 01:09:30,880 >> DAVID Malan: Nice. 1387 01:09:30,880 --> 01:09:34,616 Felly im.set-- beth? 1388 01:09:34,616 --> 01:09:35,640 >> GYNULLEIDFA: setRed. 1389 01:09:35,640 --> 01:09:39,760 >> DAVID Malan: setRed, yn xy lleoliad. 1390 01:09:39,760 --> 01:09:40,260 Yeah. 1391 01:09:40,260 --> 01:09:41,200 Ac yn union swm. 1392 01:09:41,200 --> 01:09:44,257 Mewn geiriau eraill, mae newidyn hon yn cadw'r dros dro 1393 01:09:44,257 --> 01:09:45,840 eich bod yn gallu rhoi unrhyw beth yr ydych am ei gael yn. 1394 01:09:45,840 --> 01:09:48,680 Rydym yn digwydd bod yn rhoi Rhif ynddo, ar hyn o bryd. 1395 01:09:48,680 --> 01:09:51,569 Rydym wedi lluosi iddo gan 10 i'w wneud yn fwy. 1396 01:09:51,569 --> 01:09:56,480 Ac yn awr yr wyf i'n amnewid newidyn sy'n fel y trydydd dadl, neu fewnbwn 1397 01:09:56,480 --> 01:09:57,810 i osod goch. 1398 01:09:57,810 --> 01:10:00,440 Ac felly unwaith y byddwch orffen hynny, ac yn cymryd sylw 1399 01:10:00,440 --> 01:10:02,330 o'r hanner colon a'r cromfachau. 1400 01:10:02,330 --> 01:10:06,290 >> Mynd yn ei flaen a chliciwch rhedeg / arbed eto, ac yr ydych 1401 01:10:06,290 --> 01:10:10,690 Dylai weld, hudol, beth oedd mewn gwirionedd yno. [? Arwa,?] Beth sydd yno? 1402 01:10:10,690 --> 01:10:16,412 Y Tŵr Eiffel yn llawn-fledged coch, ddim yn hollol dywyll. 1403 01:10:16,412 --> 01:10:17,870 dylai fod yn fwy amlwg erbyn hyn, ie? 1404 01:10:17,870 --> 01:10:18,840 IAWN. 1405 01:10:18,840 --> 01:10:20,215 Ac Andrew, blwch dim mwy du? 1406 01:10:20,215 --> 01:10:21,090 GYNULLEIDFA: [Anghlywadwy] 1407 01:10:21,090 --> 01:10:22,180 DAVID Malan: pob hawl. 1408 01:10:22,180 --> 01:10:23,610 Felly byddaf yn cadw hyn ar y sgrin. 1409 01:10:23,610 --> 01:10:27,010 Os ydych am chwarae gyda hyn yn ddiweddarach, 'n annhymerus' ail-greu'r hyn i chi. 1410 01:10:27,010 --> 01:10:29,140 Ond cod hwn yma a wnaeth yn union hynny. 1411 01:10:29,140 --> 01:10:31,460 Pam nad ydym yn gwneud un arall. 1412 01:10:31,460 --> 01:10:33,880 Gadewch i mi sgroliwch i lawr ychydig. 1413 01:10:33,880 --> 01:10:36,760 >> Felly, yn yr achos hwn, mae'r taflunydd nid yw'n wir yn gwneud cyfiawnder ag ef. 1414 01:10:36,760 --> 01:10:40,486 Ond ar eich sgriniau, mae'n debyg gael blwch coch iawn a du iawn. 1415 01:10:40,486 --> 01:10:42,610 Mae hyn, hefyd, yn pos sy'n Dengys rhywbeth enwog. 1416 01:10:42,610 --> 01:10:44,193 Fodd bynnag, mae'r ddelwedd wedi cael ei ystumio. 1417 01:10:44,193 --> 01:10:47,740 Mae'r llun yn wir, y tro hwn, yn yn y gwerthoedd glas a gwyrdd. 1418 01:10:47,740 --> 01:10:51,820 Fodd bynnag, maent i gyd ei rhannu 20 felly mae'r gwerthoedd yn fach iawn. 1419 01:10:51,820 --> 01:10:54,660 Mae'r gwerthoedd coch yn unig rhifau ar hap, sŵn. 1420 01:10:54,660 --> 01:10:57,190 Dadwneud distortions hyn i ddatgelu y llun cywir. 1421 01:10:57,190 --> 01:10:59,200 >> Felly Nick wedyn yn dweud wrthych beth i'w wneud. 1422 01:10:59,200 --> 01:11:04,290 Gosodwch y gwerthoedd coch i sero, ac yna peidiwch difetha yr hyn ydyw. 1423 01:11:04,290 --> 01:11:07,110 Yna lluoswch y glas a gwerthoedd gwyrdd erbyn 20. 1424 01:11:07,110 --> 01:11:09,820 Felly mae bron yr un rhaglen ag o'r blaen, 1425 01:11:09,820 --> 01:11:11,380 ond eich bod yn gwrthdroi'r broses. 1426 01:11:11,380 --> 01:11:13,780 A mi roi fy cod o o'r blaen ar y sgrin rhag ofn 1427 01:11:13,780 --> 01:11:16,650 ydych chi eisiau cyfeirio'n ôl ato neu chwarae ymhellach â bod un. 1428 01:11:16,650 --> 01:11:18,100 Gadewch i mi chwyddo i mewn ar hynny. 1429 01:11:18,100 --> 01:11:21,450 Ond datrys image copr pos, rhif dau. 1430 01:11:21,450 --> 01:11:37,623 1431 01:11:37,623 --> 01:11:40,580 >> GYNULLEIDFA: [Anghlywadwy] 1432 01:11:40,580 --> 01:11:44,010 >> DAVID Malan: Iawn, felly mae hyn yn un rwy'n Nid yw mynd i roi cymaint o awgrymiadau. 1433 01:11:44,010 --> 01:11:47,220 Felly, yr wyf would-- oh, gadewch i ni gweld, mae gennych typo yma. 1434 01:11:47,220 --> 01:11:49,621 Felly cofiwch, mae hyn yn fan hyn mewn gwirionedd mae angen i fynd yno. 1435 01:11:49,621 --> 01:11:52,870 Felly beth fyddwn i'n cynnig, os ydych chi eisiau canolbwyntio ar yr un yma, does yr ateb. 1436 01:11:52,870 --> 01:11:57,060 Os ydych am i drawsgrifio hynny, bod ddylai gael yr un cyntaf yn gweithio. 1437 01:11:57,060 --> 01:11:59,910 Ac yna gallwch ddefnyddio hynny fel ysbrydoliaeth ar gyfer yr ail un. 1438 01:11:59,910 --> 01:12:02,230 Nice. 1439 01:12:02,230 --> 01:12:02,730 Da. 1440 01:12:02,730 --> 01:12:05,430 1441 01:12:05,430 --> 01:12:08,180 >> Ac ar gyfer y chwilfrydig, mae hyn yn enghraifft syml 1442 01:12:08,180 --> 01:12:11,080 o wyddoniaeth neu gelfyddyd Gelwir steganography, 1443 01:12:11,080 --> 01:12:14,100 y grefft o guddio gwybodaeth mewn delweddau. 1444 01:12:14,100 --> 01:12:16,890 Yn nodweddiadol, efallai y delweddau fod yn dyfrnodi amlwg yn iawn 1445 01:12:16,890 --> 01:12:19,500 gyda logo yn y gwaelod cornel, ond yn amlwg, yr ydych 1446 01:12:19,500 --> 01:12:22,070 Gall fod yn llawer mwy soffistigedig am y peth ac mewn gwirionedd 1447 01:12:22,070 --> 01:12:25,050 cuddio delweddau eraill yn yr Delweddau rywsut gyda'r dechneg hon. 1448 01:12:25,050 --> 01:12:59,890 1449 01:12:59,890 --> 01:13:05,770 >> Cymerwch 30 eiliad arall, ac yna rydym annhymerus ' o leiaf yn cyhoeddi hyn y dylech ei weld. 1450 01:13:05,770 --> 01:13:08,330 A byddaf yn gadael y trydydd un fel ymarfer yn y cartref, 1451 01:13:08,330 --> 01:13:11,353 os hoffech fwy o herio y penwythnos yma. 1452 01:13:11,353 --> 01:13:18,240 1453 01:13:18,240 --> 01:13:20,390 Ac yr wyf yn meddwl Andrew gallai wedi gotten yn gyntaf. 1454 01:13:20,390 --> 01:13:22,645 Beth yw'r ail ddelwedd, Andrew? 1455 01:13:22,645 --> 01:13:23,920 >> GYNULLEIDFA: Cerflun o Liberty. 1456 01:13:23,920 --> 01:13:28,500 >> DAVID Malan: Cerflun o Liberty fydd yr ateb y tro hwn. 1457 01:13:28,500 --> 01:13:31,140 Felly unwaith eto, dim ond rhai syml enghreifftiau, y nod ohonynt 1458 01:13:31,140 --> 01:13:35,040 yw rhoi ymdeimlad o sut yr ydych yn rydym wedi cyfieithu Scratch darluniadol 1459 01:13:35,040 --> 01:13:40,410 blociau i fwy blino a mwy cod gymhleth, ond mae pob un o'r syniadau 1460 01:13:40,410 --> 01:13:42,980 yn dal i fod yn union yr un fath, er mai gyda chyflwyniad 1461 01:13:42,980 --> 01:13:48,380 yn awr y syniad o amrywiol, sef gallu storio rhywbeth dros dro. 1462 01:13:48,380 --> 01:13:51,750 >> Gadewch i ni wneud un yn fwy ymarferol, yn unig yn awr i gysylltu'r dotiau 1463 01:13:51,750 --> 01:13:53,880 i rywbeth ychydig yn fwy byd go iawn. 1464 01:13:53,880 --> 01:13:56,610 Pan fyddwch yn barod, os gallech ewch i'r URL hwn ar y sgrin. 1465 01:13:56,610 --> 01:14:00,610 Dyna hefyd yn eich copi o'r sleidiau, developers.google.com/maps~~V. 1466 01:14:00,610 --> 01:14:03,660 Gadewch i ni mewn gwirionedd yn gwneud rhywbeth go iawn, fel petai, ar y we 1467 01:14:03,660 --> 01:14:07,600 gan ddefnyddio'r API Google Maps, neu rhyngwyneb rhaglennu cymhwysiad, 1468 01:14:07,600 --> 01:14:08,940 yn y ffordd ganlynol. 1469 01:14:08,940 --> 01:14:12,341 >> Google, fel llawer o gwmnïau, darparu llawer o functionality rhad ac am ddim 1470 01:14:12,341 --> 01:14:14,840 y gallwch ei ddefnyddio i adeiladu eich ceisiadau diddorol eu hunain. 1471 01:14:14,840 --> 01:14:18,890 Yn wir, os ydych chi wedi defnyddio erioed Uber i gael tacsi neu gar, 1472 01:14:18,890 --> 01:14:21,640 mae'n debyg eich bod yn gwybod bod Uber wedi a mapio ac mae'n dangos ceir arno. 1473 01:14:21,640 --> 01:14:24,870 Hynny yw, hyd eithaf ag y gallaf dweud, Google Maps API. 1474 01:14:24,870 --> 01:14:28,884 Maent yn cael eu mewn gwirionedd gan ddefnyddio mapiau Google, ond nid Uber yn gwmni mapio, 1475 01:14:28,884 --> 01:14:31,050 ac ni fyddai hynny yn problem arbennig o ddiddorol 1476 01:14:31,050 --> 01:14:33,510 i ddatrys ar ben eu problem gwasanaeth ceir. 1477 01:14:33,510 --> 01:14:35,510 Ac felly maent yn sefyll, eto, ar ysgwyddau 1478 01:14:35,510 --> 01:14:37,520 pobl eraill, Google yn yr achos hwn. 1479 01:14:37,520 --> 01:14:42,850 Felly, maent yn defnyddio mapiau Google ond eu pen eu hunain gwasanaethau car a nodweddion eraill o'r fath. 1480 01:14:42,850 --> 01:14:47,770 >> Felly, rydym yn mynd i fanteisio o hyn i wneud y canlynol. 1481 01:14:47,770 --> 01:14:50,230 Ac os ydw i wedi mynd yn rhy gyflym, dim ond fy ffonio dros mewn munud. 1482 01:14:50,230 --> 01:14:53,500 Hapus i ailadrodd rhai o'r stwff ddelwedd. 1483 01:14:53,500 --> 01:14:56,290 Dylech weld eich hun ar dudalen fel hyn. 1484 01:14:56,290 --> 01:14:58,230 Felly Google yn neis, a eu bod ymhlith y goreuon 1485 01:14:58,230 --> 01:15:01,364 o ddarparu nid yn unig yn APIs, ond APIs rhad ac am ddim sy'n eich 1486 01:15:01,364 --> 01:15:02,780 Gall chwarae gyda neu ddefnyddio yn fasnachol. 1487 01:15:02,780 --> 01:15:06,450 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 1488 01:15:06,450 --> 01:15:10,490 a lofnodwyd ni i fyny ar gyfer cyfrif am ddim hynny, gobeithio, 10 cyfrifiadur 1489 01:15:10,490 --> 01:15:12,480 Ni fydd anghymwyso ni am sydyn. 1490 01:15:12,480 --> 01:15:14,320 Felly gobeithio y mae hyn Bydd arddangosiad yn gweithio. 1491 01:15:14,320 --> 01:15:18,840 >> Ac yn sylwi eu bod yn cael APIs ar gyfer Android, iOS, gwasanaethau ar y we, ac ar y we, 1492 01:15:18,840 --> 01:15:19,620 beth bynnag yw hynny. 1493 01:15:19,620 --> 01:15:20,700 Gadewch i ni ganolbwyntio ar y we. 1494 01:15:20,700 --> 01:15:26,560 Felly cliciwch ar y blwch pinc, ar y we, a bod byddwch yn arwain, gobeithio, at dudalen 1495 01:15:26,560 --> 01:15:27,630 fan hyn. 1496 01:15:27,630 --> 01:15:29,335 Ac maen nhw wedi cael criw cyfan o APIs. 1497 01:15:29,335 --> 01:15:31,210 A gall fod ychydig yn llethol ar y dechrau, 1498 01:15:31,210 --> 01:15:33,000 ond byddaf yn ein tywys drwy'r hyn yr ydym ei eisiau. 1499 01:15:33,000 --> 01:15:38,500 >> Ar yr ochr chwith uchaf yw'r Mapiau Google JavaScript API, mae'r API JavaScript. 1500 01:15:38,500 --> 01:15:40,380 Felly mynd yn ei flaen a chliciwch bod un. 1501 01:15:40,380 --> 01:15:49,360 A fydd yn eich arwain yn awr at y yn dilyn dudalen, demos a chod sampl. 1502 01:15:49,360 --> 01:15:51,190 Gadewch i mi chwyddo allan fan hyn. 1503 01:15:51,190 --> 01:15:56,300 A gadewch i mi gael i ni canlynol-- sgrolio i lawr i lle mae'n dweud camau cychwyn cyflym. 1504 01:15:56,300 --> 01:15:57,970 Dylai eich sgrîn yn edrych fel pwll. 1505 01:15:57,970 --> 01:16:01,130 >> Ac mae dau gam, yn cael allwedd a dechrau datblygu. 1506 01:16:01,130 --> 01:16:04,190 Rwyf eisoes yn gwneud cam un ar gyfer ni, cael allwedd fel y'u gelwir. 1507 01:16:04,190 --> 01:16:05,320 Ac mae hyn yn syniad cyffredin. 1508 01:16:05,320 --> 01:16:09,210 Allwedd API yn gyffredinol yn unig rhif ar hap mawr neu linyn 1509 01:16:09,210 --> 01:16:11,130 chi sydd i fod i bastio i mewn i'ch cod, 1510 01:16:11,130 --> 01:16:15,280 fel bod Google yn gwybod pwy ydych chi pan eich bod yn defnyddio eu gwasanaeth, eu API. 1511 01:16:15,280 --> 01:16:17,370 Nid yw'n golygu ein bod cael ei godi unrhyw beth. 1512 01:16:17,370 --> 01:16:21,030 Ac yn awr, cliciwch, yn hytrach na un, cliciwch ddechrau datblygu. 1513 01:16:21,030 --> 01:16:25,990 Pe gallech jyst tonnau mi drosodd os nad yn siwr lle yr ydym. 1514 01:16:25,990 --> 01:16:28,040 >> Felly byddwn yn jyst crafu'r wyneb, dyma ond beth 1515 01:16:28,040 --> 01:16:31,000 Roeddwn i'n meddwl y byddai yn gymhellol yw mewn gwirionedd yn cael pob un ohonom, 1516 01:16:31,000 --> 01:16:34,240 gan ddefnyddio Cloud9 mewn un ffenestr a tiwtorial hwn mewn ffenestr arall, 1517 01:16:34,240 --> 01:16:37,120 gadael i mewn gwirionedd yn cael ein hunain Cais i fyny a rhedeg 1518 01:16:37,120 --> 01:16:40,920 sy'n ymgorffori arferiad Google map yn ein tudalen we eich hun, 1519 01:16:40,920 --> 01:16:43,010 ac yna ychwanegu un neu ddau o nodweddion. 1520 01:16:43,010 --> 01:16:45,520 Ond byddwn yn jyst crafu'r wyneb yr hyn y gallwn ei wneud. 1521 01:16:45,520 --> 01:16:47,020 >> Felly dim ond gwiriad pwyll gyflym. 1522 01:16:47,020 --> 01:16:49,740 A yw pawb yn y dudalen hon, Google Maps JavaScript API? 1523 01:16:49,740 --> 01:16:50,872 Dylai ddweud dechrau arni. 1524 01:16:50,872 --> 01:16:53,330 Nid ydym yn mynd i fynd drwy'r yr holl beth mewn unrhyw fodd. 1525 01:16:53,330 --> 01:16:58,090 OK, mewn tab arall, os nad ydych yn ei wneud wedi ei agor, peidiwch â mynd i mewn i Cloud9 1526 01:16:58,090 --> 01:17:03,500 ac yn cael eich hun i ychydig tab newydd, yn y pen draw. 1527 01:17:03,500 --> 01:17:11,070 Felly eto, c9.io o ddoe, c9.io, a dim ond creu ffeil newydd. 1528 01:17:11,070 --> 01:17:13,500 Ac yn mynd yn ei flaen a galw mae'n beth bynnag yr hoffech. 1529 01:17:13,500 --> 01:17:16,495 Gelwais fy map.html. 1530 01:17:16,495 --> 01:17:17,870 Alw unrhyw beth yn dod i ben mewn html. 1531 01:17:17,870 --> 01:17:23,930 1532 01:17:23,930 --> 01:17:26,580 A dylech fod yn fras lle yr wyf yn y broses hon 1533 01:17:26,580 --> 01:17:31,470 gyda dim ond brydlon amrantu mewn gwag tab o'r enw rhywbeth fel map.html. 1534 01:17:31,470 --> 01:17:35,808 1535 01:17:35,808 --> 01:17:38,148 Neu ffeil, ffeiliau newydd y tro hwn. 1536 01:17:38,148 --> 01:17:41,960 1537 01:17:41,960 --> 01:17:48,000 >> Ac yn awr, drosodd ar y Google Maps JavaScript API, 1538 01:17:48,000 --> 01:17:50,010 byddwn sgip darllen drwy holl destun hwn. 1539 01:17:50,010 --> 01:17:53,760 Ond yn sylwi bod byd helo yw yn wir ym mhob man, i chi ei weld yn awr. 1540 01:17:53,760 --> 01:17:58,020 Helo Mae gan y byd hwn mawr lliwgar enghraifft o criw cyfan o HTML. 1541 01:17:58,020 --> 01:18:03,590 Mynd yn ei flaen ac yn copïo a gludo yn unig hynny HTML, felly oddi wrth y math doc ar y brig 1542 01:18:03,590 --> 01:18:08,810 yr holl ffordd at y tag HTML yn agos, ewch ei flaen a chopïo pob un that-- eto, 1543 01:18:08,810 --> 01:18:14,430 dyna o dan y byd helo example-- a bastio i mewn i'ch hynny tab Cloud9, 1544 01:18:14,430 --> 01:18:17,996 fel bod nawr eich sgrîn Dylai edrych yn fras fel fy. 1545 01:18:17,996 --> 01:18:22,280 1546 01:18:22,280 --> 01:18:24,520 >> A gallwch ei chadw, ond peidiwch lwytho eto. 1547 01:18:24,520 --> 01:18:26,290 Gadewch i ni edrych yn gyntaf ar y cod a gweld os ydym yn 1548 01:18:26,290 --> 01:18:29,110 Ni all casglu neu ddysgu o'r hyn y mae Google 1549 01:18:29,110 --> 01:18:30,860 wedi i ni ddall copïo a gludo. 1550 01:18:30,860 --> 01:18:33,334 Maent yn unig am helpu, yn llythrennol, yn cael ein cychwyn, 1551 01:18:33,334 --> 01:18:35,500 ond nid oes cymaint â hynny cymhlethdod mewn gwirionedd yno. 1552 01:18:35,500 --> 01:18:40,100 1553 01:18:40,100 --> 01:18:42,210 Unrhyw gwestiynau eto? 1554 01:18:42,210 --> 01:18:43,790 Rydym yn ddiogel i fwrw ymlaen? 1555 01:18:43,790 --> 01:18:44,330 IAWN. 1556 01:18:44,330 --> 01:18:46,800 >> Mor gyflym, gadewch i ni dim ond gwneud rhai gwiriadau callineb gyflym. 1557 01:18:46,800 --> 01:18:48,800 Llinell un o'r hyn yr wyf gweld, a gobeithio, byddwch yn 1558 01:18:48,800 --> 01:18:51,710 gweler, beth mae hynny'n ei olygu, HTML DOCTYPE? 1559 01:18:51,710 --> 01:18:52,385 Kareem, cofio? 1560 01:18:52,385 --> 01:18:53,260 GYNULLEIDFA: [Anghlywadwy] 1561 01:18:53,260 --> 01:18:53,968 DAVID Malan: Ydw. 1562 01:18:53,968 --> 01:18:54,870 Yma, yn dod HTML 5. 1563 01:18:54,870 --> 01:18:57,950 Yn y cyfamser, llinell dau ar y sgrin yma yn golygu hey porwr, 1564 01:18:57,950 --> 01:18:59,482 yma hon y HTML gwirioneddol. 1565 01:18:59,482 --> 01:19:01,440 Llinell tri yw hey porwr, yma hon y pen. 1566 01:19:01,440 --> 01:19:04,260 Llinell pedwar yw, wrth gwrs, hey porwr, yma hon y teitl. 1567 01:19:04,260 --> 01:19:07,780 Beth mae llinell pump yn ei wneud? 1568 01:19:07,780 --> 01:19:09,930 Mewn gwirionedd, nid yw hyn yn 'n sylweddol yn gwneud unrhyw beth i ni. 1569 01:19:09,930 --> 01:19:13,340 Yn yr achos hwn, 'i jyst newid maint y dudalen at ball. Llinell chwech, 1570 01:19:13,340 --> 01:19:16,140 nid ydym wedi siarad amdano, ond mae'n pennu'r amgodio cymeriad. 1571 01:19:16,140 --> 01:19:19,181 Mae gwahanol ffyrdd i amgodio ffeil, yn enwedig ar gyfer ieithoedd tramor. 1572 01:19:19,181 --> 01:19:21,100 UTF-8 yn unig yn tueddu i fod yn ddiofyn. 1573 01:19:21,100 --> 01:19:26,580 >> Felly nawr byddwn yn gweld yn unol saith drwy 16, mae rhai CSS. 1574 01:19:26,580 --> 01:19:29,260 A hyd yn oed er nad ydym wedi gweld pob un o'r pethau hyn o'r blaen, 1575 01:19:29,260 --> 01:19:30,810 gallwn fath o infer. 1576 01:19:30,810 --> 01:19:37,075 Felly llinell wyth ffordd, hey porwr, yn gymwys bob un o'r canlynol y mae dau dag, 1577 01:19:37,075 --> 01:19:37,575 yn ôl pob golwg? 1578 01:19:37,575 --> 01:19:40,650 1579 01:19:40,650 --> 01:19:41,701 Mae'r HTML a chorff testun. 1580 01:19:41,701 --> 01:19:43,200 Felly mae'r coma yw'r peth newydd yno. 1581 01:19:43,200 --> 01:19:46,140 A dim ond yn ffordd o gan nodi tagiau lluosog ar unwaith. 1582 01:19:46,140 --> 01:19:47,640 >> Yna, rydym wedi cael y braces cyrliog. 1583 01:19:47,640 --> 01:19:51,170 Felly mae'n debyg, mae hyn yn dweud wrth y porwr, gwneud uchder y dudalen 100%. 1584 01:19:51,170 --> 01:19:54,170 Felly hyd yn oed os oes ychydig iawn cynnwys, yn gwneud y dudalen gyfan, 1585 01:19:54,170 --> 01:19:55,530 gwneud y peth lenwi'r dudalen. 1586 01:19:55,530 --> 01:19:57,524 Gwnewch y map yn y pen draw lenwi'r dudalen. 1587 01:19:57,524 --> 01:19:58,690 Ymyl, beth mae hynny'n ei olygu? 1588 01:19:58,690 --> 01:20:01,559 Dyna fel arfer fel mympwyol gofod gwyn o amgylch yr ymylon 1589 01:20:01,559 --> 01:20:04,350 bod rhai dylunydd porwr yn unig Penderfynodd ddylai fod yno, oherwydd ei fod yn 1590 01:20:04,350 --> 01:20:05,540 math o gwneud i bethau edrych yn lanach. 1591 01:20:05,540 --> 01:20:06,498 Ond nid ydym am hynny. 1592 01:20:06,498 --> 01:20:08,710 Rydym am i'r map mynd yr holl ffordd i'r ymylon. 1593 01:20:08,710 --> 01:20:10,930 Padio, yn debyg mewn ysbryd i ymylon. 1594 01:20:10,930 --> 01:20:14,980 Ymylon golygu y tu allan, fodd padding y tu mewn, ond mae'n yr un math o fargen. 1595 01:20:14,980 --> 01:20:17,520 Mae'n ychydig o byffer rhyngoch chi a'r ymylon. 1596 01:20:17,520 --> 01:20:21,170 >> Ac yna llinell 13 yn dda Cyfle am adolygiad cyflym. 1597 01:20:21,170 --> 01:20:26,440 Beth mae map arwydd miniog golygu, neu olygu map hashtag? 1598 01:20:26,440 --> 01:20:29,650 Beth mae bod yn cyfeirio at, mewn egwyddor? 1599 01:20:29,650 --> 01:20:31,485 >> GYNULLEIDFA: [Anghlywadwy] 1600 01:20:31,485 --> 01:20:32,360 DAVID Malan: Yn union. 1601 01:20:32,360 --> 01:20:36,900 eiddo hwn, yr eiddo hwn CSS yn berthnasol i dim ond un peth, y tag HTML 1602 01:20:36,900 --> 01:20:41,180 sydd â adnabod o ddyfyniad, unquote "map". 1603 01:20:41,180 --> 01:20:44,460 Ac yn awr gadewch i ni ymlaen yn gyflym, sgrolio i lawr i waelod y ffeil, a oedd yn 1604 01:20:44,460 --> 01:20:49,860 Nid yn rhy bell i ffwrdd, a rhybudd ar-lein 19, os ydych yn gludwch yn union fel y gwnes, 1605 01:20:49,860 --> 01:20:53,405 llinell 19 Mae gan unig yw div, sydd yn rhaniad y dudalen, sy'n ddoe wyf 1606 01:20:53,405 --> 01:20:54,820 Gelwir rhanbarth hirsgwar. 1607 01:20:54,820 --> 01:20:55,820 Mae'n ddim byd ynddo. 1608 01:20:55,820 --> 01:20:57,550 Mae'n tag agored, tag cau. 1609 01:20:57,550 --> 01:20:59,490 Ond oes ganddo ID unigryw. 1610 01:20:59,490 --> 01:21:02,090 >> Felly yr hyn sy'n ymddangos i fod yn digwydd yma yw Google 1611 01:21:02,090 --> 01:21:05,880 yn readying ein tudalen ar y we i cael cyflawn uchder o 100%, 1612 01:21:05,880 --> 01:21:09,680 ac nid oes unrhyw padin, dim ymylon, gan fod hyn yr ydym yn mynd i roi y tu mewn 1613 01:21:09,680 --> 01:21:13,647 o div hwn, y mae eu ID unigryw yw map, yn fap wreiddio gwirioneddol. 1614 01:21:13,647 --> 01:21:15,480 Ac rydym am iddo lenwi y dudalen ac nid dim ond 1615 01:21:15,480 --> 01:21:17,560 fod rhywfaint petryal bach yn y canol. 1616 01:21:17,560 --> 01:21:24,220 Felly llinell 14 yn yr un modd yn pwysleisio, y map ei hun ddylai gael uchder o 100%. 1617 01:21:24,220 --> 01:21:29,220 >> Felly nawr yn sylwi rhwng llinellau 20 a 28, mae hyn yn JavaScript cod. 1618 01:21:29,220 --> 01:21:33,020 Ac mae hyn yn, hyd yn oed er 'i' syntactically ychydig yn rhyfedd, 1619 01:21:33,020 --> 01:21:34,730 Nid oes i gyd bod llawer sy'n digwydd fan hyn. 1620 01:21:34,730 --> 01:21:39,310 Yn unol 21, mae hyn yn datgan rhywbeth a elwir yn amrywiol. 1621 01:21:39,310 --> 01:21:42,030 Yn hytrach na galw yn symiau, fel y gwnaethom o'r blaen, 1622 01:21:42,030 --> 01:21:44,500 rydym yn fwy manwl gywir yn dweud var, a dim ond yn golygu amrywiol. 1623 01:21:44,500 --> 01:21:46,520 Gallem fod wedi defnyddio hynny yn cod Nick, ond nid oedd, felly yr wyf yn 1624 01:21:46,520 --> 01:21:48,190 Nid oedd yn trafferthu gwneud hynny chwaith. 1625 01:21:48,190 --> 01:21:50,240 Mae'n newidyn a elwir yn map, ac yna mae 1626 01:21:50,240 --> 01:21:53,360 swyddogaeth sy'n Gelwir pob golwg initMap. 1627 01:21:53,360 --> 01:21:55,780 >> Felly, mae hyn yn debyg ein hun arfer darn pos yn Scratch. 1628 01:21:55,780 --> 01:21:58,830 Rydym wedi creu darn o ymarferoldeb a elwir initMap, 1629 01:21:58,830 --> 01:22:00,980 a gallwch fath o awgrymu beth sy'n digwydd fan hyn. 1630 01:22:00,980 --> 01:22:02,930 Ar yr ochr chwith, mae gennym newidiol, 1631 01:22:02,930 --> 01:22:06,000 felly rydym yn mynd i roi y canlynol beth y tu mewn newidyn hynny, 1632 01:22:06,000 --> 01:22:07,362 o'r dde i'r chwith. 1633 01:22:07,362 --> 01:22:11,940 Yr ochr dde yn dweud, hey porwr, roi map Google newydd i mi. 1634 01:22:11,940 --> 01:22:16,490 Ac google.maps.map yn unig yw ffordd ffynci o nodi y swyddogaeth hon 1635 01:22:16,490 --> 01:22:19,790 yn perthyn i Google Maps. 1636 01:22:19,790 --> 01:22:23,010 >> Ar ôl y cromfachau, rydym wedi gweld hyn o'r blaen, hey porwr, yn cael 1637 01:22:23,010 --> 01:22:29,210 m 'r elfennau yn y dudalen, mae'r tag yn y dudalen y mae eu ID unigryw yw-- 1638 01:22:29,210 --> 01:22:30,710 >> GYNULLEIDFA: [Anghlywadwy] 1639 01:22:30,710 --> 01:22:31,790 >> DAVID Malan: --map. 1640 01:22:31,790 --> 01:22:35,770 A beth sy'n digwydd, yn dda, y llinell hon gyda'n gilydd, llinell 23, 1641 01:22:35,770 --> 01:22:38,630 yn ei hanfod gan ddywedyd, hey porwr, ewch ca 'm 1642 01:22:38,630 --> 01:22:42,800 bod div gwag ar y dudalen y mae eu ID unigryw yn map, 1643 01:22:42,800 --> 01:22:45,600 oherwydd yr wyf am i fewnosod i mewn iddo-- chwistrellu i mewn iddo, 1644 01:22:45,600 --> 01:22:49,520 os ydych will-- criw cyfan o gynnwys sy'n digwydd i fod yn dod oddi ar y we, 1645 01:22:49,520 --> 01:22:50,427 ar ôl hynny. 1646 01:22:50,427 --> 01:22:52,010 A Google yn gwneud hynny i gyd i ni. 1647 01:22:52,010 --> 01:22:55,350 >> Felly eto, ar ddiwedd y dydd, mae gennym enghraifft hon o dynnu. 1648 01:22:55,350 --> 01:22:58,610 Nid oes gennyf unrhyw syniad beth yw map neu sut i weithredu API map. 1649 01:22:58,610 --> 01:22:59,460 Nid oes angen i arnom. 1650 01:22:59,460 --> 01:23:02,740 jyst angen i ni ddweud wrth y map ble i roi ei hun, ac yn gadael 1651 01:23:02,740 --> 01:23:04,880 y rhai sy'n sail gweithredu manylion at Google. 1652 01:23:04,880 --> 01:23:08,190 Erbyn hyn mae yna yn ôl pob golwg ddau ddarn o ddata 1653 01:23:08,190 --> 01:23:11,940 bod yr enghraifft hon yn darparu i Google API. 1654 01:23:11,940 --> 01:23:16,450 Mae'n debyg ganol y map, a'r lefel chwyddo, fel petai. 1655 01:23:16,450 --> 01:23:21,390 >> Ac oes unrhyw un yn cydnabod y rhain cyfesurynnau, lledred a hydred? 1656 01:23:21,390 --> 01:23:24,364 Mwy na thebyg, ond gallwn fynd yn ôl at y tiwtorial, yn llythrennol yn gweld. 1657 01:23:24,364 --> 01:23:25,780 Ond byddwn yn ei weld mewn dim ond eiliad. 1658 01:23:25,780 --> 01:23:29,880 lefel chwyddo yn werth rhwng, nid wyf yn ei wneud gwybod, un o bob 13 neu rywbeth fel 'na. 1659 01:23:29,880 --> 01:23:32,880 'I jyst wedi ei wneud gyda pa mor bell ydych yn chwyddo i mewn neu allan, a dyna ni. 1660 01:23:32,880 --> 01:23:35,690 Ac yn awr ar ddiwedd y y dudalen, llinell rhybudd 29-- 1661 01:23:35,690 --> 01:23:39,960 mae'n ychydig yn hyll oherwydd mae'n wraps-- llinell hon o god 1662 01:23:39,960 --> 01:23:44,570 yw'r hyn downloads i'r porwr Google API gwirioneddol. 1663 01:23:44,570 --> 01:23:47,500 Mae pob un o'r cod sy'n Google peirianwyr wedi ysgrifennu sy'n gweithredu 1664 01:23:47,500 --> 01:23:50,000 hyn yn gyfan nodwedd o fapiau fewnosod. 1665 01:23:50,000 --> 01:23:51,470 >> Nawr, gadewch i ni newid unrhyw beth. 1666 01:23:51,470 --> 01:23:54,761 Os ydych yn dilyn ar hyd, mynd yn ei flaen a dim ond eithrio bod ffeil, os ydych yn wir gennych 1667 01:23:54,761 --> 01:23:55,760 yr hyn yr wyf wedi. 1668 01:23:55,760 --> 01:23:57,370 Ewch at ei URL. 1669 01:23:57,370 --> 01:23:59,820 Gallwch glicio ar y botwm Run i fyny top a fydd yn dweud 1670 01:23:59,820 --> 01:24:03,050 chi URL eich gweinydd gwe eto. 1671 01:24:03,050 --> 01:24:06,010 A bydd yn eich arwain at tab newydd. 1672 01:24:06,010 --> 01:24:11,910 Os cliciwch chi Agored i map.html, a groes yn eich bod yn 1673 01:24:11,910 --> 01:24:15,520 mynd i gael rhybudd, neges gwall, ie? 1674 01:24:15,520 --> 01:24:18,570 neges gwall, neges gwall? 1675 01:24:18,570 --> 01:24:21,170 >> Felly yn anffodus, mae'r gwall Nid yw neges yw bod goleuo 1676 01:24:21,170 --> 01:24:23,890 oni bai eich bod mewn gwirionedd yn agor y consol, y tab arbennig ni 1677 01:24:23,890 --> 01:24:27,110 Cedwir agor ddoe a ychydig yn gynharach heddiw. 1678 01:24:27,110 --> 01:24:29,445 Ond yr wyf yn baglu ar draws hyn yn gynharach, felly yr wyf eisoes 1679 01:24:29,445 --> 01:24:30,820 cyfrifedig allan yr hyn y mae'r ateb yw. 1680 01:24:30,820 --> 01:24:34,440 Yn sleidiau heddiw, neu yn hytrach, yn Cloud9, rhybudd 1681 01:24:34,440 --> 01:24:36,430 nad ydym yn gwneud rhywbeth yn fwriadol. 1682 01:24:36,430 --> 01:24:40,690 Sylwch fod sgript hwn tag yn llinell 29, os ydych yn darllen drwyddo, 1683 01:24:40,690 --> 01:24:44,440 mae fel maps.googleapis.com/ rhywbeth, rhywbeth, rhywbeth, 1684 01:24:44,440 --> 01:24:46,430 Yna sylwi rhywun, un o'r datblygwyr, 1685 01:24:46,430 --> 01:24:50,040 Ysgrifennodd ym mhob cyfalaf llythyrau, eich allwedd API. 1686 01:24:50,040 --> 01:24:51,700 >> Mae angen i ni bastio rhywbeth i mewn 'na. 1687 01:24:51,700 --> 01:24:53,450 A hyn oedd y cam Fe wnes i ni o'r blaen, 1688 01:24:53,450 --> 01:24:57,190 ac unwaith eto gallent rhestr ddu ni os yn sydyn, 12 neu mwy ohonom 1689 01:24:57,190 --> 01:24:59,470 yn dechrau gan ddefnyddio'r un allweddol, ond gadewch i ni weld beth sy'n digwydd. 1690 01:24:59,470 --> 01:25:03,030 Felly, os byddwch yn mynd i mewn i heddiw sleidiau, un sleid yn ddiweddarach, mae 1691 01:25:03,030 --> 01:25:07,070 hwn llinyn ffynci-edrych yn iawn o destun. 1692 01:25:07,070 --> 01:25:12,230 Mynd yn ei flaen ac yn jyst adysgrifia hynny a bastio 'lle mae'n dweud eich allwedd API. 1693 01:25:12,230 --> 01:25:15,120 Dyna'r un yr wyf yn cofrestru ar gyfer. 1694 01:25:15,120 --> 01:25:17,700 >> Ac nid yn bendant yn ceisio ei deipio allan â llaw, 1695 01:25:17,700 --> 01:25:21,210 oherwydd ei fod yn teimlo'n llawn gyda camgymeriadau teipio, o bosibl. 1696 01:25:21,210 --> 01:25:23,260 Felly jyst adysgrifia a bastio hynny. 1697 01:25:23,260 --> 01:25:26,090 Ac mae'n mynd i wneud y llinell yn hwy, ond erbyn hyn, dim ond i fod yn glir, 1698 01:25:26,090 --> 01:25:29,540 dylai edrych ychydig yn fwy fel hyn, lle nad yw allwedd hafal 1699 01:25:29,540 --> 01:25:32,200 cyfalafu gweiddi ar chi. 1700 01:25:32,200 --> 01:25:34,810 Arbedwch eich tudalen, ewch yn ôl i'r tab arall, ail-lwytho, 1701 01:25:34,810 --> 01:25:36,770 ac yn gobeithio i weld map o ble? 1702 01:25:36,770 --> 01:25:37,790 >> GYNULLEIDFA: Awstralia. 1703 01:25:37,790 --> 01:25:38,748 >> DAVID Malan: Awstralia. 1704 01:25:38,748 --> 01:25:41,200 Felly mae'n debyg y rheini yw'r Cyfesurynnau GPS o Awstralia. 1705 01:25:41,200 --> 01:25:44,491 A gadewch i mi gerdded o gwmpas am ychydig funudau'n ac yn helpu unrhyw un nad ydynt yn eithaf yno, 1706 01:25:44,491 --> 01:25:47,729 ond gadewch i mi gynnig, trwy Google, dod o hyd Cyfesurynnau GPS eich hometown hun 1707 01:25:47,729 --> 01:25:48,770 neu eich gwlad cartref eich hun. 1708 01:25:48,770 --> 01:25:51,436 Ac mae'n debyg y gall Google droi hyn Gall fyny, neu Wicipedia dweud wrthych. 1709 01:25:51,436 --> 01:25:54,410 Ond sy'n dewis dau werthoedd gwahanol ar gyfer lledred a hydred, 1710 01:25:54,410 --> 01:25:57,530 mynd yn ôl i mewn ac yn eu gludo, a Yna ail-lwytho'r dudalen ar ôl achub 1711 01:25:57,530 --> 01:26:00,718 a gweld os allwch chi gael map ar gyfer eich hometown hun. 1712 01:26:00,718 --> 01:26:04,500 1713 01:26:04,500 --> 01:26:08,042 >> A phan fyddwch chi'n ei wneud gyda hynny, mae'r dilynol challenge-- 1714 01:26:08,042 --> 01:26:11,250 a byddaf yn rhoi ychydig yn llai cyfeiriad, yn fwriadol, er mwyn i chi yn fwriadol 1715 01:26:11,250 --> 01:26:13,791 rhaid i frwydro am gwpl cofnodion gyda'r ddogfennaeth, 1716 01:26:13,791 --> 01:26:18,740 newid y map i fod nad yw hyn diofyn cartoonish, ond map lloeren. 1717 01:26:18,740 --> 01:26:24,600 Felly, byddwch yn gweld lloeren delweddaeth yn lle y lliwiau 'n bert. 1718 01:26:24,600 --> 01:26:29,710 >> Ac mae'r awgrym byddaf yn rhoi i chi yw newid math y map yn. 1719 01:26:29,710 --> 01:26:33,084 Ewch yn ôl at hynny gael Dechreuodd dudalen am ysbrydoliaeth. 1720 01:26:33,084 --> 01:26:40,599 1721 01:26:40,599 --> 01:26:42,390 Fel y gallech fod wedi lloffa, os ydych yn chwilio, 1722 01:26:42,390 --> 01:26:44,250 mae cymaint o fwy pethau y gallwch eu gwneud. 1723 01:26:44,250 --> 01:26:46,380 Mae rhai ohonoch eisoes wedi newidiodd y math map. 1724 01:26:46,380 --> 01:26:49,890 Ond gallwch do-- er enghraifft, gadewch i mi mynd i rywbeth a wnaethom ar gyfer y cwrs 1725 01:26:49,890 --> 01:26:52,050 Rwy'n teach-- maps.cs50.net. 1726 01:26:52,050 --> 01:26:53,470 Un o'n israddedigion yn gwneud hyn. 1727 01:26:53,470 --> 01:26:58,890 Rydym yn canolbwyntio ein map dros Harvard Yard a troshaenu pob un o'r enwau adeiladu hyn, 1728 01:26:58,890 --> 01:27:01,070 a chawsom ef ychwanegu hyn. 1729 01:27:01,070 --> 01:27:04,270 Felly os ydw i am chwilio am, er enghraifft, Neuadd Matthews, 1730 01:27:04,270 --> 01:27:05,730 mae gennym ychydig o cwymplen. 1731 01:27:05,730 --> 01:27:09,080 Ac yr wyf yn meddwl ei fod yn defnyddio'r bootstrap, mae'r llyfrgell rydym yn trafod yn gynharach ar gyfer hyn. 1732 01:27:09,080 --> 01:27:12,190 Ac os ydych yn clicio ar Matthews Hall, unwaith 1733 01:27:12,190 --> 01:27:14,790 neidio y map i ryw lleoliad, ac mae'n dangos 1734 01:27:14,790 --> 01:27:16,440 chi lun yn yr ychydig pop-up. 1735 01:27:16,440 --> 01:27:18,670 >> Ond hyd yn oed hyn ychydig pop-up, doedden ni ddim yn rhoi ar waith. 1736 01:27:18,670 --> 01:27:27,521 Os byddaf yn sgroliwch i lawr ar ein gael Dechreuodd dudalen a chwilio am ffenestri info, 1737 01:27:27,521 --> 01:27:29,770 byddwch yn gweld bod rhai o'r functionality chi eich hun 1738 01:27:29,770 --> 01:27:31,561 Gall ychwanegu, er gyda ychydig yn fwy cymhleth, 1739 01:27:31,561 --> 01:27:33,970 yn rhywbeth a elwir yn ffenestr info. 1740 01:27:33,970 --> 01:27:37,190 Ac os wyf yn clicio enghraifft yma, ac mae hyn yn beth sy'n hwyl, 1741 01:27:37,190 --> 01:27:40,530 gallwch wneud pethau fel hyn, glicio ar marciwr ac yna voila, 1742 01:27:40,530 --> 01:27:42,400 gwybodaeth pops i fyny. 1743 01:27:42,400 --> 01:27:45,874 >> Felly nid ydym wedi eithaf cyflwyno digon o nodweddion o JavaScript 1744 01:27:45,874 --> 01:27:49,040 i baentio darlun o sut yn union yr ydych Gallai gwifren holl bethau hyn gyda'i gilydd, 1745 01:27:49,040 --> 01:27:50,706 ond rydym wedi fath o crafu'r wyneb. 1746 01:27:50,706 --> 01:27:53,140 Yn wir, yr hyn yr wyf yn unig oedd pan Yr wyf yn clicio ar y marciwr, 1747 01:27:53,140 --> 01:27:55,819 yn sbarduno digwyddiad, mae hyn a elwir ar y digwyddiad cliciwch. 1748 01:27:55,819 --> 01:27:57,610 Ac rydym mewn gwirionedd yn gweld digwyddiad yn gynharach heddiw, 1749 01:27:57,610 --> 01:28:00,670 yr hyn a elwir digwyddiad cyflwyno, pan oeddem yn atal 1750 01:28:00,670 --> 01:28:02,490 y defnyddiwr rhag chwilio am gathod. 1751 01:28:02,490 --> 01:28:06,560 Felly, rydym wedi math o pigo a choosed o blith yr holl nodweddion amrywiol hyn, 1752 01:28:06,560 --> 01:28:08,990 i roi ymdeimlad i chi, gobeithio, yr hyn a allwch mewn gwirionedd 1753 01:28:08,990 --> 01:28:11,000 wneud gyda ychydig yn fwy cysur mewn rhaglenni, 1754 01:28:11,000 --> 01:28:12,587 ac adnoddau rhad ac am ddim. 1755 01:28:12,587 --> 01:28:15,856 1756 01:28:15,856 --> 01:28:18,770 >> Unrhyw gwestiynau? 1757 01:28:18,770 --> 01:28:19,790 Na? 1758 01:28:19,790 --> 01:28:22,542 Dyma eich cyfle olaf, o leiaf heddiw, ar ddydd Gwener, 1759 01:28:22,542 --> 01:28:25,000 i gael unrhyw beth oddi ar eich brest fel eich bod yn cerdded allan o'r yma 1760 01:28:25,000 --> 01:28:27,067 teimlo'n hyderus ac yn gyfforddus. 1761 01:28:27,067 --> 01:28:27,566 Ydw. 1762 01:28:27,566 --> 01:28:29,740 >> GYNULLEIDFA: Pam na gwneud chi ychwanegu un peth arall? 1763 01:28:29,740 --> 01:28:32,720 >> DAVID Malan: O fy daioni. 1764 01:28:32,720 --> 01:28:35,260 Mae angen i mi orffwys y penwythnos hwn, yr wyf yn meddwl. 1765 01:28:35,260 --> 01:28:36,180 Cwestiynau eraill? 1766 01:28:36,180 --> 01:28:37,055 >> GYNULLEIDFA: [Anghlywadwy] 1767 01:28:37,055 --> 01:28:44,130 1768 01:28:44,130 --> 01:28:46,810 >> DAVID Malan: Rydych can-- mewn Internet Explorer, gorffwys mewn heddwch, 1769 01:28:46,810 --> 01:28:49,310 chi ei ddefnyddio i fod yn gallu rhoi VB sgript, rhithwir sgript sylfaenol, 1770 01:28:49,310 --> 01:28:50,643 ond sydd wir yn byth yn dal ar. 1771 01:28:50,643 --> 01:28:52,490 Felly yr ateb byr yn unig yw JavaScript. 1772 01:28:52,490 --> 01:28:55,144 1773 01:28:55,144 --> 01:28:55,810 Cwestiynau eraill? 1774 01:28:55,810 --> 01:28:58,427 1775 01:28:58,427 --> 01:28:59,760 Mae pob hawl, yn dda, gadewch i mi wneud hyn. 1776 01:28:59,760 --> 01:29:02,070 Gadewch i mi cydio ein cydweithwyr y tu allan. 1777 01:29:02,070 --> 01:29:04,500 Mae ganddynt rhywfaint o werthuso ffurflenni y maent am i bawb 1778 01:29:04,500 --> 01:29:06,310 i dreulio ychydig o funudau yn llenwi'r allan. 1779 01:29:06,310 --> 01:29:08,775 Maent yn awyddus i gasglu y ffurf honno ac unrhyw hepgoriadau a allai fod gennych y tu allan. 1780 01:29:08,775 --> 01:29:10,240 Byddant hefyd yn cael tystysgrifau. 1781 01:29:10,240 --> 01:29:12,380 Rwy'n dyfalu mae dal rhai byrbrydau tu allan. 1782 01:29:12,380 --> 01:29:14,360 Gadewch i mi basio hyn allan, ac os ydych yn gennych unrhyw gwestiynau yn y cyfamser, 1783 01:29:14,360 --> 01:29:17,120 'N annhymerus' cerdded o gwmpas yn fwy yn unigol a gallwn helpu i ddechrau. 1784 01:29:17,120 --> 01:29:17,879 Ie wrth gwrs. 1785 01:29:17,879 --> 01:29:18,754 GYNULLEIDFA: [Anghlywadwy] 1786 01:29:18,754 --> 01:29:26,737 1787 01:29:26,737 --> 01:29:28,570 DAVID Malan: Dyna fel arfer yn wir y dyddiau hyn. 1788 01:29:28,570 --> 01:29:30,730 Yn sicr gyda gwe meddalwedd, rydych yn pwyso 1789 01:29:30,730 --> 01:29:32,901 ar bobl eraill eich bod naill ai esthetaidd gan ddefnyddio pethau 1790 01:29:32,901 --> 01:29:35,400 fel bootstrap, fel nad ydych yn ei wneud rhaid i weithredu'r lefel isel 1791 01:29:35,400 --> 01:29:37,169 manylion o fwydlenni a botymau a hynny i gyd. 1792 01:29:37,169 --> 01:29:39,210 Rydych yn pwyso ar rywun fel Google er mwyn i chi 1793 01:29:39,210 --> 01:29:42,050 Nid oes yn rhaid i adeiladu Uber busnes a busnes mapio, 1794 01:29:42,050 --> 01:29:44,850 ac unrhyw nifer o tebyg ceisiadau yn ogystal. 1795 01:29:44,850 --> 01:29:46,350 >> Yn wir, logins yn boblogaidd, hefyd. 1796 01:29:46,350 --> 01:29:48,500 Os ydych chi wedi defnyddio Spotify neu unrhyw nifer o wefannau, 1797 01:29:48,500 --> 01:29:51,210 byddwch yn logio i mewn i rai gwefannau sy'n defnyddio Facebook. 1798 01:29:51,210 --> 01:29:53,350 Felly beth braf, mae yna yn APIs ar gyfer mewngofnodi 1799 01:29:53,350 --> 01:29:56,570 dyddiau hyn, fel nad oes gennych i gael eich bwrdd defnyddwyr ei hun 1800 01:29:56,570 --> 01:29:59,440 a phob un o'ch cronfa ddata eich hun o reidrwydd i'r un graddau. 1801 01:29:59,440 --> 01:30:01,795 Gallwch roi Facebook yn gwneud popeth o'r cymhlethdod i chi. 1802 01:30:01,795 --> 01:30:03,920 Felly mae'n gyfnod cyffrous, yn onest, yn rhaglennu, 1803 01:30:03,920 --> 01:30:07,200 oherwydd bod cymaint o trydydd parti gwasanaethau y gallwch adeiladu ar ben. 1804 01:30:07,200 --> 01:30:10,890 >> Ac eto, y pris a dalwch yn naill ai ariannol neu amser segur. 1805 01:30:10,890 --> 01:30:13,750 Os bydd Google yn mynd i lawr, felly hefyd Uber, gellid dadlau, 1806 01:30:13,750 --> 01:30:15,690 ond efallai mae hynny'n rhesymol cyfaddawd. 1807 01:30:15,690 --> 01:30:18,040 Ac eto, dyna oedd un o'r themâu, gobeithio, ar gyfer y dyddiau diwethaf, 1808 01:30:18,040 --> 01:30:18,780 yw hyn cyfaddawdau. 1809 01:30:18,780 --> 01:30:20,738 Ac anaml yno yn mynd i fod yn ateb cywir. 1810 01:30:20,738 --> 01:30:25,700 Mae'n wir yn y gwell o ddau neu fwy o atebion. 1811 01:30:25,700 --> 01:30:26,682 >> Pasiwch y rhain o gwmpas. 1812 01:30:26,682 --> 01:30:36,830 1813 01:30:36,830 --> 01:30:41,110 >> A bydd cyfrifon Cloud9 rhain yn parhau i weithio, mewn theori, am byth. 1814 01:30:41,110 --> 01:30:45,000 Efallai y byddwch yn dod o hyd os ydych yn aros ychydig ddyddiau neu wythnos neu fwy i fewngofnodi yn ôl i mewn iddynt, 1815 01:30:45,000 --> 01:30:49,170 gallai gymryd fel un neu pum munud i agor yn ôl i fyny, 1816 01:30:49,170 --> 01:30:54,090 ond dim ond oherwydd eu bod yn rhoi iddo i gysgu i arbed ar adnoddau. 1817 01:30:54,090 --> 01:31:10,527