1 00:00:00,000 --> 00:00:09,840 2 00:00:09,840 --> 00:00:10,824 >> [REPRODUCCIÓN DE VÍDEO] 3 00:00:10,824 --> 00:00:13,284 >> [CAR PUERTA Apagado] 4 00:00:13,284 --> 00:00:15,744 >> [CAR MOTOR DE ARRANQUE] 5 00:00:15,744 --> 00:00:19,188 >> [REPRODUCCIÓN DE MÚSICA] 6 00:00:19,188 --> 00:00:20,172 7 00:00:20,172 --> 00:00:24,516 >> -Los Que se mueven a lo largo de la derecha en busca de buenos momentos y buenas noticias. 8 00:00:24,516 --> 00:00:26,871 Con buenos amigos que no se puede perder. 9 00:00:26,871 --> 00:00:28,755 >> -Esto Podría convertirse en un hábito. 10 00:00:28,755 --> 00:00:32,460 >> Golpes -Oportunidad Vamos simplemente llegar y agarrarlo. 11 00:00:32,460 --> 00:00:32,960 -Sí! 12 00:00:32,960 --> 00:00:34,920 -junto Vamos a NAB ella. 13 00:00:34,920 --> 00:00:37,370 Autostop ll del `, autobús o taxi amarillo él. 14 00:00:37,370 --> 00:00:38,840 -Dammit. 15 00:00:38,840 --> 00:00:40,800 -Estamos En movimiento justo a lo largo. 16 00:00:40,800 --> 00:00:43,750 -Footloose Y de lujo. 17 00:00:43,750 --> 00:00:45,960 -Cómo No es parte de la diversión. 18 00:00:45,960 --> 00:00:47,718 Venga a compartirlo conmigo. 19 00:00:47,718 --> 00:00:49,654 >> -Estamos En movimiento justo a lo largo. 20 00:00:49,654 --> 00:00:52,558 >> -Estamos Va a compartir la carga. 21 00:00:52,558 --> 00:00:57,604 >> -Nosotros No necesita un mapa para conseguir este espectáculo en el camino. 22 00:00:57,604 --> 00:01:00,520 -Oye Fozzy, quiero que gira a la izquierda si se llega a un tenedor en la carretera. 23 00:01:00,520 --> 00:01:01,020 -Sí señor. 24 00:01:01,020 --> 00:01:03,334 Gire a la izquierda en el tenedor en la carretera. 25 00:01:03,334 --> 00:01:05,222 Gire a la izquierda. 26 00:01:05,222 --> 00:01:07,582 >> -No Creo eso. 27 00:01:07,582 --> 00:01:11,720 >> -Cruising Derecha a lo largo encontramos las luces en la carretera. 28 00:01:11,720 --> 00:01:13,664 >> -Y Tu camino o camino. 29 00:01:13,664 --> 00:01:16,154 >> -Así Que confían en mi navegación. 30 00:01:16,154 --> 00:01:21,134 >> Estrellas -Movie con coches llamativos y la vida con la capota bajada. 31 00:01:21,134 --> 00:01:23,126 >> -Estamos Asaltando las grandes colinas. 32 00:01:23,126 --> 00:01:24,122 >> -Sí, La tormenta es el adecuado. 33 00:01:24,122 --> 00:01:25,160 ¿Debe ser nevando? 34 00:01:25,160 --> 00:01:26,220 >> -No, No lo creo. 35 00:01:26,220 --> 00:01:28,505 >> -Los Que se mueven a lo largo de la derecha. 36 00:01:28,505 --> 00:01:30,980 >> -Footloose Y de lujo. 37 00:01:30,980 --> 00:01:32,960 >> -Eres Listo para el gran momento. 38 00:01:32,960 --> 00:01:34,445 >> -¿Es Listo para mí? 39 00:01:34,445 --> 00:01:38,900 40 00:01:38,900 --> 00:01:42,860 >> -Los Que se mueven a lo largo de la derecha. 41 00:01:42,860 --> 00:01:47,315 La derecha móvil adelante. 42 00:01:47,315 --> 00:01:52,265 La derecha móvil adelante. 43 00:01:52,265 --> 00:01:56,131 La derecha móvil adelante. 44 00:01:56,131 --> 00:01:57,380 -Creo Que usted tira mejor terminado. 45 00:01:57,380 --> 00:01:58,020 -Sí señor. 46 00:01:58,020 --> 00:02:02,475 47 00:02:02,475 --> 00:02:03,960 >> [FIN DE REPRODUCCIÓN] 48 00:02:03,960 --> 00:02:07,425 >> [Aplausos] 49 00:02:07,425 --> 00:02:09,405 50 00:02:09,405 --> 00:02:11,930 >> DAVID J. MALAN: Este es CS50. 51 00:02:11,930 --> 00:02:15,940 Y este es el final de la Semana 0, pero el comienzo de una hermosa amistad. 52 00:02:15,940 --> 00:02:18,250 Estamos muy contentos de estar aquí, en la Universidad de Yale 53 00:02:18,250 --> 00:02:21,530 por primera vez con nuestro amigo Scaz, y Jason, y Andy. 54 00:02:21,530 --> 00:02:24,320 Todos los 40 de la de CS50 TF y CA está aquí en Yale. 55 00:02:24,320 --> 00:02:25,440 Y todos ustedes. 56 00:02:25,440 --> 00:02:28,470 Y de hecho, es probable que sea hora a-- 57 00:02:28,470 --> 00:02:31,914 >> [Aplausos] 58 00:02:31,914 --> 00:02:43,722 59 00:02:43,722 --> 00:02:47,920 >> Así, a pesar de que la mayoría de las conferencias será de hecho estar en Cambridge este año, 60 00:02:47,920 --> 00:02:51,250 la realidad es que por diseño, y mucho deliberadamente CS50, 61 00:02:51,250 --> 00:02:54,740 Yo creo que estamos llegando al punto tecnológicamente, y pedagógicamente, 62 00:02:54,740 --> 00:02:57,930 donde puede ser un educativa superiores experiencia para colaborar con algunos 63 00:02:57,930 --> 00:02:59,610 de material en línea del curso. 64 00:02:59,610 --> 00:03:02,862 De hecho, el reality-- y si creo este philosophically-- es que las conferencias 65 00:03:02,862 --> 00:03:05,070 no son un particular medios eficaces para la entrega 66 00:03:05,070 --> 00:03:06,900 información bastante compleja. 67 00:03:06,900 --> 00:03:09,219 Ciertamente durante horas más largos períodos de tiempo. 68 00:03:09,219 --> 00:03:11,760 Y, de hecho cada pocos minutos-- Recuerdo que a mí mismo en college-- 69 00:03:11,760 --> 00:03:14,210 Zona que fuera por un momento, se olvida de algún tema complejo, 70 00:03:14,210 --> 00:03:16,540 y te has ido más o menos para los próximos 45 minutos. 71 00:03:16,540 --> 00:03:19,414 Y la realidad es que si usted está aquí en New Haven o Cambridge 72 00:03:19,414 --> 00:03:22,930 o más allá, la simplicidad de tener la capacidad de hacer una pausa y avance rápido, 73 00:03:22,930 --> 00:03:26,270 rebobinar, hipervínculo relacionado los recursos, las transcripciones de búsqueda de texto completo 74 00:03:26,270 --> 00:03:29,900 y similares es una oportunidad que Me atrevo a decir para nuestros estudiantes en línea 75 00:03:29,900 --> 00:03:32,530 mucho más allá de New Haven, les ofrece una oportunidad 76 00:03:32,530 --> 00:03:34,700 para captar realmente la material conceptual que nos 77 00:03:34,700 --> 00:03:36,700 introducir en las clases tanto mejor. 78 00:03:36,700 --> 00:03:39,415 >> Pero en última instancia, en el CS50, es la experiencia de los estudiantes 79 00:03:39,415 --> 00:03:43,099 se caracteriza por lo que, de manera mucho más por conjuntos de problemas del curso, 80 00:03:43,099 --> 00:03:46,140 o proyectos de programación semanales, la secciones de los cursos dirigidos por el docente 81 00:03:46,140 --> 00:03:49,600 becarios, las horas de oficina nocturnas dirigidas por los asistentes del curso y la enseñanza 82 00:03:49,600 --> 00:03:52,330 compañeros, y de hecho tales eventos como CS50 Puzzle 83 00:03:52,330 --> 00:03:56,500 Día, Hack-a-thon del CS50, el CS50 Feria, almuerzos semanales, y mucho más. 84 00:03:56,500 --> 00:03:59,580 Y así, si usted está aquí en Nueva Haven, o sintonizar desde lejos, 85 00:03:59,580 --> 00:04:02,270 hoy en Cambridge, y nos veremos de nuevo pronto, 86 00:04:02,270 --> 00:04:04,580 la realidad es que esto es una y la misma clase. 87 00:04:04,580 --> 00:04:07,990 Y estamos muy emocionados de estar aquí todos juntos hoy. 88 00:04:07,990 --> 00:04:11,110 Y así, al final del semestre, ya sea aquí o lejos, así 89 00:04:11,110 --> 00:04:14,910 esperamos que pueda llevar con orgullo, con alegría, y tal vez con un poco de alivio, 90 00:04:14,910 --> 00:04:19,459 la camisa que da testimonio a usted de haber tomado CS50. 91 00:04:19,459 --> 00:04:21,700 >> Entonces, ¿dónde nos dejamos fuera el miércoles? 92 00:04:21,700 --> 00:04:24,410 Tomamos un vistazo a pensamiento computacional. 93 00:04:24,410 --> 00:04:27,830 Y eso es hacia lo que destilada ciencias de la computación a, por lo menos 94 00:04:27,830 --> 00:04:28,800 Por ahora. 95 00:04:28,800 --> 00:04:31,990 Pero destilada que poco más en al menos tres elementos componentes. 96 00:04:31,990 --> 00:04:34,570 >> Las entradas, por lo que lo que es el problema que estamos tratando de resolver? 97 00:04:34,570 --> 00:04:36,650 Salidas, ¿cuál es la Respondemos que esperamos conseguir? 98 00:04:36,650 --> 00:04:38,210 Y la representación de allí. 99 00:04:38,210 --> 00:04:41,870 Y no vamos a insistir aquí en después en binario, o incluso ASCII, 100 00:04:41,870 --> 00:04:44,050 y similares tanto, pero más bien dar por sentado 101 00:04:44,050 --> 00:04:47,520 que podemos representar esta información, porque las partes mucho más interesante 102 00:04:47,520 --> 00:04:51,010 de esos problemas no son sólo la entradas y salidas, pero los algoritmos 103 00:04:51,010 --> 00:04:53,020 que intervienen en la solución de esos problemas. 104 00:04:53,020 --> 00:04:55,120 >> Y se puede recordar de el otro día que nos 105 00:04:55,120 --> 00:04:59,860 tomó un bastante tradicional concepto de mirar a alguien 106 00:04:59,860 --> 00:05:03,240 en un libro de teléfono bastante grande, o más generalmente digitalmente estos días, 107 00:05:03,240 --> 00:05:04,420 sólo un conjunto de datos muy grande. 108 00:05:04,420 --> 00:05:07,840 Una lista de contactos muy grande, con un montón de nombres ordenados alfabéticamente. 109 00:05:07,840 --> 00:05:11,310 Y nos dimos cuenta de que mientras yo podría abordar este problema simplemente 110 00:05:11,310 --> 00:05:14,520 mediante el uso de un lineal página approach-- por página, 111 00:05:14,520 --> 00:05:17,775 o incluso dos de en un tiempo-- nos dimos cuenta que el algorithm-- más intuitivo 112 00:05:17,775 --> 00:05:20,840 sólo tipo de dividir y conquistar el problema de nuevo, y otra vez, 113 00:05:20,840 --> 00:05:24,670 y otra vez-- reducir a la mitad con cada tiempo, nos dio este resultado verde. 114 00:05:24,670 --> 00:05:27,080 Y es tanto más plana porque sugiere 115 00:05:27,080 --> 00:05:29,160 que, aun cuando este problema hace más grande y más grande, 116 00:05:29,160 --> 00:05:32,470 como es el caso en estos días con los datos conjuntos y reality-- Facebook y Google 117 00:05:32,470 --> 00:05:34,630 resultados de la búsqueda y la como-- hace nuestro algoritmo 118 00:05:34,630 --> 00:05:37,660 realizar la misma eficacia con esos bocados más grandes 119 00:05:37,660 --> 00:05:40,310 como lo hizo incluso con los bocados más pequeños. 120 00:05:40,310 --> 00:05:45,330 >> Ahora se plantea la pregunta, ¿qué podemos realmente resolver similar 121 00:05:45,330 --> 00:05:46,820 con este tipo de intuición? 122 00:05:46,820 --> 00:05:48,740 Este tipo de división y conquista? 123 00:05:48,740 --> 00:05:51,029 Bueno, podríamos hacer algo como esta hoy aquí. 124 00:05:51,029 --> 00:05:52,070 Podríamos tomar asistencia. 125 00:05:52,070 --> 00:05:56,102 Así que tal como 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11- 126 00:05:56,102 --> 00:05:57,560 no va a ser todo lo que eficiente. 127 00:05:57,560 --> 00:05:58,990 Así que espere, la escuela primaria. 128 00:05:58,990 --> 00:06:02,770 2, 4, 6, 8, 10, 12, 14, 16, 18 y así sucesivamente. 129 00:06:02,770 --> 00:06:04,140 Pero podríamos hacer un poco mejor? 130 00:06:04,140 --> 00:06:06,630 >> Estoy bastante seguro de que no puedo hacer esto por mí mismo. 131 00:06:06,630 --> 00:06:09,420 Así que si vas a humor nos por sólo un momento, llevamos con nosotros 132 00:06:09,420 --> 00:06:11,640 un algoritmo que es Acabo de tres pasos, 133 00:06:11,640 --> 00:06:15,130 pero sí exigir: si no mente-- todos se levantan, 134 00:06:15,130 --> 00:06:15,690 si tú pudieras. 135 00:06:15,690 --> 00:06:23,901 136 00:06:23,901 --> 00:06:29,380 Así, con todos nosotros ahora de pie, paso uno de este algoritmo es la siguiente. 137 00:06:29,380 --> 00:06:31,680 Ponte de pie y asignar usted mismo el número 1. 138 00:06:31,680 --> 00:06:34,180 Así que en este punto en el tiempo, literalmente, todos en esta sala 139 00:06:34,180 --> 00:06:38,830 esperemos que se piensa a sí mismos, Sin embargo torpemente, el número 1. 140 00:06:38,830 --> 00:06:42,020 >> Ahora el paso dos de este algoritmo es va a involucrar a la siguiente. 141 00:06:42,020 --> 00:06:44,680 Paso dos, emparejarse con alguien de pie, 142 00:06:44,680 --> 00:06:47,970 añadir sus números juntos, y adoptar la suma como su nuevo número. 143 00:06:47,970 --> 00:06:53,110 144 00:06:53,110 --> 00:06:55,620 Comprobación de validez rápida. 145 00:06:55,620 --> 00:06:58,180 ¿Qué número está todo el mundo pensando ahora? 146 00:06:58,180 --> 00:07:01,930 >> Así que 2, excepto quizás por uno, torpe, persona solitaria. 147 00:07:01,930 --> 00:07:04,269 Si tenemos un número impar de personas en la habitación. 148 00:07:04,269 --> 00:07:06,560 Así que una persona puede seguir siendo el número 1, que está bien. 149 00:07:06,560 --> 00:07:09,440 Pero paso tres aquí, uno de que debe sentarse. 150 00:07:09,440 --> 00:07:13,620 El otro debe ir de nuevo al paso dos, y repetir, si lo haría. 151 00:07:13,620 --> 00:07:54,430 152 00:07:54,430 --> 00:07:58,240 >> Así que si sigue en pie, debe ser entre aquellos que se remonta al paso dos. 153 00:07:58,240 --> 00:08:13,910 154 00:08:13,910 --> 00:08:14,574 Continua. 155 00:08:14,574 --> 00:08:20,790 156 00:08:20,790 --> 00:08:22,130 Algunas personas aún en pie. 157 00:08:22,130 --> 00:08:33,590 158 00:08:33,590 --> 00:08:35,614 >> Así que, si sigue en pie, emparejarse con alguien. 159 00:08:35,614 --> 00:08:53,710 160 00:08:53,710 --> 00:08:55,020 Muy bien, la disminución de abajo. 161 00:08:55,020 --> 00:09:06,394 162 00:09:06,394 --> 00:09:07,560 Algunas personas aún en pie. 163 00:09:07,560 --> 00:09:08,600 Voy a ayudar si es necesario. 164 00:09:08,600 --> 00:09:11,855 Recuerde la conclusión clave aquí, es cómo mucho más rápido esto es que yo contando. 165 00:09:11,855 --> 00:09:15,090 166 00:09:15,090 --> 00:09:16,200 >> Así que vamos a ver. 167 00:09:16,200 --> 00:09:16,900 Yo puedo ayudar. 168 00:09:16,900 --> 00:09:19,425 Entonces, ¿qué número son aún pensando? 169 00:09:19,425 --> 00:09:20,320 >> AUDIENCIA: Estoy en 44. 170 00:09:20,320 --> 00:09:22,400 >> DAVID J. MALAN: 44, por lo que seguir adelante y sentarse. 171 00:09:22,400 --> 00:09:23,733 ¿Qué número está pensando? 172 00:09:23,733 --> 00:09:24,840 AUDIENCIA: 74. 173 00:09:24,840 --> 00:09:27,006 >> DAVID J. MALAN: 74. 174 00:09:27,006 --> 00:09:28,380 Muy bien, adelante y siéntate. 175 00:09:28,380 --> 00:09:30,390 ¿Quién más se sigue de pie? 176 00:09:30,390 --> 00:09:31,550 86. 177 00:09:31,550 --> 00:09:33,340 Y es nadie más aún en pie? 178 00:09:33,340 --> 00:09:34,976 >> ¿Qué número? 179 00:09:34,976 --> 00:09:37,380 Escuché 67. 180 00:09:37,380 --> 00:09:39,370 Y luego, en la parte superior? 181 00:09:39,370 --> 00:09:40,900 32. 182 00:09:40,900 --> 00:09:44,230 ¿Alguien más aún en pie y pensando en un número? 183 00:09:44,230 --> 00:09:44,730 >> Oh hola. 184 00:09:44,730 --> 00:09:45,230 Apenado. 185 00:09:45,230 --> 00:09:48,350 Vuelvo enseguida. 186 00:09:48,350 --> 00:09:49,520 42. 187 00:09:49,520 --> 00:09:51,758 ¿Alguien mas? 188 00:09:51,758 --> 00:09:52,610 >> AUDIENCIA: 47. 189 00:09:52,610 --> 00:09:54,930 >> DAVID J. MALAN: 47. 190 00:09:54,930 --> 00:09:57,980 ¿Hay alguien más aún en pie que no se ha contado? 191 00:09:57,980 --> 00:10:06,450 Así que el número final de personas en una habitación que tiene 497 asientos es-- todos los cuales 192 00:10:06,450 --> 00:10:10,930 son filled-- es 390. 193 00:10:10,930 --> 00:10:12,230 Así que esto es genial. 194 00:10:12,230 --> 00:10:16,435 >> Pronto vamos a discutir la noción de un error en un programa informático. 195 00:10:16,435 --> 00:10:19,660 Pero vamos a volver a que en poco tiempo. 196 00:10:19,660 --> 00:10:22,440 Pero en teoría, lo que podría haber pasado hace un momento? 197 00:10:22,440 --> 00:10:25,930 Así que a pesar de que había tres grandes pasos de este algoritmo, cada uno de los 198 00:10:25,930 --> 00:10:27,510 era sólo un poco de una operación grande. 199 00:10:27,510 --> 00:10:31,020 Y había una ciclicidad a ella en que si estuviera todavía en pie, 200 00:10:31,020 --> 00:10:34,870 que siguió su camino desde el paso tres a dos, paso tres a dos, paso tres a dos. 201 00:10:34,870 --> 00:10:37,330 >> Pero lo que siguió ocurriendo en cada iteración? 202 00:10:37,330 --> 00:10:39,440 Cada ciclo de este bucle? 203 00:10:39,440 --> 00:10:41,940 Que estaba pasando en la habitación en otro lugar? 204 00:10:41,940 --> 00:10:45,170 No sólo la misma cosa, pero lo que que estaba sucediendo a la mitad de ustedes? 205 00:10:45,170 --> 00:10:46,170 Sentándose. 206 00:10:46,170 --> 00:10:49,710 Y lo que hay en la mentira esta idea, al igual que el ejemplo de libro de teléfono, 207 00:10:49,710 --> 00:10:52,050 en que si la mitad de los que son sentarse cada vez, 208 00:10:52,050 --> 00:10:54,560 el problema está empezando con tal vez 400 personas, 209 00:10:54,560 --> 00:10:57,780 luego a 200 personas, de 100 personas, luego de 50 personas, y así sucesivamente. 210 00:10:57,780 --> 00:11:00,660 >> Y así reducir gradualmente en la teoría a una sola persona, 211 00:11:00,660 --> 00:11:02,830 pensando en el valor total de todos. 212 00:11:02,830 --> 00:11:05,777 Ahora la realidad, algunas dinámicas sociales, y algunos errores aritméticos 213 00:11:05,777 --> 00:11:07,360 podría contribuir a ese fallo definitivo. 214 00:11:07,360 --> 00:11:10,300 Pero en teoría, mientras yo seguía contando distancia, 215 00:11:10,300 --> 00:11:12,860 teniendo varias docenas pasos, o cientos de pasos 216 00:11:12,860 --> 00:11:16,240 a contar a vosotros mismos, a contar una sala llena de más o menos 500 personas 217 00:11:16,240 --> 00:11:20,560 debería haber tenido muchos menos pasos, porque sólo se puede dividir 500 y medio 218 00:11:20,560 --> 00:11:21,350 tantas veces. 219 00:11:21,350 --> 00:11:24,120 Y así, al igual que con el teléfono reservar ejemplo, el otro día, 220 00:11:24,120 --> 00:11:26,740 nos tenemos algo logarítmica por así decirlo, 221 00:11:26,740 --> 00:11:28,870 con lo cual si todos fuéramos operando al unísono, 222 00:11:28,870 --> 00:11:32,000 e ignorando el errores de adición, ¿verdad 223 00:11:32,000 --> 00:11:34,140 han logrado exactamente ese tipo de tiempo de ejecución? 224 00:11:34,140 --> 00:11:37,900 >> Ahora, para ser justos, una especie de trampa, en que me ha atraído otros recursos. 225 00:11:37,900 --> 00:11:40,320 Considerando que es sólo uno de mí, Yo apalancadas cientos de ti. 226 00:11:40,320 --> 00:11:43,340 Pero eso podría decirse que es un ejemplo de procesamiento en paralelo, 227 00:11:43,340 --> 00:11:46,400 o un estado del arte muy en boga donde las computadoras en estos días tienen 228 00:11:46,400 --> 00:11:49,830 múltiples CPUs, o más técnicamente, más múltiples núcleos, 229 00:11:49,830 --> 00:11:52,550 y verdaderamente puede hacer múltiples cosas a la vez, al igual que 230 00:11:52,550 --> 00:11:54,706 todo lo que estamos haciendo allí, en paralelo. 231 00:11:54,706 --> 00:11:56,580 Pero recordar que lo que También lo hizo el miércoles 232 00:11:56,580 --> 00:12:02,640 fue tratar de capturar esta intuición y formalizar en el código. 233 00:12:02,640 --> 00:12:04,165 Algo así como pseudo-código. 234 00:12:04,165 --> 00:12:07,040 Y de hecho, y espero que perdonar, es como 80 grados en aquí. 235 00:12:07,040 --> 00:12:09,420 Así que me voy a tomar esto fuera por sólo un poco. 236 00:12:09,420 --> 00:12:12,410 Lo que pensé que haríamos es la transición ahora a una aplicación mediante el cual 237 00:12:12,410 --> 00:12:16,300 nos comprometemos nuevamente a la audiencia, pero escribir un programa en Inglés 238 00:12:16,300 --> 00:12:19,537 como la sintaxis, con el cual resolver este problema aquí. 239 00:12:19,537 --> 00:12:20,203 [REPRODUCCIÓN DE VÍDEO] 240 00:12:20,203 --> 00:12:22,266 Mantequilla de maní tiempo jalea -Es. 241 00:12:22,266 --> 00:12:23,890 La mantequilla de maní tiempo jalea. 242 00:12:23,890 --> 00:12:25,620 La mantequilla de maní tiempo jalea. 243 00:12:25,620 --> 00:12:26,320 >> Camino ya! 244 00:12:26,320 --> 00:12:26,927 Camino ya! 245 00:12:26,927 --> 00:12:27,781 Camino ya! 246 00:12:27,781 --> 00:12:28,350 Camino ya! 247 00:12:28,350 --> 00:12:29,723 Ahora hay que ir! 248 00:12:29,723 --> 00:12:30,264 ¡Ahi tienes! 249 00:12:30,264 --> 00:12:30,805 ¡Ahi tienes! 250 00:12:30,805 --> 00:12:31,710 ¡Ahi tienes! 251 00:12:31,710 --> 00:12:33,156 Mantequilla de maní jalea! 252 00:12:33,156 --> 00:12:34,602 Mantequilla de maní jalea! 253 00:12:34,602 --> 00:12:36,530 >> Mantequilla de maní jalea! 254 00:12:36,530 --> 00:12:37,494 Mantequilla de maní jalea! 255 00:12:37,494 --> 00:12:38,940 Maní, jalea de la mantequilla de maní! 256 00:12:38,940 --> 00:12:39,904 Mantequilla de maní jalea! 257 00:12:39,904 --> 00:12:41,840 Jalea de cacahuete mantequilla con un bate de béisbol. 258 00:12:41,840 --> 00:12:42,423 >> [FIN DE REPRODUCCIÓN] 259 00:12:42,423 --> 00:12:45,510 DAVID J. MALAN: --que video, pero es un poco adictivo, 260 00:12:45,510 --> 00:12:46,540 si no es un poco molesto. 261 00:12:46,540 --> 00:12:49,623 Pero para hacer esto, pensé que lo que habíamos hacer es tratar de escribir un programa conjunto, 262 00:12:49,623 --> 00:12:51,870 para lo cual necesitamos tres voluntarios. 263 00:12:51,870 --> 00:12:54,350 Tiene que ser cómodo en cámara e internet. 264 00:12:54,350 --> 00:12:57,820 Sam, vamos para arriba. 265 00:12:57,820 --> 00:12:59,830 Camisa púrpura, aquí, vamos para arriba. 266 00:12:59,830 --> 00:13:03,470 >> Y a partir de aquí, déjame ir un poco más atrás. 267 00:13:03,470 --> 00:13:05,280 Carmesí y camisas azules, vamos para arriba. 268 00:13:05,280 --> 00:13:06,980 Perfecto. 269 00:13:06,980 --> 00:13:09,790 Ven ahora. 270 00:13:09,790 --> 00:13:12,490 Vamos para arriba, vamos para arriba. 271 00:13:12,490 --> 00:13:13,581 >> ¿Y cual es tu nombre? 272 00:13:13,581 --> 00:13:14,080 Erica. 273 00:13:14,080 --> 00:13:15,289 David, un placer conocerte. 274 00:13:15,289 --> 00:13:16,830 Si desea aprovechar esta sede aquí. 275 00:13:16,830 --> 00:13:17,900 Este es Sam. 276 00:13:17,900 --> 00:13:19,690 >> ¿Cómo te llamas? 277 00:13:19,690 --> 00:13:20,260 Antonio. 278 00:13:20,260 --> 00:13:21,595 Antonio, un placer conocerte. 279 00:13:21,595 --> 00:13:23,790 Erica y Sam, si lo gustaría tener un asiento aquí. 280 00:13:23,790 --> 00:13:26,700 Lo que hemos venido preparado con, ya que estos chicos están descubriendo, 281 00:13:26,700 --> 00:13:30,580 es los ingredientes con la cual hacer una mantequilla de maní y jalea. 282 00:13:30,580 --> 00:13:33,520 >> Ahora bien, esto podría ser algo que usted toma mucho por sentado. 283 00:13:33,520 --> 00:13:35,430 Pero nos hemos dado a cada uno de nuestros tres voluntarios 284 00:13:35,430 --> 00:13:40,500 aquí-- dos voluntarios y Sam aquí, un hogaza de pan cada uno, un plato, un cuchillo, 285 00:13:40,500 --> 00:13:43,740 un frasco de jalea o mermelada, y un tarro de mantequilla de maní. 286 00:13:43,740 --> 00:13:46,190 Y el objetivo que nos ocupa ahora es va a ser para estos tres 287 00:13:46,190 --> 00:13:48,030 hacer una mantequilla de maní y mermelada. 288 00:13:48,030 --> 00:13:51,000 Pero lo que vamos a hacer es esperar el audience-- ya todos ustedes 289 00:13:51,000 --> 00:13:53,710 sin duda saben cómo hacerlo esta tan bien en reality-- 290 00:13:53,710 --> 00:13:56,380 van a proporcionarnos la instrucciones paso a paso. 291 00:13:56,380 --> 00:13:57,970 El pseudo-código, si se quiere. 292 00:13:57,970 --> 00:13:59,922 >> Así que voy a jugar el papel de escriba aquí. 293 00:13:59,922 --> 00:14:02,880 Y yo tengo una pequeña lista de cosas por hacer, y de manera que cada uno de ustedes, uno a la vez, 294 00:14:02,880 --> 00:14:04,588 pide un potencial instrucción, voy a 295 00:14:04,588 --> 00:14:06,110 escribirlo, repetir si es necesario. 296 00:14:06,110 --> 00:14:09,650 Y entonces ustedes van a hacer una mantequilla de maní y mermelada 297 00:14:09,650 --> 00:14:11,171 sólo haciendo lo que le dicen. 298 00:14:11,171 --> 00:14:12,670 Así que pensar en sí mismos como los ordenadores. 299 00:14:12,670 --> 00:14:13,740 >> Sólo se puede hacer lo que te dicen. 300 00:14:13,740 --> 00:14:14,948 No hay suposiciones, sin preguntas. 301 00:14:14,948 --> 00:14:16,660 Sólo tiene que hacerlo. 302 00:14:16,660 --> 00:14:20,460 Entonces, ¿quién le gustaría aventurar la primera instrucciones para hacer un sándwich PBJ? 303 00:14:20,460 --> 00:14:21,460 En el balcón hay. 304 00:14:21,460 --> 00:14:22,801 >> AUDIENCIA: Abra la bolsa de pan. 305 00:14:22,801 --> 00:14:26,430 >> DAVID J. MALAN: Abra el bolsa de pan, si se quiere. 306 00:14:26,430 --> 00:14:34,440 307 00:14:34,440 --> 00:14:35,230 Así que vamos a ver. 308 00:14:35,230 --> 00:14:37,910 Vamos a iterar, y obtener un poco más preciso. 309 00:14:37,910 --> 00:14:39,040 >> Buena forma de empezar sin embargo. 310 00:14:39,040 --> 00:14:42,340 El segundo paso, alguien más. 311 00:14:42,340 --> 00:14:43,590 Ahora nadie quiere ser voluntario. 312 00:14:43,590 --> 00:14:44,616 Paso dos, en el frente. 313 00:14:44,616 --> 00:14:46,532 AUDIENCIA: Abra el interior bolsa de pan también. 314 00:14:46,532 --> 00:14:50,600 DAVID J. MALAN: Abra el bolsa interior de pan también. 315 00:14:50,600 --> 00:14:51,880 Grande, que aprender. 316 00:14:51,880 --> 00:14:57,880 317 00:14:57,880 --> 00:14:59,090 Un poco más preciso. 318 00:14:59,090 --> 00:15:00,240 Vamos a conseguir este trabajo. 319 00:15:00,240 --> 00:15:01,180 Sí, en camisa verde. 320 00:15:01,180 --> 00:15:04,608 >> AUDIENCIA: [inaudible] 321 00:15:04,608 --> 00:15:05,108 322 00:15:05,108 --> 00:15:09,040 DAVID J. MALAN: Rebanadas de pan. 323 00:15:09,040 --> 00:15:11,110 Retire con cuidado dos rebanadas de pan. 324 00:15:11,110 --> 00:15:20,350 325 00:15:20,350 --> 00:15:21,000 Eso es bueno. 326 00:15:21,000 --> 00:15:24,300 El cuarto paso, alguien más? 327 00:15:24,300 --> 00:15:25,170 Por aquí, ¿no? 328 00:15:25,170 --> 00:15:26,130 >> AUDIENCIA: [inaudible] 329 00:15:26,130 --> 00:15:28,810 >> DAVID J. MALAN: Coloque el pan en el plato. 330 00:15:28,810 --> 00:15:33,490 331 00:15:33,490 --> 00:15:35,290 Paso cinco? 332 00:15:35,290 --> 00:15:36,020 Paso cinco, ¿sí? 333 00:15:36,020 --> 00:15:39,440 >> AUDIENCIA: [inaudible] 334 00:15:39,440 --> 00:15:39,940 335 00:15:39,940 --> 00:15:43,860 DAVID J. MALAN: Encima de-- oh, mano. 336 00:15:43,860 --> 00:15:46,967 Coloque la mano en la parte superior de la mantequilla de maní. 337 00:15:46,967 --> 00:15:47,800 ¿Es eso lo que me dirijo? 338 00:15:47,800 --> 00:15:49,160 >> AUDIENCIA: Sí, y desenroscar. 339 00:15:49,160 --> 00:15:51,370 >> DAVID J. MALAN: Y-- decirlo de nuevo. 340 00:15:51,370 --> 00:15:52,696 >> AUDIENCIA: [inaudible] 341 00:15:52,696 --> 00:15:57,990 >> DAVID J. MALAN: Y puso el tapa al lado de la mantequilla de cacahuete. 342 00:15:57,990 --> 00:16:00,370 Ligeramente coloque la mano en la parte superior de la mantequilla de maní, 343 00:16:00,370 --> 00:16:03,240 y desenroscar, y poner la tapa junto a la mantequilla de cacahuete. 344 00:16:03,240 --> 00:16:14,760 345 00:16:14,760 --> 00:16:16,260 OK, paso seis. 346 00:16:16,260 --> 00:16:17,520 Paso seis, alguien más. 347 00:16:17,520 --> 00:16:19,366 ¿Sí? 348 00:16:19,366 --> 00:16:22,740 >> AUDIENCIA: [inaudible] 349 00:16:22,740 --> 00:16:29,197 350 00:16:29,197 --> 00:16:30,405 DAVID J. MALAN: Dilo otra vez. 351 00:16:30,405 --> 00:16:31,946 AUDIENCIA: Repita el paso cinco de nuevo. 352 00:16:31,946 --> 00:16:37,380 DAVID J. MALAN: Y repetir el paso cinco más, 353 00:16:37,380 --> 00:16:39,400 que se va a crear un poco de un problema 354 00:16:39,400 --> 00:16:42,600 ahora si que estamos haciendo este paso a paso. 355 00:16:42,600 --> 00:16:44,640 Así que ahora vamos de nuevo al paso cinco. 356 00:16:44,640 --> 00:16:47,760 Ligeramente colocar la mano en la parte superior de mantequilla de maní y desatornillar 357 00:16:47,760 --> 00:16:50,990 y poner la tapa al lado de la mantequilla de maní. 358 00:16:50,990 --> 00:16:55,340 Entonces captar la mantequilla de maní y repita el paso cinco de nuevo. 359 00:16:55,340 --> 00:16:58,410 >> Así que vamos a anular ese bucle infinito, si se quiere. 360 00:16:58,410 --> 00:17:00,400 Paso siete, otra persona. 361 00:17:00,400 --> 00:17:02,918 Sí, en la parte trasera. 362 00:17:02,918 --> 00:17:06,397 >> AUDIENCIA: [inaudible] 363 00:17:06,397 --> 00:17:16,084 364 00:17:16,084 --> 00:17:17,769 >> DAVID J. MALAN: top --en de otra. 365 00:17:17,769 --> 00:17:20,529 >> AUDIENCIA: [inaudible] 366 00:17:20,529 --> 00:17:23,175 >> DAVID J. MALAN: En la Por otro lado en el otro superior. 367 00:17:23,175 --> 00:17:28,880 368 00:17:28,880 --> 00:17:30,895 ¿Quieres simplemente venir aquí? 369 00:17:30,895 --> 00:17:34,750 ¿Cómo termino la instrucción? 370 00:17:34,750 --> 00:17:37,790 ¿Qué hay del resto de la instrucción? 371 00:17:37,790 --> 00:17:39,140 >> AUDIENCIA: Haciendo caso omiso de esa parte. 372 00:17:39,140 --> 00:17:41,050 >> DAVID J. MALAN: Haciendo caso omiso de esa parte. 373 00:17:41,050 --> 00:17:44,192 374 00:17:44,192 --> 00:17:44,900 Empecemos de nuevo. 375 00:17:44,900 --> 00:17:45,400 Paso siete. 376 00:17:45,400 --> 00:17:48,516 377 00:17:48,516 --> 00:17:51,883 >> AUDIENCIA: [inaudible] 378 00:17:51,883 --> 00:17:56,090 >> DAVID J. MALAN: Agarre con oponerse a mano-- esto es bueno. 379 00:17:56,090 --> 00:17:58,544 Esto es realmente bueno. 380 00:17:58,544 --> 00:18:01,750 >> AUDIENCIA: [inaudible] 381 00:18:01,750 --> 00:18:03,975 >> DAVID J. MALAN: Y jar-- plástico 382 00:18:03,975 --> 00:18:06,675 >> AUDIENCIA: [inaudible] 383 00:18:06,675 --> 00:18:08,420 >> DAVID J. MALAN: Y twist-- 384 00:18:08,420 --> 00:18:11,488 >> AUDIENCIA: [inaudible] 385 00:18:11,488 --> 00:18:13,730 >> DAVID J. MALAN: Durante dos segundos. 386 00:18:13,730 --> 00:18:15,800 Sólo tienes que abrir el tarro de mantequilla de maní. 387 00:18:15,800 --> 00:18:19,020 388 00:18:19,020 --> 00:18:20,632 Espero que perdones. 389 00:18:20,632 --> 00:18:21,840 Así que vamos a suponer que llegamos allí. 390 00:18:21,840 --> 00:18:23,240 Abra el tarro de mantequilla de maní. 391 00:18:23,240 --> 00:18:27,008 392 00:18:27,008 --> 00:18:32,570 >> [Aplausos] 393 00:18:32,570 --> 00:18:34,790 >> DAVID J. MALAN: Paso ocho, vamos. 394 00:18:34,790 --> 00:18:37,510 Paso ocho, sí, en la parte trasera. 395 00:18:37,510 --> 00:18:38,470 >> AUDIENCIA: [inaudible] 396 00:18:38,470 --> 00:18:44,772 397 00:18:44,772 --> 00:18:45,700 >> DAVID J. MALAN: Good. 398 00:18:45,700 --> 00:18:47,040 Paso nueve, ¿sí? 399 00:18:47,040 --> 00:18:48,924 >> AUDIENCIA: [inaudible] 400 00:18:48,924 --> 00:18:51,567 >> DAVID J. MALAN: --out de el tarro de mantequilla de maní. 401 00:18:51,567 --> 00:18:53,830 Y- y qué? 402 00:18:53,830 --> 00:18:54,729 >> AUDIENCIA: [inaudible] 403 00:18:54,729 --> 00:18:58,222 >> DAVID J. MALAN: Y cuchillo puesto de nuevo en la mantequilla de maní. 404 00:18:58,222 --> 00:19:11,130 405 00:19:11,130 --> 00:19:12,090 Paso diez. 406 00:19:12,090 --> 00:19:13,050 Paso diez. 407 00:19:13,050 --> 00:19:14,970 >> AUDIENCIA: [inaudible] 408 00:19:14,970 --> 00:19:20,710 >> DAVID J. MALAN: Ponga el cuchillo y, a continuación, retire el precinto. 409 00:19:20,710 --> 00:19:23,060 Agradable. 410 00:19:23,060 --> 00:19:24,400 Fuera de la mantequilla de maní. 411 00:19:24,400 --> 00:19:34,490 412 00:19:34,490 --> 00:19:36,406 Muy bien, el paso 11. 413 00:19:36,406 --> 00:19:37,322 >> AUDIENCIA: [inaudible] 414 00:19:37,322 --> 00:19:42,520 415 00:19:42,520 --> 00:19:48,164 >> DAVID J. MALAN: OK, ordenador gris siga equipo azul o rojo. 416 00:19:48,164 --> 00:19:49,631 Bien. 417 00:19:49,631 --> 00:19:53,054 >> [Aplausos] 418 00:19:53,054 --> 00:19:55,920 419 00:19:55,920 --> 00:19:57,170 DAVID J. MALAN: Tráenos casa. 420 00:19:57,170 --> 00:19:59,570 Par de pasos más. 421 00:19:59,570 --> 00:20:00,250 ¿Que sigue? 422 00:20:00,250 --> 00:20:02,590 Pasos 12. 423 00:20:02,590 --> 00:20:04,161 Paso 12. 424 00:20:04,161 --> 00:20:05,123 ¿Sí? 425 00:20:05,123 --> 00:20:14,262 >> AUDIENCIA: Pon una de las rebanadas de pan suavemente en una de sus manos. 426 00:20:14,262 --> 00:20:17,550 >> DAVID J. MALAN: Una de sus manos. 427 00:20:17,550 --> 00:20:20,760 Y luego, paso 13. 428 00:20:20,760 --> 00:20:21,260 ¿Sí? 429 00:20:21,260 --> 00:20:22,220 >> AUDIENCIA: [inaudible] 430 00:20:22,220 --> 00:20:25,580 431 00:20:25,580 --> 00:20:27,150 >> DAVID J. MALAN: rebanada --en de pan. 432 00:20:27,150 --> 00:20:29,950 Bien. 433 00:20:29,950 --> 00:20:32,260 Bastante bien. 434 00:20:32,260 --> 00:20:34,990 Paso 14, sí. 435 00:20:34,990 --> 00:20:38,126 >> AUDIENCIA: Deshacer el paso 13. 436 00:20:38,126 --> 00:20:39,950 >> DAVID J. MALAN: Deshacer el paso 13. 437 00:20:39,950 --> 00:20:42,690 438 00:20:42,690 --> 00:20:44,770 Vamos a pasar a la jalea. 439 00:20:44,770 --> 00:20:47,900 Es un programa de 100 pasos, pero estamos estábamos en el paso 15. 440 00:20:47,900 --> 00:20:49,210 Sí. 441 00:20:49,210 --> 00:20:50,170 >> AUDIENCIA: [inaudible] 442 00:20:50,170 --> 00:20:53,050 443 00:20:53,050 --> 00:20:59,570 >> DAVID J. MALAN: 7 a 13 usando la jalea, porque los que fue tan bien. 444 00:20:59,570 --> 00:21:02,530 Repita los pasos 7 a 13, usando la gelatina. 445 00:21:02,530 --> 00:21:07,940 Así captar la mitad inferior de la tarro de la jalea con una mano en la parte superior. 446 00:21:07,940 --> 00:21:11,970 Por otro lado de la otra superior, haciendo caso omiso de esa parte, 447 00:21:11,970 --> 00:21:15,430 agarrar con las manos opuestas, la tapa y el frasco de plástico 448 00:21:15,430 --> 00:21:18,300 en la parte inferior, y torcer durante dos segundos. 449 00:21:18,300 --> 00:21:19,940 A continuación, abra el frasco de jalea. 450 00:21:19,940 --> 00:21:23,290 451 00:21:23,290 --> 00:21:26,580 Y por último, vamos a tratar de darnos algo comestible. 452 00:21:26,580 --> 00:21:27,270 Paso 16. 453 00:21:27,270 --> 00:21:35,820 454 00:21:35,820 --> 00:21:37,130 Así que ¿por qué no lo dejamos ahí. 455 00:21:37,130 --> 00:21:38,879 Muchas gracias a nuestros tres voluntarios. 456 00:21:38,879 --> 00:21:41,466 [Aplausos] 457 00:21:41,466 --> 00:21:45,920 458 00:21:45,920 --> 00:21:50,300 >> Tenemos un poco de CS50 bola de la tensión para usted. 459 00:21:50,300 --> 00:21:54,540 Iba a ser un sándwich pero- ¿y qué 460 00:21:54,540 --> 00:21:57,130 era el punto, más allá de tener un poco de diversión con el algoritmo? 461 00:21:57,130 --> 00:22:00,140 Pero la realidad es que, incluso cuando estás programando una computadora, 462 00:22:00,140 --> 00:22:02,050 tiene que ser súper precisa. 463 00:22:02,050 --> 00:22:04,030 Como complejo o intimidante como su propio ordenador 464 00:22:04,030 --> 00:22:06,670 muy bien podría ser la de que, al menos cuando algo sale mal, 465 00:22:06,670 --> 00:22:10,150 la realidad es que es un bastante tonto dispositivo que fue inventado por nosotros los seres humanos, 466 00:22:10,150 --> 00:22:13,267 y sólo puede hacerlo un subconjunto de lo que hacer-- veces ciertamente faster-- 467 00:22:13,267 --> 00:22:15,100 pero no sabe cómo hacer suposiciones. 468 00:22:15,100 --> 00:22:18,070 No sabe cómo estar en la misma longitud de onda que tú. 469 00:22:18,070 --> 00:22:20,280 >> Sólo se hará precisamente lo que le dices. 470 00:22:20,280 --> 00:22:22,070 Y vas a ser golpeado, tal vez, a medida que comenzamos 471 00:22:22,070 --> 00:22:24,770 escribir código real con el primeros boletines de problemas y más allá, 472 00:22:24,770 --> 00:22:27,490 lo fácil que es hacer una suposición como un ser humano, 473 00:22:27,490 --> 00:22:31,880 y no preveo que necesito para manejar ese caso, o que el caso de la esquina, 474 00:22:31,880 --> 00:22:34,900 por así decirlo, que podría muy bien surgir si, por ejemplo, Sam tenía la única 475 00:22:34,900 --> 00:22:38,711 jar squeezable de gelatina, mientras que todos los demás tenían algunos frascos de vidrio como 476 00:22:38,711 --> 00:22:39,210 bien. 477 00:22:39,210 --> 00:22:42,170 Así que antes de que nos dirigimos nuestra atención a algo de código real, 478 00:22:42,170 --> 00:22:44,680 permítame presentarle el las cabezas de los cursos aquí en Yale. 479 00:22:44,680 --> 00:22:49,058 Nuestros amigos Scaz, Andy, y Jason venir y decir hola. 480 00:22:49,058 --> 00:22:52,544 >> [Aplausos] 481 00:22:52,544 --> 00:22:58,022 482 00:22:58,022 --> 00:23:01,060 >> SCAZ: Hemos perdido Jason temporalmente. 483 00:23:01,060 --> 00:23:02,440 Hola de nuevo, todo el mundo. 484 00:23:02,440 --> 00:23:03,610 Mi nombre es Scaz. 485 00:23:03,610 --> 00:23:06,860 He estado enseñando en Yale desde 2001. 486 00:23:06,860 --> 00:23:10,820 Y cuando no estoy enseñando, mi investigación se encuentra en la robótica 487 00:23:10,820 --> 00:23:12,620 y la inteligencia artificial. 488 00:23:12,620 --> 00:23:17,700 >> Y el anuncio de que tengo hoy es que a partir de un par de semanas, 489 00:23:17,700 --> 00:23:22,170 vamos a traer algunos material complementario para CS50 para hablar 490 00:23:22,170 --> 00:23:24,510 sobre el software de inteligencia. 491 00:23:24,510 --> 00:23:28,230 Vamos a hablar de cómo sitios como Netflix y Hulu 492 00:23:28,230 --> 00:23:31,780 puede recomendar películas que es posible que desee ver. 493 00:23:31,780 --> 00:23:35,710 ¿Dónde vamos a hablar acerca de cómo coches sin conductor en realidad funcionan. 494 00:23:35,710 --> 00:23:39,020 Y vamos a ser capaces a tierra estas cosas en los conceptos 495 00:23:39,020 --> 00:23:41,730 que usted está aprendiendo en esta clase de hoy. 496 00:23:41,730 --> 00:23:45,410 >> Debido a que todas estas cosas son construido sobre la misma base. 497 00:23:45,410 --> 00:23:47,396 Y eso es lo que este serie explorará. 498 00:23:47,396 --> 00:23:49,520 Así que estoy realmente esperando con ganas de ver más de ti 499 00:23:49,520 --> 00:23:53,260 todos, y que vas a llegar a ver más de todos nosotros muy pronto. 500 00:23:53,260 --> 00:23:56,500 Permítanme presentarles a Jason. 501 00:23:56,500 --> 00:23:57,950 >> JASON: Hola a todos. 502 00:23:57,950 --> 00:23:59,290 Mi nombre es Jason. 503 00:23:59,290 --> 00:24:03,540 Lamentablemente, yo fui a Harvard como estudiante. 504 00:24:03,540 --> 00:24:07,020 Eso va a cortarse fuera de la corriente real. 505 00:24:07,020 --> 00:24:09,870 >> Y ahora estoy aquí como un profesor de el departamento de ciencias de la computación. 506 00:24:09,870 --> 00:24:14,825 Y yo estoy ayudando a ejecutar el curso con Scaz, David y Andy. 507 00:24:14,825 --> 00:24:17,140 >> ANDY: Hola chicos. 508 00:24:17,140 --> 00:24:17,980 Andy de mi nombre. 509 00:24:17,980 --> 00:24:21,992 Yo soy en realidad el único Yale estudiante en el escenario ahora. 510 00:24:21,992 --> 00:24:25,464 >> [Aplausos] 511 00:24:25,464 --> 00:24:29,440 512 00:24:29,440 --> 00:24:31,770 >> Estoy en Berkeley College, originalmente de Solon, Ohio. 513 00:24:31,770 --> 00:24:35,240 514 00:24:35,240 --> 00:24:37,930 Y yo era uno de esos niños donde, cuando llegué a la Universidad de Yale, 515 00:24:37,930 --> 00:24:42,030 Realmente pensé que yo nunca lo haría tiene que mirar a un número cada vez más. 516 00:24:42,030 --> 00:24:46,240 Y entonces me di cuenta de que necesitaba tanto la ciencia como QR créditos para graduarse. 517 00:24:46,240 --> 00:24:51,340 Y así mi primavera estudiante de primer año, tomé una clase, un CS, introducción clase CS aquí 518 00:24:51,340 --> 00:24:52,230 en Yale. 519 00:24:52,230 --> 00:24:54,710 Yo estaba como, esto es como realmente muy bien. 520 00:24:54,710 --> 00:25:01,330 >> Y mientras que en realidad terminó declarando Como los asuntos globales importantes, las habilidades 521 00:25:01,330 --> 00:25:04,910 Aprendí en CS y programación son tan aplicables a cualquier campo 522 00:25:04,910 --> 00:25:05,970 usted elige hacer. 523 00:25:05,970 --> 00:25:09,770 Y el personal aquí en Yale, hemos sido tan duro en el trabajo 524 00:25:09,770 --> 00:25:10,800 para prepararse para ustedes. 525 00:25:10,800 --> 00:25:13,410 Y nosotros esperamos ver todo en las secciones y oficinas horas. 526 00:25:13,410 --> 00:25:14,874 Así que sí. 527 00:25:14,874 --> 00:25:18,178 >> [Aplausos] 528 00:25:18,178 --> 00:25:19,297 529 00:25:19,297 --> 00:25:20,380 DAVID J. MALAN: Gracias. 530 00:25:20,380 --> 00:25:22,940 Así que antes de que empezara la clase, tuvimos la oportunidad 531 00:25:22,940 --> 00:25:25,660 caminar por el campus con un teléfono celular y tomar 532 00:25:25,660 --> 00:25:30,530 algunos selfies en forma de video de verdad mi primera gira por el campus de Yale aquí. 533 00:25:30,530 --> 00:25:35,420 Y por lo que pensamos que nos gustaría compartir una áspera corte de exactamente esto como Scaz y Andy 534 00:25:35,420 --> 00:25:37,970 y Jason me llevó por el campus. 535 00:25:37,970 --> 00:25:43,662 536 00:25:43,662 --> 00:25:44,328 [REPRODUCCIÓN DE VÍDEO] 537 00:25:44,328 --> 00:25:47,322 [SIRENAS] 538 00:25:47,322 --> 00:25:49,318 -David. 539 00:25:49,318 --> 00:25:50,132 -Bienvenido A Yale. 540 00:25:50,132 --> 00:25:50,840 -Me alegro de verte. 541 00:25:50,840 --> 00:25:52,410 -Me alegro de verte. 542 00:25:52,410 --> 00:25:53,340 -¿Podemos Ir en un viaje? 543 00:25:53,340 --> 00:25:56,845 -Vamos A ir en un tour. 544 00:25:56,845 --> 00:25:57,523 Visita -road. 545 00:25:57,523 --> 00:25:59,106 -Este Signo ha estado allí por un tiempo. 546 00:25:59,106 --> 00:26:00,200 -Whah, CS50. 547 00:26:00,200 --> 00:26:02,978 548 00:26:02,978 --> 00:26:05,293 >> -Hurry! 549 00:26:05,293 --> 00:26:08,970 Vamos vamos vamos vamos. 550 00:26:08,970 --> 00:26:12,340 Usted debería [inaudible] Harkness Tower. 551 00:26:12,340 --> 00:26:13,850 >> -Y Vimos que un par de veces. 552 00:26:13,850 --> 00:26:16,760 553 00:26:16,760 --> 00:26:20,155 >> [Aplausos] 554 00:26:20,155 --> 00:26:21,130 555 00:26:21,130 --> 00:26:22,890 >> -Mira Hacia fuera para la moto! 556 00:26:22,890 --> 00:26:24,500 Ahh! 557 00:26:24,500 --> 00:26:25,030 Hola Frank. 558 00:26:25,030 --> 00:26:26,314 >> -¿Qué Pasa, muchachos? 559 00:26:26,314 --> 00:26:26,855 -¿Como estas? 560 00:26:26,855 --> 00:26:28,474 -Me alegro de verte. 561 00:26:28,474 --> 00:26:29,390 -Bienvenido Al video. 562 00:26:29,390 --> 00:26:32,270 No actúes demasiado excitado. 563 00:26:32,270 --> 00:26:34,502 >> -Me Encanta Silliman. 564 00:26:34,502 --> 00:26:36,430 Ahh! 565 00:26:36,430 --> 00:26:39,780 >> -Ha Pasado cerca de tres horas desde Jason tenía helado y Nutella. 566 00:26:39,780 --> 00:26:43,189 Así que tenemos que parar de vuelta en Silliman para un poco. 567 00:26:43,189 --> 00:26:45,137 >> -No Es incluso [inaudible] sin embargo, sólo el hecho de 568 00:26:45,137 --> 00:26:47,270 que tienen aquí es tan increíble. 569 00:26:47,270 --> 00:26:49,830 Amigo, hay Nutella en cada comida. 570 00:26:49,830 --> 00:26:51,830 >> -No Fue el año pasado también. 571 00:26:51,830 --> 00:26:54,220 >> -Sí. 572 00:26:54,220 --> 00:26:56,440 >> -Dile mucho acerca de Yale hasta ahora. 573 00:26:56,440 --> 00:26:58,485 Pero yo ahora que TD allá. 574 00:26:58,485 --> 00:26:59,860 Y eso es considerado fuera de la escuela. 575 00:26:59,860 --> 00:27:03,659 >> -Aquí Tenemos la arquitectura gótica. 576 00:27:03,659 --> 00:27:04,200 Mundialmente famoso. 577 00:27:04,200 --> 00:27:06,758 Tenemos una arquitectura más gótico. 578 00:27:06,758 --> 00:27:10,614 Y construcción, y arquitectura más gótico. 579 00:27:10,614 --> 00:27:11,114 Hola. 580 00:27:11,114 --> 00:27:15,470 Aquí es donde vamos a tener horario de oficina De martes a jueves en Hogwarts, 581 00:27:15,470 --> 00:27:16,922 como [inaudible]. 582 00:27:16,922 --> 00:27:20,620 583 00:27:20,620 --> 00:27:21,120 -Correcto. 584 00:27:21,120 --> 00:27:22,078 Eso es todo para la gira. 585 00:27:22,078 --> 00:27:24,030 Estamos en la Universidad de Yale de Facultad de Derecho, donde 586 00:27:24,030 --> 00:27:25,870 la conferencia de hoy está a punto de tener lugar. 587 00:27:25,870 --> 00:27:29,220 Vamos a la cabeza en. 588 00:27:29,220 --> 00:27:30,375 >> [FIN DE REPRODUCCIÓN] 589 00:27:30,375 --> 00:27:32,370 >> DAVID J. MALAN: Y eso nos trae aquí ahora. 590 00:27:32,370 --> 00:27:38,040 591 00:27:38,040 --> 00:27:40,770 Así que hasta el momento, hemos estado centrándose en pseudocódigo, 592 00:27:40,770 --> 00:27:42,430 que es esta sintaxis Inglés-como. 593 00:27:42,430 --> 00:27:45,030 No tiene ninguna especificación prescrita. 594 00:27:45,030 --> 00:27:47,030 Es sólo que utilizar algunos lenguaje intuitivo si 595 00:27:47,030 --> 00:27:48,950 quiero explicar lo que quieres hacer. 596 00:27:48,950 --> 00:27:52,270 >> Pero vamos a empezar ahora a la transición al código, ya que la mayoría de la gente diría. 597 00:27:52,270 --> 00:27:54,880 Pero más precisamente, algo conocido como código fuente. 598 00:27:54,880 --> 00:27:58,210 Este es el lenguaje que los humanos escriben que las computadoras ultimately-- 599 00:27:58,210 --> 00:28:00,780 posiblemente después de cierto número de steps-- entiende en última instancia 600 00:28:00,780 --> 00:28:02,530 con el fin de saber cómo hacer algo. 601 00:28:02,530 --> 00:28:05,120 Que vio un atisbo de esto tal vez el miércoles. 602 00:28:05,120 --> 00:28:07,780 >> Este es un ejemplo que increíblemente, lo esperado 603 00:28:07,780 --> 00:28:10,220 cuando se ejecuta simplemente dice "hola mundo". 604 00:28:10,220 --> 00:28:13,510 Y está escrito en un lenguaje llamado C, que es muy similar sintácticamente 605 00:28:13,510 --> 00:28:15,676 a muchos otros idiomas que usted puede no saber, 606 00:28:15,676 --> 00:28:18,409 pero podría haber oído hablar de como Java, y C ++ y Python y Ruby, 607 00:28:18,409 --> 00:28:21,200 y similares, y de hecho, vamos a pasar gran parte del semestre usando C, 608 00:28:21,200 --> 00:28:23,530 y luego hacia el final de la semestre, construir sobre ella, 609 00:28:23,530 --> 00:28:25,446 y la introducción de cualquier número de otros idiomas. 610 00:28:25,446 --> 00:28:28,810 Entre ellos PHP y JavaScript, un lenguaje de base de datos denominado SQL. 611 00:28:28,810 --> 00:28:31,526 Pero con C, lo que tendremos esta comprensión de abajo hacia arriba 612 00:28:31,526 --> 00:28:33,900 exactamente cómo funcionan los ordenadores, lo que puede hacer con ellos, 613 00:28:33,900 --> 00:28:37,252 y cómo se pueden resolver los problemas tanto más eficazmente por este 614 00:28:37,252 --> 00:28:39,460 capas que discutimos el miércoles, y de pie 615 00:28:39,460 --> 00:28:40,870 sobre los hombros de los demás. 616 00:28:40,870 --> 00:28:42,200 Pero más sobre esto más por venir. 617 00:28:42,200 --> 00:28:46,650 >> Hoy nos fijamos en un entorno sencillo, pero fundamentalmente idéntica una 618 00:28:46,650 --> 00:28:49,970 entorno conocido como Scratch de nuestros amigos en el MIT Media Lab. 619 00:28:49,970 --> 00:28:52,570 Esta es una gráfica lenguaje de programación, Scratch, 620 00:28:52,570 --> 00:28:54,330 por el que usted puede arrastrar y soltar cosas que 621 00:28:54,330 --> 00:28:57,430 verá como piezas de un rompecabezas que Sólo enclavamiento si se hace 622 00:28:57,430 --> 00:28:59,872 sentido lógico o programático para hacerlo. 623 00:28:59,872 --> 00:29:02,330 Pero nos va a permitir a tener una conversación sobre todo 624 00:29:02,330 --> 00:29:04,604 de la misma programación fundamentos que algunos de ustedes 625 00:29:04,604 --> 00:29:06,520 podría saber ya, que muchos de ustedes no podría 626 00:29:06,520 --> 00:29:09,670 saber nada de sin tener empantanarse francamente, 627 00:29:09,670 --> 00:29:13,150 en el intelectualmente sintaxis poco interesante del punto y coma, 628 00:29:13,150 --> 00:29:14,950 y los paréntesis, y cita, y similares. 629 00:29:14,950 --> 00:29:16,910 Todo lo cual, a principios sucesivamente, son una distracción 630 00:29:16,910 --> 00:29:20,322 a lo que son interesantes e ideas realmente útiles. 631 00:29:20,322 --> 00:29:22,280 Así que echemos un rápido mirada al entorno 632 00:29:22,280 --> 00:29:24,180 aquí, así que usted sabe lo que le espera. 633 00:29:24,180 --> 00:29:28,060 Y, de hecho, entre los juegos que puede jugar son algunos programas escritos 634 00:29:28,060 --> 00:29:30,810 por los propios antiguos alumnos del CS50. 635 00:29:30,810 --> 00:29:36,200 Uno de ellos, a mí mismo, voy a estar éste escrita en la universidad para mí. 636 00:29:36,200 --> 00:29:39,030 >> Si pudiera tomar un voluntario que está dispuesto a jugar 637 00:29:39,030 --> 00:29:40,420 un juego por primera vez. 638 00:29:40,420 --> 00:29:40,920 Claro. 639 00:29:40,920 --> 00:29:41,690 Vamos arriba. 640 00:29:41,690 --> 00:29:42,565 ¿Cómo te llamas? 641 00:29:42,565 --> 00:29:43,372 >> AUDIENCIA: Angela. 642 00:29:43,372 --> 00:29:44,830 DAVID J. MALAN: Angela, vamos para arriba. 643 00:29:44,830 --> 00:29:47,220 Así rasguño ha estado fuera por un par de años. 644 00:29:47,220 --> 00:29:49,960 Y cuando estaba en la escuela de posgrado, Estaba cruz registrados en el MIT, 645 00:29:49,960 --> 00:29:53,392 teniendo profesor Mitchel Resnick de curso sobre tecnologías educativas. 646 00:29:53,392 --> 00:29:56,350 Y estábamos entre los primeros los estudiantes en el mundo de realidad beta 647 00:29:56,350 --> 00:29:57,120 Rasguño prueba. 648 00:29:57,120 --> 00:30:00,090 Y mi proyecto era lo que Angela ahora se ha ofrecido amablemente 649 00:30:00,090 --> 00:30:02,060 a obra llamada oscartime. 650 00:30:02,060 --> 00:30:04,507 >> Así que voy a seguir adelante y haga doble clic en el icono de aquí. 651 00:30:04,507 --> 00:30:07,590 Se va a abrir una programación entorno que pronto vamos a sumergirnos en. 652 00:30:07,590 --> 00:30:09,720 Voy a pantalla completa por Angela, aquí. 653 00:30:09,720 --> 00:30:12,490 Voy a golpear el verde bandera en un momento. 654 00:30:12,490 --> 00:30:15,130 Y luego un todo mucha basura va a caer del cielo. 655 00:30:15,130 --> 00:30:17,830 Y usted va a utilizar el ratón aquí para arrastrar y soltar realidad 656 00:30:17,830 --> 00:30:20,169 la basura en los botes de basura de Oscar. 657 00:30:20,169 --> 00:30:23,210 Así que si quieres seguir adelante y haga clic la bandera verde, el juego comenzará. 658 00:30:23,210 --> 00:30:26,890 >> [REPRODUCCIÓN DE MÚSICA] 659 00:30:26,890 --> 00:30:29,980 >> Oh, me encanta la basura. 660 00:30:29,980 --> 00:30:34,840 Cualquier cosa sucia o sucio o polvoriento. 661 00:30:34,840 --> 00:30:39,300 Cualquier cosa irregular o podrida, u oxidado. 662 00:30:39,300 --> 00:30:43,155 Sí, me encanta la basura. 663 00:30:43,155 --> 00:30:45,530 Si realmente quieres ver algo de mala calidad, mira esto. 664 00:30:45,530 --> 00:30:49,570 Tengo aquí una zapatilla de deporte eso es hecho jirones y desgastadas. 665 00:30:49,570 --> 00:30:53,750 Está todo lleno de agujeros bodegas y los cordones se rompen. 666 00:30:53,750 --> 00:30:57,590 Un regalo de mi madre el día en que nació. 667 00:30:57,590 --> 00:30:59,434 Me encanta porque es-- 668 00:30:59,434 --> 00:31:02,600 DAVID J. MALAN: --green estos días sólo ser tirar todo a la basura. 669 00:31:02,600 --> 00:31:04,312 Y así lo que uno de Propia did-- personal del CS50 670 00:31:04,312 --> 00:31:06,270 Jordan, que usted puede ser satisfacer hoy-- tiene realidad 671 00:31:06,270 --> 00:31:08,030 actualizado esto para los tiempos de hoy. 672 00:31:08,030 --> 00:31:10,800 Y así me permite abrirme un remix en lugar de Angela. 673 00:31:10,800 --> 00:31:13,600 Y vamos a jugar esto en vez de unos momentos donde ahora estás 674 00:31:13,600 --> 00:31:16,600 va a tener que decidir entre si tirar algo a la basura, 675 00:31:16,600 --> 00:31:19,050 o reciclar o compostar ella. 676 00:31:19,050 --> 00:31:21,280 Así que hay un poco de presión sobre usted para llegar 677 00:31:21,280 --> 00:31:28,040 este derecho en la parte delantera de su 392 a 497 compañeros de clase aquí en la sala, 678 00:31:28,040 --> 00:31:28,724 si tú pudieras. 679 00:31:28,724 --> 00:31:29,390 [REPRODUCCIÓN DE VÍDEO] 680 00:31:29,390 --> 00:31:32,540 [REPRODUCCIÓN DE MÚSICA] 681 00:31:32,540 --> 00:31:36,280 Oh me encanta basura. 682 00:31:36,280 --> 00:31:40,840 Cualquier cosa sucia o sucio o polvoriento. 683 00:31:40,840 --> 00:31:44,910 Cualquier cosa irregular o podrida o oxidado. 684 00:31:44,910 --> 00:31:48,830 Sí, me encanta la basura. 685 00:31:48,830 --> 00:31:51,480 >> Si realmente quieres ver algo de mala calidad, mira esto. 686 00:31:51,480 --> 00:31:55,540 Tengo aquí una zapatilla de deporte eso es hecho jirones y desgastadas. 687 00:31:55,540 --> 00:31:59,440 Está todo lleno de agujeros y los cordones se rompen. 688 00:31:59,440 --> 00:32:03,762 Un regalo de mi madre el día en que nació. 689 00:32:03,762 --> 00:32:07,630 Me encanta porque es basura. 690 00:32:07,630 --> 00:32:11,570 >> Oh, me encanta la basura. 691 00:32:11,570 --> 00:32:15,512 Cualquier cosa sucia, o sucio, o polvoriento. 692 00:32:15,512 --> 00:32:20,200 Cualquier cosa irregular o podrida o oxidado. 693 00:32:20,200 --> 00:32:23,856 Sí, me encanta la basura. 694 00:32:23,856 --> 00:32:26,246 He aquí algunas cosas más podrido. 695 00:32:26,246 --> 00:32:28,240 He aquí algunos newspaper-- 696 00:32:28,240 --> 00:32:28,889 >> [FIN DE REPRODUCCIÓN] 697 00:32:28,889 --> 00:32:30,680 DAVID J. MALAN: --¿Hay en realidad compostable. 698 00:32:30,680 --> 00:32:32,790 Pero gracias a nuestro voluntario, Angela. 699 00:32:32,790 --> 00:32:37,920 Tenemos una pelota anti-estrés para usted aquí también. 700 00:32:37,920 --> 00:32:38,790 Así que gracias. 701 00:32:38,790 --> 00:32:40,250 >> Así que éste fue escrito por mí. 702 00:32:40,250 --> 00:32:44,324 Pero ahora uno por un ex alumno real quien implementado esto, que es un juego. 703 00:32:44,324 --> 00:32:46,490 Todo en esta lengua llamada Scratch, que pronto 704 00:32:46,490 --> 00:32:47,850 pelar las capas de. 705 00:32:47,850 --> 00:32:49,940 Pero si hubiéramos como-- cómo sobre otro voluntario? 706 00:32:49,940 --> 00:32:50,440 Correcto. 707 00:32:50,440 --> 00:32:50,970 >> Vamos arriba. 708 00:32:50,970 --> 00:32:52,070 ¿Cómo te llamas? 709 00:32:52,070 --> 00:32:52,570 Vistazo? 710 00:32:52,570 --> 00:32:53,280 Lanza. 711 00:32:53,280 --> 00:32:54,082 Lance, vamos para arriba. 712 00:32:54,082 --> 00:32:54,790 Encantada de conocerte. 713 00:32:54,790 --> 00:32:56,170 Vamos de esta manera. 714 00:32:56,170 --> 00:32:59,940 Así que éste podría tener un tema familiar para algunos de ustedes. 715 00:32:59,940 --> 00:33:02,180 Pero verás también que no puede haber interactividad, 716 00:33:02,180 --> 00:33:05,242 por el cual usted podría ser en realidad el papel del personaje en movimiento. 717 00:33:05,242 --> 00:33:05,950 Encantada de conocerte. 718 00:33:05,950 --> 00:33:06,470 David. 719 00:33:06,470 --> 00:33:10,464 >> Yo os doy, Pikachu. 720 00:33:10,464 --> 00:33:12,380 Instrucciones quieras acerca de venir en la pantalla. 721 00:33:12,380 --> 00:33:16,070 Pero en fin, usted va a querer atrapar las cosas sabrosas, 722 00:33:16,070 --> 00:33:18,827 y evitar las bombas y otras cosas. 723 00:33:18,827 --> 00:33:19,910 Con los cursores enteramente. 724 00:33:19,910 --> 00:33:21,320 Así que pulse la barra espaciadora. 725 00:33:21,320 --> 00:33:21,820 -Pikachu. 726 00:33:21,820 --> 00:33:23,480 DAVID J. MALAN: Catch las cosas de la izquierda, 727 00:33:23,480 --> 00:33:24,938 no tomar las cosas a la derecha. 728 00:33:24,938 --> 00:33:27,576 729 00:33:27,576 --> 00:34:44,540 >> [REPRODUCCIÓN DE MÚSICA] 730 00:34:44,540 --> 00:34:46,332 >> Así que un último aquí. 731 00:34:46,332 --> 00:34:48,040 Si pudiéramos tener uno más voluntarios aquí. 732 00:34:48,040 --> 00:34:50,760 Pensamos que habíamos recrear algo de-- en el shirt-- amarilla 733 00:34:50,760 --> 00:34:53,110 a partir del miércoles. 734 00:34:53,110 --> 00:34:54,540 ¿Cuál es tu nombre? 735 00:34:54,540 --> 00:34:57,090 María, vamos a María. 736 00:34:57,090 --> 00:35:01,340 >> Y recuerdo el miércoles introdujimos la noción de binario, y las bombillas binarios. 737 00:35:01,340 --> 00:35:03,930 Esto es en realidad ahora una aplicación de esa misma interfaz 738 00:35:03,930 --> 00:35:07,360 que teníamos en el iPad con la luz bulbos, pero aquí procesada digitalmente. 739 00:35:07,360 --> 00:35:11,220 Y en lugar de hacer un esfuerzo ball-- placer conocerte, David. 740 00:35:11,220 --> 00:35:14,600 Trajimos algunas luz bombillas de Cambridge. 741 00:35:14,600 --> 00:35:18,650 >> Si puede, al hacer clic en los bombillas para convertirlos encendido y apagado, 742 00:35:18,650 --> 00:35:29,510 subir con el binario representación de, digamos, 256. 743 00:35:29,510 --> 00:35:32,500 Y verás en el medio, la cuenta corriente. 744 00:35:32,500 --> 00:35:33,690 Así que uno está. 745 00:35:33,690 --> 00:35:34,810 Así que el bit más a la izquierda está encendida. 746 00:35:34,810 --> 00:35:36,016 >> MARY: Sí, [inaudible] 747 00:35:36,016 --> 00:35:39,292 748 00:35:39,292 --> 00:35:41,280 >> DAVID J. MALAN: Bueno, así que tenemos sólo-- oh. 749 00:35:41,280 --> 00:35:42,780 Así que esta es la columna 128. 750 00:35:42,780 --> 00:35:44,460 Así que estamos hasta 128. 751 00:35:44,460 --> 00:35:46,769 Tenemos que llegar a 256. 752 00:35:46,769 --> 00:35:48,560 Y usted puede jugar en y fuera, no es gran cosa. 753 00:35:48,560 --> 00:35:53,700 O usted puede golpear ese 128 más veces si quieren. 754 00:35:53,700 --> 00:35:56,310 >> Muy bien, muy bien. 755 00:35:56,310 --> 00:35:58,090 24. 756 00:35:58,090 --> 00:35:59,790 Sí, cada vez más cerca. 757 00:35:59,790 --> 00:36:02,105 Más cerca! 758 00:36:02,105 --> 00:36:05,980 Oh, ¿cuál es el problema entonces? 759 00:36:05,980 --> 00:36:07,510 Entonces, ¿cuál es el problema? 760 00:36:07,510 --> 00:36:10,040 >> Entonces, ¿qué es lo que necesitamos ¿resuelve este problema? 761 00:36:10,040 --> 00:36:11,060 Así que necesitamos otro poco. 762 00:36:11,060 --> 00:36:12,770 Y esto es perfectamente razonable, en realidad, ¿no? 763 00:36:12,770 --> 00:36:15,800 Si desea contar a partir del número 1-2 a 3 a 4 a 5, 6, 7, 8, 9 764 00:36:15,800 --> 00:36:18,880 para rodar en realidad a 10, eres va a necesitar un bit adicional. 765 00:36:18,880 --> 00:36:21,240 Así que vamos a realidad rebobinar aquí, y llegar 766 00:36:21,240 --> 00:36:23,790 con-- que era, obviamente, pretende ser una puesta a punto. 767 00:36:23,790 --> 00:36:25,590 >> No se puede hacer 256 con sólo una bombilla. 768 00:36:25,590 --> 00:36:29,290 Así que ¿qué hay de simplemente el número 50? 769 00:36:29,290 --> 00:36:29,977 Número 50. 770 00:36:29,977 --> 00:36:34,550 771 00:36:34,550 --> 00:36:35,100 Excelente. 772 00:36:35,100 --> 00:36:39,050 Un gran aplauso de María y de ella también. 773 00:36:39,050 --> 00:36:41,840 Gracias. 774 00:36:41,840 --> 00:36:45,570 >> Así que este topic-- intencional como que era-- realmente repetirse. 775 00:36:45,570 --> 00:36:50,020 El valor más grande que pueda representar con ocho bits o un byte, 776 00:36:50,020 --> 00:36:51,750 es de hecho 256. 777 00:36:51,750 --> 00:36:55,770 Pero no si se inicia contando desde 0, como hemos 778 00:36:55,770 --> 00:36:58,060 parecen seguir haciendo por tener todos esos pedacitos de descanso. 779 00:36:58,060 --> 00:37:01,530 Pero ahora vamos a bucear en el subyacente implementación de este entorno, 780 00:37:01,530 --> 00:37:03,200 y desmenuzar algunas de estas ideas. 781 00:37:03,200 --> 00:37:06,350 >> Así que en un momento en que estamos a punto de ver una algunos diversos fundamentos de programación. 782 00:37:06,350 --> 00:37:08,080 El primero de los cuales vamos a llamar comunicado. 783 00:37:08,080 --> 00:37:09,360 Clasificar los verbos, si se quiere. 784 00:37:09,360 --> 00:37:09,960 Acciones. 785 00:37:09,960 --> 00:37:11,180 Las cosas que se deben hacer. 786 00:37:11,180 --> 00:37:13,430 >> Y en un momento verás bloques que se ven así. 787 00:37:13,430 --> 00:37:14,940 Diga "hola mundo", por ejemplo. 788 00:37:14,940 --> 00:37:16,330 O esperar un segundo. 789 00:37:16,330 --> 00:37:17,834 O jugar maullido sonido. 790 00:37:17,834 --> 00:37:20,500 Y de hecho el medio ambiente en que vamos a estar haciendo esto 791 00:37:20,500 --> 00:37:21,610 se llama Scratch. 792 00:37:21,610 --> 00:37:25,060 >> Y si me levanto sin arañazos precarga ningún código real, 793 00:37:25,060 --> 00:37:27,830 vamos a echar un rápido vistazo a este interfaz de usuario, por así decirlo. 794 00:37:27,830 --> 00:37:29,730 Los controles con los que interactúan. 795 00:37:29,730 --> 00:37:32,840 En la parte superior izquierda de aquí de la pantalla, debajo de los menús, 796 00:37:32,840 --> 00:37:34,650 tenemos el escenario, por así decirlo. 797 00:37:34,650 --> 00:37:36,550 Así Scratch es lo que vamos a llamar Sprite. 798 00:37:36,550 --> 00:37:37,520 Es un personaje. 799 00:37:37,520 --> 00:37:40,660 >> Y puede ser controlado por escribir programas en su contra. 800 00:37:40,660 --> 00:37:43,950 Y que va a ser capaz de moverse hacia arriba y hacia abajo ya la izquierda y la derecha en este entorno, 801 00:37:43,950 --> 00:37:46,075 no sólo moviendo el ratón, pero mediante programación. 802 00:37:46,075 --> 00:37:48,930 Puedo decirle a caminar derecho, a pie izquierda, arriba, abajo o similares. 803 00:37:48,930 --> 00:37:51,440 Y puedo introducir otra sprites o personajes también. 804 00:37:51,440 --> 00:37:54,616 >> De hecho, en el fondo aquí es donde verás tu lista de sprites. 805 00:37:54,616 --> 00:37:56,865 Por el momento, sólo tengo uno, pero puedo crear más, 806 00:37:56,865 --> 00:37:58,880 y van a aparecer exactamente ahí abajo. 807 00:37:58,880 --> 00:38:02,630 Así que si se rebobina por un momento, al igual que Oscartime-- por ejemplo, Oscar, 808 00:38:02,630 --> 00:38:04,590 a la izquierda, la basura puede, era un sprite. 809 00:38:04,590 --> 00:38:07,450 Y la cosa en el medio, la Papelera de reciclaje, fue otro elemento sprite. 810 00:38:07,450 --> 00:38:09,300 Y el cubo de compostaje fue otro elemento sprite. 811 00:38:09,300 --> 00:38:11,790 Y cada pedazo de basura o reciclables 812 00:38:11,790 --> 00:38:14,590 que caía desde el cielo es también un sprite, cada uno de los cuales 813 00:38:14,590 --> 00:38:16,150 fue programada individualmente. 814 00:38:16,150 --> 00:38:17,040 >> ¿Cómo se programa? 815 00:38:17,040 --> 00:38:20,180 Bueno, aquí a la derecha lado es el área de scripts. 816 00:38:20,180 --> 00:38:22,930 Y aquí es donde podemos arrastrar y soltar las piezas del rompecabezas. 817 00:38:22,930 --> 00:38:26,066 En una semana, que va a ser donde equivalentemente escribimos código 818 00:38:26,066 --> 00:38:28,940 con más de un teclado, pero para Hoy va a ser arrastrando y soltando 819 00:38:28,940 --> 00:38:31,680 piezas del rompecabezas, la paletas para el cual todos pueden 820 00:38:31,680 --> 00:38:33,190 se encuentran aquí en el centro. 821 00:38:33,190 --> 00:38:35,190 De hecho, en el centro aquí hay un montón 822 00:38:35,190 --> 00:38:37,910 de las categorías de rompecabezas piezas o bloques. 823 00:38:37,910 --> 00:38:42,500 Uno está relacionado con el movimiento, mira, sonido, una pluma que suben y bajan, 824 00:38:42,500 --> 00:38:43,860 datos, eventos controlan. 825 00:38:43,860 --> 00:38:45,654 No del todo seguro todavía lo que todo esto significa, 826 00:38:45,654 --> 00:38:47,820 pero verás que ellos han sido muy bien clasificado. 827 00:38:47,820 --> 00:38:50,680 Y para escribir un programa en Scratch, vamos a hacer exactamente eso. 828 00:38:50,680 --> 00:38:53,480 >> Voy a comenzar bajo Eventos y arrastran este de aquí. 829 00:38:53,480 --> 00:38:55,470 Cuando la bandera verde hizo clic. 830 00:38:55,470 --> 00:38:56,704 Ahora, ¿por que uno? 831 00:38:56,704 --> 00:38:59,120 Bueno recordar que nuestros voluntarios se acercó, lo primero que 832 00:38:59,120 --> 00:39:02,017 o lo que hicieron fue hacer clic en ese verde bandera en la esquina superior derecha. 833 00:39:02,017 --> 00:39:03,600 Y eso sólo significa iniciar el programa. 834 00:39:03,600 --> 00:39:06,560 >> Así que cuando ese evento ocurre, ¿qué es lo que quiero hacer? 835 00:39:06,560 --> 00:39:10,070 Voy a pasar por debajo de las miradas, y yo voy a hacer "saludar". 836 00:39:10,070 --> 00:39:14,000 Y yo voy a cambiar esto y decir algo como "hola Yale." 837 00:39:14,000 --> 00:39:16,970 Y ahora me voy a enfocar salir, haga clic en la bandera verde, 838 00:39:16,970 --> 00:39:19,050 y listo, he escrito un programa. 839 00:39:19,050 --> 00:39:20,990 No todo es tan emocionante por el momento, pero esto 840 00:39:20,990 --> 00:39:23,195 es exactamente donde cada de los que comenzó autor, 841 00:39:23,195 --> 00:39:25,740 ambos con Pikachu y el bombillas binarios y oscartime, 842 00:39:25,740 --> 00:39:26,890 y así muchos más ejemplos. 843 00:39:26,890 --> 00:39:29,150 >> Empiezas super simple, y entonces empiezas a capa, 844 00:39:29,150 --> 00:39:31,046 y añadir características y funcionalidad. 845 00:39:31,046 --> 00:39:32,920 Entonces, ¿qué son estas capas va a consistir? 846 00:39:32,920 --> 00:39:36,086 Bueno, más allá de las declaraciones, también vamos a tener las cosas que son poco más fancily 847 00:39:36,086 --> 00:39:38,910 llamada de Boole Expresiones, después de que alguien llamado Bool. 848 00:39:38,910 --> 00:39:42,820 Y una expresión booleana es simplemente una expresión que es verdadero o falso, 849 00:39:42,820 --> 00:39:45,740 sí o no, 1 o 0. 850 00:39:45,740 --> 00:39:47,480 >> Cualquier polos opuestos como esas. 851 00:39:47,480 --> 00:39:48,902 Es verdadero o no. 852 00:39:48,902 --> 00:39:51,360 Pero también vamos a ver los que podría tener este aspecto. 853 00:39:51,360 --> 00:39:52,925 Así, por ejemplo, es el ratón? 854 00:39:52,925 --> 00:39:54,550 Son una especie de preguntas, si se quiere. 855 00:39:54,550 --> 00:39:57,650 >> El ratón es ya sea hacia abajo, cierto o no lo es, falso. 856 00:39:57,650 --> 00:39:59,990 1 o 0, si se quiere, tiende a ser la asignación. 857 00:39:59,990 --> 00:40:01,740 Cierto es 1, falso es 0. 858 00:40:01,740 --> 00:40:03,740 Bueno ¿qué pasa con menos de esto? 859 00:40:03,740 --> 00:40:05,400 O eso, es que esto sea menos que esto? 860 00:40:05,400 --> 00:40:06,650 Esa es una pregunta de tipo. 861 00:40:06,650 --> 00:40:09,140 >> Y si se pone de dos números en allí, ya sea x 862 00:40:09,140 --> 00:40:12,010 va a ser menor que y o igual a y, o mayor que y, 863 00:40:12,010 --> 00:40:14,635 pero este bloque vamos a ver, es sólo va a responder a la pregunta, 864 00:40:14,635 --> 00:40:15,810 es que esto sea menos que eso? 865 00:40:15,810 --> 00:40:17,650 También podríamos ver algo como esto. 866 00:40:17,650 --> 00:40:18,790 Tocar punteros del ratón. 867 00:40:18,790 --> 00:40:21,610 Así que en Scratch, usted puede pedir la cuestión, es el Sprite 868 00:40:21,610 --> 00:40:22,800 tocar el puntero del ratón? 869 00:40:22,800 --> 00:40:26,040 Es decir, es la que asoma el cursor por encima del tope, o su equivalente? 870 00:40:26,040 --> 00:40:28,100 >> Veremos cosas anding juntos. 871 00:40:28,100 --> 00:40:30,970 Puede hacer dos preguntas, y asegúrese de que los dos 872 00:40:30,970 --> 00:40:34,920 dar sí o respuestas verdaderas antes tomar la decisión de hacer algo. 873 00:40:34,920 --> 00:40:36,709 Pero entonces, ¿cómo tomar decisiones? 874 00:40:36,709 --> 00:40:38,000 Bueno, tenemos estas condiciones. 875 00:40:38,000 --> 00:40:40,041 >> Y vimos esto en nuestra ejemplo de la guía telefónica. 876 00:40:40,041 --> 00:40:41,900 Mirando hacia la izquierda o adecuado para Mike Smith. 877 00:40:41,900 --> 00:40:45,140 Y en la condición, hacer algo potencialmente, 878 00:40:45,140 --> 00:40:47,240 si una expresión booleana es verdadera. 879 00:40:47,240 --> 00:40:48,720 >> Y, en efecto, observe las formas ahora. 880 00:40:48,720 --> 00:40:52,250 Hay un marcador de posición en este momento en posiciones elevadas donde podemos fit-- 881 00:40:52,250 --> 00:40:54,532 si retrocederá un slide-- esa forma. 882 00:40:54,532 --> 00:40:55,740 No es exactamente el mismo tamaño. 883 00:40:55,740 --> 00:40:58,400 Y de hecho, verás que Rasguño cambia el tamaño de las cosas de forma dinámica 884 00:40:58,400 --> 00:41:01,479 para encajar las piezas del rompecabezas, pero el forma es lo importante. 885 00:41:01,479 --> 00:41:03,270 Esta cosa parece que, y de hecho es 886 00:41:03,270 --> 00:41:05,410 aproximadamente la misma forma que debe encajar allí. 887 00:41:05,410 --> 00:41:09,520 Y si queremos hacer algo de esta manera o de esa manera, si de lo contrario, 888 00:41:09,520 --> 00:41:12,080 tenemos este rompecabezas pieza en Rasguño también. 889 00:41:12,080 --> 00:41:17,450 >> Ahora suponga que desea hacer si, más si, o de lo contrario. 890 00:41:17,450 --> 00:41:20,120 En otras palabras, una de tres vías tenedor en la carretera. 891 00:41:20,120 --> 00:41:22,656 Bueno, ¿qué puede hacer usted con sólo echar un vistazo a esto? 892 00:41:22,656 --> 00:41:25,030 Puedo tomar esta pieza del rompecabezas, y no parece encajar, 893 00:41:25,030 --> 00:41:27,670 pero de nuevo, Scratch va para cambiar el tamaño muy bien para nosotros. 894 00:41:27,670 --> 00:41:29,940 Podría empezar a capa estas cosas juntas. 895 00:41:29,940 --> 00:41:32,900 >> Así que ahora tengo una de tres vías tenedor si esto es cierto, hacer esto. 896 00:41:32,900 --> 00:41:36,560 Porque si esta otra cosa es cierta, ir por este camino, de lo contrario va esta otra manera. 897 00:41:36,560 --> 00:41:39,200 Y en El Muppet Movie, la tenedor en la carretera, por así decirlo, 898 00:41:39,200 --> 00:41:42,610 entre Yale o Stanford, fue exactamente eso, sólo dos condiciones. 899 00:41:42,610 --> 00:41:45,190 O bien ir por este camino, de lo contrario ir en esa dirección. 900 00:41:45,190 --> 00:41:46,940 >> Bueno, también bucles de existir en la programación. 901 00:41:46,940 --> 00:41:49,100 Y hemos utilizado estos ya en clase y en el código de pseudocódigo, 902 00:41:49,100 --> 00:41:51,060 y seguramente en los Programas de Scratch para siempre. 903 00:41:51,060 --> 00:41:53,730 Arañazos tiene esta pieza del rompecabezas que sólo va a dejar que hagas algo para siempre. 904 00:41:53,730 --> 00:41:55,688 Y a veces uno quiere hacer algo para siempre. 905 00:41:55,688 --> 00:41:58,810 No es necesariamente un error, es porque quieres un reloj para seguir adelante, 906 00:41:58,810 --> 00:42:00,730 o un juego para seguir jugando. 907 00:42:00,730 --> 00:42:04,800 O bien, puede especificar un número finito de pasos, ya que con este bloque de repetir aquí, 908 00:42:04,800 --> 00:42:06,550 que se repita algo 10 veces. 909 00:42:06,550 --> 00:42:08,560 Podemos establecer variables, pronto veremos. 910 00:42:08,560 --> 00:42:12,300 Y con las variables, similar en espíritu al álgebra, como x o y o z. 911 00:42:12,300 --> 00:42:16,390 Es algo simbólico que puede almacenar algún valor, alguna pieza de información, 912 00:42:16,390 --> 00:42:18,320 que es posible que desee recordar para más adelante. 913 00:42:18,320 --> 00:42:21,080 >> Mejor ejemplo de esto podría ser un juego donde usted tiene una cuenta, 914 00:42:21,080 --> 00:42:22,080 al igual que en Pikachu. 915 00:42:22,080 --> 00:42:25,180 ¿Cuántos pedazos de torta y qué sé yo qué coges? 916 00:42:25,180 --> 00:42:29,340 Bueno, eso podría ser una variable llamado puntuación que comienza en 0. 917 00:42:29,340 --> 00:42:32,400 Y entonces cada vez que atrapó un pedazo de la torta o dulces, o similares, 918 00:42:32,400 --> 00:42:33,720 que se incrementa. 919 00:42:33,720 --> 00:42:35,990 Se se agrega a uno a la vez. 920 00:42:35,990 --> 00:42:38,450 Y las tiendas por lo que una variable de un pieza de información así. 921 00:42:38,450 --> 00:42:41,450 Luego está matrices, y vendremos de nuevo a ellos en una semana o dos veces, 922 00:42:41,450 --> 00:42:44,900 pero una matriz es como una especie de inventario o una mochila, en el interior 923 00:42:44,900 --> 00:42:46,940 de los cuales usted puede poner las cosas virtuales. 924 00:42:46,940 --> 00:42:49,852 Te permite almacenar más de una pieza de información. 925 00:42:49,852 --> 00:42:51,810 Y eso podría ser útil si en el juego, eres 926 00:42:51,810 --> 00:42:53,630 especie de caminar alrededor recoger las cosas. 927 00:42:53,630 --> 00:42:55,879 Y tal vez desea mantener todos esos pedazos de torta 928 00:42:55,879 --> 00:42:58,260 nada más, y no sólo comer uno tras otro. 929 00:42:58,260 --> 00:43:00,010 Y luego hay un construcción colombófilo vamos 930 00:43:00,010 --> 00:43:02,932 llegado a llamadas funciones o procedimientos. 931 00:43:02,932 --> 00:43:04,640 Y aunque vamos más rápido aquí, vamos a 932 00:43:04,640 --> 00:43:07,345 ver que se trata de un solución natural a los problemas 933 00:43:07,345 --> 00:43:08,470 que vamos encuentro. 934 00:43:08,470 --> 00:43:10,220 Como empiezan nuestros programas cada vez más grande que vamos a 935 00:43:10,220 --> 00:43:12,640 comenzar a notar patrones en el código que estamos escribiendo, 936 00:43:12,640 --> 00:43:14,556 las piezas del rompecabezas que estamos arrastrar y soltar. 937 00:43:14,556 --> 00:43:18,240 Y tan pronto como usted note que estás haciendo algo una y otra vez, o peor aún 938 00:43:18,240 --> 00:43:21,400 copiar y pegar la programación código que usted ha escrito, 939 00:43:21,400 --> 00:43:23,612 eso es probablemente una oportunidad para factorizar 940 00:43:23,612 --> 00:43:25,820 lo que mantiene la copia y pegar, y poniéndolo 941 00:43:25,820 --> 00:43:27,430 en algo que se llama una "función". 942 00:43:27,430 --> 00:43:29,690 Pero más en aquellos en mucho más detalle en poco tiempo. 943 00:43:29,690 --> 00:43:31,314 >> Y luego está características incluso más elegante. 944 00:43:31,314 --> 00:43:34,100 Para aquellos de ustedes más cómodo, o tomar APCS o equivalente, 945 00:43:34,100 --> 00:43:37,600 Rasguño realmente apoya cosas como hilos y eventos y mucho más. 946 00:43:37,600 --> 00:43:39,840 Así que darse cuenta de que tiene bastante alto techo, 947 00:43:39,840 --> 00:43:42,540 a pesar de que también es muy ampliamente accesible a la gente 948 00:43:42,540 --> 00:43:44,460 que nunca han programado antes. 949 00:43:44,460 --> 00:43:47,130 Así que de hecho, vamos a echar un vistazo en un programa simple o dos. 950 00:43:47,130 --> 00:43:49,920 >> Ya miramos cómo podría saludar con Scratch. 951 00:43:49,920 --> 00:43:52,800 Déjame ir por delante y abrir un pequeño programa más interesante 952 00:43:52,800 --> 00:43:54,100 que escribí con antelación. 953 00:43:54,100 --> 00:43:56,430 Y de este llamado Pet el Gato. 954 00:43:56,430 --> 00:43:58,954 Todos estos programas habrá disponible en la página web del CS50. 955 00:43:58,954 --> 00:43:59,870 De hecho, ya está ahí. 956 00:43:59,870 --> 00:44:01,190 >> Así que usted puede descargar ellos, y juegan con ellos, 957 00:44:01,190 --> 00:44:03,850 y con la de problemas 0, lo que también está en la página web del curso, 958 00:44:03,850 --> 00:44:05,516 es recomendable que caminar a través de estos. 959 00:44:05,516 --> 00:44:07,820 Y por otra parte, tenemos una número de vídeos walk-through 960 00:44:07,820 --> 00:44:10,951 línea en el que I y El equipo de CS50 verdaderamente caminar 961 00:44:10,951 --> 00:44:14,200 a través de cada uno de estos ejemplos en un mucho ritmo más lento, un remitible muy rápido, 962 00:44:14,200 --> 00:44:18,530 o ritmo rebobinable, de modo que usted puede caminar a través de estos en su tiempo libre también. 963 00:44:18,530 --> 00:44:20,330 Así que aquí está rasguño a la izquierda. 964 00:44:20,330 --> 00:44:22,920 He aquí un programa de la derecha que ya he pre-hechos. 965 00:44:22,920 --> 00:44:24,880 Así que permítanme zoom en esto. 966 00:44:24,880 --> 00:44:28,780 Y podría alguien en Inglés, sabiendo lo que ya sabes, a partir de ahora como 967 00:44:28,780 --> 00:44:31,650 a cómo funciona el principio, una especie de, digamos, en una frase de Inglés o de la pena, 968 00:44:31,650 --> 00:44:35,450 ¿qué hace este programa aparentemente hacer? 969 00:44:35,450 --> 00:44:36,836 >> Sí, en camisa naranja. 970 00:44:36,836 --> 00:44:40,804 >> AUDIENCIA: [inaudible] 971 00:44:40,804 --> 00:44:41,796 972 00:44:41,796 --> 00:44:44,980 >> DAVID J. MALAN: Sí, si su cursor está en el rasguño de gato, 973 00:44:44,980 --> 00:44:46,220 reproducir un sonido maullando. 974 00:44:46,220 --> 00:44:47,870 Pero notamos cómo expresamos eso. 975 00:44:47,870 --> 00:44:49,980 No hay al parecer una bucle de allí, para siempre. 976 00:44:49,980 --> 00:44:53,000 Y luego hay un condiciones, la expresión if. 977 00:44:53,000 --> 00:44:55,090 Y colectivamente, ¿qué significan esos? 978 00:44:55,090 --> 00:44:57,210 Significa este programa se acaba siempre corriendo, 979 00:44:57,210 --> 00:44:59,510 y que sólo siempre está esperando y ver y escuchar 980 00:44:59,510 --> 00:45:01,730 para mí para mover el cursor sobre el gato. 981 00:45:01,730 --> 00:45:04,810 >> Debido a que cada vez que hago esto, como usted propone, que va a hacer esto. 982 00:45:04,810 --> 00:45:06,475 Permítanme comenzar el programa. 983 00:45:06,475 --> 00:45:08,350 Nada parece ser pasando, notar cómo 984 00:45:08,350 --> 00:45:10,152 se puso de relieve ahora en una línea amarilla. 985 00:45:10,152 --> 00:45:11,360 Eso sólo significa que se está ejecutando. 986 00:45:11,360 --> 00:45:13,770 Y porque hay un para siempre lazo, todavía en funcionamiento. 987 00:45:13,770 --> 00:45:19,610 >> Así que permítanme muevo el cursor sobre Scratch. [MAULLIDO] [MAULLIDO] Y si me mudo si fuera poco, 988 00:45:19,610 --> 00:45:25,444 [MAULLIDO] ahora que se detenga, pero el programa de Aún corriendo. [MAULLIDO] Y así, adorable. 989 00:45:25,444 --> 00:45:28,550 [MAULLIDO] Así que vamos a abrir un poco más avanzado 990 00:45:28,550 --> 00:45:32,620 ejemplo llamada No acaricie el Gato. 991 00:45:32,620 --> 00:45:35,805 >> Y ahora vamos a ver qué que sucede aquí. Meowing [MAULLIDO]. 992 00:45:35,805 --> 00:45:39,297 Así que es un poco en piloto automático, si se quiere. 993 00:45:39,297 --> 00:45:39,880 --pet el gato. 994 00:45:39,880 --> 00:45:42,820 Me pregunto porque. 995 00:45:42,820 --> 00:45:45,389 [ROAR] [MAULLIDO] Entonces, ¿cómo funciona? 996 00:45:45,389 --> 00:45:47,930 Bueno, usted puede tipo de razón a través de él de manera intuitiva, tal vez. 997 00:45:47,930 --> 00:45:49,346 >> Pero vamos a ver el código real. 998 00:45:49,346 --> 00:45:51,819 Así que de nuevo, cuando la bandera verde se hace clic, hacer esto para siempre. 999 00:45:51,819 --> 00:45:53,110 ¿Qué es lo que quieres hacer para siempre? 1000 00:45:53,110 --> 00:45:56,150 Bueno, si conmovedora ratón puntero, entonces el juego 1001 00:45:56,150 --> 00:46:00,270 un sonido que al parecer llama León 5, eso es dentro de este proyecto, de lo contrario 1002 00:46:00,270 --> 00:46:03,010 jugar maullido sonido, y luego esperar dos segundos, por lo que 1003 00:46:03,010 --> 00:46:04,510 que no está maullando sin cesar. 1004 00:46:04,510 --> 00:46:07,650 De hecho, usted puede comenzar muy rápidamente para molestar a ti mismo y tus compañeros de piso. 1005 00:46:07,650 --> 00:46:08,690 >> Vamos a quitar este bloque. 1006 00:46:08,690 --> 00:46:10,580 Y note lo que es bueno de Scratch. 1007 00:46:10,580 --> 00:46:13,070 Las cosas simplemente especie de arrastre y soltar y el enclavamiento. 1008 00:46:13,070 --> 00:46:14,980 Así que de nuevo, crece a llenar lo que quieres. 1009 00:46:14,980 --> 00:46:20,118 Pero si me quito esto, y luego exitosa obra, [ORDENADOR BLIP SONIDO] 1010 00:46:20,118 --> 00:46:22,904 >> --es una especie de tropezar sí, porque es, literalmente, 1011 00:46:22,904 --> 00:46:23,820 haciendo lo que estoy diciendo. 1012 00:46:23,820 --> 00:46:27,080 Se está diciendo siempre jugar a este sonido, pero Yo no estoy dando la oportunidad de terminar. 1013 00:46:27,080 --> 00:46:28,205 Y por lo que sería un error. 1014 00:46:28,205 --> 00:46:30,700 Y es por eso que tuvimos esta cosa de aquí ahora. 1015 00:46:30,700 --> 00:46:34,030 Así que vamos a realmente empezar desde scratch-- especie de juego de palabras poco intended-- 1016 00:46:34,030 --> 00:46:36,450 en el que ahora tenemos el movimiento gato. 1017 00:46:36,450 --> 00:46:38,130 >> Así que me voy a hacer esto sobre la marcha. 1018 00:46:38,130 --> 00:46:40,910 Voy a hacer un zoom aquí, sólo que me empezó en Eventos. 1019 00:46:40,910 --> 00:46:42,000 Y bandera verde hizo clic. 1020 00:46:42,000 --> 00:46:43,410 Y hay otras maneras para iniciar los scripts. 1021 00:46:43,410 --> 00:46:44,920 Vamos a mantenerlo simple aquí. 1022 00:46:44,920 --> 00:46:48,049 >> Y ahora me voy a ir adelante y pasar por debajo de control. 1023 00:46:48,049 --> 00:46:50,590 Y de nuevo, si se olvida de donde las cosas están, simplemente haga clic en la vuelta, 1024 00:46:50,590 --> 00:46:52,048 y, finalmente, a encontrar de nuevo. 1025 00:46:52,048 --> 00:46:53,680 Así que lo que quiero hacer siempre lo que? 1026 00:46:53,680 --> 00:46:58,650 Quiero usar el bloque de movimiento que sé que existe, se mueve 10 pasos. 1027 00:46:58,650 --> 00:47:02,016 >> Así que vamos a ver qué pasa aquí si juego este juego. 1028 00:47:02,016 --> 00:47:03,390 Por suerte no va demasiado lejos. 1029 00:47:03,390 --> 00:47:05,190 Todavía puedo tipo de agarrarlo por la cola y tirar de él hacia atrás. 1030 00:47:05,190 --> 00:47:07,860 Pero el programa sigue funcionando, por lo que es una especie de lucha contra mí. 1031 00:47:07,860 --> 00:47:10,870 Pero sería un poco agradable si condicionalmente arreglar esto en el código. 1032 00:47:10,870 --> 00:47:12,800 >> Debido a que este es no-- En realidad esto es realmente 1033 00:47:12,800 --> 00:47:15,770 no es un juego divertido para cualquier persona de cualquier edad. 1034 00:47:15,770 --> 00:47:18,915 Así que vamos a tratar de solucionar este problema tener algún tipo de condiciones. 1035 00:47:18,915 --> 00:47:21,670 Así que me voy a ir bajo Control y, a continuación, si. 1036 00:47:21,670 --> 00:47:22,660 Me gusta esta idea. 1037 00:47:22,660 --> 00:47:27,470 Así que después de mover 10 pasos, si: déjame percibo donde estoy. 1038 00:47:27,470 --> 00:47:30,799 Voy a pasar por debajo de detección, y luego se ve que puedo ir aquí. 1039 00:47:30,799 --> 00:47:31,840 remar a los partidos de forma. 1040 00:47:31,840 --> 00:47:34,380 >> El tamaño no, pero es va a crecer para llenar. 1041 00:47:34,380 --> 00:47:35,984 Y ahora esto es un pequeño menú. 1042 00:47:35,984 --> 00:47:38,650 Y ahora ratón pointer-- no lo hago quieren el ratón, quiero que el borde. 1043 00:47:38,650 --> 00:47:41,700 Así Scratch es lo suficientemente inteligente como para saber cuando un sprite está tocando el borde. 1044 00:47:41,700 --> 00:47:44,360 ¿Qué es lo que quiero que haga realidad? 1045 00:47:44,360 --> 00:47:46,025 >> Déjame ir adelante y cambiar de marcha. 1046 00:47:46,025 --> 00:47:46,940 ¿Tu sabes que? 1047 00:47:46,940 --> 00:47:49,242 Voy a contar con él la vuelta. 1048 00:47:49,242 --> 00:47:51,200 Así que a los 15 grados no es realmente me va a ayudar. 1049 00:47:51,200 --> 00:47:53,990 Quiero que la vuelta e ir a otro lado. 1050 00:47:53,990 --> 00:47:57,740 >> Así que vamos a ver qué pasa aquí, si me golpeó Juega ahora. 1051 00:47:57,740 --> 00:48:01,520 OK, tipo de aspecto estúpido, pero que está haciendo exactamente lo que dije. 1052 00:48:01,520 --> 00:48:03,540 Y es que gira todo el sprite. 1053 00:48:03,540 --> 00:48:04,900 Ahora resulta que puedo arreglar esto. 1054 00:48:04,900 --> 00:48:06,691 Y yo no sé cómo para solucionar este problema al principio. 1055 00:48:06,691 --> 00:48:09,190 Yo como que tenía que futz alrededor y ver la mejor manera de hacer esto. 1056 00:48:09,190 --> 00:48:12,630 Pero si voy a-- vamos a ver, el movimiento. 1057 00:48:12,630 --> 00:48:14,050 Oh, me encontré con esto. 1058 00:48:14,050 --> 00:48:15,660 En realidad, Set Estilo Rotación. 1059 00:48:15,660 --> 00:48:18,431 Izquierda, derecha, o no rotar, o por todas partes. 1060 00:48:18,431 --> 00:48:19,930 Y resulta que es lo que quiero. 1061 00:48:19,930 --> 00:48:22,920 Y yo voy a poner esto no es mi lazo, porque yo no necesito fijar 1062 00:48:22,920 --> 00:48:24,487 el estilo rotación múltiples veces. 1063 00:48:24,487 --> 00:48:27,570 Voy ponerlo en la parte superior de la este programa de manera que se establece una vez, 1064 00:48:27,570 --> 00:48:28,670 y luego recuerda. 1065 00:48:28,670 --> 00:48:30,340 Y ahora voy a probar este nuevo. 1066 00:48:30,340 --> 00:48:32,520 Permítanme detenerme programa. 1067 00:48:32,520 --> 00:48:34,050 >> Y ahora que fija ese error. 1068 00:48:34,050 --> 00:48:35,700 Así que estoy iterativa mejorar en esto. 1069 00:48:35,700 --> 00:48:37,900 El programa es conseguir un poco más complejo y más grande, 1070 00:48:37,900 --> 00:48:40,810 pero me estoy tomando pasos de bebé por así decirlo, y bocados pequeños fuera del problema 1071 00:48:40,810 --> 00:48:42,010 para conseguir mejor y mejor. 1072 00:48:42,010 --> 00:48:43,260 Pero esto también, es una especie de cojos. 1073 00:48:43,260 --> 00:48:43,900 >> ¿Tu sabes que? 1074 00:48:43,900 --> 00:48:49,860 Pediría a alguien con una muy buena, voz espantosa como para llegar? 1075 00:48:49,860 --> 00:48:51,210 Alguien con una voz. 1076 00:48:51,210 --> 00:48:54,070 1077 00:48:54,070 --> 00:48:54,570 Uh, sí. 1078 00:48:54,570 --> 00:48:55,550 Vamos arriba. 1079 00:48:55,550 --> 00:48:57,990 En la camisa verde. 1080 00:48:57,990 --> 00:49:01,530 >> Así que resulta que hay alguna otra diversión cosas, la estética y sonidos por igual. 1081 00:49:01,530 --> 00:49:02,290 Aquí está el maullido. 1082 00:49:02,290 --> 00:49:04,000 Hago clic en la ficha Sonidos. 1083 00:49:04,000 --> 00:49:08,730 [MAULLIDO] No es el maullido. [MEOW MEOW] [MAULLIDO] --actually grabar algo 1084 00:49:08,730 --> 00:49:10,310 de nuestra propia aquí. 1085 00:49:10,310 --> 00:49:13,120 >> Así que vamos a hacer exactamente eso. 1086 00:49:13,120 --> 00:49:17,670 En lugar de utilizar este sonido gato, vamos a adelante aquí, y ¿cuál es tu nombre? 1087 00:49:17,670 --> 00:49:18,850 Nick, un placer conocerte. 1088 00:49:18,850 --> 00:49:19,350 Es David. 1089 00:49:19,350 --> 00:49:21,474 Así que en un momento, voy para golpear el botón de grabación. 1090 00:49:21,474 --> 00:49:23,240 Y si puedes simplemente gritar en el portátil, 1091 00:49:23,240 --> 00:49:26,140 "ouch", como si acaba de entrar en la pared, 1092 00:49:26,140 --> 00:49:28,180 que será muy apreciado. 1093 00:49:28,180 --> 00:49:29,660 1, 2. 1094 00:49:29,660 --> 00:49:31,470 >> NICK: ¡Ay! 1095 00:49:31,470 --> 00:49:32,470 DAVID J. MALAN: Awesome. 1096 00:49:32,470 --> 00:49:34,410 Y ahora se puede hacer un poco de edición aquí. 1097 00:49:34,410 --> 00:49:35,910 El ir a deshacerse de las partes tranquilas. 1098 00:49:35,910 --> 00:49:37,000 Y creo que eso es bueno. 1099 00:49:37,000 --> 00:49:37,690 Muchas gracias. 1100 00:49:37,690 --> 00:49:38,315 >> NICK: Placer. 1101 00:49:38,315 --> 00:49:43,277 1102 00:49:43,277 --> 00:49:45,110 DAVID J. MALAN: No tengo simplemente le cambió el nombre "ouch" 1103 00:49:45,110 --> 00:49:46,901 pero ahora me voy a volver a mis guiones. 1104 00:49:46,901 --> 00:49:49,810 Y fíjense en efecto, hay sonido aquí. 1105 00:49:49,810 --> 00:49:53,520 Y voy a seguir adelante y reproducir el sonido ouch, 1106 00:49:53,520 --> 00:49:56,991 y yo voy a hacer que si que está tocando solamente los bordes. 1107 00:49:56,991 --> 00:49:58,740 Y luego voy a tiene que dar la vuelta. 1108 00:49:58,740 --> 00:50:00,250 Así que vamos a ver lo que pasa aquí. 1109 00:50:00,250 --> 00:50:01,728 Vamos a pantalla completa. 1110 00:50:01,728 --> 00:50:02,394 [REPRODUCCIÓN DE VÍDEO] 1111 00:50:02,394 --> 00:50:03,790 -Ouch! 1112 00:50:03,790 --> 00:50:05,290 Ouch! 1113 00:50:05,290 --> 00:50:06,790 Ouch! 1114 00:50:06,790 --> 00:50:07,790 Ouch! 1115 00:50:07,790 --> 00:50:09,160 Ouch! 1116 00:50:09,160 --> 00:50:10,780 Ouch! 1117 00:50:10,780 --> 00:50:11,587 Ouch! 1118 00:50:11,587 --> 00:50:12,086 Ouch! 1119 00:50:12,086 --> 00:50:12,492 >> [FIN DE REPRODUCCIÓN] 1120 00:50:12,492 --> 00:50:14,490 >> DAVID J. MALAN: Entonces te das cuenta que estamos poniendo un poco de suerte. 1121 00:50:14,490 --> 00:50:17,110 Voy a tenerlo movimiento como 100 pasos a la vez. 1122 00:50:17,110 --> 00:50:21,790 El efecto de que ahora se va a ser-- [ORDENADOR GLITCH SOUND] Así 1123 00:50:21,790 --> 00:50:22,490 dentro de lo razonable. 1124 00:50:22,490 --> 00:50:25,470 Así que la oportunidad de refinar que más si realmente queremos. 1125 00:50:25,470 --> 00:50:27,340 >> Así que ahora vamos a introducir otro concepto. 1126 00:50:27,340 --> 00:50:30,660 Para dejarme ir en una sola llamada Cuenta de ovejas y el uso algo 1127 00:50:30,660 --> 00:50:31,610 llamado una variable. 1128 00:50:31,610 --> 00:50:34,700 Se trata de una pequeña oveja adorable, y He cambiado el traje por así decirlo. 1129 00:50:34,700 --> 00:50:37,450 Así que, aunque el valor por defecto es un gato, usted puede cargar, se puede dibujar, 1130 00:50:37,450 --> 00:50:40,020 usted puede hacer cualquier número de personajes en tu sprite. 1131 00:50:40,020 --> 00:50:43,740 He aquí un programa que es vamos a hacer lo que en Inglés? 1132 00:50:43,740 --> 00:50:47,110 >> Basado nuevamente el justo lo que sabe ahora. 1133 00:50:47,110 --> 00:50:48,230 ¿Qué hacer este programa? 1134 00:50:48,230 --> 00:50:50,740 1135 00:50:50,740 --> 00:50:53,500 Sí, va a contar. 1136 00:50:53,500 --> 00:50:55,842 Un número cada vez. 1137 00:50:55,842 --> 00:50:57,550 Tenemos al parecer, tienen este contador conjunto. 1138 00:50:57,550 --> 00:50:59,380 >> No sé lo que es eso, pero tal vez se trata de una variable. 1139 00:50:59,380 --> 00:51:00,740 Es sólo un contenedor, xo y. 1140 00:51:00,740 --> 00:51:04,290 Pero la palabra de contador es más descriptivo que x del matemático o y. 1141 00:51:04,290 --> 00:51:06,560 Así que podemos usar las palabras en inglés para las cosas. 1142 00:51:06,560 --> 00:51:08,490 Siempre, sólo significa seguir haciendo esto. 1143 00:51:08,490 --> 00:51:10,020 >> Diga mostrador. 1144 00:51:10,020 --> 00:51:11,270 Ahora, ¿dónde ha salido esto? 1145 00:51:11,270 --> 00:51:13,240 Bueno, resulta que contador es una variable. 1146 00:51:13,240 --> 00:51:15,645 Así que es sólo otro puzzle pieza que creó con antelación. 1147 00:51:15,645 --> 00:51:18,020 Y a pesar de que suceda de no ser la misma forma aquí, 1148 00:51:18,020 --> 00:51:20,540 normalmente dirías algo así como hola aquí. 1149 00:51:20,540 --> 00:51:23,610 >> También puedes arrastrar una variable de modo que eso es lo consigamos dijo. 1150 00:51:23,610 --> 00:51:26,170 Entonces espero un segundo, cambiar el contador en uno, 1151 00:51:26,170 --> 00:51:27,940 incrementándolo por la adición de uno. 1152 00:51:27,940 --> 00:51:32,407 De modo que el efecto neto es esta oveja conteo adorable. 1153 00:51:32,407 --> 00:51:33,615 A pesar de que está contando a sí mismo. 1154 00:51:33,615 --> 00:51:36,642 1155 00:51:36,642 --> 00:51:38,350 Ahora es muy rápido va a ser aburrido 1156 00:51:38,350 --> 00:51:40,900 porque él va a hacer esto de verdad para siempre, 1157 00:51:40,900 --> 00:51:44,240 pero eso es exactamente lo que el El diseño del programa de receta. 1158 00:51:44,240 --> 00:51:48,090 Vamos a tratar ahora otro ejemplo que aprovecha una variable. 1159 00:51:48,090 --> 00:51:51,140 Este llamado Hola Hola Hola, que no ser molesto rápidamente. 1160 00:51:51,140 --> 00:51:52,987 Ahora éste tiene dos guiones. 1161 00:51:52,987 --> 00:51:54,570 Y así, una vez más, estamos dando pasos de bebé. 1162 00:51:54,570 --> 00:51:57,236 >> Empezamos con algo súper pequeño, añadido a la misma, añadido a la misma. 1163 00:51:57,236 --> 00:51:59,750 Ahora quiero hacer algo aún más dinámico, 1164 00:51:59,750 --> 00:52:02,950 así que quiero estar escuchando para dos cosas distintas a la vez. 1165 00:52:02,950 --> 00:52:05,420 Así que a la izquierda, cuando bandera verde se hace clic, 1166 00:52:05,420 --> 00:52:08,100 Me puse una variable que escribí con antelación llamada silenciado. 1167 00:52:08,100 --> 00:52:09,700 Y yo arbitrariamente puse a 0. 1168 00:52:09,700 --> 00:52:13,290 Así arañazos no tiene verdadera y falsa, pero tiene 0 y 1. 1169 00:52:13,290 --> 00:52:15,270 >> Así que puede aproximarse a la misma idea. 1170 00:52:15,270 --> 00:52:21,110 Y luego para siempre, si la barra de espacio es presionado, a continuación, establezca la variable a 0. 1171 00:52:21,110 --> 00:52:21,810 O lo siento. 1172 00:52:21,810 --> 00:52:25,920 Si se pulsa el Espacio, y si silenciado, la variable, es 0, 1173 00:52:25,920 --> 00:52:29,950 a continuación, establecer silenciado a 1, otro conjunto silenciado a 0. 1174 00:52:29,950 --> 00:52:32,370 Esto parece algo así como estamos simplemente haciendo y deshaciendo el trabajo. 1175 00:52:32,370 --> 00:52:33,130 >> Pero ¿cuál es el efecto? 1176 00:52:33,130 --> 00:52:35,588 Cada vez que me golpeó la barra espaciadora, lo que pasa a mi variables 1177 00:52:35,588 --> 00:52:38,150 llamada silenciado, lógicamente? 1178 00:52:38,150 --> 00:52:39,100 Algo así consigue volteado. 1179 00:52:39,100 --> 00:52:41,035 Se cambia de 0 a 1, o de 1 a 0. 1180 00:52:41,035 --> 00:52:43,035 Así que tomó un par de cuadras para expresar eso, pero todo 1181 00:52:43,035 --> 00:52:47,280 Que estoy haciendo es alternar el estado de esta variable a 0 o 1, o 0 o 1 1182 00:52:47,280 --> 00:52:48,530 cada vez que me golpeó la barra espaciadora. 1183 00:52:48,530 --> 00:52:49,905 Ahora aquí, ¿qué está haciendo esto? 1184 00:52:49,905 --> 00:52:53,400 Siempre, si silencia es 0, así que si silenciado es falso. 1185 00:52:53,400 --> 00:52:57,910 Así que si no está silenciado, es el semántica allí, juegan sonido león marino, 1186 00:52:57,910 --> 00:53:00,810 y pensar hi hi hi para dos segundo, espere dos segundos. 1187 00:53:00,810 --> 00:53:02,710 Así cuenta ahora estos scripts son efectivamente 1188 00:53:02,710 --> 00:53:07,100 va a ejecutar en paralelo de modo que uno puede estar escuchando a una acción, el otro 1189 00:53:07,100 --> 00:53:09,010 para tomar una decisión sobre la base de esa acción. 1190 00:53:09,010 --> 00:53:10,655 Y puede hacer esto para siempre. 1191 00:53:10,655 --> 00:53:12,638 >> [LEÓN DE MAR BARKING] 1192 00:53:12,638 --> 00:53:14,852 >> [LEÓN DE MAR BARKING] 1193 00:53:14,852 --> 00:53:20,050 >> Se va a hacer esto para siempre y [LEÓN DE MAR BARKING] como yo acabo de hacer. 1194 00:53:20,050 --> 00:53:23,010 Y ahora está aún en marcha pero yo tengo "silenciado" el juego. 1195 00:53:23,010 --> 00:53:27,260 [LEÓN DE MAR BARKING] Y eso es todo este tipo hace ahora también. 1196 00:53:27,260 --> 00:53:28,660 >> Vamos a abrir otro ejemplo aquí. 1197 00:53:28,660 --> 00:53:31,840 Déjame ir a eventos, y ahora este adorable también. 1198 00:53:31,840 --> 00:53:34,130 Pero note que tiene dos sprites. 1199 00:53:34,130 --> 00:53:37,520 Así que no sólo dos guiones con de un sprite, sino dos sprites. 1200 00:53:37,520 --> 00:53:40,750 Y si hago clic en el chico de color azul como yo ya tienen, veo que como un programa 1201 00:53:40,750 --> 00:53:43,790 aquí que, literalmente, sólo dice esto, cuando recibo un evento, 1202 00:53:43,790 --> 00:53:45,620 decir "Polo" durante dos segundos. 1203 00:53:45,620 --> 00:53:48,460 >> Así que si alguna vez has jugado en una piscina, el juego de Marco Polo, 1204 00:53:48,460 --> 00:53:52,500 si el guión chico naranja es una indicación, al parecer, 1205 00:53:52,500 --> 00:53:57,380 cada vez que me golpeó la barra espaciadora, ¿cuál es el tipo de naranja va a hacer? 1206 00:53:57,380 --> 00:53:58,642 Él va a decir "Marco". 1207 00:53:58,642 --> 00:53:59,850 Y entonces este es un nuevo bloque. 1208 00:53:59,850 --> 00:54:02,409 No hemos visto esto antes, pero retransmitir un acontecimiento. 1209 00:54:02,409 --> 00:54:04,200 Y podría llamarlo nada evento que queremos. 1210 00:54:04,200 --> 00:54:06,033 >> Volveremos a este tal vez en poco tiempo. 1211 00:54:06,033 --> 00:54:08,410 Pero la difusión de un evento Es una manera para una Sprite 1212 00:54:08,410 --> 00:54:11,836 hablar con otro por esencialmente pasándolo a un mensaje. 1213 00:54:11,836 --> 00:54:12,960 No es un mensaje que se ve. 1214 00:54:12,960 --> 00:54:14,130 No es algo visual. 1215 00:54:14,130 --> 00:54:17,370 Es una especie de un mensaje ordenador que el otro chico está escuchando. 1216 00:54:17,370 --> 00:54:21,210 Porque de hecho, el chico de color azul, el recuerdo no tiene bandera verde cuando se hace clic. 1217 00:54:21,210 --> 00:54:23,290 >> El lugar tiene, cuando recibo un evento. 1218 00:54:23,290 --> 00:54:26,850 Cuando él se entregó esta nota en la clase, por así decirlo, debe decir "Polo". 1219 00:54:26,850 --> 00:54:30,200 Y por lo que el efecto neto es que cuando yo golpeó la bandera verde, no pasa nada. 1220 00:54:30,200 --> 00:54:34,940 Pero cuando llegué a la barra espaciadora, dice "Marco", él responde con "Polo". 1221 00:54:34,940 --> 00:54:38,350 Pero la única sprites estoy interactuar con es el naranja. 1222 00:54:38,350 --> 00:54:40,980 Así que esta es una forma de tipo de pasar mensajes entre sprites 1223 00:54:40,980 --> 00:54:43,210 y que ellos se comunican uno con el otro. 1224 00:54:43,210 --> 00:54:46,280 >> Ahora echemos un vistazo a una última uno aquí llamados hilos. 1225 00:54:46,280 --> 00:54:49,370 Y notar esto por jugarlo. 1226 00:54:49,370 --> 00:54:51,184 Así que estos son dos sprites. 1227 00:54:51,184 --> 00:54:52,600 El ave es una especie de volando alrededor. 1228 00:54:52,600 --> 00:54:53,310 Él está rebotando. 1229 00:54:53,310 --> 00:54:55,890 No hay "ouch", pero la misma idea. 1230 00:54:55,890 --> 00:54:58,230 >> Pero el gato parece muy inteligente. 1231 00:54:58,230 --> 00:55:01,010 ¿Cuál es el gato aparentemente haciendo? 1232 00:55:01,010 --> 00:55:03,430 Y esperar. 1233 00:55:03,430 --> 00:55:05,010 ¿Cuál es el gato aparentemente haciendo? 1234 00:55:05,010 --> 00:55:07,740 No se trata sólo de rebote. 1235 00:55:07,740 --> 00:55:09,860 >> Está siguiendo el ave. 1236 00:55:09,860 --> 00:55:13,920 Y así, al parecer, hay una manera con una combinación de bloques aquí-- 1237 00:55:13,920 --> 00:55:15,760 y vamos a ver al gato muy rápido. 1238 00:55:15,760 --> 00:55:20,270 Siempre, si tocar pájaro, luego jugar el León 4, sea lo que sea el sonido. 1239 00:55:20,270 --> 00:55:21,360 Hemos escuchado una vez. 1240 00:55:21,360 --> 00:55:25,431 De lo contrario, apuntar hacia pájaro, y mover un solo paso. 1241 00:55:25,431 --> 00:55:27,680 Ahora bien, el hecho de que es uno paso es lo que le da el pájaro 1242 00:55:27,680 --> 00:55:29,850 un poco de ventaja al principio, pero si en su lugar 1243 00:55:29,850 --> 00:55:32,980 hacer de este 10, por ejemplo, por lo que cada iteración del bucle que está 1244 00:55:32,980 --> 00:55:34,100 en movimiento 10 pasos de tiempo. 1245 00:55:34,100 --> 00:55:35,280 Por lo tanto más espacio. 1246 00:55:35,280 --> 00:55:36,650 Vamos a ver lo que sucede a continuación. 1247 00:55:36,650 --> 00:55:38,740 [LION ROAR] No todo lo que mucho mejor. 1248 00:55:38,740 --> 00:55:41,460 Así que ahora vamos a tratar de mejorar la a éstos un poco de forma iterativa, 1249 00:55:41,460 --> 00:55:43,330 y volver a la noción de una función. 1250 00:55:43,330 --> 00:55:46,580 >> Y, de hecho uno de los fundamentales comida para llevar del diseño de la clase. 1251 00:55:46,580 --> 00:55:49,560 No sólo la escritura de programas que funcionan y que son correctos, pero están bien 1252 00:55:49,560 --> 00:55:50,080 diseñado. 1253 00:55:50,080 --> 00:55:54,349 Y el diseño es mucho más subjetivo, y usted consigue mejor en el tiempo. 1254 00:55:54,349 --> 00:55:57,390 Pero vamos a tomar algunos pasos de bebé hacia comenzando con un programa que funciona, 1255 00:55:57,390 --> 00:55:59,310 absolutamente, pero no es muy bueno. 1256 00:55:59,310 --> 00:56:00,650 No está muy bien escrito. 1257 00:56:00,650 --> 00:56:03,830 >> Así que aquí hay un programa que hace esto. 1258 00:56:03,830 --> 00:56:08,060 Tos, tos, tos. 1259 00:56:08,060 --> 00:56:09,880 ¿Qué hace el programa parece? 1260 00:56:09,880 --> 00:56:11,330 Parece correcto para mí. 1261 00:56:11,330 --> 00:56:13,370 Está diciendo sofá por un segundo, entonces se espera. 1262 00:56:13,370 --> 00:56:14,515 >> Entonces dice de nuevo, entonces se espera. 1263 00:56:14,515 --> 00:56:16,056 Entonces dice de nuevo, entonces se espera. 1264 00:56:16,056 --> 00:56:18,770 Y entonces el programa implícitamente termina, porque no hay bucle. 1265 00:56:18,770 --> 00:56:21,325 Pero ¿por qué es un programa mal escrito? 1266 00:56:21,325 --> 00:56:22,950 Incluso si nunca has programado antes? 1267 00:56:22,950 --> 00:56:25,240 Al igual, lo frota la camino equivocado, tal vez aquí? 1268 00:56:25,240 --> 00:56:26,016 ¿Sí? 1269 00:56:26,016 --> 00:56:29,278 >> AUDIENCIA: [inaudible] 1270 00:56:29,278 --> 00:56:29,950 1271 00:56:29,950 --> 00:56:30,950 DAVID J. MALAN: Exactamente. 1272 00:56:30,950 --> 00:56:32,700 Estás repitiendo a ti mismo una y otra vez. 1273 00:56:32,700 --> 00:56:36,190 Y, literalmente, He copiado y pegado dos de esos bloques y otra vez. 1274 00:56:36,190 --> 00:56:39,237 Y eso es exactamente el tipo de cordura y comprueba que usted debe hacer. 1275 00:56:39,237 --> 00:56:39,820 Espera un minuto. 1276 00:56:39,820 --> 00:56:41,070 ¿Debo realmente estar haciendo esto? 1277 00:56:41,070 --> 00:56:43,610 Entonces, ¿qué es esto lo que es el solución obvia, tal vez? 1278 00:56:43,610 --> 00:56:44,680 Tienen algún tipo de lazo. 1279 00:56:44,680 --> 00:56:46,860 Y yo recuerdo no del todo lo que la pieza del rompecabezas es, 1280 00:56:46,860 --> 00:56:48,810 pero si miro el siguiente iteración aquí, 1281 00:56:48,810 --> 00:56:50,560 de hecho, no hay sólo el bucle para siempre, 1282 00:56:50,560 --> 00:56:52,560 no repetir un número de veces. 1283 00:56:52,560 --> 00:56:54,080 Y así he especificado tres. 1284 00:56:54,080 --> 00:56:57,839 Y ahora cuenta de lo mucho más apretada, ¿cómo mucho más sucinta este programa es. 1285 00:56:57,839 --> 00:56:59,630 Y en cierto sentido, ¿cómo mucho más fácil de mantener. 1286 00:56:59,630 --> 00:57:02,840 Si quiero cambiar la palabra de la tos a otra cosa, 1287 00:57:02,840 --> 00:57:07,530 como achoo, como si estuviera estornudos. 1288 00:57:07,530 --> 00:57:09,770 Entonces lo cambio en una lugar, y no tres. 1289 00:57:09,770 --> 00:57:12,050 Así que esto ya se siente como ligeramente mejor diseño. 1290 00:57:12,050 --> 00:57:14,610 Déjame tos lugar abierto 2, nuestro tercer ejemplo. 1291 00:57:14,610 --> 00:57:17,670 >> Observe como un científico de la computación, Empiezo a contar a 0, por lo general. 1292 00:57:17,670 --> 00:57:20,950 Ahora bien, esto se ve un poco más aterrador en primero, pero el efecto es el mismo. 1293 00:57:20,950 --> 00:57:22,590 Tos, tos, tos. 1294 00:57:22,590 --> 00:57:26,920 Pero lo que parece ser, fundamentalmente, nuevo en la parte superior del programa? 1295 00:57:26,920 --> 00:57:28,670 He quitado la palabra. 1296 00:57:28,670 --> 00:57:29,830 >> He quitado la espera. 1297 00:57:29,830 --> 00:57:32,370 ¿Y qué tengo yo conecté en su lugar? 1298 00:57:32,370 --> 00:57:32,890 Una función. 1299 00:57:32,890 --> 00:57:33,670 Un bloque de la tos. 1300 00:57:33,670 --> 00:57:35,410 Quiero decir, francamente, me parece clase de un idiota si no lo hacía solo 1301 00:57:35,410 --> 00:57:37,285 comenzar con el bloque eso es aparentemente llamado 1302 00:57:37,285 --> 00:57:38,894 "tos", si eso es todo lo que quiero que haga. 1303 00:57:38,894 --> 00:57:40,310 Pero eso no existe en Scratch. 1304 00:57:40,310 --> 00:57:43,396 Más bien me fui a la una de la paleta de llama Más Bloques aquí, 1305 00:57:43,396 --> 00:57:46,270 y me arrastro esta gran cosa púrpura aquí que me permite definir una función. 1306 00:57:46,270 --> 00:57:48,240 En esencia, me deja crear mi propio rompecabezas 1307 00:57:48,240 --> 00:57:51,280 pieza que se puede llamar cualquier cosa que yo queremos, que puede hacer lo que quiera, 1308 00:57:51,280 --> 00:57:52,360 pero le da un nombre. 1309 00:57:52,360 --> 00:57:57,050 Me da una nueva pieza del rompecabezas de color púrpura que ahora hace lo que le digo que haga. 1310 00:57:57,050 --> 00:58:01,060 Así que esta pieza púrpura aquí corresponde a este de aquí. 1311 00:58:01,060 --> 00:58:01,960 >> ¿Y qué hace? 1312 00:58:01,960 --> 00:58:03,930 Dice la tos para un segundos, y luego se espera. 1313 00:58:03,930 --> 00:58:07,330 Y ahora que he creado una especie de mi propia pieza del rompecabezas de encargo, 1314 00:58:07,330 --> 00:58:10,040 de manera que se comporta exactamente la misma manera. 1315 00:58:10,040 --> 00:58:11,130 Así que puedo seguir haciendo esto. 1316 00:58:11,130 --> 00:58:14,421 Y, de hecho, no va a haber más y más oportunidades para la modularización, 1317 00:58:14,421 --> 00:58:16,630 y para la estratificación, la complejidad en la parte superior de uno al otro. 1318 00:58:16,630 --> 00:58:18,547 Pero esta idea básica, de hecho en el problema dijo 0. 1319 00:58:18,547 --> 00:58:20,338 ¿Qué vas a el reto de hacer es 1320 00:58:20,338 --> 00:58:23,810 descargar Scratch, o simplemente usarlo en la web, y divertirse con ella. 1321 00:58:23,810 --> 00:58:26,056 Le daremos una serie de requisitos, que tiene un sonido, 1322 00:58:26,056 --> 00:58:27,430 y cierto número de piezas de un rompecabezas. 1323 00:58:27,430 --> 00:58:28,480 Pero que va a hacer exactamente esto. 1324 00:58:28,480 --> 00:58:31,771 Y te das cuenta de que vas a querer tomar algunos pasos de bebé en un principio, 1325 00:58:31,771 --> 00:58:33,690 hasta que el programa se hace cada vez más compleja. 1326 00:58:33,690 --> 00:58:36,010 Pero teniendo en cuenta este es el mejor manera que podía hacer esto? 1327 00:58:36,010 --> 00:58:39,210 ¿Puedo evitar este instinto tal vez, copiar y pegar? 1328 00:58:39,210 --> 00:58:41,850 >> Pero antes de problemas 0, y antes de levantar la sesión, 1329 00:58:41,850 --> 00:58:44,980 pensamos que sería mejor tomar uno más voluntarios si pudiéramos, 1330 00:58:44,980 --> 00:58:46,820 para un programa final esa es tal vez la más 1331 00:58:46,820 --> 00:58:49,150 ajuste en absoluto, dado lugar actual. 1332 00:58:49,150 --> 00:58:50,298 Baja. 1333 00:58:50,298 --> 00:58:51,234 Sí. 1334 00:58:51,234 --> 00:58:52,170 Sí. 1335 00:58:52,170 --> 00:58:53,431 ¿Cómo te llamas? 1336 00:58:53,431 --> 00:58:53,930 UH oh. 1337 00:58:53,930 --> 00:58:57,820 1338 00:58:57,820 --> 00:58:59,010 Eso está bien. 1339 00:58:59,010 --> 00:59:01,230 Ambos vienen abajo. 1340 00:59:01,230 --> 00:59:05,520 Y yo tengo se ocupará de esto de alguna manera dentro de ese próximos diez segundos. 1341 00:59:05,520 --> 00:59:06,550 Así que vamos hacia abajo. 1342 00:59:06,550 --> 00:59:08,370 Baja. 1343 00:59:08,370 --> 00:59:13,250 >> Déjame entrar en hasta aquí. 1344 00:59:13,250 --> 00:59:16,050 Vamos. 1345 00:59:16,050 --> 00:59:16,685 Correcto. 1346 00:59:16,685 --> 00:59:21,360 1347 00:59:21,360 --> 00:59:22,360 Vamos a ver aquí. 1348 00:59:22,360 --> 00:59:25,735 Así cuenta muy rápido aquí, si quieres venir en adelante. 1349 00:59:25,735 --> 00:59:28,650 1350 00:59:28,650 --> 00:59:29,926 >> Haremos dos rondas de esto. 1351 00:59:29,926 --> 00:59:30,800 ¿Y cual es tu nombre? 1352 00:59:30,800 --> 00:59:31,270 >> SABRINA: Sabrina. 1353 00:59:31,270 --> 00:59:32,060 >> DAVID J. MALAN: Sabrina y? 1354 00:59:32,060 --> 00:59:32,622 >> YING GEE: Ying Gee. 1355 00:59:32,622 --> 00:59:33,360 >> DAVID J. MALAN: Ying Gee. 1356 00:59:33,360 --> 00:59:34,276 Encantado de conocerte ambos. 1357 00:59:34,276 --> 00:59:34,970 David. 1358 00:59:34,970 --> 00:59:38,785 Así que nuestro último ejemplo aquí es llamado juego más difícil de Ivy. 1359 00:59:38,785 --> 00:59:41,160 Y por qué no tenemos que hagas Nivel 1, y usted hacen Nivel 2. 1360 00:59:41,160 --> 00:59:43,350 >> Y veremos qué tan lejos más allá de que en realidad vamos. 1361 00:59:43,350 --> 00:59:45,855 Escrito por un estudiante el año pasado, remezclado por mí 1362 00:59:45,855 --> 00:59:48,840 de manera que esto iría más bien en New Haven. 1363 00:59:48,840 --> 00:59:53,180 Y te doy un juego que va a involucrar a mover las flechas arriba y abajo, 1364 00:59:53,180 --> 00:59:55,771 y conseguir de Yale a la línea de meta. 1365 00:59:55,771 --> 00:59:56,270 Aquí vamos. 1366 00:59:56,270 --> 00:59:56,759 >> [REPRODUCCIÓN DE VÍDEO] 1367 00:59:56,759 --> 00:59:58,092 >> [MÚSICA - NFL EN FOX Theme Song] 1368 00:59:58,092 --> 00:59:59,369 1369 00:59:59,369 --> 01:00:01,160 [MÚSICA - MC HAMMER "U PUEDE NO TOQUE  ESTA"] 1370 01:00:01,160 --> 01:00:04,590 1371 01:00:04,590 --> 01:00:07,900 >> -U No puede tocar esto. 1372 01:00:07,900 --> 01:00:11,634 U no puede tocar esto. 1373 01:00:11,634 --> 01:00:14,252 No puede tocar esto. 1374 01:00:14,252 --> 01:00:19,490 Mi, mi, mi, mi música me golpea tan duro, me hace decir, oh, mi señor. 1375 01:00:19,490 --> 01:00:22,927 Gracias por bendecirme con una mente a la rima y dos pies bombo. 1376 01:00:22,927 --> 01:00:24,891 >> Eso es bueno cuando sabes que estás abajo. 1377 01:00:24,891 --> 01:00:26,855 Un homeboy droga súper Del Oaktown. 1378 01:00:26,855 --> 01:00:31,274 Y yo soy conocido como tal y esto un latido uh, no se puede tocar. 1379 01:00:31,274 --> 01:00:34,672 Te dije que Homeboy U no puede tocar esto. 1380 01:00:34,672 --> 01:00:38,656 Sí, eso es lo que estamos viviendo y sabes U no puede tocar esto. 1381 01:00:38,656 --> 01:00:40,135 >> Mírame a los ojos, el hombre. 1382 01:00:40,135 --> 01:00:43,093 U no puede tocar esto. 1383 01:00:43,093 --> 01:00:44,572 Yo, déjame busto el funky letras. 1384 01:00:44,572 --> 01:00:45,363 U no puede tocar esto. 1385 01:00:45,363 --> 01:00:46,544 Nuevas patadas y pantalones frescos. 1386 01:00:46,544 --> 01:00:48,627 >> Lo tienes como ese y usted sabe que quiere bailar. 1387 01:00:48,627 --> 01:00:51,967 Así que moverse de su asiento y obtener una mosca muchacha y atrapar a este ritmo. 1388 01:00:51,967 --> 01:00:55,911 Mientras se espera rodar en bombear un poco poco y hacerles saber lo que está pasando. 1389 01:00:55,911 --> 01:00:56,890 Como eso. 1390 01:00:56,890 --> 01:00:57,390 Como eso. 1391 01:00:57,390 --> 01:00:59,362 >> Fría en una misión tan tire hacia atrás. 1392 01:00:59,362 --> 01:01:04,785 Hágales saber que usted es demasiado y este es un movimiento uh no se puede tocar. 1393 01:01:04,785 --> 01:01:07,743 Yo, te lo dije U no puede tocar esto. 1394 01:01:07,743 --> 01:01:09,222 ¿Por qué usted estaba allí hombre? 1395 01:01:09,222 --> 01:01:10,208 U no puede tocar esto. 1396 01:01:10,208 --> 01:01:13,200 >> Yo, sonará en la escuela de la campana, lechón. 1397 01:01:13,200 --> 01:01:14,005 U no puede tocar esto. 1398 01:01:14,005 --> 01:01:18,326 Dame una canción, un ritmo haciéndolos sudor que es lo que les estoy dando ahora. 1399 01:01:18,326 --> 01:01:21,805 Ellos saben cuando se habla de la Hammer se habla de un espectáculo que es exagerada. 1400 01:01:21,805 --> 01:01:24,290 Y los cantantes son ajustados sudoración por lo que les pase un micrófono. 1401 01:01:24,290 --> 01:01:27,272 >> O una cinta para saber qué que va a tener y ahora 1402 01:01:27,272 --> 01:01:29,260 él va a quemar las cartas. 1403 01:01:29,260 --> 01:01:32,739 Legit ya sea un trabajo duro o que también podría dejar de fumar. 1404 01:01:32,739 --> 01:01:37,709 Porque sabes U no puede tocar esto. 1405 01:01:37,709 --> 01:01:41,599 U no puede tocar esto. 1406 01:01:41,599 --> 01:01:42,182 Descomponerlo. 1407 01:01:42,182 --> 01:01:56,095 1408 01:01:56,095 --> 01:01:56,595 Deténgase. 1409 01:01:56,595 --> 01:01:57,095 Hora Del Martillo. 1410 01:01:57,095 --> 01:01:59,577 Ir con la corriente en un giro si no se puede mover a esta 1411 01:01:59,577 --> 01:02:01,068 entonces probablemente estás muerto. 1412 01:02:01,068 --> 01:02:04,547 Así que agitar las manos en el aire [inaudible] 1413 01:02:04,547 --> 01:02:08,026 >> Este es un baile ganador esto y vas a obtener más delgada. 1414 01:02:08,026 --> 01:02:12,996 Mueva deslice el trasero sólo para un minuto vamos a todos hacer el golpe. 1415 01:02:12,996 --> 01:02:13,990 Sí. 1416 01:02:13,990 --> 01:02:14,984 U no puede tocar esto. 1417 01:02:14,984 --> 01:02:17,966 1418 01:02:17,966 --> 01:02:19,457 >> U no puede tocar esto. 1419 01:02:19,457 --> 01:02:23,433 Será mejor que publicitado muchacho U no puede tocar esto. 1420 01:02:23,433 --> 01:02:24,924 Anillo de regreso de la escuela campana. 1421 01:02:24,924 --> 01:02:25,918 Descomponerlo. 1422 01:02:25,918 --> 01:02:38,837 1423 01:02:38,837 --> 01:02:39,337 Deténgase. 1424 01:02:39,337 --> 01:02:40,828 Hora Del Martillo 1425 01:02:40,828 --> 01:02:42,816 >> DAVID J. MALAN: Eso es todo por CS50! 1426 01:02:42,816 --> 01:02:45,301 Muchas gracias por estar con nosotros! 1427 01:02:45,301 --> 01:02:47,786 Nos vemos fuera. 1428 01:02:47,786 --> 01:02:48,611 >> [FIN DE REPRODUCCIÓN] 1429 01:02:48,611 --> 01:02:49,277 [REPRODUCCIÓN DE VÍDEO] 1430 01:02:49,277 --> 01:02:52,259 [MÚSICA - "Seinfeld", tema musical] 1431 01:02:52,259 --> 01:02:53,860 -Oye David. 1432 01:02:53,860 --> 01:02:54,500 -Oye, David. 1433 01:02:54,500 --> 01:02:55,912 ¿Cómo va? 1434 01:02:55,912 --> 01:02:58,078 >> -Buen Trabajo, hoy en día. 1435 01:02:58,078 --> 01:03:00,952 -Entonces ¿Has pensado en lo que que vas a hacer por las bromas fuera? 1436 01:03:00,952 --> 01:03:03,207 -No, No tengo nada. 1437 01:03:03,207 --> 01:03:07,550 -¿Qué Si: ¿y si esta es la broma fuera? 1438 01:03:07,550 --> 01:03:08,970 -Como, Desembalaje carros? 1439 01:03:08,970 --> 01:03:11,430 -UH Huh. 1440 01:03:11,430 --> 01:03:13,890 Ya sabes, se trata de nada. 1441 01:03:13,890 --> 01:03:17,559 >> -Así Que desea, no hay historia, no hay conflicto, sin resolución. 1442 01:03:17,559 --> 01:03:18,350 No entiendo. 1443 01:03:18,350 --> 01:03:20,542 ¿De qué trata entonces? 1444 01:03:20,542 --> 01:03:23,510 >> -Nada. 1445 01:03:23,510 --> 01:03:27,427 >> -Así Que tenemos fuera broma es sobre nada, y que no tienen los actores. 1446 01:03:27,427 --> 01:03:28,510 ¿Quién va a estar en esto? 1447 01:03:28,510 --> 01:03:29,010 >> -No no no. 1448 01:03:29,010 --> 01:03:31,310 Quiero decir, voy a estar en ella. 1449 01:03:31,310 --> 01:03:32,109 >> -Tendrás Estar en ella? 1450 01:03:32,109 --> 01:03:32,608 -Sí! 1451 01:03:32,608 --> 01:03:34,903 La gente siempre está diciendo yo soy un personaje. 1452 01:03:34,903 --> 01:03:36,029 >> -Bueno, Quiero decir, es verdad. 1453 01:03:36,029 --> 01:03:37,445 Pero, ¿quién más va a estar en ella? 1454 01:03:37,445 --> 01:03:38,660 No puede simplemente ser tú. 1455 01:03:38,660 --> 01:03:47,240 >> -Usted Habrá en ella, Gavin, Dan, Dan, Colton, Z'Myla, Alysse, Doug, 1456 01:03:47,240 --> 01:03:51,120 David, todo el mundo. 1457 01:03:51,120 --> 01:03:53,630 >> -Así Que se trata de la nada, y todo el mundo que está en él? 1458 01:03:53,630 --> 01:03:54,530 >> -Absolutamente nada. 1459 01:03:54,530 --> 01:03:58,730 1460 01:03:58,730 --> 01:04:00,580 >> -Esto es ridículo.