>> DAVID J. Malan: Felly mae hyn yn CS50.
Ac roedd hyn yn Colton Ogden CS50 ei hun, am fwy o pwy sydd gerddoriaeth rydych yn gallu
lawrlwytho yn soundcloud.com/cs50.
>> Felly heddiw rydym yn canolbwyntio yn oed yn fwy ar y grefft o raglennu.
Ac rydym yn cymryd lle'r ydym yn gadael oddi ar yr wythnos diwethaf, gan ganolbwyntio
ar Scratch, a oedd hyn yn iaith raglennu graffigol.
Ac yn cymryd pethau i lawr i lefel is, gan ddefnyddio rhaglennu mwy traddodiadol
iaith a elwir yn C. Ond ar hyd y ffordd, gwireddu
bod yr un syniadau yr ydym yn siarad am ddydd Gwener diwethaf
Bydd ailddigwydd nid yn unig yn hyn iaith C, ond yn y rhan fwyaf mhob arall
bod yn edrych ar y semester hwn.
>> Felly byddem ni'n ei alw y peth hyn yma yr hyn y tro diwethaf?
Mae hyn yn cynrychioli datganiad.
Felly, rydym yn galw hyn yn ddatganiad.
Ac mae'n gwneud rhywbeth.
Mae'n cyfarwyddyd y mae Efallai y cyfrifiadur neu Scratch weithredu.
Ac o hyn ymlaen, gadewch i ni hefyd yn dechrau galw rhywbeth fel hyn yn swyddogaeth,
am resymau y byddwn yn fuan yn gweld.
>> Yn y cyfamser, rydym yn gweld pethau fel hyn.
Ac mae'r rhain yn gyffredinol yr hyn a elwir yn adeiladu?
>> CYNULLEIDFA: dolen.
>> DAVID J. Malan: Felly, dolen.
Felly eithaf syml.
Mae'n llythrennol yn gwneud yr hyn y mae'n ei ddweud.
Ac yn Scratch, os ydych am gwthio fwy o ddarnau pos i mewn 'na,
Bydd y darn yn tyfu i ffitio iddo.
A byddwn yn gweld yn C y y gallwn wneud yr un peth.
>> Math arall o ddolen, fodd bynnag, yn Scratch allai fod am byth,
neu mae unrhyw nifer o ddulliau eraill.
Ond gadewch i ni gymryd mwy edrych yn gyffredinol, gyda wyneb
mae hynny'n debygol yn eithaf cyfarwydd, ar ddolenni yn fwy cyffredinol.
Mark Zuckerberg: Un peth y cyfrifiaduron
yn dda iawn arno yw ailadrodd gorchmynion.
Fel person, byddech yn ei gael 'n sylweddol diflasu os ydych
roedd yn rhaid i wneud yr un peth llawer o weithiau yn olynol.
Ond gall cyfrifiadur wneud yr un peth neu hyd yn oed miliynau biliynau o weithiau,
ac nid yn diflasu, a gallu i wneud hynny allan yn dda iawn.
>> Felly, er enghraifft, os wyf awyddus i ddymuno i bawb
ar Facebook a pen-blwydd hapus drwy anfon e-bost iddyn nhw,
gallai gymryd mwy na fi ganrif i ysgrifennu allan mewn gwirionedd
pob un o'r negeseuon e-bost hynny i bawb.
Ond gyda dim ond ychydig linellau o god, gallaf cael system yn anfon e-bost at bawb
ar Facebook sy'n dymuno eu pen-blwydd hapus.
Felly dyna beth dolenni a pham eu bod yn werthfawr ac yn rhywbeth
y gall cyfrifiaduron wneud yn dda iawn.
>> DAVID J. Malan: Felly, os rydych wedi bod y derbynnydd
o rai o CS50 a Gofod Dropbox yn o hwyr,
dyna mewn gwirionedd yn union yr hyn yr ydym yn ei wneud, gan ddefnyddio cod yn eithaf fel 'na.
Rydym yn y bôn yn cael fawr taenlen i ba
Folks wedi bod yn mewnbynnu eu enwau a chyfeiriadau e-bost.
Ac rydym yn ysgrifennu ychydig bach o cod sy'n Gall ailadrodd dros y cyfeiriadau hynny
a boeri allan cyfeiriadau unigryw yn unrhyw achos a gyflwynir sawl gwaith.
Ac wedi hynny, yn anfon e-bost awtomataidd o bot CS50 yn,
gan gynnwys y cod cwpon.
>> Nawr rydym hefyd yn edrych ar hyn yn adeiladu y tro diwethaf.
Ac mae hyn yn arbennig enghraifft o'r hyn?
Felly, ie, mae mynegiad Boole.
Ac mae'r siâp a olygir i ddal hynny hefyd.
Pob cwestiwn o'r fath o'r ffurfio cywir neu anghywir mewn Scratch
Bydd yn edrych yn rhywbeth bach fel hyn.
Ac rydym yn galw hyn yn mynegiad Boole.
Mae hynny'n wir yn wir neu'n anwir, ie neu na.
Mae'n ffordd o ateb cwestiwn.
>> Ac yn y cyfamser, gallwch ddefnyddio'r rhain Boole mynegiadau tu mewn lluniadau
fel y rhain, pa un cwrs yn gyflyrau
neu ganghennau, yn ddiarhebol fforchio yn y ffordd.
A gall maent yn edrych nid yn unig yn fel hyn, ond gallant hefyd
wedi elses gysylltiedig â hwy.
A allwch chi mewn gwirionedd yn cael tair ffordd fforch yn y ffordd neu bedwar ffordd fforc
yn y ffordd, dim ond drwy nythu pethau hyn,
fel y byddwch yn gweld yn Scratch os nad ydych wedi gwneud hynny eisoes.
Ac fel y gallwch chi ei wneud yn C hefyd.
>> Gadewch i ni gymryd cyffredinol arall edrych ar alumnist, yn ogystal, sy'n
Gallai cyflwyno dull gwahanol i'r pethau hyn a elwir yn amodau.
>> BILL GATES: Mae pobl yn gwneud penderfyniadau bob dydd.
Er enghraifft, cyn i chi fynd y tu allan i chi math o gael os yw'r datganiad sy'n dweud,
os yw'n bwrw glaw, yna yr wyf yn Mae angen i gael fy siaced.
A chyfrifiaduron yn anhygoel ar ôl i chi penderfynu ar y mathau hynny o ddatganiadau,
eu bod yn gallu gweithredu yn ddibynadwy pethau hynny ar gyflymder anhygoel.
Ac felly rhaglen gyfrifiadurol 'n sylweddol yn ychydig o mathemateg a rhai
os bydd datganiadau lle y penderfyniad yn cael ei wneud.
>> DAVID J. Malan: Felly, fel Efallai eich bod yn gwybod, yr oedd
Folks fel Bill Gates, Paul Allen, ac eraill
bod cicio wirioneddol oddi ar y hyn a elwir yn gyfrifiadur personol
chwyldro rai blynyddoedd yn ôl.
Roeddwn i'n meddwl, cyn i ni plymio i mewn i rai administrivia,
byddem yn ymwneud stori gan y Albuquerque, Amgueddfa New Mexico Hanes Naturiol
a gwyddoniaeth lle mae rhai o Bill Gates ' a storïau cynharaf Paul Allen
yn cael eu adroddodd sut gennym yn awr cyfrifiaduron heddiw a Macs a mwy.
Ar gyfer hyn, fodd bynnag, mae angen dau wirfoddolwr sydd â lleisiau naratif da iawn
i ddarllen sgript yn uchel.
>> Mae pob hawl, beth am yn ôl yno.
Dewch ar i fyny.
A beth am o flaen yma.
Dewch ar i lawr.
Cymerwch eich lleoedd yma.
Wrth i chi guys yn dod i fyny, cwpl o gyhoeddiadau gweinyddol.
rhannu'r, y broses o ddewis adran,
Bydd hyn yn dechrau Dydd Mercher trwy ddydd Gwener.
Mwy am yr hyn sydd i ddod Dydd Mercher yn y ddarlith.
>> Adrannau Super, yn y cyfamser, yn cael eu rhywbeth yr ydym yn cynnig yr wythnos nesaf
lle mae'r dosbarth cyfan yn cael ei wahodd i gymryd rhan mewn ar raddfa eithaf mawr
adrannau, un yn fwy cyfforddus, un yn llai cyfforddus.
A byddwn yn cyhoeddi'r manylion o hynny, yn ogystal, yn ddiweddarach yr wythnos hon.
>> Adrannau yn y cyfamser, eu hunain, yn dechrau
mewn wythnos tri o'r cwrs, sero mynegai, sy'n golygu y rheiny yn gwpl o wythnosau
allan.
Felly, i beidio â phoeni.
Nid ydych wedi colli eto unrhyw beth hyd y llinellau hynny.
Yn y cyfamser yn y cyfamser, os ydych yn gennych unrhyw gwestiynau yn weinyddol,
e-bost fy hun a Dyfnaint a Gabe a Rob yn y cyfeiriad hwn yma.
>> Yn olaf, problem a osodwyd 0 yw, wrth gwrs, y tu allan.
Efallai eich bod wedi sylwi arno ar wefan y cwrs.
Dylai ddarparu i chi gyda yr holl atebion i gwestiynau
allai fod gennych ar hyd y ffordd ar gyfer dechrau arni gyda'r broblem a osodwyd.
Ond os ydych yn cael eich hun sydd angen help llaw,
ar bob cyfrif yn mynychu oriau swyddfa, Dydd Llun, Dydd Mawrth, Dydd Mercher, Dydd Iau
yr wythnos hon yn y nos mewn pedwar neuaddau bwyta.
Gweler y URL yno ar gyfer y manylion o ble fydd oriau swyddfa fod.
>> Nawr Gadewch i ni fodloni ein dau o westeion yma heddiw.
Beth yw eich enw?
>> JAY PAUL: Jay Paul.
>> DAVID J. Malan: Jay Paul, neis i gwrdd â chi.
>> Hikari: Hikari.
>> DAVID J. Malan: Hikari?
>> Hikari: Hikari.
>> DAVID J. Malan: Hikari.
Neis i gwrdd â chi hefyd.
Jay Paul a Hikari gennym yn o'u blaen ar y gerddoriaeth yma
sefyll dau sgriptiau fy mod hargraffu allan y bore yma gan y Mexico Newydd
amgueddfa o Hanes Natur a Gwyddoniaeth.
A hyn yr wyf yn meddwl Byddwn i'n ei wneud ar y uwchben
yn dod gyda'ch llefaru o'r sgript a'r hanes hwn
gyda rhai delweddau gweledol, dim byd annisgwyl.
>> A hyn yr wyf wedi ei wneud o flaen llaw ei prehighlight ar eich sgript
beth ddylech chi ei ddarllen, a'r hyn y dylech ei ddarllen.
Ac rydym annhymerus ei hanfod paragraffau yn unig yn ail.
Felly, mae'n llawer fel chi efallai wedi ei wneud yn y dosbarth Saesneg.
Dyna wir yn orfodi'r gynulleidfa i gredu yn eich stori yma.
Byddwn?
Felly y stori yma yw, mae gennym BASIC, ac mae'n dechrau yng Nghaergrawnt.
>> JAY PAUL: Yr oedd yn y gaeaf, 1974, yng Nghaergrawnt, Massachusetts
lle gall gaeafau yn oer.
A barfog, gwallt hir dropout coleg a enwir
Roedd Paul Allen drudging draws Harvard Sgwâr, ymgolli yn ei feddyliau.
Ei brif destun pryder yn y dyddiau hynny oedd sut i gael ei ffrind, Bill Gates,
i adael yr ysgol a mynd i mewn i fusnes gydag ef.
Hikari: Mae'r ddau eisoes wedi mynd drwy nifer o fentrau busnes
gyda'i gilydd, yn dechrau am Lakeside ysgol yn Seattle lle
maent yn cael eu talu mewn pryd cyfrifiadur am ddim i profi cyfrifiadur CDP-10 ar y tro leol
rhannu cwmni.
Y cynllun mwyaf diweddar wedi bod yn i roi'r gorau iddi ysgol ac yn ffurfio cwmni meddalwedd.
Roedd Allen chwith Washington State University.
Ond ar y funud olaf, Gates Penderfynodd i daro ag Harvard.
>> JAY PAUL: Y diwrnod hwnnw, gan groesi Harvard Sgwâr, gweld Allen y mis Ionawr,
1975 mater Poblogaidd Electroneg gyda'r pennawd stopio ddaear,
Kit Cyntaf minigyfrifiadur Byd i gystadlu Modelau Masnachol.
O dan y pennawd oedd llun o flwch bach
haddurno gyda goleuadau a switshis.
Fe'i galwyd y MITS Altair 8800.
Ac mae Allen yn gwybod hyn yn beth roedd wedi bod yn chwilio amdano.
>> Hikari: Dyddiau o drafodaeth dilyn.
Allen a Gates deall y arwyddocâd y Altair.
Roeddent wedi siarad yn aml am microbrosesyddion
ac yn aros i weld beth fyddai'n cael ei wneud gyda hwy.
Nawr roedd pecyn minigyfrifiadur ar glawr y Electroneg poblogaidd.
Mae'n debyg oedd ganddynt unrhyw feddalwedd eto.
Maent yn dychmygu cenedl o rhaglenwyr disgyn ar MITS.
Ac felly hwy a alwasant Ed Roberts, pennaeth y cwmni,
honni i gael fersiwn o'r Iaith raglennu SYLFAENOL bron yn barod
gyfer y Altair.
Nad oeddent.
Ac mae'n rhaid Roberts wedi gwybod nad oeddent.
Roedd yn cael 10 o alwadau y dydd o bobl a oedd â BASIC bron yn barod.
Ac mae ei ymateb stoc Roedd, "Y person cyntaf
sy'n dangos i fyny gyda gwaith SYLFAENOL cael y contract. "
>> JAY PAUL: Gates a Allen erioed wedi gweld Altair.
Nad oeddent erioed wedi gweld hyd yn oed y Intel 8080 microbrosesydd
wrth wraidd y Altair.
Ond ychydig o flynyddoedd cynharach Roedd Allen ysgrifennu rhaglen
ar gyfrifiadur prif ffrâm a efelychu gweithrediad Intel blaenorol
microbrosesydd.
Ac y tro hwn maent yn Byddai gwneud yr un peth.
>> Hikari: Gyda Intel 8080 llaw wrth ei ochr,
Eisteddodd Allen i lawr mewn Harvard CDP-10 cyfrifiadur
a ysgrifennodd y efelychydd a meddalwedd offer angenrheidiol i wneud y rhaglenni.
Yn y cyfamser Gates stopio mynd i ddosbarthiadau a neilltuo ei hun
i gynllunio'r SYLFAENOL, gan ddefnyddio pob tric
oedd yn gwybod i gael y maint i lawr yn is na 4 cilobeit.
>> JAY PAUL: Allan yn Albuquerque, Got Ed Roberts galwad oddi wrth Gates
gofyn am fanylion am sut mae'r Altair trin arferion penodol.
Nid oes unrhyw un wedi gofyn erioed o'r blaen.
A dechreuodd Roberts i gael diddordeb.
>> Hikari: Gyda datblygiad offer a'r dyluniad yn barod,
Gates a Allen ysgrifennodd y cod ar y CDP-10,
ymrestru myfyriwr arall Harvard, Monte Davidoff, i ysgrifennu rheolweithiau mathemateg.
Ar ôl noson olaf o rhaglennu, Allen got ar awyren
i gyflawni eu SYLFAENOL i MITS.
Treuliodd yr awyren ddod drwy'r poeni.
Ac yn ôl yng Nghaergrawnt Roedd Gates boeni.
Roedden nhw wedi profi eu SYLFAENOL a ei fod wedi gweithio ar y efelychydd.
Ond beth os bydd y efelychydd yn anghywir?
JAY PAUL: Gan fod yr awyren cysylltu Albuquerque,
Allen sylweddoli bod eu BASIC, erbyn hyn a gynhwysir yn daclus
ar gofrestr bach o punched tâp papur, byddai
yn ddiwerth heb wahân rhaglen, a elwir yn llwythwr, bod
Byddai dweud wrth y Altair sut i ddarllen y tâp papur lles
bwydo i mewn i'r peiriant teletype.
Cymerodd allan ei lyfr nodiadau ac yn gyflym sgriblo lawr rhaglen loader
mewn iaith y Cynulliad, ac yna â llaw cyfieithu hynny i mewn i'r 1s a 0s
byddai'r Altair deall.
>> Hikari: Roedd Allen disgwyl lân bach, cwmni, uwch-dechnoleg
rhedeg gan ddynion mewn siwtiau busnes.
Felly, yr oedd yn synnu pan gyfarfu Roberts ef yn y maes awyr yn edrych fel ranch
llaw.
Roedd Roberts hefyd yn synnu.
Pan fydd yn gollwng y Harvard rhaglennydd mewn gwesty drud,
Roedd Allen i gyfaddef na allai fforddio yr ystafell.
>> JAY PAUL: MITS, ei hun, roedd lleoli mewn canolfan stribed llychlyd.
Y tu mewn yn anniben fainc yn Altair
llwytho i fyny gyda 5 kilobytes o cof ac yn cysylltu gan cebl
i beiriant teletype.
Roberts a Prif Beiriannydd, Bill Yates, aros yn ddisgwylgar
fel Allen doglo ei loader rhaglen i mewn i'r Altair.
Dechreuodd y teletype chugging gan ei fod yn tynnu y tâp papur drwy'r tâp darllenydd.
Cymerodd efallai 15 munud i lwytho'r rhaglen.
Yna y teletype printiedig yn sydyn yn brydlon cof, yna yn brydlon parod,
a dechreuodd Allen teipio ychydig prawf gorchmynion.
I syndod pawb, y meddalwedd yn gweithio.
Roedd chwilod, wrth gwrs.
Ond y prif beth oedd ei fod yn gweithio.
>> Hikari: Yn ddiweddarach, ar eu ffordd i $ 3.00 cinio yn Pancho yn, hedfanodd gacynen
yn y ffenestr y pickup lori a pigo Allen ar y fraich.
Ond ar nad oes unrhyw beth mhwynt Gallai difetha hwyliau.
Erbyn hyn roedd gan y Altair ei SYLFAENOL, mae'r meddalwedd masnachol cyntaf am gartref
cyfrifiadurol, a wnaed gan Paul Bill Allen a Gates, gwneud busnes fel Microsoft.
>> DAVID J. Malan: Mae llawer o diolch i'n dau ddarllenydd.
>> [Cymeradwyaeth]
>> DAVID J. Malan: Nawr ydych wedi eich dewis,
cyn i chi adael, o disglair neu glow yn y dark-- oh,
aros un eiliad, wait-- disglair ac yn glow yn y tywyllwch eliffant
o Cheng Gong CS50 ei hun.
Hikari: Aw, diolch i chi.
DAVID J. Malan: All iawn, ddiolch 'ch ogystal.
[Cymeradwyaeth]
DAVID J. Malan: Felly stori wir.
Hyn yn golygu bod pob un o'r rhain peiriannau a pha mor hawdd ag yr ydym yn
yn eu defnyddio yn awr ac yn cymryd yn ganiataol, mewn gwirionedd
ddechrau yma, dim ond ychydig o gamau o'r theatr gwirioneddol hwn.
Ac yn awr heddiw, os nad ydych wedi bod, mae hyn yn Maxwell Dworkin, y cyfrifiadur
gwyddorau adeiladu, hefyd o amgylch y gornel.
Ac ar yr ail lawr o hyn adeilad yn hongian thair tudalen
o'r cod ffynhonnell gwreiddiol a Ysgrifennodd Bill Gates a Paul Allen.
Yn wir, os ydych yn defnyddio chwyddo mewn gallwch weld, nid yn unig
eu henwau yn y math gwreiddiol, ond hefyd
eu llofnodion y maent yn haddurno â Ychydig flynyddoedd yn ôl pan fyddant yn ymweld â ddiwethaf.
>> Ond beth oedd yn arbennig o gymhellol am hyn yn yr hyn y maent yn bwriadu ei wneud
oedd i ysgrifennu rhaglen a fyddai galluogi pobl eraill i ysgrifennu
eu rhaglenni eu hunain.
Ar y pryd yr oedd i gyd gyda peiriant hwn Altair wnaed gan MITS.
A'r holl maent yn ei angen oedd rhyw ffordd o gan ei gwneud yn hawdd i hobbyists a phobl
dymuno i ni yn yr ystafell hon at y rhaglen mewn gwirionedd bod heb o reidrwydd ddeall
Cod y Cynulliad, neu beiriant cod, neu Duw a'n gwaredo, 0s a 1s.
Rydym rhaglenwyr, fel y rhai yn yr ystafell hon, rydym
eisiau gallu mynegi ein hunain yn llawer mwy tebyg cod ffug
hyd yn oed os mai ychydig yn fwy ned picky nag y buom yn siarad yr wythnos diwethaf.
Nid ydym am i ysgrifennu cod fel hyn, a wnaeth Paul Allen a Bill Gates.
Yr ydym, yn lle hynny, yn awyddus i ysgrifennu cod sy'n yn edrych ychydig yn haws ei defnyddio.
>> Yn awr mae hyn yn iaith o'r enw SYLFAENOL.
Ac mae'r rhifau llinell ceir yr hyn yr ydych defnyddio i wneud dim ond rhifo'r llinellau o god
eich bod yn ysgrifennu.
Nid oes hyd yn oed yn rhaid i Rydym gwneud hynny y dyddiau hyn.
Ond gallwch weld yma sut PRINT "helo, byd"
Byddai yn wir mae'n debyg argraffu yn union hynny.
Ac felly yr hyn y Bill a Paul wnaeth oedd grymuso pobl i ysgrifennu cod fel hyn
hytrach o- os ydych yn edrych ar y gwyddoniaeth gyfrifiadurol wall-- cod fel hyn.
>> Yn wir, yn ddiweddar CS50 wedi cael cyfle
i eistedd i lawr gyda Athro Harry Lewis yn yr Adran Gyfrifiadureg, a oedd
Bill mewn gwirionedd a addysgir Gates rai blynyddoedd yn ôl,
ac yn sefyll yma cyn y rhai tair tudalen o dyfyniadau.
Gadewch i ni edrych.
>> HARRY LEWIS: Mae'r hyn yr ydych wedi yma yw rhestru o ddarn cynnar o feddalwedd
ysgrifennwyd gan Bill Gates a Paul Allen, sylfaenwyr Microsoft.
Felly, mae'r cod yn ddiddorol am ddau reswm.
Yn gyntaf oll, daeth yn Cynnyrch cyntaf Microsoft,
a oedd cyfieithydd ar gyfer yr iaith raglennu SYLFAENOL.
Ac yn ail, roedd hyn yn un o'r ymdrechion cyntaf
i greu cyfieithydd mor gyffredin gallai pobl ddefnyddio cyfrifiaduron personol.
>> Felly Bill Gates yn israddedig yn Harvard.
Dechreuais ddysgu yn Harvard yn 1974.
Gwnaed hyn yn 1975.
Felly yr oedd yn gynnar yn ei yrfa ac yn gynnar yn fy ngyrfa.
Fi 'n weithredol addysgir Bill yn cwrs tua'r adeg hon.
Nid oedd Paul Allen yn Harvard myfyriwr, ond mae'n
wedi bod yn yr ysgol yn uchel classmate o Bill Gates.
Os ydych yn dod ac yn edrych yn y rhestr, wnewch chi helpu
mewn gwirionedd yn dod o hyd i un rhan o dair enw, Monte Davidoff,
a oedd yn cyd-ddisgybl Gates yn yma yn Harvard.
>> Iawn, felly dyma 'an sylw diddorol i fyny yma.
Mae'n dweud "Yn 4K Gall dileu ail isradd ond ar gyfer Dylai dolenni yn dal i weithio. "
Iawn, felly beth mae hynny'n ei olygu yw bod Roedd dwy ffordd i lunio'r rhaglen hon.
Un oedd i redeg ar fersiwn o'r cyfrifiadur hwn Altair
mai dim ond 4K eiriau cof, 4096 o eiriau o gof.
Ond roedd gan y fersiwn mawr 8K.
Ac felly beth mae hyn yn ei ddweud yn fod yn y fersiwn 4K
bu'n rhaid i chi ddileu rhai cod i'w wneud yn ffit.
Ac un o'r pethau a fyddai'n cael ei dileu
fyddai'r drefn ail isradd.
Ond mae'n debyg y gyfer dylai dolenni o hyd
weithio hyd yn oed pan fyddwch yn casglu i lawr am ddim ond y fersiwn 4K y cyfrifiadur.
DAVID J. Malan: Felly, un o'r themâu, fel y byddwn yn gweld mewn gwyddoniaeth gyfrifiadurol,
yw syniad hwn o haenu a thynnu dŵr,
ac yn wir yn sefyll ar ysgwyddau o Folks sydd wedi dod ger ein bron, nid
yn wahanol i rai o'r Bill Gates a Paul Allen naratif yma.
A beth mae hyn yn ei olygu yw heddiw y gallwn eu cymryd i
ganiataol fod pethau mewn gwirionedd haws i ni ysgrifennu cod.
Yn wir cod, fel y dywedasom ar ddydd Gwener, yn a adwaenir yn fwy yn dechnegol yn cod ffynhonnell.
Ac mae'n Saesneg hwn fel cystrawen hynny'n fwy priodol ac yn fwy diffinio'n dda
na rhywbeth fel cod ffug, ar gyfer lle nad oes diffiniad ffurfiol.
>> A heddiw yr hyn rydym yn mynd i ganolbwyntio ar ei cod ffynhonnell
sy'n edrych fel hyn, a oedd yn cyfaddef ar yr olwg gyntaf
yn edrych yn hollol cryptig.
Ac yn dweud y gwir, mae'n ffordd fwy esthetig cymhleth na'r rhaglen sylfaenol yw.
Mae pob rhaglen hon yn ei wneud, dwyn i gof, yn yr hyn a wnaeth a ddywedwn?
'I jyst yn argraffu "helo byd."
Ac eto, yn edrych ar yr holl bethau y mae angen i lapio o gwmpas yr ymadrodd syml iawn.
Ond cyn hir i gyd o llinellau hyn a mwy
Bydd yn gwneud llawer gwell synnwyr i chi.
>> Ac mae'r llif fel a ganlyn.
Yr hyn yr ydym ei angen ar gael i ni yw cymryd cod, fel ffynhonnell
cod yr ydym newydd ei gweld.
Ac mae angen rhaglen newydd ei redeg trwy.
Mae arnom angen algorithmau y gall trosi cod ffynhonnell, fel hyn,
i mewn cod gwrthrych, 0s a 1s.
Mewn geiriau eraill, yr hyn rydyn ni'n mynd i ddysgu heddiw
yw sut i wneud hyn, ysgrifennwch cod ffynhonnell i fyny top,
ei throsglwyddo fel mewnbwn i arbennig rhaglen a elwir yn compiler,
ac rydym yn mynd i gynhyrchu cod gwrthrych.
Sydd ychydig yn ffordd ffansi o gan ddweud y bydd yn cymryd rhywbeth
sy'n edrych fel hyn, yn ei throsglwyddo i mewn i raglen o'r enw casglwr,
cynhyrchu cod gwrthrych sy'n edrych fel hyn.
>> Felly, mae'r rhain yn llythrennol y patrymau 0s a 1s
sy'n cael eu deall gan Intel cyfrifiadur y dyddiau hyn,
os dehongli gan y CPU, yr ymennydd tu mewn cyfrifiadur,
Bydd llythrennol argraffu allan, yn syml, "helo byd."
Nawr mae ffordd fwy 0s a 1s na chi Byddai yn gobeithio allai fod yn angenrheidiol ar gyfer hynny.
Ond mae hynny oherwydd ein bod yn adeiladu ar lawer o gymhlethdod
y gallwn eu cymryd o hyn ymlaen yn ganiataol.
Mewn geiriau eraill, mae llawer o bobl yn smart wedi rhoi llawer o offer oer ni
a meddalwedd pwerus ag yr ydym yn Gall yn awr yn gwneud prosiectau ar ein pennau ein hunain.
>> Felly gadewch i ni ddechrau arni.
Tra ddydd Gwener diwethaf, ac gyfer Problem Set 0 yr wythnos hon,
byddwch yn chwarae mewn byd sy'n edrych fel hyn.
Gan ddechrau heddiw ac am Broblem Set 1 yr wythnos nesaf, mae'r cod
yn mynd i edrych ychydig yn fwy cryptig, ond swyddogaethol yn
mynd i fod yr un fath.
Felly rhybudd, top yn Scratch, gwaelod yw C. Dweud y gwir Scratch
yn llawer haws ei ddefnyddio gyfeillgar a hygyrch.
Ond os ydych yn awr yn cymharu weledol top i gwaelod, mae yna fath o un i un
gohebiaeth rhwng y darnau pos a'r iaith
rydym chi ar fin i chwarae gyda nhw.
Yn benodol, yn dweud, mae'r pos glas darn i fyny top,
yn ôl pob golwg yn cyfateb i pa allweddair neu gymal arbennig yn yr iaith hon
o'r enw C?
CYNULLEIDFA: printf.
DAVID J. Malan: printf.
Mae hynny'n golygu argraffu fformatio.
A dim ond yn ffansi ffordd o ddweud printf yn C
yn mynd i fod yn ddatganiad neu swyddogaeth hynny printiau rhywbeth i'r sgrin.
Beth mae'n ei argraffu ar y sgrin?
Beth bynnag y byddwch yn dweud ei fod i y tu mewn o ddyfyniadau, tu mewn cromfachau.
Felly eto, rhaid cyfaddef, mae llawer o bethau
bod rhaid i chi gadw mewn cof, cromfachau, dyfyniadau, hanner colon,
a hyn oll.
Ond mae hynny i gyd yn fath o ymyl y pwynt.
Mae'r tecawê diddorol am y tro yw bod y bloc lais yn Scratch
'n bert lawer yn cyfateb i y datganiad printf yn C.
>> Yn y cyfamser, mae'r darn pos melyn hyd top, pan glicio baner werdd,
mae'n debyg cyfateb i'r hyn Keyword yma?
CYNULLEIDFA: Prif.
DAVID J. Malan: Felly prif.
Efallai int, efallai ddi-rym.
Ond phrif fath o synau tebyg mae'n bwysig, ac yn wir y mae.
Felly pan glicio baner werdd yw, unwaith eto, mae'r darn pos
sy'n cychwyn yn rhaglen Scratch gyfan.
Ond rydym yn mynd i ddechrau nawr yn galw mai prif, swyddogaeth hon a elwir yn brif.
>> Nawr yn y cyfamser rydym annhymerus cyffredinoli hyn fel a ganlyn.
Efallai y byddwn yn galw yn dweud swyddogaeth.
A gallai edrych yn benodol fel hyn.
Wel, beth am dolenni?
Os ydym am ddechrau trosi neu cyfieithu mwy mewn Scratch i C,
y peth hyn yma yn ôl pob golwg yn unig yn dweud "helo byd" am byth.
Felly, os ydych yn cysylltu y rhain sgriptiau gyda chath mewn Scratch,
dim ond mae'n mynd i gadw yn dweud mewn rhyw fath o swigen cartŵn,
"Helo byd, byd helo, helo byd, "ad nauseum, am byth.
Os ydym am wneud rhywbeth tebyg yn C, mae'n mynd i edrych ychydig yn cryptig.
Ond gallwn gyflawni'r un canlyniadau, gan ein bod yn y pen draw annhymerus
cael gwybod, gyda cystrawen fel hyn.
Rydw i'n mynd i ddefnyddio printf eto, oherwydd ar ddiwedd y dydd
Rwyf eisiau argraffu "helo byd."
A dwi'n ôl pob golwg gan ddefnyddio keyword nad yw am byth.
Mae'n lle hynny y gair tra.
Ond dim ond semantig yn Saesneg, er bod math o
yn awgrymu rhyw fath o ddolen neu feicio.
>> Felly mae hynny'n digwydd bod yn yr allweddair sy'n defnyddio C.
Ac er bod yn wir, pam nad yw tra wir yn ei olygu yn effeithiol am byth?
Wel, er, wrth i ni annhymerus fuan gwerthfawrogi yn oed yn fwy,
Mae rhwng cromfachau hwn ei ymyl lle gallwch roi mynegiad Boole.
Ac ar yr amod bod mynegiant yn wir, y cod hwn,
fel y dynodir rhwng dau rhain braces cyrliog gan y byddwn yn eu galw,
Bydd jyst cadw rhedeg dro ar ôl tro.
>> Felly, yn wir yn wir.
Felly, er bod dulliau cywir dim ond gwneud hyn am byth.
Mae bron yn dwp adeiladu i fynegi eich hun.
Ond nid oedd unrhyw byth allweddair yn C. Roedd tra.
Ac yr oedd yn syml iawn Mynegiant Boole fel yn wir.
Ac felly mae hyn, byddwn yn gweld, cyflawni'r un canlyniad.
>> Sut arall y gallech weithredu dolen?
Wel, yn Scratch gallech chi cod caled nifer penodol
o fersiynau yn y ddolen yma.
Ac felly dyna yn union yr hyn yr ydym Gallai wneud yn y fersiwn yma o C,
lle mae gennym hyn a elwir ar gyfer dolen.
Ac mae'r gyfer ddolen yma yn mynd i ailadrodd, braidd yn gryptig,
o werth 0 ar i fyny i ond yn llai na 10.
>> Nawr newidynnau mewn Scratch.
Efallai nad ydych wedi cael achlysur i ddefnyddio'r rhain.
Ond beth yw'r pwynt, yn gyffredinol, o newidyn wnaethom ni ddweud yr wythnos diwethaf?
Beth sy'n bod?
>> CYNULLEIDFA: Pwyntiau.
>> DAVID J. Malan: I bwyntio?
O, pwyntiau.
OK, cadw golwg ar bwyntiau, er enghraifft, mewn gêm.
Neu fwy yn ei wneud yn gyffredinol beth gyda'r newidyn?
Beth yw ddefnyddioldeb ohonynt?
>> CYNULLEIDFA: Cof.
>> DAVID J. Malan: Yeah, felly cof.
Mae'n ar gyfer storio rhywbeth.
A'r math o i mi gweledol gwirion a ddefnyddir tro diwethaf oedd fel hyn powlen wydr.
Ac os oeddem am storio rhywbeth tu mewn newidyn,
er enghraifft ar hyn o bryd y gwerth yw chwech oherwydd bod
chwe peli ping pong yn fan hyn.
Dim ond rhyw fath o storio cynhwysydd sydd o dan y cwfl
cael ei weithredu gyda darnau, 0s a 1s, fodd bynnag, cyfrifiadur yn digwydd i wneud hynny.
>> Felly, yn Scratch, os ydym am gael newidyn,
gallwn ddefnyddio bloc oren fel hyn.
Byddwn yn galw y cownter yn yr achos penodol hwn.
Yr wyf yn ymgychwyn i 0.
A'r hyn y mae'n ei wneud i mi wedyn?
Forever, dywedwch cownter, ac os byddwch yn chwarae gyda hynny mewn Scratch,
byddwch ond yn gweld Scratch.
Mae'r gath neu beth bynnag wisg yn eich rhoi ar Bydd ef yn siarad y nifer dan sylw.
>> Newid cownter erbyn 1 yn fel cynyddu o 1 ar.
Ac felly mae hyn yn mynd i cyfrif o beth felly beth?
O 0 tan anfeidredd, neu hyd nes y gwyliau Scratch,
neu hyd nes y byddwch fath o colli diddordeb yn gwylio
pa mor uchel y gall ef gyfrif mewn gwirionedd.
>> Felly, sut y gallem drosi hyn i C?
Mae'n mynd i edrych ychydig yn cryptig.
Ond unwaith eto, os ydych yn edrych ar bob o'r llinellau hyn yn unigol
maent yn fath o lineup yn gyffredinol.
Felly, mae'n debyg Int yn mynd i cael rhywfaint o ystyr arbennig yn C.
Byddwn yn gweld hynny eto.
Fel o'r neilltu mae'n golygu cyfanrif.
Felly, 'i jyst yn golygu rhif.
Felly dyna y math o powlen wydr Rwyf am, un
sy'n gallu storio rhifau, Nid yw ping pong peli.
Ac yr wyf i'n mynd i ddefnyddio'r arwydd cyfartal yno i aseinio ei fod yn werth o 0.
Felly dyna eithaf tebyg i set cownter i 0, ond yn C.
>> Yn y cyfamser, tra bod yn wir, a oedd yn cyfatebol, wrth gwrs, i am byth,
hyd yn oed er 'i' ychydig yn cryptic, ac yna tu mewn i'r braces cyrliog.
A allwch chi feddwl am braces cyrliog hyn, y gallwch deipio ar eich bysellfwrdd,
fel 'n sylweddol yn hoffi y crymedd yn y blociau dolen melyn yn Scratch.
Mae'n cwmpasu lluosog linellau o god.
>> Printf yn cael ychydig brawychus nawr oherwydd fy mod
gweld nid yn unig dyfyniadau mewn cromfachau.
Ond beth arall sydd newydd syntactically yn yr enghraifft hon?
Mae 'na cant d.
Ac yna slaes n yno.
Yr ydym yn gweld hynny o'r blaen, hyd yn oed er nad oeddwn yn sôn amdano.
Yna mae 'na coma.
Ac yna mae cownter.
>> Ond byddwn yn gweld mewn dim ond hyn o bryd bod hyn yn unig
ffordd safonol o ddweud print a "Rhif degol," dyfyniad, unquote,
rhywfaint rhif degol.
Ond dw i'n mynd i ddweud wrthych yn nes ymlaen beth y rhif degol yn.
Felly mae'r ffaith fod yna coma yn y llinell hon printf dweud,
yn golygu mynd yn ei flaen ac argraffu rhywfaint rhif degol.
O, a gyda llaw, y rhif yw beth bynnag yw gwerth y newidyn hwn yw.
Ac felly i wneud hyn yn fwy glir, byddwn yn gweld enghraifft
cyn bo hir sy'n cynnwys union printf yng nghyd-destun rhaglenni C go iawn.
>> Nawr dim ond i lapio fyny rhai o'r cysyniadau hyn.
Mynegiadau Boole, efallai na fydd gennych achlysur i ddefnyddio'r rhain yn eich rhaglen
ond byddwch efallai yn dda iawn, yn enwedig os ydych yn defnyddio amodau.
Ac felly mae'r rhain ddwy enghraifft o Scratch yn golygu os yw x yn llai na y,
neu os yw x yn llai na y ac y yn llai na z, sut y gallem cyfieithu hynny?
>> Wel, yn C 'i' jyst mynd i edrych fel hyn.
Ychydig cryptig, yn fwy cromfachau, rhai ampersands rhyfedd, ond yn y bôn
syniadau mor syml ag y maent yn y byd darn pos.
Rydym yn syml, gwirio os bydd rhywbeth yn llai na rhywbeth arall.
>> Beth am amodau?
Yn gryno yn Saesneg, beth mae hyn yn darn o cod Scratch ydych fyddech chi'n ei ddweud?
>> CYNULLEIDFA: Cymharu dau rif.
>> DAVID J. Malan: Cymharu dau rhifau, ac os yw x yn llai na y
mae'n ei ddweud gymaint.
Os yw x yn fwy na y mae'n ei ddweud gymaint, arall
os yw x yn hafal i y mae'n dweud cymaint.
Nawr ble wnaeth x ac y yn dod?
Pwy a ŵyr.
Mae'r darn o Scratch cod yn allan o gyd-destun.
Ond yr hyn yr ydym am ei wneud yn awr yw cyfieithu hwn am ychydig funudau'n i weld.
>> Felly, wrth i chi fynd yn gyfforddus yr wythnos hon yn Problem Set
0 chwarae yn y byd hwn ar y chwith, yn sylweddoli
nad yw'r syniadau yn newid yr wythnos hon neu nesaf neu du hwnt.
Rydym yn syml, yn mynd i dechrau ysgrifennu pethau
mewn ffordd wahanol gyda'n bysellfwrdd yn lle ein llygoden.
>> Felly, os yw x yn llai na y, a mae rhywfaint cromfachau yno,
yna mae rhai braces cyrliog eto i fath o grynhoi ei
yn union fel y darnau pos melyn yn ei wneud.
Ac yr wyf i'n mynd i printf x yn llai nag y ac yn y blaen.
>> Yr hyn sy'n braf am C, fel y gwelwch yma,
yw nad ydych yn cael nythu yma, nythu, nythu dyna o reidrwydd
mynd i wthio eich cod i'r dde.
Gall lle hynny mae gennych bopeth lineup daclus yn hoffi hyn.
Ond dim ond yn esthetig manylion byddwn yn gweld eto cyn hir.
>> Mae pob hawl.
Felly mae hynny'n dod â ni yn ôl at rhaglen hon yn edrych cryptig.
Gadewch i ni mewn gwirionedd yn ysgrifennu rhai cod.
Nawr sut ydych chi'n mynd ati i ysgrifennu cod?
Holl flynyddoedd eich bod wedi eiddo i Mac neu PC, n ben-desg neu liniadur,
mewn gwirionedd ydych wedi cael y gallu i ddechrau ysgrifennu cod rhaglennu.
Ond mae'n debyg eich bod ar goll math arbennig o raglen.
Gallwch sicr yn ysgrifennu cod.
Ond ni allwch o reidrwydd, allan o'r bocs,
trosi y cod ffynhonnell i mewn cod gwrthrych, 0s a 1s
heb beth ar eich cyfrifiadur?
CYNULLEIDFA: Crynhoydd.
DAVID J. Malan: Felly casglwr, ar y dde.
Nawr mae'r rhan fwyaf ohonoch yn ôl pob tebyg nid ydynt yn berchen ar compiler,
erioed wedi llwytho i lawr a compiler.
Ond byddwch yn gweld gallwch ei lawrlwytho fel y rhan fwyaf unrhyw ddarn arall o feddalwedd.
Yn y byd o Mac OS, gallech chi lawrlwytho neu wedi llwytho i lawr eisoes
rywbeth o'r enw Xcode neu GCC neu chlang.
Os ydych yn dod o'r Ffenestri byd gallech chi
wedi llwytho i lawr Studio Gweledol, Visual Basic, amgylcheddau fel 'na.
Mae dwsinau o crynoadyddion y dyddiau y gallech eu defnyddio.
Ond y tymor byr o hynny yma yw y byddai'n fod yn boen
ac, a dweud y gwir, mae technolegol hunllef i gannoedd
o bobl sydd â gwahanol ffurfweddau cyfrifiadur i bob
ffurfweddu eu peiriannau yn union yr un ffordd
er mwyn i ni i gyd fod ar yr un dudalen.
>> Felly yr hyn yr ydym, yn lle hynny, yn gwneud mewn CS50 yn rydym yn rhoi i chi
amgylchedd safonol, a Amgylchedd Linux dyna
mynd i edrych ychydig yn rhywbeth fel hyn.
Byddwch yn gweld mwy o hyn yn y Problem Set 1 fanyleb sy'n
yn mynd ar-lein hwn nos Wener.
>> A beth mae hyn yn golygu yw eich bod o hyn allan
yn mynd i fod yn gallu lawrlwytho a gosod rhaglen
Gelwir y Appliance CS50.
A ydych yn mynd i lwytho i lawr a gosod rhaglen arall o'r enw
yn hypervisor, sydd ychydig yn ffordd ffansi o gyflawni hyn.
P'un a ydych yn berchen ar Mac neu PC neu Linux cyfrifiadur neu gyfrifiadur Solaris,
neu beth bynnag gweithredu crazy system yr ydych yn rhedeg,
ydych yn mynd i lawrlwytho rhaglen Gelwir y hypervisor dyna
mynd i redeg y CS50 Offer ar eich cyfrifiadur
waeth beth yw eich system weithredu yn.
Mae hypervisor mewn geiriau eraill yn trosi ein stwff i ba bynnag iaith,
pa bynnag gyfarwyddiadau eich cyfrifiadur eich hun yn deall.
>> Felly mae hwn yn haenu.
Ac eto, mae hyn yn garedig o thematig yn y cyfrifiadur
gwyddoniaeth, mae'r adeilad ar ben o bethau.
Efallai y bydd gennych Windows.
Efallai y bydd gennych Mac OS.
Ond yn dechrau yr wythnos nesaf eich bod yn mynd i fod wedi llwytho i lawr
darn o feddalwedd rhad ac am ddim Gelwir y hypervisor.
Rydych yn mynd i wedi lawrlwytho'r darn meddalwedd a elwir y Appliance CS50.
>> Sy'n mynd i redeg yn y hypervisor, sydd yn mynd i redeg ar eich cyfrifiadur.
A'r canlyniad yw bod pob un ohonom fydd
fod â syml ffenestr tebyg hyn ar eich Mac neu PC
sy'n rhoi y rhith o bawb ohonom rhedeg yr un system weithredu,
heb unrhyw un arall effaith ar eich cyfrifiadur.
A gallwch sgrin lawn iddo ac yn ei hanfod yn ymddwyn
fel pe ydych yn cynnal system weithredu o'r enw Linux,
sef yr hyn y mae'r CS50 Offer yn seiliedig ar.
>> Felly gadewch i ni mewn gwirionedd yn defnyddio hyn nawr i ysgrifennu rhaglen.
Gallwch ysgrifennu rhaglen ddefnyddio Microsoft Word.
Gallwch ysgrifennu rhaglen ddefnyddio TextEdit, neu Notepad,
neu WordPad, neu 'n bert lawer unrhyw air rhaglen prosesu rydych chi wedi'u defnyddio erioed.
Ond y gwir amdani yw nad ydych ddylai defnyddio 'n sylweddol unrhyw un o'r rhaglenni hynny.
Rydych yn sicr, ni ddylid defnyddio rhywbeth fel Microsoft Word, sy'n
Mae gan wynebu a italics bras, a ffontiau mwy a ffontiau llai,
oherwydd nad oedd y cyfrifiadur yn ei wneud poeni am unrhyw un o hynny.
Mae'r holl y cyfrifiadur yn mynd i ofalu am ei
Saesneg fel cyfarwyddiadau ysgrifenedig yn C.
>> Felly, yr hyn y byddwn ni'n ei wneud y tu mewn o'r Appliance CS50
yn defnyddio rhaglen yn rhydd sydd ar gael, ac mae'n
cyn-osod yn y offer, a elwir yn Gedit.
Ac Gedit yn unig yw super syml golygydd testun fel TextEdit Mac OS yn,
fel Ffenestri Notepad mae hynny'n mynd i edrych yn rhywbeth bach fel hyn.
>> Felly gadewch i ni mewn gwirionedd nid edrych ar sleidiau o hyn.
Ond gadewch i ni mewn gwirionedd yn mynd i mewn i yr amgylchedd ei hun.
Rydw i'n mynd i fynd yn ei flaen a logio i mewn, yn y ffenestr arall,
at fy Appliance CS50, yr wyf i wedi cyn-osod ar fy laptop yma.
>> Hysbysiad bod, fel Ffenestri a Mac OS, 'i' got rhai bwydlenni.
Fel Ffenestri mae'n rhoi i lawr yno yn lle hynny
o Mac OS, sy'n ei roi i lawr yno.
Ond y gwir amdani yw ei fod yn pob math o yr un fath.
Ac i mewn yma yn ei chyfanrwydd criw o feddalwedd.
Mae Dropbox.
Mae criw cyfan o ategolion, rhaglenni graffigol yr ydym annhymerus
defnyddio yn nes ymlaen yn y tymor ar gyfer setiau broblem.
Mae porwr gwe a adeiladwyd yn y blaen bod hyn yn cyfrifiadur cyflawn llawn
tu mewn i gyfrifiadur.
>> Ond dw i'n mynd i glicio yma icon gwyn leftmost yma,
sef yr eicon ar gyfer Gedit.
Ac mae'n mynd i agor ffenestr sydd â tri phanel iddi,
yn un sydd ar ôl, yn un pen, ac yn un y gwaelod.
>> Nawr 'i' yn yr un dde uchaf y Rydw i'n mynd i mewn gwirionedd yn ysgrifennu rhai cod.
Felly gadewch i ni wneud hyn ,.
Rydw i'n mynd i fynd i File, Save.
Ac efallai na fydd chi erioed wedi gweld hwn ffenestr benodol o'r blaen.
Ond mae hyn yn debyg Mac OS neu Windows.
'I' jyst ffenestr gyda phob un o'r ffolderi
bod gennyf tu mewn cyfrifiadur hwn.
>> Ac yr wyf i'n mynd i achub y ffeil fel ag hello.c.
Ac yr wyf i'n mynd i fynd ymlaen llaw a chliciwch Save.
Ac yn sylwi yn awr yr wyf yn cael tab ar top chwith o'r enw hello.c.
Felly, yn ôl pob tebyg 'n bert cyfarwydd hyd yn oed os nad ydych wedi
Defnyddir y rhaglen benodol hon o'r blaen.
>> Ac yn awr yr wyf i'n mynd i deipio yn y rhai dilyniant eithaf cryptig o orchmynion
ein bod yn gweld funud yn ôl.
Cynnwys, yr wyf yn safonol / O.h.
Mwy am hynny cyn bo hir.
Prif ddi-rym int, cyrliog agored Brace, gau Brace cyrliog.
Ac yna y tu mewn o yno yn fy marn lle'r oedd gennym "helo byd," hanner colon.
Ac yn awr yn arbed.
>> Felly, mae hon yn rhaglen a ysgrifennwyd yn C, ysgrifenedig, felly, yn y cod ffynhonnell.
Ond ni all Fi jyst yn rhedeg y rhaglen hon.
Wyf yn fath o awyddus i ddyblu cliciwch ar eicon yn rhywle,
ond nid oes unrhyw eicon yn bodoli arall na'r ffeil cod ffynhonnell.
Yr hyn, unwaith eto, yw'r broses nawr bod Angen i mi redeg y ffeil drwy?
CYNULLEIDFA: Crynhoydd.
DAVID J. Malan: Felly a compiler.
Felly, mewn gwahanol gyfrifiaduron chi gwneud hyn mewn ffyrdd gwahanol.
Ond yr hyn yr ydym wedi ei wneud yma yng y Appliance CS50 dyna
cynrychiolydd o sut y gallech chi gwneud hyn ar lawer o wahanol systemau,
yw fy mod yn syml, yn mynd i rhedeg gorchymyn o'r enw gwneud.
A gwneud yn llythrennol yn mynd i wneud hynny.
Gwna fi rhaglen.
>> Felly gwnewch yn mynd i rhedeg compiler i mi.
Ac enw y rhaglen Yr wyf am ei wneud yw helo.
Nawr gwneud yn rhaglen.
A gwnewch yn ddigon i craff sylweddoli bod os byddaf yn ei ddweud yn gwneud helo,
mae'n mynd i edrych yn awtomatig am ffeil o'r enw hello.c
dim ond oherwydd dyna'r ffordd y mae'n cael ei ffurfweddu.
>> Felly pan wyf yn awr daro Rhowch yma, mae hyn Llinell cryptig crazy jyst got dienyddio.
Ac yn ymddiried ynof, cyn hir, o fewn ychydig ddyddiau,
byddwch yn deall yr hyn i gyd am y cyfrwng nonsens.
Ond am nawr, dim ond yn gwybod bod gwneud gweithredu ei sbarduno o casglwr.
Mewn geiriau eraill, mae'n dod o hyd casglwr ar fy nghyfrifiadur
mae hynny'n cyn-osod ar y Appliance CS50
y byddwn yn rhoi i chi yn Problem Set 1.
Ac mae'n Yna cymerodd hello.c fel mewnbwn, a gynhyrchwyd yn ôl pob golwg
0s a 1s fel allbwn.
>> Ac yn ddiofyn beth mae'n ei wneud yw ei fod yn arbed 0s a 1s rheini mewn ffeil o'r enw helo.
Ac er bod cystrawen hyn hefyd efallai fod yn newydd i chi, yn syml drwy ddweud dot
slaes helo yn mynd i fod y olygu wrth yr wyf yn rhedeg y rhaglen hon.
>> Am nawr ac am o leiaf cwpl o wythnosau, mae bron pob un o'r rhaglenni
rydym yn ysgrifennu yn mynd i fod yn ffenestri testun du a gwyn.
Dim llygod, dim clicio, heb ffenestri, dim eiconau.
Rydym yn mynd i gadw'n syml ac yn canolbwyntio ar y syniadau sylfaenol
i ddechrau cyn i ni gyrraedd rhywbeth lefel uwch, er enghraifft,
fel y gêm toriad allan y buom yn siarad amdanynt yn y ddarlith gyntaf yr wythnos diwethaf.
>> Felly, pan fyddaf daro Rhowch yma, 'i' cyfatebol yn yr amgylchedd yn unig testun
i ddyblu clicio yn eicon o'r enw helo.
Beth ydych chi'n disgwyl ewyllys digwydd pan fyddaf daro Enter hynny?
>> CYNULLEIDFA: Bydd yn argraffu "helo byd."
>> DAVID J. Malan: Gobeithio bydd yn argraffu "helo byd."
Ac yn wir y gwnaeth.
Nawr mae wedi bod rhywfaint cystrawen cryptig yma.
Gadewch i ailddirwyn am ddim ond eiliad a gweld os ydym
Ni all ddechrau casglu bod yn unig gan tinkering, ceisio a methu,
ynghylch yr hyn sy'n digwydd yma.
Beth os byddaf yn cael gwared ar y slaes n?
Nawr mae rhai ohonoch chi sydd i wedi raglennu o'r blaen yn ôl pob tebyg
gwybod ar unwaith beth y mae hynny'n ei olygu.
Ond ar gyfer y rhai ohonoch sydd i wedi erioed raglennu o'r blaen,
o leiaf yn meddwl i chi eich hun beth sy'n mynd i newid pan fyddaf yn ailgynnal y rhaglen hon?
Felly dw i'n mynd i fynd yn ôl i lawr at fy Ychydig ffenestr du a gwyn, a oedd yn
yn y ffenestr y mae Gallaf lunio hyn.
Rydw i'n mynd i ail-grynhoi helo.
Rydym yn mynd i weld yr un dilyniant cryptig o orchmynion.
Ac yr wyf i'n mynd i wneud dot slaes helo.
Ac yn awr rhywun, os gwelwch yn erioed sydd wedi eu rhaglennu o'r blaen,
beth allai fod yn wahanol y tro hwn?
Yeah.
>> CYNULLEIDFA: Ni fydd yn atal argraffu "helo byd."
>> DAVID J. Malan: Mae'n mynd canlynol-- sori?
>> CYNULLEIDFA: Ni fydd yn rhoi'r gorau i argraffu ei?
>> DAVID J. Malan: Ni fydd rhoi'r gorau i argraffu "helo byd."
Felly nid yn syniad drwg.
Syniadau eraill?
Yeah.
>> CYNULLEIDFA: Neges Gwall?
>> DAVID J. Malan: Gwall neges, OK, gallai fod.
Beth arall?
CYNULLEIDFA: Gallai fod argraffu'r braced gyda hanner colon hefyd?
DAVID J. Malan: A allai argraffu'r braced gyda hanner colon hefyd.
Felly efallai bod slaes wedyn rhywfaint fath o ffinio sy'n bwysig.
Unrhyw sylwadau eraill?
>> Syniadau Felly, i gyd yn dda.
Ac yn wir, mae'n mynd i fod yn neges gwall.
Dyna mae'n debyg y rhan fwyaf tebygol o i fod yr ateb yn gyffredinol
ar gyfer yr ychydig wythnosau nesaf, wrth i ni ddysgu i cod yma.
>> Ond am nawr cofiwch fod cyfrifiaduron yn unig yr hyn yr ydych yn ei ddweud wrthynt ei wneud.
Mae llawer yn hoffi y cnau mwnci chwerthinllyd menyn ac esiampl jeli.
Mae ein cyfrifiaduron dynol yn unig oedd i fod i wneud yr hyn ydych yn dweud wrthyn nhw am wneud.
Felly, yn yr achos hwn, os ydych yn peidiwch â dweud wrth y cyfrifiadur
i symud y cyrchwr amrantu at y llinell nesaf, nid yw'n mynd i wneud hynny.
Felly, pan fyddaf yn rhedeg y rhaglen hon yn awr, yn sylwi ar y gwahaniaeth.
>> Edrych fel a bug.
'I' an byg esthetig, efallai.
Ond beth sy'n wahanol am hyn allbwn yn erbyn yr un olaf yn amlwg?
Yeah.
>> CYNULLEIDFA: Nid oedd yn gwneud llinell newydd.
>> DAVID J. Malan: Nid oedd yn gwneud llinell newydd.
Nawr rhai ohonoch sydd rhaid i dudalennau gwe a wneir efallai
o'r blaen, efallai y byddwch yn gwybod am y Tag BR neu'r paragraff tag,
debyg iawn o ran ysbryd.
Bydd porwr gwe i chi anwybyddu nes chi ddweud ei fod yn union beth i'w wneud.
Yn yr un modd, yn iaith fel C yn unig mynd i wneud yr hyn yr ydych yn dweud iddo wneud.
>> Felly, y rheswm y pob un o'r enghreifftiau hyn,
hyd yn hyn, yn cael y math o Roedd gan casually slaes hwn
mewn 'na, dyna'r ffordd erbyn pryd yr ydych yn mynegi eich hun
fel cymeriad llinell newydd, fel petai.
A gallwch fath o werthfawrogi, efallai, y byddai hyn yn edrych yn fath o dwp
os dim byd arall.
Os oeddwn i eisiau llinell newydd, dim ond taro Enter ac yna'n garedig
o cigydd y cod fel 'na Ni ddylai wir yn rhwbio i chi y ffordd gywir.
A hyd yn oed os nad ydych yn ei wneud 'n sylweddol gofal yn y fan hon,
y byddwch yn sylweddoli bod nid yw hwn yn arbennig o
darn edrych yn dda o god.
>> Ac felly yr hyn y mae'r byd flynyddoedd benderfynu yn ôl ei
pan fyddwch eisiau rhoi'r cyrchwr ar linell newydd yn benodol,
mae'n rhaid i chi ddweud yn benodol llinell newydd, slaes n.
Ac mae rhai eraill symbolau fel 'na.
Ond am nawr rydym annhymerus unig canolbwyntio ar slaes n.
>> Nawr, gadewch i ni wneud y rhaglen ychydig yn fwy diddorol.
Rydw i'n mynd i fynd yn ei flaen a y tro hwn yn agor ffeil newydd.
Rydw i'n mynd i achub hyn fel helo-1.c.
A dim ond ar gyfer cychwyn, yr wyf i'n mynd i mynd yn ei roi i mewn i fy ffolder Dropbox.
>> Fel y byddwch yn gweld yn y CS50 dogfennau ar gyfer y peiriant,
yn ddiweddarach yr wythnos ar gyfer Broblem Set 1, byddwn yn annog
chi ddefnyddio Dropbox neu rhywfaint o wasanaeth cyfatebol,
oherwydd wedyn eich holl cod yn mynd i gael ei hategu yn awtomatig.
Ac felly dyna pam yr wyf i wedi mynd i mewn i ffolder hwn yma.
>> Ac yn awr yr wyf i'n mynd i ysgrifennu rhaglen ychydig yn wahanol.
Cynnwys, yr wyf yn safonol / O.h, prif ddi-rym int.
Ac yna i mewn yma printf, helo byd, sydd yn union yr un fath ag o'r blaen.
>> Ond yn awr yr wyf eisiau argraffu rhywbeth dyna ychydig yn wahanol.
Rwyf am i argraffu, dweud, "Helo, David."
Mae pob hawl, felly mae'n amlwg, dylai gobeithio
fod yn wir bod os byddaf yn ail-grynhoi rhaglen hon, ailgynnal iddo,
mae'n mynd i ddweud "helo, David."
>> Ond beth os wyf am ei gyflwyno y math hwn o amrywiol,
y syniad o cynhwysydd sy'n mynd i storio D-a-v-i-d a chod mae'n nid yn galed
i mewn i fy rhaglen.
Wel beth os byddaf yn dechrau gwneud rhywbeth fel hyn?
>> Llinynnol s, felly mae hyn yn amrywio.
Os ydych am gael llinyn, a.k.a. gair neu ymadrodd.
Mae dilyniant o gymeriadau yw'r hyn yr ydym mewn rhaglenni galw llinyn.
Rydym yn unig yn mynd i generig alwad mae'n s, am ei fod yn enw syml 'n glws.
Ond gallai wyf yn ei alw unrhyw beth.
>> Rydw i'n mynd i ddweud hafal llinyn s dyfyniad unquote, "David," hanner colon.
Ac yn awr yr wyf am i fewnosod D-a-v-i-d i mewn i hyn yr wyf i'n argraffu.
A chyn gwelsom teaser ar y sgrin rhai gystrawen arbennig
oedd yn caniatáu i ni i rhodder mewn gwerth.
Beth oedd y arbennig symbol ychydig o sleidiau yn ôl?
>> Felly y cant.
Ar y pryd yr oedd cant d ar gyfer rhif degol.
Nid yw hynny'n wir yn ymddangos yn berthnasol yma.
Troi allan yno yn symbol y cant arall,
sydd yn y cant s, sy'n sefyll am dalfan ar gyfer llinyn.
>> Felly nawr, yn syml iawn, dwi'n mynd i fynd yn gwneud hello-1,
gan fod hyn yn ffeil ei alw helo-1.c, a daro Chofnoda.
Ac yr wyf yn sgriwio i fyny.
Beth sy'n digwydd?
Wel, dyma lle mae'n rhaid i ni ddechrau gwerthfawrogi ein bod yn y gorchymyn hwn
amgylchedd lein, mae hyn testun yn unig amgylchedd.
Does dim glicio ar eiconau fel ffolderi ar hyn o bryd.
Ac yn meddwl yn ôl funud yn ôl.
Yn yr hyn a wnaeth ffolder i'n dweud Roeddwn yn arbed fy cod?
Felly y ffolder Dropbox.
A allai wedi cael eu galw unrhyw beth.
Ond mae'n digwydd i gael ei alw Dropbox.
Felly rhywsut angen i mi ddyblu cliciwch ar bod ffolder Dropbox er mwyn cael
i mewn iddo ac yn ei gael ar fy code elwir helo-1.c.
Yn wir, gadewch i mi fynd yn ei flaen ac yn lleihau ffenestr yma am ychydig funudau'n.
Yn union fel Windows a Mac OS, mae ffolderi yn Linux.
Mae ffolderi yn y Appliance CS50.
'I' jyst ar hyn o bryd rydym yn cyfyngu ein hunain i'r amgylchedd hwn testun.
>> Ond os wyf yn dyblu cliciwch ar Dropbox, sylwi yno
yw'r ffeil yr wyf am ei lunio.
Ond mae angen i hyn du a gwyn i mi ffenestr terfynell, fel petai.
Ond mae angen i mi, felly, i symud i mewn i'r ffolder neu cyfeiriadur.
Felly ychydig yn ddirgel, ond byddwch yn cael i arfer â hyn hefyd.
>> Yn y byd o Linux, sydd unwaith eto yn gweithredu
system rydym yn rhedeg tu mewn i'r CS50 Offer, mae 'na gorchymyn o'r enw CD.
Sy'n golygu y gallaf ei wneud CD, gofod, Dropbox.
CD, cyfeiriadur newid.
Hawl.
Yn ôl yn y dydd pan oedd pobl yn dyfeisio cyfrifiaduron ac yn gweithredu
systemau fel hyn, roeddent am teipiwch y nifer lleiaf posibl keystrokes.
Felly, y ffordd hawsaf o ddweud Cyfeiriadur newid oedd CD.
>> Felly, os wyf yn taro CD, gofod Dropbox, sylwi ar beth sydd wedi newid yma.
Y tu mewn cromfachau y peiriant yn fath
o humoring mi ac atgoffa i mi lle yr wyf.
Felly y ffolder agored yw Dropbox.
Os wyf yn awr deipio ls gyfer rhestr, eto yn gryno,
oherwydd nad oedd pobl yn dymuno teipiwch ôl yn y dydd l-i-au-t.
Felly, maent yn lle hynny yn ei gwneud yn ls.
>> Enter.
Hysbysiad Gwelaf ddau beth, helo-1.c, ac yna mae hyn yn beth cryptig, 1m ffynhonnell.
Dyna dim ond fy ffordd o ddweud cod ffynhonnell ar gyfer wythnos 1 Dydd Llun.
Dyna ffolder wyf yn llwytho i lawr o Gwefan CS50 yn a wneuthum yn gynharach heddiw
a dim ond yn ei roi i mewn i'r offer o flaen llaw.
>> Ond am y tro yr unig beth yr ydym yn poeni am yn gwneud y rhaglen hon.
Felly, pan fyddaf yn teipio yn gwneud helo-1, Enter.
Damia.
Aeth rhywbeth o'i le.
Felly gadewch i ni tynnu hyn ar wahân.
Ac yn anffodus dyma lle pethau gael ychydig o straen ar y dechrau,
o leiaf os ydych wedi erioed raglennu o'r blaen.
>> Fy duw.
Ysgrifennais rhaglen ddwy linell a Mae gennyf pedair llinell o wallau.
Felly beth sy'n mynd ymlaen yma.
Yn gyntaf oll bob amser yn sgrolio yn ôl i fyny ac yn dod o hyd i'r neges gwall cyntaf,
oherwydd oftentimes crynoadyddion unig yn drysu gan yr hyn yr ydych chi a minnau yn ei wneud.
Crynoadyddion yn eithaf fud.
Byddant yn unig yn gwneud yr hyn yr ydych yn dweud wrthynt ei wneud.
Ac os ydych yn eu drysu, maen nhw jyst mynd i fath o taflu i fyny eu dwylo
ac efallai taflu mwy o negeseuon gwall nag mewn gwirionedd yn berthnasol.
>> Felly gadewch i ni edrych ar y cyntaf.
Super cryptig ar y dechrau.
Ond rhybudd, dyma enw'r ffeil yn yr wyf yn sgriwio i fyny yn ôl pob golwg.
Colon 5, colon 5 yn unig yn golygu ar llinell 5 yn y pumed cymeriad.
Felly bumed golofn o gymeriadau, os mynnwch, gwall.
Defnydd o linyn dynodwr heb ei ddatgan.
A oeddech yn meddwl n safonol?
>> Na, yr wyf yn golygu llinyn.
Ac yna mae'n fath o copïo a gludo
yr hyn yr wyf deipio i dynnu 'n sylweddol fy sylw at lle rwy'n sgriwio i fyny.
Felly, am ryw reswm C, neu o leiaf y compiler
ddim yn deall y gair llinyn.
A dyna oherwydd ein bod yn gwneud i fyny.
Felly, nid yw llinyn yn bodoli yn C. Beth CS50 yn ei wneud,
ar gyfer yr ychydig wythnosau cyntaf dim ond y dosbarth,
yw ein bod yn darparu rhywfaint o hyfforddiant olwynion, fel petai.
Ac rydym yn rhoi'r rhain olwynion hyfforddi tu mewn ffeil arbennig o'r enw CS50.h.
>> Felly, mae hyn yw'r ail o ddwy ffeil enwau sydd yn ôl pob golwg yn dod i ben mewn dot h.
Gadewch i ni ailddirwyn.
Printf yn ddatganiad neu swyddogaeth sydd yn ôl pob golwg printiau rhywbeth
i'r sgrin.
Ond nad oeddech yn fy ngweld gweithredu printf, ar y dde.
Flynyddoedd yn ôl, rhoi ar waith Rhywun printf.
Ym mha ffeil fyddech chi'n Wager ef neu hi roi'r gweithredu
gyfer printf, y cod ar gyfer printf?
>> Mewn ffeil o'r enw safonol I / O.h.
Yn wir, mae'n fwy na thebyg yn ddwy ffeil, yr wyf yn safonol / O.h,
sy'n sefyll am header ffeiliau, ac yr wyf yn safonol / O.c,
sy'n sefyll am C cod ffynhonnell.
Felly, ef neu hi rai blynyddoedd yn ôl plopped y cod y maent yn ysgrifennu i mewn i'r ffeil
er mwyn i bobl fel ni Gall mlynedd yn ddiweddarach ei gynnwys,
fel petai, yn ein rhaglenni eu hunain.
>> Ac yn wir, dyna beth yr arwydd bunt ddilyn gan y gair yn cynnwys yn ei wneud.
Mae'n edrych ar y disg caled lleol, dod o hyd i'r ffeil o'r enw safonol I / O.h,
ac yna copïau yn effeithiol ac yn pastau ei tu mewn fy ffeil hun.
Felly nawr fy rhaglen yn gwybod sut i argraffu ar y sgrin.
>> Felly, gan y rhesymeg, lle yw llinyn diffiniedig?
>> CYNULLEIDFA: CS50.h.
>> DAVID J. Malan: CS50.h.
Ac yn wir, dyna beth yr ydym, y staff craidd, wedi'i wneud.
Rydym wedi dyfeisio rhai mathau o ddata, fel petai, fel llinyn,
yn ychwanegol at y rhai yr ydych gael am ddim, fel int.
A byddwn yn gweld pobl eraill fel torgoch ar gyfer cymeriad ac ychydig mwy.
Y tu mewn o CS50.h mae'n debyg yw o leiaf rhywfaint o sôn am linyn.
>> Felly nawr gadewch i mi fynd yn ei flaen ac yn gwneud ei ailgynnal helo-1.
'N annhymerus' chwyddo i mewn eto ac yn croesi fy mysedd.
Nawr drwy wedi gwneud un newid Rwy'n sefydlog rhan fwyaf o bethau.
Ond damn iddo.
Mae mwy percents na dadleuon data.
Beth wnes i ei wneud o'i le y tro hwn?
>> Felly mae'n dal i fod yn eithaf cryptig.
Ond mae gwall hwn ar llinell 7 a chymeriad 21.
Felly, gadewch i ni fynd yn edrych i fyny yma.
Mae'n ychydig yn gynnil.
Ond os ydych yn meddwl am yr hyn y syniadau sylfaenol yma yw,
efallai y gallwn canfod hyn ar wahân.
>> Felly printf yw enw'r y swyddogaeth.
Cromfachau, hyd yn hyn, yn yn union fel yr hyn yr ydym yn ei roi o gwmpas
y pethau rydym yn pasio fel mewnbwn i swyddogaeth.
Mae pob hawl, dim ond confensiwn dynol fympwyol.
Defnyddio cromfachau.
Y tu mewn y cromfachau rhai rydym wedi bod yn rhoi dyfynodau dwbl,
ac yna llinyn fel "helo byd."
>> Ond yn yr enghraifft gynharach iawn wnaeth yn fyr rydym yn edrych ar gyda Scratch.
Ac rydym yn cael y cant d, beth arall Roedd tu mewn cromfachau rhai
fy mod wedi galw allan ar lafar?
Yeah.
>> CYNULLEIDFA: Felly mae'n beth rydych yn eu cymryd [Anghlywadwy] o'r tu mewn [Anghlywadwy]
beth yw'r rhain [Anghlywadwy]?
DAVID J. Malan: Yn union.
Felly, cawsom y cant d.
Ond yna rydym yn cael yn agos dyfynnwch, coma, cownter.
Hawl.
Rydym penodol hyn yr ydym am i'w wneud wrth i'r dalfan.
Felly, yr hyn yr wyf i'n mynd i wneud yma yw coma, beth ydych chi eisiau i mi ei roi?
CYNULLEIDFA: S.
DAVID J. Malan: S, s oherwydd yn yr achos hwn
yw enw'r y cynhwysydd storio.
Mae'n enw'r powlen wydr.
Lle o'r blaen ei bod yn wrthgynhyrchiol yn y Enghraifft Scratch syml buom yn edrych ar.
Felly nawr wedi gwneud dau newidiadau, gadewch i mi chwyddo i mewn
ac yn ceisio unwaith eto i llunio rhaglen hon.
>> Nawr rwy'n gweld bod llinell cryptig.
Ond dyna mewn gwirionedd y enwi o'r compiler.
Chlang yw enw'r y compiler.
Gwnewch yn unig arbed mi y cur pen o erioed
deipio bod gorchymyn hir crazy allan.
Felly, yn awr, os wyf yn dot slaes helo-1, Ddylwn i weld "helo, David."
>> Pretty underwhelming, fodd bynnag, dde?
Gallem fod wedi gwneud hyn yn llawer mwy syml
heb sôn am newidynnau a CS50.h a hynny i gyd.
Felly, gadewch i ni wneud yn ychydig yn fwy diddorol.
>> Yn ogystal â CS50.h, cael pethau fel llinyn
ddatgan, mae'r llyfrgell CS50 Mae gan ychydig o swyddogaethau.
Flynyddoedd yn union fel yn ôl, ysgrifennodd rhywun printf a'i roi yn safon I / O.h
a rhai ffeiliau eraill.
>> Yr ydym, mae'r staff CS50, ysgrifennodd swyddogaeth Gelwir GetChar, GetDouble, GetFloat,
GetInt, GetLongLong, GetString, ac rydym yn rhoi rhai sydd y tu mewn i ffeil
Gelwir CS50.h a CS50.c.
Ac yr ydym yn eu rhoi y tu mewn o'r Appliance CS50.
A gall pobl hefyd llwytho i lawr ar-lein os ydynt
eisiau rhoi nhw ar eu cyfrifiaduron eu hunain yn ogystal.
Pa un yw dweud ein bod wedi creu swyddogaethau sy'n cael mewnbwn gan y defnyddiwr.
Dydw i ddim yn gwybod beth i gyd data hyn mathau yn cael eu.
GetInt yn fath o syml, fel cael yn gyfanrif rhywsut gan y defnyddiwr.
Ac GetString mae'n debyg debyg get gair neu ddedfryd gan y defnyddiwr.
>> Felly gadewch i ni ganolbwyntio ar hynny.
Ac yr wyf i'n mynd i fynd yn ôl i mewn i'r offer ac yr wyf i'n mynd i fynd yn ei flaen
ac yn arbed y ffeil fel, gadewch i ni alw mae'n helo-2.c fel fy ail fersiwn.
A gadewch i ni wneud un neu ddau o newidiadau.
>> Amser hwn yn lle caled David codio, a oedd yn
yn gwneud yn hynod o gyson ond rhaglen underwhelming,
beth os wyf yn ei wneud yn lle hynny GetString?
Nawr sylwi GetString Mae gan cromfachau agored,
cromfachau ar gau, oherwydd nid oes angen unrhyw fewnbwn.
Dim ond mae'n mynd i fynd gael llinyn gan y defnyddiwr.
>> Ac yn awr gair ar gystrawen eraill.
Hanner colon yn unig yn dod i ben llinell o god.
Nid oes angen i chi nhw ym mhob man.
Ond mai dim ond yn golygu fy mod wneud gyda llinell hon o god.
Gadewch i mi symud i un arall datganiad neu swyddogaeth.
Llinyn yn datgan newidyn.
Llinyn yw fel dweud rhoi powlen i mi, os gwelwch yn dda.
A gadewch i mi roi llinyn yn ei.
>> Ac yn awr yr arwydd cyfartal.
Beth yw'r arwydd cyfartal hanfod yn cyfateb i?
>> CYNULLEIDFA: Neilltuo.
>> DAVID J. Malan: Yeah, aseinio werth.
Felly os wyf, er enghraifft, ffoniwch GetString swyddogaeth hon,
a byddwn yn gweld yn y munud sy'n mynd i annog y defnyddiwr ar gyfer llinyn.
Mae hyn yn debyg gadael wedyn fi ysgrifennu D-a-v-i-d ar ddarn o bapur.
A phan rwy'n dweud llinyn s hafal GetString,
Nid yw'n wir yn gyfartal yn golygu cyfartal mewn rhaglennu C.
Mae'n golygu aseinio o'r dde ochr i'r ochr chwith.
>> Felly dwi wedi gotten llinyn.
A bydd yr arwydd cyfartal yn golygu ei roi yn y storio cynhwysydd o'r enw s.
Ac Yna ei drosglwyddo i ffwrdd i printf i mewn gwirionedd yn gwneud ei beth.
>> Felly, y canlyniad terfynol wedyn yn mynd i edrych ychydig yn wahanol.
Gadewch i ni yn gwneud helo-2.
Gallai'r naill neu'r llall yn gweithio.
Rydych yn dilyn ar hyd.
Gwneud helo-2 yn gweithio.
Dot slaes hello-2, Enter.
>> Yr wyf yn ymddangos i gael ddiddiwedd dolen neu rywbeth.
Nid oes dim sy'n digwydd.
Pam?
>> CYNULLEIDFA: Mae'n gwneud dolen ddiddiwedd.
DAVID J. Malan: Mae'n dolen ddiddiwedd.
Mae'n fath o wedi aros i mi i mewn gwirionedd yn darparu ei gyda rhywfaint o gyfraniad.
Felly, gadewch i mi fynd yn ei flaen a theipiwch yn David, a daro Chofnoda.
Ac yn awr mae'n dweud "helo, David."
Os byddaf yn rhedeg eto.
Gadewch i deipio i mewn Rob, "helo, Rob."
>> Yn awr mae hyn yn y gwaethaf rhyngwyneb defnyddiwr erioed.
Mae'r defnyddiwr yn debyg i fod i wybod beth i'w wneud.
Ond ni waeth.
Gan ddefnyddio'r un adeilad hyn blociau yn union fel yn Scratch,
gallwn ni ddatrys y broblem honno ac yn dweud rhywbeth fel eich enw os gwelwch yn dda, colon,
gofod, ar gau dyfynnwch, yn agos cromfachau, hanner colon.
Felly, mae llawer o eto ffolineb gyda'r chystrawen.
>> Ond sylwi fy mod i newydd ychwanegu darn pos uwchben yr un yma
ac uwchben yr un yma.
Felly, yn awr os wyf yn ailgynnal hyn, helo-2, Enter.
Arhoswch funud.
Beth sydd o'i le?
Dyw hi ddim yn ymddwyn yn wahanol.
Yeah.
>> CYNULLEIDFA: Nid ydych wedi rhedeg wneud eto.
>> DAVID J. Malan: Doeddwn i ddim rhedeg wneud eto, ar y dde.
Felly, rwyf wedi newid fy cod ffynhonnell.
Ond unwaith eto, mae y llif.
Cod ffynhonnell drwy'r compiler yn rhoi ydych cod gwrthrych newydd, neu 0s a 1s.
Felly mae angen i ni mewn gwirionedd yr wyf yn gwneud ei ailgynnal helo-2 Enter.
OK, ymddengys rhywbeth i fod wedi digwydd.
Dot slaes helo-2.
Eich enw os gwelwch yn dda.
Ac i fod yn glir yn awr, pam mae y cyrchwr ar yr un llinell?
Yn union.
Doeddwn i ddim yn rhoi'r slaes n fyny yma yn fy cod.
Felly nawr gallaf ysgrifennu rhywbeth fel Daven, Enter.
Gallaf redeg eto a math rhywbeth fel Gabe, Mewnbynnu,
ac rydym yn cael rhaglen wahanol dro ar ôl tro ar ôl tro.
>> Nawr rydym yn y pen draw yn mynd i angen i ddefnyddio ychydig o alluoedd gwahanol.
Mae angen i ni gyflwyno yn y pen draw mae rhai amodau i wneud pethau yn amodol.
Efallai dolenni er mwyn i ni ei wneud pethau dro ar ôl tro.
>> Efallai byddai'n braf os byddwn Gallai gweithredu ein swyddogaethau hunain,
fel rydym Gallai gweithredu ein hunain printf neu ein fersiwn ei hun o GetString
a GetFlow, oherwydd yn y pen draw, hyd yn oed ddefnyddio'r amgylchedd hwn archa bannod
allwn ni ei wneud hyd yn oed y rhan fwyaf o yn weledol ddiddorol o bethau.
>> Yn wir, mewn casgliad gadewch i mi wneud hyn.
Rydw i'n mynd i fynd yn ei flaen a chau ffenestri hyn
ac yn agor yr eicon hwn yma, sydd ychydig yn fwy
Fersiwn o hynny gwreiddio ffenestr terfynell.
Felly Gedit nid yn unig wedi y lle ar gyfer fy cod,
ond hefyd yn adeiladu mewn ffenestr terfynell, mae'r ffenestr du a gwyn lle alla i redeg
gorchmynion.
>> Fi jyst digwydd i agor fersiwn mwy o hyn.
Ac yn awr yr wyf i'n mynd i fynd i mewn i y ffolder yr wyf i wedi eisoes
rhoi o flaen llaw ar wefan y cwrs.
Ac yr wyf i'n mynd i fynd yn ei flaen a agor ffeil o'r enw thadgavin.c,
a gafodd ei ysgrifennu gan rywun arall.
>> Ac os ydym yn edrych ar hyn, nid yw hyn yn y math o cod
byddwn yn ysgrifennu ers y nod o cod hwn
oedd i ysgrifennu'r harddaf edrych cod fod ef neu hi gallai,
heb ystyried ai peidio gallai bod dynol arall erioed
deall y cod hwn.
>> Yn wir, bob blwyddyn mae 'na beth sydd a elwir yn C cystadleuaeth obfuscated, a oedd
ar gyfer geeks go iawn sy'n ysgrifennu cod y gall unrhyw un arall yn darllen,
ond sy'n gwneud rhywbeth naill ai 'n sylweddol syml neu wirioneddol anhygoel.
Ac rydym yn meddwl byddem i ben gyda golwg hwn
ar rywbeth sy'n eithaf anhygoel efallai y byddwch wedi gweld unwaith o'r blaen.
Ond byddwn yn dod i ben ar hyn nodyn, dot slaes, thadgavin.
Mae hyn wedyn yw beth yn aros.
>> Dyna ni am CS50.
Byddwn yn eich gweld ar ddydd Mercher.
>> [CHWARAE CERDDORIAETH]