1 00:00:00,000 --> 00:00:11,120 2 00:00:11,120 --> 00:00:12,590 >> SPEAKER: Aku [Tak terdengar]. 3 00:00:12,590 --> 00:00:14,820 Dan aku seorang senior di Leverett House. 4 00:00:14,820 --> 00:00:18,700 Saya belajar ilmu komputer, dan aku TF untuk CS50. 5 00:00:18,700 --> 00:00:21,640 Sebagai mahasiswa, saya bahkan tidak memiliki laptop atau smartphone. 6 00:00:21,640 --> 00:00:23,550 Saya tidak memiliki pengalaman pemrograman. 7 00:00:23,550 --> 00:00:29,690 CS50 adalah program studi yang paling berkesan yang Aku mengambil di Harvard karena itu 8 00:00:29,690 --> 00:00:32,960 perjuangan, tapi itu benar-benar perjuangan menyenangkan pada saat yang sama. 9 00:00:32,960 --> 00:00:37,670 Dan aku membuat banyak menakjubkan, permanen teman-teman, dan saya belajar banyak kok 10 00:00:37,670 --> 00:00:38,830 keterampilan yang berlaku. 11 00:00:38,830 --> 00:00:43,480 Aku sangat senang bahwa saya tidak membiarkan saya kurangnya latar belakang menjadi alasan bagi saya 12 00:00:43,480 --> 00:00:44,840 tidak mengambil CS50. 13 00:00:44,840 --> 00:00:46,220 Aku [Tak terdengar]. 14 00:00:46,220 --> 00:00:48,910 Aku senior di Leverett House, kelas 2014. 15 00:00:48,910 --> 00:00:51,670 Dan aku mengambil CS50. 16 00:00:51,670 --> 00:00:52,380 >> DAVID Malan: Jadi ini adalah CS50. 17 00:00:52,380 --> 00:00:54,400 Ini adalah akhir minggu nol. 18 00:00:54,400 --> 00:00:58,500 Dan ingat di mana kami mulai waktu lalu, adalah dengan lampu ini, yang 19 00:00:58,500 --> 00:01:01,420 begitu populer bahwa kami pergi dan membeli lagi hari ini. 20 00:01:01,420 --> 00:01:03,790 Jadi saya pikir ini akan menjadi hal kami tahun ini - 21 00:01:03,790 --> 00:01:07,230 lampu meja jika Anda datang di atas panggung, setidaknya sampai kita kehabisan. 22 00:01:07,230 --> 00:01:11,570 >> Tapi kami menggunakan recall ini, untuk memperkenalkan dasar-dasar representasi data. 23 00:01:11,570 --> 00:01:15,640 Kami membutuhkan cara untuk mulai mewakili informasi dalam komputer. 24 00:01:15,640 --> 00:01:18,650 Dan cara termudah untuk melakukannya adalah dengan satu bahan, listrik. 25 00:01:18,650 --> 00:01:21,760 Dan hal yang paling sederhana yang dapat Anda lakukan dengan listrik menyalakannya dan off. 26 00:01:21,760 --> 00:01:23,520 Biarkan aliran elektron atau tidak. 27 00:01:23,520 --> 00:01:27,930 Dan menggunakan dua negara bagian dasar, off dan, atau salah dan benar, atau nol dan 28 00:01:27,930 --> 00:01:31,290 satu, kita mulai melihat bahwa kita bisa membangun up, dalam hal ini, dengan cahaya 29 00:01:31,290 --> 00:01:33,720 lampu, angka lebih dari hanya nol dan satu. 30 00:01:33,720 --> 00:01:36,160 Kami menghitung setinggi tujuh, misalnya, terakhir kali. 31 00:01:36,160 --> 00:01:38,840 Tapi semua harus kita lakukan adalah terus melemparkan lebih banyak cahaya lampu pada saat itu 32 00:01:38,840 --> 00:01:41,820 masalah dan, benar-benar, kita dapat mewakili sejumlah yang kita 33 00:01:41,820 --> 00:01:42,970 mungkin mungkin Anda inginkan. 34 00:01:42,970 --> 00:01:47,230 >> Yah, kita beralih cepat kemudian Rabu byte ini relawan. 35 00:01:47,230 --> 00:01:52,040 8 bit adalah apa yang biasanya kita sebut byte, jadi di sini kita memiliki delapan relawan 36 00:01:52,040 --> 00:01:54,900 Rabu yang secara kolektif itu mewakili delapan bit. 37 00:01:54,900 --> 00:01:56,750 Dan ketika tangan mereka pergi up, mereka adalah salah satu a. 38 00:01:56,750 --> 00:01:58,530 Dan ketika tangan mereka bawah, ada nol. 39 00:01:58,530 --> 00:02:01,970 Dan kami memiliki orang-orang datang pada mengapa panggung? 40 00:02:01,970 --> 00:02:06,530 Apa yang kami dapat lakukan dengan ini urutan bit? 41 00:02:06,530 --> 00:02:07,510 >> Untuk membuat sebuah alfabet. 42 00:02:07,510 --> 00:02:11,550 Kami mampu membangun di atas bahwa pelajaran sebelumnya dipelajari dan benar-benar 43 00:02:11,550 --> 00:02:14,200 mulai membuat lebih menarik Informasi yang setidaknya lebih 44 00:02:14,200 --> 00:02:15,330 akrab bagi kita manusia. 45 00:02:15,330 --> 00:02:18,360 Dan ini akan menjadi berulang tema di seluruh 50, tetapi juga komputer 46 00:02:18,360 --> 00:02:21,470 ilmu yang lebih umum, ide ini layering, di mana, pada akhir 47 00:02:21,470 --> 00:02:24,820 hari, jika Anda benar-benar mulai dasar dengan komputer, ya, 48 00:02:24,820 --> 00:02:25,760 itu angka satu dan nol. 49 00:02:25,760 --> 00:02:27,480 Dan di bawahnya itu hanya listrik. 50 00:02:27,480 --> 00:02:30,840 Tapi kita sangat cepat mulai mengambil mereka rincian tingkat rendah untuk diberikan 51 00:02:30,840 --> 00:02:35,600 dan mulai lapisan di atas terakhir bekerja dilakukan agar kita, pada akhirnya, oleh 52 00:02:35,600 --> 00:02:38,610 akhir semester dan, benar-benar, lebih umum sebagai ilmuwan komputer 53 00:02:38,610 --> 00:02:42,790 dan programmer, dapat melakukan beberapa benar-benar hal yang sangat kuat dengan memanfaatkan kerja 54 00:02:42,790 --> 00:02:46,620 bahwa kita sendiri telah dilakukan dan juga berdiri di pundak orang lain. 55 00:02:46,620 --> 00:02:49,300 >> Sekarang kita cepat dialihkan pada hari Rabu dari hanya perlu 56 00:02:49,300 --> 00:02:52,080 merupakan informasi yang ingin untuk melakukan sesuatu dengan itu. 57 00:02:52,080 --> 00:02:54,170 Jadi apa yang kita mendefinisikan sebuah algoritma sebagai? 58 00:02:54,170 --> 00:02:57,340 59 00:02:57,340 --> 00:02:58,900 Serangkaian instruksi. 60 00:02:58,900 --> 00:03:03,380 Jadi itu adalah serangkaian instruksi, yang sejumlah langkah yang Anda, manusia, atau 61 00:03:03,380 --> 00:03:07,160 komputer, lebih khusus, akan mengeksekusi satu demi satu dalam rangka 62 00:03:07,160 --> 00:03:08,100 untuk mencapai beberapa tujuan. 63 00:03:08,100 --> 00:03:11,360 Dan kami memiliki beberapa gol terakhir kali, salah satunya adalah untuk menghitung 64 00:03:11,360 --> 00:03:12,250 orang di ruangan itu. 65 00:03:12,250 --> 00:03:15,560 Dan contoh lain lagi adalah untuk menemukan Mike Smith dalam buku telepon. 66 00:03:15,560 --> 00:03:19,750 >> Jadi Anda mungkin ingat bahwa aku merobek telepon buku setengah menuju akhir ini sampai 67 00:03:19,750 --> 00:03:21,280 menemukan Mike Smith. 68 00:03:21,280 --> 00:03:24,000 Tujuan itu adalah untuk visual yang menunjukkan, sekali lagi, bahwa kami 69 00:03:24,000 --> 00:03:27,770 harfiah merobek masalah ini setengah, setengah, setengah, dan sangat 70 00:03:27,770 --> 00:03:31,750 cepat pergi dari seperti 1.000 halaman hanya satu halaman. 71 00:03:31,750 --> 00:03:34,860 Bagi Anda yang merindukan ini pada Rabu, saya pikir kami akan bermain kembali 72 00:03:34,860 --> 00:03:36,820 beberapa cuplikan dari apa yang Anda tidak terjawab. 73 00:03:36,820 --> 00:03:38,914 Mari kita lihat. 74 00:03:38,914 --> 00:03:40,906 >> [VIDEO PEMUTARAN] 75 00:03:40,906 --> 00:03:55,360 76 00:03:55,360 --> 00:03:55,990 >> -Di sana kami pergi. 77 00:03:55,990 --> 00:04:01,432 1500 halaman, garis bersih yang bagus, air mata yang sah. 78 00:04:01,432 --> 00:04:02,850 >> [END VIDEO PEMUTARAN] 79 00:04:02,850 --> 00:04:05,230 >> DAVID Malan: Jadi itu Rabu. 80 00:04:05,230 --> 00:04:09,150 Kami transisi, meskipun, Rabu sekarang untuk ingin mewakili algoritma 81 00:04:09,150 --> 00:04:12,410 dalam beberapa cara yang standar, bukan hanya menggambarkan mereka secara verbal, tetapi 82 00:04:12,410 --> 00:04:16,290 mencoba untuk mengungkapkannya secara tertulis atau layar komputer sehingga kita bisa 83 00:04:16,290 --> 00:04:19,170 mulai memperbaiki, dan memodifikasi mereka, dan, akhirnya, sebenarnya 84 00:04:19,170 --> 00:04:21,160 menganalisis seberapa benar atau seberapa cepat mereka. 85 00:04:21,160 --> 00:04:23,360 >> Jadi kami memperkenalkan gagasan ini dari pseudocode, yang, 86 00:04:23,360 --> 00:04:26,410 istilah awam, adalah apa? 87 00:04:26,410 --> 00:04:26,930 OK, kata-kata. 88 00:04:26,930 --> 00:04:28,730 Mari kita pergi sedikit lebih dalam dari itu. 89 00:04:28,730 --> 00:04:32,540 Inggris, yakin, hanyalah arah tujuan apa? 90 00:04:32,540 --> 00:04:35,180 Kata-kata yang dapat digunakan untuk membuat atau untuk mewakili algoritma. 91 00:04:35,180 --> 00:04:38,380 Jadi tidak ada satu bahasa yang dikenal sebagai pseudocode di dunia. 92 00:04:38,380 --> 00:04:41,110 Hanya saja bahwa Anda, dalam bahasa Inggris, atau apapun bahasa lisan Anda, gunakan 93 00:04:41,110 --> 00:04:44,930 semacam notasi sepintas untuk menyampaikan ide yang sangat singkat. 94 00:04:44,930 --> 00:04:47,930 Tapi kita akan melihat bahwa, tentu dengan Pseudocode Inggris, dan ternyata 95 00:04:47,930 --> 00:04:51,700 kebanyakan bahasa pemrograman sendiri adalah turunan dari bahasa Inggris itu sendiri, 96 00:04:51,700 --> 00:04:55,750 kita akan menemukan bahwa ada beberapa standar cara untuk mewakili pseudocode dan 97 00:04:55,750 --> 00:04:57,150 juga kode pemrograman. 98 00:04:57,150 --> 00:05:00,200 Jadi ketika Anda mulai melihat bahkan yang paling sederhana contoh hari ini, menyadari ini 99 00:05:00,200 --> 00:05:02,160 pola yang sama akan terulang minggu depan. 100 00:05:02,160 --> 00:05:04,710 >> Jadi pseudocode semacam bahasa menyerupai 101 00:05:04,710 --> 00:05:06,170 bahasa pemrograman. 102 00:05:06,170 --> 00:05:09,260 Dan contoh pertama kita melihat secara visual ditulis satu ini. 103 00:05:09,260 --> 00:05:12,870 Itu hanya sebuah program langkah ketiga, yang tujuan yang adalah untuk menghitung jumlah 104 00:05:12,870 --> 00:05:15,650 orang di kamar asrama untuk bahwa video pada hari Rabu. 105 00:05:15,650 --> 00:05:19,040 Tapi ada aspek yang menarik beberapa dari program yang paling sederhana. 106 00:05:19,040 --> 00:05:20,320 >> Dan ini akan menjadi tema berulang. 107 00:05:20,320 --> 00:05:22,930 Jadi bagi mereka yang tidak terbiasa dengan ini, satu, kami memperkenalkan variabel. 108 00:05:22,930 --> 00:05:25,650 Dan mungkin semua orang di ruangan ini akrab dengan variabel dalam 109 00:05:25,650 --> 00:05:27,250 konteks aljabar. 110 00:05:27,250 --> 00:05:31,190 Tapi di sini dalam pemrograman, variabel yang, satu, bisa 111 00:05:31,190 --> 00:05:32,220 disebut apa pun yang kita inginkan. 112 00:05:32,220 --> 00:05:33,620 Kami telah menggunakan n sebagai counter. 113 00:05:33,620 --> 00:05:37,490 Tapi kita bisa menggunakan counter kata, atau, seperti yang akan Anda lihat, kebanyakan kalimat apapun yang 114 00:05:37,490 --> 00:05:40,240 Anda mungkin ingin selama itu deskriptif, tapi itu benar-benar hanya 115 00:05:40,240 --> 00:05:41,250 wadah penyimpanan. 116 00:05:41,250 --> 00:05:44,170 Ini sepotong memori, beberapa jumlah bit, dan bervariasi oleh komputer, bagaimana 117 00:05:44,170 --> 00:05:47,020 banyak bit ada yang menulis variabel itu. 118 00:05:47,020 --> 00:05:48,450 >> Tapi kita bisa menempatkan nilai-nilai di dalamnya. 119 00:05:48,450 --> 00:05:50,740 Sejauh ini, kita hanya memasukkan angka. 120 00:05:50,740 --> 00:05:52,290 Tapi kita bisa menaruh kata-kata yang sebenarnya. 121 00:05:52,290 --> 00:05:53,420 Kita dapat menempatkan paragraf. 122 00:05:53,420 --> 00:05:54,560 Kita bisa menempatkan gambar - 123 00:05:54,560 --> 00:05:57,860 apa-apa, benar-benar, kita dapat mewakili dengan nol dan satu, kita dapat dimasukkan ke dalam 124 00:05:57,860 --> 00:05:59,820 tingkat pengertian yang lebih tinggi dari variabel. 125 00:05:59,820 --> 00:06:01,350 >> Jadi cukup lurus maju sana. 126 00:06:01,350 --> 00:06:02,210 Dan itulah satu baris. 127 00:06:02,210 --> 00:06:05,340 Tapi kami sangat cepat pindah dari satu baris untuk benar-benar melakukan 128 00:06:05,340 --> 00:06:06,600 sesuatu dengan variabel tersebut. 129 00:06:06,600 --> 00:06:10,330 Dan sejalan tiga, kami diperbarui N. Kami bertambah N. Dan kita bisa menulis ini 130 00:06:10,330 --> 00:06:11,330 berbagai cara. 131 00:06:11,330 --> 00:06:14,460 Tapi mungkin yang paling jelas adalah hanya untuk mengatakan, mengatur N setara dengan 132 00:06:14,460 --> 00:06:16,440 apapun N ditambah 1. 133 00:06:16,440 --> 00:06:17,740 Jadi itu kenaikan kami. 134 00:06:17,740 --> 00:06:18,740 >> Sementara itu, ada lingkaran. 135 00:06:18,740 --> 00:06:20,720 Dan yang satu ini, juga, mungkin cukup intuitif. 136 00:06:20,720 --> 00:06:24,250 Sebuah lingkaran hanya sesuatu dalam sebuah program itu terjadi lagi dan lagi, beberapa 137 00:06:24,250 --> 00:06:25,190 jenis siklus. 138 00:06:25,190 --> 00:06:29,300 Dan ini frase kunci di sini, untuk masing-masing, adalah sebenarnya sangat umum di seluruh sebagian besar 139 00:06:29,300 --> 00:06:32,300 bahasa pemrograman, termasuk yang akan kita lihat pada kursus. 140 00:06:32,300 --> 00:06:35,850 Setiap kali Anda melihat kata untuk itu, biasanya menyampaikan gagasan bahwa 141 00:06:35,850 --> 00:06:38,410 lingkaran, sesuatu yang siklis, yang akan terjadi. 142 00:06:38,410 --> 00:06:40,980 >> Tapi perlu dicatat satu rinci sintaksis lainnya. 143 00:06:40,980 --> 00:06:44,660 Fakta bahwa garis ketiga ada sebenarnya menjorok dengan memiliki memukul 144 00:06:44,660 --> 00:06:46,920 spasi beberapa kali disengaja. 145 00:06:46,920 --> 00:06:49,870 Karena konvensi manusia adalah sedemikian rupa sehingga, ketika Anda sedang melakukan sesuatu lagi dan 146 00:06:49,870 --> 00:06:54,860 lagi, dalam satu lingkaran, seperti yang dimulai pada baris kedua, Anda indent apa pun yang milik 147 00:06:54,860 --> 00:06:58,880 untuk loop yang hanya untuk membuat jelas bahwa itu garis tiga dan tidak, misalnya, 148 00:06:58,880 --> 00:07:01,910 line empat atau lima, jika ada baris untuk atau lima, yang 149 00:07:01,910 --> 00:07:03,010 bagian dari loop. 150 00:07:03,010 --> 00:07:07,340 Jadi ini lekukan sederhana menyampaikan bahwa ide dasar. 151 00:07:07,340 --> 00:07:09,390 >> Jadi kami menerapkan algoritma ini, sekarang, untuk beberapa contoh. 152 00:07:09,390 --> 00:07:12,620 Dan ini juga, contoh sederhana di dunia nyata. 153 00:07:12,620 --> 00:07:15,440 Tapi itu akan menjadi wakil dari bagaimana Anda akan pergi tentang pengujian Anda 154 00:07:15,440 --> 00:07:17,500 memiliki program semakin kompleks. 155 00:07:17,500 --> 00:07:21,050 Anda mencoba beberapa skenario, beberapa wakil input, dan lihat apakah Anda 156 00:07:21,050 --> 00:07:22,180 mendapatkan output yang diinginkan. 157 00:07:22,180 --> 00:07:25,090 >> Jadi contoh ini memiliki dua orang duduk di kamar asrama. 158 00:07:25,090 --> 00:07:27,170 Di sebelah kiri adalah bahwa kode semu yang sama. 159 00:07:27,170 --> 00:07:30,800 Dan ini adalah screen shot dari sangat Langkah terakhir dari aplikasi ini 160 00:07:30,800 --> 00:07:35,270 algoritma untuk mereka masukan, di mana ada dua orang di ruangan itu dan, 161 00:07:35,270 --> 00:07:39,190 ingat, seperti yang kita melangkah melalui jalur satu, dan dua, dan tiga, dan dua 162 00:07:39,190 --> 00:07:41,000 dan tiga dan dilakukan - 163 00:07:41,000 --> 00:07:44,870 pada akhir algoritma itu, kami memiliki memang dihitung dua rekan-rekan yang 164 00:07:44,870 --> 00:07:45,360 di dalam ruangan. 165 00:07:45,360 --> 00:07:47,190 >> Lalu kami coba contoh lain. 166 00:07:47,190 --> 00:07:48,990 Dan kami mengatakan apa jika ada nol orang di dalam ruangan? 167 00:07:48,990 --> 00:07:50,490 Apakah kode ini masih benar? 168 00:07:50,490 --> 00:07:51,305 Dan memang itu. 169 00:07:51,305 --> 00:07:55,240 Kebetulan garis bahwa dua dan, dengan demikian, jalur tiga atau 170 00:07:55,240 --> 00:07:56,620 tidak akan mengeksekusi. 171 00:07:56,620 --> 00:07:59,790 Mereka tidak akan terjadi sama sekali karena mereka hanya tidak berlaku jika 172 00:07:59,790 --> 00:08:01,210 ada nol orang di dalam ruangan. 173 00:08:01,210 --> 00:08:02,300 >> Tapi bukan masalah besar. 174 00:08:02,300 --> 00:08:06,620 Satu baris N diinisialisasi ke nol, sehingga meskipun hanya satu baris ini 175 00:08:06,620 --> 00:08:10,930 Program benar-benar berakhir menjadi berguna, masih menghasilkan jawaban yang benar, seperti 176 00:08:10,930 --> 00:08:13,780 ditunjukkan oleh orange nol di bagian bawah. 177 00:08:13,780 --> 00:08:16,300 Tapi kemudian kami memutuskan bahwa jenis algoritma bodoh. 178 00:08:16,300 --> 00:08:17,060 Itu cukup lambat. 179 00:08:17,060 --> 00:08:19,720 Tentu saja, aku bisa melakukan dua, empat, enam, delapan, sepuluh, ketika 180 00:08:19,720 --> 00:08:20,990 menghitung orang di sebuah ruangan. 181 00:08:20,990 --> 00:08:25,030 >> Jadi kita tweak algoritma, pseudocode, mengatakan, sekarang dalam dua baris, 182 00:08:25,030 --> 00:08:29,710 untuk setiap pasang orang di ruangan itu, melanjutkan ke dalam line tiga, selisih 183 00:08:29,710 --> 00:08:32,200 in dengan dua pada setiap iterasi. 184 00:08:32,200 --> 00:08:35,530 Sehingga akan bekerja di sini selama pasangan ini orang di dalam ruangan. 185 00:08:35,530 --> 00:08:38,530 >> Tapi kemudian, jika Anda mulai berpikir tentang ini, dan tidak butuh waktu lama untuk 186 00:08:38,530 --> 00:08:40,710 menyadari, tunggu sebentar ini akan pecah, rusak 187 00:08:40,710 --> 00:08:42,679 apa kasus sederhana? 188 00:08:42,679 --> 00:08:45,500 Jika ada tiga orang di dalam ruangan atau, lebih umum, ketika ada 189 00:08:45,500 --> 00:08:47,660 ganjil orang di kamar, termasuk satu. 190 00:08:47,660 --> 00:08:50,390 Kami akan merindukan orang itu di sini karena tidak ada pasangan tersebut. 191 00:08:50,390 --> 00:08:58,510 Jadi kita cepat ditangani oleh bukan memperkenalkan tambahan apa 192 00:08:58,510 --> 00:09:02,560 konstruksi pemrograman ke kode semu. 193 00:09:02,560 --> 00:09:04,955 >> Jadi kondisi, kita disebut , atau cabang. 194 00:09:04,955 --> 00:09:08,420 Dan itu dimaksudkan untuk menyampaikan, visual, yang ide cabang, di pertigaan jalan 195 00:09:08,420 --> 00:09:11,080 di mana Anda dapat melakukan ini atau, mungkin, sesuatu yang lain. 196 00:09:11,080 --> 00:09:15,750 Dan memang, kita mengatasi masalah ini dengan menambahkan baris 4, dengan mengatakan, benar-benar, di 197 00:09:15,750 --> 00:09:20,820 akhir, jika satu orang tetap, kemudian pergi ke depan dan menganggapnya istimewa. 198 00:09:20,820 --> 00:09:24,460 Jadi Anda semacam kasus khusus mereka, sehingga untuk berbicara, sehingga sekarang kita dapat menangani 199 00:09:24,460 --> 00:09:27,810 baik bahkan jumlah orang dan ganjil orang. 200 00:09:27,810 --> 00:09:30,260 >> Sekarang ada banyak cara kita bisa menyatakan ini. 201 00:09:30,260 --> 00:09:33,590 Dan terus terang, saya sudah bisa lebih nit pilih-pilih ketika datang ke pilihan saya 202 00:09:33,590 --> 00:09:35,040 Bahasa Inggris untuk pseudocode. 203 00:09:35,040 --> 00:09:36,970 Tapi setidaknya semangat ide yang disampaikan. 204 00:09:36,970 --> 00:09:40,725 Jika Anda menyerahkan kode ini ke teman yang tidak di CS, atau tidak pernah mengambil 205 00:09:40,725 --> 00:09:44,560 CS, kemungkinan besar mereka bisa mencari tahu, diberikan tiga orang di ruangan itu, bagaimana 206 00:09:44,560 --> 00:09:46,870 menghitung orang-orang berdasarkan pada petunjuk ini. 207 00:09:46,870 --> 00:09:49,920 Dan itu semua benar-benar kita ingin mencapai dengan pseudocode, entah bagaimana 208 00:09:49,920 --> 00:09:54,300 standarisasi bagaimana kita akan tentang ide yang mewakili sehingga kita dapat 209 00:09:54,300 --> 00:09:56,670 mulai melakukan lebih rumit hal masih. 210 00:09:56,670 --> 00:09:58,845 >> Jadi yang menuntun kita kemudian, hari ini, ke kode aktual. 211 00:09:58,845 --> 00:10:01,950 Kita mulai untuk program hari ini, meskipun di lingkungan yang ramah. 212 00:10:01,950 --> 00:10:05,940 Dan kemudian kita transisi yang sangat cepat untuk sintaks lebih misterius, tapi satu yang 213 00:10:05,940 --> 00:10:10,340 Anda akan melihat pada dasarnya sama dengan ide-ide akan melihat diwujudkan dengan 214 00:10:10,340 --> 00:10:11,990 bahasa ini lain hari ini. 215 00:10:11,990 --> 00:10:13,920 Ini hanya akan melihat sedikit berbeda. 216 00:10:13,920 --> 00:10:16,590 >> Jadi bukan hanya memanggil kode ini, aku akan menjadi sedikit lebih tepat 217 00:10:16,590 --> 00:10:20,170 dan berkata, selanjutnya, ketika menulis Program, Anda sedang menulis kode sumber. 218 00:10:20,170 --> 00:10:21,990 Ini semacam seperti pseudocode. 219 00:10:21,990 --> 00:10:26,540 Tapi kita akan lihat itu bukan semacam longgar ketika datang untuk memilih kata-kata 220 00:10:26,540 --> 00:10:27,310 yang Anda gunakan. 221 00:10:27,310 --> 00:10:31,300 Ketika programing dalam bahasa, Anda harus menggunakan kata-kata, frase, 222 00:10:31,300 --> 00:10:36,020 sintaks, bahwa orang lain telah memutuskan mewakili 223 00:10:36,020 --> 00:10:37,240 bahwa bahasa tertentu. 224 00:10:37,240 --> 00:10:38,510 Jadi pseudocodes terserah Anda. 225 00:10:38,510 --> 00:10:42,330 Sebuah bahasa pemrograman yang sebenarnya seperti C, seperti yang kita akhirnya akan melihat, adalah 226 00:10:42,330 --> 00:10:43,590 standar oleh orang lain. 227 00:10:43,590 --> 00:10:45,590 >> Jadi bagaimana kita pergi tentang menulis beberapa kode sumber? 228 00:10:45,590 --> 00:10:46,810 Yah aku akan pergi depan dan melakukan hal ini. 229 00:10:46,810 --> 00:10:49,100 Aku akan pergi ke depan dan membuka jendela di sini. 230 00:10:49,100 --> 00:10:50,210 Lebih pada minggu depan. 231 00:10:50,210 --> 00:10:52,300 Tapi ini adalah alat yang disebut yang CS50 alat. 232 00:10:52,300 --> 00:10:55,480 Aku menjalankan software pada saya Mac, meskipun Anda dapat melakukan hal yang sama 233 00:10:55,480 --> 00:11:00,580 pada komputer Windows, yaitu memberikan saya ilusi menjalankan berbeda 234 00:11:00,580 --> 00:11:03,700 sistem operasi sama sekali benar di sini di jendela pada Mac saya. 235 00:11:03,700 --> 00:11:06,790 Aku hanya penuh disaring sehingga Anda tidak benar-benar melihat Mac OS sekarang. 236 00:11:06,790 --> 00:11:08,340 >> Ini merupakan sistem operasi disebut Linux. 237 00:11:08,340 --> 00:11:09,300 Ini sangat populer. 238 00:11:09,300 --> 00:11:10,120 Ini sangat cepat. 239 00:11:10,120 --> 00:11:12,950 Ini sangat bebas, yang telah membuatnya menjadi sangat menarik, terutama di 240 00:11:12,950 --> 00:11:13,970 dunia komersial. 241 00:11:13,970 --> 00:11:17,200 Dan lebih pada menjelang akhir dari semester ketika kita menggunakan Linux cukup sedikit 242 00:11:17,200 --> 00:11:21,230 untuk pemrograman web dan hosting website aktual dan proyek. 243 00:11:21,230 --> 00:11:24,910 Jadi sekarang, hanya tahu bahwa ini adalah desktop yang dimaksudkan untuk terlihat samar-samar 244 00:11:24,910 --> 00:11:26,750 akrab bagi Windows dan Mac OS. 245 00:11:26,750 --> 00:11:29,110 Itu hanya memiliki beberapa nama yang berbeda dan ikon untuk hal-hal. 246 00:11:29,110 --> 00:11:32,510 Tapi ini yang disebut CS50 alat, mesin virtual yang, 247 00:11:32,510 --> 00:11:35,310 mulai minggu depan, kalian akan dijalankan dalam jendela pada 248 00:11:35,310 --> 00:11:36,960 Mac anda sendiri atau PC. 249 00:11:36,960 --> 00:11:39,760 >> Untuk hari ini, aku akan membuka paling sederhana program. 250 00:11:39,760 --> 00:11:41,110 Ini disebut gedit. 251 00:11:41,110 --> 00:11:42,565 Dan ini hanyalah sebuah editor grafis. 252 00:11:42,565 --> 00:11:44,695 Ini semacam seperti Microsoft Word, tapi lebih sederhana. 253 00:11:44,695 --> 00:11:47,110 Ini semacam teks seperti mengedit atau notepad. 254 00:11:47,110 --> 00:11:50,280 Ini hanya sebuah program yang sangat sederhana dengan yang menulis kata-kata di layar. 255 00:11:50,280 --> 00:11:54,510 Itu hanya jadi apa yang terjadi jika saya simpan file yang saya buat ketika program ini 256 00:11:54,510 --> 00:11:59,860 dengan ekstensi khusus seperti. c, bukan dari. doc, atau. xls, atau apa pun 257 00:11:59,860 --> 00:12:04,190 Anda akrab dengan, saya bisa benar-benar membuat program menggunakan bahkan sederhana ini 258 00:12:04,190 --> 00:12:05,130 editor teks. 259 00:12:05,130 --> 00:12:05,770 >> Jadi biarkan aku melakukan itu. 260 00:12:05,770 --> 00:12:09,330 Biarkan aku pergi ke depan dan menyimpan ini mengajukan pertama sebagai hello.c. 261 00:12:09,330 --> 00:12:12,350 Dan lagi, user interface akan menjadi akrab bagi Anda dengan cepat. 262 00:12:12,350 --> 00:12:14,160 Tetapi untuk sekarang, aku hanya mengetik dalam nama file. 263 00:12:14,160 --> 00:12:17,410 Aku akan menyimpannya ke John saya Direktori home Harvard. 264 00:12:17,410 --> 00:12:20,810 Dan sekarang saya memiliki tab ini yang menunjukkan Saya memang mengedit 265 00:12:20,810 --> 00:12:23,070 file bernama hello.c. 266 00:12:23,070 --> 00:12:24,510 Jadi tidak terlalu menarik namun. 267 00:12:24,510 --> 00:12:26,000 >> Dan sekarang itu akan mendapatkan cukup samar. 268 00:12:26,000 --> 00:12:28,370 Aku akan memperbesar, hanya jadi lebih terlihat. 269 00:12:28,370 --> 00:12:35,780 Dan aku akan mulai mengetik termasuk stdio.h, int main, batal, buka keriting 270 00:12:35,780 --> 00:12:40,140 penjepit, satu, dua, tiga, empat ruang indentasi, mencetak f, untuk cetak 271 00:12:40,140 --> 00:12:44,450 sesuatu yang diformat, kutipan tanda kutip, "Halo, dunia" backslash, n, dekat 272 00:12:44,450 --> 00:12:49,640 kutipan, kurung tertutup, titik koma, masukkan backspace, backspace, backspace, 273 00:12:49,640 --> 00:12:52,310 backspace, ditutup keriting brace - 274 00:12:52,310 --> 00:12:53,350 Saya telah diprogram. 275 00:12:53,350 --> 00:12:57,380 >> Baiklah jadi ini adalah super sederhana Program, benar-benar, program yang 276 00:12:57,380 --> 00:12:59,070 siapa pun dimulai dengan pemrograman. 277 00:12:59,070 --> 00:13:02,300 Dan semua hal ini, untuk segala kompleksitasnya, adalah mencetak pada 278 00:13:02,300 --> 00:13:04,160 layar, coba tebak? 279 00:13:04,160 --> 00:13:04,910 Halo dunia. 280 00:13:04,910 --> 00:13:07,500 Tapi itu tidak cukup hanya untuk menulis program. 281 00:13:07,500 --> 00:13:08,155 Jadi ini adalah kode. 282 00:13:08,155 --> 00:13:11,300 Ini adalah kode sumber dalam bahasa yang disebut c. 283 00:13:11,300 --> 00:13:14,380 Ini disimpan saat ini file bernama hello.c. 284 00:13:14,380 --> 00:13:16,180 >> Sekarang lihat di bagian bawah dari layar di sini. 285 00:13:16,180 --> 00:13:17,890 Lebih lanjut tentang ini, sekali lagi, di minggu-minggu yang akan datang. 286 00:13:17,890 --> 00:13:19,570 Tapi ini adalah apa yang akan kita sebut jendela terminal. 287 00:13:19,570 --> 00:13:21,290 Ini adalah berkedip, hitam dan prompt putih. 288 00:13:21,290 --> 00:13:24,390 Ini semacam sebuah antarmuka sekolah tua untuk komputer yang umumnya tidak 289 00:13:24,390 --> 00:13:27,050 menggunakan mouse atau lainnya elemen grafis. 290 00:13:27,050 --> 00:13:28,320 Itu hanya menggunakan keyboard Anda. 291 00:13:28,320 --> 00:13:30,970 Dan saya dapat mengetikkan perintah pada ini berkedip cepat. 292 00:13:30,970 --> 00:13:33,820 >> Dan untuk tujuan hari ini, aku hanya akan ketik berikut - 293 00:13:33,820 --> 00:13:35,610 membuat halo. 294 00:13:35,610 --> 00:13:39,370 Dan program, buat, hanya program itu, di dunia nyata ini 295 00:13:39,370 --> 00:13:40,690 hari, kita akan klik dua kali pada. 296 00:13:40,690 --> 00:13:44,580 Tapi dalam interface ini untuk hari ini, kami akan mengetik namanya pada prompt ini. 297 00:13:44,580 --> 00:13:47,980 membuat halo secara harfiah akan membuat saya sebuah program yang disebut halo. 298 00:13:47,980 --> 00:13:51,360 Dan itu akan melakukannya dengan melihat untuk file, hanya dengan 299 00:13:51,360 --> 00:13:53,460 default, yang disebut hello.c. 300 00:13:53,460 --> 00:13:57,260 Ini akan menganggap saya ingin program C oleh sifat bagaimana komputer ini 301 00:13:57,260 --> 00:13:58,230 dikonfigurasi. 302 00:13:58,230 --> 00:13:59,550 >> Jadi aku pergi ke depan dan tekan enter. 303 00:13:59,550 --> 00:14:02,050 Saya melihat beberapa output samar, tetapi ini akan menjadi terlalu 304 00:14:02,050 --> 00:14:03,330 familiar lama. 305 00:14:03,330 --> 00:14:06,870 Hal ini terjadi untuk menjalankan compiler, lebih pada suatu saat, yang disebut dentang. 306 00:14:06,870 --> 00:14:09,080 Tapi sekarang, aku punya hanyalah berkedip meminta. 307 00:14:09,080 --> 00:14:13,060 Dan aku bisa pergi ke depan sekarang dan ketik dot slash, untuk alasan menarik kita akan 308 00:14:13,060 --> 00:14:14,730 kembali ke minggu depan - 309 00:14:14,730 --> 00:14:15,910 halo. 310 00:14:15,910 --> 00:14:19,650 >> Jadi semua upaya ini sejauh ini hanya untuk menulis sederhana program itu, 311 00:14:19,650 --> 00:14:22,640 segera setelah saya tekan Enter, apakah itu. 312 00:14:22,640 --> 00:14:24,510 Jadi saya telah menulis program pertama saya. 313 00:14:24,510 --> 00:14:27,500 Jadi aku sengaja menusuk menyenangkan pada program ini sangat sederhana 314 00:14:27,500 --> 00:14:28,540 untuk beberapa alasan. 315 00:14:28,540 --> 00:14:31,990 Satu, sulit untuk mendapatkan bersemangat tentang mengambil kelas jika 316 00:14:31,990 --> 00:14:33,430 ini adalah akhir permainan. 317 00:14:33,430 --> 00:14:37,100 >> Tapi lebih dari itu, ada banyak gangguan di sini. 318 00:14:37,100 --> 00:14:40,640 Pertama kali Anda belajar program, untuk Bagi Anda kurang nyaman, dan 319 00:14:40,640 --> 00:14:43,410 bahkan aku, kembali pada hari, ketika saya pertama kali melihat sesuatu seperti ini - Anda dapat jenis 320 00:14:43,410 --> 00:14:46,500 dari angka tersebut, baiklah, ini adalah di cetak hello world. 321 00:14:46,500 --> 00:14:47,860 Tapi ada begitu banyak gangguan. 322 00:14:47,860 --> 00:14:52,110 Ada begitu banyak sintaks pada layar yang mendapat di jalan sangat 323 00:14:52,110 --> 00:14:54,170 sederhana, jika sederhana, ide. 324 00:14:54,170 --> 00:14:56,700 >> Jadi apa yang akan kita lakukan hari ini adalah kita akan mengesampingkan C dan datang 325 00:14:56,700 --> 00:14:57,630 kembali ke Senin. 326 00:14:57,630 --> 00:15:00,860 Dan kita akan menggunakan grafis bahasa pemrograman yang disebut Scratch. 327 00:15:00,860 --> 00:15:04,470 Ini adalah bahasa pemrograman, yang saya disinggung pada hari Rabu, itu akan 328 00:15:04,470 --> 00:15:08,870 untuk memungkinkan kita untuk melakukan hal-hal yang sama tapi menutup mata, untuk hari ini, 329 00:15:08,870 --> 00:15:12,270 dengan kurung kurawal, tanda kurung, titik koma, dan semua ini bodoh 330 00:15:12,270 --> 00:15:15,680 gangguan yang mendapatkan di jalan, di ini hari pertama, beberapa dasar, cukup 331 00:15:15,680 --> 00:15:17,230 ide-ide menarik. 332 00:15:17,230 --> 00:15:21,350 >> Jadi untuk mencapai tujuan itu, aku akan pergi kembali ke desktop saya ke sini dan 333 00:15:21,350 --> 00:15:25,890 memperkenalkan Anda ke alternatif yang Program, yang akan terlihat 334 00:15:25,890 --> 00:15:30,790 sedikit sesuatu cahaya ini. 335 00:15:30,790 --> 00:15:33,930 Itulah cara kita akan mengimplementasikan program yang sama hari ini - dua puzzle 336 00:15:33,930 --> 00:15:37,710 potongan, ketika saling bertautan dan diklik, akan mengatakan kepada dunia, 337 00:15:37,710 --> 00:15:39,000 hello world. 338 00:15:39,000 --> 00:15:41,200 >> Jadi mari kita benar-benar pergi ke sana. 339 00:15:41,200 --> 00:15:44,965 Jadi aku akan pergi ke depan dan membuka situs yang dikenal sebagai scratch.mit.edu. 340 00:15:44,965 --> 00:15:47,980 341 00:15:47,980 --> 00:15:52,040 Dan ini akan menyebabkan saya untuk situs ini di sini. 342 00:15:52,040 --> 00:15:54,660 Di muka, saya sudah masuk ke ini website dan masalah pertama yang 343 00:15:54,660 --> 00:15:55,910 akan memandu Anda melalui beberapa langkah-langkah ini. 344 00:15:55,910 --> 00:15:58,930 Aku akan pergi ke depan dan klik pada folder awal saya di sini. 345 00:15:58,930 --> 00:16:00,720 >> Dan ini akan menunjukkan beberapa proyek yang saya sudah 346 00:16:00,720 --> 00:16:02,570 sebenarnya diciptakan di muka. 347 00:16:02,570 --> 00:16:05,860 Dan ternyata grafis ini bahasa pemrograman tidak hanya akan 348 00:16:05,860 --> 00:16:08,480 untuk memberitahu kami program dengan menyeret dan menjatuhkan potongan-potongan teka-teki, Anda 349 00:16:08,480 --> 00:16:09,730 bahkan tidak perlu software khusus. 350 00:16:09,730 --> 00:16:13,190 Ini semua tertanam dalam browser sehingga yang dapat Anda lakukan ini, dalam teori, pada 351 00:16:13,190 --> 00:16:16,810 komputer Anda sekarang, karena beberapa dari Anda mungkin saja, bahkan tanpa perlu 352 00:16:16,810 --> 00:16:19,870 software seperti CS50 alat, yang akan datang minggu depan. 353 00:16:19,870 --> 00:16:24,200 >> Jadi aku akan pergi ke sudut atas di sini dan klik Create. 354 00:16:24,200 --> 00:16:27,840 Dan dalam sekejap aku akan mendapatkan kosong layar melalui mana saya bisa mulai 355 00:16:27,840 --> 00:16:30,380 pemrograman grafis ini lingkungan pemrograman. 356 00:16:30,380 --> 00:16:36,140 Tapi kali ini, itu akan menjadi jauh, jauh lebih mudah untuk benar-benar melakukannya. 357 00:16:36,140 --> 00:16:41,560 Jadi hanya dalam beberapa saat, ketika Wi-Fi bekerja sama, kita sekarang memiliki layar ini. 358 00:16:41,560 --> 00:16:44,870 Jadi tur verbal cepat, tapi saya berani mengatakan, tentu ketika Anda menyelam ke dalam 359 00:16:44,870 --> 00:16:46,840 Masalah pertama set, Anda akan menemukan ini semua sangat 360 00:16:46,840 --> 00:16:48,315 diakses dan cukup intuitif. 361 00:16:48,315 --> 00:16:50,900 Tapi mari kita melukis gambaran mental untuk sesaat. 362 00:16:50,900 --> 00:16:54,620 >> Jadi di bawah ini cepat save mengatakan perubahan, Anda akan melihat awal. 363 00:16:54,620 --> 00:16:55,570 Ini adalah sprite. 364 00:16:55,570 --> 00:16:56,630 Ini karakter. 365 00:16:56,630 --> 00:17:00,740 Dan dia tinggal di apa yang akan kita sebut panggung, ini persegi panjang putih besar di 366 00:17:00,740 --> 00:17:03,120 yang ia dapat bergerak ke atas, bawah, kiri, kanan, dan lakukan, benar-benar, 367 00:17:03,120 --> 00:17:04,670 jenis tindakan. 368 00:17:04,670 --> 00:17:08,780 >> Sementara itu, di tengah-tengah pengguna ini antarmuka, kami memiliki sejumlah besar 369 00:17:08,780 --> 00:17:09,750 potongan puzzle. 370 00:17:09,750 --> 00:17:14,060 Dan Anda akan melihat bahwa mereka mengatakan hal-hal seperti bergerak 10 langkah, berbalik 15 derajat, 371 00:17:14,060 --> 00:17:15,550 titik dalam arah tertentu. 372 00:17:15,550 --> 00:17:17,910 Tapi ada kategori blok di sini juga. 373 00:17:17,910 --> 00:17:21,410 Jadi jika saya pergi ke Looks, Anda akan melihat bahwa ada potongan puzzle lain yang 374 00:17:21,410 --> 00:17:25,530 tampaknya akan memberitahu cit ini menyapa, untuk berpikir, untuk menunjukkan 375 00:17:25,530 --> 00:17:26,780 sendiri, menyembunyikan dirinya. 376 00:17:26,780 --> 00:17:30,830 Jika saya pergi ke Sounds, ternyata ada cara untuk memutar suara seperti meow, 377 00:17:30,830 --> 00:17:32,670 untuk menghentikan semua suara, untuk memainkan drum. 378 00:17:32,670 --> 00:17:36,530 >> Jadi, singkat cerita, ada keseluruhan sekelompok potongan puzzle yang memungkinkan Anda 379 00:17:36,530 --> 00:17:40,920 untuk memberitahu kucing ini, atau sejumlah karakter lain, apa yang harus dilakukan. 380 00:17:40,920 --> 00:17:43,850 Tetapi untuk membuat ini semua terjadi Anda perlu memulai pemrograman. 381 00:17:43,850 --> 00:17:48,090 Dan ini kotak besar putih, atau kotak abu-abu, pada sisi kanan, di sinilah 382 00:17:48,090 --> 00:17:50,170 Aku akan benar-benar menarik dan menjatuhkan potongan-potongan teka-teki. 383 00:17:50,170 --> 00:17:54,320 Itulah teks kosong saya window setara. 384 00:17:54,320 --> 00:17:57,070 >> Jadi aku akan pergi ke depan dan klik Kontrol di tengah. 385 00:17:57,070 --> 00:17:58,540 Atau lebih tepatnya, aku mulai Acara bawah. 386 00:17:58,540 --> 00:18:01,530 Dalam Acara bangku, Anda akan melihat beberapa hal yang sengaja 387 00:18:01,530 --> 00:18:05,240 melengkung di atas sedemikian rupa sehingga mereka mungkin tidak berpaut pada 388 00:18:05,240 --> 00:18:06,710 atas potongan puzzle. 389 00:18:06,710 --> 00:18:10,160 Dan itu karena mereka Demark awal dari sebuah program, mulai dari 390 00:18:10,160 --> 00:18:11,910 skrip, sehingga untuk berbicara. 391 00:18:11,910 --> 00:18:16,290 Jadi jika saya pergi ke depan dan tarik, ketika hijau bendera diklik di sini, dan kemudian aku 392 00:18:16,290 --> 00:18:18,060 ingin kucing ini mengatakan sesuatu pada awalnya. 393 00:18:18,060 --> 00:18:20,510 Jadi aku akan pergi di bawah tampak panel. 394 00:18:20,510 --> 00:18:24,060 Dan aku akan pergi ke depan dan ambil menyapa blok, dan drag, dan drop, 395 00:18:24,060 --> 00:18:27,220 dan melepaskan sehingga secara otomatis interlocks ada. 396 00:18:27,220 --> 00:18:28,640 >> Dan kemudian melihat saya bisa klik pada teks. 397 00:18:28,640 --> 00:18:31,960 Dan aku bisa menimpa untuk menjadi lebih spesifik seperti, katakanlah, hello world. 398 00:18:31,960 --> 00:18:36,340 Dan sekarang kita memiliki program yang saya klaim adalah setara dengan yang jauh lebih 399 00:18:36,340 --> 00:18:39,670 Program misterius saya menerapkan di C beberapa saat yang lalu. 400 00:18:39,670 --> 00:18:43,130 >> Jika aku pergi sekarang ke sisi kiri, melihat ada tanda berhenti besar 401 00:18:43,130 --> 00:18:44,520 dan bendera hijau besar. 402 00:18:44,520 --> 00:18:46,390 Biarkan aku memperbesar untuk kejelasan. 403 00:18:46,390 --> 00:18:49,390 Dan ketika saya sekarang klik bendera hijau, Anda mungkin bisa menebak apa yang pertama ini 404 00:18:49,390 --> 00:18:51,920 Program ini sekarang akan dilakukan. 405 00:18:51,920 --> 00:18:55,420 Jadi, juga, kita pemrograman, tetapi kita tidak benar-benar macet 406 00:18:55,420 --> 00:18:58,980 di beberapa dari mereka sintaksis, rincian menit. 407 00:18:58,980 --> 00:19:01,120 >> Tapi mari kita mencoba sesuatu yang sedikit lebih menarik. 408 00:19:01,120 --> 00:19:04,840 Biarkan aku pergi ke folder Scratch saya di sini. 409 00:19:04,840 --> 00:19:10,210 Dan sebenarnya, biarkan aku jadi izinkan saya membuka program terpisah sini untuk hanya 410 00:19:10,210 --> 00:19:17,830 saat, Maksimalkan jendela ini, Berkas Terbuka, dan aku akan pergi ke hari ini 411 00:19:17,830 --> 00:19:18,620 direktori source. 412 00:19:18,620 --> 00:19:21,660 Seperti biasa, Anda akan menemukan, hari ini dan dan seterusnya, bahwa semua contoh saat ini 413 00:19:21,660 --> 00:19:25,225 dapat diakses dalam website kursus itu. 414 00:19:25,225 --> 00:19:31,170 >> Dan aku akan pergi ke depan di sini dan memilih up sedikit sesuatu yang berbeda. 415 00:19:31,170 --> 00:19:33,970 Yang ini, yang Aku butuh sukarelawan. 416 00:19:33,970 --> 00:19:36,850 Siapa yang mau lampu meja hari ini? 417 00:19:36,850 --> 00:19:40,600 OK, bagaimana tentang seseorang sedikit - kamu pada akhirnya? 418 00:19:40,600 --> 00:19:42,124 Ayo turun. 419 00:19:42,124 --> 00:19:47,230 Sekarang, Anda ingin berpartisipasi, atau hanya mengatakan mulai dengan lampu meja? 420 00:19:47,230 --> 00:19:48,190 >> VANESSA: [Tak terdengar]. 421 00:19:48,190 --> 00:19:48,465 >> DAVID Malan: OK. 422 00:19:48,465 --> 00:19:49,610 Luar biasa, apa nama Anda? 423 00:19:49,610 --> 00:19:49,990 Vanessa? 424 00:19:49,990 --> 00:19:50,570 David. 425 00:19:50,570 --> 00:19:51,390 Senang bertemu Anda. 426 00:19:51,390 --> 00:19:53,840 Jadi datang ke atas dan Vanessa akan untuk mengambil kendali dari saya 427 00:19:53,840 --> 00:19:55,490 Keyboard untuk sesaat. 428 00:19:55,490 --> 00:19:57,850 Dan apa yang saya lakukan di sini, hanya untuk waktu yang kepentingan, seperti yang telah saya menyadari 429 00:19:57,850 --> 00:20:01,070 Wi-Fi adalah agak lambat, Scratch, yang pemrograman lingkungan bahwa kita 430 00:20:01,070 --> 00:20:04,110 menggunakan, juga dapat didownload dan berjalan pada komputer lokal Anda. 431 00:20:04,110 --> 00:20:06,360 Jadi apa yang saya lakukan di muka kuliah, di kasus yang terjadi, adalah saya download 432 00:20:06,360 --> 00:20:09,120 semua file kita akan bermain dengan sehingga mereka dapat menjalankan sedikit lebih 433 00:20:09,120 --> 00:20:10,840 cepat di sini di laptop saya. 434 00:20:10,840 --> 00:20:13,460 Jadi itu sebabnya sekarang aku melihat interface Mac-spesifik. 435 00:20:13,460 --> 00:20:15,510 >> Jadi aku akan pergi ke depan dan membuka satu ini. 436 00:20:15,510 --> 00:20:18,400 Aku akan pergi ke depan sekarang dan layar penuh jendela. 437 00:20:18,400 --> 00:20:21,740 Dan seperti yang Anda akan melihat, kita bisa sangat cepat, sebagai mahasiswa ini melakukan, salah satu 438 00:20:21,740 --> 00:20:26,360 pendahulu Anda, pergi dari hello world untuk yang jauh lebih menarik 439 00:20:26,360 --> 00:20:27,020 aplikasi. 440 00:20:27,020 --> 00:20:28,180 Jadi di sini adalah instruksi. 441 00:20:28,180 --> 00:20:29,500 Oh, dan kami memiliki satu hal lainnya. 442 00:20:29,500 --> 00:20:31,640 Saya pikir akan menyenangkan, karena, biasanya, kita akan syuting 443 00:20:31,640 --> 00:20:32,440 kamera dengan cara ini. 444 00:20:32,440 --> 00:20:34,100 Saya pikir akan menyenangkan jika, Vanessa, kita bisa melihat dunia 445 00:20:34,100 --> 00:20:35,120 melalui mata Anda. 446 00:20:35,120 --> 00:20:36,670 Jadi di sini kita memiliki beberapa Google Glass. 447 00:20:36,670 --> 00:20:39,290 >> [HERAN Terengah] 448 00:20:39,290 --> 00:20:41,610 >> DAVID Malan: Kami hanya akan memberikan pergi lampu meja hari ini. 449 00:20:41,610 --> 00:20:43,530 >> [Tertawa] 450 00:20:43,530 --> 00:20:45,260 >> Jadi biarkan aku isyarat ini. 451 00:20:45,260 --> 00:20:49,340 Baiklah, jadi menyentuh ini. 452 00:20:49,340 --> 00:20:51,910 OK, Kaca, merekam video. 453 00:20:51,910 --> 00:20:55,700 454 00:20:55,700 --> 00:20:56,950 Baiklah, Vanessa? 455 00:20:56,950 --> 00:21:00,940 456 00:21:00,940 --> 00:21:05,560 Sekarang, sebagai samping yang telah mendapat apa-apa hubungannya dengan Scratch, jika Anda melihat 457 00:21:05,560 --> 00:21:08,540 sedikit naik dan ke kanan, Anda akan melihat kaca literal, dan Anda harus 458 00:21:08,540 --> 00:21:09,650 melihat jendela persegi panjang kecil. 459 00:21:09,650 --> 00:21:11,500 Anda harus melihat semua teman sekelas Anda difilmkan sekarang? 460 00:21:11,500 --> 00:21:11,840 Ya. 461 00:21:11,840 --> 00:21:12,340 >> VANESSA: Ya. 462 00:21:12,340 --> 00:21:12,920 >> DAVID Malan: OK. 463 00:21:12,920 --> 00:21:15,170 Jadi itu bagus. 464 00:21:15,170 --> 00:21:16,660 Kami akan merilis rekaman ini nanti. 465 00:21:16,660 --> 00:21:18,460 Untuk saat ini, mengalihkan perhatian Anda ke layar di sini. 466 00:21:18,460 --> 00:21:20,990 Dan apa pendahulu Anda telah dilakukan adalah menaruh beberapa instruksi pada layar 467 00:21:20,990 --> 00:21:22,670 hanya dengan menggunakan program cat. 468 00:21:22,670 --> 00:21:25,040 Jadi Anda akan, dalam beberapa saat, tekan spasi untuk memulai. 469 00:21:25,040 --> 00:21:27,790 Dan kemudian beberapa potongan puzzle akan untuk mulai bergerak naik layar. 470 00:21:27,790 --> 00:21:30,900 Dan Anda ingin memukul tombol panah, hanya seperti secara real DDR, sesuai 471 00:21:30,900 --> 00:21:32,740 dengan hal-hal berbaris dengan mereka panah. 472 00:21:32,740 --> 00:21:33,020 >> VANESSA: OK. 473 00:21:33,020 --> 00:21:33,800 >> DAVID Malan: Anda telah memainkan ini sebelumnya. 474 00:21:33,800 --> 00:21:34,140 >> VANESSA: Ya. 475 00:21:34,140 --> 00:21:37,330 >> DAVID Malan: Baiklah, Vanessa, pergi ke depan dan membawanya pergi. 476 00:21:37,330 --> 00:22:53,082 >> [MUSIC - Kayne Barat, "KUAT"] 477 00:22:53,082 --> 00:22:57,080 >> [Tepuk Tangan] 478 00:22:57,080 --> 00:22:59,750 >> DAVID Malan: Jadi mari kita sekarang mengambil langkah dari itu. 479 00:22:59,750 --> 00:23:01,230 Jadi jelas, itulah akhir permainan. 480 00:23:01,230 --> 00:23:02,880 Pertandingan berakhir tidak hello world. 481 00:23:02,880 --> 00:23:05,520 Tapi Anda tidak harus selalu dilakukan hal-hal yang sangat interaktif. 482 00:23:05,520 --> 00:23:06,810 Anda juga dapat melakukan animasi. 483 00:23:06,810 --> 00:23:10,790 Jadi misalnya, satu lagi dari Anda penerus membuat program ini di sini, 484 00:23:10,790 --> 00:23:14,100 yang menceritakan sebuah cerita lebih dari itu tidak dilaksanakan permainan. 485 00:23:14,100 --> 00:23:19,180 Jadi biarkan aku pergi ke depan dan membuka sini Program dalam direktori sumber yang sama kami 486 00:23:19,180 --> 00:23:20,300 dari hari ini. 487 00:23:20,300 --> 00:23:26,990 Ini satu panggilan, dan mari kita mulai dengan, kisah cinta kue. 488 00:23:26,990 --> 00:23:30,750 >> Dan bukan untuk membuat ini terlalu akademis, namun, ketika Anda menonton satu ini, pikirkan untuk 489 00:23:30,750 --> 00:23:34,030 sendiri mana yang sederhana konsep pemrograman kita sudah bicara 490 00:23:34,030 --> 00:23:34,630 tentang sejauh - 491 00:23:34,630 --> 00:23:39,250 variabel, dan loop, dan kondisi, tidak pendahulu Anda mungkin menggunakan hanya 492 00:23:39,250 --> 00:23:41,090 untuk melaksanakan beberapa visualisasi. 493 00:23:41,090 --> 00:23:41,760 Anda lihat di sini. 494 00:23:41,760 --> 00:23:44,118 Jadi saya memberikan Sebuah cerita cinta kue. 495 00:23:44,118 --> 00:24:06,030 >> [MUSIC - GREEN DAY, "HOLIDAY"] 496 00:24:06,030 --> 00:24:08,022 >> [CRASH] 497 00:24:08,022 --> 00:24:09,272 >> [MUSIC - THE TURTLES, "SELAMAT BERSAMA"] 498 00:24:09,272 --> 00:24:58,328 499 00:24:58,328 --> 00:25:00,560 >> DAVID Malan: Baiklah, jadi ada, kami memiliki sebuah kisah cinta kue. 500 00:25:00,560 --> 00:25:01,360 Tapi bahkan di sana - 501 00:25:01,360 --> 00:25:01,755 >> [Tepuk Tangan] 502 00:25:01,755 --> 00:25:08,110 >> DAVID Malan: Baiklah, bahkan di sana, pikirkan, seperti yang pergi dari hati 503 00:25:08,110 --> 00:25:10,410 bagian bawah ke atas layar, sebenarnya ada sedikit 504 00:25:10,410 --> 00:25:11,440 keacakan terjadi. 505 00:25:11,440 --> 00:25:14,150 Dan memang, kita akan melihat bahwa bahkan di sederhana lingkungan, seperti 506 00:25:14,150 --> 00:25:18,180 Scratch, seperti di C, Anda dapat menghasilkan nomor acak, atau ilusi 507 00:25:18,180 --> 00:25:21,110 angka acak, sehingga permainan adalah sedikit lebih menarik daripada itu mungkin 508 00:25:21,110 --> 00:25:23,390 jika Anda telah benar-benar keras kode segalanya. 509 00:25:23,390 --> 00:25:26,360 >> Dalam gerakan yang Anda lihat, ada ada beberapa jenis respon. 510 00:25:26,360 --> 00:25:28,840 Segera setelah gingerbread man menyentuh wanita jahe, dia 511 00:25:28,840 --> 00:25:30,000 tampaknya menjauh. 512 00:25:30,000 --> 00:25:33,580 Dan, memang, Anda dapat menerapkan, di bahasa pemrograman yang paling, gagasan 513 00:25:33,580 --> 00:25:38,680 peristiwa, dimana jika sentuhan tangan sisi lain, yang dapat memicu beberapa 514 00:25:38,680 --> 00:25:41,270 kode sumber ke benar-benar melaksanakan. 515 00:25:41,270 --> 00:25:43,740 Anda dapat mendengarkan untuk seperti hal di layar. 516 00:25:43,740 --> 00:25:47,310 >> Jadi mari kita tur singkat, kemudian, beberapa blok bangunan kita dapat menggunakan 517 00:25:47,310 --> 00:25:48,790 untuk mencapai beberapa tujuan ini. 518 00:25:48,790 --> 00:25:51,630 Jadi, inilah yang kita akan selanjutnya sebut sebuah pernyataan. 519 00:25:51,630 --> 00:25:55,030 Sebuah pernyataan kebetulan ungu Scratch, sedikit sesuatu seperti ini, 520 00:25:55,030 --> 00:25:56,120 tapi itu sewenang-wenang. 521 00:25:56,120 --> 00:26:00,140 Pernyataan adalah hanya sepotong teka-teki atau, lebih umum, instruksi, yang 522 00:26:00,140 --> 00:26:03,370 memberitahu komputer untuk melakukan sesuatu, sebuah pernyataan. 523 00:26:03,370 --> 00:26:04,680 >> Jadi, inilah contoh sederhana. 524 00:26:04,680 --> 00:26:05,930 Menyapa dunia. 525 00:26:05,930 --> 00:26:08,180 Satu lagi mungkin menunggu satu detik. 526 00:26:08,180 --> 00:26:10,840 Jadi teka-teki ini bagian, yang didukung di Scratch, kami akan memberitahu Anda 527 00:26:10,840 --> 00:26:13,050 karakter jeda selama beberapa jumlah detik. 528 00:26:13,050 --> 00:26:15,330 Ini juga, hanya sebuah pernyataan. 529 00:26:15,330 --> 00:26:18,640 >> Disini berikutnya, kita memiliki lain lebih menarik satu, bermain suara meong, dan 530 00:26:18,640 --> 00:26:21,480 panah kecil berarti bahwa dalam Scratch, ini adalah menu drop down. 531 00:26:21,480 --> 00:26:22,590 Sehingga Anda dapat mengimpor suara. 532 00:26:22,590 --> 00:26:25,095 Anda dapat merekam suara dan melakukan lain hal menyenangkan di Scratch. 533 00:26:25,095 --> 00:26:28,450 Dan itu juga, meskipun, pada akhir hari, hanya sebuah pernyataan. 534 00:26:28,450 --> 00:26:31,250 Tapi sekarang mari kita memperkenalkan lebih bagian yang menarik, yang dikenal sebagai 535 00:26:31,250 --> 00:26:32,630 Ekspresi Boolean. 536 00:26:32,630 --> 00:26:35,180 Modal B, dinamai seorang rekan bernama Bool. 537 00:26:35,180 --> 00:26:39,500 >> Dan ekspresi Boolean hanya potongan puzzle atau, lebih umum, 538 00:26:39,500 --> 00:26:42,980 bagian dari informasi yang benar atau salah - 539 00:26:42,980 --> 00:26:45,830 satu atau nol, ya atau tidak. 540 00:26:45,830 --> 00:26:48,420 Jadi itu hanya salah satu dari mereka dua hal yang bertentangan. 541 00:26:48,420 --> 00:26:52,840 Jadi salah satu ekspresi Boolean seperti di dunia Scratch terlihat seperti ini biru 542 00:26:52,840 --> 00:26:53,560 teka-teki potongan. 543 00:26:53,560 --> 00:26:56,735 Dan itu mengajukan pertanyaan, mouse bawah, dan yang dapat menjadi, dari 544 00:26:56,735 --> 00:26:58,430 Tentu saja, benar atau salah. 545 00:26:58,430 --> 00:27:01,710 Jadi dengan teka-teki ini bagian dalam Scratch, baik, Anda akan dapat mendeteksi jika 546 00:27:01,710 --> 00:27:05,490 teka-teki jika mouse, pada kenyataannya, menjadi ditekan oleh interaksi manusia 547 00:27:05,490 --> 00:27:06,550 dengan program anda. 548 00:27:06,550 --> 00:27:08,860 >> Yang ini sedikit lebih abstrak, tetapi mereka dua kotak putih 549 00:27:08,860 --> 00:27:09,740 hanya untuk nomor. 550 00:27:09,740 --> 00:27:12,950 Sehingga Anda dapat melakukan hal-hal seperti ini adalah jumlah kurang dari yang lain? 551 00:27:12,950 --> 00:27:16,180 Dan jika demikian, Scratch akan berperilaku salah satu cara atau yang lain. 552 00:27:16,180 --> 00:27:17,505 Yang ini sedikit lebih grafis. 553 00:27:17,505 --> 00:27:21,840 Ini jika sprite, jika kucing, untuk Misalnya, sebenarnya menyentuh 554 00:27:21,840 --> 00:27:22,510 pointer mouse. 555 00:27:22,510 --> 00:27:25,780 Jadi jika panah kepala sedikit yang melayang lebih dari kucing, maka ini 556 00:27:25,780 --> 00:27:28,030 potongan puzzle akan mengevaluasi dengan benar. 557 00:27:28,030 --> 00:27:31,870 Ini akan menjadi kenyataan, dalam hal ini, jika Anda menggunakan ekspresi Boolean, seperti yang kita akan 558 00:27:31,870 --> 00:27:36,340 lihat sebentar, di cabang, Anda dapat baik melakukan hal ini, atau Anda bisa melakukan itu, 559 00:27:36,340 --> 00:27:39,940 banyak seperti kami memiliki kondisi yang diperiksa, apakah ada satu orang lagi lalu 560 00:27:39,940 --> 00:27:40,460 dalam ruangan? 561 00:27:40,460 --> 00:27:42,070 Jika demikian, menambahkan satu. 562 00:27:42,070 --> 00:27:44,430 Jika tidak, jangan khawatir lanjut. 563 00:27:44,430 --> 00:27:48,650 >> Jadi ekspresi Boolean juga bisa dan-ed bersama-sama atau atau ed bersama-sama. 564 00:27:48,650 --> 00:27:53,120 Sehingga Anda dapat menggabungkan ekspresi Boolean dan mengatakan ini dan ini harus benar untuk 565 00:27:53,120 --> 00:27:54,710 seluruh hal untuk menjadi kenyataan. 566 00:27:54,710 --> 00:27:56,520 Dan di sini adalah contoh dunia yang lebih nyata. 567 00:27:56,520 --> 00:28:00,060 Jika Anda telah menggunakan CS50 Kursus untuk melakukan kursus belanja, kotak-kotak centang 568 00:28:00,060 --> 00:28:03,520 sana, di mana jika Anda memeriksa kotak yang berikutnya program, yang akan mengatakan, ya, 569 00:28:03,520 --> 00:28:07,860 hanya menunjukkan program yang nilai Q adalah 4.5 atau lebih tinggi. 570 00:28:07,860 --> 00:28:10,610 Jika Anda hapus centang, tidak, jangan khawatir tentang itu. 571 00:28:10,610 --> 00:28:13,910 Atau sama, di sebelah kanan, Apakah tidak Konflik Dengan Program Aku Mengambil, 572 00:28:13,910 --> 00:28:15,650 itu benar atau salah. 573 00:28:15,650 --> 00:28:16,715 Ini hanya ekspresi Boolean. 574 00:28:16,715 --> 00:28:20,080 Jadi selama ini ketika Anda sudah digunakan website dengan kotak centang, Anda hanya 575 00:28:20,080 --> 00:28:23,570 Toggling setara dengan Boolean ekspresi dan mematikan. 576 00:28:23,570 --> 00:28:25,270 >> Jadi dalam bentuk apa yang Anda gunakan ini? 577 00:28:25,270 --> 00:28:28,820 Nah, dalam Scratch, kita akan lihat sebentar lagi bahwa ada kondisi yang 578 00:28:28,820 --> 00:28:29,560 terlihat seperti ini. 579 00:28:29,560 --> 00:28:33,130 Dan itu agak masuk akal karena banyak seperti pada pseudocode, kami menjorok 580 00:28:33,130 --> 00:28:38,550 jenis potongan puzzle berbentuk U, berarti bahwa apa pun dalam U yang 581 00:28:38,550 --> 00:28:41,390 akan mengeksekusi, atau tidak, tergantung di mana itu. 582 00:28:41,390 --> 00:28:45,310 Jadi jika ekspresi Boolean, maka apapun yang ada di dalamnya akan dieksekusi. 583 00:28:45,310 --> 00:28:46,800 >> Sementara itu, ada sebuah blok jika / lain. 584 00:28:46,800 --> 00:28:50,320 Jadi jika Anda ingin cabang yang berjalan ini cara atau itu, Scratch memberi kita itu. 585 00:28:50,320 --> 00:28:54,500 Dan dengan logika ini, sekarang, meskipun itu potongan puzzle jelas terlalu kecil 586 00:28:54,500 --> 00:28:57,400 irisan sesuatu yang lain di dalamnya, potongan-potongan teka-teki awal, mereka 587 00:28:57,400 --> 00:28:58,150 hanya akan tumbuh. 588 00:28:58,150 --> 00:29:01,370 Ketika Anda drag dan drop atas sesuatu, itu hanya akan tumbuh sesuai apa pun 589 00:29:01,370 --> 00:29:02,510 adalah Anda coba lakukan. 590 00:29:02,510 --> 00:29:07,230 >> Jadi kita bisa mengambil dua dari hal-hal ini dan membuat garpu cara tiga jalan sehingga 591 00:29:07,230 --> 00:29:11,300 bahwa baik Anda melakukan ini, atau itu, atau hal lainnya hanya dengan bersarang mereka 592 00:29:11,300 --> 00:29:12,070 dengan cara itu. 593 00:29:12,070 --> 00:29:14,370 Tentu saja, jika Anda melakukannya juga banyak, mulai mendapatkan jelek. 594 00:29:14,370 --> 00:29:17,660 Tapi pada saat itu, Anda benar-benar mungkin tidak pemrograman sangat baik. 595 00:29:17,660 --> 00:29:20,490 Dan sehingga akan berulang tema, juga, bahwa gaya. 596 00:29:20,490 --> 00:29:22,790 Hanya seberapa baik sebenarnya memformat kode Anda? 597 00:29:22,790 --> 00:29:24,580 Atau seberapa baik Anda merancang kode Anda? 598 00:29:24,580 --> 00:29:26,430 Tapi lebih pada bahwa di masa depan. 599 00:29:26,430 --> 00:29:27,470 >> Dan sekarang kami memiliki loop. 600 00:29:27,470 --> 00:29:30,310 Ada lingkaran selamanya bagus di Scratch yang secara harfiah berarti - melakukan 601 00:29:30,310 --> 00:29:32,710 apa pun dalam hal ini lagi, dan lagi, dan lagi. 602 00:29:32,710 --> 00:29:35,880 Anda bisa menjadi lebih konkret dan berkata, melakukan hal berikut 10 kali. 603 00:29:35,880 --> 00:29:37,620 Anda juga dapat menggunakan variabel. 604 00:29:37,620 --> 00:29:40,260 Anda bisa datang dengan nama apapun dalam sedikit drop-down dan berkata, beri saya 605 00:29:40,260 --> 00:29:43,190 variabel yang disebut n dan mengatur itu sama untuk beberapa nilai. 606 00:29:43,190 --> 00:29:44,910 Dan kemudian Anda dapat memiliki fungsi. 607 00:29:44,910 --> 00:29:46,850 Tapi lebih pada orang-orang hanya dalam beberapa saat. 608 00:29:46,850 --> 00:29:49,140 >> Biarkan aku kembali ke saya Gores antarmuka. 609 00:29:49,140 --> 00:29:50,970 Dan biarkan aku pergi ke depan saat ini. 610 00:29:50,970 --> 00:29:56,660 Dan mari kita pergi ke depan dan membuka, katakanlah, sebuah contoh dari - 611 00:29:56,660 --> 00:29:58,740 yang sedikit lebih menarik. 612 00:29:58,740 --> 00:30:00,750 Biarkan aku pergi ke depan, dan, sebenarnya, biarkan aku hanya membuat sendiri. 613 00:30:00,750 --> 00:30:01,960 Saya tidak perlu membuka satu ini. 614 00:30:01,960 --> 00:30:03,390 Biarkan aku pergi ke File, New. 615 00:30:03,390 --> 00:30:04,740 Aku akan pergi ke acara. 616 00:30:04,740 --> 00:30:08,460 Aku akan pergi ke ketika bendera hijau diklik, dan aku akan pergi ke Suara. 617 00:30:08,460 --> 00:30:11,590 Dan aku akan drag dan drop ini potongan puzzle, bermain meong suara. 618 00:30:11,590 --> 00:30:12,580 Ini kait bersama-sama. 619 00:30:12,580 --> 00:30:14,327 Dan sekarang, jika saya klik bendera hijau - 620 00:30:14,327 --> 00:30:16,260 >> [MEOW SUARA] 621 00:30:16,260 --> 00:30:17,500 >> DAVID Malan: Adorable. 622 00:30:17,500 --> 00:30:21,560 OK, jadi sekarang mari kita lakukan sesuatu yang sedikit lebih logis hanya untuk menunjukkan bahwa 623 00:30:21,560 --> 00:30:22,760 kita bisa, untuk saat ini. 624 00:30:22,760 --> 00:30:25,550 Aku akan membuka pasak ini dari orang itu. 625 00:30:25,550 --> 00:30:27,000 Aku akan pergi ke Control. 626 00:30:27,000 --> 00:30:28,770 Dan aku akan ambil kondisi. 627 00:30:28,770 --> 00:30:30,600 Jadi jika sesuatu maka. 628 00:30:30,600 --> 00:30:32,020 Jadi itulah bagaimana tampilannya di sana. 629 00:30:32,020 --> 00:30:33,890 Jadi aku butuh ekspresi Boolean. 630 00:30:33,890 --> 00:30:38,130 Dan biarkan aku pergi ke depan dan berkata, biarkan aku pergi ke Operator. 631 00:30:38,130 --> 00:30:40,270 Aku akan melakukan sesuatu yang sedikit mathy, hanya untuk iseng. 632 00:30:40,270 --> 00:30:43,600 Aku akan pergi di sini dan mengatakan, jika sesuatu yang kurang dari sesuatu yang lain, 633 00:30:43,600 --> 00:30:45,030 pergi ke depan dan melakukan sesuatu. 634 00:30:45,030 --> 00:30:46,890 Jadi sekarang, Anda tahu apa, blok acak. 635 00:30:46,890 --> 00:30:51,620 Jadi perhatikan bagaimana, jika saya membawa lebih dari ini hal di sini, yang akan patah sana. 636 00:30:51,620 --> 00:30:54,090 >> Jadi sekarang, pemberitahuan, aku mulai melakukan sesuatu yang sudah lebih logis 637 00:30:54,090 --> 00:30:54,650 menarik. 638 00:30:54,650 --> 00:30:59,720 Jika nomor acak antara 1 dan 10 kurang dari, katakanlah enam. 639 00:30:59,720 --> 00:31:03,670 Jika saya memilih enam, yang pada dasarnya berarti, lakukan langkah berikut dengan 50% 640 00:31:03,670 --> 00:31:03,980 probabilitas. 641 00:31:03,980 --> 00:31:05,460 Ini seperti membalik koin. 642 00:31:05,460 --> 00:31:07,330 Sekarang, aku bisa melakukan sesuatu kondisional. 643 00:31:07,330 --> 00:31:10,800 Dan itu sesuatu yang aku akan lakukan adalah memutar suara. 644 00:31:10,800 --> 00:31:14,280 Jadi sekarang, ketika saya klik pada layar bendera, itu seperti melempar koin. 645 00:31:14,280 --> 00:31:14,610 >> [MEOW SUARA] 646 00:31:14,610 --> 00:31:17,160 >> DAVID Malan: Itu kepala atau entah apa lagi di sana. 647 00:31:17,160 --> 00:31:17,920 Mari kita lakukan lagi. 648 00:31:17,920 --> 00:31:18,860 >> [MEOW SUARA] 649 00:31:18,860 --> 00:31:19,790 >> DAVID Malan: Heads lagi. 650 00:31:19,790 --> 00:31:20,280 >> [MEOW SUARA] 651 00:31:20,280 --> 00:31:21,500 >> DAVID Malan: Heads lagi. 652 00:31:21,500 --> 00:31:22,631 Fiuh, OK. 653 00:31:22,631 --> 00:31:24,720 Ekor waktu itu. 654 00:31:24,720 --> 00:31:29,545 Jadi 50% dari waktu, jika kita melakukan ini panjang tak terhingga, kita akan mendapatkan 50% meows 655 00:31:29,545 --> 00:31:32,180 dan membungkam 50%. 656 00:31:32,180 --> 00:31:34,850 Jadi, hanya bangunan dasar blok yang memungkinkan kita melakukan itu. 657 00:31:34,850 --> 00:31:37,710 Tapi ini adalah jenis membosankan yang saya miliki terus klik tombol itu. 658 00:31:37,710 --> 00:31:39,810 Jadi mari kita hanya drag dan melemparkan semua orang pergi. 659 00:31:39,810 --> 00:31:42,270 Jika Anda menyeret mereka ke tengah, mereka hanya akan menghapus sendiri. 660 00:31:42,270 --> 00:31:43,760 >> Biarkan aku pergi untuk mengontrol. 661 00:31:43,760 --> 00:31:46,060 Biarkan aku pergi selamanya. 662 00:31:46,060 --> 00:31:49,952 Dan kali ini, saya akan melakukan sesuatu minorly menjengkelkan. 663 00:31:49,952 --> 00:31:51,560 >> [Tertawa] 664 00:31:51,560 --> 00:31:53,370 >> DAVID Malan: Dan biarkan aku pergi depan dan melakukan kontrol. 665 00:31:53,370 --> 00:31:57,260 Tunggu satu detik, hanya begitu itu tidak terlalu kisi. 666 00:31:57,260 --> 00:31:59,870 >> [MEOW SUARA] 667 00:31:59,870 --> 00:32:00,970 >> DAVID Malan: Itu tidak wajar. 668 00:32:00,970 --> 00:32:01,861 OK. 669 00:32:01,861 --> 00:32:04,510 >> [MEOW SUARA] 670 00:32:04,510 --> 00:32:06,406 >> DAVID Malan: Dan perhatikan apa, bagus tentang Scratch, bagi anda yang 671 00:32:06,406 --> 00:32:09,210 memiliki pengalaman sebelumnya programing, Anda tidak perlu untuk memulai dan menghentikan. 672 00:32:09,210 --> 00:32:10,060 Anda tidak perlu untuk mengkompilasi. 673 00:32:10,060 --> 00:32:13,210 Anda hanya mengubahnya, dan program akan beradaptasi secara dinamis. 674 00:32:13,210 --> 00:32:14,620 Jadi, ini adalah mendapatkan kecil yang menarik. 675 00:32:14,620 --> 00:32:16,930 Tapi mari kita mengambil satu langkah lebih jauh. 676 00:32:16,930 --> 00:32:19,760 Biarkan aku pergi ke depan dan mendapatkan Singkirkan program itu. 677 00:32:19,760 --> 00:32:23,300 >> [MEOW SUARA] 678 00:32:23,300 --> 00:32:25,520 >> DAVID Malan: Itulah yang kita akan sebut bug di Scratch. 679 00:32:25,520 --> 00:32:26,770 Dia seharusnya tidak terus membuat suara itu. 680 00:32:26,770 --> 00:32:28,340 Jadi kita kita akan menyuruhnya berhenti. 681 00:32:28,340 --> 00:32:30,435 Baiklah, jadi sekarang aku akan pergi ke - 682 00:32:30,435 --> 00:32:32,180 Aku akan membiarkan MIT tahu. 683 00:32:32,180 --> 00:32:35,160 Kita akan pergi ke sini untuk Selamanya. 684 00:32:35,160 --> 00:32:37,240 Dan sekarang, saya ingin melakukan sesuatu lagi dan lagi. 685 00:32:37,240 --> 00:32:38,760 Aku akan pergi ke Control. 686 00:32:38,760 --> 00:32:41,570 >> Dan mari kita lihat, aku akan menyeret saya jika kondisi di sana. 687 00:32:41,570 --> 00:32:42,850 Jadi sekarang melihat logika. 688 00:32:42,850 --> 00:32:46,430 Ketika bendera hijau diklik, lakukan sesuatu yang selamanya, tetapi hanya melakukan itu 689 00:32:46,430 --> 00:32:48,890 sesuatu jika hal ini lainnya adalah benar. 690 00:32:48,890 --> 00:32:51,480 Aku akan pergi ke, mari kita mengatakan, penginderaan. 691 00:32:51,480 --> 00:32:54,430 Dan aku akan pergi ke depan dan memilih menyentuh dan jatuhkan di sana. 692 00:32:54,430 --> 00:32:55,930 Itulah ekspresi Boolean. 693 00:32:55,930 --> 00:32:57,740 >> Dan sekarang, perhatikan, dalam daftar ini down menu, ada 694 00:32:57,740 --> 00:32:59,050 beberapa nilai yang telah ditetapkan. 695 00:32:59,050 --> 00:33:00,910 Jadi bisa saya katakan, kau menyentuh tepi layar? 696 00:33:00,910 --> 00:33:03,900 Atau apakah Anda menyentuh pointer mouse, panah di layar? 697 00:33:03,900 --> 00:33:04,620 Jadi aku akan melakukan itu. 698 00:33:04,620 --> 00:33:08,770 Dan jika demikian, maka aku akan pergi depan dan bermain meong suara. 699 00:33:08,770 --> 00:33:11,250 Jadi sekarang aku jenis memiliki awal dari permainan - 700 00:33:11,250 --> 00:33:13,110 permainan menggemaskan. 701 00:33:13,110 --> 00:33:14,060 >> [MEOW SUARA] 702 00:33:14,060 --> 00:33:17,250 >> DAVID Malan: OK, menggemaskan, permainan kereta. 703 00:33:17,250 --> 00:33:20,770 Biarkan saya menunggu, katakanlah, satu detik di sana. 704 00:33:20,770 --> 00:33:24,910 Sekarang bermain lagi, dengan mengklik bendera hijau. 705 00:33:24,910 --> 00:33:27,860 >> [MEOW SUARA] 706 00:33:27,860 --> 00:33:30,460 >> DAVID Malan: Jadi sekarang seperti membelai kucing. 707 00:33:30,460 --> 00:33:31,850 >> [MEOW SUARA] 708 00:33:31,850 --> 00:33:34,460 >> DAVID Malan: Baiklah, sekarang ini salah Aku memang membuat terlebih dahulu. 709 00:33:34,460 --> 00:33:39,250 Sangat terlambat, mendapat semacam mudah untuk melakukan hal-hal bodoh. 710 00:33:39,250 --> 00:33:40,240 Jadi biarkan aku pergi di sini. 711 00:33:40,240 --> 00:33:43,720 Katakanlah, yang Pet Cat. 712 00:33:43,720 --> 00:33:46,600 Mari kita sekarang buka Jangan Pet Cat. 713 00:33:46,600 --> 00:33:48,330 Sekarang, jika kami bermain satu ini, Anda bisa menebak, jika Anda 714 00:33:48,330 --> 00:33:49,650 melihat layar - 715 00:33:49,650 --> 00:33:51,090 >> [MEOW SUARA] 716 00:33:51,090 --> 00:33:52,170 >> DAVID Malan: Sekarang, jika saya pet kucing 717 00:33:52,170 --> 00:33:55,420 >> [LION'S ROAR] 718 00:33:55,420 --> 00:33:57,260 >> DAVID Malan: Jadi tidak benar-benar pet kucing dalam kasus itu. 719 00:33:57,260 --> 00:34:01,350 Jadi sekarang kita hanya memiliki contoh dari cabang yang akan dalam dua arah. 720 00:34:01,350 --> 00:34:03,130 Sekarang biarkan aku pergi ke depan dan membuka satu lagi di sini. 721 00:34:03,130 --> 00:34:07,120 Yang satu ini, juga, antara sumber kami file kode untuk hari. 722 00:34:07,120 --> 00:34:13,199 Jadi biarkan aku kembali ke Sumber saya direktori dan masuk ke dalam, mari kita pilih 723 00:34:13,199 --> 00:34:15,610 orang ini di sini dan melihat apa yang berbeda. 724 00:34:15,610 --> 00:34:17,449 >> Wow, semua yang benar, jadi sekarang itu semakin sedikit lebih kompleks. 725 00:34:17,449 --> 00:34:21,300 Dan sebelum kita melihat apa yang orang ini tidak, mari kita coba untuk menyimpulkan, dari program 726 00:34:21,300 --> 00:34:22,219 di sisi kanan. 727 00:34:22,219 --> 00:34:25,590 Dan sekarang awal jelas memungkinkan kita untuk memiliki beberapa script, beberapa 728 00:34:25,590 --> 00:34:29,730 program yang terkait dengan satu sprite, dengan satu karakter, dan, tampaknya, 729 00:34:29,730 --> 00:34:31,760 mereka berdua akan berjalan berbaris. 730 00:34:31,760 --> 00:34:35,570 Karena kedua program ini dimulai dengan ketika hijau bendera klik, ini 731 00:34:35,570 --> 00:34:38,650 mengisyaratkan pada topik yang lebih maju, dengan yang beberapa dari Anda mungkin akrab, 732 00:34:38,650 --> 00:34:40,580 dikenal sebagai threading, atau multi-threading. 733 00:34:40,580 --> 00:34:44,400 >> Ternyata, cerita panjang pendek, komputer hari ini pada dasarnya dapat melakukan beberapa 734 00:34:44,400 --> 00:34:45,270 hal sekaligus. 735 00:34:45,270 --> 00:34:48,659 Atau mereka bisa melakukan satu hal pada suatu waktu sehingga cepat sehingga Anda bahkan tidak menyadari bahwa 736 00:34:48,659 --> 00:34:50,150 itu benar-benar melakukan satu hal pada suatu waktu. 737 00:34:50,150 --> 00:34:53,320 Tapi untuk saat ini, mari kita asumsikan bahwa kedua program ini akan mengeksekusi 738 00:34:53,320 --> 00:34:54,310 waktu yang sama. 739 00:34:54,310 --> 00:34:57,350 Dan perhatikan, keduanya memiliki selamanya teka-teki potongan. 740 00:34:57,350 --> 00:35:01,270 Jadi mereka berdua akan tetap berjalan sampai aku memukul tanda berhenti merah. 741 00:35:01,270 --> 00:35:02,100 >> Jadi apa yang akan mereka lakukan? 742 00:35:02,100 --> 00:35:06,030 Di sisi kiri, aku rupanya mendeklarasikan variabel disebut diredam. 743 00:35:06,030 --> 00:35:09,030 Jadi saya tidak menyebutnya sesuatu seperti membosankan seperti N. Aku menyebutnya diredam ini 744 00:35:09,030 --> 00:35:10,240 waktu untuk menyampaikan makna. 745 00:35:10,240 --> 00:35:11,780 Aku mengaturnya sama dengan nol. 746 00:35:11,780 --> 00:35:16,200 Mari kita menganggap hal itu sebagai palsu, atau mari kita berpikir bahwa sebagai False. 747 00:35:16,200 --> 00:35:17,490 >> Sekarang, selamanya lakukan hal berikut. 748 00:35:17,490 --> 00:35:23,280 Jika spasi keyboard yang ditekan, kemudian jika diredam sama dengan nol, 749 00:35:23,280 --> 00:35:25,930 kemudian mengubah diredam untuk sama dengan satu. 750 00:35:25,930 --> 00:35:27,580 Lain, mengatur diredam ke nol. 751 00:35:27,580 --> 00:35:30,530 Jadi secara logis, meskipun itu secara keseluruhan sekelompok potongan puzzle yang 752 00:35:30,530 --> 00:35:33,160 hanya mengatakan, ketika saya menekan Space bar, apa yang harus saya lakukan untuk variabel 753 00:35:33,160 --> 00:35:34,750 disebut diredam? 754 00:35:34,750 --> 00:35:37,170 Mengubahnya dari satu sampai nol, atau nol sampai satu. 755 00:35:37,170 --> 00:35:37,840 Itu saja. 756 00:35:37,840 --> 00:35:40,740 Jadi seperti menyalakan tombol lampu on atau off dan mengingat, dengan 757 00:35:40,740 --> 00:35:42,330 variabel, bahwa saya telah melakukan itu. 758 00:35:42,330 --> 00:35:45,990 >> Sementara itu, di sisi kanan, di istilah awam, apa tujuan dari 759 00:35:45,990 --> 00:35:47,547 script di sebelah kanan? 760 00:35:47,547 --> 00:35:48,860 >> SISWA: Untuk memutar suara singa laut. 761 00:35:48,860 --> 00:35:52,500 >> DAVID Malan: Untuk memutar Sea Lion suara, jika ia tidak diredam, oleh 762 00:35:52,500 --> 00:35:53,480 sifat variabel tersebut. 763 00:35:53,480 --> 00:35:57,360 Jadi kita berbagi negara, sehingga untuk berbicara, berbagi informasi di kedua 764 00:35:57,360 --> 00:36:00,540 script karena, perhatikan di sini, kita selamanya melakukan hal berikut. 765 00:36:00,540 --> 00:36:04,620 Jika diredam adalah nol, jadi jika tidak diredam - jika diredam adalah palsu, kemudian bermain 766 00:36:04,620 --> 00:36:05,980 Singa ini suara Laut. 767 00:36:05,980 --> 00:36:09,930 Dan berpikir untuk diri sendiri, hi, hi, hi, untuk dua detik, tunggu sebentar, dan kemudian 768 00:36:09,930 --> 00:36:11,140 periksa lagi. 769 00:36:11,140 --> 00:36:15,150 Jadi, jika kita pergi sekarang ke sini ke kiri, ke mana orang ini, dan tekan 770 00:36:15,150 --> 00:36:16,662 bendera hijau, 771 00:36:16,662 --> 00:36:30,260 >> [SEA LION SUARA] 772 00:36:30,260 --> 00:36:31,910 >> DAVID Malan: Pada titik tidak ini bisa benar-benar menjengkelkan? 773 00:36:31,910 --> 00:36:33,440 Karena hal ini hanya akan berlangsung selamanya. 774 00:36:33,440 --> 00:36:36,490 Jadi kadang-kadang, loop tak terbatas, sehingga untuk berbicara, yang disengaja. 775 00:36:36,490 --> 00:36:41,140 Tapi dalam kasus ini, segera setelah saya hit Space bar, ia berhenti. 776 00:36:41,140 --> 00:36:42,800 Sekarang program ini belum berhenti. 777 00:36:42,800 --> 00:36:44,760 Ini masih berjalan dalam loop. 778 00:36:44,760 --> 00:36:46,540 Tetapi jika saya mendapatkan spasi lagi - 779 00:36:46,540 --> 00:36:47,851 >> [SEA LION SUARA] 780 00:36:47,851 --> 00:36:49,650 >> DAVID Malan: Dia akan memilih up di mana ia tinggalkan. 781 00:36:49,650 --> 00:36:53,240 Jadi ada satu cara bagi kita untuk melakukan sesuatu lagi dan lagi tapi, itu 782 00:36:53,240 --> 00:36:54,920 waktu, hanya kondisional. 783 00:36:54,920 --> 00:36:58,940 Nah, sementara kita berada di vena ini melakukan hal lagi dan lagi, biarkan aku 784 00:36:58,940 --> 00:37:01,370 masuk ke contoh lain lagi di sini. 785 00:37:01,370 --> 00:37:04,370 Yang satu ini kita sebut menghitung domba. 786 00:37:04,370 --> 00:37:05,710 >> Dan perhatikan apa orang ini tidak. 787 00:37:05,710 --> 00:37:08,540 Ini sebenarnya sedikit lebih seperti pseudocode kami bermain dengan on 788 00:37:08,540 --> 00:37:12,230 Rabu, dimana ia menetapkan beberapa counter, berpikir itu adalah sebagai N lagi, untuk 789 00:37:12,230 --> 00:37:14,030 nol, ia selamanya melakukan berikut ini. 790 00:37:14,030 --> 00:37:17,960 Dia mengatakan nilai counter untuk satu kedua, menunggu kedua, dan kemudian 791 00:37:17,960 --> 00:37:19,430 perubahan counter per satu. 792 00:37:19,430 --> 00:37:21,570 Dan dalam konteks ini, yang baru saja berarti kenaikan itu. 793 00:37:21,570 --> 00:37:23,250 Jadi dia menambahkan satu untuk itu. 794 00:37:23,250 --> 00:37:25,830 Jadi ini benar - 795 00:37:25,830 --> 00:37:27,890 itu tidak cukup apa yang kita pikirkan sebagai menghitung domba. 796 00:37:27,890 --> 00:37:33,120 Ini domba melakukan penghitungan, selamanya, naik dari nol. 797 00:37:33,120 --> 00:37:35,560 >> Jadi kita bisa melakukan hal yang serupa ada, secara logis. 798 00:37:35,560 --> 00:37:37,750 Tapi sekarang mari kita coba untuk membersihkan beberapa hal-hal ini. 799 00:37:37,750 --> 00:37:43,440 Biarkan aku pergi ke depan sekarang menjadi sederhana contoh di mana kucing kami hanya akan 800 00:37:43,440 --> 00:37:44,750 mulai batuk. 801 00:37:44,750 --> 00:37:48,830 Baiklah, jadi di sini kita memiliki batuk 0 - 802 00:37:48,830 --> 00:37:50,685 ilmuwan komputer mulai menghitung dari 0. 803 00:37:50,685 --> 00:37:53,480 Jadi kucing ini hanya akan batuk tiga kali. 804 00:37:53,480 --> 00:37:54,890 Dan inilah cara saya menerapkan itu. 805 00:37:54,890 --> 00:38:00,130 Ketika bendera hijau diklik, batuk, tunggu, batuk, tunggu, batuk, tunggu. 806 00:38:00,130 --> 00:38:02,470 Dan aku melakukan ini hanya dengan menyeret dan menjatuhkan potongan puzzle. 807 00:38:02,470 --> 00:38:04,740 Atau jika Anda mulai bermain-main dengan Scratch, Anda akan melihat Anda dapat benar-benar 808 00:38:04,740 --> 00:38:08,620 menduplikasi potongan sehingga Anda dapat melakukan hal yang lebih cepat tanpa menyeret 809 00:38:08,620 --> 00:38:10,310 dan menjatuhkan nauseum iklan. 810 00:38:10,310 --> 00:38:12,680 >> Tapi kami tidak di jalan terbaik di sini. 811 00:38:12,680 --> 00:38:15,210 Karena bagaimana cara membuatnya batuk keempat kalinya? 812 00:38:15,210 --> 00:38:16,790 Yah, aku bisa semacam turun di sini. 813 00:38:16,790 --> 00:38:19,420 Aku bisa menduplikasi dan kemudian paste ini di sana. 814 00:38:19,420 --> 00:38:21,740 Bagaimana cara membuatnya batuk kelima kalinya? 815 00:38:21,740 --> 00:38:23,230 Nah, copy dan paste lagi. 816 00:38:23,230 --> 00:38:24,210 Atau tarik turun lagi. 817 00:38:24,210 --> 00:38:26,920 Dan sangat cepat, program ini dimulai untuk benar-benar, benar-benar berlebihan, 818 00:38:26,920 --> 00:38:28,880 sangat panjang, tapi benar-benar menarik. 819 00:38:28,880 --> 00:38:30,120 Tapi ada cara untuk membersihkan ini. 820 00:38:30,120 --> 00:38:33,680 Apa cara yang jelas untuk membersihkan ini? 821 00:38:33,680 --> 00:38:36,280 >> OK, jadi kita bisa benar-benar benar-benar pergi keluar dan, ketika anda menekan ruang 822 00:38:36,280 --> 00:38:37,070 bar, memiliki dia batuk. 823 00:38:37,070 --> 00:38:40,150 Tetapi jika saya hanya ingin melakukan sesuatu berulang-ulang, mengingat bahwa kita memiliki 824 00:38:40,150 --> 00:38:41,310 beberapa kontrol konstruksi. 825 00:38:41,310 --> 00:38:43,800 Mari saya memindahkan keluar dari cara, pergi di bawah kontrol. 826 00:38:43,800 --> 00:38:47,340 Biarkan aku hanya melakukan mengulang, mengatakan, tiga kali. 827 00:38:47,340 --> 00:38:49,410 Dan sekarang biarkan aku mencuri beberapa potongan-potongan teka-teki. 828 00:38:49,410 --> 00:38:50,980 Biarkan aku jepret ini disini. 829 00:38:50,980 --> 00:38:52,400 Mari saya melemparkan ini pergi sama sekali. 830 00:38:52,400 --> 00:38:55,400 >> Dan sekarang, aku punya lebih baik program yang dirancang. 831 00:38:55,400 --> 00:38:55,920 Kenapa? 832 00:38:55,920 --> 00:39:00,540 Jika saya ingin mengubah jumlah kali kucing ini batuk, semua saya harus 833 00:39:00,540 --> 00:39:05,640 lakukan adalah mengubah satu variabel, atau satu nilai, lebih dari tiga, sampai empat, atau 834 00:39:05,640 --> 00:39:06,700 lima, atau enam. 835 00:39:06,700 --> 00:39:09,060 Atau aku bisa melakukan sesuatu kondisional, Bahkan, dengan ruang 836 00:39:09,060 --> 00:39:10,320 bar jika saya ingin. 837 00:39:10,320 --> 00:39:11,780 >> Jadi ini adalah prinsip umum. 838 00:39:11,780 --> 00:39:14,950 Setelah Anda mulai menyalin dan menyisipkan kode, apakah itu dalam Scratch, atau 839 00:39:14,950 --> 00:39:18,340 C, Anda sedang melakukan sesuatu salah, kemungkinan besar. 840 00:39:18,340 --> 00:39:21,950 Atau setidaknya, setelah Anda melebihi beberapa jumlah memadai salinan dan 841 00:39:21,950 --> 00:39:24,610 pasta, Anda mungkin melakukan sesuatu yang salah. 842 00:39:24,610 --> 00:39:26,740 >> Tapi kau tahu apa? 843 00:39:26,740 --> 00:39:27,590 Aku benar-benar tidak seperti ini. 844 00:39:27,590 --> 00:39:28,980 Ini bukan desain terbersih. 845 00:39:28,980 --> 00:39:32,860 Saya berharap ada sepotong puzzle yang disebut batuk karena saya tidak akan 846 00:39:32,860 --> 00:39:36,100 harus melaksanakan ini sendiri, dengan cara lama, dengan 847 00:39:36,100 --> 00:39:38,220 setelah berkata, dan menunggu - 848 00:39:38,220 --> 00:39:40,320 bagaimana jika mereka hanya sepotong puzzle batuk. 849 00:39:40,320 --> 00:39:41,330 >> Yah, aku benar-benar bisa melakukan itu. 850 00:39:41,330 --> 00:39:45,010 Biarkan aku pergi di bawah blok lagi, klik Membuat Blok, dan sekarang saya mendapatkan ini 851 00:39:45,010 --> 00:39:45,610 window sini. 852 00:39:45,610 --> 00:39:47,540 Aku akan menelepon hal ini batuk. 853 00:39:47,540 --> 00:39:49,400 Aku akan pergi ke depan dan klik OK. 854 00:39:49,400 --> 00:39:53,150 Dan sekarang perhatikan, saya mendapatkan awal baru sepotong yang melengkung di atas. 855 00:39:53,150 --> 00:39:56,590 Dan apa yang akan saya lakukan dengan ini, saya akan hanya mencuri blok ini. 856 00:39:56,590 --> 00:39:57,800 Aku akan menempatkan mereka di sini. 857 00:39:57,800 --> 00:40:00,490 >> Dan sekarang, dengan tiga potong, aku sudah dilaksanakan apa yang saya akan memanggil 858 00:40:00,490 --> 00:40:03,530 fungsi, atau prosedur, atau beberapa Anda mungkin tahu itu sebagai sebuah metode. 859 00:40:03,530 --> 00:40:05,050 Sedikit perbedaan antara kata-kata. 860 00:40:05,050 --> 00:40:06,950 Tapi untuk saat ini, mari kita menyebutnya fungsi. 861 00:40:06,950 --> 00:40:08,750 Ini hanya sepotong teka-teki baru. 862 00:40:08,750 --> 00:40:11,000 Sekarang ini diterapkan seperti ini. 863 00:40:11,000 --> 00:40:15,170 >> Tapi perhatikan bahwa Scratch telah memberi kita representasi fisik yang utuh 864 00:40:15,170 --> 00:40:16,570 blok di sini. 865 00:40:16,570 --> 00:40:21,930 Jadi sekarang, saya hanya dapat menarik ini di sini, mengatakan, ulangi tiga kali, dan 866 00:40:21,930 --> 00:40:26,420 apa yang akan terjadi sekarang, ketika saya bermain script ini, hanya satu program 867 00:40:26,420 --> 00:40:27,500 berjalan pada suatu waktu. 868 00:40:27,500 --> 00:40:29,880 Hanya ada satu ketika bendera hijau diklik. 869 00:40:29,880 --> 00:40:34,010 Tapi itu blok ungu disebut batuk efektif memberitahu Scratch, setiap 870 00:40:34,010 --> 00:40:38,160 kali Anda melihat bahwa potongan puzzle, sebenarnya mengeksekusi langkah-langkah yang saya 871 00:40:38,160 --> 00:40:40,420 terjadi untuk melaksanakan secara manual. 872 00:40:40,420 --> 00:40:41,410 >> Jadi itu agak rapi. 873 00:40:41,410 --> 00:40:44,650 Tapi sekarang, anggaplah bahwa saya memutuskan, saya tidak ingin kucing ini hanya untuk batuk. 874 00:40:44,650 --> 00:40:46,660 Aku ingin dia bisa bersin juga. 875 00:40:46,660 --> 00:40:48,905 Nah, bagaimana kita bisa pergi tentang menerapkan bersin? 876 00:40:48,905 --> 00:40:51,310 Yah aku bisa cukup banyak melakukan hal yang sama. 877 00:40:51,310 --> 00:40:52,690 Aku bisa membuat blok lain. 878 00:40:52,690 --> 00:40:55,940 Aku bisa menelepon bersin ini, klik OK. 879 00:40:55,940 --> 00:40:59,250 >> Kemudian, di sini aku bisa benar-benar telah, biarkan aku menduplikasi - 880 00:40:59,250 --> 00:41:02,850 dan ada di mana Anda harus merasa seperti Anda mungkin tidak melakukan sesuatu dalam 881 00:41:02,850 --> 00:41:03,780 cara terbaik. 882 00:41:03,780 --> 00:41:06,670 Aku bisa mengatakan sesuatu seperti, Achoo, untuk satu detik. 883 00:41:06,670 --> 00:41:07,440 Tunggu satu detik. 884 00:41:07,440 --> 00:41:08,715 Sekarang saya memiliki blok baru yang disebut bersin. 885 00:41:08,715 --> 00:41:10,210 Dan memang, ada itu. 886 00:41:10,210 --> 00:41:14,010 >> Tapi ini juga harus mulai merasa - mungkin bukan minggu pertama kelas, tetapi 887 00:41:14,010 --> 00:41:15,730 oleh kedua - hanya sedikit berlebihan. 888 00:41:15,730 --> 00:41:17,800 Jelas, ada beberapa redundansi sini. 889 00:41:17,800 --> 00:41:22,090 Jadi biarkan saya mengusulkan, sebaliknya, bahwa kita memperbaiki definisi ini sebagai berikut. 890 00:41:22,090 --> 00:41:24,820 >> Biarkan aku pergi ke menu file saya. 891 00:41:24,820 --> 00:41:26,090 Aku tidak akan menyimpan versi ini. 892 00:41:26,090 --> 00:41:29,080 Aku akan pergi ke salah satu file premade saya di sini. 893 00:41:29,080 --> 00:41:31,190 Dan aku akan pergi ke depan dan membuka batuk 2. 894 00:41:31,190 --> 00:41:32,220 Whoops itu batuk 2. 895 00:41:32,220 --> 00:41:36,900 Biarkan aku pergi ke depan dan membuka batuk 3, yang merupakan direktori ini sumber. 896 00:41:36,900 --> 00:41:42,450 Batuk 3 dan perhatikan - oh, saya mengatakan cerita dalam urutan yang salah. 897 00:41:42,450 --> 00:41:45,030 Mari saya pulih dari cerita ini. 898 00:41:45,030 --> 00:41:48,990 >> Cerita Aku dimaksudkan untuk memberitahu berakhir dengan batuk 4 - 899 00:41:48,990 --> 00:41:50,270 ada itu. 900 00:41:50,270 --> 00:41:54,380 Jadi bagaimana jika saya, sebaliknya, menentukan sepotong puzzle besar yang disebut 901 00:41:54,380 --> 00:41:57,250 mendefinisikan, ucapkan kata n kali. 902 00:41:57,250 --> 00:41:59,930 Bersin hanya, tampaknya, di Scratch, Achoo. 903 00:41:59,930 --> 00:42:01,680 Jadi kita mengungkapkannya sebagai sebuah kata, hanya karena itulah 904 00:42:01,680 --> 00:42:02,750 kendala program. 905 00:42:02,750 --> 00:42:07,860 Dan batuk adalah [BATUK], tapi batuk, C-O-U-G-H. Jadi itu hanya dua 906 00:42:07,860 --> 00:42:10,820 kata yang berbeda lakukan, pada dasarnya, hal yang sama. 907 00:42:10,820 --> 00:42:12,820 >> Jadi saya benar-benar dapat membuat blok baru seperti ini. 908 00:42:12,820 --> 00:42:14,220 Saya tidak menggunakan opsi menu ini sebelumnya. 909 00:42:14,220 --> 00:42:16,960 Tetapi ketika Anda mengklik Membuat Blok, Anda dapat memilih beberapa pilihan. 910 00:42:16,960 --> 00:42:20,900 Dan Anda dapat mengatakan bahwa blok ini sebenarnya membutuhkan beberapa masukan, jika tidak 911 00:42:20,900 --> 00:42:24,710 dikenal sebagai argumen, atau parameter, sehingga bahwa Anda dapat memodifikasi perilaku 912 00:42:24,710 --> 00:42:25,520 blok Anda. 913 00:42:25,520 --> 00:42:28,780 >> Jadi apa yang saya lakukan beberapa saat yang lalu telah Aku menelepon blok ini Say. 914 00:42:28,780 --> 00:42:30,880 Dan kemudian aku berkata, dibutuhkan sebuah string input. 915 00:42:30,880 --> 00:42:32,810 Dan sekarang perhatikan, secara default, ia mengatakan String 1. 916 00:42:32,810 --> 00:42:35,440 String adalah hanya sebuah kata, atau frase, untuk tujuan kita. 917 00:42:35,440 --> 00:42:37,810 Tapi aku hanya akan menaruh beberapa placeholder teks di sana, seperti di 918 00:42:37,810 --> 00:42:40,620 website, ketika Anda melihat nama pengguna, atau password, dan kemudian menghilang saat 919 00:42:40,620 --> 00:42:41,550 Anda mulai mengetik. 920 00:42:41,550 --> 00:42:42,720 Itu semua itu. 921 00:42:42,720 --> 00:42:44,590 >> Dan sekarang aku akan menambahkan masukan nomor. 922 00:42:44,590 --> 00:42:47,180 Dan aku akan menelepon n ini - tapi itu cukup sewenang-wenang. 923 00:42:47,180 --> 00:42:49,510 Dan kemudian hanya label, hanya untuk membuat blok ini sedikit lebih mandiri 924 00:42:49,510 --> 00:42:50,570 jelas - 925 00:42:50,570 --> 00:42:53,010 kali, itulah yang saya lakukan. 926 00:42:53,010 --> 00:42:56,540 Dan hasil akhirnya adalah bahwa saya mendapatkan blok yang terlihat seperti ini. 927 00:42:56,540 --> 00:42:58,880 >> Dan sekarang perhatikan, saya menggunakan blok ulangi. 928 00:42:58,880 --> 00:43:03,480 Namun, bukannya keras coding tiga, aku menyeret dan menjatuhkan n di sana jadi saya 929 00:43:03,480 --> 00:43:05,530 dapat parametrize fungsi. 930 00:43:05,530 --> 00:43:08,590 Aku bisa membuat fungsi ini melakukan sesuatu nomor yang berbeda dari kali berdasarkan 931 00:43:08,590 --> 00:43:09,410 nilai tersebut. 932 00:43:09,410 --> 00:43:14,270 >> Dan perhatikan, mengatakan, ini adalah apa yang saya lakukan di sini, jika saya tarik kata, saya bisa mengatakan tidak 933 00:43:14,270 --> 00:43:17,860 keras kode kata, tapi apa pun dilewatkan untuk satu detik. 934 00:43:17,860 --> 00:43:20,200 Sementara itu, bagaimana cara kembali menerapkan batuk? 935 00:43:20,200 --> 00:43:26,980 Saya bukannya mendefinisikan batuk sebagai mengatakan batuk n kali. 936 00:43:26,980 --> 00:43:30,480 >> Jadi singkatnya, aku akan melalui ini cepat, tetapi ide dasarnya adalah segera 937 00:43:30,480 --> 00:43:32,750 setelah Anda mulai melihat dalam program Anda bahwa, tunggu sebentar, saya sudah melakukan 938 00:43:32,750 --> 00:43:36,610 sesuatu yang cukup seperti ini sebelumnya, Saya dapat beberapa faktor umum 939 00:43:36,610 --> 00:43:37,090 fungsi? 940 00:43:37,090 --> 00:43:41,090 Dapatkah saya membusuk apa yang saya lakukan ke beberapa ide dasar? 941 00:43:41,090 --> 00:43:42,070 Itulah yang kita lakukan di sini. 942 00:43:42,070 --> 00:43:44,830 Dan aku sudah ditumpuk-hal ini, visual, di atas satu sama lain 943 00:43:44,830 --> 00:43:47,710 karena itu bukti bahwa gagasan dimulai dengan biner, akan ASCII, 944 00:43:47,710 --> 00:43:51,530 membuat program grafis, semacam layering ide semakin kompleks pada 945 00:43:51,530 --> 00:43:52,570 atas satu sama lain. 946 00:43:52,570 --> 00:43:53,730 >> Ide yang sama di sini. 947 00:43:53,730 --> 00:43:56,870 Saya mulai dari Gores, menerapkan batuk, kemudian menyadari batuk adalah 948 00:43:56,870 --> 00:43:58,540 benar-benar hanya mengatakan sesuatu. 949 00:43:58,540 --> 00:44:01,630 Jadi biarkan aku bukannya melaksanakan gagasan mengatakan sesuatu. 950 00:44:01,630 --> 00:44:05,200 Dan di atas itu, bisa saya menerapkan Achoo, atau batuk? 951 00:44:05,200 --> 00:44:07,990 Dan kita bisa berbuat lebih banyak seperti varian masih. 952 00:44:07,990 --> 00:44:10,400 >> Jadi dari prinsip dasar ini, kita bisa mulai melakukan 953 00:44:10,400 --> 00:44:12,180 semakin program yang kompleks. 954 00:44:12,180 --> 00:44:14,100 Mari saya membuka satu ini. 955 00:44:14,100 --> 00:44:18,020 Kami benar-benar dapat memiliki beberapa sprite berinteraksi di layar sekaligus. 956 00:44:18,020 --> 00:44:23,470 Jika saya pergi ke direktori source saya dan ambil satu disebut Threads, ingat bahwa 957 00:44:23,470 --> 00:44:26,920 benang hanya benar-benar kemampuan dari dua script untuk menjalankan berdampingan 958 00:44:26,920 --> 00:44:28,350 sisi pada saat yang sama. 959 00:44:28,350 --> 00:44:34,490 >> Perhatikan sekarang, memiliki keduanya sprite burung dan sprite kucing, keduanya memiliki 960 00:44:34,490 --> 00:44:35,270 script mereka sendiri. 961 00:44:35,270 --> 00:44:37,690 Jadi pemberitahuan, ketika saya klik kucing, saya mendapatkan script ini. 962 00:44:37,690 --> 00:44:39,830 Ketika saya klik burung, Saya mendapatkan script ini. 963 00:44:39,830 --> 00:44:42,070 Jadi masing-masing orang memiliki program sendiri. 964 00:44:42,070 --> 00:44:46,680 Ketika saya sekarang klik bendera hijau, perhatikan bahwa apa program ini dilakukan adalah 965 00:44:46,680 --> 00:44:54,090 memiliki kucing, sangat perlahan-lahan, mengejar burung. 966 00:44:54,090 --> 00:44:57,120 Tapi kucing itu memiliki keuntungan memiliki telah diprogram sedemikian rupa 967 00:44:57,120 --> 00:45:00,540 bahwa tidak peduli di mana burung adalah, kucing berjalan ke arahnya. 968 00:45:00,540 --> 00:45:02,150 >> Kita bisa memainkan permainan yang jauh lebih cepat. 969 00:45:02,150 --> 00:45:07,750 Jadi jika aku di kucing, perhatikan bahwa aku menggunakan, katakanlah memindahkan satu langkah. 970 00:45:07,750 --> 00:45:11,680 Mari kita memiliki dia pindah lima langkah di waktu, sehingga lima titik pada suatu waktu. 971 00:45:11,680 --> 00:45:13,580 Biarkan aku klik bermain. 972 00:45:13,580 --> 00:45:14,490 >> [LION'S ROAR] 973 00:45:14,490 --> 00:45:17,170 >> DAVID Malan: Baiklah, sekarang kita bisa benar-benar memberikan kucing keuntungan. 974 00:45:17,170 --> 00:45:18,600 10 langkah pada satu waktu. 975 00:45:18,600 --> 00:45:20,120 >> [LION'S ROAR] 976 00:45:20,120 --> 00:45:22,770 >> DAVID Malan: Baiklah, jadi sangat cepat, mendapat sedikit keuntungan 977 00:45:22,770 --> 00:45:23,280 untuk kucing. 978 00:45:23,280 --> 00:45:25,310 Tapi aku akan melambaikan tangan saya di beberapa rincian. 979 00:45:25,310 --> 00:45:28,240 Tapi alasan bahwa jalan yang mulai sedikit berbeda setiap kali 980 00:45:28,240 --> 00:45:29,700 adalah bahwa aku melakukan sedikit keacakan. 981 00:45:29,700 --> 00:45:33,700 Aku benar-benar menunjuk kucing dalam arah yang berbeda berdasarkan di mana saya 982 00:45:33,700 --> 00:45:38,710 ingin dia memulai sehingga setiap kali permainan, atau animasi, adalah 983 00:45:38,710 --> 00:45:39,760 sedikit berbeda. 984 00:45:39,760 --> 00:45:41,950 >> Sekarang, izinkan saya memperkenalkan satu lainnya membangun di sini. 985 00:45:41,950 --> 00:45:43,860 Jadi dalam hal ini, kami memiliki fungsi. 986 00:45:43,860 --> 00:45:46,950 Ada juga akan menjadi potongan puzzle dikenal sebagai array, atau daftar, 987 00:45:46,950 --> 00:45:50,980 yang memungkinkan Anda untuk menyimpan beberapa nilai-nilai dalam variabel. 988 00:45:50,980 --> 00:45:53,410 Kami melihat benang, dan sekarang ada Events. 989 00:45:53,410 --> 00:45:56,330 >> Jadi, inilah acara menggunakan dua orang di sini. 990 00:45:56,330 --> 00:46:02,490 Dan jika saya membuka file yang bernama Acara dari contoh hari ini, kami akan 991 00:46:02,490 --> 00:46:06,940 melihat program yang terlihat sedikit seperti ini. 992 00:46:06,940 --> 00:46:09,630 Dan sekarang melihat orang ini - 993 00:46:09,630 --> 00:46:11,620 jadi perhatikan saya memiliki biru Muppet diklik - 994 00:46:11,620 --> 00:46:12,990 ia hanya melakukan berikut ini. 995 00:46:12,990 --> 00:46:15,540 Dia tidak memiliki salah satu dari mereka hijau potongan puzzle bendera. 996 00:46:15,540 --> 00:46:18,620 Dia memiliki ketika saya menerima event - 997 00:46:18,620 --> 00:46:19,970 sehingga beberapa kata sewenang-wenang. 998 00:46:19,970 --> 00:46:21,590 Aku hanya mengetik acara ada - 999 00:46:21,590 --> 00:46:23,740 dia akan mengatakan, Polo, selama dua detik. 1000 00:46:23,740 --> 00:46:25,800 >> Jadi bagi anda yang akrab dengan permainan ini mungkin tahu 1001 00:46:25,800 --> 00:46:26,460 mana hal ini terjadi. 1002 00:46:26,460 --> 00:46:29,800 Jika saya sekarang klik pada Muppet oranye, programnya melakukan hal ini. 1003 00:46:29,800 --> 00:46:35,020 Selamanya, jika spasi Keyboard ditekan, ia akan berkata, Marco, 1004 00:46:35,020 --> 00:46:36,580 selama dua detik pada layar. 1005 00:46:36,580 --> 00:46:39,590 Tapi dia juga akan menggunakan ini pelamun memblokir dikenal sebagai siaran. 1006 00:46:39,590 --> 00:46:42,270 Dia akan menyiarkan kutipan tanda kutip, "acara." 1007 00:46:42,270 --> 00:46:47,540 >> Sementara itu, pria biru, ingat, adalah mendengarkan kutipan tanda kutip, "acara." 1008 00:46:47,540 --> 00:46:50,760 Jadi entah bagaimana, sekarang, kita dapat memiliki dua sprite berinteraksi. 1009 00:46:50,760 --> 00:46:53,790 Dan ketika kita sampai ke pemrograman web, kemudian dalam istilah, sama akan ini 1010 00:46:53,790 --> 00:46:58,320 akan menguntungkan untuk memiliki website Anda melakukan sesuatu dalam menanggapi, untuk 1011 00:46:58,320 --> 00:47:00,130 Misalnya, satu klik keyboard. 1012 00:47:00,130 --> 00:47:02,120 >> Jadi biarkan aku pergi ke depan dan tekan space bar. 1013 00:47:02,120 --> 00:47:04,020 Oranye guy bilang Marco. 1014 00:47:04,020 --> 00:47:05,840 Biru pria mengatakan Polo. 1015 00:47:05,840 --> 00:47:10,780 Jika saya melakukannya lagi pria oranye mengatakan Marco, biru guy mengatakan polo. 1016 00:47:10,780 --> 00:47:14,130 Jadi mari kita satu langkah lebih jauh. 1017 00:47:14,130 --> 00:47:18,790 Kali ini, kita akan pergi, mungkin, cuma beberapa menit di sini. 1018 00:47:18,790 --> 00:47:19,904 Apakah kita punya - 1019 00:47:19,904 --> 00:47:22,380 lampu meja, datang di bawah. 1020 00:47:22,380 --> 00:47:24,500 Anda tepat di akhir. 1021 00:47:24,500 --> 00:47:25,740 OK, Anda berdua bisa datang. 1022 00:47:25,740 --> 00:47:26,990 Kami memiliki lampu meja untuk semua orang. 1023 00:47:26,990 --> 00:47:28,360 Ayolah. 1024 00:47:28,360 --> 00:47:30,090 Saya tidak tahu apakah kita dapat menjaga ini gag konyol up 1025 00:47:30,090 --> 00:47:32,035 semua semester, meskipun. 1026 00:47:32,035 --> 00:47:33,530 Baiklah, datang di bawah. 1027 00:47:33,530 --> 00:47:40,260 >> Dan sementara itu, kita memiliki berikut contoh untuk menarik, hanya untuk 1028 00:47:40,260 --> 00:47:45,370 mempercepat hal-hal sekarang, seperti yang kita memiliki manifestasi dari yang lain 1029 00:47:45,370 --> 00:47:48,360 pendahulu Anda menggunakan sama blok bangunan dasar. 1030 00:47:48,360 --> 00:47:48,975 Siapa nama Anda? 1031 00:47:48,975 --> 00:47:49,240 >> JOHN: John. 1032 00:47:49,240 --> 00:47:49,770 >> DAVID Malan: John. 1033 00:47:49,770 --> 00:47:50,400 Senang kau. 1034 00:47:50,400 --> 00:47:50,650 Dan? 1035 00:47:50,650 --> 00:47:51,250 >> Setz: Setz. 1036 00:47:51,250 --> 00:47:53,130 >> DAVID Malan: Setz, baik padaku Anda. 1037 00:47:53,130 --> 00:47:54,820 John, jika Anda ingin datang up pertama, ini adalah tua 1038 00:47:54,820 --> 00:47:55,910 permainan sekolah bernama Frogger. 1039 00:47:55,910 --> 00:47:57,530 Anda menggunakan keyboard untuk ini juga. 1040 00:47:57,530 --> 00:48:02,425 Dan tujuannya adalah untuk mendapatkan seluruh jalan dan air. 1041 00:48:02,425 --> 00:48:12,700 >> [Frogger dan memutar musik SUARA] 1042 00:48:12,700 --> 00:48:14,970 >> DAVID Malan: Maaf, tidak ada lampu meja untuk Anda hari ini. 1043 00:48:14,970 --> 00:48:19,110 Baiklah, Setz, kan ingin datang ke atas? 1044 00:48:19,110 --> 00:48:20,890 Baiklah, mari kita lakukan lagi. 1045 00:48:20,890 --> 00:48:21,430 >> Setz: Apakah saya menggunakan panah? 1046 00:48:21,430 --> 00:48:22,360 >> DAVID Malan: Hanya tombol panah. 1047 00:48:22,360 --> 00:48:23,624 Atas, bawah, kiri, kanan. 1048 00:48:23,624 --> 00:48:35,700 >> [Frogger dan memutar musik SUARA] 1049 00:48:35,700 --> 00:48:37,880 >> DAVID Malan: Kami akan memanggil mereka hadiah hiburan hari ini, 1050 00:48:37,880 --> 00:48:38,950 kemudian, sangat baik dilakukan. 1051 00:48:38,950 --> 00:48:40,690 Di sini, bagi Anda berdua, John dan Setz. 1052 00:48:40,690 --> 00:48:41,940 Selamat, baiklah. 1053 00:48:41,940 --> 00:48:46,720 1054 00:48:46,720 --> 00:48:50,620 Jadi sekali lagi, karena permainan ini bermain, berpikir tentang apa yang terjadi? 1055 00:48:50,620 --> 00:48:52,060 >> Satu, jelas ada banyak gerak. 1056 00:48:52,060 --> 00:48:55,220 Tapi kita telah melihat bagaimana, dengan kucing dan burung contoh, bagaimana Anda dapat membuat 1057 00:48:55,220 --> 00:48:58,350 ilusi gerak dengan hanya menggerakkan beberapa jumlah piksel lagi dan lagi. 1058 00:48:58,350 --> 00:49:00,280 Dan jika Anda memiliki blok selamanya, Anda bisa memiliki ini 1059 00:49:00,280 --> 00:49:02,120 mobil melakukan ini selamanya. 1060 00:49:02,120 --> 00:49:03,720 Kami memiliki kemampuan untuk memiliki beberapa keacakan. 1061 00:49:03,720 --> 00:49:06,310 Jadi game ini tidak harus persis sama setiap kali. 1062 00:49:06,310 --> 00:49:09,940 Mereka log, mobil-mobil, bisa mulai waktu yang sedikit berbeda sehingga 1063 00:49:09,940 --> 00:49:12,690 Permainan itu sendiri adalah lebih menarik dengan masing-masing bermain game. 1064 00:49:12,690 --> 00:49:15,320 >> Dan Sementara itu, kami telah melihat kemampuan untuk mendengarkan spasi. 1065 00:49:15,320 --> 00:49:18,830 Tapi yang jelas, di Scratch, bisa Anda juga mendengarkan atas, bawah, kiri, kanan, dan 1066 00:49:18,830 --> 00:49:20,760 benar-benar ada tombol pada keyboard. 1067 00:49:20,760 --> 00:49:22,200 Dan Anda juga dapat melakukan beberapa hal lainnya. 1068 00:49:22,200 --> 00:49:24,660 Biarkan aku pergi ke depan dan kembali ke versi web. 1069 00:49:24,660 --> 00:49:30,280 >> Biarkan aku pergi ke dalam koleksi kami dari contoh di sini. 1070 00:49:30,280 --> 00:49:36,120 Dan di bawah Studio saya, Video yang adalah, pada dasarnya, folder pada 1071 00:49:36,120 --> 00:49:37,780 scratch.mit.edu. 1072 00:49:37,780 --> 00:49:39,710 Kami memiliki versi web semua proyek-proyek ini. 1073 00:49:39,710 --> 00:49:42,530 Dan mari kita lihat apakah saya bisa mendapatkan komputer untuk bekerja sama di sini. 1074 00:49:42,530 --> 00:49:47,180 Ini ditulis oleh salah satu teman kita di MIT, yang disebut Pindah Butterfly. 1075 00:49:47,180 --> 00:49:50,250 >> Dan sekali ini membuka, ini akan benar-benar menggunakan lebih dari 1076 00:49:50,250 --> 00:49:51,430 hardware komputer saya. 1077 00:49:51,430 --> 00:49:53,325 Scratch terjadi dilaksanakan dengan Flash. 1078 00:49:53,325 --> 00:49:56,250 Flash dapat berbicara dengan webcam Anda, jika Anda memiliki satu. 1079 00:49:56,250 --> 00:50:00,210 Jadi jika saya pergi ke depan dan layar penuh ini sini, klik bendera hijau, pemberitahuan 1080 00:50:00,210 --> 00:50:02,530 bahwa pesan keamanan Flash mengatakan, apakah Anda ingin 1081 00:50:02,530 --> 00:50:04,210 memungkinkan untuk menggunakan webcam saya? 1082 00:50:04,210 --> 00:50:05,510 >> Biasanya, Anda harus mungkin mengatakan Deny. 1083 00:50:05,510 --> 00:50:07,180 Tapi dalam kasus ini, kita akan mengatakan memungkinkan. 1084 00:50:07,180 --> 00:50:10,430 Lalu aku akan memberitahu Chrome untuk memungkinkan ini juga. 1085 00:50:10,430 --> 00:50:15,010 Dan sekarang, hanya dalam beberapa saat, Anda melihat saya, ya, saya. 1086 00:50:15,010 --> 00:50:18,154 Dan jika tanganku naik - 1087 00:50:18,154 --> 00:50:20,390 Aku harus tidak bergerak saya kepala pada saat yang sama. 1088 00:50:20,390 --> 00:50:21,740 Ada juga refleksi di layar. 1089 00:50:21,740 --> 00:50:23,480 Ayolah, di sana kita pergi - 1090 00:50:23,480 --> 00:50:27,616 Anda dapat memindahkannya di layar karena ada juga potongan puzzle - oh, Anda 1091 00:50:27,616 --> 00:50:31,640 tahu apa itu, itu karena Anda juga melihat layar proyektor di belakang saya. 1092 00:50:31,640 --> 00:50:33,870 Jadi kita memiliki sedikit terbatas hal yang terjadi di sana. 1093 00:50:33,870 --> 00:50:36,470 >> Baiklah, jadi saya akan bermain di sini. 1094 00:50:36,470 --> 00:50:37,220 Di sana kami pergi. 1095 00:50:37,220 --> 00:50:41,310 Jadi ada juga potongan puzzle yang mengatakan, ketika Anda melihat gerakan bawah 1096 00:50:41,310 --> 00:50:45,470 salah satu sprite, Anda dapat memilikinya pergi atas, bawah, kiri, kanan atau sejenisnya. 1097 00:50:45,470 --> 00:50:48,950 Jadi kita memiliki sedikit virtual reality terjadi di sini juga, semua dalam 1098 00:50:48,950 --> 00:50:52,570 batas-batas browser saya, hanya disini menggunakan webcam saya. 1099 00:50:52,570 --> 00:50:53,980 Jadi apa yang kemudian di cakrawala. 1100 00:50:53,980 --> 00:50:58,350 Masalah pertama set, karena Anda akan melihat, atau website akan pergi online kemudian 1101 00:50:58,350 --> 00:51:01,100 malam ini di cs50.net, cukup banyak akan terbuka berakhir. 1102 00:51:01,100 --> 00:51:04,410 Dan melaksanakan proyek Scratch menarik bagi Anda, permainan, sebuah 1103 00:51:04,410 --> 00:51:08,350 interaksi, sesuatu yang artistik, dan menantang diri untuk menggunakan jumlah 1104 00:51:08,350 --> 00:51:09,660 potongan-potongan teka-teki. 1105 00:51:09,660 --> 00:51:11,580 Dan itu dapat menjadi interaktif dengan cara ini. 1106 00:51:11,580 --> 00:51:15,470 Atau bisa menjadi sesuatu yang lebih sengaja dibuat untuk menceritakan sebuah cerita. 1107 00:51:15,470 --> 00:51:19,200 >> Dan memang, itulah di mana kami akan berakhir off hari ini, dengan satu contoh terakhir. 1108 00:51:19,200 --> 00:51:21,290 Biarkan aku pergi ke Scratch lokal. 1109 00:51:21,290 --> 00:51:25,300 Biarkan aku pergi ke depan dan membuka ini, dan bermain satu program terakhir yang ditulis oleh salah satu 1110 00:51:25,300 --> 00:51:29,795 pendahulu Anda, yaitu yang satu di sini. 1111 00:51:29,795 --> 00:51:32,960 1112 00:51:32,960 --> 00:51:35,938 Baik, meningkatkan volume untuk yang satu ini. 1113 00:51:35,938 --> 00:52:53,770 >> [MUSIC PLAYING] 1114 00:52:53,770 --> 00:52:57,255 >> Narator: Pada CS50 berikutnya, David mengundang sukarelawan panggung. 1115 00:52:57,255 --> 00:52:58,636 >> DAVID Malan: Untuk demo ini, kita akan membutuhkan satu relawan. 1116 00:52:58,636 --> 00:53:01,050 Apakah Anda ingin datang di bawah? 1117 00:53:01,050 --> 00:53:02,300 Siapa nama Anda? 1118 00:53:02,300 --> 00:53:05,320 1119 00:53:05,320 --> 00:53:06,570 Pindah. 1120 00:53:06,570 --> 00:53:08,394