Tehát ez az én legnagyobb öröm hogy Önt minden ma itt
Az első előadás , nos, Bevezetés
a számítástechnika és a programozás.
Más néven CS50 és jól, CPSC 100, hivatalosan itt Yale.
>> Tehát nem lehet több, izgatott hogy Önt minden itt.
A nevem Patrick Rebeschini.
Én vagyok a fej oktató az osztály.
Én itt képviselő csoport A mintegy 60 alkalmazott
hogy működni fog veled egész félévben.
Ez a szám közel 60 tőlünk.
Mégis mentén rendkívüli kötelezettségvállalások szintje
hogy ebbe a osztály, ami CS50 az osztály
a Yale Egyetem kínál a legnagyobb szintű támogatást
mindannyiótoknak.
És nem lehetünk büszkék mely ebben az osztályban van újra.
>> Sőt, mivel hamarosan tapasztalni, CS50 sokkal több, mint egy osztály.
Ez egy közösség.
És akkor része lesz hamarosan ennek a közösségnek.
Ez a második év, hogy Yale kínál ebben az osztályban.
Építünk a szélsőséges sikere az elmúlt évben, ahol
elsö alkalommal, itt az egyetemen,
egyetemi tanulás asszisztens fogadtak el az osztálytermekben.
Az egész kezdődött Ebben az osztályban az elmúlt évben.
>> Tehát mint tudjuk, az osztály tanítják közösen Harvard Egyetemen.
Tanítani a tanfolyam vagyunk relying-- tudjuk
számíthatnak a nagy szakértelem David Malan és a Harvard csapat.
Így Dávid volt tanítás CS50 jól, 10 éve.
És minden évben ő volt teljesítőképességének határait
és javítja a osztályukban.
Ismét nem lehet több, szívesen továbbra is ez az együttműködés velük.
>> Tény, hogy az egyik legérdekesebb,
Azt fogja mondani, a futás ezen osztály most, mind a Harvard és a Yale itt,
az igazán hihetetlen keresztbe porzás
ötletek, javítását célzó tanulási tapasztalat mindenkinek.
Tehát ennek eredményeként ezt a kiterjedt együttműködés a két
egyetemi, CS50 büszkén bejelenti az új verzió idén
érzékelhető változások.
Dávid mesélj nekik most.
Tehát please-- E lény mondta, kérjük, csatlakozzon hozzám
és örvendetes, hogy egy nagy tapssal
üdvözölni Dávid és Harvard csapat itt a Yale.
>> [TAPS]
>> DAVID MALAN: Köszönöm.
Kösz.
Ez CS50, Harvard Egyetem és a Yale Egyetem bemutatása
a szellemi vállalkozások számítástechnika
és a művészet programozás.
És mit jelent az, hogy az ilyen végül, mintegy problémamegoldás.
Valóban sokan lehet, hogy jöttek a középiskolát
vagy töltötte az elmúlt pár évben vajon mi néhány barátai
tavaly vagy más osztályokba.
És mégis, a valóság van, nem számít, mi
do végén a nap ebben az osztályban, ez lesz kb problémamegoldás.
>> És mint ilyen, talán megteszi Néhány megnyugtató az a tény,
73% a diákoknak, hogy ebbe a csoportba, itt is
Yale valamint a Harvard, még soha nem vett a CS osztály előtt.
Tehát ha itt ülnek A közönség ma kíváncsi
Ezért itt ültök A közönség ma,
vagy talán csak ezt követően együtt néhány barátot,
vagy talán már egy kis kíváncsi, hogy milyen
számítástechnika és programozás, észre
hogy a legtöbb az osztálytársaival, hogy A balra és jobbra te
Nagyon sok ugyanezen demográfiai.
>> És valóban, ha megnézzük A tavalyi statisztikák
a hallgatói szervezet CS50, mindkét itt és a Harvard, 58% -a diákok
nevezik magukat kevésbé kényelmes.
9% sokkal kényelmesebb.
És akkor 33% valahol a kettő között.
És nincs hivatalos definíciója amit ezek a kanalak jelent.
Azt a fajta tudja, hogy kevésbé kényelmes, ha.
Te érzés egy kicsit nyugtalan A talán, hogy az osztályban.
Te nem egészen biztos, ha a számítógép tudományos osztály végül az Ön számára,
és rájövünk, hogy nagyon jó társaság.
És valóban, az osztályozás, és az értékelés
és a visszajelzést, és minden, ami tartószerkezet az osztályban
végül nagyon egyénre.
Sokkal inkább, mint a legtöbb olyan Más osztályon design.
És valóban, ami végső soron ügyek ebben az osztályban nem
annyira, ahol a végén akár a többiekhez képest,
de hol, heti 11 vagy az utolsó, és a relatív magát héten
0 Itt az első.
Tehát mit jelent?
Nos, ez azt jelenti, azoknak 73% -a diákok tavaly, hogy soha nem vett
A CS osztály előtt, a indul a félévben
arra dabbling nyelven nevű Scratch, amiket mi magunk
fogja látni ma.
És a végén, a félévben már mentek
ezen keresztül a teljes listát a kihívásokat.
Kezdve egy nyelv úgynevezett c.
Végrehajtási, mi első pillantásra, megy
hogy egy kicsit kihívás néhány, de meglehetősen örömteli, ha
kap Super Mario pattogó fel és le a piramis
végre, jóllehet, csak úgynevezett ASCII art.
Végrehajtási utolsó year-- mi A diákok az elmúlt évben, akkor
még azután is hajtsák végre saját Caesar titkosító és Vigenère rejtjel.
Tehát titkosítási algoritmusok amellyel meg tudná
tülekedés információt, majd megfejt információt küldeni titkos üzeneteket.
A játék 15.
Ha emlékszel gyermekkor vagy néhány fél javára,
hogy a kis műanyag játék, ahol mozog a számok felfelé, lefelé, balra és jobbra
meg kell kérni őket, hogy, ténylegesen végrehajtó játék
és oldja meg a logika szükséges ott.
És akkor belekóstolt törvényszéki tavaly.
>> Tehát félévközi, tanulók, akik soha nem
használták a billentyűzetek erre a célra korábban,
írtak szoftver vissza, hogy úgy mondjam,
JPEG vagy fényképeket hogy mi volt véletlenül
törölt egy digitális memóriakártyát a kamera.
Helyreállítása titkos üzenetek belülről egy bitmap kép,
és más ilyen típusú A grafika is.
>> Ezután áttért adva az egész osztály a szótárban.
Csak egy igazán nagy szöveges fájl 150.000 angol szavakat.
És mindenki vitatták valahogy olvasni, hogy úgy mondjam,
ezek a szavak a memóriába.
A számítógép memóriájában.
Majd válaszoljon a kérdésekre A forma, ez a szó?
Ez egy szó?
Tényleg csak a végrehajtási helyesírás-ellenőrző.
Majd kihívást egymást másik pedig egy nagy board--
a ranglistán, hogy ki tudja használja a legkevesebb memóriát,
a legkevesebb időt valójában helyesírás-ellenőrzés a nagyméretű dokumentumok.
>> Mi transitioned majd végrehajtási is saját webszerver.
Tehát nem teszi weboldalak nyelven mint a HTML és CSS, ha ismeri.
De valójában a végrehajtási kiszolgáló
figyel az interneten kéréseit böngészők
majd válaszol a kérelmekre.
Aztán a saját végrehajtási e-kereskedelem, mint a honlap, ahol
diákok vásárolni és eladni készletek.
Rajz közel valós időben részvényárfolyamok a Yahoo Finance.
És lehetővé teszi a diákok, hogy milyen a portfolió alakul.
És végül egy mash up A Google News és a Google
Térképek, amellyel a diákok a kifejezés az olyan kifejezések végére
képes volt, hogy kattintson, és kerek, és keressen a Google térképen.
És akkor látni az összes A hírekre
közel vannak azoknak az adott területeken.
Tehát valóban megy a nulla és 60.
>> És az út mentén, amely amit kellett tavaly hívott, hacker kiegészítéseket.
Hogy emelje a mércét további azoknak,
akik talán nagyon jól van egy jó mennyiségű tapasztalat, hogy ebben a 9%
A kényelmesebb.
Így észre, hogy ott van nagyon magas mennyezet
még ezen belül kihívások a diákok
érkező különböző háttérrel.
Mivel a végén A nap, mi végül
összpontosított egészen egyszerűen ezt.
>> De mit jelent ez Vagyis, problémamegoldás?
Úgyhogy javaslom, hogy mi desztillálódó, mint ez.
Tehát problémamegoldás valóban Csak ez a fajta kép.
Szóval megvan bemenetek némi probléma, amit valóban szeretnénk megoldani.
A cél az, hogy kimenet, a megoldást, hogy ezt a problémát.
És akkor a közepén mit fogunk hívni egy fekete doboz.
Nem feltétlenül tudja, vagy akár érdekel, hogy mi van benne, hogy a fekete doboz.
Minden, amit tudok, hogy amikor adsz input bele,
akkor remélhetőleg kimenet vagy oldat belőle.
És míg ma fogunk nézni mind be- és kimenetek,
fogunk a hosszú távú, és több mint a Természetesen az egész félévben,
összpontosítani, mi van benne, hogy a doboz.
>> És ott fog feküdni úgynevezett algoritmusokat.
Lépésről lépésre útmutató megoldásában, néhány probléma.
De mi egy példa néhány bemenet?
Így talán egy egyszerű dolog a indul minden tanév, hogy valaki
Lehet, hogy a jelenlét.
Tehát lehet, hogy ezt egy, kettő, három, négy, öt, hat,
és hogyan tudnám tartani követni, hogy információt.
Talán csak megy egy, kettő, három, négy, öt, hat.
És csak használ valamiféle egységes számjegy.
>> Vagy amit éppen rögzíteni ez egy kicsit hosszabb távon.
És hogyan tudom képviseli az összes Az emberek ebben a szobában?
Nos, talán valami ilyesmit, OK.
Látom egy személy.
Rendben.
Látok egy másik személy, a harmadik személy, és így tovább.
De senki sem számít az emberek, mint ez.
Tehát a szó szoros értelmében, a legtöbben, ha mi vagyunk is fog felhívni semmit,
Valószínűleg fog menni egy kettő három négy,
Talán egy kicsit divatos, öt, hat, hét, nyolc, kilenc, tíz és így tovább.
>> És ez valójában egy rendszer úgynevezett egyváltozós.
Uno, mint uno ami egy, hol Csak egy levél az ábécé.
Éppen most kaptam ezt hash mark.
És én, a hatékonyság, csak felhívta ezek hashmark, végül
egyenes vonalak.
De lehetett volna levonni őket mint kis pálcika.
Amennyiben képviseletére egy személy, egy input,
Én csak felhívni egy bottal figura vagy egy hash mark.
De ez még nem minden, kifejező.
>> Ha minden úgy van, ezek a hash jelek, nemhogy pálcika,
hogyan lehet az általam képviselt olyasmi, mint a 15-ös?
Vagy 15 ember a szobában?
Talán van valami ilyesmire 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
14, 15.
Csak nem skála nagyon jól.
Mivel a bemenet kap nagy, akkor szüksége van egy jobb rendszer, mint ez.
>> És kiderül, hogy a rendszer, amely a számítógépek
nem minden, hogy a különböző attól, amit én tudok.
Sőt, a legtöbb ember ebben a szobában, akkor is, ha azok között kevesebb
kényelmes, nem feltétlenül tudja hogyan a Mac vagy PC tényleg működik,
akkor már valószínűleg legalább hallott, hogy a motorháztető alatt 0 és 1-es.
Az úgynevezett bináris rendszer.
Tehát valóban, a számítógépek több mint Csak hashmark saját szókincs,
de nem annyira a szókincs, mint mi emberek.
>> Sőt, mi emberek nem használják a bináris.
Bi jelenti 2, 0 és 1.
De tizedes, deka ami 10, 0 és 9 között.
Tehát van egy sokkal kifejezőbb képességek a normális emberi világban.
De én azt állítják, hogy ezek a rendszerek, bináris és decimális, és mindent
között és azon túl, a tulajdonképpen minden nagyon ismerős.
Például tekintsük Ebben a példában itt, 123.
Tehát ez valójában, persze, Számos ismerünk 123.
De én csak rajzolt éppen ezt minta szimbólumok, jele hogy úgy mondjam.
Valahogy formák a táblára krétával.
>> De miért és azonnal ösztönösen megragadják ezt 123?
Nos, ha voltak, mint nekem az iskolában,
akkor valószínűleg megtudta, hogy ez a 1s oszlop, ez a 10s oszlop,
ez a 100s oszlopban.
És ez miért hasznos?
Nos, ez az egyszerű számtani most csinálni, hogy egy minta szimbólumok
számos megértjük ösztönösen.
Ami 100-szor 1, majd 10-szer 2, és 1-szer 3,
ami természetesen csak 100, és ez a 20, és ez három.
És így ha hozzátesszük azokat together-- ah.
Tehát ebben rejlik a fajta érvelés mögött, hogy miért ez a szimbólumokat
azt jelenti, hogy valami valódi és a numerikus.
>> Nos, a számítógépek nem pontosan ugyanaz a dolog, de csak számíthatnak olyan magas, mint egy.
Mivel képes voltam számítanak olyan magas, mint három.
És valóban, ha folyamatosan megy tudtam megy olyan magas, mint kilenc ebben a rendszerben.
Számítógépek csak nullákat és azok a saját ábécé.
>> Tehát mit jelent?
Nos, ez csak azt jelenti, hogy ha a számítógép akar képviselni, mondjuk a 0 szám,
Talán a három jellemek három az ábécé hogy úgy mondjam,
ez hogyan a számítógép értéke 0.
Tehát egyáltalán nem olyan ijesztő eddig.
Ez pontosan mi emberek tenne.
És valóban, a legtöbben csak figyelmen kívül hagyja a vezető nullák egyébként.
>> Egy számítógép, ha azt akarja, A szám tárolásához 1
Kiderült fog csinálni.
És egy számítógép tárolja A 2-es szám nem
fog tenni az egyváltozós rendszer, amely utaltam korábban.
Ez valóban lesz erre.
És ez valószínűleg ahol a minta kezdődik
hogy kevésbé nyilvánvaló a legtöbb ember.
Ez 2, ez a 3.
Érdekes, hogy ez most 4.
És most már tényleg Úgy tűnik, hogy talán rejtélyes,
de nem, ha figyelembe vesszük, milyen bináris jelent valójában.
Ez azt jelenti, hogy két betűket a ábécé.
Tehát két lehetséges karakterek Minden helykitöltő.
>> Annak érdekében, hogy valóban azt jelenti, megyünk hogy szükség van egy 1s helyre, vagy 2s helyen,
egy 4s helyet, majd 8, és 16, 32, és 64.
És mi a különbség ott van?
Mint ezek 1, 2, 4, 8, 16, 32, 64.
És mielőtt volt 110, 100,000, 10,000.
Mi a hasonlóság ott?
És mi a minta?
Igen.
Diák: Powers 2 helyett hatásköre 10.
DAVID MALAN: Igen.
Powers 2 helyett hatásköre 10.
És így, ha meg akartam tartani megy, 8, 16-os és így forth--
de most, ha ez a fajta nyom, most a bináris rendszer
valójában nagyon egyszerű.
Miért van ez a minta 0- A számítógépek világában 0?
Nos azért, mert 4-szer, 0, 2 alkalommal 0, 1 alkalommal 0 és kapsz 0.
>> Miért van ez a szám 1?
Ugyanez az érvelés, de most Van egy 1 a 1 oszlopban.
Miért van ez a 2?
Van egy 1 a 2s oszlopban.
És hogy akkor nem én képviselem mondjuk, a 7-es számú bináris?
Say hangosabb.
>> DIÁK: három 1s.
>> DAVID MALAN: három 1s.
Tehát 1, 1, 1, mert csak azt kell 4 + 2 + 1 ad nekem 7.
Rendben.
Tehát onnan hogyan is képviselik 8 3 helyőrzők?
Igen.
>> DIÁK: 1, 0, 0, 0.
>> DAVID MALAN: Igen 1, 0, 0, 0.
És mégis, talán, valahogy Technikailag szüksége
hogy újabb helykitöltő a fórumon.
Ha azt akarom, hogy illeszkedjen, hogy valóban tenni kell valamit, mint ez.
Szóval tényleg kell használni most A 8s oszlopot, és ez jó.
De a furcsa dolog számítástechnika hogy ez fog kerülni nekünk valamit.
Be kell több RAM memóriát a számítógépet.
Nincs elegendő memória mert ha kell valami
fizikai tárolni, hogy További kicsit, hogy úgy mondjam.
Bináris számjegy.
És valóban, ami történt Itt, mint a tízes számrendszer
Ha mi a hozzáadott számok feljebb és feljebb és fel, megyünk a 5-6 az 7-8
ez olyan, mint a könyv szerinti 1, szó szerint.
És akkor minden mást nyúlik vissza nullára.
>> De hogyan valójában jelentenek ezek a dolgok fizikailag a számítógép?
Nos, a végén a nap, az egyetlen fizikai bemeneti megy a számítógép
Itt van ez a tápkábelt, így villamos energia vagy elektronok a falról.
És így hogyan jutok valamiből fizikai, mint, hogy ténylegesen
ami egy ötlet, mint ezt helyette.
>> Nos, mit tehetünk?
Azt is figyelembe veheti, hogy minden rendben, talán ha a villamosenergia folyik
Azt lehet tárolni, és belekapaszkodni.
És ha én kapaszkodva Egyes villamos energia,
hogy csak fog önkényesen képviselnek 1.
És ha kihúzom a dugót és nincs ott semmi,
tudja, hogy csak megy önkényesen képviselnek 0.
>> Tehát, ha valami van, 1.
Ha semmi nem ott van, 0.
Vagy lehet, hogy ez a egy kicsit több vizuális.
Itt van egy 0.
Nincs semmi érdekes folyamatban A a hátamon telefont.
De ha lehetővé teszik egy kicsit bit villamos folyni,
bár ez egy kicsit fényes itt, a zseblámpa folytatta.
Úgyhogy tárolására díjat és ergo, ez a telefon most jelent 1.
Tehát 0 1.
>> Tehát 1 iPhone milyen magasra tudok számolni használja ezt a fajta megközelítés?
Úgy értem, hogy 1.
Ez nem olyan vonzó.
Tehát mi ennél többet is tehetünk?
Nos lássuk, van valaki a saját telefont, most, hogy tudtam kölcsönkérni?
Bárki, akinek van egy telefon egy zseblámpa beépített?
Kölcsönkérhetem?
Nem kell, hogy kinyitotta.
Rendben.
Köszönöm.
Hadd kölcsönzése.
Rendben.
Tehát, ha én most felfelé és itt mi vagyok képviselő most?
Igen.
Tehát ez egy három, mert ez a 1s oszlop, ez a 2s oszlopban.
Tehát 1 plusz 2 3.
És aztán, ha megpróbálunk tényleg creative-- oh, köszönöm.
Nagyon preemptív.
Rendben.
Most már három iPhone.
Rendben.
>> És most this-- nem fogok do ennél tovább.
Mi vagyok én képviselő most?
Csak hetes.
De szükség fizikailag több memóriát ebben az esetben.
De ez az egész.
Azt lehet gondolni, hogy mi folyik on-- köszönöm you-- belül a telefon
mint csak, hogy egy kapcsoló, ami hogy be van kapcsolva és ki.
>> És ha valaha is hallott szót tranzisztor.
Vagy ha valaha hallott a marketing beszélni Intel belül,
hogy beszél, hogy milyen hardver hogy van benne a számítógép.
Intel CPU teszi, központi egységek,
amelyek olyanok, mint az agy számítógép belsejében.
És ezek processzort és dolgokat ők kapcsolódnak
hogy sok-sok apró kapcsolók.
Milliók, több milliárd kapcsolók hogy lehet akár be vagy ki.
>> Tehát a számítógépek, szerencsére, mint a mi Mac és PC,
számíthat módon meghaladja a 7 vagy 8 mert így több mint három
vagy négy bit.
Sokkal többet, mint a megfelelője a három zseblámpák, hogy csak volt.
De most ez kezd elég érdektelen gyorsan.
Ha most szeretnék valóban képes tenni valamit sokkal érdekesebb,
Azt akarom, hogy képes ugrani hogy valami ehhez hasonló.
>> Tehát ASCII, ez nem igazán hasznos mozaikszó, de az American Standard Code
az Information Interchange.
Ez csak azt jelenti, néhány évvel ezelőtt mi emberek úgy döntött,
Tudod mit, azt akarjuk, hogy képes megtenni Több számítógépek, mint a számok.
Nem akarjuk, hogy csak drága számológépek,
szeretnénk, hogy képes a dolgokat, mint szövegszerkesztő, bár nagyon egyszerűen.
Később volt az e-mail és más hasonló média.
>> És így a világ döntött néhány évvel ezelőtt szerint ez a rendszer ASCII,
tudod mit?
Bizonyos típusú programokat bármikor
lásd a megfelelője a szám 65, mint a minta bit.
És mi lehetne tenni a matematikai itt a fórumon.
A minta a bitek jelentik 65.
Ne gondolj rá, mint a 65 decimális.
Gondold azt, hogy önkényesen, de globálisan, következetesen, mint a fővárosban
A.
Aztán a világ úgy döntött, tudod mit?
Vegyünk egy másik minta bit.
És ha valaha is látni szám 66, nézzük csak
Feltételezzük, hogy ez a tőke B. Ugorjunk H
és én, ha úgy látja, a 72 vagy 73, hogy kell lennie a H és az I, ill.
És így mindaddig, amíg az egész világ egyetért erre.
Tehát, hogy ha kap egy e-mailt, vagy akkor kap egy fájlt egy USB stick,
vagy valami hasonló hogy-- amikor látod ezt a mintát, a bitek,
Ön tudja, hogy meg kell ezt levélben vagy más betű.
>> De ez a konkrét esetekhez, jobbra.
Egy e-mail programot úgy értelmezheti ezeket a dolgokat, mint karakter,
de a grafikus számológép vagy számológép jelenthetnek vagy értelmezni
ezeket a dolgokat, persze, a levelek.
>> Tehát, hogy azt mondta, gyors kis áttekintés.
Ez talán egy három karakter e-mail, hogy a már küldtek.
A motorháztető alatt ez mind a 0s és 1s, de nem érdekel.
Fogunk kezdeni az elvont felett 0s és 1s leveleket.
És ha látok egy minta 0s és 1s hogy valóban képviselik 72, célzás, célzás, 73,
majd 33, mi az üzenet?
>> DIÁK: [hallható]
DAVID MALAN: Tehát, ha úgy gondolja, vissza, csak egy pillanattal ezelőtt, HI
volt az üzenet próbáltam kommunikálni itt, mert H 72,
I 73, és most 33-- ugye nem feltétlenül tudja ezt előre,
de kiderült, ha valóban Lásd még a táblázatot és a rendszer
hogy az emberiség egyeztetett éves ezelőtt, ez csak egy felkiáltójel.
És valóban, van egy minta szimbólumok és számok minden karakter
hogy lehet, hogy a billentyűzeten.
>> Rendben.
Nézzük absztrakt tovább.
Ha nem akarjuk, hogy csak azt dolgok, mint a számok és betűk,
mi valóban szeretnénk végrehajtani grafika.
Nos, ha valaha hallotta a betűszó RGB.
Ez a fajta kelt már, de ez még mindig egyfajta ott.
RGB vörös, zöld, kék.
És ez csak egy rendszer mondván, tudja mit,
vegyünk három bit.
Egy sor 8 bit, egy másik a 8 bit, és egy másik a 8 bit.
És vegyünk ezen bitek tárolni, hogy mennyi vörös mi
szeretnénk a mi képernyőn, mennyit zöld akarunk a mi képernyőn
és mennyi kék akarunk a mi képernyőn.
És ez csak azt jelenti, hogy ha Van egy lot-- egy nagy szám a vörös,
ez azt jelenti, hogy nekem egy csomó piros.
Ha van egy nagy szám zöld, adj egy csomó zöld.
És ha csak egy kicsit kék vagy kis számú, mint a 33,
adj egy kis kék.
És ha történetesen kombinálhatja három nagyságrenddel, hogy úgy mondjam,
kapsz this-- alig látható A projektor itt, de ez a sötét
árnyalatú sárga vagy barna.
>> De ez azt mondani, használ, hogy a mintázata 8 plusz 8 plus plus 8--
ezt a mintát a 24 bites az, ahogy a számítógép is
tárolni, hogy árnyalatú sárga egy kicsiny pont a pixel a képernyőn.
Így már elment 0s és 1s decimális számokat az ábécé.
Vagy sokkal érdekesebb, színes pontok.
>> Nos, mi persze akkor jön a következő lépés?
Nos, mi az a kép, amit lásd a Facebook-on, vagy kap egy e-mailt?
Vagy hasonlók?
Mi az a meghatározás technikailag a kép?
Igen.
Mi egy kép áll, ha nézd igazán közel a képernyőn?
Igen.
Ez csak egy csomó pixel.
Sőt, ha Ön laptop talán később,
és nézd igazán szoros A it-- függően
hogyan drága a laptop és milyen magas színvonalú a képernyő,
akkor is nagyon jól látható az összes A kis pontok a képernyőn.
>> És azok a pontok vagy pixel, ami azt jelenti, van
24 bites ami minden képpontot, hogy fénykép, látod a Facebook-on,
vagy azt, hogy csak volt az iPhone az utóbbi időben.
És ez az, hogy hogyan jutunk a dolgok, mint a grafika.
Nos, mi az a videó?
A videó csak egy grafikus repülés újra a képernyőt
és újra és újra.
És így videók tényleg, csak minták reprezentáló bitek rácsok, sorok
és oszlopok a pontok, repülés a képernyő képe,
után kép után képet, más néven
Mozgóképek.
Tehát ennyi be- és kimenetek.
>> Minden van most egy Feltételezve, hogy Ön
Tudod mit, ha azt akarjuk, számítógép hogy képviselje információt,
van egy rendszer csinálja.
Meg tudjuk csinálni 0s és 1s végén a nap.
De tudjuk elvont, így beszélni, a tetején, hogy
oly módon, hogy képviselje több érdekes dolgok.
És itt végre CS50 és számítástechnika általánosabban
most állunk a vállán Az összes ember, aki
előttünk, aki rájött.
És most csak feltételezik, hogy a számítógépek képviselhet bemenettel és kimenettel.
>> De most nézzük a ténylegesen valamit tenni velük.
Tehát az algoritmus csak egy sor Az utasítások, lépésről lépésre,
megoldására valamilyen probléma.
És mi lenne az egyik ilyen probléma lenni.
Tehát ez egy régi iskola technológia, a telefonkönyvben.
És belsejében egy telefonkönyv egy csomó nevek és számok.
És ezek a nevek általában ábécé sorrendben.
>> Tehát, ha azt akarta, hogy megtalálja valaki ez a telefon könyvet, mint Mike Smith,
mi az a tipikus emberi fog csinálni?
Nos, akkor egyszerűen nyissa fel, nézd meg az első oldalt.
Nem értem Mike Smith.
Viszont a második oldalon, Nem értem Mike Smith.
És csak folyamatosan megy és megy.
Ez lépésről lépésre történő megközelítést a helyes?
Igen.
Elég hülye, igaz.
Ez nem hatékony, jobb.
Mivel ez lesz, hogy örökre hogy Mike-nak, de ez helyes.
Mert ha Mike itt Azt valóban találni.
>> Tehát mi egy kicsit ésszerű ember fog csinálni?
Lehet, hogy még mindig nyitott az első, és talán repülnek át a telefonkönyv
két oldalt egy időben.
Kettő, négy, hat, nyolc.
Nem tudok valójában fizikailag nagyon jól teljesítettek.
De elméletileg, ezt kell kétszer olyan gyors, két oldalt egy időben.
Ez algoritmus helyes?
>> DIÁK: [hallható]
DAVID MALAN: Nem feltétlenül.
Jó.
Miért, hogy a kikötés?
>> DIÁK: Mert lehet egy Az oldalak te kihagyom.
DAVID MALAN: Igen.
Tehát akkor is, ha én egyre közelebb és közelebb.
Mi van, ha csak véletlenül, a rossz szerencse, szendvics között két oldalt
hogy repülök át?
Tehát szükségünk van egy megoldás erre.
Mi valóban szükség akkor azt mondják, várj egy percet,
talán ha túl messzire megyünk, talán Ha elérjük a T-alakú,
T után jön Smith, akkor meg kell legalább kétszeresére vissza legalább egy oldalt.
Tehát rögzíthető, de van feltételes kérdés van.
Így kétszer olyan gyors, de lehet, hogy kell a kettős vissza egy kicsit.
De senki sem a szobájában, akkor is, ha nem igazán használja telefonkönyvek többé,
fog kezdeni az elején.
Mit fogsz csinálni keres Mike Smith?
Fogsz menni nagyjából a S.
Vagy ha nem igazán van A puskát a papíron,
fogsz menni legalább nagyjából a közepén.
És biztosan nem az első a könyv.
Fogsz lenézni.
És matematikailag akkor valószínűleg fogja látni az M rész, amely
nagyjából a közepén.
És akkor fogsz észre, hogy mi igaz?
Hol van Mike?
>> DIÁK: [hallható]
DAVID MALAN: Igen.
Szóval vége, ezen az oldalon.
És így mit lehet tenni?
Nos, mind képletesen és szó szerint tudja tépni a probléma felét egyszer?
És akkor tudja, hogy meg lehet dobni ez a fele a probléma van.
És most mi maradunk alapvetően ugyanaz a probléma, de fele olyan nagy.
És így most mi a • az utasításokat?
Mi az algoritmus megtalálása Mike Smith?
Ez pontosan ugyanaz a dolog.
>> Most ez történik, hogy a M szakasz és ez a Z rész,
de az alapvető formula még mindig ugyanaz.
Menj nagyjából a közepén, néz le, ó, a fene egye meg.
Most én vagyok a T-alakú, Már túl messzire ment.
De itt is tudsz alkalmazni, hogy ugyanezt a logikát.
Dobd a fele a probléma el, és most mi vagyunk
maradt a probléma, hogy az negyede a méretet.
És mi lehet ismételni, és tudjuk ismételni, és mi is ismételjük, amíg elméletileg
ott csak egy oldal maradt amely Mike valamelyike ​​nem, vagy nem az.
>> Tehát mi olyan erős ez az ötlet?
Úgy értem, miután az összes, ez elég intuitív.
Senki sem fog kezdeni a kezdve a telefonkönyv
és a flip 1000 oldalakat találni Mike Smith.
Most ebben a teremben mindenki megy csinálni nagyjából ez a fajta algoritmus
kivéve a szakadást.
>> És akkor miért tesszük?
Nos, úgy a hatékonyságot.
Tekintsük most mennyivel jobb ez a algoritmust által lebontva
alkotórészeire.
Szóval mit először csinálni?
Felvettem a telefonkönyvben.
És egy számítógép tudós, és egy programozó,
általában kiderül, folyik kezdeni számolás mindent 0.
>> Miért?
Nos, ez egy kicsit furcsa hogy mi emberek számítanak, általában,
kiindulva egy.
Mert mi a legkisebb számot tisztán képviselik alapján
még a régi általános iskola matematika?
Nos, ez 0, akár ez decimális vagy bináris.
És így lesz a világban látni A számítástechnika és a programozás,
Konkrétabban, kezdjük számítva mindent 0.
>> Szóval felvette a telefonkönyv lépés 0.
Megyek, hogy nyissa ki a közepén a telefonkönyvben.
És ez valóban egy kifejezése annak, amit tettem.
Majd a második lépésben az volt nézd meg a neveket.
Harmadik lépés egy kicsit különböző fogalmi.
Azt kérdeztem magamban egy kérdést.
Ha Smith nevek között, Megyek, hogy a döntést.
Ha ő nevek között, akkor fogok hívni Mike.
És fogok dönteni alapul, hogy az információt.
>> Azonban, ha nem, ha Smith korábban a könyvet, hogy a bal oldalon,
Megyek, hogy nyissa meg a középső A bal fele a könyv.
És akkor itt van az okosság, Megyek, hogy menjen vissza a második lépésre.
Megyek, hogy egyfajta állni a saját vállát
és ismételje meg a korábbi munkáját tettem.
De a munka már elhagyta az kevesebb, és kevesebb, és kevesebb.
De ez még mindig működni fog.
De ha Mike, hanem a későbbi a könyv a jobb oldalon,
Megyek, hogy nyissa meg a középső A jobb felét a könyv,
majd térjen vissza a második lépésre.
>> De valójában egy negyedik változatban.
Mike sem itt, vagy itt, vagy itt, or--
>> DIÁK: Nem létezik.
DAVID MALAN: Nem létezik.
És valóban, ha nem számolunk ez a negyedik és egyben utolsó forgatókönyv
mi program lehet hibás vagy hibás valamilyen módon.
Else, kilép az esetben, nem találtunk Mike egyáltalán.
És valóban, ha valaha is észrevette A számítógép lóg, vagy az összes
egy hirtelen szó, vagy más programot csak váratlanul kilép,
és néha téged hiba üzenet szó szerint.
Ez a program váratlanul kilépett.
Ez lehet bármely, több okból.
De néha valami olyan egyszerű, mint ez.
Az emberi programozó aki azt írta, hogy a szoftver
nem vette észre, hogy, jaj, van egy oda dolog, ami ténylegesen meg is történik.
És ha nem írok kódot megragadni, hogy a negyedik forgatókönyv
ez valóban váratlan néha amit a számítógép esetleg ténylegesen.
Most hívja ki a Néhány ezek a dolgok.
Tehát sárga itt, kiemelték feltételek
hogy ezentúl mi csak fog meghívni.
Funkciók a világ programozás, mint akciók,
nyilatkozatok intézkedéseket.
Tehát vedd fel, nyitott, nézd A, hívás, nyitott, nyitott, kilép.
Ez egy függvény, eljárás, kereset, bármennyi szinonimák
működne is.
Most mik ezek a dolgok már sárga?
Ha más, ha más, ha mást, ezek milyen
fogunk hívni feltételek programozás,
vagy ágak, döntés rámutat, ha úgy tetszik.
De honnan tudod, hogy melyik villa Az út, hogy, úgymond?
Fel kell hívnunk a a feltételeket, hogy a megfelelő
ott, amelyek ezeket igen nincs kérdés.
Ezek igaz hamis kérdések.
Smith között a neveket?
Smith korábban könyv?
Smith később könyv?
Ezek olyan kérdések, hogy amelyben van egy igen, vagy nem,
vagy azzal egyenértékű igaz, vagy hamis, vagy egyenértékűen egy vagy nulla válasz.
>> És közben ott van Csak egy utolsó darab.
Ez itt van, milyen hatással?
Függetlenül attól, hogy programozza előtt, hogyan kíván
írják le, amit lépés hét és 10 csinálnak?
Mit mondtál?
DIÁK: A rekurzív lépés.
DAVID MALAN: A rekurzív lépés.
Igen, lényegében.
Technikailag iteratív Itt ha ismeri.
De mi jön vissza, hogy a.
De ez csinál valamit jól.
Ismét, ez indukálva ciklus, egy hurok, jobbra.
Te szó szerint megy vissza néhány korábbi lépésben.
És így valóban ez fog végre valamilyen ciklus.
De te nem fog kapni beragadt a végtelenségig, jobbra.
Mert ha folyamatosan ellenőrzi az Mike itt, vagy balra, vagy nem itt,
végül ő nem lesz ott.
És akkor csak kilép összesen mint egy az utolsó sor.
>> Szóval ennyi a szókincse.
És ez volt az, amit mi általában hívja pszeudokód kódot.
Ez nem egy valós nyelvet.
Ez csak nagyon szűkszavú angol, de kommunikál a lényeg.
Nincs formális struktúra itt.
Csak használja ez kevés szavakat, de tiszta szó
mint akkor, hogy kommunikálni az ötlet.
>> Most, hogy milyen jó, hogy algoritmus és mennyivel jobb ez?
Nos, nem kell, hogy bekerüljön a sajátosságait számok vagy bármi
mint az.
De nézd meg a alakja ezt a megoldást.
Tehát, ha csak felhívni néhány xy telek Itt a vízszintes tengelyen itt.
Hívjuk csak a méret a probléma.
És egy számítógép tudós lenne jellemzően az n változó itt.
Tehát n oldalak, vagy n ember a szobában, vagy bármit is próbál számolni.
>> És akkor a függőleges tengelyen a hagyta, hogy lenne az ideje, hogy megoldja.
Tehát, hogy hány másodpercig csinálja vigyen találni Mike Smith?
Vagy hány lépést tart?
Hány lapozás tart?
Tehát ez mennyibe kerül, nekem időben, hogy megoldja a problémát.
És lehet felhívni az első algoritmusok lejtőn, ha úgy tetszik,
mivel csak ez egyenes piros.
És én fogom nevezni n.
>> Miért N?
Miért van az, csak ez az egy egy kapcsolat?
Nos, ha a Verizon vagy függetlenül telefon társaság
Hozzáteszi még egy oldalt A telefonkönyv a következő évben,
amelyek tolja Mike egy több lépéssel közelebb a végén,
attól függően, hogy hol, hogy az oldal.
És így a hatás talán csak lehet adni egy második.
Vagy még egy lapozás.
Egy 1-1 arányban.
>> Ezzel szemben, a második algoritmus.
Mennyivel gyorsabb volt, hogy ösztönösen?
Hol jártam két oldalt egy időben?
Igen.
>> DIÁK: [hallható]
>> DAVID MALAN: Igen.
Így lesz kétszer olyan gyorsan.
És mi lenne felhívni, hogy itt mértékétől függően.
Még mindig egy egyenes vonal, de alacsonyabb, mint a piros vonal.
Mivel néhány számot oldalak, ha tart
ezt sok lépésben az első algoritmus,
ez megy, hogy ha a fele annyi lépést a második.
És így a sárga vonal leírja a második algoritmus
csak lesz alatta.
>> De ami igazán erős, hogy gondoljon a harmadik és egyben utolsó,
és meglepően leginkább intuitív algoritmus, amely ezt a formát.
Technikailag azt mondanánk ez egy logaritmikus görbe.
Log bázis 2 n ebben az esetben.
De ez nem igazán számít.
Mi számít igazán az alapvetően különböző alakja van.
És akkor úgy, hogy mennyire sokkal rövidebb ez a vonal nagyon
ez hosszú távon.
Ez folyamatosan növekszik.
Ez nem lelapul tökéletesen.
De ez a nő nagyon sokkal lassabban mivel a probléma egyre nagyobb és nagyobb.
És azt lehet gondolni, hogy ez a way-- ha Verizon nem csak
adjunk hozzá egy oldal következő évben, de páros az oldalak számát a telefonkönyvben,
Az első algoritmusa tart kétszer annyi lépést.
Ha ez 1000 oldal ezt évben, 2000 oldal a következő évben,
Mike lehet, hogy sokkal távolabb.
Tehát 1000 extra lépést, hogy megtalálja őt.
A második algoritmus Lehet, hogy csak 500 több
lépéseket, hogy megtalálja őt, mert újra, Repülök rajta két egy időben.
>> De mi a helyzet a harmadik algoritmus?
Ha Verizon megduplázza az méret a telefonkönyv
jövőre 1000-től 2000- oldalak, hány lépést
az én harmadik algoritmus fog tartani?
Igen, ez csak egy.
És ez a hatalmas ötlet.
Tudod venni 1000 oldal harapás ki, hogy a probléma egyszerre.
És most, ha figyelembe vesszük egy buta forgatókönyv
de ez a fajta beszél a ereje ennek a fajta intuition--
Ha a telefonkönyv volt, mint négymilliárd oldalak, olyan, mint egy nagyon nagy probléma.
És valóban, ez is előfordulhat vigyél négymilliárd oldal
fordul, hogy megtalálja Mike Smith, hogy esetében az első algoritmus.
De hogy hány lépést lenne az veszi a harmadik algoritmus
találni Mike között négy milliárd darab papír?
Tehát négymilliárd tépje ketté.
Kapsz kétmilliárd.
Aztán egy milliárd, akkor 500 millió, 250 millió, 125 million-- de
Olyan, mintha ez a fog tartani egy darabig.
Lehet, hogy szükségem 32 ujjak ig számolunk, hogy a magas.
De ez valóban a mindössze 32 oldal könnyek.
Akkor megy a négy milliárd egy oldalt elválasztó
az eredeti szám a oldalak felében 32 alkalommal
amíg te balra csak, hogy egyetlen oldalon.
>> Most, persze, csalok itt.
Ez nem, hogy mi csak úgy sort A hülye teljesen az első két
algoritmusok.
Én csalás bizonyos értelemben, vagy tényleg én kihasználva egy feltételezés.
Ami igaz volt a telefonkönyvben eredeti formájában, amely lehetővé tette
engem is használja, hogy a harmadik algoritmus?
Igen?
KÖZÖNSÉG: Ez volt betűrendbe.
DAVID MALAN: Azt betűrendbe, igaz?
Ha ez csak véletlen sorrendben, ez egy hulladék
az idő, ez az egész beszélgetést.
Meg kell nézni minden oldal, ha ez véletlen sorrendben
találni Mike Smith, mielőtt megállapíthatjuk, hogy ott van-e vagy sem.
És így a sarokban vágni, hogy én
Feltételezhető, hogy valaki a Ebben az esetben nem a munka számomra.
És így, hogy végül meghívók A kérdés, nos, egy pillanat.
Hogyan rendezni 1000 oldalak nevek és számok?
Ez valójában egy másik probléma, valami
mi jön vissza a jövőben.
De ha belegondolsz honlapok mint a Facebook és a Google a Gmail
és a dolgok, mint a Google saját keresési indexek,
ha van több millió vagy milliárd adatrészletek tárolt ezekben a napokban,
searching-- és nem is beszélve válogatás azok problems--
végül is egy kihívás önmagában.
És valóban, ez akkor van csak az egyik kihívás
hogy mi lesz nézett.
>> Tehát most vessünk egy pillanatra és megnézzük CS50
magát, és kapsz egyfajta mi vár ebben a félévben.
Sőt, ha még nem tette meg, ne nézd meg ezt az URL.
És ahogy Patrick utalt hogy ebben az évben vagyunk
így jelentős beruházást valamennyi annál során támogatását
szerkezetét tekintve a TA és a CA, irodai óra,
szakaszok rendelkezésre állás és digitális anyagok online is.
Sőt, tekintve a pálya előadás, itt vagyunk ma.
És az elvárások ezen évben hivatalosan a tanfolyam
van részt venni a mai, a pálya Utolsó előadás, és egy sor
nagyjából a közepén a félév minden előadás között
bocsátott általában péntek délután
online, mind a Yale diákok és a Harvard hallgatói idén.
Sőt, az egyik a alapvető változások
hogy mi elfogadása a Harvard egy paradigma nagyon
mint mi itt az utolsó év, és most ebben az évben,
így hasonlóan, még mindig a film leginkább A tanfolyam előadások Cambridge
de hozzáférhetővé teszi a korábbi mint mi a múltban
így azok a you-- ha szeretne, például
kap egy előnyt anyagok az első hétvégén inkább
mint a második hétvégén, akkor meg hozzáférést az ilyen típusú anyagok,
kereshető, beágyazható, hyperlinkable a kapcsolódó források a korábbi.
Ami a témákat, hogy az Ön bizonyos értelemben a tanfolyam trajectory--
és néhány ilyen lehet zsargonban most, de nem sokáig, megnyugodhat.
Kezdjük ma, végül, nézi az egyik programozási
nyelv úgynevezett Scratch.
Majd ezt követően átmenet jövő héten valami úgynevezett C
majd nézi más épület blokkok a problémák megoldására,
dolgokat az úgynevezett tömbök és algoritmusok hogyan használjuk memória előnyünkre
és a hátrányos helyzet, és ilyeneket adatszerkezetek,
majd felé a farok végére osztály nézi gépi tanulás
és keres egy másik nyelv nevű Python,
hogyan működik a web, hogy az internet több általában működik, protokollok, mint a HTTP,
nyelvek adatbázisokat, mint SQL, JavaScript az interneten,
és végül árukapcsolás az összes ilyen együtt.
>> És így Valóban, a A nap végén, akkor
Nem fogja megtanulni ebben az osztályban Scratch C vagy Python vagy SQL vagy a JavaScript.
Lesz helyette általában tanulni számítástechnika és az alapítványok
pontjára, és akkor megtanulják, hogyan kell programozni
bármilyen számú ilyen nyelvek az út mentén.
Tehát valóban, az egyik cél A kurzus végén
van, hogy vegye le az összes tanfolyam képzés kerekek utolsó heteiben
így ezt követően, akkor vissza a saját fields--
hogy ez-e, vagy Nem számítástechnika
vagy mérnöki, a természetes tudományok, művészetek, humán, vagy beyond--
és hogy néhány ilyen Természetesen ötletek és ezen a területen a
ötletek és gyakorlati készségek saját domain
annak érdekében, hogy megoldja a problémákat ott.
>> Mit fogunk tenni itt időközben A legtöbb csütörtökön a mai nap után
ez a tanfolyam feje vezető mit fogunk hívni rövidfilmek
A kurzus probléma készletek.
Így minden héten, amikor van egy probléma beállítva, fogunk
lehet séta egy helyen mint ez a tanfolyam kihívások,
mely néhány tippet és trükkök és tervezési technikák.
De ha nem tudja hogy e személyesen,
észre ugyanezen forrásokra lesz ágyazva
az egyik a pálya tanársegédek
a probléma határozza maguk is.
>> A probléma határozza idén, ellentétben tavaly, a visszajelzések alapján,
továbbra is megjelent pénteken.
De ahelyett, hogy kellő Az ezt követő péntek,
ezáltal csak hét nap, hatékonyan kell fizetni 10 nappal később.
És valóban, ez azt jelenti, hogy akkor átfedés a hétvégén.
De reméljük, ez év Különösen ez lesz
lehetővé teszik a diákok, hogy jobban igazodjon apály és dagály a saját menetrend,
legyen az elméleti vagy extracurriculars, atlétikai
vagy középtávú szezonban.
Akkor vagy front-terhelés vagy back-terhelés A héten összpontosítva CS50 alapján
a saját heti aktuális tanfolyam terhelést.
>> A probléma határozza magukat fedezi a több nyelven,
bár fogunk összpontosítani Főleg korán a C
mielőtt koncentrálunk ezután magasabb szinten több webközpontú nyelven.
És akkor egy pár GYIK here-- kéne venni egy osztály, mint CS50
mint az első évben?
Tehát teljesen.
És valóban, ez nem szükségképpen valami
meg kell elhalasztani, amíg meg nem vágja a fogak más típusú osztályok.
Hanem inkább úgy hogy sok diák számára,
magamat beleértve vissza a nap, ez egy nagyon szokatlan területen,
különösen akkor, ha soha nem vesz egy AP CSA
vagy valami ilyesmi a középiskolában.
De észre, hogy korán, függetlenül attól, hogy ez a pálya
vagy valamilyen más alaptanfolyamot, Most valóban a legjobb időt,
Azt hiszem, hogy talál valami új utat vagy néhány új tudományos érdeklődés is.
Majd vesz más courses-- így az egyik legfontosabb különbség itt
versus Harvard, hogy mi csak hogy négy szemeszterenként
Harvard valamilyen okból.
És ti tényleg húzza off mintegy 36 kurzusok összesen
során a négy év, ami azt jelenti, általában négy vagy öt
osztályok.
És én azt gondolom, ez elég elmondhatjuk, és elhárítani CS50, a tervezés, az
Valószínűleg nem az a típusú osztály hogy tipikusan
vegye négy másik kurzusok összesen öt
mert psets vannak a tervezés meglehetősen intenzív.
Valóban, én is tanultam ezt vissza a nap.
Azt nem lehet leírni CS50 és számítástechnika, programozás
mivel annyira nehéz, mint amilyennek csak időigényes.
Ez nem az a fajta dolog ahol vacsora után, akkor
mehet vissza a kollégiumi szoba, ülj le, és indítsa
összpontosítva PSET gondolkodás, minden rendben,
Leszek bumm ki ezt Ma este majd mozog
tovább én következő téma a következő napon.
Néha csak megüt egy falat.
Van hibákat a kódban.
Nem feltétlenül tudja hogyan lehet megoldani néhány problémát.
És az egyik legfontosabb jellemzője programozási magamnak, hogy ez a nap
ez csak ilyen kell venni egy lépést hátra néha aludni rajta
vagy úgy gondolja, rajta során A jog vagy más tevékenység,
majd gyere vissza, hogy friss.
És akkor csak meg kell ezeket az ablakokat az idő.
>> És valóban, ez az, amiért mi már meghosszabbított az időt
áll a probléma határozza ebben az évben, és azt is, hogy egy URL
Tettem fel korábban, hogy mi az új ebben a félévben,
díszítve a probléma határozza, hogy ők alapvetően nem kevésbé szigorú,
és a takeaways nem kevésbé, de van egy csomó kisebb elülső számít,
sokkal kevesebb utánajárást, hogy meg kell do elején minden probléma halmaz,
mint látni fogod, mielőtt tudsz valójában belevetik magukat a húst is.
Tehát megállapítható, hogy ezek és más változások a láthatáron
hogy jobban igazodjon a diákok, de végül, hogy megbizonyosodjon arról
hogy az elvitelre is valóban olyan magas, mint lehetséges.
Tehát miközben több munkát, mint Lehet, hogy egy tipikus osztály,
reméljük, hogy a megtérülés Ön és a elvitelre az Ön
és a készségek és ötletek amellyel kilép
annál is inkább kényszerítő eredményeként.
És neked there-- és ez az egyik kulcs imbiss,
Patrick utalt earlier-- van A tanfolyam tartószerkezet.
Tehát nem csak nem CS50 van az egyik a legnagyobb természetesen vezérkar az egyetemen.
Ez is az egyik legtöbb egyetemi.
Sőt, az elmúlt évben CS50 volt az első osztályú
hogy egy egyetemi tanári kar.
És tanúsítja, hogy a siker nem most Sok más tanfolyamok keretében Yale CS
van, hogy is.
És a diákok számára, különösen, majd ezeket a TA és persze asszisztensek
támogatjuk az egész hálózatot támogató erőforrások
köztük szakaszok, vagy ismertetéseknél heti lehetőségek
hogy intim beszélgetések és az értékelés anyag célzott
A különböző pályák, a diákok kevésbé kényelmes, kényelmesebb,
vagy valahol a kettő között.
Ezek a követi a rendelkezésre álló Az előadások több napot egy héten
hétfőn és kedden.
Aztán irodai hours-- egy-egy lehetőséget
segítséget a tanfolyam CA-k és Tas lesz szerdán és csütörtökön
és vasárnap több idők, amelyek mindegyike
felteszik a kurzus honlapján, még jobban, mint az elmúlt évben is.
>> De mi kulcsa CS50, ha nem ugyan egy kicsit szokatlan,
a tanfolyam kultúra Megpróbáltuk művelni,
mind a Cambridge sok éve és most legutóbb a New Haven.
És valóban, ez jön Szombaton, ha még nem hallott,
a CS50 Puzzle Nap, amely semmi köze a számítógép-tudomány
de a teljes tervezett küldeni egy üzenetet, hogy a számítógép tudomány
körülbelül problémamegoldás.
És valóban, ha azt szeretné, hogy partnere egy vagy két vagy három barát
és a forma egy csapat CS50 Puzzle Day, nézd
A reklámok, amelyek a kiutat.
És három óra pizza és rejtvények és nyeremények várják.
És valóban, a Az idén először,
akkor nem kerül sor közösen Harvard.
Ez lesz itt függetlenül a Yale.
Így tartsa a szemét a azokat, ha nem.
Most minden pénteken a félévben nem igyekszünk, hogy egy nagy osztály
úgy érzi, a kis- és hozz 50 diák ebédelni során munkatársai,
a diákokkal, a barátok az ipar beszélni
arról, hogy mi az élet olyan, mint után osztály, mint CS50 és több mint a nyár
és a diploma megszerzése után.
Így tartsa a szemét a meghívásokat, hogy.
Elsö alkalommal valaha ebben az évben mi
tartsa az első CS50 kódolás verseny, egy opcionális opt-in lehetőséget
félévközi, miután mindannyian volna hat-hét hetes programozás
C alatt a nadrágszíjat, hogy versenyezni, ha úgy choose-- újra
A teams-- próbál megoldja a sok kihívás
mint akkor a műsorokat, a barátai mások ellen.
>> Felé, és a farok a félév majd mi charter néhány buszok,
valójában egy ideig Cambridge-ben, ha azt
szeretne csatlakozni hozzánk, az úgynevezett CS50 hackathon.
At 19:00 kezdjük.
Mintegy 21:00, mi lesz a pizza.
Mintegy 01:00, mi lesz burritos.
És még valaki ébren a busszal haza körül 05:00,
akkor álljon meg a palacsintát A IHOP útközben home--
egy 12 órás lehetőséget, hogy merítsük magát osztálytársai és a személyzet
során a projekt végső, amely lehetőséget teremt
hogy lépjen túl a Természetesen a probléma készletek
ki és valósítanak meg a legtöbb semmi érdekes az Ön számára,
amelyet végül szerepelt itt Commons.
A legelső CS50 tisztességes utoljára év, end-of-félév kiállítás
vagy ünnep, amit mindenki az osztályban már megtörtént,
különösen, megint, aki ment semmi valamit, nulláról 60,
amelynek nincs előzetes háttér és kiállító, végül
valamit az egész campus, és ha az interneten, a világot látni is.
>> Nos, ezek itt csak néhány a TA és CA, ami CS50 lehetséges.
Engedjék meg, hogy meghívjuk minden Az ezekkel a munkatársakkal
akik itt, hogy jöjjön fel a színpadra, valamint a pálya fejek,
hez néhány szót a inspiráció is.
>> ANDI: Hi srácok.
Nem tudnátok hallasz?
Köszönjük, hogy velünk ezen szép, esős csütörtök délután.
A nevem Andi.
Én egy junior Berkeley-ben.
És ezzel együtt Stelios és nyári, mi lesz a három fej tanítás
asszisztensek erre következő évben.
Szóval, azt hiszem, show hands-- hányan
nem áll szándékában, hogy egy CS nagy, sem igazán búvár mélyen
a számítástechnika, mint egy nagy itt?
Fantasztikus.
Ez zseniális.
>> Szóval én valójában egy globális ügyek és a kognitív tudományok nagy.
Szó szerint jött Yale azzal a szándékkal,
Az, hogy sohasem kell nézni a szám soha többé az életben.
Amikor jöttem Yale, ez volt valamit, ami soha nem volt az én radar.
Azt akartam, hogy megtudjuk, a költészet.
Azt akartam, hogy megtudjuk, nemzetközi ügyek.
Azt akartam, hogy megtudjuk, akvarell rajzok.
Igen, kínálunk egy osztály A akvarell rajzok.
>> De soha nem volt érdekelt semmiben STEM kapcsolódó.
De aztán az idősebb I Van, annál inkább rájöttem
hogy minden területen valóban valamilyen értelemben foglalkoztat számítástechnika,
vagy ha nem a számítástechnika, a számítástechnika terén.
Tény, hogy az én globális ügyek projekt kidolgozásában elért,
mi használ adatanalitikát elemezni terrortámadások
A Boko Haram Nigéria.
És így, mint látható, függetlenül attól, A mi nagy a végén folytat
vagy mi az érdeklődési itt a Yale vannak, programozási és az alapítványok
bármilyen készség szuper hasznos.
És CS50 nagyon jól fel van szerelve fajta kölcsönöznek az erőforrásokat
Önnek, függetlenül attól, hogy Ön hogy
vagy hogyan érdekel bennünket folytat az osztály.
>> Nyári fog beszélni egy kicsit bit mit vagytok
fog tanulni ebben az évben.
NYÁRI: Szia, mindenki.
Vagyok Nyári Wu.
Én egy junior Morse.
És én valóban indult a CS50 diák magam.
Tehát három évvel ezelőtt volt egy rés évben.
Soha nem vett CS osztály a középiskolában,
de úgy gondoltam, hogy az én szabad idő, ez lenne jó, hogy megtanulják, hogyan kell a kódot.
Így aztán egy gyors Google-keresés, kerestünk mi volt elérhető online,
és látta ezt a videót Muppets és DJ-k és a hűvös honlapok.
Én, mint szeretnék megtanulják, hogyan kell csinálni.
>> Így vettem a tanfolyam, és én csak beleszerettem vele.
De emlékszem, hogy ilyen féltékeny a gyerekek, akik részt vehettek a az hackathon,
részt vesz Puzzle Day, részt iroda óra, kap segítséget TA személyesen.
És így soha nem gondoltam hogy én kap esélyt
hogy itt részt Az persze, hogy először van
engem érdekel a számítógép a tudomány és az oka annak,
Én a számítógép-tudomány nagy ma.
Úgyhogy figyelmeztetlek, ez az osztály fog nyújtani Önnek.
Meg fog kihívást jelent.
De ez is fog tanítani, hogyan kell csinálni a dolgokat
hogy soha nem képzelt amit lehetett.
>> STELIOS: Szia, mindenki.
A nevem Stelios.
Én egy junior Branford Kollégium és a CS jelentős.
Én is, Athén, Görögország.
én már nagyon várom a találkozó mindannyian,
beszélgetni veled részén, a irodai óra, péntek ebédet.
Nagyon izgatott vagyok, mert mi már fel annyi erőfeszítést
létrehozzon egy egyedi támogatás struktúra mindannyian
hogy az élményt során a lehető legjobb.
És remélem, hogy bár a legtöbb akkor valószínűleg nem hozott CS
Természetesen korábban, remélem, hogy ez CS50 Önnek mi szikra érdek
hogy folytassa a számítógép tudomány a jövőben,
mint tette azt oly sokan a múltban.
Tehát köszönöm, hogy Itt, izgatott, hogy látlak.
Jason Hirschhorn.
JASON HIRSCHHORN: Sziasztok.
A nevem Jason Hirschhorn.
Élek Silliman.
És én a Harvardon, mint egy egyetemista szakát társadalmi tanulmányok
és minored számítástechnika.
És az egyik legfontosabb szerepet itt hogy támogassa ezt a csodálatos személyzet
mivel támogatni benneteket.
Tény, hogy ez nem mindet.
Jelenleg 55 egyetemisták és diplomások itt, hogy támogassa mindenkinek.
És merem állítani az egyik legjobb részei a tanfolyam az Ön számára
minden kezd dolgozni őket, megismerni őket,
egyre látni őket, mind a CS50 és kívül CS50 ebben a félévben
és sok félév jönni.
Így remélhetőleg akkor vegye a Természetesen azért, mert remélhetőleg
kap, hogy befolyásolja a csodálatos személyzet van a színpadon.
>> SPEAKER: Nos, hadd fejezzem azzal, hogy szórakoztató lesz.
DAVID MALAN: Nos, köszönhetően egész csapat.
Engedjék meg, hogy homályos a fények és a hogy néhány csapatunk,
mind a Cambridge és New Haven, köszönni, mint ezek a srácok reszelje le.
És utána mi lesz átmenet az első a mi programozás megbízások
ezzel nyelv úgynevezett Scratch.
Így köszönhetően a csapat.
Nézzük homályos a fények és hallani néhány másik.
>> [TAPS]
>> [VIDEO LEJÁTSZÁS]
>> -A Küldetése CS50 az, hogy ha kényelmesebb egy teljesen új módon
gondolkodás, ez a számítási gondolkodásmód.
-Ez Készült számítástechnika Érdekes, amely
van valami, amit nem igazán észre volt lehetséges, amíg vettem az osztály.
-I Volt, mint, hé.
Én nagyon fordítására gondolataim egy számítógép most.
>> -Még Ha nincs háttér számítástechnika vagy bármilyen tapasztalata,
ez valójában az osztály az Ön számára.
>> -Szóval Én biztosan szeretnék tanítványaim, hogy csak
izgatott számítástechnika.
Nem csak a programozás, de gondolkodik, mint egy számítógép tudós
valóban, amit akarok próbálja megtanítani a gólya.
>> -CS50 Kemény és kifizetődő.
>> -Egy élmény.
>> -Látványos vígopera.
>> -Ez Így számunkra, hogy a következő szintre.
>> [ZENE]
>> -A TF vannak, azt hiszem, a vérkeringése során.
>> -Én Izgatott, hogy tanítványaim Segítek
van, hogy aha pillanatban megvalósítani mit próbálunk
tennie, hogy kitaláljuk, hogyan kell csinálni egy PSET.
>> -CS50 Határozottan kemény pályán.
De ellentétben más Persze igazán a Yale,
van egy ilyen nagy, támogató közösség.
-Te Teljesen nem kell tudni semmit
a kódolási, hogy képes hogy a tanfolyam.
-Ez Elképesztő nézni, hogy milyen messze emberek jönnek egy félévben.
>> -Te Nem egyedül ül szobádba tanulás kódot,
de ez több volt, mint egy osztály.
Élmény volt.
-A Legjobb módja annak, hogy megtanulják fogalmak és feldolgozni őket a tanítás mások.
>> -Mi A telefon osztott?
>> [ZENE]
>> -És Ez CS50.
>> [ZENE]
>> -Ez CS50.
>> -Van egy probléma?
Tépd ketté.
>> [ZENE]
>> Dobd el.
>> DAVID MALAN: Rendben.
Úgyhogy tackle-- egy kis bit, mellesleg, ez
volt ez a hagyomány valamilyen okból 10 éves
szolgálja sütemény a kezdete és vége CS50.
Tehát vár végén ma, továbbá a tanmenetét
lesz néhány torta is, és során munkatársai köszönni.
De most nézzük átmenetet a Először a nyelv, ahol
fogunk tölteni tényleg csak egy hét és egy probléma meg ezen a területen, Scratch.
És meg fogja találni, ha már beprogramozott, sok
Az ötletek és a lehetőségek, amelyeket ismer.
De akkor meg, hogy ez szórakoztató az út mentén
kitalálni, hogy pontosan hogyan kell lefordítani néhány ötlet már tudja
hogy az adott környezetben igazán lenyűgözni a család
és barátait a munkát, amely lehet megy online, ha úgy döntenek, utána.
>> És ha nincs korábbi tapasztalatok és
között a legtöbb hallgatók kevésbé kényelmes,
észre, hogy sok az ötleteket Csak feltárását reality-- dolgok
mint telefonkönyvek és a részvétel és így forth-- lefordítani
meglehetősen szépen a számítógéphez, de akkor nem, ha használja,
Kezdetben, a nyelv, mint ez.
Tehát ez egy programot írt egy nyelv úgynevezett C.
És mi költeni egy kicsit időt C, végül.
De esély, akkor ez egy kicsit rejtélyes Önnek az első pillantásra.
Sőt, van egy csomó fura szintaxis, zárójelben, könyökök,
zárójelekkel, idézetek, és a pontosvessző.
És valóban, ha belevetik programozás először
nézi és próbál létrehozni dolgokat mint ez, őszintén, te ilyen belecsúszni
így gyakran csak hülye minutia hogy semmi
szellemileg érdekes róla.
>> De képzeld el, ha tudna létrehozni ez ugyanaz program-- amely,
mint ahogy azt a fajta következtetni, valószínűleg a "Hello, world" valahogy.
Tudjuk desztillálódó ugyanezen ötlet csak két puzzle darab, ha úgy tetszik.
Valóban, Scratch érdekes mert ezt a grafikus nyelvet.
Akkor fogd és vidd ezeket puzzle darabokat, hogy csak a retesz
ha ettől logikai értelemben, hogy nem így van.
És így Scratch, mi hamarosan látni, ez
hogyan kellene végrehajtani, hogy ugyanaz programot, mindössze két puzzle darab
hogy elég sok, amit mondanak.
>> De majd meglátjuk, csak egy pillanatra, hogy néhány Az építőelemek hogy utalt
a korábbi és még néhány olyan található, végül fognak alkotják
néhány legkorábbi programokat.
Megyünk a dolgokat mint functions-- csak
cselekvések tenni valamit, mint mondják hello, world.
Megyünk hurkokat, dolgok indukáló ciklusok
újra és újra, mint mi volt egy pillanat ezelőtt keresés
Mike Smith.
Változók, mint az algebra, ha Van x vagy y, amely képes tárolni egy számot.
Nos, a programban, akkor valójában tárolni több, mint a számok.
Tárolhat a szavak és mondatok és grafikai és egyéb dolgok is.
Logikai kifejezések, csak questions-- igen vagy nem, igaz vagy hamis.
Feltételek, döntéseket ezek alapján igen / nem választ.
>> És akkor cifrább dolgok, mint a tömb és szálak és események
és tetszőleges számú egyéb funkciókat, de amelyek mindegyike
Térkép szépen a nagyon barátságos blokkok, mint ez.
Ez lesz a funkciója, a lila puzzle darab, csak azt mondja,
mi a neve is-- ebben az esetben, mondjuk.
És akkor gyakran van egy fehér doboz, amit
írja be vagy húzza néhány értéket.
És ez az, ami általában hívott egy érv, vagy egy paramétert.
Ez egy módja annak megváltoztatására alapértelmezett viselkedését egy puzzle
darab vagy egy funkció, így nem valami egyedi az Ön számára, mintha azt mondanánk,
hello, világ, vagy hello, Andy vagy hello, Jason vagy más mondat helyett.
>> Ha azt szeretnénk, hogy azt mondják, hogy a lot-- szó forever--
akkor újabb puzzle darab úgynevezett örökre
és csak szendvics a kettő együtt, mint ez.
És ez hurok, mint a kép is mutatja, azt jelenti, csak azt mondom hello, világ örökre,
újra és újra és újra.
Vagy ha csak akar csinálni egy véges számú alkalommal, mint 50-szer,
ott lesz egy másik puzzle darab hogy-- ismételjük 50 alkalommal.
>> Közben, ha azt szeretné, hogy van egy változtatható
ezen a nyelven vagyunk körülbelül játszani,
akkor egy narancssárga blokk, mint ez.
És ez a változó azt önkényesen az i az egész.
És én csak beállítani 0-val egyenlő.
És így talán, ebben case-- ezt változó--
képviseli valaki pont a játék.
Akkor nulláról indulnak, és minden alkalommal, amikor hogy a cél, vagy valami ilyesmi,
kapsz egy további ponttal.
>> Kérdéseket tehet fel, a Scratch.
Ha drag and drop puzzle darab egy ilyen pillanatban,
kérdéseket tehet fel, mint, is, én kevesebb, mint 50?
Lehet, hogy szükség 50 pontot nyerni.
És így ez lenne A kérdés azt kérdezni.
Vagy általánosabban, akkor mondhatnánk x kisebb, mint y,
ahol van két változó szó?
Nos, ez egy nagyon sok nagyobb első pillantásra,
de tényleg nem olyan bonyolultabb.
>> Ez csak egy kombináció A feltételek és a változók
és logikai kifejezések kérni Három questions-- x kisebb, mint y?
Ha igen, mondjuk így.
Mondjuk, x kisebb mint y.
Else, ha x nagyobb, mint y, egyébként x egyenlőnek kell lennie y.
És mivel Mike Smith, volt négy forgatókönyvet, itt
a számok világában, x vagy kevesebb, mint, nagyobb mint, vagy egyenlő.
Minden van három villa az úton.
És akkor ott van cifrább puzzle darab, mint ez
a dolgok, mint a tömbök, ahol vagyunk lesz képes, hogy információt tároljon.
Fogunk látni blokkokat, amelyek lehetővé teszik számunkra, hogy végre több szálat,
Egy másik jellemző fogjuk használni, és akkor is egy úgynevezett eseményeket.
De mielőtt az adott pont, és hozzon létre még,
végül, a saját egyéni puzzle-darabokat, tegyük
ténylegesen nyissa meg a program maga.
>> Tehát ez Scratch.
Ez elérhető scratch.mit.edu.
És nyugodtan játszani most vagy később is.
Ez történetesen az offline verzió.
Azoknak az embereknek, akik nem feltétlenül nagy internet,
akkor töltse le a Ugyanaz a szoftver is.
És ott tényleg csak három komponensek ezt a szoftvert.
A bal felső sarkában A képernyőn az a fajta színpadi
hogy Scratch, akik alapértelmezés szerint úgy néz ki, mint egy macska, él benne.
Ő is felfelé, lefelé, balra és jobbra és tegye számos más dolog,
és nézd számos módon alapú A jelmezek, hogy rendeljen hozzá.
De ez az, amit fogjuk hívni a Sprite, egyfajta karaktert.
És akkor több karakterek, mint azt hamarosan látni.
>> A középső most mind ezek a puzzle darabok és ezeket a kategóriákat vagy raklapok
cikke.
Tehát most, rákattintottam Motion.
És így látom az összes mozgás kapcsolatos puzzle darab, vagy blokkolja,
így olyan funkciókra, amelyek köze megy fel,
le, balra vagy jobbra, vagy valamilyen más műveletet.
De ha rákattintottam néz ki, akkor látta a dolgokat, mint a mondjuk blokk
hogy láttunk csak egy pillanattal ezelőtt.
És ha rákattintok a vezérlő, meglátod dolgok, mint az ismétlés és az örök
és ha blokk láttunk egy perce.
>> És így talál hogy mi csak megkarcolja
a felület néhány puzzle darabjait,
de ez mind meglehetősen intuitív és pont és kattintson.
Sőt, Scratch tervezték A fiatalabb diákok
hogy segítsen nekik egy kimeneti a kreatív gondolkodást.
És mégis csodálatosan, ez Csodálatos lépcsőfok
pontosan az ötleteket fogunk tárja fel a C és Python és JavaScript,
is.
>> A jobb oldali, végül, itt ez, az úgynevezett szkriptek területen.
És ez még csak az üres pala amely ha elkezd írni egy programot.
És én pontosan ezt tette.
Most történetesen tudom hol van mert én csináltam ezt egy párszor.
De tudom, hogy az Az események létesítmény,
itt van ez a mondat here-- ha zöld zászló kattintott.
És észre, ha én kinagyítva vissza ide a színpadon,
Scratch életét ezen belül kis téglalap alakú világban,
tetején, amely egy zöld zászló és piros stoptábla.
Így megy, és megáll, ill.
>> És így mit akarok amikor a zöld zászló kattint?
Nos, hadd menjen, hogy néz ki a kategóriát.
És hadd menjen előre és drag and drop ezt.
És észre, amint lesz szoros, ők egyfajta mágneses.
Tehát, ha most elengedni, nem pattan együtt szép és tiszta.
És én megyek előre, és mond valamit, mint hello, világ
két másodpercig.
Hadd kicsinyítés és kattintson most a zöld zászlót, és azt mondják, hello, világ.
Rendben.
Szóval ez mind szép és jó.
Nem minden izgalmas.
Nézzük, hogy ez egy kicsit csinosabb.
És tudom, hogy az előre Scratch történik
hogy jön néhány aranyos dolgokat, mint ez.
Így a játék hang nyávog, amíg kész.
Tehát lássuk ezt.
>> [MIAÚ]
>> Ó, ez aranyos.
És ha rákattint again--
>> [MIAÚ]
>> És újra.
>> [MIAÚ]
>> De folyton kelljen újra életre kelt Scratch.
De tudok jobbat, mint ez.
Miért nem csak húzza három ilyen.
És most már háromszor imádnivaló.
>> [NYÁVOGÁS]
>> OK, valóban, ez egy kicsit hátborzongató.
Tehát szükségünk van valami a kettő között van.
Ha elmegyek vezérlés, úgy néz ki, mint a van valójában egy várakozási blokk.
És így észre ha felett lebeg there-- és engedjék meg, hogy ez egy kicsit nagyobb.
Ha lebeg, ez lesz hogy pattannak.
Szóval várj egy másodpercet, várjon egy percet.
Nézzük hit zöld zászlót újra.
>> [NYÁVOGÁS]
>> OK, egy kicsit több természetes, de nem túl hatékony.
Tehát ez a helyes, ha a program cél az volt, miau háromszor.
De ez nem nagyon jól megtervezett.
Azt a fajta vágott néhány sarkok.
Van egy kicsit lusta.
Milyen érzés, így: mit úgy tűnik, hogy volna rosszul, mit mondana?
Igen?
Igen, a közepén.
KÖZÖNSÉG: Használt több memória, mint te szükség
mert az Ön által használt Olyan sok különböző vonal.
DAVID MALAN: Igen, több vonal.
És ez nem feltétlenül a memória, bár lehet tekinteni, mint így.
De ez definitely-- van redundancia.
És én szó egyfajta húzni és leesett ugyanazt a dolgot.
És ha ilyen extrapolate-- ha ez nem nyilvánvaló here-- is, hogyan fog
Azt miau 30 alkalommal?
Azt húzza, mint, 30 további pár puzzle darab.
És biztosan van egy jobb út.
És láttunk egy jobb út.
Mi ösztönösen lenne a jobb megoldás?
Ja, csak használja a hurok.
Nem másolás és beillesztés.
És valóban, ez bármikor félév, ha elkezd
találni magát áthúzza, vagy tényleg a másolás és beillesztés,
veszélyes szokás bejutni, mert ez csak nem nagyon karbantartható.
Például, ha azt szeretnénk változtatni A hang valami mást,
Meg kell változtatni most három helyeken, hanem csak egy.
Mert valóban, ha én megtörni ezt away-- vagyok
csak úgy, hogy elválassza, mint ezt.
Hadd megragad egy ismétlés blokk, és majd három, írja három,
dobja Néhány ilyen re mindössze elengedte.
És akkor észre nem úgy néz ki, mint illik,
de mágnesesen, ez megy hogy ne csak a helyére kerüljön
de nőnek, hogy illeszkedjen az alakzatot.
Tehát ez jó.
És most, ha rákattintok játszani.
>> [NYÁVOGÁS]
Nagyon szép.
Rendben.
És most már nagyon könnyű változtatni is, mert én is csak
megváltoztatható egy szám egy helyen.
De ez is nem olyan érdekes.
Nézzük valójában Scratch nem miau, de mozogni.
Hadd menjen a mozgás és mozgás 10 lépés belső of-- Hoppá, hadd javítani.
Hadd mozog 10 steps-- valóban, ne ne ismételje meg.
Hadd megragad egy blokk, és hajtsa végre a következő örökre.
Forever mozogni 10 lépésben.
És kattintson a Lejátszás.
>> RENDBEN.
Így szerencsére megáll.
Ellenkező esetben, a gyerekek is kap nagyon ideges amikor a fajta elveszítik macska.
De legalább húzhatja vissza a képernyőre.
De ez nem minden, nagy a játék, vagy animációt.
Jó lenne, ha esetleg ő lepattant a széle.
Szóval mit csináljunk?
Mi konstrukció van szükségünk, hogy Scratch dönt, hogy ugrál, mit gondol,
akkor is, ha még soha látott Scratch előtt?
Igen, vissza.
Közönség: szükség van egy ha blokk vagy ha-akkor.
DAVID MALAN: Igen, így néhány fajta, ha blokk vagy ha-akkor.
Tehát tulajdonképpen, van egy ilyen van.
Tehát if-- ezért hadd kap megszabadulni a mozgás.
Hadd nagyítás így nagyobb.
Szóval mi a helyzet ez.
Örökre, ha Sensing-- már nem látott ilyet.
Kell egy logikai kifejezés.
És kiderül, ha megérinti, mi?
Ha megérinti a szélén, mit akarok csinálni?
Nos, ha visszamegyek Motion, Kiderült, ó, én is megfordul.
Hadd húzza ezt itt.
Miért nem megy előre, és megfordul 180 fok?
>> És most hadd mozgassa a végén.
Szólhatok a mozdulatot elején vagy a végén.
De logikusan, minden alkalommal, amikor mozogni, szeretné ellenőrizni, vagyok megérintette a szélén?
Vagyok megérintette a szélén?
Annak érdekében, hogy logikusan megfordulok, ha így van.
Tehát lássuk hit játszani.
>> RENDBEN.
Tehát ez kicsit bugos, hogy úgy mondjam.
Egy hiba csak egy tévedés egy számítógépes program.
De legalább ez működik.
És valóban, mehetek itt.
És hadd tegyem nem 10 lépcsővel idő, de ez minden animáció.
Ez az egész egy rajzfilm vagy akár egy film.
Hadd mozogni 20 lépés egy időben.
Tehát 20-szor annyi dolog történik egyszer, vagy kétszer annyi, ebben az esetben.
És ő gyorsabban mozog.
Hadd váltson 30.
100.
1000.
És ez meg fog nagyon gyorsan.
És ez is-- igen, az OK gombra.
>> Tehát most mi csak szórakozik vele.
OK, így hibás.
De mi is húzza őt az útból itt.
De tudjuk, hogy több móka ebben is.
Mit szólnál this-- ő fejjel lefelé.
De kiderül, Scratch-- és van valójában,
Meg kell visszautasítani, nem akadémiai értéket, mit fogok csinálni.
De ha én nyit a mikrofon, nézzük megállítani őt, és nem valami ilyesmi.
Jaj!
>> [NEVETÉS]
>> Ez aranyos.
Köszönöm.
Nos, ez az, amit a hang úgy néz ki, mint amikor kiabálni jaj.
Nem hiszem, hogy mi fogott meg nevetés.
Rendben van.
Hadd menteni ezt a "jaj".
Mentsük ezt a "jaj".
És most megyek vissza a scripteket.
És most én need-- lássuk, Sound.
Ó, jaj hangot lejátszani.
Tehát ha én megérintette a szélén, hadd első játék jaj, majd megfordul.
És most tegyük őt a közepén.
>> [Mondván: "jaj"]
>> Kétszer olyan gyors.
>> RENDBEN.
De ez a szó szoros értelmében csinál, amit mondok.
Tehát ez valójában helyes, ez Csak egy kicsit bosszantó gyorsan.
Tehát tegyük hozzá valamit További érdekes ez.
Hadd valóban nyit az egyik, hogy tettem előre,
találóan Pet a Cat, hogy ezt a feladatot.
Itt a forgatókönyv itt.
Mi fog ez do angol kifejezések?
Mi ez tervezték, hogy nem?
Igen, menjünk some-- igen?
>> KÖZÖNSÉG: Amikor kisállat a macska, akkor meows.
DAVID MALAN: Igen, így ha kisállat a macska, ez lesz a miau.
Más szóval, van most örökre hurok is, kombinált
egy feltétel, kombinált egy logikai kifejezés,
kombinálva egy pár A funkciók, a hatás
amelyek, ha játszom ez a program, semmi
történik, amíg a kurzor közelebb és közelebb és--
>> [MIAÚ]
Akkor ez olyan, mint a petting a macskát.
[MIAÚ]
Csak ha egyszer tényleg a kurzor fölötte.
Most én is felkorbácsolta nem kedvtelésből tartott A macska, amely nem ezt helyette.
>> [NYÁVOGÁS]
>> Szóval ő csak állandóan nyávog.
>> [NYÁVOGÁS]
>> De ha túl close--
>> [NYÁVOGÁS]
>> [ORDÍT]
>> Tehát hogyan működik ez?
Most már csak egy kétirányú útelágazáshoz.
Ha megérinti az egérmutató majd játszani az oroszlán hangot.
Más csak játszani a miau hang, majd várjon három másodpercig,
hogy ez a fajta csinál nagyon nyugodtan.
Rendben.
Tehát ez kombinálásával Néhány további ötleteket is.
Vessünk egy pillantást erre a példára Azt felkorbácsolta nevezett szálak.
És ez egy alapvetően eltérő, hogy hasznosítja
jellemző a sok programozási nyelv úgynevezett
szálak, képes egy program szó két dolgot egyszerre.
Sőt, ezek a napok, ha használja Google Docs vagy a Microsoft Word,
és a dokumentum folyamatosan helyesírás-ellenőrzésre is, ahogy type-- vagy
hit Command-P, illetve a Control-P és valami mást,
ez nyomtatás közben is folytathatja a beírást.
Programok ma valóban csinálni több mindent egyszerre, csak úgy, mint a Scratch
itt.
>> Tehát itt, van két sprite Most, egy madár és egy macska.
És ha rákattintok minden ezeket a karaktereket egyesével,
Látom most a madár szkriptek a jobb felső sarokban.
Most látom a macska.
Madár, macska.
Tehát mindegyik saját script.
De észre, mi puzzle-darab nem mindketten kezdeni?
Amikor zöld zászló kattint.
És a madarak, amikor a zöld zászló kattintott.
Tehát, ha rákattintok a zöld zászlót, e két szkriptek vagy programok
fognak párhuzamosan futnak.
És észre fogod venni, hogy a madár Csak bután pattogó le a szélét.
A macska jól van programozva egy stratégiai előnyt.
És--
>> [ORDÍT]
Rendben.
Így a macska fogott a madár ebben az esetben.
Miert van az?
Nos, az első közlemény már csak a madár csak ész nélkül megy
E kezdeti helyét, majd örökre,
ha nem ér hozzá a macska, csak ki kell menni.
És ha a szélén, ugrál.
És csak mozogni.
És ha a szélén, ugrál.
De a macska, eközben néhány további logika
amely azt mondja this-- első, csak így hogy ez nem teljesen részrehajló
szemben a madár, észre, hogy én már használt zöld puzzle darab van
hogy valóban felveszi egy véletlen számot.
A jellemzője sok nyelv az, hogy Ön véletlen vagy véletlen számokat.
Tehát ebben az esetben, a macska kezdetben kiválaszt egy véletlen számot között, mint például,
90 fok és 180 fok, lényegében, így
hogy van egy kis szórás.
És aztán örökre, ha megható A madár, játszani az oroszlán hangot.
Ellenkező esetben csak pont felé madár.
Pont felé a madár.
Pont felé a madár, amely egy puzzle darabot nektek is ebben az esetben.
Nos, tehetünk egy másik dolog van.
Hadd nyissa meg az eseményeket program itt.
És itt megint van két sprite, amelyek úgy néznek ki, mint a két bábok itt.
És ami érdekes, itt van ez.
A narancssárga srác ezt állítsa puzzle darab itt.
Örökké nem a following-- Ha a szóköz lenyomásával
akkor azt mondják, Marco, és majd broadcast egy eseményt.
És eközben a kék fickó itt van this-- amikor megkapja az esemény,
mondjuk Polo.
Így kiderül, a Scratch és más nyelveken,
Több lehetőség is van két program vagy két írás, ebben az esetben,
hogy kapcsolatban van, hogy mikor nyomja meg a szóköz, mondja Marco.
És a másik hallja, hogy így a beszél, és azt mondja, Polo válaszul.
Így írhatsz programokat valójában kölcsönhatásba ezen a módon.
És ha ezt egy helyett, Azt is hozzá változókat,
csak az egyik kobold ebben az esetben.
Ez itt különösen bosszantó.
>> [SEAL BARKING]
>> Most, értesítést jobb megvan Néhány további logika ide.
Hogyan lehet megállítani ezt tömítést ugat?
>> [SEAL BARKING]
>> Úgy néz ki, mint a jobb oldali oldala az, ami játszik a hangot.
De ez csak játszik hallani, ha a mi igaz?
Ha egy változó-- narancssárga block-- tompa nulla.
Hogyan tudom megváltoztatni a tompa, hogy 1, ami azt jelenti, igaz, hogy ez a tompa?
Úgy látszik, a másik forgatókönyvet tudok nyomja meg a szóköz, és most megáll.
Így is van ez beengedő az egész script, valamint,
mindössze megosztása változó mind a két, mint ez.
Nos, ez nem olyan érdekes.
Menjünk előre, és ezt, és összekapcsolják sok ilyen ötletek ebben a programban
itt.
Mielőtt ezt megtesszük, mégis, mit szólnál egy önkéntes?
Hadd vegyem le a nyomást rám, mert én valójában nem
játszani ezt a játékot.
Nézzük, hogy valaki azt még nem látott.
Meg kell, hogy kényelmes jön a színpadon van, a kamera.
OK, gyere fel.
Nagyon bátor.
Hogy hívnak?
>> Idris: Idris.
DAVID MALAN: Tessék?
Idris: Idris.
DAVID MALAN: Idris, örülök, hogy találkoztunk.
Gyere fel.
És most, a saját mobil telefon, ne játszunk Pokemon GO?
>> Idris: Nem
DAVID MALAN: Tényleg?
Idris: Igen.
DAVID MALAN: OK.
Rendben.
Nos, örülök, hogy találkoztunk.
Gyere át.
Én sem tudom.
Így fogunk kitalálni együtt hogyan játszani ezt, amikor valaki ténylegesen
ment és végrehajtani Scratch megváltoztatja a macskát, hogy lényegében
különböző karakterek együtt.
És ha teljes képernyős ez itt, megyünk
hogy a következő játék együtt.
Még mindig tölt, még tölti.
Gyerünk.
Hadd tegyem ezt.
Gyerünk.
Ez a játék annyira nagy, hogy lezuhant.
Készenlét.
Próbáld meg ezt még egyszer.
Gyerünk.
Rendben.
>> Ott vagyunk.
RENDBEN.
Zöld zászló.
Tehát itt vagyunk.
>> [ZENE]
>> Válassza ki a középső szinten van.
Kattintson a kék fickó ott.
Rendben.
És akkor a nyíl keys-- fel, le, balra, jobbra.
Most nézzük meg, mint mi this-- majd menj után a karakter között.
Igen.
És most kattints rá az egérrel.
Ó igen.
Mozog.
Hol van a nyíl?
Tessék.
Tehát kattints ott.
Igen.
Rendben.
Tehát most, nekem azt mondták, hogy van egy Poke labda, hogy ha rákattint, akkor megteszi.
Nagyon jó.
Ebben gyakorlás ma, talált ez a verzió a játék
valójában nem nagyon nehéz.
Tehát ha azt akarjuk, hogy megint itt, menjen le ez a Poke labdát.
Majd menj jobbra.
Próbálja kattint.
Ó, valóban, ez a boltban, úgy tűnik.
OK, így zárja be ezt.
Soha nem csináltam ilyet.
Talán felmegy ez a dolog itt.
Ó, tessék.
Várj, van még egy ott.
Ó, van egy másik.
RENDBEN.
Le.
Ja, kattintson.
>> OK, ez nagyon aranyos.
OK, nagyon jól sikerült.
Ez a játék nem túl nehéz.
RENDBEN.
Gratulálok.
Itt van egy CS50 stressz labda az Ön számára.
De úgy egy pillanatra, milyen néhány elvihető vannak.
Könnyebb, mint az igazi játék, nyilván.
De mi lesz itt van egy karakter
hogy valószínűleg van valamilyen A hurok társul hozzá.
Ez nem egy macska.
Ez az a karakter helyett.
És ez hurok csak állandóan mondván, ha felfelé nyíl gombot,
ha lefelé nyíl gombot, ha balra nyíl vagy jobbra nyomva
nyíl gombot, felfelé lefelé vagy balra vagy jobbra.
Vagy ha van egy másik puzzle darab van azt mondja, amikor hozzáér a másik kobold,
érintésekor az egyik karakter A Poke labdát, ha megható,
majd ezt.
>> Így minden az ötleteket, használ eddig igazán
egyszerűen alkalmazható ebben a konkrét összefüggésben kell játszani ezt a játékot is.
Hadd menjek előre, és húzza fel egy másik itt, sőt.
Hadd menjek előre, és húzza fel, mondjuk, ezt.
Ez olyasmi, amit remixelt.
Készült az egyik diákok Cambridge-ben,
aztán ment keresztül és a megváltozott nagyjából minden esetben a Harvard
Yale ebben az időben.
Tudni szeretné, hogy valaki versenyezni a Ivies
Itt egy másik felhalmozódása Az összes ilyen ötletek?
Gyere le, igen.
Hogy hívnak?
>> DINA: Dina.
>> DAVID MALAN: Adina?
>> DINA: Dina.
>> DAVID MALAN: Dina, gyere le.
Rendben, Dina.
Így ez a játék egyre keményebb, és nehezebb, mert ez a játék,
van változókat használják is hogy folyamatosan nyomon követhetőek
A milyen szinten van a játékban.
Örülök, hogy találkoztunk.
Idejönni.
És így a cél itt az, hogy rendezni Az, hogy az utat egy labirintusban
hogy ez a diák végre.
>> És csak azért, hogy a terepet, minden Ezek a képek a képernyőn
van saját sprite, saját karakterrel.
Tehát ezek voltak alapértelmezés macskák, de a diák megváltoztatta őket
A különböző Ivies logók itt.
És akkor látni fogja, hogy csak felhasználásával feltételek és hurkok
és funkciók és több, akkor kap ez.
>> [ZENE]
[MUSIC - MC Hammer, "U nem érintheti EZT"]
>> Ja, oké.
Igen, folytasd.
Első szint nagyon egyszerű.
Éppen most van, hogy menjen oda.
De megint, úgy, hogy ez csak egy hurok hallgatta a nyíl keys--
fel, le, balra, jobbra.
És most egy érzékelő blokk.
Nagyon szép.
>> [MUSIC - MC Hammer, "U nem érintheti EZT"]
>> Nagyon szép.
>> [MUSIC - MC Hammer, "U nem érintheti EZT"]
>> Nagyon szép.
Elég egyszerű, Crimson.
Rendben.
Levels-- uh-oh.
>> [MUSIC - MC Hammer, "U nem érintheti EZT"]
>> És ismét, ezekben három Harvard címerek,
akkor csak azt logika mondja, ha a szélén, ugrál.
>> [MUSIC - MC Hammer, "U nem érintheti EZT"]
>> OK, hogy mit csinálsz a sokkal érdekesebb, mint hogy miért.
Nagyon szép.
UH Oh.
>> [MUSIC - MC Hammer, "U nem érintheti EZT"]
Azt hiszem, meg kell feláldozni magát.
[MUSIC - MC Hammer, "U nem érintheti EZT"]
Gyors!
>> [MUSIC - MC Hammer, "U nem érintheti EZT"]
Szép.
Rendben van.
Megkapod.
Igen igen!
Nagyon szép.
>> [ÉLJENZÉS]
>> [MUSIC - MC Hammer, "U nem érintheti EZT"]
>> Szép!
>> [MUSIC - MC Hammer, "U nem érintheti EZT"]
Megvan.
Gyerünk!
Az utolsó előtti szintre.
>> [MUSIC - MC Hammer, "U nem érintheti EZT"]
>> Rendben.
>> [MUSIC - MC Hammer, "U nem érintheti EZT"]
Igen.
Jó használata változók itt.
[MUSIC - MC Hammer, "U nem érintheti EZT"]
Igen.
[MUSIC - MC Hammer, "U nem érintheti EZT"]
Szép.
[MUSIC - MC Hammer, "U nem érintheti EZT"]
Ez rendben van.
Kaptunk, hogy a végén.
Ott.
Oh!
>> [MUSIC - MC Hammer, "U nem érintheti EZT"]
>> Lehet futni későn ma, de ez lesz megéri.
>> [MUSIC - MC Hammer, "U nem érintheti EZT"]
>> Meg tudod csinálni!
Igen!
>> [ÉLJENZÉS]
>> [MUSIC - MC Hammer, "U nem érintheti EZT"]
>> Ez egy nagyon nehéz.
>> [MUSIC - MC Hammer, "U nem érintheti EZT"]
>> Adunk még két életet.
Meg tudod csinálni?
>> [MUSIC - MC Hammer, "U nem érintheti EZT"]
>> Rendben.
Mit szólnál egy nagy kerek taps mégis.
Van, hogy az utolsó előtti szintre.
Köszönöm.
>> [TAPS]
>> Tehát ez csak azt, hogy mennyit lehet csinálni ezeket a dolgokat.
És észre azt is, hogy mikor puzzle darabok nem exist--
és valóban, ez lesz az egyik A hatáskörök az első probléma
készletek és beyond-- hogy valóban létre saját.
És ez csak egy részlet Az egyik példa
Ön képes lesz arra, hogy játsszon online, ahol
ha nem lett beépítve Scratch olyasmi, mint egy puzzle-darab köhögés,
akkor valóban teszi magát.
>> És így az egész és még várat magára.
És csak festeni a végső kép valóban mi
előre vár az osztály az Ön számára, alapján néhány kép a osztálytársai
múlt, engedje meg, hogy homályos a fények még egyszer, utoljára, és megmutatja, CS50.
>> [ZENE]
>> Rendben.
Ennyi az CS50.
Cake most fel.
>> [ZENE]