1 00:00:00,000 --> 00:00:15,059 >> [Мусиц плаиинг] 2 00:00:15,059 --> 00:00:19,170 >> Ово је ЦС50-- Харварду Универзитета увод 3 00:00:19,170 --> 00:00:22,070 на интелектуални предузећа компјутерске науке 4 00:00:22,070 --> 00:00:23,800 и уметност програмирања. 5 00:00:23,800 --> 00:00:27,020 И моје име је Дејвид Малан, и Размишљао сам јутрос, 6 00:00:27,020 --> 00:00:33,120 то је било невероватно 20 година данас откад сам последњи пут седео у којој сада радите. 7 00:00:33,120 --> 00:00:33,840 >> То је било 1996. 8 00:00:33,840 --> 00:00:37,550 Ја сам био студент друге године, а ја сам се ЦС50 по први пут. 9 00:00:37,550 --> 00:00:40,890 А нисам ни устао нерв да га средим првој години, 10 00:00:40,890 --> 00:00:42,500 делимично због времена. 11 00:00:42,500 --> 00:00:44,782 Цомпутер сциенце мени је нешто као, мех. 12 00:00:44,782 --> 00:00:46,990 Био сам помало геек расте горе, али нисам баш 13 00:00:46,990 --> 00:00:49,180 имају неки интелектуалац интересовање за оно што се чинило 14 00:00:49,180 --> 00:00:51,920 да буде само гомила људи программинг све време. 15 00:00:51,920 --> 00:00:53,904 >> И ја сам уплашен да будем искрен. 16 00:00:53,904 --> 00:00:56,820 Ток и информатика више углавном имали и у извесној мери, 17 00:00:56,820 --> 00:01:01,230 ипак има ту репутацију поља на пази, ако само зато што су многи од нас 18 00:01:01,230 --> 00:01:04,410 су упознати с тим и несигуран у њега. 19 00:01:04,410 --> 00:01:08,480 И никад није било док сам куповао ова класа је студент друге године фалл-- 20 00:01:08,480 --> 00:01:10,880 па чак и тада, и само уписао јер је профессор-- 21 00:01:10,880 --> 00:01:13,950 један од мојих првих ментора, Брајан Кернигхан сада у Принцетон-- 22 00:01:13,950 --> 00:01:15,700 ми је дозволио да се класа додавање не. 23 00:01:15,700 --> 00:01:18,020 И заиста, зато данас ми дозволити и охрабрити 24 00:01:18,020 --> 00:01:20,030 студентима да узимају ову класу сат / унсат. 25 00:01:20,030 --> 00:01:22,040 >> И тек тада, од стране крај семестра 26 00:01:22,040 --> 00:01:24,870 Нисам схватала као, вов, ово није био тако непознат поље. 27 00:01:24,870 --> 00:01:26,850 Заиста, ово је веома моћно поље, 28 00:01:26,850 --> 00:01:28,970 и више узбудљиво, посебно касније, 29 00:01:28,970 --> 00:01:32,809 као што сам узео курсеве у Драмских уметности 101 и латински А 30 00:01:32,809 --> 00:01:34,600 и на крају Град школа археологија, 31 00:01:34,600 --> 00:01:37,860 сам заиста почети да види пресеци овој области, рачунар 32 00:01:37,860 --> 00:01:41,979 наука, са хуманистичких наука, природне науке, уметности, медицина, 33 00:01:41,979 --> 00:01:42,520 и слично. 34 00:01:42,520 --> 00:01:44,420 И то је оно што је тако уредан о рачунарству 35 00:01:44,420 --> 00:01:46,930 на крају, као што се надамо да ћете видео-- је његова применљивост 36 00:01:46,930 --> 00:01:50,280 овим другим областима, и како можете узети неке од данас је и семестар је 37 00:01:50,280 --> 00:01:53,070 идеје и практичне вештине назад на свој домен, 38 00:01:53,070 --> 00:01:58,200 и заправо истражују ову раскрсницу либералних уметности и науке. 39 00:01:58,200 --> 00:02:02,690 >> Дакле, 73% од вас, ако последњи година је било индикација, 40 00:02:02,690 --> 00:02:04,390 никада раније узели ЦС курс. 41 00:02:04,390 --> 00:02:06,389 Дакле, ако, као ја, ти си осећам мало 42 00:02:06,389 --> 00:02:09,190 уплашени, или искрено ниси стварно сигуран зашто си још овде. 43 00:02:09,190 --> 00:02:11,510 Можда сте управо пратили неки пријатељи над на Сандерс одмах. 44 00:02:11,510 --> 00:02:12,490 То је потпуно у реду. 45 00:02:12,490 --> 00:02:15,059 Циљ је да се кука те и да се увери 46 00:02:15,059 --> 00:02:17,100 да ако не погледамо лево и десно, 47 00:02:17,100 --> 00:02:21,480 ви ћете видети друговима из разреда са као мало или онолико искуства 48 00:02:21,480 --> 00:02:22,890 то ти се можда има. 49 00:02:22,890 --> 00:02:25,280 И заиста, ми ћемо делити неке статистике касније данас 50 00:02:25,280 --> 00:02:28,120 о томе шта је демографији класа обично изгледају. 51 00:02:28,120 --> 00:02:31,440 >> И како се додаје реассуранце-- и тога смо мислим од када сам га током 52 00:02:31,440 --> 00:02:33,252 Неколико година аго-- у Курс је план и програм 53 00:02:33,252 --> 00:02:35,460 је-- то што на крају питања у овом курсу 54 00:02:35,460 --> 00:02:38,040 није толико где си крај до односу на своје другове из разреда, 55 00:02:38,040 --> 00:02:43,110 али где се у недељу 11., крај од семестар, завршити у односу на себе 56 00:02:43,110 --> 00:02:46,280 у недељу 0, што је где смо данас овде. 57 00:02:46,280 --> 00:02:48,704 И то је оно што сам схватио све те пре много година. 58 00:02:48,704 --> 00:02:50,620 И знам доста класе кажем, али то је 59 00:02:50,620 --> 00:02:52,450 посебно тачно у компјутерској науци. 60 00:02:52,450 --> 00:02:55,320 На крају крајева, ово поље је непознат као што је било до мене 61 00:02:55,320 --> 00:02:58,590 и може бити да ти је стварно само о решавању проблема. 62 00:02:58,590 --> 00:03:01,324 И као таква, она нема ово применљивост да се другим областима. 63 00:03:01,324 --> 00:03:03,490 И у ствари, ако смо покушали за дестилацију шта то значи, 64 00:03:03,490 --> 00:03:06,897 Ово је решавање проблема у суштини, ја претпостављам. 65 00:03:06,897 --> 00:03:09,480 Ту је инпут-- Дакле, шта год да је је да покушавамо да решимо. 66 00:03:09,480 --> 00:03:12,264 Постоји излаз, који је, надамо се, решење за тај проблем. 67 00:03:12,264 --> 00:03:14,180 И онда, као што би кажу у компјутерској науци, 68 00:03:14,180 --> 00:03:17,310 ту је црна кутија у средина да не обавезно 69 00:03:17,310 --> 00:03:19,450 морају да брину о томе како се то ради. 70 00:03:19,450 --> 00:03:22,230 Ви сами евентуално могао спроведе оно што је у тој кутији. 71 00:03:22,230 --> 00:03:25,194 Али за данашње потребе и више генерално у животу, све ти је стало 72 00:03:25,194 --> 00:03:26,610 је да се ови проблеми решени. 73 00:03:26,610 --> 00:03:29,340 >> А шта је овај курс на крају око истражује 74 00:03:29,340 --> 00:03:31,700 пресек ови улази и излази, 75 00:03:31,700 --> 00:03:34,410 и то тзв алгоритми, као што ћемо ускоро видети, 76 00:03:34,410 --> 00:03:37,450 да спроведе оно што је испод тамо, хауба. 77 00:03:37,450 --> 00:03:40,487 Али ове улаза и то оутпутс-- Шта то заправо значи? 78 00:03:40,487 --> 00:03:43,570 Па, на крају крајева, треба неки начин представљања информација. 79 00:03:43,570 --> 00:03:46,660 Ово се посебно односи на рачунару, који као фанци и сложена и 80 00:03:46,660 --> 00:03:48,160 можда делује, је прилично глупа уређај. 81 00:03:48,160 --> 00:03:52,240 Потребно елецтрицити-- да ли из кабл или батерија као инпут-- 82 00:03:52,240 --> 00:03:55,820 и онда производи нека препрограмед одговори на екрану. 83 00:03:55,820 --> 00:03:57,970 >> Али како ћемо добити од почињу да тамо заврши? 84 00:03:57,970 --> 00:03:59,470 Па, шта је проблем бити решен? 85 00:03:59,470 --> 00:04:01,050 Па, можда бисмо могли, у почетак сваког семестра, 86 00:04:01,050 --> 00:04:02,841 покушавају да доведу у соби као што је овај. 87 00:04:02,841 --> 00:04:04,750 Тако да може да уради као један, два, три. 88 00:04:04,750 --> 00:04:07,060 Или можда, ако сам то урадио на неки начин пратити 89 00:04:07,060 --> 00:04:10,560 од себе-- да прате ствари-- Могао бих брзо остати без прстију. 90 00:04:10,560 --> 00:04:14,650 Тако да сам само могао да тараба маркс-- један лице, два, три, четири, пет, шест, 91 00:04:14,650 --> 00:04:15,431 седам, осам. 92 00:04:15,431 --> 00:04:17,930 И свако од нас вероватно урадио, да ли на рукама 93 00:04:17,930 --> 00:04:19,680 или на парчету папира. 94 00:04:19,680 --> 00:04:22,140 И ово је заправо само нешто што се зове Унарни нотатион-- 95 00:04:22,140 --> 00:04:26,130 где ако имате само једно слово у својој писма, једно или хашиш 96 00:04:26,130 --> 00:04:29,440 ознака у овом случају, за сваки улаз желите да броје, 97 00:04:29,440 --> 00:04:32,330 треба да спусти један од ових леттерс-- један од тих ознака. 98 00:04:32,330 --> 00:04:32,510 >> У реду. 99 00:04:32,510 --> 00:04:34,790 То је све у реду и добро и није све тако компликовано. 100 00:04:34,790 --> 00:04:37,800 Али компјутери нису сви да много компликовано. 101 00:04:37,800 --> 00:04:40,770 Заиста, већина вас сигурно знам чак и ако не си стварно 102 00:04:40,770 --> 00:04:44,080 Сматра шта то значи, да рачунари разумеју само нуле 103 00:04:44,080 --> 00:04:45,870 и онес-- тзв бинарном систему. 104 00:04:45,870 --> 00:04:49,390 Ми људи, с друге стране, су тако много софистициранији уколико 105 00:04:49,390 --> 00:04:51,770 како смо нула кроз деветки. 106 00:04:51,770 --> 00:04:55,740 >> Али чак и ако бинарни је, на први поглед поглед, није све што је познато, 107 00:04:55,740 --> 00:05:00,330 Испоставило се да је то исто као и система и идеје које већ знамо. 108 00:05:00,330 --> 00:05:02,420 Тако на пример, размисли о овоме. 109 00:05:02,420 --> 00:05:03,896 Ово је само низ симбола. 110 00:05:03,896 --> 00:05:05,770 И сви ви, када Гледајуци њега, вероватно 111 00:05:05,770 --> 00:05:09,380 Мислим 123-- ниста стварно занимљиво тамо. 112 00:05:09,380 --> 00:05:11,940 Али зашто је овај број, 123? 113 00:05:11,940 --> 00:05:14,440 Ово су само глифови на сцреен-- само обрасци 114 00:05:14,440 --> 00:05:16,387 да је неко можда извући или откуцана. 115 00:05:16,387 --> 00:05:18,970 Али ако сте попут мене, Вероватно се сећате из основне школе 116 00:05:18,970 --> 00:05:21,610 да постоје врста колона или места овде. 117 00:05:21,610 --> 00:05:25,340 Ту је она мјесто и десет је место и стотину је место. 118 00:05:25,340 --> 00:05:29,820 А разлог да је ово 123 и не само образац три симбола 119 00:05:29,820 --> 00:05:33,090 Јер, наравно, ако ми има један на стотине месту, 120 00:05:33,090 --> 00:05:36,610 ти математику од 100 пута једног, а затим два у десет месту. 121 00:05:36,610 --> 00:05:41,390 Тако да је 10 пута 2, а затим три у Тхе Оне мјесто и то је 1 пута 3. 122 00:05:41,390 --> 00:05:45,670 И када додате све оне горе, на Наравно, ти 100 плус 20 плус 3. 123 00:05:45,670 --> 00:05:48,220 >> Тако да смо почели са само образац од симболс-- је алпхабет-- 124 00:05:48,220 --> 00:05:51,670 али онда мапирана значење на га путем ових стубова. 125 00:05:51,670 --> 00:05:54,450 Па, испоставило се да рачунари су заиста није 126 00:05:54,450 --> 00:05:56,300 све то разликује од тебе и мене. 127 00:05:56,300 --> 00:06:01,840 Али уместо овлашћења 10, тако спеак-- 1, 10, 100, 1000, 128 00:06:01,840 --> 00:06:04,330 10.000 место и тако фортх-- они заправо 129 00:06:04,330 --> 00:06:08,930 само користити овлашћења 2-- па се, 2, 4, а затим 130 00:06:08,930 --> 00:06:12,810 ако ставимо више цифара, 8, 16, 32, 64, 128, и тако даље. 131 00:06:12,810 --> 00:06:16,050 Па ово је како рачунар би представљају број 0, 132 00:06:16,050 --> 00:06:17,300 Само смо као људи. 133 00:06:17,300 --> 00:06:21,660 >> 0, 0, 0-- и што вероватно можете погодити шта образац нула и јединица, 134 00:06:21,660 --> 00:06:24,610 ако рачунар може само говоре 0 или 1-- шта 135 00:06:24,610 --> 00:06:29,110 образац ће представљати броја који људи знају као 1? 136 00:06:29,110 --> 00:06:30,590 Да-- 0, 0, 1. 137 00:06:30,590 --> 00:06:31,090 У реду. 138 00:06:31,090 --> 00:06:35,900 Дакле 0, 0, 1 је како представљају 1, тако да може да се склони онда 139 00:06:35,900 --> 00:06:39,510 да представља број 2, ако имате Тхе Фоур је место и два мјесто 140 00:06:39,510 --> 00:06:48,290 као једном месту, могло би се рећи, добро, ако смо имали 1 на једном месту, 141 00:06:48,290 --> 00:06:50,430 а сада желимо да броји до 2, могао би 142 00:06:50,430 --> 00:06:53,310 ово и оставити да то буде нула. 143 00:06:53,310 --> 00:06:56,397 Али наравно то није начин децималне систем функционише ни. 144 00:06:56,397 --> 00:06:58,230 Ако ставите цифру оба ова колона, 145 00:06:58,230 --> 00:06:59,563 мораш да уради аритметику. 146 00:06:59,563 --> 00:07:01,930 Дакле, шта број је случајно управо представља? 147 00:07:01,930 --> 00:07:06,710 >> Дакле, то је 3, јер 2 пута 1 плус 1 пута 1, наравно, даје нам три. 148 00:07:06,710 --> 00:07:08,340 Дакле, то ће бити два. 149 00:07:08,340 --> 00:07:12,730 Бит врста флипс, да тако кажем, као 0 постаје један, слично као 9 улога преко 150 00:07:12,730 --> 00:07:14,840 и постаје 0 када носите 1. 151 00:07:14,840 --> 00:07:16,510 Ово онда би било троје, наравно. 152 00:07:16,510 --> 00:07:20,170 Фоур-- Још једна интересантна ствар деси, где су они преврне 153 00:07:20,170 --> 00:07:21,750 и ви носити 1, да се тако изразим. 154 00:07:21,750 --> 00:07:23,320 Тако да, наравно, је 4. 155 00:07:23,320 --> 00:07:25,160 >> Али ако брзо напред сада, шта је највећи број иде 156 00:07:25,160 --> 00:07:26,660 да буде да рачунар може представљати? 157 00:07:26,660 --> 00:07:30,420 158 00:07:30,420 --> 00:07:32,380 Дакле, то је само седам у овом случају, зар не? 159 00:07:32,380 --> 00:07:35,570 Јер имате један у четири, једна у два, једна у једној. 160 00:07:35,570 --> 00:07:36,900 Тако да је 4 плус 2 плус 1. 161 00:07:36,900 --> 00:07:37,972 Тако да вам даје седам. 162 00:07:37,972 --> 00:07:39,680 И заиста, то би изгледа на први поглед 163 00:07:39,680 --> 00:07:43,750 да компјутери могу рачунати не више од тога. 164 00:07:43,750 --> 00:07:45,210 >> Али то наравно није тачно. 165 00:07:45,210 --> 00:07:48,243 Шта ми људи радимо када желимо да рачунају више него као 999? 166 00:07:48,243 --> 00:07:51,000 167 00:07:51,000 --> 00:07:53,900 Само наставите један и само додати четврту цифру са леве стране. 168 00:07:53,900 --> 00:07:55,070 Па заиста смо могли. 169 00:07:55,070 --> 00:07:57,900 Могли бисмо да имамо осам'С место и 16. мјесто, 170 00:07:57,900 --> 00:08:02,000 и 32 мјесто, 64, 128-- и ви могу само настави даље до бесконачности. 171 00:08:02,000 --> 00:08:04,640 Дакле, те нуле и онес-- тзв бинарни систем-- 172 00:08:04,640 --> 00:08:10,290 су оно што рачунар научник би генерално назвати мало, или бинарни цифру. 173 00:08:10,290 --> 00:08:13,590 >> Али сада, како ћемо добити од концепт или графика ових ствари 174 00:08:13,590 --> 00:08:14,620 до стварног компјутер? 175 00:08:14,620 --> 00:08:17,170 Чини се да прескаче корак овде. 176 00:08:17,170 --> 00:08:20,210 Па, једини улаз на крају дана, на мој лаптоп овде 177 00:08:20,210 --> 00:08:22,060 ово проток струје. 178 00:08:22,060 --> 00:08:24,560 Чак и ако је то био дуг пут од сте мислили о томе 179 00:08:24,560 --> 00:08:26,580 или никад размишљала о како струја ради, 180 00:08:26,580 --> 00:08:30,909 има електрони теку или се, и то је моја врста улаза. 181 00:08:30,909 --> 00:08:34,659 >> Дакле, ако је то све што смо узимајући као улаз овде, 182 00:08:34,659 --> 00:08:36,830 шта можемо урадити са том информацијом? 183 00:08:36,830 --> 00:08:40,040 Па, могли бисмо да на нулу као само одсуство струје. 184 00:08:40,040 --> 00:08:42,540 Ништа није фловинв, ништа није креће, ништа се не дешава. 185 00:08:42,540 --> 00:08:44,690 То је само подразумевани стате-- нула. 186 00:08:44,690 --> 00:08:48,200 Али ако постоји тече струја, зашто не само произвољно, али глобално 187 00:08:48,200 --> 00:08:50,250 доследно, зовемо један. 188 00:08:50,250 --> 00:08:54,760 >> Дакле, једноставно тако што нема струје, имамо нула, Да Сила, 189 00:08:54,760 --> 00:08:57,520 имамо Један-- без моћи, иес моћ. 190 00:08:57,520 --> 00:09:01,520 И на тај начин, користећи нешто више Физички или електронски 191 00:09:01,520 --> 00:09:05,340 почнемо да спроводи ову представу нешто или као један или нула. 192 00:09:05,340 --> 00:09:07,230 Заиста, можемо само то овде. 193 00:09:07,230 --> 00:09:10,590 Дакле, овде, нисам три, али осам сијалице од којих сваки 194 00:09:10,590 --> 00:09:11,810 има свој прекидач. 195 00:09:11,810 --> 00:09:15,760 >> Па ако сам желео да представља број седам овде, 196 00:09:15,760 --> 00:09:18,510 Можда укључите ове три сијалице. 197 00:09:18,510 --> 00:09:21,470 И заиста, унутар мој компјутер милиона, 198 00:09:21,470 --> 00:09:25,650 милијарде ствари које су управо мање од тога, зову транзистори, 199 00:09:25,650 --> 00:09:27,330 прекидачи, који сте управо пали и гаси. 200 00:09:27,330 --> 00:09:30,420 Дакле, то су релативно биг-- биг-- прекидачи Инсиде Ми лаптоп-- 201 00:09:30,420 --> 00:09:32,150 много, много, много, много више прекидача. 202 00:09:32,150 --> 00:09:35,160 Али све што раде је управо то-- окренути нешто на, окрените нешто. 203 00:09:35,160 --> 00:09:38,076 И као такав, рачунар може представљати, са тим милионима или милијардама 204 00:09:38,076 --> 00:09:40,480 транзистора, пуно и много нула и јединица. 205 00:09:40,480 --> 00:09:43,160 А ту је и други хардвер и даље да омогућава складиштење информација дугорочно, 206 00:09:43,160 --> 00:09:45,243 тако да када повуците плуг, ви га не изгубите. 207 00:09:45,243 --> 00:09:46,900 Али то је прича за неки други дан. 208 00:09:46,900 --> 00:09:51,170 >> Дакле, шта да радимо са тим бита? 209 00:09:51,170 --> 00:09:54,309 Можда смо само да се притисак са мене-- 210 00:09:54,309 --> 00:09:56,600 Можда неко жели да дође овде и понудити демонстрацију? 211 00:09:56,600 --> 00:09:57,516 Сам први пут видео ову руку. 212 00:09:57,516 --> 00:09:58,709 Како се зовеш? 213 00:09:58,709 --> 00:09:59,250 Мадаи: Мадаи. 214 00:09:59,250 --> 00:10:00,542 Давид Малан: Мадаи, хајде горе. 215 00:10:00,542 --> 00:10:01,250 Драго ми је да смо се упознали. 216 00:10:01,250 --> 00:10:02,390 Мадаи: Драго ми је. 217 00:10:02,390 --> 00:10:02,930 >> Давид Малан: Дођите овамо. 218 00:10:02,930 --> 00:10:04,182 Нећу морати да те усана горе. 219 00:10:04,182 --> 00:10:04,682 У реду. 220 00:10:04,682 --> 00:10:11,090 Дакле, овде имамо, нотице-- Један, два ћемо изменити да оут-- један, два, четири, 221 00:10:11,090 --> 00:10:13,350 осам, 16, 32, 64, 128. 222 00:10:13,350 --> 00:10:14,220 Ово је намерна. 223 00:10:14,220 --> 00:10:17,370 Постоји осам битова овде- бинарни дигитс-- нуле и јединице. 224 00:10:17,370 --> 00:10:21,460 И мало је користан јединица меасуре-- не као користан јединица мере 225 00:10:21,460 --> 00:10:21,999 на себи. 226 00:10:21,999 --> 00:10:24,290 Обично желите бар осам од тих ствари, такође познат као 227 00:10:24,290 --> 00:10:24,790 бајт. 228 00:10:24,790 --> 00:10:26,230 Дакле, имамо бајт битова овде. 229 00:10:26,230 --> 00:10:31,130 >> Дакле, ако смо хтели да те изазове са, на пример, спеллинг од, у бинарном, 230 00:10:31,130 --> 00:10:33,230 ова вредност овде- 42. 231 00:10:33,230 --> 00:10:35,140 Желим да се убод на то? 232 00:10:35,140 --> 00:10:36,034 >> Мадаи: [неразумљиво]. 233 00:10:36,034 --> 00:10:38,700 Давид Малан: Да, само гурајте мале беле прекидачи испред. 234 00:10:38,700 --> 00:10:41,290 И желите да пише од 42, а за посезање 235 00:10:41,290 --> 00:10:44,061 је ово ЦС50 стрес Лопта ако ти ово. 236 00:10:44,061 --> 00:10:44,560 У реду. 237 00:10:44,560 --> 00:10:46,420 Тако да имате 32. 238 00:10:46,420 --> 00:10:48,430 Ми ћемо требати 42. 239 00:10:48,430 --> 00:10:51,410 Тако да је осам, тако да је 40. 240 00:10:51,410 --> 00:10:54,160 И екцеллент-- врло лепо урађено. 241 00:10:54,160 --> 00:10:55,186 Хвала вам. 242 00:10:55,186 --> 00:10:58,790 >> [Апплаусе] 243 00:10:58,790 --> 00:10:59,290 У реду. 244 00:10:59,290 --> 00:11:00,623 Дакле, имамо још један стрес лопту. 245 00:11:00,623 --> 00:11:03,595 Хајде да ово још једном радимо ако могу. 246 00:11:03,595 --> 00:11:05,368 Једна друга волонтер? 247 00:11:05,368 --> 00:11:07,970 Фрее стрес лопта, слободно стрес лопта. 248 00:11:07,970 --> 00:11:08,470 ОК. 249 00:11:08,470 --> 00:11:11,640 Овде у средини, да ли желе да дођу доле? 250 00:11:11,640 --> 00:11:14,100 У реду. 251 00:11:14,100 --> 00:11:15,552 Знам. 252 00:11:15,552 --> 00:11:16,360 Ево га. 253 00:11:16,360 --> 00:11:20,818 >> Тако да је број овдје-- хајде доле. 254 00:11:20,818 --> 00:11:21,567 Како се зовеш? 255 00:11:21,567 --> 00:11:21,984 >> ДАВЕИ: Дејви. 256 00:11:21,984 --> 00:11:22,820 >> Давид Малан: Дејви. 257 00:11:22,820 --> 00:11:23,320 ОК. 258 00:11:23,320 --> 00:11:24,810 Хајде горе, Дејви. 259 00:11:24,810 --> 00:11:25,890 Драго ми је да смо се упознали. 260 00:11:25,890 --> 00:11:28,639 А шта ћемо да те имам спелл-- ако би тамо задржавају 261 00:11:28,639 --> 00:11:32,810 за само један тренутак-- је број 50. 262 00:11:32,810 --> 00:11:36,293 Али, али, али али, али, ово су школски разред магнети са разлогом. 263 00:11:36,293 --> 00:11:39,370 264 00:11:39,370 --> 00:11:43,327 Само је мало теже, у реду? 265 00:11:43,327 --> 00:11:44,160 Има још осам. 266 00:11:44,160 --> 00:11:46,820 267 00:11:46,820 --> 00:11:47,320 У реду. 268 00:11:47,320 --> 00:11:48,486 И шта имамо тамо? 269 00:11:48,486 --> 00:11:51,356 Имамо 32. 270 00:11:51,356 --> 00:11:54,344 Леп. 271 00:11:54,344 --> 00:11:58,610 32, плус 16 даје нам 48-- тако близу. 272 00:11:58,610 --> 00:12:00,390 И диван. 273 00:12:00,390 --> 00:12:02,831 Честитке Давеи, као. 274 00:12:02,831 --> 00:12:05,720 >> [Апплаусе] 275 00:12:05,720 --> 00:12:06,516 >> У реду. 276 00:12:06,516 --> 00:12:09,390 Тако да можемо да урадимо ово цео дан, и не да све то много више 277 00:12:09,390 --> 00:12:10,800 Занимљиво и већи изазов. 278 00:12:10,800 --> 00:12:13,250 Али то је заиста поента како релативно једноставан 279 00:12:13,250 --> 00:12:16,930 то је, на крају крајева, шта је рачунар ради за складиштење података, 280 00:12:16,930 --> 00:12:21,740 за складиштење улаза и на крају складишти или представљају оне излаза. 281 00:12:21,740 --> 00:12:23,750 Али бројеви сами по себи не све то занимљиво. 282 00:12:23,750 --> 00:12:26,069 >> Дакле људи, пре неколико година, одлучио, знаш шта? 283 00:12:26,069 --> 00:12:27,860 Било би лепо ако рачунари нису били само 284 00:12:27,860 --> 00:12:31,030 калкулатори за рачуницом операције, али заправо могао 285 00:12:31,030 --> 00:12:35,209 до ствари као што су обрада текста, или е, или модерније инкарнације 286 00:12:35,209 --> 00:12:36,500 од ове врсте технологије. 287 00:12:36,500 --> 00:12:40,680 И тако је свет одлучио произвољно, али универзално, 288 00:12:40,680 --> 00:12:44,380 да ако желите да сачувате капитала слово А у рачунару, знаш шта? 289 00:12:44,380 --> 00:12:47,730 Хајде да сви слажу да сачувате неки образац нула и онес-- 290 00:12:47,730 --> 00:12:52,422 битс-- да на крају представља децимални број 65. 291 00:12:52,422 --> 00:12:53,630 Само ћемо сви слажу око тога. 292 00:12:53,630 --> 00:12:56,620 >> 66 би представљало Б, 67 би представљало Ц, 293 00:12:56,620 --> 00:13:00,210 и ту је гомиле других образаца нуле и јединице, или темељне бројеви, 294 00:13:00,210 --> 00:13:02,224 која би представљала остала писма и даље. 295 00:13:02,224 --> 00:13:04,390 Па ако некако ментално апсорбују ово за тренутак, 296 00:13:04,390 --> 00:13:10,900 Намерно сам ставио горе од А до И, где Х а 72 и И је 73. 297 00:13:10,900 --> 00:13:15,830 Ако се рачунар тада у контексту програм за обраду текста или е-маил, 298 00:13:15,830 --> 00:13:19,620 открила испод хаубе има ови обрасци битс-- образац 299 00:13:19,620 --> 00:13:22,500 битова који представљају 72, затим 73, затим 33-- 300 00:13:22,500 --> 00:13:26,640 Шта би то могло правописа у том програму? 301 00:13:26,640 --> 00:13:28,150 >> Тако здраво, а затим нешто. 302 00:13:28,150 --> 00:13:31,460 Ми не нужно знати, али заиста 33-- не на графикону еарлиер-- 303 00:13:31,460 --> 00:13:33,170 била само знак узвика. 304 00:13:33,170 --> 00:13:38,870 Дакле, 72 је Х, 73 је сам, 33 деси да буде знак узвика и даље. 305 00:13:38,870 --> 00:13:41,719 Али то је све у реду и добро, и заправо данас, уместо 306 00:13:41,719 --> 00:13:43,760 користите само седам или осам бита, захваљујући нешто 307 00:13:43,760 --> 00:13:46,530 назива Уницоде насупрот у АСЦИИ назад у дан, 308 00:13:46,530 --> 00:13:50,010 ми заправо могу представљати још занимљиви ликови од само 309 00:13:50,010 --> 00:13:52,980 ово оригинални енглески пристрасан писма. 310 00:13:52,980 --> 00:13:56,030 Али исто тако могу представљати још уредније ствари као што су боја. 311 00:13:56,030 --> 00:13:59,750 >> Ако сте икада чули акроним РГБ, црвена, зелена, плава, да 312 00:13:59,750 --> 00:14:03,510 само значи да рачунар обично користи три сета битс-- 313 00:14:03,510 --> 00:14:06,760 неки број битова који представљају број за колико црвена желите, 314 00:14:06,760 --> 00:14:08,940 други сет битова за колико зелено желите, 315 00:14:08,940 --> 00:14:11,430 и други сет број за колико плаво желите. 316 00:14:11,430 --> 00:14:14,457 Тако велики број значи много црвена, мали број значи да нема ред. 317 00:14:14,457 --> 00:14:16,290 Па ово су љубазни од средње вредности овде. 318 00:14:16,290 --> 00:14:20,180 >> Па дај ми мало црвено, дај ми мало зелено, и дај ми мало плаво. 319 00:14:20,180 --> 00:14:24,260 И ако помешате та три нијансе боје заједно, у овом случају, 320 00:14:24,260 --> 00:14:26,850 ти овај мутне нијансу жуте или смеђе. 321 00:14:26,850 --> 00:14:32,330 Али то образац осам, плус осам, плус еигхт-- тако 24 битс-- 322 00:14:32,330 --> 00:14:36,550 лева на десно, како компјутер представљало би тај конкретни боју. 323 00:14:36,550 --> 00:14:38,090 Сада ово је само тачка на екрану. 324 00:14:38,090 --> 00:14:42,230 Ако погледате заиста на дохват ТВ-у своје рачунар, видећете тачке или пиксела. 325 00:14:42,230 --> 00:14:45,420 А ако имате читаву мрежу од пиксела, хоризонтално и вертикално, 326 00:14:45,420 --> 00:14:46,630 имате слике. 327 00:14:46,630 --> 00:14:49,029 А онда ако узмете слика и онда прање 328 00:14:49,029 --> 00:14:52,070 показати себи другу слику, други слика, још слика, други слика, 329 00:14:52,070 --> 00:14:54,760 јако брзо, ви наравно имате филмове. 330 00:14:54,760 --> 00:14:56,109 >> Па видите где смо почели. 331 00:14:56,109 --> 00:14:57,650 Почели смо са овим нула и јединица. 332 00:14:57,650 --> 00:15:00,570 Радили смо одатле у децималне Бројеви, како их представљају. 333 00:15:00,570 --> 00:15:02,070 Сада имамо слова абецеде. 334 00:15:02,070 --> 00:15:05,664 Али у другим контекстима чекати, можемо да користимо још неколико битова и представљају боје. 335 00:15:05,664 --> 00:15:07,830 Чим имају способност да представља боје, 336 00:15:07,830 --> 00:15:11,200 имате могућност да представљају фотографије и Анимирани ГИФ 337 00:15:11,200 --> 00:15:13,780 и други такви ликови на екрану. 338 00:15:13,780 --> 00:15:17,160 И када имате гомилу слике лети човека одједном, 339 00:15:17,160 --> 00:15:21,480 Изгледа да играних филмова, и тако да се видео као добро. 340 00:15:21,480 --> 00:15:23,460 >> Дакле, користећи ово врло једноставне примитиве и ми 341 00:15:23,460 --> 00:15:28,070 имају начин представљања на крају свих ових облика медија. 342 00:15:28,070 --> 00:15:30,450 И ми смо опет захваћене и опет и опет, док не 343 00:15:30,450 --> 00:15:33,467 добити од најнижег нивоа на овом највишем нивоу. 344 00:15:33,467 --> 00:15:35,550 Тако да нам даје ово Основна идеја апстракције. 345 00:15:35,550 --> 00:15:36,990 Али смо почели овде. 346 00:15:36,990 --> 00:15:38,790 >> Ево сада, могли бисмо представљају у компјутеру 347 00:15:38,790 --> 00:15:41,920 наши улаза са нула и јединица, наши резултати у нула и јединица, 348 00:15:41,920 --> 00:15:43,640 али шта се дешава у кутији? 349 00:15:43,640 --> 00:15:46,080 То је место где рачунар наука постаје интересантно. 350 00:15:46,080 --> 00:15:49,770 То је место где заправо донети свој сопствени ум да носе да реше проблеме. 351 00:15:49,770 --> 00:15:52,590 Сада можемо прописати, за Остатак семестра, да. 352 00:15:52,590 --> 00:15:53,870 Знам како бинарне дела. 353 00:15:53,870 --> 00:15:57,942 Сећам се како АСЦИИ или Уницоде-- мапирање на леттерс-- радова. 354 00:15:57,942 --> 00:15:59,650 И свакако стоји да разлог због којег смо 355 00:15:59,650 --> 00:16:03,470 може да представља црвена и зелена и плаво, и представљају мултимедијални као добро. 356 00:16:03,470 --> 00:16:05,390 Али ово је интересантно. 357 00:16:05,390 --> 00:16:09,790 То је оно што некога способне за решавање проблема. 358 00:16:09,790 --> 00:16:11,980 >> И један такав проблем желимо да урадимо, заиста, 359 00:16:11,980 --> 00:16:15,345 изводи присуство, или алгоритмички радим. 360 00:16:15,345 --> 00:16:16,470 И опет, могао бих да урадим ово. 361 00:16:16,470 --> 00:16:19,580 Можда до један, два, три, четири пет, шест, седам, осам девет. 362 00:16:19,580 --> 00:16:21,520 И ја могао да напишем до пратити њега. 363 00:16:21,520 --> 00:16:23,769 Али то је само како бих представљају информације. 364 00:16:23,769 --> 00:16:27,550 Или да то могу фастер-- два, четири, шест, осам, десет, 12, 14, 16, 18, 20, 365 00:16:27,550 --> 00:16:30,380 22-- изгледа као двоструко тако брзо али је и даље 366 00:16:30,380 --> 00:16:32,050 Биће потребно пуно времена. 367 00:16:32,050 --> 00:16:35,990 >> Али испоставило се, ако још увек искористе још ресоурце-- и заиста рачунари 368 00:16:35,990 --> 00:16:38,940 ових дана имају више процесора или мозак. 369 00:16:38,940 --> 00:16:41,970 Испоставило се рачунари могу многе ствари одједном, 370 00:16:41,970 --> 00:16:44,460 и заиста смо, у овој просторији, може представљати управо то. 371 00:16:44,460 --> 00:16:47,130 >> Тако да је мало друштвено чудно, али ако би хумор ми 372 00:16:47,130 --> 00:16:51,550 за само три корака, нека питам све на мјесту само 373 00:16:51,550 --> 00:16:54,640 да устане за тренутак. 374 00:16:54,640 --> 00:16:57,380 Устати. 375 00:16:57,380 --> 00:17:01,580 Тако да у себи, број једног-- тако да свако у овој просторији, 376 00:17:01,580 --> 00:17:05,010 осим људи који нису облиге, мисле број један. 377 00:17:05,010 --> 00:17:06,510 Дакле, то је ваш број сада. 378 00:17:06,510 --> 00:17:09,399 То је први корак, или као компјутерски стручњак или програмер 379 00:17:09,399 --> 00:17:11,827 обично би то, идемо да почне бројање од нуле. 380 00:17:11,827 --> 00:17:14,410 Ако је најмањи број можемо представљају са тим сијалицама 381 00:17:14,410 --> 00:17:17,410 је нула, за само их оставља све офф, могао би и само 382 00:17:17,410 --> 00:17:19,271 почети да броји од нула је уместо једне. 383 00:17:19,271 --> 00:17:21,020 И то је шта компјутерски научници раде. 384 00:17:21,020 --> 00:17:23,750 Тако корак нула, устане и Мислим броја један. 385 00:17:23,750 --> 00:17:26,339 Следећи корак је ово-- пар с неким положаја 386 00:17:26,339 --> 00:17:27,660 и додати бројеве заједно. 387 00:17:27,660 --> 00:17:30,660 388 00:17:30,660 --> 00:17:32,850 Дивно. 389 00:17:32,850 --> 00:17:37,640 >> Дакле, у овом тренутку, буквално свако учешће 390 00:17:37,640 --> 00:17:41,930 размишља о броју 2, изузев за једну особу чудно, ако имамо 391 00:17:41,930 --> 00:17:43,450 непаран број људи у просторији. 392 00:17:43,450 --> 00:17:50,640 А сада трећи корак овде ће се се ово-- од вас треба да седите. 393 00:17:50,640 --> 00:17:54,490 Један од треба сјести, а ако и даље стоји, 394 00:17:54,490 --> 00:17:56,590 вратите се на корак један. 395 00:17:56,590 --> 00:18:44,799 396 00:18:44,799 --> 00:18:45,790 У реду. 397 00:18:45,790 --> 00:19:00,760 398 00:19:00,760 --> 00:19:01,650 У реду. 399 00:19:01,650 --> 00:19:03,880 Дакле све више и више људи треба да се седи. 400 00:19:03,880 --> 00:19:08,280 Обратите пажњу да је ово индукује лооп-- неку врсту циклуса. 401 00:19:08,280 --> 00:19:11,983 Неки од вас би требало да буде незгодно заглавила, иду напред-назад између први корак 402 00:19:11,983 --> 00:19:14,180 и два, један и два, један и два. 403 00:19:14,180 --> 00:19:21,190 404 00:19:21,190 --> 00:19:21,810 То је у реду. 405 00:19:21,810 --> 00:19:22,630 Наш први буба. 406 00:19:22,630 --> 00:19:24,740 Ми ћемо носити са тим. 407 00:19:24,740 --> 00:19:25,320 У реду. 408 00:19:25,320 --> 00:19:27,370 Дозволите ми да покушам да подстакне ствари заједно. 409 00:19:27,370 --> 00:19:31,454 >> У теорији, само једна особа стоји као свако наставља да упарите са. 410 00:19:31,454 --> 00:19:33,870 Али дозволите ми да убрзамо ствари са људима и даље стоји. 411 00:19:33,870 --> 00:19:35,480 Шта број размишљаш? 412 00:19:35,480 --> 00:19:36,070 46. 413 00:19:36,070 --> 00:19:36,570 ОК. 414 00:19:36,570 --> 00:19:37,820 Само напред и седи. 415 00:19:37,820 --> 00:19:39,190 Ви и даље стоји. 416 00:19:39,190 --> 00:19:42,130 Ко је још стоји? 417 00:19:42,130 --> 00:19:45,240 Шта број размишљаш? 418 00:19:45,240 --> 00:19:46,160 ОК. 419 00:19:46,160 --> 00:19:47,900 >> Па ћемо се вратити теби. 420 00:19:47,900 --> 00:19:49,630 У леђа? 421 00:19:49,630 --> 00:19:50,790 Шта је то? 422 00:19:50,790 --> 00:19:53,100 22. 423 00:19:53,100 --> 00:19:56,540 Добро неко горе топ-- да? 424 00:19:56,540 --> 00:19:57,720 34. 425 00:19:57,720 --> 00:19:58,300 ОК. 426 00:19:58,300 --> 00:20:02,780 Овде на мом ригхт-- овде? 427 00:20:02,780 --> 00:20:06,820 132, врло лепо. 428 00:20:06,820 --> 00:20:08,380 22? 429 00:20:08,380 --> 00:20:08,990 >> ОК. 430 00:20:08,990 --> 00:20:10,031 А ко је увек стоји? 431 00:20:10,031 --> 00:20:11,000 Овде? 432 00:20:11,000 --> 00:20:14,520 46, врло лепо. 433 00:20:14,520 --> 00:20:16,890 72. 434 00:20:16,890 --> 00:20:18,220 Ја не могу да зауставе много дуже. 435 00:20:18,220 --> 00:20:20,520 Да? 436 00:20:20,520 --> 00:20:22,490 30, лепо. 437 00:20:22,490 --> 00:20:24,120 Овде? 438 00:20:24,120 --> 00:20:26,200 23? 439 00:20:26,200 --> 00:20:27,270 23. 440 00:20:27,270 --> 00:20:30,920 >> И ја мислим да је то свима осим вама, без притиска. 441 00:20:30,920 --> 00:20:32,860 Чек. 442 00:20:32,860 --> 00:20:33,360 28? 443 00:20:33,360 --> 00:20:37,500 444 00:20:37,500 --> 00:20:38,281 Само осам. 445 00:20:38,281 --> 00:20:38,780 ОК. 446 00:20:38,780 --> 00:20:41,030 Само осам. 447 00:20:41,030 --> 00:20:42,580 Овде? 448 00:20:42,580 --> 00:20:44,570 30. 449 00:20:44,570 --> 00:20:47,344 23. 450 00:20:47,344 --> 00:20:47,843 24. 451 00:20:47,843 --> 00:20:50,810 452 00:20:50,810 --> 00:20:52,310 18. 453 00:20:52,310 --> 00:20:54,690 Ово је најгора примена овог алгоритма икада. 454 00:20:54,690 --> 00:20:55,190 ОК. 455 00:20:55,190 --> 00:20:59,760 Дакле, неко други? 456 00:20:59,760 --> 00:21:00,421 Било ко други? 457 00:21:00,421 --> 00:21:00,920 ОК. 458 00:21:00,920 --> 00:21:03,300 Још једно. 459 00:21:03,300 --> 00:21:04,400 16? 460 00:21:04,400 --> 00:21:04,900 ОК. 461 00:21:04,900 --> 00:21:05,510 16. 462 00:21:05,510 --> 00:21:06,010 У реду. 463 00:21:06,010 --> 00:21:09,070 Дакле, ако нисам пропустио неко у одсјај овде, кад сам ударио Ентер, 464 00:21:09,070 --> 00:21:13,091 ћемо видети, алгоритмички је укупан број људи у Сандерс. 465 00:21:13,091 --> 00:21:16,340 Јер опет, то је као да сви као што је сео, донела свој број са 466 00:21:16,340 --> 00:21:19,215 неком другом, неком другом, неком другом, тако да у теорији, 467 00:21:19,215 --> 00:21:22,304 на крају, само један неспретан Особа треба да се остане на ногама. 468 00:21:22,304 --> 00:21:22,970 Али то је у реду. 469 00:21:22,970 --> 00:21:24,290 убрзала смо ствари ручно. 470 00:21:24,290 --> 00:21:27,590 Посебно је тешко видети у овом простору. 471 00:21:27,590 --> 00:21:34,200 >> А укупан број људи мислимо да ту има је 546. 472 00:21:34,200 --> 00:21:37,330 Укупан број Била сам руку по наставним другова, 473 00:21:37,330 --> 00:21:40,660 Ко је то учинио стари школа спор начин, био је 820. 474 00:21:40,660 --> 00:21:43,660 >> [Лаугхинг] 475 00:21:43,660 --> 00:21:47,170 >> [Апплаусе] 476 00:21:47,170 --> 00:21:48,670 >> То је у реду. 477 00:21:48,670 --> 00:21:50,740 Тако сигурно онда, постоје те бубе. 478 00:21:50,740 --> 00:21:51,460 И то је у реду. 479 00:21:51,460 --> 00:21:53,810 И тако да се на ово први пут нешто 480 00:21:53,810 --> 00:21:55,420 пишете не мора нужно ради. 481 00:21:55,420 --> 00:21:57,620 Ово ми се десило и овде. 482 00:21:57,620 --> 00:22:00,844 Али хајде да сада размотримо како бисмо могли примене ове исту идеју на нешто 483 00:22:00,844 --> 00:22:03,760 сте можда раније, што се ова стара школа технологија овде- 484 00:22:03,760 --> 00:22:05,130 заиста велики телефонски именик. 485 00:22:05,130 --> 00:22:09,380 И претпоставимо да овај именик има 1.000 страница и 1.000 имена 486 00:22:09,380 --> 00:22:11,360 и бројеви абецедном реду унутар њега. 487 00:22:11,360 --> 00:22:14,860 >> Па, могли би некако применити сличан Идеја за овај веома физички проблем, 488 00:22:14,860 --> 00:22:16,270 само ме користи. 489 00:22:16,270 --> 00:22:18,810 Само сам варао ослањајући све вас 490 00:22:18,810 --> 00:22:23,240 са пуно, пуно различитих процесора или мозак извршења неког алгоритма. 491 00:22:23,240 --> 00:22:25,440 Али ако је само мало стари ја, ја и даље могу 492 00:22:25,440 --> 00:22:29,630 искористити ту исту суштину идеје поделе и освајања тај проблем 493 00:22:29,630 --> 00:22:32,970 изнова и изнова, при чему половина од вас, пола од вас, пола вас, пола вас, 494 00:22:32,970 --> 00:22:35,830 теоретски стално седи, док смо остали, теоретски, 495 00:22:35,830 --> 00:22:36,990 само са једном особом. 496 00:22:36,990 --> 00:22:39,810 >> Дакле, у овом старој школи тецхнологи-- ми не 497 00:22:39,810 --> 00:22:43,030 ово треба мап-- ово стара школа технологија, 498 00:22:43,030 --> 00:22:47,300 можемо почети тражити некога Лике Мике Смитх, једну страну у исто време. 499 00:22:47,300 --> 00:22:49,410 И видим да нема, Мајк није овде. 500 00:22:49,410 --> 00:22:51,110 Још увек сам у делу А. 501 00:22:51,110 --> 00:22:53,900 На крају, мислим да ја у делу Б. 502 00:22:53,900 --> 00:22:56,910 А ово је алгоритхм-- корак-по-корак упутства. 503 00:22:56,910 --> 00:22:59,890 Старт на почетку и једну страницу истовремено, тражити Мајк Смит. 504 00:22:59,890 --> 00:23:03,410 Да ли је ово цоррецт-- ово алгоритам или приступ? 505 00:23:03,410 --> 00:23:04,550 >> Да, то је тачно. 506 00:23:04,550 --> 00:23:06,840 Ако Мајк је овде, на крају Ја ћу доћи до њега. 507 00:23:06,840 --> 00:23:08,139 Али то није ефикасна. 508 00:23:08,139 --> 00:23:09,180 То је очигледно веома споро. 509 00:23:09,180 --> 00:23:11,340 Тако да могу да појачају Исти твосиес прићи. 510 00:23:11,340 --> 00:23:15,350 Ја могу врсту два, четири, шест, осам, 10, 12. 511 00:23:15,350 --> 00:23:16,330 То је дупло брже. 512 00:23:16,330 --> 00:23:18,290 Идем да стигнем до Мике брже ако је тамо. 513 00:23:18,290 --> 00:23:20,770 Да ли је тачно? 514 00:23:20,770 --> 00:23:22,320 Да, али сам чуо мало-- Но. 515 00:23:22,320 --> 00:23:24,200 Сада сам чуо А бр. 516 00:23:24,200 --> 00:23:24,700 Да. 517 00:23:24,700 --> 00:23:26,190 Тамо је буба потенцијално. 518 00:23:26,190 --> 00:23:29,374 Можда је Мајк само случајно постаје у сендвичу између две стране, 519 00:23:29,374 --> 00:23:31,290 јер ја летим кроз ово двоје у исто време. 520 00:23:31,290 --> 00:23:33,580 Па макар нам треба неки врста условног фик. 521 00:23:33,580 --> 00:23:35,330 Морам да кажем, хеј, ако сам погодио некога чије 522 00:23:35,330 --> 00:23:39,190 име почиње са Т уместо С, Боље да поново врате барем једну страну. 523 00:23:39,190 --> 00:23:40,767 Тако луд на почетку, али поправити. 524 00:23:40,767 --> 00:23:43,850 Али нико од нас неће тражити Мајк Смит преко 1.000 страница телефона а 525 00:23:43,850 --> 00:23:45,290 наручити једну страну у једном тренутку. 526 00:23:45,290 --> 00:23:48,486 Шта је то нормална особа да уради? 527 00:23:48,486 --> 00:23:50,860 Ти ћеш ићи на С-их, кад би знао где је С. 528 00:23:50,860 --> 00:23:54,230 Можда иду отприлике на средини или благо нагиње према крају. 529 00:23:54,230 --> 00:23:56,850 И погледам доле и Ја сам у делу М. 530 00:23:56,850 --> 00:23:58,952 Али, шта знаш о овом проблему сада, 531 00:23:58,952 --> 00:24:02,160 да нисмо нужно знати прије са свима нама само се броји 532 00:24:02,160 --> 00:24:03,030 еквивалентно? 533 00:24:03,030 --> 00:24:06,010 Па, Мајк је јасно иде бити у овом полувремену књиге 534 00:24:06,010 --> 00:24:07,920 ако је уопште овде јер је то решено. 535 00:24:07,920 --> 00:24:10,160 >> Па можете врло драматицалли-- 536 00:24:10,160 --> 00:24:11,250 >> [Дахтање] 537 00:24:11,250 --> 00:24:12,300 >> Знам. 538 00:24:12,300 --> 00:24:16,940 >> [Апплаусе] 539 00:24:16,940 --> 00:24:19,450 >> Заправо је веома лако ако Ви то низ кичму тамо. 540 00:24:19,450 --> 00:24:22,070 Али онда се бацити половина проблема у гостима. 541 00:24:22,070 --> 00:24:25,950 Сада, ја сам остао исти мали проблем наћи Мике Смитх у телефону боок-- 542 00:24:25,950 --> 00:24:29,610 али сада је именик почиње у М и иде до З, али је пола тако велика. 543 00:24:29,610 --> 00:24:30,890 >> Али то је оно што је импресивно. 544 00:24:30,890 --> 00:24:34,170 Баш као у теорији, ви, када сви седе само пола истовремено, 545 00:24:34,170 --> 00:24:37,150 проблем има упола велик, упола велик, опет и опет. 546 00:24:37,150 --> 00:24:40,260 Тако је овај проблем постао Исти проблем, али упола велик. 547 00:24:40,260 --> 00:24:42,670 Сада је проблем 250 страница. 548 00:24:42,670 --> 00:24:45,340 Чим сам схватио, ох, у делу Т случајно. 549 00:24:45,340 --> 00:24:46,590 Ја сам отишао предалеко. 550 00:24:46,590 --> 00:24:48,500 Могу да баци пола именика далеко. 551 00:24:48,500 --> 00:24:50,410 Сада, ја сам своди на четвртина проблема. 552 00:24:50,410 --> 00:24:53,910 >> И можете да поновите, поновити, поновите поступак док, у теорији, ви сте 553 00:24:53,910 --> 00:24:55,460 остаје само једна страница. 554 00:24:55,460 --> 00:24:59,010 А ако Мике је на тој страници, Сада могу да реше овај проблем. 555 00:24:59,010 --> 00:25:00,810 Али како брзо сам га решити? 556 00:25:00,810 --> 00:25:05,420 У првом случају, то ми је као можда 1.000 кораке да се пронађу Мике Смитх. 557 00:25:05,420 --> 00:25:09,260 Можда је узети мене-- Узео сам телефонског именика 558 00:25:09,260 --> 00:25:11,440 и почео да тражим једна страна у једном тренутку, 559 00:25:11,440 --> 00:25:13,480 и Мајк може бити 1.000 страница касније. 560 00:25:13,480 --> 00:25:16,020 >> Други приступ можда води ме 500 корака, 561 00:25:16,020 --> 00:25:17,960 јер Летим кроз два у једном тренутку. 562 00:25:17,960 --> 00:25:21,082 И трећи приступ, иако, то је посебно моћан. 563 00:25:21,082 --> 00:25:23,790 Али, хајде да размотримо шта ми заправо радио са овим трећим приступом. 564 00:25:23,790 --> 00:25:27,590 Ја ћу исто што ћу назвати само ово изјаве овде, један по један. 565 00:25:27,590 --> 00:25:28,560 Покупити телефонски именик. 566 00:25:28,560 --> 00:25:30,130 Отворите на средини телефонском именику. 567 00:25:30,130 --> 00:25:31,419 Погледајте имена. 568 00:25:31,419 --> 00:25:33,960 И онда ствари постају мало више интелектуално занимљива, 569 00:25:33,960 --> 00:25:35,170 ако још увек једноставно. 570 00:25:35,170 --> 00:25:38,350 Ако Смитх је међу имена на тренутне стране, 571 00:25:38,350 --> 00:25:40,170 онда нешто условно. 572 00:25:40,170 --> 00:25:41,840 То је као раскршћу. 573 00:25:41,840 --> 00:25:42,660 Цалл Мике. 574 00:25:42,660 --> 00:25:44,930 Ако Мајк је међу именима на тој страници, зове Мике. 575 00:25:44,930 --> 00:25:49,720 Али само до линије четири ако линија дрво, ако хоћете, је истина. 576 00:25:49,720 --> 00:25:51,590 Одговор на то питање је да. 577 00:25:51,590 --> 00:25:55,520 >> Иф Смит је раније у боок-- Другим речима, ако сам у делу М 578 00:25:55,520 --> 00:25:58,540 и ја тражим некога да лева, онда шта да радим 579 00:25:58,540 --> 00:26:00,300 је нешто врло слично. 580 00:26:00,300 --> 00:26:03,440 Онда би требало отворити у средини на левој половини књиге. 581 00:26:03,440 --> 00:26:07,930 Онда иди лево, а затим вратите се на корак два. 582 00:26:07,930 --> 00:26:09,290 Погледајте имена тамо. 583 00:26:09,290 --> 00:26:12,779 >> Другим речима, раде исту ствар, али проблем који је преполовљен. 584 00:26:12,779 --> 00:26:13,570 Знаш шта још? 585 00:26:13,570 --> 00:26:16,470 Ако Смитх је касније у књизи базиран на страници гледам, 586 00:26:16,470 --> 00:26:18,790 отворен на средини десна половина књиге 587 00:26:18,790 --> 00:26:22,050 и онда се опет на корак два, елсе-- 588 00:26:22,050 --> 00:26:24,000 постоји четврта могућност овде. 589 00:26:24,000 --> 00:26:28,830 Мике је било овде или на лево или десно или не постоји. 590 00:26:28,830 --> 00:26:30,570 И овде се боље размотримо ово. 591 00:26:30,570 --> 00:26:33,360 И у ствари, ако сте икада имали рачунар само срушити на вас, 592 00:26:33,360 --> 00:26:36,822 да је понекад, али не увек, Резултат свега људског програмер не 593 00:26:36,822 --> 00:26:39,280 реализације, о пуцати, ту је Заправо ово четврти сценарио. 594 00:26:39,280 --> 00:26:41,650 А ако не писање кода за руковање тај сценарио, 595 00:26:41,650 --> 00:26:43,220 Понекад не знаш шта је компјутер могао да уради. 596 00:26:43,220 --> 00:26:44,770 И заиста програм може срушити. 597 00:26:44,770 --> 00:26:47,550 >> Али у овом случају, мислио сам о томе, а ја сам рекао, још отказ, 598 00:26:47,550 --> 00:26:49,850 јер је то четврти логично могући сценарио. 599 00:26:49,850 --> 00:26:51,950 Сада, само додати неки речник тако да 600 00:26:51,950 --> 00:26:55,320 може да почне да баци око термина који иначе прилично једноставно. 601 00:26:55,320 --> 00:26:57,870 Све ствари које сам управо истакнут жутом бојом овде, 602 00:26:57,870 --> 00:27:00,140 Само ћу до Функције и процедуре. 603 00:27:00,140 --> 00:27:01,590 Они су некако акција. 604 00:27:01,590 --> 00:27:04,900 Тако покупити, отворени за гледати у, позовите, отвори, 605 00:27:04,900 --> 00:27:09,170 куит-- то су само акције, или ћемо зови их више формално, функције. 606 00:27:09,170 --> 00:27:11,410 >> У међувремену, сада у жуто, Ја сам истакао ствари 607 00:27:11,410 --> 00:27:14,084 да-- да почнемо зове им услови или гране. 608 00:27:14,084 --> 00:27:16,750 Ово су доносиоци тачке где можда ићи овим путем, на овај начин, 609 00:27:16,750 --> 00:27:18,100 или неки други правац и даље. 610 00:27:18,100 --> 00:27:19,430 Дакле, то ће бити услови. 611 00:27:19,430 --> 00:27:20,930 А сада ово је мало одгајивача. 612 00:27:20,930 --> 00:27:24,600 Назовимо ова питања Боолеан изрази, 613 00:27:24,600 --> 00:27:26,530 после неког са презименом БооЛ. 614 00:27:26,530 --> 00:27:28,340 >> И Булова израз је само нешто 615 00:27:28,340 --> 00:27:30,290 То је било тачно или нетачно, да или не. 616 00:27:30,290 --> 00:27:35,870 Дакле, то је питање чији одговор те стало, како би у стању 617 00:27:35,870 --> 00:27:39,210 направи децисион-- се врати одговор, и онда идите лево или десно, или нешто 618 00:27:39,210 --> 00:27:40,450 друго заједно. 619 00:27:40,450 --> 00:27:42,860 >> И онда на крају, ово Линије овде- вратити 620 00:27:42,860 --> 00:27:44,737 на корак два, вратим на корак два-- смо могли 621 00:27:44,737 --> 00:27:46,320 спроведе ову идеју на различите начине. 622 00:27:46,320 --> 00:27:49,028 И онда оне са програмирање искуство може да уради 623 00:27:49,028 --> 00:27:50,670 или могу замислити другачије ради ово. 624 00:27:50,670 --> 00:27:53,170 Али за данашње потребе, то је само идеја је важно. 625 00:27:53,170 --> 00:27:55,400 Ово изазивање оно ми углавном Зваћу 626 00:27:55,400 --> 00:28:00,110 лооп-- неку врсту циклуса, јер То ме поново урадим нешто. 627 00:28:00,110 --> 00:28:03,340 >> Дакле, сада, хајде да размотримо колико је добар алгоритам је. 628 00:28:03,340 --> 00:28:03,899 Тачно је. 629 00:28:03,899 --> 00:28:06,940 Ако Мајк је у књизи, то је један од та четири сценариос-- опет и опет 630 00:28:06,940 --> 00:28:08,023 и опет ћемо га наћи. 631 00:28:08,023 --> 00:28:08,890 Али колико је добар? 632 00:28:08,890 --> 00:28:10,150 Па, ми немамо бити превише формалан. 633 00:28:10,150 --> 00:28:12,066 Али хајде да земљиште нешто, к и и, да 634 00:28:12,066 --> 00:28:14,470 осећај облика овог проблема. 635 00:28:14,470 --> 00:28:17,160 >> На к-оси овде је величине мој проблем. 636 00:28:17,160 --> 00:28:20,256 И они И-оса овде ће бити време да се реши. 637 00:28:20,256 --> 00:28:21,630 Дакле, можда је број страница. 638 00:28:21,630 --> 00:28:24,400 Можда је ово секунди или страна томе, ко како год. 639 00:28:24,400 --> 00:28:27,290 Међутим желите да рачуна је шта ова слика ће представљати. 640 00:28:27,290 --> 00:28:30,630 И то прво алгоритам, идем описати само као праву линију. 641 00:28:30,630 --> 00:28:33,120 Ако постоји н странице у телефонски именик, онда 642 00:28:33,120 --> 00:28:36,010 Можда ме чак као н кораке да пронађу Мике. 643 00:28:36,010 --> 00:28:38,930 Ако Спринт или телефон компанија додаје још једну страницу наредне године, 644 00:28:38,930 --> 00:28:42,170 можда ми се још једна степ-- још једна јединица времена да нађу Мике. 645 00:28:42,170 --> 00:28:44,230 Тако да је само овај на један однос. 646 00:28:44,230 --> 00:28:45,970 То је права линија нагиб. 647 00:28:45,970 --> 00:28:49,110 >> У међувремену, тај други алгоритхм-- ако сам 648 00:28:49,110 --> 00:28:51,570 иде два на времена-- готово два, четири, шест, осам, или доубле-- 649 00:28:51,570 --> 00:28:54,550 пролази кроз странице два пута истовремено, две одједанпут, 650 00:28:54,550 --> 00:28:55,710 ипак је права линија. 651 00:28:55,710 --> 00:28:58,720 Сада постоји један до два однос, али само мало ниже. 652 00:28:58,720 --> 00:29:02,240 Па ако има оволико страница на графикону овде у жуто, 653 00:29:02,240 --> 00:29:04,800 да би ми се ово много корака или секунди, 654 00:29:04,800 --> 00:29:07,980 иначе ће ме одвести двоструко више на црвену линију. 655 00:29:07,980 --> 00:29:10,190 >> Али зелена линија је права понети. 656 00:29:10,190 --> 00:29:12,290 То је оно што обично позвати логоритхм-- дневник 657 00:29:12,290 --> 00:29:13,840 од н, где је н број страница. 658 00:29:13,840 --> 00:29:16,450 Али то је облик који битно данас, јер немамо 659 00:29:16,450 --> 00:29:17,950 чак и размишљати о цртања бодова. 660 00:29:17,950 --> 00:29:19,830 >> Размислите о екстремном сценарију. 661 00:29:19,830 --> 00:29:23,070 Претпоставимо Спринт сутра удвостручује број страница у тој именику, 662 00:29:23,070 --> 00:29:24,900 од 1.000 до 2.000. 663 00:29:24,900 --> 00:29:28,440 У првој алгоритму, И Можда трошити додатни 1,000 664 00:29:28,440 --> 00:29:32,080 кораци у потрази за Мике, само зато што Спринт удвостручио величину књиге. 665 00:29:32,080 --> 00:29:34,740 Други алгоритхм-- Ит Мигхт таке ме додатних 500 корака. 666 00:29:34,740 --> 00:29:38,370 1.000 више страница, идем и два за једном-- 500 више корака да се пронађе Мике. 667 00:29:38,370 --> 00:29:41,020 >> Али то трећи алгоритам је некако магично. 668 00:29:41,020 --> 00:29:44,270 Спринт удвостручује број страница од 1.000 до 2.000, 669 00:29:44,270 --> 00:29:47,730 Али колико још корака ради то ме тражити Мике? 670 00:29:47,730 --> 00:29:51,220 То је само један, јер могу само теар телефонском именику још једном 671 00:29:51,220 --> 00:29:55,280 од 2.000 страници проблем на 1.000 страна проблема, и воила. 672 00:29:55,280 --> 00:29:57,030 Узео сам огроман залогај од тога. 673 00:29:57,030 --> 00:29:59,405 >> И ако заиста екстремно, Претпостављам да именика 674 00:29:59,405 --> 00:30:03,600 Компанија је имала нешто лудо као 4 милијарде страница телефонског именика. 675 00:30:03,600 --> 00:30:07,020 Па колико корака може да потраје да пронађе Мике Смитх у 4 милијарде 676 00:30:07,020 --> 00:30:09,990 страна телефонски именик? 677 00:30:09,990 --> 00:30:16,450 То је велики број, али само 4 милијарде до 2 милијарде до 1 милијарде до 500 милиона, 678 00:30:16,450 --> 00:30:18,720 250 милиона-- даље Звучи као великом броју, 679 00:30:18,720 --> 00:30:20,980 али сам врло брзо узимајући у мањим вредностима. 680 00:30:20,980 --> 00:30:24,790 >> И, у ствари, ако ја математика Добро, само могу поделити 4 милијарде 681 00:30:24,790 --> 00:30:28,750 од око 32 пута пре Ја се своди на један. 682 00:30:28,750 --> 00:30:31,640 Дакле, ако је то телефонског именика су 4 дуго милијарди страница, није велика ствар. 683 00:30:31,640 --> 00:30:35,270 У року од неколико секунди, можда 32 секунде, могао бих га поделити на пола 684 00:30:35,270 --> 00:30:39,560 и на крају наћи Мике или закључити да он није ту. 685 00:30:39,560 --> 00:30:42,219 И то је суштина алгоритхм-- добар алгоритам. 686 00:30:42,219 --> 00:30:44,260 И то је један од циљеви класе као што је ова, 687 00:30:44,260 --> 00:30:47,350 покушава да схватим како радим реши проблем не само исправно, 688 00:30:47,350 --> 00:30:52,360 као што сам увек знао како да то урадите нешто страна на једном-- али исправно и добро. 689 00:30:52,360 --> 00:30:55,034 Како да дизајн добро решења за проблеме? 690 00:30:55,034 --> 00:30:57,200 Па да на тренутак овде и дати вам осећај сада 691 00:30:57,200 --> 00:31:00,260 од ЦС50 курс итселф-- увести особље а неколико наравно с. 692 00:31:00,260 --> 00:31:02,010 Непосредно пре 2:00, ми ћемо кратку паузу 693 00:31:02,010 --> 00:31:03,520 тако да они од вас који купују се 694 00:31:03,520 --> 00:31:05,130 ишуњамо и да га погледај неку другу класу 695 00:31:05,130 --> 00:31:06,580 и гледа остатак овог онлине. 696 00:31:06,580 --> 00:31:09,250 Али за сада, дозволите ми да представим ЦС50, сама класа, 697 00:31:09,250 --> 00:31:11,330 а нарочито оно што је ново. 698 00:31:11,330 --> 00:31:13,960 >> Тако је прошлог пролећа, ми провели доста од једном-- 699 00:31:13,960 --> 00:31:17,911 особље курса и Ја размишљам о томе шта је то што ми желимо ЦС50 да буде, 700 00:31:17,911 --> 00:31:19,910 и да се вратимо на прво принципи, да тако кажем, 701 00:31:19,910 --> 00:31:22,760 да размотримо шта је то што желимо овај курс да изгледа као и да 702 00:31:22,760 --> 00:31:23,740 као својим студентима. 703 00:31:23,740 --> 00:31:26,480 Па ћете видети у проблему сет нула као, позив 704 00:31:26,480 --> 00:31:28,780 да се погледам УРЛ адреса који сумира 705 00:31:28,780 --> 00:31:33,270 неки од мотива који стоје иза након карактеристика пада 2016. 706 00:31:33,270 --> 00:31:35,570 >> Дакле, као што сте можда прикупити из ТЛ: ДР скрипту, 707 00:31:35,570 --> 00:31:39,060 је програм данас, као и од каталог Наравно, ове године у ЦС50, 708 00:31:39,060 --> 00:31:42,540 Ви само се очекује да присуствују данас-- тако посао добро доне-- 709 00:31:42,540 --> 00:31:45,960 а последњи предавање 21. новембра. 710 00:31:45,960 --> 00:31:49,150 А ти си добродошао, али не очекује да ће присуствује тим предавањима у средини, 711 00:31:49,150 --> 00:31:51,180 јер оно што радимо Ове године, снима 712 00:31:51,180 --> 00:31:52,661 у реалном времену материјала курса је. 713 00:31:52,661 --> 00:31:54,660 Дакле, све ће остати струја и инкорпорирани 714 00:31:54,660 --> 00:31:57,410 најбоље што можеш-- актуелна дешавања и разговоре који људи би могло 715 00:31:57,410 --> 00:32:00,400 да се, имајући у индустрији у свет, али што тај материјал 716 00:32:00,400 --> 00:32:03,892 доступан, као резултат, чак еарлиер-- заједно са пуним текстом транскрипте 717 00:32:03,892 --> 00:32:05,850 и сеарцхабилити и линкови ка другим ресурсима. 718 00:32:05,850 --> 00:32:07,930 >> И заиста, били смо тврдећи неко време 719 00:32:07,930 --> 00:32:10,830 и сада могу да верујем, да можемо створити, дигитално, 720 00:32:10,830 --> 00:32:15,170 Више импресивно, а више убедљив искуство образовни, за разлику 721 00:32:15,170 --> 00:32:19,110 за прикупљање овде неке 23 пута лично, чује неко као ја 722 00:32:19,110 --> 00:32:22,925 једноставно говорити о компјутерске науке, за разлику од ангажовање активније. 723 00:32:22,925 --> 00:32:25,800 Тако ћете видети у програму току је скица семестра овде, 724 00:32:25,800 --> 00:32:27,840 уз када предавања ће бити снимљен, на којој сте 725 00:32:27,840 --> 00:32:29,710 добродошао, али не очекује, и када хоће 726 00:32:29,710 --> 00:32:31,640 бити објављен на сајту курса је. 727 00:32:31,640 --> 00:32:34,300 >> А шта ћемо урадити овде Средом већ наредне недеље, 728 00:32:34,300 --> 00:32:37,362 је много интимније, са само они људи који желе да учествују, 729 00:32:37,362 --> 00:32:39,820 је такозвани шетња кроз, где сам и главе току је 730 00:32:39,820 --> 00:32:41,730 ће заправо чине ствари мало интимније 731 00:32:41,730 --> 00:32:44,313 овде у оркестру секција, још увек имају неку технологију 732 00:32:44,313 --> 00:32:46,365 и хода кроз Недељу проблем скуп, 733 00:32:46,365 --> 00:32:50,020 и понудити партицуларли-- ако међу оне мање цомфортабле-- све више 734 00:32:50,020 --> 00:32:52,790 смернице које можда ћете желети или треба за недељу дана изазова. 735 00:32:52,790 --> 00:32:55,820 И слично, за оне који не могу присуствују они лично, није велика ствар. 736 00:32:55,820 --> 00:32:58,486 Ту ће бити слично на челу један од виших службеника курса је, 737 00:32:58,486 --> 00:33:02,650 Замалиа, иста прилика ембеддед у проблему поставља се. 738 00:33:02,650 --> 00:33:04,960 >> Проблем поставља ове године ће бити објављен у петак 739 00:33:04,960 --> 00:33:08,080 и више не седам дана касније, али 10 дана латер-- намерно 740 00:33:08,080 --> 00:33:10,910 преклапање са сваким проблемом сет, како би се боље прими, 741 00:33:10,910 --> 00:33:13,050 надамо се, плима и осека у распоред ученика, 742 00:33:13,050 --> 00:33:16,550 посебно када испити или атлетика или академици или додатних планова 743 00:33:16,550 --> 00:33:18,465 имају тенденцију да долазе и одлазе посебно средином семестра. 744 00:33:18,465 --> 00:33:21,340 То би требало да ти дам мало више дискреционо право да ли ти предњи 745 00:33:21,340 --> 00:33:25,690 учитати недељу са ЦС50 или назад оптерећења га на наредног викенда уместо. 746 00:33:25,690 --> 00:33:28,817 Зато погледајте на програму у току је овде за распоред истих. 747 00:33:28,817 --> 00:33:30,900 А ви ћете такође међу приметити промене ове године, 748 00:33:30,900 --> 00:33:34,082 за оне који боље познају програмирање у прошлости, 749 00:33:34,082 --> 00:33:36,290 почећемо семестар као ми ћемо данас у Сцратцх, 750 00:33:36,290 --> 00:33:39,730 фокусирати посебно на језику зове Ц, а онда транзицију не 751 00:33:39,730 --> 00:33:43,430 за ПХП, али на језику који се зове Питхон крајем семестра 752 00:33:43,430 --> 00:33:46,565 у контексту веб програмирање, заједно са СКЛ и ЈаваСцрипт, 753 00:33:46,565 --> 00:33:48,930 ХТМЛ, ЦСС, и још више. 754 00:33:48,930 --> 00:33:51,790 >> А у одговору на ФАК, то заиста није случај 755 00:33:51,790 --> 00:33:55,520 да ЦС није тако страшно као што сам некада мислили да је, али то је као много посла 756 00:33:55,520 --> 00:33:57,280 као што сам чуо да би могло бити. 757 00:33:57,280 --> 00:34:03,210 Али ово је рецимо да ево неких Статистика од јесени 2015. студентског тела, 758 00:34:03,210 --> 00:34:06,460 при чему хоризонталне плаве линије представљају просечан број сати 759 00:34:06,460 --> 00:34:06,960 пријавио. 760 00:34:06,960 --> 00:34:10,570 И видећете у просеку од шест до 10 до 12-- можда 16 761 00:34:10,570 --> 00:34:14,580 или тако и тако даље, али са Висок варијације да буде јасно. 762 00:34:14,580 --> 00:34:18,570 Па схватити да не постоји само студенти удобније и мање 763 00:34:18,570 --> 00:34:22,150 удобно у току, али одговарајући подршка 764 00:34:22,150 --> 00:34:25,699 структура да се ове студенте кроз семестра успешно. 765 00:34:25,699 --> 00:34:29,409 >> Заиста, у одговору на ФАК, треба узмете ЦС50 као првој години? 766 00:34:29,409 --> 00:34:30,139 Апсолутно. 767 00:34:30,139 --> 00:34:32,690 И у ствари, не жалим не нашавши свој пут 768 00:34:32,690 --> 00:34:35,170 или је нашао ново поље да прва година као добро. 769 00:34:35,170 --> 00:34:39,149 И треба да се ЦС50 са други предмети, сигурно као па-- 770 00:34:39,149 --> 00:34:41,940 и општи савет бисмо могли дати студентима, који ЦС50 је вероватно 771 00:34:41,940 --> 00:34:44,929 није она врста класе или интро класе да би требало да се са три 772 00:34:44,929 --> 00:34:47,199 други или четири класе п-сет. 773 00:34:47,199 --> 00:34:50,583 Али ако узимате два друга п-сет класе, нешто друго, и ЦС50, 774 00:34:50,583 --> 00:34:51,499 апсолутно контролисати. 775 00:34:51,499 --> 00:34:54,900 Имао сам много ученика у поред урадили прилично успешно. 776 00:34:54,900 --> 00:34:57,490 >> И да те ка да завршити линију успешно, 777 00:34:57,490 --> 00:35:00,260 да ли је курс има сецтионс-- различите стазе за студенте 778 00:35:00,260 --> 00:35:03,100 мање удобан, удобније, и негде између, 779 00:35:03,100 --> 00:35:04,850 при чему у току је Први проблем скуп, 780 00:35:04,850 --> 00:35:06,360 вас ће се тражити да се опише. 781 00:35:06,360 --> 00:35:09,151 А ако сте међу онима који су мање удобан, то је једна од оних ствари 782 00:35:09,151 --> 00:35:10,420 да само прилично познато. 783 00:35:10,420 --> 00:35:13,010 И заиста, то је био расте демографију у ЦС50 784 00:35:13,010 --> 00:35:14,090 за прилично неколико година. 785 00:35:14,090 --> 00:35:17,680 >> Од прошле јесени за пример, 58% класе 786 00:35:17,680 --> 00:35:20,560 описао себе као међу онима који су мање удобан, 787 00:35:20,560 --> 00:35:23,210 са 9% међу онима више удобан, а онда 788 00:35:23,210 --> 00:35:25,900 остали студенти тамо у црвена описујући себе 789 00:35:25,900 --> 00:35:27,890 као негде између. 790 00:35:27,890 --> 00:35:31,980 И видећете овде на теме укупна и распоред секција, од којих су сви 791 00:35:31,980 --> 00:35:34,820 нуде лично, у у реалном времену, са курса је 792 00:35:34,820 --> 00:35:38,320 невероватно особље наставе стипендиста и наравно помоћници, од којих су неки 793 00:35:38,320 --> 00:35:39,660 ћете срести у само тренутак. 794 00:35:39,660 --> 00:35:42,993 >> Секције се, као што ћете видети, Вилл бити Понедељком и уторком и средом, 795 00:35:42,993 --> 00:35:45,910 како би се омогућило да зарони после ангажовања, ако ти тако 796 00:35:45,910 --> 00:35:48,110 изабрати, у току је предавање раније те недеље. 797 00:35:48,110 --> 00:35:51,420 А затим радно време, које Свакако, са сваком годином, 798 00:35:51,420 --> 00:35:54,110 сада није било а мање изазов за курс. 799 00:35:54,110 --> 00:35:57,040 И ове године, ми планирамо да само да држи канцеларија хоурс-- један 800 00:35:57,040 --> 00:36:00,300 на једној могућности за помоћ за студенти средом четвртком 801 00:36:00,300 --> 00:36:03,790 и недељом, последњи од њих је у поподневним сатима по дизајну 802 00:36:03,790 --> 00:36:06,910 смањити неке од стреса који увек се јавља код касно у ноћ 803 00:36:06,910 --> 00:36:10,180 П-сетттинг са роком лооминг-- али радно време ће бити понуђен 804 00:36:10,180 --> 00:36:14,920 понедељком и уторком и Средом и петком и суботом, 805 00:36:14,920 --> 00:36:17,080 захваљујући нашим пријатељима у ХСА. 806 00:36:17,080 --> 00:36:20,330 >> ЦС50 сада има сопствени простор за студенте и запослене ЦС50, 807 00:36:20,330 --> 00:36:23,070 на врху 67 Моунт Аубурн Стреет, тамо у Харвард тргу. 808 00:36:23,070 --> 00:36:26,340 Визија за то је да ЦС50 је Поздрав и ЦАС током недеље, 809 00:36:26,340 --> 00:36:29,052 прилично током већег дана ће бити ту за подршку. 810 00:36:29,052 --> 00:36:30,760 Дакле, ако имате неки Питање на п-сет 811 00:36:30,760 --> 00:36:33,093 или се осећате помало блокиран или мало збуњен, 812 00:36:33,093 --> 00:36:35,640 и ђавола, ви имате један сат или пола сата између класа, 813 00:36:35,640 --> 00:36:38,920 посебно у скуаре-- можете да поп у и имају то питање одговорио 814 00:36:38,920 --> 00:36:41,720 да имам ту конфузију цларифиед-- веома у духу, 815 00:36:41,720 --> 00:36:45,490 Ви сте упознати, од математике одељења сопствене математике питања центар, 816 00:36:45,490 --> 00:36:49,300 али прилично око сат по [? Гцал?] Да ћемо постављати на мрежи. 817 00:36:49,300 --> 00:36:52,400 >> Часова је такође доступан за оне студената, слободно са курса је 818 00:36:52,400 --> 00:36:54,750 властити особље ако желите више интимна један на један, 819 00:36:54,750 --> 00:36:58,940 или само два или три колеге, ради са једним од чланова особља курса је. 820 00:36:58,940 --> 00:37:02,320 И заиста, ово овде су само неки од чланова особља курса је, 821 00:37:02,320 --> 00:37:04,120 неке од кога ви ћете састају у само тренутак. 822 00:37:04,120 --> 00:37:07,440 У ствари, ЦС50 сопствене глава демонстратор, 823 00:37:07,440 --> 00:37:09,790 и глава курс асистент, и прецептор, 824 00:37:09,790 --> 00:37:12,998 може доћи на горе, дозволити да кажу здраво. 825 00:37:12,998 --> 00:37:22,498 >> [Апплаусе] 826 00:37:22,498 --> 00:37:23,456 ГЛАС 1: [неразумљиво]. 827 00:37:23,456 --> 00:37:51,842 828 00:37:51,842 --> 00:37:57,856 >> [Апплаусе] 829 00:37:57,856 --> 00:37:58,814 ГЛАС 2: [неразумљиво]. 830 00:37:58,814 --> 00:38:17,240 831 00:38:17,240 --> 00:38:27,238 >> [Апплаусе] 832 00:38:27,238 --> 00:38:28,196 Звучник 3: [неразумљиво]. 833 00:38:28,196 --> 00:38:58,951 834 00:38:58,951 --> 00:39:03,120 >> [Апплаусе] 835 00:39:03,120 --> 00:39:06,740 >> Давид Малан: И дозволите нам да унесем на брод два од ЦС50 је највише 836 00:39:06,740 --> 00:39:09,730 виши особље, Роб и Замаила као добро. 837 00:39:09,730 --> 00:39:15,120 >> [Апплаусе] 838 00:39:15,120 --> 00:39:17,226 >> Заиста, како Роб и Замаила су са нама 839 00:39:17,226 --> 00:39:19,940 толико дуго, да сам био у стању да се у ЦС50 архиви 840 00:39:19,940 --> 00:39:22,470 и да је ово веома СД снимак од њих учествује 841 00:39:22,470 --> 00:39:25,402 на себе бини пре неколико година. 842 00:39:25,402 --> 00:39:26,110 Роб: [неразумљиво]. 843 00:39:26,110 --> 00:39:53,660 844 00:39:53,660 --> 00:39:59,247 >> [Апплаусе] 845 00:39:59,247 --> 00:40:00,080 ЗАМАИЛА: [неразумљиво] 846 00:40:00,080 --> 00:40:50,888 847 00:40:50,888 --> 00:40:52,467 >> [Апплаусе] 848 00:40:52,467 --> 00:40:53,425 Давид Малан: Хвала. 849 00:40:53,425 --> 00:40:56,160 850 00:40:56,160 --> 00:40:58,030 Дакле, поред ових чланови тима овде, 851 00:40:58,030 --> 00:41:01,662 ЦС50 има тим од скоро 100 запослених, од којих сви 852 00:41:01,662 --> 00:41:04,370 ће бити доступан за секције и радно време и још много тога. 853 00:41:04,370 --> 00:41:06,920 И као Роб такође каже, ово је најзначајнији ремонт 854 00:41:06,920 --> 00:41:09,534 од ЦС50 у 10 година да Био сам у [неразумљиво]. 855 00:41:09,534 --> 00:41:12,200 [Неразумљиво] фокусиран посебно у пружању структуре подршке, 856 00:41:12,200 --> 00:41:14,050 обрезивање далеко доста већина која је била 857 00:41:14,050 --> 00:41:16,870 картон за 10 година од итеративни развој 858 00:41:16,870 --> 00:41:18,120 на проблем поставе току је. 859 00:41:18,120 --> 00:41:21,470 >> Дакле, ове године, не само у класи, али такође у облику проблема курса је 860 00:41:21,470 --> 00:41:24,800 гарнитуре, треба да пронађете ствари бити више усмерени, тример, много 861 00:41:24,800 --> 00:41:26,700 више руковање од ранијих година, као и ми 862 00:41:26,700 --> 00:41:31,330 бацају неке од пртљага који је развијен по природи развија године 863 00:41:31,330 --> 00:41:32,970 након годину и итератинг. 864 00:41:32,970 --> 00:41:35,110 Дакле, нови и побољшани почиње данас. 865 00:41:35,110 --> 00:41:37,860 >> Ћете срести још од службеници је у на [неразумљиво] 866 00:41:37,860 --> 00:41:40,186 у 2:30, где се служе, као традиција, колача. 867 00:41:40,186 --> 00:41:42,060 Има мало више торта од тога, али ћеш 868 00:41:42,060 --> 00:41:44,690 сусрет Ерин и Тобиас и други даље. 869 00:41:44,690 --> 00:41:46,470 И да ти дам турнеје пре него што чујемо 870 00:41:46,470 --> 00:41:49,600 из неких других чланова особља у класи, шта чека и. 871 00:41:49,600 --> 00:41:52,730 У ствари, ми смо увек почети ЦС50'С семестар ово долази у суботу, 872 00:41:52,730 --> 00:41:54,330 са оним што се зове ЦС50 Слагалица дан. 873 00:41:54,330 --> 00:41:56,710 >> То нема никакве везе са информатика по себи, 874 00:41:56,710 --> 00:41:58,669 али са око проблема решавање уопште. 875 00:41:58,669 --> 00:42:01,210 И ако тако одлуче да учествују, по неким позива, 876 00:42:01,210 --> 00:42:03,460 сте можда видели врата пао или на бини, 877 00:42:03,460 --> 00:42:05,830 то је прилика у тимовима два или три или четири, 878 00:42:05,830 --> 00:42:10,680 да учествује у загонетки и пице и награде и море-- ове суботе, 879 00:42:10,680 --> 00:42:12,560 стаи тунед за више. 880 00:42:12,560 --> 00:42:15,082 >> Наћи ћете такође да сваки Петак, на Фире анд Ице, 881 00:42:15,082 --> 00:42:16,790 не ЦС50 донијети гомила ученика 882 00:42:16,790 --> 00:42:19,100 на ручак, да би велики класа осећа интимно, 883 00:42:19,100 --> 00:42:21,820 и углавном окупљају Алумни и пријатељи из индустрије 884 00:42:21,820 --> 00:42:24,710 да разговарају о томе шта су они радио од дипломирања. 885 00:42:24,710 --> 00:42:27,820 Слично томе, ове године, неће ми свечано је први икада ЦС50 50 886 00:42:27,820 --> 00:42:31,390 кодирање сумње-- је средином семестра прилика да се омогући свима 887 00:42:31,390 --> 00:42:35,430 на онемогућавање у основи, да имају изазов умова против школских другова, 888 00:42:35,430 --> 00:42:39,250 опет у тимовима од по двоје или троје или четири, користећи само да је програмирање 889 00:42:39,250 --> 00:42:41,920 памет да онда имате под ваш појас после само шест или седам 890 00:42:41,920 --> 00:42:44,710 недеља класе, и учествује у овој врсти такмичења 891 00:42:44,710 --> 00:42:50,261 онлине-- ако желите да брусити свој вештине све више у тај изазов. 892 00:42:50,261 --> 00:42:52,760 На крају семестра је тзв ЦС50 Хацкатхон-- 893 00:42:52,760 --> 00:42:56,970 прилика која почиње у 7:00 АМ завршава у 7:00 ујутро, а успут 894 00:42:56,970 --> 00:43:01,900 су 12 вечерњим сатима у којима се зарони у завршној пројецт-- току је 895 00:43:01,900 --> 00:43:04,820 прилика за пројектовање и спровести највише ништа од интереса 896 00:43:04,820 --> 00:43:06,980 да си са наставе момак је вођење. 897 00:43:06,980 --> 00:43:09,600 Око 9:00 до ве типично служе пицу, 1:00 ам, 898 00:43:09,600 --> 00:43:13,210 Филип је, и неколико нас који су још увек будан у 5:00, 899 00:43:13,210 --> 00:43:16,310 су трансфер аутобусима низ Пут до ИХОП за доручак. 900 00:43:16,310 --> 00:43:19,340 >> А онда неколико дана касније је тзв ЦС50 фаре-- 901 00:43:19,340 --> 00:43:23,450 крај семестра изложбе у Прослава само колико толико 902 00:43:23,450 --> 00:43:28,200 од ЦС50 студенти долазе из недеља нула све до недеље, 903 00:43:28,200 --> 00:43:32,610 и имајући у виду да 73% оних колеге и твој ове године имају 904 00:43:32,610 --> 00:43:34,840 никада раније узео ЦС класу. 905 00:43:34,840 --> 00:43:39,226 У ствари, Истицању толико, овдје је још неколико лица из особља ЦС50 је. 906 00:43:39,226 --> 00:43:40,184 СПЕАКЕР 4: [неразумљиво]. 907 00:43:40,184 --> 00:43:45,909 908 00:43:45,909 --> 00:43:46,867 СПЕАКЕР 5: [неразумљиво]. 909 00:43:46,867 --> 00:43:51,332 910 00:43:51,332 --> 00:43:52,290 СПЕАКЕР 6: [неразумљиво]. 911 00:43:52,290 --> 00:43:55,276 912 00:43:55,276 --> 00:43:56,234 СПЕАКЕР 7: [неразумљиво]. 913 00:43:56,234 --> 00:44:01,727 914 00:44:01,727 --> 00:44:02,643 СПЕАКЕР 8: [неразумљиво] 915 00:44:02,643 --> 00:44:10,066 916 00:44:10,066 --> 00:44:11,024 СПЕАКЕР 9: [неразумљиво]. 917 00:44:11,024 --> 00:44:14,475 918 00:44:14,475 --> 00:44:15,461 >> СПЕАКЕР 4: [неразумљиво]. 919 00:44:15,461 --> 00:44:16,461 >> СПЕАКЕР 10: [неразумљиво]. 920 00:44:16,461 --> 00:44:21,456 921 00:44:21,456 --> 00:44:23,438 СПЕАКЕР 11: [неразумљиво]. 922 00:44:23,438 --> 00:44:24,438 СПЕАКЕР 12: [неразумљиво]. 923 00:44:24,438 --> 00:44:30,438 924 00:44:30,438 --> 00:44:31,396 СПЕАКЕР 13: [неразумљиво] 925 00:44:31,396 --> 00:44:37,360 926 00:44:37,360 --> 00:44:40,342 >> СПЕАКЕР 14: [неразумљиво]. 927 00:44:40,342 --> 00:44:42,863 >> СПЕАКЕР 13: [неразумљиво]. 928 00:44:42,863 --> 00:44:43,821 СПЕАКЕР 15: [неразумљиво] 929 00:44:43,821 --> 00:44:48,785 930 00:44:48,785 --> 00:44:49,785 СПЕАКЕР 16: [неразумљиво]. 931 00:44:49,785 --> 00:44:53,761 932 00:44:53,761 --> 00:44:55,252 >> СПЕАКЕР 11: [неразумљиво] 933 00:44:55,252 --> 00:44:57,773 934 00:44:57,773 --> 00:44:58,731 СПЕАКЕР 5: [неразумљиво]. 935 00:44:58,731 --> 00:45:11,250 936 00:45:11,250 --> 00:45:15,130 Давид Малан: Неки од тима су сами куповину класе. 937 00:45:15,130 --> 00:45:17,760 Али, ако оне чланове особља ЦС50 су овде, 938 00:45:17,760 --> 00:45:19,230 може доћи горе за тренутак. 939 00:45:19,230 --> 00:45:23,450 ЦС50 је Поздрав и ЦАС и [? особље?] Чланови овдје-- су само неколико 940 00:45:23,450 --> 00:45:28,880 на фацес-- једног од кога сте управо видео, и неколико отхер-- и неколико других 941 00:45:28,880 --> 00:45:30,020 још увек. 942 00:45:30,020 --> 00:45:33,242 Зашто не одемо напред и дозволити ви пет минута. 943 00:45:33,242 --> 00:45:35,450 Ако је потребно да патка како би схоп класе, то је у реду. 944 00:45:35,450 --> 00:45:38,900 И за пет минута, ми ћемо наставити, узимајући поглед на Сцратцх-- прва добила 945 00:45:38,900 --> 00:45:42,420 нашег програмског језика, меет особље у току је овде мало више, 946 00:45:42,420 --> 00:45:45,020 и фокусирати на крају о проблему сет нула. 947 00:45:45,020 --> 00:45:46,710 Тако да ћемо се вратити за пет минута. 1 00:45:46,864 --> 00:45:47,370 >> У реду. 2 00:45:47,370 --> 00:45:48,590 Па смо се вратили. 3 00:45:48,590 --> 00:45:51,330 И у нашем преосталих време данас, циљ 4 00:45:51,330 --> 00:45:54,320 је на ниво поље за игру у смислу неке терминологије, 5 00:45:54,320 --> 00:45:55,297 у смислу неких идеја. 6 00:45:55,297 --> 00:45:57,380 Јер заиста, по неки од графикона раније, 7 00:45:57,380 --> 00:46:00,130 тамо ће бити низ нивои искуства у разреду, 8 00:46:00,130 --> 00:46:03,210 неки од чији студенти имају узети неки програмирање пре, 9 00:46:03,210 --> 00:46:04,200 од којих неки нису. 10 00:46:04,200 --> 00:46:07,430 И тако са овим први проблем сет и са овим првим језику 11 00:46:07,430 --> 00:46:10,830 да имамо прилику да започне да узимамо здраво за готово после данас 12 00:46:10,830 --> 00:46:12,960 неки заједнички вокабулар и идеја. 13 00:46:12,960 --> 00:46:15,590 >> И ми ћемо то урадити путем Курс први лангуагес-- 14 00:46:15,590 --> 00:46:21,070 поред Ц и Питхон и ЈаваСцрипт и СКЛ и ХТМЛ и ЦСС, 15 00:46:21,070 --> 00:46:24,450 ћемо се фокусирати на почетку и само за Проблем сет нула 16 00:46:24,450 --> 00:46:28,160 на овом графичком језику, под називом Сцратцх, развијен од стране МИТ Медиа Лаб 17 00:46:28,160 --> 00:46:30,880 низ цесту, да помогне студенти и деца посебно 18 00:46:30,880 --> 00:46:35,070 изразе алгоритхмицалли-- на неки начин више у складу са оним 19 00:46:35,070 --> 00:46:37,300 бисмо могли назвати израчунавања размишљање. 20 00:46:37,300 --> 00:46:40,985 >> И то је корисно језика, јер врло брзо следеће недеље у недељу једном, 21 00:46:40,985 --> 00:46:44,360 ми транзиција ка више традиционална и волшебни језик назван 22 00:46:44,360 --> 00:46:46,370 Ц, што је чисто текстуални. 23 00:46:46,370 --> 00:46:48,930 Користите само тастатуру у Да би писати упутства 24 00:46:48,930 --> 00:46:50,230 као ово на екрану. 25 00:46:50,230 --> 00:46:52,840 Али чак и ако никада нисте видели програмски језик пре, 26 00:46:52,840 --> 00:46:55,170 у само гледајући у ово, све се то загонетан, 27 00:46:55,170 --> 00:47:00,010 што вероватно можете погодити да Вероватно штампа Здраво свете. 28 00:47:00,010 --> 00:47:02,050 Али има много синтаксни изнад тамо. 29 00:47:02,050 --> 00:47:05,770 Постоји чудна хеш симбол или хасх тагом горе. 30 00:47:05,770 --> 00:47:08,900 Ту је угаоне заграде, неки заграде, цурли протеза, полу-цолон-- 31 00:47:08,900 --> 00:47:11,880 има само толико визуелни синтакса да стане на пут. 32 00:47:11,880 --> 00:47:13,940 Почињемо курса са Сцратцх како би добили 33 00:47:13,940 --> 00:47:17,600 поред свих оних који су интелектуално незанимљиве ометања, 34 00:47:17,600 --> 00:47:20,290 и уместо тога се фокусирају на идејама. 35 00:47:20,290 --> 00:47:22,540 >> Заправо, ово може бити раније. 36 00:47:22,540 --> 00:47:24,830 Ово, за то, недељу ће бити после. 37 00:47:24,830 --> 00:47:26,760 Ово, у ово графички језика Огреби, 38 00:47:26,760 --> 00:47:29,870 како би спровести исте програм-- програм који када ради, 39 00:47:29,870 --> 00:47:31,340 једноставно каже здраво свет. 40 00:47:31,340 --> 00:47:34,740 А шта је лепо у вези са Огреби је да је ово графичко програмирање 41 00:47:34,740 --> 00:47:38,780 окружење које користи делове слагалице или блокови, да само повезују заједно 42 00:47:38,780 --> 00:47:40,440 да ли има логично да то учине. 43 00:47:40,440 --> 00:47:43,810 И са Сцратцх може да развијете анимације и интерактивне игре 44 00:47:43,810 --> 00:47:47,270 и уметности, и било који број ствари које можете да замислите у свом уму, 45 00:47:47,270 --> 00:47:51,200 и имплементирати их просто превлачењем и отпуштањем слагалице. 46 00:47:51,200 --> 00:47:54,265 >> И заиста, ми ћемо имати могућност да изразе неке од истих идеја 47 00:47:54,265 --> 00:47:56,890 да сам поменуо тренутак пре у контексту Мике Смитх 48 00:47:56,890 --> 00:48:00,670 и тражи ствари телефон боок-- као функција, само акције, 49 00:48:00,670 --> 00:48:03,070 ствари попут петље да раде изнова ствари, 50 00:48:03,070 --> 00:48:05,170 варијабле, што је нешто ћемо представити, 51 00:48:05,170 --> 00:48:08,086 али то је познато можда од алгебра-- само нека врста плацехолдер 52 00:48:08,086 --> 00:48:10,840 за чување неку вредност коју може да треба латер-- Боолеан изразе, 53 00:48:10,840 --> 00:48:13,720 где они да не или истина лажни питања од раније. 54 00:48:13,720 --> 00:48:17,117 Услови су они виљушке ин тхе Роад- те гране да се тако изразим. 55 00:48:17,117 --> 00:48:19,700 А онда постоје неки љубитељ карактеристике ћемо видети чак и данас, 56 00:48:19,700 --> 00:48:22,850 под називом низови и теме и догађаја, да ћемо онда поново преко 57 00:48:22,850 --> 00:48:24,460 време на различитим језицима. 58 00:48:24,460 --> 00:48:26,790 Али нас Огреби дозвољава да истражи све ово. 59 00:48:26,790 --> 00:48:30,779 Дакле, у Сцратцх, ово љубичаста блок је оно функција је типично 60 00:48:30,779 --> 00:48:31,570 ће изгледати. 61 00:48:31,570 --> 00:48:35,620 Ова љубичаста слагалице да има неке Реч као рецимо, која је радња, 62 00:48:35,620 --> 00:48:38,490 а онда можда имају Аргумент или параметер-- неки начин 63 00:48:38,490 --> 00:48:41,140 од врсте прилагођавање шта је блок ради 64 00:48:41,140 --> 00:48:45,182 тако да то није унапред одређена МИТ-шта каже љубичасте блок. 65 00:48:45,182 --> 00:48:47,390 У ствари, видећете ин а тренутак да сам у стању да куцате 66 00:48:47,390 --> 00:48:49,931 ријечи попут Хелло Ворлд, или здраво Дејвид, или здраво Замаила, 67 00:48:49,931 --> 00:48:53,750 или шта год хоћу, у аргументу у том слагалице пиеце-- белу кутију 68 00:48:53,750 --> 00:48:54,251 тамо. 69 00:48:54,251 --> 00:48:57,166 У међувремену, ако желим петље, ми ћемо видим да има делове слагалице да 70 00:48:57,166 --> 00:48:58,640 изгледа мало наранџасто овако. 71 00:48:58,640 --> 00:49:01,690 И њихов облик некако сугерише да нешто опет и опет деси 72 00:49:01,690 --> 00:49:02,680 у циклусу. 73 00:49:02,680 --> 00:49:06,800 >> Дакле, ако сам Вежи Саи Хелло светски блок са заувек блокирати у Сцратцх, 74 00:49:06,800 --> 00:49:10,307 то је само Наставићу да говорим здраво свет заувек, буквално. 75 00:49:10,307 --> 00:49:12,390 У међувремену, ту је још један тип петље у Сцратцх 76 00:49:12,390 --> 00:49:14,348 да ћемо видим-- понављање блоцк-- где, ако вас 77 00:49:14,348 --> 00:49:17,940 унапред знати колико пута желите да петља извршити 78 00:49:17,940 --> 00:49:21,850 коначан број пута у вас фацт-- може навести да уписивањем у великом броју 79 00:49:21,850 --> 00:49:25,380 или чак укључивања у променљивој, као Кс или И као што ћемо видети. 80 00:49:25,380 --> 00:49:27,690 >> У ствари, варијабле као И у овом случају, који 81 00:49:27,690 --> 00:49:30,109 је заједнички назив за цео варијабла која 82 00:49:30,109 --> 00:49:31,900 складишти и нумбер-- цео број може бити, 83 00:49:31,900 --> 00:49:35,470 да користите ову наранџасти блок овде у поставити променљиву као да сам на нулу. 84 00:49:35,470 --> 00:49:38,900 Ево примера у зеленој оф а Боолеан израз у Сцратцх. 85 00:49:38,900 --> 00:49:43,700 Иако је ово изгледа као математика формула, математике неједнакости лике тхис 86 00:49:43,700 --> 00:49:45,320 стварно су Боолеан изрази. 87 00:49:45,320 --> 00:49:46,570 То је било тачно или нетачно. 88 00:49:46,570 --> 00:49:48,300 И је мање од 50. 89 00:49:48,300 --> 00:49:51,815 Или да или не одговор или тачно или нетачно одговор. 90 00:49:51,815 --> 00:49:53,940 И ми ћемо уопште назвати те Боолеан изрази. 91 00:49:53,940 --> 00:49:55,148 И то не мора да буде 50. 92 00:49:55,148 --> 00:49:57,970 То може бити мањи од к и, већи од и, једнако и-- 93 00:49:57,970 --> 00:50:00,020 било који број других питања могу бити постављена. 94 00:50:00,020 --> 00:50:03,250 >> Сада, на први поглед, ово може изгледати изненада прилично смео овде, и то је то. 95 00:50:03,250 --> 00:50:06,540 Али концепт мудар, то је прилично познато од раније. 96 00:50:06,540 --> 00:50:09,370 Ако је к мање од и, него реци колико. 97 00:50:09,370 --> 00:50:12,230 Друго, ако је к веће од и, онда рећи колико. 98 00:50:12,230 --> 00:50:14,260 Друго рећи к је једнако и. 99 00:50:14,260 --> 00:50:17,220 Тако имамо пример тамо треће сценарио-- 100 00:50:17,220 --> 00:50:20,600 једино трећа поссибилити-- к је или веће од, мање од или једнака. 101 00:50:20,600 --> 00:50:22,420 Дакле, имамо три начин Форк ин тхе Роад. 102 00:50:22,420 --> 00:50:26,290 >> А погледајте шта је кул овде-- Огреби, чини се, има само једну слагалицу 103 00:50:26,290 --> 00:50:28,840 комад, у овом случају, у другом блоку ако. 104 00:50:28,840 --> 00:50:32,090 Па ипак, то се чини да те имплицира да има само два начин Форк ин тхе Роад. 105 00:50:32,090 --> 00:50:34,631 Можете ићи лево или десно, али шта је са трећег сценарија? 106 00:50:34,631 --> 00:50:35,760 Шта ако је к једнако и? 107 00:50:35,760 --> 00:50:36,500 Ништа страшно. 108 00:50:36,500 --> 00:50:39,640 Узмите један слагалицу комад, пут још један унутар ње 109 00:50:39,640 --> 00:50:45,759 да се створи семантички еквивалент од ако, иф, елсе-- и сада вас 110 00:50:45,759 --> 00:50:47,300 има свој начин три Форк ин тхе Роад. 111 00:50:47,300 --> 00:50:49,091 И као што ћемо видети, Сцратцх пуззле пиецес 112 00:50:49,091 --> 00:50:51,820 може да буде и расту, тако као да напуним више ствари у њима. 113 00:50:51,820 --> 00:50:54,420 Не морате да се уклопе све у подразумевану величину. 114 00:50:54,420 --> 00:50:56,690 >> То је нешто што ћемо ускоро се назива низ. 115 00:50:56,690 --> 00:51:00,880 То је као лист-- неки начин складиштење неколико различитих информација 116 00:51:00,880 --> 00:51:02,886 у променљивој, не само број. 117 00:51:02,886 --> 00:51:05,760 То ћемо видети представника нешто што се зове мулти-тхреадинг. 118 00:51:05,760 --> 00:51:08,280 У ствари, све своје Мац и ПЦ ових дана 119 00:51:08,280 --> 00:51:10,810 подржава мулти-тхреадинг, што значи да се буквално 120 00:51:10,810 --> 00:51:12,390 до више ствари одједном. 121 00:51:12,390 --> 00:51:15,390 Можете имати Мицрософт Ворд Уп ин тхе предњи, ради на неком есеју. 122 00:51:15,390 --> 00:51:17,160 Можда имате бровсер у отвору позадини 123 00:51:17,160 --> 00:51:18,720 Г-маил или Фацебоок или слично. 124 00:51:18,720 --> 00:51:22,730 Рачунар може да уради више ствари данас јер је мулти-тхреадинг, 125 00:51:22,730 --> 00:51:26,390 и програми су у у Посебно су мулти-тхреадинг. 126 00:51:26,390 --> 00:51:28,970 >> Постоје ствари називају догађаји као добро у свету Сцратцх, 127 00:51:28,970 --> 00:51:32,640 а онда је превише, да би наши обичај пуззле пиецес ако ствари 128 00:51:32,640 --> 00:51:34,810 заправо не постоје унапред. 129 00:51:34,810 --> 00:51:38,260 Дакле, хајде да то базира на следећи начин. 130 00:51:38,260 --> 00:51:40,580 Пре неколико година, када сам први открио Сцратцх, 131 00:51:40,580 --> 00:51:43,530 када сам заправо био студент на МИТ, ми 132 00:51:43,530 --> 00:51:45,640 сами су имали задатак да домаћи. 133 00:51:45,640 --> 00:51:47,614 И имплементед-- који, у ретроспективи, 134 00:51:47,614 --> 00:51:50,780 је био веома лошу одлуку, јер је то највише разјарујући песма на свету 135 00:51:50,780 --> 00:51:53,321 да слушају осам сати радећи на хомеворк-- 136 00:51:53,321 --> 00:51:57,180 али нешто што сам назвао Оскар време, што је можда познато песма. 137 00:51:57,180 --> 00:51:59,820 >> ЦС50с поседују Јордан Хаиасхи, један од наши још виши чланова особља, 138 00:51:59,820 --> 00:52:03,920 га је унапређен за 2015. годину и сада 2016, од назад у дан, 139 00:52:03,920 --> 00:52:06,610 Имао сам све само иде у Осцар отпатке. 140 00:52:06,610 --> 00:52:09,320 Сада подржавамо рециклирања и компостирања. 141 00:52:09,320 --> 00:52:12,050 >> Али да наслика слику шта можемо да урадимо овде 142 00:52:12,050 --> 00:52:14,130 и да мотивише неке од примери нижем нивоу, 143 00:52:14,130 --> 00:52:16,400 можемо добити један други волонтер само да дођу на горе 144 00:52:16,400 --> 00:52:18,331 и плаи ми фирст домаћи задатак икада? 145 00:52:18,331 --> 00:52:18,830 Хајде горе. 146 00:52:18,830 --> 00:52:19,250 Како се зовеш? 147 00:52:19,250 --> 00:52:20,030 >> Хенри: Хенри. 148 00:52:20,030 --> 00:52:22,660 >> Давид Малан: Хенри, хајде горе. 149 00:52:22,660 --> 00:52:24,190 Хајде горе. 150 00:52:24,190 --> 00:52:27,070 Главу на било који начин, и видећете у тренутку, 151 00:52:27,070 --> 00:52:29,870 Ја идем напред и ударио зелена застава у горњем десном руком 152 00:52:29,870 --> 00:52:31,100 угао, што значи ићи. 153 00:52:31,100 --> 00:52:33,320 Знак икона мало станица ће рећи стоп, 154 00:52:33,320 --> 00:52:35,490 а то је када почнете и зауставити програм. 155 00:52:35,490 --> 00:52:36,450 Драго ми је да смо се упознали. 156 00:52:36,450 --> 00:52:36,950 У реду. 157 00:52:36,950 --> 00:52:39,100 Па ћемо видети упутства на екрану само тренутак. 158 00:52:39,100 --> 00:52:41,450 И само играјући ову игру за неколико сецондс-- ми веровати, 159 00:52:41,450 --> 00:52:43,670 нећемо хтети да игра скроз до енд-- мало сутра 160 00:52:43,670 --> 00:52:45,470 добити осећај који програм ради. 161 00:52:45,470 --> 00:52:49,170 И више него само фокусирати на Хенри добра или лоша у овој игри, фокуса 162 00:52:49,170 --> 00:52:52,600 и како је било имплементиран од мене првобитно а затим Јордана. 163 00:52:52,600 --> 00:52:54,640 Другим речима, где су варијабле? 164 00:52:54,640 --> 00:52:55,520 Где су петље? 165 00:52:55,520 --> 00:52:56,520 Где су функције? 166 00:52:56,520 --> 00:53:00,700 Па да видимо ако не видимо оне испод хаубе. 167 00:53:00,700 --> 00:53:03,660 >> Само кликните и превуците смеће на одговарајући бин. 168 00:53:03,660 --> 00:54:02,100 >> [Мусиц плаиинг] 169 00:54:02,100 --> 00:54:02,600 У реду. 170 00:54:02,600 --> 00:54:03,160 То је врло добро. 171 00:54:03,160 --> 00:54:04,286 Зашто не бисмо га зауставимо тамо. 172 00:54:04,286 --> 00:54:04,786 Хвала вам. 173 00:54:04,786 --> 00:54:05,830 Честитке Хенри. 174 00:54:05,830 --> 00:54:07,002 Хвала вам. 175 00:54:07,002 --> 00:54:10,690 >> [Апплаусе] 176 00:54:10,690 --> 00:54:12,450 >> Само замислите отклањање грешака тог програма. 177 00:54:12,450 --> 00:54:15,880 Ако постоји проблем два минут сонг-- али тако 178 00:54:15,880 --> 00:54:17,430 шта се дешава овде стварно? 179 00:54:17,430 --> 00:54:20,900 Као компликовано колико се може почети да изгледа да се током времена, 180 00:54:20,900 --> 00:54:22,910 заиста више ствари почеле да падају, 181 00:54:22,910 --> 00:54:25,370 оно што је занимљиво у вези са ова врста екампле-- 182 00:54:25,370 --> 00:54:27,270 па ћемо видети неколико Остали-- је да ако 183 00:54:27,270 --> 00:54:30,416 погледати поред сложености или софистицираност игре, 184 00:54:30,416 --> 00:54:33,040 ту је врло једноставна зграда блокови који плаи-- све који, 185 00:54:33,040 --> 00:54:35,840 ако их дестилирати онима градивни блокови, су веома доступни 186 00:54:35,840 --> 00:54:37,401 и имплементирати за себе. 187 00:54:37,401 --> 00:54:39,150 На пример, то је било неко време, али ја сам 188 00:54:39,150 --> 00:54:42,900 прилично сигуран шта сам у почетку учинио када што ову игру први пут 189 00:54:42,900 --> 00:54:44,787 Био сам потпуно као процрастинатед. 190 00:54:44,787 --> 00:54:47,120 Нисам фокусирати на све на логика или пуззле пиецес, 191 00:54:47,120 --> 00:54:50,810 фокусиран сам на графику и налаза улица порука и канта за смеће 192 00:54:50,810 --> 00:54:51,540 и све то. 193 00:54:51,540 --> 00:54:53,456 Али они су неопходан састојци у почетку. 194 00:54:53,456 --> 00:54:57,220 И када сам завршио одуговлачење и полагање кроз ширег оквира, 195 00:54:57,220 --> 00:55:00,337 Одлучио сам, само да направим један ђубре пада са неба. 196 00:55:00,337 --> 00:55:02,170 Па да видимо Сцратцх подржава ствари које се зову 197 00:55:02,170 --> 00:55:06,386 спритес-- карактера који се имају различите костиме на тако да 198 00:55:06,386 --> 00:55:07,010 изгледају другачије. 199 00:55:07,010 --> 00:55:09,660 >> Па сам ставио ђубре костим на једном таквом вилењак. 200 00:55:09,660 --> 00:55:12,007 И управо је то било потребно да падне са неба. 201 00:55:12,007 --> 00:55:14,590 И тако се испоставило, Огреби, као и већина програмских језика, 202 00:55:14,590 --> 00:55:18,099 подржава случајних бројева или технички псеудокоду случајних бројева, 203 00:55:18,099 --> 00:55:20,390 тако да повлачењем и падају одређене делове слагалице, 204 00:55:20,390 --> 00:55:22,890 Био сам у стању да се смеће долазе са леве стране у почетку. 205 00:55:22,890 --> 00:55:25,580 А онда следећи пут је пао, из право и онда од средине. 206 00:55:25,580 --> 00:55:28,060 И све је игра није била само има смеће пада са неба. 207 00:55:28,060 --> 00:55:29,770 Ниси могао да укаже на то или кликните на њу. 208 00:55:29,770 --> 00:55:31,103 Ниси могао да отвори за отпатке. 209 00:55:31,103 --> 00:55:32,160 Ниси могао ништа. 210 00:55:32,160 --> 00:55:34,450 Али то је био корак беба према мом коначном визији. 211 00:55:34,450 --> 00:55:36,720 >> А после тога, ја у ствари спроводи нека врста 212 00:55:36,720 --> 00:55:41,230 Мерни тако да ако ниси клик и вуче по смеће 213 00:55:41,230 --> 00:55:44,350 у канте, Осцар Поклопац ће се отварати и затварати. 214 00:55:44,350 --> 00:55:47,650 Ништа неће десити у канту за отпатке, али барем би се поклопац отвори и затвори. 215 00:55:47,650 --> 00:55:49,642 Па онда провери, корак два од два. 216 00:55:49,642 --> 00:55:52,100 И то је оно што ће бити кључ у оба проблема сет нула 217 00:55:52,100 --> 00:55:55,970 и у програмирању генерално, да се узми ове веома одредјене поступке за бебе. 218 00:55:55,970 --> 00:55:59,390 Јер не само да да дозволите осећају искрено постигнуто много више 219 00:55:59,390 --> 00:56:01,250 куицкли-- то је најгора ствар на свету 220 00:56:01,250 --> 00:56:06,149 да покуша да спроведе све Осцар Тиме, затим сати касније ударио зелену заставу, 221 00:56:06,149 --> 00:56:08,440 и ништа не функционише као што је очекивано јер где си до чак 222 00:56:08,440 --> 00:56:11,150 почињу да дебуг или Решавање проблема са тај програм? 223 00:56:11,150 --> 00:56:12,470 То је само огромна. 224 00:56:12,470 --> 00:56:16,792 >> И тако заиста прихвата ову идеју поновног узимања степс-- кораке за бебе 225 00:56:16,792 --> 00:56:19,000 и изградње Поново: нешто што је, на крају, 226 00:56:19,000 --> 00:56:23,672 заиста импресивно и сложен, али У почетку, није ни приближно толико тако. 227 00:56:23,672 --> 00:56:24,630 У ствари, хајде да урадимо то. 228 00:56:24,630 --> 00:56:28,989 Пусти ме само напред и-- Сцратцх себе постоји на веб страници Сцратцх.МИТ.еду, 229 00:56:28,989 --> 00:56:30,780 а ви ћете се каже као много поново у проблему 230 00:56:30,780 --> 00:56:34,200 сет нула, спецификација за који је већ на сајту ЦС50 је. 231 00:56:34,200 --> 00:56:35,725 >> Али то је оно што Сцратцх сам по себи. 232 00:56:35,725 --> 00:56:38,210 И ту је заправо само три основне области. 233 00:56:38,210 --> 00:56:40,980 У горњем левом углу тамо је тзв стаге. 234 00:56:40,980 --> 00:56:41,810 Ово је Огреби. 235 00:56:41,810 --> 00:56:43,710 Дефаулт костим је мачка. 236 00:56:43,710 --> 00:56:46,950 А ово је правоугаоног облика свет у којима можете мове-- горе, доле, лево, 237 00:56:46,950 --> 00:56:48,130 Право и неке друге ствари. 238 00:56:48,130 --> 00:56:51,839 У средини овде су наши категорија или наше палете од слагалице, 239 00:56:51,839 --> 00:56:53,630 и различите боје значи различите ствари. 240 00:56:53,630 --> 00:56:56,520 А ако мота около, видећете ствари попут петље и условима 241 00:56:56,520 --> 00:56:58,160 и променљиве и други састојци. 242 00:56:58,160 --> 00:57:00,060 >> А онда овде је скрипте област. 243 00:57:00,060 --> 00:57:03,020 Ово је место где могу да драг анд дроп те пуззле пиецес да радим ствари. 244 00:57:03,020 --> 00:57:04,690 Дакле, хајде да урадимо једну такву ствар. 245 00:57:04,690 --> 00:57:06,630 Пусти ме напред и-- и ја знам где је. 246 00:57:06,630 --> 00:57:10,110 Па ћу одмах кликните на где Знам да је спреман да се, 247 00:57:10,110 --> 00:57:13,140 али показује и кликом и гурају око су неизбежне. 248 00:57:13,140 --> 00:57:15,320 Дакле, када зелена застава кликне, шта желим да радим? 249 00:57:15,320 --> 00:57:17,100 Ја ћу да урадим ово. 250 00:57:17,100 --> 00:57:20,699 Ја ћу ја ту пурпле слагалицу комад, поздрави за две секунде, 251 00:57:20,699 --> 00:57:21,490 и пусти ме увећали. 252 00:57:21,490 --> 00:57:23,865 >> И ја ћу да се то промени да будем оно што желим да бити-- 253 00:57:23,865 --> 00:57:26,471 Хелло Ворлд за две секунде је у реду. 254 00:57:26,471 --> 00:57:28,970 Сада ћу да кликнете на зелена застава, или ако стварно желим, 255 00:57:28,970 --> 00:57:31,820 Ја пуно да га екран и онда се врати. 256 00:57:31,820 --> 00:57:34,060 То ће само настави све у једном прозору. 257 00:57:34,060 --> 00:57:36,141 Греен флаг-- здраво свет. 258 00:57:36,141 --> 00:57:36,640 У реду. 259 00:57:36,640 --> 00:57:38,789 Није све то занимљиво. 260 00:57:38,789 --> 00:57:40,080 Па пусти ме само напред и уради то. 261 00:57:40,080 --> 00:57:41,038 Пусти ме да пробам још један. 262 00:57:41,038 --> 00:57:44,740 Када зелена застава цлицкед-- да пустимо до нешто као звук. 263 00:57:44,740 --> 00:57:46,880 И приметио да је од кутија за бесплатно добијате 264 00:57:46,880 --> 00:57:49,910 мачка звук, као што је стандардна спрајт. 265 00:57:49,910 --> 00:57:52,380 Дакле, сада пусти ме напред и хит зелену заставу сада. 266 00:57:52,380 --> 00:57:53,224 >> [МЕОВИНГ] 267 00:57:53,224 --> 00:57:54,490 >> Ав. 268 00:57:54,490 --> 00:57:55,370 То је супер. 269 00:57:55,370 --> 00:57:57,040 Ја програмирање. 270 00:57:57,040 --> 00:57:58,550 Дакле, шта сам урадио? 271 00:57:58,550 --> 00:58:00,430 Ово је еквивалент програма. 272 00:58:00,430 --> 00:58:01,600 Очигледно је супер једноставна. 273 00:58:01,600 --> 00:58:05,300 То није стварно узео све то много напор и МИТ урадио највећи део посла, 274 00:58:05,300 --> 00:58:07,890 али сам назвао функција. 275 00:58:07,890 --> 00:58:08,940 Ја сам користио функцију. 276 00:58:08,940 --> 00:58:12,480 Направио сам неку акцију, користећи само да је један љубичаста слагалице. 277 00:58:12,480 --> 00:58:15,960 >> Па, ако желим да урадим три меовс за редом? 278 00:58:15,960 --> 00:58:18,570 Пусти ме напред и до два и три. 279 00:58:18,570 --> 00:58:20,910 И приметио да када вас ховер близу слагалицу комад, 280 00:58:20,910 --> 00:58:22,970 Изгледа мало бела линија врста магнетски, 281 00:58:22,970 --> 00:58:25,190 и она ће снап заједно кад пустиш. 282 00:58:25,190 --> 00:58:26,600 Да видимо шта се овде дешава. 283 00:58:26,600 --> 00:58:27,920 >> [МЕОВИНГ] 284 00:58:27,920 --> 00:58:32,390 285 00:58:32,390 --> 00:58:34,510 >> Тамо је буба. 286 00:58:34,510 --> 00:58:35,650 Чујем само један мијау. 287 00:58:35,650 --> 00:58:37,440 Зашто би то могао бити? 288 00:58:37,440 --> 00:58:39,001 Да? 289 00:58:39,001 --> 00:58:39,500 Да. 290 00:58:39,500 --> 00:58:41,650 Ми заправо не чујем, али то је добро интуиција. 291 00:58:41,650 --> 00:58:43,400 Они сви се играју у исто време. 292 00:58:43,400 --> 00:58:44,000 Зашто? 293 00:58:44,000 --> 00:58:46,587 Па, рачунар се тек тако да уради оно што му реци да уради. 294 00:58:46,587 --> 00:58:48,670 Дакле, ако кажете, игра звук, репродукцију звука, репродукцију звука, 295 00:58:48,670 --> 00:58:52,887 али га не рећи да игра до завршите, играју док не завршите, 296 00:58:52,887 --> 00:58:54,970 да ће експлодирати кроз програм заиста брзо 297 00:58:54,970 --> 00:58:56,830 и да само оно што му реци да уради. 298 00:58:56,830 --> 00:58:59,040 >> Тако да сада треба поправити ово неколико начина. 299 00:58:59,040 --> 00:59:00,623 Ја сам могао да урадим ово, ријеши се. 300 00:59:00,623 --> 00:59:04,180 Пусти ме да пробам овај други слагалицу пиеце-- плаи Соунд Меов до учињено, 301 00:59:04,180 --> 00:59:07,072 а затим превуците три ови и кликните на Плаи. 302 00:59:07,072 --> 00:59:09,430 >> [МЕОВИНГ] 303 00:59:09,430 --> 00:59:13,350 >> То није баш вери-- хвала ти-- врло природно. 304 00:59:13,350 --> 00:59:16,590 Па зашто не и-- дозволити ме за контролу овде. 305 00:59:16,590 --> 00:59:17,090 Леп. 306 00:59:17,090 --> 00:59:22,230 Само секунд, а сада пусти ме да се вратим звукова и репродуковање аудио до учињено, 307 00:59:22,230 --> 00:59:24,620 и онда дај да један секунд. 308 00:59:24,620 --> 00:59:28,692 И онда пусти ме да га добијем више звук, и идемо. 309 00:59:28,692 --> 00:59:31,350 >> [МЕОВИНГ] 310 00:59:31,350 --> 00:59:35,930 >> Мало више природно, али ово није веома ефикасан. 311 00:59:35,930 --> 00:59:39,830 Као што сам је досадно, сви бити то кратко, кликните напред и назад 312 00:59:39,830 --> 00:59:42,724 и заиста умножавање свог послу-- прилично копирање и лепљење. 313 00:59:42,724 --> 00:59:44,640 Заиста, ако Цонтрол кликнули или десно кликне, 314 00:59:44,640 --> 00:59:46,500 Могао сам само копирати и. 315 00:59:46,500 --> 00:59:49,870 Шта би било боље изградити за коришћење? 316 00:59:49,870 --> 00:59:51,090 Каква идеја од раније? 317 00:59:51,090 --> 00:59:51,990 >> Да, тако да петља. 318 00:59:51,990 --> 00:59:54,580 И у ствари, ако се боцкају око, можемо наћи управо то. 319 00:59:54,580 --> 00:59:57,730 Пусти ме да догађаји, односно контролу. 320 00:59:57,730 --> 00:59:59,650 Па Понављам да не желим да то буде 10 пута. 321 00:59:59,650 --> 01:00:01,370 То ће се неугодно брзо. 322 01:00:01,370 --> 01:00:03,380 Али ћу поновити три пута. 323 01:00:03,380 --> 01:00:06,355 Да се ​​вратим на звук и плаи звук док не буде готово. 324 01:00:06,355 --> 01:00:08,480 Да се ​​вратим на Цонтрол и само секунду. 325 01:00:08,480 --> 01:00:10,271 И обавештење, да би могао Мислим да не уклапа, 326 01:00:10,271 --> 01:00:13,520 али опет ако магнетски га пустити талас у месту, она ће порасти на попунити. 327 01:00:13,520 --> 01:00:14,971 Шта се сада игра? 328 01:00:14,971 --> 01:00:18,500 >> [МЕОВИНГ] 329 01:00:18,500 --> 01:00:19,000 ОК. 330 01:00:19,000 --> 01:00:19,660 Леп. 331 01:00:19,660 --> 01:00:22,540 И то је оно што би се могло назвати програм који је такође тачно. 332 01:00:22,540 --> 01:00:27,590 То меовед три пута прилично наравно, али то је боље дизајниран. 333 01:00:27,590 --> 01:00:29,580 Ја сам користећи мање технолошки вишак. 334 01:00:29,580 --> 01:00:30,970 Нисам копирате ништа. 335 01:00:30,970 --> 01:00:32,470 Ја сам користио бољу идеју. 336 01:00:32,470 --> 01:00:35,340 >> Сада, то још није све Интересантно са Огреби не ради 337 01:00:35,340 --> 01:00:35,930 ништа. 338 01:00:35,930 --> 01:00:37,388 Дакле, хајде да урадимо нешто друго уместо тога. 339 01:00:37,388 --> 01:00:38,670 Хајде да урадимо нешто заувек. 340 01:00:38,670 --> 01:00:39,420 И знаш шта? 341 01:00:39,420 --> 01:00:40,470 Кретање изгледа занимљиво. 342 01:00:40,470 --> 01:00:45,760 Хајде да га померите 10 кораци и ударио плаи сада. 343 01:00:45,760 --> 01:00:46,570 >> ОК. 344 01:00:46,570 --> 01:00:49,300 Па можемо некако драг га назад, а он је и даље 345 01:00:49,300 --> 01:00:51,250 ради зато што је то заувек ради. 346 01:00:51,250 --> 01:00:53,150 Дакле, петља се ради шта то говори да уради, 347 01:00:53,150 --> 01:00:54,650 али то није све то интересантно. 348 01:00:54,650 --> 01:00:55,310 Урадимо то. 349 01:00:55,310 --> 01:00:59,870 Да додам контролу блока, и користити једну тих услова за први пут. 350 01:00:59,870 --> 01:01:03,119 >> Тако да ће да се креће 10 степс-- 10 тачака, 10 пиксела на сцреен-- 351 01:01:03,119 --> 01:01:04,660 онда ће да поставим ово питање. 352 01:01:04,660 --> 01:01:09,340 Ако је нешто истина, онда нешто у том блоку. 353 01:01:09,340 --> 01:01:13,060 Тако испада очитавање има целину гомила Боолеан екпрессионс-- 354 01:01:13,060 --> 01:01:16,580 питања Тхе Иес нема или истина лажна форм-- пусти ме да радим ово. 355 01:01:16,580 --> 01:01:19,260 >> Ако тоуцхинг-- а ту је овај мали падајући мени. 356 01:01:19,260 --> 01:01:20,410 Могу да параметеризе. 357 01:01:20,410 --> 01:01:23,010 Ако додирује едге-- хајдемо тако нешто. 358 01:01:23,010 --> 01:01:27,310 Дакле, ако додирује едге-- да се вратимо у покрету. 359 01:01:27,310 --> 01:01:32,281 А зашто не бисмо само окренем за 180 степени? 360 01:01:32,281 --> 01:01:32,780 У реду. 361 01:01:32,780 --> 01:01:35,070 Тако заувек, помери 10 корака. 362 01:01:35,070 --> 01:01:37,670 Ако додирује ивица, окрените за 180 степени. 363 01:01:37,670 --> 01:01:39,720 И то није крај програма јер сте у заувек блок, 364 01:01:39,720 --> 01:01:42,053 тако да ће поново и опет и опет и опет. 365 01:01:42,053 --> 01:01:43,980 Да видимо шта се дешава. 366 01:01:43,980 --> 01:01:44,785 ОК. 367 01:01:44,785 --> 01:01:48,270 Мало луд, али некако цоол. 368 01:01:48,270 --> 01:01:51,710 >> И можемо додати да ово неке глупе ствари да нису толико интелектуално 369 01:01:51,710 --> 01:01:52,270 Занимљиво. 370 01:01:52,270 --> 01:01:57,210 Али, ако смо погодили ово мало микрофон буттон-- јао. 371 01:01:57,210 --> 01:01:58,480 Пусти ме да почистим ово. 372 01:01:58,480 --> 01:02:01,540 Пусти ме да побољша ово као они би рекли на ТВ-у. 373 01:02:01,540 --> 01:02:05,400 Покупи то, Сачувај, и сада иду до сценарија. 374 01:02:05,400 --> 01:02:07,500 >> А сада, пусти ме да звучи. 375 01:02:07,500 --> 01:02:09,002 Дозволите ми да му дати име. 376 01:02:09,002 --> 01:02:12,440 Ја ћу назвати Јао. 377 01:02:12,440 --> 01:02:13,840 И сада играју звука Јао. 378 01:02:13,840 --> 01:02:16,520 Приметити да се појави у мало падајући мени. 379 01:02:16,520 --> 01:02:17,612 Хајде да видимо. 380 01:02:17,612 --> 01:02:20,444 >> [ОУЦХ] 381 01:02:20,444 --> 01:02:24,377 >> [Лаугхинг] 382 01:02:24,377 --> 01:02:25,835 Али можемо да променимо Т ​​његову у ходу. 383 01:02:25,835 --> 01:02:28,106 Можемо бити дупло досадан. 384 01:02:28,106 --> 01:02:31,760 >> [ОУЦХ] 385 01:02:31,760 --> 01:02:35,332 >> Или ако га се као 1.000 корака ат а једном-- 386 01:02:35,332 --> 01:02:39,900 387 01:02:39,900 --> 01:02:40,670 >> ОК. 388 01:02:40,670 --> 01:02:42,295 Па ћемо оставити да на миру. 389 01:02:42,295 --> 01:02:45,290 Дакле, опет, изградња блоцкс-- И почела са нечим Супер Симпле, 390 01:02:45,290 --> 01:02:47,930 а онда додао функцију, додао функцију, додао функцију. 391 01:02:47,930 --> 01:02:50,721 И не треба да бринете о како је прва од тих особитости 392 01:02:50,721 --> 01:02:53,690 је реализован као што сам и даље у слоја ствари на врху. 393 01:02:53,690 --> 01:02:55,430 Дакле, у ствари, пусти ме да један другог овде. 394 01:02:55,430 --> 01:03:00,580 Пусти ме напред и отвори датотеку која Донео сам унапред, под називом Схееп. 395 01:03:00,580 --> 01:03:03,970 >> Тако да је мало другачија карактер да изгледа овако. 396 01:03:03,970 --> 01:03:07,370 И да видим да не могу учини нешто користећи цоунтер 397 01:03:07,370 --> 01:03:09,310 У овом цасе-- такозвану променљиву. 398 01:03:09,310 --> 01:03:15,540 Ја идем напред и под Евентс-- Дај ми зелена застава кликне. 399 01:03:15,540 --> 01:03:19,030 Онда ме пусти да подаци који знам од само игра око раније, 400 01:03:19,030 --> 01:03:20,214 је место где су променљиве. 401 01:03:20,214 --> 01:03:21,880 И ја идем напред и превуците ово. 402 01:03:21,880 --> 01:03:25,144 >> Дакле, променљива цоунтер, и Ја ћу да га иницијализирати на нулу. 403 01:03:25,144 --> 01:03:27,560 Могу да га назвати било шта Кс или И или з-- али у програмирању, 404 01:03:27,560 --> 01:03:30,410 позива нешто у семантички користан начин, као што цоунтер, 405 01:03:30,410 --> 01:03:34,540 која описује шта је то, то је Много касније лакше читати ваш код. 406 01:03:34,540 --> 01:03:37,460 Пусти ме само напред и да А Форевер блокирати овде. 407 01:03:37,460 --> 01:03:41,289 И пусти ме на изгледу страна и уради Саи блок. 408 01:03:41,289 --> 01:03:44,330 Али оно што је кул у вези варијабли је сам не морају да само укуцајте у нечему 409 01:03:44,330 --> 01:03:47,850 као здраво свет, који смо већ урађено, ја већ могу ићи у Подаци 410 01:03:47,850 --> 01:03:50,690 и ја моју променљиве, па чак и мада је облик не баш 411 01:03:50,690 --> 01:03:53,000 изгледају као да треба да одговара, она ће расти за попуњавање. 412 01:03:53,000 --> 01:03:58,396 И ја ћу само рећи бројач за један секунду-- споилер-- он ће рачунати. 413 01:03:58,396 --> 01:04:00,380 Ми ћемо то рећи за једну секунду. 414 01:04:00,380 --> 01:04:02,840 Онда ћу да одем и да га чекати једне секунде, 415 01:04:02,840 --> 01:04:04,650 тако да не рачуна се пребрзо. 416 01:04:04,650 --> 01:04:08,430 И онда на крају, променити цоунтер од Један-- у другим речима, 417 01:04:08,430 --> 01:04:13,520 повећавати цоунтер по један додатна вредност и ово заувек. 418 01:04:13,520 --> 01:04:16,129 >> Дакле, овце такође, као да је програмер, броји од 0. 419 01:04:16,129 --> 01:04:20,350 420 01:04:20,350 --> 01:04:23,740 А ако чекамо довољно дуго, Он ће заувек учинити. 421 01:04:23,740 --> 01:04:27,740 Али то није баш тачно, јер у ствари, као што ћемо открити у недељу једном, 422 01:04:27,740 --> 01:04:31,871 цели бројеви и рачунаре генерално, Технички има само фините-- добро, 423 01:04:31,871 --> 01:04:33,829 пре компјутера, када они представљају целе бројеве, 424 01:04:33,829 --> 01:04:35,670 само да коначан број бита. 425 01:04:35,670 --> 01:04:37,860 Ти сијалице тамо могу само рачунати тако високо 426 01:04:37,860 --> 01:04:39,239 пре него што си ван сијалица. 427 01:04:39,239 --> 01:04:41,590 И компјутер такође, има само толико меморије, 428 01:04:41,590 --> 01:04:44,640 има само толико транзистора, тако да само могу да рачунају тако високо. 429 01:04:44,640 --> 01:04:47,409 >> Тако испада да је оваца, Мислим, могу рачунати на 2 милијарде 430 01:04:47,409 --> 01:04:48,409 или нешто прилично велико. 431 01:04:48,409 --> 01:04:50,325 Дакле, нећемо да чекати да се то догоди. 432 01:04:50,325 --> 01:04:54,850 Али на крају неки буба ће се десити да могу имати неке врло стварни свет 433 01:04:54,850 --> 01:04:55,970 последице. 434 01:04:55,970 --> 01:04:58,861 Међутим, осим оваца, који само уводи променљиву. 435 01:04:58,861 --> 01:05:01,110 Идемо напред и отвори нешто сам унапред 436 01:05:01,110 --> 01:05:07,430 овде назива Пет тхе Цат-- Пет мачку овде. 437 01:05:07,430 --> 01:05:10,420 И приметио овде је мало блокови, али када зелена застава 438 01:05:10,420 --> 01:05:12,474 кликнули, заувек на следећи начин. 439 01:05:12,474 --> 01:05:15,265 Ако додирује миша поинтер-- тако курсор на екрану, 440 01:05:15,265 --> 01:05:18,529 арров-- игра Соунд Меов и онда чекати две секунде. 441 01:05:18,529 --> 01:05:19,570 И само ово заувек. 442 01:05:19,570 --> 01:05:22,619 Само стално чекати да видимо да ли је поинтер-- 443 01:05:22,619 --> 01:05:24,710 ако је мачка додирује показивач. 444 01:05:24,710 --> 01:05:26,060 >> Па сам ударио игру. 445 01:05:26,060 --> 01:05:26,920 Ништа се не дешава. 446 01:05:26,920 --> 01:05:28,980 Али као што сам померате курсор преко мачку, 447 01:05:28,980 --> 01:05:31,960 >> [МЕОВИНГ] 448 01:05:31,960 --> 01:05:34,750 >> И ако га удаљити, не мази мачку више. 449 01:05:34,750 --> 01:05:38,090 Тако да су неки условно логика смештен унутар једне петље. 450 01:05:38,090 --> 01:05:43,070 Како о овом примеру, намерно назива Не Пет тхе Цат? 451 01:05:43,070 --> 01:05:45,253 Шта је то да уради? 452 01:05:45,253 --> 01:05:47,880 >> [МЕОВИНГ] 453 01:05:47,880 --> 01:05:50,215 >> Зашто би требало да не мазе мачку? 454 01:05:50,215 --> 01:05:59,440 >> [МЕОВИНГ] 455 01:05:59,440 --> 01:06:00,699 >> ОК. 456 01:06:00,699 --> 01:06:03,880 Дакле, ово је пример ако друго. 457 01:06:03,880 --> 01:06:06,482 То је одлука тачка и јер седи у петљи, 458 01:06:06,482 --> 01:06:07,690 обоје су узимајући провери. 459 01:06:07,690 --> 01:06:08,280 Да ли је ово истина? 460 01:06:08,280 --> 01:06:08,760 Да ли је ово истина? 461 01:06:08,760 --> 01:06:09,250 Да ли је ово истина? 462 01:06:09,250 --> 01:06:09,791 Да ли је ово истина? 463 01:06:09,791 --> 01:06:11,880 И на крају, један од они ће се примењивати 464 01:06:11,880 --> 01:06:16,480 и тако чујете или да меов или хук лава у том случају. 465 01:06:16,480 --> 01:06:21,400 >> Па, хајде да мало више фенси један да сам унапред најбоље урадио-- тема. 466 01:06:21,400 --> 01:06:25,210 Дакле, тема је само један Оно што рачунар може да уради. 467 01:06:25,210 --> 01:06:29,349 Дакле, мулти-навојем програм је програм који мозе да ради више ствари одједном. 468 01:06:29,349 --> 01:06:31,140 И сви ови примери до сада су имали 469 01:06:31,140 --> 01:06:35,980 само један сценарио, тако да спеак-- један програм овако овде. 470 01:06:35,980 --> 01:06:38,810 Али приметите овај програм два духови, два лика. 471 01:06:38,810 --> 01:06:40,020 Једна је птица. 472 01:06:40,020 --> 01:06:40,870 Једна је мачка. 473 01:06:40,870 --> 01:06:45,080 >> И приметио када сам кликните на ово доле лево, сваки од њих има своје скрипте 474 01:06:45,080 --> 01:06:47,120 или програми у вези са њима. 475 01:06:47,120 --> 01:06:49,420 И оба су програми, обавештење, почетак 476 01:06:49,420 --> 01:06:52,600 с када зелену заставу цлицкед-- Хајде да погледамо цат-- 477 01:06:52,600 --> 01:06:54,030 када зелена застава кликне. 478 01:06:54,030 --> 01:06:58,220 И тако заиста, када сам ударио плаи сада, Две ствари ће се десити одједном. 479 01:06:58,220 --> 01:07:01,750 Мачка и птица су и да раде истовремено 480 01:07:01,750 --> 01:07:03,815 да креирате овај ефекат. 481 01:07:03,815 --> 01:07:05,440 И можете да замислите шта се дешава. 482 01:07:05,440 --> 01:07:08,340 Постоји круг и птица и мачка су у петљи. 483 01:07:08,340 --> 01:07:11,270 Птица је само здрав као Био сам раније када сам рекао јао. 484 01:07:11,270 --> 01:07:13,040 Али мачка јасно има предност. 485 01:07:13,040 --> 01:07:16,040 Постоји још једна очитавање блок који указује мачку намерно 486 01:07:16,040 --> 01:07:19,836 на птице у овом случају овде. 487 01:07:19,836 --> 01:07:22,960 Тако да смо могли да задиркују осим, ​​гледајући кроз те блокове, шта се дешава. 488 01:07:22,960 --> 01:07:25,460 Међутим, кључни састојак овде је једна. 489 01:07:25,460 --> 01:07:28,520 Птица, тако да је ова игра није потпуно боринг-- или ово аниматион-- 490 01:07:28,520 --> 01:07:30,060 почиње у насумичном правцу. 491 01:07:30,060 --> 01:07:32,890 А рачунар је брање број између 90 и 180 492 01:07:32,890 --> 01:07:36,110 суштини, тако да је мало различити анимација сваки пут. 493 01:07:36,110 --> 01:07:39,480 >> И онда приметити овде, ако мачка додирује птицу, онда 494 01:07:39,480 --> 01:07:42,030 плаи лава четири звуке праска. 495 01:07:42,030 --> 01:07:46,330 У међувремену у птица је палета, имамо ово. 496 01:07:46,330 --> 01:07:49,229 Заувек, ако не додирује мачку, само настави да се креће три корака. 497 01:07:49,229 --> 01:07:50,770 А онда ту је још једна загонетка комад. 498 01:07:50,770 --> 01:07:52,030 Ако сте на ивици, боунце. 499 01:07:52,030 --> 01:07:54,840 Дакле, птица је само мало гледала своја посла, 500 01:07:54,840 --> 01:07:57,330 само лети около и поскакује, а то је заиста 501 01:07:57,330 --> 01:08:01,780 мачка који је имао условну логику да се утврди да ли је ухватио птицу. 502 01:08:01,780 --> 01:08:02,280 У реду. 503 01:08:02,280 --> 01:08:08,800 Дакле, хајде да урадимо једну другу овде, ово се зове Здраво Хи. 504 01:08:08,800 --> 01:08:15,100 А овај овде само ради ово у заувек петљи. 505 01:08:15,100 --> 01:08:18,925 Али нотице-- Како да прекинемо ово смета програму? 506 01:08:18,925 --> 01:08:21,600 507 01:08:21,600 --> 01:08:22,640 Погодио пречку простора. 508 01:08:22,640 --> 01:08:27,990 Јер ако то урадим, лева рука програм-- 509 01:08:27,990 --> 01:08:31,550 приметити да је стално је листенинг-- је кључ простор штампа. 510 01:08:31,550 --> 01:08:34,090 Ако је размак притисне, и ако је тако, шта он ради? 511 01:08:34,090 --> 01:08:35,980 То се веома чест технику. 512 01:08:35,980 --> 01:08:38,590 Поставља променљиве једнака неке вредности. 513 01:08:38,590 --> 01:08:39,741 Али то се мења ту вредност. 514 01:08:39,741 --> 01:08:41,490 [? Тако изглед?] на основу схапе-- И 515 01:08:41,490 --> 01:08:43,160 имају променљиву коју сам написао унапред зове 516 01:08:43,160 --> 01:08:44,770 Искључен, што само говори да или не. 517 01:08:44,770 --> 01:08:45,880 Да ли је звук искључен или не? 518 01:08:45,880 --> 01:08:46,990 Тачно или нетачно? 519 01:08:46,990 --> 01:08:51,580 И обавештење, ја кажем ово-- ако искључен је нула, а затим промените једну, 520 01:08:51,580 --> 01:08:53,840 друго сет нем је на нулу. 521 01:08:53,840 --> 01:08:55,540 Дакле, само флип вредност од нула до један. 522 01:08:55,540 --> 01:08:58,320 Могао сам доне-- променити од два до три и три на два 523 01:08:58,320 --> 01:09:00,162 или четири до пет или четири до шест. 524 01:09:00,162 --> 01:09:01,870 Али није битно које бројеве користим, 525 01:09:01,870 --> 01:09:04,090 све док стално мења га супротно. 526 01:09:04,090 --> 01:09:07,290 >> И скоро било који програмер би само изабрати нула и једног-- лажно и истинито, 527 01:09:07,290 --> 01:09:09,510 офф и ајде-- да представља ово. 528 01:09:09,510 --> 01:09:10,930 А ово још увек ради. 529 01:09:10,930 --> 01:09:12,190 Ако сам поново погодио пречку спаце 530 01:09:12,190 --> 01:09:13,590 >> [СЕАЛ СОУНДС] 531 01:09:13,590 --> 01:09:15,440 >> Програм још увек ради. 532 01:09:15,440 --> 01:09:18,400 Зато што је ово други сценарио да каже, заувек урадите следеће. 533 01:09:18,400 --> 01:09:21,390 534 01:09:21,390 --> 01:09:24,770 Ако је искључен променљива једнака зеро-- па ако није искључен 535 01:09:24,770 --> 01:09:29,609 је логиц-- ако је лажна или не, онда играти звук, 536 01:09:29,609 --> 01:09:30,650 јер ти ниси искључен. 537 01:09:30,650 --> 01:09:33,358 Требало би да играју звук и онда Мислим хи хи хи за две секунде 538 01:09:33,358 --> 01:09:35,790 и онда чекати, и уради то опет и опет и опет. 539 01:09:35,790 --> 01:09:40,760 >> Па на тај начин да имамо пут људи да-- за програме за интеракцију. 540 01:09:40,760 --> 01:09:43,120 И они не морају да да се као датум као и други. 541 01:09:43,120 --> 01:09:46,280 У ствари, боде ароунд-- не игра речи интендед-- 542 01:09:46,280 --> 01:09:49,250 неко провео велику количину Време на интернету за имплементацију 543 01:09:49,250 --> 01:09:51,580 ПокемонГо у Сцратцх. 544 01:09:51,580 --> 01:09:55,440 Чак вам геолоцатес у Кембриџ или Аллстон овде. 545 01:09:55,440 --> 01:10:03,120 Дакле, ако желите да видим шта људи може да уради је ово-- врло фенси мени. 546 01:10:03,120 --> 01:10:04,780 Кликните овде. 547 01:10:04,780 --> 01:10:07,430 >> Ово ми је са мојим стрелицама сада. 548 01:10:07,430 --> 01:10:09,446 Ја идем после овога. 549 01:10:09,446 --> 01:10:09,946 Кликните. 550 01:10:09,946 --> 01:10:12,949 551 01:10:12,949 --> 01:10:14,240 А сада кликнете на покебалл. 552 01:10:14,240 --> 01:10:17,130 553 01:10:17,130 --> 01:10:20,260 Мислим, мислим да си треба да кликнете на покебалл. 554 01:10:20,260 --> 01:10:20,760 У реду. 555 01:10:20,760 --> 01:10:22,680 Па сам то урадио. 556 01:10:22,680 --> 01:10:23,950 Могу да идем тамо. 557 01:10:23,950 --> 01:10:27,790 А та особа реализује још мало ПокеБаллс преко овдје-- три ПокеБаллс. 558 01:10:27,790 --> 01:10:29,950 >> Ми ћемо поставите линк на овај мрежи тако да можете играти. 559 01:10:29,950 --> 01:10:32,364 Али обавештење постоји само неки основни блокови. 560 01:10:32,364 --> 01:10:33,780 Изгледа много одгајивач, и то је то. 561 01:10:33,780 --> 01:10:35,905 Ово је импресивна и више него што би обично 562 01:10:35,905 --> 01:10:37,740 очекују, сигурно за проблем сет нула. 563 01:10:37,740 --> 01:10:40,809 Немам појма колико дуго ова особа провела на мрежи. 564 01:10:40,809 --> 01:10:41,850 Али то је све само петља. 565 01:10:41,850 --> 01:10:43,180 Ту је звук за игру. 566 01:10:43,180 --> 01:10:44,850 Постоји нека врста петље слушање за ли сам 567 01:10:44,850 --> 01:10:47,558 ударање стрелицу нагоре или надоле арров или лева и десна, 568 01:10:47,558 --> 01:10:49,834 а онда ако је тако, креће се то неки број пиксела. 569 01:10:49,834 --> 01:10:51,750 А онда када кликнем на други дух, ту је 570 01:10:51,750 --> 01:10:53,390 нека ако стање тамо. 571 01:10:53,390 --> 01:10:54,806 Да, ово постаје сувише јака. 572 01:10:54,806 --> 01:10:56,100 Ми ћемо зауставити. 573 01:10:56,100 --> 01:10:57,750 То је све те основне градивне блокове. 574 01:10:57,750 --> 01:11:01,530 Не постоје други састојци остали од оних које смо погледали већ. 575 01:11:01,530 --> 01:11:04,670 >> А ипак, ево, пусти ме да један завршни низ примера 576 01:11:04,670 --> 01:11:06,960 која приказује слику сувише шта можете учинити овде. 577 01:11:06,960 --> 01:11:10,481 Овде је веома једноставан програм који Само ради ово-- кашаљ, кашаљ, кашаљ. 578 01:11:10,481 --> 01:11:12,480 И само на основу које ми смо гледали до сада, 579 01:11:12,480 --> 01:11:14,570 где је очигледно прилика за побољшање. 580 01:11:14,570 --> 01:11:15,570 Овај програм је исправно. 581 01:11:15,570 --> 01:11:17,980 То кашаљ три пута, што је оно што сам намеравао. 582 01:11:17,980 --> 01:11:19,650 Али то је слабо спроводи. 583 01:11:19,650 --> 01:11:20,600 То је лоше осмишљен. 584 01:11:20,600 --> 01:11:22,000 Зашто? 585 01:11:22,000 --> 01:11:22,500 Да. 586 01:11:22,500 --> 01:11:23,230 То није петља. 587 01:11:23,230 --> 01:11:24,610 И то није толико да то није петља, 588 01:11:24,610 --> 01:11:26,400 то је да постоји много технолошких вишкова. 589 01:11:26,400 --> 01:11:28,830 Ту се копира и залепио код, да тако кажем. 590 01:11:28,830 --> 01:11:31,830 И раствор вероватно заиста је петља. 591 01:11:31,830 --> 01:11:34,350 Па пусти ме само напред и побољшати на то. 592 01:11:34,350 --> 01:11:36,250 И ја ћу ја то овде. 593 01:11:36,250 --> 01:11:39,986 Пусти ме напред и да се понови блок, промени на три. 594 01:11:39,986 --> 01:11:41,860 Идем да бацим неке од тих блокова. 595 01:11:41,860 --> 01:11:43,150 >> И приметићете да је прилично једноставно. 596 01:11:43,150 --> 01:11:45,691 Ти драг анд дроп и ствари појављују и нестају на крају. 597 01:11:45,691 --> 01:11:49,170 И само да ја то овде, и сада имам чистији верзију даље. 598 01:11:49,170 --> 01:11:50,730 Али, знате шта? 599 01:11:50,730 --> 01:11:52,940 Ту је ово прилика сада абстрацтион-- 600 01:11:52,940 --> 01:11:56,350 да почне да дефинише нови вокабулар да МИТ-није предвидео. 601 01:11:56,350 --> 01:11:59,110 Ту је чекати и поновите и заувек и ако, 602 01:11:59,110 --> 01:12:02,590 али шта ако желим да представим реч кашаљ као блок? 603 01:12:02,590 --> 01:12:06,230 Шта ако желим Пуззле Пиеце чија је сврха у животу је да кашље? 604 01:12:06,230 --> 01:12:10,720 >> Па, хајде да погледамо ову верзију овде, што направио сам како следи. 605 01:12:10,720 --> 01:12:13,579 Магично, Ја сам створио ово слагалица комад овде, 606 01:12:13,579 --> 01:12:14,870 који Огреби вам омогућава да урадите. 607 01:12:14,870 --> 01:12:16,787 И заиста, Ц и Питхон и ЈаваСцрипт су 608 01:12:16,787 --> 01:12:18,370 ће дозволити да то тако добро. 609 01:12:18,370 --> 01:12:21,830 Можете креирати свој цустом комада да зовете оно што желите. 610 01:12:21,830 --> 01:12:24,890 У овом случају, кашаљ осећа као разумна дефиниција. 611 01:12:24,890 --> 01:12:27,880 И онда са овим радовима доле овде можете дефинисати шта то значи. 612 01:12:27,880 --> 01:12:30,290 >> Ја вукли и пао са ово палета овде- више 613 01:12:30,290 --> 01:12:33,500 блоцкс-- ова велика љубичаста блок, где сам откуцао у кашља 614 01:12:33,500 --> 01:12:35,290 као име мог новог слагалица. 615 01:12:35,290 --> 01:12:39,920 И онда ја кажем сваки пут када корисник назива овај нови кашаљ пуззле комад, 616 01:12:39,920 --> 01:12:41,770 до право гласа и чекати. 617 01:12:41,770 --> 01:12:46,160 И тако овде у мом поновљеним блоку, Ја само могу да кашљем три пута. 618 01:12:46,160 --> 01:12:49,972 >> И ја бих, а посебно ако сада сакрити овај детаљ. 619 01:12:49,972 --> 01:12:51,430 Кога је брига како се спроводи кашаљ? 620 01:12:51,430 --> 01:12:54,390 Све ми је стало, као програмер који могу да кашљем. 621 01:12:54,390 --> 01:12:56,280 Не занима ме како кажу спроводи. 622 01:12:56,280 --> 01:12:58,620 Само ми је стало да мачка може нешто рећи. 623 01:12:58,620 --> 01:13:02,720 Не могу апстрактно далеко тај детаљ и само се фокусирају на оно што је на екрану овде. 624 01:13:02,720 --> 01:13:04,400 Али ја могу да искористим ову један корак даље. 625 01:13:04,400 --> 01:13:08,070 >> Приметити да овде, имам имплементира петља три пута. 626 01:13:08,070 --> 01:13:11,560 Али шта ако уместо тога сам узео ову верзију? 627 01:13:11,560 --> 01:13:14,640 А шта ако уместо тога у овој верзији овде, 628 01:13:14,640 --> 01:13:18,730 Само мењам пуззле комад да аргумент и улаз за себе? 629 01:13:18,730 --> 01:13:21,100 И да улаз може бити број као три. 630 01:13:21,100 --> 01:13:24,580 Тако да сада, ако пишем програм и желим мачка кашљати, 631 01:13:24,580 --> 01:13:28,270 Могу да заправо рећи слагалицу пиеце колико пута да кашљу, 632 01:13:28,270 --> 01:13:31,990 јер на дну овде, одгајивач верзија ових обичај слагалице 633 01:13:31,990 --> 01:13:34,500 летс ми навести да кашаљ заиста потребно 634 01:13:34,500 --> 01:13:36,951 инпут-- заузима аргумент овако. 635 01:13:36,951 --> 01:13:37,700 И знаш шта? 636 01:13:37,700 --> 01:13:38,890 Можда сам схватио, чекај мало. 637 01:13:38,890 --> 01:13:40,680 Кашаљ је саме-- то је у основи 638 01:13:40,680 --> 01:13:42,120 иста идеја као и кијање. 639 01:13:42,120 --> 01:13:44,040 То је само другачији Реч на екрану. 640 01:13:44,040 --> 01:13:46,550 Ја могу апстрактно далеко даље и имплементирати 641 01:13:46,550 --> 01:13:48,750 ово коначна верзија кашаљ, који на први поглед 642 01:13:48,750 --> 01:13:50,660 је начин сложенији гледа. 643 01:13:50,660 --> 01:13:52,140 Али погледајте шта сам урадио. 644 01:13:52,140 --> 01:13:55,930 Сада имам генерализед-- генерицизед стварно-- ову слагалицу комад 645 01:13:55,930 --> 01:13:59,900 да се зове рећи реч н пута. 646 01:13:59,900 --> 01:14:04,410 >> И сада имам два нова делове слагалице овде дефинисати кашаљ н пута. 647 01:14:04,410 --> 01:14:06,790 И шта је функција кашаљ уради? 648 01:14:06,790 --> 01:14:08,420 Шта сам обичај слагалица комад урадио? 649 01:14:08,420 --> 01:14:11,996 Само назива рецимо блок, пролази речи желим да кажем, 650 01:14:11,996 --> 01:14:13,870 пролазећи броја пута хоћу да кажем. 651 01:14:13,870 --> 01:14:18,210 Јер сада могу имплементирати кијајте једноставно говорећи Ацхоо, 652 01:14:18,210 --> 01:14:20,320 у овом случају, одређени број пута. 653 01:14:20,320 --> 01:14:22,360 >> И тако сам ја слојеви и слојеви. 654 01:14:22,360 --> 01:14:25,690 И опет, кључ овде није како сам га спроводи, али је чињеница 655 01:14:25,690 --> 01:14:28,070 да ако сам буквално мове то са екрана, 656 01:14:28,070 --> 01:14:31,280 погледај како је једноставно ако не Прилично је мој програм сада изгледа. 657 01:14:31,280 --> 01:14:33,930 Јер ради оно што каже, сам захваћене 658 01:14:33,930 --> 01:14:37,640 далеко шта је у тој црној кутији. се дешава да је љубичаста кутија овде, 659 01:14:37,640 --> 01:14:41,430 али сам ометен далеко шта је унутра јер не занима ме како се то ради. 660 01:14:41,430 --> 01:14:43,650 Само ми је стало сада да ради. 661 01:14:43,650 --> 01:14:46,375 >> И заиста, у проблему сет нула, то је тачно 662 01:14:46,375 --> 01:14:49,250 врста раслојавања идеја ти ћеш имају прилику да истраже. 663 01:14:49,250 --> 01:14:53,510 То је управо прилика да се примењују технике решавања проблема, 664 01:14:53,510 --> 01:14:55,550 на шта је вероватно непознатом окружењу. 665 01:14:55,550 --> 01:14:57,890 И да ли сте није програмиран пре или програмирана пре, 666 01:14:57,890 --> 01:14:59,500 видећете да постоји нешто мало 667 01:14:59,500 --> 01:15:00,874 у овој средини за све. 668 01:15:00,874 --> 01:15:02,770 И са проблемом сет један у року од недељу дана, 669 01:15:02,770 --> 01:15:06,630 ми ћемо бити пребачен на фокусирање на вишем нивоу језика под називом 670 01:15:06,630 --> 01:15:09,290 Ц-- односно нижи језика ниво зове 671 01:15:09,290 --> 01:15:11,347 Ц-- да је још моћан, иако је то 672 01:15:11,347 --> 01:15:12,930 мало више загонетан на први поглед. 673 01:15:12,930 --> 01:15:16,740 >> И схватићете по данашњем ТЛ: ДР, да се овај проблем сет има краћи 674 01:15:16,740 --> 01:15:19,880 прозор времена него будућих, једноставно јер треба наћи прилично 675 01:15:19,880 --> 01:15:20,420 приступачан. 676 01:15:20,420 --> 01:15:22,211 И да се не брине ако додате класа касно. 677 01:15:22,211 --> 01:15:23,920 Ми ћемо обратити да убрзо. 678 01:15:23,920 --> 01:15:28,480 И пре него што завршимо за торте, хајдемо завршити са само два минута изглед 679 01:15:28,480 --> 01:15:30,500 на шта вас чека овде у ЦС50. 680 01:15:30,500 --> 01:15:40,950 681 01:15:40,950 --> 01:17:20,803 [Мусиц плаиинг] 682 01:17:20,803 --> 01:17:21,302 У реду. 683 01:17:21,302 --> 01:17:22,690 То је то за ЦС50. 684 01:17:22,690 --> 01:17:23,650 Ми ћемо се ускоро видети. 685 01:17:23,650 --> 01:17:25,526 Колач сада служи. 686 01:17:25,526 --> 01:17:28,998 687 01:17:28,998 --> 01:18:14,267 [Мусиц плаиинг] 688 01:18:14,267 --> 01:18:16,350 Звучник 17: Да ли сте чули на одмору, шеф? 689 01:18:16,350 --> 01:18:29,490 690 01:18:29,490 --> 01:18:31,920 СПЕАКЕР 18: Можда постоји више испод хаубе. 691 01:18:31,920 --> 01:18:38,279