[Powered by Google Translate] [ROCK MUSIC] [TÓNLIST - "SAMAN HAPPY" The Turtles] DAVID Malan: Í dag, byrjum könnun okkar á grundvallaratriði tölvunarfræði og kynningu okkar, nú, að list forritun, þar sem er bara eitt dæmi. En að sama skapi á að leysa vandamál, ég veit að Hefðbundin CS50 er Puzzle Day er á morgun. Ef þú hefur ekki enn RSVPed fyrir þessum atburði, getur þú farið til cs50.net/rsvp. Þú getur fært lið af tveimur eða þremur eða fjórum. Þú verður að takast á við vandamál eins og sá sem þú sást þarna í upphafi. Öll ný vandamál á þessu ári ef að þú tæmdi síðasta ári, og þú mun hafa tækifæri þá til að vinna sumir stórkostlegur verðlaun. Meðal þeirra, Wii og sumir gjöf vottorð og eins, allt á meðan að hanga út með CS50 nemendur og skólafélaga og pizza og Facebook. Svo meira um það á morgun ef þú vilt. Þetta er þá CS50, fyrir þá tengja okkur fyrir í fyrsta skipti. Og veit að þetta námskeið er sérstaklega ákveðið að fá þú með þessu námskeiði við endanlega enda, á hver benda þú verður ekki aðeins skilning á þessum grundvallaratriði tölvunarfræði, en þú verður að hafa þetta mjög hagnýt kunnátta setja sem þú getur síðan tekið aftur til eigin deild, hvort sem það er verkfræði vísindum, Hagnýt stærðfræði, líkamlega vísindi, náttúruleg vísindi, eða eins. Reyndar, það er svo spennandi um tölvunarfræði þessum dögum er að það er bara svo við að alls konar sviðum. Og jafnvel þó að í dag, munum við aðeins klóra yfirborði mjög hefðbundin forritunarmál þekkt sem C, munum við í staðinn líta á eitthvað sem kallast Scratch, eitthvað með sem að elska kex saga var framkvæmd af einni af forverar í ár fortíð, til að segja sögur, að búa til leiki, til að búa til gagnvirka list, og í raun að byrja að vefja starfsemi okkar hugur um sumir af grundvallar býr að baki forritun en í samhengi, eins og þú munt sjá, það er miklu minna ógnvekjandi, það er miklu minna Bogagöng, en þú munt sjá áður en langur. Og átta sig á, líka, fyrir þá bara að tengja okkur þetta önn, setningar sem við enduðum fyrirlestur á miðvikudag, það er ekki svo mikilvægt þar sem þú endar upp miðað við þinn bekkjarfélagar í þessum flokki, en þar sem þú, í lok hverrar annar í viku 11, enda miðað við sjálfur rétt þennan dag. Svo án frekari fjaðrafok, það er einnig athyglisvert að þeir minna þægilegt, eru þeir einhvers staðar þar á milli, einnig við hönnun á þessu námskeiði, ekki á hverjum óhagræði gagnvart-a-gagnvart þeim öruggari koma inn í þennan flokk. Eins og þú munt sjá á næstu vikum til að koma, höfum við mismunandi lög fyrir ólíkum bak bakgrunni, hlutar til þeirra minna þægilegt, öruggari, þá einhvers staðar á milli. Eins og þú munt sjá þessa helgi og í næstu viku, tvær útgáfur af flest vandamál setur í bæði standard og tölvusnápur útgáfa svo sem allir geta sjálf-velja niður leið sem þú er þægilegur. Svo í dag, kafa við í þessari forritun tungumál kallast grunni. Það er myndrænt forritunarmál, og enn hefur það sömu eiginleika sumir af the yfirmaður láréttur flötur tungumál munum kanna síðar á önn, meðal þeirra C og JavaScript og PHP. En það er að fara að leyfa okkur að koma í veg fyrir sumir af the truflun snemma af setningafræði, hlutir eins semikommum, sviga, og öðrum Bogagöng upplýsingar sem, við fyrstu sýn, er bara ekki á öllum intellectually áhugavert og hafa tilhneigingu til að fá í leið frá sumum grundvallar skilning. Hvað varðar nú styðja uppbyggingu framundan, áttaði sig á þessu tól, CS50 ræða, sem verður tengd á námskeiðinu er website síðar í dag, er á netinu umræða í sem þú munt vera fær um að spyrja spurninga um hvert annað og starfsfólk, og það er einnig tæki, eins og við munum sjá í næstu viku, að við munum nota alveg integratedly í skrifstofa klst eins og heilbrigður. Reyndar byrja skrifstofutímarnir á mánudaginn, og hreinskilnislega, fyrsta viku á skrifstofutíma er nokkuð lágt lykill. Ég held ekki að þú munt finna Scratch allt sem óaðgengilegur. Það er frekar sjálf-útskýringar, eins og við munum sjá, og svo hvað við munum nota það í dag er að draga sumir af the grundvallar hugmyndir sem þá varað í öllu hvíla á önn. En byrjar á mánudegi, at 8:00 pm um 23:00 verður skrifstofutímarnir í Annenberg yfir brot heila. Sectioning tvö mun byrja í kvöld, þannig að einhvern tíma á þessu helgi, fara cs50.net/section, og þú munt beðinn ýmsar spurningar. Meðal þeirra, hvernig myndir þú lýsa skýrsluna í þægindi stigi eins og í dag? Það er enginn harður, fljótur regla um hver er í hvaða fötu. Það er bara svoleiðis að þú veist líklega ef þú eru meðal þeirra minna þægilegt eða annan hátt. Og nú, walkthroughs. The setja vandamál forskrift fyrir þessa viku, bæði staðall og tölvusnápur útgáfa jafnt er á netinu á cs50.net sem nú. Og þú munt sjá að það fyrsta af þessum útgáfum, sem Standard Edition hverri viku, fylgir eitthvað sem við hringja í númerið walkthrough, fundur leiddi með einu af kennslu félagar sjálfsögðu að leiða þig í gegnum, gefa ábendingar um, og fá þig niður ákveðna leið þegar það kemur að byrja þessi vandamál setur. Svo setur við hvert af þessum vanda, ef þú ert alltaf að vilja fyrir þig hvar byrja ég, byrja þú með þessum walkthroughs. Og í raun, að leyfa mér að kynna Zamyla Chan, þetta Kennt er maður sem mun vera leiðandi hverjum einn af þessum walkthroughs. Zamyla? [Lófaklapp] ZAMYLA CHAN: Ó, hæ, allir. Ég heiti Zamyla. Ég er yngri læra verkfræði í Winthrop House. En ég reyni og passa eins mörgum tölvunarfræði námskeið eins og ég getur, sem er ástæða þess að ég er virkilega spennt að verða leiðandi á þessu walkthroughs ári. Walkthroughs, fyrir mig, voru ómissandi hluti af CS50 mínu reynslu. Á walkthrough fyrir hvert p-sett, munum við fara í gegnum vandamálið sett saman, líta yfir þau vandamál, eins konar skipta þeim upp í viðráðanleg bit. Ég ætla að gefa þér ráð, aðferðir, að fá gegnum og að byrja. Ég vona að sjá ykkur öll á walkthroughs. Ef þú getur ekki gert það í eigin persónu, þá skaltu ekki lag í netinu. DAVID Malan: Excellent. Þakka þér, Zamyla. Svo grein sem walkthroughs er reyndar á föstudegi síðdegis, en þetta er vísvitandi með hönnun þannig að jafnvel ef þú vilt ekki mæta bekknum á föstudegi síðdegi, vídeó vilja vera upp allt hraðar yfir helgi. Svo ljóst að cs50.net verður öllum er Zamyla walkthroughs. Og að það er dagsetning og tími, 3:00 PM, Harberd Hall, 104. Og sumir af kennslu félagar hafa einnig undirbúið nokkrar athugasemdir um þig í fjarveru til að gefa þér smá yfirsýn um hvaða reynslu þeirra koma inn og að fara út af CS50 var eins. Svo ef við gætum lítil ljósin fyrir réttlátur a augnablik, ég gef þér sumir starfsmenn CS50 er. JACKSON STEINKAMP: Ég tók CS50 á síðasta ári sem freshman í falla, og það blés algerlega um skoðun. Ég hafði aldrei tekið forritun námskeið áður, og kom aldrei með hvaða tölvunarfræði reynslu yfirleitt. Og bara, heyrði ég suð um í bekknum og ákvað að taka það. JULIA MITELMAN: Það var virkilega gaman, virkilega aðlaðandi. Ég er enn þann dag í dag - Ég sá nýlega Ég hef disklingi sem Davíð gaf okkur á fyrsta degi okkar í fyrirlestrinum. Ég hafði hengt það á vegginn minn. Þetta er sennilega svolítið nerdy, en ég hékk í á mínum vegg á bekknum sem áminning um hvernig kaldur það var. TRAVIS Downs: Hún er svo vandræðaleg. JACKSON STEINKAMP: Tölvunarfræði er eitthvað sem þú að reyna, jafnvel ef þú ert ekki einn um hefðbundin vísindagreinar. Það er eigin reynslu, og CS50 mun tryggja að þú ert stutt vel í gegnum það með veritable her þess TFS. ALI NAHM: Ég tók það sem freshman, og svo ég gerði mikið nýrra vina. Ég fékk líka kynnt þetta allt styrk og allt Verkfræði, og svo mæli ég mjög það og bjóða ykkur velkomin að CS50 fjölskyldu okkar. Yaniv YACOBY: CS50 kennir bara þér hvernig á að nota verkfæri sem eru víða aðgengilegar. Þú þarft bara fartölvu, þú þarft að hafa a vefur flettitæki, og þú þurfa að læra að skrifa nokkur númer, og þú getur raunverulega að byggja snyrtilegur hlutur. KAREN XIAO: Það er bara svo flott að vera fær um að gera eitthvað og hafa menn nota það og hafa menn sjá það, og það er það sem ég elska virkilega um það. TIM McLaughlin: - tilfinningu fyrir samfélaginu, að ég held, í þessu auðvitað meira en nokkur önnur námskeið sem ég hef tekið hingað til. Þú ert ekki bara að taka annað - þú ert ekki að fylla aðra kröfu. Þú ert ekki bara að fara til fyrirlestra og fara að hluta. En þú ert að gera fullt af hlutum sem eru allt um forritun og allt um tækni, en það er ekki raunverulega líður eins og a tegund af the tími. Travis Downs: Og á fyrsta degi, afhenda þeir út köku, og Ég var strax seldur. JACOB PRITT: Free Candy og pizza. ZAMYLA CHAN: - óháð stigi áhuga þinn, ég held að CS50, munt þú hafa gaman, og þú munt vera vitsmunalega örvun. MARK GROZEN-SMITH: Það er alltaf aðili í bekknum, og það er aðila á hverju kvöldi að vinna í p-setja. JACKSON STEINKAMP: Í hvert skipti sem þú klára vandamál setja, þú mun líða eins og þú hefur lokið við verkefni. MELISSA NIU: Það var freshman ár, og ég var búinn að versla. Ég hafði fjórar bekkinn tilbúinn, og ég var í Annenberg. Og ég högg í vin, og hann segir, hey, ég er að versla Þessi tegund heitir CS50, og þú ættir að koma með mér. Endaði að taka það að falla, og eftir þeim flokki, ég hélt kannski að ég er að fara til lítil í CS. En hér er ég, þremur árum síðar, er enn að læra tölvu Vísindi og í raun að gera það eins mikil, og ég elskaði alla stund af því. ROB Bowden: Ég hef ekki hugmynd. ALI NAHM: Við skulum sjá. MELISSA NIU: Craziness. Hátalarar 1: Mér finnst eins og ég væri mjög klisja. Ég myndi bara segja eins, ógnvekjandi. Yaniv YACOBY: Aðgengi. JACOB PRITT: Free Candy og pizza. TRAVIS Downs: Get ekki snúa niður klasa sem hendur út köku. TIM McLaughlin: ötull. VIPUL SHEKHAWAT: Essential. ROB Bowden: Leyfðu mér að hugsa um svar. Ég held að ég fékk eitthvað. Ó, guð. Já, Rob Bowden nafns míns, og það er CS50. [Lófaklapp] DAVID Malan: Allt í lagi, þannig að við skulum byrja að mála mynd um þá stefnu sem við getum farið, og við skulum kynna þetta hugtak hér þekktur sem sauðakóðanum. Svo er sauðakóðanum ekki forritun tungumál við sig. Það er ekkert tæknilega í sjálfu sér, en það er bara eins konar almenn leið til að tjá þig nokkuð nákvæmlega, nokkuð algorithmically, nokkuð procedurally, en án að þurfa að hafa áhyggjur óður í hvaða tungumál þú ert að tjá sjálfur inn Það er einhver tegund af ensku og forritunarmál með sem þú verður að þekkja, svo að við getum byrjað skrifa þessa tegund af hlutur sem við förum. Og í raun, Joseph, gæti ég lánað þér upp á svið til að vera fræðimaður hér? Ég hef farið fram hér áður og gleymt að setja á sumum sokkum í dag, og þetta verður meðal fleiri okkar fáránlegt dæmi. Nú þarf ég þér hérna. Ég gera sokka hluti. Svo hér höfum við smá klóra púði. Þetta er bókstaflega bara TextEdit í Mac. Við erum í raun ekki að fara að skrifa runnable áætlun, en við erum bara að fara að byrja að skissa út sauðakóðanum byggt á sumir af ráði sem þú gefur mér hér. Svo er hér stafli minn sokkum heima. Ég hef enga sokka á þegar ég vakna á morgnana, og við nú þarf að skrifa forrit, reiknirit nokkurs konar, sem að fá þessar sokka á fætur mína. Og á leiðinni, við skulum sjá hvort við tærnar, eða fundur, sumir af þeim hugmyndum sem þú ert að fara að byrja hugsa um miklu meira alvarlega þegar forritun svo áætlanir þínar hegða sér ekki alveg eins og ætlað. Svo ég sest niður hérna. Ég hef fengið haug minn sokkum. Hvað er það fyrsta sem sanngjarnt manneskja myndi gera þegar markmiðið er að setja á a par af sokkum? Einhver gefa mér eitt skref, og aðeins eitt skref. Já? Áhorfendur: beygja niður. DAVID Malan: beygja niður, allt í lagi. Skref tvö. Skref tvö. Áhorfendur: Pick upp sokkur þínum. DAVID Malan: Pick upp sokkur þínum. Jæja, svo smá tvíræðni hér, og þetta er eitt af þeim fyrstu hrasa blokkir sem við erum að ætlast til að vísvitandi fundur hér. Það er svolítið óljós, þannig að ná upp sokkur þínum. Fine, ég tek þetta einn, en tölva, átta sig á bara hluti, er ekki að fara að hafa þessi tegund af mönnum eðlishvöt bara velja á næsta einn. Við erum að fara að byrja, áður en langt, tjá okkur meiri nákvæmni. Allt í lagi, svo er skref tvö tekið upp sokkur þínum. Við munum taka það. Skref þrjú. Á bak. Áhorfendur: Finna samsvörun par. DAVID Malan: finna samsvörun par. Jæja, þannig að þetta er gott. Ég þurfti að velja þetta sokkur. Svo er það að markmiði að finna samsvörun sokkur, nú, en hvað þýðir það? A sanngjarnt manneskju, líkt og á miðvikudaginn þegar ég bara vissi hvernig á að finna Mike Smith í símaskránni, bara svona fór með eðlishvöt þeirra. En hér er það augljóslega þetta sokkar hér, en í tölvu ekki að fara að vera svo instinctive. A tölva er að fara að hafa safn af bita, eins og við rætt á miðvikudag og þá eru skipulagt á einhvern hátt í minni. En málið er að tölvan hefur aðeins getu að líta á hlutina einn í einu, og í raun, jafnvel við menn - jafnvel þó að mér finnst eins og ég horfði niður og hættu annað seinna ég veit hvar sokkar er heila minn og augu mín væntanlega gerði a fljótur Lögð af þessum sokkum, og þá fest á því sem um ræðir. Svo ef við vera allt meira vísvitandi nú sem tölvu, hvernig finn ég þetta samsvörun par? Jæja, verðum við að iterate. Við verðum að kannski lykkju á þessu óreiðu í sokkum á að hæð þar sem ég segi eitthvað eins og fyrir hverja sokkur, sækja hana upp, og ef sömu lögun og stærð og hinn, og síðan punktur, punktur, punktur, munum við halda áfram söguna. Svo fyrir hvern sokkur, svo ég tekið upp þessa. Ég athuga þetta jafnt þessa. Það er ekki, svo ég setti til hliðar hlið. Og ég iterate aftur. Er þetta jafn? Nei, er það ekki, þannig að ég setti það til hliðar. Er þetta einn? Nei Þessi? Nei, og svo framvegis. Og svo að lokum, vonandi mun ég lenda í þessari sokkur hér. Svo ef það er the sami lögun, stærð, taka það. Og nú, hvað væri næsta skref okkar hér? Já? Áhorfendur: Þekkja hægri frá vinstri. DAVID Malan: Allt í lagi, þekkja hægri og vinstri, svo sem betur fer, þannig virkar. Smá samhverf, eða ég hef bara borið þá þannig. Allt í lagi, svo ég hef borið kennsl á rétt. Og nú, áður en við getum haldið áfram, langar mig að benda á hvað er Jósef verið að gera hér eins konar ný versed forritari. Svo aftur, það er engin ein leið til að gera þetta, en út bara tala línanna, Joseph hefur þegar byrjað að gera þetta konar skerðing. Reyndar, þetta er mjög algengt venju í forritun, þannig þegar þú endurtekningu eitthvað, lykkja stíl, eins og við erum að gefa í skyn með enska setningu "fyrir hverja sokkar, "samningsins í sauðakóðanum og, eins og við munum sjá, eðlileg forritunarmál, er bara að draga inn. Hit Space bar nokkrum sinnum, högg á Tab-takkann eða þess háttar, svo sem hreiður undir "FYRIR HVERJA sokkur" er klumpur af efni sem þú þarft að gera vegna þeirrar hliðar. Svo er það allt sem er miðlun merkingu. Nú á meðan, "ef það er the sami lögun og stærð," að staðreynd að "Taktu það" er indented frekar þýðir bara það er það eina sem þú ættir að gera ef því ástandi, ef þessi grein, sem vegurinn er í raun satt. Svo nú hér, við erum á fjórða sporið, þekkja hægri og vinstri. Ég hef bent rétt. Gefa mér fimmta sporið. Og tæknilega gætum við virkilega kalla á FYRIR HVERJA hlutur - þú ættir sennilega telja öllum línum við erum að fara að gera þetta. JOSEPH: [inaudible] DAVID Malan: [inaudible]? Jæja, allt í lagi, allt í lagi, við munum gera það á þinn hátt. Allt í lagi, svo skref fimm, hvernig gerum við rétt sokkur? Hvernig höldum við næst, hér? Já? Áhorfendur: Lyftu upp hægri fæti. DAVID Malan: Lyftu upp hægri fótinn, allt í lagi. Skref sex? Fljótt. Já. Áhorfendur: Finna opnum enda sokkur. DAVID Malan: Jæja, finna opinn enda sokkur. Svo gott. Svo hér, heiðarlega, mjög algengt eðlishvöt væri bara setja á hægri sokkur, en það líka er nokkuð óljós. Nema tölvunni eða manna veit nákvæmlega hvað þetta þýðir, það er ekki að fara að vera að framkvæma það, svo hér, hef ég fann opnun lager. Skref sjö? Áhorfendur: Snerta tærnar. DAVID Malan: Touch tær. Jæja, svo nú erum við að fara - Allt í lagi, ég ætla að taka nokkrar frelsi hér. Takk. Skref átta? Í sokkana. Jæja, svo nú er ég, held að við séum nógu nálægt til að raða á að taka þetta einn heima. Allt í lagi, svo fer þetta upp. Ég tek nokkrar frelsi með hvað það þýðir í raun. Setjið sokkur á. Allt í lagi, nú stíga níu? Áhorfendur: Settu fótinn niður. DAVID Malan: Þakka þér. Skref níu, setja fótinn niður, og nú getum við endurtekið. Svo væntanlega getum við nú farið í skref 10 og segja finna vinstri sokkur, en það er væntanlega þegar gert. Og svo þá get ég svoleiðis endurtaka þessi skref. En þessi tegund af bidur spurningunni. Áður, í síðasta sinn sem við vildum að endurtaka eitthvað, við gerði það iteratively, aftur og aftur, fyrir Hver lykkja svo að segja. Myndi það gera vit í að nota lykkju til að sinna bæði vinstri og hægri sokkur? Vegna þess að það er eins og þessar aðgerðir eru nánast eins nema fyrir þá staðreynd að einn byrjar hér og einn byrjar hér? Eigum við lykkju, eða eigum við að halda bara að skrifa skref 10 og 11 og 12? Áhorfendur: Loop. DAVID Malan: Jæja, svo lykkja. Ég reyndar gæti sagt bara að halda áfram. Svo hvers vegna er þetta málið? Jæja, þetta er í raun sú fyrsta okkar ekki augljóst ákvarðanir hönnun, og í raun einn af þeim mæligildi sem við munum byrja á að meta, fyrir okkur sjálf og fyrir þig, gæði af a program er bara hversu vel hönnuð og það er. Hefur þú gert lágmarks magn af vinna þarf að fá starf mest fljótt, annað hvort í skilmálar af tíma eða í skilmálar af að keyra tíma í tölvunni? Hversu margar aðgerðir er það sem þarf til að framkvæma? Þannig að öllum líkindum er þetta tækifæri fyrir lykkju vegna um leið og ég byrja að afrita og líma, eins og Jósef raun myndi byrja að gera í smá stund, þú ert góður af sóa símann ef tími, og þú ætlar að vera tvöfalt svipmikill. En á sama tíma, þetta eru í raun bara tvö sérstök tilvikum, til vinstri og hægri. Og þar áður, gæti ég hef 10 eða 20 eða fleiri sokka á stafli, gerir það örugglega vit ekki að hafa 50 línur af kóða segja athuga þetta sokkur, svo næsta einn, svo næsta einn. Hér er það aðeins minna augljós, og ég myndi tillaga að við gátum farið annað hvort hátt. Við gætum annað hvort hafa þessi lykkju, þó að það lykkjur aðeins tvisvar, eða við getum einfaldlega afrita og líma bara svolítið hér til að fá starf. En þetta forrit er þrjótur, svo að segja. Það gæti hafa sumir mistök, villur, eða horn tilvikum, svo að tala, því að við vissum ekki í raun ráð fyrir. Ekkert fór úrskeiðis að þessu sinni, en það gæti hafa farið úrskeiðis meðan framkvæmd þetta forrit? Áhorfendur: Þú ert ekki með neina sokka. DAVID Malan: Þannig að það gæti verið engin sokka þar alls. Svo skulum við íhuga að horn málið. Svo ef við gætum að fletta aftur upp að stíga einn, þannig að sporið var beygja niður, svo að tékka út. Skref tvö, ná upp sokkur þínum, en þá finna samsvörun sokkur, þekkja rétt. Við gerðum konar a heild búnt af forsendum, og það er, hreinskilnislega, hvers vegna program hrun stundum. Ef þú, sem forritari, hafa gert ákveðnar forsendur, eins og vafalaust eftir að vera sokkum eða vafalaust er að fara að vera minni eftir í tölvunni, örugglega það er að fara að vera pláss eftir á harða diskinum - Jæja, ef þú gerir við þessar forsendur, og það er ekki, í raun, að veruleika, hver veit stundum hvað tölva er að fara að gera? Og stundum, þegar þú færð snúast ströndinni boltann eða fryst Windows eða þess háttar, það er einmitt vegna þess að sumir forritari gerði ekki ráð fyrir þeim svokölluðu horn tilvikum. Hvað annað gæti hafa farið úrskeiðis í þessari áætlun? Já? Áhorfendur: Þú ert ekki með hægri fótinn og vinstri fótlegg. DAVID Malan: Allt í lagi, kannski ekki bæði hægri fótinn og vinstri fæti, og svo þetta forrit gæti ekki verið almennt við. Aðrir? Áhorfendur: Þú gætir hafa valinn upp munaðarlaus sokkur. DAVID Malan: Ég gæti hafa valinn upp munaðarlaus sokkur, svo ekki samsvörun sokkar sem bara hefur engin systkini því ég hef missti það, það er rifið, það er í þvott enn, eða þess háttar. Svo að, of, hefur í raun ekki verið afgreidd. Já? Áhorfendur: Þú gætir nú þegar hafa sokka á. DAVID Malan: Ég gæti nú þegar hafa sokka á. Ég vissi í raun ekki stöðva. EF þú ert ekki með sokkum á, þá halda áfram að gera lína eitt og tvö. Og það gæti gerst. Þú sofnar með sokkum á og þess háttar, þannig að það líka, mjög sanngjarn horn raunin. Og kannski eitt annað? Áhorfendur: The sokkar eru inni út. DAVID Malan: Svo er sokkur inni út, þannig að við gerðum engin villa stöðva, í stuttu máli. Við vildum ekki athuga hvort ríkið í heiminum er eins og við gerum ráð fyrir. Við vildum ekki athuga hvort við fundum í raun það sem við erum að leita að. Og jafnvel þó að þetta sé svona fáránlegt dæmi felur í sokkum, í lok dagsins, það er einmitt tegund af hugarfari sem þú þarft að hafa á meðan að skrifa forrit, jafnvel í grunni sem og í C, í JavaScript, í PHP, því annars, forrit mun sýna að jafngildi þeirrar snýst ströndinni bolta eða bara gefa rangar niðurstöður. Svo margir takk hér að kanslari Jósef okkar. [Lófaklapp] DAVID Malan: Allt í lagi, svo það er í staðreynd, tölvuforrit? Jæja, við skulum taka fljótur litið á a Fulltrúi eitt hér. Svo er þetta forrit skrifuð á tungumáli sem heitir C. C er nokkuð gamla þessa dagana, en margir nýrri tungumál eru byggð ofan á það. Reyndar, PHP, einn af the vefur-miðlægur tungumálum munum nota til enda hugtakið, hefur sig hvað kallast túlkur, forrit sem er skrifað í C, en meira um það í margar vikur frá núna. En þetta forrit, og þetta er það sem það þýðir að skrifa program, að vísu mjög einföld. Við höfum sumir nokkuð dulinn setningafræði hér, en þú getur sennilega giska, jafnvel þótt þú hafir aldrei forritað áður, hvað þetta forrit gerir. Reyndar veit ég ekki hvað printf er, en prenta vissulega conjures upp hugmynd um prentun eitthvað út. Og svo já, þetta forrit er á endanum að fara að prenta út orðin "Hello, world." Nú, hvort sem þú ert með Mac eða PC eða Linux tölva, stuðla eru, að minnsta kosti ef þú sótt einhver frjálslega í boði hugbúnaður, getur þú hefur verið að skrifa forrit á eigin fartölvu fyrir alveg sumir tími nú. Á Mac OS, til dæmis, það er þetta forrit sem heitir Terminal sem kemur með Mac, sem er venjulega í símanum Utilities möppunni, og hún opnar yfirleitt svart og hvítt eða hvítt og svart gluggi þar sem þú ert með hvetja þar sem þú getur slegið inn skipanir. Svo er þetta í raun minnir það sem tölvur notað til að vera fyrir grafísku notanda tengi, GUI, kom með. Nú, í Windows, þarftu svipuð kerfi í formi í stjórn hvetja. En það sem ég ætla að gera hér er að opna upp, við skulum segja, TextEdit aftur, þannig að sama kerfið sem við vorum að nota fyrir sauðakóðanum í smá stund síðan, og ég ætla að fara á undan og skrifa fyrsta forritið mitt. Hafa stdio.h, hvað það þýðir, int helstu ógild, hvað það þýðir, og svo í miðjunni hér, printf ("Hello, world."). Og svo loka vitna, loka paren, semíkommu. Nú ætla ég að fara á undan og bara högg Command-S. Ég ætla að fara á undan og vista þetta sem hello.c, svo að venju í The veröld af C forritun heitir skrána punktur c. Ég ætla bara að setja í möppu Home John Harvard er, hér skaltu smella á Vista, og nú ætla ég að fara yfir þetta endastöðvar, sem aftur er þetta svart og hvítt hvetja þar sem ég get framkvæma skipanir. Ég get keyrt forrit með því að slá nafn sitt, ekki með tvísmella tákn í venjulegum skilningi. En málið er um C er að tungumál eins og C fyrst kemur í þessu formi, eitthvað sem kallast kóðann. Eitthvað sem lítur út svolítið eins og ensku en er örugglega minna eins ensku en sauðakóðanum a Jósefs stund síðan. Þess 'a lítill fleiri Bogagöng. Það virðist fylgja nokkur mynstur eða reglur. Sú staðreynd að ég hef hrokkið axlabönd, semikommum, vitna, horn axlabönd, finnst eins og tölva kom upp með þetta konar tungumáli. En ef ég fer, nú, við þessa flugstöðinni glugga, ég get keyrt stjórn sem er að fara að breyta því kóðinn er eitthvað sem kallast mótmæla kóða. Það er að fara að breyta ensku eins setningafræði til núllum og sjálfur, sömu tegund af núllum og þær sem við talaði um miðvikudag. Nú ætla ég að fara að keyra skipun sem heitir Clang. Meira um þetta á næstu vikum til að koma, en það er a program með sem ég get breytt hello.c í heild búnt af núllum og sjálfur. Nú, ég hef keyrt þessa skipun. Ég hef keyrt Clang, og þá sagði ég keyra sjálfur á þessari skrá heitir hello.c, sem ég skapa í smá stund síðan, og ekkert virðist gerast. En reyndar, ef ég pota í kringum skrá heimili mitt, myndi ég sjá að þetta heimskulega heitir program a.out er nú. Þetta er bara sjálfgefið nafn fyrir a program þegar skrifað C. Við getum hunsa þetta loksins, en a.out er nafn forritsins sem ég breytt rétt í núllum og sjálfur. Og nú að núll það og sjálfur, Mac minn, í þessu tilfelli, eða Windows tölvunni þinni, getur skilið þá bita, þá núll og sjálfur. Og svo þegar ég lenti inn, sé ég "halló, heimur!" En það er dálítið þrjótur. Ég vissi ekki alveg að segja "halló, heimur: loft: - jharvard." Air er nafn á tölvunni minni. Jharvard er nafn á reikning, þannig að hvað gerði ég greinilega sleppt úr áætluninni? Sumir konar brot línu. Ég vissi ekki högg sem nemur inn eða flytja aftur, og þetta er, aftur, erfðaskrá til þess að tölvur geta bara gera það sem þú segir þeim að gera. Og sú staðreynd að ég var ekki að segja tölvuna færa bendilinn í næstu línu - Jæja, það er vissulega ekki að fara bara að gera það ofdirfsku fyrir mig. Svo ef ég fer aftur til áætlun mína, og ég segi \ n - Svo \ n, eins og við munum fljótlega sjá, er leið fulltrúi undarlegt hluti eins og nýja karaktera línu, það sem ella væri vegna hitting á Enter takkann. En nú, bara vita að hitting á Enter takkann myndi bara gera númerið okkar líta undarlegt, svo að heimurinn ákvað, þú veist hvað, til að halda hlutum fallegri, að halda það á einni línu, við skulum bara segja \ n táknar nýja línu. Leyfðu mér að vistað póstinn minn skrá, fara aftur í flugstöðinni glugga, og Re-hlaupa a.out, Enter. Enn þrjótur, en hvers vegna? Áhorfendur: [inaudible] DAVID Malan: Já, þannig að ég þarf að laun það. Svo til að safna saman forrit bara þýðir breytt henni frá upptökum kóða til að mótmæla kóða, kóðinn að núllum og sjálfur. Nú, bara sú staðreynd að ég högg Vista í TextEdit hefur ekki ber á þessum núllum og sjálfur því að ég þarf fyrst að segja Clang hey, hef ég breytt þeim línum af kóða er uppspretta merkjamál. Þú þarft að endurfæða a.out. Ekkert virðist hafa gerst, en í tölvu, í stjórn lína, svo að segja, þegar ekkert gerist, sem þýðir yfirleitt allt er vel. Þegar eitthvað gerist, þýðir það þú boðberi upp, almennt. Svo skulum nú fara að a.out, og raunar nú, hef ég "halló, heiminum. " Og nú, hvað um þessar núllum og sjálfur? Þegar í raun eru þeir? Jæja, ég get ekki í raun bara svona pota í kring mjög á áhrifaríkan hátt. Leyfðu mér að opna TextEdit. Hér er a.out. Leyfðu mér að fara á undan og opna það, og það er greinilega það sem minn program lítur út. Þannig að ég hef opnað, ekki hello.c en a.out. En þetta er í raun ekki það sem áætlun mín raunverulega er. Augljóslega er þetta einhvers konar stafrófsröð stafi. Ég sé ekki núll og sjálfur, en þetta er því a.out er forrit. Núll og sjálfur - en TextEdit, eins og nafnið gefur til kynna, það er bara eins og Notepad á Windows, er bara texti ritstjóri, svo það er ruglingslegt öllum þeim núllum og sjálfur sem það væri, hvað? ASCII stafi. Svo muna á miðvikudag, komum bara upp með þetta handahófskennt kortlagning af tölum, eða bitum, til stafina í stafrófið og greinarmerki tákn og eins. Svo TextEdit, að það er texti ritstjóri er misinterpreting þau mynstur núllum og þau sem eiga að vera prentun orð, eins og "hello, world." Það er að sýna þeim sem ASCII, og það er hvers vegna það lítur svolítið sóðalegur. Nú, there ert sumir vísbendingar um misskilning hér. Tilkynning ef ég undirstrika, það er vísbending um raunverulega "halló, heiminum, "svo eitthvað er í því forriti setningin sem ég skrifaði. En við skulum fara á undan og nú sjá með mismunandi forrit. Þetta er ekki eitt sem við munum nota það oft, en það kemur einnig með Mac og vilja vera inni á CS50 tæki. Leyfðu mér að fara á undan og opna með forriti sem heitir XXD. Til baka í dag, voru flest forrit sem heitir nokkuð cryptically, og svo heldur áfram að stefna. En-B þýðir spýta þetta forrit út eins og tvöfaldur. Ekki hlaupa ekki. Sýna það að mér sem núllum og sjálfur, og þetta er C forrita við skrifuðum bara. Nú, ég sem hér manna, ég hef heiðarlega ekki hugmynd um hvað þessi mismunandi mynstur núllum og sjálfur tákna. Til baka í dag,, ég með spil bolla mínum eða þess háttar, myndi í raun að horfa upp hvað þessir mismunandi mynstur 01111000, í raun tákna. Eða verra, myndi ég þurfa að gera gata eða sköpun þessara mynstur núllum og sjálfur. En nú, að taka á trú að CPU, Intel inni, svo að tala, inni í öllum tölvum okkar þessa dagana, veit hvernig á að túlka þessi núll og sjálfur. Og sumir núll og sjálfur meina prenta. Sumir núll og sjálfur meina spila hljóð. Sumir núllum og sjálfur meina að taka notandi inntak frá lyklaborðinu. Það er alls konar mismunandi mynstur, en við sem betur fer, eins og menn, bara almennt þörf til hafa áhyggjur óður í forritun í þetta nokkuð meiri. Og í öðrum CS flokkum getur þú kafa niður dýpra og útlit á hlutum eins og þessum núllum og sjálfur, eða enn annars enn. Svo nú skulum við breyta þessu. Við skulum fara mjög fljótt í burtu frá C og fara eitthvað lítið meira traustvekjandi, lítið meira spennandi, í það við getum fengið aftur fjör okkar og hljóð og eins að greinilega hafa sloppið okkur í þessu nokkuð frumstæða tengi. Þannig að þetta sama forrit í C má fulltrúa nú í þessu forritunarmál sem heitir Scratch sem hér segir. Þetta er jafnvirði um þessa Hello World program skrifaður í þetta stykki púsluspil stíl tungumál heitir Scratch. Svo láta mig fara á undan og opna þetta mjög program. Það er aftur kallað Scratch. Það er frjálslega laus, og þetta er það sama við byrjaði í dag á. Svo er þetta hér Scratch, og það er brotið upp í nokkur mismunandi stykki. Á mjög efst til hægri, höfum við svokallaða áfanga og örugglega, það er þar sem smákökur gerðar bara svolítið síðan. Og á því stigi eru hlutirnir kallaðir sprites, tákn eða hluti, eða aðila. Það skiptir ekki máli hvernig þú hugsar um þá, en þeir eru forritanlegur, færanlegar hluti, og í þessu tilfelli, þetta forrit sem lesandi skrifaði hefur nokkra hunangskökum kex, a par af hringlaga kex, a heild búnt af hjörtu, a heild búnt af eyeglasses. Vegna þessa, að hann eða hún er fær um að forrita hvern þeirra einstakra stafir sig. Nú, hvað þýðir það að forrita þessa stafi? Jæja, láttu mig fara á undan og smelltu á þennan vinstri kex og fletta yfir í efst til vinstri hér. Í efst til vinstri á skjánum mínum nú er svokallaða forskriftir svæði. Þetta er tegund af eyða ákveða, í upphafi, á sem ég get draga og sleppa þraut stykki að hreinskilnislega, gera nákvæmlega það sem þeir segja. Á the mjög toppur af þessum stafla af stykki púsluspil er orðið Þegar Grænn Flag smellt og ef þú hefur ekki tekið eftir áður, eins og ég byrjaði að kex lagið var smella, bókstaflega, grænt fána. Svo að þraut stykki efst til vinstri þar þýðir þegar manna smellir græna fána, halda áfram að gera eftirfarandi atriði. Nú, hvað var það kex halda áfram að gera? Ég í raun ekki vita hvernig á að túlka þetta enn, en kex virðist setja gróp sína á núll, þá beið þrjár sekúndur, þá breytti hóp til þess að einn, þá er það beið annað, þá er það breytt þess Groove aftur einn. Og þá lítur þetta í raun eins og a hluti af galla, ætti ekki að breyta gróp sína aftur og aftur, nema það verið breytt annars staðar, en þetta röð af skrefum er það sem er kveður á hegðun þessa tiltekna kex. Svo skulum raunverulega fletta til baka og ekki horfa á eitthvað alveg svo enn flóknari. Leyfðu mér að fara á undan og fara í File, New, og fá hreint borð. Svo nú hef ég örugglega tóma handrit svæði, tómt leiksvið, við vanræksla Sprite grunni okkar, og efst til vinstri á skjánum mínum hef ég bretti allra þeirra boði stykki púsluspil. Og við munum ekki fara í gegnum næstum að margir af þessum hlutum dag vegna þess, aftur, eru flest sjálf-skýringar, en við munum reyna að flokka þær og benda líkt með þessum framtíðinni tungumálum sem við munum kafa. Og efst til vinstri hér er fyrst þegar Grænn Flag smellt svo látið mig draga þetta hérna, minnka svolítið. Og ef ég smelli á græna fána, ekkert gerist í raun vegna þess að Ég hef ekki fest neina rökfræði, einhver yfirlýsing svo að segja, til að að græn fána, svo látið mig fara upp í flokkar hérna. Ég er nú í Control flokki. Ég ætla í staðinn að fara niður að útlitið flokki, og það er allt fullt af hlutum hér að segja segja, Hugsaðu, breyta lit, Switch búning. Svo er hægt að gera asnalega hluti með búningum og hljóð og þess háttar. Leyfðu mér að fara á undan og bara segja segja, og nú taka sem ég er að draga og sleppa þessari þraut stykki, það er að fara til að vilja latch í sama form. Svo þegar ég fer á undan og sleppa mús mína, læsa þeim saman, og nú ef ég fer yfir hér og smella á græna fána, kötturinn er í raun að segja halló því það er það sem er inni þessa hvítum kassa. Við munum fljótlega sjá að þessi hvítur kassi er það sem kallast rök, eða breytu. Það er leið til að breyta hegðun, í þessu tilfelli, a þraut stykki, en ef ég vil að segja nákvæmlega það sem ég sagði áður, segja halló, heimur, ég get nú farið aftur hérna, smelltu spila, og "Hello, world" er það sem er sagt. Þannig að við erum bókstaflega forritun núna. Það er ekki allt sem sannfærandi um forrit, en að minnsta kosti það er aðeins meira sannfærandi en eitthvað sem lítur á fyrstu sýn, eins og þetta. Og við getum mjög fljótlega fá allur the fleiri svipmikill því að í grunni, eins og í öðrum tungumálum, það er allt konar yfirlýsingar, ekki bara segja eða prentun eitthvað, en þú getur gert hlutina eins og að bíða, eins og við sáum bara með kex, sumir tala um sekúndur. Þú getur spilað hljóð í umhverfi grunni bara eins og þú getur í venjulegum tölvuforriti spila hljóð. Þú getur athugað það sem kallast Boolean tjáning. Svo nú skulum við byrja að bæta við tól okkar sum hugtök sem í raun tengist dæmi sem Joseph og ég gerði hér með sokkum. Svo yfirlýsingar eru bara yfirlýsingar raun. Gera þetta. A tilskipun um Sprite, eða mig mönnum, að gera eitthvað. A Boolean tjáning er eitthvað sem hefur gildi, a svokölluðu sannleika gildi, það er annaðhvort núll eða einn, rangar eða satt, af eða á, nei eða já. Skiptir ekki máli hvernig þér finnst um þetta, en það er tvöfaldur ástand. Eins Nate fjallað í vídeó á miðvikudag, tveir mismunandi hlutir. Svo í grunni gerast Boolean tjáning að líta eins og þessum bláa hluti hér, og í þessu tilviki, er spurningin merkja felur í sér að þú ert að spyrja spurningu. Er kötturinn, eða Sprite, snerta músarbendilinn? Svo er þetta bara eitt dæmi um Scratch blokk sem er að gerast til að leyfa okkur að skoða já eða nei, er mús snerta Sprite á skjánum? Og þetta getur verið gagnlegt ef þú vilt í raun að gera hlutina með músinni. Auk Boolean tjáning, höfum við það eins er mús niður, svo þú getur greint svona spurningu eins og heilbrigður. Við getum gert stærðfræði ef þú vilt í raun og veru, og það er í raun meira sannfærandi not fyrir þetta en bara hrein af tölur, eins og við munum sjá. Gervi randomness og gera program virðast til að hugsa eða hegða sér á annan hátt byggt á sumum virðist handahófi gildi, og þá höfum við hluti eins og Boolean tjáningu eins og. Svo ef þú vilt í raun að athuga tvö gildi, munum við sjá í Scratch að við getum raunverulega próf ef þetta er satt og þetta er satt. Til dæmis, ef af sokkum mínum, gæti ég hef minnsta enda spurði hvort vinstri sokkur er á og rétt sokkar er á, hætta. Þú ert allt gert fyrir daginn, svo sem væri tækifæri fyrir það. Svo skulum fara á undan og reyna að stykki sum þeirra saman og fara í nokkra dæmi meira sannfærandi en þetta eina. Svo láta mig fara á undan hér og opna nokkur dæmi það verður alltaf að vera á heimasíðu sjálfsögðu eins vel og opna hello2. Svo í hello2 hér, höfum við forrit sem er að gera nokkrar hlutir, en það er ekki að gera það eins og í raun eins og við gætum. Svo hér það segir "Hello, world" í eina sekúndu og þá bíður fyrir a second. Og svo er það aftur, og þá er það aftur. Svo ef ég smelli á græna fána, Scratch segir "Hello, world. Halló, heimur. Halló, heimur. "Og þetta er augljóslega frambjóðandi nú framför. Hvað er lélegur framför, vonandi getum við nú gera ef Scratch styður hugmyndina? Sumir konar lykkju. Einhvers konar endurtekning, nú væri gott, svo láta mig í raun að reyna það. Leyfðu mér að fara í raun og færa þetta. Svo fyrirvara að losa blokkir eins auðveldlega og þú getur bætt við hengja þá. Leyfðu mér að fara undir stjórn, skruna niður, og reyndar það er þetta ráðgáta stykki hér, endurtaka og Forever og Forever Ef. Svo er there ert a tala af lifnaðarhættir til að tjá lykkja býr í grunni. Sá sem ég vil líklega hér er ekki Forever því að ég bara vilt þetta að gerast þrisvar sinnum, en sennilega Endurtaka. Svo láta mig draga endurtaka hérna, draga og sleppa því, og nú í stað þess að segja "Hello, world" þremur aðskildum sinnum, láta mig draga þessa þraut stykki hér. Og jafnvel þó það virðist ekki passa, the program er klár nóg til að átta sig á að það muni vaxa að fylla, þannig er það form sem efni og ekki alger stærð. Leyfðu mér að breyta endurtekningu til þriggja, og nú láta mig fara undan og draga Bíddu eina sekúndu í það eins og heilbrigður. Það er að fara að smella í eins og heilbrigður, og svo núna er ég að fara að draga þessir gaurar hérna og bara henda þeim í burtu vegna þess að ég þurfa þau ekki lengur. Leyfðu mér að minnka og smellir á græna fána nú, og við höfum sama program, en eins og ég spáði fyrir, betra hannað vegna þess að þú getur ímyndað hversu slæmt þetta forrit vildi fá, vissulega fagurfræðilega, ef þú hefðir til að byrja að afrita og líma, afrita og líma, eða draga og sleppa sömu fjári hlutina aftur og aftur. Nú, einfaldlega að segja efni á skjánum, prentun til skjár, í raun allt sem ekki er spennandi, þannig að við skulum opna þriðja dreifni hér. Og nú, eins og þú munt sjá, þetta verður fljótt að fá pirrandi - [Meow] DAVID Malan: - en það er líka svona sætur. [Meow] DAVID Malan: Jæja, svo betra, og við getum vissulega nota það sama umskipti chunking þetta upp í lykkja uppbyggingu, en við skulum gera það áhugavert meira enn. Leyfðu mér að fara á undan og opna fjórða dreifni hérna, þar sem ég taka það einu skrefi lengra. Svo samkvæmt þessu, kjánalegt þó það sé fyrst tillit, hvað er þetta forrit að fara að gera? Það er að fara að meow einu sinni. Hvers vegna? Jæja, einn er, eins langt og ég veit, alltaf minna en tveir. Það er engin hugmynd um handahófi hér. Ég hef bókstaflega harða dulmáli eins og tveggja, en þetta er dæmi nú í raun að nota Boolean tjáningu. Líkt og Joseph gerði í sauðakóðanum hans, inndrátt IF þú finnur samsvarandi sokkar þá gera eftirfarandi, hér höfum við tjáning Ef einn er minna en tveir þá - og í raun höfum við jafnvel smá skerðing, þar sem fjólublátt er örlítið indented til hægri - Síðan sem þú ert að fara til að spila hljóð meow. Nú, í þessu tilfelli, að maður er alltaf minna en tveir, þannig að þetta er eins konar sóun á ástandi. En við munum vera fær um, eins og við munum sjá, að stinga aðra hluti í þessi staðgengla þar sem eitt og tvö nú eru. Svo skulum við nú fara að dæmi Fimm þessara nokkrir hellos og líta á hvað þetta forrit er að fara að gera. Svo nú, í enskri setningu, hvernig virkar þetta program hegða sér? Áhorfendur: Meows helmingi tíma. DAVID Malan: helmingur meow á þeim tíma, þannig að þetta er leið til að miðlun mjög einföld hugmynd. Jafnvel þó að við verður að vera með einhverja misrétti hér í sumum tölum, þetta er í raun bara programmatical leið, nákvæm leið, að segja ef mynt kemur upp höfuð, fara undan og meow. Eða öfugt, ef mynt kemur upp hala, ekki meow ekki. Og í þessu tilfelli, hvernig látum við það? Við munum velja af handahófi númer frá 1 til 10, og ef það talan er minni en 6, fara á undan og meow. Og hvernig var þetta að komast í hér? Jæja aftur, taka bara draga og sleppa og það læsingar í stað. Svo nú skulum við sjá hvort þetta randomness virkar. Leyfðu mér að fara á undan og smelltu á græna fána. [Meow] DAVID Malan: Allt í lagi. [Meow] DAVID Malan: Allt í lagi. Jæja, gott, svo fengum við höfuð, höfuð, skott áhrifaríkan hátt. Hala. [Meow] DAVID Malan: Heads. [Meow] DAVID Malan: Excellent. Það er alltaf óþægilega þegar aðeins tölfræðilega þú færð slæmt hlaupa, og það er allt höfuð, og forritið í raun ekki vinna eins og þú vilt vona. En í þetta sinn, vann hann, og við virðast hafa, ef við gerðum þetta er óendanlegur fjöldi af sinnum, 50% líkur. Nú aftur, ekki allt sem áhugavert, bara að gera ketti meow, þannig að við skulum sjá hvort við getum ekki fyrirfram þetta aðeins lengra hér í útgáfu sex. Svo nú höfum við virkilega pirrandi útgáfu - [MEOWS á nokkurra sekúndna fresti] DAVID Malan: - og þetta er það sem er þekktur, almennt, sem óendanlegur lykkja. Svo óendanlega lykkja í þessu tilfelli finnst slæmt. Það er ákveðið að fara að byrja hljómandi slæmt, en samt óendanlega lykkjur eru ekki alltaf slæmt. Getur þú hugsa um samhengi í tölvuforrit þar sem þú vilt reyndar vilja óendanlega lykkju? Já? Áhorfendur: Þegar þú vilt að athuga með ástand. DAVID Malan: Jæja, þegar þú vilt að stöðva a ástand? Eins og hvað? Áhorfendur: [inaudible] DAVID Malan: Jæja, gott, þannig að ef þú hefðir eitthvað forrit, sum konar heimili sjálfvirkni hlutur, þar sem þú vilt stöðugt skjár er eitthvað að ræða. Eru ljósin á? Eru ljósin á því kannski að þú ert með teljara og þú vilt þá til að fara burt, þú gætir þurft að gera eitthvað aftur og aftur. Og í raun að tala um tímamælar, einhver ykkar sem hafa klukka á þinn tölva eða stafræn úr, það er að óendanlegur lykkja. Það heldur áfram að uppfæra tímann því það er stöðugt stöðva og stöðva og stöðva hefur tími breyst, og ef svo er, ó, guð minn. Klukkan er loksins breytt. Það þarf sýna þessi gildi til þín. Svo en mest af þeim tíma óendanlega lykkjur eru mistök, eða að minnsta kosti illa hönnun ákvörðun, stundum þeir gera hafa gildi sitt. Jæja, við skulum fara lengra hér hello7. Svo nú program vilja fá smá meira gagnvirkt. Leyfðu mér að súmma hér, og aftur, þetta er það sem er gott um grunni. Og við munum nota það til að vera skýr, Scratch, bara í dag og í vandamál næstu viku sett. En á mánudag, kafa við í C. Í þessari áætlun hér, það er, eilífu, eftirfarandi. EF snerta músarbendilinn - nú, hver er samhengi hér? Jæja, og eftir því að hver er valið hérna neðst rétt er kötturinn, Sprite einn, þannig að þessar forskriftir, þetta program, við hann sérstaklega. Svo ef að kötturinn er að snerta músina, svo það er að fara til að spila þetta niður og bíða í tvær sekúndur, og þá endurtaka auglýsingu nauseum. Svo við skulum fara á undan og högg leik. Ekkert gerist, en ef ég vil klappa köttur nú, ég get einfaldlega. [Meow] DAVID Malan: Dásamlegur. [Meow] DAVID Malan: Jæja, minna pirrandi, en fær einnig illa, þannig að við skulum fara og sjá hvort við getum ekki sprauta smá rökfræði. Það var td sjö. Hér í dæmi átta, við erum að fara að innleiða annað ástand. Svo mikið eins bókstaflegri vegurinn, sem þú getur farið vinstri eða þú getur farið til hægri, ástand í forritun tungumál eins grunni, eða eins og við munum sjá C, getur gert þér kleift að fara í eina átt eða aðra um að EF Annars reisa. Svo alveg bókstaflega, EF snerta músarbendilinn, þetta mun spila hljóð, annars það er að fara að spila þetta aðra hljóð, meow. Nú, ef þú getur álykta af nafni af þessum hljóðum, getur þú sennilega giska á hvað þetta forrit er ætlað til að töfra upp hugmynd um. Þessi köttur er meowing hamingjusamlega. [Meow] DAVID Malan: Hamingjusamlega, en ekki alveg eins og að vera snert. [Öskrar] DAVID Malan: Svo nú höfum við kött sem mun öskra á þig. Allt í lagi, vel, einn síðasta dæmi með ketti hér og skulum opinn útgáfa níu af þessu hér. Svo nú höfum við næsta mest pirrandi hljóð sem ég gat finna, þannig að við höfum Walrus eða Sea Lion hér sem er að fara til gera eftirfarandi. [SEAL gelta] DAVID Malan: Jæja, svo þetta verður að fara á þar til þú reikna út hvernig þetta forrit virkar. Svo þessar mundir, þessi dýr eru tvö handrit, og hvað er áhugavert hér er að þessar forskriftir séu að fara að framkvæma samhliða. Svo vegna þess að þeir báðir byrja með einum grænum fána smellt það er eins og að fara eins og þetta, og bæði forrit byrja að keyra hann einu sinni, jafnvel ef þeir eru lykkja eilífu. Svo í efstu handrit, hef ég nokkur rökfræði. Hvaða möguleika býður sem veita þarna? [SEAL gelta] Áhorfendur: [inaudible] DAVID Malan: Ef það er það? [SEAL gelta] Áhorfendur: Ef þögguð núlli, það er að fara að halda áfram að spila á hljóð. [SEAL gelta] DAVID Malan: Allt í lagi, gott. Þannig að ef slökkt, hvað þetta er, þetta appelsínugult hlutur er núll, ÞÁ spila Sea Lion hljóð og hugsa "Ó, hæ, "í tvær sekúndur. Nú, ég veit ekki hvað þögguð er, en núll conjures upp hugmynd um rangar eða slökkva. Svo ef þögguð er rangt, þannig að ef ekki þögguð, halda áfram að spila hljóð. Allt í lagi, vel, hvernig gera við þetta? Jæja, við skulum líta á annað handrit þarna niðri. Annað handrit segir sett þögguð á núll. Takið það líka appelsínugult, svo það Scratch er er það liti blokkir í sama skugga ef tegund það er á rökrétt tengjast. Svo bara eins og slökkt upp efst var appelsína, svo er þögguð niður hér getið í appelsínugult blokk. En þetta er breytilegt verkefni, svo rétt eins og í algebra, þú X og Y og Z, í forritun sem þú ert breytur, en þeir eru yfirleitt - skulum hlé um stund og tala um hvernig að stöðva þessa gelta. Hvernig geri ég þetta? [SEAL gelta] DAVID Malan: Allt í lagi. Það stoppaði. Allt í lagi. Svo bara eins og í algebru þú breytur x, y og z, heldur í forritun, hafa breytur eins og X, Y, og Z er almennt hleypa brúnum þegar af því að þeir eru alls ekki svipmikill. Þeir hafa enga merkingartækni merkingu alls, svo í flestum forritunarmál, breytur geta haft fullt viðvaningur nöfn eða orð eða orðasambönd, eins og slökkt á að segja hvað þeir gera. Svo þetta annað handrit var líka að hlusta að eilífu, og það sagði: Ef lykillinn er lykill hljómborð Space, er ýtt spurningarmerki. Þannig að það er ástand með Boolean tjáningu sem er að fara að svara spurningu hvort Satt eða ósatt, þá hef ég inni í það ef pláss er ýtt og EF þögguð er núll, setja þögguð að einn, annars setja þögguð á núll. Svo þetta annar gaffal í veginum, og taka eftir því hvernig ég hef hreiður tvö ef aðstæður, er leið til að stöðva er Space Bar þrýsta því ef svo er, ég vil annað hvort að fara þessa leið eða þannig. Og hvernig hvolfa ég gildi þögguð? Ég þarf að athuga er það núll? Ef svo er, gera það einn, annars gera það núll í því skipta tveggja ríkja þess. Allt í lagi, þannig að við höfum þá einhverja af þessum grundvallar Býr. Við höfum Boolean tjáning, og átta sig á, of, eru þetta ekki allt sem framandi. Í raun, hér er a fljótur screenshot af Harvard auðvitað er CS50 innkaup tól, og allir website þarna úti sem hefur gátreitina og falla Downs hafa raunverulega, allan þennan tíma, verið að nota Boolean tjáning. Í þessu tilfelli hér, ef þú smellir á kassann við hliðina á auðvitað meiri en eða jafnt og 4,5, eða sama við hliðina á deild, þú ert að tilgreina Boolean tjáningu. Sýndu mér námskeið þar sem þetta mál er satt. Eða til hægri, ekki stangast á við námskeið sem ég er taka, ef það er valið, þá já, þú vilt að athuga þessi skilyrði, annað sem þú vilt hunsa hana. Svo Boolean tjáning eru svona allt í kring, en þegar við að setja þá í aðstæður, hvort sem ef aðstæður, IF Elses, eða við getum jafnvel líkja dýpra stigum, EF ELSE IF ELSE - svo er þessi tegund af ternary ríkisins. Þú getur farið þessa leið eða þennan hátt eða á þennan hátt. Við getum haldið hreiður hlutum til að fara í mismunandi áttir. Svo hefur Scratch þessar lykkjur, eins og Forever. Það hefur þessar aðgerðir eins Endurtaka 10, sumir takmarkaðan fjölda skipta. Við höfum getu núna til að setja breytur, svo í þessu tilfelli Ég hef lýst, til dæmis breytilega heitir sokkum. Ég hef frumstilla til 0, og það er enn annar átt við gætum tekið upp hér með Jósef, þar sem kannski ég bara að halda utan um hversu margir sokkar ég á og ljúka The program þegar gildi þá breytu er 2. Það væri önnur leið svona alhæfingar sem vandamál og gera eitthvað aftur og aftur. Jæja, við skulum fara á undan og nú kynna nokkra nýja hluti. Svo þessir af þú með fyrri forritun reynslu mun veit að mikið af tungumálum með fylki eða vektor eða lista, og örugglega, Scratch hefur eitthvað þessu líkt líka. Svo við skulum sjá hvort við getum ekki tekið það á næsta stig hér. Ef ég hef getu, nú, með þessum þraut stykki til bæta eitthvað, eins og orð eða númer, að breyta, ég get byrja að safna hlutum. Og þetta er í raun frekar apropos fyrir hluti eins og leiki, hlutverk-leika leikur þar sem þú ert eins konar gangandi um sumir ímyndunarafl heim safna hlutum, tína það upp, earnings stig, eða þess háttar. Þú vilt kannski til að halda utan um einhvers konar birgðum, og örugglega, það er það sem einn af fyrrverandi nemendum okkar hér gerði með eitthvað sem kallast Fruitcraft RPG. Svo láta mig fara á undan og opna þennan grip hér, og í Fruitcraft, höfum við þennan heim upp í toppinn. Svo láta mig fara á undan og smelltu á græna fána. Tilkynning efst til vinstri er einhvers konar skrá. Það er framkvæmd í grunni og það sem við munum kalla fylki eða lista, og nú höfum við þetta litla fjör. Svo bara eins og við byrjuðum áðan með þessari elsku kex sögu, og þá erum við háþróaður til ketti og sjó ljón, nú getum við fengið hlutir sem eru jafnvel meira gagnvirkt. Og þetta litla bláa strákur, get ég byrjað að fara í kringum hann lítið heima hér. Svo það lítur út eins og hann fékk að loka hérna, svo ég ætla að nota örvarnar takka, upp, niður, vinstri, hægri. Og nú er ég úti, þannig að við skulum það sem ég hef fengið hér. Lítur út eins og appelsína, og reyndar um leið og ég fæ að appelsína, fær það plopped í birgðum mínum. Ef ég fer yfir hér á kirsuber, nú hef ég eitthvað annar í skránni minni. Og þetta er allt gott og sætur, en hugsa um hvernig, nú þetta er hrint í framkvæmd. Jæja, höfum við þessa hugmynd af listanum og það er greinilega þraut stykki sem þú segir bara hvað þú vilt bæta við hana, bæta við appelsína, bæta kirsuber. Nú, hvað er þetta litla bláa strákur að gera? Jæja, hann er Sprite. Og væntanlega er appelsínugult og kirsuber - þeir voru aðskilin sprites. Og nota aðstæður í Boolean tjáningu, á nemandi var líklega hægt að tjá IF blár strákur er snerta kirsuber bæta þá orðið kirsuber til hans skrá, og þá einnig fela kirsuber Sprite. Svo undir hetta, það líklega er enn kirsuber Sprite þar. Við höfum bara sagt það að verða í raun ósýnileg. Nú, ef ég að halda áfram að ganga hérna, við getum líka gert þetta nærlægum hlutur, þar sem ég get farið og lesið tákn. Svo ef blár strákur snerta merki, getum við fengið þessa Segja blokk bara eins og kötturinn talaði til okkar í orðum, halló, fyrr, "Got einhvern ávöxt? Koma með það að ávöxtum stað. "Allt í lagi, svo nú virðist, Ég hef átt mína. Ég get farið yfir hér á ávöxtum stað, stilla mér upp við hurð. Nú, ég er hér. Ég get farið upp á mann á borðið. Hann skynjar að ég er nálægt honum, svo það þarf ekki að vera alveg samur snerta, og ég hef unnið leikinn. Svo þar höfum við Fruitcraft RPG. Þannig að við getum gert hlutina jafnvel lengra en þetta. Við getum bætt við hljóð. Við getum bætt við gervi randomness. Við getum bætt flókið. Leyfðu mér að fara á undan hér, og frekar en að gera þetta sjálfur, láttu mig sýna þér einn af the fleiri háþróaður uppgjöf við fengum á síðasta ári frá ákveðnu einhverjum heitir Blake. Getum við einum sjálfboðaliða sem er þægilegt að birtast á myndavél og er upp til að spila leikinn? Hvernig væri þarna? Komdu upp. Allt í lagi, þannig að leikur sem þú bara óafvitandi bauðst til að spila - [Lófaklapp] DAVID Malan: - er eitthvað frá fyrra kallast "Frogger." Hvað er nafn þitt? Renda: Renda. DAVID Malan: Redna? Renda: Það er eins og Brenda með b. DAVID Malan: Allt í lagi, Renda. David. Gaman að hitta þig. Svo hér í "Frogger" og ef við getum aukið magn bara svolítið, þú ert þetta litla grænn froskur á botn. Þú getur notað vinstri, hægri, upp og niður, og markmið þitt er að yfir götuna, yfir ána, og snerta Lily pads efst. Aw. Eitt enn T - endurtaka, allt í lagi? Skulum högg stöðva. Enginn sá það. [Lófaklapp] [Lófaklapp] DAVID Malan: Já. Mjög vel gert. Excellent, þakka þér. Þannig að það var Frogger. Nú þegar þú veist hvað þú hefur fengið ykkur inn í enn einn sjálfboðaliða fyrir aðra leikur fram af öðrum nemanda. Þú vilt koma á upp? Hvað er nafn þitt? RICHARD: Richard. DAVID Malan: Richard. Allt í lagi, Richard, koma upp. [Lófaklapp] DAVID Malan: Þú hefur eitthvað sem mun hljómað þekki fljótlega, svo hér eru leiðbeiningar þinn. Svo í augnablikinu eru sumir ráðgáta stykki að fara að fletta upp af skjánum sem líta annaðhvort vinstri eða rétt upp eða niður. Þú ert að fara að þurfa að ýta á örina lykla á þann hátt að það samsvarar þeim ráðgáta stykki fóður upp með staðgengla fyrir ofan. Svo þegar þú sérð vinstri ör, og það línur með vinstri arrow, högg á vinstri örina. Þú getur byrjað. [TÓNLIST - "sterkari" KAYNE WEST] DAVID Malan: Allt í lagi, stór umferð af lófaklapp fyrir Richard. [Lófaklapp] DAVID Malan: Mjög vel gert. Þakka þér. [Lófaklapp] DAVID Malan: Svo gaman og að því er virðist, eins konar ógnun sem það gæti verið að framkvæma eitthvað sem virðist háþróaður eins og þetta, gera sér grein fyrir því að nemandi ekki sett fram og bara að skrifa þetta allt í einu. Frekar er hægt að brjóta niður í vandamál sem virðist flókið sem þetta í miklu smærri verk, og þetta líka er að fara að vera þema. Það versta sem þú getur gert í að skrifa forrit í flestum allir málið er að setjast niður, fá mjög spenntur, skrifa heild fjandinn hlutur, og svo bara vona að það virkar með því að þegar þú ert búinn að skrifa. Fremur, the aðferð af forritun ætti almennt vera mjög meðvitað, mjög endurtekningu, þannig að þú bara setja mjög lítið skref fyrir ykkur, bit-stærð stykki viltu að bíta burt, og þannig að þú hefur þessar geðheilsu ávísanir, litlu áfangar sem þú getur hitta. Og þá byggja ofan á þá til að búa til fleiri háþróuð það enn. Svo til dæmis, hvernig gætum við farið um framkvæmd leik svona? Jæja, hreinskilnislega, ég myndi örugglega byrja á því bara styðja einn takka í einu. Við skulum bara framkvæma stuðning vinstri ör. Svo nemandi þurfti að einhvern veginn að búa til í Photoshop, eða í Klóra sig með litla grafísku ritstjóri, að arrow takkann sem lítur út eins og einn efst til vinstri þar, bara gráa tákn. Þá nemandi þurfti að reikna út hvað x, y samræma við setja það, hvar á að setja það í glugganum. 0, 0 er upp hér, svo þú verður að reikna út fjölda punktar, eða punkta, til að vega upp á móti því að ör efst á skjánum. Og svo þegar það er til staðar, program er í raun ekki gera neitt ennþá, þannig að þú þarft þá annað Sprite, að dæmi grænt ör sem er einnig vísar til vinstri, og þú þá þarf að byrja að skrifa nokkrar forskriftir fyrir það. Og þú tekur, ef til vill, að þetta byrjaði að koma á mismunandi hraða, og litirnir voru mismunandi stöðum, og það er vegna þess að nemandi notað smá gervi randomness. Og gervi handahófi, ég meina bara að velja númer milli eitthvað og eitthvað vegna þess að þú getur byrja að kortleggja það, eins og ef númerið er á milli eitt og fimm, vel, við skulum gera sem græna. Ef það er á milli 6 og 10, við skulum gera ráðgáta stykki rauður í staðinn. Svo lengi sem þú hefur leið til að búa til einhvers konar randomness, getur þú þá að taka ákvarðanir byggðar á því randomness. Og ég halda að segja gervi handahófi vegna þess að það er lítið óhreinum leyndarmál. Tölvur getur ekki komið upp með handahófi númer. Þeir geta bara gert það sem þeir sögðu því þeir eru tilbúnar tæki. Þeir geta ekki bara giska á fjölda eins og við menn finnst eins og við getum. A tölva hefur að gera eitthvað stærðfræði til að töfra upp blekking af stærðfræði tala, stundum með því að nota Dagurinn í dag tíma sem inntak að vangaveltur út hvað númer til að fara aftur, en meira um það seinna. Fyrir nú, bara að vita að við getum búið til gervi randomness. Svo þegar ég hef getu til vinstri ör til að byrja birtast á mismunandi tímum og á mismunandi hraða, þá Ég get farið til baka og bæta við nokkrum af þessum ef aðstæður. EF þetta Sprite snerti hina, og vinstri ör lykill hefur verið ýtt - svo þrjú skilyrði í því tilviki. Ég get notað það og loka ef til vill í þessu máli - Þá vil ég fara á undan og hækka stig. Og efst, höfum við stöðuna, sem við höfum Awesome, Cool, gott, og Boo. Þannig að það virðist fimm breytur að nemandi notaður til að halda utan um þessar mismunandi gögn. Svo í stuttu máli, niðurstaðan er ótrúlegt. Það er gaman, það er gaman að spila, það er að taka þátt, en það er ekki þar sem nemandinn tók. Hann byrjaði á miklu minni sett af skrefum. Svo það eru nokkrar aðrar kubbar sem við getum fléttast inn í þessar áætlanir? Jæja, það er þetta annað hugtak í flestum tungumálum, Skafðu meðal þeirra, þekktur sem þræði. Svo tölva er í raun ekki í raun að gera marga hluti í a tími, að minnsta kosti ekki yfirleitt. Frekar, a tölva hefur yfirleitt bara einn örgjörva, og jafnvel þótt tölvur eru frábær fljótur og getur því skapa tálsýn um að gera marga hluti í einu - athuga póstinn þinn, fá augnablik skilaboð, prentun skjal - raunverulega, tölvan er bara stökk úr prentun til IMing til póst til baka og aftur og fram og til baka svo hratt að við hægur witted menn bara átta sig ekki að það er í raun keyra þessum forritum smá í einu. Nú, þetta er hluti af hvítt liggja þessa dagana vegna þess að nú á dögum, margar tölvur okkar eru það sem kallast multi-algerlega, þannig að þú hafa einn CPU en margar algerlega, sem er góður af eins og hafa margar örgjörva. Og svo stundum, tölvur geta sannarlega gert marga hluti í einu, en að jafnaði innan forrit, forrit treysta á þetta sem kallast þræði. Svo er þráður tegund af eins litlu forrit sem getur eru samhliða öðru litlu forrit og hægt er að keyra samhliða, eða að minnsta kosti er hægt að keyra undir þá ímynd að þeir eru í gangi samtímis. Svo styður Scratch þetta kallast þráður. Þú getur haft mörg forrit framkvæmd í einu, alveg eins og við gerði við sjó ljón, og það gerir okkur kleift að raun þá hafa samskipti milli þessara sprites. Leyfðu mér að fara á undan hér og draga upp, við skulum segja, þræði, og spila þetta þannig. Við höfum tvær sprites, hver sem við munum sjá hefur bara eitt handrit. Og þú eftir því að það virðist vera einhver greind í köttur í þessu vegna þess að hann er að nálgast - [Öskrar] DAVID Malan: - og nær litla fuglinn. Svo hvernig er fuglinn starfa? Jæja, við skulum taka a líta á fuglinn fyrstur. Fuglinn handrit sagði þegar græna fáninn er smellt fara til X. jafnt neikvæðar 115 og Y jafngildir 150. Svo ég mynstrağur bara út handahófi staðsetningu þar sem ég vildi fugl að byrja, og ég plopped bara hann þar með sjálfgefið. Þá Forever ef ekki snerta köttur, þannig að þetta er öðruvísi konar lykkja byggingarinnar, en sama hugmynd, að gera þetta aftur og aftur og aftur. Svo lengi sem þú ert ekki að snerta köttinn, fara þrjú skref, og Ef þú ert á brún, hopp, þar sem það er eins konar spegilmynd í billjard skilningi. Svo er það hvernig fuglinn er áhrifamikill í kring konar virðist af handahófi, en það er bara vegna þess að það er skoppandi burt veggina í þessu tilfelli. Nú kötturinn, á meðan er, eins konar svindla. Kötturinn, þegar græna fáninn er smellt já, byrjar í einhverjum stað, a handahófi staðsetningu - minnsta kosti að hluta til eins og hverja velja handahófi græna blokk þar - og þá að eilífu ef að snerta fuglinn, leika ljón hljóð, og þá hættir handrit. Svo þegar ég sagði enda, eða hætta fyrr, það er þraut stykki í grunni sem vilja bara drepa forrit á þeim benda því það er eins konar rökrétt gert. En annars, hér, eftir því sem er að fara að gerast. Point til að fugla og færa eitt skref. Svo er þetta lið til fugl konar forskot á kött hefur í að það er homing inn á áhrifamikill fuglinn, og við getum nú að gera þetta forrit allt meira áhugavert. Í stað þess að færa eitt skref í einu á CPU hringrás, á slá tollur af Bell, svo að segja, láta mig fara á undan og færa, við skulum segja, fimm skref í einu eins og köttur. Smelltu hlaupa, og nú finnur hann raunverulega hann fljótlega. Ef við tvöfalda þetta frekar í 10 skrefum, fer það svona rétt fyrir hann. Nú getum við gefið fuglinum, kannski smá forskot. Við skulum fara í fuglinn og segja í stað þess að færa þrjú skref, við skulum færa hann 30 skref. En hann samt fékk gripin í lokin. Svo hér höfum við tvo þræði. Það er incarcerated í grunni með tveimur forskriftir og tveir sprites, en hugmyndin á öðrum tungumálum er að þú getur skrifa, í meginatriðum, of mörg forrit eins og þetta og hafa þá hlaupa sannarlega, eða imaginarily, samhliða. Nú, það er líka þetta hugtak í forritun þekktur sem viðburðir, og þetta er eitthvað sem við munum ekki sjá í C, tungumál þekktur sem C. Við munum sjá það undir lok hverrar annar í forritun vefur, þegar við kynna JavaScript og hugmyndin að byggja vefsíður sem eru lifandi og hafa samskipti við notendur. Svo í þessu tilfelli höfum við mjög einfalt dæmi um tvo sprites, drengur og stúlka, hver þeirra hafa viðkomandi þeirra þræði, en einhvern veginn þessir tveir eru innbyrðis samskiptum í gegnum um eitthvað sem kallast viðburðir. Svo láta mig fara á undan hér og stækka handriti drengsins, sem lítur svona út. Þegar grænt merkja smellt eilífu gera eftirfarandi. Ef lykillinn Space, eða Space Bar, er ýtt, segja Marco í tvær sekúndur, það er eingöngu fagurfræðilegu á skjár, smá ræðu kúla, en þá útsendingu. Svo er útvarpað annað Scratch stykki sem er fulltrúi flokki virkni í forritun sem leyfir mismunandi forrit, mismunandi þræði, að innbyrðis samskipti, að einhvern veginn að senda skilaboð, hver við annan. Brottför blað í bekknum er tegund af litlum tækni jafngildar. Svo útvarpa atburði. Ég get sent þetta bréf, og orðið atburði er alveg handahófskennt. Scratch hefur stundum þessar falla hæðir, þannig að ég kom bara upp með handahófi orð eins og að ræða því nú, hvað drengurinn er þegar ég ýta á takkann hann útsendingar þennan atburð. Og ef ég lít nú á handriti stúlkunnar, handrit hennar er Super einfalt því allt sem hún þarf að gera er ekki að bregðast við þegar græna fáninn er smellt. Hún er hönnuð til aðgerða þegar hún fær Quote, unquote, "Atburður", og á þeim tímapunkti, er hún að hlusta því að svokallaða atburði aftur og aftur. Um leið og hún fær því tilviki er hún að fara að hrópa Polo í tvær sekúndur. Og svo þú getur kannski álykta af þessu nákvæmlega hvað næsta útkoma er að fara til vera. Leyfðu mér að smella á græna fána. Ekkert gerist því að ég þarf að gera hvað? Áhorfendur: Space Bar. DAVID Malan: Space Bar. Boy segir Marco, stúlka segir Polo. En það er ekki harður á dulmáli í sjálfu. Það er innbyrðis samskipti milli skrifta, svo nú erum við hafa getu til að gera jafnvel flóknari forrit þar Þessir tveir eru einhvern veginn milli samskipti. Svo í hvaða áttir er hægt að taka þetta? Jæja, í setja vandamál 0, í raun, að markmiðið er að hafa gaman með grunni. Fyrir spjallþráð útgáfa, munt þú í staðinn hafa gaman með fleiri háþróuð útgáfa af grunni kallast BYOB, Byggja Þínar eigin blokkir, en hugmyndin er sú sama. Þú munt vera fær - Já, það var viljandi. Það kom frá Berkeley. BYOB er útgáfa spjallþráð útgáfa af þessu, en bæði , lýðfræði, Standard Edition og tölvusnápur útgáfa jafnt markmið á hönd fyrir næstu viku er í raun bara að kafa í djúpt, fá þinn snertið ekki óhrein og forritun, og gera eitthvað áhugavert, gera eitthvað gagnvirkt, gera eitthvað listrænn, gera eitthvað skemmtilegt í raun sýna, svo að í lok viku, munt þú hafa a verkefni, ekki aðeins fyrir fyrstu CS50 pset þinni, en þú munt hafa litla eitthvað sem þú getur sýnt burt í Annenberg til vinum eða jafnvel fjölskyldu með því að senda það á vefsvæðið MIT. Og svo eins og ég sagði á miðvikudag, við gerum ráð fyrir 90% af bekknum, almennt, til að gera venjulegu útgáfur. Gera sér grein fyrir að það er líka í útrás fyrir þá sem annars gætu fundið þér smá leiðindi með grunnatriði og raunverulega vilja til að kafa í og ​​iðn sýn þú nú þegar hafa með fyrri bakgrunn í þetta þægilega umhverfi. Svo láta mig draga upp eitt annað dæmi að einn af fyrrverandi okkar nemendur gerðu hér og segja smá eitthvað í gegnum lagið. Það á sama hátt, eins og þetta leikrit, hugsa um hvernig þú ferð um framkvæmd þetta forrit með því að nota nákvæmlega þessar sömu byggja blokkir, a lítill hluti af gervi handahófi og hluti af kunnugleg lag. Ef við gætum aukið hljóðstyrk bara smá? [TÓNLIST - "IT er rigning Men" The Weather Girls] DAVID Malan: Það er það fyrir CS50. Við munum sjá þig á mánudaginn. [Lófaklapp]