[Powered by Google Translate] [ROCK CERDDORIAETH] [CERDDORIAETH - "HAPUS GYDA'N GILYDD" Y crwbanod] DAVID Malan: Heddiw, byddwn yn dechrau ein archwiliad o'r hanfodion gwyddoniaeth gyfrifiadurol a ein cyflwyniad, yn awr, at y grefft o raglennu, y mae hynny yw un enghraifft yn unig. Ond yn yr un modd o ddatrys problemau, yn gwybod bod CS50 Dydd Pos traddodiadol yn yfory. Os nad ydych wedi RSVPed eto ar gyfer y digwyddiad hwn, gallwch fynd i cs50.net/rsvp. Gallwch ddod â thimau o ddau neu dri neu bedwar. Byddwch yn cael eich herio gyda phroblemau fel yr un a welsoch i fyny yno yn y dechrau. Mae'r holl broblemau newydd y flwyddyn hon os cyfranogi y llynedd, ac rydych yn Bydd cyfle wedyn i ennill rhai gwobrau gwych. Yn eu plith, a Wii a rhai tystysgrifau rhodd ac fel, i gyd tra'n hongian allan gyda CS50 myfyrwyr a chyd-ddisgyblion a pizza a Facebook. Felly mwy am hynny yfory os hoffech chi. Mae hyn wedyn yn CS50, ar gyfer y rhai ohonoch ymuno â ni am y tro cyntaf. Ac yn gwybod bod y cwrs hwn yn cael ei bennu yn enwedig i gael chi drwy'r cwrs hwn i ei ben terfynol, a phryd hynny rydych fydd nid yn unig yn deall hyn hanfodion gwyddoniaeth gyfrifiadurol, ond bydd yn rhaid y set sgiliau ymarferol iawn y gallwch wedyn fynd yn ôl i'r eich adran eich hun, boed yn gwyddorau peirianneg, mathemateg gymhwysol, y gwyddorau ffisegol, naturiol gwyddoniaeth, neu bethau tebyg. Yn wir, beth sydd mor gyffrous am wyddoniaeth gyfrifiadurol hyn diwrnod yn ei bod yn gyfiawn mor berthnasol i pob math o feysydd. A hyd yn oed er heddiw, byddwn ond yn crafu wyneb y iaith rhaglennu traddodiadol iawn a elwir yn C, gallwn eich yn hytrach edrych ar rywbeth a elwir yn Scratch, rhywbeth gyda y mae'r cwci stori garu ei weithredu gan un o'ch rhagflaenwyr yn ystod y blynyddoedd diwethaf, i adrodd hanesion, i greu gemau, i greu celf rhyngweithiol, ac i mewn gwirionedd yn dechrau i lapio ein meddyliau o amgylch rhai o'r lluniadau sylfaenol a wrth wraidd rhaglennu, ond mewn cyd-destun, fel y gwelwch, mae hynny'n llawer llai brawychus, mae hynny'n llawer llai dirgel, na byddwch yn gweld cyn bo hir. Ac yn sylweddoli, hefyd, ar gyfer y rhai ohonoch yn unig ymuno â ni yma semester, ymadroddion yr ydym yn dod i ben ddydd Mercher darlith, nid yw mor bwysig lle rydych yn y pen draw at eich perthynas cyd-ddisgyblion yn y dosbarth hwn, ond mae ymhle'r ydych, erbyn diwedd semester yn wythnos 11, yn y pen draw perthynas i chi eich hun iawn y diwrnod. Felly, heb wastraffu mwy o eiriau, mae hyn hefyd yn werth nodi bod rhai sy'n llai cyfforddus, y rhai rywle yn y canol, yn hefyd, drwy ddyluniad y cwrs hwn, nid o dan unrhyw anfantais vis-a-vis rhai sy'n fwy cyfforddus yn dod i'r dosbarth hwn. Fel y byddwch yn eu gweld dros yr wythnosau i ddod, mae gennym wahanol traciau ar gyfer cefndir yn ôl gwahanol, adrannau ar gyfer y rhai llai cyfforddus, yn fwy cyfforddus, y rhai rhywle yn y canol. Fel y byddwch yn gweld y penwythnos ac wythnos nesaf, dau fersiwn o'r setiau broblem fwyaf o ran safon a haciwr rhifyn felly eich bod yn gall pob hunan-ddewis i lawr y llwybr yr ydych yn fwyaf cyfforddus. Felly heddiw, rydym yn plymio i mewn rhaglenni hyn iaith o'r enw Scratch. Mae'n iaith raglennu graffigol, ac eto mae ganddo'r un nodweddion o rai o'r ieithoedd lefel uwch gallwn eich archwilio yn nes ymlaen yn y semester, yn eu plith C a JavaScript a PHP. Ond mae'n mynd i ganiatáu i ni osgoi rhai o'r ymyriadau gynnar o gystrawen, pethau fel hanner colon, cromfachau, a manylion dirgel eraill sydd, ar yr olwg gyntaf, dim ond nid o gwbl ddeallusol ddiddorol ac yn tueddu i fynd i mewn y ffordd o rhywfaint o ddealltwriaeth sylfaenol. O ran bellach yn strwythur cefnogi yn ei flaen, sylweddoli hyn offeryn, CS50 Trafod, a fydd yn gysylltiedig ar y cwrs gwefan yn ddiweddarach heddiw, yw'r fforwm trafod ar-lein yn a byddwch yn gallu gofyn cwestiynau i'w gilydd a staff, ac mae hefyd yn offeryn, fel y byddwn yn gweld yr wythnos nesaf, y byddwn yn eu defnyddio yn eithaf integratedly yn oriau swyddfa yn ogystal. Yn wir, oriau swyddfa yn dechrau ar ddydd Llun, a dweud y gwir, y cyntaf wythnos o oriau swyddfa yn allweddol yn weddol isel. Nid wyf yn meddwl y byddwch yn dod o hyd i Scratch bob un sy'n anhygyrch. Mae'n eithaf hunan-esboniadol, gan y byddwn yn gweld, ac felly pa byddwn yn ei ddefnyddio ar gyfer heddiw yw i echdynnu peth o'r syniadau sylfaenol a fydd hynny, yna, yn parhau drwy gydol y gweddill y semester. Ond bydd yn dechrau ddydd Llun, am 8:00 yh drwy 11:00 yn oriau swyddfa yn Annenberg dros egwyl yr ymennydd. Bydd rhannu'r 2 yn dechrau heno, felly rywbryd hyn penwythnos, ewch i cs50.net/section, a byddwch Gofynnir nifer o gwestiynau. Yn eu plith, sut fyddech chi'n disgrifio eich lefel cysur fel y mae heddiw? Does dim caled, rheol gyflym o ran pwy sydd yn y bwced. Dim ond y math o beth y mae'n debyg y byddwch yn gwybod os ydych yn ymhlith y rhai llai cyfforddus neu fel arall. Ac yn awr, walkthroughs. Y broblem manyleb a osodwyd ar gyfer yr wythnos hon, yn safon a rhifyn haciwr fel ei gilydd, ar-lein yn cs50.net fel o yn awr. A byddwch yn gweld bod y cyntaf o'r argraffiad, y argraffiad safonol bob wythnos, yn cyd-fynd rhywbeth yr ydym alw walkthrough cod, sesiwn dan arweiniad un o'r cymrodyr addysgu cwrs i'ch tywys drwy'r, yn darparu awgrymiadau ar, ac yn mynd â chi i lawr llwybr penodol pan ddaw i gychwyn y setiau problem. Felly, gyda phob un o'r broblem yn gosod, os ydych chi'n erioed wedi eisiau i chi eich hun lle ydw i'n dechrau, byddwch yn dechrau gyda'r walkthroughs. Ac mewn gwirionedd, yn caniatáu i mi gyflwyno Zamyla Chan, mae hyn yn cyd-ddysgu eleni a fydd yn arwain pob un o'r walkthroughs. Zamyla? [Cymeradwyaeth] ZAMYLA Chan: O, hi, bawb. Fy enw i yw Zamyla. Rwy'n peirianneg iau yn astudio yn Winthrop House. Ond yr wyf yn ceisio ffitio i mewn fel cyrsiau gwyddoniaeth gyfrifiadurol lawer gan fy mod yn gall, a dyna pam yr wyf i'n edrych ymlaen yn arw i gael ei arwain ar y walkthroughs flwyddyn. Walkthroughs, i mi, yn rhan hanfodol o fy CS50 profiad. Yn ystod y walkthrough, ar gyfer pob p-set, byddwn yn mynd drwy y broblem a osodwyd at ei gilydd, yn edrych dros y problemau, math o eu rhannu i fyny i mewn brathiadau hylaw. 'N annhymerus' yn rhoi cyngor i chi, technegau, ar gyfer cael trwy ac yn dechrau arni. Yr wyf yn gobeithio eich gweld i gyd yn y walkthroughs. Os na allwch chi ei wneud yn yn bersonol, yna os gwelwch yn dda alaw ar-lein. DAVID Malan: Ardderchog. Diolch i chi, Zamyla. Felly sylweddoli bod walkthroughs, yn wir, ar ddydd Gwener prynhawn, ond mae hyn yn fwriadol gan ddylunio fel bod hyd yn oed os byddai'n well gennych beidio mynychu dosbarth ar ddydd Gwener prynhawn, bydd y fideos fod hyd yn oed yn fwy yn gyflym dros y penwythnos. Felly sylweddoli y bydd cs50.net fod pob un o'r Zamyla yn walkthroughs. A bod dyddiad heddiw ac amser, 3:00 PM, Harberd Hall, 104. Ac mae rhai o'r cymrodyr addysgu hefyd wedi paratoi rhai sylwadau ar eich cyfer in absentia i roi ychydig o persbectif ynglŷn â hyn y mae eu profiad yn dod i mewn ac mynd allan o CS50 oedd fel. Felly, pe gallem dim y goleuadau am ychydig o bryd, yr wyf yn rhoi i chi rhai o CS50 staff. JACKSON STEINKAMP: yr wyf yn cymryd CS50 y llynedd fel freshman yn y disgyn, ac yn gwbl chwythu fy meddwl. Nid wyf erioed wedi cymryd unrhyw ddosbarthiadau rhaglennu o'r blaen, a byth yn dod i mewn ag unrhyw gwyddoniaeth gyfrifiadurol profiad o gwbl. Ac yn union, yr wyf yn clywed y cyffro am y dosbarth a penderfynu cymryd ei. JULIA MITELMAN: Roedd yn llawer o hwyl, mewn gwirionedd ymgysylltu. Rwy'n dal, hyd y dydd hwn - Fi jyst yn ddiweddar gwelais yn cael y ddisg hyblyg a roddodd David ni ar ein diwrnod cyntaf y ddarlith. Mod i wedi hongian ar fy wal. Mae hyn yn debyg ychydig nerdy, ond yr wyf yn hongian ar fy wal yn ystod y dosbarth fel hatgoffa o ba mor oer oedd hi. TRAVIS DOWNS: Mae mor chwithig. JACKSON STEINKAMP: Computer gwyddoniaeth yn rhywbeth i chi Dylai geisio hyd yn oed os nad ydych yn un ar gyfer y gwyddorau traddodiadol. Mae'n ei phrofiad ei hun, a bydd CS50 gwneud yn siŵr eich bod yn cefnogaeth dda drwy iddo yn ei byddin veritable o TFS. ALI NAHM: Myfi a'th gymerodd fel freshman, ac felly yr wyf yn gwneud llawer o ffrindiau newydd. Rwyf hefyd yn got cyflwyno i'r ganolbwyntio gyfan a ysgol gyfan o beirianneg, ac felly yr wyf yn hynod yn ei argymell ac yn croesawu chi i'n teulu CS50. YANIV YACOBY: CS50 yn unig yn eich dysgu sut i ddefnyddio offer sydd ar gael yn eang. 'Ch jyst angen gliniadur, bydd angen porwr gwe, ac rydych yn angen i ddysgu sut i ysgrifennu rhai cod, a gallwch chi wir yn adeiladu pethau daclus. KAREN Xiao: Dim ond mor cŵl i fod yn gallu gwneud rhywbeth a chael pobl yn ei ddefnyddio a chael pobl yn ei weld, a dyna yr hyn a Fi 'n sylweddol caru am hynny. TIM MCLAUGHLIN: - ymdeimlad o gymuned, yr wyf yn meddwl, yn y cwrs yn fwy nag unrhyw gwrs arall yr wyf wedi cymryd hyd yn hyn. Nid ydych yn unig yn cymryd un arall - nad ydych yn llenwi'r arall gofyniad. Dydych chi ddim yn mynd i ddarlithoedd a mynd i'r adran. Ond rydych chi'n ei wneud tunnell o bethau sy'n ymwneud â rhaglennu a phob am dechnoleg, ond nid yw'n wir yn teimlo fel dosbarth y rhan fwyaf o'r amser. DOWNS TRAVIS: Ac ar y diwrnod cyntaf, maent yn dosbarthu cacennau, a Rwy'n ei werthu ar unwaith. JACOB Pritt: candy am ddim a pizza. ZAMYLA Chan: - waeth beth yw lefel eich diddordeb, yr wyf yn meddwl bod CS50, byddwch yn cael hwyl, a byddwch yn ddeallusol symbylu. MARK SMITH GROZEN-: Mae bob amser yn barti yn y dosbarth, ac mae'n parti bob nos yn gweithio ar eich p-set. JACKSON STEINKAMP: Bob tro y byddwch yn gorffen set problem, rydych Bydd yn teimlo fel eich bod wedi gorffen prosiect. Melissa Niu: Roedd y flwyddyn freshman, ac yr oeddwn ei wneud siopa. Cefais fy phedwar dosbarth yn barod, ac yr oedd yn Annenberg. Ac yr wyf yn taro i mewn i ffrind, ac meddai, hey, rwy'n siopa y dosbarth hwn o'r enw CS50, a dylech ddod gyda mi. A ddaeth i ben i fyny yn cymryd ei fod yn disgyn, ac ar ôl y dosbarth hwnnw, yr wyf yn meddwl efallai fy mod i'n mynd i bach yn CS. Ond dyma fi, dair blynedd yn ddiweddarach, yn dal i astudio cyfrifiadur gwyddoniaeth ac mewn gwirionedd yn gwneud hyn fel mawr, ac roeddwn wrth fy modd bob hyn o bryd ohono. ROB BOWDEN: Nid oes gennyf unrhyw syniad. ALI NAHM: Gadewch i ni weld. Melissa Niu: craziness. SIARADWR 1: Dwi'n teimlo fel byddwn i'n fod yn ystrydeb. Roeddwn i newydd ddweud, fel, awesome. YANIV YACOBY: Hygyrchedd. JACOB Pritt: candy am ddim a pizza. TRAVIS DOWNS: Methu troi i lawr dosbarth y dwylo allan gacen. TIM MCLAUGHLIN: Egnïol. VIPUL SHEKHAWAT: Hanfodol. ROB BOWDEN: Gadewch i mi feddwl am ateb. Rwy'n credu fy mod got rywbeth. Oh, duw. Yeah, fy enw i yw Rob Bowden, ac mae hyn yn CS50. [Cymeradwyaeth] DAVID Malan: pob hawl, felly gadewch i ni ddechrau i beintio darlun y cyfeiriad y gallwn fynd, a gadewch i ni gyflwyno cysyniad hwn yma a elwir yn pseudocode. Felly, nid pseudocode yn rhaglennu iaith iddo'i hun. Mae'n dim byd technegol fel y cyfryw, ond mae'r un fath o ffordd gyffredinol o fynegi eich hun yn weddol fanwl gywir, weddol algorithmically, yn deg drefniadol, ond heb gorfod poeni am mha iaith rydych yn mynegi eich hun i mewn Mae'n rhywfaint o model y Saesneg ac ieithoedd rhaglennu gyda yr ydych yn digwydd i fod yn gyfarwydd, fel y gallwn ddechrau ysgrifennu y math hwn o beth wrth i ni fynd. Ac yn wir, Joseph, a allwn fenthyg chi i fyny ar y llwyfan i fod yn ysgrifennydd yma? Rwyf wedi mynd yn ei flaen yma o flaen llaw ac yn anghofio i roi ar rai sanau heddiw, ac fe fydd hyn yn fwy ymhlith ein enghreifftiau chwerthinllyd. Nawr, Fi angen i chi dros yma. 'N annhymerus' gwneud y rhan sanau. Felly dyma gennym pad dechrau bach. Mae hyn yn llythrennol dim ond TextEdit mewn Mac. Nid ydym yn wir yn mynd i ysgrifennu rhaglen runnable, ond ni jyst yn mynd i ddechrau braslunio allan yn seiliedig ar pseudocode ar rai o'r cyngor a roddwch i mi yma. Felly dyma yw fy pentwr o sanau yn y cartref. Nid oes gennyf unrhyw sanau ar pan fyddaf yn deffro yn y bore, ac rydym bellach yn angen i chi ysgrifennu rhaglen, algorithm o ryw fath, y mae i gael y sanau ar fy nhraed. Ac ar hyd y ffordd, gadewch i ni weld os ydym yn baglu dros, neu ddod ar eu traws, rhai o'r syniadau eich bod yn mynd i gael i ddechrau meddwl am lawer mwy o ddifrif wrth raglennu rhag na fydd eich rhaglenni yn ymddwyn yn eithaf fel y bwriadwyd. Felly, yr wyf yn eistedd i lawr yma. Rwyf wedi cael fy pentwr o sanau. Beth yw'r peth cyntaf bod dynol rhesymol fyddai wneud pan fydd y nod yw rhoi ar bâr o sanau? Rhywun yn rhoi i mi un cam, a dim ond un cam. Yeah? GYNULLEIDFA: Plygwch i lawr. DAVID Malan: Bend i lawr, Iawn. Cam dau. Cam dau. GYNULLEIDFA: Codwch eich hosan. DAVID Malan: Casglwch eich hosan. Iawn, felly amwysedd ychydig yma, ac mae hyn yn un o'r cyntaf tramgwydd blociau ein bod i fod i yn fwriadol dod ar eu traws yma. Mae'n ychydig yn amwys, felly dewisa eich hosan. Fine, byddaf yn cymryd yr un yma, ond cyfrifiadur, yn sylweddoli mewn dim ond ychydig, nid yn mynd i gael y math o greddf ddynol i ddim ond dewis yr un agosaf. Rydym yn mynd i gael i ddechrau, cyn hir, gan fynegi ein hunain yn fwy manwl. Mae pob hawl, felly cam dau yn casglu eich hosan. Byddwn yn mynd ag ef. Cam tri. Yn y cefn. GYNULLEIDFA: Dod o hyd i pâr cyfateb. DAVID Malan: Dod o hyd i pâr cyfateb. Iawn, felly mae hyn yn dda. Roedd rhaid i mi ddewis y hosan. Felly, y nod yw dod o hyd i hosan paru, yn awr, ond beth mae hynny'n ei olygu? Mae pobl yn rhesymol, yn debyg iawn ar ddydd Mercher pan fyddaf yn unig yn gwybod sut i ddod o hyd i Mike Smith mewn llyfr ffôn, dim ond math o aeth eu greddf. Ond yma, mae'n amlwg y hosan yma, ond mae cyfrifiadur ddim yn mynd i fod mor reddfol. Mae cyfrifiadur yn mynd i gael casgliad o ddarnau, wrth i ni trafod ddydd Mercher, a'r rhai yn drefnu rywsut yn y cof. Ond y pwynt yw bod cyfrifiadur wedi dim ond y gallu i edrych ar bethau un ar y tro, ac yn wir, hyd yn oed rydym yn bobl - hyd yn oed er ei fod yn teimlo fel fy mod bwrw golwg i lawr a rhaniad 2 yn ddiweddarach roeddwn yn gwybod lle mae'r hosan yw, fy ymennydd a fy llygaid yn ôl pob tebyg oedd yn gyflym sgimio o'r rhai sanau, ac yn bachu yna ymlaen i'r un dan sylw. Felly, os byddwn yn oed yn fwy bwriadol bellach fel cyfrifiadur, sut ydw i'n dod o hyd y pâr cyfateb? Wel, mae'n rhaid i ni ailadrodd. Mae'n rhaid i ni efallai ddolen dros y llanast o sanau ar y llawr lle yr wyf yn dweud rhywbeth fel AR GYFER POB hosan, dewis ei i fyny, AC OS yr un siâp a maint â'r un arall, YNA dot, dot, dot, byddwn yn parhau â'r stori. Felly, ar gyfer pob hosan, felly dwi'n codi'r hwn. I wirio a yw hyn gyfartal i hon. Dyw hi ddim yn, felly yr wyf yn rhoi o'r neilltu ochr. Yna mi ailadrodd eto. A yw hyn yn un gyfartal? Na, nid yw'n, felly yr wyf yn ei roi o'r neilltu. A yw hyn yn un? Rhif Mae hyn yn un? Na, ac yn y blaen. Ac yna yn olaf, gobeithio, y byddaf yn dod ar draws y hosan yma. Felly os mai dyma'r un siâp, maint, mynd ag ef. Ac yn awr, beth fyddai ein cam nesaf yma? Yeah? GYNULLEIDFA: Nodi dde o'r chwith. DAVID Malan: Iawn, nodi dde ac i'r chwith, felly yn ffodus, y math hwnnw o waith. Mae cymesur bach, neu dwi wedi gwisgo dim ond iddynt y ffordd honno. Mae pob hawl, felly dwi wedi nodi y dde. Ac yn awr, cyn i ni symud ymlaen, gadewch i mi nodi beth Joseff bod yn ei wneud yma fel math o rhaglennydd hyddysg. Felly eto, does dim un ffordd o wneud hyn, ond y tu hwnt i rhifo'r llinellau, Joseph eisoes wedi dechrau gwneud hyn fath o bant. Yn wir, mae hyn yn gonfensiwn gyffredin iawn mewn rhaglenni, lle pan fyddwch yn gwneud rhywbeth yn ailadroddol, dolennu arddull, fel y rydym yn awgrymu gyda'r ymadrodd Saesneg "AR GYFER POB hosan, "y confensiwn yn pseudocode ac, fel y byddwn yn gweld, ieithoedd rhaglennu arferol, ydy at jyst mewnoliad. Cyrraedd y bar gofod ychydig o weithiau, daro 'r allwedd Tab neu yn y blaen, fel bod nythu o dan "AR GYFER POB hosan" yw'r darn o pethau y mae angen i chi ei wneud o ganlyniad i'r ddolen. Felly dyna'r cyfan sydd ei chyfleu semantig. Nawr yn y cyfamser, y "Os yw'n yr un siâp a maint," y ffaith bod "Ewch" yn cael ei fewnoli ymhellach yn unig yn golygu dyna'r unig beth y dylech ei wneud os bydd y cyflwr hwnnw, os bydd y gangen, y fforch yn y ffordd, mewn gwirionedd yn wir. Felly, yn awr dyma, rydym ar gam pedwar, yn nodi dde ac i'r chwith. Rwyf wedi nodi gywir. Rhoi i mi gam pump. Ac yn dechnegol, gallem wir alw y AR GYFER POB peth - mae'n debyg y dylech rifedi ar yr holl linellau os ydym yn mynd i wneud hyn. JOSEPH: [Anghlywadwy] DAVID Malan: [Anghlywadwy]? Iawn, iawn, iawn, byddwn yn ei wneud eich ffordd. Mae pob hawl, felly cam pump, sut rydym yn ei wneud yr hosan cywir? Sut ydym yn symud ymlaen nesaf, yma? Ydw? GYNULLEIDFA: Codwch goes dde. DAVID Malan: Codwch goes dde, Iawn. Cam chwech? Yn gyflym. Yeah. GYNULLEIDFA: Dod o hyd i ben agored y hosan. DAVID Malan: Iawn, dod o hyd i'r pen agored y hosan. Mor dda. Felly yma, yn onest, byddai greddf cyffredin iawn yn unig fod rhoi ar hosan iawn, ond hefyd yn eithaf amwys. Oni bai fod y cyfrifiadur neu ddynol yn gwybod yn union beth mae hynny'n ei olygu, nid yw'n mynd i fod i weithredu hynny, felly dyma, rydw i wedi dod o hyd i'r agoriad y stoc. Cam saith? GYNULLEIDFA: Cyffyrddwch â'ch bysedd traed. DAVID Malan: bysedd Touch. Iawn, felly, yn awr rydym yn mynd - Mae pob hawl, dw i'n mynd i gymryd rhai rhyddid yma. Diolch. Cam wyth? Rhowch ar hosan. Iawn, felly rwyf bellach, yn meddwl ein bod yn ddigon agos i ddidoli o gymryd hyn yn un yn y cartref. Mae pob hawl, felly mae hyn yn mynd i fyny. Byddaf yn cymryd rhai rhyddid â'r hyn y mae'n ei olygu, mewn gwirionedd. Rhowch yr hosan ar. Mae pob hawl, sydd bellach yn gam naw? GYNULLEIDFA: Rhowch droed i lawr. DAVID Malan: Diolch yn fawr. Cam naw, yn rhoi droed i lawr, ac yn awr, gallwn ailadrodd. Felly, yn ôl pob tebyg, gallwn yn awr fynd i mewn i gam 10 a dweud nodi gadael hosan, ond mae hynny'n ôl pob tebyg ei wneud eisoes. Ac felly, yna, gallaf ddidoli o ailadrodd y camau hyn. Ond y math hwn o begs y cwestiwn. Cyn, y tro diwethaf roeddem yn awyddus i ailadrodd rhywbeth, rydym yn wnaeth iteraidd, dro ar ôl tro, a GYFER POB ddolen felly, i siarad. A fyddai'n gwneud synnwyr i ddefnyddio dolen er mwyn i drin y ddwy y chwith a'r dde hosan? Oherwydd ei fod yn teimlo fel y gweithrediadau hyn yn 'n bert lawer union yr un fath heblaw am y ffaith bod un yn cychwyn yma ac un yn cychwyn yma? Ydyn ni'n ddolen, neu a ydym yn unig yn cadw camau ysgrifennu 10 a 11 a 12? GYNULLEIDFA: Loop. DAVID Malan: Iawn, felly ddolen. Rwyf gallai mewn gwirionedd wedi dweud dim ond cadw i fynd. Felly pam mae hyn yn wir? Wel, mae hyn mewn gwirionedd yn y cyntaf o'n heb fod yn amlwg penderfyniadau dylunio, ac mewn gwirionedd, un o'r metrigau y mae byddwn yn dechrau gwerthuso, i ni ac i chi, y ansawdd y rhaglen yw pa mor dylunio'n dda ydyw. Ydych chi wedi gwneud cyn lleied o waith sy'n angenrheidiol i wneud y gwaith y mwyaf yn gyflym, naill ai o ran eich amser neu ran amser y cyfrifiadur yn rhedeg? Faint o weithrediadau yn y mae'n ei gymryd i weithredu? Felly gellir dadlau, mae hwn yn gyfle i ddolen oherwydd cyn gynted ag y byddaf yn dechrau copïo a gludo, fel Joseph yn effeithiol byddai ddechrau gwneud mewn eiliad, rydych yn fath o gwastraffu eich amser, ac rydych chi'n cael eich ddwbl mynegiannol. Ond ar yr un pryd, mae'r rhain yn wir dim ond dau arbennig achosion, i'r chwith ac i'r dde. Ac lle o'r blaen, efallai y byddwn yn cael 10 neu 20 neu fwy o sanau yn pentwr, mae'n bendant yn gwneud synnwyr i beidio â chael 50 o linellau o cod yn dweud wirio hyn hosan, yna yr un nesaf, yna yr un nesaf. Yma, mae ychydig yn llai amlwg, a byddwn yn cynnig y gallem fynd naill ffordd neu'r llall. Gallem naill ai gael y ddolen, er mai dolenni ddwywaith, ynteu a allem copïo a gludo dim ond ychydig bach yma er mwyn cael y swydd ei wneud. Ond mae'r rhaglen hon yn buggy, felly, i siarad. Gallai fod rhai camgymeriadau, gwallau, neu achosion gornel, felly i siarad, nad ydym ddim wir yn rhagweld. Nid oes unrhyw beth yn mynd o'i le y tro hwn, ond beth allai fod wedi mynd o'i le wrth weithredu rhaglen hon? GYNULLEIDFA: Nid oes gennych unrhyw sanau. DAVID Malan: Felly, gallai fod unrhyw sanau yno o gwbl. Felly, gadewch i ni ystyried yr achos gornel. Felly, pe baem yn gallu sgrolio yn ôl i fyny i gam un, felly cam un oedd plygu i lawr, fel sy'n gwirio allan. Cam dau, codwch eich hosan, ond wedyn yn dod o hyd i hosan paru, adnabod yn iawn. Rydym yn fath o wneud criw cyfan o dybiaethau, ac mae hyn yn, dweud y gwir, pam rhaglen weithiau damwain. Os ydych chi, y rhaglennydd, wedi gwneud tybiaethau penodol, fel yn sicr mae mynd i fod yn sanau neu yn sicr mae mynd i fod yn cof ar ôl yn y cyfrifiadur, yn sicr mae mynd i fod yn lle ar y ddisg ar ôl ar y disg caled - Wel, os ydych yn gwneud rhagdybiaethau hyn, ac nid dyna, mewn gwirionedd, gwirionedd, pwy a ŵyr beth weithiau y cyfrifiadur mynd i'w wneud? Ac weithiau, pan fyddwch yn cael y bêl traeth nyddu neu Windows rhewi neu yn y blaen, dyna yn union oherwydd bod rhai Nid yw rhaglennydd yn rhagweld yr achosion hynny cornel fel y'u gelwir. Beth arall allai fod wedi mynd o'i le yn y rhaglen hon? Yeah? GYNULLEIDFA: Nid oes gennych goes dde a choes chwith. DAVID Malan: Efallai na fydd Iawn, wedi ddau goes dde a goes chwith, ac felly efallai na fydd y rhaglen hon yn gyffredinol berthnasol. Eraill? GYNULLEIDFA: Efallai eich bod wedi nodi hosan amddifad. DAVID Malan: Efallai fy mod wedi codi hosan amddifad, felly mae nad ydynt yn cyfateb hosan mai dim ond nad oes gan frodyr a chwiorydd oherwydd fy mod i wedi cholli, ei fod yn rhwygo, ei fod yn y golchi o hyd, neu debyg. Felly hynny, hefyd, wedi ei drin mewn gwirionedd. Yeah? GYNULLEIDFA: Efallai eich bod eisoes wedi sanau ar. DAVID Malan: Efallai yr wyf eisoes wedi sanau ar. Doeddwn i ddim mewn gwirionedd yn gwirio. OS nad oes gennych sanau ar, YNA mynd ymlaen i wneud llinell un a dau. A gallai hynny ddigwydd. Byddwch yn syrthio i gysgu gyda'ch sanau ar ac ati, fel y hynny, hefyd, achos cornel rhesymol iawn. Ac efallai un arall? GYNULLEIDFA: Mae'r hosan sydd y tu mewn allan. DAVID Malan: Felly yr hosan y tu allan, felly gwnaethom unrhyw wall gwirio, yn fyr. Doedden ni ddim yn gwirio os yw cyflwr y byd fel yr ydym yn ei ddisgwyl. Doedden ni ddim yn gwirio os ydym mewn gwirionedd o hyd i'r hyn rydym yn chwilio amdano. A hyd yn oed er bod hyn yn fath o enghraifft chwerthinllyd cynnwys sanau, ar ddiwedd y dydd, mae hyn yn union y math o feddylfryd angen i chi gael wrth ysgrifennu rhaglenni, hyd yn oed yn Scratch yn ogystal ag yn C, yn JavaScript, yn PHP, oherwydd fel arall, bydd eich rhaglenni arddangos y cyfateb y bêl traeth nyddu neu dim ond cynnyrch canlyniadau anghywir. Felly diolch yn fawr yma i ysgrifennydd ein Joseph. [Cymeradwyaeth] DAVID Malan: pob hawl, felly beth yw, mewn wir, rhaglen gyfrifiadur? Wel, gadewch i ni gymryd cipolwg sydyn ar gynrychiolydd un yma. Felly, mae hon yn rhaglen ysgrifenedig mewn iaith o'r enw C. C yn ieithoedd mwy newydd yn weddol hen y dyddiau hyn, ond mae llawer yn cael eu hadeiladu ar ei ben. Yn wir, PHP, un o ieithoedd ar y we-ganolog gallwn eich defnyddio tuag at ddiwedd y tymor, sydd ei hun wedi hyn a elwir yn cyfieithydd, rhaglen sydd wedi ei ysgrifenny yn C, ond yn fwy ar y yn yr wythnosau lawer o hyn. Ond y rhaglen hon, ac mae hyn yn beth mae'n ei olygu i ysgrifennu rhaglen, er yn un syml iawn. Mae gennym rai gystrawen eithaf cryptig yma, ond gallwch yn ôl pob tebyg dyfalu, hyd yn oed os nad ydych erioed wedi rhaglennu o'r blaen, yr hyn y rhaglen hon yn ei wneud. Yn wir, nid wyf yn gwybod beth yw printf, ond yn sicr argraffu conjures i fyny y syniad o argraffu rhywbeth. Ac felly ydy, mae'r rhaglen hon yn y pen draw yn mynd i argraffu y geiriau "Helo, World." Nawr, p'un a oes gennych Mac neu PC neu gyfrifiadur Linux, ods yn, o leiaf os ydych yn llwytho i lawr rhai yn rhydd meddalwedd sydd ar gael, gallech fod wedi bod yn ysgrifennu rhaglenni ar â'ch gliniadur eich hun ers peth amser bellach. Ar Mac OS, er enghraifft, mae rhaglen hon a elwir yn Terminal sy'n dod gyda Mac, dyna fel arfer yn eich Utilities ffolder, ac yn gyffredinol mae'n agor du a wyn neu ffenestr gwyn a du ar y mae gennych chi ysgogi lle gallwch deipio gorchmynion. Felly, mae hyn mewn gwirionedd yn atgoffa rhywun o'r hyn y cyfrifiaduron arfer bod cyn defnyddiwr graffigol rhyngwynebau, GUIs, daeth draw. Yn awr, yn Windows, mae gennych fecanwaith tebyg yn y ffurflen o'r brydlon gorchymyn. Ond yr hyn yr wyf i'n mynd i wneud yma ydy agor i fyny, gadewch i ni ddweud, TextEdit eto, felly yr un rhaglen rydym yn ddefnyddio ar gyfer pseudocode funud yn ôl, ac yr wyf i'n mynd i fynd yn ei flaen a ysgrifennu fy rhaglen gyntaf. Cynnwys stdio.h, beth bynnag yw ystyr, int brif ddi-rym, beth bynnag yw ystyr, ac yna yn y canol yma, printf ("helo, fyd."). Ac yna dyfyniad agos, cau paren, hanner colon. Nawr rwy'n mynd i fynd yn ei flaen a dim ond taro Command-S. Rwy'n mynd i fynd yn ei flaen ac arbed hyn fel hello.c, felly mae'r confensiwn yn y byd C raglennu yn enwi'r ffeil dot c. Rwy'n mynd i jyst roi cyfeiriadur cartref John Harvard, yn yma, cliciwch ar Save, ac yn awr yr wyf i'n mynd i fynd drosodd i hyn , ffenest terfynell sydd unwaith eto mae hyn yn brydlon du a gwyn lle y gallaf redeg gorchmynion. Gallaf redeg rhaglenni drwy deipio eu henw, nid gan dwbl-glicio eiconau yn yr ystyr arferol. Ond y peth yn ymwneud C yw bod iaith fel C gyntaf dod i mewn y ffurflen hon, rhywbeth o'r enw cod ffynhonnell. Rhywbeth sy'n edrych ychydig fel Saesneg, ond mae'n bendant yn llai fel Saesneg na Joseff a pseudocode funud yn ôl. Mae'n ychydig yn fwy dirgel. Mae'n ymddangos i ddilyn rhai patrymau neu reolau. Mae'r ffaith bod gennyf braces cyrliog, hanner colon, dyfyniadau, braces ongl, yn teimlo fel cyfrifiadur yn dod i fyny gyda hyn math o iaith. Ond os byddaf yn mynd, yn awr, at y ffenestr derfynell, gallaf redeg gorchymyn sy'n mynd i newid y cod ffynhonnell yn rywbeth o'r enw cod gwrthrych. Mae hynny'n mynd i drosi Saesneg fel chystrawen i zeros a rhai, yr un math o sero a rhai y siarad am ddydd Mercher. Nawr, dw i'n mynd i redeg gorchymyn o'r enw Clang. Mwy o wybodaeth am hyn yn ystod yr wythnosau i ddod, ond mae'n rhaglen gyda y gallaf drosi hello.c yn criw cyfan o sero a rhai. Rwan, dwi wedi hidla hon archa. Rydw i wedi rhedeg Clang, ac yna dywedais yn rhedeg eich hun ar y ffeil hon enw hello.c, yr wyf yn creu funud yn ôl, ac dim byd yn ymddangos i ddigwydd. Ond yn wir, os wyf yn poked o gwmpas fy cyfeiriadur cartref, byddwn yn gweld bod y rhaglen a enwir a.out wirion yn bodoli erbyn hyn. Mae hyn yn unig yr enw diofyn ar gyfer rhaglen wrth ysgrifennu yn y C. Gallwn ddiystyru yn y pen draw, ond a.out yw'r enw'r rhaglen Fi jyst troi i mewn i sero a rhai. Ac yn awr bod ei zeros a rhai, fy Mac, yn yr achos hwn, neu 'ch Ffenestri PC, yn gallu deall y darnau, y rhai seroau a rhai. Ac felly pan fyddaf yn taro Mewnbynnu, yr wyf yn gweld "helo, byd!" Ond mae'n bygi ychydig. Doeddwn i ddim yn hollol yn dweud "helo, byd: yr awyr: -! Jharvard." Aer yn enw fy chyfrifiadur. Jharvard yw enw'r cyfrif, felly beth oedd wyf yn amlwg yn adael allan o'r rhaglen? Rhyw fath o toriad llinell. Doeddwn i ddim yn taro sy'n cyfateb i Enter neu ddychwelyd cerbyd, ac mae hyn, unwaith eto, dyst i'r ffaith bod cyfrifiaduron yn gallu dim ond gwneud yr hyn rydych yn dweud iddynt ei wneud. Ac mae'r ffaith nad oeddwn yn dweud wrth y cyfrifiadur symud y cyrchwr i'r llinell nesaf - yn dda, nid sicr yn mynd i wneud dim ond rhyfygus i mi. Felly, os byddaf yn mynd yn ôl at fy rhaglen, a dywedaf \ n - Felly \ n, gan y byddwn cyn hir yn gweld, yw'r ffordd o cynrychioli pethau rhyfedd fel cymeriadau llinell newydd, pethau fyddai fel arall fod o ganlyniad i taro yr allwedd Enter. Ond am nawr, dim ond yn gwybod y byddai yn taro 'r allwedd Enter dim ond gwneud ein cod edrych yn rhyfedd, felly mae'r byd yn penderfynu, eich bod yn gwybod beth, i gadw pethau'n prettier, ei gadw ar un llinell, gadewch i ni dim ond dweud \ n cynrychioli llinell newydd. Gadewch i mi resave fy ffeil, ewch yn ôl at y ffenestr derfynell, a ail-redeg a.out, Enter. Still bygi, ond pam? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Yeah, felly mae angen i mi ail-grynhoi iddo. Felly, er mwyn llunio rhaglen yn unig yn golygu ei drosi o ffynhonnell cod i wrthwynebu cod ffynhonnell cod, i sero a rhai. Yn awr, mae'r ffaith fy mod yn taro Achub yn y TextEdit Nid oes gan yn dwyn ar y seroau a rhai oherwydd fy mod yn gyntaf bydd angen i Tell Clang hey, rwyf wedi newid y llinellau cod, y cod ffynhonnell. Mae angen i chi adfywio a.out. Nid oes dim yn ymddangos i fod wedi digwydd, ond mewn cyfrifiadur, mewn llinell orchymyn, fel petai, pan fydd dim yn digwydd, sydd fel arfer yn golygu popeth yn iawn. Pan fydd rhywbeth yn digwydd, mae'n golygu chi cyboledig i fyny, yn gyffredinol. Felly, gadewch i ni yn awr yn mynd i a.out, ac yn wir yn awr, yr wyf wedi "helo, byd. " Ac yn awr, beth am y seroau a rhai? Pan fydd, mewn gwirionedd, yw'r rhai? Wel, ni allaf wir yn unig fath o brocio o gwmpas iawn yn effeithiol. Gadewch i mi agor TextEdit. Dyma a.out. Gadewch i mi fynd yn ei flaen ac agor hyn, ac mae hyn yn ôl pob golwg beth yw fy rhaglen yn edrych fel. Felly, yr wyf wedi agor, nid hello.c, ond a.out. Ond nid yw hyn mewn gwirionedd beth yw fy rhaglen mewn gwirionedd. Yn amlwg, mae hyn yn rhyw fath o gymeriadau yn nhrefn yr wyddor. Ni welaf unrhyw seroau a rhai, ond mae hyn yn oherwydd a.out yn rhaglen. Sero a rhai - ond TextEdit, fel yr awgryma'r enw, mae'n yn union fel Notepad ar Windows, yn unig yw golygydd testun, felly mae'n drysu pawb o'r rhai seroau a rhai fel er eu bod, beth? Cymeriadau ASCII. Felly, yn cofio ar Ddydd Mercher, rydym yn unig yn dod i fyny gyda hyn mapio mympwyol o rifau, neu ddarnau, i lythyrau y wyddor a symbolau atalnodi ac yn y blaen. Felly TextEdit, ei fod yn olygydd testun yn camddehongli'r y patrymau o sero a rhai sydd i fod i fod yn geiriau argraffu, fel "helo, byd." Mae'n arddangos eu fel ASCII, a dyna pam y mae'n edrych yn flêr bach. Yn awr, mae rhai awgrymiadau o gywirdeb yn y fan hon. Hysbysiad os byddaf yn tynnu sylw, mae awgrym mewn gwirionedd "helo, byd, "fel rhywle yn y rhaglen honno yw y ddedfryd Ysgrifennais. Ond gadewch i ni fynd yn ei flaen ac yn awr yn gweld gyda rhaglen wahanol. Nid yw hyn yn un y byddwn yn eu defnyddio yn aml, ond mae hefyd yn dod gyda bydd Mac a bod tu mewn i'r peiriant CS50. Gadewch i mi fynd yn ei flaen ac yn agor gyda rhaglen o'r enw XXD. Yn ôl yn y dydd, rhan fwyaf o raglenni yn cael eu henwi yn eithaf cryptig, ac felly mae'r duedd yn parhau. Ond-b yn golygu boeri allan y rhaglen hon fel deuaidd. Peidiwch â rhedeg. Dangos i mi fel zeros a rhai, a dyma'r C rhaglennu rydym newydd ei ysgrifennu. Yn awr, I, fel bod dynol yma, yr wyf yn onest i ddim syniad beth y patrymau gwahanol o sero a rhai cynrychioli. Yn ôl yn y dydd, yr wyf, gyda fy cardiau tyllog neu debyg, byddai mewn gwirionedd yn cael i chwilio am yr hyn y patrymau gwahanol o 01111000, eu cynrychioli mewn gwirionedd. Neu waeth, byddai angen i mi wneud y dyrnu neu greu o'r patrymau o sero a rhai. Ond am nawr, yn cymryd ar ffydd bod CPU, Intel y tu mewn, felly i siarad, y tu mewn o bob un o'n cyfrifiaduron y dyddiau hyn, yn gwybod sut i ddehongli'r rhain seroau a rhai. Ac mae rhai seroau a rhai golygu print. Mae rhai seroau a rhai yn golygu chwarae sain. Mae rhai sero a rhai yn golygu cymryd mewnbwn defnyddwyr o'r bysellfwrdd. Mae pob math o batrymau gwahanol, ond rydym yn diolch byth, fel bodau dynol, dim ond yn gyffredinol bydd angen i chi boeni am rhaglennu ar y lefel hon yn deg uwch. A gall mewn dosbarthiadau CS eraill yr ydych yn ymchwilio'n ddyfnach i lawr ac yn edrych ar bethau fel y rhai seroau a rhai, neu hyd yn pethau eraill yn dal i. Felly nawr gadewch i ni droi hyn. Gadewch i ni symud yn gyflym iawn i ffwrdd oddi wrth C ac yn symud i rywbeth ychydig yn fwy gysur, ychydig yn fwy cyffrous, yn y gallwn ddod yn ôl ein animeiddiadau a synau ac yn y blaen y yn amlwg wedi dianc ni yn y yn deg rhyngwyneb cyntefig. Felly, gall y rhaglen hon yr un yn C yn cael eu cynrychioli yn awr yn y iaith rhaglennu o'r enw Scratch fel a ganlyn. Mae hyn yn cyfateb y rhaglen hon y byd helo a ysgrifennwyd yn yr iaith hon darn pos arddull o'r enw Scratch. Felly, gadewch i mi fynd yn ei flaen ac yn agor y rhaglen iawn. Mae'n cael ei alw eto Scratch. Mae'n ar gael yn rhwydd, ac mae hyn yr un peth rydym yn dechrau heddiw ymlaen. Felly hyn yma yn Scratch, ac mae'n torri i fyny i ychydig o ddarnau gwahanol. Ar y dde brig, mae gennym y cyfnod fel y'i gelwir, a yn wir, dyna lle mae'r cwcis perfformio dim ond ychydig yn ôl. Ac ar y cam hwnnw yn cael eu pethau o'r enw sprites, cymeriadau, neu gwrthrychau, neu endidau. Nid oes llawer o bwys sut yr ydych yn feddwl ohonyn nhw, ond maent yn yn rhaglenadwy, pethau symudol, ac yn yr achos hwn, mae hyn yn rhaglen bod ein myfyrwyr wedi ysgrifennu ychydig o sinsir cwcis, un neu ddau o 'cookies' crwn, criw cyfan o calonnau, criw cyfan o eyeglasses. Oherwydd hyn, mae ef neu hi yn gallu raglennu pob un o'r cymeriadau unigol ar wahân. Nawr, beth mae'n ei olygu i raglen y cymeriadau? Wel, gadewch i mi fynd yn ei flaen a chliciwch ar y cwci chwith a sgroliwch dros i'r chwith top yma. Yn yr ochr chwith uchaf y sgrin fy awr yw y hyn a elwir yn sgriptiau ardal. Mae hyn yn fath o lechi wag, i ddechrau, ar y gallaf llusgo a gollwng darnau pos, yn dweud y gwir, yn ei wneud yn union yr hyn y maent yn ei ddweud. Ar frig y pentwr o ddarnau pos yw'r gair Pan fydd Baner Werdd Clicio, ac os nad ydych wedi sylwi o'r blaen, y ffordd y dechreuais y gân cwci yn clicio, yn llythrennol, baner werdd. Felly y darn pos ar y chwith uchaf mae olygu pan fydd y cliciau dynol y faner werdd, ymlaen i wneud y pethau canlynol. Nawr, beth wnaethon nhw ei cookie symud ymlaen i wneud? Dwi ddim yn gwybod sut i ddehongli hyn eto, ond mae'r cwci ymddangos gosod ei rhigol i sero, yna mae'n aros thair eiliad, yna newidiodd ei grŵp i un, yna mae'n disgwyl yn ail waith, yna newidiodd ei rhigol yn ôl i un. Ac yna mae hyn mewn gwirionedd yn edrych fel tipyn o nam, ni ddylai rhaid i newid ei rhigol eto ac eto oni bai ei fod yn cael ei newid mewn mannau eraill, ond mae hyn yn gyfres o gamau yn beth bennu'r ymddygiad y cwci penodol. Felly, gadewch i ni mewn gwirionedd yn sgrolio yn ôl, ac nid edrych ar rywbeth mor gymhleth eto. Gadewch i mi fynd yn ei flaen ac yn mynd i'r Ffeil, Newydd, a chael llechen lân. Felly yn awr, yr wyf yn wir yn cael sgript ardal wag, llwyfan gwag, gyda'n sprite diofyn Scratch, ac ar yr ochr chwith uchaf ar fy sgrin ydw i'n cael y paled eu holl darnau pos sydd ar gael. Ac ni fyddwn yn mynd drwy bron bod llawer o'r pethau hyn heddiw oherwydd, unwaith eto, mae'r rhan fwyaf yn hunan-esboniadol, ond byddwn yn ceisio categoreiddio ac yn tynnu sylw at y tebygrwydd gyda'r ieithoedd hyn yn y dyfodol y byddwn yn plymio. Ac ar y chwith uchaf yma yw'r cyntaf Pan Faner Werdd Wedi Clicio, felly gadewch i mi lusgo hyn dros yma, chwyddo allan ychydig. Ac os wyf cliciwch y faner werdd, dim byd mewn gwirionedd yn digwydd oherwydd bod Nid wyf wedi atodi unrhyw resymeg, mae unrhyw ddatganiad fel petai, i y faner werdd, felly gadewch i mi fynd i fyny at y categori dros yma. Hyn o bryd rwy'n yn y categori Rheoli. Rwy'n hytrach na mynd i fynd i lawr i'r categori Edrych, a mae criw cyfan o bethau yma sy'n dweud Dweud, Meddyliwch, Newid Gwisg Lliw Switch,. Felly, gallwch wneud pethau gwirion gyda gwisgoedd a synau ac yn y blaen. Gadewch i mi fynd yn ei flaen a dweud Dweud, ac yn awr gan fy mod yn sylwi llusgo a gollwng y darn hwn pos, mae'n mynd i eisiau ei grybwyll i'r siâp cyfatebol. Felly, pan fyddaf yn mynd yn ei flaen ac yn gadael i fynd o fy llygoden, maent yn cloi'r gyda'i gilydd, ac yn awr os byddaf yn mynd dros yma a chliciwch y faner werdd, y gath mewn gwirionedd yn dweud helo oherwydd dyna beth sydd y tu mewn y blwch gwyn. Cawn weld bod y blwch gwyn yn beth a elwir yn dadl, neu baramedr. Mae'n ffordd o newid ymddygiad, yn yr achos hwn, mae ddrysu darn, ond os ydw i eisiau dweud yn union yr hyn a ddywedais o'r blaen, dweud helo, byd, gallaf yn awr yn mynd yn ôl dros yma, cliciwch chwarae, a "helo, byd" yw'r hyn yn ei ddweud. Felly, rydym yn llythrennol yn rhaglennu yn awr. Dyw hi ddim yn gyd grymus o raglen, ond o leiaf ei fod yn rhywbeth ychydig yn fwy grymus nag sy'n edrych, yn olwg gyntaf, fel hyn. A gallwn yn gyflym iawn yn cael yr holl mwy mynegiannol oherwydd yn Scratch, fel mewn ieithoedd eraill, mae pob Nid yw math o ddatganiadau, dim ond Dweud neu argraffu rhywbeth, ond gallwch wneud pethau fel aros, gan ein jyst yn gweld gyda y cwci, ryw nifer o eiliadau. Gallwch chwarae synau yn yr amgylchedd o Scratch yn unig fel y gallwch mewn sain chwarae rhaglen gyfrifiadurol arferol. Gallwch wirio hyn a elwir yn mynegiadau Boole. Felly nawr, gadewch i ni ddechrau i ychwanegu at ein pecyn cymorth rhai termau sydd mewn gwirionedd yn ymwneud â'r enghraifft a wnaeth Joseph ac rwy'n yma gyda'r sanau. Felly datganiadau yn unig datganiadau o ffaith. Gwnewch hyn. Mae cyfarwyddeb ar gyfer y sprite, neu mi dynol, i wneud rhywbeth. Mae mynegiad Boole yn rhywbeth sydd â gwerth, a gwerth gwirionedd fel y'i gelwir, mae hynny'n naill ai sero neu un, ffug neu yn wir, oddi ar, neu ar, na neu ie. Nid yw'n wir ots sut yr ydych yn meddwl am hyn, ond mae'n wladwriaeth deuaidd. Fel trafodwyd yn Nate dydd Mercher fideo, dau pethau gwahanol. Felly, yn Scratch, mynegiadau Boole yn digwydd i edrych fel y rhain gwrthrychau glas yma, ac yn yr achos hwn, y cwestiwn marc yn awgrymu eich bod yn gofyn cwestiwn. A yw'r gath, neu'r sprite, cyffwrdd y pwyntydd y llygoden? Felly, mae hyn yn un enghraifft o bloc Scratch sy'n mynd i'n galluogi i wirio ie neu ddim, yn y llygoden cyffwrdd y sprite ar y sgrin? A gall hyn fod yn ddefnyddiol os ydych chi ei eisiau mewn gwirionedd i wneud pethau gyda'ch llygoden. Yn ogystal â mynegiadau Boole, mae gennym bethau fel yn y llygoden i lawr, fel y gallwch ganfod y math hwnnw o cwestiynu yn ogystal. Gallwn wneud mathemateg os ydych chi ei eisiau mewn gwirionedd, ac mae defnyddiau mewn gwirionedd yn fwy grymus ar gyfer hyn na dim ond pur rhifyddeg, fel y cawn ni weld. Hap ffug a gwneud eich rhaglen yn ymddangos i feddwl neu ymddwyn yn wahanol yn seiliedig ar rai werthoedd sy'n ymddangos ar hap, ac yna mae gennym bethau fel mynegiadau Boole fel AC. Felly, os ydych ei eisiau mewn gwirionedd i wirio ddau werth, byddwn yn gweld yn y Crafu y gallwn mewn gwirionedd yn profi os yw hyn yn yn wir ac mae hyn yn wir. Er enghraifft, yn achos fy sanau, gallwn i wedi yn y iawn diwedd gofyn y cwestiwn os hosan chwith a'r dde ar hosan yn cael ei ar, roi'r gorau iddi. Rydych yn gwneud i gyd am y dydd, felly byddai hynny'n cyfle ar gyfer hynny. Felly, gadewch i ni fynd yn ei flaen ac yn ceisio ei rhoi wrth rhai o'r rhain gyda'i gilydd ac yn mynd i mewn i un neu ddau o enghreifftiau mwy grymus na'r un yma. Felly, gadewch i mi fynd yn ei flaen yma ac agor rhai o'r enghreifftiau fydd bob amser yn ar wefan y cwrs yn ogystal, ac agor hello2. Felly, yn hello2 yma, mae gennym raglen sydd wedi gwneud ychydig o pethau, ond nid yw'n gwneud hynny mor effeithiol ag y gallai. Felly dyma ei fod yn dweud "helo, byd" am eiliad ac yna aros am eiliad. Ac yna mae'n unwaith eto, ac yn ei rhoi eto. Felly, os wyf yn cliciwch y faner werdd, Scratch yn dweud "Helo, byd. Helo, byd. Helo, byd. "Ac mae hyn yn amlwg yn ymgeisydd yn awr ar gyfer gwella. Beth yw'r gwelliant ymylol, gobeithio, y byddwn yn gallu bellach wneud os Scratch yn cefnogi'r cysyniad? Rhyw fath o ddolen. Rhyw fath o ailadrodd, yn awr, yn braf, felly gadewch i mi mewn gwirionedd yn ceisio hynny. Gadewch i mi mewn gwirionedd yn mynd a symud hyn. Felly, gall rhybudd datgysylltu blociau mor hawdd ag y gallwch chi ychwanegu at eu cysylltu. Gadewch i mi fynd o dan Reolaeth, sgroliwch i lawr yma, ac yn wir, mae y darn hwn pos yma, dro ar ôl tro ac yn Forever a Forever Os. Felly mae 'na nifer o ffyrdd o fynegi lluniadau dolennu yn Scratch. Nid yw'r un yr wyf yn ôl pob tebyg am ei gael yma yw Forever oherwydd fy mod yn unig am i hyn ddigwydd dair gwaith, ond mae'n debyg Ailadrodd. Felly, gadewch i mi lusgo Ailadroddwch dros yma, llusgo a gollwng, a awr yn hytrach na dweud "helo, byd" dair gwaith ar wahân, gadewch i mi lusgo y darn hwn pos i mewn yma. A hyd yn oed er nad yw'n ymddangos i gyd-fynd, mae'r rhaglen yn smart digon i sylweddoli y bydd yn tyfu i'w llenwi, felly ei fod yn y siapiau sydd o bwys ac nid y maint absoliwt. Gadewch i mi newid y ailadrodd i dri, ac yn awr gad i mi fynd ymlaen llaw a llusgo Arhoswch Un Ail yno yn ogystal. Mae'n mynd i snap i mewn hefyd, ac felly nawr rwy'n mynd i lusgo hyn guys dros yma a dim ond taflu nhw i ffwrdd oherwydd fy mod yn nid oes angen iddynt anymore. Gadewch i mi chwyddo allan a chliciwch y faner werdd yn awr, ac mae gennym yr un rhaglen, ond, fel y rhagwelir blaen, gwell cynllunio oherwydd gallwch ddychmygu pa mor wael y rhaglen hon fyddai'n cael, yn sicr yn esthetig, os rhaid i chi dechrau copïo a gludo, copïo a gludo, neu llusgo a gollwng yr un pethau darn eto ac eto. Yn awr, nid yw dweud pethau ar y sgrin, argraffu i sgrîn, nid mewn gwirionedd i gyd fod cyffrous, felly gadewch i ni agor amrywiant 3 yma. Ac yn awr, fel y gwelwch, bydd hyn yn gyflym yn cael blino - [Meow] DAVID Malan: - ond mae hefyd yn fath o 'n giwt. [Meow] DAVID Malan: Iawn, felly yn well, a gallwn yn sicr ddefnyddio'r trosglwyddo un chunking hyn i fyny i mewn i dolennu strwythur, ond gadewch i ni wneud yn fwy diddorol fyth. Gadewch i mi fynd yn ei flaen ac yn agor i fyny amrywiant 4 yma, lle yr wyf yn cymryd pethau un cam ymhellach. Felly, yn unol â hyn, gwirion er bod hyn yn ddechrau olwg, yr hyn mae'r rhaglen yn mynd i wneud? Mae'n mynd i meow unwaith. Pam? Wel, mae un yn, cyn belled ag y gwn i, bob amser yn llai na dau. Does dim syniad o hap yma. Rwyf wedi llythrennol hard-coded un a dau, ond mae hyn yn enghraifft bellach o mewn gwirionedd gan ddefnyddio mynegiad Boole. Mae llawer yn hoffi fel Joseff yn ei pseudocode, y bant OS chi ddod o hyd sanau cyfateb YNA yn gwneud y canlynol, yma mae gennym mynegiant OS un yn llai na dwy YNA - ac yn wir, rydym hyd yn oed gael ychydig o bant, lle mae'r porffor yn cael ei fewnoli ychydig i'r dde - YNA ydych chi'n mynd i chwarae y meow sain. Yn awr, yn yr achos hwn, fod un bob amser yn llai na dau, felly mae hyn yn yn fath o wastraff o gyflwr. Ond byddwn yn gallu, fel y byddwn yn gweld, i lenwi pethau eraill i hyn bachau lle mae un a dau yn awr yn. Felly, gadewch i ni nawr symud ymlaen i enghraifft pump o'r rhain yn sawl croeso ac edrych ar yr hyn y mae'r rhaglen yn mynd i wneud. Felly nawr, mewn brawddeg Saesneg, sut mae hyn yn rhaglen yn ymddwyn? GYNULLEIDFA: Meows hanner yr amser. DAVID Malan: hanner Meow o'r amser, felly mae hyn yn ffordd o cyfleu syniad syml iawn. Hyd yn oed er ein bod yn digwydd bod yn defnyddio rhai anghydraddoldebau yma mewn rhai rhifau, mae hyn yn wir dim ond programmatical ffordd, yn ffordd fanwl gywir, o ddweud os y darn arian yn dod i fyny pennau, ewch ymlaen llaw a meow. Neu i'r gwrthwyneb, os bydd y darn arian yn dod i fyny cynffonnau, peidiwch meow. Ac yn yr achos hwn, sut yr ydym yn mynegi hynny? Byddwn yn dewis nifer hap o 1 i 10, ac os yw'r nifer yn llai na 6, mynd yn ei flaen ac yn meow. A sut oedd hyn yn mynd i mewn yma? Wel unwaith eto, sylwch dim ond y llusgo a gollwng a pethau gliciedau ar waith. Felly nawr gadewch i ni weld os yw hyn yn gweithio hap. Gadewch i mi fynd yn ei flaen a chliciwch y faner werdd. [Meow] DAVID Malan: Iawn. [Meow] DAVID Malan: Iawn. Iawn, da, felly rydym yn cael pennau, penaethiaid, cynffonnau yn effeithiol. Tails. [Meow] DAVID Malan: Penaethiaid. [Meow] DAVID Malan: Ardderchog. Mae bob amser yn anodd pan yn unig ystadegol byddwch yn cael drwg rhedeg, ac mae'n holl benaethiaid, a bydd y rhaglen nid yn ei wneud yn gweithio fel y byddech yn gobeithio. Ond y tro hwn, yn gweithio, ac ymddengys fod gennym, os ydym yn gwneud y nifer hwn yn anfeidrol o weithiau, ods o 50%. Nid nawr eto, y cyfan sydd yn ddiddorol, dim ond gwneud cathod meow, felly gadewch i ni weld os na allwn gwaith hwn ymlaen ychydig pellach yma yn fersiwn chwech. Felly nawr, mae gennym fersiwn boen go iawn - [MEOWS bob ychydig eiliadau] DAVID Malan: - a dyma'r hyn a elwir, yn gyffredinol, fel dolen ddiddiwedd. Dolen ddiddiwedd Felly yn yr achos hwn yn teimlo'n wael. Mae'n bendant yn mynd i ddechrau swnio'n ddrwg, ac eto ddiddiwedd Nid yw dolenni bob amser yn ddrwg. Allwch chi feddwl am gyd-destun mewn rhaglenni cyfrifiadur lle byddech mewn gwirionedd eisiau dolen ddiddiwedd? Yeah? GYNULLEIDFA: Pan fyddwch eisiau i wirio cyflwr. DAVID Malan: Iawn, pan fyddwch eisiau cadw wirio cyflwr? Fel beth? GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Iawn, da, felly os ydych yn cael rhywfaint o raglen, mae rhai math o beth automation cartref, lle rydych eisiau yn gyson monitro yn rhywbeth yr achos. A yw'r goleuadau ymlaen? A yw'r goleuadau ar oherwydd efallai bod gennych amserydd, a ydych am iddynt fynd i ffwrdd, efallai y bydd angen i chi wneud rhywbeth eto ac eto. Ac mewn gwirionedd, yn siarad o amser, unrhyw un ohonoch sydd wedi clociau ar eich cyfrifiadur neu gwylio digidol, mae hynny'n dolen ddiddiwedd. Mae'n parhau i ddiweddaru'r amser oherwydd ei fod yn gyson gwirio a gwirio a gwirio yr amser newid, ac os felly, oh, fy dduw. Mae'r cloc wedi newid o'r diwedd. Mae angen dangos bod gwerth i chi. Felly, tra bo'r rhan fwyaf o'r dolenni amser diddiwedd yn gamgymeriad, neu o leiaf yn penderfyniad dylunio gwael, weithiau byddant yn gwneud yn cael eu gwerth. Wel, gadewch i ni ymlaen llaw ymhellach yma i hello7. Felly, nawr bydd y rhaglen yn cael ychydig yn fwy rhyngweithiol. Gadewch i mi chwyddo i mewn yma, ac unwaith eto, mae hyn yn beth braf am Scratch. A byddwn yn ei ddefnyddio i fod yn glir, Scratch, dim ond heddiw ac i mewn i problem yr wythnos nesaf a osodwyd. Ond ar ddydd Llun, rydym yn plymio i mewn i C. Yn y rhaglen yma, mae'n ei wneud, am byth, y canlynol. IF cyffwrdd y pwyntydd y llygoden - yn awr, pwy yw'r cyd-destun yma? Wel, a rhybudd bod sydd wedi dewis i lawr yma ar y gwaelod gywir yn y gath, sprite un, felly y sgriptiau hyn, mae hyn yn rhaglen, yn berthnasol iddo ef yn benodol. Felly, os yw'r gath yn cyffwrdd y pwyntydd y llygoden, yna mae'n mynd i chwarae hyn i lawr ac yn aros dwy eiliad, ac yna ailadrodd nauseum ad. Felly, gadewch i ni fynd yn ei flaen a tharo chwarae. Nid oes dim yn digwydd, ond os ydw i eisiau anifeiliaid anwes y gath nawr, gallaf yn syml. [Meow] DAVID Malan: annwyl. [Meow] DAVID Malan: Iawn, llai blino, ond hefyd yn cael ddiflas, felly gadewch i ni symud ymlaen a gweld os na allwn chwistrellu rhesymeg ychydig yn fwy. Dyna oedd enghraifft saith. Yma yn enghraifft wyth, rydyn ni'n mynd i gyflwyno cyflwr ARALL. Mae cymaint fel fforch llythrennol yn y ffordd, y gallwch fynd gadael neu gallwch chi fynd i'r dde, amod mewn rhaglennu iaith fel Scratch, neu fel y byddwn yn gweld C, yn gallu caniatáu i chi mynd i un cyfeiriad neu'r llall drwy OS ARALL adeiladu. Felly, yn llythrennol, OS cyffwrdd pwyntydd llygoden, mae hyn yn fydd yn chwarae rhywfaint o sain, ARALL mae'n mynd i chwarae'r eraill sain, meow. Yn awr, os gallwch gasglu o enw synau hyn, gallwch yn ôl pob tebyg dyfalu beth y rhaglen hon i fod i gonsurio y syniad o. Mae'r gath yn meowing hapus. [Meow] DAVID Malan: Yn ffodus, ond nid yw'n eithaf hoffi cael eu cyffwrdd. [Rhuo] DAVID Malan: Felly, yn awr mae gennym gath a fydd yn gweiddi ar chi. Mae pob hawl, wel, mae un enghraifft olaf gyda chathod yma, ac gadewch i fersiwn ar agor naw o'r hyn yma. Felly nawr, mae gennym y sain nesaf mwyaf yn blino y gallwn i dod o hyd, felly mae gennym walrus neu llew môr yma sy'n mynd i wneud y canlynol. [RHISGL SEAL] DAVID Malan: Iawn, felly bydd hyn yn mynd ymlaen tan i chi chyfrif i maes sut y rhaglen hon yn gweithio. Felly, y tro hwn, yr anifail hwn ddwy sgriptiau, a beth sy'n diddorol yma yw bod y sgriptiau hyn yn mynd i weithredu ochr yn ochr. Felly, oherwydd eu bod yn ddau yn dechrau gydag un baner werdd glicio, mae fel mynd fel hyn, ac mae'r ddau rhaglen yn dechrau rhedeg unwaith hyd yn oed os ydynt yn dolennu am byth. Felly, yn y sgript uchaf, mae gennyf rywfaint o resymeg. Pa nodweddion mae hynny'n darparu i fyny yno? [RHISGL SEAL] GYNULLEIDFA: [Anghlywadwy] DAVID Malan: Os yw'n beth? [RHISGL SEAL] GYNULLEIDFA: Os tawel i sero, mae'n mynd i cadw yn chwarae yr gadarn. [RHISGL SEAL] DAVID Malan: Iawn, da. Felly OS tawel, beth bynnag mae hyn yn, y peth oren yn sero, YNA chwarae'r sain llew môr ac yn meddwl "O, hi, "am ddwy eiliad. Nawr, nid wyf yn gwybod beth yw dawel, ond dim conjures i fyny 'r syniad o ffug neu i ffwrdd. Felly, os tawel yn ffug, felly os nad tawel, cadw yn chwarae yr sain. Mae pob hawl, wel, sut ydym yn analluogi y peth hyn? Wel, gadewch i ni edrych ar y sgript 2 i lawr yno. Mae'r sgript 2 yn dweud gosod tawel i sero. Hysbysiad mae hefyd yn oren, felly beth Scratch yn ei wneud yw ei liwiau blociau yn y cysgod un os yw'n fath o ymwneud yn rhesymegol. Felly, yn union fel y top i fyny tawel yn oren, felly yn dawel i lawr yma a grybwyllir yn bloc oren. Ond mae hyn yn aseiniadau amrywiol, felly yn union fel yn algebra, mae gennych x ac y a z, mewn rhaglenni sydd gennych newidynnau, ond maen nhw'n gyffredinol - gadewch i ni oedi am foment a ffigur sut y i atal y cyfarth. Sut ydw i'n gwneud hyn? [RHISGL SEAL] DAVID Malan: Iawn. Mae'n dod i ben. Iawn. Felly, yn union fel mewn algebra gennych newidynnau x, y, a z, ond yn rhaglennu, cael newidynnau fel x, y, z ac yn gyffredinol gwgu arno oherwydd nad ydynt yn gwbl mynegiannol. Nid oes ganddynt unrhyw ystyr semantig o gwbl, felly yn y rhan fwyaf ieithoedd rhaglennu, gall newidynnau gael mynediad llawn enwau fledged neu eiriau neu ymadroddion, fel tawel, i ddweud yr hyn y maent yn ei wneud. Felly, mae hyn sgript ail hefyd yn gwrando am byth, a dywedwyd os yw'r allwedd, y bysellfwrdd Space allweddol, yn gwasgu, marc cwestiwn. Felly, mae yna cyflwr gyda mynegiant Boole sy'n mynd i ateb cwestiwn naill ai yn onest neu ffug, hynny, rwyf wedi y tu mewn ohono IF yr allwedd gofod ei bwyso A OS tawel yn sero, gosod tawel i un, ARALL gosod tawel i sero. Felly, mae hyn fforch eraill yn y ffordd, a sylwch sut rwyf wedi nythu y ddau OS amodau, yn ffordd o wirio yn y Bar Space gwasgu oherwydd os felly, yr wyf naill ai eisiau mynd hon ffordd neu'r ffordd honno. A sut ydw i'n gwrthdro gwerth tawel? Rhaid i mi wirio a yw'n sero? Os felly, ei wneud yn un, arall yn ei gwneud yn sero, felly, i toggle ei ddau gyflwr. Mae pob hawl, felly mae gennym yna mae rhai o'r rhain yn sylfaenol lluniadau. Mae gennym mynegiadau Boole, ac yn sylweddoli, hefyd, mae'r rhain yn yw bob un sy'n anghyfarwydd. Yn wir, dyma a screenshot cyflym o Harvard cwrs CS50 , offeryn siopa ac unrhyw wefan i maes 'na sydd â blychau ticio a natur anwastad galw heibio wedi mewn gwirionedd, yr holl amser, bod yn defnyddio Mynegiadau Boole. Yn yr achos yma, os ydych yn clicio y blwch nesaf at cwrs yn fwy na neu'n hafal i 4.5, neu yr un nesaf cyfadran, rydych yn pennu mynegiad Boole. Dangos i mi cyrsiau y mae gan yr ymadrodd yn wir. Neu i yr hawl i beidio, yn gwrthdaro â chyrsiau rwy'n cymryd, os yw hynny'n cael ei wirio, yna ie, yr ydych am wirio y cyflwr hwnnw, arall yr hoffech ei anwybyddu. Mynegiadau Boole Felly, yn fath o gyd o gwmpas, ond pan rydym yn eu rhoi mewn amodau, boed IF amodau, OS Elses, neu gallwn hyd yn oed yn ddyfnach efelychu lefelau, OS ARALL OS ARALL - felly dyna fath o wladwriaeth teiran. Gallwch fynd y ffordd hon, neu y modd hwn, neu y ffordd hon. Gallwn gadw pethau nythu i fynd i gyfeiriadau gwahanol. Felly Scratch Mae hyn dolenni, fel Forever. Mae ganddo nodweddion hyn fel Ail 10, mae rhai nifer cyfyngedig o weithiau. Mae gennym y gallu yn awr i osod newidynnau, felly yn yr achos hwn Rwyf wedi datgan, er enghraifft, a sanau amrywiol y'u gelwir. Rwyf wedi ymgychwyn i 0, ac mae hynny'n eto cyfeiriad arall gallem fod wedi cymryd i fyny yma gyda Joseph, lle efallai fy mod jyst cadw golwg ar faint o sanau gennyf ar a therfynu y rhaglen pan gwerth y newidyn yn 2. Byddai hynny'n ffordd arall o fath o generalizing y problem a gwneud rhywbeth eto ac eto. Wel, gadewch i ni fynd yn ei flaen ac yn awr yn cyflwyno pethau cwpl newydd. Felly, y rhai ohonoch sydd â phrofiad blaenorol Programing bydd yn gwybod bod llawer o ieithoedd yn cael araeau, neu fectorau neu rhestrau, ac yn wir, Scratch rywbeth fel hyn, hefyd. Felly, gadewch i ni weld os na allwn fynd â phethau i'r lefel nesaf yma. Os byddaf yn cael y gallu, yn awr, gyda'r rhain darnau pos i ychwanegu rhywbeth, fel geiriau neu rifau, i amrywiol, gallaf dechrau cronni pethau. Ac mae hyn mewn gwirionedd yn eithaf wrth sôn am bethau fel gemau, chwarae rôl gemau lle rydych yn fath o gerdded o amgylch rhai byd ffantasi casglu pethau, casglu pethau i fyny, ennill pwyntiau, neu debyg. Efallai y byddwch am gadw golwg ar ryw fath o restr, a yn wir, dyna beth un o'n cyn-fyfyrwyr yma oedd â rhywbeth o'r enw Fruitcraft RPG. Felly, gadewch i mi fynd yn ei flaen ac yn agor i fyny y peth yma, ac yn Fruitcraft, mae gennym y byd hwn i fyny ar y brig. Felly, gadewch i mi fynd yn ei flaen a chliciwch y faner werdd. Rhybudd ar y chwith uchaf yn rhyw fath o rhestr. Dyna gweithredu yn Scratch fel yr hyn y byddwn yn galw arae neu rhestr, ac yn awr mae gennym yr animeiddiad hwn bach. Felly, yn union fel ni ddechrau yn gynharach gyda'r cariad cwci stori, ac yna rydym yn uwch i gathod a llewod môr, yn awr gallwn gael pethau sydd hyd yn oed yn fwy rhyngweithiol. Ac mae hyn yn guy bach glas, gallaf ddechrau symud o amgylch ei cartref bach yma. Felly, mae'n edrych fel ei fod yn cael allanfa i lawr yma, felly rwy'n defnyddio yr allweddi saethau, i fyny, i lawr, o'r chwith i'r dde. Ac yn awr rwy'n tu allan, felly gadewch i hyn yr wyf wedi dod yma. Edrych fel oren, ac yn wir, cyn gynted ag yr wyf yn cyffwrdd y oren, mae'n cael ei plopped i mewn i fy rhestr. Os byddaf yn mynd dros yma i'r ceirios, yn awr gen i rywbeth arall yn fy rhestr. Ac mae hyn i gyd 'n glws a' n giwt, ond meddyliwch am sut, erbyn hyn, mae hyn yn cael ei weithredu. Wel, mae gennym syniad hwn o restr, a dyna mae'n debyg a darn pos ond eich bod yn dweud yr hyn rydych am ychwanegu ato, ychwanegu oren, ychwanegu ceirios. Nawr, beth mae hyn yn guy bach glas yn ei wneud? Wel, mae e'n sprite. Ac yn ôl pob tebyg, yr oren a'r ceirios - eu hunain yn sprites ar wahân. Ac yn defnyddio amodau mewn mynegiadau Boole, mae'r myfyrwyr oedd yn ôl pob tebyg yn gallu mynegi IF glas guy yn ceirios cyffwrdd YNA ychwanegu'r gair ceirios at ei rhestr eiddo, ac yna hefyd guddio y sprite ceirios. Felly, o dan y cwfl, mae pob tebyg yn dal yn ceirios sprite yno. Rydym wedi dweud yn unig i fod yn effeithiol anweledig. Yn awr, os wyf yn cadw gerdded dros yma, gallwn hefyd wneud hyn beth procsimol, ble y gallaf fynd a darllen yr arwydd. Felly, os guy glas cyffwrdd arwydd, gallwn gael y bloc Dweud yn union fel y gath i siarad â ni mewn geiriau, helo, yn gynharach, "Got ychydig o ffrwythau? Dewch ag ef i'r lle ffrwythau. "Mae pob hawl, felly yn awr, mae'n debyg, Rwyf wedi fy gyfarwyddiadau. Gallaf fynd dros yma i'r lle ffrwythau, llinell fy hun i fyny gyda'r drws. Yn awr, Im 'i mewn yma. Gallaf fynd i fyny at y dyn wrth y cownter. Mae'n darganfod fy mod i'n agos iddo, felly nid oes raid iddo fod yn eithaf yn union cyffwrdd, ac rwyf wedi ennill y gêm. Felly, mae gennym Fruitcraft RPG. Felly, gallwn wneud pethau hyd yn oed yn fwy datblygedig na hyn. Gallwn ychwanegu synau. Gallwn ychwanegu hap ffug. Gallwn ychwanegu cymhlethdod. Gadewch i mi fynd yn ei flaen yma, ac yn hytrach na gwneud hyn fy hun, gadewch i mi ddangos i chi un o'r cyflwyniadau yn fwy soffistigedig rydym yn cael y llynedd gan rywun penodol a enwir Blake. A allwn ni gael un gwirfoddolwr sy'n gyfforddus yn ymddangos ar camera ac yn barod i chwarae gêm? Beth am iawn yno? Dewch ar i fyny. Mae pob hawl, felly mae'r gêm yr ydych wedi dim ond ddiarwybod gwirfoddoli i chwarae - [Cymeradwyaeth] DAVID Malan: - yn rhywbeth o ddoe a elwir yn "Frogger." Beth yw eich enw? Renda: Renda. DAVID Malan: Redna? Renda: Mae fel Brenda gyda b. DAVID Malan: Iawn, Renda. David. Braf i gwrdd â chi. Felly, yma yn "Frogger," a phe gallem godi'r gyfrol yn unig ychydig, rydych yn hyn ychydig broga gwyrdd ar y gwaelod. Gallwch ddefnyddio chwith, i'r dde, i fyny ac i lawr, a bod eich nod yw i croesi'r stryd, croeswch yr afon, a chyffwrdd y padiau lili ar y brig. Aw. Un t mwy - ail-wneud, popeth yn iawn? Gadewch i stop hit i. Nid oes unrhyw un yn gweld hynny. [Cymeradwyaeth] [Cymeradwyaeth] DAVID Malan: Yeah. Da iawn chi. Ardderchog, diolch i chi. Felly dyna oedd Frogger. Nawr eich bod yn gwybod beth rydych chi wedi gotten i mewn eich hunain, gwirfoddolwr un yn fwy ar gyfer gwahanol gêm a gyflwynwyd gan fyfyriwr arall. Y byddwch am ddod ar i fyny? Beth yw eich enw? RICHARD: Richard. DAVID Malan: Richard. Mae pob hawl, Richard, yn dod ar i fyny. [Cymeradwyaeth] DAVID Malan: Mae gennych rywbeth fydd y sain cyfarwydd cyn bo hir, felly dyma yw eich cyfarwyddiadau. Felly, yn y man, mae rhai darnau pos yn mynd i sgrolio i fyny oddi wrth y sgrîn sy'n edrych naill ai ar ôl neu i'r dde i fyny neu i lawr. Rydych yn mynd i gael i gyrraedd y bysellau saeth yn y fath fodd ei fod yn cyfateb i'r rhai a darnau pos leinin i fyny gyda y bachau ar y brig. Felly, pan fyddwch yn gweld saeth chwith, ac mae'n llinellau i fyny gyda'r chwith saeth, daro 'r saeth chwith. Efallai y byddwch yn dechrau. [CERDDORIAETH - "CRYFACH" Kayne WEST] DAVID Malan: pob hawl, crwn mawr o gymeradwyaeth ar gyfer Richard. [Cymeradwyaeth] DAVID Malan: Da iawn. Diolch yn fawr. [Cymeradwyaeth] DAVID Malan: hwyl Felly, ac, i bob golwg, math o fygythiol ag y gallai fod i weithredu rhywbeth mor ymddangos yn soffistigedig fel hyn, yn sylweddoli bod y myfyriwr oedd heb ei osod allan a dim ond ysgrifennu hyn i gyd ar unwaith. Yn hytrach, gallwch dorri i lawr o broblem ag ymddangos yn gymhleth gan fod hyn yn ddarnau llai o lawer, ac mae hyn, hefyd, yn yn mynd i fod yn thema. Y peth gwaethaf y gallwch ei wneud yn ysgrifenedig rhaglen yn rhan fwyaf o unrhyw iaith i eistedd i lawr, ca 'n sylweddol gyffrous, ysgrifennwch y holl beth damn, ac yna dim ond gobeithio y mae'n gweithio gan y amser i chi orffen ysgrifennu. Yn hytrach, mae'r broses o raglennu dylai gyffredinol fod yn fwriadol, yn ailadroddol, lle 'ch jyst gosod camau bach iawn i chwi eich hunain, ddarnau bach ydych chi eisiau i frathu off, ac felly bod gennych y rhain bwyll sieciau, cerrig milltir bach y gallwch eu bodloni. Ac yna i chi adeiladu ar ben y rhai i greu mwy o bethau soffistigedig o hyd. Felly, er enghraifft, sut y gallem fynd ati i gweithredu gêm fel hyn? Wel, dweud y gwir, byddwn yn sicr yn dechrau o ddim ond cefnogi un allweddol ar y tro. Gadewch i 'jyst gweithredu cymorth ar gyfer y saeth chwith. Felly, y myfyriwr roedd yn rhaid i rywsut yn creu mewn Photoshop, neu mewn Crafu ei hun gan ddefnyddio golygydd graffegol bach, yn allweddol saeth sy'n edrych fel yr un yn chwith uchaf yno, dim ond y placeholder llwyd. Yna y myfyriwr wedi at chyfrif i maes beth x, y cydlynu i ei roi, ble i ei roi yn y ffenestr. 0, 0 yw hyd yma, felly mae'n rhaid i chi chyfrif i maes y nifer o picsel, neu ddotiau, i wneud iawn am y saeth o frig y sgrin. Ac yna, unwaith y yn ei le, nad yw eich rhaglen yn mewn gwirionedd yn wneud unrhyw beth eto, felly, wedyn mae arnoch angen sprite ail gyfer enghraifft saeth gwyrdd sydd wedi hefyd yn pwyntio i'r chwith, ac rydych yn Yna mae angen i ddechrau ysgrifennu rhai sgriptiau ar ei gyfer. A ydych yn sylwi, efallai, fod y pethau hyn dechreuodd dod ar gyflymder gwahanol, ac mae'r lliwiau yn wahanol mewn leoliadau, ac mae hynny oherwydd y myfyriwr yn defnyddio ychydig o hap ffug. A thrwy hap ffug, Fi jyst yn golygu dewis nifer rhwng rhywbeth a rhywbeth oherwydd eich bod yn gallu dechrau pethau map, fel os yw'r rhif yn rhwng un a bump, yn dda, gadewch i ni wneud y peth gwyrdd. Os yw'n rhwng 6 a 10, gadewch i ni wneud y darn pos goch yn lle hynny. Cyn belled â bod gennych ffordd o gynhyrchu rhyw fath o hap, gallwch wedyn wneud penderfyniadau ar sail y randomness. Ac yr wyf yn cadw ffug yn dweud hap oherwydd mae yna gyfrinachol ar ychydig budr. Ni all Cyfrifiaduron dod i fyny gyda rhifau ar hap. Gallant ond gwneud beth maen nhw'n ei ddweud am eu bod yn ddyn-made dyfeisiau. Ni allant yn unig dyfalu nifer fel yr ydym bodau dynol teimlo fel y gallwn. Mae cyfrifiadur yn ei wneud rhywbeth mathemategol i greu'r y rhith o nifer mathemategol, weithiau gan ddefnyddio diwrnod presennol o amser fel mewnbwn i figuring gwybod beth rhif i ddychwelyd, ond mwy am hynny rywbryd arall. Am y tro, dim ond yn gwybod y gallwn gynhyrchu hap ffug. Felly, unwaith y bydd gennyf y gallu ar gyfer y saeth chwith i ddechrau ymddangos ar adegau gwahanol ac ar gyflymder gwahanol, yna Gallaf fynd yn ôl ac ychwanegu rhai o'r rhain IF amodau. OS y sprite yn cyffwrdd y llall, A y saeth chwith allweddol wedi cael ei gwasgu - felly tri amod yn yr achos hwnnw. Gallaf ddefnyddio hynny a bloc o bosibl, yn yr achos hwnnw - YNA Dw i eisiau mynd ymlaen a hicyn y sgôr. Ac ar ben, mae gennym sgôr, yr ydym wedi Awesome, Cool, Da, a Boo. Felly mae pob golwg pum newidyn bod y myfyriwr yn ddefnyddio i gadw golwg ar y metrigau amrywiol. Felly, yn fyr, y canlyniad terfynol yn anhygoel. Mae'n hwyl, mae'n hwyl i chwarae, mae'n ymgysylltu, ond nid yw hyn yn os dechreuodd y myfyriwr. Ef neu hi ddechrau ar gyfres llawer llai o gamau. Felly beth yw rhai blociau adeiladu eraill y gallwn gwehyddu i mewn i'r rhaglenni? Wel, mae hwn yn gysyniad arall yn y rhan fwyaf o ieithoedd, Crafu yn eu plith, a elwir yn edafedd. Felly, ni all cyfrifiadur mewn gwirionedd yn wir yn gwneud pethau lluosog ar y amser nad, o leiaf fel arfer. Yn hytrach, cyfrifiadur gyffredinol mae dim ond un CPU, a hyd yn oed er bod cyfrifiaduron yn super gyflym a gall, felly, greu rhith o wneud pethau lluosog ar unwaith - gwirio eich post, yn cael amrantiad neges, argraffu dogfen - mewn gwirionedd, cyfrifiadur yn unig neidio o argraffu i IMing i anfon e-bost, yn ôl ac yn ôl ac yn ôl ac ymlaen mor gyflym yr ydym yn bodau dynol witted araf nid yn unig yn sylweddoli ei fod mewn gwirionedd rhedeg rhaglenni hynny ychydig ar y tro. Yn awr, mae hyn yn dipyn o o gwyn yn gorwedd y dyddiau hyn oherwydd, y dyddiau hyn, llawer o'n cyfrifiaduron yn yr hyn a elwir aml-graidd, er mwyn i chi cael un CPU ond creiddiau lluosog, sydd yn fath o fel cael CPUs lluosog. Ac felly weithiau, gall cyfrifiaduron wirioneddol wneud pethau lluosog ar y tro, ond yn gyffredinol o fewn rhaglen, y rhaglenni dibynnu ar y pethau hyn a elwir yn edafedd. Felly, edau yn fath o fel rhaglen bach sy'n gallu yn bodoli ochr yn ochr â rhaglen arall bach ac yn gallu rhedeg yn gyfochrog, neu o leiaf yn rhedeg o dan yr argraff bod maent yn rhedeg ar yr un pryd. Felly Scratch cefnogi'r pethau hyn a elwir yn edafedd. Gallwch gael sgriptiau lluosog gweithredu ar unwaith, yn union fel yr ydym yn gwnaeth gyda'r llew y môr, ac mae hyn yn ein galluogi mewn gwirionedd wedyn yn cael rhyngweithio ymhlith y rhain sprites. Gadewch i mi fynd yn ei flaen yma ac yn tynnu i fyny, gadewch i ni ddweud, edafedd, ac chwarae hwn fel a ganlyn. Mae gennym ddau sprites, pob un ohonynt gawn ni weld Dim ond un sgript. A byddwch yn sylwi mae'n ymddangos bod rhywfaint o wybodaeth yn y cath yn yr un yma oherwydd ei fod yn dod yn nes - [Rhuo] DAVID Malan: - ac yn nes at yr aderyn bach. Felly sut mae'r gweithredu adar? Wel, gadewch i ni edrych ar yr aderyn cyntaf. Mae'r sgript adar Dywedodd pan fydd y faner werdd yn cael ei glicio, ewch i x yn hafal i 115 a negyddol y yn hafal i 150. Felly, Fi jyst cyfrifedig allan lleoliad ar hap ble roeddwn i eisiau i'r adar i ddechrau, a Fi jyst plopped ag ef yno yn ddiofyn. Yna Forever OS nad cyffwrdd gath, felly mae hwn yn wahanol math o lluniad dolennu, ond yr un syniad, yn gwneud hyn eto a eto ac eto. Cyn belled nad ydych yn cyffwrdd y gath, yn symud tri cham, a os ydych chi ar y, bownsio ymyl, lle mae'n fath o adlewyrchiad yn yr ystyr biliards. Felly dyna sut y mae'r aderyn yn symud o gwmpas math o ymddangos ar hap, ond mae'r un oherwydd ei fod yn bownsio oddi ar y waliau yn yr achos hwn. Nawr bod y gath, yn y cyfamser, yn fath o dwyllo. Mae'r gath, pan fydd y faner werdd yn cael ei glicio, ie, yn dechrau yn rhywfaint o leoliad, lleoliad ar hap - yn rhannol o leiaf yn unol â'r dewis bloc ar hap gwyrdd a geir - ac yna Forever IF cyffwrdd â'r adar, yn chwarae sain llew, ac yna rhoi'r gorau i sgript. Felly, pan fyddaf yn dweud terfynu, neu adael o'r blaen, mae pos darn yn Scratch fydd mai dim ond lladd y rhaglen ar y pwynt oherwydd ei fod yn fath o wneud yn rhesymegol. Ond fel arall, yma, sylwch beth sy'n mynd i ddigwydd. Pwynt tuag at yr aderyn a symud un cam. Felly, y pwynt hwn tuag at adar yn fath o fantais y gath Mae gan ei fod yn yn gartrefu i mewn ar yr aderyn sy'n symud, a gallwn nawr yn gwneud y rhaglen hon yn fwy diddorol. Yn hytrach na symud un cam ar y tro y CPU cylch, fesul taro toll o'r gloch, fel petai, gadewch i mi fynd yn ei flaen a symud, gadewch i ni ddweud, pum cam ar y tro fel y gath. Cliciwch rhedeg, ac yn awr ei fod mewn gwirionedd dod o hyd iddo yn gyflym. Os byddwn yn dyblu hyn ymhellach i 10 cam, yn fath o fynd iawn iddo ef. Yn awr, gallwn roi yr aderyn, efallai, yn dipyn o fantais. Gadewch i ni fynd i'r adar ac yn dweud yn hytrach na symud tri cham, gadewch i ni symud iddo 30 o risiau. Ond mae'n dal yn cael eu dal yn y diwedd. Felly yma, mae gennym ddau edafedd. Mae'n charcharu yn Scratch gyda dau sgriptiau a dau sprites, ond mae'r syniad mewn ieithoedd eraill yw eich bod yn gallu ysgrifennu, yn ei hanfod, gormod o raglenni fel hyn a chael i redeg wirioneddol, neu imaginarily, ochr yn ochr. Nawr, mae hefyd cysyniad hwn yn rhaglennu a elwir yn digwyddiadau, ac mae hyn yn rhywbeth na fyddwn yn gweld yn C, y iaith a elwir yn C. Byddwn yn gweld ei tuag at ddiwedd semester mewn rhaglenni ar y we, pan fyddwn yn cyflwyno JavaScript a syniad o dudalennau gwe adeiladu sy'n ddeinamig ac yn rhyngweithio gyda defnyddwyr. Felly, yn yr achos hwn, mae gennym enghraifft syml iawn o ddau sprites, bachgen a merch, mae pob un ohonynt yn cael eu priod edafedd, ond rhywsut y ddau yn rhyng-gyfathrebu trwy gyfrwng o rywbeth a elwir yn ddigwyddiadau. Felly, gadewch i mi fynd yn ei flaen yma ac chwyddo i mewn ar sgript y bachgen, sy'n edrych fel hyn. Pan fydd baner werdd glicio, am byth wneud y canlynol. Os yw'r Gofod allweddol, neu y Bar Gofod, ei bwyso, yn dweud Marco am ddwy eiliad, dyna mai estheteg pur ar y sgrîn, swigen siarad ychydig, ond yna darlledu. Felly darlledu yn ddarn arall Scratch sy'n gynrychiolydd dosbarth o functionality wrth raglennu sy'n caniatáu i raglenni gwahanol, edafedd gwahanol, i ryng-cyfathrebu, i rhywsut anfon negeseuon, un i'r llall. Pasio darn o bapur yn y dosbarth yn fath o dechnoleg isel cyfatebol. Felly darlledu digwyddiad. Gallaf anfon y neges hon, ac mae'r digwyddiad gair yn gwbl fympwyol. Scratch weithiau hyn downs galw heibio, felly Fi jyst yn dod i fyny gyda gair ar hap fel digwyddiad oherwydd yn awr, hyn y mae'r bachgen yn pan fyddaf yn pwyswch yr allwedd yw efe darlledu digwyddiad hwn. Ac os wyf yn edrych yn awr ar sgript y ferch, ei sgript yn super syml oherwydd nad yw pob angen iddi ei wneud yw gweithredu pan fo y faner werdd yn cael ei glicio. Mae hi wedi'i chynllunio i weithredu pan fydd hi'n derbyn Dyfyniadau, "Digwyddiad", ac ar y pwynt hwnnw, mae hi wedi gwrando felly ar gyfer y digwyddiad hyn a elwir eto ac eto. Cyn gynted ag y bydd yn derbyn y digwyddiad hwnnw, mae hi'n mynd i weiddi Polo am ddwy eiliad. Ac fel y gallwch ddod i'r casgliad efallai o hyn yn union beth mae'r canlyniad nesaf yn mynd i fod. Gadewch i mi cliciwch y faner werdd. Nid oes dim yn digwydd oherwydd bod angen i mi wneud beth? GYNULLEIDFA: Bar Gofod. DAVID Malan: Bar Gofod. Bachgen yn dweud Marco, merch meddai Polo. Ond nid dyna'r codio galed fel y cyfryw. Dyna rhyng-gyfathrebu rhwng sgriptiau, felly yn awr rydym yn y gallu i wneud rhaglenni hyd yn oed yn fwy cymhleth lle y ddau rywsut yn rhyng-gyfathrebu. Felly gall yr hyn y cyfarwyddiadau rydym yn cymryd hyn? Wel, mewn set problem 0, mewn gwirionedd, y nod yw cael hwyl gyda Scratch. Ar gyfer y rhifyn haciwr, byddwch yn hytrach yn cael hwyl gyda mwy fersiwn soffistigedig o Scratch a elwir yn BYOB, Adeiladu Eich Blociau Hun, ond mae'r syniad yr un fath. Byddwch yn gallu - Oedd, yr oedd fwriadol. Mae'n dod o Berkeley. BYOB yw'r haciwr fersiwn rhifyn o hyn, ond mae'r ddau demograffeg, argraffiad safonol a rhifyn haciwr fel ei gilydd, mae'r nod wrth law ar gyfer yr wythnos i ddod yn wirioneddol yn unig i ddeifio yn dwfn, yn cael eich dwylo budr gyda rhaglenni, ac yn gwneud rhywbeth diddorol, gwneud rhywbeth rhyngweithiol, yn gwneud rhywbeth artistig, yn gwneud hwyl rhywbeth i mewn gwirionedd dangos, felly erbyn diwedd wythnos, bydd gennych brosiect, nid yn unig ar gyfer eich dewis cyntaf CS50 pset, ond bydd gennych rhywbeth bach y gallwch chi ddangos i ffwrdd yn Annenberg i ffrindiau neu hyd yn oed teulu trwy ei lanlwytho i wefan MIT. Ac felly fel y dywedais ar ddydd Mercher, rydym yn disgwyl i 90% o'r dosbarth, gyffredinol, i wneud y rhifynnau safonol. Sylweddoli nad oes hon hefyd allfa ar gyfer y rhai ohonoch sydd fyddai fel arall yn cael eich hun ychydig yn diflasu gyda'r pethau sylfaenol ac yn wir eisiau i ddeifio i mewn a chrefft gweledigaeth ydych eisoes yn eu cael gyda chefndir blaenorol yn hyn yn fwy cyfeillgar amgylchedd. Felly, gadewch i mi dynnu i fyny un enghraifft arall fod un o'n cyn- myfyrwyr yma oedd a dweud rhywbeth bach drwy gân. Mae hynny yr un modd, gan fod hyn yn dramâu, meddyliwch am sut y byddwch yn mynd ati i gweithredu'r rhaglen gan ddefnyddio union yr un fath blociau adeiladu, ychydig o hap ffug, a ychydig o gân gyfarwydd. Pe gallem godi'r gyfrol dim ond ychydig bach? [CERDDORIAETH - "mae'n bwrw glaw MEN" Y MERCHED TYWYDD] DAVID Malan: Dyna ni am CS50. Byddwn yn eich gweld ar ddydd Llun. [Cymeradwyaeth]