>> Ræðumaður: Ég er [inaudible].
Og ég er háttsettur í Leverett House.
Ég læri tölvunarfræði, og ég er TF fyrir CS50.
Sem freshman, gerði ég ekki einu sinni a laptop eða smartphone.
Ég hafði enga forritun reynsla.
CS50 var mest eftirminnilegt námskeið sem Ég tók við Harvard því það var
barátta, en það var mjög gaman baráttu á sama tíma.
Og ég gerði mikið af furðulegur, varanleg vinir, og ég lærði mikið af virkilega
gilda færni.
Ég er bara svo fegin að ég gerði ekki láta minn skortur á bakgrunni vera afsökun fyrir mig
ekki taka CS50.
Ég er [inaudible].
Ég er háttsettur í Leverett House, flokki 2014.
Og ég tók CS50.
>> DAVID Malan: Svo er þetta CS50.
Þetta er í lok núll viku.
Og muna þar sem við tók í síðasta skipti, var með þessum lömpum, sem voru
svo vinsæl að við fórum og keypti meira í dag.
Þannig að ég held að þetta verði hlutur okkar á þessu ári -
skrifborðið lampar ef þú kemur upp á sviðinu, amk þar til við keyra út.
>> En við notuðum þessar muna, að kynna grunnatriði framsetning gagna.
Við þurftum leið til að byrja hönd upplýsingar inni í tölvunni.
Og einfaldasta leiðin til að gera það var með eitt efni, rafmagn.
Og einfaldasta sem þú getur gert með rafmagn er snúa það á og það burt.
Láta rafeindir flæði eða ekki.
Og nota þessar tvær helstu ríki, burt og á, eða rangar og satt, eða núll og
einn, byrjuðum við að sjá að við gætum byggt upp, í þessu tilfelli, með ljós
ljósaperur, fleiri tölur en bara núll og einn.
Við talin eins hátt og sjö, til dæmis síðast.
En allt sem við þurfum að gera er að halda að henda fleiri og fleiri ljósaperur á að
vandamál og í raun, við getur táknað allir tala um að við
gæti hugsanlega vilja.
>> Jæja, transitioned við fljótt þá á Miðvikudagur þessu bæti sjálfboðaliða.
8 bitar er það sem við köllum yfirleitt bæti, svo hér við höfðum átta sjálfboðaliðar
á miðvikudaginn sem sameiginlega voru fulltrúar átta bita.
Og þegar hendur þeirra fór upp, voru þeir einn.
Og þegar hendur þeirra voru niður, þar voru núll.
Og við höfðum þetta fólkinu koma upp á hverju stigi?
Það sem við erum fær um að gera við þessi röð af bitum?
>> Til að búa til stafróf.
Við gátum að byggja ofan á það Fyrri kennslustund lærður og í raun
byrja að gera meira áhugavert upplýsingar sem er að minnsta kosti meira
þekki okkur mönnum.
Og þetta er að fara að vera endurtekning þema um 50, en einnig tölva
vísindi almennt, þessi hugmynd um layering, þar sem, í lok sem
dag, ef þú byrjaðir í raun grunnatriði með tölvu, já,
það er núll og sjálfur.
Og undir að það er bara rafmagn.
En við byrjum mjög fljótt að taka þá lág upplýsingar stig fyrir hlut
og byrja að lag á toppur af fortíðinni unnið gert svo að við lokum, með
í lok annarinnar og, í raun, almennt sem tölvunarfræðingum
og forritarar, geta gera sumir raunverulega öflugur hluti með meira starf
að við sjálf höfum gert og einnig standa á öxlum annarra.
>> Nú Við færðum fljótt á miðvikudag frá bara þurfa að
tákna upplýsingar til ófullnægjandi að gera eitthvað með það.
Og hvað gerði við skilgreinum reiknirit sem?
A röð skipana.
Svo það er röð skipana, sem ýmis skref sem þú, mannlegur, eða
tölvu, fleiri venjulega, myndi framkvæma einn á eftir öðrum í röð
til að ná ákveðnu markmiði.
Og við höfðum nokkra mörk síðasta sinn, einn sem var að telja
fólk í herberginu.
Og annar dæmi var að finna Mike Smith í símaskránni.
>> Svo þú getur muna að ég reif upp símann bók í tvennt til í þessu skyni upp
finna Mike Smith.
Í þeim tilgangi að því að sjónrænt var að sýna, aftur, að við værum
bókstaflega rífa þetta vandamál í helmingur, í tvennt, í tvennt, og mjög
fljótt að fara frá eins 1.000 síður að aðeins einn einni síðu.
Þau ykkar sem misst þetta á Miðvikudagur, hélt ég að við myndum spila aftur
sumir myndefni af því sem þú misstir.
Skulum taka a útlit.
>> [Vídeó spilun]
>> -Það sem við förum.
1500 síður, Nice clean lína, lögmæt tár.
>> [END vídeó spilun]
>> DAVID Malan: Svo sem var Miðvikudagur.
Við umskipti, þó, á miðvikudaginn nú að hafa áhuga á að tákna reiknirit
í sumum nokkuð venjulegu leið, ekki bara lýsa þeim munnlega, en
reyna að tjá þeim skriflega eða á tölvuskjá þannig að við gátum
byrja að bæta við og breyta þá, og, að lokum, reyndar
greina hversu rétt eða hversu hratt þeir voru.
>> Þannig að við kynntum þessa hugmynd af sauðakóðanum, sem í
skilmálum leikmaður er, er það?
OK, orð.
Við skulum fara aðeins dýpra en það.
Ensku, viss, en eru til hvaða endir?
Orð sem að búa til eða að tákna reiknirit.
Svo er það enginn tungumál þekkt eins og sauðakóðanum í heiminum.
Það er bara að þú, á ensku, eða hvað talað tungumál er, nota
eins konar cursory merki að miðla hugmynd mjög succinctly.
En við munum sjá að vissulega með að Enska sauðakóðanum, og það kemur í ljós
flestir forritunarmál sjálfir eru afleidd af ensku sig,
við munum finna að það er einhver staðall leiðir hönd sauðakóðanum og
Einnig forritun kóðann.
Svo eins og þú byrjar að sjá jafnvel einfaldasta dæmi í dag, við gerum þetta
sömu mynstur mun endurtaka sig í næstu viku.
>> Svo sauðakóðanum var einhvers konar á tungumáli sem líkist
forritunarmál.
Og fyrsta dæmið sem við sáum sjónrænt skrifað niður var þetta einn.
Það var aðeins þrjú skref program, Markmið útboðsins var að telja fjölda
fólks í dorm herbergi fyrir þessi vídeó á miðvikudag.
En það voru nokkrar áhugaverðar hliðar þessa einföldustu forrit.
>> Og þetta mun vera algengt þema.
Svo fyrir þá sem eru framandi með þetta, einn, kynnti við breytu.
Og sennilega eru allir í þessu herbergi þekkja breytu í
samhengi algebru.
En hér í forritun, breytur eru, einn, er hægt að
kallað hvað sem við viljum.
Við höfum verið að nota n eins og a borðið.
En við gætum notað orðið gegn, eða, eins og þú munt sjá, flest allir setningu sem
þú vildir svo lengi sem það er lýsandi, en það er í raun bara
geymsla gámur.
Það er klumpur af minni, sumir tala um bits, og það er mismunandi eftir tölvunni, hvernig
margir bitar þar eru að semja þá breytu.
>> En við getum sett gildi í það.
Svona langt, höfum við aðeins setja tölur.
En við getum sett raunverulegt orð.
Við getum sett mgr.
Við getum sett myndir -
eitthvað, virkilega, getum við táknað með núll og sjálfur, getum við sett í
þetta meiri hugmynd af breytu.
>> Svo laglegur beinn áfram þar.
Og það er lína einn.
En við fluttum mjög fljótlega á frá lína einn til raunverulega gera
eitthvað með þá breytu.
Og í samræmi þremur, uppfærð við N. Við incremented N. Og vér gætum skrifað þetta
allir tala af lifnaðarhættir.
En kannski er augljósasta bara að segja, setja N jafn
hvað N er auk 1.
Svo það var vöxtur okkar.
>> Á sama tíma, það var hliðar.
Og þetta, of, er líklega nokkuð leiðandi.
Lykkja er bara eitthvað í kerfinu það gerist aftur og aftur, sumir
konar hringrás.
Og þetta lykillinn setningu hér, fyrir hvern, er reyndar mjög algengt um mest
forritunarmál, þar á meðal þær sem við munum sjá í námskeiðinu.
Hvenær sem þú sérð orðið fyrir, það yfirleitt veitir hugmynd að
lykkja, eitthvað sveiflu, er að fara að gerast.
>> En það er rétt að átta sig einn aðrar nokkur dæmi um setningarleg smáatriði.
Sú staðreynd að þriðja línan er reyndar grafin með því að hafa ýtt á
rúm bar nokkrum sinnum er vísvitandi.
Vegna þess að manna venju er þannig að, þegar þú ert að gera eitthvað aftur og
aftur, í lykkju, eins og byrjað á línu tvö, þú undirlið neitt sem tilheyrði
að þessi lykkja bara að gera ljóst að það er lína þrjú, en ekki til dæmis,
lína fjórum eða fimm, ef það voru línur fyrir eða fimm, sem eru
hluti af því lykkjur.
Þannig að þetta einfalt inndrátt miðlar að undirstöðu hugmynd.
>> Þannig að við sótt þetta reiknirit, nú, til að nokkur dæmi.
Og þetta líka, einfalt dæmi í hinum raunverulega heimi.
En það er að fara að vera fulltrúi hvernig þú myndir fara um prófunaraðferðir
eiga sífellt flóknari forrit.
Þú ert að reyna nokkrum atburðarás, sumir fulltrúar inntak, og sjá hvort þú
fá viðeigandi framleiðsla.
>> Þannig að þetta dæmi átti tvær manneskjur sitja í dorm herbergi.
Á vinstri er sama gervi kóða.
Og þetta er skjár skot af mjög síðasta skrefið í beitingu þessa
reiknirit þeim aðföngum, þar voru tveir menn í herberginu og,
muna, eins og við skref í gegnum línur einn, og tveir, og þrír, og tveir
og þrír og gert -
í lok þess reiknirit, við höfðum reyndar taldir tveir félagar sem eru
í herberginu.
>> Svo þá við reyndum annað dæmi.
Og við sögðum hvað ef það eru núll fólk í herberginu?
Er þetta númer enn rétt?
Og reyndar var það.
Það gerist bara svo að mörkin tvö og svona, línu þrjú eða
ekki að fara að framkvæma.
Þeir eru ekki að fara að gerast á öllum vegna þess að þeir eru bara ekki við ef
það er núll fólk í herberginu.
>> En ekki stór samningur.
Line einn frumstilla N núlli, svo jafnvel þótt aðeins ein lína af þessu
program endar í raun allt að vera gagnlegt, það gefur samt rétta svarið, eins og
gefið til kynna með appelsínugult núll neðst.
En þá ákváðum við að það var konar heimskulegt reiknirit.
Það var frekar hægur.
Víst get ég gert tvo, fjóra, sex, átta, tíu, þegar
telja fólk í herberginu.
>> Svo við klip reiknirit er sauðakóðanum að segja, nú á línu tvö,
fyrir hvert par af fólki í herberginu, halda til, í samræmi þremur, vöxtur
í um tvö á hverri ítrun.
Svo sem hefði unnið hér fyrir þetta par einstaklinga í herberginu.
>> En þá, ef þú byrjar að hugsa um þetta, og það tekur ekki langan tíma að
átta, bíddu í eina mínútu þetta er að fara að brjóta, brýtur það
á hvaða einfalt mál?
Ef það er þrír menn í herberginu eða, almennt, þegar það er
oddatala fólks í herbergi, þar á meðal einn.
Við myndum missa viðkomandi hér því það eru engar slíkar pör.
Svo við beint fljótt af stað kynna hvaða viðbótar
forritun býr til gervi kóða.
>> Svo ástandi, kallaði við það, eða útibú.
Og það er ætlað að flytja, sjónrænt, sem Hugmyndin um útibú, gaffli í veginum
þar sem þú getur annað hvort gert þetta eða, kannski, eitthvað annað.
Og reyndar, bregðast við þetta mál með því bæta línu 4, með því að segja, í raun, að
enda, ef ein manneskja er, þá fara á undan og telja þá sérstakt.
Svo þú raða í sérstökum tilvikum þeim, svo að tala, svo að nú getum við séð
bæði enn fjöldi fólks og oddatala fólks.
>> Nú eru allir tala af lifnaðarhættir við gætum hafa lýst þessu.
Og hreinskilnislega, gæti ég hef verið jafnvel meira nit vandlátur þegar kom að vali mínu
Enska fyrir sauðakóðanum.
En að minnsta kosti í anda Hugmyndin er miðlað.
Ef þú afhent þennan kóða til vinar sem er ekki í CS, eða hefur aldrei verið
CS, eru líkurnar að þeir gætu fundið út, gefið þrjár manneskjur í herberginu, hvernig á að
telja fólkið byggt á þessum leiðbeiningum.
Og það er allt í raun við viljum ná með sauðakóðanum, einhvern veginn
staðla hvernig við erum að fara um fulltrúar hugmyndir þannig að við getum
byrja að gera flóknari hlutur enn.
>> Svo leiðir að okkur þá, í ​​dag, raunverulegri kóðann.
Við byrjum að forrita í dag, að vísu í vinalegt umhverfi.
Og þá erum við umskipti mjög fljótt að meira Bogagöng setningafræði, en sá sem
þú munt sjá er í grundvallaratriðum það sama og hugmyndir mun sjá fram með
þetta önnur tungumál í dag.
Það er bara að fara að horfa svolítið öðruvísi.
>> Svo frekar en bara að hringja þennan kóða, ég að fara til vera a lítill nákvæmari
og segja héðan, þegar skrifa program, þú ert að skrifa kóðann.
Það er góður af eins og sauðakóðanum.
En við munum sjá að það er ekki svoleiðis laus þegar það kemur að því að velja orð
sem þú notar.
Þegar forritun á tungumáli, hefur þú að nota orð, setningar,
setningafræði, að aðrir menn hafa ákveðið tákna
því tungumáli.
Svo er pseudocodes undir þér.
Raunveruleg forritunarmál eins C, sem við munum að lokum sjá, er
stöðluð af öðru fólki.
>> Svo hvernig við förum um að skrifa sumir kóðinn?
Jæja ég ætla að fara undan og gera þetta.
Ég ætla að fara á undan og opna glugga hér.
Meira um þetta í næstu viku.
En þetta er tæki sem kallast The CS50 tæki.
Ég er að keyra stykki af hugbúnaður á minn Mac, þó að þú getur gert það sama
á Windows tölvu, sem gefur mér tálsýn keyra annað
stýrikerfi alveg rétt hér í glugga á Mac minn.
Ég hef bara fullt sýnd það svo þú þarft ekki reyndar sjá Mac OS núna.
>> Þetta er stýrikerfi kallast Linux.
Það er mjög vinsæll.
Það er mjög hratt.
Það er mjög frjáls, sem hefur gert það mjög sannfærandi, sérstaklega í
auglýsing í heiminum.
Og meira um það til lok önn þegar við notum Linux töluvert
fyrir vefur forritun og hýsingu á raunveruleg vefsíður og verkefni.
Svo nú, bara veit að þetta er a skrifborð sem er ætlað að líta óljóst
kunnugleg Windows og Mac OS.
Það hefur bara nokkrar mismunandi nöfn og tákn fyrir hluti.
En þetta er svokölluð CS50 tæki, a raunverulegur vél sem,
byrjun næstu viku, þú krakkar vilja hlaupa inni í glugga á
eigin Mac eða PC.
>> Í dag ætla ég að opna einföldustu áætlunum.
Það heitir gedit.
Og þetta er bara myndrænt ritstjóri.
Það er góður af eins og Microsoft Orð, en einfaldara.
Það er góður af eins og texta breyta eða skrifblokk.
Það er bara mjög einfalt forrit með sem að skrifa orð á skjánum.
Það bara svo hvað gerist að ef ég vista skrár sem ég skapa þegar þetta forrit
í sérstökum framlengingu eins. c, í stað um. doc, eða. xls, eða hvað
þú ert kunnuglegur með, get ég í raun búa til forrit með jafnvel þetta einfalt
texti ritstjóri.
>> Svo láta mig gera það.
Leyfðu mér að fara á undan og vista þetta skrá fyrst sem hello.c.
Og aftur, þessi notandi tengi vilja kynnast þér fljótt.
En nú er ég bara að skrifa í skrá nafn.
Ég ætla að vista það inn John minn Harvard heimasvæði.
Og nú hef ég þennan flipa sem gefur til kynna Ég er reyndar að breyta
skrá sem heitir hello.c.
Svo ekkert of áhugavert enn.
>> Og nú það er að fara að fá frekar dulinn.
Ég ætla að stækka, bara svo það er meira áberandi.
Og ég ætla að byrja að skrifa fela stdio.h, int helstu, ógilt, opið hrokkið
borsveif, einn, tveir, þrír, fjórir eru af inndrátt, prenta f til prentunar
eitthvað sniðinn, vitna Unquote, "Halló, heimur" sviga, n, loka
vitna, lokað sviga, semíkommu, slá backspace, backspace, backspace,
Backspace, lokað hrokkið Brace -
Ég hef forritað.
>> Allt í lagi þannig að þetta er frábær einfalt program, í raun, the program sem
einhver byrjar forritun með.
Og allt það gerir, að öllum margbreytileika sínum, er að prenta út á
skjár, giska á hvaða?
Halló heimur.
En það er ekki nóg bara að skrifa forrit.
Svo er þetta númer.
Þetta er kóðinn í tungumál sem heitir c.
Það er vistað nú í skrá sem heitir hello.c.
>> Nú líta á botni á skjánum hér.
Meira um þetta, aftur, í næstu vikur.
En þetta er það sem við munum kalla Terminal glugga.
Það er blikkandi, svartur og hvítt hvetja.
Það er tegund af gamla skólanum tengi til tölva sem almennt er ekki
nota músina eða önnur grafísku þætti.
Það notar bara lyklaborðið.
Og ég get slegið skipanir á þetta blikka hvetja.
>> Og tilgangi í dag, ég er bara fara að skrifa eftirfarandi -
gera halló.
Og þessi áætlun, gera, er bara forrit sem, í hinum raunverulega heimi þessum
daga, myndum við tvöfaldur smellur á.
En í þessu tengi í dag, erum við fara að skrifa nafn sitt á þessari hvetja.
gera halló er bókstaflega að fara að gera mér forrit sem heitir Halló.
Og það er að fara að gera það með því að skoða að skrá, bara með
sjálfgefið, heitir hello.c.
Það er að fara að gera ráð fyrir ég vil C forrit eftir eðli hvernig þessari tölvu
er stillt.
>> Svo ég fara á undan og högg koma inn í.
Ég sé nokkur dulinn framleiðsla, en þetta mun verða allt of
þekki áður en langur.
Þetta gerðist að keyra þýðanda, fleiri á það í smá stund, kallast Clang.
En nú hef ég fengið bara annað blikkar hvetja.
Og ég get farið á undan núna og slá punktur rista, fyrir uninteresting ástæðum munum við
koma aftur til næstu viku -
halló.
>> Svo allt þetta átak svona langt bara til skrifa einföldustu forrit sem,
um leið og ég högg inn, gerir það.
Svo ég hef skrifað fyrsta forritið mitt.
Þannig að ég er vísvitandi poking gaman á þessum mjög einföldu forriti
fyrir a par af ástæða.
Einn, það er erfitt að fá bráður um að taka á bekknum ef
þetta er í lok leik.
>> En meira en það, það er fullt af truflun upp hér.
Í fyrsta skipti sem þú lærir að forrita, fyrir þá minna þægilegt, og
jafnvel ég, aftur í dag, þegar ég fyrst sá eitthvað eins og þetta - þú getur konar
af myndinni að allt í lagi, þetta er í a prenta Hello World.
En það er svo mikið truflun.
Það er svo mikið setningafræði á skjánum að það gerist í the vegur af mjög
einföld, annars einfalt, hugmyndir.
>> Svo er það sem við erum að fara að gera í dag við erum að fara að leggja til hliðar C og koma
aftur til að á mánudaginn.
Og við erum að fara að nota myndrænt forritunarmál sem kallast grunni.
Þetta er forritunarmál, sem ég kennd við á miðvikudaginn, það er að fara
til að leyfa okkur að gera sams konar efni en snúa að blindu auga, í dag,
til hrokkið axlabönd, sviga, að semikommum, og allar þessar heimskur
truflun sem fá í leiðinni, í þetta fyrsta daginn, af grunnupplýsingum, nokkuð
áhugaverðar hugmyndir.
>> Svo til að enda, ég ætla að fara aftur til minn skrifborð hérna og
kynna þig fyrir val til að program, sem er að fara að líta
lítill eitthvað ljós þetta.
Það er hvernig við ætlum að innleiða það sama program í dag - tveir ráðgáta
verk sem þegar interlocked og smellt á, mun segja við heiminn,
halló heimur.
>> Þannig að við skulum í raun að fara þangað.
Þannig að ég ætla að fara á undan og opna website þekktur sem scratch.mit.edu.
Og þetta mun leiða mig til þetta vefsvæði hér.
Fyrirfram, hef ég skráður inn á þetta website og fyrstu vandamál sem
mun ganga þú í gegnum sumir af þessum skrefum.
Ég ætla að fara á undan og smelltu á möppu grunni mína hér.
>> Og þetta er að fara að sýna mér sumir verkefni sem ég hef
reyndar búin fyrirfram.
Og það kemur í ljós að þetta myndrænt forritunarmál ekki aðeins er að fara
að láta okkur forrit með því að draga og sleppa þessum ráðgáta stykki, þú
þarft ekki einu sinni sérstakan hugbúnað.
Það er allt hluti af innan vafra svo að þú getur gert þetta, í orði, á
tölvur núna, eins og sum ykkar má vel vera, án þess þó að þurfa
hugbúnaður eins CS50 tæki, sem mun koma í næstu viku.
>> Þannig að ég ætla að fara upp í efstu horninu hér og smelltu á Búa til.
Og í smá stund ég ætla að fá autt skjár með sem ég get byrjað
forritun í þessu myndrænt forritun umhverfi.
En í þetta skiptið, það er að fara að vera mikið, miklu einfaldara að raunverulega gera það.
Svo á aðeins augnablik, þegar Wi-Fi samstarf, höfum við nú þennan skjá.
Svo a fljótur munnleg ferð, en ég þori að segja, vissulega þegar þú kafa inn í
Fyrsta vandamálið sett, munt þú finna þetta allt mjög
aðgengileg og nokkuð leiðandi.
En við skulum mála andlega mynd fyrir aðeins augnablik.
>> Svo undir þessu hvetja segja vista breytingar, þú ert að fara að sjá klóra.
Þetta er Sprite.
Það er eðli.
Og hann býr á hvað við munum kalla á sviðið, þetta stóra hvíta rétthyrningur á
sem hann er að færa upp, niður, til vinstri, rétt, og gera, í raun,
aðrar tegundir aðgerða.
>> Á sama tíma, í miðju þessa notanda tengi, höfum við a heild búnt af
þraut stykki.
Og þú munt sjá að þeir segja hluti eins og færa 10 skref, sneri 15 gráður,
benda í ákveðna átt.
En það er flokkar blokkir upp hér líka.
Þannig að ef ég fer til útlit, munt þú sjá að það er önnur stykki púsluspil sem
virðist vilja segja þetta Cit til segja halló, að hugsa, til að sýna
sjálfur, fela sig.
Ef ég fer niður fyrir hljóðum, snýr það út það er leiðir til að spila hljóð eins meow,
að hætta öllum hljóðum, til að spila tromma.
>> Svo, löng saga stutt, það er allt fullt af stykki púsluspil sem leyfa þér
að segja þetta köttur, eða allir tala um aðra stafi, hvað á að gera.
En til að gera þetta allt gerast þig þarf að byrja að forritun.
Og þetta stór hvítur kassi, eða grár kassi, á hægra megin, þetta er þar
Ég ætla að í raun draga og falla þeim ráðgáta stykki.
Það er autt texti minn glugga jafngildir.
>> Þannig að ég ætla að fara á undan og smelltu Stjórna í miðju.
Eða frekar, láta mig byrja upp undir Events.
Undir Viðburðir bekkur, munt þú taka eftir a nokkur atriði sem eru vísvitandi
sveigð efst á þann hátt að þeir sennilega interlock ekki á
Efst á the ráðgáta stykki.
Og það er vegna þess að þeir Danmörku í byrjun af a program, upphaf
handrit, svo að segja.
Þannig að ef ég fer á undan og draga, þegar grænt merkja smellt hérna, og þá er ég
vilja þetta köttur að segja eitthvað í fyrstu.
Þannig að ég ætla að fara undir útlit spjaldið.
Og ég ætla að fara á undan og grípa segja halló blokk og draga, og falla,
og látið fara svo að það sjálfkrafa interlocks þar.
>> Og svo eftir ég get smelltu á texta.
Og ég get hunsa það til að vera meira sérstakur eins og, segja, halló heimur.
Og nú höfum við forrit sem ég krefjast jafngildir það mikið meira
Bogagöng program I framkvæmda í C smá stund síðan.
>> Ef ég fer yfir nú á vinstri hönd hlið, eftir því að það er stór hætta skilti
og stór grænn fána.
Leyfðu mér að súmma inn til glöggvunar.
Og þegar ég smelli nú þetta græna fána, þú getur sennilega giska á hvað þetta fyrst
program er nú að fara að gera.
Þannig að það líka, við erum forritun, en við erum í raun ekki að fá hika niður
í sumum af þeim nokkur dæmi um setningarleg, mínútu smáatriði.
>> En við skulum reyna eitthvað aðeins meira áhugavert.
Leyfðu mér að fara inn í möppuna grunni mína hér.
Og reyndar, láttu mig láta svo mig opna sérstakt forrit hér fyrir bara
stund, Hámarka þessum glugga, File Open, og ég ætla að fara inn í dag '
uppspretta skrá.
Eins og alltaf, þú munt finna, í dag og Onward, að öll dæmin í dag
eru aðgengileg inni Námskeiðið er website.
>> Og ég ætla að fara á undan hér og velja upp smá eitthvað öðruvísi.
This einn hér, þar sem Ég þarf sjálfboðaliða.
Hver myndi vilja skrifborð lampi dag?
OK, hvernig væri að einhver smá - ert þú á endanum?
Komdu niður.
Nú, viltu taka þátt, eða bara segja byrja með skrifborð lampi?
>> VANESSA: [inaudible].
>> DAVID Malan: OK.
Frábært, hvað er þú nafn?
Vanessa?
David.
Gaman að hitta þig.
Svo koma á allt og er Vanessa að fara að taka stjórn á mínum
hljómborð fyrir réttlátur a augnablik.
Og það sem ég hef gert hér, bara til er kominn tími sakir, sem ég hef áttaði er
Wi-Fi var svolítið hægur, Scratch, sem forritun umhverfi sem við erum
nota, einnig er hægt að hlaða niður og hlaupa á þinni tölvu.
Svo það sem ég gerði áður en fyrirlestur, í mál sem gerist, er ég niður
allar skrár sem við erum að fara að spila með svo að þeir geti keyrt aðeins meira
fljótt hérna á minn laptop.
Svo er að hvers vegna nú er ég að sjá Mac-sérstakur tengi.
>> Þannig að ég ætla að fara á undan og opna þessa.
Ég ætla að fara á undan núna og fullur skjár glugga.
Og eins og þú munt sjá, getum við mjög fljótt, þar sem þetta nemandinn en, einn af
Forverar þínir, fara frá Hello World að miklu miklu meira sannfærandi
umsókn.
Svo hér eru leiðbeiningar.
Ó, og við höfum einn annar hlutur.
Ég hélt að það væri gaman, síðan, venjulega munum við vera kvikmynda
myndavélar með þessum hætti.
Ég hélt að það væri gaman ef Vanessa, við gátum séð heiminn
gegnum augun.
Svo hér höfum við nokkur Google gler.
>> [Undrandi gasps]
>> DAVID Malan: Við munum aðeins að gefa burtu skrifborðið lampar dag.
>> [Hlátur]
>> Svo láta mig bending þetta upp.
Allt í lagi, þannig að snerta þetta.
OK, Gler, taka upp myndskeið.
Allt í lagi, Vanessa?
Nú, eins og til hliðar sem hefur fengið ekkert að gera með grunni, ef þú lítur
örlítið upp og til hægri, munt þú sjá bókstaflegri gler, og þú ættir
sjá smá rétthyrnd glugga.
Þú ættir að sjá öll bekkjarfélögum þínum verið teknar núna?
Já.
>> VANESSA: Já.
>> DAVID Malan: OK.
Svo það er allt í lagi.
Við munum gefa út þetta myndefni síðar.
Fyrir nú, snúa athygli þína á skjáinn hér.
Og hvað forveri þinn hefur gert er setja nokkrar leiðbeiningar á skjánum
bara með því að nota mála program.
Svo þú ert að fara til, í smá stund, ýta á bil bar að byrja.
Og þá sumir þraut stykki eru að fara að byrja að færa upp skjáinn.
Og þú vilt að lemja örvatakkana, bara eins og í alvöru DDR, í samræmi
með það að undirbúa með þeim örvum.
>> VANESSA: OK.
>> DAVID Malan: Þú hefur spilað þetta áður.
>> VANESSA: Já.
>> DAVID Malan: Allt í lagi, Vanessa, fara á undan og taka það í burtu.
>> [TÓNLIST - KAYNE WEST, "sterkari"]
>> [Applause]
>> DAVID Malan: Svo skulum nú taka skref frá því.
Svo greinilega, það er endir leikur.
The endir leikur er ekki halló heimur.
En þú þarft ekki að endilega að gera hlutir sem eru svo gagnvirkt.
Þú getur líka gert fjör.
Svo til dæmis, annar einn af þínum eftirmenn gerði þetta forrit hér,
sem segir sögu meira en það er útfært leik.
Svo láta mig fara á undan og opna hér program í sömu heimilda skrá okkar
frá í dag.
Þetta eitt símtal, og við skulum byrja með, ást kex sögu.
>> Og ekki að gera þetta of fræðileg, en, eins og þú horfa á þetta einn, heldur til
sjálfur sem þeirra einfaldur forritun hugtök við höfum talað
um svona langt -
breytur, og lykkjur og aðstæður, gerði forveri þinn nota sennilega bara
að framkvæma sumir af the visualizations.
Þú sérð hér.
Svo ég gefa þér ást kex sögu.
>> [TÓNLIST - GREEN DAY, "frí"]
>> [Hrun]
>> [TÓNLIST - skjaldbökur, "SAMAN HAPPY"]
>> DAVID Malan: Allt í lagi, þannig að það, við höfðum ást kex sögu.
En jafnvel þar -
>> [Applause]
>> DAVID Malan: Allt í lagi, jafnvel þar, hugsa um, eins og þeir hjörtu fór frá
neðst til the toppur af the skjár, það var í raun hluti af
randomness gangi.
Og reyndar, munum við sjá að jafnvel í einföldustu umhverfi, eins og
Scratch, eins og í C, getur þú búið slembitölur eða tálsýn
slembitölur, þannig að leikurinn er a aðeins meira áhugavert en það gæti
vera ef þú hefðir alveg harður dulmáli allt.
>> Í hreyfingu sem þú sérð, það það er einhvers konar svörun.
Um leið og piparkökur maður snertir The Gingerbread kona, hún
virðist að flytja í burtu.
Og svo, reyndar er hægt að framkvæma, í flest forritunarmál er hugmyndin
af atburðum, þar ef einn hönd snertir hins vegar, sem getur kallað fram nokkur
frumkóða til reyndar framkvæma.
Þú getur hlustað á slík hluti á skjánum.
>> Þannig að við skulum taka fljótur ferð, þá að sum byggja blokkir við getum notað
að ná einhverjum af þessum markmiðum.
Svo hér er það sem við munum héðan hringja í yfirlýsingu.
Yfirlýsing gerist að fjólublátt í Scratch, smá eitthvað eins og þetta,
en það er handahófskennt.
Yfirlýsing er bara ráðgáta stykki eða, almennt, kennsla, sem
segir tölvunni að gera eitthvað, yfirlýsing.
>> Svo hér er einfalt dæmi.
Segja halló heimur.
Annað gæti verið að bíða einni sekúndu.
Þannig að þetta ráðgáta stykki, sem er studd í grunni munum við láta þinn
stafir hlé fyrir suma fjölda sekúndur.
Þetta líka er bara yfirlýsing.
>> Hér næst höfum við annað meira áhugaverður einn, spila hljóð meow, og
litli ör þýðir að í grunni, þetta er vallista.
Svo þú getur flutt hljóð.
Þú getur tekið upp hljóð og gera aðrar skemmtilegum hlutum í grunni.
Og það líka, þó í lok dagsins, er bara yfirlýsing.
En nú skulum kynna meira áhugavert stykki, sem þekkt er sem
Boolean tjáningu.
Capital B, sem heitir eftir náungi hét Bool.
>> Og Boolean tjáningu er bara þraut stykki eða fleiri almennt, sem
stykki af upplýsingum sem er annaðhvort satt eða ósatt -
einn eða núll, já eða nei.
Svo það er bara einn af þeim tvær andstæður.
Svo einn svo Boolean tjáningu í veröld af grunni lítur svona blár
þraut stykki.
Og það er að spyrja spurningu, mús niður, og sem getur annað hvort að vera, að
námskeið, satt eða ósatt.
Svo með þessari þraut stykki í grunni, vel, munt þú vera fær til uppgötva ef
stúlkunum ef mús er í raun að vera haldið niður af mönnum samskipti
með forritinu.
>> Þessi er svolítið meira abstrakt, en þessir tveir hvítir kassar
eru bara fyrir tölur.
Svo þú getur gert hlutina eins og er þetta tala minna en önnur?
Og ef svo er, Scratch mun haga einn eða annan hátt.
Þessi er svolítið meira myndrænt.
Það er ef Sprite, ef the köttur, fyrir dæmi, er í raun snerta
músarbendillinn.
Þannig að ef litlu örina höfuð er sveima yfir köttinn, þá er þetta
þraut stykki mun meta til satt.
Það mun vera satt, en í því tilviki, ef þú nota þetta Boolean tjáningu, eins og við munum
sjá í smá stund, í grein, getur þú annaðhvort að gera þetta, eða þú getur gert það,
mikið eins og við var með sjúkdóm sem merkt, er það eitt síðasta manneskja
í herberginu?
Ef svo er, bæta við einum.
Annars, ekki hafa áhyggjur frekar.
>> Svo Boolean tjáningu geta einnig verið og-Ed saman eða eða-Ed saman.
Svo þú getur sameinað Boolean tjáning og segja þetta og þetta verður að vera rétt fyrir
the heild hlutur til að vera satt.
Og hér er meira raunverulega heimi dæmi.
Ef þú hefur notað CS50 Námskeið til að gera námskeið innkaup, þessir stöðva kassa
þar, þar sem ef þú stöðva þessi kassi næst til námskeið, sem mun segja já,
aðeins sýna mér námskeið sem er Q gildið er 4,5 eða hærri.
Ef þú hakar það, nei, ekki hafa áhyggjur af því.
Eða álíka, á hægri, Er ekki Átök Með Námskeið Ég ætla að taka,
það er annað hvort sönn eða ósönn.
Það er bara Boolean tjáningu.
Svo allan þennan tíma þegar þú hefur notað vefsíður með kassa stöðva, þú ert bara
skipta jafnvirði Boole tjáning á og burt.
>> Svo í hvaða formi þú notar þetta?
Jæja, í grunni, munum við sjá í smá stund að það eru aðstæður sem
líta svona út.
Og það er góður af skynsamlegt vegna þess að mikið eins og í sauðakóðanum, grafin við
The tegund af U-laga ráðgáta stykki, meina að allt inni sem u er
að fara að framkvæma, eða ekki, eftir á hvar það er.
Svo ef Boolean tjáningu, þá hvað er inni mun fá fram.
>> Á sama tíma, það er ef / annað blokk.
Svo ef þú vilt útibú sem fer þetta hátt eða að Scratch gefur okkur það.
Og með þessum reglum, nú, jafnvel þó að þraut stykki er greinilega of lítill
að fleyg eitthvað annað innan þess, ráðgáta klóra stykki, þá eru þeir
bara að fara að vaxa.
Þegar þú draga og sleppa yfir eitthvað, það verður bara að vaxa að passa hvað sem það
er þú ert að reyna að gera.
>> Svo við getum tekið tvo af þessum hlutum og gera þriggja hátt gaffli í veginum svo
að þú gerir annað hvort þetta eða þessi, eða þetta annar hlutur bara með hreiður þeirra
á þann hátt.
Auðvitað, ef þú gerir það líka mikið byrjar það að fá ljót.
En á þeim tímapunkti, þú ert í raun og veru líklega ekki forritun mjög vel.
Og svo sem verður endurtekin þema líka, að af stíl.
Hversu vel þú raunverulega snið kóðann þinn?
Eða hversu vel hönnun þú kóðann þinn?
En meira um það í framtíðinni.
>> Og nú höfum við lykkjur.
There 'a ágætur eilífu lykkja í grunni sem þýðir bókstaflega að - gera
hvað er inni í þessu aftur, og aftur og aftur.
Þú getur verið meira steypu og segja, gera eftirfarandi hlutur 10 sinnum.
Þú getur einnig notað breytur.
Þú getur komið upp með hvaða nafn í því lítið falla niður og segja, gefa mér
breytu sem heitir n og setja það jafn eitthvað gildi.
Og þá er hægt að hafa virka.
En meira um þá í aðeins augnablik.
>> Leyfðu mér að fara aftur til mín Klóra tengi.
Og láta mig fara á undan í þetta sinn.
Og við skulum fara á undan og opna, skulum segja, dæmi frá -
það er aðeins meira áhugavert.
Leyfðu mér að fara á undan, og í raun, láta mig gera bara það sjálfur.
Ég þarf ekki að opna þetta einn.
Leyfðu mér að fara í File, New.
Ég ætla að fara til Events.
Ég ætla að fara á þegar grænn fáni smellt og ég ætla að fara að hljóma.
Og ég ætla að draga og sleppa þetta þraut stykki, spila hljóð meow.
Það læsingar saman.
Og nú, ef ég smelli á græna fána -
>> [Meow SOUND]
>> DAVID Malan: Dásamlegur.
OK, svo nú skulum gera eitthvað lítið meira rökrétt bara að sýna fram á að
við getum, fyrir nú.
Ég ætla að unlatch þetta frá þeim gaur.
Ég ætla að fara að stjórna.
Og ég ætla að grípa ástand.
Þannig að ef þá eitthvað.
Svo er það hvernig það lítur þar.
Svo þarf ég að Boolean tjáningu.
Og láta mig fara á undan og segja: láta mig fara til rekstraraðila.
Ég ætla að gera eitthvað örlítið mathy, bara fyrir ánægja.
Ég ætla að fara í hér og segja, ef eitthvað er minna en eitthvað annað,
fara á undan og gera eitthvað.
Svo nú, þú veist hvað, af handahófi blokk.
Svo eftir hvernig, ef ég sveima yfir þessu hlutur hér, sem mun smella á það.
>> Svo nú, tilkynning, ég byrja að gera eitthvað þegar meira rökrétt
áhugavert.
Ef handahófi tala á milli 1 og 10 er minna en, segjum sex.
Ef ég vel sex, sem í raun þýðir, að gera eftirfarandi með 50%
líkur.
Það er eins ósvífni mynt.
Nú get ég gert eitthvað skilyrðum.
Og að eitthvað sem ég ætla að gera er að spila hljóð.
Svo nú, þegar ég smelli á skjánum merkja, það er eins og að kasta upp peningi.
>> [Meow SOUND]
>> DAVID Malan: Það var höfuð eða whatnot þar.
Skulum gera það aftur.
>> [Meow SOUND]
>> DAVID Malan: Heads aftur.
>> [Meow SOUND]
>> DAVID Malan: Heads aftur.
Phew, OK.
Hala þeim tíma.
Svo 50% af þeim tíma, ef við gerum þetta óendanlega lengi, munum við fá 50% meows
og 50% þagna.
Þannig að það, bara einföld bygging blokk sem leyfir okkur að gera það.
En þetta er góður af leiðinlegur að ég hef að halda því að smella þessi hnappur.
Þannig að við skulum bara draga og henda öllum þeim burtu.
Ef þú draga þá í átt að miðjunni, þeir bara eyða sig.
>> Leyfðu mér að fara upp til að stjórna.
Leyfðu mér að fara að eilífu.
Og í þetta sinn ætla ég að gera eitthvað minorly pirrandi.
>> [Hlátur]
>> DAVID Malan: Og láta mig fara undan og gera stjórn.
Bíða í eina sekúndu, bara svo það er ekki of grating.
>> [Meow SOUND]
>> DAVID Malan: Það er ekki eðlilegt.
OK.
>> [Meow SOUND]
>> DAVID Malan: og taka eftir hvað er að, gaman um grunni, fyrir þá sem
hafa áður forritun reynslu, þú þurfa ekki að byrja og hætta.
Þú þarft ekki að þýða.
Þú breytir bara það, og the program mun aðlaga sig.
Þannig að þetta er getting a lítið áhugavert.
En við skulum taka það einu skrefi lengra.
Leyfðu mér að fara á undan og fá losa af þessi forrit.
>> [Meow SOUND]
>> DAVID Malan: Það er það sem við munum kalla villu í grunni.
Hann ætti ekki að halda að þessi hljóð.
Þannig að við munum segja honum að hætta.
Allt í lagi, svo nú er ég að fara inn -
Ég læt MIT vita.
Við munum fara yfir hér að eilífu.
Og nú vil ég að gera eitthvað aftur og aftur.
Ég ætla að fara í Control.
>> Og við skulum sjá, ég ætla að draga ef mitt ástand þar.
Svo nú taka rökfræði.
Þegar græna fána er smellt gera eitthvað eilífu, en aðeins að gera það
eitthvað ef þetta annar hlutur er satt.
Ég ætla að fara til, við skulum segja, Sensing.
Og ég ætla að fara á undan og velja snerta og sleppa því þar.
Það er Boolean tjáningu.
>> Og nú, eftir, í þessu falla dúnn matseðill, eru
sumir fyrirfram gildi.
Svo ég get sagt, þú ert að snerta brún á skjánum?
Eða ert þú að snerta músarbendilinn, örin á skjánum?
Þannig að ég ætla að gera það.
Og ef svo er, þá er ég að fara að fara undan og spila hljóð meow.
Svo nú hef ég svona að Upphaf leik -
dásamlegur leikur.
>> [Meow SOUND]
>> DAVID Malan: OK, dásamlegur, þrjótur leikur.
Leyfðu mér að bíða, við skulum segja, einn þarna sekúndu.
Nú leika aftur með því að smella græna fána.
>> [Meow SOUND]
>> DAVID Malan: Svo nú er það eins klappa kött.
>> [Meow SOUND]
>> DAVID Malan: Allt í lagi, nú þetta eina sem ég náði að gera fyrirfram.
Mjög seint, verður það eins konar auðvelt að gera heimskur hluti.
Svo láta mig fara í hér.
Við skulum segja, sem var Pet Cat.
Skulum nú opna Ekki Pet Cat.
Nú, ef við spilum þetta einn, þú getur giska, ef þú ert
horfa á skjáinn -
>> [Meow SOUND]
>> DAVID Malan: Nú, ef ég klappa kettinum
>> [ROAR LION'S]
>> DAVID Malan: Svo er ekki í raun gæludýr köttinn í því tilfelli.
Svo nú höfum við bara dæmi um grein sem er að fara í tvær áttir.
Nú láta mig fara á undan og opna annað hér.
Þetta eitt, einnig, meðal uppruna okkar númer skrár fyrir daginn.
Svo láta mig fara aftur í upptökum mínum skrá og fara í, við skulum velja
þessi strákur hér og sjá hvað er öðruvísi.
>> Vá, allt í lagi, svo nú það er að fá svolítið flóknari.
Og áður en við sjáum hvað þessi strákur er, skulum reyna að álykta, frá the program
á hægri hönd.
Og nú klóra gerir greinilega okkur að hafa margar forskriftir margar
forrit í tengslum við eitt Sprite, með einum staf, og virðist,
Þeir eru báðir að fara að keyra í lockstep.
Vegna þess að bæði þessi forrit byrjar með þegar Grænfánann smelli, þetta er
vísbending á a fleiri háþróaður efni, með sem sumir af þú might vera kunnugt,
þekktur sem þráður, eða multi-þráður.
>> Skrúfjárn út, löng saga stutt, tölvur í dag getur í raun gert fleiri
hlutir í einu.
Eða þeir geta gert eitt í einu þannig hratt að þú þarft ekki einu sinni taka eftir því að
það er í raun að gera einn hlutur í einu.
En nú, við skulum gera ráð fyrir að bæði þessi forrit eru að fara að framkvæma á
á sama tíma.
Og tilkynningu, að þau bæði hafa eilífu þraut stykki.
Svo þeir eru báðir að fara að halda í gangi fyrr en ég högg rauða stöðva skilti.
>> Svo hvað eru þeir að fara að gera?
Á vinstri hönd hlið, ég er greinilega að lýsa yfir breytu sem heitir þögguð.
Svo ég var ekki að kalla það eitthvað eins og leiðinlegt eins N. kallaði ég það þögguð þetta
tími til að miðla merkingu.
I setja það jöfn núlli.
Við skulum hugsa um það sem rangar eða við skulum hugsa um það sem False.
>> Nú, að eilífu að gera eftirfarandi.
Ef rúm bar Lyklaborðið er ýtt, þá ef þögguð jafn núlli,
þá breyta þögguð að jafna einn.
Annars, setja þaggað á núll.
Svo rökrétt, jafnvel þótt það er allt fullt af stykki púsluspil sem er
bara að segja, þegar ég högg the Space bar, hvað ætti ég að gera til að breyta
kallað þögguð?
Breyttu henni úr einu núlli, eða núll til einn.
Það er allt.
Svo það er eins og beygja ljós rofi eða slökkva á og muna, með
breytu, sem ég hef gert það.
>> Á sama tíma, á hægri hönd hlið, í skilmálum leikmaður er, hvað er tilgangur
handritið á hægri?
>> Nemandi: Til að spila Sea Lion hljóð.
>> DAVID Malan: Til að spila Sea Lion hljóð, ef hann er ekki þögguð, af
eðli þeirrar breytu.
Þannig að við erum að deila stöðu, svo að segja, deila upplýsingum yfir þessum tveimur
forskriftir vegna, taka eftir hér, við erum eilífu gera eftirfarandi.
Ef þögguð er núll, þannig að ef það er ekki þögguð - ef þögguð er ósatt, þá spila
þetta Sea Lion hljóð.
Og hugsa til sjálfur, hæ, hæ, hæ, fyrir tvær sekúndur, bíða í smá stund, og þá
athuga aftur.
Þannig að ef við förum nú yfir hér til vinstri að þar sem þessi strákur er, og ýtt á
Grænfánann,
>> [SEA LION SOUND]
>> DAVID Malan: Á hvaða stað er þetta fá mjög pirrandi?
Vegna þess að þetta mun bara fara að eilífu.
Svo stundum, óendanlega lykkjur, svo að segja, eru vísvitandi.
En í þessu tilfelli, um leið og ég högg the Space bar, hættir hann.
Nú the program hefur ekki hætta.
Það er enn í gangi í þessum lykkjur.
En ef ég fæ plássið bar aftur -
>> [SEA LION SOUND]
>> DAVID Malan: Hann er að fara að velja upp þar sem hann fór burt.
Svo er það ein leið fyrir okkur að gera eitthvað aftur og aftur, en að
tími, aðeins skilyrðum.
Jæja, á meðan við erum í þessum anda til að gera það aftur og aftur, láttu mig
fara í annað dæmi hér.
Þetta eitt sem við munum kalla að telja kindur.
>> Og taka eftir hvað þessi strákur er.
Það er reyndar aðeins meira eins og sauðakóðanum spiluðum við á
Miðvikudagur, þar sem hann setur nokkur gegn, hugsa um það er eins og N aftur, að
núll er hann að eilífu eftirfarandi.
Hann segir Teljarinn er gildi fyrir einn Annað bíður, annað, og þá
breytir borðið í einu.
Og í þessu samhengi, sem bara þýðir þrepum það.
Svo bætir hann einn á það.
Svo er þetta bókstaflega -
það er ekki alveg það sem við hugsum af og að telja kindur.
Það er sauðfé gera talningu, eilífu, allt frá núlli.
>> Svo við getum gert svipaða hluti það, þá er rökrétt.
En nú skulum reyna að þrífa sumir af þessum hlutum upp.
Leyfðu mér að fara á undan nú í einfalt dæmi þar sem kötturinn okkar er bara að fara að
byrja hósta.
Allt í lagi, svo hér höfum við hósta 0 -
tölvunarfræðingar byrja talið frá 0.
Þannig að þetta köttur er bara að fara að hósta þrisvar.
Og hér er hvernig ég innleitt það.
Þegar grænt fáninn er smellt, hósti, bíddu, hósta, bíddu, hósta, bíddu.
Og ég gerði þetta bara með því að draga og sleppa þraut stykki.
Eða ef þú byrjar að tinker með grunni, þú munt sjá að þú getur raunverulega
afrit stykki þannig að þú getur gert hlutir hraðar án þess að draga
og sleppa auglýsingu nauseum.
>> En við erum ekki á bestu leið hér.
Vegna hvernig gera ég hann hósta í fjórða sinn?
Jæja, ég gæti raðað af fara niður hér.
Ég gæti afrit og þá líma þetta þar.
Hvernig get ég hann hósta fimmta sinn?
Jæja, afrita og líma aftur.
Eða draga falla aftur.
Og mjög hratt, this program byrjar til að fá virkilega, virkilega óþarfi,
mjög lengi, en í raun uninteresting.
En það er leið til að hreinsa þetta upp.
Hver er augljós leið að þrífa þetta upp?
>> OK, þannig að við gætum í raun virkilega að fara út og þegar þú högg the rúm
Bar, hafa hann hóstar.
En ef ég vil bara að gera eitthvað endurtekningarsamur, muna að við höfum
sumir stjórna býr.
Leyfðu mér að færa þetta út af Þannig fara undir stjórn.
Leyfðu mér að gera bara að endurtaka, segja, þrisvar sinnum.
Og nú láta mig stela sumir þessara ráðgáta stykki.
Leyfðu mér að smella þessu hérna.
Leyfðu mér að henda þeim í burtu með öllu.
>> Og nú, ég er betri hannað forrit.
Hvers vegna?
Ef ég vil breyta hversu oft This köttur hósti, allt sem ég þarf að
gera er að breyta einni breytu, eða eitt gildi, frekar frá þremur til fjórum, eða
fimm eða sex.
Eða ég gæti gert eitthvað með skilyrðum, jafnvel, með pláss
bar ef ég vildi.
>> Þannig að þetta er almenn regla.
Þegar þú byrjar að afrita og líma kóðann, hvort sem það er í grunni, eða í
C, ætlar þú að gera eitthvað rangt, líklegast.
Eða að minnsta kosti, þegar þú hefur náð nokkrum sanngjarnt fjöldi eintaka og
Límir, ert þú sennilega að gera eitthvað rangt.
>> En þú veist hvað?
Ég í raun ekki eins og þetta.
Þetta er ekki hreinustu hönnun.
Ég vildi að það væri ráðgáta stykki heitir hósta því þá myndi ég ekki
að framkvæma þetta sjálfur, gamaldags hátt, með
hafa sagt, og bíða -
hvað ef þeir voru bara ráðgáta hósta stykki.
>> Jæja, ég get í raun gert það.
Leyfðu mér að fara undir fleiri blokkir, smelltu Gerðu Block, og nú er ég að fá þetta
gluggi hér.
Ég ætla að kalla þessa hlutur hósta.
Ég ætla að fara á undan og smelltu á Í lagi.
Og nú eftir, ég fæ nýja byrjun stykki sem er boginn á the toppur.
Og það sem ég ætla að gera við þetta, er ég fara bara að stela þessum blokkir.
Ég ætla að setja þær hér.
>> Og nú, með þessum þremur stykki, hef ég framkvæmda hvað ég ætla að hringja í
virka, eða málsmeðferð, eða sum þú might vita það sem aðferð.
Lítilsháttar munur milli orðanna.
En nú, við skulum bara kalla þetta fall.
Þetta er bara ný þraut stykki.
Nú er framkvæmd svona.
>> En eftir því Scratch hefur gefið okkur líkamlega framsetning sem heild
loka hérna.
Svo nú get ég bara draga þetta hérna, segja, endurtaka þrisvar sinnum, og
hvað er að fara að gerast nú, þegar ég spila þetta handrit er aðeins eitt forrit
er í gangi í einu.
Það er bara eitt þegar Grænfánann smellur.
En það fjólublátt blokk kallast hósti er raun segja grunni, hvert
þegar þú sérð að þraut stykki, reyndar framkvæma þessi skref sem ég
gerast að framkvæma handvirkt.
>> Svo er það eins konar snyrtilegur.
En nú, ætla að ég ákvað, ég er ekki vilja þetta köttur bara að hósta.
Ég vil að hann sé fær um til að sneeze eins vel.
Jæja, hvernig gætum við farið um framkvæmd hnerra?
Jæja ég gat nokkurn veginn gera það sama.
Ég gæti gert annað blokk.
Ég gæti kalla þetta hnerra smellt á OK.
>> Þá hérna ég gæti í raun hafa, láta mig afrit þetta -
og það er þar sem þú ættir að líða eins þú ert sennilega ekki að gera eitthvað í
besta leiðin.
Ég gæti sagt eitthvað eins og: achoo, í eina sekúndu.
Bíða í eina sekúndu.
Nú hef ég nýja blokk sem heitir sneeze.
Og reyndar, það sem það er.
>> En þetta, of, ætti að fara að líða - kannski ekki í fyrstu viku í flokki, en
með öðrum - bara smá óþarfi.
Augljóslega, það er sumir offramboð hér.
Svo láta mig leggja til, í stað þess, að við betrumbæta þessa skilgreiningu sem hér segir.
>> Leyfðu mér að fara upp að skrá valmyndina mína.
Ég ætla ekki að vista þessa útgáfu.
Ég ætla að fara inn í einn af premade skrá minn hér.
Og ég ætla að fara á undan og opna hósta 2.
Úpps það var hósti 2..
Leyfðu mér að fara á undan og opna hósta 3, sem er þessi uppspretta skrá.
Hósta 3 og taka eftir - ó, sagði ég sagan í rangri röð.
Leyfðu mér að batna frá þessari sögu.
>> Sagan sem ég ætlaði að segja endar með hósta 4 -
þarna er hún.
Svo hvað ef ég, í staðinn, skilgreina stærri þraut stykki heitir
skilgreina, segja orð n sinnum.
Hnerri er bara virðist, í grunni, achoo.
Þannig að við látum það sem orð, bara vegna þess að það er
þvingun af the program.
Og hóstinn er [hósti], en hósti, C-O-U-G-H. Svo er það bara tveir
mismunandi orð gera, í raun, sama.
>> Svo ég get raunverulega gera ný blokk svona.
Ég vissi ekki að nota þessa valmynd valkostur áður.
En þegar þú smellir á Block, þú getur valið nokkrar valkosti.
Og þú getur sagt að þetta blokk raun tekur sumir inntak, annars
þekktur sem rök, eða breytur, svo að þú getur breytt hegðun
blokk.
>> Svo það sem ég gerði smá stund síðan var Ég kallaði þetta blokk segja.
Og þá sagði ég, það tekur a band inntak.
Og nú eftir, við vanræksla, það segir band 1.
A band er bara orð, eða setningu, með tilliti til okkar.
En ég ætla bara að fara að setja nokkrar textann þar, rétt eins og í
website, þegar þú sérð notandanafn, eða lykilorð, og þá hverfur það þegar
þú byrjar að slá.
Það er allt sem er.
>> Og nú ætla ég að bæta númeri inntak.
Og ég ætla að kalla þetta n - en það er nokkuð handahófskennt.
Og þá bara merki, bara til að gera Þessi blokk svolítið meira sjálf
skýringar -
sinnum, það er það sem ég gerði bara.
Og niðurstaðan er sú að ég fæ blokk sem lítur svona út.
>> Og nú eftir, ég er að nota endurtaka blokk.
En frekar en harða erfðaskrá þrjú, ég draga og sleppa n í það svo ég
getur parametrize aðgerðina.
Ég er að gera þetta virka að gera eitthvað mismunandi fjöldi af sinnum á grundvelli
að verðmæti.
>> Og eftir, segja, þetta er það sem ég gerði hér, ef ég draga orð, get ég sagt ekki
harður dulmáli orð, en hvað er liðinn í fyrir eina sekúndu.
Á sama tíma, hvernig ég aftur innleiða hósta?
Ég skilgreina staðinn hósta sem segja hósti n sinnum.
>> Svo í stuttu máli, ég er að fara í gegnum þetta fljótt, en Grunnhugmyndin er um leið
eins og þú byrjar að sjá í forritinu að bíða í eina mínútu, ég hef gert
eitthvað alveg svona áður, get ég þáttur út nokkrar algengar
virkni?
Get ég rotna það sem ég er að gera í sumum helstu hugmyndir?
Það er það sem við erum að gera hér.
Og ég hef staflað þetta, sjónrænt, ofan á annan
því það er erfðaskrá til að hugmyndin um byrja með tvöfaldur, fara til ASCII,
gerð grafísku forritum, konar Lagskipting æ flóknari hugmyndir um
hvor ofan á öðrum.
>> Sama hugmynd hér.
Ég byrjaði frá grunni, innleiða hósti, þá er ljóst hósti
í raun bara að segja eitthvað.
Svo láta mig framkvæma þess í stað hugmyndin um að segja eitthvað.
Og ofan á það, get ég Innleiða achoo eða hósta?
Og við gætum gert meira svo afbrigði enn.
>> Svo af þessu grundvallar reglu, við getum byrjað að gera
flóknari forrit.
Leyfðu mér að opna þetta.
Við getum í raun hafa margar sprites samskipti á skjánum í einu.
Ef ég fer inn í skrá uppspretta minn og grípa einn hét þræði, muna að
þráður er bara virkilega getu tveggja skriftum að keyra hlið við
hlið á sama tíma.
>> Tilkynning nú, hafa bæði fugl sprite og köttur Sprite, sem báðar hafa
eigin forskriftir þeirra.
Svo fyrirvara, þegar ég smelli á köttur, ég fæ þessar forskriftir.
Þegar ég klikka fuglinn, Ég fæ þessar forskriftir.
Svo hefur hvert þessir gaurar eigin áætlanir hans.
Þegar ég smelli nú græna fána, taka að hvað þetta forrit gerir er
hafa köttinn, ótrúlega hægt, elta fuglinn.
En kötturinn hefur þann kost að hafa verið forritað á þann hátt
að sama hvar fuglinn er, kötturinn fer til hans.
>> Við getum spilað þessi leikur mun hraðar.
Svo ef ég er á köttinn, taka eftir að ég er nota, við skulum segja að færa eitt skref.
Skulum hafa hann fara fimm skrefum á tími, svo fimm punkta í einu.
Leyfðu mér smellir spila.
>> [ROAR LION'S]
>> DAVID Malan: Allt í lagi, nú getum við raunverulega gefa köttinn kostur.
10 skref í einu.
>> [ROAR LION'S]
>> DAVID Malan: Allt í lagi, svo mjög fljótt, það fær smá forskot
fyrir kött.
En ég ætla að veifa hendinni á sumir af the smáatriði.
En ástæðan fyrir því að þessi leið sé byrja smá öðruvísi í hvert skipti
er að ég er að gera smá randomness.
Ég er reyndar að benda köttur í mismunandi átt eftir því hvar ég
langar hann að byrja þannig að í hvert sinn leikinn, eða fjör, er
svolítið öðruvísi.
>> Nú skulum mér að kynna einn annar reisa hér.
Svo í þessu tilfelli, við höfðum virka.
Það er líka að fara til vera a ráðgáta stykki þekktur sem fylki, eða lista,
sem leyfir þér að geyma margar gildi inni í breytu.
Við sáum þræði, og nú það er Events.
>> Svo er hér atburð með þessir tveir gaurar hér.
Og ef ég opna skrá sem heitir Atburðir frá dæmum í dag, munum við
sjá forrit sem lítur svolítið eins og þetta.
Og nú eftir þetta strákur -
svo eftir ég hef bláa Muppet smellt -
hann gerir bara eftirfarandi.
Hann er ekki einn af þeim Grænfánann púsluspil stykki.
Hann hefur þegar ég fæ atburð -
svo sumir handahófi orð.
Ég gafst bara út atburður þarna -
hann er að fara að segja, Polo, í tvær sekúndur.
>> Svo þeir sem eru kunnugir með þetta leikur gæti vita
þar sem þetta er að fara.
Ef ég smelli nú á appelsínugula Muppet, program hans er þetta.
Forever, ef pláss lyklaborð bör bæla, er hann að fara að segja, Marco,
í tvær sekúndur á skjánum.
En hann er líka að fara að nota þetta áhugamaður loka þekktur sem útvarpsþáttur.
Hann er að fara að útvarpa vitna Unquote, "atburð."
>> Á meðan, the blár strákur, muna, er hlusta Unquote quote, "atburð."
Svo einhvern veginn, nú getum við fengið tveir sprites samskipti.
Og þegar við komum til vefur forritun, seinna í tíma, álíka mun þetta
vera kostur að hafa vefsvæðið þitt gera eitthvað til að bregðast við, til
dæmi, a smellur af the hljómborð.
>> Svo láta mig fara á undan og ýtt á bil-bar.
Orange strákur segir Marco.
Blue strákur segir Polo.
Ef ég geri það aftur appelsínugult strákur segir Marco, blár strákur segir Polo.
Þannig að við skulum taka þetta einu skrefi lengra.
Í þetta sinn munum við fara, líklega, bara nokkrar fleiri mínútur hér.
Höfum við -
skrifborð lampi, komdu niður.
Þú ert rétt á enda.
OK, þú getur bæði komið upp.
Við höfum skrifborðið lampar fyrir alla.
Koma á.
Ég veit ekki hvort við getum haldið þetta fáránlegt gag upp
allt önn, þó.
Allt í lagi, komdu niður.
>> Og í millitíðinni, höfum við eftirfarandi dæmi til að draga upp, bara til að
flýta hluti núna, svo að við hafa birtingarmynd frá öðru
forveri þinn með því sömu undirstöðu kubbar.
Hvað er nafn þitt?
>> JOHN: John.
>> DAVID Malan: John.
Gott að mér þér.
Og?
>> SETZ: Setz.
>> DAVID Malan: Setz, gaman að mér þú.
John, ef þú vilt koma upp fyrst, þetta er gamall
skóla leikur heitir Frogger.
Þú notar lyklaborðið fyrir þetta eins og heilbrigður.
Og markmiðið er að komast yfir götunni og vatn.
>> [Frogger tónlist og hljóð leikrit]
>> DAVID Malan: Fyrirgefðu, ekki skrifborð lampi fyrir þig í dag.
Allt í lagi, Setz, myndir þú eins og til að koma á upp?
Allt í lagi, við skulum gera það aftur.
>> SETZ: Notið ég örvarnar?
>> DAVID Malan: Bara örvatakkana.
Upp, niður, vinstri, hægri.
>> [Frogger tónlist og hljóð leikrit]
>> DAVID Malan: Við munum hringja í þá huggun verðlaun dag,
þá mjög vel gert.
Hér fyrir bæði þig, John og Setz.
Til hamingju, allt í lagi.
Svo aftur, eins og þessi leikur spilar, hugsa um hvað er að gerast?
>> Einn, það er greinilega mikið af hreyfingu.
En við höfum séð hvernig, með köttinn og fugl dæmi, hvernig hægt er að gera
blekking af hreyfingu, bara færa sum fjöldi punkta aftur og aftur.
Og ef þú ert með eilífu blokk, þú gætir hafa þessir
bílar gera þetta að eilífu.
Við höfum getu til að hafa sumir randomness.
Svo þessi leikur er ekki að vera nákvæmlega sama í hvert skipti.
Þeir logs, þessir bílar, getur byrjað á örlítið mismunandi tímum þannig að
Leikurinn sjálfur er áhugavert með hverjum leikur leika.
>> Og meðan við höfum séð getu til að hlusta á rúm bar.
En greinilega, í grunni, getur þú einnig hlusta upp, niður, vinstri, hægri, og
virkilega einhvern takka á lyklaborðinu.
Og þú getur líka gert nokkrar aðra hluti.
Leyfðu mér að fara á undan og fara aftur að vefútgáfu.
>> Leyfðu mér að fara inn í safnið okkar af dæmi hér.
Og undir Studio minn, vídeó sem er, í meginatriðum, í möppu á
scratch.mit.edu.
Við höfum á vefnum útgáfur af öll þessi verkefni.
Og við skulum sjá hvort ég get fengið minn tölva til að vinna hér.
Þetta er skrifað af einum af vinum okkar við MIT, sem heitir Færa fiðrildi.
>> Og þegar þetta opnast, þetta er fara til raunverulega nota meira af
Computer míns vélbúnaður.
Scratch gerist að koma til framkvæmda með Flash.
Flash getur talað við þinn webcam, ef þú hafa einn.
Þannig að ef ég fer á undan og fullur skjár þetta hér, smelltu á græna fána, tilkynningu
að öryggi Flash er skilaboð er að segja, þú vilt
leyfa til að nota webcam minn?
>> Venjulega, þú ættir að líklega segja Neita.
En í þessu tilfelli, munum við segja leyfa.
Þá ætla ég að segja Króm til að leyfa þetta eins og heilbrigður.
Og nú, á aðeins augnablik, þú sérð mig, Já, ég.
Og ef hönd mín fer upp -
Ég hef fengið að ekki hreyfa minn höfuð á sama tíma.
Það er líka spegilmynd á skjánum.
Komdu, það við förum -
þú getur fært það á skjánum því það er líka þraut stykki - ó, þú
vita hvað það er, það er vegna þess að þú líka sjá skjávarpa skjár á bak við mig.
Þannig að við höfum smá óendanlega hlutur að fara á það.
>> Allt í lagi, þannig að ég ætla að spila hérna.
Þar við förum.
Svo er það líka ráðgáta stykki sem segir, þegar þú sérð hreyfingu undir
einn af sprites, getur þú hafa það fara upp, niður, vinstri, hægri eða þess háttar.
Þannig að við höfum smá sýndarveruleika gerast hér eins og heilbrigður, allt innan
takmörk vafranum mínum, bara hér nota webcam minn.
Svo hvað er þá á sjóndeildarhringnum.
Fyrsta vandamálið sett, eins og þú munt sjá, eða the website vilja fara online seinna
kvöld cs50.net, er nokkuð mikið að fara að vera opinn ended.
Og innleiða Scratch verkefni af áhugi til þú, leik, sem
samskipti, eitthvað listrænt og áskorun sjálfur að nota allir tala
þessara ráðgáta stykki.
Og það getur annað hvort að vera gagnvirkt á þennan hátt.
Eða það getur verið eitthvað meira vísvitandi gert til að segja sögu.
>> Og reyndar, það er þar sem við munum enda á í dag, með einum endanleg dæmi.
Leyfðu mér að fara inn í grunni á staðnum.
Leyfðu mér að fara á undan og opna þetta, og spila Einn síðastur forrit skrifað í einu
forvera þínum, þ.e. að einn hér.
Gott, hækka hljóðstyrk þessu.
>> [Tónlist spila]
>> Sögumaður: Á næstu CS50, David býður sjálfboðaliða onstage.
>> DAVID Malan: Í þessu mótmælum, við erum að fara að þurfa einum sjálfboðaliða.
Viltu koma niður?
Hvað er nafn þitt?
Að flytja á.