[Powered by Google Translate] [MUSIC ROCK]
[MUSIC - "HAPPY FLIMKIEN" il-fkieren]
DAVID Malan: Illum, aħna jibdew esplorazzjoni tagħna ta 'l-
fundamentali ta 'xjenza tal-kompjuter u l-introduzzjoni tagħna,
issa, l-arti tal-ipprogrammar, li dan huwa
biss eżempju wieħed.
Iżda fl-istess ta 'soluzzjoni ta' problemi, nafu li
Jum CS50 s Puzzle tradizzjonali hija għada.
Jekk inti ħadthom għadha RSVPed għal dan l-avveniment, inti tista 'tmur
cs50.net/rsvp.
Inti tista 'ġġib timijiet ta' tnejn jew tlieta jew erba '.
Inti ser tkun sfidata bi problemi bħall-waħda inti raw
up hemm fil-bidu.
Il-problemi kollha ġodda din is-sena jekk inti partook aħħar sena, u inti
se jkollhom ċans allura li tirbaħ xi premjijiet fabulous.
Fost dawn, Wii u xi ċertifikati rigal u simili,
kollha filwaqt mdendlin mal CS50 istudenti u l-klassi
u pizza u Facebook.
Allura aktar fuq li għada jekk inti tixtieq.
>> Dan allura huwa CS50, għal dawk tal inti jingħaqdu magħna għall-
ewwel darba.
U nafu li dan il-kors huwa partikolarment determinata li tikseb
inti permezz dan il-kors lill-aħħar finali tiegħu, f'liema punt int
se jkollu mhux biss għarfien ta 'dawn
fundamentali tax-xjenza tal-kompjuter, iżda inti se jkollhom
dan is-sett ħiliet prattiċi ħafna li inti tista 'mbagħad tieħu lura
dipartiment tiegħek, jekk huwa xjenzi inġinerija,
applikati matematika, x-xjenzi fiżiċi, naturali
xjenza, jew simili.
Tabilħaqq, dak hekk eċċitanti dwar ix-xjenza tal-kompjuter dawn
jiem hija li huwa biss hekk applikabbli għall
kull xorta ta 'oqsma.
U anki jekk illum, aħna ser biss tobrox il-wiċċ ta '
tradizzjonali ħafna programmar bil-lingwa magħrufa bħala C, aħna ser
minflok tħares lejn xi ħaġa imsejħa Scratch, xi ħaġa ma
li din l-istorja imħabba cookie ġiet implimentata minn wieħed mill tiegħek
predeċessuri fis-snin li għaddew, li tgħid l-istejjer, biex joħolqu logħob,
biex joħolqu arti interattiv, u li attwalment jibdew biex nagħlaq tagħna
imħuħ madwar xi wħud mill-constructs fundamentali li
sottostanti programmazzjoni iżda f'kuntest, kif tkun taf tara, li l-
ħafna inqas scary, li ħafna inqas arcane, minn se tara
qabel fit-tul.
U realizzata, wisq, għal dawk tal inti biss jingħaqdu magħna din
semestru, l-frażijiet li fuqhom għandna ntemmet lecture l-Erbgħa,
mhuwiex daqshekk importanti fejn inti tispiċċa relattiva għall tiegħek
klassi f'din il-klassi, imma fejn int, sa l-aħħar semestru tal-
fil-ġimgħa 11, jispiċċaw relattiva għall lilek innifsek dritt illum stess.
>> Allura mingħajr aktar dewmien, dan huwa wkoll min jinnota li
dawk inqas komdi, dawk x'imkien bejniethom, huma
ukoll, permezz tad-disinn ta 'dan il-kors, ma f'xi żvantaġġ
vis-a-vis dawk aktar komdi
bidu fis-din il-klassi.
Kif tkun taf tara matul il-ġimgħat li ġejjin, għandna differenti
binarji għall-isfond lura diverġenti, sezzjonijiet għal dawk
anqas komdu, aktar komda, dawk x'imkien
bejniethom.
Kif tkun taf tara dan il-weekend u ġimgħa d-dieħla, żewġ verżjonijiet tal-
settijiet aktar problema fil edizzjoni standard u Hacker tnejn hekk
li intom kollha tista 'tagħżel awto-fit-triq magħhom inti
huma l-aktar komdu.
>> Allura llum, aħna adsa fis din il-programmazzjoni
lingwa imsejħa Scratch.
Huwa lingwa ta 'programmar grafika, u madankollu jkollha l-
istess karatteristiċi ta 'wħud mill-lingwi ta' livell ogħla Aħna ser
tesplora aktar tard fil-semestru, fosthom C u
JavaScript u PHP.
Iżda huwa għaddej biex inessu biex jevitaw xi wħud mill-distrazzjonijiet
kmieni ta 'sintassi, affarijiet simili semicolons, parentesi,
u dettalji arcane oħra li,-ewwel daqqa t'għajn, huma biss mhux
fil-livelli kollha intellettwalment interessanti u għandhom tendenza li jiksbu fil-
il-mod minn xi fehim fundamentali.
F'termini ta 'issa l-istruttura ta' appoġġ qabel, realizzati dan
għodda, CS50 Iddiskuti, li se jkunu marbuta fuq il-kors tal-
websajt aktar tard illum, huwa l-forum ta 'diskussjoni onlajn fl-
li inti ser tkun kapaċi li jistaqsu mistoqsijiet ta 'xulxin u
persunal, u huwa wkoll għodda, kif aħna ser tara ġimgħa d-dieħla,
li aħna ser tuża pjuttost integratedly fil
uffiċċju siegħa kif ukoll.
Tabilħaqq, ħinijiet jibda nhar it-Tnejn, u franchement, l-ewwel
ġimgħa tal-ħinijiet tal-uffiċċju hija essenzjali pjuttost baxx.
>> Ma naħsibx li inti ser issib Scratch kollu li inaċċessibbli.
Huwa pjuttost ta 'spjegazzjoni, kif Ser naraw, u iva, liema
aħna ser tagħmel użu minnha għal-lum huwa li estratt xi wħud mill-
ideat fundamentali li se, imbagħad, jippersistu matul il-
bqija tas-semestru.
Iżda jibda Tnejn, fi 8:00 PM permezz 23:00 se jkun
uffiċċju siegħa Annenberg aktar minn waqfa moħħ.
Sezzjonali 2 se tibda illejla, hekk f'xi din
weekend, mur cs50.net/section, u tkun taf
jintalbu għadd ta 'mistoqsijiet.
Fost dawn, kif tiddeskrivi tiegħek
livell ta 'kumdità bħala ta' llum?
M'hemm l-ebda hard, regola malajr dwar min huwa li barmil.
Huwa biss il-tip ta 'ħaġa li inti probabilment taf jekk inti
huma fost dawk l-anqas komdu jew mod ieħor.
>> U issa, walkthroughs.
L-ispeċifikazzjoni sett problema għal din il-ġimgħa, kemm standard
u edizzjoni Hacker bl-istess mod, huwa online fuq cs50.net minn issa.
U tkun taf tara li l-ewwel minn dawn edizzjonijiet, il-
edizzjoni standard kull ġimgħa, hija akkumpanjata minn xi ħaġa li aħna
sejħa walkthrough kodiċi, sessjoni immexxi minn wieħed mill-
fellows tagħlim kors li jiggwidawk, jipprovdu
suġġerimenti dwar, u inti tikseb jistabbilixxi triq partikolari meta niġu
biex jibdew dawn is-settijiet problema.
Allura ma 'kull wieħed minn dawn problema settijiet, jekk int qatt jixtiequ
għalik innifsek fejn nista tibda, inti tibda ma 'dawn
walkthroughs.
U fil-fatt, ippermettili jintroduċu Zamyla Chan, dan
is-sena ta 'tagħlim sħabi li se jkun qed imexxi kull
waħda minn dawn walkthroughs.
Zamyla?
>> [Applause]
ZAMYLA Chan: Oh, hi kulħadd,.
Jisimni Zamyla.
I'ma inġinerija junior jistudjaw fl Winthrop Kamra.
Imma jien jippruvaw u tajbin fl kif ħafna korsijiet tax-xjenza tal-kompjuter kif I
tista ', u huwa għalhekk li jien verament eċċitati li jkun qed imexxi din
walkthroughs is-sena.
Walkthroughs, għalija, kien parti essenzjali tal-CS50 tiegħi
esperjenza.
Matul il-walkthrough, għal kull p-sett, aħna ser jgħaddu
il-problema stabbiliti flimkien, ħarsa fuq il-problemi, it-tip ta '
jaqsmuhom up fis gdim maniġġabbli.
I ser jagħtuk tips, tekniki, biex jinkiseb
permezz ta 'u jkollna beda.
Jien nittama li nara inti kollha fil-walkthroughs.
Jekk inti ma tistax tagħmel dan fil-persuna, imbagħad
jekk jogħġbok do tixgħel online.
>> DAVID Malan:. Eċċellenti
Grazzi, Zamyla.
Allura jirrealizzaw li walkthroughs huma, fil-fatt, fuq il-ġimgħa
wara nofsinhar, iżda dan huwa deliberatament permezz tad-disinn b'tali mod li
anki jekk youd pjuttost ma jattendu klassi nhar ta 'Ġimgħa
wara nofsinhar, il-videos se jkun f'idejn l-aktar malajr matul
il-weekend.
Allura jirrealizzaw li cs50.net se jkunu kollha ta 'l-Zamyla
walkthroughs.
U li hemm data tal-lum u l-ħin, 03:00,
Harberd Hall, 104.
U xi wħud mill-fellows tagħlim ppreparaw ukoll
xi rimarki għalik in absentia biex jagħtuk daqsxejn ta '
perspettiva dwar liema esperjenza tagħhom u l-bidu fis-
għeluq ta 'CS50 kien simili.
Mela jekk nistgħu dim-dwal għal ftit mument, I jagħtik
xi wħud mill-persunal CS50 s.
>> JACKSON STEINKAMP: I ħa CS50 aħħar sena bħala freshman fil-
jaqgħu, u huwa assolutament nefaħ my mind.
I qatt ma ħadet xi klassijiet ta 'programmazzjoni qabel,
u qatt daħal ma 'kwalunkwe xjenza tal-kompjuter
esperjenza fil-livelli kollha.
U biss, Smajt il-buzz dwar il-klassi u
ddeċieda li jieħu dan.
>> Julia MITELMAN: Kien verament gost, tassew involviment.
I għadhom, sal-lum -
I biss reċentement raw Għandi l-floppy disk li David tana
fl-ewwel jum tagħna ta 'lecture.
I kien mdendla fuq ħajt tiegħi.
Din hija probabbilment ftit nerdy, imma I mdendla fil dwar tiegħi
ħajt matul il-klassi bħala tifkira ta 'kif jiksaħ kien.
>> TRAVIS Downs: Huwa hekk imbarazzanti.
>> JACKSON STEINKAMP: Computer xjenza hija xi ħaġa li għandek
għandek tipprova anki jekk int ma wieħed għal
ix-xjenzi tradizzjonali.
Huwa l-esperjenza tagħha stess, u CS50 se tagħmel żgur li int
appoġġjati ukoll permezz ta 'dan ma' l-armata vera tagħha ta 'TFS.
>> ALI NAHM: I ħa bħala freshman, u so I magħmula ħafna
ta 'ħbieb ġodda.
I wkoll ltqajna introdotti għal dan konċentrazzjoni kollha u
iskola kollu ta 'l-inġinerija, u so I jirrakkomanda ħafna dan
u nilqgħek familja CS50 tagħna.
>> Yaniv YACOBY: CS50 biss tgħallem kif għandek tuża għodda
li huma ġeneralment aċċessibbli.
Inti biss bżonn laptop, għandek bżonn web browser, u inti
ħtieġa li jitgħallmu jiktbu xi kodiċi, u inti tista 'verament jibni
affarijiet pulita.
>> KAREN Xiao: Huwa biss hekk jibred biex ikunu jistgħu jagħmlu xi ħaġa
u lin-nies jużawh u lin-nies jarawha, u li l-
dak I really love dwar dan.
>> TIM MCLAUGHLIN: - sens ta 'komunità, naħseb, f'dan
aktar minn kull kors ieħor stajt meħuda s'issa kors.
Int mhux biss tieħu ieħor -
int ma timla ieħor rekwiżit.
Int mhux biss ser lectures u tmur taqsima.
Imma int tagħmel tunnellata ta 'affarijiet li huma kollha dwar
ipprogrammar u kollha dwar it-teknoloġija, iżda ma
verament jħossu bħal klassi maġġoranza tal-ħin.
>> Downs Travis: U fl-ewwel jum, huma mogħtija barra kejk, u
I kien istantanjament mibjugħa.
>> JACOB PRITT: kandju Ħieles u pizza.
>> ZAMYLA Chan: - x'inhu l-livell interess tiegħek, I think
li CS50, inti ser ikollok gost, u tkun taf tkun intellettwalment
stimulata.
>> MARKA GROZEN-SMITH: Huwa dejjem parti fil-klassi, u huwa
parti kull lejl li jaħdmu fuq tiegħek p-sett.
>> JACKSON STEINKAMP: Kull darba li inti finitura sett problema, inti
se jħossu bħal inti stajt lest proġett.
>> Melissa Niu: Kien sena freshman, u I kien sar shopping.
Kelli erba 'klassijiet tiegħi lesta, u I kien fil Annenberg.
U jien bump fis xi ħabib, u huwa jgħid, ħej, jien shopping
din il-klassi imsejħa CS50, u inti għandek come miegħi.
Spiċċaw tieħdu li jaqgħu, u wara dik il-klassi, I
ħsibt forsi jien ser minuri fil CS.
Imma hawn I am, tliet snin wara, xorta jistudjaw kompjuter
xjenza u fil-fatt jagħmlu dan bħala maġġuri, u I imħabba kull
mument ta 'dan.
>> ROB Bowden: Għandi l-ebda idea.
>> ALI NAHM: Ejja naraw.
>> Melissa Niu: craziness.
>> SPEAKER 1: inħoss bħal I d jkun ħafna cliché.
I d biss jgħidu, bħal, biża '.
>> Yaniv YACOBY: Aċċessibilità.
>> JACOB PRITT: kandju Ħieles u pizza.
>> TRAVIS Downs: Ma jistgħux nirrifjuta klassi li l-idejn out kejk.
>> TIM MCLAUGHLIN:. Enerġetiċi
>> Vipul Shekhawat: Essenzjali.
>> ROB Bowden: Let me think ta 'risposta.
I think I ltqajna xi ħaġa.
Oh, god.
Yeah, jien jisimni Rob Bowden, u dan huwa CS50.
>> [Applause]
DAVID Malan: Kull dritt, hekk ejja tibda żebgħa stampa
tad-direzzjoni li aħna tista 'tmur, u ejja jintroduċu
dan il-kunċett hawnhekk magħrufa bħala pseudocode.
Allura pseudocode mhix programmazzjoni
lingwa unto innifsu.
Huwa xejn tekniku per se, imma huwa biss tip ta '
mod ġenerali ta 'tesprimi lilek innifsek pjuttost b'mod preċiż,
pjuttost algorithmically, pjuttost proċeduralment, iżda mingħajr
ma joqogħdu jinkwetaw dwar dak lingwa li qed jesprimu
ruħek pulzieri
Huwa xi mudell ta 'l-Ingliż u lingwi ta' programmar ma
li jiġri li jkun familjari, hekk aħna tista 'tibda
bil-miktub dan it-tip ta 'ħaġa kif immorru.
U fil-fatt, Joseph, jista I tissellef inti up fuq il-palk li jkunu
scribe hawn?
Stajt marret quddiem hawn bil-quddiem u minsija li jpoġġu
fuq xi kalzetti llum, u dan ser ikun fost aktar tagħna
eżempji redikoli.
>> Issa, I bżonn inti hawn fuq.
I ser tagħmel il-parti kalzetti.
Allura hawnhekk għandna pad scratch ftit.
Dan huwa litteralment biss TextEdit fil Mac.
Aħna mhux fil-fatt se jikteb programm Runnable, iżda
aħna qed biss ser tibda Skeċċjar l ibbażata pseudocode
fuq xi wħud mill-avukat inti tipprovdi lili hawn.
Allura hawnhekk huwa pile tiegħi ta 'kalzetti fid-dar.
Għandi l-ebda kalzetti fuq meta I jinxtegħel fil-għodu, u aħna issa
ħtieġa li jikteb programm, algoriżmu ta 'tipi, li magħhom
biex tikseb dawn kalzetti fuq saqajn tiegħi.
U tul it-triq, ejja ara jekk irridu vjaġġ fuq, jew tiltaqa 'ma,
xi wħud mill-ideat li int ser ikollhom jibdew
ħsieb dwar ħafna aktar serjament meta jipprogrammaw
lest programmi tiegħek ma jaġixxix pjuttost kif maħsub.
>> So I joqogħdu bilqegħda hawn.
Stajt ltqajna munzell tiegħi ta 'kalzetti.
X'inhu l-ewwel ħaġa bniedem raġonevoli kieku
do meta l-għan huwa li jitpoġġew fuq par kalzetti?
Xi ħadd jagħti me pass wieħed, u wieħed biss pass.
Yeah?
UDJENZA: Ilwi l isfel.
DAVID Malan: Ilwi l isfel, Okay.
Pass 2.
UDJENZA: Aqbad suletta tiegħek.
DAVID Malan: Aqbad suletta tiegħek.
Okay, l-ambigwità tant żgħira hawn, u dan huwa wieħed mill-ewwel
xkiel blokki li aħna qed suppost deliberatament
jiltaqgħu hawn.
Huwa ftit ambigwa, hekk pick up suletta tiegħek.
Fine, jien ser tieħu dan wieħed, imma kompjuter, tirrealizza fi ftit
bit, mhux se jkollhom dik it-tip ta 'istint tal-bniedem għal ftit
pick-eqreb wieħed.
Aħna ser ikollhom jibdew, qabel twil, jesprimu
nfusna b'mod aktar preċiż.
>> Kull dritt, hekk pass 2 huwa pick up suletta tiegħek.
Aħna ser teħodha.
Pass 3.
Fil-dahar.
UDJENZA: Sib par tqabbil.
DAVID Malan: Sib par tqabbil.
Okay, għalhekk dan huwa tajjeb.
I kellhom jagħżlu dan suletta.
Allura l-għan huwa li tinstab suletta tqabbil, issa, imma dak
jfisser?
A bniedem raġonevoli li, ferm simili l-Erbgħa meta I biss
kien jaf kif issib Mike Smith fil-ktieb tat-telefon, biss tip ta '
marru ma istint tagħhom.
Iżda hawnhekk, huwa ovvjament dan suletta hawn, iżda tal-kompjuter
mhux se jkun hekk istintiv.
A kompjuter huwa se jkollu ġabra ta 'bits, kif aħna
diskussi nhar l-Erbgħa, u dawk li huma
organizzata b'xi fil-memorja.
Iżda l-punt huwa li l-kompjuter għandha biss il-kapaċità
li tħares lejn l-affarijiet wieħed fi żmien, u fil-fatt, anki aħna
bnedmin - anki jekk tħoss bħal I glanced isfel u qasma
2 tard Naf fejn il-suletta hija, moħħ tiegħi u l-għajnejn tiegħi
preżumibbilment ma a quick skim ta 'dawk kalzetti, u mbagħad maqfula
fuq il-wieħed fil-kwistjoni.
>> Allura jekk aħna tkun l-aktar intenzjonat issa bħala kompjuter,
kif nista 'nsib dan il-par tqabbil?
Ukoll, irridu jtenni.
Irridu forsi loop matul dan mess ta 'kalzetti fuq il-
art fejn I ngħid xi ħaġa simili GĦAL KULL suletta, pick it
up, U JEKK l-istess forma u daqs bħala l-ieħor, imbagħad
dot, dot, dot, aħna ser tkompli l-istorja.
Allura għal kull suletta, so I pick up dan wieħed.
I check hija din ugwali għal dan wieħed.
Mhuwiex, so I twarrab ġenb.
Imbagħad I jtenni mill-ġdid.
Huwa dan wieħed ugwali?
Le, mhuwiex, so I poġġih aside.
Huwa dan wieħed?
No
Dan wieħed?
Le, u oħrajn.
U mbagħad finalment, wieħed jittama, I se jiltaqgħu ma 'din suletta hawn.
Mela jekk huwa l-istess għamla, daqs, teħodha.
>> U issa, x'għandhom ikunu pass li jmiss tagħna hawn?
Yeah?
UDJENZA: Identifika dritt mix-xellug.
DAVID Malan: Okay, jidentifikaw lemin u xellug, sabiex
fortunatament, dan it-tip ta 'xogħlijiet.
A simetriċi ftit, jew stajt biss jintlibsu lilhom dak il-mod.
Kull dritt, hekk stajt identifikat il-lemin.
U issa, qabel we tipproċedi, let me punt dak Ġużepp
qed tagħmel hawn bħala tip ta 'programmer versed.
Għalhekk għal darb'oħra, hemm ebda mod wieħed kif isir dan, imma lil hinn minn sempliċiment
numerazzjoni il-linji, Joseph diġà bdew jagħmlu dan
tip ta 'indentazzjoni.
Tabilħaqq, dan huwa konvenzjoni komuni ħafna fl-ipprogrammar,
fejn meta inti tagħmel xi ħaġa iterattiv, looping stil, kif
aħna qed timplika bil-frażi Ingliża "GĦAL KULL
suletta, "il-konvenzjoni pseudocode u, kif aħna ser tara,
lingwi normali ta 'programmazzjoni, huwa biss inċiż.
Hit-ispazju bar għal xi ftit drabi, laqat il-ewlenin Tab jew simili,
b'tali mod li nested taħt "GĦAL KULL suletta" hija l-blokki ta '
Jittieħed li għandek bżonn tagħmel bħala riżultat ta 'dak loop.
Allura dak kollu li jwasslu semantikament.
Issa sadanittant, il-"Jekk huwa l-istess forma u daqs," il-
fatt li "Ħudu" hija inċiża wkoll ifisser biss
dan huwa l-unika ħaġa li għandek tagħmel jekk din il-kundizzjoni,
jekk dik il-fergħa, li furketta fit-triq, huwa fil-fatt veru.
>> Allura issa hawn, aħna qed dwar il-pass 4, jidentifikaw lemin u xellug.
Stajt identifikat id-dritt.
Agħti me pass 5.
U teknikament, nistgħu verament sejħa
l GĦAL KULL ħaġa -
inti għandek probabbilment jinnumera l-linji jekk
aħna qed tmur biex tagħmel dan.
JOSEPH: [inaudible]
DAVID Malan: [inaudible]?
Okay, multa, id-dritt, aħna ser tagħmel dan tiegħek mod.
Kull dritt, hekk pass 5, kif nistgħu nagħmlu l-suletta dritt?
Kif nistgħu tipproċedi jmiss, hawn?
Iva?
UDJENZA: Lift up riġel tal-lemin.
DAVID Malan: Lift up riġel tal-lemin, Okay.
Pass 6?
Malajr.
Yeah.
UDJENZA: Sib tarf miftuħ tal-suletta.
DAVID Malan: Okay, issib it-tarf miftuħ tal-suletta.
Allura tajjeb.
Allura hawn, onestament, l-istint komuni ħafna se jkun biss
jitqiegħdu fuq suletta dritt, iżda li wisq huwa pjuttost ambigwu.
Sakemm il-kompjuter jew bniedem jaf eżattament dak li tfisser,
huwa mhuwiex ser ikun li tesegwixxi li, hekk hawn, stajt
sabet li l-ftuħ ta 'l-istokk.
Pass 7?
UDJENZA: Touch għajnen tiegħek.
DAVID Malan: sieq Touch.
Okay, hekk issa we go -
Kull dritt, jien ser jieħdu xi libertajiet hawn.
Grazzi.
Pass 8?
Poġġi fuq suletta.
Okay, hekk issa I, think we qed qrib biżżejjed biex issolvi tad tieħu
dan wieħed fid-dar.
Kull dritt, għalhekk dan imur up.
I ser tieħu xi libertajiet ma 'dak li jfisser, fil-fatt.
Poġġi l-suletta fuq.
Kull dritt, issa pass 9?
UDJENZA: Poġġi sieq isfel.
DAVID Malan: Grazzi.
Pass 9, mressqa marda isfel, u issa, aħna tista 'tirrepeti.
Allura preżumibbilment, nistgħu issa tmur fil-pass 10 u jgħidu jidentifikaw
xellug suletta, iżda li preżumibbilment diġà sar.
>> U hekk imbagħad, nista sort ta irreperti dawn il-passi.
Iżda dan it-tip ta 'iqajjem il-kwistjoni.
Qabel, l-aħħar darba ridna li jirrepetu xi ħaġa, aħna
ma kien iteratively, għal darb'oħra u għal darb'oħra, a GĦALL
KULL loop biex ngħidu hekk.
Ikun jagħmel sens li tuża loop sabiex jimmaniġġjaw kemm
ix-xellug u l-suletta dritt?
Minħabba li jħoss simili dawn l-operazzjonijiet huma pjuttost ħafna
identika ħlief għall-fatt li wieħed jibda hawn u wieħed
tibda hawn?
Do we loop, jew nistgħu biss iżommu passi bil-miktub
10 u 11 u 12?
UDJENZA:. Loop
>> DAVID Malan: Okay, hekk loop.
I attwalment jista 'jkollhom qal biss iżommu għaddejjin.
Allura għaliex huwa dan il-każ?
Ukoll, dan huwa fil-fatt l-ewwel ta 'tagħna mhux ovvju
deċiżjonijiet tad-disinn, u fil-fatt, wieħed mill-metriċi li magħhom
aħna ser jibdew jevalwaw, għalina u għalik, il-
kwalità ta 'programm huwa kemm ukoll mfassla huwa.
Have you jsir l-ammont ta 'xogħol meħtieġ minimu li
x-xogħol isir l-aktar malajr, jew f'termini ta '
ħin tiegħek jew f'termini ta 'running time tal-kompjuter?
Kemm operazzjonijiet ma li tieħu biex tesegwixxi?
Allura forsi, din hija opportunità għal loop minħabba
malli nibda ikkupjar u pasta, bħala Joseph effettiv
kieku jibdew jagħmlu fil-mument, int tip ta 'ħela tiegħek
żmien, u int qed doppjament espressiva.
>> Iżda fl-istess ħin, dawn huma verament biss żewġ speċjali
każijiet, tax-xellug u tal-lemin.
U billi qabel, I jista 'jkollhom 10 jew 20 jew aktar kalzetti
munzell, huwa definittivament jagħmel sens li ma jkollhom 50-linji ta '
Kodiċi qal tivverifika din suletta, allura dak li jmiss,
allura dak li jmiss.
Hawnhekk, huwa ftit inqas ovvji, u jien proposti
li nistgħu jmorru jew mod.
Aħna jista 'jkollhom jew li loop, għalkemm biss loops
darbtejn, jew nistgħu sempliċiment kopja u paste biss ftit
hawn biex x-xogħol isir.
Iżda dan il-programm huwa Buggy, biex ngħidu hekk.
Jista 'jkollha xi żbalji, żbalji, jew każijiet kantuniera, hekk li
jitkellmu, li aħna ma verament tantiċipa.
Xejn li marret ħażin dan iż-żmien, imma dak setgħet marret ħażin
filwaqt li jesegwixxi dan il-programm?
UDJENZA: Inti ma għandekx xi kalzetti.
>> DAVID Malan: Allura jista 'jkun hemm l-ebda kalzetti hemmhekk tkun xi tkun.
Mela ejja jikkunsidraw il-każ kantuniera.
Mela jekk nistgħu iscroll lura sa pass wieħed, hekk pass wieħed kien
liwja isfel, biex din kontrolli out.
Pass 2, pick up suletta tiegħek, iżda mbagħad issib suletta tqabbil,
jidentifikaw id-dritt.
Aħna tip ta magħmula mazz sħiħ ta 'suppożizzjonijiet, u dan huwa,
franchement, għaliex il-programm kultant crash.
Jekk inti, il-programmer, għamlu ċerti suppożizzjonijiet, bħal
żgur hemm għaddej li jkun kalzetti jew żgur hemm għaddej
li jkun memorja jitħalla fil-kompjuter, żgur hemm għaddej
li jkun hemm spazju disk jitħalla fuq il-hard drive -
Ukoll, jekk inti tagħmel dawn is-suppożizzjonijiet, u li mhux,
fil-fatt, ir-realtà, li jaf xi kultant dak tal-kompjuter
se jagħmlu?
U xi kultant, meta ikollok l-ballun bajja għażil jew l-
Windows iffriżat jew simili, li preċiżament minħabba xi
programmer ma tantiċipa dawk il-każijiet kantuniera hekk imsejħa.
X'aktar setgħet marret ħażin f'dan il-programm?
Yeah?
>> UDJENZA: Inti ma għandekx riġel tal-lemin u riġel tax-xellug.
DAVID Malan: Okay, jista 'ma jkollhomx kemm riġel tal-lemin u
riġel tax-xellug, u għalhekk dan il-programm tista 'ma tkunx universalment
applikabbli.
Oħrajn?
UDJENZA: Inti jista 'jkollok telgħet suletta orfni.
DAVID Malan: I jista 'jkollhom telgħet suletta orfni, so a
mhux tqabbil suletta li biss għandha l-ebda aħwa għaliex stajt
mitlufa, huwa mqatta, huwa fil-ħasil xorta, jew simili.
Allura li, ukoll, ma verament ġie ttrattat.
Yeah?
UDJENZA: Inti tista 'diġà għandhom kalzetti fuq.
DAVID Malan: I jista 'diġà jkollhom kalzetti fuq.
I ma attwalment check.
JEKK inti ma għandekx kalzetti fuq, imbagħad tipproċedi biex tagħmel
Linja wieħed u tnejn.
U li jista 'jiġri.
Inti torqod bil kalzetti tiegħek fuq u simili, sabiex
li, wisq, każ kantuniera raġonevoli ħafna.
U forsi wieħed ieħor?
UDJENZA: Il-suletta huwa ġewwa barra.
DAVID Malan: Allura l-suletta huwa ġewwa barra, hekk għamilna l-ebda żball
verifika, fil-qosor.
Aħna ma jiċċekkja jekk l-istat tad-dinja huwa kif aħna nistennew.
Aħna ma jiċċekkjaw jekk aħna verament sabu dak li aħna qed tfittex.
>> U anke jekk din hija tip ta 'eżempju redikoli
jinvolvu kalzetti, fl-aħħar tal-ġurnata, dan huwa eżattament il-
tip ta 'mentalità inti jeħtieġ li jkollhom waqt miktub programmi,
anki fil Scratch kif ukoll fl-C, JavaScript, fil-PHP,
għaliex inkella, programmi tiegħek se juru l-
ekwivalenti ta 'dak ball bajja għażil jew biss jagħtu
riżultati eżatti.
Grazzi tant hawn għall scribe Joseph tagħna.
[Applause]
>> DAVID Malan: Kull dritt, iva, liema huwa, fil-
fatt, programm tal-kompjuter?
Ukoll, ejja tieħu t'għajn malajr fil-
rappreżentant wieħed hawn.
Allura dan huwa programm miktub b'lingwa imsejjaħ C. Ċ hija
lingwi pjuttost qodma dawn il-ġranet, iżda ħafna aktar ġodda huma mibnija
fuq quċċata ta 'dan.
Tabilħaqq, PHP, waħda mil-lingwi tal-web iċċentrati Aħna ser
jużaw lejn tmiem tul ta 'min, fih innifsu jkun dak li sejjaħ għal
interpretu, programm li bil-miktub fis-C, iżda aktar fuq dik
fil-ġimgħat f'ħafna minn issa.
Iżda dan il-programm, u dan huwa dak li tfisser li jiktbu
programm, għalkemm wieħed sempliċi ħafna.
Għandna xi sintassi pjuttost mistur hawn, imma int tista '
probabbilment raden, anki jekk inti stajt qatt programmati qabel, liema
dan il-programm ma.
Tabilħaqq, I do not know dak printf hu, iżda jistampa ċertament
conjures l-idea ta 'l-istampar xi ħaġa barra.
U hekk iva, dan il-programm huwa finalment se jistampa
il-kliem "Hello, Dinja."
>> Issa, jekk għandek Mac jew PC jew kompjuter Linux, odds
huma, għall-inqas jekk inti jitniżżel xi liberament
software disponibbli, inti tista ġew miktub programmi fuq
laptop tiegħek għal żmien pjuttost twil issa.
Fuq Mac OS, per eżempju, hemm dan il-programm imsejjaħ
Terminal li jiġi ma 'Mac, li normalment fl tiegħek
Utilitajiet folder, u dan ġeneralment tiftaħ iswed u
abjad jew tieqa abjad u iswed li fih inti għandek
pront fejn inti tista tip jikkmanda.
Allura dan huwa attwalment reminixxenti tal-kompjuters liema
użati biex tkun qabel grafika user
interfaces, GUIs, wasslilna.
Issa, fil-Windows, inti għandek mekkaniżmu simili fil-forma
tal-pront kmand.
>> Imma dak li jien ser tagħmel hawnhekk hija tiftaħ, ejja ngħidu,
TextEdit darb'oħra, hekk l-istess programm konna jużaw għall
pseudocode mument ilu, u jien ser jimxi 'l quddiem u
jiktbu program tiegħi ewwel.
Inkludi stdio.h, tkun xi tkun li tfisser, int prinċipali
null, tkun xi tkun li tfisser, u mbagħad fin-nofs hawn,
printf ("bonjour, dinja."). U mbagħad mill-qrib kwotazzjoni,
qrib paren, virgola.
Issa jien ser jimxi 'l quddiem u biss hit Kmand-S. Jien ser
biex jimxi 'l quddiem u ħlief dan bħala hello.c, sabiex il-konvenzjoni
id-dinja ta 'programmar C huwa l-isem tal-fajl c dot.
Jien ser biss jitqiegħed fil-direttorju dar John Harvard,
hawn, ikklikkja Save, u issa jien se jmorru fuq għal dan
tieqa terminal, li għal darb'oħra huwa dan pront iswed u abjad
fejn I tista 'tesegwixxi jikkmanda.
>> I tista 'taħdem programmi billi jittajpja l-isem tagħhom, mhux billi
double-tikklikkja ikoni fis-sens tas-soltu.
Imma l-ħaġa hija dwar C hija li lingwa bħal C 1
taqa f'din il-forma, xi ħaġa imsejħa kodiċi sors.
Xi ħaġa li jistenna ftit simili Ingliż imma hi
definittivament inqas bħal Ingliż minn pseudocode Ġużepp
mument ilu.
Huwa ftit aktar arcane.
Jidher li jsegwu xi mudelli jew regoli.
Il-fatt li għandi ċineg kaboċċi, semicolons, kwotazzjonijiet,
braces angolu, jħoss bħal kompjuter ħarāet bil din
tip ta 'lingwa.
Imma jekk immur, issa, għal dan tieqa terminal, I tista 'taħdem
kmand li għaddej biex jikkonverti dak il-kodiċi ta 'sors
xi ħaġa imsejħa kodiċi ta 'oġġett.
Li għaddej biex jikkonvertu l-Ingliż bħall-sintassi li żerijiet
u dawk, l-istess xorta ta żero u dawk aħna
tkellem dwar l-Erbgħa.
Issa, jien ser tmexxi kmand imsejjaħ clang.
Aktar dwar dan fil-ġimgħat li ġejjin, iżda huwa programm bi
li nista jikkonvertu hello.c fis-mazz sħiħ
ta 'żero u dawk.
>> Issa, stajt run dan il-kmand.
Stajt run clang, u mbagħad I qal jimxu lilek innifsek fuq dan il-fajl
imsejħa hello.c, li I ħolqot mument ilu, u
xejn jidher li jiġri.
Iżda fil-fatt, jekk I poked madwar id-direttorju dar tiegħi, jiena nara
li dan il-programm a.out stupidly jismu issa teżisti.
Dan huwa biss l-isem default għal programm meta tikteb fil
C. Nistgħu jiskarta dan eventwalment, iżda a.out huwa l-
isem tal-programm I biss konvertita żero u dawk.
U issa li l-żerijiet huwa s u dawk, Mac tiegħi, f'dan il-każ, jew
PC Windows tiegħek, tista 'tifhem dawk bits, dawk
żero u dawk.
U hekk meta I hit Ikteb, I ara "hello, dinja!"
>> Imma hija Buggy daqsxejn.
I ma pjuttost jgħidu "bonjour dinja,: arja: -! Jharvard." Bl-ajru huwa
l-isem tal-kompjuter tiegħi.
Jharvard l-isem tal-kont, iva, liema ma I b'mod ċar
jħalli barra mill-programm?
Xi tip ta 'waqfa linja.
I ma hit l-ekwivalenti ta Ikteb jew il-ġarr ritorn,
u dan huwa, għal darb'oħra, xhieda tal-fatt li l-kompjuters tista '
biss tagħmel dak li jgħidulhom li jagħmlu.
U l-fatt li jien ma tgħid il-kompjuter jimxu l-
cursor għal-linja li jmiss -
ukoll, huwa ċertament mhux se biss tagħmel dan
presumptuously għalija.
Mela jekk immur lura għall-programm tiegħi, u jien ngħid \ n -
Allura \ N, kif aħna ser malajr tara, huwa l-mod ta '
jirrappreżentaw affarijiet stramb bħal karattri linja ġodda, affarijiet
li kieku tkun ir-riżultat ta '
laqtu l-Enter.
Iżda għal issa, biss jafu li laqtu l-Enter se
biss tagħmel kodiċi tagħna ħarsa fard, sabiex id-dinja iddeċieda, inti taf
dak, li żżomm affarijiet prettier, li dan jinżamm fuq linja waħda, ejja
biss jgħidu \ N jirrappreżenta linja ġdida.
Let me resave-fajl tiegħi, mur lura għall-tieqa terminal, u
-ripetizzjoni a.out, Ikteb.
Still Buggy, iżda għaliex?
>> UDJENZA: [inaudible]
DAVID Malan: Yeah, so I bżonn li recompile dan.
Allura biex jikkompila programm sempliċiment ifisser jaqilbu mis-sors
kodiċi għall-kodiċi oġġett, source code għall żero u dawk.
Issa, is-sempliċi fatt li I hit Ħlief dan TextEdit m'għandha l-ebda
effett fuq dawk żero u dawk minħabba I ewwel jeħtieġ li
tell clang ħej, stajt mibdula dawk il-linji ta 'kodiċi, il-
kodiċi tas-sors.
Ikollok bżonn li jirriġeneraw a.out.
Xejn jidher li ġara, iżda fil-kompjuter,
fi linja tal-kmand, biex ngħidu hekk, jiġri xejn meta,
li normalment ifisser kollox huwa tajjeb.
Meta xi ħaġa ma jiġri, dan ifisser
inti messed up, ġeneralment.
>> Mela ejja issa mur a.out, u tabilħaqq issa, għandi "hello,
dinja. "
U issa, xi ngħidu dwar dawn żero u dawk?
Fejn, fil-fatt, huma dawk?
Well, I ma tistax verament biss tip ta 'poke madwar ħafna
b'mod effettiv.
Let me jiftħu TextEdit.
Hawn a.out.
Let me imorru quddiem u tiftaħ dan, u dan huwa dak li apparentement tiegħi
Programm Dehra.
Allura stajt miftuħa, mhux hello.c, iżda a.out.
Iżda dan huwa attwalment mhux dak program tiegħi hija verament.
Ovvjament, dan huwa xi tip ta 'karattri alfabetiċi.
Nara l-ebda żero u dawk, iżda dan huwa
minħabba a.out huwa programm.
Żero u dawk - imma TextEdit, kif tissuġġerixxi l-isem, huwa
bħad notepad fuq Windows, huwa biss editur test, dan huwa
konfużjoni kollha ta 'dawk żerijiet u dawk li
għalkemm dawn kienu, liema?
Karattri ASCII.
>> Allura lura nhar l-Erbgħa, aħna biss ħarāet bil din
immappjar arbitrarja ta 'numri, jew bits, għall-ittri ta' l-
alfabett u simboli punteġġjatura u simili.
Allura TextEdit, li huwa editur test għamlet interpretazzjoni żbaljata
dawk il-mudelli ta 'żero u dawk li huma mistennija li jkunu
istampar kliem, bħal "hello, dinja." Huwa jesponuhom
kif ASCII, u hu għalhekk li jistenna messy ftit.
Issa, hemm xi ħjiel ta 'korrettezza fil hawn.
Avviż jekk I jenfasizzaw, hemm ħjiel ta 'fatt "hello,
dinja, "sabiex x'imkien f'dak il-programm huwa
is-sentenza I kiteb.
Imma ejja imorru quddiem u issa ara ma 'programm differenti.
Din mhix waħda aħna ser tuża din ta 'spiss, iżda wkoll ma
Mac u se jkun ġewwa ta 'l-appliance CS50.
Let me imorru quddiem u tiftaħ ma 'programm imsejjaħ XXD.
>> Lura fil-ġurnata, bosta programmi kienu ssemmew b'mod ġust cryptically,
u għalhekk it-tendenza tkompli.
Iżda-b ifisser bżiq dan il-programm kif binarja.
Ma run.
Uri lili bħala żero u dawk, u dan huwa l-Ċ
program aħna biss kiteb.
Issa, I, bħala bniedem hawn, jien onestament ma jkollu ebda idea dak li
dawn it-tendenzi differenti ta 'żero u dawk jirrappreżentaw.
Lura fil-ġurnata, I, bl punch cards tiegħi jew bħalhom, kieku
attwalment ikollhom ħarsa sa liema dawn it-tendenzi differenti ta '
01111000, attwalment jirrappreżentaw.
Jew agħar, nixtieq bżonn tagħmel l-ippanċjar jew il-ħolqien
ta 'dawn it-tendenzi ta' żero u dawk.
Iżda għal issa, jieħdu fuq il-fidi li CPU, Intel ġewwa, sabiex
biex ngħidu hekk, ġewwa ta 'kollha ta' kompjuters tagħna f'dawn il-jiem, jaf
kif jinterpretaw dawn żero u dawk.
U xi żero u dawk jfissirx istampar.
Xi żero u dawk jfissirx play ħoss.
Xi zeroes u dawk jfissirx jieħdu jintuza mill-utent mill-keyboard.
Hemm kull xorta ta 'mudelli differenti, iżda aħna Thankfully,
bħala bnedmin, biss ġeneralment bżonn ninkwetaw dwar l-ipprogrammar mill-
dan pjuttost ogħla livell.
U fil-klassijiet CS oħra jistgħu ma wieħed jidħol aktar fil-fond l isfel u jfittxu
lejn affarijiet bħall-dawk żero u dawk, jew għadhom
affarijiet oħra għadhom.
>> Allura issa ejja jikkonvertu dan.
Ejja jimxu malajr ħafna bogħod minn C u jimxu lejn xi ħaġa
ftit aktar comforting, ftit aktar eċċitanti, f'dak
nistgħu tikseb lura animazzjonijiet tagħna u ħsejjes u simili li
b'mod ċar ikunu ħarbu magħna f'dan il-
pjuttost primitive interface.
Allura dan il-programm istess Ċ jistgħu jkunu rappreżentati issa f'dan
lingwa ta 'programmar imsejjaħ Scratch kif ġej.
Dan huwa l-ekwivalenti ta 'dan il-programm dinja bonjour miktub
dan puzzle biċċa l-istil tal-lingwa imsejħa Scratch.
So let me go l quddiem u tiftaħ dan il-programm ħafna.
Huwa sejjaħ għal darb'oħra Scratch.
Huwa liberament disponibbli, u din hija l-istess ħaġa aħna
bdiet illum fuq.
>> Allura dan hawnhekk huwa Scratch, u huwa maqsum ftit
biċċiet differenti.
Dwar id-dritt nett, aħna għandna l-istadju hekk imsejħa, u
fil-fatt, li meta l-cookies
mwettqa biss daqsxejn ilu.
U fuq l-istadju huma affarijiet msejħa sprites, karattri, jew
oġġetti, jew entitajiet.
Hija ma verament jimpurtax kif inti taħseb minnhom, imma huma
huma programmabbli, ħwejjeġ mobbli, u f'dan il-każ, dan
programm li student kiteb tagħna għandha koppja ta 'gingerbread
cookies, koppja ta 'cookies ċirkolari, mazz sħiħ ta'
qlub, mazz sħiħ ta 'nuċċalijiet.
Minħabba dan, hu jew hi kapaċi programm kull wieħed minn dawn
karattri individwali separatament.
>> Issa, dak ma jfisser għall-programm dawn il-karattri?
Well, let me imorru quddiem u kklikkja fuq dan cookie naħa tax-xellug
u iscroll fuq ix-xellug ta 'fuq hawn.
Fl-xellug ta 'fuq tal-iskrin tiegħi issa hija l-
hekk imsejħa skripts qasam.
Dan huwa tip ta 'lavanja vojt, inizjalment, fuq liema nista
drag u qatra biċċiet puzzle li, franchement, jagħmlu
eżattament dak li jgħidu.
Fuq nett ta 'dan il-munzell ta' biċċiet puzzle hija l-kelma
Meta Bandiera Ħadra għafast, u jekk inti ma Avviż qabel,
il-mod bdejt li l-kanzunetta cookie kienet tikklikkja, litteralment,
aħdar bandiera.
Allura li l-biċċa puzzle fil quċċata xellug hemm jfisser meta l-
klikks tal-bniedem l-bandiera aħdar, ipproċediet biex tagħmel
l-affarijiet li ġejjin.
>> Issa, dak ma huma cookie tipproċedi biex tagħmel?
I ma verament jafu kif jinterpretaw dan s'issa, iżda l-
cookie apparentement stabbiliti groove tagħha għal żero, allura stennew
tliet sekondi, imbagħad mibdula grupp tagħha għal waħda, allura
stenniet tieni, allura mibdula tagħha
lura groove għal wieħed.
U allura dan fil-fatt qisu daqsxejn ta 'bug, m'għandux
jkollhom jibdlu groove tagħha ġdid u għal darb'oħra sakemm huwa
qed jinbidlu x'imkien ieħor, iżda din is-serje ta 'passi huwa dak
tiddetta l-aġir ta 'dan cookie partikolari.
Mela ejja fil-fatt scroll lura u mhux tħares lejn xi ħaġa
pjuttost tant kumplessa s'issa.
Let me imorru quddiem u mur File, New,
u jiksbu lavanja nadif.
>> Allura issa, I tabilħaqq żona iskrittura vojta, stadju vojta,
bl Scratch tagħna Sprite default, u fuq ix-xellug ta 'fuq
fuq l-iskrin tiegħi għandi l-pallet ta 'kull tal taghhom
biċċiet disponibbli puzzle.
U aħna mhux se jmorru permezz kważi li ħafna minn dawn l-affarijiet
illum għaliex, għal darb'oħra, ħafna minnhom huma ta 'spjegazzjoni, iżda aħna se
jippruvaw jikkategorizzaw lilhom u tfakkar l-similaritajiet
ma 'dawn il-lingwi futuri li aħna se adsa.
U fl quċċata xellug hawnhekk huwa l-ewwel Meta Bandiera Ħadra għafast,
so let me drag dan hawn fuq, zoom out a bit.
U jekk I ikklikkja l-bandiera aħdar, xejn verament jiġri minħabba
I ma mehmuża ebda loġika, kwalunkwe stqarrija biex ngħidu hekk, biex
dik il-bandiera aħdar, so let me go sal-
Kategoriji minn hawn.
Jien bħalissa fil-kategorija ta 'Kontroll.
Jien minflok se jinżlu għall-kategorija Jistenna, u
hemm mazz sħiħ ta 'affarijiet hawn li tgħid Say,
Aħseb, Bidla Costume Kulur Iswiċċ,.
>> Allura inti tista 'tagħmel affarijiet iblah mal-kostumi u
ħsejjes u simili.
Let me imorru quddiem u biss jgħidu Say, u issa avviż kif I drag
u qatra din il-biċċa puzzle, li għaddej biex jridu lukkett
fil-forma korrispondenti.
Allura meta I aqbad u itlaq ġurdien tiegħi, huma lock
flimkien, u issa jekk immur hawn fuq u kklikkja l-bandiera aħdar,
il-qattus ma fil-fatt jgħidu bonjour għaliex dan huwa dak li hu ġewwa
ta 'din il-kaxxa bajda.
Aħna ser malajr tara li din il-kaxxa bajda huwa dak li jissejjaħ
argument, jew parametru.
Huwa mod ta 'jinbidlu l-imġieba ta', f'dan il-każ,
puzzle biċċa, imma jekk irrid ngħid eżattament dak li għidt
qabel, jgħidu bonjour, dinja, I issa tista 'tmur lura fuq hawn,
ikklikkja play, u "hello, dinja" huwa dak qal.
>> Allura aħna litteralment programmazzjoni issa.
Huwa mhux kollha li konvinċenti ta 'programm, iżda mill-inqas
huwa ftit xi ħaġa aktar konvinċenti minn dik jistenna, bi
Ewwel daqqa t'għajn, bħal dan.
U nistgħu malajr ħafna jiksbu l-aktar espressiva
għaliex fil Scratch, bħal fil-lingwi l-oħra, hemm kollha
xorta ta 'dikjarazzjonijiet, mhux biss Say jew stampar xi ħaġa, iżda
inti tista 'tagħmel affarijiet simili ta' stennija, kif aħna biss raw ma '
il-cookie, xi numru ta 'sekonda.
Inti tista 'tilgħab ħsejjes fl-ambjent ta' Scratch biss
bħal inti tista 'fil-ħoss tal-kompjuter normali play programm.
Tista 'tiċċekkja liema huma msejħa espressjonijiet Boolean.
Allura issa, ejja nibdew biex iżżid toolkit tagħna xi terminoloġija
li attwalment tirrigwarda l-eżempju li Joseph u jien ma
hawn mal-kalzetti.
Allura dikjarazzjonijiet huma biss dikjarazzjonijiet ta 'fatt.
Agħmel dan.
A direttiva għall-Sprite, jew me-bniedem, li jagħmel xi ħaġa.
A espressjoni Boolean hija xi ħaġa li għandha valur, ta '
hekk imsejħa verità valur, li jew żero jew wieħed, falza jew
vera, off jew fuq, l-ebda jew iva.
Ma verament kwistjoni kif inti taħseb ta 'dan, imma hija
istat binarja.
Kif Nate diskuss fil-video l-Erbgħa, 2
affarijiet differenti.
>> Għalhekk fl Scratch, espressjonijiet Boolean jiġri li tħares
bħal dawn l-oġġetti blu hawn, u f'dan il-każ, il-kwistjoni
marka jimplika li int tistaqsi mistoqsija.
Huwa l-qattus, jew il-Sprite, li jmissu l-mouse pointer?
Allura dan huwa biss eżempju wieħed ta 'blokka scratch li għaddej
biex inessu biex jiċċekkjaw iva jew le, huwa l-ġurdien jmissu l-
Sprite fuq l-iskrin?
U dan jista 'jkun utli jekk inti fil-fatt tixtieq li tagħmel affarijiet
bil-maws.
Minbarra l-espressjonijiet Boolean, aħna għandna l-affarijiet
bħall huwa l-maws 'l isfel, sabiex inti tista' tiskopri dak it-tip ta '
kwistjoni kif ukoll.
Nistgħu nagħmlu l-matematika jekk inti fil-fatt tixtieq, u hemm
użi attwalment aktar konvinċenti għal dan milli sempliċiment pur ta '
aritmetika, kif Ser naraw.
Randomness Psewdo u jagħmlu program tiegħek jidhru li jaħsbu
jew jġib ruħu differenti bbażata fuq xi valuri apparentement każwali,
u allura għandna affarijiet simili espressjonijiet Boolean simili U.
Mela jekk inti fil-fatt tixtieq li jiċċekkjaw żewġ valuri, Ser naraw fil
Scratch li nistgħu attwalment test jekk dan huwa
vera u dan huwa veru.
Per eżempju, fil-każ ta 'kalzetti tiegħi, I jistgħu stajt fil-
ħafna aħħar staqsa l-mistoqsija jekk suletta tax-xellug huwa fuq u tal-lemin suletta
huwa fuq, nieqaf.
Inti kollha magħmula għall-ġurnata, sabiex ikun
opportunità għal dan.
>> Mela ejja imorru quddiem u jippruvaw biċċa xi wħud minn dawn flimkien
u jmorru fi ftit eżempji iktar
konvinċenti minn dan wieħed.
So let me aqbad hawn u jiftħu xi wħud mill-eżempji
li dejjem se jkun fuq il-websajt tal-kors kif ukoll, u
jiftħu hello2.
Għalhekk fl hello2 hawn, għandna programm li qed jagħmel ftit
affarijiet, imma hija ma nagħmilx hekk b'mod effettiv kif nistgħu.
Allura hawnhekk jgħid "hello, dinja" għat-tieni waħda u mbagħad tistenna
għat-tieni.
U mbagħad ma darb'oħra, u mbagħad ma darb'oħra.
Mela jekk jien ikklikkja l-bandiera aħdar, Scratch jgħid "Hello, dinja.
Hello. Dinja,
Hello, dinja. "U dan huwa ovvjament kandidat issa għal
titjib.
>> X'hemm-titjib marġinali, wieħed jittama, nistgħu
issa tagħmel jekk Scratch jappoġġja l-kunċett?
Xi tip ta 'linja.
Xi tip ta 'ripetizzjoni, issa, ikun sbieħ, so let me
fil-fatt jipprovaw dan.
Let me fil-fatt imorru u jimxu dan.
Allura avviż jista 'jinqata blokki faċilment daqs inti tista' żżid l-
jehmiżhom.
Let me go taħt Kontroll, iscroll stabbiliti hawn, u fil-fatt,
hemm din il-biċċa puzzle hawn, Irrepeti u Forever u
Forever Jekk.
Allura hemm numru ta 'modi li jesprimu constructs looping
fil Scratch.
Il-wieħed I probabilment tixtieq hawnhekk mhix Forever minħabba I biss
tridx dan iseħħ tliet darbiet, iżda probabbilment Irrepeti.
So let me jkaxkru Irrepeti hawn fuq, drag u qatra, u
issa minflok qal "bonjour, dinja" tliet darbiet separati,
let me drag din il-biċċa puzzle fil hawn.
U anki jekk ma jidhirx li jitwaħħal, il-programm huwa intelliġenti
biżżejjed biex tirrealizza dan se jikbru biex timla, dan huwa l-
forom dik il-kwistjoni, u mhux id-daqs assolut.
Let me jibdlu l-ripetizzjoni għal tlieta, u issa let me go
quddiem u drag Stenna Wieħed Tieni fil hemm ukoll.
Huwa ser snap fil ukoll, u hekk issa jien ser jkaxkru
dawn guys minn hawn u ftit tarmihom minħabba I
ma jeħtiġuhom aktar.
Let me zoom out u kklikkja l-bandiera aħdar issa, u aħna għandna
l-istess programm, iżda, kif I mbassra qabel, aħjar
mfassla għaliex inti tista 'jimmaġina kif bad dan il-programm
se tikseb, ċertament estetikament, jekk kellek biex
tibda l-ikkupjar u pasta, ikkupjar u pasta, jew
jittrattienu u twaqqa l-affarijiet darn istess ġdid u għal darb'oħra.
>> Issa, sempliċiment tgħid għalf fuq l-iskrin, l-istampar għall-
iskrin, verament kollha mhux li eċċitanti, so ejja tiftaħ
varjanza 3 hawn.
U issa, kif tkun taf tara, dan ser malajr jiksbu annoying -
[Meow]
DAVID Malan: - imma hija wkoll tip ta 'ħelu.
[Meow]
DAVID Malan: Okay, hekk aħjar, u nistgħu ċertament jużaw dik
transizzjoni istess Tkissir fi bċejjeċ dan up fis looping
istruttura, imma ejja jagħmluha aktar interessanti xorta.
>> Let me imorru quddiem u tiftaħ varjanza 4 hawn, fejn I
jieħdu l-affarijiet pass ulterjuri.
Allura skond dan, għalkemm dan huwa iblah fl-ewwel
t'għajn, dak li huwa dan il-programm se jagħmlu?
Huwa ser meow darba.
Għaliex?
Ukoll, wieħed huwa, safejn naf, dejjem inqas minn tnejn.
M'hemm l-ebda kunċett ta 'randomness hawn.
Stajt litteralment hard-kodifikati wieħed u tnejn, imma din hija
Eżempju issa li attwalment jużaw espressjoni Boolean.
Ħafna bħal kif Joseph għamlet fil pseudocode tiegħu, l-indentazzjoni IF
issib kalzetti tqabbil imbagħad tagħmel dan li ġej, hawnhekk għandna
espressjoni IF waħda hija anqas minn 2 Imbagħad -
u fil-fatt aħna anke jkollhom xi ftit ta 'indentazzjoni,
fejn il-vjola huwa kemmxejn indentati lejn il-lemin -
Imbagħad int ser jilagħbu l-meow ħoss.
Issa, f'dan il-każ, li wieħed huwa dejjem anqas minn tnejn, għalhekk dan
huwa tip ta 'skart ta' kundizzjoni.
Iżda aħna ser tkun tista, kif aħna ser tara, li plug affarijiet oħra fis
dawn placeholders fejn wieħed u tnejn issa huma.
Mela ejja issa javvanzaw għal eżempju 5 ta 'dawn bosta
hellos u ħarsa lejn dak li dan il-programm għaddej biex tagħmel.
>> Allura issa, f'sentenza Ingliż, kif ma dan
Programm jaġixxu?
UDJENZA: Meows nofs il-ħin.
DAVID Malan: nofs Meow tal-ħin, għalhekk dan huwa mod ta '
jwasslu idea sempliċi ħafna.
Anki jekk aħna jiġri li tkun qed tuża xi inugwaljanzi hawn
f'xi numri, dan huwa verament ftit programmatical
mod, mod preċiż, ta 'tgħid jekk il-munita jitla irjus, mur
quddiem u meow.
Jew bil-maqlub, jekk il-munita jitla 'dnub, ma meow.
U f'dan il-każ, kif nistgħu jesprimu dak?
Aħna ser pick numru każwali minn 1 sa 10, u jekk dik
in-numru huwa inqas minn 6, imorru quddiem u meow.
U kif ma din tikseb fil hawn?
Ukoll għal darb'oħra, l-avviż biss il-jittrattienu u twaqqa u
affarijiet lukketti fil-post.
>> Allura issa ejja ara jekk dan randomness xogħlijiet.
Let me imorru quddiem u kklikkja l-bandiera aħdar.
[Meow]
DAVID Malan: Okay.
[Meow]
DAVID Malan: Okay.
Okay, tajba, hekk aħna ltqajna kapijiet, irjus, dnub effettiv.
Dnub.
[Meow]
DAVID Malan: Kapijiet.
[Meow]
DAVID Malan:. Eċċellenti
Huwa dejjem skomdi meta biss statistikament ikollok bad
run, u huwa l-irjus, u l-programm fil-fatt ma
xogħol bħala youd tama.
Iżda dan iż-żmien, hija maħduma, u aħna jidhru li jkollhom, jekk aħna ma
dan in-numru ta infinit ta 'drabi, odds 50%.
Issa mill-ġdid, mhux kollha li interessanti, biss tagħmel qtates
meow, so ejja ara jekk aħna ma tista 'quddiem din id-daqsxejn aktar
hawn fil-verżjoni 6.
Allura issa, aħna għandna verżjoni verament annoying -
[MEOWS kull ftit sekondi]
DAVID Malan: - u dan huwa dak magħruf, ġenerali, bħala
infinita loop.
>> Loop infinita Allura f'dan il-każ iħoss ħżiena.
Huwa definittivament se tibda ħoss ħażina, u għadhom infinita
loops mhumiex dejjem ħżiena.
Tista 'taħseb ta kuntest programmi tal-kompjuter fejn youd
fil-fatt tixtieq li loop infinita?
Yeah?
UDJENZA: Meta inti tixtieq li jiċċekkjaw kundizzjoni.
DAVID Malan: Okay, meta inti tixtieq li żżomm kontroll kundizzjoni?
Bħal dak?
UDJENZA: [inaudible]
DAVID Malan: Okay, tajba, hekk jekk kellek xi programm, xi
tip ta 'ħaġa awtomazzjoni dar, fejn inti tixtieq li kontinwament
monitor huwa xi ħaġa tal-każ.
Huma l-dwal fuq?
Huma l-dwal fuq għaliex forsi għandek timer, u
inti tixtieq li tmur off, jista 'jkollok bżonn tagħmel xi ħaġa
ġdid u għal darb'oħra.
U fil-fatt, taħdit ta 'tajmers, kwalunkwe inti li
arloġġi fuq il-kompjuter tiegħek jew arloġġi diġitali, li l-
infinita loop.
Hija tkompli taġġorna l-ħin għaliex dan huwa kontinwament
verifika u l-iċċekkjar u l-kontroll għandu l-ħin inbidel,
u jekk iva, oh, god tiegħi.
L-arloġġ s finalment mibdula.
Jeħtieġ juri li valur lilek.
Allura billi ħafna mill-linji infinita ta 'żmien huma żball,
jew għall-inqas għal deċiżjoni disinn fqir, xi kultant dawn ma
jkollhom valur tagħhom.
>> Ukoll, ejja avvanz ulterjuri hawn biex hello7.
Allura issa l-programm se tikseb ftit aktar interattiv.
Let me zoom fil hawn, u għal darb'oħra, dan huwa dak sbieħ
dwar Scratch.
U aħna ser tagħmel użu minnha biex tkun ċara, Scratch, biss illum u fil-
problema ġimgħa d-dieħla stabbiliti.
Iżda nhar it-Tnejn, aħna adsa fis C. F'dan il-programm hawn, dan huwa minnu,
dejjem, dan li ġej.
JEKK tmiss il-mouse pointer - issa, li hija l-
kuntest hawn?
Ukoll, u avviż li min s magħżul stabbiliti hawn fuq qiegħ
dritt huwa l-qattus, Sprite waħda, sabiex dawn skripts, dan
programm, japplika għalih speċifikament.
Mela jekk li l-qattus huwa jmissu l-mouse pointer, allura huwa għaddej
jilagħbu din il-isfel u stenna żewġ sekondi, u
imbagħad irrepeti nauseum ad.
>> Mela ejja imorru quddiem u hit play.
Xejn jiġri, imma jekk irrid domestiċi tal-
qattus issa, nista 'sempliċiment.
[Meow]
DAVID Malan: Adorable.
[Meow]
DAVID Malan: Okay, inqas annoying, iżda wkoll gets matt,
hekk ejja jimxu fuq u ara jekk ma nkunux nistgħu tinjetta
loġika ftit aktar.
Dan kien eżempju 7.
>> Hawn fl-eżempju 8, aħna qed tmur biex
jintroduċi kundizzjoni IKTAR.
Allura ħafna bħal furketta litterali fit-triq, fejn inti tista 'tmur
xellug jew inti tista 'tmur dritt, kundizzjoni ta' programmazzjoni
lingwa bħal Scratch, jew kif aħna ser tara C, jistgħu jippermettu li inti
jmorru f'direzzjoni waħda jew oħra permezz ta 'IF IKTAR jinbena.
Allura pjuttost litteralment, JEKK jmissu mouse pointer, dan
se tilgħab xi ħoss, IKTAR li għaddej biex jilagħbu din il ieħor
, ħoss meow.
Issa, jekk inti tista 'tiddeduċi mill-isem ta' dawn il-ħsejjes, inti tista '
probabbilment raden dak dan il-programm kien ifisser li jevokaw
l-idea ta '.
Dan qattus huwa meowing heureusement.
[Meow]
DAVID Malan: B'xorti tajba, iżda ma
pjuttost simili li tintmess.
[Roars]
DAVID Malan: Allura issa għandna qattus li se Yell fi inti.
>> Kull dritt, ukoll, eżempju wieħed aħħar ma 'qtates hawn, u
ejja verżjoni miftuħa 9 ta 'dan hawn.
Allura issa, aħna għandna l-ħoss jmiss l-aktar tedjanti li stajt
isibu, hekk aħna walrus jew iljun baħar hawn li għaddej biex
tagħmel dan li ġej.
[QOXRA SIĠILL]
DAVID Malan: Okay, għalhekk dan se jmorru fuq sakemm inti figura kif
dan il-programm tax-xogħlijiet.
Allura dan iż-żmien, dan l-annimal għandha żewġ skripts, u x'hemm
interessanti hawnhekk huwa li dawn skripts huma ser tesegwixxi
b'mod parallel.
Allura għaliex it-tnejn jibdew ma 'waħda bandiera aħdar għafast,
huwa simili tmur bħal dan, u ż-żewġ programmi jibdew ġestjoni tiegħu
ladarba anki jekk dawn qed looping għal dejjem.
Għalhekk fl-iskrittura fuq, għandi xi loġika.
Xi karatteristiċi ma li tipprovdi up hemm?
[QOXRA SIĠILL]
UDJENZA: [inaudible]
DAVID Malan: Jekk huwa dak?
[QOXRA SIĠILL]
UDJENZA: Jekk siekta għal żero, li għaddej biex tibqa 'taqdi l-
ħoss. [QOXRA SIĠILL]
DAVID Malan: Okay, tajba.
Allura IF siekta, tkun xi tkun din hija, dan il-ħaġa oranġjo huwa żero,
Imbagħad jilagħbu l-ħoss iljun baħar u think "Oh,
hi, "għal żewġ sekondi.
Issa, jien ma nafx x'inhu siekta, imma żero iqajjem il-
idea ta falza jew off.
Mela jekk huwa siekta falza, hekk jekk le siekta,
tibqa 'taqdi l-ħoss.
Kull dritt, ukoll, kif nistgħu jiskonnettjaw din il-ħaġa?
>> Well, ejja nħarsu lejn l-iskrittura 2 stabbiliti hemmhekk.
L-iskript 2 jgħid stabbiliti siekta għal żero.
Avviż huwa wkoll oranġjo, iva, liema Scratch ma hu huwa kuluri
blokki fil-dell istess jekk tip huwa
ta loġikament marbuta.
Hekk biss bħala top up siekta kien oranġjo, u għalhekk hija siekta stabbiliti hawn
imsemmi fil-blokk oranġjo.
Iżda dan huwa assenjazzjonijiet varjabbli, hekk bħal fil
alġebra, inti għandek xuy u z, fil-programmazzjoni għandek
varjabbli, iżda dawn qed ġeneralment -
nieqaf ejja għal mument u figura kif
li twaqqaf dan Barking.
Kif nista 'nagħmlu dan?
[QOXRA SIĠILL]
DAVID Malan: Okay.
Hija waqfet. Okay.
>> Hekk biss kif fl-alġebra ikollok varjabbli x, y, uz, iżda fl-
programmazzjoni, wara varjabbli bħall x, y, uz hija ġeneralment
frowned fuq għaliex qed mhuwiex f'kull espressiva.
Huma jkollhom l-ebda tifsira semantika tkun xi tkun, hekk f'ħafna
ipprogrammar ta 'lingwi, fatturi varjabbli jista' jkollhom sħiħa
ismijiet sħaħ jew kliem jew frażijiet, bħal siekta, jiġifieri
dak li jagħmlu.
Allura din l-iskrittura tieni wkoll kien smigħ għal dejjem, u qal
jekk iċ-ċavetta, l-Ispazju ewlenin keyboard, huwa
ippressat, kwistjoni mark.
Allura hemm kundizzjoni ma 'espressjoni Boolean li l-
jmorru biex titwieġeb xi mistoqsija jew bil-verità jew falza,
imbagħad għandi ġewwa ta 'dan IF-ċavetta ispazju hija ppressata U
IF huwa siekta żero, sett siekta għal wieħed, IKTAR stabbiliti siekta għal żero.
Allura dan furketta oħra fit-triq, u avviż kif stajt
nested-tnejn IF kundizzjonijiet, huwa mod ta 'kkontrollar huwa l-
Bar Ispazju ippressat għaliex jekk iva, jien la jridu jmorru din
mod jew b'dak il-mod.
U kif nista aqleb il-valur tal-siekta?
I għandhom jiċċekkjaw huwa żero?
Jekk iva, jagħmilha waħda, inkella jagħmel żero sa għalhekk toggle
żewġ stati tagħha.
>> Kull dritt, hekk aħna mbagħad xi wħud minn dawn fundamentali
constructs.
Aħna espressjonijiet Boolean, u tirrealizza, wisq, dawn huma
mhux kollha li familjari.
Fil-fatt, hawn screenshot malajr ta 'kors Harvard CS50
għodda shopping, u kwalunkwe websajt hemmhekk li tkun checkboxes
u downs qatra jkollhom verament, dan il-ħin, kienu jużaw
Espressjonijiet Boolean.
F'dan il-każ hawnhekk, jekk tikklikkja l-Checkbox li jmiss
ikbar minn jew ugwali għal 4.5, jew dak li jmiss istess kors
fakultà, int tispeċifika espressjoni Boolean.
Urini korsijiet li għalihom dik l-espressjoni hija vera.
Jew il-lemin, ma tmurx kontra korsijiet jien
teħid, jekk dan hija kontrollata, allura iva, inti tixtieq li tivverifika
din il-kundizzjoni, inkella inti tixtieq li jinjoraha.
Espressjonijiet Allura Boolean huma tip ta 'kollha madwar, iżda meta
aħna tpoġġihom fil-kondizzjonijiet, jekk IF kundizzjonijiet, IF
Elses, jew nistgħu saħansitra aktar fil-fond jissimulaw
livelli, JEKK IKTAR JEKK IKTAR -
b'tali mod li tip ta 'stat tenarji.
Inti tista 'tmur b'dan il-mod jew dan il-mod jew il-mod.
Nistgħu żżomm affarijiet nesting li jmorru f'direzzjonijiet differenti.
>> Allura Scratch għandha dawn loops, bħal Forever.
Huwa għandu dawn il-karatteristiċi simili Irrepeti 10, xi
numru finit ta 'drabi.
Għandna l-abbiltà issa jiġu stabbiliti varjabbli, hekk f'dan il-każ
Stajt iddikjarat, per eżempju, kalzetti imsejħa varjabbli.
Stajt initialized għal 0, u li l-énième direzzjoni
nistgħu ħadu l hawn ma 'Joseph, fejn forsi I
biss iżommu rekord ta 'kemm kalzetti nkun fuq u jtemm
il-programm meta l-valur dak il-varjabbli hija 2.
Dan ikun mod ieħor ta 'tip ta' jiġġeneralizzaw din
problema u tagħmel xi ħaġa għal darb'oħra u għal darb'oħra.
Ukoll, ejja imorru quddiem u issa jintroduċu xi affarijiet ġodda koppja.
Allura dawk tal inti ma 'esperjenza programing minn qabel se
jafu li ħafna ta 'lingwi jkollhom arrays, jew il-vetturi jew
listi, u tabilħaqq, ikollu Scratch xi ħaġa bħal din, wisq.
Mela ejja ara jekk aħna ma tistax tieħu l-affarijiet għall-livell li jmiss hawn.
Jekk Għandi l-abbiltà, issa, ma 'dawn il-biċċiet puzzle li
żid xi ħaġa, bħal kelma jew numru, għal varjabbli, nista '
jibdew jakkumulaw affarijiet.
U dan huwa attwalment pretty apropos għal affarijiet bħal logħob,
irwol-logħob fejn int-tip ta 'mixi madwar
xi dinja fantasy ġbir affarijiet, picking affarijiet up,
jaqilgħu punti, jew simili.
Inti tista 'tixtieq li żżomm rekord ta' xi tip ta 'inventarju, u
tabilħaqq, dan huwa dak waħda ta 'ex-studenti tagħna hawn għamlet il
xi ħaġa imsejħa Fruitcraft RPG.
>> So let me go l quddiem u tiftaħ dan il-ħaġa hawn, u
Fruitcraft, aħna għandna din id-dinja up fil-quċċata.
So let me go l quddiem u kklikkja l-bandiera aħdar.
Avviż fuq quċċata xellug huwa xi tip ta 'inventarju.
Li implimentati Scratch kif dak li aħna ser sejħa firxa jew
lista, u issa għandna dan animazzjoni ftit.
Hekk biss kif bdejna aktar kmieni ma 'din l-istorja imħabba cookie,
u allura aħna avvanzati għall-qtates u iljuni tal-baħar, issa jista 'jkollna
affarijiet li huma saħansitra aktar interattiv.
U dan Guy blu ftit, I tista 'tibda biex jiċċaqalqu tiegħu
dar ftit hawn.
Allura jidher qisu hu ltqajna ħruġ stabbiliti hawn, hekk jien jużaw
l-ċwievet vleġeġ, up, down, xellug dritt.
U issa jien barra, so let dak li stajt ltqajna hawn.
Id-Dehra ta 'oranġjo, u tabilħaqq, malli I tmissx il-
oranġjo, jiġrilha plopped fis-inventarju tiegħi.
Jekk immur minn hawn il-ċirasa, issa għandi xi ħaġa
inkella fl-inventarju tiegħi.
U din hija kollha sbieħ u ħelu, iżda jaħsbu dwar kif, issa, dan
hija implimentata.
Well, aħna għandna din l-idea ta 'lista, u li apparentement a
biċċa puzzle li inti biss jgħidu dak li trid jżidu miegħu, żid
oranġjo, żid ċirasa.
Issa, dak li huwa dan Guy blu ftit tagħmel?
Ukoll, hu tal Sprite.
U preżumibbilment, il-larinġ u l-ċirasa -
huma stess kienu sprites separati.
U l-użu kundizzjonijiet espressjonijiet Boolean, il-
Student kien probabbilment jistgħu jesprimu IF Guy blu hija
ċirasa jmissu Imbagħad żid il-ċirasa kelma li tiegħu
inventarju, u allura wkoll jaħbu l-Sprite ċirasa.
Allura taħt il-barnuża, hemm probabbilment għadu ċirasa
Sprite hemmhekk.
Imxejna biss told din issir b'mod effettiv inviżibbli.
>> Issa, jekk I iżommu mixi minn hawn, nistgħu wkoll nagħmlu dan
Ħaġa prossimali, fejn I tista 'tmur u aqra l-sinjal.
Mela jekk Guy blu jmissu sinjal, li jista 'jkollna din il-blokka Say
bħad-qattus tkellem lilna fi kliem, bonjour, qabel, "Ghandek
xi frott?
Ġib sal-post tal-frott. "Kull dritt, hekk issa, apparentement,
Għandi direzzjonijiet tiegħi.
I tista 'tmur fuq hawn fil-post tal-frott, linja up myself
bil-bieba.
Issa, jien fil hawn.
I tista 'tmur sa l-bniedem fuq il-counter.
Huwa jiskopri li jien qrib tiegħu, u għalhekk ma għandhom ikunu
pjuttost identiku jmissu, u I rebħu l-logħba.
Allura hemm aħna għandna Fruitcraft RPG.
>> Allura nistgħu nagħmlu l-affarijiet aktar avvanzati minn dan.
Aħna tista 'żżid ħsejjes.
Aħna tista 'żżid randomness psewdo.
Aħna tista 'żżid il-kumplessità.
Let me imorru quddiem hawnhekk, u minflok tagħmel dan myself,
let me nuruk wieħed mill-sottomissjonijiet aktar sofistikati
sirna aħħar sena minn xi ħadd ċerti jismu Blake.
Jista aħna għandna waħda voluntier li huwa komdu li jidhru fuq
kamera u huwa f'idejn għal playing a game?
Kif dwar id-dritt hemmhekk?
Come fuq up.
Kull dritt, sabiex il-logħba li inti għadek unknowingly
offriet li jilagħbu -
[Applause]
DAVID Malan: - hija xi ħaġa mill-imgħoddi imsejħa
"Frogger." X'inhu l-isem tiegħek?
Renda: Renda.
DAVID Malan: Redna?
Renda: Huwa simili Brenda ma 'b.
DAVID Malan: Okay, Renda.
David.
Nizza biex jissodisfaw inti.
>> Allura hawn "Frogger," u jekk nistgħu jgħollu l-volum eżatt
ftit, inti dan ftit
Żrinġ aħdar fuq il-qiegħ.
Tista 'tuża xellug, lemin, u' l isfel, u mira tiegħek huwa li
jaqsmu l-triq, jaqsmu l-xmara, u tmissx il-pads lily
fil-quċċata.
Aw.
Wieħed aktar t -
jerġa 'jagħmel, id-dritt?
Let stop hit s.
Ħadd ma raw dan.
[Applause]
DAVID Malan: Yeah.
Tajjeb ħafna x'isir.
Eċċellenti, grazie.
>> Allura li kien hemm Frogger. Issa li taf dak li inti stajt
gotten infuskom fil, voluntier wieħed aktar għal differenti
logħba sottomessa mill student ieħor.
Inti tixtieq li ġejjin fuq up?
X'hemm isem tiegħek?
RICHARD: Richard.
DAVID Malan: Richard.
Kull dritt, Richard, come fuq up.
[Applause]
DAVID Malan: Inti għandek xi ħaġa li ser ħoss
familjari malajr, hekk hawn huma l-istruzzjonijiet tiegħek.
Allura fil-mument, xi biċċiet puzzle ser iscroll
mill-iskrin li tfittex jew xellug
jew dritt jew 'l isfel.
Int ser ikollok hit-ċwievet vleġġa b'tali mod
li jikkorrispondi għal dawk il-biċċiet puzzle lining up ma
il-placeholders fuq quċċata.
Allura meta tara vleġġa xellug, u li l-linji mat-xellug
vleġġa, laqat il-vleġġa xellug.
Inti tista 'tibda.
[MUSIC - "AKTAR B'SAĦĦTU" Kayne WEST]
DAVID Malan: Kull dritt, rawnd kbir ta 'applause għall Richard.
[Applause]
DAVID Malan: ħafna isir ukoll.
Grazzi.
[Applause]
>> DAVID Malan: gost Allura u, apparentement, tip ta '
intimidanti kif jista 'jkun li jimplimenta xi ħaġa bħala
apparentement sofistikata hekk kif dan, tirrealizza li l-istudent
ma stipulati u biss jikteb dan kollu f'daqqa.
Pjuttost, inti tista 'tkisser problema kif apparentement kumpless
kif din f'biċċiet ħafna iżgħar, u dan, ukoll, hija
ser tkun tema.
L-agħar ħaġa li tista 'tagħmel fil-kitba ta' programm fil-maġġoranza f'kull
lingwa huwa li joqogħdu bilqegħda, jiksbu verament eċċitati, ikteb l-
ħaġa kkritikat kollha, u mbagħad ftit tama li taħdem mill-
ħin int lest bil-miktub.
Pjuttost, il-proċess ta 'programmazzjoni għandhom ġeneralment
jkun ħafna deliberat, ħafna iterattiv, fejn inti biss
jistabbilixxu passi żgħar ħafna għall infuskom, gidma daqs biċċiet
tridu li gidma off, u sabiex ikollok dawn sanità
kontrolli, miri ftit inti tista 'tilħaq.
U allura inti tibni fuq quċċata ta 'dawk li jinħolqu aktar
affarijiet sofistikati għadhom.
>> Għalhekk per eżempju, kif nistgħu tmur dwar
implimentazzjoni logħba bħal din?
Ukoll, franchement, I ċertament tibda bi ftit
appoġġ wieħed ewlieni fi żmien.
Ejja biss timplimenta l-appoġġ għall-vleġġa xellug.
Allura l-istudent kellhom b'xi mod joħolqu fil Photoshop, jew
Scratch ruħha bl-użu editur grafika ftit, l-
arrow ewlenin li qisu l-wieħed fil-quċċata xellug hemm, biss
il-griż placeholder.
Imbagħad l-istudent kellu ċifra barra dak x, y jikkoordinaw biex
poġġih fejn li tqiegħed lilha fit-tieqa.
0, 0 hija sa hawn, hekk ikollok biex insemmu l-għadd ta '
pixels, jew tikek, biex jikkumpensaw dan vleġġa minn
il-quċċata 'l-iskrin.
U mbagħad darba li fil-post, il-programm tiegħek ma attwalment
tagħmel xejn s'issa, sabiex inti mbagħad bżonn Sprite 2, għall-
eżempju vleġġa ħadra li wkoll tipponta xellug, u inti
imbagħad għandek bżonn biex tibda bil-miktub xi skripts għal dan.
>> U tinnota, forsi, li dawn l-affarijiet bdiet ġejjin fil
veloċitajiet differenti, u l-kuluri kienu differenti
postijiet, u li għaliex l-istudent użat daqsxejn ta '
psewdo randomness.
U billi randomness psewdo, I jfissirx biss pick numru
bejn xi ħaġa u xi ħaġa għaliex inti tista '
jibdew affarijiet mappa, simili jekk in-numru huwa bejn wieħed u
5, ukoll, ejja jagħmlu l-ħaġa aħdar.
Jekk huwa bejn 6 u 10, ejja jagħmlu l-biċċa puzzle
aħmar minflok.
Sakemm ikollok mod ta jiġġeneraw xi tip ta '
randomness, inti tista 'mbagħad tagħmel deċiżjonijiet ibbażati fuq dik
randomness.
U jien iżommu psewdo qal każwali għaliex hemm
sigrieti maħmuġin ftit.
Kompjuters ma jistgħux joħorġu bil numri bl-addoċċ.
Huma jistgħu biss jagħmlu dak li qed told minħabba
dawn qed magħmula mill-bniedem apparati.
Huma ma jistgħux sempliċiment raden numru simili aħna bnedmin
jħossu bħal nistgħu.
A kompjuter għandu jagħmel xi ħaġa matematiċi li jevokaw l-
illużjoni ta 'numru matematiċi, xi kultant bl-użu
jum kurrenti ta 'żmien bħala kontribut għall jidhru dak
Numru ta 'ritorn, iżda aktar fuq dak ieħor ħin.
Għal issa, biss jafu li nistgħu jiġġeneraw randomness psewdo.
>> Allura ladarba għandi l-abbiltà għall-vleġġa xellug biex jibdew
li jidhru fi żminijiet differenti u b'veloċitajiet differenti, allura
I tista 'tmur lura u żid xi wħud minn dawn IF kundizzjonijiet.
JEKK din Sprite qed imiss l-ieħor, u l-vleġġa xellug
ċavetta ġie ppressat -
hekk tliet kondizzjonijiet f'dak il-każ.
I jista 'juża dik U blokk forsi, f'dak il-każ -
Imbagħad Irrid immur quddiem u inkrement-punteġġ.
U fil-quċċata, aħna għandna punteġġ, aħna għandna biża ',
Kessaħ, Good, u Boo.
Allura hemm apparentament ħames varjabbli li dan l-istudent
użati biex iżommu kont ta 'dawn metriċi varji.
Hekk fil-qosor, ir-riżultat aħħari huwa aqwa.
Huwa gost, huwa gost jilagħbu, huwa l-involviment, iżda dan mhuwiex
fejn l-istudent beda.
Hu jew hi bdiet fi sett ħafna iżgħar ta 'passi.
>> Allura dak li huma xi blokki tal-bini oħra li nistgħu
nisġa fis-dawn il-programmi?
Ukoll, hemm dan il-kunċett ieħor fil-lingwi l-aktar,
Scratch fosthom, magħruf bħala ħjut.
Allura kompjuter jistgħu attwalment ma verament tagħmel affarijiet multipli fi
żmien, għall-inqas mhux normalment.
Pjuttost, kompjuter ġeneralment għandu biss wieħed CPU, u anke
għalkemm kompjuters huma super fast u jistgħu, għalhekk,
joħolqu l-illużjoni ta 'affarijiet multipli fuq darba -
iċċekkjar mail tiegħek, jkollna instant
, messaġġ istampar dokument -
verament, kompjuter huwa biss jaqbeż minn istampar biex IMing
biex email, id-dahar u lura u quddiem u lura tant mgħaġġel li aħna
bnedmin witted bil-mod biss ma jirrealizzaw li huwa attwalment
tħaddim ta 'dawk il-programmi ftit kull darba.
Issa, din id-daqsxejn ta 'bajda jinsabu f'dawn il-jiem għaliex, illum,
kompjuters ħafna tagħna huma liema huma msejħa multi-core, sabiex inti
jkollhom waħda CPU iżda cores multipli, li huwa tip ta 'prodotti simili
jkollhom CPUs multipli.
>> U għalhekk kultant, kompjuters tista 'verament tagħmel affarijiet multipli
fi żmien, iżda ġeneralment fi ħdan programm, programmi
jiddependu fuq dawn l-affarijiet imsejħa ħjut.
Allura ħajt huwa tip simili ta 'programm minjatura li jistgħu
jeżistu flimkien mal-programm ieħor ta 'daqs żgħir u tista' taħdem
b'mod parallel, jew għall-inqas tista 'taħdem taħt l-illużjoni li
dawn qed taħdem fl-istess ħin.
Allura Scratch jappoġġja dawn l-affarijiet imsejħa ħjut.
Inti jista 'jkollhom scripts multipli fuq darba esekuzzjoni, eżatt kif aħna
kien mal-iljun baħar, u dan jippermetti li fil-fatt
allura jkollhom interazzjonijiet fost dawn il-sprites.
Let me imorru quddiem hawn u iġbed up, ejja ngħidu, ħjut, u
jilagħbu din kif ġej.
Għandna żewġ sprites, li kull wieħed minnhom aħna ser tara
għandha wieħed biss iskrittura.
U tinduna jidher li hemm xi intelliġenza fil-
qattus f'dan il-wieħed għaliex huwa jkollna aktar mill-qrib -
[Roars]
DAVID Malan: - u eqreb lejn l-għasafar ftit.
>> Allura kif huwa l-operat għasfur?
Ukoll, ejja tagħti ħarsa lejn l-għasafar l-ewwel.
L-iskript għasafar qal meta l-bandiera aħdar huwa għafast, mur x
ugwali negattiv 115 u y ugwali 150.
So I biss dehret post każwali fejn jien ridt l-
għasafar li tibda, u I biss plopped lilu hemmhekk mill-kontumaċja.
Imbagħad Forever IF ma jmissux qattus, għalhekk din hija differenti
tip ta 'kostruzzjoni looping, iżda istess idea, jagħmlu dan mill-ġdid u
ġdid u għal darb'oħra.
Sakemm int ma jmissux il-qattus, jimxu tliet passi, u
jekk int fuq it-tarf, bounce, fejn huwa tip ta '
riflessjoni fis-sens tal-biljard.
Allura li kif l-għasfur miexja madwar tip ta '
apparentement addoċċ, imma huwa biss għaliex dan huwa bouncing off
il-ħitan f'dan il-każ.
>> Issa l-qattus, sadanittant, hija tip ta 'qerq.
Il-qattus, meta l-bandiera aħdar huwa għafast, iva, jibda fl-
xi post, post każwali -
inqas parzjalment bħala kull l-pick
blokk aħdar każwali hemm -
u mbagħad Forever IF li jmissu l-għasafar, jilagħbu l-ħoss iljun,
u imbagħad jieqaf iskrittura.
Allura meta I said jtemm, jew joħroġ qabel, hemm puzzle
biċċa fil Scratch li se biss joqtlu l-programm f'dak
punt għaliex dan huwa tip ta 'loġikament isir.
Iżda xorta, hawn, l-avviż x'inhu jiġri.
Punt lejn l-għasafar u jimxu pass wieħed.
Allura dan il-punt lejn l-għasafar huwa tip ta 'vantaġġ l-qattus
għandha f'dik huwa homing fil dwar l-għasafar jiċċaqalqu, u nistgħu
Issa jagħmlu dan il-programm l-aktar interessanti.
Minflok li jiċċaqalqu pass wieħed fi żmien għal kull ċiklu CPU, kull
istrajk pedaġġ tal-qanpiena, biex ngħidu hekk, let me imorru quddiem u
jiċċaqalqu, ejja ngħidu, ħames passi fi żmien bħala l-qattus.
Ikklikkja run, u issa huwa verament jsib lilu malajr.
Jekk aħna tirdoppja din wara 10 passi, li tip ta 'tmur
dritt għalih.
Issa, nistgħu nagħtu l-għasafar,
forsi, daqsxejn ta 'vantaġġ.
Ejja mur l-għasafar u jgħidu minflok ta 'ċaqliq tliet passi,
ejja jimxu lilu 30 passi.
Imma hu għadu ltqajna maqbuda fl-aħħar.
>> Allura hawnhekk, għandna żewġ ħjut.
Huwa ħabs fil Scratch ma 'żewġ skripts u żewġ
sprites, iżda l-idea f'lingwi oħra hija li inti tista '
jiktbu, essenzjalment, programmi wisq bħal dan u għandhom
lilhom jimxu verament, jew imaginarily, b'mod parallel.
>> Issa, hemm ukoll dan il-kunċett fil-programmazzjoni magħrufa bħala
avvenimenti, u din hija xi ħaġa li aħna mhux se tara fis-C, il-
lingwa magħrufa bħala C. Aħna se tara li lejn tmiem is-semestru ta
fl-ipprogrammar tal-web, meta aħna nintroduċu JavaScript u l-
kunċett ta 'paġni tal-web tal-bini li huma dinamiċi u jinteraġixxu
ma 'utenti.
Allura f'dan il-każ, aħna għandna eżempju sempliċi ħafna ta '2
sprites, tifel u tifla, li kull wieħed minnhom ikollu rispettivi tagħhom
ħjut, iżda b'xi dawn iż-żewġ huma inter-komunikazzjoni permezz
ta 'xi ħaġa imsejħa avvenimenti.
So let me aqbad hawn u zoom fuq iskrittura tal-boy,
li tidher bħal dan.
Meta bandiera aħdar għafast, dejjem jagħmel dan li ġej.
Jekk l-Ispazju ewlenin, jew l-Avukatura Ispazju, hija ppressata, ngħidu
Marco għal żewġ sekondi, li l-purament estetiċi fuq il-
iskrin, buzzieqa diskors ftit, iżda mbagħad mxandra.
>> Allura xandira ieħor huwa biċċa Scratch li l-
rappreżentant ta 'klassi ta' funzjonalità fil-programmazzjoni
li tippermetti programmi differenti, ħjut differenti,
biex inter-komunikazzjoni, biex b'xi mod jibagħtu
messaġġi, wieħed għall-ieħor.
Tgħaddi biċċa karta fil-klassi huwa tip ta 'l-teknoloġija baxxa
ekwivalenti.
Allura xandira avveniment.
I tista 'tibgħat dan il-messaġġ, u l-avveniment kelma
huwa kompletament arbitrarju.
Scratch kultant għandha dawn downs qatra, so I biss ħarāet
ma 'kelma każwali bħal avveniment għaliex issa, dak li l-boy ma
meta I agħfas il-muftieħ huwa li xandiriet dan l-avveniment.
U jekk I ħarsa issa fil iskrittura l-tifla, b'kitba tagħha huwa
super sempliċi għaliex kollha hi teħtieġ li tagħmel huwa li ma jaġixxux meta
l-bandiera aħdar huwa għafast.
Hija mfassla biex azzjoni meta hija tirċievi, kwotazzjoni unquote,
"Avveniment", u f'dak il-punt, hi tal smigħ għalhekk
l-avveniment hekk imsejħa għal darb'oħra u għal darb'oħra.
Hekk kif hija tirċievi il-każ, hi għaddej biex shout
Polo għal żewġ sekondi.
>> U għalhekk inti tista 'forsi jiġi dedott minn dan eżattament dak li l-
riżultat li jmiss se tkun.
Let me ikklikkja l-bandiera aħdar.
Xejn jiġri minħabba I bżonn tagħmel dak?
UDJENZA: Bar Ispazju.
DAVID Malan: Bar Ispazju.
Boy jgħid Marco, girl jgħid Polo.
Iżda li mhux iebes kodifikati per se.
Li inter-komunikazzjoni bejn skripts, hekk issa għandna
għandhom il-ħila li jagħmlu programmi aktar kumplessi fejn
dawn iż-żewġ huma b'xi mod inter-komunikazzjoni.
>> Allura f'liema direzzjonijiet nistgħu jieħdu din?
Ukoll, fl-sett problema 0, verament, l-għan huwa li
jieħdu pjaċir bil Scratch.
Għall-edizzjoni Hacker, inti ser minflok tieħdu gost ma 'aktar
verżjoni sofistikati ta Scratch imsejħa BYOB, Ibni
Blokki Your Own, iżda l-idea hija l-istess.
Int ser tkun kapaċi -
Iva, li kien intenzjonat.
Daħal minn Berkeley.
BYOB hija l-verżjoni edizzjoni Hacker ta 'dan, iżda t-tnejn
demografija, edizzjoni standard u edizzjoni Hacker simili, il-
mira fil-idejn għall-ġimgħa li ġejjin huwa verament ftit li adsa fil
fond, nikseb idejk maħmuġa bil-programmazzjoni, u jagħmlu
xi ħaġa interessanti, jagħmlu xi ħaġa interattivi, jagħmlu
xi ħaġa artistiċi, jagħmluhom gost xi ħaġa li fil-fatt
juri, b'mod li sa tmiem il-ġimgħa, inti ser ikollok proġett,
mhux biss għall-ewwel CS50 tiegħek pset, iżda inti ser ikollok
ftit xi ħaġa li inti tista 'turi off fil Annenberg biex
ħbieb jew saħansitra tal-familja mill uploading għall-websajt MIT.
U hekk kif għidt nhar l-Erbgħa, nistennew 90% tal-klassi,
ġeneralment, biex jagħmlu l-edizzjonijiet standard.
Tirrealizza li hemm ukoll dan is-suq għal dawk minnkom li
kieku ssib ruħek daqsxejn bored mal-punti bażiċi
u verament irridu li adsa u inġenji ta 'viżjoni inti diġà
jkollhom bi sfond qabel f'dan aktar faċli
ambjent.
>> So let me pull up eżempju wieħed ieħor li wieħed mill-ex tagħna
studenti hawnhekk ma u għid ftit xi ħaġa permezz kanzunetta.
Dan bl-istess mod, kif dan jilgħab, jaħsbu dwar kif inti tmur dwar
implimentazzjoni ta 'dan il-programm bl-użu preċiżament dawn istess
building blocks, xi ftit ta 'randomness psewdo, u ta'
daqsxejn ta 'kanzunetta familjari.
Jekk nistgħu jgħollu l-volum biss ftit?
[MUSIC - "IT'S AĦRIĠ IRĠIEL" IL BNIET TEMP]
>> DAVID Malan: Li lilha għall CS50.
Aħna se tara int nhar it-Tnejn.
[Applause]