1 00:00:00,000 --> 00:00:08,100 2 00:00:08,100 --> 00:00:08,890 >> ROGER ZURAWICKI: Ciao a tutti. 3 00:00:08,890 --> 00:00:11,310 Posso avere la vostra attenzione? 4 00:00:11,310 --> 00:00:12,090 Grazie, ragazzi. 5 00:00:12,090 --> 00:00:14,030 Oggi vi voglio parlare di Meteor. 6 00:00:14,030 --> 00:00:16,710 Si tratta di un framework JavaScript. 7 00:00:16,710 --> 00:00:21,110 Saremo vivendo come si può rendere le applicazioni web davvero cool. 8 00:00:21,110 --> 00:00:24,940 >> Prima di entrare in JavaScript, ho appena Voglio dirvi ragazzi che questa volontà 9 00:00:24,940 --> 00:00:26,900 effettuato - avrete una successiva piece questo semestre. 10 00:00:26,900 --> 00:00:28,520 Dovrebbe essere di circa JavaScript. 11 00:00:28,520 --> 00:00:32,910 Penso che [incomprensibile] è prima di andare a coprire il PHP roba web HTML prima 12 00:00:32,910 --> 00:00:34,530 passare a JavaScript. 13 00:00:34,530 --> 00:00:39,650 E in CS50, JavaScript è considerato come un codice client. 14 00:00:39,650 --> 00:00:41,970 Quindi viene eseguito solo in il browser web. 15 00:00:41,970 --> 00:00:45,740 >> Ma grazie ai recenti progressi nella tecnologia, siamo ora riusciti a correre 16 00:00:45,740 --> 00:00:48,090 JavaScript come server pure. 17 00:00:48,090 --> 00:00:51,630 Quindi questo ha creato un davvero cool quadro perché ora si può scrivere 18 00:00:51,630 --> 00:00:55,250 legittimamente lo stesso codice per il client e il server. 19 00:00:55,250 --> 00:00:57,810 E quando si definiscono le funzioni in server, il client può chiamare quelli 20 00:00:57,810 --> 00:00:59,090 stesse funzioni. 21 00:00:59,090 --> 00:01:00,370 E rende molto più facile. 22 00:01:00,370 --> 00:01:04,519 Mentre prima, se si sta utilizzando PHP su il server, JavaScript sul fronte 23 00:01:04,519 --> 00:01:08,040 fine, è necessario scrivere una funzione PHP e poi una versione JavaScript del 24 00:01:08,040 --> 00:01:10,880 stessa funzione di fare il stesso tipo di lavoro. 25 00:01:10,880 --> 00:01:14,330 >> Quindi, prima di iniziare, voglio visualizzare una demo di quello che 26 00:01:14,330 --> 00:01:17,190 Meteor può fare per voi. 27 00:01:17,190 --> 00:01:20,330 Vi mostrerò la demo, che è ciò che sarete in grado di creare dal 28 00:01:20,330 --> 00:01:21,580 fine di questo seminario. 29 00:01:21,580 --> 00:01:24,260 30 00:01:24,260 --> 00:01:25,670 Ci basta andare qui. 31 00:01:25,670 --> 00:01:27,410 Si tratta di una applicazione Leaderboard. 32 00:01:27,410 --> 00:01:31,970 E 'in realtà basato su l'esempio Meteor che ti dà. 33 00:01:31,970 --> 00:01:37,220 >> Meteor è molto bello, perché quando si installarlo come un pacchetto, è possibile 34 00:01:37,220 --> 00:01:39,140 fondamentalmente giocare con questi quattro demo. 35 00:01:39,140 --> 00:01:41,410 E la classifica è l' prima di queste demo. 36 00:01:41,410 --> 00:01:44,620 Dopo il seminario, vi incoraggio tutti esplorare solo gli altri demo 37 00:01:44,620 --> 00:01:48,300 perché penso che siano davvero cool, e vi mostrano la potenza di Meteor. 38 00:01:48,300 --> 00:01:51,310 >> Così che cosa si tratta, questo è ospitato su Leaderboard. 39 00:01:51,310 --> 00:01:54,950 Questo è solo francamente una lista di nomi. 40 00:01:54,950 --> 00:01:56,510 Ed è possibile selezionare le persone. 41 00:01:56,510 --> 00:01:57,780 Essi ingialliscono. 42 00:01:57,780 --> 00:02:00,060 E allora si può dare loro cinque punti. 43 00:02:00,060 --> 00:02:02,850 E noterete che la lista è ordinato perché, come mi concedo più 44 00:02:02,850 --> 00:02:05,850 e più punti, ora sono al top. 45 00:02:05,850 --> 00:02:07,420 Quindi questo è dove iniziamo. 46 00:02:07,420 --> 00:02:11,690 >> E ciò che tu sarai in grado di togliere da questo seminario è un po 'di più 47 00:02:11,690 --> 00:02:13,600 caratteristiche che ho aggiunto a la classifica. 48 00:02:13,600 --> 00:02:18,240 Noi tratteremo come, così come aggiungere cinque punti per un giocatore, possiamo 49 00:02:18,240 --> 00:02:28,720 eliminare giocatori, possiamo aggiungere nuovi giocatori, e possiamo scegliere come vogliamo 50 00:02:28,720 --> 00:02:29,540 per ordinare loro. 51 00:02:29,540 --> 00:02:35,240 E queste sono tutte le chiamate API molto facile Meteor che prevede per voi. 52 00:02:35,240 --> 00:02:39,120 Hai anche una funzione qui randomizzare i punteggi. 53 00:02:39,120 --> 00:02:41,450 >> Così che cosa è veramente interessante di questo è voi ragazzi può effettivamente 54 00:02:41,450 --> 00:02:43,820 tutti vanno al sito. 55 00:02:43,820 --> 00:02:46,575 Mi metterò in testo più grande qui. 56 00:02:46,575 --> 00:02:51,390 57 00:02:51,390 --> 00:02:52,640 One-radicale-lead erboard.meteor.com. 58 00:02:52,640 --> 00:03:03,390 59 00:03:03,390 --> 00:03:07,622 E quando voi ragazzi andare al sito, dovrebbe essere in grado di modificare il sito e 60 00:03:07,622 --> 00:03:09,595 tutte le modifiche saranno visibili a tutti gli altri. 61 00:03:09,595 --> 00:03:12,730 62 00:03:12,730 --> 00:03:17,740 Così si può - sono ragazzi tutti in grado di connettersi al sito? 63 00:03:17,740 --> 00:03:18,750 Quindi, giocare con essa. 64 00:03:18,750 --> 00:03:20,440 Vai e avviare l'eliminazione di alcuni nomi. 65 00:03:20,440 --> 00:03:21,690 Vedere cosa succede. 66 00:03:21,690 --> 00:03:35,370 67 00:03:35,370 --> 00:03:38,510 >> Così si vede tutti possono giocare. 68 00:03:38,510 --> 00:03:41,930 Questa è solo la sicurezza di default Modalità di Meteor. 69 00:03:41,930 --> 00:03:44,360 Si vede che tutti possono cambiare ogni altri dati. 70 00:03:44,360 --> 00:03:44,920 Non ti preoccupare. 71 00:03:44,920 --> 00:03:46,460 Meteor ha la sicurezza. 72 00:03:46,460 --> 00:03:49,860 Questo è molto facilmente implementato caratteristica, dove si poteva impostare gli utenti 73 00:03:49,860 --> 00:03:50,600 e login. 74 00:03:50,600 --> 00:03:53,750 Ma in questo momento, chiunque visiti la sito può dare se stessi come molti 75 00:03:53,750 --> 00:03:55,000 punti come vogliono. 76 00:03:55,000 --> 00:03:57,140 77 00:03:57,140 --> 00:04:00,090 Così ho sempre in questo modo perché questo è un modo divertente per iniziare. 78 00:04:00,090 --> 00:04:02,360 E poi ci limiteremo a parlare i dettagli, come 79 00:04:02,360 --> 00:04:03,610 Meteor rende questo possibile. 80 00:04:03,610 --> 00:04:10,820 81 00:04:10,820 --> 00:04:15,660 >> Quindi ho intenzione di coprire ciò che è Meteor, e poi ci solo bisogno di coprire il 82 00:04:15,660 --> 00:04:18,920 due prerequisiti che CS50 non ha coperto a sufficienza. 83 00:04:18,920 --> 00:04:21,970 Ma alla fine del termine, si dovrebbe stare bene con HTML e 84 00:04:21,970 --> 00:04:25,250 JavaScript per ottenere davvero le mani sporco lavoro con Meteor. 85 00:04:25,250 --> 00:04:28,740 E penso che sia solo un ottimo modo per anche meno comodo agli studenti di fare 86 00:04:28,740 --> 00:04:32,930 progetti finali perché possono davvero soggiorno in una lingua, e si arriva a 87 00:04:32,930 --> 00:04:37,620 vedere le modifiche della loro lavorare subito. 88 00:04:37,620 --> 00:04:42,520 >> Quindi questa diapositiva mostra solo alcune delle principali tecnologie che Meteor JS 89 00:04:42,520 --> 00:04:43,610 dà a voi. 90 00:04:43,610 --> 00:04:46,090 Meteor non è una nuova tecnologia da solo. 91 00:04:46,090 --> 00:04:48,390 E 'davvero un agglomerato di tutte queste cose diverse 92 00:04:48,390 --> 00:04:49,920 abbiamo su internet. 93 00:04:49,920 --> 00:04:55,650 Così come HTML, CSS, JavaScript, abbiamo avere alcune tecnologie come Node.js, 94 00:04:55,650 --> 00:04:58,490 che è quello che permette di eseguire JavaScript sul back-end sul 95 00:04:58,490 --> 00:05:02,520 Server, nonché alcuni JavaScript biblioteche, come jQuery, Underscore. 96 00:05:02,520 --> 00:05:06,320 >> Tutti questi sarà familiare a voi dalla fine del semestre. 97 00:05:06,320 --> 00:05:10,680 E abbiamo anche la possibilità di utilizzare un database chiamato MongoDB, che è davvero 98 00:05:10,680 --> 00:05:14,250 popolare database ora queste nuove start-up. 99 00:05:14,250 --> 00:05:18,650 Si può pensare ad esso come come MySQL, ma funziona molto bene con JavaScript. 100 00:05:18,650 --> 00:05:22,140 E ci sono alcune altre tecnologie qui e molti altri che non ho elencato 101 00:05:22,140 --> 00:05:23,880 che tutta l'interfaccia davvero bene con Meteor. 102 00:05:23,880 --> 00:05:26,900 103 00:05:26,900 --> 00:05:30,540 >> Devo mettere questa diapositiva perché a volte ho confusione su questo. 104 00:05:30,540 --> 00:05:31,695 Meteor è solo JavaScript. 105 00:05:31,695 --> 00:05:33,040 Non è PHP. 106 00:05:33,040 --> 00:05:34,360 Non è Ruby on Rails. 107 00:05:34,360 --> 00:05:37,950 Quindi, se si scrive codice, se si vuole scrivere un progetto Meteor, è davvero 108 00:05:37,950 --> 00:05:38,900 non è possibile utilizzare il codice Ruby. 109 00:05:38,900 --> 00:05:41,660 Davvero non si utilizza PHP. 110 00:05:41,660 --> 00:05:45,800 >> Mentre vedremo che le differenze di codice e sintassi potrebbero essere non che 111 00:05:45,800 --> 00:05:48,930 diverso, voglio sottolineare a voi che Meteor, tutto quello che il codice è 112 00:05:48,930 --> 00:05:50,660 solo in JavaScript. 113 00:05:50,660 --> 00:05:53,920 E tutto ciò che si mostra a l'utente sarà CSS HTML. 114 00:05:53,920 --> 00:05:56,780 Ma non si sta effettivamente utilizzando uno qualsiasi dei le altre lingue detto altro 115 00:05:56,780 --> 00:05:59,250 seminari potrebbero coprire. 116 00:05:59,250 --> 00:06:01,020 Che Meteor è anche è un server web. 117 00:06:01,020 --> 00:06:03,930 Quindi, anche se non si dispone di alcun JavaScript, e si desidera solo servire 118 00:06:03,930 --> 00:06:07,020 File CSS e HTML, Meteor può farlo per voi. 119 00:06:07,020 --> 00:06:10,520 120 00:06:10,520 --> 00:06:13,770 >> Ed ecco il link nuovamente al demo che ho avuto voi ragazzi 121 00:06:13,770 --> 00:06:15,380 iniziato a giocare con. 122 00:06:15,380 --> 00:06:18,230 Ma passiamo a HTML. 123 00:06:18,230 --> 00:06:22,060 Quante persone qui hanno idea di cosa HTML è? 124 00:06:22,060 --> 00:06:22,670 OK grande. 125 00:06:22,670 --> 00:06:25,800 E questo è completamente soddisfacente. 126 00:06:25,800 --> 00:06:29,410 Davvero non c'è bisogno di sapere molto su perché andremo oltre l' 127 00:06:29,410 --> 00:06:31,220 utilizzo molto semplice. 128 00:06:31,220 --> 00:06:34,570 >> Questo è ciò che il semplice La pagina HTML assomiglia. 129 00:06:34,570 --> 00:06:38,840 Questo può essere come il tuo ciao, mondo per HTML, che abbiamo iniziato in C con 130 00:06:38,840 --> 00:06:40,760 ciao, mondo. 131 00:06:40,760 --> 00:06:44,360 Io non voglio che lo stress sul dettagli di ciò che HTML, cosa testa, cosa 132 00:06:44,360 --> 00:06:46,120 corpo, quale titolo sta facendo lì. 133 00:06:46,120 --> 00:06:49,130 Voglio solo sottolineare la struttura, come avete tags. 134 00:06:49,130 --> 00:06:50,860 E questo è le parentesi angolari. 135 00:06:50,860 --> 00:06:52,380 Ed è lì che hai i descrittori. 136 00:06:52,380 --> 00:06:54,790 >> Così si potrebbe avere il documento HTML. 137 00:06:54,790 --> 00:06:59,300 E poi ti chiude il documento HTML con backslash stessa cosa. 138 00:06:59,300 --> 00:07:01,200 E si dispone di diversi tipi di tag. 139 00:07:01,200 --> 00:07:02,730 E notare che sono tutti abbinati. 140 00:07:02,730 --> 00:07:05,300 Avrai come un tag body e poi un tag corpo vicino. 141 00:07:05,300 --> 00:07:08,620 E dentro il tag body, che sarà il contenuto della tua pagina web. 142 00:07:08,620 --> 00:07:12,770 Così questa pagina web sarebbe semplicemente visualizzare in uno sfondo bianco e testo nero 143 00:07:12,770 --> 00:07:14,242 ciao, mondo. 144 00:07:14,242 --> 00:07:17,610 Ritiene che ha un senso? 145 00:07:17,610 --> 00:07:19,500 OK. 146 00:07:19,500 --> 00:07:22,640 >> Ora ho intenzione di fretta coprire JavaScript. 147 00:07:22,640 --> 00:07:26,990 Nelle parole di un TF precedente, "JavaScript è il migliore programmazione 148 00:07:26,990 --> 00:07:28,550 lingua attualmente esistenti. 149 00:07:28,550 --> 00:07:30,520 Altre persone cercheranno di dire il contrario. 150 00:07:30,520 --> 00:07:33,840 Si sbagliano. "JavaScript è abbastanza bello, e ti faccio vedere perché. 151 00:07:33,840 --> 00:07:36,620 152 00:07:36,620 --> 00:07:42,380 >> Quindi questo è il classico esempio iniziamo con in C. Abbiamo ciao, mondo. 153 00:07:42,380 --> 00:07:45,500 E si nota che, anche se si riduce si, devi avere almeno due 154 00:07:45,500 --> 00:07:46,560 righe di codice qui. 155 00:07:46,560 --> 00:07:48,990 Ho diverse righe di codice. 156 00:07:48,990 --> 00:07:50,160 Questo può essere fatto in modo molto semplice. 157 00:07:50,160 --> 00:07:53,950 Una linea in JavaScript con console.log, e poi la stringa, 158 00:07:53,950 --> 00:07:55,340 ciao, mondo. 159 00:07:55,340 --> 00:07:59,570 >> Ora, anche se ci stiamo muovendo in un nuovo il linguaggio Javascript, quasi tutto il 160 00:07:59,570 --> 00:08:02,950 competenze che hai imparato codifica in C sono direttamente portatile. 161 00:08:02,950 --> 00:08:07,130 Così stringhe, l'idea di stringhe in virgolette, che è la stessa. 162 00:08:07,130 --> 00:08:08,890 Il punto e virgola, che è la stessa. 163 00:08:08,890 --> 00:08:11,190 >> Una caratteristica accurata su JavaScript in realtà è che si 164 00:08:11,190 --> 00:08:12,360 non è necessario il punto e virgola. 165 00:08:12,360 --> 00:08:14,950 Si può immaginare che si dovrebbe mettere un punto e virgola là. 166 00:08:14,950 --> 00:08:18,035 Ma detto questo, si dovrebbe sempre cercare per mettere i punti e virgola lì. 167 00:08:18,035 --> 00:08:21,160 E 'considerato un buon stile. 168 00:08:21,160 --> 00:08:22,650 E anche, non c'è nessuna funzione principale. 169 00:08:22,650 --> 00:08:25,580 Basta iniziare nella parte superiore del file e leggere riga per riga le cose. 170 00:08:25,580 --> 00:08:28,820 171 00:08:28,820 --> 00:08:32,760 >> Allora questo è quello che ci vuole per fare che ciao, il programma mondiale. 172 00:08:32,760 --> 00:08:36,059 E poi notare che si deve fare ciao e quindi eseguire ciao. 173 00:08:36,059 --> 00:08:38,530 Con JavaScript, è considerato un linguaggio interpretato. 174 00:08:38,530 --> 00:08:40,780 Quello che dovete sapere è che non vi è alcun processo. 175 00:08:40,780 --> 00:08:41,950 >> Non c'è compilazione. 176 00:08:41,950 --> 00:08:43,440 Devi solo eseguire nodo. 177 00:08:43,440 --> 00:08:47,220 E ricordate nodo è il programma che verrà eseguito il tuo JavaScript su una console, 178 00:08:47,220 --> 00:08:49,030 su una scatola nera, non il sito web. 179 00:08:49,030 --> 00:08:52,480 Quindi basta dargli il file, ed è andare in stampa ciao, mondo. 180 00:08:52,480 --> 00:08:56,750 >> Io in realtà faccio un po 'di demo che per voi ragazzi proprio qui. 181 00:08:56,750 --> 00:08:59,380 Allora andiamo a casa mia Terminale Node.js. 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 Passiamo qui. 185 00:09:06,150 --> 00:09:07,930 Quindi ho intenzione di iniziare nodo. 186 00:09:07,930 --> 00:09:10,230 E io vi mostrerò voi ragazzi in un solo un secondo come ottenere che 187 00:09:10,230 --> 00:09:12,000 installato, se non lo fai. 188 00:09:12,000 --> 00:09:14,800 Permettetemi di fare che un po 'più grande. 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 Spero che voi ragazzi possono vedere. 192 00:09:20,120 --> 00:09:27,390 >> Così posso scrivere codice come ho fatto io prima in console.log. 193 00:09:27,390 --> 00:09:28,915 Ciao, Roger. 194 00:09:28,915 --> 00:09:31,710 195 00:09:31,710 --> 00:09:35,330 E notare io non devo fare il punto e virgola, ma poi ho questa strana 196 00:09:35,330 --> 00:09:36,850 cosa undefined. 197 00:09:36,850 --> 00:09:40,310 Beh in realtà, non importa su la cosa undefined. 198 00:09:40,310 --> 00:09:43,590 Cose che voglio farvi notare è che si non è necessario la funzione principale qui 199 00:09:43,590 --> 00:09:45,050 per avviare l'esecuzione del codice. 200 00:09:45,050 --> 00:09:46,790 E non c'è fine backslash. 201 00:09:46,790 --> 00:09:50,683 Ci sono alcune piccole caratteristiche che JavaScript può fare per voi. 202 00:09:50,683 --> 00:09:53,510 >> AUDIENCE: [incomprensibile]. 203 00:09:53,510 --> 00:09:54,000 >> ROGER ZURAWICKI: Oh yeah. 204 00:09:54,000 --> 00:09:57,460 Mi dispiace per questo. 205 00:09:57,460 --> 00:10:02,200 E quella freccia significa solo nodo è pronta per un altro comando. 206 00:10:02,200 --> 00:10:05,380 Così si può avere fare semplice matematica, come 1 più 1. 207 00:10:05,380 --> 00:10:10,360 E proprio come in C, questi matematica simboli sono lo stesso. 208 00:10:10,360 --> 00:10:13,750 Posso fare console.log di un numero. 209 00:10:13,750 --> 00:10:15,090 E poi la stampa di due. 210 00:10:15,090 --> 00:10:19,000 JavaScript è bello in questo senso perché anche se due è un int, 211 00:10:19,000 --> 00:10:22,020 come in C, se avete printf con due, si otterrebbe un errore. 212 00:10:22,020 --> 00:10:24,140 >> Ma lo sa JavaScript, oh, sei stampare qualcosa. 213 00:10:24,140 --> 00:10:25,070 Io vado a bisogno di una stringa. 214 00:10:25,070 --> 00:10:28,410 Così mi permetta di convertire che due in una stringa per voi. 215 00:10:28,410 --> 00:10:34,970 E si può anche fare qualche roba strana come hi e quindi più due. 216 00:10:34,970 --> 00:10:39,520 Questo è solo un altro esempio di come due può essere convertito in là pure. 217 00:10:39,520 --> 00:10:45,135 >> Quindi, con quello fuori del modo, cerchiamo di solo coprire un po 'di più JavaScript. 218 00:10:45,135 --> 00:10:48,660 219 00:10:48,660 --> 00:10:50,540 Quindi, in C, abbiamo tipi. 220 00:10:50,540 --> 00:10:53,925 Ogni volta che abbiamo creato una nuova variabile, si devo dire che è tutto è char * o 221 00:10:53,925 --> 00:10:55,850 stringa nel caso CS50. 222 00:10:55,850 --> 00:10:58,350 Oppure, se avessimo un numero decimale, abbiamo dovuto dire float. 223 00:10:58,350 --> 00:11:00,690 Se avevamo bisogno di un booleano, abbiamo dovuto dire b. 224 00:11:00,690 --> 00:11:04,220 E poi una volta abbiamo avuto qualcosa che stato b, doveva rimanere un bool. 225 00:11:04,220 --> 00:11:07,360 Non potevamo cambiare magicamente a un int a meno che non abbiamo scritto nel 226 00:11:07,360 --> 00:11:09,450 tra parentesi, int di b. 227 00:11:09,450 --> 00:11:11,820 >> In JavaScript, non ci sono tipi. 228 00:11:11,820 --> 00:11:13,350 Basta pensare ad esso come var. 229 00:11:13,350 --> 00:11:15,270 E var è come si crea un nuovo tipo. 230 00:11:15,270 --> 00:11:19,210 Così può avere var s è una stringa, var n essendo un galleggiante, 231 00:11:19,210 --> 00:11:21,230 e var b essere vera. 232 00:11:21,230 --> 00:11:24,980 E una cosa che non si può fare in C è Ora posso dire, dopo quella linea, b 233 00:11:24,980 --> 00:11:26,230 equivale a un numero intero. 234 00:11:26,230 --> 00:11:27,400 E che funziona bene. 235 00:11:27,400 --> 00:11:30,840 Considerando che in C, sarebbe dire come il vostro intero non è un bool. 236 00:11:30,840 --> 00:11:32,770 Io non posso farlo per voi. 237 00:11:32,770 --> 00:11:34,050 O [incomprensibile] getterebbe un errore. 238 00:11:34,050 --> 00:11:37,970 239 00:11:37,970 --> 00:11:43,420 >> E posso rapidamente tornare in nodo e mostrare un po 'di quella funzionalità. 240 00:11:43,420 --> 00:11:44,960 Così posso avere una var a. 241 00:11:44,960 --> 00:11:52,120 Chiamatela "Apple". Così ora quando si stampa una, Ho la mia stringa, 'Mela'. Ma posso 242 00:11:52,120 --> 00:11:54,900 anche ora dicono che un uguale 3. 243 00:11:54,900 --> 00:11:56,610 E notare non c'è alcun errore. 244 00:11:56,610 --> 00:12:00,630 E un ora uguale a 3. 245 00:12:00,630 --> 00:12:01,880 Tutte le domande finora? 246 00:12:01,880 --> 00:12:07,030 247 00:12:07,030 --> 00:12:07,570 Sì. 248 00:12:07,570 --> 00:12:10,780 >> PUBBLICO: Aspetta, così console.log è fondamentalmente printf, giusto? 249 00:12:10,780 --> 00:12:12,180 >> ROGER ZURAWICKI: console.log è il vostro printf. 250 00:12:12,180 --> 00:12:12,652 >> AUDIENCE: Giusto. 251 00:12:12,652 --> 00:12:17,844 Allora come mai, se basta digitare in otto o [incomprensibile], cosa che fa 252 00:12:17,844 --> 00:12:18,790 [Incomprensibile]? 253 00:12:18,790 --> 00:12:19,160 >> ROGER ZURAWICKI: Giusto. 254 00:12:19,160 --> 00:12:21,690 Così è - 255 00:12:21,690 --> 00:12:24,240 la roba in verde viene stampato alla console. 256 00:12:24,240 --> 00:12:27,050 E quello che vedremo il prossimo è quando ci muoviamo al web 257 00:12:27,050 --> 00:12:29,300 pagina, non farà - 258 00:12:29,300 --> 00:12:32,650 JavaScript avrà un HTML template, che tratteremo nel 259 00:12:32,650 --> 00:12:34,730 Meteor parte del seminario. 260 00:12:34,730 --> 00:12:38,730 Ed è qui che si può dire, dammi il valore di a, e metterà in un 261 00:12:38,730 --> 00:12:39,920 il tuo sito web. 262 00:12:39,920 --> 00:12:42,520 Perché ogni browser web in realtà ha una piccola consolle. 263 00:12:42,520 --> 00:12:46,380 E se hai guardato con molta attenzione, è potrebbe ottenere alcune informazioni, come il tuo 264 00:12:46,380 --> 00:12:51,210 printf sta apparendo lì con ogni pagina web si carica. 265 00:12:51,210 --> 00:12:53,580 >> AUDIENCE: Come hai alla schermata della shell? 266 00:12:53,580 --> 00:12:57,680 >> ROGER ZURAWICKI: Quindi c'è un comando chiamato nodo, e viene fornito con Meteor. 267 00:12:57,680 --> 00:13:01,230 Quindi mi limiterò a smettere fuori di lì. 268 00:13:01,230 --> 00:13:03,580 Il nodo è il programma che corre JavaScript. 269 00:13:03,580 --> 00:13:07,070 Se andate a meteor.com, è può installare Meteor, e 270 00:13:07,070 --> 00:13:08,480 Meteor è dotato di nodo. 271 00:13:08,480 --> 00:13:11,470 Perché Meteor è solo una raccolta di tutti questi pacchetti software. 272 00:13:11,470 --> 00:13:15,280 Quando arriviamo al nostro esempio, lo farò camminare tutti attraverso l'installazione di 273 00:13:15,280 --> 00:13:17,625 Meteor, e poi si può giocare con il nodo se stessi. 274 00:13:17,625 --> 00:13:22,154 275 00:13:22,154 --> 00:13:23,980 OK, grande. 276 00:13:23,980 --> 00:13:29,640 >> Così un altro grande caratteristica di lavorare con JavaScript è loop sono gli stessi. 277 00:13:29,640 --> 00:13:31,430 Praticamente esattamente lo stesso. 278 00:13:31,430 --> 00:13:35,530 Per i cicli, cicli while, do cicli while, if else. 279 00:13:35,530 --> 00:13:36,880 E 'lo stesso con le parentesi graffe. 280 00:13:36,880 --> 00:13:38,540 E 'la stessa sintassi. 281 00:13:38,540 --> 00:13:41,350 Nel caso di un ciclo for, il piccolo dettaglio che si deve prestare attenzione 282 00:13:41,350 --> 00:13:45,340 a è invece di int i è uguale a 0, dobbiamo dire var i è uguale a 0. 283 00:13:45,340 --> 00:13:49,580 Ma questo perché le variabili tipi di cui abbiamo parlato prima. 284 00:13:49,580 --> 00:13:53,360 >> Si noti che il printf diventa un registro, un console.log. 285 00:13:53,360 --> 00:13:57,370 E non abbiamo bisogno di fare il cento p backslash n e poi passare a i. 286 00:13:57,370 --> 00:13:58,380 Si può solo dire che ho. 287 00:13:58,380 --> 00:14:01,910 E sarebbe stampare i numeri da zero a quattro. 288 00:14:01,910 --> 00:14:04,830 Se voi volete provare questo, perché ti ha portato a un buon punto. 289 00:14:04,830 --> 00:14:08,730 Se si voleva eseguire questo codice sul tuo proprio browser, vorrei raccomandare che 290 00:14:08,730 --> 00:14:11,040 ognuno apre Google Chrome. 291 00:14:11,040 --> 00:14:14,220 Google Chrome o qualsiasi altro browser web davvero, ma mi piace Google Chrome 292 00:14:14,220 --> 00:14:17,350 perché è molto standardizzato. 293 00:14:17,350 --> 00:14:24,240 >> Puoi andare, credo, se a destra fare clic su qualsiasi sito web, proprio nel 294 00:14:24,240 --> 00:14:26,880 lo spazio bianco, vedrai un'opzione chiamato Inspect Element. 295 00:14:26,880 --> 00:14:28,810 Di solito è l'ultimo. 296 00:14:28,810 --> 00:14:32,630 E quando si fa clic, si dovrebbe ottenere una cosa verso il basso visualizzata qui. 297 00:14:32,630 --> 00:14:35,840 298 00:14:35,840 --> 00:14:37,780 Lasciatemi zoomare qui. 299 00:14:37,780 --> 00:14:41,390 E abbiamo un paio di schede qui. 300 00:14:41,390 --> 00:14:43,580 Quello che interessa è console. 301 00:14:43,580 --> 00:14:48,820 >> E questo è una console JavaScript che ora si può lavorare. 302 00:14:48,820 --> 00:14:49,370 Grande. 303 00:14:49,370 --> 00:14:52,560 Così posso digitare la stessa roba Stavo scrivendo prima nel nodo. 304 00:14:52,560 --> 00:14:54,790 Uno più uno è due. 305 00:14:54,790 --> 00:14:59,110 Var una uguale "Apple". 306 00:14:59,110 --> 00:15:03,430 E poi mi piacerebbe stampare una, ed una è 'Apple'. 307 00:15:03,430 --> 00:15:08,760 Quindi, in qualsiasi browser web, Firefox, Chrome, Safari, qualunque cosa si usa, come 308 00:15:08,760 --> 00:15:11,240 Finché si ha accesso ad un JavaScript console, lo stesso tipo di 309 00:15:11,240 --> 00:15:15,520 codice Stavo correndo in nodo che si può essere eseguito nella tua console. 310 00:15:15,520 --> 00:15:17,530 >> AUDIENCE: [incomprensibile]? 311 00:15:17,530 --> 00:15:18,690 >> ROGER ZURAWICKI: Come arrivare alla console? 312 00:15:18,690 --> 00:15:22,880 È necessario fare clic destro su uno spazio vuoto sulla pagina, e poi si va a 313 00:15:22,880 --> 00:15:26,100 Inspect Element. 314 00:15:26,100 --> 00:15:28,290 Quindi, in realtà, mi piacerebbe che voi ragazzi per fare solo sicuro che si può 315 00:15:28,290 --> 00:15:29,860 Inspect Element in Chrome. 316 00:15:29,860 --> 00:15:32,630 E vedere quando si digita in qualche codice nella console 317 00:15:32,630 --> 00:15:33,880 che venga eseguito correttamente. 318 00:15:33,880 --> 00:16:15,820 319 00:16:15,820 --> 00:16:18,430 Sentitevi liberi di fare tutte le domande, se qualcosa che non è chiaro qui. 320 00:16:18,430 --> 00:16:23,340 321 00:16:23,340 --> 00:16:24,590 >> AUDIENCE: [incomprensibile]. 322 00:16:24,590 --> 00:16:27,280 323 00:16:27,280 --> 00:16:28,200 >> ROGER ZURAWICKI: qualsiasi tipo, a destra. 324 00:16:28,200 --> 00:16:31,370 C'è un solo tipo per tutti variabili in JavaScript. 325 00:16:31,370 --> 00:16:34,160 E quando si deve dichiarare una variabile, si dice var. 326 00:16:34,160 --> 00:16:35,410 >> AUDIENCE: [incomprensibile]. 327 00:16:35,410 --> 00:16:39,010 328 00:16:39,010 --> 00:16:40,050 >> ROGER ZURAWICKI: Già. 329 00:16:40,050 --> 00:16:43,730 Lo fa, ma in JavaScript, è molto intelligenti su allocazione di memoria. 330 00:16:43,730 --> 00:16:44,600 Non c'è malloc. 331 00:16:44,600 --> 00:16:45,780 Non vi è alcuna connessione. 332 00:16:45,780 --> 00:16:48,490 Quindi non c'è bisogno di preoccuparsi di questo. 333 00:16:48,490 --> 00:16:51,140 Ecco un'altra bella caratteristica che JavaScript fornisce. 334 00:16:51,140 --> 00:16:56,990 335 00:16:56,990 --> 00:16:58,440 >> Così mi piacerebbe andare avanti. 336 00:16:58,440 --> 00:17:01,360 Vorrei che sia 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 Grande. 340 00:17:07,720 --> 00:17:10,660 >> PUBBLICO: Sto avendo problemi trovare il [? Inspect Element. ?] 341 00:17:10,660 --> 00:17:13,609 342 00:17:13,609 --> 00:17:16,250 >> ROGER ZURAWICKI: sembra così Safari un po 'diverso, ma non si 343 00:17:16,250 --> 00:17:18,599 avere Chrome o Firefox? 344 00:17:18,599 --> 00:17:21,619 Questi sono il più facile quelli con cui lavorare. 345 00:17:21,619 --> 00:17:25,079 E per i vostri progetti, mi raccomando attaccare con un browser a causa 346 00:17:25,079 --> 00:17:29,610 avrai un sacco di bug quasi perché tutti i browser ossequi 347 00:17:29,610 --> 00:17:31,980 JavaScript HTML un po 'diverso. 348 00:17:31,980 --> 00:17:35,170 Quindi penso che la tua vita sarà molto più facile se vi limitate a Chrome perché 349 00:17:35,170 --> 00:17:37,052 è disponibile su tutte le macchine. 350 00:17:37,052 --> 00:17:38,790 Ed è un browser piuttosto popolare. 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 >> Così il prossimo argomento che dovremmo Copertura in JavaScript - 355 00:18:06,370 --> 00:18:07,730 Mi dispiace per la formattazione qui. 356 00:18:07,730 --> 00:18:11,630 Ho dovuto allungare le diapositive da abbinare il proiettore widescreen. 357 00:18:11,630 --> 00:18:14,750 Ma mi piacerebbe ora piace parlare come si fa funzioni. 358 00:18:14,750 --> 00:18:17,410 In C, dobbiamo dichiarare ogni funzione. 359 00:18:17,410 --> 00:18:22,130 Come int aggiungere, e ci vuole un int in x, e un int y, e poi li sommiamo 360 00:18:22,130 --> 00:18:23,100 e restituirlo. 361 00:18:23,100 --> 00:18:26,850 >> In JavaScript, le funzioni sono in realtà un altro tipo di variabile. 362 00:18:26,850 --> 00:18:30,560 Quindi diciamo solo var aggiungere, e è uguale a una funzione. 363 00:18:30,560 --> 00:18:32,580 Una funzione che prende un x e y. 364 00:18:32,580 --> 00:18:33,790 E che cosa fa quella funzione? 365 00:18:33,790 --> 00:18:39,910 Esso restituisce x + y nello stesso esatto sintassi come in C. E si nota che in 366 00:18:39,910 --> 00:18:44,290 JavaScript, non sarà detto ciò che l' funzione restituisce perché da 367 00:18:44,290 --> 00:18:49,160 variabili non hanno tipi comunque, non è davvero produttivo, credo, 368 00:18:49,160 --> 00:18:52,855 da specificando tutti i tuoi Tipi nelle vostre funzioni. 369 00:18:52,855 --> 00:18:55,720 370 00:18:55,720 --> 00:18:59,565 E poi quando si chiama una funzione, è la stessa sintassi C. È 371 00:18:59,565 --> 00:19:03,610 basta passare nei vostri due argomenti. 372 00:19:03,610 --> 00:19:07,330 Mi piacerebbe provare questo nel mio nodo. 373 00:19:07,330 --> 00:19:09,284 Posso cambiare la diapositiva? 374 00:19:09,284 --> 00:19:10,534 >> AUDIENCE: [incomprensibile]. 375 00:19:10,534 --> 00:19:14,639 376 00:19:14,639 --> 00:19:17,000 Riusciremo a ottenere una copia delle diapositive? 377 00:19:17,000 --> 00:19:18,250 >> ROGER ZURAWICKI: sì. 378 00:19:18,250 --> 00:19:28,280 379 00:19:28,280 --> 00:19:29,956 Quindi torniamo al nodo. 380 00:19:29,956 --> 00:19:32,240 OK. 381 00:19:32,240 --> 00:19:38,160 Quindi io dico var aggiuntivo è uguale funzione. 382 00:19:38,160 --> 00:19:40,650 L'assunzione di un x, prendendo una y. 383 00:19:40,650 --> 00:19:43,690 E poi si sa che la propria dichiarazione non completata. 384 00:19:43,690 --> 00:19:47,692 Così nel nodo o nella vostra console, si noterà dot dot dot. 385 00:19:47,692 --> 00:19:49,660 Così si può continuare a digitare il vostro codice. 386 00:19:49,660 --> 00:19:53,650 Ed ora io dico return x + y. 387 00:19:53,650 --> 00:19:54,790 E poi chiudere la parentesi. 388 00:19:54,790 --> 00:20:00,260 E il momento in cui chiudo la parentesi, si vede che l'istruzione è terminata. 389 00:20:00,260 --> 00:20:04,730 >> E ora posso dire aggiungere uno e due. 390 00:20:04,730 --> 00:20:08,280 E io prendo tre fuori. 391 00:20:08,280 --> 00:20:11,545 Si noti che se ho appena fatto aggiungo, è mi dice che è una funzione. 392 00:20:11,545 --> 00:20:14,630 393 00:20:14,630 --> 00:20:19,570 E una cosa solo di prestare attenzione a è se si dà il numero sbagliato di 394 00:20:19,570 --> 00:20:23,380 argomenti, si farà. 395 00:20:23,380 --> 00:20:25,890 Verrà eseguito, ma si potrebbe ottenere alcuni risultati davvero strano. 396 00:20:25,890 --> 00:20:30,070 Un po 'come un valore spazzatura, si può pensare di esso. 397 00:20:30,070 --> 00:20:32,060 Quindi, per favore andare avanti e provare questo nel tuo browser. 398 00:20:32,060 --> 00:21:25,180 399 00:21:25,180 --> 00:21:29,510 >> OK, nell'interesse di tempo, ti ora passare alle caratteristiche prossime a 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 Così abbiamo parlato funzioni. 403 00:21:38,400 --> 00:21:40,840 Abbiamo parlato di cicli, if troppo. 404 00:21:40,840 --> 00:21:43,660 La sintassi è la stessa come C e variabili. 405 00:21:43,660 --> 00:21:46,090 E ora voglio parlare di array. 406 00:21:46,090 --> 00:21:48,520 Mi dispiace che le diapositive ha un po 'tagliato fuori. 407 00:21:48,520 --> 00:21:52,470 Ma in realtà, nella prima sezione, tutto il necessario funzionerà. 408 00:21:52,470 --> 00:21:55,410 >> Così abbiamo un altro tipo di variabili chiamato array. 409 00:21:55,410 --> 00:21:57,930 E usiamo le parentesi quadre per indicare loro. 410 00:21:57,930 --> 00:22:01,960 Quindi nel primo esempio, var arr, array vuoto. 411 00:22:01,960 --> 00:22:05,900 Questa è la lista vuota, quindi un array contenente elementi. 412 00:22:05,900 --> 00:22:09,770 E si può anche avere una matrice con tre corde. 413 00:22:09,770 --> 00:22:13,290 In C, ogni elemento dell'array doveva essere dello stesso tipo. 414 00:22:13,290 --> 00:22:16,940 >> Ma poiché in JavaScript c'è solo un tipo, gli array può effettivamente 415 00:22:16,940 --> 00:22:18,510 avere diversi tipi di valori. 416 00:22:18,510 --> 00:22:22,220 Come qui, abbiamo un array con un galleggiante, un bool, e un int. 417 00:22:22,220 --> 00:22:25,020 418 00:22:25,020 --> 00:22:28,510 Il modo in cui si ottiene una lunghezza di un array, in realtà non c'è bisogno di usare le dimensioni di 419 00:22:28,510 --> 00:22:29,030 o nulla. 420 00:22:29,030 --> 00:22:31,570 Hai appena detto array e quindi dot lunghezza. 421 00:22:31,570 --> 00:22:36,450 E questa lunghezza punto, si può pensare di che tipo di come una struttura, come ogni 422 00:22:36,450 --> 00:22:40,890 matrice ha un campo, una variabile in più all'interno di esso chiamato lunghezza, che 423 00:22:40,890 --> 00:22:42,910 tiene traccia di quanto tempo il vostro array è. 424 00:22:42,910 --> 00:22:47,280 425 00:22:47,280 --> 00:22:50,420 >> Quindi ho solo fretta per andare in nodi e mostrare voi ragazzi la stessa cosa. 426 00:22:50,420 --> 00:22:55,860 427 00:22:55,860 --> 00:22:58,050 Così posso avere una matrice. 428 00:22:58,050 --> 00:23:00,280 Può essere la lista vuota. 429 00:23:00,280 --> 00:23:02,030 E mi stamperà eseguire una lista vuota. 430 00:23:02,030 --> 00:23:02,530 Grande. 431 00:23:02,530 --> 00:23:08,560 Ora posso dire che la matrice ha 1 e 2.3, e vero. 432 00:23:08,560 --> 00:23:10,400 Così tutti i diversi tipi. 433 00:23:10,400 --> 00:23:11,740 E notate che funziona bene. 434 00:23:11,740 --> 00:23:16,330 La matrice torno supporti tutti i valori ho dato. 435 00:23:16,330 --> 00:23:20,440 >> Se volessi ottenere il primo elemento di la matrice, la sintassi è realtà 436 00:23:20,440 --> 00:23:22,980 lo stesso come in C. È può dire matrice zero. 437 00:23:22,980 --> 00:23:24,430 E si ottiene uno. 438 00:23:24,430 --> 00:23:27,920 Posso dire lo stesso per matrice due, e ottengo vero. 439 00:23:27,920 --> 00:23:31,610 Se faccio qualcosa al di fuori della matrice, JavaScript è un linguaggio sicuro 440 00:23:31,610 --> 00:23:33,390 perché non voglio avere un guasto seg. 441 00:23:33,390 --> 00:23:34,780 Prendo indefinito. 442 00:23:34,780 --> 00:23:37,510 >> E questo undefined, è possibile tipo di pensarci come nullo. 443 00:23:37,510 --> 00:23:41,390 Ma può essere davvero fastidioso quando si codice perché dovrete controllare che 444 00:23:41,390 --> 00:23:43,880 quasi tutto quello che fai, è lavorare non è definito. 445 00:23:43,880 --> 00:23:47,700 E vedremo alcuni esempi di questo quando lavoriamo in Meteor. 446 00:23:47,700 --> 00:23:50,600 >> Anche se di matrice a quattro è indefinito, Posso assegnare un valore. 447 00:23:50,600 --> 00:23:52,570 Quindi io dico che è uguale a uno. 448 00:23:52,570 --> 00:23:57,050 E poi se vado a matrice, I avere il valore aggiunto lì. 449 00:23:57,050 --> 00:24:02,470 E notare che schiera tre, che anche è stato undefined, soggiorni undefined. 450 00:24:02,470 --> 00:24:05,690 Così ora ho un array con un foro nel mezzo. 451 00:24:05,690 --> 00:24:07,750 Ma se ho stampato matrice a quattro, Vorrei ottenere uno. 452 00:24:07,750 --> 00:24:10,960 Se lo facessi matrice a tre, ho indefinito. 453 00:24:10,960 --> 00:24:13,880 >> Così la bella caratteristica che Javascript ti permette di fare è che le liste possono 454 00:24:13,880 --> 00:24:15,620 modificare le dimensioni. 455 00:24:15,620 --> 00:24:18,520 Array, array essendo liste, cambiano le dimensioni. 456 00:24:18,520 --> 00:24:22,480 Ed è possibile specificare qualsiasi posizione all'interno di essi. 457 00:24:22,480 --> 00:24:25,370 E tutti i vuoti saranno riempiti con questi valori non definiti. 458 00:24:25,370 --> 00:24:31,560 459 00:24:31,560 --> 00:24:33,450 >> Così abbiamo parlato array. 460 00:24:33,450 --> 00:24:37,050 Ora, l'ultima cosa che voglio coprire in JavaScript, e questo è molto importante 461 00:24:37,050 --> 00:24:39,550 per comprendere il codice che Io vado a mostrarvi, 462 00:24:39,550 --> 00:24:41,530 sta per essere oggetti. 463 00:24:41,530 --> 00:24:45,140 E gli oggetti sono un termine - 464 00:24:45,140 --> 00:24:47,380 Fondamentalmente, sono presenti in molti linguaggi di programmazione. 465 00:24:47,380 --> 00:24:50,620 E ogni linguaggio di programmazione piace pensare a loro un po 'diverso. 466 00:24:50,620 --> 00:24:55,050 >> Ma penso che per Meteor, una buona analogia è il C struct. 467 00:24:55,050 --> 00:24:59,410 In C, se vogliamo trovare la struct studente, avremmo dovuto specificare tutte le 468 00:24:59,410 --> 00:25:00,240 cose all'interno di esso. 469 00:25:00,240 --> 00:25:01,440 Quindi deve avere un nome. 470 00:25:01,440 --> 00:25:02,140 Deve avere un anno. 471 00:25:02,140 --> 00:25:03,650 Deve avere un genere. 472 00:25:03,650 --> 00:25:07,350 Ma dobbiamo anche dare il tipi di tutte queste cose. 473 00:25:07,350 --> 00:25:11,200 >> E ora che abbiamo questo stampo per la struct chiamato studente, si può avere un 474 00:25:11,200 --> 00:25:14,640 nuova struttura, e quindi possiamo manualmente dire ciò che ciascuno dei campi sono. 475 00:25:14,640 --> 00:25:17,740 Ed è qui che noi usiamo il nome del puntino, dot anno, puntino genere. 476 00:25:17,740 --> 00:25:21,930 E poi abbiamo appena, nell'ultima riga di il codice qui, sto solo stampando la 477 00:25:21,930 --> 00:25:24,980 nome dello studente struct. 478 00:25:24,980 --> 00:25:28,220 >> Nel mondo JavaScript, c'è cosa come studente struct. 479 00:25:28,220 --> 00:25:30,660 Tu non generare una struttura preimpostata. 480 00:25:30,660 --> 00:25:34,680 In realtà solo, in queste staffe, tu dici che cosa è tutto. 481 00:25:34,680 --> 00:25:40,680 Ed è questa notazione strano con l' colon e poi la virgola, ma avrete 482 00:25:40,680 --> 00:25:41,810 abituarsi ad esso abbastanza presto. 483 00:25:41,810 --> 00:25:44,930 >> E in realtà è davvero facile, modo flessibile di appena 484 00:25:44,930 --> 00:25:47,400 la manipolazione di oggetti. 485 00:25:47,400 --> 00:25:51,270 Si nota che se voglio ora ottenere nome di s, faccio e basta s.name. 486 00:25:51,270 --> 00:25:54,090 487 00:25:54,090 --> 00:25:56,790 Ci sono domande su questo? 488 00:25:56,790 --> 00:26:00,260 Questo di solito è stato molto confuso argomento quando introduciamo le persone a 489 00:26:00,260 --> 00:26:02,280 JavaScript. 490 00:26:02,280 --> 00:26:04,110 Farò alcuni esempi di questo nodo. 491 00:26:04,110 --> 00:26:05,010 Sì? 492 00:26:05,010 --> 00:26:06,260 >> AUDIENCE: [incomprensibile]. 493 00:26:06,260 --> 00:26:14,130 494 00:26:14,130 --> 00:26:16,230 >> ROGER ZURAWICKI: Quindi lei avere un esempio, aerei 495 00:26:16,230 --> 00:26:18,764 variabili di quel tipo. 496 00:26:18,764 --> 00:26:20,014 >> AUDIENCE: [incomprensibile]. 497 00:26:20,014 --> 00:26:23,540 498 00:26:23,540 --> 00:26:24,790 >> AUDIENCE: [incomprensibile]. 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 Quindi credo che il modo in cui si dovrebbe andare circa è si dovrebbe mettere gli oggetti in un array, 502 00:26:43,760 --> 00:26:45,340 e ora avrete un matrice di oggetti. 503 00:26:45,340 --> 00:26:47,547 Questo risponde alla tua domanda? 504 00:26:47,547 --> 00:26:48,797 >> AUDIENCE: [incomprensibile]. 505 00:26:48,797 --> 00:26:50,890 506 00:26:50,890 --> 00:26:51,260 >> ROGER ZURAWICKI: sì. 507 00:26:51,260 --> 00:26:52,430 S è un oggetto. 508 00:26:52,430 --> 00:26:57,455 Così possiamo andare in nodo e basta giocare un po '. 509 00:26:57,455 --> 00:26:58,705 >> AUDIENCE: [incomprensibile]? 510 00:26:58,705 --> 00:27:04,880 511 00:27:04,880 --> 00:27:05,440 >> ROGER ZURAWICKI: Oh, OK. 512 00:27:05,440 --> 00:27:10,660 Quindi, se stai chiedendo quali classi sono, le classi sono trattati in modo molto diverso, 513 00:27:10,660 --> 00:27:14,510 e hanno un regime davvero strano chiamato prototipazione, che non si fa 514 00:27:14,510 --> 00:27:15,620 bisogno di conoscere. 515 00:27:15,620 --> 00:27:17,910 Non c'è modo fisso per farlo. 516 00:27:17,910 --> 00:27:21,160 Quindi, se si desidera generare multipla, sarebbe solo tipo di avere una funzione 517 00:27:21,160 --> 00:27:22,100 o qualcosa del genere. 518 00:27:22,100 --> 00:27:24,340 Si genera la propria funzione. 519 00:27:24,340 --> 00:27:26,765 E si dovrebbe restituire un oggetto. 520 00:27:26,765 --> 00:27:29,550 Questo sarebbe il più facile modo per farlo. 521 00:27:29,550 --> 00:27:32,454 Ritiene che senso? 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 Grande. 525 00:27:36,650 --> 00:27:39,820 Quindi, una volta che abbiamo una comprensione di Oggetti JavaScript, essi sono - 526 00:27:39,820 --> 00:27:41,082 oh, sì. 527 00:27:41,082 --> 00:27:42,026 >> AUDIENCE: [incomprensibile] 528 00:27:42,026 --> 00:27:45,802 esempio, qual è la differenza tra "Roger" con le virgolette doppie rispetto 529 00:27:45,802 --> 00:27:47,510 [Incomprensibile] con apici. 530 00:27:47,510 --> 00:27:47,810 >> ROGER ZURAWICKI: OK. 531 00:27:47,810 --> 00:27:52,730 Quindi questo è in C, abbiamo il singolo citazioni che rappresentano caratteri, e la doppia 532 00:27:52,730 --> 00:27:54,550 citazioni che rappresentano stringhe. 533 00:27:54,550 --> 00:27:57,920 JavaScript realtà genera questa distanza perché si può avere stringhe con 534 00:27:57,920 --> 00:28:01,570 virgolette singole o doppie, e non c'è cosa come un singolo carattere. 535 00:28:01,570 --> 00:28:04,400 Ma se hai appena copiato lo stesso Codice C, JavaScript sarebbe 536 00:28:04,400 --> 00:28:05,610 trattarlo bene. 537 00:28:05,610 --> 00:28:07,710 Quale è il motivo per cui ho trattato come - 538 00:28:07,710 --> 00:28:12,540 è per questo che può letteralmente porta il codice in questo senso. 539 00:28:12,540 --> 00:28:15,420 >> E voglio mostrarvi un esempio di un oggetto più complicato. 540 00:28:15,420 --> 00:28:19,890 Così si può notare che un oggetto può avere stringhe come valori. 541 00:28:19,890 --> 00:28:21,530 Si può avere un altro elenco di valori. 542 00:28:21,530 --> 00:28:23,820 Si potrebbe avere una lista di oggetti come valori. 543 00:28:23,820 --> 00:28:25,870 Non c'è davvero alcun limite a questo. 544 00:28:25,870 --> 00:28:29,070 Così qui, è solo una buona dimostrazione di come è possibile ottenere un sacco 545 00:28:29,070 --> 00:28:33,290 diversi tipi di corso tutto in un oggetto. 546 00:28:33,290 --> 00:28:34,540 Questo senso? 547 00:28:34,540 --> 00:28:41,090 548 00:28:41,090 --> 00:28:44,700 >> Ora, si può anche avere array di oggetti. 549 00:28:44,700 --> 00:28:48,530 E qui è una specie di simile a quello che si ha chiesto, se si può avere oggetti di 550 00:28:48,530 --> 00:28:49,190 dello stesso tipo. 551 00:28:49,190 --> 00:28:52,960 Ma il problema è, non c'è fissa formato per oggetti in JavaScript. 552 00:28:52,960 --> 00:28:55,020 Quindi, è necessario specificare voi stessi. 553 00:28:55,020 --> 00:28:57,600 E si deve fare in modo che sono uniformi. 554 00:28:57,600 --> 00:29:00,410 Così qui, quando creo un oggetto, ho fare in modo che ognuno ha una 555 00:29:00,410 --> 00:29:01,910 nome, e ognuno ha una casa. 556 00:29:01,910 --> 00:29:05,620 >> E poi ho un array di quelli, e che può essere la mia casetta. 557 00:29:05,620 --> 00:29:08,290 E poi qui si può tipo di vedere il ciclo for in corso. 558 00:29:08,290 --> 00:29:14,090 Il ciclo for essere solo una realtà comune modo di attraversamento su un array 559 00:29:14,090 --> 00:29:15,150 in JavaScript. 560 00:29:15,150 --> 00:29:18,010 Si noti che questo modello è molto simile all'equivalente C, dove si 561 00:29:18,010 --> 00:29:21,470 avere int i è uguale a zero. Io è inferiore alla lunghezza. 562 00:29:21,470 --> 00:29:23,634 E poi i plus plus. 563 00:29:23,634 --> 00:29:26,035 >> È quasi lo stesso codice, tranne che per alcuni dettagli. 564 00:29:26,035 --> 00:29:29,460 565 00:29:29,460 --> 00:29:33,120 Così fa capire a tutti ciò che un oggetto è? 566 00:29:33,120 --> 00:29:35,820 Basti pensare che, come una struct C. 567 00:29:35,820 --> 00:29:38,784 E il modo in cui si accede ai campi è solo con il punto. 568 00:29:38,784 --> 00:29:41,950 E finché si ricorda come utilizzare il punto, andrà tutto bene. 569 00:29:41,950 --> 00:29:55,300 570 00:29:55,300 --> 00:29:58,790 >> OK, ora possono tutti leggere quel link? 571 00:29:58,790 --> 00:30:02,220 Questo è il link al progetto. 572 00:30:02,220 --> 00:30:04,950 C'è qualcuno che sta avendo problemi vedendo il link? 573 00:30:04,950 --> 00:30:06,251 Ok, cambiamo allora. 574 00:30:06,251 --> 00:30:14,430 575 00:30:14,430 --> 00:30:15,680 Non è - 576 00:30:15,680 --> 00:30:21,900 577 00:30:21,900 --> 00:30:24,240 Sì, questo è probabilmente il modo più semplice per farlo. 578 00:30:24,240 --> 00:30:32,390 579 00:30:32,390 --> 00:30:34,560 Grande. 580 00:30:34,560 --> 00:30:38,270 >> Quindi se andate a questo sito, non ci dovrebbero essere alcune istruzioni che io 581 00:30:38,270 --> 00:30:42,550 andare oltre su come possiamo installare Meteor e ottenere il nostro progetto di esempio in esecuzione. 582 00:30:42,550 --> 00:30:47,900 583 00:30:47,900 --> 00:30:50,180 Voglio fare in modo ognuno ha il link giù prima mi muovo. 584 00:30:50,180 --> 00:31:16,250 585 00:31:16,250 --> 00:31:17,500 Posso andare avanti? 586 00:31:17,500 --> 00:31:20,683 587 00:31:20,683 --> 00:31:23,680 OK, grande. 588 00:31:23,680 --> 00:31:25,890 >> Così eccomi qui sul sito web. 589 00:31:25,890 --> 00:31:28,740 Noterete nel file readme, abbiamo alcune istruzioni su come 590 00:31:28,740 --> 00:31:30,200 per ottenere th impostare. 591 00:31:30,200 --> 00:31:33,920 È necessario essere in CS50 apparecchio o semplicemente su un Mac. 592 00:31:33,920 --> 00:31:35,330 Windows non funzionerà. 593 00:31:35,330 --> 00:31:37,760 Ma in fondo tutto ciò che non è Finestre dovrebbero lavorare con questi 594 00:31:37,760 --> 00:31:39,820 Istruzioni bene. 595 00:31:39,820 --> 00:31:41,470 Ma posso fare un po ' grande pure. 596 00:31:41,470 --> 00:31:45,610 597 00:31:45,610 --> 00:31:48,820 >> Quindi dovrete eseguire il primo coppia di comandi. 598 00:31:48,820 --> 00:31:50,450 Questi ragazzi saranno solo installare Meteor. 599 00:31:50,450 --> 00:31:54,870 600 00:31:54,870 --> 00:31:58,530 Posso andare in mio terminale. 601 00:31:58,530 --> 00:32:02,710 E se corro la stessa cosa adesso, Ho già installato. 602 00:32:02,710 --> 00:32:03,710 Quindi è un po 'più breve. 603 00:32:03,710 --> 00:32:05,155 Si potrebbe prendere un po 'di più per voi ragazzi. 604 00:32:05,155 --> 00:32:08,160 605 00:32:08,160 --> 00:32:13,530 Ma voglio prima fare in modo che abbiamo Meteor esecuzione. 606 00:32:13,530 --> 00:32:16,780 Dopo Meteor ha installato, si dovrebbe possibile ottenere nodo nella console. 607 00:32:16,780 --> 00:32:19,430 >> AUDIENCE: Stanno chiedendo una password. 608 00:32:19,430 --> 00:32:22,110 >> ROGER ZURAWICKI: Questo sarebbe il vostro password utente, se siete su un Mac. 609 00:32:22,110 --> 00:32:27,030 Ha bisogno solo permesso di modificare alcuni file di sistema. 610 00:32:27,030 --> 00:32:30,690 Quindi la domanda è, se ti chiede una password, è solo chiedendo 611 00:32:30,690 --> 00:32:33,510 la password utente quando si accede al vostro Mac. 612 00:32:33,510 --> 00:32:35,770 Ed è così che si può modificare i file di sistema. 613 00:32:35,770 --> 00:32:46,670 614 00:32:46,670 --> 00:32:51,260 >> E quando sei pronto, si può passare al passo successivo, che copierà il 615 00:32:51,260 --> 00:32:54,220 codice di esempio che ho dal sito web. 616 00:32:54,220 --> 00:32:58,330 E avrai una nuova directory nella vostra home directory chiamata leaderboard, e 617 00:32:58,330 --> 00:32:59,670 possiamo iniziare a lavorare da lì. 618 00:32:59,670 --> 00:33:09,680 619 00:33:09,680 --> 00:33:14,620 Così sto semplicemente copiando e incollando questi comandi nel mio terminale. 620 00:33:14,620 --> 00:33:16,780 E per me, ho già clonato esso. 621 00:33:16,780 --> 00:33:21,470 Quindi posso solo ora passare in classifica. 622 00:33:21,470 --> 00:33:23,450 E dovrei avere un paio di file in là. 623 00:33:23,450 --> 00:33:29,880 624 00:33:29,880 --> 00:33:31,113 Tutte le domande? 625 00:33:31,113 --> 00:33:34,430 >> AUDIENCE: [incomprensibile] non funziona. 626 00:33:34,430 --> 00:33:36,741 >> ROGER ZURAWICKI: Oh, si potrebbe bisogno git installato pure. 627 00:33:36,741 --> 00:33:39,150 >> AUDIENCE: [incomprensibile]. 628 00:33:39,150 --> 00:33:40,162 >> ROGER ZURAWICKI: Sorry? 629 00:33:40,162 --> 00:33:41,412 >> AUDIENCE: [incomprensibile]. 630 00:33:41,412 --> 00:33:44,500 631 00:33:44,500 --> 00:33:47,390 >> ROGER ZURAWICKI: Oh, OK. 632 00:33:47,390 --> 00:33:47,720 OK. 633 00:33:47,720 --> 00:33:52,860 Ecco perché si potrebbe aver bisogno di essere login per GitHub per ottenere questo link. 634 00:33:52,860 --> 00:33:58,160 Se voi potete vedere che, il più facile modo di farlo vorrei poi dire è 635 00:33:58,160 --> 00:33:59,270 scaricare la zip. 636 00:33:59,270 --> 00:34:02,010 E questo sarà solo scaricare tutti i file. 637 00:34:02,010 --> 00:34:05,510 E poi una volta che lo metti nel tuo scaricare o la vostra directory home - 638 00:34:05,510 --> 00:34:07,360 Vi consiglio di metterlo nel vostro home directory in modo che possiamo tutti 639 00:34:07,360 --> 00:34:09,210 eseguire gli stessi comandi. 640 00:34:09,210 --> 00:34:15,230 Finché abbiamo i file, ci sarà essere in grado di iniziare a lavorare con loro. 641 00:34:15,230 --> 00:34:17,969 Fatemi sapere se le persone stanno avendo problemi a scaricare i file. 642 00:34:17,969 --> 00:34:21,040 >> PUBBLICO: Per home directory, vuoi dire - 643 00:34:21,040 --> 00:34:24,989 >> ROGER ZURAWICKI: Così home directory sarebbe essere John Harvard, se siete in 644 00:34:24,989 --> 00:34:27,460 l'apparecchio CS50. 645 00:34:27,460 --> 00:34:33,651 Per arrivare alla vostra directory home, basta digitare in C. 646 00:34:33,651 --> 00:34:34,145 >> AUDIENCE: [incomprensibile] 647 00:34:34,145 --> 00:34:37,610 CS50 apparecchio [incomprensibile]. 648 00:34:37,610 --> 00:34:38,650 >> ROGER ZURAWICKI: sì. 649 00:34:38,650 --> 00:34:40,480 Si desidera eseguire i comandi nel terminale. 650 00:34:40,480 --> 00:34:44,899 651 00:34:44,899 --> 00:34:45,390 >> AUDIENCE: [incomprensibile]. 652 00:34:45,390 --> 00:34:50,800 Ho ottenuto un errore che dice no file o directory. 653 00:34:50,800 --> 00:34:52,739 >> ROGER ZURAWICKI: Siamo in grado di prendere una rapida rompere e basta assicurarsi che 654 00:34:52,739 --> 00:34:56,760 ognuno ha Meteor installato, e io basta andare cercare di aiutare le persone. 655 00:34:56,760 --> 00:34:59,130 Si prega di cercare di aiutare l'altro se si sta eseguendo in problemi. 656 00:34:59,130 --> 00:35:04,640 657 00:35:04,640 --> 00:35:05,580 Siamo spiacenti, sì. 658 00:35:05,580 --> 00:35:08,930 Siete entrambi in macchina? 659 00:35:08,930 --> 00:35:09,350 >> AUDIENCE: Già. 660 00:35:09,350 --> 00:35:13,190 Ho la RISA 661 00:35:13,190 --> 00:35:14,300 >> ROGER ZURAWICKI: OK. 662 00:35:14,300 --> 00:35:20,740 Se si va indietro al sito, vai scorrere fino alla cima. 663 00:35:20,740 --> 00:35:23,580 E c'è questo HTTPS. 664 00:35:23,580 --> 00:35:25,810 >> AUDIENCE: Copia questo? 665 00:35:25,810 --> 00:35:26,230 >> ROGER ZURAWICKI: Già. 666 00:35:26,230 --> 00:35:28,950 E poi si vuole digitare git clone. 667 00:35:28,950 --> 00:35:30,814 Quindi, se si preme Controllo A - 668 00:35:30,814 --> 00:35:33,718 >> AUDIENCE: qui? 669 00:35:33,718 --> 00:35:36,410 E fare [incomprensibile]? 670 00:35:36,410 --> 00:35:37,307 >> ROGER ZURAWICKI: G-I-T. 671 00:35:37,307 --> 00:35:38,557 >> AUDIENCE: [incomprensibile]. 672 00:35:38,557 --> 00:35:40,410 673 00:35:40,410 --> 00:35:42,670 >> ROGER ZURAWICKI: Git e poi clone. 674 00:35:42,670 --> 00:35:46,610 Quindi è molto simile al comando aveva sopra, ma l'indirizzo cambiato. 675 00:35:46,610 --> 00:35:49,010 Quindi, prima che fosse questo, ora è questo. 676 00:35:49,010 --> 00:35:50,680 Permettetemi di aggiornare il - 677 00:35:50,680 --> 00:35:51,354 sì. 678 00:35:51,354 --> 00:35:52,604 >> AUDIENCE: [incomprensibile]. 679 00:35:52,604 --> 00:35:56,000 680 00:35:56,000 --> 00:35:58,076 >> ROGER ZURAWICKI: questo viene scaricato. 681 00:35:58,076 --> 00:35:59,326 >> AUDIENCE: [incomprensibile]. 682 00:35:59,326 --> 00:36:02,930 683 00:36:02,930 --> 00:36:05,690 >> ROGER ZURAWICKI: Oh, così non clonare correttamente. 684 00:36:05,690 --> 00:36:07,920 Io rimediare. 685 00:36:07,920 --> 00:36:10,190 C'è un errore con il tentativo per scaricare i file. 686 00:36:10,190 --> 00:36:13,820 Permettetemi di aggiornare il comando per voi ragazzi così posso essere sicuro che funzionerà. 687 00:36:13,820 --> 00:36:17,025 Mi dispiace per questo. 688 00:36:17,025 --> 00:36:21,618 Dovrebbe essere lo stesso per Mac o dispositivo CS50. 689 00:36:21,618 --> 00:36:22,868 >> AUDIENCE: [incomprensibile]. 690 00:36:22,868 --> 00:36:49,320 691 00:36:49,320 --> 00:36:51,190 >> ROGER ZURAWICKI: Ho aggiornato l' comando per la numero due, se 692 00:36:51,190 --> 00:36:52,910 si aggiorna la pagina. 693 00:36:52,910 --> 00:36:56,520 E con questo, URL, si dovrebbe essere in grado di scaricare i file. 694 00:36:56,520 --> 00:37:00,162 695 00:37:00,162 --> 00:37:02,550 >> AUDIENCE: Quindi, se siamo ancora download [incomprensibile]. 696 00:37:02,550 --> 00:37:05,930 >> ROGER ZURAWICKI: Se sei ancora scaricando Meteor? 697 00:37:05,930 --> 00:37:07,180 >> AUDIENCE: [incomprensibile]. 698 00:37:07,180 --> 00:37:09,860 699 00:37:09,860 --> 00:37:11,910 >> ROGER ZURAWICKI: Sì, se si desidera per sviluppare sul vostro Mac. 700 00:37:11,910 --> 00:37:14,145 Ma è necessario lo sviluppatore Xcode strumenti installati. 701 00:37:14,145 --> 00:37:21,530 702 00:37:21,530 --> 00:37:24,550 Ho provato questi comandi sul CS50 apparecchio, quindi posso garantire 703 00:37:24,550 --> 00:37:25,440 che funzionerà. 704 00:37:25,440 --> 00:37:26,710 Sì. lasciatemi andare e ti aiuti. 705 00:37:26,710 --> 00:37:30,558 706 00:37:30,558 --> 00:37:31,808 >> AUDIENCE: [incomprensibile]. 707 00:37:31,808 --> 00:37:39,440 708 00:37:39,440 --> 00:37:40,372 Io do la mia password. 709 00:37:40,372 --> 00:37:42,240 Questo è Mac. 710 00:37:42,240 --> 00:37:43,490 E poi faccio [incomprensibile]. 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 Vorrei provare a eseguire tutti i comandi solo nel terminale apparecchio CS50. 714 00:37:57,080 --> 00:37:58,330 >> AUDIENCE: [incomprensibile]. 715 00:37:58,330 --> 00:38:00,220 716 00:38:00,220 --> 00:38:02,570 >> ROGER ZURAWICKI: vorrei farlo funzionare prima sul terminale, sulla 717 00:38:02,570 --> 00:38:04,830 Apparecchio CS50, e quindi il terminale di Mac. 718 00:38:04,830 --> 00:38:08,130 >> AUDIENCE: Quindi, se lo si fa sul CS50 degli elettrodomestici come quella, [incomprensibile]. 719 00:38:08,130 --> 00:38:13,650 720 00:38:13,650 --> 00:38:15,850 >> ROGER ZURAWICKI: Vorrei spostare , ma se le persone stanno ancora avendo 721 00:38:15,850 --> 00:38:20,190 la creazione di Meteor guai, Kevin è più che felice di aiutare voi ragazzi fuori, 722 00:38:20,190 --> 00:38:21,440 Kevin in camicia grigia. 723 00:38:21,440 --> 00:38:26,320 724 00:38:26,320 --> 00:38:32,170 Quello che dovremmo avere è che andremo a eseguire l'ultimo comando, numero tre, in 725 00:38:32,170 --> 00:38:33,710 il nostro terminale. 726 00:38:33,710 --> 00:38:37,320 Quando lo facciamo, noi corriamo Meteor. 727 00:38:37,320 --> 00:38:39,040 >> E si dovrebbe - 728 00:38:39,040 --> 00:38:41,200 oh, ho già Meteor esecuzione. 729 00:38:41,200 --> 00:38:45,230 Quindi non sta andando a lasciare - lasciatemi basta chiudere il mio altro Meteor. 730 00:38:45,230 --> 00:38:49,640 Quando eseguo Meteor, è dovrebbe ora vedere che - 731 00:38:49,640 --> 00:38:51,490 si dovrebbe vedere la directory corrente che sta servendo. 732 00:38:51,490 --> 00:38:55,476 E ora sta per dire al server è in esecuzione su http://localhost. 733 00:38:55,476 --> 00:38:58,860 Questo è l'URL che si desidera mettere in nel vostro web browser. 734 00:38:58,860 --> 00:39:05,410 >> E su quella URL, si dovrebbe essere in grado di accedere ad un bel po 'di classifica. 735 00:39:05,410 --> 00:39:10,030 736 00:39:10,030 --> 00:39:14,530 Quindi, si noti che questo è su localhost, il che significa che se si esegue una 737 00:39:14,530 --> 00:39:17,320 modifiche, non stanno andando vedi di ogni altre modifiche. 738 00:39:17,320 --> 00:39:20,830 Considerando che sul sito che vi ho mostrato all'inizio, potremmo ottenere 739 00:39:20,830 --> 00:39:23,380 modifiche di tutti, perché tutti è stato l'accesso al sito stesso. 740 00:39:23,380 --> 00:39:27,010 741 00:39:27,010 --> 00:39:29,540 >> Quindi lasciatemi andare a [? parola?] 742 00:39:29,540 --> 00:39:35,570 3.000. 743 00:39:35,570 --> 00:39:38,820 Così si dovrebbe essere in grado di confermare solo che la funzionalità funziona. 744 00:39:38,820 --> 00:39:44,790 È possibile selezionare diverse persone, e si può dare loro diversi punti. 745 00:39:44,790 --> 00:39:46,710 Quindi io do punti qualcuno. 746 00:39:46,710 --> 00:39:50,420 Si può anche vedere che si alzano in classifica. 747 00:39:50,420 --> 00:39:53,450 748 00:39:53,450 --> 00:39:57,360 >> Ora, nell'interesse di tempo, sono tre caratteristiche che ho 749 00:39:57,360 --> 00:39:58,020 implementato. 750 00:39:58,020 --> 00:40:03,760 E stiamo per attuare cancellazione gli utenti come il nostro primo lungometraggio. 751 00:40:03,760 --> 00:40:06,360 Ma prima di andare avanti, sono Ci sono delle domande? 752 00:40:06,360 --> 00:40:09,010 Hai avuto la tua mano. 753 00:40:09,010 --> 00:40:10,480 Sì? 754 00:40:10,480 --> 00:40:11,730 >> AUDIENCE: [incomprensibile]. 755 00:40:11,730 --> 00:40:20,980 756 00:40:20,980 --> 00:40:22,450 >> ROGER ZURAWICKI: Potete controllare Meteor che è installato? 757 00:40:22,450 --> 00:40:25,160 758 00:40:25,160 --> 00:40:26,410 >> AUDIENCE: [incomprensibile]. 759 00:40:26,410 --> 00:40:31,440 760 00:40:31,440 --> 00:40:32,680 >> ROGER ZURAWICKI: host locale 3000? 761 00:40:32,680 --> 00:40:36,550 E tu sei in macchina CS50? 762 00:40:36,550 --> 00:40:37,800 Che posso fare - 763 00:40:37,800 --> 00:40:39,870 764 00:40:39,870 --> 00:40:41,210 non c'è bisogno di essere su un Mac. 765 00:40:41,210 --> 00:40:43,558 Ciò funzionerà all'interno dell'apparecchio. 766 00:40:43,558 --> 00:40:45,880 >> AUDIENCE: [incomprensibile]. 767 00:40:45,880 --> 00:40:47,520 >> ROGER ZURAWICKI: Nel normale browser web, sì. 768 00:40:47,520 --> 00:40:49,170 >> AUDIENCE: [incomprensibile]. 769 00:40:49,170 --> 00:40:52,100 >> ROGER ZURAWICKI: è Meteor running? 770 00:40:52,100 --> 00:40:54,180 Quindi OK, c'è una distinzione. 771 00:40:54,180 --> 00:40:56,300 Se si sta eseguendo nel apparecchio, si deve fare 772 00:40:56,300 --> 00:40:58,400 localhost all'interno dell'apparecchio. 773 00:40:58,400 --> 00:41:00,860 Se si sta eseguendo nel vostro Mac, come me, allora posso fare 774 00:41:00,860 --> 00:41:02,460 il mio Mac di Google Chrome. 775 00:41:02,460 --> 00:41:05,520 Ma se si sta utilizzando l'apparecchio CS50, devi fare tutto 776 00:41:05,520 --> 00:41:06,350 nell'apparecchio. 777 00:41:06,350 --> 00:41:09,022 Quindi devi usare Google Chrome nell'apparecchio. 778 00:41:09,022 --> 00:41:10,350 >> AUDIENCE: [incomprensibile]. 779 00:41:10,350 --> 00:41:12,188 >> ROGER ZURAWICKI: E ' ancora non funziona? 780 00:41:12,188 --> 00:41:13,438 >> AUDIENCE: [incomprensibile]. 781 00:41:13,438 --> 00:41:39,170 782 00:41:39,170 --> 00:41:42,390 >> ROGER ZURAWICKI: Quindi, solo per ripetere, come si accede al sito ora. 783 00:41:42,390 --> 00:41:46,380 Hai una URL qui localhost 3000. 784 00:41:46,380 --> 00:41:49,600 Se siete in macchina CS50, devi aprire CS50 785 00:41:49,600 --> 00:41:51,320 dell'apparecchio Google Chrome. 786 00:41:51,320 --> 00:41:54,850 E in che Google Chrome all'interno del apparecchio, è possibile digitare l'URL, 787 00:41:54,850 --> 00:41:56,400 e si dovrebbe vedere una classifica. 788 00:41:56,400 --> 00:41:58,990 789 00:41:58,990 --> 00:42:04,800 Quindi ho intenzione di mettere solo fuori al lato qui un po '. 790 00:42:04,800 --> 00:42:09,600 E ora ho intenzione di aprire il mio editor di testo qui. 791 00:42:09,600 --> 00:42:16,040 Quindi lasciatemi fare in modo che il codice è in ordine. 792 00:42:16,040 --> 00:42:17,580 OK. 793 00:42:17,580 --> 00:42:19,750 Grande. 794 00:42:19,750 --> 00:42:22,360 >> Vorrei ora camminare attraverso il codice un po '. 795 00:42:22,360 --> 00:42:26,110 E il primo file mi piacerebbe iniziare con IS leaderboard.html. 796 00:42:26,110 --> 00:42:31,520 Sarete in grado di ottenere questo codice dopo il seminario, quindi voglio solo mostrare 797 00:42:31,520 --> 00:42:33,960 si sul mio computer cosa succede. 798 00:42:33,960 --> 00:42:39,130 799 00:42:39,130 --> 00:42:40,970 Quindi spero che tutti possono vedere questo. 800 00:42:40,970 --> 00:42:47,970 801 00:42:47,970 --> 00:42:51,590 Così, all'inizio del file, si avere la nostra testa e il titolo, che 802 00:42:51,590 --> 00:42:54,510 è simile a quello che abbiamo visto in ogni documento HTML. 803 00:42:54,510 --> 00:42:56,990 E poi stiamo andando ad avere il tag body qui. 804 00:42:56,990 --> 00:42:59,920 >> Quello che ho scelto è il principale corpo, in fondo che cosa è 805 00:42:59,920 --> 00:43:01,470 andando ottenere visualizzare. 806 00:43:01,470 --> 00:43:05,560 Ma ci sono alcuni nuovi non-HTML cose, e che è in 807 00:43:05,560 --> 00:43:06,710 doppie parentesi angolari. 808 00:43:06,710 --> 00:43:08,600 E questi sono tag modello. 809 00:43:08,600 --> 00:43:13,770 Così vedrete qui questa staffa Staffa nuova leaderboard. 810 00:43:13,770 --> 00:43:17,390 E questo è una specie di - pensare ad esso come chiamare una funzione per l'HTML. 811 00:43:17,390 --> 00:43:19,320 >> Questa è una versione speciale di HTML. 812 00:43:19,320 --> 00:43:22,730 E 'la versione che utilizza Meteor, che è il motivo per cui è possibile visualizzare diversi 813 00:43:22,730 --> 00:43:26,190 cose, come la classifica nomi e pulsanti. 814 00:43:26,190 --> 00:43:30,870 Ma leaderboard ti dice di andare al modello con il nome di classifica. 815 00:43:30,870 --> 00:43:34,746 Quindi modello non viene visualizzato in sé, ma è una funzione, in modo che 816 00:43:34,746 --> 00:43:35,390 andranno chiamato. 817 00:43:35,390 --> 00:43:41,030 E potrai sostituire in tutto questo codice proprio qui in classifica. 818 00:43:41,030 --> 00:43:44,510 819 00:43:44,510 --> 00:43:48,820 >> La parte interessante della classifica qui è solo questa tabella. 820 00:43:48,820 --> 00:43:52,910 Se hai appena letto, leggete questo codice ad alta voce, dovrebbe essere intuitivo 821 00:43:52,910 --> 00:43:57,390 perché leaderboard, tutti noi abbiamo qui è un tavolo. 822 00:43:57,390 --> 00:44:00,410 Questa classe roba ID non fare bisogno di preoccuparsi. 823 00:44:00,410 --> 00:44:02,460 Basta sapere che c'è una intestazione della tabella. 824 00:44:02,460 --> 00:44:03,630 E 'questo thead. 825 00:44:03,630 --> 00:44:06,860 >> E si trova un nome e un punteggio. 826 00:44:06,860 --> 00:44:12,150 Tutti questi tag, come thtable, thead, ti basta imparare come si va avanti. 827 00:44:12,150 --> 00:44:15,540 Non è importante che tu memorizzare questi perché si può solo accedere a qualsiasi 828 00:44:15,540 --> 00:44:16,520 riferimento online. 829 00:44:16,520 --> 00:44:20,610 O entro la fine del semestre, questi sarà solo essere molto familiare con voi. 830 00:44:20,610 --> 00:44:22,840 >> Dopo l'intestazione della tabella, la parte che voglio attirare la vostra 831 00:44:22,840 --> 00:44:24,900 attenzione a questo h tag. 832 00:44:24,900 --> 00:44:27,180 Perché è tra doppie parentesi quadre, si tratta di un modello. 833 00:44:27,180 --> 00:44:30,980 In modo che significa per ciascuno dei giocatori, qualunque giocatori è, dobbiamo 834 00:44:30,980 --> 00:44:31,500 visualizzarlo. 835 00:44:31,500 --> 00:44:32,965 E andiamo al modello del lettore. 836 00:44:32,965 --> 00:44:35,680 837 00:44:35,680 --> 00:44:39,890 >> Se scorriamo un po 'di più - 838 00:44:39,890 --> 00:44:40,980 Spero che tutti possono vedere che. 839 00:44:40,980 --> 00:44:42,900 Abbiamo il modello del lettore. 840 00:44:42,900 --> 00:44:49,080 E questo modello definisce sostanzialmente una cella di una tabella, dove si mette il nome 841 00:44:49,080 --> 00:44:50,330 qui e il punteggio. 842 00:44:50,330 --> 00:44:52,540 843 00:44:52,540 --> 00:44:56,720 Lo zoom out ora, possiamo vedere che questo pezzo di codice - 844 00:44:56,720 --> 00:44:59,060 e che era il nostro giocatore laggiù - 845 00:44:59,060 --> 00:45:01,070 definisce una di queste celle. 846 00:45:01,070 --> 00:45:02,890 Ogni cosa che clicco diventa giallo. 847 00:45:02,890 --> 00:45:06,690 848 00:45:06,690 --> 00:45:08,660 >> Un modo semplice potessi cambiare ora. 849 00:45:08,660 --> 00:45:10,150 Assicurarsi Meteor è ancora in esecuzione. 850 00:45:10,150 --> 00:45:12,540 Meteor dovrebbe essere un processo server, quindi basta lasciarlo 851 00:45:12,540 --> 00:45:14,020 esecuzione quando avete sviluppato. 852 00:45:14,020 --> 00:45:18,280 Diciamo che volevo cambiare tutti i nomi o il punteggio. 853 00:45:18,280 --> 00:45:23,320 E direi che sto per aggiungere punti qui. 854 00:45:23,320 --> 00:45:27,215 Così il cambiamento che ho fatto qui è stato, invece di punteggio, mi 855 00:45:27,215 --> 00:45:30,280 aggiungere punteggio punti spaziali. 856 00:45:30,280 --> 00:45:32,775 >> Io vado a diminuire, e sono andando a salvare il mio file. 857 00:45:32,775 --> 00:45:35,510 858 00:45:35,510 --> 00:45:39,830 E dopo a salvare il mio file, ho bisogno per assicurarsi Meteor è in esecuzione. 859 00:45:39,830 --> 00:45:55,650 860 00:45:55,650 --> 00:45:57,610 Mi dispiace. 861 00:45:57,610 --> 00:46:00,330 Voglio mostrarvi le modifiche sono stati fatti in tempo reale. 862 00:46:00,330 --> 00:46:06,180 Quindi mi limiterò a cambiare un testo. 863 00:46:06,180 --> 00:46:07,600 Fare clic su un giocatore. 864 00:46:07,600 --> 00:46:10,040 Sto mettendo in tutti i tappi. 865 00:46:10,040 --> 00:46:14,540 E dovrebbe essere che se questo funziona correttamente, quando salvo, è 866 00:46:14,540 --> 00:46:16,801 sarebbe aggiornare. 867 00:46:16,801 --> 00:46:20,420 >> Oh, penso che in questo momento il problema è Io non sono nella directory giusta. 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 Mi dispiace per questo. 871 00:46:28,160 --> 00:46:32,860 Quindi, ecco, quello che si nota è il mio cambiamento ha attraversato. 872 00:46:32,860 --> 00:46:34,540 Ora dico: voglio tornare il cambiamento. 873 00:46:34,540 --> 00:46:36,200 Io voglio tornare a quello che avevo. 874 00:46:36,200 --> 00:46:37,640 Sto solo andando a digitare normalmente. 875 00:46:37,640 --> 00:46:39,180 Fare clic su un giocatore. 876 00:46:39,180 --> 00:46:42,920 >> Nel momento in cui salvarlo, il sito rinfresca per me. 877 00:46:42,920 --> 00:46:44,740 E vedo il mio cambiamento su il sito immediatamente. 878 00:46:44,740 --> 00:46:48,170 Questa è una caratteristica molto utile in debug perché ora 879 00:46:48,170 --> 00:46:49,640 Io non devo - 880 00:46:49,640 --> 00:46:52,920 quando scriviamo codice C, non solo abbiamo devono salvare il file, ma abbiamo dovuto 881 00:46:52,920 --> 00:46:54,750 farlo e quindi eseguirlo nuovamente. 882 00:46:54,750 --> 00:46:58,750 Meteor è molto bello perché a differenza di C, il momento in cui si salva il HTML o 883 00:46:58,750 --> 00:47:01,070 File JavaScript, il cambiamento si presenta immediatamente. 884 00:47:01,070 --> 00:47:05,050 885 00:47:05,050 --> 00:47:09,140 >> Una domanda è, in questi modelli, come ottengo i valori come lettori 886 00:47:09,140 --> 00:47:11,520 o selezionare un nome? 887 00:47:11,520 --> 00:47:17,130 Se lo zoom qui nel mio codice, Vedo questo per ogni giocatore. 888 00:47:17,130 --> 00:47:19,970 Quindi il modello sa che Ho giocatori in qualche modo. 889 00:47:19,970 --> 00:47:22,110 E si sa che non c'è un nome selezionato. 890 00:47:22,110 --> 00:47:23,220 Da dove viene questo? 891 00:47:23,220 --> 00:47:25,180 Che viene dalla JavaScript. 892 00:47:25,180 --> 00:47:30,980 >> E se si va a leaderboard.js, questo di file, ora quando vado qui, abbiamo una 893 00:47:30,980 --> 00:47:33,460 pochi comandi definiti. 894 00:47:33,460 --> 00:47:36,400 Questa è la sintassi speciale Meteor. 895 00:47:36,400 --> 00:47:38,600 Si noti che non è necessario Vars o niente. 896 00:47:38,600 --> 00:47:42,990 Ma queste sono solo le strutture su struct su struct o questi oggetti. 897 00:47:42,990 --> 00:47:45,910 E tutto quello che sto definendo è il modello chiamata leaderboard. 898 00:47:45,910 --> 00:47:47,900 >> Classifica dovrebbe ottenere una cosa chiamata giocatori. 899 00:47:47,900 --> 00:47:48,840 E che cosa è giocatori? 900 00:47:48,840 --> 00:47:51,860 E 'tutto ciò che restituisce questa espressione. 901 00:47:51,860 --> 00:47:53,020 E qual è il nome scelto? 902 00:47:53,020 --> 00:47:54,630 E 'un codice più. 903 00:47:54,630 --> 00:47:56,810 I dettagli del codice faremo coprire un po 'più tardi. 904 00:47:56,810 --> 00:48:02,210 Ma adesso voglio che tu capisca che in questo codice, stiamo prendendo 905 00:48:02,210 --> 00:48:04,350 giocatori, e stiamo dando un valore. 906 00:48:04,350 --> 00:48:07,000 In questo caso, si tratta di una funzione che viene eseguito. 907 00:48:07,000 --> 00:48:10,290 Così possiamo ottenere il valore indietro quando si corre la funzione. 908 00:48:10,290 --> 00:48:12,830 909 00:48:12,830 --> 00:48:13,520 Questo è un log. 910 00:48:13,520 --> 00:48:14,770 Ritiene che senso? 911 00:48:14,770 --> 00:48:23,170 912 00:48:23,170 --> 00:48:25,010 >> Posso cambiare il modo in cui è ordinato. 913 00:48:25,010 --> 00:48:27,230 Qui, c'è un oggetto di ordinamento. 914 00:48:27,230 --> 00:48:31,660 E che cosa dice questo è ho intenzione di ordinare in base al punteggio decrescente primo e 915 00:48:31,660 --> 00:48:33,170 quindi il nome crescente. 916 00:48:33,170 --> 00:48:36,630 Se cambio questo a uno, sta andando per ordinare punteggio crescente. 917 00:48:36,630 --> 00:48:39,120 Così zero deve essere sulla parte superiore. 918 00:48:39,120 --> 00:48:43,370 E quando lo zoom nel mio sito, ora vediamo che il sito aggiornato. 919 00:48:43,370 --> 00:48:44,923 E il punteggio è salita. 920 00:48:44,923 --> 00:48:49,010 921 00:48:49,010 --> 00:48:53,980 >> La prossima funzione Voglio solo per coprire è clic incremento. 922 00:48:53,980 --> 00:48:57,910 Fuori l'interesse di tempo, non lo farò essere in grado di coprire più del Meteor 923 00:48:57,910 --> 00:49:00,690 codice, ma ci sono un sacco di risorse disponibile, e sarò 924 00:49:00,690 --> 00:49:03,560 qui dopo il seminario. 925 00:49:03,560 --> 00:49:07,680 Ma voglio solo per coprire gli eventi leaderboard. 926 00:49:07,680 --> 00:49:10,520 Questa sintassi imparerai un po 'più avanti nella lezione. 927 00:49:10,520 --> 00:49:12,870 Questo è JavaScript. 928 00:49:12,870 --> 00:49:16,720 >> Stiamo solo dicendo che, quando otteniamo un click, ed è in incremento, questa 929 00:49:16,720 --> 00:49:19,160 hash significa solo ID. 930 00:49:19,160 --> 00:49:23,945 Sul tag ID incremento, allora vogliamo per aggiornare - le parole chiave che voglio 931 00:49:23,945 --> 00:49:26,740 da guardare è l'aggiornamento e la selezionare e giocatore. 932 00:49:26,740 --> 00:49:29,080 Così quale giocatore selezionato, ci aggiorniamo. 933 00:49:29,080 --> 00:49:31,260 E quello che facciamo è incrementiamo il suo punteggio per cinque. 934 00:49:31,260 --> 00:49:37,700 935 00:49:37,700 --> 00:49:40,340 E che descrivono la funzionalità abbiamo qui. 936 00:49:40,340 --> 00:49:50,270 937 00:49:50,270 --> 00:49:54,510 >> Dopo la fine di questo seminario, faremo essere in grado di vedere alcuni codice più. 938 00:49:54,510 --> 00:50:00,400 Ma tornando al mio obiettivo che voglio modificare il sito, ho voluto qui 939 00:50:00,400 --> 00:50:03,400 per aggiungere un pulsante Rimuovi così Posso cancellare il giocatore. 940 00:50:03,400 --> 00:50:05,390 Quindi, per fare questo, ho bisogno di fare due cose. 941 00:50:05,390 --> 00:50:09,680 Ho bisogno di aggiornare il codice HTML, aggiornare il visualizzare, ciò che viene mostrato all'utente, e 942 00:50:09,680 --> 00:50:15,080 poi avere qualche JavaScript che quando la viene premuto il pulsante, Meteor sta 943 00:50:15,080 --> 00:50:15,690 di fare qualcosa. 944 00:50:15,690 --> 00:50:18,040 Sta andando a rimuovere quel giocatore. 945 00:50:18,040 --> 00:50:20,720 >> Quindi ci sono un sacco di pezzi di codice che hanno sostanzialmente già 946 00:50:20,720 --> 00:50:22,610 stato fatto per me. 947 00:50:22,610 --> 00:50:26,160 Se guardo qui, ho già un modo di ottenere il giocatore selezionato. 948 00:50:26,160 --> 00:50:29,880 Che è questa roba, se si può vedere. 949 00:50:29,880 --> 00:50:31,346 Quindi, se ho appena - 950 00:50:31,346 --> 00:50:35,160 Ho intenzione di avere un altro evento. 951 00:50:35,160 --> 00:50:37,900 Quindi ho intenzione di copiare quello che ho. 952 00:50:37,900 --> 00:50:40,740 Perché questa è una lista, Ho solo bisogno di una virgola. 953 00:50:40,740 --> 00:50:45,480 >> Così ora ho intenzione di scegliere Elimina. 954 00:50:45,480 --> 00:50:48,840 E allora invece di aggiornamento giocatori, Io vado a fare i giocatori eliminare. 955 00:50:48,840 --> 00:50:51,620 E tutti i giocatori cancellare le esigenze è un giocatore selezionato. 956 00:50:51,620 --> 00:50:56,500 Quindi questa funzione è tutto abbiamo bisogno. 957 00:50:56,500 --> 00:51:01,550 Ho bisogno di aggiungere un po ' HTML qui però. 958 00:51:01,550 --> 00:51:05,180 Quindi, se ho scorrere giù qui, questa è la visualizzazione HTML. 959 00:51:05,180 --> 00:51:08,300 Abbiamo avuto una cosa qui, che era un un tag. 960 00:51:08,300 --> 00:51:09,610 Non è necessario preoccuparsi di questo. 961 00:51:09,610 --> 00:51:12,000 >> Ciò che conta per voi è questo ID incremento. 962 00:51:12,000 --> 00:51:14,990 E questo è ciò che ci ha permesso di dire, quando abbiamo cliccato incremento, dobbiamo 963 00:51:14,990 --> 00:51:16,410 dare cinque punti. 964 00:51:16,410 --> 00:51:18,240 E vedrete che questo è un tasto. 965 00:51:18,240 --> 00:51:20,150 Questo è ciò che significa il btn. 966 00:51:20,150 --> 00:51:23,190 E il testo nel pulsante è dare cinque punti. 967 00:51:23,190 --> 00:51:26,440 Così che cosa ho intenzione di fare è che io sono andando a copiare questa linea. 968 00:51:26,440 --> 00:51:29,910 Ho intenzione di modificare l'ID da eliminare. 969 00:51:29,910 --> 00:51:34,310 E ho intenzione di cambiare il testo qui per cancellarlo. 970 00:51:34,310 --> 00:51:35,980 >> Quindi assicuratevi che tutto è salvato. 971 00:51:35,980 --> 00:51:39,010 Voglio tornare al mio JavaScript per assicurarsi che ho 972 00:51:39,010 --> 00:51:40,880 eliminare in fila qui. 973 00:51:40,880 --> 00:51:41,780 Buona. 974 00:51:41,780 --> 00:51:43,145 Quindi ho intenzione di salvare entrambi i file. 975 00:51:43,145 --> 00:51:46,060 976 00:51:46,060 --> 00:51:49,320 Dopo aver salvato entrambi i file, si può tornare verso il basso. 977 00:51:49,320 --> 00:51:51,550 E ora vediamo che abbiamo un pulsante Elimina. 978 00:51:51,550 --> 00:51:56,050 E un altro passo. 979 00:51:56,050 --> 00:51:58,200 Si nota si potrebbe ottenere un errore perché quando clicco 980 00:51:58,200 --> 00:52:00,610 eliminare, nulla sta accadendo. 981 00:52:00,610 --> 00:52:03,930 >> Un modo per eseguire il debug di questo è quello di andare torna a Inspect Element. 982 00:52:03,930 --> 00:52:07,820 Sto facendo di proposito in modo da poter Vedete come si dovrebbe eseguire il debug qualcosa. 983 00:52:07,820 --> 00:52:11,210 In Inspect Element, abbiamo tutto il nostro testo qui. 984 00:52:11,210 --> 00:52:13,320 Voglio tornare alla console. 985 00:52:13,320 --> 00:52:19,230 E cosa succede quando vado qui è ho qualche tipo di errore. 986 00:52:19,230 --> 00:52:21,660 Si dice che non c'è nessun metodo delete. 987 00:52:21,660 --> 00:52:30,770 >> Così che cosa sta dicendo è quando vado torna al codice, ho chiamato il giocatore 988 00:52:30,770 --> 00:52:31,870 eliminare qui. 989 00:52:31,870 --> 00:52:34,430 Cancellare non è in realtà il comando giusto. 990 00:52:34,430 --> 00:52:39,740 Quindi, per scoprire qual è il comando giusto si, c'è l'API Meteor. 991 00:52:39,740 --> 00:52:42,680 La documentazione che voglio puntare ragazzi a è solo a meteor.com. 992 00:52:42,680 --> 00:52:45,190 Così l'ho qui. 993 00:52:45,190 --> 00:52:48,510 994 00:52:48,510 --> 00:52:51,370 Questo è proprio così voi ragazzi sapete dove per saperne di più. 995 00:52:51,370 --> 00:52:54,420 >> C'è un link alla documentazione. 996 00:52:54,420 --> 00:52:59,410 E in fondo, posso solo non trovare per eliminazione. 997 00:52:59,410 --> 00:53:03,220 E ciò che si vede, eliminare è in realtà rimuovere. 998 00:53:03,220 --> 00:53:05,400 Questo è il comando che Devo chiamare. 999 00:53:05,400 --> 00:53:09,620 Quindi, ora che sappiamo che, io vado per cambiare questo eliminare da rimuovere. 1000 00:53:09,620 --> 00:53:13,060 1001 00:53:13,060 --> 00:53:18,010 Così ora, quando torno al mio leaderboard sito, ho intenzione di fare clic su 1002 00:53:18,010 --> 00:53:19,450 eliminare, e ora me ne sono andato. 1003 00:53:19,450 --> 00:53:21,290 Non c'è più Roger. 1004 00:53:21,290 --> 00:53:25,470 E posso andare avanti eliminazione di ogni unico nome fino a quando non ho più niente. 1005 00:53:25,470 --> 00:53:33,600 1006 00:53:33,600 --> 00:53:36,060 >> Quindi era una piccola anteprima di come utilizzare Meteor. 1007 00:53:36,060 --> 00:53:38,990 1008 00:53:38,990 --> 00:53:42,380 Sarete imparando molto di più JavaScript e HTML necessario fare 1009 00:53:42,380 --> 00:53:46,970 sembrare più bella, che vedremo in di questa settimana [? piece?] impostato per HTML 1010 00:53:46,970 --> 00:53:49,630 e JavaScript nel prossimo [? piece?] set. 1011 00:53:49,630 --> 00:53:53,150 >> Quindi non preoccuparsi se non tutti questa roba viene facile a voi. 1012 00:53:53,150 --> 00:53:56,410 Si da il tempo di il progetto finale. 1013 00:53:56,410 --> 00:53:58,030 Grazie per presentarsi. 1014 00:53:58,030 --> 00:54:01,380 Il collegamento aggiornerò subito dopo l' seminario così si può vedere ancora un po ' 1015 00:54:01,380 --> 00:54:05,630 esempi che ho implementato su come per ottenere la classifica più avanzato 1016 00:54:05,630 --> 00:54:08,640 che ho su questo sito qui un radicale-leaderboard.meteor. 1017 00:54:08,640 --> 00:54:19,550 1018 00:54:19,550 --> 00:54:21,260 Grazie. 1019 00:54:21,260 --> 00:54:22,760 >> [Applausi] 1020 00:54:22,760 --> 00:56:58,070