1 00:00:00,000 --> 00:00:11,952 2 00:00:11,952 --> 00:00:13,800 >> DAVID J. MALAN: Beraz, hau da CS50. 3 00:00:13,800 --> 00:00:18,970 Eta hau CS50 Colton Ogden egin zen, gehiago duten musika da dezakezu 4 00:00:18,970 --> 00:00:22,820 deskargatu soundcloud.com/cs50 at. 5 00:00:22,820 --> 00:00:26,690 >> Beraz, gaur egun, gehiago guztien apustua egin dugu, programazio artea gainean. 6 00:00:26,690 --> 00:00:28,980 Eta non utzi dugu hartuko dugu azken aste off, bideratua 7 00:00:28,980 --> 00:00:31,660 Scratch on, hain zuzen, hau programazio hizkuntza grafikoa. 8 00:00:31,660 --> 00:00:35,490 Eta gauzak hartzeko maila txikiagoa behera, programazio gehiago tradizionalak erabiliz 9 00:00:35,490 --> 00:00:38,420 hizkuntza C. gisa ezaguna Baina bidean, konturatu 10 00:00:38,420 --> 00:00:40,730 ideia berdinak garela joan den ostiralean hitz egin du 11 00:00:40,730 --> 00:00:44,390 ez honetan bakarrik errepikatu egingo hizkuntza C, baina gehienetan beste guztietan 12 00:00:44,390 --> 00:00:46,350 begiratzen dugun seihileko honetan. 13 00:00:46,350 --> 00:00:50,247 >> Beraz, gauza hau deitzen dugun hemen zer azken aldiz? 14 00:00:50,247 --> 00:00:51,830 Honek adierazpen baten ordezkaria da. 15 00:00:51,830 --> 00:00:53,080 Beraz, hau adierazpen bat deitzen dugu. 16 00:00:53,080 --> 00:00:54,100 Eta zerbait egiten du. 17 00:00:54,100 --> 00:00:56,910 Agindu bat dela bat ordenagailu edo Scratch exekutatu daiteke. 18 00:00:56,910 --> 00:00:59,910 Eta aurrerantzean, dezagun, halaber, hasteko funtzio bat, honen antzeko zerbait deituz, 19 00:00:59,910 --> 00:01:02,070 arrazoiengatik, laster ikusiko dugun. 20 00:01:02,070 --> 00:01:03,681 >> Bien bitartean, horrelako gauzak ikusi genituen. 21 00:01:03,681 --> 00:01:05,680 Eta horiek dira, oro har, zer eraikitzeko bezala ezagutzen? 22 00:01:05,680 --> 00:01:06,240 >> IKUSLEEN: Begizta. 23 00:01:06,240 --> 00:01:06,860 >> DAVID J. MALAN: Beraz, begizta bat. 24 00:01:06,860 --> 00:01:07,943 Beraz, nahiko erraza. 25 00:01:07,943 --> 00:01:09,470 Hitzez hitz egiten du esaten. 26 00:01:09,470 --> 00:01:12,210 Eta Scratch, nahi baduzu gehiago puzzle pieza Cram hor, 27 00:01:12,210 --> 00:01:13,950 pieza egokitzeko hazten da. 28 00:01:13,950 --> 00:01:16,790 Eta C ikusi dugu duela Gauza bera egin dezakegu. 29 00:01:16,790 --> 00:01:20,000 >> Begizta mota bat, nahiz eta, Scratch betiko izan liteke, 30 00:01:20,000 --> 00:01:21,820 edo ez edozein zenbakia da beste planteamendu. 31 00:01:21,820 --> 00:01:24,150 Baina dezagun gehiago bat hartu en generalista begirada, aurpegi batekin 32 00:01:24,150 --> 00:01:27,402 hori da, seguru asko nahiko ezagunak, at orokorrago begiztak. 33 00:01:27,402 --> 00:01:29,110 Mark Zuckerberg: One Gauza ordenagailuak 34 00:01:29,110 --> 00:01:31,860 dira benetan ona komandoak errepikatzea. 35 00:01:31,860 --> 00:01:33,910 Pertsona gisa, litzaidake lortuko duzu Benetan aspertuta bazaude 36 00:01:33,910 --> 00:01:36,730 Gauza bera egin behar izan aldiz segidan asko. 37 00:01:36,730 --> 00:01:40,530 Baina ordenagailu bat gauza bera egin ahal milioika edo bilioika aldiz, 38 00:01:40,530 --> 00:01:43,290 eta ez dira aspertuko, eta gai izango benetan ondo burutzeko. 39 00:01:43,290 --> 00:01:45,650 >> Beraz, adibidez, badut Denek nahi nahi izan 40 00:01:45,650 --> 00:01:48,840 Facebook pozik urtebetetzea bat horiek e-mail bat bidaliz, 41 00:01:48,840 --> 00:01:51,550 agian ni baino gehiago eraman mendean benetan idatzi 42 00:01:51,550 --> 00:01:53,000 guztion emailak horiek guztiak. 43 00:01:53,000 --> 00:01:57,780 Baina kode lerro gutxiren buruan, I can dute sistema bat bidali email bat guztiontzat 44 00:01:57,780 --> 00:01:59,930 Facebook desiratuz an zoriontsu urtebetetzea. 45 00:01:59,930 --> 00:02:02,730 Beraz, zer loops dira eta zergatik Oraindik dute baliotsu eta zerbait 46 00:02:02,730 --> 00:02:04,740 ordenagailuak oso ondo egin dezake. 47 00:02:04,740 --> 00:02:05,630 >> DAVID J. MALAN: Beraz, Nik hartzaileak izan zara 48 00:02:05,630 --> 00:02:07,820 CS50 batzuen eta Dropbox amaieran espazioa, 49 00:02:07,820 --> 00:02:10,590 hori da, hain zuzen, benetan zer garen egin, nahiko horrelako kodea erabiliz. 50 00:02:10,590 --> 00:02:12,600 Funtsean daukagu ​​handi bat Kalkulu-orriko zein sartu 51 00:02:12,600 --> 00:02:15,016 Folks inputting dute beren izenak eta helbide elektronikoak. 52 00:02:15,016 --> 00:02:18,160 Eta kode apur txiki bat idatzi dugu, helbide horietako batetik bestera joateko daiteke 53 00:02:18,160 --> 00:02:21,860 eta txu helbideak berezia inork baino gehiagotan aurkeztu. 54 00:02:21,860 --> 00:02:25,120 Eta hortik aurrera, bat bidaliko dugu email automatizatu CS50 bot-tik, 55 00:02:25,120 --> 00:02:27,190 kupoi kodea barne. 56 00:02:27,190 --> 00:02:29,290 >> Orain, gainera, jakin nahi izan dugu hau azken aldiz eraikitzeko. 57 00:02:29,290 --> 00:02:33,100 Eta hori da jakin baten zer adibide? 58 00:02:33,100 --> 00:02:35,050 Beraz, bai, adierazpen boolearrak. 59 00:02:35,050 --> 00:02:37,050 Eta forma ekarri harrapatu nahi baita. 60 00:02:37,050 --> 00:02:39,966 Du galdera horiei guztiei Egia edo Scratch faltsua osatzen 61 00:02:39,966 --> 00:02:41,590 honen antzeko zerbait apur bat itxura izango. 62 00:02:41,590 --> 00:02:43,200 Eta honi deitzen diogu adierazpen boolear bat. 63 00:02:43,200 --> 00:02:46,170 Hori da, hain zuzen ere, egia edo gezurra, bai edo ez. 64 00:02:46,170 --> 00:02:49,150 Galdera bati erantzuteko modu bat da. 65 00:02:49,150 --> 00:02:52,420 >> Eta bien bitartean Boolean hauek erabili ahal izango duzu eraikuntzen barruan esamolde 66 00:02:52,420 --> 00:02:54,720 horiek, zein atsegin Jakina baldintza dira 67 00:02:54,720 --> 00:02:57,259 edo adarrak, proverbial Sardexka errepidea. 68 00:02:57,259 --> 00:02:59,550 Eta ez bakarrik begiratu ahal izango dute Hau atsegin, baina, halaber, ezin dute 69 00:02:59,550 --> 00:03:02,080 haiekin elses dute lotuta. 70 00:03:02,080 --> 00:03:05,820 Eta benetan ahal izango duzu hiru modu bat errepidea bidegurutze edo lau bide bidegurutze batera 71 00:03:05,820 --> 00:03:08,340 Errepidean ere, besterik gabe, Gauza horiek habia, 72 00:03:08,340 --> 00:03:10,510 Scratch ikusi ahal izango duzu Ez Dagoeneko baduzu. 73 00:03:10,510 --> 00:03:13,550 Eta zuk C do jo ahal izango baita. 74 00:03:13,550 --> 00:03:16,810 >> Ikus dezagun orokorra bestera alumnist bat begiratu, bai, nork 75 00:03:16,810 --> 00:03:21,490 beste ikuspegi bat aurkeztu dezake Gauza horiek baldintza deitzen da. 76 00:03:21,490 --> 00:03:24,060 >> Bill Gates: Pertsonak egiteko erabakiak egunero. 77 00:03:24,060 --> 00:03:27,530 Adibidez, kanpora joan aurretik mota horretako adierazpen bat izanez gero dioen, 78 00:03:27,530 --> 00:03:31,480 ondoren, euria balitz dut nire jaka lortu behar. 79 00:03:31,480 --> 00:03:36,820 Eta ordenagailuak behin harrigarria adierazpenak mota horiek erabakitzeko, 80 00:03:36,820 --> 00:03:42,280 dute fidagarrian exekutatu ahal izango duten sinesgaitza abiaduran gauza horiek. 81 00:03:42,280 --> 00:03:48,240 Eta beraz, programa informatiko bat benetan matematika eta batzuk pixka bat da 82 00:03:48,240 --> 00:03:53,050 adierazpenak bertan bada Erabakia erabat egina. 83 00:03:53,050 --> 00:03:55,020 >> DAVID J. MALAN: Beraz, Jakin ahal izango duzu, izan zen 84 00:03:55,020 --> 00:03:57,880 Bill Gates bezalako folks, Paul Allen, eta beste batzuk 85 00:03:57,880 --> 00:04:00,240 benetan Atao off ordenagailu pertsonala llamado 86 00:04:00,240 --> 00:04:01,990 iraultza orain dela urte batzuk. 87 00:04:01,990 --> 00:04:04,140 Pentsatu nuen, murgiltze dugu aurretik administratiboa batzuk sartu, 88 00:04:04,140 --> 00:04:09,920 ipuin bat erlazionatzeko genuke Albuquerque batetik, New Mexico Historia Naturaleko museoan 89 00:04:09,920 --> 00:04:13,650 eta zientzia non Bill Gates batzuk ' eta Paul Allen istorioak goiztiarrena 90 00:04:13,650 --> 00:04:17,470 kontatzen dira, nola gaur egun dugun Gaur egungo PC eta MACS eta gehiago. 91 00:04:17,470 --> 00:04:22,390 Horretarako, ordea, bi boluntarioak behar ditugu nor narrazioaren ahotsak oso ona izan 92 00:04:22,390 --> 00:04:23,735 gidoi bat irakurri eta ozen. 93 00:04:23,735 --> 00:04:25,530 >> Ondo da, nola itzuli ez buruz. 94 00:04:25,530 --> 00:04:26,120 Goazen sortu. 95 00:04:26,120 --> 00:04:27,770 Eta nola aurrean hemen buruz. 96 00:04:27,770 --> 00:04:28,340 Goazen behera. 97 00:04:28,340 --> 00:04:29,600 Hartu zure leku hemen. 98 00:04:29,600 --> 00:04:32,444 You guys gisa etorri, pare bat administratiboen iragarkiak. 99 00:04:32,444 --> 00:04:34,360 atalen, prozesuaren atal bat aukeratzerakoan, 100 00:04:34,360 --> 00:04:36,068 honetan hasiko da Asteazkena ostiralera. 101 00:04:36,068 --> 00:04:38,400 Horretan gehiago honetan datozen Hitzaldia asteazkenean. 102 00:04:38,400 --> 00:04:41,770 >> Super atalak, bestalde, ez dira datorren astean eskaintzen dugun zerbait 103 00:04:41,770 --> 00:04:45,310 Horren bidez, klase osoa gonbidatuta dago eskala nahiko handiak parte 104 00:04:45,310 --> 00:04:47,690 ataletan, beste bat gehiago comfy, hain eroso bat. 105 00:04:47,690 --> 00:04:51,340 Eta partikularren jakinaraziko dizuegu hori, baita, geroago aste honetan. 106 00:04:51,340 --> 00:04:53,310 >> Bitartean ataletan, beraiek, hasiko 107 00:04:53,310 --> 00:04:57,241 Aste ikastaroa hiru, zero indizea, horrek esan nahi du horiek aste pare bat dira 108 00:04:57,241 --> 00:04:57,740 out. 109 00:04:57,740 --> 00:04:58,450 Beraz, ez kezkatu. 110 00:04:58,450 --> 00:05:01,014 Oraindik ez dute galdu duzu ezer lerro horiek batera. 111 00:05:01,014 --> 00:05:03,930 Bien bitartean, bien bitartean, nahi baduzue Edozein zalantza administratiboki dute, 112 00:05:03,930 --> 00:05:08,120 email neure burua eta Devon eta Gabe eta Rob helbide honetan hemen at. 113 00:05:08,120 --> 00:05:10,320 >> Azkenik, arazo multzo 0 da, noski, kanpora. 114 00:05:10,320 --> 00:05:12,320 Konturatuko dezakezu ezazu ikastaroaren web orrian. 115 00:05:12,320 --> 00:05:14,840 Eman behar duzu berarekin galderak erantzun guztiak 116 00:05:14,840 --> 00:05:18,250 egiteko bidean duzu nahikoa ohitu arazoa multzoa hasi zen. 117 00:05:18,250 --> 00:05:21,430 Baina aurkituko dituzu zeure buruari laguntzen esku baten beharra, 118 00:05:21,430 --> 00:05:25,020 baliabide guztiak joateko bulego orduetan, Astelehena, asteartea, asteazkena, osteguna 119 00:05:25,020 --> 00:05:27,290 Aste honetan arratsaldeko of lau jantokiak ere. 120 00:05:27,290 --> 00:05:31,650 Ikusi dagoela URL partikularren kodea non bulego orduetan jarriko izan dira. 121 00:05:31,650 --> 00:05:34,000 >> Orain Dezagun bete gure bi gonbidatuek hemen gaur. 122 00:05:34,000 --> 00:05:34,740 Zein da zure izena? 123 00:05:34,740 --> 00:05:35,290 >> JAY PAUL: Jay Paul. 124 00:05:35,290 --> 00:05:36,880 >> DAVID J. MALAN: Jay Paul, politak zu ezagutzeaz. 125 00:05:36,880 --> 00:05:37,330 >> Hikari: Hikari. 126 00:05:37,330 --> 00:05:37,975 >> DAVID J. MALAN: Hikari? 127 00:05:37,975 --> 00:05:38,250 >> Hikari: Hikari. 128 00:05:38,250 --> 00:05:38,810 >> DAVID J. MALAN: Hikari. 129 00:05:38,810 --> 00:05:39,790 Urte askotarako baita. 130 00:05:39,790 --> 00:05:42,123 Jay Paul eta Hikari dute horien aurrean musika horiei buruzko 131 00:05:42,123 --> 00:05:45,100 bi gidoiak dudala inprimatutako nabarmentzen New Mexico batetik, gaur goizean atera 132 00:05:45,100 --> 00:05:46,692 Historia Natural eta Zientzia museoa. 133 00:05:46,692 --> 00:05:48,400 Eta zer pentsatu nuen Nuke goiburu on egin 134 00:05:48,400 --> 00:05:52,830 Zure errezitatu batera dago gidoia eta historia horren 135 00:05:52,830 --> 00:05:54,700 entzunezko, argazkiak, ezustekorik gabe. 136 00:05:54,700 --> 00:05:57,512 >> Eta zer aldez aurretik Nik egin Zure gidoi on prehighlight 137 00:05:57,512 --> 00:05:59,470 zer irakurri behar dituzu, eta zer irakurri behar duzu. 138 00:05:59,470 --> 00:06:00,920 Eta, funtsean dizkizugu besterik ordezko paragrafoetan. 139 00:06:00,920 --> 00:06:03,211 Hainbeste you might like it Izan English klasean egin. 140 00:06:03,211 --> 00:06:06,875 Hori da benetan ikusleen bortxatzeko Zure istorioa sinesten hemen. 141 00:06:06,875 --> 00:06:07,600 Egingo dugu? 142 00:06:07,600 --> 00:06:13,272 Beraz, istorioa hemen, bat dugu BASIC, eta hasten Cambridge da. 143 00:06:13,272 --> 00:06:18,750 >> JAY PAUL: neguan, 1974an izan zen, Cambridge, Massachusetts 144 00:06:18,750 --> 00:06:20,240 non negu hotza izan daiteke. 145 00:06:20,240 --> 00:06:22,800 Bizardun, ile luze bat college dropout izeneko 146 00:06:22,800 --> 00:06:27,280 Paul Allen Harvard zehar drudging zen Square, bere pentsamenduak xurgatu. 147 00:06:27,280 --> 00:06:31,050 Bere egun horietan kezka nagusia nola bere lagun, Bill Gates iritsi zen, 148 00:06:31,050 --> 00:06:34,974 Eskola irten eta joan zion enpresa sartzen. 149 00:06:34,974 --> 00:06:37,890 Hikari: biak hasi bazen enpresa-ventures kopurua baten bidez 150 00:06:37,890 --> 00:06:40,850 elkarrekin, Lakeside hasita Seattle non ikastetxea 151 00:06:40,850 --> 00:06:45,220 free ordenagailu denboran ziren ordaindutako PDP-10 ordenagailu bat probatzeko denbora batean jartzeko 152 00:06:45,220 --> 00:06:46,580 enpresaren partekatuz. 153 00:06:46,580 --> 00:06:50,930 Berrienak plana ezin izan zen irten Eskola eta software konpainia bat osatzeko. 154 00:06:50,930 --> 00:06:53,440 Allen utzi Washington State University. 155 00:06:53,440 --> 00:06:58,380 Baina azken minutuan, Gates at Harvard jarraitu erabaki zuen. 156 00:06:58,380 --> 00:07:02,080 >> JAY PAUL: Egun horretan, Harvard zeharkatu Square, Allen urtarrilaren ikusi, 157 00:07:02,080 --> 00:07:07,530 1975 Popular Electronics alea lurra geldiarazteko titular batera, 158 00:07:07,530 --> 00:07:11,900 Munduko lehen minicomputer Kit Merkataritza ereduak aurkariek. 159 00:07:11,900 --> 00:07:14,430 Beneath titular izan zen Kutxa txiki bat argazki bat 160 00:07:14,430 --> 00:07:16,160 Argiak eta etengailuak apaindutako. 161 00:07:16,160 --> 00:07:19,770 Zen MITS Altair 8800 izenekoa da. 162 00:07:19,770 --> 00:07:24,100 Eta Allen jakin hau zer dira zuen bila. 163 00:07:24,100 --> 00:07:26,350 >> Hikari: eztabaida egunak jarraian. 164 00:07:26,350 --> 00:07:30,170 Allen eta Gates ulertu Altair garrantzia. 165 00:07:30,170 --> 00:07:32,480 Askotan hitz egin dute mikroprozesadoreak buruz 166 00:07:32,480 --> 00:07:35,250 eta zer ikusteko zain zeuden haiekin egin beharko litzateke. 167 00:07:35,250 --> 00:07:39,770 Orain ez zegoen minicomputer kit bat Elektronika Popular estalkia. 168 00:07:39,770 --> 00:07:42,830 Itxuraz izan software ez da oraindik. 169 00:07:42,830 --> 00:07:46,830 Nazio bat imajinatzen dute programatzaileak MITS beherantz. 170 00:07:46,830 --> 00:07:49,590 Eta horrela Ed Roberts deitu dute, enpresaren burua, 171 00:07:49,590 --> 00:07:53,330 bertsio bat izatea aldarrikatzen BASIC programazio hizkuntzaren ia prest 172 00:07:53,330 --> 00:07:54,710 Altair da. 173 00:07:54,710 --> 00:07:55,570 Ez zuten. 174 00:07:55,570 --> 00:07:58,910 Eta Roberts ezagutu behar ez zuten. 175 00:07:58,910 --> 00:08:03,170 Zen egun bat 10 deiak daroa pertsona nor BASIC bat ia prest izan. 176 00:08:03,170 --> 00:08:05,570 Eta bere stock erantzun izan zen, "lehen pertsonan 177 00:08:05,570 --> 00:08:11,090 duten erakusten du lan batekin BASIC kontratua lortzen. " 178 00:08:11,090 --> 00:08:13,910 >> JAY PAUL: Gates eta Allen inoiz ikusi Altair bat. 179 00:08:13,910 --> 00:08:17,600 Zuen inoiz ere ikusi dute Intel 8080 mikroprozesadorea 180 00:08:17,600 --> 00:08:19,060 Altair muinean. 181 00:08:19,060 --> 00:08:21,470 Baina urte pare bat lehenago Allen programa bat idatzi zuen 182 00:08:21,470 --> 00:08:25,220 mainframe ordenagailu bat emulatu an aurreko Intel baten funtzionamendua 183 00:08:25,220 --> 00:08:26,217 mikroprozesadorea. 184 00:08:26,217 --> 00:08:28,300 Eta dute inguruan denbora honetan Gauza bera egin nahi. 185 00:08:28,300 --> 00:08:31,530 186 00:08:31,530 --> 00:08:34,380 >> Hikari: Intel batekin 8080 eskuzko bere alde, 187 00:08:34,380 --> 00:08:37,770 Allen eseri batean Harvard PDP-10 ordenagailua 188 00:08:37,770 --> 00:08:42,010 eta emuladorea eta software idatzi beharrezko tresnak programazioa egiteko. 189 00:08:42,010 --> 00:08:45,820 Bitartean Gates geratzen zaiola klaseak eta jardun zuen 190 00:08:45,820 --> 00:08:48,120 BASIC diseinatzen den, trikimailu guztietan erabiliz 191 00:08:48,120 --> 00:08:53,130 tamaina lortzeko bazekielako 4 kilobyteko azpitik behera. 192 00:08:53,130 --> 00:08:55,870 >> JAY PAUL: Albuquerque Out, Ed Roberts Gates dei bat jaso 193 00:08:55,870 --> 00:08:59,754 Xehetasunen berri izateko, nola buruz galdetu du Altair errutina espezifikoak kudeatu. 194 00:08:59,754 --> 00:09:01,170 Inor ez da inoiz eskatu zuen aurretik. 195 00:09:01,170 --> 00:09:02,670 Eta Roberts hasi interesa lortzeko. 196 00:09:02,670 --> 00:09:05,240 197 00:09:05,240 --> 00:09:07,970 >> Hikari: garapenarekin batera tresnak eta diseinua prest, 198 00:09:07,970 --> 00:09:10,780 Gates eta Allen idatzi PDP-10 kode, 199 00:09:10,780 --> 00:09:16,060 beste Harvard ikaslea enlisting, Monte Davidoff, matematika eguneroko ohiturak idazteko. 200 00:09:16,060 --> 00:09:19,450 Amaierako gau baten ostean programazioa, Allen plano bat lortu 201 00:09:19,450 --> 00:09:22,970 beren MITS oinarrizko emateko. 202 00:09:22,970 --> 00:09:25,800 Eman zituen hegazkina gidatzen kezkagarria. 203 00:09:25,800 --> 00:09:28,490 Eta Cambridge itzuli Gates kezkagarria zen. 204 00:09:28,490 --> 00:09:32,100 Probatu izan dituzte euren oinarrizko eta bertan izan emuladorea lan egin. 205 00:09:32,100 --> 00:09:35,444 Baina zer emuladorea okerra bada? 206 00:09:35,444 --> 00:09:37,360 JAY PAUL: hegazkina bezala hurbildu Albuquerque, 207 00:09:37,360 --> 00:09:40,070 Allen konturatu beraien BASIC, orain ondo jasotako 208 00:09:40,070 --> 00:09:42,460 roll txikian aldiko paper zinta, litzateke 209 00:09:42,460 --> 00:09:44,970 izan alferrikakoa bereizi gabe programa, kargatzaile bat deitu du, 210 00:09:44,970 --> 00:09:47,550 Altair nola esango luke paper zinta izakia irakurtzeko 211 00:09:47,550 --> 00:09:49,620 teletype makina elikatzen. 212 00:09:49,620 --> 00:09:52,970 Atera zuen bere koaderno eta azkar scribbled behera kudeatzeko programa bat 213 00:09:52,970 --> 00:09:56,819 Batzar hizkuntzan, gero eskuz itzulitako duten 1s eta 0 s sartu 214 00:09:56,819 --> 00:09:57,985 Altair ulertzeko luke. 215 00:09:57,985 --> 00:10:00,530 216 00:10:00,530 --> 00:10:03,830 >> Hikari: Allen espero zen bat garbi, txiki, goi teknologiako konpainia 217 00:10:03,830 --> 00:10:05,470 enpresa jantziak gizonen eskutik. 218 00:10:05,470 --> 00:10:09,210 Beraz, harritu zen Roberts ezagutu zenean aireportuan zion ganadutegiko antza 219 00:10:09,210 --> 00:10:10,270 eskuko. 220 00:10:10,270 --> 00:10:12,070 Roberts, gainera, harrituta geratu zen. 221 00:10:12,070 --> 00:10:16,340 Noiz Harvard jaitsi zen hotel garesti bat programatzaile, 222 00:10:16,340 --> 00:10:20,790 Allen dela aitortu behar izan ezin izan zuen gela ordaindu. 223 00:10:20,790 --> 00:10:24,510 >> JAY PAUL: MITS, berez, izan zen banda Mall hautsez batean dago. 224 00:10:24,510 --> 00:10:27,040 Cluttered batean Inside Workbench Altair izan zen 225 00:10:27,040 --> 00:10:30,390 kargatu 5eko kilobyteko batera memoria eta kable baten bidez lotuta 226 00:10:30,390 --> 00:10:32,030 teletype makina bat. 227 00:10:32,030 --> 00:10:37,200 Roberts eta Chief ingeniaria, Bill Yates, itxaron expectantly 228 00:10:37,200 --> 00:10:40,660 Allenek bere kargatzailea txandakatu gisa Altair sartu programan. 229 00:10:40,660 --> 00:10:44,980 Teletype The bota gisa chugging hasi paper zinta zinta irakurlearen bitartez. 230 00:10:44,980 --> 00:10:47,215 Agian 15 minutu programa kargatu. 231 00:10:47,215 --> 00:10:52,110 Ondoren teletype bortizki impreso memoria gonbita, orduan prest gonbit bat, 232 00:10:52,110 --> 00:10:55,340 eta Allen idazten hasi gutxi proba bat komandoak. 233 00:10:55,340 --> 00:10:57,400 Guztion harridurarako, software lan egin zuen. 234 00:10:57,400 --> 00:10:58,525 Baziren bugs, noski. 235 00:10:58,525 --> 00:11:02,070 Baina gauza nagusia izan zen lan egin zuen. 236 00:11:02,070 --> 00:11:06,570 >> A Geroago, jokalariak bidean den: hikari 3,00 $ lunch Pancho en at, WASP bat hegan 237 00:11:06,570 --> 00:11:10,470 bilketa, leihoko kamioi eta ziztatu Allen besoan. 238 00:11:10,470 --> 00:11:13,070 Baina puntu ezer hartan aldartea hondatu daiteke. 239 00:11:13,070 --> 00:11:17,210 Orain Altair bere BASIC, izan du lehen software komertzialak etxebizitza bat egiteko 240 00:11:17,210 --> 00:11:23,260 ordenagailua, Paul Allen eta Bill-ek egina Gates, Microsoft enpresa bezala egiten ari. 241 00:11:23,260 --> 00:11:25,336 >> DAVID J. MALAN: askok Gure bi irakurleei esker. 242 00:11:25,336 --> 00:11:30,690 >> [Txaloak] 243 00:11:30,690 --> 00:11:32,520 >> DAVID J. MALAN: orain Zure aukera duzu, 244 00:11:32,520 --> 00:11:35,880 , utzi sparkly baten aurretik edo dark-- batean oi dirdira bat, 245 00:11:35,880 --> 00:11:40,810 sec bat itxoin wait-- sparkly eta elefante ilun dirdira bat 246 00:11:40,810 --> 00:11:42,534 CS50 Cheng Gong propioa. 247 00:11:42,534 --> 00:11:43,450 Hikari: Aw, eskerrik asko. 248 00:11:43,450 --> 00:11:45,324 DAVID J. MALAN: Guztiak eskuinera, eskerrik asko hainbeste. 249 00:11:45,324 --> 00:11:49,855 [Txaloak] 250 00:11:49,855 --> 00:11:51,105 DAVID J. MALAN: Beraz, benetako istorioa. 251 00:11:51,105 --> 00:11:54,380 Hau da, esan nahi du horiek guztiak makinak eta erraztasuna duten dugu 252 00:11:54,380 --> 00:11:56,270 orain, horiek erabili eta eraman ematen, benetan 253 00:11:56,270 --> 00:12:00,070 hemen urrats batzuk besterik ez hasi, Benetako antzerki honen from. 254 00:12:00,070 --> 00:12:03,930 Eta orain gaur egun, duzun ez bada izan, hau da Maxwell Dworkin, ordenagailua 255 00:12:03,930 --> 00:12:05,810 zientziak eraikina, halaber, txoko inguruan. 256 00:12:05,810 --> 00:12:09,760 Eta hau bigarren solairuan Eraikin ek hiru orrialde zintzilikatzeko 257 00:12:09,760 --> 00:12:12,740 jatorrizko iturburu-kodea duen Bill Gates eta Paul Allen idatzi zuen. 258 00:12:12,740 --> 00:12:14,770 Izan ere, erabilera gero Handiagotzean ez soilik ikusi ahal izango duzu 259 00:12:14,770 --> 00:12:17,350 Beren izenak original mota, baina, halaber, 260 00:12:17,350 --> 00:12:22,100 beren sinadurak duen bat apaintzen dute Urte batzuk atzera azken bisitatu dute. 261 00:12:22,100 --> 00:12:25,800 >> Baina zer gertatzen da batez ere sinesgarria izan zen honi buruz zer ezarri dute egin 262 00:12:25,800 --> 00:12:29,760 zela litzateke programa bat idatzi beste pertsona gaitu idatzi 263 00:12:29,760 --> 00:12:30,950 beren programak egin. 264 00:12:30,950 --> 00:12:34,280 Garai hartan guztia ez zegoen batera MITS egindako Altair makina honetan. 265 00:12:34,280 --> 00:12:40,020 Eta horiek guztiak behar modu batzuk erraza egiteko hobbyists eta lagunentzako 266 00:12:40,020 --> 00:12:45,300 Gustatzen gurekin gela honetan benetan programa nahitaez ulertu gabe 267 00:12:45,300 --> 00:12:49,060 Batzar kodea edo makina kodea, edo Jainkoa debekatzeko, 0 s eta 1s. 268 00:12:49,060 --> 00:12:51,190 Programatzaileak dugu atsegin gela honetan haietan, dugu 269 00:12:51,190 --> 00:12:54,070 adierazteko gai izan nahi geure burua askoz sasi kodea bezalako gehiago 270 00:12:54,070 --> 00:12:57,330 a nit bit gehiago bada ere hautakorra azken astean hitz egin dugu baino. 271 00:12:57,330 --> 00:13:00,970 Ez dugu hau atsegin kodea idatzi nahi, bertan Paul Allen eta Bill Gates egin. 272 00:13:00,970 --> 00:13:04,850 Dugu, horren ordez, nahi kodea idatzi duen Itxura erabiltzaileak apur bat gehiago errespetatzen. 273 00:13:04,850 --> 00:13:07,150 >> Orain hau BASIC bezala ezagutzen hizkuntza bat da. 274 00:13:07,150 --> 00:13:11,497 Eta lerro zenbakiak daude duzuna erabiltzeko kode lerro besterik zenbakira 275 00:13:11,497 --> 00:13:12,330 horretan idazten ari zaren. 276 00:13:12,330 --> 00:13:14,038 Ere ez dugu behar Egun hauetan ez da egin. 277 00:13:14,038 --> 00:13:16,060 Baina hemen ikusi ahal izango duzu nola PRINT "kaixo, mundua" 278 00:13:16,060 --> 00:13:18,660 litzateke, hain zuzen ere, ustez, hori bakarrik inprimatu. 279 00:13:18,660 --> 00:13:22,710 Eta beraz, zer Bill eta Paul egin zen adoretzeko pertsonek hau atsegin kodea idatzi 280 00:13:22,710 --> 00:13:27,240 ordez begirada bat hartzen baduzu horretako informatika wall-- kode hau bezalakoa. 281 00:13:27,240 --> 00:13:29,290 >> Izan ere, CS50 dela gutxi aukera izan zuten 282 00:13:29,290 --> 00:13:32,540 eseri Harry Lewis irakaslearekin Computer Science saila, nor 283 00:13:32,540 --> 00:13:34,640 benetan irakatsi Bill Gates Duela urte batzuk, 284 00:13:34,640 --> 00:13:38,460 eta zutik dago hemen aurretik hiru zatiak orri horiekin. 285 00:13:38,460 --> 00:13:39,560 Ikus dezagun begirada bat. 286 00:13:39,560 --> 00:13:45,520 >> HARRY LEWIS: Hemen zer behar duzun bat software pieza bat hasieran zerrenda 287 00:13:45,520 --> 00:13:50,240 Bill Gates eta Paul-ek idatzi Allen, Microsoft sortzaileetako. 288 00:13:50,240 --> 00:13:52,570 Beraz, kode hau interesgarria da bi arrazoirengatik. 289 00:13:52,570 --> 00:13:55,480 Lehenik eta behin, hura izan zen Microsoft-en lehen produktua, 290 00:13:55,480 --> 00:14:01,810 horretarako, interprete bat izan zen programazio hizkuntza BASIC. 291 00:14:01,810 --> 00:14:04,940 Eta, bestetik, hori zen lehen saiakera bat 292 00:14:04,940 --> 00:14:10,580 interprete bat sortzea hain arruntei pertsonek ordenagailu pertsonala erabili izan. 293 00:14:10,580 --> 00:14:12,670 >> Beraz, Bill Gates izan da bat Harvard at graduak. 294 00:14:12,670 --> 00:14:14,820 Harvard at irakasteko 1974an hasi nintzen. 295 00:14:14,820 --> 00:14:16,560 Hau 1975 urtean egin zen. 296 00:14:16,560 --> 00:14:20,180 Beraz, bere ibilbide goiz zen eta nire ibilbidean hasieran. 297 00:14:20,180 --> 00:14:23,790 Benetan irakatsi dut Bill in honen inguruan ikastaro bat. 298 00:14:23,790 --> 00:14:27,130 Paul Allen ez zen bat Harvard ikaslea, baina berak 299 00:14:27,130 --> 00:14:31,020 izan batxilergoko izan Bill Gates ikaskide. 300 00:14:31,020 --> 00:14:33,740 Etorriko bada, eta begiratu zerrenda honetan, ikusiko duzu 301 00:14:33,740 --> 00:14:36,230 egia esan, hirugarren bat aurkituko izena, Monte Davidoff, 302 00:14:36,230 --> 00:14:39,260 nor Gates-en ikaskide izan zen hemen Harvard at. 303 00:14:39,260 --> 00:14:41,340 >> Ados, beraz, hemen bat iruzkin sortu hemen interesgarri. 304 00:14:41,340 --> 00:14:47,150 Dio "4K ere erro karratua ezaba dezake baina begiztak dira oraindik lan egin behar ". 305 00:14:47,150 --> 00:14:53,080 Ados, beraz, zer esan nahi duen ez da konpilatu programa hau bi modu zeuden. 306 00:14:53,080 --> 00:14:57,860 Bertsio bat exekutatu zen One Altair ordenagailu honetan 307 00:14:57,860 --> 00:15:04,310 4K hitzetan bakarrik zuela memoria, 4.096 memoria hitzetan. 308 00:15:04,310 --> 00:15:07,050 Baina bertsio handiak izan 8K. 309 00:15:07,050 --> 00:15:09,770 Eta, beraz, hau dio duten 4K bertsioan 310 00:15:09,770 --> 00:15:12,770 batzuk ezabatu behar izan duzu kodea da egoki egiteko. 311 00:15:12,770 --> 00:15:14,790 Eta gauza bat ezabatu beharko litzateke 312 00:15:14,790 --> 00:15:16,290 plaza root errutina izango litzateke. 313 00:15:16,290 --> 00:15:20,360 Baina itxuraz, loops egin beharko lukete oraindik 314 00:15:20,360 --> 00:15:26,392 nahiz eta lan noiz behera konpilatzen ari zaren besterik 4K ordenagailu bertsioa da. 315 00:15:26,392 --> 00:15:29,350 DAVID J. MALAN: Beraz, gai bat, informatikako ikusi dugu, 316 00:15:29,350 --> 00:15:31,430 ideia hau da: layering eta abstrakzioa, 317 00:15:31,430 --> 00:15:34,670 eta benetan sorbalda gainean zutik izan duten gurekin aurretik etorri lagunok, ez 318 00:15:34,670 --> 00:15:37,890 Bill Gates batzuk ez bezala eta Paul Allen narrazio hemen. 319 00:15:37,890 --> 00:15:40,080 Eta zer esan nahi gaur egun dugun hartu ahal 320 00:15:40,080 --> 00:15:43,490 gauza eman, egia esan, errazagoa gurekin kodea idazteko. 321 00:15:43,490 --> 00:15:47,170 Izan ere kodea, esan bezala, ostiralean dugu, teknikoki iturburu-kode gisa ezagutzen. 322 00:15:47,170 --> 00:15:52,210 Eta ingeles honek sintaxia bezalakoa hori da gehiago egokia eta gehiago ondo definitu 323 00:15:52,210 --> 00:15:55,480 sasi kodea antzeko zerbait baino, zeren Horrek ez Definizio formal ez da. 324 00:15:55,480 --> 00:15:58,320 >> Eta gaur zer ari gara fokatu iturburu-kodea da 325 00:15:58,320 --> 00:16:01,010 itxura hau, eta horrek Admittedly, lehen begiratuan 326 00:16:01,010 --> 00:16:02,690 erabat críptica. 327 00:16:02,690 --> 00:16:08,540 Eta Egia, modu gehiago estetikoki da konplexu baino azpiko programa da. 328 00:16:08,540 --> 00:16:13,300 Programa hau guztia egiten du, oroitzapen, zer esango dugu? 329 00:16:13,300 --> 00:16:14,990 Bistaratzen besterik ez da "kaixo mundua". 330 00:16:14,990 --> 00:16:19,600 Eta, hala ere gauzak egin behar dugun guztia begiratu esaldi oso sinpleak duen inguruan biltzeko. 331 00:16:19,600 --> 00:16:21,750 Baina guztiok baino askoz lehenago lerro hauek eta gehiago 332 00:16:21,750 --> 00:16:24,800 Zentzu askoz hobeto egingo duzu. 333 00:16:24,800 --> 00:16:26,940 >> Eta fluxua honela da. 334 00:16:26,940 --> 00:16:31,220 Zer behar gure eskura ditugun dagoen kodea hartu, iturri bezala 335 00:16:31,220 --> 00:16:32,340 duten ikusi besterik ez dugu kodea. 336 00:16:32,340 --> 00:16:35,060 Eta programa berri bat behar dugu exekutatu bitartez egin. 337 00:16:35,060 --> 00:16:39,130 Algoritmoak behar dugu, ahal dugun bihurtzeko kode iturria, hau bezalako, 338 00:16:39,130 --> 00:16:41,932 objektu-kode, 0 s eta 1s sartu. 339 00:16:41,932 --> 00:16:43,890 Bestela esanda, zer gaur egun ikasten goaz 340 00:16:43,890 --> 00:16:46,620 da hori nola egin, idatzi Iturri-kodeak sortu top, 341 00:16:46,620 --> 00:16:49,930 gainditu du sarrera bezala berezi bat programa konpiladore bat bezala ezagutzen, 342 00:16:49,930 --> 00:16:52,140 eta horretan ari gara kode objektu ekoizteko. 343 00:16:52,140 --> 00:16:54,600 Zein fancy modu bat besterik ez da zerbait hartuko dugu esaten 344 00:16:54,600 --> 00:16:58,350 itxura hau, pasa ezazu Konpiladore izeneko programa batean, 345 00:16:58,350 --> 00:17:01,210 kode objektu ekoizteko itxura hau. 346 00:17:01,210 --> 00:17:04,720 >> Beraz, hauek dira hitzez hitz 0 s eta 1s ereduak 347 00:17:04,720 --> 00:17:08,550 diren batek ulertu Intel ordenagailu egun hauetan, 348 00:17:08,550 --> 00:17:12,480 PUZaren interpretatu bada ere, ordenagailu baten barruan garunak, 349 00:17:12,480 --> 00:17:16,130 egingo literalki inprimatu, nahiko besterik gabe, "kaixo mundua". 350 00:17:16,130 --> 00:17:19,670 Orain, ez da zu baino 0 s eta 1s modu gehiago Espero luke horretarako beharrezkoa izan daitekeen. 351 00:17:19,670 --> 00:17:22,520 Baina hori dugu eraikitzen ari delako konplexutasunaren zati handi batean 352 00:17:22,520 --> 00:17:24,270 garela aurrerantzean har dezake emandako. 353 00:17:24,270 --> 00:17:27,869 Bestela esanda, pertsona smart asko cool tresna asko eman digu 354 00:17:27,869 --> 00:17:32,480 eta software indartsu eta bertan egiten dugu orain gure berezko proiektuak egin daitezke. 355 00:17:32,480 --> 00:17:33,400 >> Beraz, dezagun Hasteko. 356 00:17:33,400 --> 00:17:36,640 Joan den ostiralean, eta hauek kontuan hartuta Arazoa Ezarri 0 aste honetan, 357 00:17:36,640 --> 00:17:39,000 duzu bat duzu jolasten mundu honen itxura. 358 00:17:39,000 --> 00:17:42,180 Gaurtik aurrera eta Arazoa Ezarri 1 Datorren astean, kodea 359 00:17:42,180 --> 00:17:45,410 gero pixka bat begiratzen joan críptica, baina funtzionalki da 360 00:17:45,410 --> 00:17:46,940 joan berdinak izatea. 361 00:17:46,940 --> 00:17:50,770 Beraz, adi, goiko Scratch da, beheko C. Egia Scratch da 362 00:17:50,770 --> 00:17:52,780 erabiltzaileak askoz gehiago da lagunarteko eta eskuragarria. 363 00:17:52,780 --> 00:17:56,890 Baina orain alderatu ikusmen to top bada hondoan, ez dago bat bat bat-mota 364 00:17:56,890 --> 00:17:59,690 arteko korrespondentzia puzzle piezak eta hizkuntzaren 365 00:17:59,690 --> 00:18:00,870 jolastu buruz ari gara. 366 00:18:00,870 --> 00:18:04,420 Hain zuzen ere, esan du, blue puzzle pieza sortu top, 367 00:18:04,420 --> 00:18:08,370 itxuraz baliokide zer keyword to edo hizkuntza horretan Esaldi bereziak 368 00:18:08,370 --> 00:18:09,062 C izeneko? 369 00:18:09,062 --> 00:18:09,770 IKUSLEEN: printf. 370 00:18:09,770 --> 00:18:10,728 DAVID J. MALAN: Printf. 371 00:18:10,728 --> 00:18:12,140 Hori formatuduna inprimatzeko esan nahi du. 372 00:18:12,140 --> 00:18:15,240 Eta hori fancy bat besterik ez printf esaten C modu 373 00:18:15,240 --> 00:18:18,615 da adierazpen bat edo funtzio bat izango da joan duen pantaila zerbait inprimatzen ditu. 374 00:18:18,615 --> 00:18:19,990 Zer esan nahi du inprimatu pantailara? 375 00:18:19,990 --> 00:18:23,627 Whatever esango barruan duzun komatxo, parentesi barruan. 376 00:18:23,627 --> 00:18:25,460 Beraz, berriro ere, admittedly, ez dago gauza asko da 377 00:18:25,460 --> 00:18:27,990 gogoan duzula, Parentesi, komatxo, puntu, 378 00:18:27,990 --> 00:18:28,656 eta hori guztia. 379 00:18:28,656 --> 00:18:30,600 Baina hori guztia ordenatu puntuan ondoan. 380 00:18:30,600 --> 00:18:33,660 Oraingoz eramateko interesgarriena dela esan Scratch blokea 381 00:18:33,660 --> 00:18:37,520 Pretty askoz baliokidea printf C. adierazpena 382 00:18:37,520 --> 00:18:41,390 >> Bien bitartean, horia puzzle pieza goian, berdea Ez klik egindakoan, 383 00:18:41,390 --> 00:18:44,736 da seguruenik baliokidea zer keyword hemen? 384 00:18:44,736 --> 00:18:45,360 IKUSLEEN: nagusia. 385 00:18:45,360 --> 00:18:46,359 DAVID J. MALAN: Beraz nagusiak. 386 00:18:46,359 --> 00:18:47,410 Agian int, agian hutsunea. 387 00:18:47,410 --> 00:18:51,280 Baina bezalako soinuak mota nagusiak garrantzitsua da, eta halaxe izan da. 388 00:18:51,280 --> 00:18:54,080 Beraz berdea Ez klik egindakoan da, berriro ere, puzzle pieza 389 00:18:54,080 --> 00:18:56,390 noiz hasten bat osoa Scratch programa. 390 00:18:56,390 --> 00:19:02,140 Baina orain hasteko deituz goaz duten nagusiak, funtzio hori nagusi bezala ezagutzen da. 391 00:19:02,140 --> 00:19:06,410 >> Orain berriz egingo dugu orokortu hau honela. 392 00:19:06,410 --> 00:19:08,780 Agian deitu funtzio bat esaten dugu. 393 00:19:08,780 --> 00:19:10,580 Eta begiratu du zehazki, honela. 394 00:19:10,580 --> 00:19:11,770 Beno, zer loops buruz? 395 00:19:11,770 --> 00:19:16,540 Bihurtzean hasi nahi badugu edo Scratch gehiago itzultzen C, 396 00:19:16,540 --> 00:19:19,400 Gauza hau hemen itxuraz besterik dio "kaixo mundua" betirako. 397 00:19:19,400 --> 00:19:23,060 Beraz, horiek erlazionatu baduzu Scratch katu batekin gidoiak, 398 00:19:23,060 --> 00:19:26,560 besterik esaten jarraitzea bizidunetako burbuila mota batzuk ere, 399 00:19:26,560 --> 00:19:29,922 "Kaixo mundua, kaixo mundua, kaixo munduan, "ad nauseum, betiko. 400 00:19:29,922 --> 00:19:33,130 Ere antzeko zerbait egin nahi badugu C, apur bat críptica bilatzeko da joan. 401 00:19:33,130 --> 00:19:35,463 Baina bera lortu ahal izango dugu Emaitza, azkenean dugu gisa 402 00:19:35,463 --> 00:19:36,861 jakin, honen antzeko sintaxia. 403 00:19:36,861 --> 00:19:39,360 Printf berriro erabili nahi dut, egunaren amaieran delako 404 00:19:39,360 --> 00:19:42,040 Inprimatu nahi dut "kaixo mundua". 405 00:19:42,040 --> 00:19:45,610 Eta ez dut itxuraz bat erabiliz keyword ez dela betiko. 406 00:19:45,610 --> 00:19:47,320 Izan ordez, berriz, hitza. 407 00:19:47,320 --> 00:19:49,650 Baina besterik ere semantikoki Ingelesez, berriz, mota horretako 408 00:19:49,650 --> 00:19:52,120 begizta edo ziklo mota batzuk iradokitzen. 409 00:19:52,120 --> 00:19:55,070 >> Beraz, gertatzen da, izan C erabiltzen hitzarekin. 410 00:19:55,070 --> 00:20:00,700 Eta egia bitartean, zergatik ez, berriz, Egia eraginkortasunez betiko esan nahi du? 411 00:20:00,700 --> 00:20:04,240 Beno, eta, aldi berean, laster egingo dugu Gehiago guztiak eskertzen, 412 00:20:04,240 --> 00:20:08,140 Parentesi honen ondoan ditu non adierazpen boolear bat jarri ahal izango duzu. 413 00:20:08,140 --> 00:20:11,360 Eta, beraz, luze jo adierazpen egia da kode hori, 414 00:20:11,360 --> 00:20:14,750 Bi horien artean, izenda gisa giltza kizkur ditugun bezala deitu, 415 00:20:14,750 --> 00:20:16,880 Horretarako nahikoa mantentzeko, behin eta berriro martxan. 416 00:20:16,880 --> 00:20:18,410 >> Beraz egia da egia. 417 00:20:18,410 --> 00:20:20,900 Beraz egia bitartekoak, berriz, besterik egin hau betiko. 418 00:20:20,900 --> 00:20:23,480 Ia ergelak eraikitzeko zeure burua adierazteko. 419 00:20:23,480 --> 00:20:26,590 Baina ez zen betiko C. keyword Badira bitartean izan zen. 420 00:20:26,590 --> 00:20:29,390 Eta ez zen oso erraza da Egia bezalako adierazpen boolear. 421 00:20:29,390 --> 00:20:32,210 Eta, beraz, hau, ikusi dugu, emaitza bera lortzen. 422 00:20:32,210 --> 00:20:33,890 >> Nola bestela agian begizta bat ezarriko duzu? 423 00:20:33,890 --> 00:20:36,980 Beno, Scratch you might kopuru zehatz bat hard kodea 424 00:20:36,980 --> 00:20:39,430 begizta hemen iterazioak. 425 00:20:39,430 --> 00:20:43,210 Eta, beraz, hori da zehazki zer egiten dugun baliteke C-ren bertsio hau egin, 426 00:20:43,210 --> 00:20:46,140 Horren bidez bat behar dugu begizta deiturikoak. 427 00:20:46,140 --> 00:20:49,850 Eta begizta hemen va , batetik bestera joateko zertxobait cryptically, 428 00:20:49,850 --> 00:20:54,100 on eta 0 balioa baina 10 baino gutxiago. 429 00:20:54,100 --> 00:20:55,955 >> Orain Scratch aldagaiak. 430 00:20:55,955 --> 00:20:57,830 Baliteke izan dute horiek erabiltzeko kariaz. 431 00:20:57,830 --> 00:21:02,516 Baina zer puntua, da, oro har, aldagai baten zuten joan den astean esaten dugu? 432 00:21:02,516 --> 00:21:03,015 Zer da hori? 433 00:21:03,015 --> 00:21:03,780 >> IKUSLEEN: puntuak. 434 00:21:03,780 --> 00:21:05,200 >> DAVID J. MALAN: To seinalatu? 435 00:21:05,200 --> 00:21:05,700 Oh, puntuak. 436 00:21:05,700 --> 00:21:07,620 Ados, puntu jarraipena, esate baterako, joko batean. 437 00:21:07,620 --> 00:21:09,510 Edo, oro har, egiten gehiago aldagai hauekin zer? 438 00:21:09,510 --> 00:21:10,450 Zer da erabilgarritasuna? 439 00:21:10,450 --> 00:21:10,825 >> IKUSLEEN: Memoria. 440 00:21:10,825 --> 00:21:11,750 >> DAVID J. MALAN: Yeah, beraz, memoria. 441 00:21:11,750 --> 00:21:13,000 Zerbait gordetzeko da. 442 00:21:13,000 --> 00:21:17,336 Eta silly entzunezko I moduko erabiltzen Azken aldiz kristalezko ontzi hau bezalakoa zen. 443 00:21:17,336 --> 00:21:19,710 Eta gorde nahi badugu aldagai baten barruan zerbait, 444 00:21:19,710 --> 00:21:21,918 esate baterako, oraintxe bertan egin Balio sei delako han 445 00:21:21,918 --> 00:21:23,450 Hemen ere sei ping pong pilotak dira. 446 00:21:23,450 --> 00:21:26,158 Besterik biltegiratze nolabaiteko It edukiontzi duten kanpaia azpian 447 00:21:26,158 --> 00:21:30,030 bit, 0 s eta 1s inplementatu, hala ere, ordenagailu bat gertatzen ez da egin behar. 448 00:21:30,030 --> 00:21:32,900 >> Beraz, Scratch, badugu aldagai bat izan nahi, 449 00:21:32,900 --> 00:21:34,840 laranja bloke bat hau atsegin erabili ahal izango dugu. 450 00:21:34,840 --> 00:21:37,050 Counter deitzen izango dugu Kasu zehatz honetan. 451 00:21:37,050 --> 00:21:38,890 Da hasieratu I 0. 452 00:21:38,890 --> 00:21:41,080 Eta zer da, ondoren egin behar dut? 453 00:21:41,080 --> 00:21:44,780 Forever, esan counter, bada bertan Scratch jolastu horrekin, 454 00:21:44,780 --> 00:21:45,780 zuk bakarrik ikusiko Scratch. 455 00:21:45,780 --> 00:21:49,920 Katua edo dena mozorroa jarri kopuruaren hitz egingo zion galdera. 456 00:21:49,920 --> 00:21:52,840 >> Aldaketaren 1 eta counter da 1 eta incrementing bezala. 457 00:21:52,840 --> 00:21:56,580 Eta, beraz, hau da joan beraz, zer zer-tik? 458 00:21:56,580 --> 00:21:59,114 0tik infinitura til, edo Scratch-jauziak arte, 459 00:21:59,114 --> 00:22:01,030 edo duzun arte Ordena interesa galtzen behaketa 460 00:22:01,030 --> 00:22:02,650 Nola altua benetan zenbatu ahal izan dezan. 461 00:22:02,650 --> 00:22:04,800 >> Beraz, nola liteke hau bihurtu dugu C-ra? 462 00:22:04,800 --> 00:22:06,480 Honez apur bat críptica itxura du. 463 00:22:06,480 --> 00:22:08,896 Baina, berriro ere, begiratzen baduzu bakoitzean lerro hauek banaka 464 00:22:08,896 --> 00:22:10,410 moduko jokatzen dute, oro har. 465 00:22:10,410 --> 00:22:13,526 Beraz, itxuraz int da joan C. esanahi berezia dute 466 00:22:13,526 --> 00:22:14,400 Duten ikusiko dugu berriro. 467 00:22:14,400 --> 00:22:15,810 Bat alde batera utzita bezala osokoa esan nahi du. 468 00:22:15,810 --> 00:22:16,990 Beraz, besterik kopurua esan nahi du. 469 00:22:16,990 --> 00:22:18,920 Beraz, mota da Kristalezko ontzi nahi dut, inork 470 00:22:18,920 --> 00:22:21,120 zenbakiak gordetzeko, Ez pong pilotak ping. 471 00:22:21,120 --> 00:22:25,520 Eta ez dut berdin ikurra erabili joan ez da 0 balioa esleitzeko. 472 00:22:25,520 --> 00:22:29,440 Beraz, nahiko multzo bezala counter 0, baina C. 473 00:22:29,440 --> 00:22:32,840 >> Bien bitartean, egia, berriz, hori izan zen baliokidea, jakina, betiko, 474 00:22:32,840 --> 00:22:35,980 apur bat críptica baldin bada ere, eta ondoren kizkur giltza barruan. 475 00:22:35,980 --> 00:22:39,188 Eta kizkur giltza horien pentsa dezakezu, zein teklatuan idatz dezakezu, 476 00:22:39,188 --> 00:22:43,110 gisa benetan ere kurbatura honela izanik horia begizta Scratch bloke horietan. 477 00:22:43,110 --> 00:22:45,700 Kode lerro bat baino gehiago landuko da. 478 00:22:45,700 --> 00:22:48,120 >> Printf bat lortzean little scary orain nuelako 479 00:22:48,120 --> 00:22:51,120 Ikusten ez bakarrik parentesi artean aipatzen du. 480 00:22:51,120 --> 00:22:55,160 Baina, zer da berri sintaktikoki adibide honetan? 481 00:22:55,160 --> 00:22:57,300 Ez dago garbi d da. 482 00:22:57,300 --> 00:22:58,551 Eta gero backslash n dago. 483 00:22:58,551 --> 00:23:00,883 Ikusi genuen, hori baino lehen, are gehiago, nahiz eta ez nuen aipatu du. 484 00:23:00,883 --> 00:23:01,886 Orduan ez koma bat da. 485 00:23:01,886 --> 00:23:03,010 Eta gero ez counter bat da. 486 00:23:03,010 --> 00:23:05,010 >> Baina ikusi dugu bat besterik ez Une honetan hori da, besterik gabe, 487 00:23:05,010 --> 00:23:09,080 inprimatu bat esaten modu estandar bat "Zenbaki hamartar," aurrekontua, unquote, 488 00:23:09,080 --> 00:23:10,500 Zenbaki hamartar batzuk. 489 00:23:10,500 --> 00:23:13,370 Baina naiz geroago esango dut zer hamartar zenbaki hori dagoen. 490 00:23:13,370 --> 00:23:16,835 Izan ere, ez dagoela koma bat line esaera printf honetan, 491 00:23:16,835 --> 00:23:18,710 esan nahi du, aurrera eta inprimatu Zenbaki hamartar batzuk. 492 00:23:18,710 --> 00:23:23,110 Oh, eta bide batez, kopurua da edozein dela ere, aldagai horren balioa da. 493 00:23:23,110 --> 00:23:25,880 Eta, beraz, hau gehiago egiteko argia, adibide bat ikusiko dugu 494 00:23:25,880 --> 00:23:30,930 luze baino lehen, zehatz-mehatz printf inplikatuz C benetako programen testuinguruan. 495 00:23:30,930 --> 00:23:33,472 >> Orain besterik ez itzulbiratu batzuk eraikuntzen horiek. 496 00:23:33,472 --> 00:23:36,680 Adierazpen boolearrak, baliteke dute horiek erabiltzeko Oraingo programan 497 00:23:36,680 --> 00:23:39,450 baina oso ondo dezakezu, batez ere, baldintza erabiliz gero. 498 00:23:39,450 --> 00:23:43,460 Eta beraz, bi adibide horiek Urratu esan x y baino gutxiago bada, 499 00:23:43,460 --> 00:23:48,770 edo xy baino gutxiago bada eta y ez da hain z baino, nola liteke hori itzuli dugu? 500 00:23:48,770 --> 00:23:50,810 >> Beno, C besterik ez da to honen itxura. 501 00:23:50,810 --> 00:23:55,300 A críptica, parentesi gehiago little, ampersands arraro batzuk, baina funtsean 502 00:23:55,300 --> 00:23:59,160 ideiak bezain sinpleak dira puzzle pieza munduko dira. 503 00:23:59,160 --> 00:24:02,690 Ari gara, besterik gabe, zerbait bada egiaztapena beste zerbait baino gutxiago. 504 00:24:02,690 --> 00:24:03,910 >> Nola baldintzei buruz? 505 00:24:03,910 --> 00:24:09,710 Ingelesez Hitz batean, zer du honek Scratch kode zatia ez esango zenuke? 506 00:24:09,710 --> 00:24:11,050 >> IKUSLEEN: bi zenbakiak konparatzen. 507 00:24:11,050 --> 00:24:13,760 >> DAVID J. MALAN: konparatzen bi zenbakiak, eta gero x y baino gutxiago 508 00:24:13,760 --> 00:24:14,860 askoz ere esaten du. 509 00:24:14,860 --> 00:24:18,080 Xy baino handiagoa bada eta gehien, bestela dio 510 00:24:18,080 --> 00:24:20,740 x berdina bada y bezainbeste dio. 511 00:24:20,740 --> 00:24:22,180 Orain, non x eta y etorri? 512 00:24:22,180 --> 00:24:22,680 Nork daki. 513 00:24:22,680 --> 00:24:25,380 Scratch zatia hau kodea testuingurutik kanpo dago. 514 00:24:25,380 --> 00:24:29,050 Baina orain zer egin nahi dugun da itzuli hau une bat besterik ez da ikusi. 515 00:24:29,050 --> 00:24:31,660 >> Beraz, eroso lortuko duzu aste honetan Arazoa Ezarri diren 516 00:24:31,660 --> 00:24:34,190 0 mundu honetan jolasten ezkerrean, konturatzen 517 00:24:34,190 --> 00:24:36,940 duten ideiak ez dira aldatzen aste honetan edo hurrengoan, edo haratago. 518 00:24:36,940 --> 00:24:38,690 Dugu besterik gabe ari zaren joan gauzak idazten hasteko 519 00:24:38,690 --> 00:24:41,240 batera, beste modu batean gure ordez gure saguaren teklatua. 520 00:24:41,240 --> 00:24:44,577 >> Beraz, bada, xy baino gutxiago, eta Parentesi batzuk han ez dago, 521 00:24:44,577 --> 00:24:47,160 orduan ez dago giltza kizkur batzuk berriz ere, mota horretako enkapsulatu 522 00:24:47,160 --> 00:24:48,970 besterik antzekoak horia puzzle piezak egin. 523 00:24:48,970 --> 00:24:53,000 Eta ez dut printf joan x y eta abar baino gutxiago. 524 00:24:53,000 --> 00:24:56,540 >> Zer da C inguru polita, Hemen ikusi dezakezu bezala, 525 00:24:56,540 --> 00:25:00,480 da ez duzula habia hau lortzeko, habia, habia hori nahitaez 526 00:25:00,480 --> 00:25:02,220 Zure kodea bultza eskubidea izango. 527 00:25:02,220 --> 00:25:04,990 Ordez izan dezakezu guztia hamaikakoa bata gustatzen honetan. 528 00:25:04,990 --> 00:25:08,960 Baina hori besterik ez estetikoa Xehetasun berriro ikusiko dugu, luze baino lehen. 529 00:25:08,960 --> 00:25:09,660 >> Guztiak eskubidea. 530 00:25:09,660 --> 00:25:13,290 Beraz, gurekin ekartzen itzuli nahi bila críptica programa hau. 531 00:25:13,290 --> 00:25:15,180 Demagun kodea batzuk idazten benetan. 532 00:25:15,180 --> 00:25:16,830 Orain, nola ez duzu kodea idatziz buruz? 533 00:25:16,830 --> 00:25:21,310 Urte hauetan guztietan duten jabetzako dituzun Mac edo PC, desktop edo ordenagailu eramangarria, 534 00:25:21,310 --> 00:25:24,520 Nik, egia esan, gaitasuna izan duzu programazio kodea idazten hasteko. 535 00:25:24,520 --> 00:25:27,050 Baina seguruenik ari zaren falta programa mota berezi bat. 536 00:25:27,050 --> 00:25:28,470 Zalantzarik gabe idatzi ditzakezu kodea. 537 00:25:28,470 --> 00:25:30,740 Baina ezin duzu nahitaez, out koadroan, 538 00:25:30,740 --> 00:25:34,210 bihurtzeko iturri kodea duten objektu-kode, 0 s eta 1s sartu 539 00:25:34,210 --> 00:25:35,619 Zein da zure ordenagailuan gabe? 540 00:25:35,619 --> 00:25:36,410 IKUSLEEN: Konpiladore. 541 00:25:36,410 --> 00:25:37,630 DAVID J. MALAN: Beraz, konpiladore bat, eskubidea. 542 00:25:37,630 --> 00:25:39,730 Orain duzun gehienak Ziurrenik ez konpiladore baten jabea, 543 00:25:39,730 --> 00:25:41,259 ez dute inoiz deskargatu konpiladore bat. 544 00:25:41,259 --> 00:25:44,300 Baina ikusi deskarga dezakezu dituzu gehienetan beste edozein software bezalako. 545 00:25:44,300 --> 00:25:47,470 Mac OS munduan, baliteke deskargatu edo dagoeneko deskargatu 546 00:25:47,470 --> 00:25:50,437 Zerbait Xcode edo GCC edo Clang deitu. 547 00:25:50,437 --> 00:25:52,270 Bazatoz batetik Windows munduan you might 548 00:25:52,270 --> 00:25:56,190 Visual Studio deskargatu, Visual Basic, horrelako inguruneak. 549 00:25:56,190 --> 00:25:59,200 Ez da konpiladoreak dozenaka egun hauetan agian erabiltzen duzun. 550 00:25:59,200 --> 00:26:01,940 Baina horixe gertatu da hemen da mina bat izango litzateke 551 00:26:01,940 --> 00:26:04,480 eta, Egia, teknologiko bat Ehunka amesgaizto 552 00:26:04,480 --> 00:26:07,680 ezberdinak dituzten pertsonen ordenagailu guztiei konfigurazio 553 00:26:07,680 --> 00:26:09,800 beren makinen konfiguratzeko zehazki modu berean 554 00:26:09,800 --> 00:26:11,700 beraz, ezin dugu guztiak orri berean egon. 555 00:26:11,700 --> 00:26:15,240 >> Beraz, zer egiten dugun, horren ordez, egin CS50 da emango dizkizuegu 556 00:26:15,240 --> 00:26:18,349 ingurune estandar bat, a Linux ingurune hori 557 00:26:18,349 --> 00:26:20,140 itxura apur bat joan honen antzeko zerbait. 558 00:26:20,140 --> 00:26:22,980 Hau gehiago ikusten duzu Arazoa Set 1 zehaztapen horrek 559 00:26:22,980 --> 00:26:25,330 online joango dira ostiral gau honetan. 560 00:26:25,330 --> 00:26:28,360 >> Eta honek zer esan nahi du you dela aurrerantzean 561 00:26:28,360 --> 00:26:32,060 dira gai izango da deskargatzeko eta programa bat instalatzeko 562 00:26:32,060 --> 00:26:33,650 izeneko CS50 Appliance. 563 00:26:33,650 --> 00:26:36,275 Eta ari deskargatzeko zoaz eta izeneko beste programa bat instalatu 564 00:26:36,275 --> 00:26:40,300 hypervisor bat, hau baino ez da Hori lortzeko modu fancy. 565 00:26:40,300 --> 00:26:44,600 Mac edo PC edo jabea den ala ez Linux ordenagailu edo Solaris ordenagailua, 566 00:26:44,600 --> 00:26:46,830 edo dena ero eragilea exekutatzen ari zaren sistema, 567 00:26:46,830 --> 00:26:49,820 programa bat jaisten joan zaren hypervisor hori deitzen 568 00:26:49,820 --> 00:26:53,350 CS50 exekutatu joan Appliance zure ordenagailuan 569 00:26:53,350 --> 00:26:55,430 ez du axola zure sistema eragilea zein den. 570 00:26:55,430 --> 00:27:00,640 Bestela esanda hypervisor A bihurtzen gure edozein dela hizkuntzarekin gauzak, 571 00:27:00,640 --> 00:27:03,850 edozein dela argibideak zure egin ordenagailu ulertzen. 572 00:27:03,850 --> 00:27:04,962 >> Beraz, hau layering da. 573 00:27:04,962 --> 00:27:06,920 Eta berriro ere, hau da, mota ordenadorean gaikako 574 00:27:06,920 --> 00:27:08,722 zientzia, gauzen gainean eraikina. 575 00:27:08,722 --> 00:27:09,680 Baliteke Windows duzu. 576 00:27:09,680 --> 00:27:10,710 Baliteke Mac OS behar duzu. 577 00:27:10,710 --> 00:27:12,960 Baina datorren astean hasita Oraindik deskargatu joan 578 00:27:12,960 --> 00:27:14,980 software librea da hypervisor deritzo. 579 00:27:14,980 --> 00:27:17,800 Pieza bat deskargatu ari zara software izeneko CS50 Appliance. 580 00:27:17,800 --> 00:27:21,050 >> Hori da hypervisor aldean abian joan, zein da zure ordenagailuan exekutatu. 581 00:27:21,050 --> 00:27:23,030 Eta azken emaitza da guztiok izango dela 582 00:27:23,030 --> 00:27:26,220 antzeko leiho sinple bat hau da zure Mac edo PC 583 00:27:26,220 --> 00:27:30,160 hori guztia ilusioa ematen digu sistema eragilea bera korrika, 584 00:27:30,160 --> 00:27:32,800 Beste edozein gabe Zure ordenagailuan eragin. 585 00:27:32,800 --> 00:27:34,870 Eta pantaila osoan egin ahal izango dituzu da eta, funtsean, portaera 586 00:27:34,870 --> 00:27:37,550 exekutatzen ari zarela, nahiz eta gisa bat Linux izeneko sistema eragilea, 587 00:27:37,550 --> 00:27:40,270 hau da, zer CS50 Appliance oinarritzen da. 588 00:27:40,270 --> 00:27:42,930 >> Hargatik benetan erabili hau orain programa bat idazteko. 589 00:27:42,930 --> 00:27:45,450 Programa bat idatzi dezakezu Microsoft Word erabiliz. 590 00:27:45,450 --> 00:27:48,160 Programa bat idatzi dezakezu TextEdit edo Notepad erabiliz, 591 00:27:48,160 --> 00:27:51,880 edo WordPad, edo nahiko askoz edozein hitz prozesatzeko programa duzun inoiz erabiltzen. 592 00:27:51,880 --> 00:27:55,174 Baina errealitatea da, ez behar duzu erabili benetan programak horietako edozein. 593 00:27:55,174 --> 00:27:57,840 Duzu, zalantzarik gabe, ez da erabili behar Microsoft Word, antzeko zerbait bertan 594 00:27:57,840 --> 00:28:01,120 bold artean eta letra etzanean, eta ditu tipoak handiagoa eta tipoak txikiagoak, 595 00:28:01,120 --> 00:28:03,560 Ordenagailuak ez du delako hori edozein zaintzeko. 596 00:28:03,560 --> 00:28:05,600 Informatiko guztia da axola buruz joan 597 00:28:05,600 --> 00:28:09,040 English C. idatzitako argibide bezala 598 00:28:09,040 --> 00:28:12,050 >> Beraz, zer egiten dugu barruan egingo CS50 Appliance du 599 00:28:12,050 --> 00:28:14,290 programa bat ematera behartuta dago eskuragarri, eta hori da, 600 00:28:14,290 --> 00:28:17,360 honetan aurrez instalatutako tresnaren, Gedit izenekoa. 601 00:28:17,360 --> 00:28:22,280 Eta Gedit besterik ez da super sinple bat Mac OS en TextEdit bezalako testu editore, 602 00:28:22,280 --> 00:28:26,200 Windows Notepad hori joan atsegin honen antzeko zerbait apur bat itxura. 603 00:28:26,200 --> 00:28:28,910 >> Hargatik, benetan ez honen diapositibak begiratu. 604 00:28:28,910 --> 00:28:32,580 Baina dezagun benetan joan ingurumena bera. 605 00:28:32,580 --> 00:28:36,090 Aurretik joan naiz eta saioa hasi beste leiho honetan, 606 00:28:36,090 --> 00:28:40,910 nire CS50 Appliance, dut nahi aurrez instalatutako nire laptop hemen. 607 00:28:40,910 --> 00:28:43,771 >> Ohartu, Windows eta antzekoak Mac OS, menuak batzuk lortu. 608 00:28:43,771 --> 00:28:45,520 Windows bezala jartzen hor behera ordez 609 00:28:45,520 --> 00:28:47,020 Mac OS, eta horrek jartzen du behera han. 610 00:28:47,020 --> 00:28:48,930 Baina errealitatea da, da bera mota guztiak. 611 00:28:48,930 --> 00:28:50,770 Eta hemen oso bat da software sorta. 612 00:28:50,770 --> 00:28:51,770 Ez dago Dropbox. 613 00:28:51,770 --> 00:28:54,780 Badira osagarrien sorta oso bat da, programak grafikoa duten zaitugu 614 00:28:54,780 --> 00:28:56,430 arazo multzo epe beranduago erabiltzeko. 615 00:28:56,430 --> 00:28:59,650 Ez da, beraz, eraikitako web nabigatzailea hori fledged ordenagailu beteta dago 616 00:28:59,650 --> 00:29:01,240 ordenagailu baten barruan. 617 00:29:01,240 --> 00:29:04,170 >> Baina naiz hau sakatu dut joan ezkerreko ikono zuria hemen, 618 00:29:04,170 --> 00:29:05,890 bertan Gedit ikonoa da. 619 00:29:05,890 --> 00:29:09,650 Eta nik leiho bat irekitzen joan duten hiru panel ditu bertan, 620 00:29:09,650 --> 00:29:12,590 ezker bat, top bat da, eta behean beste bat. 621 00:29:12,590 --> 00:29:16,071 >> Orain eskuinekoa goi honetan duten Kode batzuk benetan idatzi dut. 622 00:29:16,071 --> 00:29:16,820 Beraz, egin dezagun hau ,. 623 00:29:16,820 --> 00:29:19,040 , Gorde joan noa. 624 00:29:19,040 --> 00:29:22,100 Eta agian ez duzu inoiz ikusi dute leiho zehatz honetan aurretik. 625 00:29:22,100 --> 00:29:23,620 Baina hau Mac OS edo Windows bezalakoa da. 626 00:29:23,620 --> 00:29:25,490 Leiho bat besterik ez da karpetak guztiekin 627 00:29:25,490 --> 00:29:27,290 informatiko horren barruan behar dudala. 628 00:29:27,290 --> 00:29:30,320 >> Eta ez dut gorde beharreko joan fitxategia hello.c gisa. 629 00:29:30,320 --> 00:29:32,690 Eta ez naiz joango Animatu eta sakatu Gorde. 630 00:29:32,690 --> 00:29:36,364 Eta orain konturatu fitxa bat daukat goiko ezkerreko hello.c deitu. 631 00:29:36,364 --> 00:29:38,280 Beraz, ziurrenik pretty ezagutzen ez dudan, nahiz eta 632 00:29:38,280 --> 00:29:40,240 programa jakin arte erabili. 633 00:29:40,240 --> 00:29:44,890 >> Eta orain arte horietan idazten joan Nahiko críptica Komando sekuentzia 634 00:29:44,890 --> 00:29:46,360 Duela une bat ikusi genuen. 635 00:29:46,360 --> 00:29:49,330 Artean, besteak beste, I standard / O.h. 636 00:29:49,330 --> 00:29:50,600 Laster Horretan gehiago. 637 00:29:50,600 --> 00:29:55,670 Int hutsune nagusia, kizkur irekia giltza, kizkur giltza itxi. 638 00:29:55,670 --> 00:30:01,570 Eta gero han barruan uste dut Bertan "kaixo mundua", koma izan genuen. 639 00:30:01,570 --> 00:30:03,100 Eta orain gorde. 640 00:30:03,100 --> 00:30:08,780 >> Beraz, hau C idatzitako programa bat da, idatzita, beraz, iturburu-kodea ere. 641 00:30:08,780 --> 00:30:10,720 Baina ezin dut programa hau, besterik gabe exekutatu. 642 00:30:10,720 --> 00:30:13,390 Mota dut bikoiztu nahi klik ikono baten gainean nonbait, 643 00:30:13,390 --> 00:30:16,390 baina ikono lortu ez duten beste iturburu-kodea fitxategia baino. 644 00:30:16,390 --> 00:30:20,359 Zer, berriro ere, prozesua ez da orain dela Bidez fitxategi hau abiarazi behar dut? 645 00:30:20,359 --> 00:30:21,150 IKUSLEEN: Konpiladore. 646 00:30:21,150 --> 00:30:22,399 DAVID J. MALAN: Beraz, konpiladore bat. 647 00:30:22,399 --> 00:30:24,890 Beraz, ordenagailuak ezberdinetan duzu egin hau modu ezberdinetan. 648 00:30:24,890 --> 00:30:27,480 Baina, zer egin dugu hemen CS50 Appliance hori da 649 00:30:27,480 --> 00:30:31,260 ordezkari how you might egin hau sistema desberdin askoren, 650 00:30:31,260 --> 00:30:34,036 hau da, naiz besterik gabe joan make izeneko komando bat exekutatu. 651 00:30:34,036 --> 00:30:35,660 Eta marka da, hitzez hitz ez da egin behar. 652 00:30:35,660 --> 00:30:36,640 Egin zidan programa bat. 653 00:30:36,640 --> 00:30:39,060 >> Beraz, egin da joan konpiladore bat exekutatu niretzat. 654 00:30:39,060 --> 00:30:42,160 Eta programaren izenarekin Da kaixo egin nahi dut. 655 00:30:42,160 --> 00:30:43,510 Orain egiteko programa bat da. 656 00:30:43,510 --> 00:30:47,170 Eta egiten da smart nahikoa konturatzen naiz esan, kaixo, 657 00:30:47,170 --> 00:30:50,980 nik automatikoki bila joan izeneko fitxategi hello.c batentzat 658 00:30:50,980 --> 00:30:53,420 Hori besterik ez da delako Modu ari konfiguratuta. 659 00:30:53,420 --> 00:31:00,300 >> Beraz, hit dut orain Sartu hemen, hau crazy line críptica besterik exekutatu egin zituzten. 660 00:31:00,300 --> 00:31:02,720 Eta konfiantza me, aurretik luzea, egun gutxi barru, 661 00:31:02,720 --> 00:31:05,590 Ulertzen duzu zer guztiak zentzugabekeria bide hori. 662 00:31:05,590 --> 00:31:11,150 Baina, oraingoz, besterik ez dakit egiten duten abiaraziak konpiladore baten exekuzioa. 663 00:31:11,150 --> 00:31:13,290 Beste era batera esanda, aurkitu nire ordenagailuan konpilatzailea 664 00:31:13,290 --> 00:31:14,820 hori da aurrez instalatutako CS50 Appliance buruzko 665 00:31:14,820 --> 00:31:16,560 egingo dugu zuzenean esku Arazoa Set 1. 666 00:31:16,560 --> 00:31:20,990 Eta orduan hartu zuen hello.c gisa sarrera, eta, antza denez, ekoitzi 667 00:31:20,990 --> 00:31:23,040 0 s eta 1s irteera gisa. 668 00:31:23,040 --> 00:31:29,410 >> Eta lehenetsita zer egiten da gordetzen 0 s eta 1s horiek fitxategi batean izeneko kaixo. 669 00:31:29,410 --> 00:31:33,180 Eta sintaxia hau, nahiz eta gehiegi agian izan berria duzu, besterik gabe dot esanez 670 00:31:33,180 --> 00:31:37,110 barra kaixo da izango esan nahi du, horren bidez, programa hau exekutatu. 671 00:31:37,110 --> 00:31:40,360 >> Oraingoz eta pare gutxienez bat aste, ia programa guztietan 672 00:31:40,360 --> 00:31:44,230 dugu idazten ari den egingo zela testu zuri-beltza eta leihoak. 673 00:31:44,230 --> 00:31:47,006 No saguak, disparo ez, Leihoak ez, ikonoak. 674 00:31:47,006 --> 00:31:49,630 Simple mantentzeko goaz eta azpiko ideia ardatz 675 00:31:49,630 --> 00:31:52,490 lortzeko, hasieran aurretik zerbait dugu maila handiagoa, esate baterako, 676 00:31:52,490 --> 00:31:56,410 break out Joko Hitz egiten dugun bezala Lehenengo hitzaldia azken astean buruz. 677 00:31:56,410 --> 00:32:00,820 >> Beraz, Sartu hit dut hemen, behin- testu bat ingurune bakarra baliokidea 678 00:32:00,820 --> 00:32:03,272 kaixo izeneko ikono bat klik bikoizteko. 679 00:32:03,272 --> 00:32:05,480 Zer egingo espero duzu gerta Idatzi ondoren, sakatu dut? 680 00:32:05,480 --> 00:32:07,120 >> IKUSLEEN: inprimatu egingo da "kaixo mundua". 681 00:32:07,120 --> 00:32:10,000 >> DAVID J. MALAN: Zorionez "kaixo mundua". inprimatu izango da 682 00:32:10,000 --> 00:32:11,370 Eta halaxe izan zuen. 683 00:32:11,370 --> 00:32:13,690 Orain, ez da batzuk críptica sintaxia hemen. 684 00:32:13,690 --> 00:32:15,950 Dezagun atzera egiteko besterik une bat ikusi badugu 685 00:32:15,950 --> 00:32:19,530 ezin da besterik arabera ondorioztatzea , tinkering nahian eta halakorik ezean, 686 00:32:19,530 --> 00:32:21,130 zer gertatzen da hemen ere. 687 00:32:21,130 --> 00:32:23,609 Zer bada of backslash n kentzeko? 688 00:32:23,609 --> 00:32:25,650 Orain duzun batzuk dut nor ziurrenik aurretik programatutako 689 00:32:25,650 --> 00:32:27,054 jakin berehala zer esan nahi duen. 690 00:32:27,054 --> 00:32:29,220 Baina nik duzuenontzat for inoiz aurretik programatu, 691 00:32:29,220 --> 00:32:34,052 gutxienez buruari pentsatzeko zer ari den gertatzen denean Berrabiarazi programa hau aldatzeko? 692 00:32:34,052 --> 00:32:37,010 Beraz, ez dut atzera jaisteko joan nire Zuri-beltza eta leiho txiki, 693 00:32:37,010 --> 00:32:39,290 leihoa da bertan Dut hau konpilatu daiteke. 694 00:32:39,290 --> 00:32:41,130 Kaixo konpilatu noa. 695 00:32:41,130 --> 00:32:43,520 Bera ikusten ari gara críptica Komando sekuentzia. 696 00:32:43,520 --> 00:32:45,719 Eta ez dut dot barra egin kaixo joan. 697 00:32:45,719 --> 00:32:48,260 Eta orain norbaitek, nahi duzun bada, nor ez da inoiz aurretik programatu, 698 00:32:48,260 --> 00:32:49,770 zer ezberdina izan daiteke une honetan? 699 00:32:49,770 --> 00:32:50,020 Bai. 700 00:32:50,020 --> 00:32:51,840 >> IKUSLEEN: ez da gelditzen inprimatzeko "kaixo mundua". 701 00:32:51,840 --> 00:32:52,660 >> DAVID J. MALAN: Honez zaie barkatu egingo? 702 00:32:52,660 --> 00:32:54,210 >> IKUSLEEN: Ez da inprimatzeko gelditzeko? 703 00:32:54,210 --> 00:32:55,810 >> DAVID J. MALAN: Ez da gelditu inprimatzeko "kaixo mundua". 704 00:32:55,810 --> 00:32:56,560 Beraz, ez da ideia txarra. 705 00:32:56,560 --> 00:32:58,633 Beste ideia? 706 00:32:58,633 --> 00:32:59,132 Bai. 707 00:32:59,132 --> 00:33:00,060 >> IKUSLEEN: Errorea mezua? 708 00:33:00,060 --> 00:33:01,750 >> DAVID J. MALAN: Error Mezu, OK, izan daiteke. 709 00:33:01,750 --> 00:33:02,250 Zer gehiago? 710 00:33:02,250 --> 00:33:05,479 IKUSLEEN: inprima zitekeen puntu eta koma baita parentesi? 711 00:33:05,479 --> 00:33:08,270 DAVID J. MALAN: inprima dezakete puntu eta koma baita parentesi. 712 00:33:08,270 --> 00:33:11,950 Beraz, agian backslash duten Orduan batzuk terminous mota hori da garrantzitsua. 713 00:33:11,950 --> 00:33:14,860 Beste edozein pentsamenduak? 714 00:33:14,860 --> 00:33:16,412 >> Ideia Beraz, guztiak onak. 715 00:33:16,412 --> 00:33:18,370 Eta hain zuzen ere, joan da errore-mezu bat izan nahi du. 716 00:33:18,370 --> 00:33:20,400 Hori da, ziurrenik, ziurrenik oro har, erantzuna izan nahi du 717 00:33:20,400 --> 00:33:22,420 hurrengo asteetan Hemen kode ikasiko dugu. 718 00:33:22,420 --> 00:33:27,680 >> Baina orain gogoratzen ordenagailuak bakarrik zer kontatu duzu egin. 719 00:33:27,680 --> 00:33:30,400 Barregarria kakahuete bezala gurina eta gelatina adibidez. 720 00:33:30,400 --> 00:33:33,860 Gure giza ordenagailuak bakarrik ziren ustezko zer esan duzu zer egin behar den. 721 00:33:33,860 --> 00:33:36,250 Beraz, kasu honetan, baduzu ez dute ordenagailua kontatzeko 722 00:33:36,250 --> 00:33:41,190 keinuka kurtsorea mugitzeko izateko hurrengo lerroan, ez da egin behar. 723 00:33:41,190 --> 00:33:45,390 Beraz, programa hau exekutatu orain, aldea nabarituko. 724 00:33:45,390 --> 00:33:46,900 >> Bug bat itxura. 725 00:33:46,900 --> 00:33:49,190 Bug estetiko bat da, agian. 726 00:33:49,190 --> 00:33:53,310 Baina zer da hau ezberdinak irteera ren jakina versus? 727 00:33:53,310 --> 00:33:53,810 Bai. 728 00:33:53,810 --> 00:33:54,920 >> IKUSLEEN: Ez da linea berri bat egin. 729 00:33:54,920 --> 00:33:56,586 >> DAVID J. MALAN: Ez du linea berri bat egin. 730 00:33:56,586 --> 00:33:58,740 Orain duzuenontzat agian egin web orriak izan 731 00:33:58,740 --> 00:34:01,910 aurretik, la jakin dezakezu BR tag edo paragrafo etiketa, 732 00:34:01,910 --> 00:34:03,120 oso antzeko espirituz. 733 00:34:03,120 --> 00:34:06,680 Web nabigatzaile bat ez ikusi arte izango esango dizu zehazki zer egin. 734 00:34:06,680 --> 00:34:10,020 Era berean, C bezalako hizkuntza bat bakarrik zer egiten duzu esan egin egin behar. 735 00:34:10,020 --> 00:34:12,730 >> Beraz, arrazoia Adibide hauek guztiak, 736 00:34:12,730 --> 00:34:15,350 beraz, orain arte, izan mota horretako kasualitatez backslash hau izan 737 00:34:15,350 --> 00:34:18,560 Han ere, hori da bitartekoak horren bidez, zeure burua adierazteko 738 00:34:18,560 --> 00:34:21,380 line pertsonaia berri bat bezala, nolabait esateko. 739 00:34:21,380 --> 00:34:26,219 Eta eskertzen mota dezakezu, agian, hori ergelak mota edukiko luke 740 00:34:26,219 --> 00:34:27,070 besterik ez bada. 741 00:34:27,070 --> 00:34:29,150 Lerro berri bat nahi nuen, besterik ez kolpatzeko sartu eta gero, mota 742 00:34:29,150 --> 00:34:32,219 bezalakoa kodea butchering Ez zenuke benetan igurtzi duzu eskuineko bidea. 743 00:34:32,219 --> 00:34:33,830 Eta nahiz eta ez duzu Benetan puntu honetan zaintzeko, 744 00:34:33,830 --> 00:34:35,830 dela konturatzen izango duzu hau ez da bereziki bat 745 00:34:35,830 --> 00:34:37,870 bila kode zati ona. 746 00:34:37,870 --> 00:34:39,969 >> Eta beraz, zer munduan Duela urte erabaki da 747 00:34:39,969 --> 00:34:43,420 orduan jarri nahi al duzu linea berri baten gainean kurtsorea esplizituki, 748 00:34:43,420 --> 00:34:46,332 Esplizituki esan behar duzu linea berria, backslash n. 749 00:34:46,332 --> 00:34:48,040 Eta ez da beste batzuk horrelako sinboloak. 750 00:34:48,040 --> 00:34:50,719 Baina orain, besterik ez dugu on backslash n ardatz. 751 00:34:50,719 --> 00:34:53,790 >> Egin dezagun programa apur bat gehiago interesgarri. 752 00:34:53,790 --> 00:34:59,200 Aurretik joan naiz eta Denbora horretan ireki fitxategi berria. 753 00:34:59,200 --> 00:35:02,520 Hau bezalako kaixo-1.c gorde noa. 754 00:35:02,520 --> 00:35:05,540 Eta besterik ez Jaurtiketa, naiz joan go jarri nire Dropbox karpetan. 755 00:35:05,540 --> 00:35:09,030 >> CS50 en ikusi ahal izango duzu aparatuaren dokumentazioan, 756 00:35:09,030 --> 00:35:11,210 geroago aste honetan Arazoa Ezarri 1, egingo animatzen ditugu 757 00:35:11,210 --> 00:35:13,230 Dropbox erabili behar duzu edo baliokidea zerbitzu batzuk, 758 00:35:13,230 --> 00:35:15,430 ondoren, zure kodea horrek guztiak ere joan babeskopiak egitea automatikoki. 759 00:35:15,430 --> 00:35:17,830 Eta beraz, horregatik dut Karpeta honetan sartzen joan hemen. 760 00:35:17,830 --> 00:35:20,230 >> Eta orain bat idazteko joan programa apur bat desberdinak. 761 00:35:20,230 --> 00:35:24,740 Artean, besteak beste, I standard / O.h, int hutsune nagusia. 762 00:35:24,740 --> 00:35:29,660 Eta gero, hemen printf, kaixo mundu batean, hau da, zehazki bera alegia. 763 00:35:29,660 --> 00:35:32,450 >> Baina orain zerbait inprimatu nahi dut apur bat desberdina da. 764 00:35:32,450 --> 00:35:34,800 Inprimatu nahi dut, esan, "Kaixo, David." 765 00:35:34,800 --> 00:35:37,590 Ondo da, jakina, eta beraz, zorionez behar lukeen 766 00:35:37,590 --> 00:35:40,360 kasuan hori dut konpilatu bada Programa honetan, berrabiarazi, 767 00:35:40,360 --> 00:35:41,840 nik esan du "kaixo, David." 768 00:35:41,840 --> 00:35:45,160 >> Baina zer nahi badut aurkeztu aldagai-mota hau, 769 00:35:45,160 --> 00:35:49,240 edukiontzi baten ideia hori joan D-a-v-i-d eta kodea ez gogorrean gordetzeko 770 00:35:49,240 --> 00:35:50,600 nire programan sartu. 771 00:35:50,600 --> 00:35:53,430 Beno zer I hasten bada Honen antzeko zerbait egiten? 772 00:35:53,430 --> 00:35:57,120 >> String s, beraz, aldagai bat da. 773 00:35:57,120 --> 00:36:00,250 Kate bat nahi baduzu, hitz bat edo esaldi bat a.k.a.. 774 00:36:00,250 --> 00:36:03,485 Karaktere-sekuentzia bat zer den programazioan dugu kate bat deitu. 775 00:36:03,485 --> 00:36:06,610 Ari gara oro deitu joan s, izen sinple polit bat delako. 776 00:36:06,610 --> 00:36:08,010 Baina nik ezer deitu daiteke. 777 00:36:08,010 --> 00:36:12,920 >> Katea s berdinen esan nahi dut aurrekontua unquote, "David", koma. 778 00:36:12,920 --> 00:36:18,330 Eta orain sartu nahi dut D-a-v-i-d inprimatzeko zer naiz sartu. 779 00:36:18,330 --> 00:36:23,720 Eta teaser bat ikusi dugu aurretik sintaxia berezi batzuk pantailan 780 00:36:23,720 --> 00:36:26,050 Onartzen gurekin balio bat ordezko. 781 00:36:26,050 --> 00:36:29,250 Zer berezia izan zen sinbolo duela txirrista batzuk bat? 782 00:36:29,250 --> 00:36:30,040 >> Ehuneko Beraz. 783 00:36:30,040 --> 00:36:33,830 Garai hartan berea zen zenbaki hamartar for d. 784 00:36:33,830 --> 00:36:35,850 Hori ez da benetan badirudi garrantzitsua hemen. 785 00:36:35,850 --> 00:36:38,650 Turns han-ren ehuneko beste ikurra, 786 00:36:38,650 --> 00:36:42,810 hau da, ehuneko s, eta horrek nabarmentzen kate bat biltegian izateko. 787 00:36:42,810 --> 00:36:49,350 >> Beraz, gaur egun, oso besterik gabe, naiz joan kaixo-1 egiten joan, 788 00:36:49,350 --> 00:36:54,210 Fitxategi hau deitzen delako kaixo-1.c, eta sakatu Sartu. 789 00:36:54,210 --> 00:36:56,230 Eta dena izorratu nuen. 790 00:36:56,230 --> 00:36:57,394 Zer gertatzen da? 791 00:36:57,394 --> 00:37:00,560 Beno, hemen da non hasteko behar dugu baloratzen ari gara komando honetan 792 00:37:00,560 --> 00:37:02,810 lerroa ingurumena, hau testua ingurune bakarra. 793 00:37:02,810 --> 00:37:06,114 Ez dago ikonoak ez karpetak bezalako oraintxe. 794 00:37:06,114 --> 00:37:07,280 Eta uste zuen orain dela une bat. 795 00:37:07,280 --> 00:37:10,740 Zer karpeta egin nuen esan Nire kode aurrezteko zen? 796 00:37:10,740 --> 00:37:11,657 Beraz Dropbox karpeta. 797 00:37:11,657 --> 00:37:12,989 Ezin izan dute ezer izenekoa. 798 00:37:12,989 --> 00:37:14,530 Baina Dropbox deitu behar da gertatzen da. 799 00:37:14,530 --> 00:37:18,380 Beraz, nolabait, egin klik bikoitza egin behar dut duten Dropbox ordena lortzeko karpeta 800 00:37:18,380 --> 00:37:21,657 bertan sartu eta nire kodea kaixo-1.c izenekoa. 801 00:37:21,657 --> 00:37:24,490 Izan ere, utzi aurrera me eta minimizatu une bat besterik ez leiho hau. 802 00:37:24,490 --> 00:37:27,560 Just Windows eta Mac OS bezala, daude Linux-en karpetak. 803 00:37:27,560 --> 00:37:29,410 CS50 Appliance karpetak daude. 804 00:37:29,410 --> 00:37:32,380 Besterik oraintxe confining ari gara testu ingurune honetan geure. 805 00:37:32,380 --> 00:37:34,700 >> Baina klik bikoitza badut Dropbox on, konturatu ez 806 00:37:34,700 --> 00:37:37,210 horretara konpilatu nahi dut fitxategia da. 807 00:37:37,210 --> 00:37:41,430 Baina hau beltza eta zuria behar dut terminal leihoa, nolabait esateko. 808 00:37:41,430 --> 00:37:45,750 Baina behar dut, beraz, mugitu karpeta edo direktorioa sartu. 809 00:37:45,750 --> 00:37:48,290 Beraz, apur bat urrutira, baina Erabilitako honetan jasoko duzu gehiegi. 810 00:37:48,290 --> 00:37:50,430 >> Linux munduan, horrek berriro eragilea da 811 00:37:50,430 --> 00:37:54,860 sistema CS50 barrua dugu exekutatzen ari Appliance, ez CD izeneko komando bat. 812 00:37:54,860 --> 00:37:58,310 Horrek esan nahi du CD, espazioa, Dropbox egin ahal izango dut. 813 00:37:58,310 --> 00:37:59,900 CD, aldaketa direktorioa. 814 00:37:59,900 --> 00:38:00,400 Eskuin. 815 00:38:00,400 --> 00:38:02,890 Itzuli eguneko denean pertsona ziren ordenagailuak asmatuz eta eragilea 816 00:38:02,890 --> 00:38:05,806 Honen antzeko sistemak, nahi dute idatzi zanpatze gutxien ahalik. 817 00:38:05,806 --> 00:38:08,760 Beraz, esan modurik errazena aldaketa direktorioa CD zen. 818 00:38:08,760 --> 00:38:13,910 >> Beraz, CD, espazio Dropbox hit badut, nabarituko hemen zer aldatu da. 819 00:38:13,910 --> 00:38:16,480 Parentesi barruan aparatuaren da, mota 820 00:38:16,480 --> 00:38:19,360 me humoring eta me gogoraraziz non nagoen. 821 00:38:19,360 --> 00:38:21,480 Beraz irekita karpetan Dropbox da. 822 00:38:21,480 --> 00:38:24,950 Ls idatzi dut orain bada zerrenda, berriro succinct, 823 00:38:24,950 --> 00:38:27,540 zeren jendeak ez zuen nahi idatz atzeko egun l-i-s-t. 824 00:38:27,540 --> 00:38:29,300 Beraz ordez egin zuten ls. 825 00:38:29,300 --> 00:38:30,110 >> Sartu. 826 00:38:30,110 --> 00:38:35,740 Iragarki bi gauza ikusten ditut, kaixo-1.c, eta ondoren críptica gauza hau, iturri 1m. 827 00:38:35,740 --> 00:38:38,310 Hori da nire esateko modu da iturburu aste 1 astelehena kodea. 828 00:38:38,310 --> 00:38:42,020 Bisitak dut karpeta bat Hori da, CS50 web-a dela gaur egun lehenago egin nuen 829 00:38:42,020 --> 00:38:43,990 eta jarri sartu aldez aurretik, tresnaren. 830 00:38:43,990 --> 00:38:47,550 >> Baina orain gauza bakarra egin genuen da programa hau egiten zaintzeko. 831 00:38:47,550 --> 00:38:50,440 Beraz, kaixo-1, Sartu idazten dudanean. 832 00:38:50,440 --> 00:38:51,320 Malditos. 833 00:38:51,320 --> 00:38:53,060 Zerbait oker joan. 834 00:38:53,060 --> 00:38:54,580 Hargatik tease honetan gain. 835 00:38:54,580 --> 00:38:58,489 Eta zoritxarrez, hau da, non gauzak get apur bat deserosoa lehen, 836 00:38:58,489 --> 00:39:00,280 gutxienez dut baduzu inoiz aurretik programatutako. 837 00:39:00,280 --> 00:39:00,980 >> Nire jainkoa. 838 00:39:00,980 --> 00:39:04,990 Bi lerro programa bat idatzi nuen, eta Lau akatsak ildo daukat. 839 00:39:04,990 --> 00:39:07,180 Beraz, zer gertatzen da hemen. 840 00:39:07,180 --> 00:39:11,370 Lehenik eta behin beti korrituko atzera sortu eta lehen error message aurkitu, 841 00:39:11,370 --> 00:39:15,730 oftentimes besterik Konpilatzaileak delako zer zuk eta nik egin by nahastu. 842 00:39:15,730 --> 00:39:17,000 Enpresen administrazioa nahiko mutu dira. 843 00:39:17,000 --> 00:39:18,360 Bakarrik egin ahal izango dute zer kontatu egin. 844 00:39:18,360 --> 00:39:21,484 Eta horiek nahastu izanez gero, besterik gabe ari dira mota horretako bota bere eskuetan joan 845 00:39:21,484 --> 00:39:25,010 eta, agian, bota gehiago akats mezuak Baino egia esan, garrantzitsua. 846 00:39:25,010 --> 00:39:26,380 >> Hargatik begiratu lehen. 847 00:39:26,380 --> 00:39:27,540 Super críptica lehenengo. 848 00:39:27,540 --> 00:39:31,050 Baina oharra, hemen izenean fitxategia bertan izorratu nuen itxuraz. 849 00:39:31,050 --> 00:39:36,570 Colon 5, colon 5 besterik ez du esan nahi duen linea 5 bosgarren pertsonaia at. 850 00:39:36,570 --> 00:39:39,760 Beraz, bosgarren karaktere zutabean, izango bada, error. 851 00:39:39,760 --> 00:39:41,870 Identifikatzaile undeclared katea erabiltzea. 852 00:39:41,870 --> 00:39:43,120 Esan nahi zenuen n estandarra? 853 00:39:43,120 --> 00:39:44,850 >> Ez, katea esan nahi dut. 854 00:39:44,850 --> 00:39:47,640 Eta gero mota da kopiatu eta itsatsi 855 00:39:47,640 --> 00:39:50,700 zer den benetan marraztu idatzi dut nire non izorratu nuen arreta. 856 00:39:50,700 --> 00:39:54,260 Beraz, arrazoirik C batengatik, edo, gutxienez, konpiladoreak 857 00:39:54,260 --> 00:39:56,470 ulertzen ez hitz-katea. 858 00:39:56,470 --> 00:39:57,890 Eta hori da egin dugu sortu delako. 859 00:39:57,890 --> 00:40:01,440 Beraz, katea ez da existitzen in C. Zer CS50 du, 860 00:40:01,440 --> 00:40:03,380 Lehenengo asteetan klaseko bakarra, 861 00:40:03,380 --> 00:40:05,700 da prestakuntza batzuk ematen dugu gurpilak, nolabait esateko. 862 00:40:05,700 --> 00:40:11,160 Eta prestakuntza gurpilak horiek jarri ditugu cs50.h. berezi baten barruan 863 00:40:11,160 --> 00:40:14,970 >> Beraz, honen bi fitxategiko bigarrena da izenak itxuraz dot h amaituko da. 864 00:40:14,970 --> 00:40:16,300 Dezagun atzera egiteko. 865 00:40:16,300 --> 00:40:19,360 Printf adierazpena edo funtzioa da itxuraz zerbait inprimatzen 866 00:40:19,360 --> 00:40:20,580 pantailara. 867 00:40:20,580 --> 00:40:23,470 Baina ez duzu ikusi me printf ezartzeko, eskuineko. 868 00:40:23,470 --> 00:40:26,360 Duela Norbaitek urte abian jarritako printf. 869 00:40:26,360 --> 00:40:30,420 Zer fitxategian zuela apustua edo ezartzeko jarri zuen 870 00:40:30,420 --> 00:40:34,270 printf, printf kodea du? 871 00:40:34,270 --> 00:40:36,860 >> I / O.h estandarra izeneko fitxategi batean. 872 00:40:36,860 --> 00:40:39,930 Izan ere, seguruenik ere bi fitxategiak, I standard / O.h, 873 00:40:39,930 --> 00:40:42,650 bertan goiburua nabarmentzen fitxategia, eta I standard / O.c, 874 00:40:42,650 --> 00:40:44,060 horretarako, C iturburu-kodea nabarmentzen. 875 00:40:44,060 --> 00:40:48,220 Beraz, berak duela urte batzuk plopped Kodea idatzi fitxategi hori sartu dute 876 00:40:48,220 --> 00:40:51,240 beraz, gu bezala pertsona urte geroago bertan sar daitezke, 877 00:40:51,240 --> 00:40:53,040 nolabait esateko, gure programa propioa. 878 00:40:53,040 --> 00:40:56,320 >> Eta hori ere libra zer zeinua da hitza eta ondoren, besteak ez. 879 00:40:56,320 --> 00:41:00,250 Itxura tokiko disko gogorrean, standard I / O.h izeneko fitxategia aurkitzen du, 880 00:41:00,250 --> 00:41:03,840 eta ondoren, kopiak modu eraginkorrean eta Nire fitxategia propioaren barruan itsasten ditu. 881 00:41:03,840 --> 00:41:07,210 Beraz, orain nire programa daki nola pantaila inprimatzeko. 882 00:41:07,210 --> 00:41:11,120 >> Beraz, logika, non arabera kate definitu? 883 00:41:11,120 --> 00:41:12,260 >> IKUSLEEN: cs50.h. 884 00:41:12,260 --> 00:41:13,290 >> DAVID J. MALAN: cs50.h. 885 00:41:13,290 --> 00:41:15,540 Eta, hain zuzen, hori da zer egiten dugun, core langileek, egin. 886 00:41:15,540 --> 00:41:19,590 A datu-mota batzuk asmatu ditugu, nolabait esateko, kate bat bezala, 887 00:41:19,590 --> 00:41:22,370 direnak gain duzu doan eskuratu, int bat bezala. 888 00:41:22,370 --> 00:41:26,010 Eta char bat bezala besteek ikusiko dugu pertsonaia bat, eta batzuk gehiago. 889 00:41:26,010 --> 00:41:30,670 Inside of CS50.h itxuraz Gutxienez kate aipamen batzuk. 890 00:41:30,670 --> 00:41:34,980 >> Beraz, gaur egun utzi aurretik, joan eta berrabiarazi egin kaixo-1. 891 00:41:34,980 --> 00:41:37,100 Berriro mapan handiago dut eta nire behatzak zeharkatu. 892 00:41:37,100 --> 00:41:41,370 Orain by egin ondoren, inork aldatzeko gauza gehienak konpondu dut. 893 00:41:41,370 --> 00:41:42,100 Baina madarikatua. 894 00:41:42,100 --> 00:41:44,290 Portzentaiak datuak argumentuak baino gehiago. 895 00:41:44,290 --> 00:41:45,980 Zer oker egin dut une honetan? 896 00:41:45,980 --> 00:41:47,420 >> Beraz, oraindik nahiko críptica da. 897 00:41:47,420 --> 00:41:51,560 Baina error honetan dagoen 7 line eta izaera 21. 898 00:41:51,560 --> 00:41:53,880 Beraz, goazen, hemen begiratu. 899 00:41:53,880 --> 00:41:55,350 Apur bat sotila. 900 00:41:55,350 --> 00:41:59,167 Baina uste baduzu zer oinarrizko ideiak dira hemen, 901 00:41:59,167 --> 00:42:00,500 agian honek aurre egiten ahal dugu aparte. 902 00:42:00,500 --> 00:42:02,300 >> Beraz printf funtzioa izena da. 903 00:42:02,300 --> 00:42:04,960 Parentesiak, beraz, orain arte, ez da besterik ez inguruan zer jarri dugun bezala 904 00:42:04,960 --> 00:42:07,005 gauzak pasatuz ari gara funtzio bat sarrera gisa. 905 00:42:07,005 --> 00:42:08,921 Ondo da, bat besterik ez giza konbentzio arbitrarioak. 906 00:42:08,921 --> 00:42:09,919 Parentesi erabili. 907 00:42:09,919 --> 00:42:12,460 Parentesi horiek Inside dugu dira komatxo jarriz Nik, 908 00:42:12,460 --> 00:42:14,810 eta orduan bezala kate bat "kaixo mundua". 909 00:42:14,810 --> 00:42:18,160 >> Baina lehenago adibide horretan oso laburki zuen itxura Scratch at dugu. 910 00:42:18,160 --> 00:42:22,590 Eta ehuneko d, izan dugu zer gehiago parentesi horien barruan zegoen 911 00:42:22,590 --> 00:42:23,730 oihu egin ditudan hitzez? 912 00:42:23,730 --> 00:42:24,230 Bai. 913 00:42:24,230 --> 00:42:28,166 >> IKUSLEEN: Beraz, zer hartzen ari zaren [INAUDIBLE] barruan from [INAUDIBLE] 914 00:42:28,166 --> 00:42:30,200 zer horiek [INAUDIBLE]? 915 00:42:30,200 --> 00:42:31,200 DAVID J. MALAN: Zehazki. 916 00:42:31,200 --> 00:42:32,700 Beraz ehuneko d izan genuen. 917 00:42:32,700 --> 00:42:36,620 Baina, ondoren, itxi behar izan genuen aurrekontua, koma, counter. 918 00:42:36,620 --> 00:42:37,120 Eskuin. 919 00:42:37,120 --> 00:42:40,680 Zer nahi dugun zehaztu dugu leku-marka bezala. 920 00:42:40,680 --> 00:42:44,621 Beraz, zer egin nahi dut da koma, zer egin nahi duzu jarri me? 921 00:42:44,621 --> 00:42:45,120 IKUSLEEN: S. 922 00:42:45,120 --> 00:42:46,828 DAVID J. MALAN: S, delako z kasu honetan 923 00:42:46,828 --> 00:42:48,700 erregai-tangaren izena da. 924 00:42:48,700 --> 00:42:50,180 Kristalezko ontzi horren izena da. 925 00:42:50,180 --> 00:42:53,610 Kontuan izanik counter zen, hala ere, aurretik Scratch adibide erraz begiratu dugu. 926 00:42:53,610 --> 00:42:56,630 Beraz, gaur egun joan eta bi egin aldaketak, utzi gerturatzeko me 927 00:42:56,630 --> 00:42:59,800 eta behin gehiago saiatu programa hau konpilatu. 928 00:42:59,800 --> 00:43:01,596 >> Orain críptica lerro hori ikusten dut. 929 00:43:01,596 --> 00:43:03,470 Baina hori da, benetan, konpiladoreak izena. 930 00:43:03,470 --> 00:43:04,886 Clang konpiladorea izena da. 931 00:43:04,886 --> 00:43:07,100 Egin besterik ez da me aurrezteko inoiz buruhauste 932 00:43:07,100 --> 00:43:09,830 luze ero komando Idazten out. 933 00:43:09,830 --> 00:43:14,900 Beraz, gaur egun, bada nik ez dot barrarik kaixo-1, "Kaixo, David." Ikusi beharko dut 934 00:43:14,900 --> 00:43:16,450 >> Pretty underwhelming, ordea, ezta? 935 00:43:16,450 --> 00:43:18,158 Egin genezake hau askoz gehiago, besterik gabe, 936 00:43:18,158 --> 00:43:20,940 aldagai buruz hitz egin gabe eta CS50.h eta hori guztia. 937 00:43:20,940 --> 00:43:23,080 Beraz, dezagun bat apur bat gehiago interesgarri. 938 00:43:23,080 --> 00:43:31,010 >> CS50.h gain, katea bezalako gauza izatea 939 00:43:31,010 --> 00:43:34,550 deklaratu, CS50 liburutegia gainera, funtzio batzuk ditu. 940 00:43:34,550 --> 00:43:38,520 Duela Beraz, besterik ez bezala urte, norbaitek idatzi zuen printf eta jarri dut / O.h estandarrean 941 00:43:38,520 --> 00:43:39,530 eta beste fitxategi batzuk. 942 00:43:39,530 --> 00:43:44,010 >> Dugu CS50 langileek, funtzio bat idatzi GetChar, GetDouble, GetFloat izenekoa, 943 00:43:44,010 --> 00:43:47,610 GetInt, GetLongLong, hain zuzen, GetString, eta fitxategi baten barruan horiek jarri ditugu 944 00:43:47,610 --> 00:43:49,890 CS50.h eta CS50.c. izeneko 945 00:43:49,890 --> 00:43:51,880 Eta haien barruan jarri dugu CS50 Appliance du. 946 00:43:51,880 --> 00:43:53,880 Eta jendeak ere egin deskargatu online badute 947 00:43:53,880 --> 00:43:55,880 jartzea nahi beren egin ordenagailuak baita. 948 00:43:55,880 --> 00:44:00,880 Zein da sortu dugu esan sarrera lortzeko erabiltzaileari duten funtzioak. 949 00:44:00,880 --> 00:44:02,930 Ez dakit zer guztiak Datu horiek mota daude. 950 00:44:02,930 --> 00:44:06,490 GetInt mota da erraza, atsegin zenbaki oso bat, nolabait erabiltzaileari. 951 00:44:06,490 --> 00:44:09,980 Eta GetString da seguruenik get antzeko Hitz edo erabiltzaileari esaldi bat. 952 00:44:09,980 --> 00:44:11,770 >> Beraz, dezagun horretan. 953 00:44:11,770 --> 00:44:14,710 Eta ez dut atzera joan sartzen joan tresnaren eta noa aurrera noa 954 00:44:14,710 --> 00:44:20,790 eta fitxategi hau gorde, dezagun deitzen kaixo-2.c nire bigarren bertsioa. 955 00:44:20,790 --> 00:44:23,030 Eta egin dezagun aldaketa pare bat. 956 00:44:23,030 --> 00:44:25,800 >> Ordez Oraingoan kodetze gogor David, eta horrek 957 00:44:25,800 --> 00:44:29,120 esker, oso koherentea bat baina underwhelming programa, 958 00:44:29,120 --> 00:44:32,640 zer egin ordez badut GetString? 959 00:44:32,640 --> 00:44:35,660 Orain konturatu GetString parentesi ireki bat dauka, 960 00:44:35,660 --> 00:44:38,500 parentesi itxia, zeren ez du inolako sarrera behar. 961 00:44:38,500 --> 00:44:40,850 Besterik go iritsi erabiltzaileak kate bat. 962 00:44:40,850 --> 00:44:42,460 >> Eta orain beste sintaxia hitz bat. 963 00:44:42,460 --> 00:44:45,439 Puntu eta kode lerro bat amaitzeko. 964 00:44:45,439 --> 00:44:46,730 Ez duzu behar horiek nonahi. 965 00:44:46,730 --> 00:44:48,896 Baina hori besterik esan nahi naiz Kode-lerro honekin egin. 966 00:44:48,896 --> 00:44:51,080 Dezagun mugitu beste aldera me adierazpena edo funtzioa. 967 00:44:51,080 --> 00:44:53,010 String aldagai bat deklaratzen. 968 00:44:53,010 --> 00:44:55,920 String esaten duena bezalakoa da ematen dit ontzi batean, mesedez. 969 00:44:55,920 --> 00:44:57,940 Eta utzi kate bat jarri zidan bertan. 970 00:44:57,940 --> 00:44:59,430 >> Eta orain, berdin ikurra. 971 00:44:59,430 --> 00:45:03,510 Zer da berdin ikurra funtsean baliokidea? 972 00:45:03,510 --> 00:45:04,500 >> IKUSLEEN: esleitzea. 973 00:45:04,500 --> 00:45:06,190 >> DAVID J. MALAN: Yeah, balio bat esleitzea. 974 00:45:06,190 --> 00:45:09,872 Beraz badut, adibidez, dei funtzioa GetString honetan, 975 00:45:09,872 --> 00:45:12,830 eta une hori ikusi dugu kate bat erabiltzaileari galdetuko behar. 976 00:45:12,830 --> 00:45:17,810 Honek, ondoren, idatzi me uztea bezalakoa da D-a-v-i-d paper zati batean. 977 00:45:17,810 --> 00:45:21,060 Eta noiz katea diot s GetString berdin, 978 00:45:21,060 --> 00:45:24,140 berdinak ez du benetan esan nahi C programazio berdina. 979 00:45:24,140 --> 00:45:27,880 Eskuinetik egindako esleitu esan nahi du eskuko ezkerraldeko alboko. 980 00:45:27,880 --> 00:45:29,510 >> Beraz, kate bat ahaztuak ditut. 981 00:45:29,510 --> 00:45:32,785 Eta berdin ikurra esan nahi du jarri biltegiratze izeneko s edukiontzi. 982 00:45:32,785 --> 00:45:36,730 Eta Gero pasatzen honetara off printf benetan egiten bere gauza. 983 00:45:36,730 --> 00:45:39,790 >> Beraz, azken emaitza, ondoren joan itxura apur bat ezberdinak dira. 984 00:45:39,790 --> 00:45:40,840 Egin dezagun kaixo-2 ez. 985 00:45:40,840 --> 00:45:43,940 986 00:45:43,940 --> 00:45:45,260 Edo lan izan. 987 00:45:45,260 --> 00:45:46,450 Honako batera ari zara. 988 00:45:46,450 --> 00:45:47,940 Kaixo-2 aritu. 989 00:45:47,940 --> 00:45:52,640 Dot barra kaixo-2, Sartu. 990 00:45:52,640 --> 00:45:54,620 >> Infinitua bat izan dirudi dut begizta edo zerbait. 991 00:45:54,620 --> 00:45:55,453 Ezer ez da gertatzen. 992 00:45:55,453 --> 00:45:56,134 Zergatik? 993 00:45:56,134 --> 00:45:57,805 >> IKUSLEEN: infinitua loop bat egiten du. 994 00:45:57,805 --> 00:45:59,430 DAVID J. MALAN: begizta infinitua da. 995 00:45:59,430 --> 00:46:02,710 Honez motatako zain me benetan ematen du sarrera batzuekin. 996 00:46:02,710 --> 00:46:05,800 Hargatik aurrera me eta idatzi David, eta sakatu Sartu. 997 00:46:05,800 --> 00:46:07,230 Eta orain esaten du "kaixo, David." 998 00:46:07,230 --> 00:46:09,040 Berriro dut exekutatu bada. 999 00:46:09,040 --> 00:46:11,530 Dezagun idatzi Rob, "Kaixo, Rob". 1000 00:46:11,530 --> 00:46:13,900 >> Orain hori da txarrena Erabiltzaile interfaze inoiz. 1001 00:46:13,900 --> 00:46:16,110 Erabiltzailearen itxuraz ustezko zer egin behar zen jakiteko. 1002 00:46:16,110 --> 00:46:17,120 Baina ez du axola. 1003 00:46:17,120 --> 00:46:19,570 Eraikin horiek berak erabiliz blokeak, Scratch bezala, 1004 00:46:19,570 --> 00:46:24,980 arazo hori konpondu ahal izango dugu, eta esan zure izena bezalako mesedez zerbait, bi puntu, 1005 00:46:24,980 --> 00:46:27,820 espazioa, aurrekontua itxi, itxi parentesi, koma. 1006 00:46:27,820 --> 00:46:30,680 Beraz, asko berriro sintaxia batera ergelkeria. 1007 00:46:30,680 --> 00:46:34,040 >> Baina konturatu besterik ez dut gehitu ko hau batez puzzle pieza 1008 00:46:34,040 --> 00:46:35,280 eta hau batez. 1009 00:46:35,280 --> 00:46:38,870 Beraz, orain berrabiarazi dut hau bada, kaixo-2, Sartu. 1010 00:46:38,870 --> 00:46:41,180 Itxaron minutu bat. 1011 00:46:41,180 --> 00:46:41,830 Zer gertatzen da? 1012 00:46:41,830 --> 00:46:43,570 Ez da edozein ezberdinean jokatzeak. 1013 00:46:43,570 --> 00:46:44,200 Bai. 1014 00:46:44,200 --> 00:46:46,010 >> IKUSLEEN: Ez duzu make berriro. 1015 00:46:46,010 --> 00:46:47,968 >> DAVID J. MALAN: ez nuen exekutatu berriro, eskuinera. 1016 00:46:47,968 --> 00:46:49,430 Beraz, aldatu dut nire iturri kodea. 1017 00:46:49,430 --> 00:46:50,638 Baina, berriro ere, ez fluxu hori da. 1018 00:46:50,638 --> 00:46:54,530 Iturria konpiladorearen bitartez kodea ematen you objektu-kode berria, edo 0 s eta 1s. 1019 00:46:54,530 --> 00:47:00,209 Beraz behar dut benetan berrabiarazi egin kaixo-2 Sartu. 1020 00:47:00,209 --> 00:47:01,750 Ados, zerbait gertatu dela dirudi. 1021 00:47:01,750 --> 00:47:04,220 Dot barra kaixo-2. 1022 00:47:04,220 --> 00:47:05,390 Zure izena mesedez. 1023 00:47:05,390 --> 00:47:09,990 Eta argi izan behar du orain, zergatik da lerro berean kurtsorea? 1024 00:47:09,990 --> 00:47:10,490 Zehazki. 1025 00:47:10,490 --> 00:47:13,020 Ez nuen jarri backslash n sortu hemen nire kodea. 1026 00:47:13,020 --> 00:47:16,110 Beraz, orain ahal idazten dut Daven antzeko zerbait, Sartu. 1027 00:47:16,110 --> 00:47:18,710 Berriro ezin dut exekutatu eta idatzi Gabe bezalako zerbait, Sartu, 1028 00:47:18,710 --> 00:47:22,250 eta hainbat programa lortuko dugu eta berriro, behin eta berriro. 1029 00:47:22,250 --> 00:47:28,940 >> Orain, azken batean ari gara, behar joan a gaitasun ezberdinak batzuk erabiltzeko. 1030 00:47:28,940 --> 00:47:32,860 Aurkezteko azken finean batzuk behar ditugu Gauzak conditionally egin baldintzetara. 1031 00:47:32,860 --> 00:47:35,550 Agian begiztak horrela egin ahal izango dugu Gauzak behin eta berriro. 1032 00:47:35,550 --> 00:47:38,220 >> Agian polita badugu litzateke gure funtzioak ezartzeko izan, 1033 00:47:38,220 --> 00:47:41,355 bezala gure kabuz ezartzeko izan dugu printf edo gure GetString bertsio propioa 1034 00:47:41,355 --> 00:47:45,870 eta GetFlow, zeren azken finean, nahiz eta Komando honek line ingurunea erabiliz 1035 00:47:45,870 --> 00:47:49,780 daiteke ere gehien egiten dugu ikusmen gauza interesgarri. 1036 00:47:49,780 --> 00:47:51,950 >> Izan ere ondorio Horretarako me. 1037 00:47:51,950 --> 00:47:54,020 Aurretik joan noa eta leiho horiek itxi 1038 00:47:54,020 --> 00:47:57,400 eta ireki ikono honetan hemen, besterik ez da bat handiagoak 1039 00:47:57,400 --> 00:48:00,020 horren bertsio barneratua terminal leihoa. 1040 00:48:00,020 --> 00:48:02,329 Beraz Gedit ez bakarrik ditu Nire kodea lekua, 1041 00:48:02,329 --> 00:48:05,620 baina baita a terminal-leiho eraiki zen, leiho zuri-beltzeko kode dezake exekutatu I 1042 00:48:05,620 --> 00:48:06,230 komandoak. 1043 00:48:06,230 --> 00:48:08,600 >> Oraintxe bururatu ireki honen bertsio handiago bat. 1044 00:48:08,600 --> 00:48:11,170 Eta orain joan sartu joan karpeta dagoeneko dut 1045 00:48:11,170 --> 00:48:13,150 Aldez aurretik jarri ikastaroaren web orrian. 1046 00:48:13,150 --> 00:48:16,720 Eta aurrera noa joan eta ireki thadgavin.c izeneko fitxategi bat, 1047 00:48:16,720 --> 00:48:18,710 izan zen beste norbaitek idatzitako. 1048 00:48:18,710 --> 00:48:21,220 >> Eta begiratzen dugu hau kontuan hartuz gero, kodea hau ez da mota 1049 00:48:21,220 --> 00:48:24,370 egingo dugu idatziz geroztik Kode honen helburua 1050 00:48:24,370 --> 00:48:28,450 izan zen politena idazteko edo zuen That Could kodea bila, 1051 00:48:28,450 --> 00:48:31,290 kontuan hartu gabe, ala ez inoiz beste gizaki Could 1052 00:48:31,290 --> 00:48:33,660 kode hori ulertzen. 1053 00:48:33,660 --> 00:48:37,050 >> Izan ere, urtero ez dago zer da da nahasia C lehiaketa, izeneko 1054 00:48:37,050 --> 00:48:39,570 idazten duten Geeks benetako da duten ez beste inork irakur daiteke kodea, 1055 00:48:39,570 --> 00:48:42,050 baina horrek zerbait bai egiten oso sinplea edo benetan harrigarria. 1056 00:48:42,050 --> 00:48:43,890 Eta pentsatu genuen genuke Begirada honekin ondoriozta 1057 00:48:43,890 --> 00:48:48,300 hori nahiko harrigarria zerbait behin aurretik ikusi dute agian. 1058 00:48:48,300 --> 00:48:52,650 Baina honetan ikusiko dugu azkenean Ohar, dot barra, thadgavin. 1059 00:48:52,650 --> 00:48:53,860 Hau orduan zer edukiko. 1060 00:48:53,860 --> 00:48:57,140 1061 00:48:57,140 --> 00:48:58,500 >> Hau CS50 da. 1062 00:48:58,500 --> 00:48:59,935 Asteazkenean ikusiko dugu. 1063 00:48:59,935 --> 00:49:04,284 1064 00:49:04,284 --> 00:49:10,016 >> [Musika jotzen] 1065 00:49:10,016 --> 00:53:31,883