1 00:00:00,000 --> 00:00:08,100 2 00:00:08,100 --> 00:00:08,890 >> ROGER ZURAWICKI: Hej alle. 3 00:00:08,890 --> 00:00:11,310 Kan jeg få din opmærksomhed? 4 00:00:11,310 --> 00:00:12,090 Tak, gutter. 5 00:00:12,090 --> 00:00:14,030 I dag ønsker jeg at tale om Meteor. 6 00:00:14,030 --> 00:00:16,710 Det er et JavaScript rammerne. 7 00:00:16,710 --> 00:00:21,110 Vi vil komme igennem, hvordan du kan gøre virkelig cool web apps. 8 00:00:21,110 --> 00:00:24,940 >> Før vi kommer ind i JavaScript, jeg bare ønsker at fortælle jer, at dette vil 9 00:00:24,940 --> 00:00:26,900 være - du har en nyere stykke dette semester. 10 00:00:26,900 --> 00:00:28,520 Det bør være om JavaScript. 11 00:00:28,520 --> 00:00:32,910 Jeg tror [uhørligt] er først kommer til at dække web HTML PHP ting, før vi 12 00:00:32,910 --> 00:00:34,530 flytte til JavaScript. 13 00:00:34,530 --> 00:00:39,650 Og i CS50 er JavaScript betragtes som en klient kode. 14 00:00:39,650 --> 00:00:41,970 Så det kun bliver kørt i webbrowseren. 15 00:00:41,970 --> 00:00:45,740 >> Men takket være de seneste fremskridt i teknologi, er vi nu i stand til at køre 16 00:00:45,740 --> 00:00:48,090 JavaScript som en server så godt. 17 00:00:48,090 --> 00:00:51,630 Så det har skabt en virkelig cool rammer, fordi nu kan du skrive 18 00:00:51,630 --> 00:00:55,250 legitimt den samme kode for klienten og serveren. 19 00:00:55,250 --> 00:00:57,810 Og når du definere funktioner i din server, kan din klient kalder dem 20 00:00:57,810 --> 00:00:59,090 samme funktioner. 21 00:00:59,090 --> 00:01:00,370 Og det gør det meget lettere. 22 00:01:00,370 --> 00:01:04,519 Hvor der før, hvis du bruger PHP på serveren, JavaScript på forsiden 23 00:01:04,519 --> 00:01:08,040 ende, er du nødt til at skrive en PHP funktion og derefter en JavaScript-version af 24 00:01:08,040 --> 00:01:10,880 samme funktion til at gøre det samme slags arbejde. 25 00:01:10,880 --> 00:01:14,330 >> Så inden vi går i gang, vil jeg til at vise dig en demo af, hvad 26 00:01:14,330 --> 00:01:17,190 Meteor kan gøre for dig. 27 00:01:17,190 --> 00:01:20,330 Jeg vil vise dig den demo, som er det, vil du være i stand til at skabe den 28 00:01:20,330 --> 00:01:21,580 slutningen af ​​dette seminar. 29 00:01:21,580 --> 00:01:24,260 30 00:01:24,260 --> 00:01:25,670 Vi bare gå lige her. 31 00:01:25,670 --> 00:01:27,410 Dette er en Leaderboard app. 32 00:01:27,410 --> 00:01:31,970 Det er faktisk baseret ud af eksemplet at Meteor giver dig. 33 00:01:31,970 --> 00:01:37,220 >> Meteor er meget rart, fordi når du installere det som en pakke, kan du 34 00:01:37,220 --> 00:01:39,140 dybest set lege med disse fire demoer. 35 00:01:39,140 --> 00:01:41,410 Og Leaderboard er første af disse demoer. 36 00:01:41,410 --> 00:01:44,620 Efter seminaret, vil jeg opfordre jer alle bare at udforske de andre demoer 37 00:01:44,620 --> 00:01:48,300 fordi jeg tror, ​​de er virkelig cool, og de viser dig magt Meteor. 38 00:01:48,300 --> 00:01:51,310 >> Så hvad det er, det er hostes på Leaderboard. 39 00:01:51,310 --> 00:01:54,950 Dette er blot ærligt en navneliste. 40 00:01:54,950 --> 00:01:56,510 Og du kan vælge folk. 41 00:01:56,510 --> 00:01:57,780 De bliver gule. 42 00:01:57,780 --> 00:02:00,060 Og så kan du give dem fem point. 43 00:02:00,060 --> 00:02:02,850 Og du vil opdage, at listen er sorteret fordi som jeg giver mig selv mere 44 00:02:02,850 --> 00:02:05,850 og flere point, er jeg nu på toppen. 45 00:02:05,850 --> 00:02:07,420 Så dette er, hvor vi skal begynde. 46 00:02:07,420 --> 00:02:11,690 >> Og hvad vil du være i stand til at tage væk fra dette seminar er et par mere 47 00:02:11,690 --> 00:02:13,600 funktioner, jeg har føjet til Leaderboard. 48 00:02:13,600 --> 00:02:18,240 Vi vil være der dækker hvordan, samt tilføje fem point til en spiller, vi kan 49 00:02:18,240 --> 00:02:28,720 slette spillere, kan vi tilføje nye spillere, og vi kan vælge, hvordan vi vil 50 00:02:28,720 --> 00:02:29,540 at sortere dem. 51 00:02:29,540 --> 00:02:35,240 Og disse er alle meget nemme API-kald at Meteor giver dig. 52 00:02:35,240 --> 00:02:39,120 Du har også en funktion her at randomisere scoringer. 53 00:02:39,120 --> 00:02:41,450 >> Så hvad er virkelig cool om dette er du fyre kan faktisk 54 00:02:41,450 --> 00:02:43,820 alle gå til webstedet. 55 00:02:43,820 --> 00:02:46,575 Jeg vil sætte det i større tekst her. 56 00:02:46,575 --> 00:02:51,390 57 00:02:51,390 --> 00:02:52,640 One-radikal-lead erboard.meteor.com. 58 00:02:52,640 --> 00:03:03,390 59 00:03:03,390 --> 00:03:07,622 Og når du fyre gå til webstedet, du bør være i stand til at redigere hjemmesiden, og 60 00:03:07,622 --> 00:03:09,595 alle dine redigeringer vil være synlig til alle andre. 61 00:03:09,595 --> 00:03:12,730 62 00:03:12,730 --> 00:03:17,740 Så du kan - er du fyre alle stand til at forbinde til sitet? 63 00:03:17,740 --> 00:03:18,750 Så lege med det. 64 00:03:18,750 --> 00:03:20,440 Gå ud og begynde at slette nogle navne. 65 00:03:20,440 --> 00:03:21,690 Se hvad der sker. 66 00:03:21,690 --> 00:03:35,370 67 00:03:35,370 --> 00:03:38,510 >> Så du ser alle kan spille. 68 00:03:38,510 --> 00:03:41,930 Dette er blot standard sikkerhed tilstand for Meteor. 69 00:03:41,930 --> 00:03:44,360 Du kan se, at alle kan ændre hinandens data. 70 00:03:44,360 --> 00:03:44,920 Må ikke bekymre dig. 71 00:03:44,920 --> 00:03:46,460 Meteor har dog sikkerhed. 72 00:03:46,460 --> 00:03:49,860 Dette er en meget let gennemføres funktion, hvor du kan oprette brugere 73 00:03:49,860 --> 00:03:50,600 og logins. 74 00:03:50,600 --> 00:03:53,750 Men lige nu nogen, der besøger websted kan give sig selv så mange 75 00:03:53,750 --> 00:03:55,000 peger som de ønsker. 76 00:03:55,000 --> 00:03:57,140 77 00:03:57,140 --> 00:04:00,090 Så jeg altid som dette, fordi dette er en sjov måde at komme i gang. 78 00:04:00,090 --> 00:04:02,360 Og så vil vi bare snakke om detaljerne, hvordan 79 00:04:02,360 --> 00:04:03,610 Meteor gør dette muligt. 80 00:04:03,610 --> 00:04:10,820 81 00:04:10,820 --> 00:04:15,660 >> Så jeg har tænkt mig at dække, hvad Meteor er, og så vil vi bare nødt til at dække den 82 00:04:15,660 --> 00:04:18,920 to forudsætninger, CS50 ikke dækket nok. 83 00:04:18,920 --> 00:04:21,970 Men ved udgangen af ​​perioden, bør du være fortrolig med både HTML og 84 00:04:21,970 --> 00:04:25,250 JavaScript for virkelig at få dine hænder beskidte arbejde med Meteor. 85 00:04:25,250 --> 00:04:28,740 Og jeg synes, det er bare en god måde for endnu mindre behagelig studerende til at gøre 86 00:04:28,740 --> 00:04:32,930 afgangsprojekter, fordi de virkelig kan ophold på ét sprog, og de får at 87 00:04:32,930 --> 00:04:37,620 se ændringerne i deres arbejde med det samme. 88 00:04:37,620 --> 00:04:42,520 >> Så denne diasshows blot nogle af de vigtige teknologier som Meteor JS 89 00:04:42,520 --> 00:04:43,610 giver til dig. 90 00:04:43,610 --> 00:04:46,090 Meteor er ikke en ny teknologi på egen hånd. 91 00:04:46,090 --> 00:04:48,390 Det er virkelig et konglomerat af alle disse forskellige ting 92 00:04:48,390 --> 00:04:49,920 vi har på internettet. 93 00:04:49,920 --> 00:04:55,650 Samt HTML, CSS, JavaScript, vi har nogle teknologier som Node.js, 94 00:04:55,650 --> 00:04:58,490 hvilket er, hvad giver dig mulighed for at køre JavaScript på bagsiden ende på din 95 00:04:58,490 --> 00:05:02,520 server, samt nogle JavaScript biblioteker, som jQuery, understregning. 96 00:05:02,520 --> 00:05:06,320 >> Alle disse vil være velkendt for du ved udgangen af ​​semesteret. 97 00:05:06,320 --> 00:05:10,680 Og vi får også at bruge en database kaldet MongoDB, som er en virkelig 98 00:05:10,680 --> 00:05:14,250 populær database nu for disse nye nystartede. 99 00:05:14,250 --> 00:05:18,650 Du kan tænke på det som ligesom MySQL, men det virker meget pænt med JavaScript. 100 00:05:18,650 --> 00:05:22,140 Og der er nogle andre teknologier her og mange flere jeg ikke har listet 101 00:05:22,140 --> 00:05:23,880 at alle grænseflade virkelig pænt med Meteor. 102 00:05:23,880 --> 00:05:26,900 103 00:05:26,900 --> 00:05:30,540 >> Jeg er nødt til at sætte dette dias, fordi nogle gange får jeg forvirring om dette. 104 00:05:30,540 --> 00:05:31,695 Meteor er kun JavaScript. 105 00:05:31,695 --> 00:05:33,040 Det er ikke PHP. 106 00:05:33,040 --> 00:05:34,360 Det er ikke Ruby on Rails. 107 00:05:34,360 --> 00:05:37,950 Så hvis du skriver kode, hvis du vil skrive et Meteor projekt, du virkelig 108 00:05:37,950 --> 00:05:38,900 kan ikke bruge Ruby kode. 109 00:05:38,900 --> 00:05:41,660 Du virkelig ikke bruge PHP. 110 00:05:41,660 --> 00:05:45,800 >> Mens vi vil se, at forskellene i kode og syntaks måske ikke så 111 00:05:45,800 --> 00:05:48,930 anderledes, vil jeg gerne understrege for dig, at Meteor, alt hvad du koden 112 00:05:48,930 --> 00:05:50,660 kun i JavaScript. 113 00:05:50,660 --> 00:05:53,920 Og alt, hvad du viser på brugeren vil være HTML CSS. 114 00:05:53,920 --> 00:05:56,780 Men du faktisk ikke bruger nogen af de andre sprog, andre 115 00:05:56,780 --> 00:05:59,250 seminarer kan dække. 116 00:05:59,250 --> 00:06:01,020 Hvad Meteor er også er en webserver. 117 00:06:01,020 --> 00:06:03,930 Så selvom du ikke har nogen JavaScript, og du blot ønsker at tjene 118 00:06:03,930 --> 00:06:07,020 CSS og HTML-filer, Meteor kan gøre det for dig. 119 00:06:07,020 --> 00:06:10,520 120 00:06:10,520 --> 00:06:13,770 >> Og her er linket igen til demo, jeg fik jer 121 00:06:13,770 --> 00:06:15,380 begyndte at spille med. 122 00:06:15,380 --> 00:06:18,230 Men lad os gå videre til HTML. 123 00:06:18,230 --> 00:06:22,060 Hvor mange mennesker her har ingen idé om, hvad HTML er? 124 00:06:22,060 --> 00:06:22,670 OK stor. 125 00:06:22,670 --> 00:06:25,800 Og det er helt fint. 126 00:06:25,800 --> 00:06:29,410 Du virkelig behøver ikke at vide meget om det, fordi vi vil gå over 127 00:06:29,410 --> 00:06:31,220 forbrug meget enkelt. 128 00:06:31,220 --> 00:06:34,570 >> Dette er, hvad den enkle HTML-side ser ud. 129 00:06:34,570 --> 00:06:38,840 Det kan være som din hej, verden for HTML, mens vi startede i C med 130 00:06:38,840 --> 00:06:40,760 hej, verden. 131 00:06:40,760 --> 00:06:44,360 Jeg ønsker ikke at understrege den detaljer om, hvad HTML, hvad hoved, hvad 132 00:06:44,360 --> 00:06:46,120 krop, hvad titel gør der. 133 00:06:46,120 --> 00:06:49,130 Jeg ønsker blot at understrege strukturen, hvordan du har tags. 134 00:06:49,130 --> 00:06:50,860 Og det er vinkelbeslagene. 135 00:06:50,860 --> 00:06:52,380 Og det er, hvor du har dine deskriptorer. 136 00:06:52,380 --> 00:06:54,790 >> Så du kan have HTML-dokumentet. 137 00:06:54,790 --> 00:06:59,300 Og så vil du lukker HTML-dokumentet med backslash samme ting. 138 00:06:59,300 --> 00:07:01,200 Og du har forskellige slags tags. 139 00:07:01,200 --> 00:07:02,730 Og bemærk, at de alle er matchet. 140 00:07:02,730 --> 00:07:05,300 Du har gerne en body-tagget og derefter en tæt krop tag. 141 00:07:05,300 --> 00:07:08,620 Og inde i kroppen tag, vil det være indholdet på din webside. 142 00:07:08,620 --> 00:07:12,770 Så denne webside vil simpelthen vise i en hvid baggrund og sort tekst 143 00:07:12,770 --> 00:07:14,242 hej, verden. 144 00:07:14,242 --> 00:07:17,610 Betyder det giver mening? 145 00:07:17,610 --> 00:07:19,500 OK. 146 00:07:19,500 --> 00:07:22,640 >> Nu vil jeg hurtigt dække JavaScript. 147 00:07:22,640 --> 00:07:26,990 Med ordene fra en tidligere TF, "JavaScript er den bedste programmering 148 00:07:26,990 --> 00:07:28,550 sprog eksisterer i dag. 149 00:07:28,550 --> 00:07:30,520 Andre mennesker vil forsøge at fortælle dig noget andet. 150 00:07:30,520 --> 00:07:33,840 De er forkerte. "JavaScript er temmelig nice, og jeg vil vise dig hvorfor. 151 00:07:33,840 --> 00:07:36,620 152 00:07:36,620 --> 00:07:42,380 >> Så dette er det klassiske eksempel begynder vi med i C. Vi har hej, verden. 153 00:07:42,380 --> 00:07:45,500 Og du bemærker, at selv hvis du krymper det, skal du have mindst to 154 00:07:45,500 --> 00:07:46,560 linjer kode her. 155 00:07:46,560 --> 00:07:48,990 Jeg har flere linjer kode. 156 00:07:48,990 --> 00:07:50,160 Dette kan gøres meget enkelt. 157 00:07:50,160 --> 00:07:53,950 Én linje i JavaScript med console.log, og derefter din streng, 158 00:07:53,950 --> 00:07:55,340 hej, verden. 159 00:07:55,340 --> 00:07:59,570 >> Nu, selv om vi flytter til en ny sprog JavaScript, næsten alle de 160 00:07:59,570 --> 00:08:02,950 færdigheder, du har lært ved kodning i C er direkte bærbare. 161 00:08:02,950 --> 00:08:07,130 Så strenge, tanken om strenge i anførselstegn, det er den samme. 162 00:08:07,130 --> 00:08:08,890 Semikolon, det er det samme. 163 00:08:08,890 --> 00:08:11,190 >> En pæn feature om JavaScript faktisk er, at du 164 00:08:11,190 --> 00:08:12,360 behøver ikke semikolon. 165 00:08:12,360 --> 00:08:14,950 Det kan gætte på, at du skal sætte et semikolon der. 166 00:08:14,950 --> 00:08:18,035 Men det sagt, bør du altid prøve at lægge dine semikoloner der. 167 00:08:18,035 --> 00:08:21,160 Det betragtes som god stil. 168 00:08:21,160 --> 00:08:22,650 Og også, er der ingen hovedfunktion. 169 00:08:22,650 --> 00:08:25,580 Du skal bare starte øverst i filen og læse ting linje for linje. 170 00:08:25,580 --> 00:08:28,820 171 00:08:28,820 --> 00:08:32,760 >> Så det er, hvad det tager at gøre at hej, verden program. 172 00:08:32,760 --> 00:08:36,059 Og så opdager, at du er nødt til at gøre goddag og derefter køre hej. 173 00:08:36,059 --> 00:08:38,530 Med JavaScript, er det betragtes som et fortolket sprog. 174 00:08:38,530 --> 00:08:40,780 Hvad du behøver at vide er, at der er ingen beslutningsproces. 175 00:08:40,780 --> 00:08:41,950 >> Der er ingen kompilere. 176 00:08:41,950 --> 00:08:43,440 Du skal bare køre node. 177 00:08:43,440 --> 00:08:47,220 Og husk node er det program, vil køre din JavaScript på en konsol, 178 00:08:47,220 --> 00:08:49,030 på en sort boks, der ikke på hjemmesiden. 179 00:08:49,030 --> 00:08:52,480 Så du bare give det filen, og det er kommer til at udskrive hej, verden. 180 00:08:52,480 --> 00:08:56,750 >> Jeg vil faktisk gøre en lille demo af at for jer lige her. 181 00:08:56,750 --> 00:08:59,380 Så lad os gå over til min Node.js terminal. 182 00:08:59,380 --> 00:09:04,470 183 00:09:04,470 --> 00:09:05,322 OK. 184 00:09:05,322 --> 00:09:06,150 Lad os flytte her. 185 00:09:06,150 --> 00:09:07,930 Så jeg har tænkt mig at starte node. 186 00:09:07,930 --> 00:09:10,230 Og jeg vil vise jer i netop et sekund, hvordan man får det 187 00:09:10,230 --> 00:09:12,000 installeret, hvis du ikke gør. 188 00:09:12,000 --> 00:09:14,800 Lad mig gøre det lidt større. 189 00:09:14,800 --> 00:09:17,800 190 00:09:17,800 --> 00:09:17,870 OK. 191 00:09:17,870 --> 00:09:20,120 Jeg håber du fyre kan se. 192 00:09:20,120 --> 00:09:27,390 >> Så jeg kan skrive kode som jeg gjorde før i console.log. 193 00:09:27,390 --> 00:09:28,915 Hej, Roger. 194 00:09:28,915 --> 00:09:31,710 195 00:09:31,710 --> 00:09:35,330 Og bemærk jeg ikke behøver at gøre det semikolon, men så får jeg denne underlige 196 00:09:35,330 --> 00:09:36,850 udefineret ting. 197 00:09:36,850 --> 00:09:40,310 Nå faktisk, pyt om det udefinerede ting. 198 00:09:40,310 --> 00:09:43,590 Ting jeg vil have dig til at lægge mærke til er, at du behøver ikke hovedfunktionen her 199 00:09:43,590 --> 00:09:45,050 at begynde at køre kode. 200 00:09:45,050 --> 00:09:46,790 Og der er ingen backslash ende. 201 00:09:46,790 --> 00:09:50,683 Der er nogle små funktioner, JavaScript kan gøre for dig. 202 00:09:50,683 --> 00:09:53,510 >> PUBLIKUM: [uhørligt]. 203 00:09:53,510 --> 00:09:54,000 >> ROGER ZURAWICKI: Oh yeah. 204 00:09:54,000 --> 00:09:57,460 Jeg er ked af det. 205 00:09:57,460 --> 00:10:02,200 Og at pilen betyder bare node er klar til en anden kommando. 206 00:10:02,200 --> 00:10:05,380 Så du kan have det gøre simple matematik, ligesom 1 plus 1. 207 00:10:05,380 --> 00:10:10,360 Og ligesom i C, disse matematik symboler er bare det samme. 208 00:10:10,360 --> 00:10:13,750 Jeg kan gøre console.log af et tal. 209 00:10:13,750 --> 00:10:15,090 Og så udskriver to. 210 00:10:15,090 --> 00:10:19,000 JavaScript er rart i den forstand, fordi selv om to er en int, 211 00:10:19,000 --> 00:10:22,020 ligesom i C, hvis du gjorde printf med to, vil du få en fejl. 212 00:10:22,020 --> 00:10:24,140 >> Men JavaScript ved, åh, du er udskrivning noget. 213 00:10:24,140 --> 00:10:25,070 Jeg har tænkt mig at bruge en streng. 214 00:10:25,070 --> 00:10:28,410 Så lad mig konvertere, at to ind i en streng til dig. 215 00:10:28,410 --> 00:10:34,970 Og du kan også gøre nogle underlige ting ligesom hi og derefter plus to. 216 00:10:34,970 --> 00:10:39,520 Dette er blot endnu et eksempel, hvordan to kan konverteres i der. 217 00:10:39,520 --> 00:10:45,135 >> Så med at ud af den måde, lad os bare dække lidt mere JavaScript. 218 00:10:45,135 --> 00:10:48,660 219 00:10:48,660 --> 00:10:50,540 Så i C, har vi typer. 220 00:10:50,540 --> 00:10:53,925 Når vi har oprettet en ny variabel, vi må sige, at er det er char * eller 221 00:10:53,925 --> 00:10:55,850 streng i tilfælde CS50. 222 00:10:55,850 --> 00:10:58,350 Eller hvis vi havde et decimaltal, vi havde at sige flyde. 223 00:10:58,350 --> 00:11:00,690 Hvis vi havde brug for en boolesk, vi havde at sige b.. 224 00:11:00,690 --> 00:11:04,220 Og så når vi havde noget, blev b, det skulle forblive en bool. 225 00:11:04,220 --> 00:11:07,360 Vi kunne ikke magisk ændre det til en int medmindre vi skrev i 226 00:11:07,360 --> 00:11:09,450 parenteser, int af b. 227 00:11:09,450 --> 00:11:11,820 >> I JavaScript, er der ingen typer. 228 00:11:11,820 --> 00:11:13,350 Du skal bare tænke på det som var. 229 00:11:13,350 --> 00:11:15,270 Og VaR er, hvordan du opretter en ny type. 230 00:11:15,270 --> 00:11:19,210 Så det kan have var s være en streng, var n er en svømmer, 231 00:11:19,210 --> 00:11:21,230 og var B er sandt. 232 00:11:21,230 --> 00:11:24,980 Og én ting, du ikke kan gøre i C er Jeg kan nu sige, efter at linje b 233 00:11:24,980 --> 00:11:26,230 lig med et heltal. 234 00:11:26,230 --> 00:11:27,400 Og det fungerer fint. 235 00:11:27,400 --> 00:11:30,840 Betragtninger i C, vil det sige som Deres tal er ikke bool. 236 00:11:30,840 --> 00:11:32,770 Jeg kan ikke gøre det for dig. 237 00:11:32,770 --> 00:11:34,050 Eller [uhørligt] ville kaste en fejl. 238 00:11:34,050 --> 00:11:37,970 239 00:11:37,970 --> 00:11:43,420 >> Og jeg kan hurtigt gå tilbage til node og vise nogle af denne funktionalitet. 240 00:11:43,420 --> 00:11:44,960 Så jeg kan have en var en. 241 00:11:44,960 --> 00:11:52,120 Kalder det "Apple". Så nu når jeg udskriver et, Jeg får min streng, 'Apple.' Men jeg kan 242 00:11:52,120 --> 00:11:54,900 nu også sige lig med 3. 243 00:11:54,900 --> 00:11:56,610 Og bemærk der er ingen fejl. 244 00:11:56,610 --> 00:12:00,630 Og nu er lig med 3. 245 00:12:00,630 --> 00:12:01,880 Eventuelle spørgsmål, så vidt? 246 00:12:01,880 --> 00:12:07,030 247 00:12:07,030 --> 00:12:07,570 Ja. 248 00:12:07,570 --> 00:12:10,780 >> PUBLIKUM: Vent, så console.log er dybest set printf, right? 249 00:12:10,780 --> 00:12:12,180 >> ROGER ZURAWICKI: console.log er din printf. 250 00:12:12,180 --> 00:12:12,652 >> PUBLIKUM: Right. 251 00:12:12,652 --> 00:12:17,844 Så hvordan kommer, hvis du bare skrive i otte eller [uhørlig], hvad betyder det 252 00:12:17,844 --> 00:12:18,790 [Uhørligt]? 253 00:12:18,790 --> 00:12:19,160 >> ROGER ZURAWICKI: Right. 254 00:12:19,160 --> 00:12:21,690 Så det er - 255 00:12:21,690 --> 00:12:24,240 ting i grønt bliver udskrevet ved konsollen. 256 00:12:24,240 --> 00:12:27,050 Og hvad vi vil se næste er når vi flytter til internettet 257 00:12:27,050 --> 00:12:29,300 side, vil vi ikke gøre - 258 00:12:29,300 --> 00:12:32,650 JavaScript vil være at have en HTML skabelon, som jeg vil dække i den 259 00:12:32,650 --> 00:12:34,730 Meteor del af seminaret. 260 00:12:34,730 --> 00:12:38,730 Og det er, hvor du kan sige, giv mig værdien af ​​a, og det vil sætte en i 261 00:12:38,730 --> 00:12:39,920 din hjemmeside. 262 00:12:39,920 --> 00:12:42,520 Fordi hver webbrowser faktisk har en lille konsol. 263 00:12:42,520 --> 00:12:46,380 Og hvis du kiggede meget omhyggeligt, du ville få nogle oplysninger, som din 264 00:12:46,380 --> 00:12:51,210 printf er vist der med hver webside du indlæse. 265 00:12:51,210 --> 00:12:53,580 >> PUBLIKUM: Hvordan fik du til skallen skærmen? 266 00:12:53,580 --> 00:12:57,680 >> ROGER ZURAWICKI: Så der er en kommando kaldet node, og det kommer med Meteor. 267 00:12:57,680 --> 00:13:01,230 Så jeg vil bare holde op ud derfra. 268 00:13:01,230 --> 00:13:03,580 Node er det program, kører JavaScript. 269 00:13:03,580 --> 00:13:07,070 Hvis du går til meteor.com, du kan installere Meteor og 270 00:13:07,070 --> 00:13:08,480 Meteor kommer med knude. 271 00:13:08,480 --> 00:13:11,470 Fordi Meteor er blot en samling af alle disse softwarepakker. 272 00:13:11,470 --> 00:13:15,280 Når vi kommer til vores eksempel, vil jeg gå alle gennem installationen 273 00:13:15,280 --> 00:13:17,625 Meteor og derefter kan du afspille med node selv. 274 00:13:17,625 --> 00:13:22,154 275 00:13:22,154 --> 00:13:23,980 OK, godt. 276 00:13:23,980 --> 00:13:29,640 >> Så en anden stor feature om at arbejde med JavaScript er loops er de samme. 277 00:13:29,640 --> 00:13:31,430 Temmelig meget nøjagtig det samme. 278 00:13:31,430 --> 00:13:35,530 For loops, mens loops, gøre mens sløjfer, hvis andet. 279 00:13:35,530 --> 00:13:36,880 Det er alt det samme med seler. 280 00:13:36,880 --> 00:13:38,540 Det er den samme syntaks. 281 00:13:38,540 --> 00:13:41,350 I tilfælde af en for-løkke, den lille detaljer, som du skal være opmærksom 282 00:13:41,350 --> 00:13:45,340 at der i stedet for int i er lig med 0, vi nødt til at sige var jeg lig 0. 283 00:13:45,340 --> 00:13:49,580 Men det er på grund af de variabler typer, som vi talte om før. 284 00:13:49,580 --> 00:13:53,360 >> Bemærk, at printf bliver en log, en console.log. 285 00:13:53,360 --> 00:13:57,370 Og vi behøver ikke at gøre procent p backslash n og derefter passere i jeg. 286 00:13:57,370 --> 00:13:58,380 Du kan bare sige, at jeg. 287 00:13:58,380 --> 00:14:01,910 Og det ville udskrive numre fra nul til fire. 288 00:14:01,910 --> 00:14:04,830 Hvis du fyre ønsker at prøve dette, fordi du opdraget en god pointe. 289 00:14:04,830 --> 00:14:08,730 Hvis du ønskede at køre denne kode på din egen browser, vil jeg anbefale, at 290 00:14:08,730 --> 00:14:11,040 alle åbner Google Chrome. 291 00:14:11,040 --> 00:14:14,220 Google Chrome eller enhver webbrowser rigtig, men jeg kan lide Google Chrome 292 00:14:14,220 --> 00:14:17,350 fordi det meget standardiserede. 293 00:14:17,350 --> 00:14:24,240 >> Du kan gå til, tror jeg, hvis du ret klik på en hjemmeside, bare i 294 00:14:24,240 --> 00:14:26,880 hvide rum, vil du se en mulighed kaldet Undersøg Element. 295 00:14:26,880 --> 00:14:28,810 Det er normalt den sidste. 296 00:14:28,810 --> 00:14:32,630 Og når du klikker på det, bør du få en ting til bunden vises her. 297 00:14:32,630 --> 00:14:35,840 298 00:14:35,840 --> 00:14:37,780 Lad mig zoome ind her. 299 00:14:37,780 --> 00:14:41,390 Og vi har et par faner her. 300 00:14:41,390 --> 00:14:43,580 Den ene, du holder af, er konsol. 301 00:14:43,580 --> 00:14:48,820 >> Og det er en JavaScript-konsol at du nu kan arbejde med. 302 00:14:48,820 --> 00:14:49,370 Store. 303 00:14:49,370 --> 00:14:52,560 Så jeg kan skrive i den samme ting Jeg var at skrive før i node. 304 00:14:52,560 --> 00:14:54,790 En plus en er to. 305 00:14:54,790 --> 00:14:59,110 Var et lig med "Apple". 306 00:14:59,110 --> 00:15:03,430 Og så ville jeg udskrive en, og et er 'Apple'. 307 00:15:03,430 --> 00:15:08,760 Så i enhver webbrowser, Firefox, Chrome, Safari, uanset hvad du bruger, som 308 00:15:08,760 --> 00:15:11,240 længe du har adgang til en JavaScript konsol, den samme slags 309 00:15:11,240 --> 00:15:15,520 kode jeg kørte i knude du kan køre i din egen konsol. 310 00:15:15,520 --> 00:15:17,530 >> PUBLIKUM: [uhørligt]? 311 00:15:17,530 --> 00:15:18,690 >> ROGER ZURAWICKI: Sådan komme til konsol? 312 00:15:18,690 --> 00:15:22,880 Du er nødt til at højreklikke på det tomme rum på siden, og så skal du gå til 313 00:15:22,880 --> 00:15:26,100 Undersøg Element. 314 00:15:26,100 --> 00:15:28,290 Så egentlig vil jeg gerne jer at bare sørg for du kan 315 00:15:28,290 --> 00:15:29,860 Undersøg Element i Chrome. 316 00:15:29,860 --> 00:15:32,630 Og se, når du skriver i nogle kode i konsollen 317 00:15:32,630 --> 00:15:33,880 at det kører ordentligt. 318 00:15:33,880 --> 00:16:15,820 319 00:16:15,820 --> 00:16:18,430 Du er velkommen til at stille spørgsmål, hvis noget er ikke klart her. 320 00:16:18,430 --> 00:16:23,340 321 00:16:23,340 --> 00:16:24,590 >> PUBLIKUM: [uhørligt]. 322 00:16:24,590 --> 00:16:27,280 323 00:16:27,280 --> 00:16:28,200 >> ROGER ZURAWICKI: Enhver type, til højre. 324 00:16:28,200 --> 00:16:31,370 Der er kun én type til alle variabler i JavaScript. 325 00:16:31,370 --> 00:16:34,160 Og når du nødt til at erklære en variabel, siger du var. 326 00:16:34,160 --> 00:16:35,410 >> PUBLIKUM: [uhørligt]. 327 00:16:35,410 --> 00:16:39,010 328 00:16:39,010 --> 00:16:40,050 >> ROGER ZURAWICKI: Ja. 329 00:16:40,050 --> 00:16:43,730 Det gør, men i JavaScript, er det meget smart om allokering af hukommelse. 330 00:16:43,730 --> 00:16:44,600 Der er ingen allokere. 331 00:16:44,600 --> 00:16:45,780 Der er ingen gratis. 332 00:16:45,780 --> 00:16:48,490 Så du behøver ikke at bekymre dig om det. 333 00:16:48,490 --> 00:16:51,140 Det er en anden god egenskab at JavaScript giver dig. 334 00:16:51,140 --> 00:16:56,990 335 00:16:56,990 --> 00:16:58,440 >> Så jeg vil gerne flytte på. 336 00:16:58,440 --> 00:17:01,360 Ville det være OK? 337 00:17:01,360 --> 00:17:02,610 OK. 338 00:17:02,610 --> 00:17:04,780 339 00:17:04,780 --> 00:17:07,720 Store. 340 00:17:07,720 --> 00:17:10,660 >> PUBLIKUM: Jeg er bare har problemer finde [? Undersøg Element. ?] 341 00:17:10,660 --> 00:17:13,609 342 00:17:13,609 --> 00:17:16,250 >> ROGER ZURAWICKI: So Safari looks en smule anderledes, men har du 343 00:17:16,250 --> 00:17:18,599 har Chrome eller Firefox? 344 00:17:18,599 --> 00:17:21,619 Det er lettere dem til at arbejde med. 345 00:17:21,619 --> 00:17:25,079 Og for dine projekter, vil jeg anbefale stikning med en browser, fordi 346 00:17:25,079 --> 00:17:29,610 du får en masse af bugs næsten fordi hver browser godbidder 347 00:17:29,610 --> 00:17:31,980 JavaScript HTML lidt anderledes. 348 00:17:31,980 --> 00:17:35,170 Så jeg tror, ​​dit liv vil være en masse lettere, hvis du holder dig til Chrome fordi 349 00:17:35,170 --> 00:17:37,052 den er tilgængelig på alle maskiner. 350 00:17:37,052 --> 00:17:38,790 Og det er en temmelig populær browser. 351 00:17:38,790 --> 00:17:59,860 352 00:17:59,860 --> 00:18:01,110 OK? 353 00:18:01,110 --> 00:18:03,310 354 00:18:03,310 --> 00:18:06,370 >> Så det næste emne, som vi skal dækning i JavaScript - 355 00:18:06,370 --> 00:18:07,730 Jeg er ked af formateringen her. 356 00:18:07,730 --> 00:18:11,630 Jeg var nødt til at strække dias til at matche widescreen-projektor. 357 00:18:11,630 --> 00:18:14,750 Men jeg vil nu gerne tale om hvordan du gør funktioner. 358 00:18:14,750 --> 00:18:17,410 I C, vi nødt til at erklære hver funktion. 359 00:18:17,410 --> 00:18:22,130 Ligesom int tilføje, og det tager en int i x, og en int y, og så tilføjer vi dem 360 00:18:22,130 --> 00:18:23,100 og returnere den. 361 00:18:23,100 --> 00:18:26,850 >> I JavaScript, funktioner er faktisk anden variabel type. 362 00:18:26,850 --> 00:18:30,560 Så vi bare sige var tilføje, og det er lig en funktion. 363 00:18:30,560 --> 00:18:32,580 En funktion, der tager en x-og en y. 364 00:18:32,580 --> 00:18:33,790 Og hvad betyder denne funktion gør? 365 00:18:33,790 --> 00:18:39,910 Den returnerer x plus y i nøjagtig samme syntaks som i C. Og du bemærker, at i 366 00:18:39,910 --> 00:18:44,290 JavaScript, vil du ikke at vide, hvad det funktion returnerer fordi siden 367 00:18:44,290 --> 00:18:49,160 variabler ikke har typer alligevel, det det er ikke rigtig produktiv, tror jeg, 368 00:18:49,160 --> 00:18:52,855 at angive alle dine typer i dine funktioner. 369 00:18:52,855 --> 00:18:55,720 370 00:18:55,720 --> 00:18:59,565 Og så når du kalder en funktion, er det nøjagtig samme syntaks som C. Du 371 00:18:59,565 --> 00:19:03,610 bare passere i dine to argumenter. 372 00:19:03,610 --> 00:19:07,330 Jeg vil gerne prøve det i min knude. 373 00:19:07,330 --> 00:19:09,284 Kan jeg ændre dias? 374 00:19:09,284 --> 00:19:10,534 >> PUBLIKUM: [uhørligt]. 375 00:19:10,534 --> 00:19:14,639 376 00:19:14,639 --> 00:19:17,000 Vil vi få en kopi af de slides? 377 00:19:17,000 --> 00:19:18,250 >> ROGER ZURAWICKI: Ja. 378 00:19:18,250 --> 00:19:28,280 379 00:19:28,280 --> 00:19:29,956 Så lad os gå tilbage til node. 380 00:19:29,956 --> 00:19:32,240 OK. 381 00:19:32,240 --> 00:19:38,160 Så jeg vil sige var add lig funktion. 382 00:19:38,160 --> 00:19:40,650 Tager en x, der tager et y. 383 00:19:40,650 --> 00:19:43,690 Og så er det ved, at sætningens ikke afsluttet. 384 00:19:43,690 --> 00:19:47,692 Så i node eller i din konsol, du vil bemærke dot dot dot. 385 00:19:47,692 --> 00:19:49,660 Så du kan holde skrive din kode. 386 00:19:49,660 --> 00:19:53,650 Og nu vil jeg sige tilbagevenden x plus y. 387 00:19:53,650 --> 00:19:54,790 Og derefter lukke bøjlen. 388 00:19:54,790 --> 00:20:00,260 Og det øjeblik, jeg lukker skinnen, det ser, at redegørelsen er færdig. 389 00:20:00,260 --> 00:20:04,730 >> Og nu kan jeg sige tilføje et og to. 390 00:20:04,730 --> 00:20:08,280 Og jeg får tre ud. 391 00:20:08,280 --> 00:20:11,545 Bemærk, at hvis jeg bare tilføje, det fortæller mig, det er en funktion. 392 00:20:11,545 --> 00:20:14,630 393 00:20:14,630 --> 00:20:19,570 Og én ting bare for at være opmærksom på er, hvis du giver det et forkert antal 394 00:20:19,570 --> 00:20:23,380 argumenter, vil det gøre. 395 00:20:23,380 --> 00:20:25,890 Det vil køre, men du kan få nogle virkelig mærkelige resultater. 396 00:20:25,890 --> 00:20:30,070 Lidt ligesom en skraldespand værdi, du kan tænke på det. 397 00:20:30,070 --> 00:20:32,060 Så kan du gå videre og prøve dette i dine browsere. 398 00:20:32,060 --> 00:21:25,180 399 00:21:25,180 --> 00:21:29,510 >> OK, så af hensyn til tiden, vil jeg nu gå videre til de næste funktioner 400 00:21:29,510 --> 00:21:30,760 JavaScript. 401 00:21:30,760 --> 00:21:36,520 402 00:21:36,520 --> 00:21:38,400 Så vi har talt om funktioner. 403 00:21:38,400 --> 00:21:40,840 Vi har talt om loops, hvis udsagn også. 404 00:21:40,840 --> 00:21:43,660 Syntaksen er den samme som C og variabler. 405 00:21:43,660 --> 00:21:46,090 Og nu vil jeg tale om arrays. 406 00:21:46,090 --> 00:21:48,520 Jeg er ked af, at de slides Fik lidt afskåret. 407 00:21:48,520 --> 00:21:52,470 Men faktisk, i den første sektion, alt hvad du behøver vil arbejde. 408 00:21:52,470 --> 00:21:55,410 >> Så vi har en anden type til variable kaldes arrays. 409 00:21:55,410 --> 00:21:57,930 Og vi bruger firkantede parenteser at betegne dem. 410 00:21:57,930 --> 00:22:01,960 Så i det første eksempel, var arr., tom array. 411 00:22:01,960 --> 00:22:05,900 Dette er den tomme liste, så et array indeholder ingen elementer. 412 00:22:05,900 --> 00:22:09,770 Og du kan også få en array med tre strenge. 413 00:22:09,770 --> 00:22:13,290 I C, hvert element i dit array skulle være den samme type. 414 00:22:13,290 --> 00:22:16,940 >> Men fordi i JavaScript der kun en type, kan arrays faktisk 415 00:22:16,940 --> 00:22:18,510 har forskellige typer af værdier. 416 00:22:18,510 --> 00:22:22,220 Ligesom her, har vi et array med en float, en bool, og en int. 417 00:22:22,220 --> 00:22:25,020 418 00:22:25,020 --> 00:22:28,510 Den måde, du får en længde på et array, du behøver faktisk ikke at bruge størrelse 419 00:22:28,510 --> 00:22:29,030 eller noget. 420 00:22:29,030 --> 00:22:31,570 Du skal bare sige array og derefter dot længde. 421 00:22:31,570 --> 00:22:36,450 Og denne dot længde, kan du tænke på den slags gerne en struct, hvordan hver 422 00:22:36,450 --> 00:22:40,890 matrix har et felt, en ekstra variabel inde i det der kaldes længde, som 423 00:22:40,890 --> 00:22:42,910 holder styr på, hvor længe dit array er. 424 00:22:42,910 --> 00:22:47,280 425 00:22:47,280 --> 00:22:50,420 >> Så jeg bare hurtigt kommer til at gå ind i node og vise jer det samme. 426 00:22:50,420 --> 00:22:55,860 427 00:22:55,860 --> 00:22:58,050 Så jeg kan få et array. 428 00:22:58,050 --> 00:23:00,280 Det kan være tomme liste. 429 00:23:00,280 --> 00:23:02,030 Og det vil udskrive mig sikkerhedskopiere en tom liste. 430 00:23:02,030 --> 00:23:02,530 Store. 431 00:23:02,530 --> 00:23:08,560 Jeg kan nu sige, at den vifte har 1, og 2,3, og sandt. 432 00:23:08,560 --> 00:23:10,400 Så alle de forskellige typer. 433 00:23:10,400 --> 00:23:11,740 Og du bemærker det fungerer fint. 434 00:23:11,740 --> 00:23:16,330 Array jeg kommer tilbage understøtninger alle de værdier, jeg gav det. 435 00:23:16,330 --> 00:23:20,440 >> Hvis jeg ønskede at få det første element i array, syntaksen er faktisk 436 00:23:20,440 --> 00:23:22,980 den samme som i C. Du kan sige matrix nul. 437 00:23:22,980 --> 00:23:24,430 Og du får en. 438 00:23:24,430 --> 00:23:27,920 Jeg kan sige det samme til matrix to, og jeg får sandt. 439 00:23:27,920 --> 00:23:31,610 Hvis jeg gør noget uden for array, JavaScript er et sikkert sprog 440 00:23:31,610 --> 00:23:33,390 fordi jeg ikke vil få en seg fejl. 441 00:23:33,390 --> 00:23:34,780 Jeg får udefineret. 442 00:23:34,780 --> 00:23:37,510 >> Og dette udefineret, kan du slags af tænke over det som nul. 443 00:23:37,510 --> 00:23:41,390 Men det kan være virkelig irriterende, når du kode, fordi du bliver nødt til at kontrollere, at 444 00:23:41,390 --> 00:23:43,880 næsten alt, hvad du gør det, du arbejde med er udefineret. 445 00:23:43,880 --> 00:23:47,700 Og vi vil se nogle eksempler på dette, når vi arbejder i Meteor. 446 00:23:47,700 --> 00:23:50,600 >> Selvom matrix fire er udefineret, Jeg kan tildele den en værdi. 447 00:23:50,600 --> 00:23:52,570 Så jeg vil sige det er lig én. 448 00:23:52,570 --> 00:23:57,050 Og så hvis jeg går til array, jeg har den ekstra værdi der. 449 00:23:57,050 --> 00:24:02,470 Og bemærk at række tre, som også blev udefineret, forbliver udefineret. 450 00:24:02,470 --> 00:24:05,690 Så nu har jeg et array med et hul i midten. 451 00:24:05,690 --> 00:24:07,750 Men hvis jeg trykt matrix fire, Jeg ville få en. 452 00:24:07,750 --> 00:24:10,960 Hvis jeg gjorde vifte tre, får jeg udefineret. 453 00:24:10,960 --> 00:24:13,880 >> Så den nice feature at JavaScript tillader dig at gøre, er, at listerne kan 454 00:24:13,880 --> 00:24:15,620 ændre størrelse. 455 00:24:15,620 --> 00:24:18,520 Arrays, arrays er lister de ændrer størrelse. 456 00:24:18,520 --> 00:24:22,480 Og du kan angive enhver placering inde i dem. 457 00:24:22,480 --> 00:24:25,370 Og alle hullerne vil blive fyldt med disse udefinerede værdier. 458 00:24:25,370 --> 00:24:31,560 459 00:24:31,560 --> 00:24:33,450 >> Så vi har talt om arrays. 460 00:24:33,450 --> 00:24:37,050 Nu er den sidste ting, jeg ønsker at dække i JavaScript, og det er meget vigtigt 461 00:24:37,050 --> 00:24:39,550 til at forstå den kode, Jeg har tænkt mig at vise dig, 462 00:24:39,550 --> 00:24:41,530 kommer til at være objekter. 463 00:24:41,530 --> 00:24:45,140 Og objekter er et begreb i - 464 00:24:45,140 --> 00:24:47,380 dybest set, de er til stede i mange programmeringssprog. 465 00:24:47,380 --> 00:24:50,620 Og hver programmeringssprog kan lide at tænke på dem en smule anderledes. 466 00:24:50,620 --> 00:24:55,050 >> Men jeg tror for Meteor, en god analogi er C struct. 467 00:24:55,050 --> 00:24:59,410 I C, hvis vi ønsker at finde den struct student, ville vi nødt til at angive alle de 468 00:24:59,410 --> 00:25:00,240 ting inde i den. 469 00:25:00,240 --> 00:25:01,440 Så det har at have et navn. 470 00:25:01,440 --> 00:25:02,140 Det skal have et år. 471 00:25:02,140 --> 00:25:03,650 Det skal have et køn. 472 00:25:03,650 --> 00:25:07,350 Men vi er også nødt til at give det typer af alle disse ting. 473 00:25:07,350 --> 00:25:11,200 >> Og nu hvor vi har denne form til den struct kaldet elev, kan vi have en 474 00:25:11,200 --> 00:25:14,640 ny struct, og så vi kan manuelt sige, hvad hvert af felterne er. 475 00:25:14,640 --> 00:25:17,740 Og det er, hvor vi bruger dot navn, dot år, dot køn. 476 00:25:17,740 --> 00:25:21,930 Og så har vi bare, i sidste linje af kode her, jeg bare udskrive 477 00:25:21,930 --> 00:25:24,980 navnet på den struct studerende. 478 00:25:24,980 --> 00:25:28,220 >> I JavaScript verden, er der ikke sådan noget som struct studerende. 479 00:25:28,220 --> 00:25:30,660 Du behøver ikke generere en forudindstillet struktur. 480 00:25:30,660 --> 00:25:34,680 Du faktisk bare, i disse beslag, du sige, hvad alt er. 481 00:25:34,680 --> 00:25:40,680 Og det er denne underlige notation med kolon og derefter komma, men du vil 482 00:25:40,680 --> 00:25:41,810 vænne sig til det hurtigt nok. 483 00:25:41,810 --> 00:25:44,930 >> Og det er faktisk en virkelig let, fleksibel måde for bare 484 00:25:44,930 --> 00:25:47,400 manipulere objekter. 485 00:25:47,400 --> 00:25:51,270 De bemærker, at hvis jeg vil nu få navn fra s, jeg bare gøre s.name. 486 00:25:51,270 --> 00:25:54,090 487 00:25:54,090 --> 00:25:56,790 Er der nogen spørgsmål om denne? 488 00:25:56,790 --> 00:26:00,260 Denne regel har været en meget forvirrende emne, når vi introducere folk til 489 00:26:00,260 --> 00:26:02,280 JavaScript. 490 00:26:02,280 --> 00:26:04,110 Jeg vil gøre nogle eksempler på dette i node. 491 00:26:04,110 --> 00:26:05,010 Ja? 492 00:26:05,010 --> 00:26:06,260 >> PUBLIKUM: [uhørligt]. 493 00:26:06,260 --> 00:26:14,130 494 00:26:14,130 --> 00:26:16,230 >> ROGER ZURAWICKI: Så gør du har et eksempel, flere 495 00:26:16,230 --> 00:26:18,764 variabler af denne type. 496 00:26:18,764 --> 00:26:20,014 >> PUBLIKUM: [uhørligt]. 497 00:26:20,014 --> 00:26:23,540 498 00:26:23,540 --> 00:26:24,790 >> PUBLIKUM: [uhørligt]. 499 00:26:24,790 --> 00:26:37,610 500 00:26:37,610 --> 00:26:39,450 >> ROGER ZURAWICKI: OK. 501 00:26:39,450 --> 00:26:43,760 Så jeg tror den måde, du ville gå om, er du ville lægge objekter i et array, 502 00:26:43,760 --> 00:26:45,340 og nu vil du have en vifte af objekter. 503 00:26:45,340 --> 00:26:47,547 Besvarer det dit spørgsmål? 504 00:26:47,547 --> 00:26:48,797 >> PUBLIKUM: [uhørligt]. 505 00:26:48,797 --> 00:26:50,890 506 00:26:50,890 --> 00:26:51,260 >> ROGER ZURAWICKI: Ja. 507 00:26:51,260 --> 00:26:52,430 S er et objekt. 508 00:26:52,430 --> 00:26:57,455 Så vi kan gå i node og bare lege en lille smule. 509 00:26:57,455 --> 00:26:58,705 >> PUBLIKUM: [uhørligt]? 510 00:26:58,705 --> 00:27:04,880 511 00:27:04,880 --> 00:27:05,440 >> ROGER ZURAWICKI: Åh, OK. 512 00:27:05,440 --> 00:27:10,660 Så hvis du spørger, hvad klasser er, klasser behandles meget forskelligt, 513 00:27:10,660 --> 00:27:14,510 og de har en virkelig underlig ordning kaldet prototyping, som du ikke 514 00:27:14,510 --> 00:27:15,620 brug for at vide om. 515 00:27:15,620 --> 00:27:17,910 Der er ingen fast måde at gøre det. 516 00:27:17,910 --> 00:27:21,160 Så hvis du ønsker at generere flere, du ville lige slags har en funktion 517 00:27:21,160 --> 00:27:22,100 eller noget. 518 00:27:22,100 --> 00:27:24,340 Du generere din egen funktion. 519 00:27:24,340 --> 00:27:26,765 Og du ville returnere et objekt. 520 00:27:26,765 --> 00:27:29,550 Det ville være det nemmeste måde at gøre det. 521 00:27:29,550 --> 00:27:32,454 Giver det mening? 522 00:27:32,454 --> 00:27:33,704 OK. 523 00:27:33,704 --> 00:27:36,182 524 00:27:36,182 --> 00:27:36,650 Store. 525 00:27:36,650 --> 00:27:39,820 Så når vi har en forståelse af JavaScript objekter, de er - 526 00:27:39,820 --> 00:27:41,082 Åh, ja. 527 00:27:41,082 --> 00:27:42,026 >> PUBLIKUM: [uhørligt] 528 00:27:42,026 --> 00:27:45,802 eksempel, hvad er forskellen mellem "Roger" med anførselstegn versus 529 00:27:45,802 --> 00:27:47,510 [Uhørligt] med enkelte anførselstegn. 530 00:27:47,510 --> 00:27:47,810 >> ROGER ZURAWICKI: OK. 531 00:27:47,810 --> 00:27:52,730 Så dette er i C, har vi det indre citater, der repræsenterer tegn, og dobbeltklik 532 00:27:52,730 --> 00:27:54,550 citater repræsenterer strenge. 533 00:27:54,550 --> 00:27:57,920 JavaScript faktisk smider det væk fordi du kan have strenge med 534 00:27:57,920 --> 00:28:01,570 enkelt eller dobbelt citationstegn, og der er ikke sådan noget som en enkelt char. 535 00:28:01,570 --> 00:28:04,400 Men hvis du bare kopieret det samme C-kode, JavaScript ville 536 00:28:04,400 --> 00:28:05,610 behandle det bare fint. 537 00:28:05,610 --> 00:28:07,710 Hvilket er grunden til jeg behandlede det som - 538 00:28:07,710 --> 00:28:12,540 det er derfor jeg kan bogstaveligt havn koden i den forstand. 539 00:28:12,540 --> 00:28:15,420 >> Og jeg vil gerne vise dig et eksempel af en mere kompliceret objekt. 540 00:28:15,420 --> 00:28:19,890 Så du kan se, at et objekt kan have strenge som værdier. 541 00:28:19,890 --> 00:28:21,530 Det kan have en anden liste over værdier. 542 00:28:21,530 --> 00:28:23,820 Det kunne have en liste over objekter som værdier. 543 00:28:23,820 --> 00:28:25,870 Der er virkelig ingen grænse for dette. 544 00:28:25,870 --> 00:28:29,070 Så her er det bare en god demonstration hvordan du kan få en masse 545 00:28:29,070 --> 00:28:33,290 forskellige typer foregår alle i et objekt. 546 00:28:33,290 --> 00:28:34,540 Giver det mening? 547 00:28:34,540 --> 00:28:41,090 548 00:28:41,090 --> 00:28:44,700 >> Nu kan du også få arrays af objekter. 549 00:28:44,700 --> 00:28:48,530 Og her er slags ligner det, du spurgt, om du kan få objekter af 550 00:28:48,530 --> 00:28:49,190 samme type. 551 00:28:49,190 --> 00:28:52,960 Men problemet er, at der ikke er nogen fast format for objekter i JavaScript. 552 00:28:52,960 --> 00:28:55,020 Så du er nødt til at specificere dem selv. 553 00:28:55,020 --> 00:28:57,600 Og du er nødt til at sørge for at de er ensartede. 554 00:28:57,600 --> 00:29:00,410 Så her, når jeg opretter et objekt, jeg har at sikre, at hver enkelt har en 555 00:29:00,410 --> 00:29:01,910 navn, og hver har et hus. 556 00:29:01,910 --> 00:29:05,620 >> Og så har jeg en bred vifte af dem, og det kan være mit sommerhus. 557 00:29:05,620 --> 00:29:08,290 Og så her kan du slags se for-løkken foregår. 558 00:29:08,290 --> 00:29:14,090 For-løkken bliver kun en virkelig fælles måde at krydse over en række 559 00:29:14,090 --> 00:29:15,150 i JavaScript. 560 00:29:15,150 --> 00:29:18,010 Bemærk, at dette mønster er meget lig til C ækvivalent, hvor man 561 00:29:18,010 --> 00:29:21,470 har int i er lig med nul. Jeg er mindre end længden. 562 00:29:21,470 --> 00:29:23,634 Og derefter jeg plus plus. 563 00:29:23,634 --> 00:29:26,035 >> Det er næsten den samme kode, bortset fra nogle få detaljer. 564 00:29:26,035 --> 00:29:29,460 565 00:29:29,460 --> 00:29:33,120 Så betyder alle forstår hvilket formål? 566 00:29:33,120 --> 00:29:35,820 Bare tænk på det som en C struct. 567 00:29:35,820 --> 00:29:38,784 Og den måde, du får adgang til de områder, er bare med dot. 568 00:29:38,784 --> 00:29:41,950 Og så længe du husker, hvordan bruge prik, vil du være fint. 569 00:29:41,950 --> 00:29:55,300 570 00:29:55,300 --> 00:29:58,790 >> OK, så nu kan alle læse, at link? 571 00:29:58,790 --> 00:30:02,220 Dette er linket til projektet. 572 00:30:02,220 --> 00:30:04,950 Er der nogen har problemer se link? 573 00:30:04,950 --> 00:30:06,251 OK, lad os ændre det derefter. 574 00:30:06,251 --> 00:30:14,430 575 00:30:14,430 --> 00:30:15,680 Det er ikke - 576 00:30:15,680 --> 00:30:21,900 577 00:30:21,900 --> 00:30:24,240 Ja, det er nok den nemmeste måde at gøre det. 578 00:30:24,240 --> 00:30:32,390 579 00:30:32,390 --> 00:30:34,560 Store. 580 00:30:34,560 --> 00:30:38,270 >> Så hvis du går til dette websted, bør der være nogle instruktioner, som jeg vil 581 00:30:38,270 --> 00:30:42,550 gå over på, hvordan vi kan installere Meteor og få vores prøve projekt kørende. 582 00:30:42,550 --> 00:30:47,900 583 00:30:47,900 --> 00:30:50,180 Jeg ønsker at sikre alle har linket ned, før jeg flytter. 584 00:30:50,180 --> 00:31:16,250 585 00:31:16,250 --> 00:31:17,500 Kan jeg flytte på? 586 00:31:17,500 --> 00:31:20,683 587 00:31:20,683 --> 00:31:23,680 OK, godt. 588 00:31:23,680 --> 00:31:25,890 >> Så her er jeg på hjemmesiden. 589 00:31:25,890 --> 00:31:28,740 Du vil bemærke i readme-filen, vi har nogle instruktioner om, hvordan 590 00:31:28,740 --> 00:31:30,200 at få th oprettet. 591 00:31:30,200 --> 00:31:33,920 Du er nødt til at være enten i CS50 apparat eller bare på en Mac. 592 00:31:33,920 --> 00:31:35,330 Windows ikke vil arbejde. 593 00:31:35,330 --> 00:31:37,760 Men dybest set noget, der er ikke Windows bør arbejde med disse 594 00:31:37,760 --> 00:31:39,820 anvisninger fint. 595 00:31:39,820 --> 00:31:41,470 Men jeg kan gøre det lidt større så godt. 596 00:31:41,470 --> 00:31:45,610 597 00:31:45,610 --> 00:31:48,820 >> Så du skal køre den første par kommandoer. 598 00:31:48,820 --> 00:31:50,450 Disse fyre vil bare installere Meteor. 599 00:31:50,450 --> 00:31:54,870 600 00:31:54,870 --> 00:31:58,530 Jeg kan gå ind i min terminal. 601 00:31:58,530 --> 00:32:02,710 Og hvis jeg kører det samme nu, Jeg allerede har det installeret. 602 00:32:02,710 --> 00:32:03,710 Så det er lidt kortere. 603 00:32:03,710 --> 00:32:05,155 Det kan tage lidt længere tid til jer. 604 00:32:05,155 --> 00:32:08,160 605 00:32:08,160 --> 00:32:13,530 Men jeg vil gerne først sørge at vi har Meteor kørende. 606 00:32:13,530 --> 00:32:16,780 Efter Meteor har installeret, skal du kunne få node i konsollen. 607 00:32:16,780 --> 00:32:19,430 >> PUBLIKUM: De spørger om en adgangskode. 608 00:32:19,430 --> 00:32:22,110 >> ROGER ZURAWICKI: Det ville være din brugeradgangskode, hvis du er på en Mac. 609 00:32:22,110 --> 00:32:27,030 Det behøver blot tilladelse til at ændre nogle systemfiler. 610 00:32:27,030 --> 00:32:30,690 Så var spørgsmålet, hvis den beder dig om en adgangskode, er det bare at spørge dig 611 00:32:30,690 --> 00:32:33,510 til dit brugernavn adgangskode, når du logger ind på din Mac. 612 00:32:33,510 --> 00:32:35,770 Og det er, så du kan ændre systemfiler. 613 00:32:35,770 --> 00:32:46,670 614 00:32:46,670 --> 00:32:51,260 >> Og når du er klar, kan du gå videre til det næste trin, som kopierer 615 00:32:51,260 --> 00:32:54,220 kodeeksempler jeg har fra hjemmesiden. 616 00:32:54,220 --> 00:32:58,330 Og du får en ny mappe i din hjemmebibliotek kaldet leaderboard, og 617 00:32:58,330 --> 00:32:59,670 kan vi begynde at arbejde derfra. 618 00:32:59,670 --> 00:33:09,680 619 00:33:09,680 --> 00:33:14,620 Så jeg bare kopiere og indsætte disse kommandoer i min terminal. 620 00:33:14,620 --> 00:33:16,780 Og for mig, jeg allerede klonet det. 621 00:33:16,780 --> 00:33:21,470 Så jeg kan bare nu flytte i leaderboardet. 622 00:33:21,470 --> 00:33:23,450 Og jeg skulle have et par filer derinde. 623 00:33:23,450 --> 00:33:29,880 624 00:33:29,880 --> 00:33:31,113 Eventuelle spørgsmål? 625 00:33:31,113 --> 00:33:34,430 >> PUBLIKUM: [uhørligt] ikke fungerer. 626 00:33:34,430 --> 00:33:36,741 >> ROGER ZURAWICKI: Åh, du måske brug git installeret. 627 00:33:36,741 --> 00:33:39,150 >> PUBLIKUM: [uhørligt]. 628 00:33:39,150 --> 00:33:40,162 >> ROGER ZURAWICKI: Undskyld? 629 00:33:40,162 --> 00:33:41,412 >> PUBLIKUM: [uhørligt]. 630 00:33:41,412 --> 00:33:44,500 631 00:33:44,500 --> 00:33:47,390 >> ROGER ZURAWICKI: Åh, OK. 632 00:33:47,390 --> 00:33:47,720 OK. 633 00:33:47,720 --> 00:33:52,860 Det er fordi du måske nødt til at være logget på GitHub at få dette link. 634 00:33:52,860 --> 00:33:58,160 Hvis du fyre kan se, at den nemmeste måde at gøre det jeg ville sige, er 635 00:33:58,160 --> 00:33:59,270 Download zip. 636 00:33:59,270 --> 00:34:02,010 Og det vil blot downloade alle filerne. 637 00:34:02,010 --> 00:34:05,510 Og så når du sætter det i din downloade eller dit home bibliotek - 638 00:34:05,510 --> 00:34:07,360 Jeg anbefale at sætte det i din hjemmebibliotek, så vi kan alle 639 00:34:07,360 --> 00:34:09,210 køre de samme kommandoer. 640 00:34:09,210 --> 00:34:15,230 Så længe vi har de filer, vil vi være i stand til at begynde at arbejde med dem. 641 00:34:15,230 --> 00:34:17,969 Lad mig vide, hvis folk har problemer med at downloade filerne. 642 00:34:17,969 --> 00:34:21,040 >> PUBLIKUM: Ved hjemmebibliotek, du mener - 643 00:34:21,040 --> 00:34:24,989 >> ROGER ZURAWICKI: Så hjemmemappe ville være John Harvard, hvis du er i 644 00:34:24,989 --> 00:34:27,460 det CS50 apparatet. 645 00:34:27,460 --> 00:34:33,651 For at komme til dit hjem bibliotek, bare skrive i C. 646 00:34:33,651 --> 00:34:34,145 >> PUBLIKUM: [uhørligt] 647 00:34:34,145 --> 00:34:37,610 CS50 apparat [uhørligt]. 648 00:34:37,610 --> 00:34:38,650 >> ROGER ZURAWICKI: Ja. 649 00:34:38,650 --> 00:34:40,480 Du ønsker at køre de kommandoer i din terminal. 650 00:34:40,480 --> 00:34:44,899 651 00:34:44,899 --> 00:34:45,390 >> PUBLIKUM: [uhørligt]. 652 00:34:45,390 --> 00:34:50,800 Jeg fik en fejl, der siger nej sådan fil eller mappe. 653 00:34:50,800 --> 00:34:52,739 >> ROGER ZURAWICKI: Vi kan tage en hurtig pause og bare sørge for, at 654 00:34:52,739 --> 00:34:56,760 alle har Meteor installeret, og jeg vil bare gå forsøge at hjælpe folk ud. 655 00:34:56,760 --> 00:34:59,130 Prøv at hjælpe hinanden, hvis du kører ind i problemer. 656 00:34:59,130 --> 00:35:04,640 657 00:35:04,640 --> 00:35:05,580 Undskyld, ja. 658 00:35:05,580 --> 00:35:08,930 Er du både i apparatet? 659 00:35:08,930 --> 00:35:09,350 >> PUBLIKUM: Ja. 660 00:35:09,350 --> 00:35:13,190 Jeg har den RISA 661 00:35:13,190 --> 00:35:14,300 >> ROGER ZURAWICKI: OK. 662 00:35:14,300 --> 00:35:20,740 Hvis du går tilbage til hjemmesiden, gå rulle op til toppen. 663 00:35:20,740 --> 00:35:23,580 Og der er denne HTTPS. 664 00:35:23,580 --> 00:35:25,810 >> PUBLIKUM: Kopier dette? 665 00:35:25,810 --> 00:35:26,230 >> ROGER ZURAWICKI: Ja. 666 00:35:26,230 --> 00:35:28,950 Og så vil man gerne skrive i git klon. 667 00:35:28,950 --> 00:35:30,814 Så hvis du trykker på Kontrol A - 668 00:35:30,814 --> 00:35:33,718 >> PUBLIKUM: Her? 669 00:35:33,718 --> 00:35:36,410 Og gør [uhørligt]? 670 00:35:36,410 --> 00:35:37,307 >> ROGER ZURAWICKI: G-I-T. 671 00:35:37,307 --> 00:35:38,557 >> PUBLIKUM: [uhørligt]. 672 00:35:38,557 --> 00:35:40,410 673 00:35:40,410 --> 00:35:42,670 >> ROGER ZURAWICKI: Git og derefter klone. 674 00:35:42,670 --> 00:35:46,610 Så det er meget lig den kommando, du havde ovenfor, men URL'en ændret. 675 00:35:46,610 --> 00:35:49,010 Så før det var denne, nu er det dette. 676 00:35:49,010 --> 00:35:50,680 Lad mig opdatere - 677 00:35:50,680 --> 00:35:51,354 ja. 678 00:35:51,354 --> 00:35:52,604 >> PUBLIKUM: [uhørligt]. 679 00:35:52,604 --> 00:35:56,000 680 00:35:56,000 --> 00:35:58,076 >> ROGER ZURAWICKI: Dette er hentet. 681 00:35:58,076 --> 00:35:59,326 >> PUBLIKUM: [uhørligt]. 682 00:35:59,326 --> 00:36:02,930 683 00:36:02,930 --> 00:36:05,690 >> ROGER ZURAWICKI: Åh, så det ikke klone korrekt. 684 00:36:05,690 --> 00:36:07,920 Jeg vil løse det. 685 00:36:07,920 --> 00:36:10,190 Der er en fejl med at forsøge at hente filerne. 686 00:36:10,190 --> 00:36:13,820 Lad mig opdatere kommando til jer så jeg kan sørge for det vil virke. 687 00:36:13,820 --> 00:36:17,025 Jeg er ked af det. 688 00:36:17,025 --> 00:36:21,618 Det bør være den samme for Mac eller CS50 apparat. 689 00:36:21,618 --> 00:36:22,868 >> PUBLIKUM: [uhørligt]. 690 00:36:22,868 --> 00:36:49,320 691 00:36:49,320 --> 00:36:51,190 >> ROGER ZURAWICKI: Jeg har opdateret kommando til nummer to, hvis 692 00:36:51,190 --> 00:36:52,910 du opdatere siden. 693 00:36:52,910 --> 00:36:56,520 Og med dette, URL, skal du være i stand til at downloade filerne. 694 00:36:56,520 --> 00:37:00,162 695 00:37:00,162 --> 00:37:02,550 >> PUBLIKUM: Så hvis vi stadig er downloading [uhørligt]. 696 00:37:02,550 --> 00:37:05,930 >> ROGER ZURAWICKI: Hvis du er stadig henter Meteor? 697 00:37:05,930 --> 00:37:07,180 >> PUBLIKUM: [uhørligt]. 698 00:37:07,180 --> 00:37:09,860 699 00:37:09,860 --> 00:37:11,910 >> ROGER ZURAWICKI: Ja, hvis du vil at udvikle sig på din Mac. 700 00:37:11,910 --> 00:37:14,145 Men du har brug Xcode developer værktøj installeret. 701 00:37:14,145 --> 00:37:21,530 702 00:37:21,530 --> 00:37:24,550 Jeg har testet disse kommandoer på CS50 apparat, så jeg kan garantere 703 00:37:24,550 --> 00:37:25,440 at det vil virke. 704 00:37:25,440 --> 00:37:26,710 Ja. lad mig gå og hjælpe dig. 705 00:37:26,710 --> 00:37:30,558 706 00:37:30,558 --> 00:37:31,808 >> PUBLIKUM: [uhørligt]. 707 00:37:31,808 --> 00:37:39,440 708 00:37:39,440 --> 00:37:40,372 Jeg giver min adgangskode. 709 00:37:40,372 --> 00:37:42,240 Dette er Mac. 710 00:37:42,240 --> 00:37:43,490 Og så gør jeg [uhørligt]. 711 00:37:43,490 --> 00:37:51,114 712 00:37:51,114 --> 00:37:52,580 >> ROGER ZURAWICKI: OK. 713 00:37:52,580 --> 00:37:57,080 Jeg ville prøve at køre alle kommandoerne udelukkende i CS50 apparat terminal. 714 00:37:57,080 --> 00:37:58,330 >> PUBLIKUM: [uhørligt]. 715 00:37:58,330 --> 00:38:00,220 716 00:38:00,220 --> 00:38:02,570 >> ROGER ZURAWICKI: Jeg ville få det til at virke først på terminalen, om 717 00:38:02,570 --> 00:38:04,830 CS50 apparat, og derefter Mac-terminalen. 718 00:38:04,830 --> 00:38:08,130 >> PUBLIKUM: Så hvis du gør det på CS50 apparatet stilles sådan, [uhørligt]. 719 00:38:08,130 --> 00:38:13,650 720 00:38:13,650 --> 00:38:15,850 >> ROGER ZURAWICKI: Jeg vil gerne flytte på, men hvis folk stadig har 721 00:38:15,850 --> 00:38:20,190 problemer med at opsætte Meteor, Kevin er mere end glade for at hjælpe jer ud, 722 00:38:20,190 --> 00:38:21,440 Kevin i grå skjorte. 723 00:38:21,440 --> 00:38:26,320 724 00:38:26,320 --> 00:38:32,170 Hvad vi skal have, er vi kommer til at køre den sidste kommando, nummer tre, i 725 00:38:32,170 --> 00:38:33,710 vores terminal. 726 00:38:33,710 --> 00:38:37,320 Når vi gør det, vil vi køre Meteor. 727 00:38:37,320 --> 00:38:39,040 >> Og du bør - 728 00:38:39,040 --> 00:38:41,200 Åh, jeg har allerede Meteor kørende. 729 00:38:41,200 --> 00:38:45,230 Så det kommer ikke til at lade - lad mig bare lukke min anden Meteor. 730 00:38:45,230 --> 00:38:49,640 Når jeg kører Meteor, du skulle nu se, at - 731 00:38:49,640 --> 00:38:51,490 bør du se den aktuelle mappe at det er servering. 732 00:38:51,490 --> 00:38:55,476 Og nu er det kommer til at sige serveren kører på http://localhost. 733 00:38:55,476 --> 00:38:58,860 Det er den webadresse, du ønsker at sætte i i webbrowseren. 734 00:38:58,860 --> 00:39:05,410 >> Og på denne webadresse, skal du være i stand til at adgang til en dejlig lille leaderboardet. 735 00:39:05,410 --> 00:39:10,030 736 00:39:10,030 --> 00:39:14,530 Så bemærke, at dette er på localhost, hvilket betyder, at hvis du gør noget 737 00:39:14,530 --> 00:39:17,320 ændringer, du ikke kommer til at se hinandens ændringer. 738 00:39:17,320 --> 00:39:20,830 Betragtninger på hjemmesiden jeg viste dig i starten, kunne vi få 739 00:39:20,830 --> 00:39:23,380 alles ændringer, fordi alle var adgang til samme hjemmeside. 740 00:39:23,380 --> 00:39:27,010 741 00:39:27,010 --> 00:39:29,540 >> Så lad mig bare gå til [? ord?] 742 00:39:29,540 --> 00:39:35,570 3.000. 743 00:39:35,570 --> 00:39:38,820 Så du bør være i stand til bare at bekræfte at funktionaliteten fungerer. 744 00:39:38,820 --> 00:39:44,790 Du kan vælge forskellige mennesker, og du kan give dem forskellige punkter. 745 00:39:44,790 --> 00:39:46,710 Så jeg give nogen point. 746 00:39:46,710 --> 00:39:50,420 Du kan også se, at de stiger i rang. 747 00:39:50,420 --> 00:39:53,450 748 00:39:53,450 --> 00:39:57,360 >> Nu, i interesse af tid, der er tre funktioner, som jeg har 749 00:39:57,360 --> 00:39:58,020 gennemføres. 750 00:39:58,020 --> 00:40:03,760 Og vi kommer til at gennemføre sletning brugere som vores første spillefilm. 751 00:40:03,760 --> 00:40:06,360 Men før vi går videre, er der nogen spørgsmål? 752 00:40:06,360 --> 00:40:09,010 Du havde din hånd op. 753 00:40:09,010 --> 00:40:10,480 Ja? 754 00:40:10,480 --> 00:40:11,730 >> PUBLIKUM: [uhørligt]. 755 00:40:11,730 --> 00:40:20,980 756 00:40:20,980 --> 00:40:22,450 >> ROGER ZURAWICKI: Kan du tjekke at Meteor er installeret? 757 00:40:22,450 --> 00:40:25,160 758 00:40:25,160 --> 00:40:26,410 >> PUBLIKUM: [uhørligt]. 759 00:40:26,410 --> 00:40:31,440 760 00:40:31,440 --> 00:40:32,680 >> ROGER ZURAWICKI: Local host 3.000? 761 00:40:32,680 --> 00:40:36,550 Og du er i CS50 apparat? 762 00:40:36,550 --> 00:40:37,800 Jeg kan gøre - 763 00:40:37,800 --> 00:40:39,870 764 00:40:39,870 --> 00:40:41,210 du behøver ikke at være på en Mac. 765 00:40:41,210 --> 00:40:43,558 Dette vil arbejde i apparatet. 766 00:40:43,558 --> 00:40:45,880 >> PUBLIKUM: [uhørligt]. 767 00:40:45,880 --> 00:40:47,520 >> ROGER ZURAWICKI: I den normale webbrowser, ja. 768 00:40:47,520 --> 00:40:49,170 >> PUBLIKUM: [uhørligt]. 769 00:40:49,170 --> 00:40:52,100 >> ROGER ZURAWICKI: Er Meteor kørende? 770 00:40:52,100 --> 00:40:54,180 Så OK, der er en forskel her. 771 00:40:54,180 --> 00:40:56,300 Hvis du kører det i apparat, du skal gøre 772 00:40:56,300 --> 00:40:58,400 localhost i apparatet. 773 00:40:58,400 --> 00:41:00,860 Hvis du kører den i din Mac, som jeg gør, så kan jeg gøre 774 00:41:00,860 --> 00:41:02,460 min Mac Google Chrome. 775 00:41:02,460 --> 00:41:05,520 Men hvis du bruger CS50 apparatet du er nødt til at gøre alt 776 00:41:05,520 --> 00:41:06,350 i apparatet. 777 00:41:06,350 --> 00:41:09,022 Så du er nødt til at bruge Google Chrome i apparatet. 778 00:41:09,022 --> 00:41:10,350 >> PUBLIKUM: [uhørligt]. 779 00:41:10,350 --> 00:41:12,188 >> ROGER ZURAWICKI: Det er stadig ikke fungerer? 780 00:41:12,188 --> 00:41:13,438 >> PUBLIKUM: [uhørligt]. 781 00:41:13,438 --> 00:41:39,170 782 00:41:39,170 --> 00:41:42,390 >> ROGER ZURAWICKI: Så bare at gentage, hvordan kan du få adgang til hjemmesiden nu. 783 00:41:42,390 --> 00:41:46,380 Du har en URL-adresse her på localhost 3000. 784 00:41:46,380 --> 00:41:49,600 Hvis du er i CS50 apparatet du nødt til at åbne CS50 785 00:41:49,600 --> 00:41:51,320 apparatets Google Chrome. 786 00:41:51,320 --> 00:41:54,850 Og i, at Google Chrome i apparat, kan du skrive i denne webadresse, 787 00:41:54,850 --> 00:41:56,400 og du bør se en leaderboardet. 788 00:41:56,400 --> 00:41:58,990 789 00:41:58,990 --> 00:42:04,800 Så jeg har tænkt mig at bare lægge det ud til siden her en lille smule. 790 00:42:04,800 --> 00:42:09,600 Og nu jeg har tænkt mig at åbne min teksteditor herovre. 791 00:42:09,600 --> 00:42:16,040 Så lad mig bare sørge for, at koden er i orden. 792 00:42:16,040 --> 00:42:17,580 OK. 793 00:42:17,580 --> 00:42:19,750 Store. 794 00:42:19,750 --> 00:42:22,360 >> Jeg vil gerne nu gå igennem koden lidt. 795 00:42:22,360 --> 00:42:26,110 Og den første fil, jeg vil gerne starte IS leaderboard.html. 796 00:42:26,110 --> 00:42:31,520 Du vil være i stand til at få denne kode efter seminaret, så jeg vil bare gerne vise 797 00:42:31,520 --> 00:42:33,960 dig på min computer, hvad der foregår. 798 00:42:33,960 --> 00:42:39,130 799 00:42:39,130 --> 00:42:40,970 Så jeg håber, at alle kan se det. 800 00:42:40,970 --> 00:42:47,970 801 00:42:47,970 --> 00:42:51,590 Så i begyndelsen af ​​filen, vi har vores hoved og titlen, som 802 00:42:51,590 --> 00:42:54,510 svarer til, hvad vi så i hvert HTML-dokument. 803 00:42:54,510 --> 00:42:56,990 Og så vil vi have body-tagget her. 804 00:42:56,990 --> 00:42:59,920 >> Hvad jeg har valgt, er den vigtigste krop, dybest set, hvad der er 805 00:42:59,920 --> 00:43:01,470 kommer til at blive vist. 806 00:43:01,470 --> 00:43:05,560 Men der er nogle nye ikke-HTML ting, og der er i 807 00:43:05,560 --> 00:43:06,710 dobbelt vinkelbeslag. 808 00:43:06,710 --> 00:43:08,600 Og disse er skabelon tags. 809 00:43:08,600 --> 00:43:13,770 Så du ser her dette beslag beslag ny leaderboardet. 810 00:43:13,770 --> 00:43:17,390 Og det er en slags - tænk på det som at kalde en funktion til HTML. 811 00:43:17,390 --> 00:43:19,320 >> Dette er en særlig udgave af HTML. 812 00:43:19,320 --> 00:43:22,730 Det er den version, Meteor anvendelser, som Derfor kan du vise forskellige 813 00:43:22,730 --> 00:43:26,190 ting, såsom leaderboardet navne og knapper. 814 00:43:26,190 --> 00:43:30,870 Men leaderboard fortæller dig at gå til skabelon med navnet leaderboardet. 815 00:43:30,870 --> 00:43:34,746 Så skabelon ikke bliver vist ved selv, men det er en funktion, så det 816 00:43:34,746 --> 00:43:35,390 vil blive kaldt. 817 00:43:35,390 --> 00:43:41,030 Og du vil erstatte i alt dette kode lige her i leaderboardet. 818 00:43:41,030 --> 00:43:44,510 819 00:43:44,510 --> 00:43:48,820 >> Den interessante del af leaderboard her er netop denne tabel. 820 00:43:48,820 --> 00:43:52,910 Hvis du lige har læst det, læse denne kode, højt, bør det være intuitiv 821 00:43:52,910 --> 00:43:57,390 fordi leaderboard, vi alle har her er et bord. 822 00:43:57,390 --> 00:44:00,410 Dette ID-klasse ting, du ikke gør behøver at bekymre sig om. 823 00:44:00,410 --> 00:44:02,460 Bare vide, at der er en tabel header. 824 00:44:02,460 --> 00:44:03,630 Det er denne thead. 825 00:44:03,630 --> 00:44:06,860 >> Og det finder et navn og en score. 826 00:44:06,860 --> 00:44:12,150 Alle disse tags, ligesom thtable, thead, du bare lære som du går sammen. 827 00:44:12,150 --> 00:44:15,540 Det er ikke vigtigt, at du huske disse, fordi du kan bare få adgang til nogen 828 00:44:15,540 --> 00:44:16,520 Reference Online. 829 00:44:16,520 --> 00:44:20,610 Eller ved udgangen af ​​semestret disse vil bare være meget fortrolig med dig. 830 00:44:20,610 --> 00:44:22,840 >> Efter overskriften på bordet, del, som jeg ønsker at henlede Deres 831 00:44:22,840 --> 00:44:24,900 opmærksom på er denne h tag. 832 00:44:24,900 --> 00:44:27,180 Fordi det er i dobbelt parentes, Det er en skabelon. 833 00:44:27,180 --> 00:44:30,980 Så det betyder for hver af spillerne, hvad spillerne er vi nødt til at 834 00:44:30,980 --> 00:44:31,500 vise det. 835 00:44:31,500 --> 00:44:32,965 Og vi går til den spiller skabelon. 836 00:44:32,965 --> 00:44:35,680 837 00:44:35,680 --> 00:44:39,890 >> Hvis vi ruller ned en smule mere - 838 00:44:39,890 --> 00:44:40,980 Jeg håber, at alle kan se det. 839 00:44:40,980 --> 00:44:42,900 Vi har spilleren skabelon. 840 00:44:42,900 --> 00:44:49,080 Og denne skabelon dybest set definerer en tabelcelle, hvor du lægger i navnet 841 00:44:49,080 --> 00:44:50,330 her og score. 842 00:44:50,330 --> 00:44:52,540 843 00:44:52,540 --> 00:44:56,720 Zoomer ud nu, kan vi se, at dette stykke kode - 844 00:44:56,720 --> 00:44:59,060 og det var vores spiller dernede - 845 00:44:59,060 --> 00:45:01,070 definerer en af ​​disse celler. 846 00:45:01,070 --> 00:45:02,890 Hver ting, som jeg klikker bliver gul. 847 00:45:02,890 --> 00:45:06,690 848 00:45:06,690 --> 00:45:08,660 >> En enkel måde jeg kunne ændre det nu. 849 00:45:08,660 --> 00:45:10,150 Sørg Meteor kører stadig. 850 00:45:10,150 --> 00:45:12,540 Meteor bør være en server proces, så du bare lade det 851 00:45:12,540 --> 00:45:14,020 kører, når du har udviklet. 852 00:45:14,020 --> 00:45:18,280 Lad os sige, at jeg ønskede at ændre alle de navne eller score. 853 00:45:18,280 --> 00:45:23,320 Og jeg vil sige, at jeg har tænkt mig at tilføje punkter her. 854 00:45:23,320 --> 00:45:27,215 Så ændringen jeg lavede her var, i stedet for bare score, jeg 855 00:45:27,215 --> 00:45:30,280 tilføje score plads point. 856 00:45:30,280 --> 00:45:32,775 >> Jeg har tænkt mig at zoome ud, og jeg er kommer til at redde min fil. 857 00:45:32,775 --> 00:45:35,510 858 00:45:35,510 --> 00:45:39,830 Og efter jeg gemme min fil, jeg har brug for at sørge for Meteor kører. 859 00:45:39,830 --> 00:45:55,650 860 00:45:55,650 --> 00:45:57,610 Undskyld. 861 00:45:57,610 --> 00:46:00,330 Jeg vil gerne vise dig redigeringer blev udført i realtid. 862 00:46:00,330 --> 00:46:06,180 Så jeg vil bare ændre noget tekst. 863 00:46:06,180 --> 00:46:07,600 Klik på en spiller. 864 00:46:07,600 --> 00:46:10,040 Jeg sætter den i alle hætter. 865 00:46:10,040 --> 00:46:14,540 Og det bør være, at hvis det arbejder korrekt, når jeg gemmer det, er det 866 00:46:14,540 --> 00:46:16,801 ville opdatere. 867 00:46:16,801 --> 00:46:20,420 >> Åh, jeg tror lige nu er problemet Jeg er ikke i den rigtige mappe. 868 00:46:20,420 --> 00:46:24,940 869 00:46:24,940 --> 00:46:26,870 OK. 870 00:46:26,870 --> 00:46:28,160 Jeg er ked af det. 871 00:46:28,160 --> 00:46:32,860 Så her, hvad du bemærker, er min ændring gik igennem. 872 00:46:32,860 --> 00:46:34,540 Nu siger jeg ønsker at vende ændringen. 873 00:46:34,540 --> 00:46:36,200 Jeg ønsker at gå tilbage til, hvad jeg havde. 874 00:46:36,200 --> 00:46:37,640 Jeg bare at skrive det normalt. 875 00:46:37,640 --> 00:46:39,180 Klik på en spiller. 876 00:46:39,180 --> 00:46:42,920 >> I det øjeblik jeg gemmer den, hjemmeside opdateres for mig. 877 00:46:42,920 --> 00:46:44,740 Og jeg ser min ændring på webstedet med det samme. 878 00:46:44,740 --> 00:46:48,170 Dette er en virkelig nyttig funktion i debugging, fordi nu 879 00:46:48,170 --> 00:46:49,640 Jeg behøver ikke at - 880 00:46:49,640 --> 00:46:52,920 når vi skriver C-kode, ikke kun gjorde vi nødt til at gemme filen, men vi var nødt til at 881 00:46:52,920 --> 00:46:54,750 gøre det og derefter køre den igen. 882 00:46:54,750 --> 00:46:58,750 Meteor er meget rart, fordi i modsætning til C, det øjeblik du gemmer din HTML eller 883 00:46:58,750 --> 00:47:01,070 JavaScript-fil, ændringen dukker op med det samme. 884 00:47:01,070 --> 00:47:05,050 885 00:47:05,050 --> 00:47:09,140 >> Et spørgsmål er, i disse skabeloner, hvordan får jeg værdier som spillerne 886 00:47:09,140 --> 00:47:11,520 eller vælg et navn? 887 00:47:11,520 --> 00:47:17,130 Hvis jeg zoomer ind her i min kode, Jeg ser dette for hver spillere. 888 00:47:17,130 --> 00:47:19,970 Så skabelonen ved, at Jeg har spillerne eller anden måde. 889 00:47:19,970 --> 00:47:22,110 Og det ved, at der er et valgt navn. 890 00:47:22,110 --> 00:47:23,220 Hvor kommer det fra? 891 00:47:23,220 --> 00:47:25,180 Det kommer fra JavaScript. 892 00:47:25,180 --> 00:47:30,980 >> Og hvis du går til leaderboard.js, dette fil, nu når jeg går her, har vi en 893 00:47:30,980 --> 00:47:33,460 få kommandoer defineret. 894 00:47:33,460 --> 00:47:36,400 Dette er særlig Meteor syntaks. 895 00:47:36,400 --> 00:47:38,600 Bemærk, at du ikke behøver vars eller noget. 896 00:47:38,600 --> 00:47:42,990 Men disse er blot structs på structs på structs eller disse objekter. 897 00:47:42,990 --> 00:47:45,910 Og alt hvad jeg definerer er den skabelon kaldet leaderboardet. 898 00:47:45,910 --> 00:47:47,900 >> Leaderboard bør få en ting kaldet spillere. 899 00:47:47,900 --> 00:47:48,840 Og hvad er spillerne? 900 00:47:48,840 --> 00:47:51,860 Det er hvad dette udtryk returnerer. 901 00:47:51,860 --> 00:47:53,020 Og hvad er valgt navn? 902 00:47:53,020 --> 00:47:54,630 Det er noget mere kode. 903 00:47:54,630 --> 00:47:56,810 Detaljerne i den kode, vi vil dækker lidt senere. 904 00:47:56,810 --> 00:48:02,210 Men lige nu vil jeg dig til at forstå at i denne kode, tager vi 905 00:48:02,210 --> 00:48:04,350 spillere, og vi giver det en værdi. 906 00:48:04,350 --> 00:48:07,000 I dette tilfælde er det en funktion der bliver henrettet. 907 00:48:07,000 --> 00:48:10,290 Så vi kan få værdien tilbage når vi kører funktionen. 908 00:48:10,290 --> 00:48:12,830 909 00:48:12,830 --> 00:48:13,520 Dette er en log. 910 00:48:13,520 --> 00:48:14,770 Giver det mening? 911 00:48:14,770 --> 00:48:23,170 912 00:48:23,170 --> 00:48:25,010 >> Jeg kan ændre den måde, det er sorteret. 913 00:48:25,010 --> 00:48:27,230 Her, der er en slags objekt. 914 00:48:27,230 --> 00:48:31,660 Og hvad det siger, er jeg har tænkt mig at sortere efter karakter faldende først og 915 00:48:31,660 --> 00:48:33,170 derefter navnet stigende. 916 00:48:33,170 --> 00:48:36,630 Hvis jeg ændre dette til en, går det sortere score stigende. 917 00:48:36,630 --> 00:48:39,120 Så nul skal være på toppen. 918 00:48:39,120 --> 00:48:43,370 Og når jeg zoome ind på min hjemmeside, vi nu se, at hjemmesiden opdateres. 919 00:48:43,370 --> 00:48:44,923 Og scoren er bestige. 920 00:48:44,923 --> 00:48:49,010 921 00:48:49,010 --> 00:48:53,980 >> Den næste funktion jeg ønsker blot til at dække, er klik tilvækst. 922 00:48:53,980 --> 00:48:57,910 Ud af interesse af tid, vil jeg ikke være i stand til at dække mere Meteor 923 00:48:57,910 --> 00:49:00,690 kode, men der er masser af ressourcer tilgængelig, og jeg vil være 924 00:49:00,690 --> 00:49:03,560 her efter seminaret. 925 00:49:03,560 --> 00:49:07,680 Men jeg bare ønsker at dække rangliste begivenheder. 926 00:49:07,680 --> 00:49:10,520 Denne syntaks du vil lære en lidt senere i foredraget. 927 00:49:10,520 --> 00:49:12,870 Dette er JavaScript. 928 00:49:12,870 --> 00:49:16,720 >> Vi siger bare, når vi får et klik, og det er på den tilvækst, dette 929 00:49:16,720 --> 00:49:19,160 hash betyder bare id. 930 00:49:19,160 --> 00:49:23,945 På tilvækst ID-mærke, så vi vil for at opdatere - de centrale ord, jeg vil have dig 931 00:49:23,945 --> 00:49:26,740 at se er at opdatere og vælge og afspiller. 932 00:49:26,740 --> 00:49:29,080 Så uanset spillerens valgt, vi opdatere den. 933 00:49:29,080 --> 00:49:31,260 Og hvad vi gør, er vi tilvækst sin score med fem. 934 00:49:31,260 --> 00:49:37,700 935 00:49:37,700 --> 00:49:40,340 Og der vil beskrive funktionaliteten vi har her. 936 00:49:40,340 --> 00:49:50,270 937 00:49:50,270 --> 00:49:54,510 >> Efter afslutningen af ​​dette seminar, vi får være i stand til at se nogle mere kode. 938 00:49:54,510 --> 00:50:00,400 Men at gå tilbage til mit mål, at jeg vil ændre webstedet, jeg ønskede herovre 939 00:50:00,400 --> 00:50:03,400 at tilføje en fjern knap så Jeg kan slette afspilleren. 940 00:50:03,400 --> 00:50:05,390 Så for at gøre det, jeg har brug for at gøre to ting. 941 00:50:05,390 --> 00:50:09,680 Jeg har brug for at opdatere HTML, opdatere se, hvad der bliver vist til brugeren, og 942 00:50:09,680 --> 00:50:15,080 så har nogle JavaScript, når trykker på knappen, er Meteor går 943 00:50:15,080 --> 00:50:15,690 at gøre noget. 944 00:50:15,690 --> 00:50:18,040 Det kommer til at fjerne den spiller. 945 00:50:18,040 --> 00:50:20,720 >> Så der er en masse bidder af kode der har stort set allerede 946 00:50:20,720 --> 00:50:22,610 blevet gjort for mig. 947 00:50:22,610 --> 00:50:26,160 Hvis jeg ser her, jeg har allerede en måde at få den valgte afspiller. 948 00:50:26,160 --> 00:50:29,880 Det er det her, hvis du kan se det. 949 00:50:29,880 --> 00:50:31,346 Så hvis jeg bare - 950 00:50:31,346 --> 00:50:35,160 Jeg har tænkt mig at have en anden begivenhed. 951 00:50:35,160 --> 00:50:37,900 Så jeg har tænkt mig at kopiere, hvad jeg har. 952 00:50:37,900 --> 00:50:40,740 Da dette er en liste, Jeg har bare brug for et komma. 953 00:50:40,740 --> 00:50:45,480 >> Så nu har jeg tænkt mig at klikke på Slet. 954 00:50:45,480 --> 00:50:48,840 Og så i stedet for spillere opdatering Jeg har tænkt mig at gøre spillerne slette. 955 00:50:48,840 --> 00:50:51,620 Og alle spillere slette behov er valgt afspiller. 956 00:50:51,620 --> 00:50:56,500 Så denne funktion er alt, vi har brug for. 957 00:50:56,500 --> 00:51:01,550 Jeg har brug for at tilføje nogle HTML her selv. 958 00:51:01,550 --> 00:51:05,180 Så hvis jeg rulle ned her, dette er HTML-visning. 959 00:51:05,180 --> 00:51:08,300 Vi havde en ting her, som var en et mærke. 960 00:51:08,300 --> 00:51:09,610 Du behøver ikke at bekymre dig om det. 961 00:51:09,610 --> 00:51:12,000 >> Hvad betyder noget for dig, er dette id tilvækst. 962 00:51:12,000 --> 00:51:14,990 Og dette er hvad tilladt os at sige, når vi klikkede tilvækst, er vi nødt til at 963 00:51:14,990 --> 00:51:16,410 giver fem point. 964 00:51:16,410 --> 00:51:18,240 Og du vil se, at dette er en knap. 965 00:51:18,240 --> 00:51:20,150 Det er, hvad btn betyder. 966 00:51:20,150 --> 00:51:23,190 Og teksten i knappen er at give fem punkter. 967 00:51:23,190 --> 00:51:26,440 Så hvad jeg har tænkt mig at gøre, er jeg kommer til at kopiere denne linje. 968 00:51:26,440 --> 00:51:29,910 Jeg har tænkt mig at ændre id for at slette. 969 00:51:29,910 --> 00:51:34,310 Og jeg har tænkt mig at ændre tekst her for at slette. 970 00:51:34,310 --> 00:51:35,980 >> Så sørg for at alt er gemt. 971 00:51:35,980 --> 00:51:39,010 Jeg ønsker at gå tilbage til mit JavaScript at sørge for, at jeg har 972 00:51:39,010 --> 00:51:40,880 slette linet op her. 973 00:51:40,880 --> 00:51:41,780 Godt. 974 00:51:41,780 --> 00:51:43,145 Så jeg har tænkt mig at gemme begge filer. 975 00:51:43,145 --> 00:51:46,060 976 00:51:46,060 --> 00:51:49,320 Efter at have gemt begge filer, vi kan gå tilbage til bunden. 977 00:51:49,320 --> 00:51:51,550 Og nu ser vi, at vi har en slette knap. 978 00:51:51,550 --> 00:51:56,050 Og endnu et skridt. 979 00:51:56,050 --> 00:51:58,200 Du opdager du måske få en fejl, fordi når jeg klikker på 980 00:51:58,200 --> 00:52:00,610 slet intet sker. 981 00:52:00,610 --> 00:52:03,930 >> En måde at fejlsøge dette er at gå tilbage til Undersøg Element. 982 00:52:03,930 --> 00:52:07,820 Jeg gør det med vilje, så du kan se, hvordan du ville debug noget. 983 00:52:07,820 --> 00:52:11,210 I Efterse Element, vi har alle vores tekst hernede. 984 00:52:11,210 --> 00:52:13,320 Jeg ønsker at gå tilbage til konsollen. 985 00:52:13,320 --> 00:52:19,230 Og hvad sker der, når jeg går her er jeg får nogle form for fejl. 986 00:52:19,230 --> 00:52:21,660 Det siger, at der er ingen metode slette. 987 00:52:21,660 --> 00:52:30,770 >> Så hvad det siger, er, når jeg går tilbage til den kode, jeg kaldte spiller 988 00:52:30,770 --> 00:52:31,870 slette her. 989 00:52:31,870 --> 00:52:34,430 Slet er faktisk ikke den rigtige kommando. 990 00:52:34,430 --> 00:52:39,740 Så for at finde ud af, hvad den rigtige kommando er, er der Meteor API. 991 00:52:39,740 --> 00:52:42,680 Dokumentationen vil jeg pege dig fyre er lige ved meteor.com. 992 00:52:42,680 --> 00:52:45,190 Så jeg har det heroppe. 993 00:52:45,190 --> 00:52:48,510 994 00:52:48,510 --> 00:52:51,370 Det er bare så du fyre kender hvor at lære mere. 995 00:52:51,370 --> 00:52:54,420 >> Der er et link til dokumentationen. 996 00:52:54,420 --> 00:52:59,410 Og dybest set, jeg kan bare finder for sletningen. 997 00:52:59,410 --> 00:53:03,220 Og hvad du ser, slette faktisk fjerne. 998 00:53:03,220 --> 00:53:05,400 Det er den kommando, Jeg har brug for at ringe til. 999 00:53:05,400 --> 00:53:09,620 Så nu, at vi ved, at jeg vil at ændre dette slet for at fjerne. 1000 00:53:09,620 --> 00:53:13,060 1001 00:53:13,060 --> 00:53:18,010 Så nu, når jeg går tilbage til min leaderboard site, jeg har tænkt mig at klikke 1002 00:53:18,010 --> 00:53:19,450 slette, og nu er jeg væk. 1003 00:53:19,450 --> 00:53:21,290 Der er ikke mere Roger. 1004 00:53:21,290 --> 00:53:25,470 Og jeg kan holde ud at slette alle ét navn, før jeg har intet tilbage. 1005 00:53:25,470 --> 00:53:33,600 1006 00:53:33,600 --> 00:53:36,060 >> Så det var en lille forsmag af, hvordan man bruger Meteor. 1007 00:53:36,060 --> 00:53:38,990 1008 00:53:38,990 --> 00:53:42,380 Du vil lære en masse mere JavaScript og HTML nødvendigt at 1009 00:53:42,380 --> 00:53:46,970 det ser smukkere, som vi vil dække i denne uges [? stykke?] indstillet til HTML 1010 00:53:46,970 --> 00:53:49,630 og JavaScript i den næste [? stykke?] indstillet. 1011 00:53:49,630 --> 00:53:53,150 >> Så du skal ikke blive bekymret, hvis ikke alle denne ting kommer let til dig. 1012 00:53:53,150 --> 00:53:56,410 Det vil på det tidspunkt, det endelige projekt. 1013 00:53:56,410 --> 00:53:58,030 Tak for at dukke op. 1014 00:53:58,030 --> 00:54:01,380 Linket Jeg vil opdatere hurtigt efter seminar så du kan se nogle flere 1015 00:54:01,380 --> 00:54:05,630 eksempler, som jeg har gennemført på hvordan for at få de mere avancerede leaderboard 1016 00:54:05,630 --> 00:54:08,640 at jeg har på denne hjemmeside her på en radikal-leaderboard.meteor. 1017 00:54:08,640 --> 00:54:19,550 1018 00:54:19,550 --> 00:54:21,260 Tak. 1019 00:54:21,260 --> 00:54:22,760 >> [Applaus] 1020 00:54:22,760 --> 00:56:58,070