1 00:00:08,483 --> 00:00:11,477 [Powered by Google Translate] [Рок музиката] 2 00:00:32,435 --> 00:00:35,429 [МУЗИКА - "среќни заедно" желките] 3 00:01:27,330 --> 00:01:30,170 Дејвид MALAN: Денес, што започнува нашето истражување на 4 00:01:30,170 --> 00:01:32,710 основите на компјутерската наука и нашиот вовед, 5 00:01:32,710 --> 00:01:35,070 сега, на уметноста на програмирање, на која што е 6 00:01:35,070 --> 00:01:36,260 само еден пример. 7 00:01:36,260 --> 00:01:39,600 Но во иста насока на решавање на проблемот, знам дека 8 00:01:39,600 --> 00:01:42,080 Традиционалните загатка CS50 Денот е утре. 9 00:01:42,080 --> 00:01:45,190 Ако не сте уште RSVPed за овој настан, можете да одат на 10 00:01:45,190 --> 00:01:47,510 cs50.net/rsvp. 11 00:01:47,510 --> 00:01:50,940 Може да донесе тимови од две или три или четири. 12 00:01:50,940 --> 00:01:53,080 Ќе се соочат со предизвикот со проблеми како оној што го видов 13 00:01:53,080 --> 00:01:54,190 таму на почетокот. 14 00:01:54,190 --> 00:01:57,000 Сите нови проблеми оваа година ако се причестија со светите минатата година, и 15 00:01:57,000 --> 00:01:59,680 ќе имаат можност потоа да се победи некои чудесната награди. 16 00:01:59,680 --> 00:02:02,750 Меѓу нив, на Wii и некои подарок сертификати и слично, 17 00:02:02,750 --> 00:02:05,650 и сето тоа додека дружење со CS50 студентите и соучениците 18 00:02:05,650 --> 00:02:07,720 и пица и Фејсбук. 19 00:02:07,720 --> 00:02:10,430 Па повеќе за тоа утре, ако би сакал. 20 00:02:10,430 --> 00:02:13,330 >> Ова тогаш е CS50, за оние од вас што ни се придруживте за 21 00:02:13,330 --> 00:02:14,510 прв пат. 22 00:02:14,510 --> 00:02:18,030 И знам дека овој курс е особено решена да добие 23 00:02:18,030 --> 00:02:22,605 дека преку овој курс во својот конечен крај, на која точка ќе 24 00:02:22,605 --> 00:02:24,270 ќе имаат не само разбирање на овие 25 00:02:24,270 --> 00:02:26,450 основите на компјутерската наука, но ќе мора 26 00:02:26,450 --> 00:02:29,120 ова е многу практична вештина во собата што потоа може да се врати во 27 00:02:29,120 --> 00:02:31,370 свој оддел, без разлика дали тоа е инженерските науки, 28 00:02:31,370 --> 00:02:33,570 применета математика, физичките науки, природните 29 00:02:33,570 --> 00:02:34,780 науката, или слично. 30 00:02:34,780 --> 00:02:37,030 Всушност, она што е толку возбудливо за компјутерски науки овие 31 00:02:37,030 --> 00:02:39,900 дена е дека тоа е само така се применуваат за 32 00:02:39,900 --> 00:02:40,990 сите видови на полиња. 33 00:02:40,990 --> 00:02:46,210 И иако денес, само ќе ја изгребат површината на 34 00:02:46,210 --> 00:02:49,020 многу традиционалните програмски јазик познат како Ц, ние ќе 35 00:02:49,020 --> 00:02:51,040 наместо погледне во нешто што се нарекува нула, нешто со 36 00:02:51,040 --> 00:02:53,420 која што куки љубовна приказна беше спроведен од еден од вашите 37 00:02:53,420 --> 00:02:57,020 претходници во изминатите години, да раскажувам приказни, да се создаде игри, 38 00:02:57,020 --> 00:03:00,060 да креирате интерактивни уметност, и всушност да почне да ја заврши нашата 39 00:03:00,060 --> 00:03:02,240 умовите околу некои од основните конструкции кои 40 00:03:02,240 --> 00:03:05,390 придонесуваат за програмирање, но во контекст, како што ќе видиме, тоа е 41 00:03:05,390 --> 00:03:09,140 многу помалку страшно, тоа е многу помалку таинствени, отколку што ќе видите 42 00:03:09,140 --> 00:03:10,140 пред долго. 43 00:03:10,140 --> 00:03:12,410 И реализација, исто така, за оние од вас само ни се приклучи на оваа 44 00:03:12,410 --> 00:03:16,170 семестар, фрази на кои завршија предавање во средата, 45 00:03:16,170 --> 00:03:20,260 тоа не е толку важно каде ќе заврши во однос на вашиот 46 00:03:20,260 --> 00:03:22,950 соученици во оваа класа, но каде што, до крајот на семестар 47 00:03:22,950 --> 00:03:27,190 во недела 11, заврши во однос на себе право овој ден. 48 00:03:27,190 --> 00:03:32,000 >> Значи без понатамошно ado, ова е, исто така, вреди да се напомене дека 49 00:03:32,000 --> 00:03:34,450 оние кои се помалку удобни, оние некаде помеѓу, се 50 00:03:34,450 --> 00:03:36,825 Исто така, од страна на дизајнот на овој курс, не по секоја штета 51 00:03:36,825 --> 00:03:38,760 vis-a-vis оние поудобно 52 00:03:38,760 --> 00:03:39,920 кои доаѓаат во оваа класа. 53 00:03:39,920 --> 00:03:41,810 Како што ќе видите во текот на неколку недели да дојде, имаме различни 54 00:03:41,810 --> 00:03:44,600 песни за различните назад позадина, делови за оние 55 00:03:44,600 --> 00:03:46,500 помалку удобни, поудобно, оние некаде 56 00:03:46,500 --> 00:03:47,250 помеѓу. 57 00:03:47,250 --> 00:03:49,520 Како што ќе видите овој викенд и следната недела, две верзии на 58 00:03:49,520 --> 00:03:52,410 повеќето проблем поставува во двете стандардни и хакерски издание така 59 00:03:52,410 --> 00:03:55,390 дека сите може сами да го изберат по патот со кој можете 60 00:03:55,390 --> 00:03:56,615 се најмногу задоволни. 61 00:03:56,615 --> 00:03:58,770 >> Така, денес, ние се нурне во овој програмски 62 00:03:58,770 --> 00:04:00,060 јазик наречен нула. 63 00:04:00,060 --> 00:04:02,250 Тоа е графички јазик за програмирање, а сепак има 64 00:04:02,250 --> 00:04:04,500 истите карактеристики на некои од повисоко ниво јазици ние ќе 65 00:04:04,500 --> 00:04:07,050 истражуваат подоцна во текот на семестарот, меѓу нив C и 66 00:04:07,050 --> 00:04:08,670 JavaScript и PHP. 67 00:04:08,670 --> 00:04:11,890 Но, тоа се случува да ни овозможи да се избегнат некои од одвлекување на вниманието 68 00:04:11,890 --> 00:04:14,890 на почетокот на синтаксата, работи како semicolons, загради, 69 00:04:14,890 --> 00:04:17,720 и други arcane детали кои, на прв поглед, само не се 70 00:04:17,720 --> 00:04:19,916 на сите интелектуално интересни и имаат тенденција да се 71 00:04:19,916 --> 00:04:22,310 пат од некои основни разбирање. 72 00:04:22,310 --> 00:04:24,870 Во однос на сега поддршка структура напред, реализира ова 73 00:04:24,870 --> 00:04:27,570 алатка, CS50 Дискутирај, кои ќе бидат поврзани на курсот 74 00:04:27,570 --> 00:04:30,320 веб подоцна денес, е онлајн дискусија на форумот во 75 00:04:30,320 --> 00:04:32,480 кои ќе бидат во можност да поставуваат прашања на едни со други и 76 00:04:32,480 --> 00:04:35,020 кадар, и тоа е исто така алатка, како што ќе видиме следната недела, 77 00:04:35,020 --> 00:04:37,240 дека ќе се користи доста integratedly во 78 00:04:37,240 --> 00:04:38,780 работното време, како и. 79 00:04:38,780 --> 00:04:41,670 Навистина, работното време започнат во понеделник, и искрено, првиот 80 00:04:41,670 --> 00:04:43,930 недела на работното време е прилично низок клуч. 81 00:04:43,930 --> 00:04:46,820 >> Јас не мислам дека ќе најдете гребење сите недостапни. 82 00:04:46,820 --> 00:04:48,930 Тоа е прилично очигледен, како што ќе видиме, и уште па што 83 00:04:48,930 --> 00:04:51,380 ние ќе ја користите за денес е да ја извадиме некои од 84 00:04:51,380 --> 00:04:53,990 основните идеи кои, потоа, се истрае во текот на 85 00:04:53,990 --> 00:04:54,900 остатокот на семестарот. 86 00:04:54,900 --> 00:04:57,980 Но, почнувајќи од понеделник, во 20:00 преку 23:00 ќе биде 87 00:04:57,980 --> 00:05:01,530 работното време во Annenberg над мозокот пауза. 88 00:05:01,530 --> 00:05:04,490 Sectioning две ќе почне вечерва, па некаде оваа 89 00:05:04,490 --> 00:05:07,260 викенд, одете на cs50.net/section, и ќе 90 00:05:07,260 --> 00:05:08,530 биде побарано голем број на прашања. 91 00:05:08,530 --> 00:05:10,290 Меѓу нив, како би ја опишале вашата 92 00:05:10,290 --> 00:05:12,040 удобност ниво од денес? 93 00:05:12,040 --> 00:05:14,450 Нема тешко, брзо правило за тоа кој е во која кофа. 94 00:05:14,450 --> 00:05:17,170 Тоа е само вид на нешто што веројатно знаете, ако 95 00:05:17,170 --> 00:05:20,280 се меѓу оние помалку удобно или на друг начин. 96 00:05:20,280 --> 00:05:21,350 >> И сега, walkthroughs. 97 00:05:21,350 --> 00:05:24,020 Проблемот сет спецификација за оваа недела, како стандардни 98 00:05:24,020 --> 00:05:28,560 и хакерски издание слично, е присутен во cs50.net од сега. 99 00:05:28,560 --> 00:05:31,500 И ќе видите дека првата од овие изданија, на 100 00:05:31,500 --> 00:05:33,940 Standard Edition секоја недела, е придружена со нешто што 101 00:05:33,940 --> 00:05:36,550 јавете код можи, на седницата предводена од еден од 102 00:05:36,550 --> 00:05:39,100 наставата соработници разбира да ве води низ, да обезбеди 103 00:05:39,100 --> 00:05:42,290 совети за, и се фаќате одреден пат кога станува збор 104 00:05:42,290 --> 00:05:44,150 за започнување на овие проблеми комплети. 105 00:05:44,150 --> 00:05:46,790 Така е и со секоја од овие проблем поставува, ако сте некогаш сакаат 106 00:05:46,790 --> 00:05:50,250 за себе каде да започнеме, ќе почнат со овие 107 00:05:50,250 --> 00:05:50,890 walkthroughs. 108 00:05:50,890 --> 00:05:53,450 И всушност, дозволете ми да се воведе Zamyla Чан, оваа 109 00:05:53,450 --> 00:05:55,870 година настава колеги, кои ќе ја предводи секој 110 00:05:55,870 --> 00:05:56,910 еден од овие walkthroughs. 111 00:05:56,910 --> 00:05:57,961 Zamyla? 112 00:05:57,961 --> 00:06:03,370 >> [Аплауз] 113 00:06:03,370 --> 00:06:03,975 ZAMYLA CHAN: О, здраво, секого. 114 00:06:03,975 --> 00:06:05,130 Моето име е Zamyla. 115 00:06:05,130 --> 00:06:08,250 Јас сум помлад проучување инженеринг во Winthrop куќа. 116 00:06:08,250 --> 00:06:10,890 Но, јас се обиде и да се вклопат во што поголем број компјутерски науки курсеви, како што 117 00:06:10,890 --> 00:06:13,350 може, кој е зошто јас сум навистина возбуден да се води оваа 118 00:06:13,350 --> 00:06:14,590 година walkthroughs. 119 00:06:14,590 --> 00:06:16,950 Walkthroughs, за мене, се важен дел од мојот CS50 120 00:06:16,950 --> 00:06:17,910 искуство. 121 00:06:17,910 --> 00:06:22,710 Во текот на Walkthrough, за секој п-сет, ќе одиме преку 122 00:06:22,710 --> 00:06:25,580 проблемот во собата заедно, изгледа во текот на проблеми, вид на 123 00:06:25,580 --> 00:06:27,360 делат нив во податлив каса. 124 00:06:27,360 --> 00:06:28,990 Јас ќе ви даде совети, техники, за добивање 125 00:06:28,990 --> 00:06:30,820 преку и да започнете. 126 00:06:30,820 --> 00:06:33,510 Се надевам дека ќе се видиме сите во walkthroughs. 127 00:06:33,510 --> 00:06:34,720 Ако не можете да го направите во лице, а потоа 128 00:06:34,720 --> 00:06:36,580 Ве молиме да мелодија во интернет. 129 00:06:36,580 --> 00:06:36,840 >> Дејвид MALAN: Одлично. 130 00:06:36,840 --> 00:06:37,950 Ви благодариме, Zamyla. 131 00:06:37,950 --> 00:06:40,870 Така сфаќаат дека walkthroughs се, навистина, во петок 132 00:06:40,870 --> 00:06:43,110 попладне, но ова е намерно од страна на дизајнот, така што 133 00:06:43,110 --> 00:06:45,750 дури и ако не би присуствуваат на класа во петок 134 00:06:45,750 --> 00:06:48,490 попладне, видеа ќе бидат до сите побрзо во текот 135 00:06:48,490 --> 00:06:48,990 за време на викендот. 136 00:06:48,990 --> 00:06:51,880 Така сфаќаат дека cs50.net ќе бидат сите на Zamyla на 137 00:06:51,880 --> 00:06:53,130 walkthroughs. 138 00:06:54,800 --> 00:06:56,890 И дека има денешниот датум и време, 3:00, 139 00:06:56,890 --> 00:06:58,370 Harberd сала, 104. 140 00:06:58,370 --> 00:07:00,080 И некои од наставата соработници, исто така, подготвени 141 00:07:00,080 --> 00:07:03,250 некои забелешки за вас во отсуство за да ви даде малку 142 00:07:03,250 --> 00:07:06,760 перспектива за тоа што нивното искуство кои доаѓаат во и 143 00:07:06,760 --> 00:07:08,990 Излегувам на CS50 беше како. 144 00:07:08,990 --> 00:07:11,250 Значи, ако ние би можеле да придуши го светла за само еден миг, јас ви даде 145 00:07:11,250 --> 00:07:18,100 некои од вработените CS50 е. 146 00:07:18,100 --> 00:07:20,440 >> JACKSON STEINKAMP: Зедов CS50 минатата година како бруцош во 147 00:07:20,440 --> 00:07:22,880 падне, и тоа апсолутно разнесе умот. 148 00:07:22,880 --> 00:07:25,090 Јас никогаш не презема какви било програмски часови порано, 149 00:07:25,090 --> 00:07:26,380 и никогаш не дојде во со било кој компјутерски науки 150 00:07:26,380 --> 00:07:27,320 искуство на сите. 151 00:07:27,320 --> 00:07:29,240 И само слушнав на зуи за класа и 152 00:07:29,240 --> 00:07:30,050 одлучи да ја земе. 153 00:07:30,050 --> 00:07:31,780 >> Јулија MITELMAN: Тоа беше навистина забавно, навистина ангажирање. 154 00:07:31,780 --> 00:07:33,480 Јас, сепак, до ден - 155 00:07:33,480 --> 00:07:36,560 Јас само неодамна го видам Имам дискета дека Давид ни даде 156 00:07:36,560 --> 00:07:38,140 на нашата прва денот на предавањето. 157 00:07:38,140 --> 00:07:40,020 Имав висеше на мојот ѕид. 158 00:07:40,020 --> 00:07:42,410 Ова е веројатно малку нервозен, но јас обесени во на мојот 159 00:07:42,410 --> 00:07:46,930 ѕид во текот на класа како потсетник на тоа како кул е. 160 00:07:46,930 --> 00:07:49,240 >> TRAVIS падови: Тоа е толку срамно. 161 00:07:49,240 --> 00:07:50,770 >> JACKSON STEINKAMP: Компјутерски науки е нешто што 162 00:07:50,770 --> 00:07:52,370 треба да се обиде дури и ако не сте еден за 163 00:07:52,370 --> 00:07:54,980 традиционалните науки. 164 00:07:54,980 --> 00:07:58,510 Тоа е сопственото искуство, а CS50 ќе бидете сигурни дека сте 165 00:07:58,510 --> 00:08:01,520 поддржани и преку неа со вистинска армија на TFS. 166 00:08:01,520 --> 00:08:03,700 >> Али NAHM: Го однесов како бруцош, и така сум направил многу 167 00:08:03,700 --> 00:08:04,215 на нови пријатели. 168 00:08:04,215 --> 00:08:07,170 Јас исто така, доби воведен за да целата оваа концентрација и 169 00:08:07,170 --> 00:08:10,770 целата училишна на инженерството, и така јас многу го препорачуваме 170 00:08:10,770 --> 00:08:14,360 и добредојдовте на нашата CS50 семејство. 171 00:08:14,360 --> 00:08:17,510 >> Yaniv YACOBY: CS50 само ве учи како да се користи алатки 172 00:08:17,510 --> 00:08:19,210 кои се широко достапни. 173 00:08:19,210 --> 00:08:21,840 Вие само треба лаптоп, потребен ви е веб прелистувач, и ќе 174 00:08:21,840 --> 00:08:26,030 треба да научат да пишуваат дел од кодот, и навистина може да се изгради 175 00:08:26,030 --> 00:08:27,400 уредни работи. 176 00:08:27,400 --> 00:08:31,660 >> KAREN Xiao: Тоа е толку кул да се биде во можност да се направи нешто 177 00:08:31,660 --> 00:08:34,580 и имаат луѓе го користат и да имаат луѓето го гледаат, а тоа е 178 00:08:34,580 --> 00:08:35,900 она што јас навистина сакам за тоа. 179 00:08:35,900 --> 00:08:37,429 >> ТИМ Меклафлин: - чувство на заедништво, мислам дека, во овој 180 00:08:37,429 --> 00:08:39,470 Се разбира повеќе од било кој друг разбира Сум се направени досега. 181 00:08:39,470 --> 00:08:41,350 Вие не сте само преземање на друг - 182 00:08:41,350 --> 00:08:42,740 вие не сте пополнување уште еден услов. 183 00:08:42,740 --> 00:08:45,310 Вие не сте само ќе предавања и ќе секција. 184 00:08:45,310 --> 00:08:49,630 Но правиш тони работи кои се за сите 185 00:08:49,630 --> 00:08:51,560 програмирање и за сите технологија, но тоа не се случи 186 00:08:51,560 --> 00:08:53,090 навистина се чувствувам како класа поголемиот дел од времето. 187 00:08:53,090 --> 00:08:55,012 >> TRAVIS падови: И на првиот ден, тие делеа торта, и 188 00:08:55,012 --> 00:08:56,215 Бев веднаш продадени. 189 00:08:56,215 --> 00:08:57,822 >> JACOB PRITT: Слободен слатки и пица. 190 00:08:57,822 --> 00:08:59,820 >> ZAMYLA CHAN: - без оглед на вашиот интерес ниво, мислам дека 191 00:08:59,820 --> 00:09:05,170 дека CS50, ќе се забавуваат, и ќе бидете интелектуално 192 00:09:05,170 --> 00:09:06,070 стимулирани. 193 00:09:06,070 --> 00:09:07,926 >> МАРК GROZEN-Смит: Тоа е секогаш партија во класа, и тоа е 194 00:09:07,926 --> 00:09:09,990 забава секоја вечер работат на вашиот п-сет. 195 00:09:09,990 --> 00:09:11,880 >> JACKSON STEINKAMP: Секој пат кога ќе заврши проблемот сет, 196 00:09:11,880 --> 00:09:13,710 ќе се чувствувате како да завршите некој проект. 197 00:09:13,710 --> 00:09:16,580 >> МЕЛИСА Niu: Тоа беше Новак година, а јас бев направено шопинг. 198 00:09:16,580 --> 00:09:19,030 Имав четири класи подготвена, и јас бев во Annenberg. 199 00:09:19,030 --> 00:09:21,670 И јас се судрат во еден пријател, и тој вели, Еј, јас сум шопинг 200 00:09:21,670 --> 00:09:24,330 оваа класа наречена CS50, и треба да дојдеш со мене. 201 00:09:24,330 --> 00:09:28,150 Заврши тоа земајќи што паѓаат, а по таа класа, јас 202 00:09:28,150 --> 00:09:30,510 мислев можеби јас ќе одам да малолетно лице во CS. 203 00:09:30,510 --> 00:09:33,760 Но, тука сум, три години подоцна, сè уште студираат компјутерски 204 00:09:33,760 --> 00:09:36,680 науката и всушност го прави тоа како голем, и јас сакав секој 205 00:09:36,680 --> 00:09:37,780 момент од него. 206 00:09:37,780 --> 00:09:39,030 >> ROB Бауден: Јас немам идеја. 207 00:09:46,408 --> 00:09:48,060 >> Али NAHM: Ајде да видиме. 208 00:09:48,060 --> 00:09:49,200 >> МЕЛИСА Niu: лудост. 209 00:09:49,200 --> 00:09:50,610 >> ЗВУЧНИК 1: Се чувствувам како да ќе биде многу клише. 210 00:09:50,610 --> 00:09:52,530 Јас само би рекол, како, неверојатна. 211 00:09:52,530 --> 00:09:53,540 >> Yaniv YACOBY: Пристапност. 212 00:09:53,540 --> 00:09:55,080 >> JACOB PRITT: Слободен слатки и пица. 213 00:09:55,080 --> 00:09:57,310 >> TRAVIS падови: Не можам да одбиеме класа која рацете торта. 214 00:09:57,310 --> 00:09:58,510 >> ТИМ Меклафлин: Енергетски. 215 00:09:58,510 --> 00:10:00,040 >> Vipul SHEKHAWAT: Неопходна. 216 00:10:00,040 --> 00:10:02,636 >> ROB Бауден: Дозволете ми да мислам на одговор. 217 00:10:02,636 --> 00:10:04,480 Мислам дека имам нешто. 218 00:10:04,480 --> 00:10:07,092 О, Боже. 219 00:10:07,092 --> 00:10:13,370 Да, Роб Бауден Моето име, а тоа е CS50. 220 00:10:13,370 --> 00:10:16,340 >> [Аплауз] 221 00:10:20,810 --> 00:10:23,390 Дејвид MALAN: Сите во право, па да почнеме да наслика слика 222 00:10:23,390 --> 00:10:26,230 на насоката во која можеме да одиме, и ајде да се воведе 223 00:10:26,230 --> 00:10:28,190 овој концепт тука познат како pseudocode. 224 00:10:28,190 --> 00:10:29,560 Значи pseudocode не е програмирање 225 00:10:29,560 --> 00:10:30,810 јазик при себе. 226 00:10:30,810 --> 00:10:33,250 Тоа не е ништо технички по себе, но тоа е само вид на 227 00:10:33,250 --> 00:10:36,490 општ начин на изразување на себеси прилично прецизно, 228 00:10:36,490 --> 00:10:39,730 прилично algorithmically, прилично процедурално, но без 229 00:10:39,730 --> 00:10:42,570 да се грижите за тоа што јазикот што го изразува 230 00:10:42,570 --> 00:10:43,150 себе внатре 231 00:10:43,150 --> 00:10:46,280 Тоа е некој модел на англиски и програмски јазици со 232 00:10:46,280 --> 00:10:48,790 кои се случи да биде запознаен, па можеме да почнеме 233 00:10:48,790 --> 00:10:50,600 пишувам овој вид на работа како што ние одиме. 234 00:10:50,600 --> 00:10:54,450 И всушност, Јосиф, би можел да ти позајми на сцената да биде 235 00:10:54,450 --> 00:10:55,490 писарот тука? 236 00:10:55,490 --> 00:11:00,130 Сум отишол понапред тука однапред и заборавил да стави 237 00:11:00,130 --> 00:11:02,920 на некои чорапи денес, а тоа ќе бидат едни од нашите повеќе 238 00:11:02,920 --> 00:11:03,780 смешно примери. 239 00:11:03,780 --> 00:11:04,580 >> Сега, јас ви треба овде. 240 00:11:04,580 --> 00:11:05,630 Јас ќе го чорапи дел. 241 00:11:05,630 --> 00:11:08,040 Значи тука имаме малку мечокот. 242 00:11:08,040 --> 00:11:09,940 Ова е буквално само TextEdit во Мак. 243 00:11:09,940 --> 00:11:12,270 Ние не сме всушност ќе пишувам runnable програма, но 244 00:11:12,270 --> 00:11:14,220 ние сме само ќе да започне црти од pseudocode базирани 245 00:11:14,220 --> 00:11:17,830 на некои од совети ви овозможи да ме тука. 246 00:11:17,830 --> 00:11:20,760 Па овде е мојата куп чорапи дома. 247 00:11:20,760 --> 00:11:23,320 Јас немам чорапи кога се будам наутро, а ние сега 248 00:11:23,320 --> 00:11:26,280 треба да се напише програма, алгоритам на сорти, со која 249 00:11:26,280 --> 00:11:27,900 да се добијат овие чорапи на нозе. 250 00:11:27,900 --> 00:11:30,860 И на патот, ајде да видиме дали ние патување во текот или средба, 251 00:11:30,860 --> 00:11:32,860 некои од идеите што ви се случува да мора да почне 252 00:11:32,860 --> 00:11:35,470 размислување за многу посериозно кога програмирање 253 00:11:35,470 --> 00:11:37,950 да не би вашите програми не се однесуваат доста како што е планирано. 254 00:11:37,950 --> 00:11:39,580 >> Па јас седнат тука. 255 00:11:39,580 --> 00:11:41,180 Имам мојот куп чорапи. 256 00:11:41,180 --> 00:11:43,780 Што е првото нешто разумно човечко суштество би 257 00:11:43,780 --> 00:11:46,600 правите кога целта е да се стави на пар чорапи? 258 00:11:46,600 --> 00:11:49,190 Некој ми даде еден чекор, и само еден чекор. 259 00:11:49,190 --> 00:11:49,796 Да? 260 00:11:49,796 --> 00:11:50,690 ПУБЛИКАТА: наведнуваат надолу. 261 00:11:50,690 --> 00:11:54,290 Дејвид MALAN: наведнуваат надолу, ОК. 262 00:11:54,290 --> 00:11:55,540 Чекор два. 263 00:11:59,975 --> 00:12:00,645 Чекор два. 264 00:12:00,645 --> 00:12:01,840 ПУБЛИКАТА: Трансферот до вашите чорап. 265 00:12:01,840 --> 00:12:03,220 Дејвид MALAN: Трансферот до вашите чорап. 266 00:12:03,220 --> 00:12:07,610 Океј, па мало двосмисленост тука, и ова е еден од првите 267 00:12:07,610 --> 00:12:09,380 пречки што си требал намерно да 268 00:12:09,380 --> 00:12:10,290 судрите тука. 269 00:12:10,290 --> 00:12:14,110 Тоа е малку двосмислена, па ги собереш вашиот чорап. 270 00:12:14,110 --> 00:12:17,425 Добро, ќе ја искористам оваа една, но на компјутер, се реализира во само 271 00:12:17,425 --> 00:12:20,420 малку, нема да имаат таков вид на човечки инстинкт само 272 00:12:20,420 --> 00:12:21,490 Трансферот на најблискиот. 273 00:12:21,490 --> 00:12:23,590 Ние ќе мора да почнат, пред долго, изразувајќи 274 00:12:23,590 --> 00:12:24,610 се попрецизно. 275 00:12:24,610 --> 00:12:26,600 >> Добро, така Чекор два е да ги собереш вашиот чорап. 276 00:12:26,600 --> 00:12:27,520 Ние ќе го земам. 277 00:12:27,520 --> 00:12:28,620 Чекор три. 278 00:12:28,620 --> 00:12:29,532 Во грб. 279 00:12:29,532 --> 00:12:30,900 ПУБЛИКАТА: најдете соодветен пар. 280 00:12:30,900 --> 00:12:32,060 Дејвид MALAN: Најди појавување пар. 281 00:12:32,060 --> 00:12:34,740 Океј, па тоа е добро. 282 00:12:34,740 --> 00:12:35,650 Морав да изберете оваа чорап. 283 00:12:35,650 --> 00:12:39,200 Значи целта е да се најде појавување чорап, сега, но она што 284 00:12:39,200 --> 00:12:39,990 значи тоа? 285 00:12:39,990 --> 00:12:42,130 А разумно човечко битие, како многу во средата кога јас само 286 00:12:42,130 --> 00:12:44,700 знаеја како да се најде Мајк Смит во книгата на телефонот, само вид на 287 00:12:44,700 --> 00:12:45,640 отиде со нивните инстинкт. 288 00:12:45,640 --> 00:12:49,220 Но, овде, тоа е очигледно ова чорап тука, но на компјутер 289 00:12:49,220 --> 00:12:51,350 нема да биде така инстинктивно. 290 00:12:51,350 --> 00:12:53,830 А компјутерот ќе има збирка на битови, како што 291 00:12:53,830 --> 00:12:55,380 дискутира во средата, а тоа се 292 00:12:55,380 --> 00:12:56,710 организирани некако во меморијата. 293 00:12:56,710 --> 00:13:00,400 Но поентата е дека компјутерот има само способноста 294 00:13:00,400 --> 00:13:03,390 да се погледне на работите едно по едно време, и всушност, дури и ние 295 00:13:03,390 --> 00:13:05,980 луѓето - иако таа се чувствува како јас погледна надолу и Сплит 296 00:13:05,980 --> 00:13:08,900 секунда подоцна знам каде чорап е, мојот мозок и очите 297 00:13:08,900 --> 00:13:12,000 се претпоставува дека се брзо обезмаслен на оние чорапи, а потоа затворена 298 00:13:12,000 --> 00:13:13,400 кон една во прашање. 299 00:13:13,400 --> 00:13:15,780 >> Значи, ако ние се сè повеќе и повеќе намерно сега како компјутер, 300 00:13:15,780 --> 00:13:17,780 како можам да го најдете на оваа појавување пар? 301 00:13:17,780 --> 00:13:18,890 Па, ние треба да iterate. 302 00:13:18,890 --> 00:13:21,440 Ние мора да можеби јамки низ овој хаос на чорапите на 303 00:13:21,440 --> 00:13:25,760 кат каде што јас се каже нешто како ЗА СЕКОЈ чорап, го земам 304 00:13:25,760 --> 00:13:30,195 нагоре, и ако ист облик и големина како и другите, а потоа 305 00:13:30,195 --> 00:13:32,150 точка, точка, точка, ние ќе продолжиме приказната. 306 00:13:32,150 --> 00:13:34,430 Значи за секој чорап, па јас ги собереш оваа. 307 00:13:34,430 --> 00:13:36,520 Јас се провери е ова еднаков на оваа. 308 00:13:36,520 --> 00:13:38,250 Тоа не е, па да го ставам настрана страна. 309 00:13:38,250 --> 00:13:39,220 Тогаш јас iterate повторно. 310 00:13:39,220 --> 00:13:40,340 Дали е ова еден еднакви? 311 00:13:40,340 --> 00:13:42,010 Не, тоа не е, па јас го стави настрана. 312 00:13:42,010 --> 00:13:42,710 Е ова? 313 00:13:42,710 --> 00:13:43,200 Не 314 00:13:43,200 --> 00:13:43,670 Оваа? 315 00:13:43,670 --> 00:13:44,520 Не, и така натаму. 316 00:13:44,520 --> 00:13:48,730 А потоа конечно, се надевам, ќе се судрите со овој чорап тука. 317 00:13:48,730 --> 00:13:51,350 Значи, ако тоа е со ист облик, големина, да го земе. 318 00:13:51,350 --> 00:13:53,980 >> И сега, што ќе биде нашиот следен чекор тука? 319 00:13:53,980 --> 00:13:54,402 Да? 320 00:13:54,402 --> 00:13:56,090 ПУБЛИКАТА: Одредување на право од лево. 321 00:13:56,090 --> 00:13:58,980 Дејвид MALAN: Океј, да се идентификува десно и лево, па 322 00:13:58,980 --> 00:14:01,870 За среќа, тој вид на работи. 323 00:14:01,870 --> 00:14:04,020 А малку симетрична, или јас сум само ги носи тој начин. 324 00:14:04,020 --> 00:14:07,020 Добро, па јас идентификувани право. 325 00:14:07,020 --> 00:14:09,980 И сега, пред да продолжиш, дозволете ми да истакнам она што Јосиф 326 00:14:09,980 --> 00:14:12,890 се прави тука како вид на обучен програмер. 327 00:14:12,890 --> 00:14:15,800 Значи, повторно, нема еден начин да се направи ова, надвор, но само 328 00:14:15,800 --> 00:14:18,480 нумерирање на линии, Јосиф веќе почна да го направите тоа 329 00:14:18,480 --> 00:14:19,460 вид на вовлекување. 330 00:14:19,460 --> 00:14:21,950 Всушност, ова е многу честа конвенција во програмирање, 331 00:14:21,950 --> 00:14:26,110 при што, кога ќе направи нешто повторлив, looping стил, како 332 00:14:26,110 --> 00:14:28,480 ние сме значи со англискиот фраза "за секоја 333 00:14:28,480 --> 00:14:31,090 чорап ", на конвенцијата во pseudocode и, како што ќе видиме, 334 00:14:31,090 --> 00:14:33,410 нормално програмски јазици, е само алинеја. 335 00:14:33,410 --> 00:14:36,240 Хит на просторот бар неколку пати, притиснете TAB или слично, 336 00:14:36,240 --> 00:14:40,660 така што вгнездени под "за секоја чорап" е дел од 337 00:14:40,660 --> 00:14:43,430 работи кои што треба да направите како резултат на тоа јамка. 338 00:14:43,430 --> 00:14:45,940 Значи тоа е сето она што е пренесување на семантички. 339 00:14:45,940 --> 00:14:48,620 Сега пак, "Ако е ист облик и големина", на 340 00:14:48,620 --> 00:14:51,590 фактот дека "Земи" е требуван понатаму само значи 341 00:14:51,590 --> 00:14:54,370 тоа е единственото нешто што треба да направите ако таа состојба, 342 00:14:54,370 --> 00:14:59,770 ако таа гранка, која вилушка во патот, е всушност вистина. 343 00:14:59,770 --> 00:15:02,130 >> Па сега тука, ние сме на чекор четири, да се идентификува десно и лево. 344 00:15:02,130 --> 00:15:03,410 Сум идентификувани во право. 345 00:15:03,410 --> 00:15:05,150 Дај ми Чекор пет. 346 00:15:05,150 --> 00:15:07,880 И технички, ние навистина може да се нарече 347 00:15:07,880 --> 00:15:09,510 на ЗА СЕКОЈ работа - 348 00:15:09,510 --> 00:15:11,450 веројатно ќе треба да нумерира сите линии ако 349 00:15:11,450 --> 00:15:12,190 ние ќе го направите тоа. 350 00:15:12,190 --> 00:15:14,006 JOSEPH: [Беззвучен] 351 00:15:14,006 --> 00:15:14,610 Дејвид MALAN: [Беззвучен]? 352 00:15:14,610 --> 00:15:16,070 Океј, во ред, во ред, ќе го направите вашиот начин. 353 00:15:16,070 --> 00:15:19,590 Добро, така чекор пет, како ние да ја направат вистинската чорап? 354 00:15:19,590 --> 00:15:22,310 Како да ја продолжи следната, тука? 355 00:15:22,310 --> 00:15:22,730 Да? 356 00:15:22,730 --> 00:15:24,300 ПУБЛИКАТА: Дигни десната нога. 357 00:15:24,300 --> 00:15:27,100 Дејвид MALAN: Дигни десната нога, ОК. 358 00:15:27,100 --> 00:15:29,330 Чекор шест? 359 00:15:29,330 --> 00:15:30,728 Брзо. 360 00:15:30,728 --> 00:15:31,202 Да. 361 00:15:31,202 --> 00:15:33,100 ПУБЛИКАТА: Најди отворен крај на чорап. 362 00:15:33,100 --> 00:15:34,440 Дејвид MALAN: Океј, се најде на отворено крајот на чорап. 363 00:15:34,440 --> 00:15:34,840 Толку добро. 364 00:15:34,840 --> 00:15:37,180 Значи тука, искрено, многу честа инстинкт само ќе биде 365 00:15:37,180 --> 00:15:39,880 стави на правото чорап, но дека премногу е прилично амбивалентна. 366 00:15:39,880 --> 00:15:42,750 Освен ако на компјутерот или човекот знае точно што значи тоа, 367 00:15:42,750 --> 00:15:45,160 тоа нема да биде да се изврши тоа, па еве, јас сум 368 00:15:45,160 --> 00:15:46,520 пронајдени отворањето на акции. 369 00:15:46,520 --> 00:15:48,222 Чекор Седум? 370 00:15:48,222 --> 00:15:49,700 ПУБЛИКАТА: допир прстите. 371 00:15:49,700 --> 00:15:51,070 Дејвид MALAN: допир прсти. 372 00:15:51,070 --> 00:15:53,546 Океј, па сега ќе одиме - 373 00:15:53,546 --> 00:15:56,480 Добро, јас одам да се земе некои слободи тука. 374 00:15:56,480 --> 00:15:57,110 Благодарам. 375 00:15:57,110 --> 00:15:59,210 Чекор осум? 376 00:15:59,210 --> 00:16:00,060 Стави во чорап. 377 00:16:00,060 --> 00:16:02,060 Океј, па сега јас мислам дека ние сме доволно блиску за сортирање на се 378 00:16:02,060 --> 00:16:03,480 ова дома. 379 00:16:03,480 --> 00:16:05,980 Добро, така што ова оди нагоре. 380 00:16:05,980 --> 00:16:07,950 Ќе го земам некои слободи со она што значи тоа, всушност. 381 00:16:07,950 --> 00:16:08,920 Стави чорап натаму. 382 00:16:08,920 --> 00:16:10,853 Добро, сега чекор девет? 383 00:16:10,853 --> 00:16:11,740 ПУБЛИКАТА: Ставете нога долу. 384 00:16:11,740 --> 00:16:12,510 Дејвид MALAN: Ви благодарам. 385 00:16:12,510 --> 00:16:15,610 Чекор девет, стави нога долу, и сега, ние може да се повтори. 386 00:16:15,610 --> 00:16:19,540 Па веројатно, сега можеме да одиме во чекор 10 и велат идентификуваат 387 00:16:19,540 --> 00:16:21,960 лево чорап, но тоа е веројатно веќе направено. 388 00:16:21,960 --> 00:16:24,100 >> И така тогаш, јас може да се најде на Повторете ги овие чекори. 389 00:16:24,100 --> 00:16:25,260 Но, овој вид моли на прашањето. 390 00:16:25,260 --> 00:16:28,100 Пред, за последен пат сакавме да се повторува нешто, ние 391 00:16:28,100 --> 00:16:30,730 тоа го правеше iteratively, повторно и повторно, за 392 00:16:30,730 --> 00:16:32,660 Секој циклус, така да зборува. 393 00:16:32,660 --> 00:16:36,420 Тоа би имало смисла да се користи телефонска линија со цел да се справи со двете 394 00:16:36,420 --> 00:16:38,470 на левата и десната чорап? 395 00:16:38,470 --> 00:16:40,460 Затоа што се чувствува како овие операции се доста 396 00:16:40,460 --> 00:16:43,090 идентични, освен за фактот дека еден започнува тука и еден 397 00:16:43,090 --> 00:16:44,850 започнува тука? 398 00:16:44,850 --> 00:16:47,400 Дали ние јамка, или само задржи пишување чекори 399 00:16:47,400 --> 00:16:48,745 10 и 11 и 12? 400 00:16:48,745 --> 00:16:50,540 ПУБЛИКАТА: јамка. 401 00:16:50,540 --> 00:16:52,240 >> Дејвид MALAN: Океј, па јамка. 402 00:16:52,240 --> 00:16:54,730 Јас всушност може да се рече само продолжувам да одам. 403 00:16:54,730 --> 00:16:55,720 Значи, зошто е тоа така? 404 00:16:55,720 --> 00:16:57,940 Па, ова е всушност првиот од нашите не-очигледно 405 00:16:57,940 --> 00:17:01,210 дизајн одлуки, а всушност, еден од параметрите со кои 406 00:17:01,210 --> 00:17:03,990 ќе почнат да се оцени, за нас и за вас, 407 00:17:03,990 --> 00:17:06,780 квалитетот на програмата е само колку добро дизајниран е тоа. 408 00:17:06,780 --> 00:17:09,619 Дали сте го направиле на минимална количина на работа потребен да се 409 00:17:09,619 --> 00:17:12,480 одам на работа, на повеќето брзо, или во однос на 410 00:17:12,480 --> 00:17:15,430 вашето време или во однос на водење на време на компјутерот? 411 00:17:15,430 --> 00:17:17,589 Колку операции е потребно да се изврши? 412 00:17:17,589 --> 00:17:20,180 Па веројатно, ова е можност за циклус, бидејќи 413 00:17:20,180 --> 00:17:22,829 штом ќе започнете со копирање и вметнување, како Џозеф ефикасно 414 00:17:22,829 --> 00:17:25,010 ќе почнете да го правите во моментот, ти си вид на губење на вашето 415 00:17:25,010 --> 00:17:27,140 време, и сте се двојно експресивен. 416 00:17:27,140 --> 00:17:30,260 >> Но, во исто време, овие се навистина само два посебни 417 00:17:30,260 --> 00:17:31,890 случаи, лево и десно. 418 00:17:31,890 --> 00:17:34,930 И додека пред, јас може да има 10 или 20 или повеќе чорапи во 419 00:17:34,930 --> 00:17:37,960 еден куп, тоа е дефинитивно има смисла да не имаат 50 линии на 420 00:17:37,960 --> 00:17:40,180 код велејќи провери ова чорап, тогаш следниот, 421 00:17:40,180 --> 00:17:41,300 тогаш следниот. 422 00:17:41,300 --> 00:17:43,450 Еве, тоа е малку помалку очигледни, и јас би предложи 423 00:17:43,450 --> 00:17:44,390 што би можеле да одат било начин. 424 00:17:44,390 --> 00:17:46,720 Ние или може да го имаат тоа јамка, иако само петелки 425 00:17:46,720 --> 00:17:50,620 двапати, или едноставно да копирате и залепите само малку 426 00:17:50,620 --> 00:17:53,270 тука за да одам на работа. 427 00:17:53,270 --> 00:17:55,210 Но оваа програма е кабриолет, така да се каже. 428 00:17:55,210 --> 00:17:59,120 Тоа би можело да има некои грешки, грешки или агол случаи, така да 429 00:17:59,120 --> 00:18:00,860 зборува, дека ние навистина не очекуваат. 430 00:18:00,860 --> 00:18:03,400 Ништо не беше во ред тоа време, но она што може да се качил во ред 431 00:18:03,400 --> 00:18:06,100 додека извршување на оваа програма? 432 00:18:06,100 --> 00:18:07,040 ПУБЛИКАТА: Вие не имате било какви чорапи. 433 00:18:07,040 --> 00:18:08,980 >> Дејвид MALAN: Значи не може да има чорапи има она. 434 00:18:08,980 --> 00:18:10,380 Па ајде сметаат дека аголот случај. 435 00:18:10,380 --> 00:18:14,670 Значи, ако ние би можеле да дојдете назад за чекор еден, па чекор беше еден 436 00:18:14,670 --> 00:18:16,540 наведнуваат надолу, така што проверки. 437 00:18:16,540 --> 00:18:21,250 Чекор два, ги собереш вашиот чорап, но потоа се пронајде соодветен чорап, 438 00:18:21,250 --> 00:18:22,420 идентификуваат право. 439 00:18:22,420 --> 00:18:25,050 Ние вид на направени бројни претпоставки, а тоа е, 440 00:18:25,050 --> 00:18:27,720 искрено, зошто програмата понекогаш несреќата. 441 00:18:27,720 --> 00:18:30,240 Ако, на програмерот, прават одредени претпоставки, како 442 00:18:30,240 --> 00:18:33,000 сигурно таму ќе биде чорапи или сигурно таму ќе 443 00:18:33,000 --> 00:18:35,310 да биде меморија лево во компјутерот, сигурно таму ќе 444 00:18:35,310 --> 00:18:37,420 да бидат диск простор на хард дискот - 445 00:18:37,420 --> 00:18:39,040 Па, ако се направат овие претпоставки, и тоа не е, 446 00:18:39,040 --> 00:18:41,880 всушност, реалноста, кој знае понекогаш она што на компјутерот 447 00:18:41,880 --> 00:18:42,520 случува да се направи? 448 00:18:42,520 --> 00:18:44,450 И понекогаш, кога ќе го добиете предење плажа топката или 449 00:18:44,450 --> 00:18:47,750 замрзнати Windows или слично, тоа е токму затоа што некои 450 00:18:47,750 --> 00:18:50,980 програмерот не очекуваат оние т.н. агол случаи. 451 00:18:50,980 --> 00:18:53,050 Што друго би можеле да се качил во ред во оваа програма? 452 00:18:53,050 --> 00:18:53,330 Да? 453 00:18:53,330 --> 00:18:55,950 >> ПУБЛИКАТА: Вие немате десната нога и левата нога. 454 00:18:55,950 --> 00:18:58,920 Дејвид MALAN: Океј, не може да има и десната нога и 455 00:18:58,920 --> 00:19:01,940 левата нога, и така оваа програма не може да биде универзално 456 00:19:01,940 --> 00:19:02,590 применливо. 457 00:19:02,590 --> 00:19:03,658 Другите? 458 00:19:03,658 --> 00:19:05,650 ПУБЛИКАТА: Можеби зедов сирак чорап. 459 00:19:05,650 --> 00:19:07,970 Дејвид MALAN: Јас би собрал сирак чорап, па 460 00:19:07,970 --> 00:19:11,250 не-појавување чорап дека само нема браќа и сестри, бидејќи јас сум 461 00:19:11,250 --> 00:19:13,650 загуби, тоа е растргнат, тоа е во миење уште, или слично. 462 00:19:13,650 --> 00:19:15,550 Така што, исто така, не има навистина се ракува. 463 00:19:15,550 --> 00:19:15,790 Да? 464 00:19:15,790 --> 00:19:17,510 ПУБЛИКАТА: Вие веќе може да има чорапи на. 465 00:19:17,510 --> 00:19:19,050 Дејвид MALAN: Јас веќе може да има чорапи на. 466 00:19:19,050 --> 00:19:20,080 Јас всушност не се провери. 467 00:19:20,080 --> 00:19:23,350 Ако немате чорапи On, потоа продолжи да го стори 468 00:19:23,350 --> 00:19:24,330 линија еден и два. 469 00:19:24,330 --> 00:19:24,980 И тоа може да се случи. 470 00:19:24,980 --> 00:19:26,880 Да заспие со вашите чорапи на и слично, па 471 00:19:26,880 --> 00:19:28,860 тоа, исто така, многу разумна агол случај. 472 00:19:28,860 --> 00:19:29,630 А можеби и еден друг? 473 00:19:29,630 --> 00:19:31,310 Публика: чорап е внатре кон надвор. 474 00:19:31,310 --> 00:19:34,000 Дејвид MALAN: Значи чорап е внатре кон надвор, па ние го сторивме нема грешки 475 00:19:34,000 --> 00:19:35,330 проверка, во кратки. 476 00:19:35,330 --> 00:19:38,550 Ние не провери дали состојбата на светот е како што очекуваме. 477 00:19:38,550 --> 00:19:41,310 Ние не провери дали ние всушност се најде она што го барате. 478 00:19:41,310 --> 00:19:43,310 >> И иако ова е вид на смешна пример 479 00:19:43,310 --> 00:19:46,110 вклучувајќи чорапи, на крајот на денот, ова е токму 480 00:19:46,110 --> 00:19:48,740 вид на начин на размислување треба да имате додека пишувате програми, 481 00:19:48,740 --> 00:19:51,740 дури и во гребење, како и во C, во JavaScript, во PHP, 482 00:19:51,740 --> 00:19:53,920 затоа што во спротивно, вашите програми ќе ги изложиме на 483 00:19:53,920 --> 00:19:56,980 еквивалент на која се врти плажа топката или само родот 484 00:19:56,980 --> 00:19:58,210 неточни резултати. 485 00:19:58,210 --> 00:20:00,250 Толку многу благодарение тука за да нашите писарот Јосиф. 486 00:20:00,250 --> 00:20:05,060 [Аплауз] 487 00:20:05,060 --> 00:20:06,850 >> Дејвид MALAN: Сите во право, па она што е во 488 00:20:06,850 --> 00:20:08,230 Всушност, компјутерска програма? 489 00:20:08,230 --> 00:20:09,670 Па, ајде да го земеме еден брз поглед на 490 00:20:09,670 --> 00:20:11,100 Претставникот еден тука. 491 00:20:11,100 --> 00:20:15,260 Значи ова е програма напишана на јазик наречен Ц Ц е 492 00:20:15,260 --> 00:20:17,830 прилично стар, овие денови, но многу понови јазици се изградени 493 00:20:17,830 --> 00:20:18,460 на врвот на неа. 494 00:20:18,460 --> 00:20:21,180 Всушност, PHP, еден од веб-центрични јазици ние ќе 495 00:20:21,180 --> 00:20:24,050 користете кон крајот термин е, се има она што се нарекува 496 00:20:24,050 --> 00:20:27,550 преведувач, програма со која е напишана во C, но повеќе за тоа 497 00:20:27,550 --> 00:20:28,690 во многу недели од сега. 498 00:20:28,690 --> 00:20:30,840 Но оваа програма, и тоа е она што значи да се пишува 499 00:20:30,840 --> 00:20:32,880 програма, иако многу едноставен. 500 00:20:32,880 --> 00:20:35,540 Имаме некои прилично криптичната синтакса тука, но може 501 00:20:35,540 --> 00:20:38,340 Веројатно се погоди, дури и ако никогаш не сум програмиран пред, за она 502 00:20:38,340 --> 00:20:39,750 оваа програма го прави тоа. 503 00:20:39,750 --> 00:20:43,640 Всушност, јас не знам што printf е, но печати сигурно 504 00:20:43,640 --> 00:20:45,700 conjures до идејата за печатење нешто. 505 00:20:45,700 --> 00:20:48,590 И така да, оваа програма е во крајна линија ќе испечатите 506 00:20:48,590 --> 00:20:50,250 зборовите: "Здраво, Светот". 507 00:20:50,250 --> 00:20:53,390 >> Сега, дали имате Mac или PC или Linux компјутер, шансите 508 00:20:53,390 --> 00:20:55,550 се, барем ако сте ја превзеле некои слободно 509 00:20:55,550 --> 00:20:58,000 достапен софтвер, можете да се пишува програми за 510 00:20:58,000 --> 00:21:00,310 свој лаптоп за сосема извесно време сега. 511 00:21:00,310 --> 00:21:03,040 На Mac OS, на пример, има оваа програма наречена 512 00:21:03,040 --> 00:21:05,340 Терминал кој доаѓа со Mac, тоа е обично во 513 00:21:05,340 --> 00:21:07,550 Комуналии папка, и тоа обично започнува црна и 514 00:21:07,550 --> 00:21:09,820 бело или црно-бела прозорец во кој имате 515 00:21:09,820 --> 00:21:11,410 прашува на кој можете да внесувате команди. 516 00:21:11,410 --> 00:21:13,060 Значи ова е всушност потсетува на она што компјутерите 517 00:21:13,060 --> 00:21:15,100 се користи за да биде пред графички кориснички 518 00:21:15,100 --> 00:21:16,710 интерфејси, GUIs, дојдоа заедно. 519 00:21:16,710 --> 00:21:19,200 Сега, во Windows, имаш сличен механизам во форма 520 00:21:19,200 --> 00:21:20,130 на командната линија. 521 00:21:20,130 --> 00:21:23,430 >> Но, она што јас ќе одам да направите тука е се отвори, да речеме, 522 00:21:23,430 --> 00:21:26,580 TextEdit повторно, па истата програма бевме користење за 523 00:21:26,580 --> 00:21:28,870 pseudocode пред еден момент, и јас одам да се оди напред и да 524 00:21:28,870 --> 00:21:30,080 пишувам мојата прва програма. 525 00:21:30,080 --> 00:21:34,030 Вклучуваат stdio.h, што и да значи, int главната 526 00:21:34,030 --> 00:21:36,880 празнина, што и да значи, а потоа во средината тука, 527 00:21:36,880 --> 00:21:40,560 printf ("Здраво, свет."). И потоа затворете понуда, 528 00:21:40,560 --> 00:21:42,340 затвори paren, запирка. 529 00:21:42,340 --> 00:21:44,460 Сега ќе одам да оди напред и само кликнете команда-S. Одам 530 00:21:44,460 --> 00:21:47,650 да оди напред и да ги зачувате ова како hello.c, па конвенција во 531 00:21:47,650 --> 00:21:50,530 светот на C програмскиот е името на датотеката точка в. 532 00:21:50,530 --> 00:21:52,880 Одам да само стави во Домашен директориум Џон Харвард, 533 00:21:52,880 --> 00:21:56,370 тука, кликнете на Зачувај, и сега јас ќе одам да си во текот на оваа 534 00:21:56,370 --> 00:21:59,110 терминален прозорец, кој повторно е оваа црна и бела линија 535 00:21:59,110 --> 00:22:00,860 каде што може да се изврши команди. 536 00:22:00,860 --> 00:22:04,550 >> Можам да ја стартувате програми со пишување на нивното име, а не со 537 00:22:04,550 --> 00:22:06,710 двојно кликање икони во вообичаената смисла на зборот. 538 00:22:06,710 --> 00:22:10,590 Но, нешто е за C е дека јазикот како C првиот 539 00:22:10,590 --> 00:22:13,150 доаѓа во оваа форма, нешто што се нарекува изворен код. 540 00:22:13,150 --> 00:22:15,400 Нешто што изгледа малку како англиски јазик, но е 541 00:22:15,400 --> 00:22:17,980 дефинитивно помалку како англиски јазик од pseudocode на Јосиф 542 00:22:17,980 --> 00:22:18,930 момент пред. 543 00:22:18,930 --> 00:22:20,560 Тоа е малку повеќе таинствени. 544 00:22:20,560 --> 00:22:22,830 Се чини да се следат некои модели или правила. 545 00:22:22,830 --> 00:22:25,300 Фактот дека имам големи загради, semicolons, цитати, 546 00:22:25,300 --> 00:22:28,240 агол загради, се чувствува како компјутер излезе со оваа 547 00:22:28,240 --> 00:22:29,250 вид на јазикот. 548 00:22:29,250 --> 00:22:32,010 Но, ако одам, сега, на овој прозорец за терминал, јас може да работи 549 00:22:32,010 --> 00:22:35,250 командата која се случува да конвертирате дека изворниот код е 550 00:22:35,250 --> 00:22:36,610 нешто што се нарекува објектен код. 551 00:22:36,610 --> 00:22:39,690 Тоа се случува да го конвертирате англиски како синтаксата за нули 552 00:22:39,690 --> 00:22:41,760 и оние, исто видови на нулите и ние 553 00:22:41,760 --> 00:22:42,820 зборуваше за среда. 554 00:22:42,820 --> 00:22:44,810 Сега, јас ќе одам да извршите команда наречен ѕвекот. 555 00:22:44,810 --> 00:22:47,750 Повеќе за ова во недели да дојде, но тоа е програма со 556 00:22:47,750 --> 00:22:52,330 која може да се конвертира hello.c во целиот куп 557 00:22:52,330 --> 00:22:53,640 на нули и единици. 558 00:22:53,640 --> 00:22:54,950 >> Сега, јас сум ја извршите оваа команда. 559 00:22:54,950 --> 00:22:57,940 Сум се кандидира ѕвекот, а потоа реков кандидира себе си на оваа датотека 560 00:22:57,940 --> 00:23:00,630 наречен hello.c, кои го создадоа момент пред, и 561 00:23:00,630 --> 00:23:02,090 ништо не чини да се случи. 562 00:23:02,090 --> 00:23:05,550 Но, навистина, ако јас појдов околу мојот домашен директориум, јас ќе ја видите 563 00:23:05,550 --> 00:23:09,620 дека ова глупаво име програмата a.out сега постои. 564 00:23:09,620 --> 00:23:12,250 Ова е само стандардното име за програмата кога пишувате со 565 00:23:12,250 --> 00:23:15,140 C. Ние може да ја замени тоа на крајот, но a.out е 566 00:23:15,140 --> 00:23:18,340 името на програмата Јас само претворена во нулите и. 567 00:23:18,340 --> 00:23:21,490 И сега дека тоа е оние кои и нули, мојот Мек, во овој случај, или 568 00:23:21,490 --> 00:23:24,670 вашиот Windows компјутер, да ги разберам оние битови, оние 569 00:23:24,670 --> 00:23:25,410 нулите и. 570 00:23:25,410 --> 00:23:29,130 И така, кога јас хит Внесете го гледам "Здраво, свет!" 571 00:23:29,130 --> 00:23:31,270 >> Но, тоа е малку кабриолет. 572 00:23:31,270 --> 00:23:34,110 Јас не сосема да се каже "Здраво, свет: воздух: - jharvard." Воздухот е 573 00:23:34,110 --> 00:23:35,020 името на мојот компјутер. 574 00:23:35,020 --> 00:23:37,730 Jharvard е името на сметка, така што не можам јасно 575 00:23:37,730 --> 00:23:41,070 изостави од програмата? 576 00:23:41,070 --> 00:23:42,480 Некој вид на линија пауза. 577 00:23:42,480 --> 00:23:45,150 Јас не го погоди еквивалент на Enter или на пајтон се врати, 578 00:23:45,150 --> 00:23:47,760 и ова е, пак, доказ на фактот дека компјутерите можат да 579 00:23:47,760 --> 00:23:49,800 само го направи она што им каже да го стори. 580 00:23:49,800 --> 00:23:52,400 И фактот дека јас не му кажете на компјутерот се движат на 581 00:23:52,400 --> 00:23:53,860 курсорот на следната линија - 582 00:23:53,860 --> 00:23:55,200 Па, тоа е сигурно нема да само го прават тоа 583 00:23:55,200 --> 00:23:56,750 надменно за мене. 584 00:23:56,750 --> 00:24:00,860 Значи, ако се навратам на моето програма, и велам \ n - 585 00:24:00,860 --> 00:24:03,180 Значи \ n, како што наскоро ќе видиме, е начинот на 586 00:24:03,180 --> 00:24:06,910 претставуваат чудни нешта како нова линија ликови, работите 587 00:24:06,910 --> 00:24:08,840 кои инаку би биле резултат на 588 00:24:08,840 --> 00:24:09,940 притискање на копчето Enter. 589 00:24:09,940 --> 00:24:11,730 Но, за сега, само знам дека притискање на копчето Enter ќе 590 00:24:11,730 --> 00:24:14,170 само бидете нашиот код изгледа чудно, така што светот одлучи, знаеш 591 00:24:14,170 --> 00:24:16,580 што, да работи поубава, да се задржи на една линија, да 592 00:24:16,580 --> 00:24:19,070 само кажете \ n претставува нова линија. 593 00:24:19,070 --> 00:24:22,260 Дозволете ми да resave мојот датотека, вратете се на прозорецот на терминалот, и 594 00:24:22,260 --> 00:24:25,290 прегласувањето a.out, Enter. 595 00:24:25,290 --> 00:24:28,374 Уште кабриолет, но зошто? 596 00:24:28,374 --> 00:24:29,750 >> ПУБЛИКАТА: [Беззвучен] 597 00:24:29,750 --> 00:24:31,540 Дејвид MALAN: Да, па јас треба да го прекомпајлирате. 598 00:24:31,540 --> 00:24:34,610 Значи да се состави програма само значи претворите од изворот 599 00:24:34,610 --> 00:24:37,660 кодот за објектниот код, изворниот код на оние кои и нули. 600 00:24:37,660 --> 00:24:40,830 Сега, самиот факт дека јас хит Зачувај во оваа TextEdit нема 601 00:24:40,830 --> 00:24:43,450 имајќи на оние нули и единици, затоа што прво треба да се 602 00:24:43,450 --> 00:24:48,260 кажете ѕвекот еј, јас сум смени оние линии на код, 603 00:24:48,260 --> 00:24:49,040 изворниот код. 604 00:24:49,040 --> 00:24:51,010 Вие треба да се регенерира a.out. 605 00:24:51,010 --> 00:24:52,990 Ништо не чини да се случи, но во компјутер, 606 00:24:52,990 --> 00:24:55,820 на командната линија, така да се каже, кога ништо не се случува, 607 00:24:55,820 --> 00:24:57,510 што обично значи се е во ред. 608 00:24:57,510 --> 00:24:59,040 Кога нешто не се случи, тоа значи 609 00:24:59,040 --> 00:25:00,420 сте збркана, генерално. 610 00:25:00,420 --> 00:25:04,020 >> Па ајде сега одам да a.out, и навистина сега, имам "hello, 611 00:25:04,020 --> 00:25:04,440 свет. " 612 00:25:04,440 --> 00:25:05,990 И сега, она што за овие нули и единици? 613 00:25:05,990 --> 00:25:07,520 Каде што, всушност, се оние? 614 00:25:07,520 --> 00:25:10,710 Па, не можам навистина само вид на ѕиркаат низ многу 615 00:25:10,710 --> 00:25:11,210 ефективно. 616 00:25:11,210 --> 00:25:12,650 Дозволете ми да се отвори TextEdit. 617 00:25:12,650 --> 00:25:14,060 Еве a.out. 618 00:25:14,060 --> 00:25:17,390 Дозволете ми да оди напред и да ја отворите оваа, а тоа е очигледно она што ми 619 00:25:17,390 --> 00:25:19,080 Програмата изгледа. 620 00:25:19,080 --> 00:25:21,570 Па јас отвори, не hello.c, но a.out. 621 00:25:21,570 --> 00:25:23,960 Но, ова не е всушност она што мојата програма навистина е. 622 00:25:23,960 --> 00:25:26,450 Јасно е дека ова е некој вид на азбучен карактери. 623 00:25:26,450 --> 00:25:28,670 Не гледам оние кои и нули, но ова е 624 00:25:28,670 --> 00:25:30,780 бидејќи a.out е програма. 625 00:25:30,780 --> 00:25:33,540 Нулите и - но TextEdit, како што сугерира името, тоа е 626 00:25:33,540 --> 00:25:37,130 само како Notepad на Windows, е само текст едитор, па тоа е 627 00:25:37,130 --> 00:25:39,730 збунувачки сите оние нули и единици, како 628 00:25:39,730 --> 00:25:41,870 иако тие беа, што? 629 00:25:41,870 --> 00:25:43,380 ASCII карактери. 630 00:25:43,380 --> 00:25:45,020 >> Па се потсетиме на Среда, ние само што дојде со оваа 631 00:25:45,020 --> 00:25:48,740 произволни мапирање на броеви, или битови, да букви од 632 00:25:48,740 --> 00:25:51,690 азбука и интерпукциски знаци и симболи и слично. 633 00:25:51,690 --> 00:25:54,920 Значи TextEdit, дека тоа е текст едитор е misinterpreting 634 00:25:54,920 --> 00:25:57,270 овие модели на нули и оние кои би требало да се 635 00:25:57,270 --> 00:25:59,990 печатење зборови, како "Здраво, свет". Тоа им прикажување 636 00:25:59,990 --> 00:26:02,150 како ASCII, а тоа е зошто тоа изгледа малку неуредна. 637 00:26:02,150 --> 00:26:04,910 Сега, постојат некои совети на коректност тука. 638 00:26:04,910 --> 00:26:08,090 Забележите ако јас се нагласи, има навестување на всушност "hello, 639 00:26:08,090 --> 00:26:10,810 светот ", па некаде во таа програма е 640 00:26:10,810 --> 00:26:12,120 казната напишав. 641 00:26:12,120 --> 00:26:14,610 Но, ајде да одиме напред, а сега гледам со различни програма. 642 00:26:14,610 --> 00:26:17,420 Ова не е оној што ќе ја користат таа често, но исто така доаѓа со 643 00:26:17,420 --> 00:26:19,970 Mac и ќе биде во внатрешноста на CS50 апаратот. 644 00:26:19,970 --> 00:26:23,940 Дозволете ми да оди напред и да се отвори со програма наречена XXD. 645 00:26:23,940 --> 00:26:26,530 >> Назад во денот, повеќето програми беа именувани прилично cryptically, 646 00:26:26,530 --> 00:26:28,200 и така на трендот продолжува. 647 00:26:28,200 --> 00:26:31,160 Но-б значи плукаат оваа програма се издвојува како бинарни. 648 00:26:31,160 --> 00:26:32,330 Не го работи. 649 00:26:32,330 --> 00:26:35,770 Покажи ми го, како оние кои и нули, а тоа е C 650 00:26:35,770 --> 00:26:37,190 програмата ние само го напишал. 651 00:26:37,190 --> 00:26:39,920 Сега, јас, како човек тука, јас искрено немам идеја што 652 00:26:39,920 --> 00:26:42,230 овие различни модели на нули и единици претставуваат. 653 00:26:42,230 --> 00:26:45,320 Назад во денот, јас, со моите удар картички или слично, би 654 00:26:45,320 --> 00:26:48,080 всушност треба да се погледне до она што овие различни модели на 655 00:26:48,080 --> 00:26:51,560 01111000, всушност претставуваат. 656 00:26:51,560 --> 00:26:54,390 Или уште полошо, јас ќе треба да се направи на удирање или создавањето 657 00:26:54,390 --> 00:26:56,130 од овие модели на оние кои и нули. 658 00:26:56,130 --> 00:27:00,410 Но, за сега, се на верба дека процесорот, Интел внатре, така 659 00:27:00,410 --> 00:27:03,440 да се каже, внатрешноста на сите наши компјутери, овие денови, знае 660 00:27:03,440 --> 00:27:05,100 како да се интерпретираат овие нули и единици. 661 00:27:05,100 --> 00:27:07,010 А некои нули и единици значи печати. 662 00:27:07,010 --> 00:27:09,040 Некои нулите и значи испушти звук. 663 00:27:09,040 --> 00:27:13,630 Некои нули и оние значи да внесе корисникот од тастатура. 664 00:27:13,630 --> 00:27:15,960 Има сите видови на различни модели, но за среќа, 665 00:27:15,960 --> 00:27:19,680 како луѓето, само генерално треба да се грижите за програмирање на 666 00:27:19,680 --> 00:27:21,270 оваа прилично високо ниво. 667 00:27:21,270 --> 00:27:24,320 И во други CS класи можете да истражувам надолу подлабоко и да бараат 668 00:27:24,320 --> 00:27:26,820 на работите како оние нули и единици, или уште 669 00:27:26,820 --> 00:27:28,000 други работи уште. 670 00:27:28,000 --> 00:27:29,210 >> Па сега ајде да конвертирате ова. 671 00:27:29,210 --> 00:27:32,550 Ајде да се движи многу брзо далеку од Ц и се движи кон нешто 672 00:27:32,550 --> 00:27:36,390 малку повеќе утешна, малку повеќе возбудлив, во таа 673 00:27:36,390 --> 00:27:39,340 можеме да добиеме назад нашите анимации и звуци и слично 674 00:27:39,340 --> 00:27:40,940 јасно ни избега во оваа 675 00:27:40,940 --> 00:27:42,480 прилично примитивни интерфејс. 676 00:27:42,480 --> 00:27:46,430 Значи ова истата програма во C може да биде претставен сега во овој 677 00:27:46,430 --> 00:27:50,060 програмски јазик наречен гребење како што следува. 678 00:27:50,060 --> 00:27:54,230 Ова е еквивалент на ова Здраво светот програма напишана во 679 00:27:54,230 --> 00:27:57,370 оваа загатка парче стил јазик наречен нула. 680 00:27:57,370 --> 00:28:00,600 Па дозволете ми да оди напред и се отвори оваа многу програма. 681 00:28:00,600 --> 00:28:01,850 Тоа повторно ја повика нула. 682 00:28:01,850 --> 00:28:03,880 Тоа е слободно достапна, а тоа е истото што 683 00:28:03,880 --> 00:28:05,120 Започнете денес натаму. 684 00:28:05,120 --> 00:28:07,790 >> Значи ова овде е нула, и тоа е растурени во неколку 685 00:28:07,790 --> 00:28:09,700 различни парчиња. 686 00:28:09,700 --> 00:28:12,690 На самиот врв во право, имаме т.н. сцена, и 687 00:28:12,690 --> 00:28:13,670 навистина, тоа е каде што колачиња 688 00:28:13,670 --> 00:28:15,440 врши само малку пред. 689 00:28:15,440 --> 00:28:19,660 И за таа фаза се работи вика sprites, ликови, или 690 00:28:19,660 --> 00:28:21,030 предмети или лица. 691 00:28:21,030 --> 00:28:23,320 Тоа навистина не е важно колку мислите за нив, но тие 692 00:28:23,320 --> 00:28:26,740 се програмабилни, подвижни работи, и во овој случај, оваа 693 00:28:26,740 --> 00:28:30,730 програма со која нашите студентски напиша има неколку джинджифилово 694 00:28:30,730 --> 00:28:32,990 колачиња, неколку кружни колачиња, целиот куп на 695 00:28:32,990 --> 00:28:35,430 срца, целиот куп на очила. 696 00:28:38,170 --> 00:28:42,420 Поради ова, тој или таа е во состојба да се програмира секоја од овие 697 00:28:42,420 --> 00:28:44,720 индивидуални ликови одделно. 698 00:28:44,720 --> 00:28:46,480 >> Сега, она што значи да се програмираат овие ликови? 699 00:28:46,480 --> 00:28:49,440 Па, дозволете ми да оди напред и да кликнете на овој левата рака куки 700 00:28:49,440 --> 00:28:51,830 и дојдете во текот на горниот лев тука. 701 00:28:51,830 --> 00:28:53,670 Во горниот лев агол на мојот екран сега е 702 00:28:53,670 --> 00:28:55,280 т.н. скрипти област. 703 00:28:55,280 --> 00:28:58,790 Ова е вид на празно чеша, на почетокот, кон која можам 704 00:28:58,790 --> 00:29:01,540 drag and drop загатка парчиња кои, искрено, дали 705 00:29:01,540 --> 00:29:03,020 токму она што велат тие. 706 00:29:03,020 --> 00:29:05,820 На самиот врв на овој магацинот на мозаик парчиња е зборот 707 00:29:05,820 --> 00:29:09,340 Кога зелено знаме Кликање, и ако не се забележи порано, 708 00:29:09,340 --> 00:29:12,300 начинот на кој јас започнавме куки песната беше кликање, буквално, 709 00:29:12,300 --> 00:29:13,320 зелено знаме. 710 00:29:13,320 --> 00:29:16,590 Така што мозаик парче во горниот лев има значи кога 711 00:29:16,590 --> 00:29:19,780 човечки кликне на зелено знаме, продолжи да го стори 712 00:29:19,780 --> 00:29:21,110 следниве работи. 713 00:29:21,110 --> 00:29:23,330 >> Сега, што тие куки продолжи да направам? 714 00:29:23,330 --> 00:29:25,810 Јас навистина не знам како да се интерпретираат ова сеуште, но 715 00:29:25,810 --> 00:29:29,220 куки очигледно постави жлебот на нула, тогаш тоа чекав 716 00:29:29,220 --> 00:29:31,740 три секунди, а потоа го промени своето група на една, тогаш тоа 717 00:29:31,740 --> 00:29:33,590 чекаше една секунда, а потоа го промени своето 718 00:29:33,590 --> 00:29:35,100 жлебот назад до еден. 719 00:29:35,100 --> 00:29:37,373 А потоа тоа всушност изгледа како малку на бубачка, не треба да 720 00:29:37,373 --> 00:29:39,440 треба да го промени својот ритам повторно и повторно, освен ако тоа е 721 00:29:39,440 --> 00:29:43,380 се менува на друго место, но оваа серија на чекори е она што е 722 00:29:43,380 --> 00:29:46,800 диктираат однесувањето на овој колаче. 723 00:29:46,800 --> 00:29:49,180 Па ајде всушност дојдете назад и не гледам нешто 724 00:29:49,180 --> 00:29:50,430 толку комплексен досега. 725 00:29:50,430 --> 00:29:52,260 Дозволете ми да оди напред и да одат во датотеката, Нов, 726 00:29:52,260 --> 00:29:53,560 и да добијат чиста чеша. 727 00:29:53,560 --> 00:29:56,590 >> Па сега, јас навистина имаат празен сценариото област, празна сцена, 728 00:29:56,590 --> 00:29:59,380 со нашите стандардно самовила нула, а во горниот лев 729 00:29:59,380 --> 00:30:01,670 на мојот екран имам палетата на сите нивни 730 00:30:01,670 --> 00:30:03,400 достапни мозаик парчиња. 731 00:30:03,400 --> 00:30:06,300 И ние не ќе помине низ речиси дека многу од овие работи 732 00:30:06,300 --> 00:30:09,470 денес, бидејќи, повторно, повеќето се очигледен, но ние ќе 733 00:30:09,470 --> 00:30:12,370 обидете се да ги категоризирате и укажеме на сличностите 734 00:30:12,370 --> 00:30:15,380 со овие идни јазици на кои ние ќе се нурне. 735 00:30:15,380 --> 00:30:19,180 А во горниот лев тука е првиот Кога зелено знаме Кликање, 736 00:30:19,180 --> 00:30:22,170 па нека ме довлечкаат овој овде, одзумирате малку. 737 00:30:22,170 --> 00:30:25,780 И ако јас кликнете на зелено знаме, ништо навистина се случува бидејќи 738 00:30:25,780 --> 00:30:29,360 Не сум спроведен од секоја логика, секоја изјава така да се каже, да се 739 00:30:29,360 --> 00:30:31,040 дека зелено знаме, па да ми се обратите до 740 00:30:31,040 --> 00:30:32,500 категории овде. 741 00:30:32,500 --> 00:30:34,840 Јас сум моментално во контрола категорија. 742 00:30:34,840 --> 00:30:37,630 Јас сум наместо ќе одат надолу кон Гледа категорија, и 743 00:30:37,630 --> 00:30:39,970 има еден куп на работи тука, кои велат дека Кажи, 744 00:30:39,970 --> 00:30:43,110 Мислам, ја менуваат бојата, Switch костимот. 745 00:30:43,110 --> 00:30:44,860 >> Па можете да направите глупави работи со носии и 746 00:30:44,860 --> 00:30:45,870 звуци и слично. 747 00:30:45,870 --> 00:30:49,970 Дозволете ми да оди напред и да речеме каже, и сега забележите како што влечете 748 00:30:49,970 --> 00:30:52,940 и да го испуштите оваа загатка парче, тоа се случува да сакате да бравата 749 00:30:52,940 --> 00:30:55,010 во соодветните форма. 750 00:30:55,010 --> 00:30:58,020 Па кога ќе одиме напред и нека одат на мојот глушец, тие заклучуваат 751 00:30:58,020 --> 00:31:01,770 заедно, а сега ако одам над тука и кликнете на зелено знаме, 752 00:31:01,770 --> 00:31:05,910 мачката се всушност каже здраво, бидејќи тоа е она што е внатре 753 00:31:05,910 --> 00:31:06,980 на овој белата кутија. 754 00:31:06,980 --> 00:31:08,900 Наскоро ќе видите дека ова белата кутија е она што се нарекува 755 00:31:08,900 --> 00:31:10,250 аргумент, или параметар. 756 00:31:10,250 --> 00:31:12,560 Тоа е начин на промена на однесувањето на, во овој случај, 757 00:31:12,560 --> 00:31:15,070 загатка парче, но ако сакам да кажам точно она што го рече 758 00:31:15,070 --> 00:31:18,610 пред, да речеме здраво, свет, јас сега може да се врати овде, 759 00:31:18,610 --> 00:31:21,990 кликнете игра, и "Здраво, Светот" е она што го рече. 760 00:31:21,990 --> 00:31:24,340 >> Значи ние сме буквално програмирање сега. 761 00:31:24,340 --> 00:31:27,540 Тоа не е сето тоа релевантни за програмата, но барем 762 00:31:27,540 --> 00:31:30,140 тоа е малку повеќе привлечни од нешто што изгледа, во 763 00:31:30,140 --> 00:31:31,300 прв поглед се допаѓа ова. 764 00:31:31,300 --> 00:31:34,190 И ние многу брзо може да се добие сè повеќе и повеќе експресивна 765 00:31:34,190 --> 00:31:36,600 бидејќи во гребење, како и во другите јазици, таму е сè 766 00:31:36,600 --> 00:31:40,010 видови на извештаи не, само кажете или печатење нешто, но 767 00:31:40,010 --> 00:31:42,650 можете да ги правите нештата како да чека, ние едноставно се виде со 768 00:31:42,650 --> 00:31:44,240 колачето, некои бројот на секунди. 769 00:31:44,240 --> 00:31:46,440 Можете да се пуштаат звуци во околината на гребење само 770 00:31:46,440 --> 00:31:49,050 како што можете да во нормални компјутерска програма Пушти звук. 771 00:31:49,050 --> 00:31:52,440 Можете да проверите она што се нарекува Булова изрази. 772 00:31:52,440 --> 00:31:55,630 Па сега, ајде да почнеме да го додадете во нашата раководство некои терминологија 773 00:31:55,630 --> 00:31:58,840 кои, всушност, се однесува на пример дека Јосиф и го направив 774 00:31:58,840 --> 00:32:00,080 тука со чорапи. 775 00:32:00,080 --> 00:32:03,040 Значи извештаи се само изјавите на факт. 776 00:32:03,040 --> 00:32:04,160 Го направите тоа. 777 00:32:04,160 --> 00:32:07,370 Директива за самовила, или мене човекот, да се направи нешто. 778 00:32:07,370 --> 00:32:10,420 Булова изразување е нешто што има вредност, 779 00:32:10,420 --> 00:32:14,580 т.н. логичка вредност, тоа е или нула или еден, лажни или 780 00:32:14,580 --> 00:32:17,890 точно, надвор или во, или без да. 781 00:32:17,890 --> 00:32:19,730 Не е важно колку мислите дека за тоа, но тоа е 782 00:32:19,730 --> 00:32:20,700 бинарни држава. 783 00:32:20,700 --> 00:32:22,610 Како Нејт дискутира во видео средата, две 784 00:32:22,610 --> 00:32:23,570 различни нешта. 785 00:32:23,570 --> 00:32:25,740 >> Значи во нула, Булова изрази случи да се погледне 786 00:32:25,740 --> 00:32:28,910 како овие сини објекти таму, и во овој случај, прашањето 787 00:32:28,910 --> 00:32:30,960 ознака значи дека сте поставување на прашање. 788 00:32:30,960 --> 00:32:34,250 Е мачка, или самовила, допирање на глувчето? 789 00:32:34,250 --> 00:32:36,580 Значи ова е само еден пример на гребење блок што се случува 790 00:32:36,580 --> 00:32:39,950 за да ни овозможи да се провери да или не, е на глувчето допирање на 791 00:32:39,950 --> 00:32:40,790 самовила на екранот? 792 00:32:40,790 --> 00:32:42,840 И ова може да биде корисно ако навистина сакате да ги правите нештата 793 00:32:42,840 --> 00:32:43,820 со вашиот глушец. 794 00:32:43,820 --> 00:32:46,470 Во прилог на Булова изрази, имаме работи 795 00:32:46,470 --> 00:32:49,110 како е на глувчето надолу, па може да се открие дека вид на 796 00:32:49,110 --> 00:32:50,200 прашање, како и. 797 00:32:50,200 --> 00:32:52,590 Ние можеме да правиме математика ако навистина сакате, и има 798 00:32:52,590 --> 00:32:55,170 всушност повеќе привлечни цели за овој отколку само чист од 799 00:32:55,170 --> 00:32:56,400 аритметика, како што ќе видиме. 800 00:32:56,400 --> 00:32:59,690 Псевдо случајноста и правење на вашата програма се чини дека мислат 801 00:32:59,690 --> 00:33:03,490 или се однесуваат поинаку врз основа на некои навидум случајни вредности, 802 00:33:03,490 --> 00:33:06,610 и тогаш имаме работи како Булова изрази како и. 803 00:33:06,610 --> 00:33:08,830 Значи, ако навистина сакате да се провери две вредности, ќе видиме во 804 00:33:08,830 --> 00:33:11,110 Изгребете дека ние всушност може да го тестира дали ова е 805 00:33:11,110 --> 00:33:13,190 точно и тоа е точно. 806 00:33:13,190 --> 00:33:15,300 На пример, во случај на моите чорапи, би можел да сум на 807 00:33:15,300 --> 00:33:19,045 самиот крај поставува прашањето ако не чорап е вклучен и право чорап 808 00:33:19,045 --> 00:33:20,610 е вклучено, се повлече. 809 00:33:20,610 --> 00:33:22,710 Ти си Сето тоа е направено за денот, така што ќе биде 810 00:33:22,710 --> 00:33:24,300 можност за тоа. 811 00:33:24,300 --> 00:33:27,740 >> Значи, да оди напред и да се обидат да го состави некои од овие заедно 812 00:33:27,740 --> 00:33:31,570 и оди во неколку примери повеќе 813 00:33:31,570 --> 00:33:32,610 релевантни од оваа. 814 00:33:32,610 --> 00:33:35,770 Па дозволете ми да оди напред тука и се отворат некои од примерите 815 00:33:35,770 --> 00:33:38,350 дека секогаш ќе биде на веб-страницата на курсот, како и, и 816 00:33:38,350 --> 00:33:39,870 отвори hello2. 817 00:33:39,870 --> 00:33:42,910 Значи во hello2 тука, имаме програма со која го прави неколку 818 00:33:42,910 --> 00:33:46,290 работи, но тоа не е го прави тоа како ефикасно како што ние би можеле да. 819 00:33:46,290 --> 00:33:48,900 Па еве што вели: "Здраво, свет" за една секунда и потоа чека 820 00:33:48,900 --> 00:33:49,450 за една секунда. 821 00:33:49,450 --> 00:33:51,720 И тогаш тоа го прави повторно, а потоа прави тоа повторно. 822 00:33:51,720 --> 00:33:55,530 Значи, ако јас кликнете на зелено знаме, гребење вели: "Здраво, свет. 823 00:33:55,530 --> 00:33:57,160 Здраво, свет. 824 00:33:57,160 --> 00:34:00,080 Здраво, свет. "И ова е очигледно кандидат сега за 825 00:34:00,080 --> 00:34:00,860 подобрување. 826 00:34:00,860 --> 00:34:03,070 >> Што е маргинално подобрување, се надевам, ние може да 827 00:34:03,070 --> 00:34:07,610 сега се направи ако гребење поддржува концептот? 828 00:34:07,610 --> 00:34:08,310 Некој вид на јамка. 829 00:34:08,310 --> 00:34:10,960 Некој вид на повторување, сега, би било убаво, па да ми 830 00:34:10,960 --> 00:34:11,920 всушност се обиде тоа. 831 00:34:11,920 --> 00:34:13,870 Дозволете ми, всушност, оди и да се движат ова. 832 00:34:13,870 --> 00:34:16,449 Значи известување може да одвои блокови така лесно, како можете да додадете на 833 00:34:16,449 --> 00:34:17,420 прикачете ги. 834 00:34:17,420 --> 00:34:20,730 Дозволете ми да одат под контрола, дојдете тука, и навистина, 835 00:34:20,730 --> 00:34:24,000 има оваа загатка парче тука, Повторете и засекогаш и 836 00:34:24,000 --> 00:34:24,870 Засекогаш Ако. 837 00:34:24,870 --> 00:34:28,500 Значи има голем број на начини на изразување looping конструкции 838 00:34:28,500 --> 00:34:29,340 во нула. 839 00:34:29,340 --> 00:34:31,730 На онаа што веројатно сакате тука не е вечно, бидејќи јас само 840 00:34:31,730 --> 00:34:34,639 сакате ова да се случи три пати, но веројатно Повторете. 841 00:34:34,639 --> 00:34:38,449 Значи, да ме довлечкаат Повторете над тука, drag and drop, и 842 00:34:38,449 --> 00:34:42,530 сега наместо да се каже "Здраво, свет" три одделни моменти, 843 00:34:42,530 --> 00:34:44,230 дозволете ми да повлечете оваа загатка парче тука. 844 00:34:44,230 --> 00:34:46,610 И иако тоа не чини да се вклопи, на програмата е паметен 845 00:34:46,610 --> 00:34:48,920 доволно за да се реализира тоа ќе расте да се пополни, па тоа е 846 00:34:48,920 --> 00:34:51,270 форми таа материја, а не апсолутна големина. 847 00:34:51,270 --> 00:34:54,030 Дозволете ми да го промени повторување до три, а сега пушти ме 848 00:34:54,030 --> 00:34:56,560 напред и повлечете Чекај една секунда во таму, како и. 849 00:34:56,560 --> 00:34:59,220 Тоа се случува да се прибере како добро, па сега ќе одам да влечете 850 00:34:59,220 --> 00:35:01,370 овие момци овде и само да ги фрли далеку, бидејќи јас 851 00:35:01,370 --> 00:35:02,710 не им треба повеќе. 852 00:35:02,710 --> 00:35:05,920 Дозволете ми да одзумирате и кликнете на зелено знаме сега, и ние имаме 853 00:35:05,920 --> 00:35:09,600 истата програма, но, како што предвиде, подобриот 854 00:35:09,600 --> 00:35:12,200 дизајниран бидејќи можете да си замислите колку лошо оваа програма 855 00:35:12,200 --> 00:35:14,410 ќе добие, секако, естетски, ако мораше да се 856 00:35:14,410 --> 00:35:16,640 започнете со копирање и вметнување, копирање и вметнување, или 857 00:35:16,640 --> 00:35:20,020 влечење и пуштање на истата ебам работи повторно и повторно. 858 00:35:20,020 --> 00:35:22,260 >> Сега, едноставно велејќи нешта на екранот, печатење на 859 00:35:22,260 --> 00:35:25,350 екран, навистина не се сите возбудливи, па ајде отвори 860 00:35:25,350 --> 00:35:26,580 трети варијанса тука. 861 00:35:26,580 --> 00:35:29,810 И сега, како што ќе видите, ова брзо ќе добиете досадно - 862 00:35:29,810 --> 00:35:30,850 [Meow] 863 00:35:30,850 --> 00:35:31,940 Дејвид MALAN: - но тоа е исто така еден вид на слатки. 864 00:35:31,940 --> 00:35:35,244 [Meow] 865 00:35:35,244 --> 00:35:37,460 Дејвид MALAN: Океј, па подобро, а ние сигурно може да го користат 866 00:35:37,460 --> 00:35:41,060 исто транзиција на chunking на овој горе во looping 867 00:35:41,060 --> 00:35:43,520 структура, но, ајде да се направи поинтересна уште. 868 00:35:43,520 --> 00:35:47,480 >> Дозволете ми да оди напред и да се отвори четвртиот варијанса тука, каде што 869 00:35:47,480 --> 00:35:50,020 преземат работите еден чекор понатаму. 870 00:35:50,020 --> 00:35:54,450 Па според тоа, глупо иако ова е прво 871 00:35:54,450 --> 00:35:58,530 поглед, она што е оваа програма ќе правиме? 872 00:35:58,530 --> 00:35:59,790 Тоа ќе meow еднаш. 873 00:35:59,790 --> 00:36:00,160 Зошто? 874 00:36:00,160 --> 00:36:03,340 Па, еден е, колку што знам, секогаш помалку од две. 875 00:36:03,340 --> 00:36:04,890 Нема поим на случајноста тука. 876 00:36:04,890 --> 00:36:07,240 Јас сум буквално хард-кодирани еден и два, но тоа е 877 00:36:07,240 --> 00:36:10,370 пример сега на всушност користење на Булова изразување. 878 00:36:10,370 --> 00:36:13,650 Многу сличен како Џозеф направи во неговата pseudocode, вовлекувањето АКО 879 00:36:13,650 --> 00:36:17,170 ќе најдете појавување на чорапи потоа го направите следново, тука имаме 880 00:36:17,170 --> 00:36:19,750 израз Ако некој е помалку од две ТОГАШ - 881 00:36:19,750 --> 00:36:21,820 и всушност ние дури имаат малку вовлекување, 882 00:36:21,820 --> 00:36:24,480 каде пурпурна е малку вовлечен на правото - 883 00:36:24,480 --> 00:36:26,600 Тогаш сте ќе да ја играат звук meow. 884 00:36:26,600 --> 00:36:30,060 Сега, во овој случај, тоа е секогаш помалку од две, така што ова 885 00:36:30,060 --> 00:36:31,970 е вид на отпад на состојба. 886 00:36:31,970 --> 00:36:34,890 Но, ние ќе бидеме во можност, како што ќе видиме, да го приклучиш други работи во 887 00:36:34,890 --> 00:36:37,420 овие променливи каде еден и два сега сте. 888 00:36:37,420 --> 00:36:41,340 Па ајде сега преминете на пример пет од овие неколку 889 00:36:41,340 --> 00:36:45,850 hellos и погледнеме во она што оваа програма ќе направи. 890 00:36:45,850 --> 00:36:48,710 >> Па сега, по англиски реченица, како го прави ова 891 00:36:48,710 --> 00:36:51,460 Програмата се однесуваат? 892 00:36:51,460 --> 00:36:52,950 ПУБЛИКАТА: мјаукања половина од времето. 893 00:36:52,950 --> 00:36:55,380 Дејвид MALAN: половина Meow на времето, така што ова е начин на 894 00:36:55,380 --> 00:36:56,700 пренесување многу едноставна идеја. 895 00:36:56,700 --> 00:36:59,400 И покрај тоа што се случи да биде користење на некои нееднаквости тука 896 00:36:59,400 --> 00:37:01,860 во некои бројки, ова е навистина само programmatical 897 00:37:01,860 --> 00:37:09,490 начин, на прецизен начин, да се каже ако проблемот доаѓа up глави, одете 898 00:37:09,490 --> 00:37:10,270 напред и meow. 899 00:37:10,270 --> 00:37:13,540 Или обратно, ако проблемот доаѓа до опашки, не meow. 900 00:37:13,540 --> 00:37:15,110 И во овој случај, како ние да го изразат тоа? 901 00:37:15,110 --> 00:37:17,950 Ние ќе ги собереш на случаен број од 1 до 10, а ако тоа 902 00:37:17,950 --> 00:37:21,110 бројот е помал од 6, оди напред и да meow. 903 00:37:21,110 --> 00:37:22,260 И како тоа се овде? 904 00:37:22,260 --> 00:37:24,620 Па повторно, забележуваат само влечење и пуштање и 905 00:37:24,620 --> 00:37:26,190 работи брави на своето место. 906 00:37:26,190 --> 00:37:28,020 >> Па сега ајде да видиме дали ова случајноста работи. 907 00:37:28,020 --> 00:37:29,845 Дозволете ми да оди напред и да кликнете на зелено знаме. 908 00:37:29,845 --> 00:37:31,120 [Meow] 909 00:37:31,120 --> 00:37:32,000 Дејвид MALAN: Океј. 910 00:37:32,000 --> 00:37:33,430 [Meow] 911 00:37:33,430 --> 00:37:35,260 Дејвид MALAN: Океј. 912 00:37:35,260 --> 00:37:38,510 Океј, добро, па имаме глави, глави, опашки ефективно. 913 00:37:38,510 --> 00:37:39,295 Опашки. 914 00:37:39,295 --> 00:37:39,590 [Meow] 915 00:37:39,590 --> 00:37:41,829 Дејвид MALAN: Глави. 916 00:37:41,829 --> 00:37:43,220 [Meow] 917 00:37:43,220 --> 00:37:44,040 Дејвид MALAN: Одлично. 918 00:37:44,040 --> 00:37:46,220 Тоа секогаш е непријатно кога само статистички ќе добие лоша 919 00:37:46,220 --> 00:37:48,510 работи, а тоа е сите глави, а на програмата всушност не 920 00:37:48,510 --> 00:37:49,230 работи како што би се надеваме. 921 00:37:49,230 --> 00:37:51,210 Но овој пат, таа работеше, а ние се чини дека, ако ние не 922 00:37:51,210 --> 00:37:53,830 овој бесконечен број на пати, 50% шанси. 923 00:37:53,830 --> 00:37:56,950 Сега повторно не сето тоа интересно, само правење мачки 924 00:37:56,950 --> 00:37:59,840 meow, па ајде да видиме ако не можеме да ги унапредат овој малку подалеку 925 00:37:59,840 --> 00:38:01,820 тука во верзија шест. 926 00:38:01,820 --> 00:38:05,620 Па сега, имаме навистина досадни верзија - 927 00:38:05,620 --> 00:38:08,215 [Мјаукања на секои неколку секунди] 928 00:38:08,215 --> 00:38:10,640 Дејвид MALAN: - и тоа е она што е познато, воопшто, како 929 00:38:10,640 --> 00:38:11,670 бесконечна јамка. 930 00:38:11,670 --> 00:38:14,190 >> Значи бесконечна јамка во овој случај се чувствува лошо. 931 00:38:14,190 --> 00:38:16,970 Тоа е дефинитивно ќе почнат да звучи лошо, а сепак бесконечна 932 00:38:16,970 --> 00:38:18,740 петелки не се секогаш лоши. 933 00:38:18,740 --> 00:38:20,910 Можете да мислам на контекстот во компјутерски програми каде што би 934 00:38:20,910 --> 00:38:22,910 всушност сакаат бесконечна јамка? 935 00:38:22,910 --> 00:38:23,691 Да? 936 00:38:23,691 --> 00:38:26,520 ПУБЛИКАТА: Кога сакате да се провери состојба. 937 00:38:26,520 --> 00:38:28,240 Дејвид MALAN: Океј, кога сакате да се задржи проверка на состојба? 938 00:38:28,240 --> 00:38:29,190 Како што? 939 00:38:29,190 --> 00:38:30,440 ПУБЛИКАТА: [Беззвучен] 940 00:38:36,060 --> 00:38:38,170 Дејвид MALAN: Океј, добро, па ако сте имале некои програмата, некои 941 00:38:38,170 --> 00:38:40,440 вид на home automation работа, каде што сакате постојано да 942 00:38:40,440 --> 00:38:41,980 Мониторот е нешто случајот. 943 00:38:41,980 --> 00:38:42,850 Дали светлата на? 944 00:38:42,850 --> 00:38:45,020 Дали светлата на затоа што можеби имате тајмер, и 945 00:38:45,020 --> 00:38:47,360 сакате да ги одам, можеби ќе треба да се направи нешто 946 00:38:47,360 --> 00:38:48,290 повторно и повторно. 947 00:38:48,290 --> 00:38:50,540 И всушност, станува збор за тајмери, секој од вас кои имаат 948 00:38:50,540 --> 00:38:53,100 часовници на вашиот компјутер или дигитални часовници, тоа е една 949 00:38:53,100 --> 00:38:54,210 бесконечна јамка. 950 00:38:54,210 --> 00:38:56,980 Таа продолжува да го надградува времето, бидејќи тоа е постојано 951 00:38:56,980 --> 00:38:59,750 проверка и проверка и проверка има времето се менува, 952 00:38:59,750 --> 00:39:01,000 и ако е така, о, Боже. 953 00:39:03,670 --> 00:39:04,740 На часовникот конечно се промени. 954 00:39:04,740 --> 00:39:07,020 Тоа треба прикаже таа вредност за вас. 955 00:39:07,020 --> 00:39:10,880 Значи додека поголемиот дел од времето бесконечна петелки се грешка, 956 00:39:10,880 --> 00:39:13,950 или барем лоша дизајн одлука, понекогаш тоа го прават 957 00:39:13,950 --> 00:39:14,785 имаат вредност. 958 00:39:14,785 --> 00:39:18,170 >> Па, ајде да напредуваат понатаму тука за да hello7. 959 00:39:18,170 --> 00:39:20,410 Па сега на програмата ќе добие малку повеќе интерактивни. 960 00:39:20,410 --> 00:39:23,120 Дозволете ми да зумирате тука, и повторно, тоа е она што е убаво 961 00:39:23,120 --> 00:39:23,640 за гребење. 962 00:39:23,640 --> 00:39:26,760 И ние ќе го користат за да бидат јасни, нула, само денес и во 963 00:39:26,760 --> 00:39:27,780 Проблемот следната недела во собата. 964 00:39:27,780 --> 00:39:31,920 Но, во понеделникот, ние се нурне во C. Во оваа програма тука, го прави тоа, 965 00:39:31,920 --> 00:39:33,190 засекогаш, следниве. 966 00:39:33,190 --> 00:39:35,890 АКО допирање на глувчето - сега, кој е 967 00:39:35,890 --> 00:39:36,420 контекст тука? 968 00:39:36,420 --> 00:39:39,670 Па, и информации дека кој е избран овде долу на дното 969 00:39:39,670 --> 00:39:43,060 право е мачка, самовила еден, па овие скрипти, ова 970 00:39:43,060 --> 00:39:45,720 програма, се однесува на него конкретно. 971 00:39:45,720 --> 00:39:48,950 Па ако тоа мачка допирање на глувчето, а потоа тоа се случува 972 00:39:48,950 --> 00:39:51,350 да се игра оваа надолу и почекајте две секунди, и 973 00:39:51,350 --> 00:39:53,030 потоа повторете реклама nauseum. 974 00:39:53,030 --> 00:39:55,360 >> Па ајде да одиме напред и хит игра. 975 00:39:55,360 --> 00:39:57,580 Ништо не се случува, но ако сакам да домашно милениче 976 00:39:57,580 --> 00:39:59,310 мачка сега, можам едноставно. 977 00:39:59,310 --> 00:40:01,130 [Meow] 978 00:40:01,130 --> 00:40:02,244 Дејвид MALAN: симпатична. 979 00:40:02,244 --> 00:40:05,956 [Meow] 980 00:40:05,956 --> 00:40:08,750 Дејвид MALAN: Океј, помалку досадни, но исто така добива досадна, 981 00:40:08,750 --> 00:40:11,480 па ајде оди натаму и да видиме ако не можеме да се инјектираат 982 00:40:11,480 --> 00:40:12,460 малку повеќе логика. 983 00:40:12,460 --> 00:40:14,300 Тоа беше пример седум. 984 00:40:14,300 --> 00:40:16,090 >> Овде, во пример осум, ние ќе 985 00:40:16,090 --> 00:40:18,670 воведе ДРУГО состојба. 986 00:40:18,670 --> 00:40:21,440 Толку многу како буквално вилушка во патот, во кој можете да се обратите 987 00:40:21,440 --> 00:40:24,260 лево или можете да отидете во право, состојба во програмирање 988 00:40:24,260 --> 00:40:28,120 јазик како нула, или како што ќе видиме Ц, може да Ви овозможи да 989 00:40:28,120 --> 00:40:32,230 одат во еден правец или на друг преку АКО ДРУГО изградба. 990 00:40:32,230 --> 00:40:35,160 Значи буквално, АКО допирање покажувачот на глувчето, ова 991 00:40:35,160 --> 00:40:38,680 ќе играат некои звук, друго се случува да се игра оваа други 992 00:40:38,680 --> 00:40:39,800 звук, meow. 993 00:40:39,800 --> 00:40:42,510 Сега, ако може да заклучиме од името на овие звуци, можете да 994 00:40:42,510 --> 00:40:45,310 Веројатно се погоди она што оваа програма е замислена да апелирам до 995 00:40:45,310 --> 00:40:46,250 идејата. 996 00:40:46,250 --> 00:40:48,742 Оваа мачка слатко задоволство. 997 00:40:48,742 --> 00:40:49,230 [Meow] 998 00:40:49,230 --> 00:40:51,410 Дејвид MALAN: среќа, но не 999 00:40:51,410 --> 00:40:52,926 доста сакал да се допре. 1000 00:40:52,926 --> 00:40:54,550 [Рика] 1001 00:40:54,550 --> 00:40:57,500 Дејвид MALAN: Така, сега имаме една мачка кои ќе се развикам. 1002 00:40:57,500 --> 00:41:00,570 >> Добро, добро, еден последен пример со мачки тука, и 1003 00:41:00,570 --> 00:41:02,920 ајде отворен верзија девет од овој овде. 1004 00:41:02,920 --> 00:41:06,190 Па сега, имаме следната најпознатите досадни звук што можев 1005 00:41:06,190 --> 00:41:11,630 најде, па ние имаме морж или морски лав тука кој ќе 1006 00:41:11,630 --> 00:41:13,222 сторете го следново. 1007 00:41:13,222 --> 00:41:20,870 [ПЕЧАТ кората] 1008 00:41:20,870 --> 00:41:23,310 Дејвид MALAN: Океј, па тоа ќе оди на се додека не дознаам колку 1009 00:41:23,310 --> 00:41:24,640 оваа програма работи. 1010 00:41:24,640 --> 00:41:28,560 Значи ова време, ова животно има две сценарија, и она што е 1011 00:41:28,560 --> 00:41:31,050 интересно овде е дека овие скрипти се случува да се изврши 1012 00:41:31,050 --> 00:41:32,260 во паралела. 1013 00:41:32,260 --> 00:41:35,340 Па затоа тие двајцата почнуваат со еден зелено знаме кликнато, 1014 00:41:35,340 --> 00:41:38,080 тоа е како одење вака, и двете програми почнат да оперираат тоа 1015 00:41:38,080 --> 00:41:41,370 еднаш дури и ако тие се looping засекогаш. 1016 00:41:41,370 --> 00:41:44,420 Така во првите сценариото, имам некои логика. 1017 00:41:44,420 --> 00:41:49,275 Какви функции кои обезбедуваат таму горе? 1018 00:41:49,275 --> 00:41:50,740 [ПЕЧАТ кората] 1019 00:41:50,740 --> 00:41:51,670 ПУБЛИКАТА: [Беззвучен] 1020 00:41:51,670 --> 00:41:53,295 Дејвид MALAN: Ако тоа е она? 1021 00:41:53,295 --> 00:41:53,760 [ПЕЧАТ кората] 1022 00:41:53,760 --> 00:41:55,852 ПУБЛИКАТА: Ако пригушени до нула, тоа се случува да се задржи игра 1023 00:41:55,852 --> 00:41:58,410 звучи. [ПЕЧАТ кората] 1024 00:41:58,410 --> 00:41:58,940 Дејвид MALAN: Океј, добро. 1025 00:41:58,940 --> 00:42:01,960 Значи, ако пригушени, што е ова, ова портокал работа е нула, 1026 00:42:01,960 --> 00:42:05,370 Потоа играат на лавот морето звук и мислите "Ох, 1027 00:42:05,370 --> 00:42:06,770 Здраво, "за две секунди. 1028 00:42:06,770 --> 00:42:09,380 Сега, јас не знам што пригушени е, но нула доловува 1029 00:42:09,380 --> 00:42:11,230 Идејата на лажни или исклучени. 1030 00:42:11,230 --> 00:42:14,490 Значи, ако пригушени е неточно, па ако не пригушени, 1031 00:42:14,490 --> 00:42:15,660 да свири звукот. 1032 00:42:15,660 --> 00:42:17,350 Добро, добро, како да се оневозможи оваа работа? 1033 00:42:17,350 --> 00:42:19,310 >> Па, ајде да погледнеме во втората скрипта таму долу. 1034 00:42:19,310 --> 00:42:22,130 Втората скрипта вели постави пригушени до нула. 1035 00:42:22,130 --> 00:42:25,180 Забележите тоа е, исто така, портокалова, па што гребење не е тоа бои 1036 00:42:25,180 --> 00:42:27,400 блокови во истата сенка, ако тоа е вид 1037 00:42:27,400 --> 00:42:28,850 на логично поврзани. 1038 00:42:28,850 --> 00:42:32,850 Па само како пригушени до врвот беше портокалова, па се стишува овде 1039 00:42:32,850 --> 00:42:34,060 споменати во портокалова блок. 1040 00:42:34,060 --> 00:42:36,170 Но, ова е променлива задачи, па исто како и во 1041 00:42:36,170 --> 00:42:39,170 алгебра, имаш x и y и z, во програмирање имате 1042 00:42:39,170 --> 00:42:41,440 променливи, но тие се обично - 1043 00:42:41,440 --> 00:42:42,580 пауза Ајде за момент и фигура како 1044 00:42:42,580 --> 00:42:44,280 да се запре оваа лаење. 1045 00:42:44,280 --> 00:42:45,480 Како да го направам тоа? 1046 00:42:45,480 --> 00:42:46,480 [ПЕЧАТ кората] 1047 00:42:46,480 --> 00:42:47,920 Дејвид MALAN: Океј. 1048 00:42:47,920 --> 00:42:49,490 Тој престана. Во ред. 1049 00:42:49,490 --> 00:42:52,230 >> Значи исто како и во алгебра имате променливи x, y и z, но во 1050 00:42:52,230 --> 00:42:55,260 програмирање, со променливи како x, y и z е генерално 1051 00:42:55,260 --> 00:42:57,330 намуртен врз, бидејќи тие не се воопшто експресивен. 1052 00:42:57,330 --> 00:43:00,070 Тие немаат семантичко значење она, така што во повеќето 1053 00:43:00,070 --> 00:43:02,110 програмски јазици, променливите можат да имаат целосна 1054 00:43:02,110 --> 00:43:05,270 полноправно имиња или зборови или фрази, како пригушени, да се каже 1055 00:43:05,270 --> 00:43:06,030 она што го прават. 1056 00:43:06,030 --> 00:43:09,380 Значи ова второ писмо, исто така, беше слушање засекогаш, и тоа го рече 1057 00:43:09,380 --> 00:43:12,100 ако клучот, тастатура клучните простор, е 1058 00:43:12,100 --> 00:43:13,370 притиснато, прашалник. 1059 00:43:13,370 --> 00:43:16,300 Па таму е состојбата со Булова израз кој е 1060 00:43:16,300 --> 00:43:19,010 ќе одговорат на прашањето или точно или неточно, 1061 00:43:19,010 --> 00:43:22,880 тогаш имам внатре од него ако го space копчето е притиснато и 1062 00:43:22,880 --> 00:43:28,020 АКО пригушени е нула, во собата пригушени до еден, ДРУГО постави пригушени до нула. 1063 00:43:28,020 --> 00:43:30,510 Значи ова други вилушка во патот, и информации како сум 1064 00:43:30,510 --> 00:43:33,500 вгнездени двете АКО услови, е начин на проверка е 1065 00:43:33,500 --> 00:43:36,610 Празно место притисок, бидејќи ако е така, јас или сакаат да одат овој 1066 00:43:36,610 --> 00:43:38,000 начин или на тој начин. 1067 00:43:38,000 --> 00:43:40,210 И како можам да инвертен вредноста на пригушени? 1068 00:43:40,210 --> 00:43:41,410 Јас треба да се провери дали е нула? 1069 00:43:41,410 --> 00:43:45,890 Ако е така, прават една, друго прават тоа од нула до тоа префрлате 1070 00:43:45,890 --> 00:43:47,670 нејзините две држави. 1071 00:43:47,670 --> 00:43:50,030 >> Добро, така што мораме потоа некои од овие основни 1072 00:43:50,030 --> 00:43:50,540 конструкции. 1073 00:43:50,540 --> 00:43:52,810 Имаме Булова изрази, и ќе сфати дека, исто така, тие се 1074 00:43:52,810 --> 00:43:54,050 не се сите непознати. 1075 00:43:54,050 --> 00:43:56,730 Всушност, тука е брз екранот на Харвард курсот CS50 1076 00:43:56,730 --> 00:43:59,740 шопинг алатка, и секој веб-сајт таму што има обележувачи 1077 00:43:59,740 --> 00:44:02,420 и капка падови навистина, сето ова време, бил со користење 1078 00:44:02,420 --> 00:44:03,430 Булова изрази. 1079 00:44:03,430 --> 00:44:05,760 Во овој случај тука, ако кликнете синхронизирајте до 1080 00:44:05,760 --> 00:44:08,620 Се разбира поголема или еднаква на 4,5, или истиот до 1081 00:44:08,620 --> 00:44:11,200 факултет, ти си специфицирање Булова изразување. 1082 00:44:11,200 --> 00:44:14,780 Покажи ми предмети за кои тој израз е вистина. 1083 00:44:14,780 --> 00:44:17,080 Или на десно, не е во судир со курсеви сум 1084 00:44:17,080 --> 00:44:20,440 преземање, ако тоа се проверува, тогаш да, вие сакате да се провери 1085 00:44:20,440 --> 00:44:22,890 таа состојба, друго што сакате да го игнорира. 1086 00:44:22,890 --> 00:44:25,170 Значи Булова изрази се вид на сите околу себе, но кога 1087 00:44:25,170 --> 00:44:28,080 ние ги стави во услови, дали АКО услови, ако 1088 00:44:28,080 --> 00:44:30,480 Elses, или ние дури и може да се симулира подлабоко 1089 00:44:30,480 --> 00:44:32,830 нивоа, АКО ДРУГО АКО ДРУГО - 1090 00:44:32,830 --> 00:44:34,430 па тоа е вид на тројната држава. 1091 00:44:34,430 --> 00:44:36,920 Можете да отидете на овој начин или на овој начин или на овој начин. 1092 00:44:36,920 --> 00:44:39,680 Ние може да ги задржи вгнездување на работи кои треба да одат во различни правци. 1093 00:44:39,680 --> 00:44:41,800 >> Значи гребење има овие петелки, како Засекогаш. 1094 00:44:41,800 --> 00:44:44,750 Таа има овие функции како Повторете 10, некои 1095 00:44:44,750 --> 00:44:46,260 ограничен број на пати. 1096 00:44:46,260 --> 00:44:49,040 Ние имаме можност сега да го поставите променливи, така што во овој случај 1097 00:44:49,040 --> 00:44:51,810 Сум прогласи, на пример, променлива наречена чорапи. 1098 00:44:51,810 --> 00:44:54,340 Сум иницијализира на 0, а тоа е уште една насока 1099 00:44:54,340 --> 00:44:56,940 би можеле да се преземат се тука со Joseph, при што можеби и јас 1100 00:44:56,940 --> 00:45:00,150 само да ги пратите на колку чорапи имам на и раскине 1101 00:45:00,150 --> 00:45:03,490 на програмата кога вредноста што променлива е 2. 1102 00:45:03,490 --> 00:45:05,660 Тоа ќе биде уште еден начин на вид на генерализирање дека 1103 00:45:05,660 --> 00:45:08,820 проблем и прави нешто повторно и повторно. 1104 00:45:08,820 --> 00:45:12,080 Па, ајде да одиме напред и сега се воведе неколку нови работи. 1105 00:45:12,080 --> 00:45:14,100 Значи оние од вас со претходно програмирање искуство ќе 1106 00:45:14,100 --> 00:45:17,120 Знаеме дека многу јазици имаат низи, или вектори или 1107 00:45:17,120 --> 00:45:19,970 листи, и навистина, гребење има нешто како ова, исто така. 1108 00:45:19,970 --> 00:45:22,510 Значи, да видиме ако не можеме да се работи на следното ниво тука. 1109 00:45:22,510 --> 00:45:24,920 Ако имам можност, сега, со овие мозаик парчиња да 1110 00:45:24,920 --> 00:45:29,080 додадете нешто, како збор или број на променлива, можам да 1111 00:45:29,080 --> 00:45:30,550 почне да се акумулира работи. 1112 00:45:30,550 --> 00:45:33,630 И ова е всушност прилично односно за нешта како игри, 1113 00:45:33,630 --> 00:45:35,810 играње на улоги игри каде си вид на шетаат 1114 00:45:35,810 --> 00:45:38,600 некои фантазијата светот собира нешта, подигање работите, 1115 00:45:38,600 --> 00:45:39,900 заработуваат поени, или слично. 1116 00:45:39,900 --> 00:45:42,310 Можеби ќе сакате да ги пратите на некој вид на инвентар, и 1117 00:45:42,310 --> 00:45:45,180 навистина, тоа е она што еден од нашите поранешни студенти тука не со 1118 00:45:45,180 --> 00:45:47,750 нешто што се нарекува Fruitcraft RPG. 1119 00:45:47,750 --> 00:45:51,820 >> Па дозволете ми да оди напред и се отвори оваа работа тука, како и во 1120 00:45:51,820 --> 00:45:56,260 Fruitcraft, имаме овој свет се на врвот. 1121 00:45:56,260 --> 00:45:58,820 Па дозволете ми да оди напред и да кликнете на зелено знаме. 1122 00:45:58,820 --> 00:46:01,040 Известување во горниот лев е некој вид на инвентар. 1123 00:46:01,040 --> 00:46:04,110 Тоа е имплементиран во Скреч како што ние ќе го наречеме низа или 1124 00:46:04,110 --> 00:46:06,890 листа, а сега имаме оваа мала анимација. 1125 00:46:06,890 --> 00:46:10,440 Значи исто како што започна порано со ова колаче љубовна приказна, 1126 00:46:10,440 --> 00:46:13,320 и потоа отидоа мачки и морски лавови, сега можеме да имаме 1127 00:46:13,320 --> 00:46:15,100 работи кои се дури и повеќе интерактивни. 1128 00:46:15,100 --> 00:46:18,250 И ова малку сино човек, јас може да почне да се движи околу својата 1129 00:46:18,250 --> 00:46:19,500 малку дома. 1130 00:46:19,500 --> 00:46:22,570 Така што изгледа како тој доби излез долу тука, па јас сум користење 1131 00:46:22,570 --> 00:46:25,260 на стрелките клучеви, горе, долу, лево десно. 1132 00:46:25,260 --> 00:46:28,370 И сега сум надвор, па нека е тоа што имам тука. 1133 00:46:28,370 --> 00:46:30,920 Изгледа како портокалова, и навистина, штом ќе допре 1134 00:46:30,920 --> 00:46:33,110 портокалова, станува plopped во мојот инвентар. 1135 00:46:33,110 --> 00:46:35,640 Ако одам овде на цреши, сега имам нешто 1136 00:46:35,640 --> 00:46:36,760 друго во мојот инвентар. 1137 00:46:36,760 --> 00:46:39,100 И сево ова е убаво и слатко, но мислам за тоа, сега, овој 1138 00:46:39,100 --> 00:46:39,840 се спроведува. 1139 00:46:39,840 --> 00:46:42,490 Па, имаме овој поим на листа, и тоа е очигледно 1140 00:46:42,490 --> 00:46:45,470 загатка парче што ќе речеме она што сакате да додадете на него, да додадете 1141 00:46:45,470 --> 00:46:46,950 портокалова, додадете цреши. 1142 00:46:46,950 --> 00:46:48,540 Сега, што е ова малку сино човек прави? 1143 00:46:48,540 --> 00:46:49,810 Па, тој е самовила. 1144 00:46:49,810 --> 00:46:52,190 И веројатно, портокал и вишни - 1145 00:46:52,190 --> 00:46:54,140 тие самите беа одвоени sprites. 1146 00:46:54,140 --> 00:46:56,980 И користење на услови во Булова изрази, 1147 00:46:56,980 --> 00:47:00,530 студент е веројатно можност да го изразат АКО сини човек е 1148 00:47:00,530 --> 00:47:04,590 допирање цреши потоа додадете зборот цреши на неговата 1149 00:47:04,590 --> 00:47:07,890 инвентар, а потоа, исто така, ги кријат цреша самовила. 1150 00:47:07,890 --> 00:47:10,600 Значи под хауба, има веројатно уште е цреша 1151 00:47:10,600 --> 00:47:11,350 самовила таму. 1152 00:47:11,350 --> 00:47:14,160 Штотуку ја кажа да стане ефикасно невидливи. 1153 00:47:14,160 --> 00:47:16,340 >> Сега, ако јас се задржи одење над тука, ние исто така може да го направи тоа 1154 00:47:16,340 --> 00:47:19,150 проксимална работа, каде што ќе можам да појдам и да чита знакот. 1155 00:47:19,150 --> 00:47:23,170 Значи, ако сини дечко допирање знак, може да имаме овој мислење блок 1156 00:47:23,170 --> 00:47:26,455 исто како мачка ни прозборел со зборови, здраво, претходно, "Got 1157 00:47:26,455 --> 00:47:26,880 некои плодови? 1158 00:47:26,880 --> 00:47:29,290 Доведе до овошје место. "Сите во право, па сега, очигледно, 1159 00:47:29,290 --> 00:47:30,550 Имам правци. 1160 00:47:30,550 --> 00:47:33,050 Јас може да оди овде за овошје место, линија до мене 1161 00:47:33,050 --> 00:47:33,740 со врата. 1162 00:47:33,740 --> 00:47:35,390 Сега, јас сум тука. 1163 00:47:35,390 --> 00:47:38,120 Јас може да оди до човекот на шанкот. 1164 00:47:38,120 --> 00:47:40,330 Тој открива дека сум блиску до него, па тоа не мора да биде 1165 00:47:40,330 --> 00:47:46,780 сосема идентично допирање, и јас имаат освоено игра. 1166 00:47:46,780 --> 00:47:49,890 Па ние имаме Fruitcraft RPG. 1167 00:47:49,890 --> 00:47:52,200 >> Значи можеме да се прават работите уште повеќе напредни од ова. 1168 00:47:52,200 --> 00:47:53,200 Ние можеме да додадете звуци. 1169 00:47:53,200 --> 00:47:54,610 Ние можеме да додадете псевдо случајноста. 1170 00:47:54,610 --> 00:47:56,260 Ние можеме да додадете комплексност. 1171 00:47:56,260 --> 00:47:58,490 Дозволете ми да оди напред тука, и наместо да го направите ова од мене, 1172 00:47:58,490 --> 00:48:01,240 дозволете ми да ви покажеме еден од повеќе софистицирани поднесоци 1173 00:48:01,240 --> 00:48:06,640 добивме минатата година од одредена некој наречен Блејк. 1174 00:48:06,640 --> 00:48:08,910 Ние може да има еден волонтер кој е удобно се појавува на 1175 00:48:08,910 --> 00:48:12,600 камера и е за игра? 1176 00:48:12,600 --> 00:48:13,450 Како за таму? 1177 00:48:13,450 --> 00:48:15,380 Ајде нагоре. 1178 00:48:15,380 --> 00:48:19,680 Добро, така што игра која што треба само знае 1179 00:48:19,680 --> 00:48:20,780 доброволно да играат - 1180 00:48:20,780 --> 00:48:25,910 [Аплауз] 1181 00:48:25,910 --> 00:48:28,610 Дејвид MALAN: - е нешто од недалечното минато нарекува 1182 00:48:28,610 --> 00:48:30,100 "Frogger". Што е вашето име? 1183 00:48:30,100 --> 00:48:30,730 RENDA: Renda. 1184 00:48:30,730 --> 00:48:31,050 Дејвид MALAN: Redna? 1185 00:48:31,050 --> 00:48:32,530 RENDA: Тоа е како Бренда со б. 1186 00:48:32,530 --> 00:48:33,190 Дејвид MALAN: Океј, Renda. 1187 00:48:33,190 --> 00:48:33,590 Давид. 1188 00:48:33,590 --> 00:48:34,580 Убаво да ви се исполнат. 1189 00:48:34,580 --> 00:48:38,690 >> Па овде во "Frogger", а ако ние може да се подигне на обемот само 1190 00:48:38,690 --> 00:48:39,780 малку, вие сте овој мал 1191 00:48:39,780 --> 00:48:41,010 зелена жаба на дното. 1192 00:48:41,010 --> 00:48:43,940 Можете да го користите лево, десно, горе и долу, и вашата цел е да се 1193 00:48:43,940 --> 00:48:46,510 ја премине улицата, ја премине реката, и допир на Lily влошки 1194 00:48:46,510 --> 00:48:47,760 на врвот. 1195 00:48:52,090 --> 00:48:53,440 Aw. 1196 00:48:53,440 --> 00:48:54,630 Уште една т - 1197 00:48:54,630 --> 00:48:56,400 повтори, во ред? 1198 00:48:56,400 --> 00:48:58,890 Да хит станица. 1199 00:48:58,890 --> 00:49:00,140 Никој не го видовме тоа. 1200 00:49:10,470 --> 00:49:12,930 [Аплауз] 1201 00:49:17,023 --> 00:49:17,850 [Аплауз] 1202 00:49:17,850 --> 00:49:19,341 Дејвид MALAN: Да. 1203 00:49:19,341 --> 00:49:20,832 Многу добро направено. 1204 00:49:20,832 --> 00:49:22,082 Одлично, ви благодарам. 1205 00:49:27,300 --> 00:49:29,430 >> Така што не беше Frogger. Сега дека знаете што сте 1206 00:49:29,430 --> 00:49:32,170 добивано и самите во, уште една волонтерска за различни 1207 00:49:32,170 --> 00:49:34,910 игра поднесени од друг ученик. 1208 00:49:34,910 --> 00:49:35,560 Сакате да дојдат на се? 1209 00:49:35,560 --> 00:49:36,576 Што е вашето име? 1210 00:49:36,576 --> 00:49:37,000 Ричард: Ричард. 1211 00:49:37,000 --> 00:49:37,420 Дејвид MALAN: Ричард. 1212 00:49:37,420 --> 00:49:39,732 Сите права, Ричард, ајде до. 1213 00:49:39,732 --> 00:49:42,187 [Аплауз] 1214 00:49:45,140 --> 00:49:47,030 Дејвид MALAN: Имате нешто што ќе звучи 1215 00:49:47,030 --> 00:49:54,180 запознаени наскоро, па тука се вашите инструкции. 1216 00:49:54,180 --> 00:49:56,580 Така во еден момент, некои мозаик парчиња се случува да дојдете до 1217 00:49:56,580 --> 00:49:58,150 од екранот кои изгледаат или лево 1218 00:49:58,150 --> 00:49:59,450 или десно нагоре или надолу. 1219 00:49:59,450 --> 00:50:01,230 Сте ќе треба да хит на стрелките на таков начин 1220 00:50:01,230 --> 00:50:04,540 дека тоа одговара на оние мозаик парчиња обидел со 1221 00:50:04,540 --> 00:50:05,720 на променливи на врвот. 1222 00:50:05,720 --> 00:50:07,500 Па кога ќе видите на левата стрелка, и линии со левото 1223 00:50:07,500 --> 00:50:09,260 стрелка, хит на левата стрелка. 1224 00:50:09,260 --> 00:50:10,866 Може да започне. 1225 00:50:10,866 --> 00:50:13,674 [Музика - "посилни" Kayne ЗАПАД] 1226 00:51:21,222 --> 00:51:23,470 Дејвид MALAN: Сите во право, голем аплауз за Ричард. 1227 00:51:23,470 --> 00:51:26,082 [Аплауз] 1228 00:51:32,426 --> 00:51:33,720 Дејвид MALAN: Многу добро направено. 1229 00:51:33,720 --> 00:51:34,110 Ви благодариме. 1230 00:51:34,110 --> 00:51:37,104 [Аплауз] 1231 00:51:41,600 --> 00:51:44,330 >> Дејвид MALAN: Значи забава и, навидум, вид на 1232 00:51:44,330 --> 00:51:46,590 застрашувачки како тоа може да биде да се спроведе нешто како 1233 00:51:46,590 --> 00:51:49,550 навидум е софистициран како овој, да сфатат дека студентот 1234 00:51:49,550 --> 00:51:51,450 не е утврдено и само пишувам ова на сите одеднаш. 1235 00:51:51,450 --> 00:51:54,200 Наместо тоа, може да се прекине проблем како навидум сложениот 1236 00:51:54,200 --> 00:51:56,840 како ова во многу помали парчиња, а тоа, исто така, е 1237 00:51:56,840 --> 00:51:57,560 ќе биде тема. 1238 00:51:57,560 --> 00:52:00,490 Најлошото нешто што може да направи во писмена форма програма во повеќето било 1239 00:52:00,490 --> 00:52:03,480 јазик е да се седне, да се навистина возбудени, напишете ја 1240 00:52:03,480 --> 00:52:07,200 целина проклето нешто, а потоа само се надевам дека таа работи со 1241 00:52:07,200 --> 00:52:08,510 пат кога ќе завршите со пишување. 1242 00:52:08,510 --> 00:52:10,920 Наместо тоа, процесот на програмирање треба генерално 1243 00:52:10,920 --> 00:52:13,440 биде многу намерно, многу повторлив, која само 1244 00:52:13,440 --> 00:52:16,955 постави многу мали чекори за себе, залак големина парчиња 1245 00:52:16,955 --> 00:52:20,070 Дали сакате да отхапвам, и така што ќе ги имаат овие разумност 1246 00:52:20,070 --> 00:52:21,740 проверки, малку пресвртници може да ги исполни. 1247 00:52:21,740 --> 00:52:24,170 А потоа ќе се изгради на врвот на оние да се создадат повеќе 1248 00:52:24,170 --> 00:52:25,400 софистицирани работи уште. 1249 00:52:25,400 --> 00:52:26,820 >> Така на пример, како би можеле да се обратите за 1250 00:52:26,820 --> 00:52:28,380 спроведување на играта, како тоа? 1251 00:52:28,380 --> 00:52:30,160 Па, искрено, јас сигурно ќе почне со само 1252 00:52:30,160 --> 00:52:32,260 поддршка на еден од клучните во исто време. 1253 00:52:32,260 --> 00:52:34,840 Ајде само имплементираат поддршка за левата стрелка. 1254 00:52:34,840 --> 00:52:37,610 Така што студентот имал некако да се создаде во Photoshop, или во 1255 00:52:37,610 --> 00:52:40,340 Изгребете себе со помош на малку графички уредник, 1256 00:52:40,340 --> 00:52:42,680 стрелка која изгледа како онаа во горниот лев агол таму, само 1257 00:52:42,680 --> 00:52:43,910 сивата случаеви. 1258 00:52:43,910 --> 00:52:46,610 Тогаш ученикот мораше да дознаам што x, y се координираат да 1259 00:52:46,610 --> 00:52:48,380 стави, каде да го стави во прозорецот. 1260 00:52:48,380 --> 00:52:50,730 0, 0 е до тука, па мора да дознаам бројот на 1261 00:52:50,730 --> 00:52:53,690 пиксели или точки, да се надомести што стрелката од 1262 00:52:53,690 --> 00:52:54,800 на врвот од екранот. 1263 00:52:54,800 --> 00:52:57,040 А потоа еднаш тоа е во место, вашата програма всушност не 1264 00:52:57,040 --> 00:53:00,380 ништо уште, па тогаш треба втор самовила, за 1265 00:53:00,380 --> 00:53:04,470 пример зелена стрелка тоа е, исто така, посочувајќи лево, а вие 1266 00:53:04,470 --> 00:53:06,710 тогаш треба да почнете да пишувате некои скрипти за тоа. 1267 00:53:06,710 --> 00:53:09,310 >> И ќе забележите, можеби, дека овие работи почнаа да доаѓаат во 1268 00:53:09,310 --> 00:53:11,470 различни брзини, а боите се во различни 1269 00:53:11,470 --> 00:53:13,750 локации, а тоа е затоа што на студентот користи малку 1270 00:53:13,750 --> 00:53:14,990 псевдо случајноста. 1271 00:53:14,990 --> 00:53:17,440 И од псевдо случајноста, јас само значи изберете број 1272 00:53:17,440 --> 00:53:20,230 помеѓу нешто и нешто затоа што може да 1273 00:53:20,230 --> 00:53:22,890 почне да карта работи, како ако бројот е меѓу еден и 1274 00:53:22,890 --> 00:53:24,940 пет, добро, ајде да се направи нешто зелено. 1275 00:53:24,940 --> 00:53:28,290 Ако тоа е помеѓу 6 и 10, да се направи мозаик парче 1276 00:53:28,290 --> 00:53:29,730 црвена наместо тоа. 1277 00:53:29,730 --> 00:53:31,840 Толку долго колку што имаат начин на генерирање на некои вид на 1278 00:53:31,840 --> 00:53:34,730 случајноста, тогаш може да се донесуваат одлуки врз основа на таа 1279 00:53:34,730 --> 00:53:35,260 случајноста. 1280 00:53:35,260 --> 00:53:37,490 И јас се задржи велејќи псевдо случаен затоа што има 1281 00:53:37,490 --> 00:53:38,390 малку валкана тајна. 1282 00:53:38,390 --> 00:53:41,130 Компјутерите не може да излезе со случајни броеви. 1283 00:53:41,130 --> 00:53:42,800 Тие само може да го направи она што го кажа, бидејќи 1284 00:53:42,800 --> 00:53:44,110 тие се вештачки уреди. 1285 00:53:44,110 --> 00:53:45,880 Тие не само може да се погоди голем број како ние луѓето 1286 00:53:45,880 --> 00:53:46,960 се чувствувам како што можеме. 1287 00:53:46,960 --> 00:53:50,970 А компјутерот мора да направи нешто математички да апелирам до 1288 00:53:50,970 --> 00:53:53,970 илузија на математички број, понекогаш со користење на 1289 00:53:53,970 --> 00:53:57,420 Тековниот ден на време како влез за да пронајдат она што 1290 00:53:57,420 --> 00:53:59,570 број да се вратат, но повеќе за тоа друг пат. 1291 00:53:59,570 --> 00:54:02,060 За сега, само знам дека ние може да генерира псевдо случајноста. 1292 00:54:02,060 --> 00:54:04,610 >> Така еднаш бев имаат способност за левата стрелка за да започне 1293 00:54:04,610 --> 00:54:07,990 се појавува во различни времиња и на различни брзини, тогаш 1294 00:54:07,990 --> 00:54:10,230 Јас може да се врати и да додадете некои од овие АКО услови. 1295 00:54:10,230 --> 00:54:14,950 Ако ова самовила го допира другиот, а левата стрелка 1296 00:54:14,950 --> 00:54:16,330 Клучот е притиснато - 1297 00:54:16,330 --> 00:54:17,900 па три услови во тој случај. 1298 00:54:17,900 --> 00:54:20,750 Можам да користам тоа и го блокираат можеби, во тој случај - 1299 00:54:20,750 --> 00:54:23,210 Тогаш сакам да одам напред и зголемување на резултат. 1300 00:54:23,210 --> 00:54:25,130 И на врвот, имаме резултат, имаме Прекрасно, 1301 00:54:25,130 --> 00:54:26,510 Кул, добро, и Бу. 1302 00:54:26,510 --> 00:54:29,810 Па таму е очигледно пет варијабли кои овој ученик 1303 00:54:29,810 --> 00:54:32,220 користи да ги пратите на овие различни индикатори. 1304 00:54:32,220 --> 00:54:34,180 Значи во кратки, крајниот резултат е неверојатен. 1305 00:54:34,180 --> 00:54:37,320 Тоа е забавно, тоа е забавно да се игра, тоа е ангажирање, но тоа не е 1306 00:54:37,320 --> 00:54:38,380 каде што студентот започна. 1307 00:54:38,380 --> 00:54:42,210 Тој или таа започна во многу помал сет на чекори. 1308 00:54:42,210 --> 00:54:44,470 >> Значи она што се некои други градежни блокови кои можеме 1309 00:54:44,470 --> 00:54:45,760 ткаат во овие програми? 1310 00:54:45,760 --> 00:54:48,750 Па, има поинаков концепт во повеќето јазици, 1311 00:54:48,750 --> 00:54:50,730 Изгребете меѓу нив, познат како теми. 1312 00:54:50,730 --> 00:54:54,660 Така што компјутер не може да всушност навистина повеќе работи во 1313 00:54:54,660 --> 00:54:56,730 време, барем не обично. 1314 00:54:56,730 --> 00:54:59,930 Наместо тоа, компјутерот обично има само еден процесорот, па дури и 1315 00:54:59,930 --> 00:55:02,230 Иако компјутерите се супер брз и може, затоа, 1316 00:55:02,230 --> 00:55:04,740 создаде илузија на вршење на повеќе работи одеднаш - 1317 00:55:04,740 --> 00:55:06,180 проверка на вашата пошта, добивање на инстант 1318 00:55:06,180 --> 00:55:07,770 порака, печатите документ - 1319 00:55:07,770 --> 00:55:11,530 навистина, компјутерот е само скокање од печатење на IMing 1320 00:55:11,530 --> 00:55:15,160 на испраќање, назад и назад и напред и назад толку брзо што ние 1321 00:55:15,160 --> 00:55:18,170 бавно недоветен луѓето едноставно не сфаќаат дека тоа е всушност 1322 00:55:18,170 --> 00:55:21,240 водење овие програми малку во исто време. 1323 00:55:21,240 --> 00:55:23,960 Сега, ова малку бела лага, овие денови бидејќи, во денешно време, 1324 00:55:23,960 --> 00:55:26,740 многу нашите компјутери се она што се нарекува мулти-кор, така што 1325 00:55:26,740 --> 00:55:29,760 имаат еден процесор, но повеќе јадра, кој е вид на како 1326 00:55:29,760 --> 00:55:31,760 има повеќе процесори. 1327 00:55:31,760 --> 00:55:35,020 >> И така понекогаш, компјутери навистина може да направи повеќе нешта 1328 00:55:35,020 --> 00:55:38,500 во исто време, но генерално во рамките на програмата, програми 1329 00:55:38,500 --> 00:55:40,200 се потпираат на овие нешта наречени теми. 1330 00:55:40,200 --> 00:55:43,160 Значи темата е вид на како минијатурни програма што може да 1331 00:55:43,160 --> 00:55:46,540 постои заедно со уште еден минијатурен програма и може да работи 1332 00:55:46,540 --> 00:55:51,250 во паралела, или барем може да работи под илузија дека 1333 00:55:51,250 --> 00:55:52,990 тие работи истовремено. 1334 00:55:52,990 --> 00:55:55,060 Значи гребење поддржува овие нешта наречени теми. 1335 00:55:55,060 --> 00:55:57,580 Можете да имате повеќе скрипти извршување одеднаш, исто како што 1336 00:55:57,580 --> 00:56:00,220 не со лав морето, и тоа ни овозможува да всушност 1337 00:56:00,220 --> 00:56:03,620 тогаш имаат интеракции меѓу овие sprites. 1338 00:56:03,620 --> 00:56:09,910 Дозволете ми да оди напред тука и се повлече до, да речеме, теми, и 1339 00:56:09,910 --> 00:56:11,870 игра оваа како што следува. 1340 00:56:11,870 --> 00:56:13,950 Имаме два sprites, секој од нив ќе видиме 1341 00:56:13,950 --> 00:56:15,720 има само еден скрипта. 1342 00:56:15,720 --> 00:56:18,000 И ќе забележите се чини дека некои интелигенција во 1343 00:56:18,000 --> 00:56:21,335 мачка во овој еден, бидејќи тој е поблиску - 1344 00:56:21,335 --> 00:56:21,730 [Рика] 1345 00:56:21,730 --> 00:56:24,540 Дејвид MALAN: - и поблиску до малата птица. 1346 00:56:24,540 --> 00:56:26,570 >> Па, како е птица оперативен? 1347 00:56:26,570 --> 00:56:28,200 Па, ајде да ги разгледаме на птицата во прв план. 1348 00:56:28,200 --> 00:56:31,220 На птицата скрипта рече кога зелено знаме е кликнато, одете на x 1349 00:56:31,220 --> 00:56:34,020 еднакво негативни 115 и y е еднаква на 150. 1350 00:56:34,020 --> 00:56:37,010 Па јас само сфатиле случаен локацијата каде што сакав 1351 00:56:37,010 --> 00:56:39,580 птица да започне, а јас само го plopped таму стандардно. 1352 00:56:39,580 --> 00:56:42,800 Потоа засекогаш ако не ја допира мачка, па тоа е друга 1353 00:56:42,800 --> 00:56:45,080 вид на looping конструкција, но истата идеја, го направите ова повторно и 1354 00:56:45,080 --> 00:56:45,780 повторно и повторно. 1355 00:56:45,780 --> 00:56:49,410 Толку долго како што не сме допирање на мачка, се движи три чекори, и 1356 00:56:49,410 --> 00:56:51,680 ако сте на работ, отскокнување, каде што тоа е вид на 1357 00:56:51,680 --> 00:56:53,320 рефлексија во смисла билјард. 1358 00:56:53,320 --> 00:56:56,140 Значи тоа е како птица се движи околу вид на 1359 00:56:56,140 --> 00:56:58,890 навидум случајно, но тоа е само затоа што тоа е бие надвор 1360 00:56:58,890 --> 00:57:00,170 на ѕидовите во овој случај. 1361 00:57:00,170 --> 00:57:03,170 >> Сега мачка, пак, е вид на изневерување. 1362 00:57:03,170 --> 00:57:05,520 Мачката, кога зелено знаме е кликнато, да, започнува во 1363 00:57:05,520 --> 00:57:07,390 некои локација, случајна локација - 1364 00:57:07,390 --> 00:57:09,590 барем делумно, како на избор 1365 00:57:09,590 --> 00:57:11,430 случаен зелени блок таму - 1366 00:57:11,430 --> 00:57:14,660 а потоа засекогаш ако допирање на птица, играат лав звук, 1367 00:57:14,660 --> 00:57:15,790 а потоа запре скрипта. 1368 00:57:15,790 --> 00:57:18,560 Значи, кога реков прекине, или излезете пред, има мозаик 1369 00:57:18,560 --> 00:57:20,600 парче во Скреч дека само ќе го убие на програмата во тоа 1370 00:57:20,600 --> 00:57:22,900 точка, бидејќи тоа е вид на логично направено. 1371 00:57:22,900 --> 00:57:25,030 Но во спротивно, тука се забележи она што ќе се случи. 1372 00:57:25,030 --> 00:57:28,470 Точка кон птицата и се движат еден чекор. 1373 00:57:28,470 --> 00:57:31,390 Па оваа точка кон птица е вид на предност на мачката 1374 00:57:31,390 --> 00:57:34,640 има по тоа што е на пат за дома во на подвижни птица, и можеме да 1375 00:57:34,640 --> 00:57:37,370 сега направи оваа програма сè повеќе и повеќе интересно. 1376 00:57:37,370 --> 00:57:41,520 Наместо да се движат еден чекор во време на процесорот циклус, по 1377 00:57:41,520 --> 00:57:44,280 штрајк патарина на ѕвончето, така да се каже, дозволете ми да оди напред и да 1378 00:57:44,280 --> 00:57:47,350 се движат, да речеме, пет чекори во време како мачка. 1379 00:57:47,350 --> 00:57:51,120 Кликнете кандидира, и сега тој навистина го утврди брзо. 1380 00:57:51,120 --> 00:57:55,620 Ако ние двојно ова понатаму до 10 чекори, тој вид на оди 1381 00:57:55,620 --> 00:57:56,370 право за него. 1382 00:57:56,370 --> 00:57:57,750 Сега, може да се даде на птица, 1383 00:57:57,750 --> 00:57:59,540 можеби, малку предност. 1384 00:57:59,540 --> 00:58:02,370 Ајде да одиме во птицата и да каже наместо движат три чекори, 1385 00:58:02,370 --> 00:58:07,140 ајде да се движат него 30 чекори. 1386 00:58:07,140 --> 00:58:08,700 Но тој се уште е фатен на крајот. 1387 00:58:08,700 --> 00:58:10,430 >> Па еве, имаме две теми. 1388 00:58:10,430 --> 00:58:13,230 Тоа е затворен во нула со две сценарија и две 1389 00:58:13,230 --> 00:58:16,150 sprites, но идејата и на други јазици е тоа што можете да 1390 00:58:16,150 --> 00:58:19,220 напишете, во суштина, многу програми како оваа и да имаат 1391 00:58:19,220 --> 00:58:22,950 ги извршувате навистина, или imaginarily, во паралела. 1392 00:58:22,950 --> 00:58:25,280 >> Сега, има, исто така, овој концепт во програмирање познат како 1393 00:58:25,280 --> 00:58:28,010 настани, а тоа е нешто што не ќе видиме во C, 1394 00:58:28,010 --> 00:58:30,500 јазик познат како C. Ние ќе го гледаат кон крајот семестар 1395 00:58:30,500 --> 00:58:33,240 во веб програмирање, кога ќе се воведат го вклучите Javascript-и 1396 00:58:33,240 --> 00:58:36,970 идејата за градење на веб страници, кои се динамични и да комуницирате 1397 00:58:36,970 --> 00:58:37,710 со корисниците. 1398 00:58:37,710 --> 00:58:40,430 Значи во овој случај, имаме еден многу едноставен пример на две 1399 00:58:40,430 --> 00:58:43,860 sprites, момче и девојка, секој од нив имаат нивните 1400 00:58:43,860 --> 00:58:48,040 теми, но некако овие две се меѓусебно комуницирање по пат 1401 00:58:48,040 --> 00:58:49,490 на нешто што се нарекува настани. 1402 00:58:49,490 --> 00:58:52,750 Па дозволете ми да оди напред тука и зумирате на сценариото на момчето, 1403 00:58:52,750 --> 00:58:54,050 кој изгледа вака. 1404 00:58:54,050 --> 00:58:57,510 Кога зелено знаме кликнато, засекогаш го направите следново. 1405 00:58:57,510 --> 00:59:01,510 Ако клучот простор, или на растојание, се притисне, да речеме 1406 00:59:01,510 --> 00:59:03,900 Marco за две секунди, тоа е чисто естетска на 1407 00:59:03,900 --> 00:59:06,860 екран, малку говор меур, но потоа се емитува. 1408 00:59:06,860 --> 00:59:09,240 >> Значи емитување е уште гребење парче што е 1409 00:59:09,240 --> 00:59:12,050 претставник на класа на функционалност во програмирање 1410 00:59:12,050 --> 00:59:15,080 која овозможува различни програми, различни теми, 1411 00:59:15,080 --> 00:59:17,120 на интер-комуникација, некако испрати 1412 00:59:17,120 --> 00:59:18,520 пораки, еден до друг. 1413 00:59:18,520 --> 00:59:21,930 Донесување на парче хартија во класа е вид на ниска технологија 1414 00:59:21,930 --> 00:59:22,700 еквивалентни. 1415 00:59:22,700 --> 00:59:24,300 Значи емитува настан. 1416 00:59:24,300 --> 00:59:26,210 Можам да ја испратите оваа порака, а зборот настан 1417 00:59:26,210 --> 00:59:27,270 е сосема произволна. 1418 00:59:27,270 --> 00:59:30,000 Нула понекогаш има овие капка падови, па јас само излезе 1419 00:59:30,000 --> 00:59:33,230 со случаен збор како настан, бидејќи сега, она што момчето не 1420 00:59:33,230 --> 00:59:36,600 кога ќе притиснете го копчето е тој емитува овој настан. 1421 00:59:36,600 --> 00:59:39,270 И ако гледам сега во сценариото на девојката, ја скрипта е 1422 00:59:39,270 --> 00:59:42,690 супер едноставен, бидејќи сите што треба да направите е да не дејствува кога 1423 00:59:42,690 --> 00:59:44,100 зелено знаме е кликнато. 1424 00:59:44,100 --> 00:59:47,910 Таа е наменета за акција, кога таа добива понуда, unquote, 1425 00:59:47,910 --> 00:59:51,210 "Настан", и во тој момент, таа е слушање тоа за 1426 00:59:51,210 --> 00:59:52,960 т.н. случај повторно и повторно. 1427 00:59:52,960 --> 00:59:55,790 Штом таа добива тој случај, таа ќе викне 1428 00:59:55,790 --> 00:59:57,680 Поло за две секунди. 1429 00:59:57,680 --> 01:00:01,090 >> И така ти можеби да заклучиме од овој токму она што 1430 01:00:01,090 --> 01:00:03,190 следниот резултат ќе биде. 1431 01:00:03,190 --> 01:00:04,910 Дозволете ми да кликнете на зелено знаме. 1432 01:00:04,910 --> 01:00:06,610 Ништо не се случува затоа што треба да го направи она што? 1433 01:00:06,610 --> 01:00:07,310 ПУБЛИКАТА: Празно место. 1434 01:00:07,310 --> 01:00:08,630 Дејвид MALAN: Празно место. 1435 01:00:08,630 --> 01:00:11,990 Момчето вели Марко, вели девојката Поло. 1436 01:00:11,990 --> 01:00:13,670 Но, тоа не е тешко кодирани по себе. 1437 01:00:13,670 --> 01:00:16,740 Тоа е интер-комуникација помеѓу скрипти, па сега ние 1438 01:00:16,740 --> 01:00:19,240 имаат способност да се направи дури и повеќе комплексни програми каде 1439 01:00:19,240 --> 01:00:22,830 овие две се некако интер-комуникација. 1440 01:00:22,830 --> 01:00:25,260 >> Значи во она насоки може да се земе ова? 1441 01:00:25,260 --> 01:00:28,260 Па, во проблем сет 0, навистина, целта е да се 1442 01:00:28,260 --> 01:00:29,830 се забавуваат со нула. 1443 01:00:29,830 --> 01:00:32,440 За хакер издание, вие наместо ќе се забавуваат со повеќе 1444 01:00:32,440 --> 01:00:35,850 софистицирана верзија на гребење наречен BYOB, Изградба на 1445 01:00:35,850 --> 01:00:38,040 Свој Блокови, но идејата е иста. 1446 01:00:38,040 --> 01:00:38,780 Вие ќе бидете во можност - 1447 01:00:38,780 --> 01:00:39,710 Да, тоа беше намерно. 1448 01:00:39,710 --> 01:00:42,450 Таа дојде од Беркли. 1449 01:00:42,450 --> 01:00:45,200 BYOB е хакер верзија на ова, но и двете 1450 01:00:45,200 --> 01:00:48,180 , демографијата, Standard Edition и хакерски издание слично 1451 01:00:48,180 --> 01:00:50,940 Целта на дофат на раката за следната недела е навистина само да се нурне во 1452 01:00:50,940 --> 01:00:53,050 длабоко, ја добиете вашата раце валкани со програмирање, и да 1453 01:00:53,050 --> 01:00:55,240 нешто интересно, направи нешто интерактивни, да 1454 01:00:55,240 --> 01:00:58,020 нешто уметнички, направи нешто забавно да се, всушност, 1455 01:00:58,020 --> 01:01:01,020 покаже, така што до крајот на недела, ќе треба некој проект, 1456 01:01:01,020 --> 01:01:03,770 не само за ваша прва CS50 pset, но ќе има 1457 01:01:03,770 --> 01:01:05,620 малку нешто што може да покажат во Annenberg да 1458 01:01:05,620 --> 01:01:08,830 пријатели, па дури и семејството од качувањето до веб МИТ. 1459 01:01:08,830 --> 01:01:11,760 И така како што реков во средата, ние очекуваме 90% на класата, 1460 01:01:11,760 --> 01:01:13,970 генерално, да се направи стандардниот изданија. 1461 01:01:13,970 --> 01:01:16,660 Сфатат дека има, исто така, овој вентил за оние од вас кои 1462 01:01:16,660 --> 01:01:18,990 инаку би можеле да се најдат себе си малку досадно со основите 1463 01:01:18,990 --> 01:01:21,650 и навистина сакаат да се нурне во и занает визија веќе 1464 01:01:21,650 --> 01:01:25,380 имаат со претходно искуство во оваа повеќе пријателски 1465 01:01:25,380 --> 01:01:26,240 животната средина. 1466 01:01:26,240 --> 01:01:29,030 >> Па дозволете ми да се повлече до еден друг пример дека еден од нашите поранешни 1467 01:01:29,030 --> 01:01:33,830 студенти тука не и кажете малку нешто преку песната. 1468 01:01:33,830 --> 01:01:37,430 Тоа слично, бидејќи ова драми, размислуваат за тоа како да се обратите за 1469 01:01:37,430 --> 01:01:40,520 спроведување на оваа програма користејќи токму истите 1470 01:01:40,520 --> 01:01:44,180 градежни блокови, малку псевдо случајноста, и 1471 01:01:44,180 --> 01:01:46,010 малку запознаени песна. 1472 01:01:46,010 --> 01:01:47,910 Ако можеме да се подигне на обемот само малку? 1473 01:01:47,910 --> 01:01:49,160 [МУЗИКА - "врне мажи" времето GIRLS] 1474 01:03:02,261 --> 01:03:03,930 >> Дејвид MALAN: Тоа е тоа за CS50. 1475 01:03:03,930 --> 01:03:05,860 Ние ќе се видиме в понеделник. 1476 01:03:05,860 --> 01:03:21,152 [Аплауз]