1 00:00:08,483 --> 00:00:11,477 [Powered by Google Translate] [ロック音楽] 2 00:00:32,435 --> 00:00:35,429 [MUSIC - "共に幸せ"カメ] 3 00:01:27,330 --> 00:01:30,170 DAVIDマラン:今日、我々は我々の探査を開始 4 00:01:30,170 --> 00:01:32,710 コンピュータ科学と私たちの導入の基礎、 5 00:01:32,710 --> 00:01:35,070 今、なっているプログラミングの技術に 6 00:01:35,070 --> 00:01:36,260 ほんの一例。 7 00:01:36,260 --> 00:01:39,600 しかし、問題解決の同じ調子で、ことを知っている 8 00:01:39,600 --> 00:01:42,080 CS50の伝統的なパズルの日は明日です。 9 00:01:42,080 --> 00:01:45,190 あなたはまだこのイベントのためにRSVPedていませんでした場合は、に行くことができます 10 00:01:45,190 --> 00:01:47,510 cs50.net/rsvp。 11 00:01:47,510 --> 00:01:50,940 あなたは、2つまたは3つまたは​​4つのチームを持って来ることができる。 12 00:01:50,940 --> 00:01:53,080 あなたは、あなたが見たもののような問題に挑戦されます 13 00:01:53,080 --> 00:01:54,190 そこ初めにアップ。 14 00:01:54,190 --> 00:01:57,000 すべての新たな問題は、今年は昨年partakeの、そしてあなた場合 15 00:01:57,000 --> 00:01:59,680 いくつかの素晴らしい賞品を獲得するために、次にチャンスがあるだろう。 16 00:01:59,680 --> 00:02:02,750 その中でも、Wiiやいくつかの商品券など、 17 00:02:02,750 --> 00:02:05,650 すべてCS50生徒やクラスメートとぶらぶらしながら 18 00:02:05,650 --> 00:02:07,720 とピザやFacebook。 19 00:02:07,720 --> 00:02:10,430 ご希望の場合、明日にだからもっと。 20 00:02:10,430 --> 00:02:13,330 >> そして、これはあなたのそれらのためにご参加いただき、CS50です 21 00:02:13,330 --> 00:02:14,510 初めて。 22 00:02:14,510 --> 00:02:18,030 そして、このコースは特に得ると判断されたことを知っている 23 00:02:18,030 --> 00:02:22,605 もしこのコースを通じて、最後の最後に、その時点であなた 24 00:02:22,605 --> 00:02:24,270 だけでなく、これらを理解しているでしょう 25 00:02:24,270 --> 00:02:26,450 コンピュータ科学の基礎が、あなたが持っているでしょう 26 00:02:26,450 --> 00:02:29,120 あなたはその後に持ち帰ることができますこれは非常に実用的なスキルセット 27 00:02:29,120 --> 00:02:31,370 自分の部署、それはエンジニアリング科学のかどうか、 28 00:02:31,370 --> 00:02:33,570 応用数学、物理科学、自然 29 00:02:33,570 --> 00:02:34,780 科学など。 30 00:02:34,780 --> 00:02:37,030 確かに、コンピュータサイエンス、これらについてとてもエキサイティングなものだ 31 00:02:37,030 --> 00:02:39,900 日には、それがちょうどそうも適用可能であることである 32 00:02:39,900 --> 00:02:40,990 フィールドのすべての種類。 33 00:02:40,990 --> 00:02:46,210 そして今日もかかわらず、我々は唯一の表面を傷つけるでしょう 34 00:02:46,210 --> 00:02:49,020 Cとして知られている非常に伝統的なプログラミング言語で、我々はよ 35 00:02:49,020 --> 00:02:51,040 その代わりに、スクラッチと呼ばれるもので何かを見て 36 00:02:51,040 --> 00:02:53,420 そのクッキーの愛の物語は、あなたのいずれかの方法で実装された 37 00:02:53,420 --> 00:02:57,020 過去数年間に前任者は、ゲームを作成するために、物語を伝えるために、 38 00:02:57,020 --> 00:03:00,060 インタラクティブアートを作成すると、実際に私たちをラップするために開始する 39 00:03:00,060 --> 00:03:02,240 その基本的な構成要素の一部の周りの心 40 00:03:02,240 --> 00:03:05,390 プログラミングの基礎となるが、文脈では、あなたが表示されますので、それはだ 41 00:03:05,390 --> 00:03:09,140 それほど怖い、それはあなたが表示されますよりも、はるかに少ない難解だ 42 00:03:09,140 --> 00:03:10,140 ずっと前に。 43 00:03:10,140 --> 00:03:12,410 そして、ちょうど私達にこれに参加するあなたのそれらのためにも、実現する 44 00:03:12,410 --> 00:03:16,170 学期、私たちは水曜日の講義を終了したフレーズ、 45 00:03:16,170 --> 00:03:20,260 あなたに相対結局どこにはそれほど重要ではありません 46 00:03:20,260 --> 00:03:22,950 学期の終わりまでに、このクラスのクラスメートが、どこで、 47 00:03:22,950 --> 00:03:27,190 11週で、この日の右に自分自身に相対的に終わる。 48 00:03:27,190 --> 00:03:32,000 >> だから、さらに騒ぎがなければ、これも注目に値することである 49 00:03:32,000 --> 00:03:34,450 ですが、どこかの間にあるもの、それらのあまり快適 50 00:03:34,450 --> 00:03:36,825 また、このコースの設計ではなく、任意の不利な立場に 51 00:03:36,825 --> 00:03:38,760 向かいあってそれらをより快適 52 00:03:38,760 --> 00:03:39,920 このクラスに入ってくる。 53 00:03:39,920 --> 00:03:41,810 あなたが来るまでに数週間にわたって見ていくように、我々は持っている別の 54 00:03:41,810 --> 00:03:44,600 異種背中背景用トラック、それらのためのセクション 55 00:03:44,600 --> 00:03:46,500 どこかにそれらの、より快適な、より少ない快適 56 00:03:46,500 --> 00:03:47,250 間のインチ 57 00:03:47,250 --> 00:03:49,520 この週末と来週の2つのバージョンを見るとわかるように 58 00:03:49,520 --> 00:03:52,410 ので、標準やハッカー版の両方で最も問題セット 59 00:03:52,410 --> 00:03:55,390 あなたはすべてであなたの道を自己選択することができます 60 00:03:55,390 --> 00:03:56,615 最も快​​適です。 61 00:03:56,615 --> 00:03:58,770 >> 今日のように、我々は、このプログラミングに飛び込む 62 00:03:58,770 --> 00:04:00,060 言語はスクラッチと呼ばれる。 63 00:04:00,060 --> 00:04:02,250 これは、グラフィカルプログラミング言語だし、まだそれはあり 64 00:04:02,250 --> 00:04:04,500 我々はよ、より高いレベルの言語のいくつかの同じ機能 65 00:04:04,500 --> 00:04:07,050 Cとそれらの間で、後学期に探る 66 00:04:07,050 --> 00:04:08,670 JavaScriptとPHP。 67 00:04:08,670 --> 00:04:11,890 しかし、それは私たちが気晴らしのいくつかを回避できるようになるだろう 68 00:04:11,890 --> 00:04:14,890 早期の構文の上に、セミコロン、括弧のようなもの、 69 00:04:14,890 --> 00:04:17,720 そのほかの難解な詳細は、一見するとただではありません 70 00:04:17,720 --> 00:04:19,916 すべての知的に面白い時とで取得する傾向がある 71 00:04:19,916 --> 00:04:22,310 いくつかの基本的な理解からの道。 72 00:04:22,310 --> 00:04:24,870 先に今支持構造の面では、これを実現 73 00:04:24,870 --> 00:04:27,570 コー​​スの上にリンクされますツール、CS50議論し、 74 00:04:27,570 --> 00:04:30,320 ホームページ今日この後、オンライン·ディスカッション·フォーラムである 75 00:04:30,320 --> 00:04:32,480 あなたはお互いの質問をすることができるでしょうし、どの 76 00:04:32,480 --> 00:04:35,020 スタッフは、私たちは来週わかるように、それは、またツールだ 77 00:04:35,020 --> 00:04:37,240 我々は一体でかなり使うだろうという 78 00:04:37,240 --> 00:04:38,780 営業時間と同様。 79 00:04:38,780 --> 00:04:41,670 確かに、オフィスアワーは月曜日に始まり、率直に言って、第一 80 00:04:41,670 --> 00:04:43,930 オフィスアワーの週はかなり低いキーです。 81 00:04:43,930 --> 00:04:46,820 >> 私はあなたがすべてのスクラッチそのアクセスできないでしょうとは思わない。 82 00:04:46,820 --> 00:04:48,930 それは我々がわかるように、むしろ自明だし、だから何 83 00:04:48,930 --> 00:04:51,380 我々は、今日のためにそれを使用しますのいくつかを抽出することである 84 00:04:51,380 --> 00:04:53,990 、その後、全体で維持されます基本的な考え方 85 00:04:53,990 --> 00:04:54,900 学期の残りの部分。 86 00:04:54,900 --> 00:04:57,980 しかし、午後11時を通過午後8時、月曜日から始まることになります 87 00:04:57,980 --> 00:05:01,530 脳ブレークオーバーアネンバーグにおけるオフィスアワー。 88 00:05:01,530 --> 00:05:04,490 2を区画するようにいつかこの、この夜を開始します 89 00:05:04,490 --> 00:05:07,260 週末、cs50.net/sectionに行き、あなたはよ 90 00:05:07,260 --> 00:05:08,530 質問の数を尋ねられる。 91 00:05:08,530 --> 00:05:10,290 それらの中で、どのようにあなたに説明してくれる 92 00:05:10,290 --> 00:05:12,040 今日のように快適さのレベル? 93 00:05:12,040 --> 00:05:14,450 そのバケツにだ人としては、ハード、高速なルールはありません。 94 00:05:14,450 --> 00:05:17,170 それはあなたがおそらくあなたの場合、知っているだけのもののようなものだ 95 00:05:17,170 --> 00:05:20,280 あまり快適またはそうでなければ、それらの間にある。 96 00:05:20,280 --> 00:05:21,350 >> そして今、チュートリアル。 97 00:05:21,350 --> 00:05:24,020 今週の問題セットの仕様、規格の両方 98 00:05:24,020 --> 00:05:28,560 と同様にハッカー版は、今のようcs50.netでオンラインになっています。 99 00:05:28,560 --> 00:05:31,500 そして、あなたは、これらのエディションの、最初表示されます 100 00:05:31,500 --> 00:05:33,940 標準版それぞれの週は、私たちに何かを伴っている 101 00:05:33,940 --> 00:05:36,550 コー​​ドのウォークスルーの一つ率いるセッションを呼び出す 102 00:05:36,550 --> 00:05:39,100 提供し、あなたを介してガイドするコースの教育フェロー 103 00:05:39,100 --> 00:05:42,290 それが来るときのヒント、および特定のパスをあなたを降りる 104 00:05:42,290 --> 00:05:44,150 これらの問題セットを開始する。 105 00:05:44,150 --> 00:05:46,790 あなたがこれまで望んでいるなら、これらの問題のそれぞれに、設定し 106 00:05:46,790 --> 00:05:50,250 自分で私は始めないためには、これらで始まる 107 00:05:50,250 --> 00:05:50,890 チュートリアル。 108 00:05:50,890 --> 00:05:53,450 そして、実際に、私はZamylaチャン、これを導入することができます 109 00:05:53,450 --> 00:05:55,870 一人ひとりをリードされ、今年のティーチング·フェロー 110 00:05:55,870 --> 00:05:56,910 これらのチュートリアルの一つ。 111 00:05:56,910 --> 00:05:57,961 Zamyla? 112 00:05:57,961 --> 00:06:03,370 >> [拍手] 113 00:06:03,370 --> 00:06:03,975 ZAMYLA CHAN:ああ、皆さん、こんにちは。 114 00:06:03,975 --> 00:06:05,130 私の名前はZamylaです。 115 00:06:05,130 --> 00:06:08,250 私はウィンスロップハウスの後輩勉強エンジニアリングだ。 116 00:06:08,250 --> 00:06:10,890 しかし、私はできるだけ多くのコンピュータサイエンスのコースで試してみて、フィット 117 00:06:10,890 --> 00:06:13,350 私は本当にこれをリードすることに興奮している理由である、缶 118 00:06:13,350 --> 00:06:14,590 今年のチュートリアル。 119 00:06:14,590 --> 00:06:16,950 チュートリアルでは、私にとっては、私のCS50の本質的な部分であった 120 00:06:16,950 --> 00:06:17,910 経験。 121 00:06:17,910 --> 00:06:22,710 チュートリアルでは、すべてのp-setに対して、我々は通って行くよ 122 00:06:22,710 --> 00:06:25,580 問題は、どのような種類の、問題を上に見て、一緒に設定 123 00:06:25,580 --> 00:06:27,360 扱いやすい刺されにそれらを分割する。 124 00:06:27,360 --> 00:06:28,990 私はあなたに得るためのヒント、テクニックをあげる 125 00:06:28,990 --> 00:06:30,820 通して、始まったばかり。 126 00:06:30,820 --> 00:06:33,510 私はウォークスルーであなたのすべてを見てほしい。 127 00:06:33,510 --> 00:06:34,720 じゃあ、人にそれを作ることができない場合 128 00:06:34,720 --> 00:06:36,580 オンラインでチューニングを行ってください。 129 00:06:36,580 --> 00:06:36,840 >> DAVIDマラン:優秀。 130 00:06:36,840 --> 00:06:37,950 Zamyla、ありがとうございます。 131 00:06:37,950 --> 00:06:40,870 だから金曜日に、確かに、ウォークスルーがあることを実感 132 00:06:40,870 --> 00:06:43,110 午後が、これはデザインによって意図的にあるよう 133 00:06:43,110 --> 00:06:45,750 あなたはむしろ金曜日に授業に出席しないと思いますたとえ 134 00:06:45,750 --> 00:06:48,490 午後は、ビデオはすべて、より迅速にを介して、最大になります 135 00:06:48,490 --> 00:06:48,990 週末。 136 00:06:48,990 --> 00:06:51,880 だからcs50.netがZamylaのすべてのであろうことを認識 137 00:06:51,880 --> 00:06:53,130 チュートリアル。 138 00:06:54,800 --> 00:06:56,890 と今日の日付と時刻、午後3:00、そこにあること 139 00:06:56,890 --> 00:06:58,370 Harberdホール、104。 140 00:06:58,370 --> 00:07:00,080 とティーチングフェローのいくつかはまた、準備しました 141 00:07:00,080 --> 00:07:03,250 不在のあなたのためのいくつかの発言はあなたのビットを与えるために 142 00:07:03,250 --> 00:07:06,760 それらの経験が入ってくるものとしての視点と 143 00:07:06,760 --> 00:07:08,990 CS50から出て行くことのようだった。 144 00:07:08,990 --> 00:07:11,250 だから我々はちょっとライトが、私はあなたに与えることができれば薄暗い 145 00:07:11,250 --> 00:07:18,100 CS50のスタッフの一部。 146 00:07:18,100 --> 00:07:20,440 >> ジャクソンSTEINKAMP:私はで新入生として昨年CS50を取った 147 00:07:20,440 --> 00:07:22,880 秋、それは絶対に私の心を吹いた。 148 00:07:22,880 --> 00:07:25,090 私は前に、任意のプログラミングの授業を取ったことがなかった、 149 00:07:25,090 --> 00:07:26,380 任意のコンピュータサイエンスとで来なかった 150 00:07:26,380 --> 00:07:27,320 まったく経験。 151 00:07:27,320 --> 00:07:29,240 そして、ちょうど、私はクラスについての話題を聞いて、 152 00:07:29,240 --> 00:07:30,050 それを取ることを決めた。 153 00:07:30,050 --> 00:07:31,780 >> JULIA MITELMAN:それは本当に魅力的で本当に楽しかったです。 154 00:07:31,780 --> 00:07:33,480 この日に、まだ私、 - 155 00:07:33,480 --> 00:07:36,560 私は最近、私はダビデが私達に与えたフロッピーディスクを持って見ました 156 00:07:36,560 --> 00:07:38,140 講義の我々の最初の日に。 157 00:07:38,140 --> 00:07:40,020 私は壁に掛けていた。 158 00:07:40,020 --> 00:07:42,410 これはおそらく、少しオタクですが、私は私の上でハングアップ 159 00:07:42,410 --> 00:07:46,930 それがいかにクー​​ルのメモとして授業中に壁。 160 00:07:46,930 --> 00:07:49,240 >> TRAVIS DOWNS:それはとても恥ずかしいです。 161 00:07:49,240 --> 00:07:50,770 >> ジャクソンSTEINKAMP:コンピュータ科学が何かあなた 162 00:07:50,770 --> 00:07:52,370 あなたのための1でなくても試してみてください 163 00:07:52,370 --> 00:07:54,980 従来の科学。 164 00:07:54,980 --> 00:07:58,510 これは、独自の経験だし、CS50はあなたがしていることを確認します 165 00:07:58,510 --> 00:08:01,520 TFのその真の軍隊とそれをうまくサポートしていました。 166 00:08:01,520 --> 00:08:03,700 >> ALIナーム:私は新入生としてそれを取って、私は多くを作った 167 00:08:03,700 --> 00:08:04,215 新しい友達。 168 00:08:04,215 --> 00:08:07,170 私はまた、この全体の濃度とに導入してしまった 169 00:08:07,170 --> 00:08:10,770 全体工学部ので、私は非常にお勧め 170 00:08:10,770 --> 00:08:14,360 と私たちのCS50家族にあなたを歓迎します。 171 00:08:14,360 --> 00:08:17,510 >> は、Yaniv YACOBY:CS50はただのツールを使用する方法を教えて 172 00:08:17,510 --> 00:08:19,210 それは広くアクセス可能です。 173 00:08:19,210 --> 00:08:21,840 あなただけのラップトップを必要とするには、Webブラウザが必要であり、 174 00:08:21,840 --> 00:08:26,030 いくつかのコードを記述することを学ぶ必要がある、とあなたが本当に構築することができます 175 00:08:26,030 --> 00:08:27,400 きちんとしたもの。 176 00:08:27,400 --> 00:08:31,660 >> KAREN肖:それは何かを作ることができるようにちょうどとてもクールだ 177 00:08:31,660 --> 00:08:34,580 そして人々はそれを使用して、人々がそれを見る必要があり、それはだ 178 00:08:34,580 --> 00:08:35,900 私は本当にそれについて好きなこと。 179 00:08:35,900 --> 00:08:37,429 >> TIMマクラフリン: - コミュニティの感覚、私が思うに、この中で 180 00:08:37,429 --> 00:08:39,470 私はこれまでに撮影した他のコースよりもコース。 181 00:08:39,470 --> 00:08:41,350 あなたはちょうど別のを取っていない - 182 00:08:41,350 --> 00:08:42,740 あなたは、他の要件を充填していない。 183 00:08:42,740 --> 00:08:45,310 あなただけの講義に行くとセクションに行くわけではありません。 184 00:08:45,310 --> 00:08:49,630 しかし、あなたは約すべてであるもののトンをやっている 185 00:08:49,630 --> 00:08:51,560 プログラミングや技術についてのすべてが、それはしません 186 00:08:51,560 --> 00:08:53,090 本当に時間のほとんどのクラスと同じように感じています。 187 00:08:53,090 --> 00:08:55,012 >> TRAVISダウンズ:そして、最初の日に、彼らはケーキを配って、 188 00:08:55,012 --> 00:08:56,215 私は即座に売却された。 189 00:08:56,215 --> 00:08:57,822 >> JACOBプリット:無料キャンディーやピザ。 190 00:08:57,822 --> 00:08:59,820 >> ZAMYLA CHAN: - 関係なく、あなたの関心度の、私が思うに 191 00:08:59,820 --> 00:09:05,170 CS50たので、楽しみがあるでしょう、あなたは知的になるだろう 192 00:09:05,170 --> 00:09:06,070 刺激を受けた。 193 00:09:06,070 --> 00:09:07,926 >> MARK GROZEN-SMITH:それは、常にクラスのパーティだし、それはだ 194 00:09:07,926 --> 00:09:09,990 パーティーが毎晩あなたのP-SETに取り組んでいます。 195 00:09:09,990 --> 00:09:11,880 >> ジャクソンSTEINKAMP:あなたは、問題セットを終えるたびに 196 00:09:11,880 --> 00:09:13,710 プロジェクトを終えたところのように感じるでしょう。 197 00:09:13,710 --> 00:09:16,580 >> MELISSA NIU:それは一年生だった、と私は買い物に行った。 198 00:09:16,580 --> 00:09:19,030 私は四つのクラスの準備があったが、私はアネンバーグにあった。 199 00:09:19,030 --> 00:09:21,670 そして、私は友人にばったり、と彼は言う、ちょっと、私は買い物しています 200 00:09:21,670 --> 00:09:24,330 このクラスはCS50と呼ばれ、あなたは私と一緒に来る必要があります。 201 00:09:24,330 --> 00:09:28,150 私は、その年の秋、それを取ってしまったし、そのクラスの後 202 00:09:28,150 --> 00:09:30,510 多分私はCSでマイナーに行くんだと思った。 203 00:09:30,510 --> 00:09:33,760 しかし、ここで私は、3年後、まだコンピュータを勉強しています 204 00:09:33,760 --> 00:09:36,680 科学と実際にメジャーとしてそれをやって、私はすべてを愛して 205 00:09:36,680 --> 00:09:37,780 その瞬間。 206 00:09:37,780 --> 00:09:39,030 >> ROBボーデン:私は見当がつかない。 207 00:09:46,408 --> 00:09:48,060 >> ALIナーム:見てみましょう。 208 00:09:48,060 --> 00:09:49,200 >> MELISSA NIU:夢中。 209 00:09:49,200 --> 00:09:50,610 >> スピーカー1:私は非常に陳腐な表現になるだろうような気がします。 210 00:09:50,610 --> 00:09:52,530 私はちょうど素晴らしい、のように、と言いたい。 211 00:09:52,530 --> 00:09:53,540 >> は、Yaniv YACOBY:アクセシビリティ。 212 00:09:53,540 --> 00:09:55,080 >> JACOBプリット:無料キャンディーやピザ。 213 00:09:55,080 --> 00:09:57,310 >> TRAVISダウンズ:クラスを断ることができないケーキ出手。 214 00:09:57,310 --> 00:09:58,510 >> TIMマクラフリン:エネルギッシュ。 215 00:09:58,510 --> 00:10:00,040 >> VIPUL SHEKHAWAT:エッセンシャル。 216 00:10:00,040 --> 00:10:02,636 >> ROBボーデン:私は答えを考えてみましょう。 217 00:10:02,636 --> 00:10:04,480 私は何かを得たと思う。 218 00:10:04,480 --> 00:10:07,092 ああ、神様。 219 00:10:07,092 --> 00:10:13,370 ええ、私の名前のロブ·ボーデン、これはCS50です。 220 00:10:13,370 --> 00:10:16,340 >> [拍手] 221 00:10:20,810 --> 00:10:23,390 DAVIDマラン:すべての権利、とても絵を描くために始めましょう 222 00:10:23,390 --> 00:10:26,230 私たちが行く、とのはご紹介しましょう​​できる方向の 223 00:10:26,230 --> 00:10:28,190 擬似コードとして知られているここでは、このコンセプト。 224 00:10:28,190 --> 00:10:29,560 だから擬似コードは、プログラミングではありません 225 00:10:29,560 --> 00:10:30,810 それ自体が言語。 226 00:10:30,810 --> 00:10:33,250 それは技術的なもの自体がありませんが、それだけのようなものだ 227 00:10:33,250 --> 00:10:36,490 かなり正確に自分自身を表現する一般的な方法、 228 00:10:36,490 --> 00:10:39,730 かなりアルゴリズム、かなり手続き的に、しかしなし 229 00:10:39,730 --> 00:10:42,570 あなたが表現しているものの言語を気にすること 230 00:10:42,570 --> 00:10:43,150 自分インチ 231 00:10:43,150 --> 00:10:46,280 それは英語とプログラミング言語のいくつかのモデルだ 232 00:10:46,280 --> 00:10:48,790 あなたが精通していることが起こるので、始めることができる 233 00:10:48,790 --> 00:10:50,600 我々が行くように、この種のことを書いて。 234 00:10:50,600 --> 00:10:54,450 そして、実際に、ヨセフは、私がすることにステージにあなたを借りることができた 235 00:10:54,450 --> 00:10:55,490 ここで筆記? 236 00:10:55,490 --> 00:11:00,130 私は事前にここで率先して置くことを忘れてしまった 237 00:11:00,130 --> 00:11:02,920 いくつかの靴下に今日、これは私たちの多くの間になるでしょう 238 00:11:02,920 --> 00:11:03,780 ばかげた例。 239 00:11:03,780 --> 00:11:04,580 >> 今、私はここにあなたを必要とする。 240 00:11:04,580 --> 00:11:05,630 私は靴下の部分をやる。 241 00:11:05,630 --> 00:11:08,040 そこでここでは、少しのスクラッチパッドを持っています。 242 00:11:08,040 --> 00:11:09,940 これは、文字通りMacのテキストエディットだけです。 243 00:11:09,940 --> 00:11:12,270 我々は、実際に実行可能なプログラムを書くつもりはないが、 244 00:11:12,270 --> 00:11:14,220 私達はちょうどベースの擬似コードをスケッチ開始するつもりだ 245 00:11:14,220 --> 00:11:17,830 弁護士の一部には、ここで私に提供します。 246 00:11:17,830 --> 00:11:20,760 だからここに自宅で靴下の私の山です。 247 00:11:20,760 --> 00:11:23,320 私は今、私は朝起きたときには靴下を持っていない、と私たち 248 00:11:23,320 --> 00:11:26,280 いると、プログラム、ソートのアルゴリズムを記述する必要があります 249 00:11:26,280 --> 00:11:27,900 私の足の上にこれらの靴下を取得します。 250 00:11:27,900 --> 00:11:30,860 と道に沿って、見てみましょうならば、我々は旅の上、または発生した、 251 00:11:30,860 --> 00:11:32,860 あなたが開始する必要があるとしていることをいくつかのアイデア 252 00:11:32,860 --> 00:11:35,470 プログラミングするとき、はるかに真剣に考える 253 00:11:35,470 --> 00:11:37,950 あなたのプログラムといけないので非常に意図したとおりに動作しません。 254 00:11:37,950 --> 00:11:39,580 >> だから私はここに座って。 255 00:11:39,580 --> 00:11:41,180 私は靴下の私の山を持っている。 256 00:11:41,180 --> 00:11:43,780 合理的な人間がそう最初の事は何ですか 257 00:11:43,780 --> 00:11:46,600 目標は、靴下のペアを置くとしているときですか? 258 00:11:46,600 --> 00:11:49,190 誰かが私に1ステップ、1ステップだけ与える。 259 00:11:49,190 --> 00:11:49,796 うん? 260 00:11:49,796 --> 00:11:50,690 読者:かがむ。 261 00:11:50,690 --> 00:11:54,290 DAVIDマラン:オーケー、かがむ。 262 00:11:54,290 --> 00:11:55,540 ステップ2。 263 00:11:59,975 --> 00:12:00,645 ステップ2。 264 00:12:00,645 --> 00:12:01,840 読者:あなたの靴下を拾う。 265 00:12:01,840 --> 00:12:03,220 DAVIDマラン:あなたの靴下を拾う。 266 00:12:03,220 --> 00:12:07,610 さて、ここで若干のあいまいさが、これは最初の一人である 267 00:12:07,610 --> 00:12:09,380 我々は意図的にすることになっていることを足かせ 268 00:12:09,380 --> 00:12:10,290 ここで出会う。 269 00:12:10,290 --> 00:12:14,110 それが少し曖昧なので、あなたの靴下を拾う。 270 00:12:14,110 --> 00:12:17,425 ファイン、私はこの1つを取ることが、コンピュータ、わずかに気づくでしょう 271 00:12:17,425 --> 00:12:20,420 ビット、ちょうどに人間の本能のその種を持っているつもりはないされている 272 00:12:20,420 --> 00:12:21,490 最も近いものを選択します。 273 00:12:21,490 --> 00:12:23,590 私たちは、ずっと前に、開始する必要があるとして発現している 274 00:12:23,590 --> 00:12:24,610 より正確に自分自身。 275 00:12:24,610 --> 00:12:26,600 >> すべての権利なので、ステップ2は、あなたの靴下を拾っています。 276 00:12:26,600 --> 00:12:27,520 我々はそれを取るよ。 277 00:12:27,520 --> 00:12:28,620 ステップ3。 278 00:12:28,620 --> 00:12:29,532 後ろに。 279 00:12:29,532 --> 00:12:30,900 読者:マッチングペアを探す。 280 00:12:30,900 --> 00:12:32,060 DAVIDマラン:マッチングペアを探す。 281 00:12:32,060 --> 00:12:34,740 わかりましたので、これは良いです。 282 00:12:34,740 --> 00:12:35,650 私はこの靴下を選択しなければならなかった。 283 00:12:35,650 --> 00:12:39,200 だから目標は今や、マッチング靴下を見つけることですが、何 284 00:12:39,200 --> 00:12:39,990 それはどういう意味ですか? 285 00:12:39,990 --> 00:12:42,130 私はずっと水曜のような合理的な人間、 286 00:12:42,130 --> 00:12:44,700 電話帳にマイク·スミスを見つける方法を知っていただけの種類の 287 00:12:44,700 --> 00:12:45,640 彼らの本能と一緒に行きました。 288 00:12:45,640 --> 00:12:49,220 しかし、ここでは、それは明らかにここでは、この靴下だが、コンピュータの 289 00:12:49,220 --> 00:12:51,350 そう本能的になるつもりはない。 290 00:12:51,350 --> 00:12:53,830 コンピュータは、私たちのように、ビットのコレクションを持っているとしている 291 00:12:53,830 --> 00:12:55,380 水曜日に議論し、それらは 292 00:12:55,380 --> 00:12:56,710 メモリに何とか開催しました。 293 00:12:56,710 --> 00:13:00,400 しかし、ポイントは、コンピュータだけの能力を持っているということです 294 00:13:00,400 --> 00:13:03,390 一つずつ物事を見て、実際にする、たとえ我々 295 00:13:03,390 --> 00:13:05,980 人間 - 私はダウンちらっと見て、スプリットのようにそれは感じているにもかかわらず、 296 00:13:05,980 --> 00:13:08,900 靴下がどこにある第二後、私は、私の脳と私の目を知っている 297 00:13:08,900 --> 00:13:12,000 おそらくそれらの靴下の迅速なスキムミルクを行なったし、次にラッチ 298 00:13:12,000 --> 00:13:13,400 問題のバージョンにしてください。 299 00:13:13,400 --> 00:13:15,780 >> 我々は今、コンピュータなど、すべてのそれ以上の意図的で、そうであれば 300 00:13:15,780 --> 00:13:17,780 どのように私はこのマッチングのペアを見つけるのですか? 301 00:13:17,780 --> 00:13:18,890 さて、私たちは繰り返し処理をする必要があります。 302 00:13:18,890 --> 00:13:21,440 我々は、上の靴下のこの混乱の上におそらくループに持っている 303 00:13:21,440 --> 00:13:25,760 私はそれぞれの靴下のために何かのように言うことによって床が、それを選ぶ 304 00:13:25,760 --> 00:13:30,195 アップしてから、もう一つ、同じ形と大きさ、IF 305 00:13:30,195 --> 00:13:32,150 ドット、ドット、ドット、我々は話を続けます。 306 00:13:32,150 --> 00:13:34,430 だから、それぞれの靴下のために、私はこの1つをピックアップ。 307 00:13:34,430 --> 00:13:36,520 私は、これはこの1に等しいかを確認しました。 308 00:13:36,520 --> 00:13:38,250 それはないので、私は脇側を置く。 309 00:13:38,250 --> 00:13:39,220 その後、私は再び繰り返すことができます。 310 00:13:39,220 --> 00:13:40,340 この1つは等しいのですか? 311 00:13:40,340 --> 00:13:42,010 いいえ、それは、私はそれを脇に置くわけではありません。 312 00:13:42,010 --> 00:13:42,710 この1つはありますか? 313 00:13:42,710 --> 00:13:43,200 いいえ。 314 00:13:43,200 --> 00:13:43,670 これはどう? 315 00:13:43,670 --> 00:13:44,520 いいえ、など。 316 00:13:44,520 --> 00:13:48,730 そして最後に、うまくいけば、私はここでこの靴下に遭遇するでしょう。 317 00:13:48,730 --> 00:13:51,350 それが同じ形、大きさだそうだとすれば、それを取る。 318 00:13:51,350 --> 00:13:53,980 >> そして今、ここに私たちの次のステップは何でしょうか? 319 00:13:53,980 --> 00:13:54,402 うん? 320 00:13:54,402 --> 00:13:56,090 読者:左から右に識別します。 321 00:13:56,090 --> 00:13:58,980 DAVIDマラン:じゃあ、左右の識別するので、 322 00:13:58,980 --> 00:14:01,870 幸いなことに、作品のようなもの。 323 00:14:01,870 --> 00:14:04,020 少し対称、または私はちょうどそれらをそのように身に着けてきました。 324 00:14:04,020 --> 00:14:07,020 すべての権利、私は権利を認識しているので。 325 00:14:07,020 --> 00:14:09,980 そして今、我々は先に進む前には、私は何ヨセフのを指摘してみましょう 326 00:14:09,980 --> 00:14:12,890 精通したプログラマのようなものとしてここでやって。 327 00:14:12,890 --> 00:14:15,800 だからもう一度、そこにこれを行うのは誰な方法はありませんが、ちょうど超え 328 00:14:15,800 --> 00:14:18,480 行番号付け、ヨセフはすでにこれを実行し始めている 329 00:14:18,480 --> 00:14:19,460 インデントの一種。 330 00:14:19,460 --> 00:14:21,950 実際、これは、プログラミングでは非常によく行われています 331 00:14:21,950 --> 00:14:26,110 それによって、あなたが何かのスタイルをループ、反復ないとき、など 332 00:14:26,110 --> 00:14:28,480 我々は、それぞれに英語のフレーズ "と暗示している 333 00:14:28,480 --> 00:14:31,090 靴下、 "我々がわかるように擬似コードのコンベンションと、 334 00:14:31,090 --> 00:14:33,410 通常のプログラミング言語は、単にインデントすることである。 335 00:14:33,410 --> 00:14:36,240 スペースバーを数回ヒットし、Tabキーなどを打つ 336 00:14:36,240 --> 00:14:40,660 下になるように入れ子になった "とは、各靴下FOR"の塊です 337 00:14:40,660 --> 00:14:43,430 あなたは、そのループの結果として実行するために必要なもの。 338 00:14:43,430 --> 00:14:45,940 だからそれは意味的に伝えることはこれですべてです。 339 00:14:45,940 --> 00:14:48,620 今すぐ一方、 "それは同じ形とサイズの場合は、" 340 00:14:48,620 --> 00:14:51,590 "それを取っては"ただ意味さらにインデントされているという事実 341 00:14:51,590 --> 00:14:54,370 それはあなたがその条件あればすればいいだけのことだ、 342 00:14:54,370 --> 00:14:59,770 その枝、道路のそのフォークは、本当の事実である場合。 343 00:14:59,770 --> 00:15:02,130 >> だから今ここに、我々はステップ4にしている、左右の識別。 344 00:15:02,130 --> 00:15:03,410 私は右の識別した。 345 00:15:03,410 --> 00:15:05,150 私にステップ5を与える。 346 00:15:05,150 --> 00:15:07,880 そして技術的に、私たちは本当に呼び出すことができます 347 00:15:07,880 --> 00:15:09,510 各事向け - 348 00:15:09,510 --> 00:15:11,450 場合は、おそらくすべての行に番号を付ける必要があります 349 00:15:11,450 --> 00:15:12,190 我々はこれをやろうとしている。 350 00:15:12,190 --> 00:15:14,006 ジョセフ:[聞こえない] 351 00:15:14,006 --> 00:15:14,610 DAVIDマラン:[聞こえない]? 352 00:15:14,610 --> 00:15:16,070 大丈夫、大丈夫です、大丈夫、私たちはそれにあなたの方法をやる。 353 00:15:16,070 --> 00:15:19,590 すべての権利なので、ステップ5、どのように我々は右の靴下をしていますか? 354 00:15:19,590 --> 00:15:22,310 我々はここで、次の方法を続行しますか? 355 00:15:22,310 --> 00:15:22,730 はい? 356 00:15:22,730 --> 00:15:24,300 読者:右脚を持ち上げます。 357 00:15:24,300 --> 00:15:27,100 DAVIDマラン:オーケー、右脚を持ち上げます。 358 00:15:27,100 --> 00:15:29,330 ステップ6? 359 00:15:29,330 --> 00:15:30,728 迅速。 360 00:15:30,728 --> 00:15:31,202 うん。 361 00:15:31,202 --> 00:15:33,100 読者:靴下の開放端を見つけてください。 362 00:15:33,100 --> 00:15:34,440 DAVIDマラン:さて、靴下の開放端を見つける。 363 00:15:34,440 --> 00:15:34,840 すごくいい。 364 00:15:34,840 --> 00:15:37,180 そこでここでは、正直なところ、非常に一般的な本能だけであろう 365 00:15:37,180 --> 00:15:39,880 右の靴下に入れたが、それはあまりにもかなりあいまいです。 366 00:15:39,880 --> 00:15:42,750 コンピュータまたは人間は、それが何を意味するかを正確に知っていない限り、 367 00:15:42,750 --> 00:15:45,160 それは私が、ので、ここでそれを実行するようにしたつもりはない 368 00:15:45,160 --> 00:15:46,520 株式の開口部を発見した。 369 00:15:46,520 --> 00:15:48,222 ステップ7? 370 00:15:48,222 --> 00:15:49,700 読者:あなたのつま先をタッチします。 371 00:15:49,700 --> 00:15:51,070 DAVIDマラン:タッチつま先。 372 00:15:51,070 --> 00:15:53,546 さて、今、私たちは行く - 373 00:15:53,546 --> 00:15:56,480 すべての権利、私はここにいくつかの自由を取るつもりだ。 374 00:15:56,480 --> 00:15:57,110 ありがとうございます。 375 00:15:57,110 --> 00:15:59,210 ステップ8? 376 00:15:59,210 --> 00:16:00,060 靴下を着用します。 377 00:16:00,060 --> 00:16:02,060 さて、今私は、我々は近く取るの並べ替えには十分だと思う 378 00:16:02,060 --> 00:16:03,480 自宅でこの1。 379 00:16:03,480 --> 00:16:05,980 すべての権利は​​、これが上がる。 380 00:16:05,980 --> 00:16:07,950 私は実際に、それが何を意味するのかと、いくつかの自由を取るよ。 381 00:16:07,950 --> 00:16:08,920 靴下を着用します。 382 00:16:08,920 --> 00:16:10,853 右のすべて、今9のステップ? 383 00:16:10,853 --> 00:16:11,740 読者:足を下に置きます。 384 00:16:11,740 --> 00:16:12,510 DAVIDマラン:ありがとうございました。 385 00:16:12,510 --> 00:16:15,610 ステップ9は、足を置いて、今、我々は繰り返すことができます。 386 00:16:15,610 --> 00:16:19,540 だから、おそらく、我々は今、ステップ10に移動して、識別すると言うことができます 387 00:16:19,540 --> 00:16:21,960 左の靴下が、おそらくすでに完了です。 388 00:16:21,960 --> 00:16:24,100 >> それでその後、私は、これらの手順を繰り返してからソートすることができます。 389 00:16:24,100 --> 00:16:25,260 しかし、この種の疑問が浮かびます。 390 00:16:25,260 --> 00:16:28,100 前に、最後の時間は、我々は、我々が何かを繰り返したい 391 00:16:28,100 --> 00:16:30,730 FOR、繰り返し、何度も何度もそれをやった 392 00:16:30,730 --> 00:16:32,660 各ループは、いわば。 393 00:16:32,660 --> 00:16:36,420 それは両方を処理するためにループを使用する意味があるだろう 394 00:16:36,420 --> 00:16:38,470 左右の靴下? 395 00:16:38,470 --> 00:16:40,460 これらの操作はかなりしているように感じているので 396 00:16:40,460 --> 00:16:43,090 1がここから始まるという事実のためにと1点を除いて同じ 397 00:16:43,090 --> 00:16:44,850 ここから始まる? 398 00:16:44,850 --> 00:16:47,400 我々は、ループか、あるいは、我々は単に手順を書き続けるん 399 00:16:47,400 --> 00:16:48,745 10と11と12? 400 00:16:48,745 --> 00:16:50,540 読者:ループ。 401 00:16:50,540 --> 00:16:52,240 >> DAVIDマラン:わかりましたので、ループ。 402 00:16:52,240 --> 00:16:54,730 私は実際にちょうど行く続けると言っているかもしれません。 403 00:16:54,730 --> 00:16:55,720 では、なぜこのような場合ですか? 404 00:16:55,720 --> 00:16:57,940 まあ、これは実際に私たちの非自明の最初のものです 405 00:16:57,940 --> 00:17:01,210 デザインの決定、および実際には、使ってメトリックの1つ 406 00:17:01,210 --> 00:17:03,990 私たちは、自分たちのために、あなたのために、評価することから始めましょう 407 00:17:03,990 --> 00:17:06,780 プログラムの品質は、それがいかにうまく設計されています。 408 00:17:06,780 --> 00:17:09,619 あなたに必要な作業の最小限の量を行っている 409 00:17:09,619 --> 00:17:12,480 仕事は、どちらかの面で、最も早く片付ける 410 00:17:12,480 --> 00:17:15,430 あなたの時間や、コンピュータの稼働時間の面で? 411 00:17:15,430 --> 00:17:17,589 どのように多くの操作が実行するためにそれを取るのですか? 412 00:17:17,589 --> 00:17:20,180 だから間違いなく、これは、ループのための機会である 413 00:17:20,180 --> 00:17:22,829 私はコピーして貼り付ける、ヨセフのように効果的に開始するとすぐに 414 00:17:22,829 --> 00:17:25,010 一瞬でやって開始すると、あなたを無駄にすることのようなものだ 415 00:17:25,010 --> 00:17:27,140 時間、あなたは二重に表現力豊かであることだ。 416 00:17:27,140 --> 00:17:30,260 >> しかし同時に、これらは実際には単なる2特別です 417 00:17:30,260 --> 00:17:31,890 例、左と右。 418 00:17:31,890 --> 00:17:34,930 と前のに対し、私は、10または20以上の靴下を持っているかもしれません 419 00:17:34,930 --> 00:17:37,960 山、それは間違いの50行を持たないように理にかなっている 420 00:17:37,960 --> 00:17:40,180 コー​​ドは、その後、次の1、この靴下をチェックすると言って 421 00:17:40,180 --> 00:17:41,300 その後、次の1。 422 00:17:41,300 --> 00:17:43,450 ここでは、それは少しは明らかだ、と私は提案したい 423 00:17:43,450 --> 00:17:44,390 我々は、いずれかの道を行くことができる。 424 00:17:44,390 --> 00:17:46,720 それだけでループが、我々はどちらか、そのループを及ぼす可能性があります 425 00:17:46,720 --> 00:17:50,620 二回、あるいは単に私たちが少しだけをコピーして貼り付けることができます 426 00:17:50,620 --> 00:17:53,270 ここでは仕事を得るために。 427 00:17:53,270 --> 00:17:55,210 しかし、このプログラムは、いわば、バギーです。 428 00:17:55,210 --> 00:17:59,120 それはそうと、いくつかのミス、エラー、またはコーナーケースがあるかもしれません 429 00:17:59,120 --> 00:18:00,860 私たちは本当に予想していなかったことを、話す。 430 00:18:00,860 --> 00:18:03,400 何もこの時間が間違っていたんですが、何が間違っている可能性が 431 00:18:03,400 --> 00:18:06,100 このプログラムを実行中? 432 00:18:06,100 --> 00:18:07,040 読者:あなたはどんな靴下を持っていません。 433 00:18:07,040 --> 00:18:08,980 >> DAVIDマラン:だから全くそこには靴下があるかもしれない。 434 00:18:08,980 --> 00:18:10,380 それでは、そのコーナーケースを考えてみましょう。 435 00:18:10,380 --> 00:18:14,670 我々はステップ1に戻って上にスクロールができればそれでので、ステップ1であった 436 00:18:14,670 --> 00:18:16,540 かがむ、それはチェックアウトするようにします。 437 00:18:16,540 --> 00:18:21,250 ステップ2、あなたの靴下を拾ったが、その後、マッチング靴下を見つける 438 00:18:21,250 --> 00:18:22,420 右の識別。 439 00:18:22,420 --> 00:18:25,050 、我々は一種の仮定の全体の束を作って、これは 440 00:18:25,050 --> 00:18:27,720 率直に言って、なぜプログラムが時々クラッシュする。 441 00:18:27,720 --> 00:18:30,240 あなたは、プログラマは、一定の前提(仮定)、等を行った場合 442 00:18:30,240 --> 00:18:33,000 確かに靴下があるように起こっているのか、確かにそこに起こっている 443 00:18:33,000 --> 00:18:35,310 コンピュータに残ってメモリであることが、確かにそこに起こっている 444 00:18:35,310 --> 00:18:37,420 ハードドライブ上に残ってディスクスペースであること - 445 00:18:37,420 --> 00:18:39,040 さて、あなたは、これらの仮定をし、それがない場合は、 446 00:18:39,040 --> 00:18:41,880 どのコンピュータの時々知っている実際には、現実、 447 00:18:41,880 --> 00:18:42,520 するつもり? 448 00:18:42,520 --> 00:18:44,450 そして、時には、あなたは回転ビーチボールまたは取得するとき 449 00:18:44,450 --> 00:18:47,750 こそだ冷凍のWindowsなど、いくつかの 450 00:18:47,750 --> 00:18:50,980 プログラマは、それらのいわゆるコーナーケースを予想していなかった。 451 00:18:50,980 --> 00:18:53,050 他に何がこのプログラムで何がまずかったのでしょうか? 452 00:18:53,050 --> 00:18:53,330 うん? 453 00:18:53,330 --> 00:18:55,950 >> 読者:あなたは右脚と左脚を持っていない。 454 00:18:55,950 --> 00:18:58,920 DAVIDマラン:オーケー、右脚との両方を持っていない可能性があり 455 00:18:58,920 --> 00:19:01,940 左脚ので、このプログラムでは、普遍的ではないかもしれません 456 00:19:01,940 --> 00:19:02,590 該当する。 457 00:19:02,590 --> 00:19:03,658 その他? 458 00:19:03,658 --> 00:19:05,650 読者:あなたは孤児靴下を拾っている可能性があります。 459 00:19:05,650 --> 00:19:07,970 DAVIDマラン:私は孤児靴下を拾っている可能性がありますので、 460 00:19:07,970 --> 00:19:11,250 私がきたので、ちょうど兄弟はありません非マッチング靴下 461 00:19:11,250 --> 00:19:13,650 それを失って、それが破れている、それはまだ洗濯での、等。 462 00:19:13,650 --> 00:19:15,550 そのため、あまりにも、実際に処理されなかった。 463 00:19:15,550 --> 00:19:15,790 うん? 464 00:19:15,790 --> 00:19:17,510 読者:あなたはすでに靴下を上に持つことができる。 465 00:19:17,510 --> 00:19:19,050 DAVIDマラン:私はすでに靴下を上に持つことができる。 466 00:19:19,050 --> 00:19:20,080 私は実際には確認しませんでした。 467 00:19:20,080 --> 00:19:23,350 あなたは上の靴下を持っていない場合は、何に進んで 468 00:19:23,350 --> 00:19:24,330 ライン1と2。 469 00:19:24,330 --> 00:19:24,980 そして、それが起こる可能性があります。 470 00:19:24,980 --> 00:19:26,880 あなたはそう、あなたの靴下に等で眠りに落ちる 471 00:19:26,880 --> 00:19:28,860 あまりにも、非常に合理的なコーナーケース。 472 00:19:28,860 --> 00:19:29,630 そして、おそらく他の1? 473 00:19:29,630 --> 00:19:31,310 読者:靴下を裏返しです。 474 00:19:31,310 --> 00:19:34,000 DAVIDマラン:だから靴下が裏返しなので、エラーをしなかった 475 00:19:34,000 --> 00:19:35,330 手短に言えば、チェックします。 476 00:19:35,330 --> 00:19:38,550 我々が期待するような世界の状態であれば、我々は確認しませんでした。 477 00:19:38,550 --> 00:19:41,310 私たちが実際に我々が探しているものが見つかった場合、我々は確認しませんでした。 478 00:19:41,310 --> 00:19:43,310 >> そして、これはばかげた例のようなものであっても、 479 00:19:43,310 --> 00:19:46,110 靴下を含む、一日の終わりには、これはまさに 480 00:19:46,110 --> 00:19:48,740 あなたがプログラムを書いている間持っている必要があり、考え方の並べ替え、 481 00:19:48,740 --> 00:19:51,740 でも、スクラッチだけでなくCの場合と同様に、JavaScriptで、PHPで、 482 00:19:51,740 --> 00:19:53,920 そうしないとするので、あなたのプログラムが出展します 483 00:19:53,920 --> 00:19:56,980 その紡績ビーチボールと同等か、単に収量 484 00:19:56,980 --> 00:19:58,210 不正確な結果。 485 00:19:58,210 --> 00:20:00,250 私たちのスクライブヨセフにここに非常に多くの感謝します。 486 00:20:00,250 --> 00:20:05,060 [拍手] 487 00:20:05,060 --> 00:20:06,850 >> DAVIDマラン:全ての権利は​​、そこらで、何ですか 488 00:20:06,850 --> 00:20:08,230 実際、コンピュータプログラム? 489 00:20:08,230 --> 00:20:09,670 まあ、のは一目みましょう 490 00:20:09,670 --> 00:20:11,100 ここに代表的な1。 491 00:20:11,100 --> 00:20:15,260 だから、これは、CはCと呼ばれる言語で書かれたプログラムです 492 00:20:15,260 --> 00:20:17,830 かなりこのごろ古いですが、多くの新しい言語が組み込まれている 493 00:20:17,830 --> 00:20:18,460 その上に。 494 00:20:18,460 --> 00:20:21,180 確かに、PHPは、我々はよウェブを中心とした言語の一つ 495 00:20:21,180 --> 00:20:24,050 任期の終わりに向かって使用し、それ自体はと呼ばれるものがあります 496 00:20:24,050 --> 00:20:27,550 インタプリタ、Cで書かれているプログラムが、それについての詳細 497 00:20:27,550 --> 00:20:28,690 今から何週間インチ 498 00:20:28,690 --> 00:20:30,840 しかし、このプログラムは、これはそれを書くために何を意味するかである 499 00:20:30,840 --> 00:20:32,880 非常にシンプルなものとはいえプログラム。 500 00:20:32,880 --> 00:20:35,540 我々はここでいくつかの非常に不可解な構文がありますが、次のことができます 501 00:20:35,540 --> 00:20:38,340 おそらく、あなたは前にプログラミングしたことがない場合であっても、どうなったと思う 502 00:20:38,340 --> 00:20:39,750 このプログラムではありません。 503 00:20:39,750 --> 00:20:43,640 実際、私はprintfが何であるかを知らないが、確かに印刷 504 00:20:43,640 --> 00:20:45,700 何かをプリントアウトのアイデアを想起させる。 505 00:20:45,700 --> 00:20:48,590 それではい、このプログラムは、最終的にプリントアウトしようとしている 506 00:20:48,590 --> 00:20:50,250 言葉の "Hello、World。" 507 00:20:50,250 --> 00:20:53,390 >> さて、あなたは、MacまたはPCまたはLinuxコンピュータ、オッズを持っているかどうか 508 00:20:53,390 --> 00:20:55,550 あなたは自由にいくつかをダウンロードした場合、少なくとも、アール 509 00:20:55,550 --> 00:20:58,000 利用可能なソフトウェアは、上のプログラムを書いていたかもしれない 510 00:20:58,000 --> 00:21:00,310 もうだいぶ前から自分のノートパソコン。 511 00:21:00,310 --> 00:21:03,040 Mac OSでは、例えば、と呼ばれるこのプログラムはあり 512 00:21:03,040 --> 00:21:05,340 あなたは通常のMac、付属していますターミナル 513 00:21:05,340 --> 00:21:07,550 [ユーティリティ]フォルダ、そして、それは一般的には黒とをオープン 514 00:21:07,550 --> 00:21:09,820 白またはあなたが持っているで、白と黒の窓 515 00:21:09,820 --> 00:21:11,410 は、コマンドを入力できるプロンプトで入力します。 516 00:21:11,410 --> 00:21:13,060 だから、これは実際にどのようなコンピュータを彷彿とさせる 517 00:21:13,060 --> 00:21:15,100 グラフィカル·ユーザーよりも前に使用される 518 00:21:15,100 --> 00:21:16,710 インタフェース、GUIは、一緒に来た。 519 00:21:16,710 --> 00:21:19,200 さて、Windowsには、フォームにも同様の仕組みを持っている 520 00:21:19,200 --> 00:21:20,130 コマンドプロンプトの。 521 00:21:20,130 --> 00:21:23,430 >> しかし、私がここでやろうとしてたんだけど、としましょう​​、開放されている 522 00:21:23,430 --> 00:21:26,580 再びテキストエディットので、我々が使用していたものと同じプログラム 523 00:21:26,580 --> 00:21:28,870 少し前に擬似コード、私は先に行くつもりだと 524 00:21:28,870 --> 00:21:30,080 私の最初のプログラムを書く。 525 00:21:30,080 --> 00:21:34,030 stdio.hをインクルード、どんなことを意味し、int型のmain 526 00:21:34,030 --> 00:21:36,880 ボイド、どんなことを意味し、ここで途中で、 527 00:21:36,880 --> 00:21:40,560 のprintf( "こんにちは、世界")。そして、閉じ引用符、 528 00:21:40,560 --> 00:21:42,340 括弧、セミコロンを閉じます。 529 00:21:42,340 --> 00:21:44,460 今、私は先に行くつもりだとちょうどコマンド+ Sを押します。私は行くよ 530 00:21:44,460 --> 00:21:47,650 先に行くと、hello.cのようにこれを保存するためのコンベンション 531 00:21:47,650 --> 00:21:50,530 C言語プログラミングの世界では、ファイルドットcを名前です。 532 00:21:50,530 --> 00:21:52,880 私はちょうどジョン·ハーバードのホームディレクトリに置くつもりです、 533 00:21:52,880 --> 00:21:56,370 ここでは、[保存]をクリックし、そして今、私はこの所へ行くつもりです 534 00:21:56,370 --> 00:21:59,110 再びこの黒と白のプロンプトである端末ウィンドウで、 535 00:21:59,110 --> 00:22:00,860 ここで私は、コマンドを実行できます。 536 00:22:00,860 --> 00:22:04,550 >> 私はしないことで、自分の名前を入力してプログラムを実行することができます 537 00:22:04,550 --> 00:22:06,710 通常の意味でのダブルクリックアイコン。 538 00:22:06,710 --> 00:22:10,590 しかし、ことは、Cは、C第一のように、その言語である約 539 00:22:10,590 --> 00:22:13,150 この形で来る、何かがソースコードと呼ばれる。 540 00:22:13,150 --> 00:22:15,400 英語に少し似ているが何か 541 00:22:15,400 --> 00:22:17,980 ヨセフの擬似コードよりも英語のように明らかに弱い 542 00:22:17,980 --> 00:22:18,930 少し前。 543 00:22:18,930 --> 00:22:20,560 それは、もう少し難解だ。 544 00:22:20,560 --> 00:22:22,830 これは、いくつかのパターンや規則に従っているようだ。 545 00:22:22,830 --> 00:22:25,300 私は、中括弧、セミコロン、引用符​​を持っているという事実 546 00:22:25,300 --> 00:22:28,240 角括弧、この思い付いたコンピュータのように感じている 547 00:22:28,240 --> 00:22:29,250 言語の一種。 548 00:22:29,250 --> 00:22:32,010 私はこの端末ウィンドウに、今、行けばしかし、私は実行することができます 549 00:22:32,010 --> 00:22:35,250 そのソースコードを変換するために起こっているコマンドは次のようになります 550 00:22:35,250 --> 00:22:36,610 何かがオブジェクトコードと呼ばれる。 551 00:22:36,610 --> 00:22:39,690 ゼロに英語のような構文を変換するために起こっている 552 00:22:39,690 --> 00:22:41,760 ともの、ゼロともの我々同じ種類の 553 00:22:41,760 --> 00:22:42,820 水曜日の話。 554 00:22:42,820 --> 00:22:44,810 今、私はClangのというコマンドを実行するつもりです。 555 00:22:44,810 --> 00:22:47,750 来て数週間でこれについての詳細が、それは使用してプログラムの 556 00:22:47,750 --> 00:22:52,330 私は、全体の束にhello.cを変換できる 557 00:22:52,330 --> 00:22:53,640 0と1の。 558 00:22:53,640 --> 00:22:54,950 >> 今、私は、このコマンドを実行しました。 559 00:22:54,950 --> 00:22:57,940 私はClangのを実行してきたが、その後私は、このファイルに自分自身を実行すると述べた 560 00:22:57,940 --> 00:23:00,630 私は少し前に作成したhello.cを、と呼ばれる 561 00:23:00,630 --> 00:23:02,090 何も起こらないように見える。 562 00:23:02,090 --> 00:23:05,550 私は自分のホームディレクトリの周りつついている場合でも、実際のところ、私は見るでしょう 563 00:23:05,550 --> 00:23:09,620 この愚かな名前のプログラムa.outは現在存在していること。 564 00:23:09,620 --> 00:23:12,250 で書くとき、これは単にプログラムのデフォルトの名前です 565 00:23:12,250 --> 00:23:15,140 C.私達は最終的にこれを上書きすることができますが、a.outがある 566 00:23:15,140 --> 00:23:18,340 プログラムの名前は、私はちょうどゼロとものに変換されます。 567 00:23:18,340 --> 00:23:21,490 そして今、それそれのゼロともの、私のMac、この場合には、または 568 00:23:21,490 --> 00:23:24,670 お使いのWindows PC、それらのビットを理解することができ、それらの 569 00:23:24,670 --> 00:23:25,410 ゼロともの。 570 00:23:25,410 --> 00:23:29,130 そして私はEnterキーを打ったとき、私は "こんにちは、世界!"を参照してください。 571 00:23:29,130 --> 00:23:31,270 >> しかし、それは少しバギーだ。 572 00:23:31,270 --> 00:23:34,110 私はかなり言いませんでして、 "hello、world:空気を - !jharvard。"空気である 573 00:23:34,110 --> 00:23:35,020 私のコンピュータの名前。 574 00:23:35,020 --> 00:23:37,730 Jharvardアカウントの名前なので、何をした私ははっきりと 575 00:23:37,730 --> 00:23:41,070 プログラムから省略されてる? 576 00:23:41,070 --> 00:23:42,480 改行のいくつかの種類。 577 00:23:42,480 --> 00:23:45,150 私は、入力と同等またはキャリッジリターンを打っていなかった 578 00:23:45,150 --> 00:23:47,760 これは、再び、コンピュータができるという事実を証明するものです 579 00:23:47,760 --> 00:23:49,800 唯一あなたが彼らが何を言う何をすべきか。 580 00:23:49,800 --> 00:23:52,400 そして、私はコンピューターを教えていなかったという事実は、移動 581 00:23:52,400 --> 00:23:53,860 カーソルを次の行に - 582 00:23:53,860 --> 00:23:55,200 まあ、それは確かにそれを行うことはないだろう 583 00:23:55,200 --> 00:23:56,750 僭越私のために。 584 00:23:56,750 --> 00:24:00,860 だから私は私のプログラムに戻って、私は\ nを言えば - 585 00:24:00,860 --> 00:24:03,180 だから我々はすぐにわかるように\ nが、一つの方法です 586 00:24:03,180 --> 00:24:06,910 改行文字は、物事のような奇妙なことを表す 587 00:24:06,910 --> 00:24:08,840 それがそうでないの結果であろう 588 00:24:08,840 --> 00:24:09,940 Enterキーを押す。 589 00:24:09,940 --> 00:24:11,730 しかし、今では、[Enter]キーを押すことと知っている 590 00:24:11,730 --> 00:24:14,170 ちょうど私たちのコードが奇妙に見えるしているので、それ世界が決めた、あなたが知っている 591 00:24:14,170 --> 00:24:16,580 何、してみましょう、1行でそれを維持するために、物事がきれいに保つために 592 00:24:16,580 --> 00:24:19,070 ちょうど\ nは改行を表し言う。 593 00:24:19,070 --> 00:24:22,260 端末ウィンドウに戻り、私は私のファイルを保存し直してみましょう、と 594 00:24:22,260 --> 00:24:25,290 入力して、a.outを再実行してください。 595 00:24:25,290 --> 00:24:28,374 まだバグが、なぜですか? 596 00:24:28,374 --> 00:24:29,750 >> 読者:[聞こえない] 597 00:24:29,750 --> 00:24:31,540 DAVIDマラン:ええ、私はそれを再コンパイルする必要があります。 598 00:24:31,540 --> 00:24:34,610 だから、プログラムをコンパイルするためには、単にソースからそれを変換することを意味 599 00:24:34,610 --> 00:24:37,660 ゼロとものにオブジェクトコード、ソースコードへのコード。 600 00:24:37,660 --> 00:24:40,830 今、私はこのテキストエディットで保存を襲っているという事実だけではありません 601 00:24:40,830 --> 00:24:43,450 私が最初にする必要があるため、それらのゼロとものにベアリング 602 00:24:43,450 --> 00:24:48,260 Clangのちょっと教えて、私は、これらのコード行を変更しました 603 00:24:48,260 --> 00:24:49,040 ソースコード。 604 00:24:49,040 --> 00:24:51,010 あなたは、a.outを再生成する必要があります。 605 00:24:51,010 --> 00:24:52,990 何が起こっているように見えませんが、コンピュータで、 606 00:24:52,990 --> 00:24:55,820 コマンドラインで、いわば、何も起こらないときに、 607 00:24:55,820 --> 00:24:57,510 それは、通常、すべてが順調であることを意味します。 608 00:24:57,510 --> 00:24:59,040 何かが起こるのでしょうかと、その意味 609 00:24:59,040 --> 00:25:00,420 あなたは一般的に、めちゃくちゃ。 610 00:25:00,420 --> 00:25:04,020 >> それでは、今ではa.outに行くと、確かに今、私が持ってみましょう "こんにちは、 611 00:25:04,020 --> 00:25:04,440 世界。 " 612 00:25:04,440 --> 00:25:05,990 そして今、どのようなこれらのゼロとものはどうですか? 613 00:25:05,990 --> 00:25:07,520 実際には、それらはどこにありますか? 614 00:25:07,520 --> 00:25:10,710 まあ、私は非常に周りをウロウロするのは本当にただ一種できません 615 00:25:10,710 --> 00:25:11,210 効果的に。 616 00:25:11,210 --> 00:25:12,650 私はテキストエディットを開いてみましょう。 617 00:25:12,650 --> 00:25:14,060 ここではa.outです。 618 00:25:14,060 --> 00:25:17,390 私が先に行くと、これを開いてみましょう、これは明らかに何か私の 619 00:25:17,390 --> 00:25:19,080 プログラムは次のようになります。 620 00:25:19,080 --> 00:25:21,570 だから私は、hello.cを開けませんが、a.outをしました。 621 00:25:21,570 --> 00:25:23,960 しかし、これは私のプログラムは本当に何なのか、実際にはありません。 622 00:25:23,960 --> 00:25:26,450 明らかに、これはアルファベット文字のいくつかの種です。 623 00:25:26,450 --> 00:25:28,670 私はゼロとものを見ませんが、これは 624 00:25:28,670 --> 00:25:30,780 a.outはプログラムであるためです。 625 00:25:30,780 --> 00:25:33,540 ゼロともの - しかし、テキストエディット、その名が示すように、それはだ 626 00:25:33,540 --> 00:25:37,130 ちょうどWindowsのメモ帳のような、単なるテキストエディタなので、それはだ 627 00:25:37,130 --> 00:25:39,730 それらゼロとものとして、すべての混乱 628 00:25:39,730 --> 00:25:41,870 彼らがいたけど、何? 629 00:25:41,870 --> 00:25:43,380 ASCII文字。 630 00:25:43,380 --> 00:25:45,020 >> だから、水曜日にリコール、私達はちょうどこの思い付いた 631 00:25:45,020 --> 00:25:48,740 の文字に数字、または任意のビットマッピング、 632 00:25:48,740 --> 00:25:51,690 アルファベットと句読点記号等。 633 00:25:51,690 --> 00:25:54,920 だから、テキストエディタのテキストエディットは、誤解されている 634 00:25:54,920 --> 00:25:57,270 ことになっている0と1のそれらのパターン 635 00:25:57,270 --> 00:25:59,990 のような印刷の言葉は、 "hello、world。"それは、それらを表示するだ 636 00:25:59,990 --> 00:26:02,150 ASCIIと、それは少し厄介に見える理由です。 637 00:26:02,150 --> 00:26:04,910 さて、ここで正しさのいくつかのヒントがあります。 638 00:26:04,910 --> 00:26:08,090 私は、強調表示した場合に注意してください、実際のヒントは、こんにちは "がある 639 00:26:08,090 --> 00:26:10,810 世界は、 "これどこかにそのプログラムである 640 00:26:10,810 --> 00:26:12,120 文は私が書いている。 641 00:26:12,120 --> 00:26:14,610 しかし、先に進み、現在は別のプログラムで見てみましょう。 642 00:26:14,610 --> 00:26:17,420 これは、我々はそれほど頻繁に使用しますものではありませんが、それはまた、付属しています 643 00:26:17,420 --> 00:26:19,970 MacとCS50アプライアンスの内側になります。 644 00:26:19,970 --> 00:26:23,940 私が先に行くとXXDと呼ばれるプログラムで開いてみましょう。 645 00:26:23,940 --> 00:26:26,530 >> 先頭へ戻る日で、ほとんどのプログラムは、かなり隠れて命名されました 646 00:26:26,530 --> 00:26:28,200 というような傾向は継続します。 647 00:26:28,200 --> 00:26:31,160 しかし、-bはバイナリとしてこのプログラムを吐き出すことを意味します。 648 00:26:31,160 --> 00:26:32,330 それを実行しないでください。 649 00:26:32,330 --> 00:26:35,770 ゼロともののように私にそれを表示し、これはC 650 00:26:35,770 --> 00:26:37,190 先ほど書いたプログラム。 651 00:26:37,190 --> 00:26:39,920 今、私は、ここで人間として、私は正直分かりませんどのような 652 00:26:39,920 --> 00:26:42,230 0と1のこれらの様々なパターンを表す。 653 00:26:42,230 --> 00:26:45,320 先頭へ戻る日で、私は、私のパンチカード等で、希望 654 00:26:45,320 --> 00:26:48,080 実際にどのようなこれらの様々なパターンをルックアップする必要があります 655 00:26:48,080 --> 00:26:51,560 01111000、実際に表しています。 656 00:26:51,560 --> 00:26:54,390 または悪いことに、私はパンチや作成を行う必要があるでしょう 657 00:26:54,390 --> 00:26:56,130 0と1のこれらのパターン。 658 00:26:56,130 --> 00:27:00,410 しかし、今のところ、そのCPU、インテル社内ので、信仰を取る 659 00:27:00,410 --> 00:27:03,440 近頃私たちのすべてのコンピュータの内部で、話すことを知っている、 660 00:27:03,440 --> 00:27:05,100 これらの0と1を解釈する方法について説明します。 661 00:27:05,100 --> 00:27:07,010 そして、いくつかのゼロとものは、印刷を意味します。 662 00:27:07,010 --> 00:27:09,040 いくつかのゼロとものは、サウンドを再生することを意味します。 663 00:27:09,040 --> 00:27:13,630 いくつかのゼロとは、キーボードからのユーザ入力を取ることを意味します。 664 00:27:13,630 --> 00:27:15,960 、そこにさまざまなパターンのすべての種類が、しかし我々ありがたい 665 00:27:15,960 --> 00:27:19,680 人間として、唯一、一般的にプログラミングを心配する必要はあり 666 00:27:19,680 --> 00:27:21,270 これはかなり高いレベル。 667 00:27:21,270 --> 00:27:24,320 そして、他のCSの授業では、より深く掘り下げダウンと見ることができます 668 00:27:24,320 --> 00:27:26,820 それらゼロともののようなもので、あるいはまだ 669 00:27:26,820 --> 00:27:28,000 まだ他のもの。 670 00:27:28,000 --> 00:27:29,210 >> だから今、これを変換してみましょう。 671 00:27:29,210 --> 00:27:32,550 Cから離れて非常に迅速に移動し、何かに移動してみましょう 672 00:27:32,550 --> 00:27:36,390 その中で、もう少し刺激的な、もう少し慰め 673 00:27:36,390 --> 00:27:39,340 私達は私達のアニメーションとサウンドを取り戻すことが、そのようなことができます 674 00:27:39,340 --> 00:27:40,940 明らかに、この私たちを逃れた 675 00:27:40,940 --> 00:27:42,480 かなり原始的なインターフェイス。 676 00:27:42,480 --> 00:27:46,430 だから、Cのこの同じプログラムは、このようになりまし表すことができます 677 00:27:46,430 --> 00:27:50,060 次のようにスクラッチと呼ばれるプログラミング言語。 678 00:27:50,060 --> 00:27:54,230 これは、で書かれたこのhello worldプログラムと同等です 679 00:27:54,230 --> 00:27:57,370 スクラッチと呼ばれるこのパズルのピースのスタイル言語。 680 00:27:57,370 --> 00:28:00,600 だから私は先に行くと、この非常にプログラムを開くことができます。 681 00:28:00,600 --> 00:28:01,850 それは再びスクラッチと呼ばれています。 682 00:28:01,850 --> 00:28:03,880 それは、自由に利用可能です、そして、これは同じものです我々 683 00:28:03,880 --> 00:28:05,120 本日開始しました。 684 00:28:05,120 --> 00:28:07,790 >> だから、これはここにスクラッチであり、それはいくつかに分かれている 685 00:28:07,790 --> 00:28:09,700 異なる部分。 686 00:28:09,700 --> 00:28:12,690 非常に右上に、我々は、いわゆる段階があり、 687 00:28:12,690 --> 00:28:13,670 確かに、それはどこにクッキーだ 688 00:28:13,670 --> 00:28:15,440 ほんの少し前に行った。 689 00:28:15,440 --> 00:28:19,660 そして、そのステージ上でスプライトと呼ばれるもの、文字、またはアール 690 00:28:19,660 --> 00:28:21,030 オブジェクト、またはエンティティ。 691 00:28:21,030 --> 00:28:23,320 それは本当にあなたがそれらをどのように考えるかは重要で、しかし、彼らはありません 692 00:28:23,320 --> 00:28:26,740 プログラム可能な、可動のものであり、この場合には、この 693 00:28:26,740 --> 00:28:30,730 私たちの学生が書いたプログラムはジンジャーブレッドのカップルを持ってい 694 00:28:30,730 --> 00:28:32,990 クッキー、円形のクッキーのカップルの全体の束 695 00:28:32,990 --> 00:28:35,430 心、眼鏡の全体の束。 696 00:28:38,170 --> 00:28:42,420 、彼または彼女はそれらのそれぞれをプログラムすることができますこのため 697 00:28:42,420 --> 00:28:44,720 別に個々の文字。 698 00:28:44,720 --> 00:28:46,480 >> さて、それは、これらの文字をプログラムするためにどういう意味ですか? 699 00:28:46,480 --> 00:28:49,440 まあ、私が先に行くとこの左側のクッキーをクリックしてみましょう 700 00:28:49,440 --> 00:28:51,830 そしてここでトップの左に上にスクロールします。 701 00:28:51,830 --> 00:28:53,670 私の画面の左上に今ある 702 00:28:53,670 --> 00:28:55,280 いわゆるスクリプトエリア。 703 00:28:55,280 --> 00:28:58,790 私がすることができ、その上これは、最初は、白紙状態のようなものです 704 00:28:58,790 --> 00:29:01,540 率直に言って、やる、パズルのピースをドラッグ·アンド·ドロップ 705 00:29:01,540 --> 00:29:03,020 まさに彼らの言うこと。 706 00:29:03,020 --> 00:29:05,820 パズルのピースのこのスタックの最上部にある言葉です 707 00:29:05,820 --> 00:29:09,340 あなたは前に気づかなかったグリーンフラッグがクリックされたとき、以下の場合、 708 00:29:09,340 --> 00:29:12,300 私はそのクッキーの歌を始めた方法は、文字通り、クリックされました 709 00:29:12,300 --> 00:29:13,320 緑の旗。 710 00:29:13,320 --> 00:29:16,590 だから左上にそのパズルのピースがあることを意味するとき 711 00:29:16,590 --> 00:29:19,780 人間クリック緑色の旗は、やることを進ん 712 00:29:19,780 --> 00:29:21,110 以下のこと。 713 00:29:21,110 --> 00:29:23,330 >> 今、彼らのクッキーは何をすべきかを進みましたか? 714 00:29:23,330 --> 00:29:25,810 私は本当にまだこれをどのように解釈するかわからないが、 715 00:29:25,810 --> 00:29:29,220 クッキーは明らかにゼロにその溝を設定し、それは待っていた 716 00:29:29,220 --> 00:29:31,740 3秒で、それはその後、1にそのグループを変更 717 00:29:31,740 --> 00:29:33,590 秒待って、それが変更されたその 718 00:29:33,590 --> 00:29:35,100 1に戻って溝。 719 00:29:35,100 --> 00:29:37,373 そして、これは実際にバグのビットのように見えますが、すべきではありません 720 00:29:37,373 --> 00:29:39,440 それがない限り、何度も何度もその溝を変更する必要が 721 00:29:39,440 --> 00:29:43,380 他の場所に変更しましたが、この一連の手順は何ですさ 722 00:29:43,380 --> 00:29:46,800 この特定のCookieの挙動を口述。 723 00:29:46,800 --> 00:29:49,180 それでは、実際に、左へスクロールして、何かを見ないようにしましょう 724 00:29:49,180 --> 00:29:50,430 それほど複雑ではまだありません。 725 00:29:50,430 --> 00:29:52,260 私が先に行くと、ファイル、新規に行こう、 726 00:29:52,260 --> 00:29:53,560 と白紙の状態を取得します。 727 00:29:53,560 --> 00:29:56,590 >> だから今、私は確かに空のスクリプトエリア、空のステージを持っている 728 00:29:56,590 --> 00:29:59,380 私たちのデフォルトスプライトスクラッチと、左上にある 729 00:29:59,380 --> 00:30:01,670 私の画面上で、私は彼らのすべてのパレットを持っていない 730 00:30:01,670 --> 00:30:03,400 利用可能なパズルのピース。 731 00:30:03,400 --> 00:30:06,300 そして、我々はこれらの事のほとんどは、多く通ることはありません 732 00:30:06,300 --> 00:30:09,470 なぜなら今日、再び、ほとんどのは自明ですが、我々は意志 733 00:30:09,470 --> 00:30:12,370 それらを分類し、類似点を指摘しよう 734 00:30:12,370 --> 00:30:15,380 私たちは飛び込みましょうこれらの将来の言語である。 735 00:30:15,380 --> 00:30:19,180 そして、ここでトップの左で、グリーンフラッグがクリックしたときに最初のものです 736 00:30:19,180 --> 00:30:22,170 ので、私は少しズームアウトし、ここにこれをドラッグしてみましょう。 737 00:30:22,170 --> 00:30:25,780 私は緑色の旗をクリックすると、何も実際に起こりませんので、 738 00:30:25,780 --> 00:30:29,360 私はする、いわば任意のロジック、任意の文を添付していない 739 00:30:29,360 --> 00:30:31,040 グリーンフラッグというので、私は、最大手放す 740 00:30:31,040 --> 00:30:32,500 こっちのカテゴリ。 741 00:30:32,500 --> 00:30:34,840 私は現在、制御カテゴリにいるよ。 742 00:30:34,840 --> 00:30:37,630 私の代わりにルックスカテゴリにダウンするつもりだ、と 743 00:30:37,630 --> 00:30:39,970 物事の全体の束が言うには、言うことをここにあり 744 00:30:39,970 --> 00:30:43,110 思うに、色を変更したり、衣装を切り替えます。 745 00:30:43,110 --> 00:30:44,860 >> だから衣装と愚かなことを行うことができますし、 746 00:30:44,860 --> 00:30:45,870 音など。 747 00:30:45,870 --> 00:30:49,970 私が先に行くと言うだけ言ってみよう、と私はドラッグとして今気付く 748 00:30:49,970 --> 00:30:52,940 そしてこのパズルのピースを落とし、それがラッチするために起こっている 749 00:30:52,940 --> 00:30:55,010 対応した形状に。 750 00:30:55,010 --> 00:30:58,020 だから私は先に行くと、私のマウスを放したとき、彼らはロック 751 00:30:58,020 --> 00:31:01,770 一緒にしましたが、今はこっちに行くと緑の旗をクリックすると、 752 00:31:01,770 --> 00:31:05,910 それは内側にあるものだから猫が実際に挨拶しない 753 00:31:05,910 --> 00:31:06,980 この白いボックスの。 754 00:31:06,980 --> 00:31:08,900 我々はすぐにこの白いボックスはと呼ばれるものであることがわかります 755 00:31:08,900 --> 00:31:10,250 引数、またはパラメータ。 756 00:31:10,250 --> 00:31:12,560 それは、この場合には、の動作を変更する方法です 757 00:31:12,560 --> 00:31:15,070 パズルのピースが、私は私が言ったことを正確に表現したい場合にはどう 758 00:31:15,070 --> 00:31:18,610 前に、挨拶、世界、私は今ここで振り返って行くことができ、 759 00:31:18,610 --> 00:31:21,990 [再生]をクリックして、 "こんにちは、世界"と言われるものです。 760 00:31:21,990 --> 00:31:24,340 >> だから我々は文字通り今プログラミングしている。 761 00:31:24,340 --> 00:31:27,540 それは、プログラムのすべてが魅力的ではないが、少なくとも 762 00:31:27,540 --> 00:31:30,140 それはで、見た目よりもう少し説得力のある何かである 763 00:31:30,140 --> 00:31:31,300 このような一見、。 764 00:31:31,300 --> 00:31:34,190 そして、我々は非常に迅速にすべての、より表現力を得ることができます 765 00:31:34,190 --> 00:31:36,600 スクラッチでは、他の言語のように、すべての存在だから 766 00:31:36,600 --> 00:31:40,010 文の種類だけではなく、言うか、何かを印字しますが、 767 00:31:40,010 --> 00:31:42,650 先ほど見たようにあなたが待っているようなことを行うことができ 768 00:31:42,650 --> 00:31:44,240 クッキーは、秒数の一部。 769 00:31:44,240 --> 00:31:46,440 あなただけのスクラッチの環境でサウンドを再生することができます 770 00:31:46,440 --> 00:31:49,050 あなたは、通常のコンピュータのプログラム再生音にすることができますように。 771 00:31:49,050 --> 00:31:52,440 あなたは、ブール式と呼ばれるものを確認することができます。 772 00:31:52,440 --> 00:31:55,630 だから今、私たちのツールキットにいくつかの用語を追加することから始めましょう 773 00:31:55,630 --> 00:31:58,840 実際にヨセフと私がしたことを例に関連していること 774 00:31:58,840 --> 00:32:00,080 ここで靴下を持つ。 775 00:32:00,080 --> 00:32:03,040 だから文はただの事実に関する記述である。 776 00:32:03,040 --> 00:32:04,160 これを行う。 777 00:32:04,160 --> 00:32:07,370 スプライトのディレクティブ、あるいは私人間、何かをする。 778 00:32:07,370 --> 00:32:10,420 ブール式は値を持っているものであり、 779 00:32:10,420 --> 00:32:14,580 いわゆる真理値は0か1の値は、falseまたは 780 00:32:14,580 --> 00:32:17,890 trueの場合は、オンまたはオフしないか、はい。ん 781 00:32:17,890 --> 00:32:19,730 本当にあなたはこのことにどのように考えるかは重要で、そうではありません 782 00:32:19,730 --> 00:32:20,700 バイナリ状態。 783 00:32:20,700 --> 00:32:22,610 ネイトは水曜日のビデオで説明したように、2 784 00:32:22,610 --> 00:32:23,570 別物。 785 00:32:23,570 --> 00:32:25,740 >> だからスクラッチでは、ブール式が見えるために起こる 786 00:32:25,740 --> 00:32:28,910 ここで、これらの青のオブジェクトと同じように、この場合、質問 787 00:32:28,910 --> 00:32:30,960 マークは、あなたが質問をしていることを意味します。 788 00:32:30,960 --> 00:32:34,250 猫、またはスプライトは、マウスポインタを触れていませんか? 789 00:32:34,250 --> 00:32:36,580 ですから、これが起こっているスクラッチ·ブロックの一例に過ぎません 790 00:32:36,580 --> 00:32:39,950 私たちは、yesまたはno確認しないようにするために、マウスに触れている 791 00:32:39,950 --> 00:32:40,790 画面上にスプライト? 792 00:32:40,790 --> 00:32:42,840 あなたが実際に物事を行いたい場合、これは便利です 793 00:32:42,840 --> 00:32:43,820 マウスで。 794 00:32:43,820 --> 00:32:46,470 ブール式に加えて、我々は物事を持っている 795 00:32:46,470 --> 00:32:49,110 マウスが押されているようなので、その種類のを検出することができます 796 00:32:49,110 --> 00:32:50,200 同様の質問です。 797 00:32:50,200 --> 00:32:52,590 あなたが実際にしたい、とあったら、我々は数学を行うことができます 798 00:32:52,590 --> 00:32:55,170 のちょうど純粋よりも、このため実際にはもっと魅力的な用途で使用 799 00:32:55,170 --> 00:32:56,400 我々がわかるように算術、。 800 00:32:56,400 --> 00:32:59,690 擬似ランダム性とあなたのプログラムを作ると思うように見える 801 00:32:59,690 --> 00:33:03,490 または、いくつかの一見ランダムな値に基づいて異なる動作を 802 00:33:03,490 --> 00:33:06,610 それから私達は好きで、ブール式のようなものを持っている。 803 00:33:06,610 --> 00:33:08,830 あなたが実際には2つの値を確認したいのであれば、我々は後で見ることになります 804 00:33:08,830 --> 00:33:11,110 これがあれば、我々は実際にテストできるスクラッチ 805 00:33:11,110 --> 00:33:13,190 本当、これは本当です。 806 00:33:13,190 --> 00:33:15,300 例えば、私の靴下の場合には、私がでてきた可能性が 807 00:33:15,300 --> 00:33:19,045 最後の最後は左靴下がオンになっている場合の質問をし、右の靴下 808 00:33:19,045 --> 00:33:20,610 で、終了しています。 809 00:33:20,610 --> 00:33:22,710 あなたはすべての日のために終わったので、それは次のようになります。 810 00:33:22,710 --> 00:33:24,300 そのための機会。 811 00:33:24,300 --> 00:33:27,740 >> それでは、先に行くと一緒にこれらのいくつかをつなぎに試してみましょう 812 00:33:27,740 --> 00:33:31,570 そして、より多くの例のカップルに入る 813 00:33:31,570 --> 00:33:32,610 これより説得力のある。 814 00:33:32,610 --> 00:33:35,770 だから私はここで先に行くと、例のいくつかを開いてみましょう 815 00:33:35,770 --> 00:33:38,350 それはいつもと同様のコースのウェブサイト上になり、 816 00:33:38,350 --> 00:33:39,870 hello2を開く。 817 00:33:39,870 --> 00:33:42,910 だからここhello2で、我々はいくつかをやっているプログラムを持っている 818 00:33:42,910 --> 00:33:46,290 物事は、それはのように効果的に我​​々は可能性があるのでそれをやっていない。 819 00:33:46,290 --> 00:33:48,900 だからここには、1秒間の "Hello、World"と言い、その後待機 820 00:33:48,900 --> 00:33:49,450 秒間。 821 00:33:49,450 --> 00:33:51,720 してから再度実行し、終了後に再びそれを行います。 822 00:33:51,720 --> 00:33:55,530 私は緑色の旗をクリックしそうだとすれば、スクラッチの "Hello、worldと言う。 823 00:33:55,530 --> 00:33:57,160 こんにちは、世界。 824 00:33:57,160 --> 00:34:00,080 こんにちは、世界。 "そして、これは、今、明らかな候補である 825 00:34:00,080 --> 00:34:00,860 改善。 826 00:34:00,860 --> 00:34:03,070 >> 我々は、うまくいけば、わずかな改善は何ができるの 827 00:34:03,070 --> 00:34:07,610 スクラッチでこの概念がサポートされている場合はすぐに作る? 828 00:34:07,610 --> 00:34:08,310 ループのいくつかの種類。 829 00:34:08,310 --> 00:34:10,960 繰り返しのいくつかの種類が、今では、いいだろう、そうさせて頂いて 830 00:34:10,960 --> 00:34:11,920 実際にそれを試してみてください。 831 00:34:11,920 --> 00:34:13,870 私が実際に行って、これを移動しましょう​​。 832 00:34:13,870 --> 00:34:16,449 に追加できるように通知が容易などのブロックを切り離すことができます 833 00:34:16,449 --> 00:34:17,420 それらを添付してください。 834 00:34:17,420 --> 00:34:20,730 私はコントロール下に行こう、、確かにここで下にスクロールして、 835 00:34:20,730 --> 00:34:24,000 このパズルのピースがここにあり、リピート、そしていつまでも 836 00:34:24,000 --> 00:34:24,870 フォーエバー場合。 837 00:34:24,870 --> 00:34:28,500 だから、ループ構造を表現するいくつかの方法があり 838 00:34:28,500 --> 00:34:29,340 スクラッチインチ 839 00:34:29,340 --> 00:34:31,730 私はおそらくここに欲しいものは永遠に私だけの理由ではありません 840 00:34:31,730 --> 00:34:34,639 これが3回発生したいのですが、おそらく繰り返します。 841 00:34:34,639 --> 00:34:38,449 だからここにわたって繰り返し、それをドラッグ&ドロップし、私はドラッグできるようにし、 842 00:34:38,449 --> 00:34:42,530 今では代わりに "Hello、World"という3つの別々の時間を言う、 843 00:34:42,530 --> 00:34:44,230 私はここでこのパズルのピースをドラッグしてみましょう。 844 00:34:44,230 --> 00:34:46,610 そして、それが合うように思われていなくても、プログラムがスマートです 845 00:34:46,610 --> 00:34:48,920 それを埋めるために成長するだろう実現するのに十分なので、それはだ 846 00:34:48,920 --> 00:34:51,270 形状そのことではなく絶対的な大きさ。 847 00:34:51,270 --> 00:34:54,030 私は3つに反復を変更し、今では私を行かせてみよう 848 00:34:54,030 --> 00:34:56,560 前方と同様に、そこに1秒を待ってドラッグします。 849 00:34:56,560 --> 00:34:59,220 それは同様にスナップするようになるだろう、と今私はドラッグするつもりだ 850 00:34:59,220 --> 00:35:01,370 ここで、ちょうど私ので、それらを捨てる以上こいつら 851 00:35:01,370 --> 00:35:02,710 もはやそれを必要としない。 852 00:35:02,710 --> 00:35:05,920 私はズームアウトしてすぐに緑の旗をクリックしてみましょう、と我々は持っている 853 00:35:05,920 --> 00:35:09,600 私は前に、より良い予測と同じプログラムが、 854 00:35:09,600 --> 00:35:12,200 どのように悪いこのプログラムは、あなたが想像できるので、設計 855 00:35:12,200 --> 00:35:14,410 あなたがしなければならなかった場合、確かに審美的に、なるだろう 856 00:35:14,410 --> 00:35:16,640 コピーと貼り付け、コピーと貼り付けを開始するか、 857 00:35:16,640 --> 00:35:20,020 何度も何度も同じくそ物事をドラッグ&ドロップする。 858 00:35:20,020 --> 00:35:22,260 >> さて、単純に印刷すると、画面上のものを言って 859 00:35:22,260 --> 00:35:25,350 エキサイティング、それでは開いてみましょうという画面、本当にすべてではありません 860 00:35:25,350 --> 00:35:26,580 ここで第三分散。 861 00:35:26,580 --> 00:35:29,810 お会いしましょう​​そして今、これはすぐにイライラします - 862 00:35:29,810 --> 00:35:30,850 [MEOW] 863 00:35:30,850 --> 00:35:31,940 DAVIDマラン: - それはまたかわいいのようなものだ。 864 00:35:31,940 --> 00:35:35,244 [MEOW] 865 00:35:35,244 --> 00:35:37,460 DAVIDマラン:わかりましたので、より良い、と我々は確かにそれを使用することができます 866 00:35:37,460 --> 00:35:41,060 ループにこれをチャンクという同じ遷移 867 00:35:41,060 --> 00:35:43,520 構造が、のはまだそれをより面白くすることができます。 868 00:35:43,520 --> 00:35:47,480 >> ここで私は、私が先に行くと、ここで第四分散を開けてみよう 869 00:35:47,480 --> 00:35:50,020 物事はさらにもう一歩踏み込む。 870 00:35:50,020 --> 00:35:54,450 だから、これが最初である愚かなのに、これによる 871 00:35:54,450 --> 00:35:58,530 一見、何このプログラムは何をするつもりですか? 872 00:35:58,530 --> 00:35:59,790 それは、かつてニャーになるだろう。 873 00:35:59,790 --> 00:36:00,160 なぜですか? 874 00:36:00,160 --> 00:36:03,340 まあ、1は、私の知る限り、2よりも常に小さい。 875 00:36:03,340 --> 00:36:04,890 ランダム性の概念はここにありません。 876 00:36:04,890 --> 00:36:07,240 私は文字通りハードコードされた1と2をしましたが、これはある 877 00:36:07,240 --> 00:36:10,370 実際にブール式を使用しての今の例。 878 00:36:10,370 --> 00:36:13,650 ヨセフはインデントなら、彼の擬似コードで行ったように非常に気に入って 879 00:36:13,650 --> 00:36:17,170 ここで我々が​​持っている、マッチング靴下は、次の操作を行い見つける 880 00:36:17,170 --> 00:36:19,750 1つが2未満である場合、式 - 881 00:36:19,750 --> 00:36:21,820 実際に私たちも、インデントの少しを持っている 882 00:36:21,820 --> 00:36:24,480 紫は若干右にインデントされている場所 - 883 00:36:24,480 --> 00:36:26,600 後は、Soundニャーを再生しようとしている。 884 00:36:26,600 --> 00:36:30,060 さて、この場合、1つは、常に2未満であること、このように 885 00:36:30,060 --> 00:36:31,970 条件の廃棄物の一種である。 886 00:36:31,970 --> 00:36:34,890 しかし、我々は他のものを差し込むために、我々がわかるように、できるようになります 887 00:36:34,890 --> 00:36:37,420 これらのプレースホルダ1と2は今どこにいる。 888 00:36:37,420 --> 00:36:41,340 それでは、今、これらのいくつかの例5に進みましょう 889 00:36:41,340 --> 00:36:45,850 helloおよびこのプログラムが何をしようとしているのかを見てみ。 890 00:36:45,850 --> 00:36:48,710 >> だから今は、英語の文の中に、これがどのように 891 00:36:48,710 --> 00:36:51,460 プログラムが振る舞う? 892 00:36:51,460 --> 00:36:52,950 読者:半分の時間鳴き声。 893 00:36:52,950 --> 00:36:55,380 DAVIDマラン:時間のニャーの半分が、これは一つの方法です 894 00:36:55,380 --> 00:36:56,700 とてもシンプルなアイディアを伝える。 895 00:36:56,700 --> 00:36:59,400 我々は、ここでいくつかの不等式を用いてすることが起こるにもかかわらず、 896 00:36:59,400 --> 00:37:01,860 いくつかの数字で、これは本当にちょうどprogrammaticalです 897 00:37:01,860 --> 00:37:09,490 コインが頭をすれば、当然、行く言う方法、正確な方法、 898 00:37:09,490 --> 00:37:10,270 前方とニャー。 899 00:37:10,270 --> 00:37:13,540 あるいは逆に、コインは猫の鳴き声、尾を​​しない起動した場合。 900 00:37:13,540 --> 00:37:15,110 この場合、我々はそれをどのように表現するのですか? 901 00:37:15,110 --> 00:37:17,950 私たちは、1から10までの乱数を選択し、その場合によ 902 00:37:17,950 --> 00:37:21,110 数が6未満の場合、先に行くとニャー。 903 00:37:21,110 --> 00:37:22,260 そして、これはここでどのように手に入れたの? 904 00:37:22,260 --> 00:37:24,620 さて、もう一度、ちょうどドラッグアンドドロップ気付くと 905 00:37:24,620 --> 00:37:26,190 物事が所定の位置にラッチします。 906 00:37:26,190 --> 00:37:28,020 >> だから今、この偶発性が機能するかどうか見てみましょう。 907 00:37:28,020 --> 00:37:29,845 私が先に行くと、緑の旗をクリックしてみましょう。 908 00:37:29,845 --> 00:37:31,120 [MEOW] 909 00:37:31,120 --> 00:37:32,000 DAVIDマラン:わかりました。 910 00:37:32,000 --> 00:37:33,430 [MEOW] 911 00:37:33,430 --> 00:37:35,260 DAVIDマラン:わかりました。 912 00:37:35,260 --> 00:37:38,510 さて、良いので、我々は効果的に頭、頭部、尾部を得た。 913 00:37:38,510 --> 00:37:39,295 テイルス。 914 00:37:39,295 --> 00:37:39,590 [MEOW] 915 00:37:39,590 --> 00:37:41,829 DAVIDマラン:ヘッド。 916 00:37:41,829 --> 00:37:43,220 [MEOW] 917 00:37:43,220 --> 00:37:44,040 DAVIDマラン:優秀。 918 00:37:44,040 --> 00:37:46,220 ただ統計的にあなたが悪いのを得るとき、それは常に厄介です 919 00:37:46,220 --> 00:37:48,510 実行すると、それはすべてのヘッドだし、プログラムが実際にはありません 920 00:37:48,510 --> 00:37:49,230 あなたが期待したとおりに動作します。 921 00:37:49,230 --> 00:37:51,210 しかし、この時間は、それが働いた、そして我々がやった場合、我々は持っているように見える 922 00:37:51,210 --> 00:37:53,830 回のこの無限の数、50%の確率。 923 00:37:53,830 --> 00:37:56,950 ここでもう一度、すべてが面白い、ちょうど猫を作っていない 924 00:37:56,950 --> 00:37:59,840 ニャーので、我々は、このビットをさらに進めることができない場合見てみましょう 925 00:37:59,840 --> 00:38:01,820 ここではバージョン6インチ 926 00:38:01,820 --> 00:38:05,620 だから今、私たちは本当に迷惑なバージョンを持っている - 927 00:38:05,620 --> 00:38:08,215 [数秒ごとに鳴き声] 928 00:38:08,215 --> 00:38:10,640 として、これは知られているものであり、一般的な、 - :デヴィッド·マラン 929 00:38:10,640 --> 00:38:11,670 無限ループ。 930 00:38:11,670 --> 00:38:14,190 >> したがって、このケースで無限ループが悪い感じ。 931 00:38:14,190 --> 00:38:16,970 これは間違いなく悪いが、まだ無限鳴らし始めるために起こっている 932 00:38:16,970 --> 00:38:18,740 ループは常に悪いものではありません。 933 00:38:18,740 --> 00:38:20,910 あなたがほしいのコンピュータプログラムに文脈を考えることができます 934 00:38:20,910 --> 00:38:22,910 実際に無限ループをしたいですか? 935 00:38:22,910 --> 00:38:23,691 うん? 936 00:38:23,691 --> 00:38:26,520 読者:あなたが状態をチェックしたいときに。 937 00:38:26,520 --> 00:38:28,240 DAVIDマラン:さて、あなたは、条件をチェックし続けたいとき? 938 00:38:28,240 --> 00:38:29,190 例えば? 939 00:38:29,190 --> 00:38:30,440 読者:[聞こえない] 940 00:38:36,060 --> 00:38:38,170 DAVIDマラン:じゃあ、良い、あなたには、いくつかのプログラムを持っていたので、もし、いくつかの 941 00:38:38,170 --> 00:38:40,440 あなたは常にしたいホームオートメーションの事、一種の 942 00:38:40,440 --> 00:38:41,980 モニタが何かのケースです。 943 00:38:41,980 --> 00:38:42,850 ライトが点灯しているかどうか 944 00:38:42,850 --> 00:38:45,020 多分あなたはタイマーを持っているので、上のライトがあり、 945 00:38:45,020 --> 00:38:47,360 あなたがそれらをオフに行きたい、あなたは何かをする必要があるかもしれません 946 00:38:47,360 --> 00:38:48,290 何度も何度も。 947 00:38:48,290 --> 00:38:50,540 そして、実際には、タイマー、持っている人のいずれかで話す 948 00:38:50,540 --> 00:38:53,100 のコンピュータやデジタル時計、上のクロック 949 00:38:53,100 --> 00:38:54,210 無限ループ。 950 00:38:54,210 --> 00:38:56,980 それは常にだから、それは時間を更新し続け 951 00:38:56,980 --> 00:38:59,750 時間が変更されたしてチェックインとチェック、 952 00:38:59,750 --> 00:39:01,000 そうだとすれば、ああ、私の神。 953 00:39:03,670 --> 00:39:04,740 クロックがついに変わった。 954 00:39:04,740 --> 00:39:07,020 それはあなたにその値を表示する必要があります。 955 00:39:07,020 --> 00:39:10,880 時間無限ループのほとんどは間違いになるように、一方、 956 00:39:10,880 --> 00:39:13,950 または貧弱な設計上の決定は、少なくとも、時には彼らはやる 957 00:39:13,950 --> 00:39:14,785 それらの値を持っています。 958 00:39:14,785 --> 00:39:18,170 >> まあ、hello7にここでさらに前進してみましょう。 959 00:39:18,170 --> 00:39:20,410 だから今のプログラムはもう少しインタラクティブ得るでしょう。 960 00:39:20,410 --> 00:39:23,120 再び私はここにズームしましょう​​、と、これは素晴らしいの内容です 961 00:39:23,120 --> 00:39:23,640 スクラッチについて。 962 00:39:23,640 --> 00:39:26,760 そして、我々は明確な、スクラッチ、ちょうど今日とになるようにそれを使用します 963 00:39:26,760 --> 00:39:27,780 来週の問題セット。 964 00:39:27,780 --> 00:39:31,920 しかし、月曜日に、私たちは、それがない、ここでは、このプログラムではCに飛び込む 965 00:39:31,920 --> 00:39:33,190 永遠に、次の。 966 00:39:33,190 --> 00:39:35,890 今では、だ - マウスポインタをタッチする 967 00:39:35,890 --> 00:39:36,420 ここで文脈? 968 00:39:36,420 --> 00:39:39,670 まあ、一番下にここに降りて選択していることに注意してください 969 00:39:39,670 --> 00:39:43,060 右の猫は、スプライト1つなので、これらのスクリプトは、この 970 00:39:43,060 --> 00:39:45,720 プログラムは、具体的には、彼にも適用されます。 971 00:39:45,720 --> 00:39:48,950 その猫がマウスポインタに触れているのであれば、それは起こっている 972 00:39:48,950 --> 00:39:51,350 これを軽視して2秒間待機するように、と 973 00:39:51,350 --> 00:39:53,030 その広告nauseumを繰り返します。 974 00:39:53,030 --> 00:39:55,360 >> それでは、先に行くと遊びを打ってみましょう。 975 00:39:55,360 --> 00:39:57,580 何も起こりませんが、私はペットにしたい場合 976 00:39:57,580 --> 00:39:59,310 猫は今、私は単純にすることができます。 977 00:39:59,310 --> 00:40:01,130 [MEOW] 978 00:40:01,130 --> 00:40:02,244 DAVIDマラン:愛らしい。 979 00:40:02,244 --> 00:40:05,956 [MEOW] 980 00:40:05,956 --> 00:40:08,750 DAVIDマラン:じゃあ、少なく迷惑ですが、また、退屈な取得 981 00:40:08,750 --> 00:40:11,480 それでは、上の移動、私たちが注入できない場合を見てみましょう 982 00:40:11,480 --> 00:40:12,460 もう少しロジック。 983 00:40:12,460 --> 00:40:14,300 すなわち、例えば7であった。 984 00:40:14,300 --> 00:40:16,090 >> ここでは例8において、我々はするつもりだ 985 00:40:16,090 --> 00:40:18,670 ELSE条件をご紹介します。 986 00:40:18,670 --> 00:40:21,440 そんなにあなたが行くことができる道路のリテラルフォーク、のような 987 00:40:21,440 --> 00:40:24,260 左または右に行くことができ、プログラミングの条件 988 00:40:24,260 --> 00:40:28,120 スクラッチのような言語、または我々は、Cが表示されますように、あなたができるようにすることができます 989 00:40:28,120 --> 00:40:32,230 IF ELSE構築を介して一方向または別のに行く。 990 00:40:32,230 --> 00:40:35,160 だから、文字通り、マウスポインタを触れる場合は、この 991 00:40:35,160 --> 00:40:38,680 そうでなければ、この他のを再生するために起こっている、いくつかの音を再生します 992 00:40:38,680 --> 00:40:39,800 音、猫の鳴き声。 993 00:40:39,800 --> 00:40:42,510 あなたはこれらの音の名前から推測できる場合、今、次のことができます 994 00:40:42,510 --> 00:40:45,310 おそらくこのプログラムはひねり出すためのものだかを推測 995 00:40:45,310 --> 00:40:46,250 のアイデア。 996 00:40:46,250 --> 00:40:48,742 この猫は喜んでニャーニャーされています。 997 00:40:48,742 --> 00:40:49,230 [MEOW] 998 00:40:49,230 --> 00:40:51,410 DAVIDマラン:幸いなことに、しませんが、 999 00:40:51,410 --> 00:40:52,926 なかなか触れることが好きです。 1000 00:40:52,926 --> 00:40:54,550 [うなり] 1001 00:40:54,550 --> 00:40:57,500 デビッド·マラン:だから、今、私たちはあなたに叫ぶでしょう猫を飼っている。 1002 00:40:57,500 --> 00:41:00,570 >> すべての権利は​​、まあ、ここで猫と1最後の例、および 1003 00:41:00,570 --> 00:41:02,920 ここでこれのオープンバージョン9みましょう。 1004 00:41:02,920 --> 00:41:06,190 だから今、私たちは、私ができたことを次の最も迷惑な音を持っている 1005 00:41:06,190 --> 00:41:11,630 見つけるには、我々が起こっているのか、ここセイウチアシカを持つように 1006 00:41:11,630 --> 00:41:13,222 次の手順を実行します。 1007 00:41:13,222 --> 00:41:20,870 [シールの樹皮] 1008 00:41:20,870 --> 00:41:23,310 DAVIDマラン:あなたはどのように把握するまでわかりましたので、これは上に行くでしょう 1009 00:41:23,310 --> 00:41:24,640 このプログラムは動作します。 1010 00:41:24,640 --> 00:41:28,560 今回ので、この動物は、2つのスクリプトを持っており、何 1011 00:41:28,560 --> 00:41:31,050 ここで興味深いのは、これらのスクリプトを実行しようとしていないということです 1012 00:41:31,050 --> 00:41:32,260 並列インチ 1013 00:41:32,260 --> 00:41:35,340 そこで、彼らは両方が1つの緑色の旗がクリックで始まるため、 1014 00:41:35,340 --> 00:41:38,080 それはこのように行くようなものだし、両方のプログラムがそれを実行して起動する 1015 00:41:38,080 --> 00:41:41,370 彼らは永遠にループする回も。 1016 00:41:41,370 --> 00:41:44,420 だからトップのスクリプトでは、私はいくつかのロジックを持っています。 1017 00:41:44,420 --> 00:41:49,275 それはそこにどのような機能を提供していますか? 1018 00:41:49,275 --> 00:41:50,740 [シールの樹皮] 1019 00:41:50,740 --> 00:41:51,670 読者:[聞こえない] 1020 00:41:51,670 --> 00:41:53,295 DAVIDマラン:それは何ですか? 1021 00:41:53,295 --> 00:41:53,760 [シールの樹皮] 1022 00:41:53,760 --> 00:41:55,852 読者:ゼロにミュートした場合、再生し続けるために起こっている 1023 00:41:55,852 --> 00:41:58,410 音。 [シールの樹皮] 1024 00:41:58,410 --> 00:41:58,940 DAVIDマラン:じゃあ、良い。 1025 00:41:58,940 --> 00:42:01,960 ミュートされたので、もしこれが何であれ、このオレンジ色のものはゼロであり、 1026 00:42:01,960 --> 00:42:05,370 THENアシカの音を再生すると思う "ああ、 1027 00:42:05,370 --> 00:42:06,770 こんにちは、 "2秒間押し続けます。 1028 00:42:06,770 --> 00:42:09,380 今、私はミュートが何であるかわからないが、ゼロでは想起させる 1029 00:42:09,380 --> 00:42:11,230 虚偽またはオフのアイデア。 1030 00:42:11,230 --> 00:42:14,490 ミュートがfalseであれば、そうでない場合はミュートになって、 1031 00:42:14,490 --> 00:42:15,660 音を再生し続ける。 1032 00:42:15,660 --> 00:42:17,350 すべての権利は​​、よく、どのように我々はこの事を無効にするには? 1033 00:42:17,350 --> 00:42:19,310 >> まあ、そこにダウン番目のスクリプトを見てみましょう。 1034 00:42:19,310 --> 00:42:22,130 二つ目のスクリプトはゼロにミュート設定と言います。 1035 00:42:22,130 --> 00:42:25,180 それはまた、オレンジ色なので、何をスクラッチしていることはそれは色であることに気づく 1036 00:42:25,180 --> 00:42:27,400 同じ色のブロックそれが並べ替える場合 1037 00:42:27,400 --> 00:42:28,850 論理的に関連の。 1038 00:42:28,850 --> 00:42:32,850 ミュートアップトップはオレンジ色だったので、同じように、ミュートされてダウンしてここに 1039 00:42:32,850 --> 00:42:34,060 オレンジ色のブロックで言及。 1040 00:42:34,060 --> 00:42:36,170 しかし、これは、これだけのように変数の代入である 1041 00:42:36,170 --> 00:42:39,170 代数は、あなたのプログラミングでは、xとyとzを持っている 1042 00:42:39,170 --> 00:42:41,440 変数が、それらは一般的にしている - 1043 00:42:41,440 --> 00:42:42,580 レッツ一時停止してから、図の方法 1044 00:42:42,580 --> 00:42:44,280 この吠えを停止します。 1045 00:42:44,280 --> 00:42:45,480 どのように私はこれを行うのですか? 1046 00:42:45,480 --> 00:42:46,480 [シールの樹皮] 1047 00:42:46,480 --> 00:42:47,920 DAVIDマラン:わかりました。 1048 00:42:47,920 --> 00:42:49,490 それが停止しました。オーケー。 1049 00:42:49,490 --> 00:42:52,230 >> あなたは、変数x、y、およびzを持っていますが、これだけでは代数のように 1050 00:42:52,230 --> 00:42:55,260 プログラミングでは、x、y、およびzのような変数を持つことは一般的である 1051 00:42:55,260 --> 00:42:57,330 彼らはすべての表現力ではないだからひんしゅくを買う。 1052 00:42:57,330 --> 00:43:00,070 彼らは全く意味を持たないので、ほとんどの 1053 00:43:00,070 --> 00:43:02,110 プログラミング言語は、変数がいっぱい持つことができます 1054 00:43:02,110 --> 00:43:05,270 と言ってもミュートのような本格的な名前や単語やフレーズ、 1055 00:43:05,270 --> 00:43:06,030 何をする彼ら。 1056 00:43:06,030 --> 00:43:09,380 だから、この第二のスクリプトはまた、永遠に聴いていました、そして、それは言った 1057 00:43:09,380 --> 00:43:12,100 キー、キーボードのキーのスペースがある場合 1058 00:43:12,100 --> 00:43:13,370 疑問符は、押された。 1059 00:43:13,370 --> 00:43:16,300 それでは、ブール式を条件付きではあり 1060 00:43:16,300 --> 00:43:19,010 正直どちらか偽質問に答えるつもり、 1061 00:43:19,010 --> 00:43:22,880 それから私はスペースキーが押された場合は、その中に持っている 1062 00:43:22,880 --> 00:43:28,020 ミュートがゼロの場合、ゼロにミュート設定、ELSE、1にミュート設定してください。 1063 00:43:28,020 --> 00:43:30,510 私がきたかので、この他の道路の分岐点、および通知 1064 00:43:30,510 --> 00:43:33,500 二つの条件ネストされたIFは、チェックの方法はされている 1065 00:43:33,500 --> 00:43:36,610 もしそうなら、私はこのいずれかに行きたいので、スペースバーを押す 1066 00:43:36,610 --> 00:43:38,000 方法、またはその方法。 1067 00:43:38,000 --> 00:43:40,210 そして、どのように私はミュートの値を反転させるのですか? 1068 00:43:40,210 --> 00:43:41,410 私はそれがゼロであることをチェックする必要がありますか? 1069 00:43:41,410 --> 00:43:45,890 もしそうなら、それを1にし、そうでなければゼロ、したがって切り替えるに作る 1070 00:43:45,890 --> 00:43:47,670 その二つの状態。 1071 00:43:47,670 --> 00:43:50,030 >> すべての権利は​​、私たちは、これらの基本のいくつかを持っている 1072 00:43:50,030 --> 00:43:50,540 コンストラクト。 1073 00:43:50,540 --> 00:43:52,810 我々はあまりにも、ブール式があり、実現は、これらは 1074 00:43:52,810 --> 00:43:54,050 すべてが不慣れではない。 1075 00:43:54,050 --> 00:43:56,730 実際には、ここでは、ハーバード大学のコースのCS50のクイックスクリーンショットです 1076 00:43:56,730 --> 00:43:59,740 ショッピングツール、およびチェックボックスがあり、そこに任意のウェブサイト 1077 00:43:59,740 --> 00:44:02,420 とドロップダウンは本当に、すべてのこの時間は、使用してきました 1078 00:44:02,420 --> 00:44:03,430 ブール式。 1079 00:44:03,430 --> 00:44:05,760 この場合、ここでは、あなたの隣にあるチェックボックスをクリックした場合 1080 00:44:05,760 --> 00:44:08,620 以上の4.5に等しい、またはそれに同じ次のコース 1081 00:44:08,620 --> 00:44:11,200 教員は、ブール式を指定しています。 1082 00:44:11,200 --> 00:44:14,780 私にその式が真となるコースを表示します。 1083 00:44:14,780 --> 00:44:17,080 または右に、私はコースと競合することはありません 1084 00:44:17,080 --> 00:44:20,440 チェックされていることならば、はい、あなたはチェックしたい、撮影 1085 00:44:20,440 --> 00:44:22,890 そのほかの条件は、あなたがそれを無視したい。 1086 00:44:22,890 --> 00:44:25,170 だからブール式は、すべての周りの一種であるが、時 1087 00:44:25,170 --> 00:44:28,080 場合我々は、条件が一致した場合かどうか、条件に入れて 1088 00:44:28,080 --> 00:44:30,480 よそ、または我々はさらに深くシミュレートすることができます 1089 00:44:30,480 --> 00:44:32,830 レベル、IF ELSE ELSE IF - 1090 00:44:32,830 --> 00:44:34,430 その結果は、三項状態のようなものだ。 1091 00:44:34,430 --> 00:44:36,920 あなたは、この方法またはこの方法またはこの道を行くことができます。 1092 00:44:36,920 --> 00:44:39,680 我々は、別の方向に行くことをネスティング物事を維持することができます。 1093 00:44:39,680 --> 00:44:41,800 >> だからスクラッチは永遠のように、これらのループを持っています。 1094 00:44:41,800 --> 00:44:44,750 これは、いくつかの、リピート10のように、これらの機能を備えています 1095 00:44:44,750 --> 00:44:46,260 有限回数。 1096 00:44:46,260 --> 00:44:49,040 我々は、したがって、この場合には、変数を設定するために、今の能力を持っている 1097 00:44:49,040 --> 00:44:51,810 私は、例えば、靴下と呼ばれる変数を宣言した。 1098 00:44:51,810 --> 00:44:54,340 私は0に初期化してきたが、それはまた別の方向だ 1099 00:44:54,340 --> 00:44:56,940 我々は、それによって多分ヨセフ、私と一緒にここに取り上げられたかもしれない 1100 00:44:56,940 --> 00:45:00,150 ちょうど私が持っているどのように多くの靴下を追跡して終了 1101 00:45:00,150 --> 00:45:03,490 その変数の値が2であるプログラム。 1102 00:45:03,490 --> 00:45:05,660 それは、その一般化の一種の別の方法であろう 1103 00:45:05,660 --> 00:45:08,820 問題は、何度も何度も何かをやって。 1104 00:45:08,820 --> 00:45:12,080 さて、先に進み、今ではカップルの新しいものを紹介しましょう​​。 1105 00:45:12,080 --> 00:45:14,100 事前のプログラミング経験のあるあなたのそれらができるようになるので 1106 00:45:14,100 --> 00:45:17,120 多くの言語は、配列、またはベクトルまたはを持っていることを知っている 1107 00:45:17,120 --> 00:45:19,970 リストには、確かに、傷はあまりにも、このような何かを持っています。 1108 00:45:19,970 --> 00:45:22,510 だから我々はここで次のレベルに物事を取ることができない場合は、見てみましょう。 1109 00:45:22,510 --> 00:45:24,920 私は能力が、今、これらのパズルのピースを持つにしている場合 1110 00:45:24,920 --> 00:45:29,080 変数に、単語や数字のように、何かを追加し、私がすることができます 1111 00:45:29,080 --> 00:45:30,550 物事の蓄積を開始。 1112 00:45:30,550 --> 00:45:33,630 そして、これは、ゲームのようなもののため、実際にはかなりaproposのです 1113 00:45:33,630 --> 00:45:35,810 あなたが歩き回っている一種のロールプレイング·ゲーム 1114 00:45:35,810 --> 00:45:38,600 いくつかの空想の世界では、物事を拾って、物事を収集 1115 00:45:38,600 --> 00:45:39,900 ポイントを獲得、等が挙げられる。 1116 00:45:39,900 --> 00:45:42,310 あなたは、在庫のいくつかの種類を追跡したいかもしれませんが、と 1117 00:45:42,310 --> 00:45:45,180 確かに、それはここで我々のかつての生徒の一人がやったことだと 1118 00:45:45,180 --> 00:45:47,750 Fruitcraft RPGと呼ばれるもの。 1119 00:45:47,750 --> 00:45:51,820 >> だから私は先に行くと、ここにこの事を開いてみましょう、とに 1120 00:45:51,820 --> 00:45:56,260 Fruitcraft、我々は、上部にあるこの世界を持っている。 1121 00:45:56,260 --> 00:45:58,820 だから私は先に行くと、緑の旗をクリックしてみましょう。 1122 00:45:58,820 --> 00:46:01,040 左上の通知には、棚卸資産のいくつかの種です。 1123 00:46:01,040 --> 00:46:04,110 我々は配列と呼んでいるもののようにスクラッチで実装されていること、または 1124 00:46:04,110 --> 00:46:06,890 リスト、そして、今、私たちはこの小さなアニメーションを持っています。 1125 00:46:06,890 --> 00:46:10,440 我々は、このクッキーのラブストーリーで、以前始めたので、同じように 1126 00:46:10,440 --> 00:46:13,320 それから私達は、今、私たちが持つことができる、猫やアシカに進出 1127 00:46:13,320 --> 00:46:15,100 さらにインタラクティブである事。 1128 00:46:15,100 --> 00:46:18,250 そして、この小さな青い男は、私が彼の周りに移動を開始することができます 1129 00:46:18,250 --> 00:46:19,500 ここで少し家。 1130 00:46:19,500 --> 00:46:22,570 彼がダウンしてここに出口を持っているようなので、それが見えますが、私が使用しているので、 1131 00:46:22,570 --> 00:46:25,260 矢印キーは、上、下、右を残しました。 1132 00:46:25,260 --> 00:46:28,370 そして今、私は外にいるので、私はここに何を持ってみましょう。 1133 00:46:28,370 --> 00:46:30,920 できるだけ早く私はタッチすると、確かにオレンジ色のように見え、 1134 00:46:30,920 --> 00:46:33,110 オレンジは、それは私のインベントリにそのまま流しされます。 1135 00:46:33,110 --> 00:46:35,640 私はチェリーにこっちに行けば、今私は何かを持っている 1136 00:46:35,640 --> 00:46:36,760 他の私の在庫インチ 1137 00:46:36,760 --> 00:46:39,100 そして、これはこれは、今のところ、全て素晴らしく、かわいいですが、どのように考える 1138 00:46:39,100 --> 00:46:39,840 実装されています。 1139 00:46:39,840 --> 00:46:42,490 まあ、我々はリストの概念を持っている、それは明らかだ 1140 00:46:42,490 --> 00:46:45,470 先ほど追加し、あなたがそれに追加して欲しいものを言うことはパズルのピース 1141 00:46:45,470 --> 00:46:46,950 オレンジ、チェリーを追加します。 1142 00:46:46,950 --> 00:46:48,540 さて、この小さな青い男は何をやっている? 1143 00:46:48,540 --> 00:46:49,810 まあ、彼はスプライトです。 1144 00:46:49,810 --> 00:46:52,190 そしておそらく、オレンジ、チェリー - 1145 00:46:52,190 --> 00:46:54,140 彼ら自身は、別のスプライトだった。 1146 00:46:54,140 --> 00:46:56,980 とブール式の条件、使用 1147 00:46:56,980 --> 00:47:00,530 学生は、おそらく青の男であれば表現することができました 1148 00:47:00,530 --> 00:47:04,590 触れるチェリーはそれから彼にワードチェリーを追加 1149 00:47:04,590 --> 00:47:07,890 在庫、およびその後も桜のスプライトを非表示にします。 1150 00:47:07,890 --> 00:47:10,600 フードの下だから、おそらくまだ桜がある 1151 00:47:10,600 --> 00:47:11,350 そこにスプライト。 1152 00:47:11,350 --> 00:47:14,160 我々だけで効果的に見えなくなるように指示してきました。 1153 00:47:14,160 --> 00:47:16,340 >> 私がこっちに歩き続けるさて、もし、我々はまた、これを行うことができます 1154 00:47:16,340 --> 00:47:19,150 私が行くとサインを読み取ることができます近物、。 1155 00:47:19,150 --> 00:47:23,170 青い男に触れ記号もしそうなら、私たちは、このセイブロックを持つことができます 1156 00:47:23,170 --> 00:47:26,455 猫は言葉で私たちに話を聞いたのと同じように、こんにちは、以前、 "手に入れた 1157 00:47:26,455 --> 00:47:26,880 いくつかの果物? 1158 00:47:26,880 --> 00:47:29,290 フルーツの場所に持ってきて。 "すべての権利なので、今、明らかに、 1159 00:47:29,290 --> 00:47:30,550 私は自分の方向性を持っています。 1160 00:47:30,550 --> 00:47:33,050 私は、果物の所にこっちに行く自分を並べることができます 1161 00:47:33,050 --> 00:47:33,740 ドア付き。 1162 00:47:33,740 --> 00:47:35,390 今、私はここにいるよ。 1163 00:47:35,390 --> 00:47:38,120 私はカウンターで男に上がることができます。 1164 00:47:38,120 --> 00:47:40,330 彼は私が彼に近いんだことを検出したので、それはする必要はありません 1165 00:47:40,330 --> 00:47:46,780 全く同じように触れて、私は試合に勝った。 1166 00:47:46,780 --> 00:47:49,890 だから我々はFruitcraft RPGを持っています。 1167 00:47:49,890 --> 00:47:52,200 >> だから我々はこれよりもさらに高度なことを行うことができます。 1168 00:47:52,200 --> 00:47:53,200 我々は音を追加することができます。 1169 00:47:53,200 --> 00:47:54,610 私たちは、擬似乱数を追加することができます。 1170 00:47:54,610 --> 00:47:56,260 私たちは、複雑さを追加することができます。 1171 00:47:56,260 --> 00:47:58,490 、私はここで先に行く、というよりこれを自分でやってみましょう 1172 00:47:58,490 --> 00:48:01,240 私はあなたに、より洗練された提出物のいずれかをお見せしましょう 1173 00:48:01,240 --> 00:48:06,640 我々は、ブレイクという特定の誰かから昨年ました。 1174 00:48:06,640 --> 00:48:08,910 我々は一つの上に現れる快適でボランティアを持つことができます 1175 00:48:08,910 --> 00:48:12,600 カメラとゲームをプレイするためにアップしている? 1176 00:48:12,600 --> 00:48:13,450 方法についてはすぐそこ? 1177 00:48:13,450 --> 00:48:15,380 アップで来る。 1178 00:48:15,380 --> 00:48:19,680 すべての権利なので、あなただけの無意識のうちに持っているゲーム 1179 00:48:19,680 --> 00:48:20,780 プレーすることを志願 - 1180 00:48:20,780 --> 00:48:25,910 [拍手] 1181 00:48:25,910 --> 00:48:28,610 デビッド·マランは: - と呼ばれる往年からのものです 1182 00:48:28,610 --> 00:48:30,100 "フロッガー"。あなたの名前は何ですか? 1183 00:48:30,100 --> 00:48:30,730 レンダ:レンダ。 1184 00:48:30,730 --> 00:48:31,050 DAVIDマラン:Redna? 1185 00:48:31,050 --> 00:48:32,530 レンダ:それはbとブレンダのようなものだ。 1186 00:48:32,530 --> 00:48:33,190 DAVIDマラン:オーケー、レンダ。 1187 00:48:33,190 --> 00:48:33,590 デビッド。 1188 00:48:33,590 --> 00:48:34,580 よろしくね。 1189 00:48:34,580 --> 00:48:38,690 >> そこでここでは、 "フロッガー"で、我々は単にボリュームを上げることができる場合 1190 00:48:38,690 --> 00:48:39,780 少し、あなたはこの小さなアール 1191 00:48:39,780 --> 00:48:41,010 下部にある緑色のカエル。 1192 00:48:41,010 --> 00:48:43,940 あなたは右、上下、左に使うことができ、あなたの目標は、 1193 00:48:43,940 --> 00:48:46,510 、通りを渡って川を渡ると、ユリのパッド部には触ら 1194 00:48:46,510 --> 00:48:47,760 最上部にある。 1195 00:48:52,090 --> 00:48:53,440 おやおや。 1196 00:48:53,440 --> 00:48:54,630 もう一つトン - 1197 00:48:54,630 --> 00:48:56,400 、すべての権利をやり直す? 1198 00:48:56,400 --> 00:48:58,890 ストップを打ってみましょう。 1199 00:48:58,890 --> 00:49:00,140 誰のを見ていません。 1200 00:49:10,470 --> 00:49:12,930 [拍手] 1201 00:49:17,023 --> 00:49:17,850 [拍手] 1202 00:49:17,850 --> 00:49:19,341 DAVIDマラン:うん。 1203 00:49:19,341 --> 00:49:20,832 非常によくやった。 1204 00:49:20,832 --> 00:49:22,082 優れた、ありがとうございます。 1205 00:49:27,300 --> 00:49:29,430 >> だからフロッガーがあったこと。今あなたがしたものを知っていること 1206 00:49:29,430 --> 00:49:32,170 別のためのもう一つのボランティア、自分自身をに得 1207 00:49:32,170 --> 00:49:34,910 他の学生から提出されたゲーム。 1208 00:49:34,910 --> 00:49:35,560 あなたがアップで来てほしい? 1209 00:49:35,560 --> 00:49:36,576 あなたの名前は? 1210 00:49:36,576 --> 00:49:37,000 RICHARD:リチャード。 1211 00:49:37,000 --> 00:49:37,420 DAVIDマラン:リチャード。 1212 00:49:37,420 --> 00:49:39,732 すべての権利、リチャードは、上に来る。 1213 00:49:39,732 --> 00:49:42,187 [拍手] 1214 00:49:45,140 --> 00:49:47,030 DAVIDマラン:あなたが聞こえるよ何かを持っている 1215 00:49:47,030 --> 00:49:54,180 すぐに馴染みますので、ここにあなたの命令です。 1216 00:49:54,180 --> 00:49:56,580 だから瞬間に、いくつかのパズルのピースが上にスクロールしようとしている 1217 00:49:56,580 --> 00:49:58,150 左に見えるのいずれかの画面から 1218 00:49:58,150 --> 00:49:59,450 または右上下。 1219 00:49:59,450 --> 00:50:01,230 あなたは、そのような方法で、矢印キーを打つ必要があるとしている 1220 00:50:01,230 --> 00:50:04,540 それと並んで、これらのパズルのピースに対応していること 1221 00:50:04,540 --> 00:50:05,720 上部のプレースホルダ。 1222 00:50:05,720 --> 00:50:07,500 ですから、左矢印が表示されたときに、左とそれがラインアップ 1223 00:50:07,500 --> 00:50:09,260 矢印は、左矢印を押してください。 1224 00:50:09,260 --> 00:50:10,866 あなたが始めるかもしれません。 1225 00:50:10,866 --> 00:50:13,674 [MUSIC - "強い"ケインWEST] 1226 00:51:21,222 --> 00:51:23,470 DAVIDマラン:リチャード拍手のすべての権利は​​、大きな丸い。 1227 00:51:23,470 --> 00:51:26,082 [拍手] 1228 00:51:32,426 --> 00:51:33,720 DAVIDマラン:非常によくやった。 1229 00:51:33,720 --> 00:51:34,110 ありがとう。 1230 00:51:34,110 --> 00:51:37,104 [拍手] 1231 00:51:41,600 --> 00:51:44,330 >> DAVIDマラン:だから楽しいと、一見したところ、一種の 1232 00:51:44,330 --> 00:51:46,590 それはのように何かを実装するかもしれないように威圧 1233 00:51:46,590 --> 00:51:49,550 このように一見洗練された、その生徒実現 1234 00:51:49,550 --> 00:51:51,450 すべてを一度に設定するとちょうどこれを書いていなかったのだ。 1235 00:51:51,450 --> 00:51:54,200 むしろ、あなたは、一見複雑なように問題を打破することができます 1236 00:51:54,200 --> 00:51:56,840 はるかに小さい部分にこのように、これは、あまりにも、です 1237 00:51:56,840 --> 00:51:57,560 テーマになるだろう。 1238 00:51:57,560 --> 00:52:00,490 あなたがほとんどすべてでプログラムを書くに行うことができる最悪のこと 1239 00:52:00,490 --> 00:52:03,480 言語は、座って本当に興奮し、記述することです。 1240 00:52:03,480 --> 00:52:07,200 全部いまいましいし、次にちょうどそれが正常に機能することを願っています 1241 00:52:07,200 --> 00:52:08,510 あなたが書き終わっている時間。 1242 00:52:08,510 --> 00:52:10,920 むしろ、プログラミングのプロセスは、一般的にすべきである 1243 00:52:10,920 --> 00:52:13,440 非常に意図的で、非常に繰り返し、それによってあなただけ 1244 00:52:13,440 --> 00:52:16,955 自分自身、一口大のための非常に小さなステップを設定 1245 00:52:16,955 --> 00:52:20,070 あなたはこれらの正気を持つようにかみ切る、としたいですか 1246 00:52:20,070 --> 00:52:21,740 小切手、あなたが会うことはほとんどマイルストーン。 1247 00:52:21,740 --> 00:52:24,170 そしてあなたは多くを作成するためにそれらの上に構築 1248 00:52:24,170 --> 00:52:25,400 まだ洗練されたもの。 1249 00:52:25,400 --> 00:52:26,820 >> だから例えば、我々は約どのように行くことができる 1250 00:52:26,820 --> 00:52:28,380 このようなゲームを実装する? 1251 00:52:28,380 --> 00:52:30,160 まあ、率直に言って、私は確かにだけで開始する 1252 00:52:30,160 --> 00:52:32,260 一度に一つのキーをサポートしています。 1253 00:52:32,260 --> 00:52:34,840 ちょうど左矢印のサポートを実装してみましょう。 1254 00:52:34,840 --> 00:52:37,610 学生が何らかの形でPhotoshopで作成しなければならなかったので、またはで 1255 00:52:37,610 --> 00:52:40,340 自体は、少しグラフィカルなエディタを使ってスクラッチ 1256 00:52:40,340 --> 00:52:42,680 一番上のように見える矢印キーだけで、そこを去った 1257 00:52:42,680 --> 00:52:43,910 灰色のプレースホルダ。 1258 00:52:43,910 --> 00:52:46,610 その後、学生は、x、yは座標に把握しなければならなかった 1259 00:52:46,610 --> 00:52:48,380 ウィンドウでそれをどこに置くか、それを置く。 1260 00:52:48,380 --> 00:52:50,730 0、0、ここでアップしているので、数を把握する必要があります 1261 00:52:50,730 --> 00:52:53,690 からその矢印を相殺するためにピクセルまたはドット、 1262 00:52:53,690 --> 00:52:54,800 画面の最上部。 1263 00:52:54,800 --> 00:52:57,040 そして、かつての場所で​​だと、あなたのプログラムは、実際にはありません 1264 00:52:57,040 --> 00:53:00,380 まだ何もしているので、次に2番目のスプライトを必要とするため 1265 00:53:00,380 --> 00:53:04,470 インスタンスも左向き、あなたの緑の矢印 1266 00:53:04,470 --> 00:53:06,710 そのためにいくつかのスクリプトを書き始める必要があります。 1267 00:53:06,710 --> 00:53:09,310 >> そして、あなたはこれらの事がで来始めたのだから、多分、気付く 1268 00:53:09,310 --> 00:53:11,470 異なる速度、色が異なっていた 1269 00:53:11,470 --> 00:53:13,750 場所、および学生がのビットを使用しているためです 1270 00:53:13,750 --> 00:53:14,990 擬似ランダム性。 1271 00:53:14,990 --> 00:53:17,440 と擬似ランダム性によって、私はただの番号を選ぶ意味 1272 00:53:17,440 --> 00:53:20,230 何か、何かの間にあなたができるので、 1273 00:53:20,230 --> 00:53:22,890 数が1の間とされている場合のように、物事をマッピングするために開始 1274 00:53:22,890 --> 00:53:24,940 5は、よく、のは事は緑にしましょう​​。 1275 00:53:24,940 --> 00:53:28,290 それは6〜10の場合は、のはパズルのピースを作ってみましょう 1276 00:53:28,290 --> 00:53:29,730 代わりに赤。 1277 00:53:29,730 --> 00:53:31,840 あなたはいくつかの種類のを生成する方法を持っている限り、 1278 00:53:31,840 --> 00:53:34,730 ランダム性は、その後、それに基づいて決定を下すことができます 1279 00:53:34,730 --> 00:53:35,260 乱雑。 1280 00:53:35,260 --> 00:53:37,490 そこだからと私は言って擬似ランダム保つ 1281 00:53:37,490 --> 00:53:38,390 少し汚れた秘密。 1282 00:53:38,390 --> 00:53:41,130 コンピュータが乱数を考え出すことはできません。 1283 00:53:41,130 --> 00:53:42,800 彼らだけが言われているものを行うことができますので、 1284 00:53:42,800 --> 00:53:44,110 彼らは人工の装置だ。 1285 00:53:44,110 --> 00:53:45,880 彼らはただ、私たち人間のような番号を推測することはできません 1286 00:53:45,880 --> 00:53:46,960 我々はできるような気がします。 1287 00:53:46,960 --> 00:53:50,970 コンピュータが想起する数学的な何かを行う必要があります 1288 00:53:50,970 --> 00:53:53,970 時々使用して数学的な数字の錯覚、 1289 00:53:53,970 --> 00:53:57,420 何を考え出すに入力されるように時間の現在の日 1290 00:53:57,420 --> 00:53:59,570 数は、その別の時間に、しかし、よりを戻すことができます。 1291 00:53:59,570 --> 00:54:02,060 今のところ、我々は擬似乱数を生成することができることを知っている。 1292 00:54:02,060 --> 00:54:04,610 >> だから、かつて私は、開始するには、左矢印の能力を持っている 1293 00:54:04,610 --> 00:54:07,990 次に、異なる時期に、異なる速度で現れる 1294 00:54:07,990 --> 00:54:10,230 私は戻って、条件が一致した場合、これらのいくつかを追加することができます。 1295 00:54:10,230 --> 00:54:14,950 このスプライトは、他の1、左矢印をタッチしている場合 1296 00:54:14,950 --> 00:54:16,330 キーが押されました - 1297 00:54:16,330 --> 00:54:17,900 その場合には、三つの条件。 1298 00:54:17,900 --> 00:54:20,750 私はそれを使用し、その場合には、おそらくブロックすることができます - 1299 00:54:20,750 --> 00:54:23,210 それから私は、先に行くとスコアをインクリメントしたい。 1300 00:54:23,210 --> 00:54:25,130 そして一番上に、我々はスコアを持って、我々は、驚くばかり持っている 1301 00:54:25,130 --> 00:54:26,510 、涼しい良い、とブー。 1302 00:54:26,510 --> 00:54:29,810 だから、この学生の5つの変数は、明らかにあり 1303 00:54:29,810 --> 00:54:32,220 これらのさまざまなメトリックを追跡するために使用されます。 1304 00:54:32,220 --> 00:54:34,180 だから簡単に言えば、最終的な結果は、驚くべきことです。 1305 00:54:34,180 --> 00:54:37,320 それが楽しいし、それがプレイするのも楽しいですが、それは魅力的だが、この限りではありません 1306 00:54:37,320 --> 00:54:38,380 学生が始まったところ。 1307 00:54:38,380 --> 00:54:42,210 彼または彼女はステップのはるかに小さいセットで始まった。 1308 00:54:42,210 --> 00:54:44,470 >> だから我々はできることをいくつかの他のビルディングブロックは何ですか 1309 00:54:44,470 --> 00:54:45,760 これらのプログラムに織り? 1310 00:54:45,760 --> 00:54:48,750 まあ、ほとんどの言語のこの他の概念は、そこ 1311 00:54:48,750 --> 00:54:50,730 スレッドとして知られている、それらの間でこすります。 1312 00:54:50,730 --> 00:54:54,660 だから、コンピュータが実際に実際に複数の事を行うことはできません 1313 00:54:54,660 --> 00:54:56,730 時間は、少なくともではない通常。 1314 00:54:56,730 --> 00:54:59,930 むしろ、コンピュータは一般的にだけでも、一つのCPUを持っており、 1315 00:54:59,930 --> 00:55:02,230 コンピュータは超高速であり、したがって、することができますが 1316 00:55:02,230 --> 00:55:04,740 一度に複数のことをやっているような錯覚を作成する - 1317 00:55:04,740 --> 00:55:06,180 インスタントを取得し、あなたのメールをチェック 1318 00:55:06,180 --> 00:55:07,770 メッセージ、文書を印刷する - 1319 00:55:07,770 --> 00:55:11,530 実際には、コンピュータは単なる印刷からIMingに跳んでいる 1320 00:55:11,530 --> 00:55:15,160 我々が非常に高速なので背中と背中、前後に、電子メールで送信する 1321 00:55:15,160 --> 00:55:18,170 頭の回転が遅い人間はただそれが実際だということに気付いていない 1322 00:55:18,170 --> 00:55:21,240 同時に、それらのプログラムを少し実行している。 1323 00:55:21,240 --> 00:55:23,960 さて、この白い嘘のビットこれらの日、今日では、なぜなら 1324 00:55:23,960 --> 00:55:26,740 多くの私たちのコンピュータは、マルチコアと呼ばれるものなので、 1325 00:55:26,740 --> 00:55:29,760 のようなものですが、一つのCPUに複数のコアを持っている 1326 00:55:29,760 --> 00:55:31,760 複数のCPUを持つ。 1327 00:55:31,760 --> 00:55:35,020 >> それで時々、コンピュータが本当に複数のことを行うことができます 1328 00:55:35,020 --> 00:55:38,500 当時のが、一般的にはプログラム内、プログラム 1329 00:55:38,500 --> 00:55:40,200 スレッドと呼ばれるこれらのものに依存しています。 1330 00:55:40,200 --> 00:55:43,160 だからスレッドができる小型のプログラムのような種のもの 1331 00:55:43,160 --> 00:55:46,540 別のミニチュアプログラムと共に存在し、実行することができます 1332 00:55:46,540 --> 00:55:51,250 並行して、あるいは少なくともそのような錯覚の下で実行することができ 1333 00:55:51,250 --> 00:55:52,990 彼らは、同時に実行している。 1334 00:55:52,990 --> 00:55:55,060 だからスクラッチは、スレッドと呼ばれるこれらの事をサポートしています。 1335 00:55:55,060 --> 00:55:57,580 あなたはただ、私たちのように、一度に実行する複数のスクリプトを持つことができます 1336 00:55:57,580 --> 00:56:00,220 アシカでやったが、これは私達が実際にすることができます 1337 00:56:00,220 --> 00:56:03,620 次に、これらのスプライト間の相互作用を持っています。 1338 00:56:03,620 --> 00:56:09,910 スレッドと呼びましょう、私はここで先に行くと、プルアップしましょう​​、と 1339 00:56:09,910 --> 00:56:11,870 次のようにこれをプレイ。 1340 00:56:11,870 --> 00:56:13,950 我々は、我々が表示されますそれぞれの人の2つのスプライトを、持っている 1341 00:56:13,950 --> 00:56:15,720 ただ一つのスクリプトを持っています。 1342 00:56:15,720 --> 00:56:18,000 そして、あなたにいくつかの知性があるように思わ気付く 1343 00:56:18,000 --> 00:56:21,335 このいずれかで猫彼が近づいてきているから - 1344 00:56:21,335 --> 00:56:21,730 [うなり] 1345 00:56:21,730 --> 00:56:24,540 DAVIDマラン: - と小鳥に近い。 1346 00:56:24,540 --> 00:56:26,570 >> だから、鳥の動作はどうですか? 1347 00:56:26,570 --> 00:56:28,200 まあ、のは最初の鳥を見てみましょう。 1348 00:56:28,200 --> 00:56:31,220 鳥のスクリプトは、グリーンフラッグがクリックされたときに、xに行くと述べた 1349 00:56:31,220 --> 00:56:34,020 115負等しく、yは150に等しい。 1350 00:56:34,020 --> 00:56:37,010 だから、私はちょうど私が欲しかったランダムな場所を考え出し 1351 00:56:37,010 --> 00:56:39,580 鳥から開始する、と私は、デフォルトでは彼をそこにそのまま流しこむ。 1352 00:56:39,580 --> 00:56:42,800 その後フォーエバー猫に触れるので、これは異なっている場合ではない 1353 00:56:42,800 --> 00:56:45,080 ループ構造が、同じアイデアの種類は再びこれを行うと 1354 00:56:45,080 --> 00:56:45,780 何度も何度も。 1355 00:56:45,780 --> 00:56:49,410 だから限り、あなたは猫に触れていないしているとして、3つのステップを移動し、 1356 00:56:49,410 --> 00:56:51,680 あなたはそれが一種の波打ち際、バウンスを使っているのであれば 1357 00:56:51,680 --> 00:56:53,320 ビリヤードの意味での反射。 1358 00:56:53,320 --> 00:56:56,140 だから鳥が種の周りを移動する方法です 1359 00:56:56,140 --> 00:56:58,890 それが跳ね返っているので、一見ランダムに、それだけだ 1360 00:56:58,890 --> 00:57:00,170 この場合の壁。 1361 00:57:00,170 --> 00:57:03,170 >> 今すぐ猫は、一方、不正行為の一種です。 1362 00:57:03,170 --> 00:57:05,520 猫は、緑色の旗をクリックしたときに、はい、で開始 1363 00:57:05,520 --> 00:57:07,390 いくつかの場所に、ランダムな場所 - 1364 00:57:07,390 --> 00:57:09,590 少なくとも部分的にはピックあたりとして 1365 00:57:09,590 --> 00:57:11,430 そこにランダム緑ブロック - 1366 00:57:11,430 --> 00:57:14,660 鳥をタッチするとその後フォーエバー、ライオンのサウンドを再生する、 1367 00:57:14,660 --> 00:57:15,790 してから、スクリプトを停止します。 1368 00:57:15,790 --> 00:57:18,560 だから私は、終了前、または終了すると言った時、パズルがあり 1369 00:57:18,560 --> 00:57:20,600 ちょうどその時にプログラムを強制終了しますスクラッチのピース 1370 00:57:20,600 --> 00:57:22,900 その種のは、論理的に行うためのポイント。 1371 00:57:22,900 --> 00:57:25,030 しかし、そうでなければ、ここで起こるかわかります。 1372 00:57:25,030 --> 00:57:28,470 鳥に向かって点と1ステップ移動します。 1373 00:57:28,470 --> 00:57:31,390 だから、鳥に向かってこの点が利点猫の一種である 1374 00:57:31,390 --> 00:57:34,640 それは鳥の移動にホーミングという点であり、我々はできる 1375 00:57:34,640 --> 00:57:37,370 現在、このプログラムはすべてのより面白くする。 1376 00:57:37,370 --> 00:57:41,520 代わりに当たり、CPUサイクルごとに一度に1ステップの移動 1377 00:57:41,520 --> 00:57:44,280 、鐘の通行料を叩く、いわば、私が先に行きましょうと 1378 00:57:44,280 --> 00:57:47,350 と呼びましょう、猫のように一度に5つのステップに移動します。 1379 00:57:47,350 --> 00:57:51,120 実行]をクリックして、今、彼は本当にすぐに彼を見つける。 1380 00:57:51,120 --> 00:57:55,620 我々は10のステップにこれをさらに2倍にすると、それは同じ種類で行く 1381 00:57:55,620 --> 00:57:56,370 彼のための権利。 1382 00:57:56,370 --> 00:57:57,750 今、私たちは鳥を与えることができ、 1383 00:57:57,750 --> 00:57:59,540 おそらく、優位性のビット。 1384 00:57:59,540 --> 00:58:02,370 のは、鳥に行くと3つのステップを移動するのではなく、言わせて、 1385 00:58:02,370 --> 00:58:07,140 彼に30ステップを移動してみましょう。 1386 00:58:07,140 --> 00:58:08,700 しかし、彼はまだ終わりに巻き込まれた。 1387 00:58:08,700 --> 00:58:10,430 >> だからここで、我々は2つ​​のスレッドがあります。 1388 00:58:10,430 --> 00:58:13,230 これは、2つのスクリプトと2つのスクラッチに投獄だ 1389 00:58:13,230 --> 00:58:16,150 スプライトが、他の言語でのアイデアは、あなたができることです 1390 00:58:16,150 --> 00:58:19,220 本質的に、このようなあまりにも多くのプログラムを書いて、持っている 1391 00:58:19,220 --> 00:58:22,950 それらは、並行して、仮想的に本当に実行するか、または。 1392 00:58:22,950 --> 00:58:25,280 >> さて、このコンセプトはとして知られているプログラミングでも用意されている 1393 00:58:25,280 --> 00:58:28,010 イベント、そして、これは我々はC言語では表示されません何かである、 1394 00:58:28,010 --> 00:58:30,500 Cとして知られている言語は、我々は、学期の終わりに向かってそれが表示されます 1395 00:58:30,500 --> 00:58:33,240 Webプログラミングでは、ときに我々には、JavaScriptと紹介 1396 00:58:33,240 --> 00:58:36,970 ダイナミックであり、相互作用するWebページを構築するという概念 1397 00:58:36,970 --> 00:58:37,710 ユーザーと。 1398 00:58:37,710 --> 00:58:40,430 したがって、この例の場合、我々は2つ​​の非常に単純な例を持っている 1399 00:58:40,430 --> 00:58:43,860 それぞれが持っているそれぞれの人のスプライト、男の子と女の子、 1400 00:58:43,860 --> 00:58:48,040 スレッドが、どういうわけかこの二つの方法で相互に通信している 1401 00:58:48,040 --> 00:58:49,490 イベントと呼ばれるものである。 1402 00:58:49,490 --> 00:58:52,750 だから、私はここで先に行くと少年のスクリプトにズームインましょう 1403 00:58:52,750 --> 00:58:54,050 それはこのように見えます。 1404 00:58:54,050 --> 00:58:57,510 緑色のフラグがクリックすると、永遠に次の手順を実行します。 1405 00:58:57,510 --> 00:59:01,510 スペースキー、またはスペースバーが押された場合は、言う 1406 00:59:01,510 --> 00:59:03,900 純粋に美的な2秒間マルコ、 1407 00:59:03,900 --> 00:59:06,860 画面、少し吹き出したが、その後放送された。 1408 00:59:06,860 --> 00:59:09,240 >> だから放送です別のスクラッチ作品です 1409 00:59:09,240 --> 00:59:12,050 プログラミングの機能のクラスの代表 1410 00:59:12,050 --> 00:59:15,080 異なるプログラムは、別のスレッドを、可能にすること 1411 00:59:15,080 --> 00:59:17,120 に相互通信し、何とかして送信する 1412 00:59:17,120 --> 00:59:18,520 メッセージは、別の1。 1413 00:59:18,520 --> 00:59:21,930 クラスの中で一枚の紙を渡すと、ローテクの一種である 1414 00:59:21,930 --> 00:59:22,700 同等の。 1415 00:59:22,700 --> 00:59:24,300 だから、イベントをブロードキャストします。 1416 00:59:24,300 --> 00:59:26,210 私はこのメッセージを送信し、単語のイベントができる 1417 00:59:26,210 --> 00:59:27,270 完全に任意です。 1418 00:59:27,270 --> 00:59:30,000 傷は時々これらのドロップダウンを持っているので、私はちょうど思い付い 1419 00:59:30,000 --> 00:59:33,230 イベントのようなランダムな単語を使っているため、今、少年は何を行います 1420 00:59:33,230 --> 00:59:36,600 私はキーが押したときに、彼はこのイベントをブロードキャストします。 1421 00:59:36,600 --> 00:59:39,270 私は女の子のスクリプトで今見てみると、彼女のスクリプトです 1422 00:59:39,270 --> 00:59:42,690 彼女が行う必要があるすべては時に行動されていないため、単純なスーパー 1423 00:59:42,690 --> 00:59:44,100 緑の旗をクリックします。 1424 00:59:44,100 --> 00:59:47,910 彼女は引用、引用終わりを受信したときに彼女は、アクションに設計されています 1425 00:59:47,910 --> 00:59:51,210 "イベント"と、その時点で、彼女はのために、したがって聴いて 1426 00:59:51,210 --> 00:59:52,960 何度も何度も、いわゆるイベント。 1427 00:59:52,960 --> 00:59:55,790 彼女は、そのイベントを受け取るとすぐに、彼女は叫ぶために起こっている 1428 00:59:55,790 --> 00:59:57,680 2秒間ポロ。 1429 00:59:57,680 --> 01:00:01,090 >> そしてあなたは、おそらくまさにこのことから推測することができます 1430 01:00:01,090 --> 01:00:03,190 次の結果があることを行っている。 1431 01:00:03,190 --> 01:00:04,910 私は緑色の旗をクリックしてみましょう。 1432 01:00:04,910 --> 01:00:06,610 私は何をする必要があるため、何も起こりません? 1433 01:00:06,610 --> 01:00:07,310 読者:スペースバー。 1434 01:00:07,310 --> 01:00:08,630 DAVIDマラン:スペースバー。 1435 01:00:08,630 --> 01:00:11,990 少年はマルコと言い、少女はポロを言う。 1436 01:00:11,990 --> 01:00:13,670 しかし、それはハード自体がコーディングされていない。 1437 01:00:13,670 --> 01:00:16,740 それは、我々、今、スクリプト間での相互通信だ 1438 01:00:16,740 --> 01:00:19,240 さらに複雑なプログラム場所を作る能力を持っている 1439 01:00:19,240 --> 01:00:22,830 これら二つは何とか間通信しています。 1440 01:00:22,830 --> 01:00:25,260 >> だから何の方向に我々はこれを取ることができますか? 1441 01:00:25,260 --> 01:00:28,260 さて、問題セット0で、実際には、目的はにある 1442 01:00:28,260 --> 01:00:29,830 スクラッチを楽しん​​でいる。 1443 01:00:29,830 --> 01:00:32,440 ハッカーエディションの場合は、代わりに多くの楽しみを持っているでしょう 1444 01:00:32,440 --> 01:00:35,850 BYOBと呼ばれるスクラッチの洗練されたバージョン、ビルド 1445 01:00:35,850 --> 01:00:38,040 独自のブロックが、考え方は同じです。 1446 01:00:38,040 --> 01:00:38,780 あなたができるようになります - 1447 01:00:38,780 --> 01:00:39,710 はい、それは意図的であった。 1448 01:00:39,710 --> 01:00:42,450 それはバークレーから来ました。 1449 01:00:42,450 --> 01:00:45,200 BYOBはこのハッカー版のバージョンですが、両方 1450 01:00:45,200 --> 01:00:48,180 人口統計、標準版と同様にハッカー版、 1451 01:00:48,180 --> 01:00:50,940 来週のために手での目標は、ただで潜ることが本当にある 1452 01:00:50,940 --> 01:00:53,050 深い、プログラミングにあなたの手を汚し、そして作る 1453 01:00:53,050 --> 01:00:55,240 何か面白いものは、何かをインタラクティブに、作る 1454 01:00:55,240 --> 01:00:58,020 芸術的な何かが、実際に何か楽しいことをする 1455 01:00:58,020 --> 01:01:01,020 週の終わりまでに、あなたがプロジェクトを持っているだろうので、実証し、 1456 01:01:01,020 --> 01:01:03,770 最初のCS50のpsetのためだけでなく、しかし、あなたはあるでしょう 1457 01:01:03,770 --> 01:01:05,620 あなたがアネンバーグに披露できることはほとんど何か 1458 01:01:05,620 --> 01:01:08,830 MITのウェブサイトにアップロードして友人や家族であっても。 1459 01:01:08,830 --> 01:01:11,760 私は水曜日に語ったようにと、私たちは、クラスの90%を期待 1460 01:01:11,760 --> 01:01:13,970 一般的に、標準的なエディションを行う。 1461 01:01:13,970 --> 01:01:16,660 あなたの人々のためのこのアウトレットもありだと気付く 1462 01:01:16,660 --> 01:01:18,990 そうでなければ自分で基礎に飽きビットを見つけるかもしれない 1463 01:01:18,990 --> 01:01:21,650 と本当にあなたが既にビジョンをで潜るとクラフトしたい 1464 01:01:21,650 --> 01:01:25,380 もっと友好的にこの前の背景に持っている 1465 01:01:25,380 --> 01:01:26,240 環境。 1466 01:01:26,240 --> 01:01:29,030 >> だから私は、私たちの元の1つが他の1例をプルアップしてみましょう 1467 01:01:29,030 --> 01:01:33,830 学生はここで行なったし、歌を通して少し何かを教えてください。 1468 01:01:33,830 --> 01:01:37,430 同様に、この芝居のように、あなたが約行く方法を考えること 1469 01:01:37,430 --> 01:01:40,520 正確にこれらの同じを使用して、このプログラムを実施 1470 01:01:40,520 --> 01:01:44,180 ビルディングブロックは、擬似乱数発生の少し、と 1471 01:01:44,180 --> 01:01:46,010 おなじみの曲のビット。 1472 01:01:46,010 --> 01:01:47,910 我々は、ボリュームを少しだけ上げることができれば? 1473 01:01:47,910 --> 01:01:49,160 [MUSIC - ウェザーガールズ "がそれが男性を雨が降っている"] 1474 01:03:02,261 --> 01:03:03,930 >> DAVIDマラン:CS50用のそれだ。 1475 01:03:03,930 --> 01:03:05,860 私たちは、月曜日にお会いしましょう​​。 1476 01:03:05,860 --> 01:03:21,152 [拍手]