[ВИДЕО РЕПРОДУКЦИЈА] [Цар Доор Схуттинг] [Цар Енгине ПАЉЕЊЕ] [Мусиц плаиинг] Сеобе све време у потрази о добрим временима и добрим вестима. Са добрим пријатељима не можете изгубити. Ово би могао да постане навика. -Оппортунити Куца Хајде Само пружи руку и зграби га. Да! -Тогетхер Ћемо га ухапсити. -Морају Хитцх Хике, аутобус, или жута је кабина. -Даммит. -Ми Веома добро напредује. -Фоотлоосе И фенси бесплатно. -Геттинг Је пола забаве. Хајде поделите га са мном. -Ми Веома добро напредује. -Идемо Да дели терет. -Ми Не треба мапу добити овај шоу на путу. Хеј Фоззи, желим да скренете лево ако дођеш до рачвања на путу. -Da gospodine. Скрените лево на раскршћу. Skrenite levo. -Не Верујем у то. -Цруисинг Право заједно смо светла на аутопуту. -А Свој пут или на мој начин. Па верујем својим навигацију. -мовие Звезде са сјајним аутомобилима и живот са спуштеним кровом. -Ми Упад велике брда. Да, олуја је у праву. Ако се снег? Не, ја не мислим тако. Сеобе добро напредује. -Фоотлоосе И фенси бесплатно. Ти си спремна за велики пут. -Да Ли је спреман за мене? Сеобе добро напредује. Веома добро напредује. Веома добро напредује. Веома добро напредује. -Мислим Да је боље да станемо. -Da gospodine. [Крај репродукције] [АППЛАУСЕ] Давид Ј Малан: Ово је ЦС50. И то је крај недеље 0, али почетак једног дивног пријатељства. Ми смо узбуђени да буде овде на Универзитету Јејл по први пут са нашом пријатељ Сцаз, и Јасон, и Енди. Све 40 од ЦС50 је ТФ-их и ЦА је овде на Иале. А сви ви. И, у ствари, вероватно је време да-- [АППЛАУСЕ] Дакле, иако је већина предавања ће заиста бити у Кембриџу ове године, реалност је да по дизајну, и веома намерно у ЦС50, Ја мислим да се приближавамо тачку технолошки и педагошки, где то може бити супериорна образовни искуство да се ангажују са неким материјалне онлајн курса је. Заиста, реалити-- и ако верујем ово пхилосопхицалли-- је да предавања нису нарочито ефикасан начин за испоруку прилично сложен информације. Свакако преко сат плус лонг распона време. И заиста свако мало минута-- Сећам се у цоллеге-- ви Зоне Оут на тренутак, сте пропустили неку сложену тему, и ти си отисао прилично за наредних 45 минута. А реалност је да ли да си овде у Нев Хавен или Кембриџу или шире, једноставност има способност да застанемо и брзо напред, ревинд, хиперлинк односе се ресурси, фулл тект сеарцх транскрипти и слично је прилика да Усуђујем се рећи за наше онлине студенти и ван Нев Хавен, нуди им могућност заиста схвати концептуални материјал који смо увести у предавањима све боље. Али на крају у ЦС50 је студентски искуства је тако карактеришу, много више од курса је проблем поставе, или недељно програмирање пројеката, у секције наравно на челу са наставе момци су ноћне радно време предводио Курс асистенти и учење момци, и заиста су догађаји као ЦС50 Пуззле Дан, ЦС50 је Хацк-А-Тхон је ЦС50 Сајам, недељни ручак, и још много тога. И тако да си овде у Нев Хавен или подешавање из далека, Данас у Кембриџу, и ћемо се опет видети ускоро, реалност је да је ово једна те иста класа. И тако смо узбуђени што бити овдје сви заједно данас. И тако на крају семестра, да ли овде или издалека, и надам се да са поносом носити, срећно, и можда са мало рељефа, кошуља да сведочи теби узевши ЦС50. Па где смо стали у среду? Узели смо погледамо рачунарска размишљање. И то је оно што смо ка дестилована информатика рече, најмање za sad. Али смо га дестилована мало даље у најмање три компоненте елементи. Улази, па шта је Проблем ми покушавамо да решимо? Излази, што је одговорите ми се надамо да? А репрезентација има у. И нећемо задржавати овде на после на бинарног, или чак АСЦИИ, и овако много, али а узимамо здраво за готово да можемо представљати ову информацију, јер су далеко занимљивих делова од тих проблема су не само улази и излази, али су алгоритми да иду у решавању тих проблема. И можда се сећате из пре неки дан да је прилично традиционалан концепт гледања некога у прилично великом именик, или генерално дигитално ових дана, само један велики скуп података. Стварно велик списак контаката са много имена по абецедном реду поредани. И схватили смо да док сам може једноставно приступити овом проблему коришћењем линеарни аппроацх-- страну по страну, или чак два је код времена-- готово смо схватили да је више интуитиван алгоритхм-- некако поделе и освајања Опет проблем, и опет, Поново: и то преполови са сваким време, дао нам је ову зелену резултат. И то је много равнија зато што сугерише да чак и овај проблем постаје све већа и већа, као што је случај ових дана са подацима сетови и реалити-- на Фацебоок и Гоогле резултати претраге и као-- ради нашег алгоритма обавља као ефикасно са тим већим залогајима као што је био чак и са мањим уједа. Сада се поставља питање, шта можемо решити на сличан начин у ствари са овом врстом интуиције? Ова врста поделе и освајања? Па, можемо да урадимо нешто попут овог данас овде. Могли би присуство. Можда лике 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11-- Неће бити да је ефикасна. Па чекај, основну школу. 2, 4, 6, 8, 10, 12, 14, 16, 18 и тако даље. Али смо могли мало боље? Прилично сам сигуран да не могу то урадити сама. Дакле, ако ћу хумора нас за само тренутак, ми смо донели са собом алгоритам који је Управо сам три корака, али то не рекуире-- ако вас не минд-- све нас станд уп, ако хоћеш. Дакле, са свима нама сада стоји, корак један од ових алгоритма је следећа. Устани и доделити Постаните број 1. Дакле, у овом тренутку, буквално сви у овој просторији надамо се размишља за себе, Међутим неспретно, број 1. Сада корак два овог алгоритма је ће укључити следеће. Други корак, упарите са са неким стоји, додати своје бројеве заједно, и усвоји суму као свом новом броју. Брзо проверу исправности. Који број је свако мислио сада? Дакле 2, осим можда једног, чудно, усамљен човек. Ако имамо непаран број људи у соби. Дакле, једна особа можда још број 1, то је у реду. Али трећи корак овде, један од вас треба да седнете. Други би требало да се вратимо на корак два, и понављам, ако хоћете. Дакле, ако и даље стоји, требало би да међу онима који се вратимо на два корака. Nastavi. Неколико људи и даље стоји. Дакле, ако и даље стоји, упарите са неким. У реду, смањује се. Неколико људи и даље стоји. Помоћи ћу ако треба. Запамтите кључну понети овде, како много брже ово је од мене бројања. Па да видимо. Могу да помогнем. Дакле, оно што су број још увек мислио? ПУБЛИКА: Ја сам у 44. Давид Ј Малан: 44, па само напред и седи. Који број ти мислио? ПУБЛИКА: 74. Давид Ј Малан: 74. У реду, хајде да седнемо. Ко се још увек стоји? 86. И да ли је још неко увек стоји? Који број? Чуо сам 67. А онда у врху? 32. Свако друго увек стоји и размишљање о великом броју? Ох, здраво. Извините. Одмах се враћам. 42. Bilo ko drugi? ПУБЛИКА: 47. Давид Ј Малан: 47. Да ли је још неко увек стоји који није избројао? Тако коначног броја људи у соби којто има 497 места је-- од којих сви су филлед-- је 390. Дакле, ово је сјајно. Ускоро ћемо разговарати појам од грешке у компјутерском програму. Али ми ћемо се вратити на то убрзо. Али у теорији, оно би могло се догодило управо сада? Дакле, иако је било три велике корака до овог алгоритма, сваки од тих био некако једне велике операције. И било је цикличност на њега у да ако сте још увек стоји, ти стално иде од три корака до два, корак три на два, трећи корак до два. Али шта се дешава стално на сваком итерацији? Сваки циклус ове петље? Шта се дешавало другде у соби? Не само иста ствар, али шта се дешавало половине вас? Sedi dole. И тако у лажи овај увид, слично као телефонски именик пример, у томе ако половина од вас седи сваки пут, Проблем почиње са можда 400 људи, затим 200 људи, од 100 људи, затим 50 људи, и тако даље. И тако смо доле у ​​Вхиттле Теорија на само једној особи, мислећи од укупне вредности свакога. Сада реалност, неке друштвене динамике, и неке аритметичке грешке може да допринесе да је крајњи буг. Али у теорији, док сам је и даље броји далеко, узимајући неколико десетина кораци, или стотина корака да себе рачунати, да броје собу пуну 500 или тако да људи требало да предузме кораке далеко мање, јер можете само да поделите 500 и 1/2 толико пута. И тако баш као са телефоном наручити пример неки дан, да ли имамо нешто логаритамске да тако кажем, при чему када смо били ради у унисоно, и игнорисање додавање грешке, зар не су управо постигли таква времена рада? Сада да будемо фер, некако преварио, у да сам искористио још један ресурс. Будући да само један од мене, Ја искористио стотине вама. Али, то би се могло рећи да је Пример паралелно процесирање, или држава уметности веома у моди где рачунари ових дана има више процесора, или више технички, још више језгра, и заиста може да уради вишеструки ствари одједном, слично као ти све то радимо овде, паралелно. Али, сећам се да је оно што Такодје је у среду је покушати да искористи ту интуицију и формализују је у коду. Нешто као псеудо-коду. И, у ствари, и надам се да ћу опрости, то је као 80 степени овде. Зато ћу узети ово офф за само мало. Оно Мислио сам да урадимо је транзиција Сада на апликације где опет ангажује публику, али написати програм на енглеском као синтакси, са којом до реши овај проблем овде. [ВИДЕО РЕПРОДУКЦИЈА] -То Је Пеанут Буттер Јелли време. Пеанут Буттер Јелли време. Пеанут Буттер Јелли време. Пут Иа! Пут Иа! Пут Иа! Пут Иа! Сада иди! Eto ga! Eto ga! Eto ga! Пеанут Буттер Јелли! Пеанут Буттер Јелли! Пеанут Буттер Јелли! Пеанут Буттер Јелли! Кикирики, Пеанут Буттер Јелли! Пеанут Буттер Јелли! Пеанут Буттер Јелли бејзбол палицом. [Крај репродукције] Давид Ј Малан: --тхат видео, али то је мало заразна, ако не мало досадан. Али, да би то, мислио сам оно што бих урадите је да покушате да напише програм заједно, за које је потребно три волонтера. Нека буде удобно на камеру и интернета. Сем, хајде горе. Љубичаста мајица, овде, хајде горе. И одавде, пусти ме отици мало даље уназад. Цримсон и плаве мајице, хајде горе. Savršen. Хајде сад. Хајде, хајде горе. А како се ти зовеш? Ерика. Дејвид, драго ми је. Ако желите да се ово седиште овде. Ово је Сем. Kako se zoveš? Антонио. Антонио драго ми је. Ерика и Сем, ако бих волели да имате овде место. Оно што смо дошли спремни са, као ови момци откривају, то су састојци са којима би кикирики путер и желе сендвич. Сада ово може бити нешто што узмете много здраво за готово. Али ми смо дали једни наших волонтера три овдје-- два волонтера и Сем овде, векна хлеба, тањир, нож, тегла џема или желеа, и тегла кикирики путера. А циљ при руци сада ће бити за ове три да направи путер од кикирикија и желе сендвич. Али шта ћемо да урадимо је очекивати аудиенце-- од свих вас Сигурно знате како то да урадите ово тако добро у реалити-- ће нам пружити корак по корак упуте. Псеудо-код, ако хоћете. Тако да ћу играти улогу писар овде. И ја имам малу листу обавеза, и тако свако од вас, један по један, прозива потенцијал наставни, ја ћу запиши, поновите га по потреби. И онда ви идете да кикирики путер и желе сендвич само ради оно што сте рекли. Тако мисле о себи као рачунара. Можеш да радиш само оно што ти се каже. Нема претпоставки, без питања. Ви само треба да то уради. Па ко би желео да опасност први Упутство за израду ПБЈ сендвич? На балкону тамо. ПУБЛИКА: Отворите торбу хлеба. Давид Ј Малан: Отвори торба хлеба, ако хоћете. Па да видимо. Хајде да прелазили, и добити мало прецизнији. Добар начин да се ипак почне. Корак два, неко други. Сада нико не жели да волонтирају. Корак два, испред. ПУБЛИКА: Отворите унутрашњи торба хлеба као добро. Давид Ј Малан: Отвори унутрашња торба хлеба као добро. Велики смо учење. Мало прецизнији. Идемо ову сеансу. Да, у зеленој кошуљи. ПУБЛИКА: [неразумљиво] Давид Ј Малан: кришке хлеба. Нежно уклоните две кришке хлеба. To je dobro. Четврти корак, неко други? Овамо, зар не? ПУБЛИКА: [неразумљиво] Давид Ј Малан: Место хлеб на тањиру. Пети корак? Пети корак, зар не? ПУБЛИКА: [неразумљиво] Давид Ј Малан: На ​​врху од-- Ох, руку. Поставите руку на врху путером од кикирикија. Да ли је то оно што сам главу? ПУБЛИКА: Да, и одврнути. Давид Ј Малан: И-- понови. ПУБЛИКА: [неразумљиво] Давид Ј Малан: И ставио Поклопац са путером од кикирикија следећи. Лагано ставите руку на врх кикирики путера, и одврнути, и ставио поклопац поред путер од кикирикија. У реду, корак број шест. Корак шест, неко други. Да? ПУБЛИКА: [неразумљиво] Давид Ј Малан: Понови. ПУБЛИКА: Поновите корак пет, опет. Давид Ј Малан: А поновите корак пет опет, који ће створити мало проблем Сада, ако радимо овај корак по корак. Дакле, сада се враћамо на корак пет. Лагано поставите руке на врх од кикирики путера и одврните и ставио поклопац на путер од кикирикија следећи. Затим ухватите путер од кикирикија и поновите корак пет поново. Тако ћемо премостити да Инфините Лооп, ако хоћете. Корак седам, неко други. Да, позади. ПУБЛИКА: [неразумљиво] Давид Ј Малан: --он изнад других. ПУБЛИКА: [неразумљиво] Давид Ј Малан: На С друге стране на другу врху. Да ли желите да само дођи овамо? Како да завршим инструкције? Шта је остало од наставе? ПУБЛИКА: Игнорисање тај део. Давид Ј Малан: Игнорисање тај део. Идемо испочетка. Седми корак. ПУБЛИКА: [неразумљиво] Давид Ј Малан: хватања уз супротна ханд-- ово је добро. Ово је заправо добро. ПУБЛИКА: [неразумљиво] Давид Ј Малан: И пластична јар-- ПУБЛИКА: [неразумљиво] Давид Ј Малан: И твист-- ПУБЛИКА: [неразумљиво] Давид Ј Малан: За две секунде. Само отворите теглу маслацем. Надам се да ћете опростити. Дакле, хајде да претпоставимо смо стигли. Отворите маслацем теглу. [АППЛАУСЕ] Давид Ј Малан: Корак осам, идемо. Корак осам, да, позади. ПУБЛИКА: [неразумљиво] Давид Ј Малан: Добро. Корак девет, зар не? ПУБЛИКА: [неразумљиво] Давид Ј Малан: --Оут од Кикирики путер тегла. И-- и шта? ПУБЛИКА: [неразумљиво] Давид Ј Малан: И стави нож назад у путер од кикирикија. Степ десет. Степ десет. ПУБЛИКА: [неразумљиво] Давид Ј Малан: Спусти нож напоље, а затим уклоните печат. Лепо. Офф тхе путер од кикирикија. У реду, корак 11. ПУБЛИКА: [неразумљиво] Давид Ј Малан: У реду, сива рачунар фоллов плаву или црвену рачунар. Добро. [АППЛАУСЕ] Давид Ј Малан: Одведи нас кући. Још пар корака. Šta je sledeće? Кораци 12. Степ 12. Да? ПУБЛИКА: Ставите једну од кришке хлеб Лагано једна од твојих руку. Давид Ј Малан: Један од ваших руку. А онда, корак 13. Да? ПУБЛИКА: [неразумљиво] Давид Ј Малан: --он парче хлеба. Добро. Veoma dobro. Корак 14, да. ПУБЛИКА: Ундо корак 13. Давид Ј Малан: Ундо корак 13. Идемо на желеа. То је програм 100- корак, али смо били на корак 15. Да. ПУБЛИКА: [неразумљиво] Давид Ј Малан: 7 кроз 13 користећи мармеладу, јер они су отишли ​​тако добро. Поновите кораке од 7 до 13., користећи ћеле. Дакле, ухватите доњој половини желе тегла са једне стране на врху. На другој руци друга врх, игноришући тај део, ухватите са супротним рукама, поклопац и пластични тегла на дну, и твист за две секунде. Затим отворите теглу јелли. И на крају, да покушамо да Дајте нам нешто јестиво. Корак 16. Па зашто не бисмо га оставити тамо. Хвала вам толико наши волонтери три. [АППЛАУСЕ] Имамо мало ЦС50 стрес лопта за вас. То је требало да буде сендвич али- па шта је поента, изнад који има мало забаве са алгоритма? Али реалност је да чак и када ви програмирање рачунар, треба да будемо супер прецизна. Као комплекс или застрашивање као свог рачунара Можда врло добро бити са вама, на бар када нешто крене наопако, реалност је да је то прилично глупо уређај који је измислио нас људи, и само може да уради подскуп онога што смо Па-- понекад свакако фастер-- али не знам како да претпоставке. Не знам како да будем на истој таласној дужини као и ти. То ће учинити само прецизно оно што је рекла. И ти ћеш бити постигнут, можда, као што почнете писање стварну код са Први проблем сетови и шире, колико је лако направити претпоставка као човека, а не предвиде морам да рукује тај случај, или да угао случај, да тако кажем, што би могло врло добро настати ако на пример Сем је имао само исцедљив тегла желеа, док сви остали су имали неке стакленим теглама и dobro. Дакле, пре него што пређемо наше пажњу на неке стварне код, дозволите ми да уведе глава Наравно овде на Иале. Наши пријатељи Сцаз, Енди и Џејсон да дођу до и поздрави. [АППЛАУСЕ] СЦАЗ: Ми смо привремено изгубили Јасона. Здраво опет свима. Ми наме ис Сцаз. Ја сам предавао на Јејлу од 2001. године. И када не предајем, моје истраживање је у роботици и вештачке интелигенције. И најава да имам данас је да почевши од пар недеља, ћемо бити довођење неких додатни материјал ЦС50 да разговарамо о обавештајном софтвера. Ми ћемо разговарати о томе како мјеста као што су Нетфлик и Хулу могу препоручити филмове који можда ћете желети да гледа. Где ћемо причати о томе како дривер-мање аутомобила заправо ради. И ми ћемо бити у стању да масу ове ствари у концептима да учите у овој класи данас. Због свих ових ствари су изграђена на истом темељу. И то је оно што ова Серија ће истражити. Тако да заиста тражим цекам да видим више од вас све, и ти ћеш доћи до видети више од свих нас врло брзо. Дозволите ми да представим онда Јасона. Јасон: Здраво свима. Моје име је Јасон. Ја, нажалост, отишао у Харварда као Ундерград. То ће да се смањи из стварног потока. И сада сам овде као предавач у рачунар наука одељење. И ја помоћи покренути ток са Сцаз, Давида и Анди. Анди: Хеј момци. Зовем се Енди. Ја сам заправо само Јејл Студент на сцени управо сада. [АППЛАУСЕ] Ја сам у Беркелеи Цоллеге, пореклом из Солон, Охио. И ја сам био један од оних клинаца где, када сам дошао на Јејл, Мислио сам да никада не бих да погледамо бројним икада поново. А онда сам схватила да ти треба како наука и КР кредити дипломирати. И тако мој бруцош пролеће, узео сам класа, и ЦС, увод ЦС класа овде на Јејлу. Био сам као, ово је као заправо прилично кул. И док сам заправо завршио изјављујући Као глобални послови велики, вјештине Сам научила у ЦС и програмирање тако применити на било ком пољу одлучите да урадите. И особље овде на Јејлу, били смо тако напорно на послу да се припреме за вас. И радујемо да видимо све у рубрици и радног времена. Тако да. [АППЛАУСЕ] Давид Ј Малан: Хвала. Дакле, пре него што је почела класа, имали смо прилику да хода по кампусу са мобилног телефона и да неки селфиес у видео форми стварно моја прва турнеја Јелског кампуса овде. И тако смо мислили да делимо груба рез управо ово као Сцаз и Анди Јасон ме је по кампусу. [ВИДЕО РЕПРОДУКЦИЈА] [СИРЕНЕ] -Давид. Добродошли у Иале. -Drago mi je da te vidim. -Drago mi je da Vas vidim. Можемо ли ићи на турнеју? -Идемо На турнеју. -роад Тоур. -Овај Знак је тамо вец неко време. -Вхах, ЦС50. Пожури! Иди, иди, иди, иди. Требало би [неразумљиво] Харкнес кула. -И Смо видели да је неколико пута. [АППЛАУСЕ] -Пази За бицикл! Ахх! Здраво Френк. Шта има, момци? -Kako si? -Drago mi je da te vidim. Добродошли у видеу. Не понашај превише узбуђен. -Волим Силлиман. Ахх! -То Је око три сата од Јасон је сладолед и Нутела. Дакле, морамо да зауставимо натраг у Силлиман за мало. -То Није ни [неразумљиво] Ипак, само је чињеница да га овде толико невероватно. Ортак, има Нутела у сваком оброку. -Био Је и прошле године. -Да. Реци много о Иале до сада. Али ја сада да је ТД тамо. И то се сматра ван кампуса. Ево имамо готхиц архитектуру. Svetski poznati. Имамо више готхиц архитектуру. И конструкција и више готска архитектура. Здраво. Ово је место где имамо радног времена Уторком кроз четвртком у Хогвортсу, као [неразумљиво]. -U redu. То је за обилазак. Ми смо на Јејл универзитета Правни факултет, где је данашња предавање је око да се одржи. Идемо у глави. [Крај репродукције] Давид Ј Малан: А То нас доводи овде. Па до сада смо били са фокусом на псеудокоду, што је овај енглески попут синтаксе. Она нема прописану спецификацију. То је само да користите неки интуитиван језика ако вас Желим да објасним шта желите да урадите. Али хајде да сада почети да транзицији шифру, као и већина људи би рекли. Али прецизније, несто познат као изворног кода. То је језик који хуманс пишу да су компјутери ултиматели-- вероватно после неког броја степс-- на крају схвата тако да знате како да урадите нешто. То сте видели трачак то можда у среду. Ово је пример који невероватно, ундервхелминг када покренете једноставно каже "Хелло Ворлд". И то је написана на језику који се зове Ц, који синтаксно врло слично на многим другим језицима да не би знао, али можда чули као Јава, и Ц ++, и Питхон, Руби и, и слично, и заиста, ми ћемо проводе велики део семестра користе Ц, а затим ка крају овог семестар, изградња на њој, и увођење било Број других језика. Међу њима ПХП и ЈаваСцрипт, језик база података под називом СКЛ. Али са Ц, шта ћемо имати ово одоздо према горе разумевање од тачно како рачунари рад, Шта можете да урадите са њима, и како можете да решите проблеме све ефикасније овим лаиеринг да смо разговарали у среду, и угледа на раменима других. Али више о томе да дође. Данас гледамо једноставније окружење, али суштински идентичан животна средина позната као сцратцх би наши пријатељи на МИТ Медиа Лаб. Ово је графички програмски језик, Огреби, при чему можете да повучете и испустите ствари које изгледају као делове слагалице који Само блокада ако то чини логично или програмски смисла да то ураде. Али то ће нам омогућити да разговарамо о свему исте програма Основе да неки од вас можда знате већ, да многи од вас можда не знам ништа о без да се заглибила искрено, у интелектуално незанимљив синтакса зарезом, и заграде, и цитира, и слично. Који су сви, рано на, су сметња шта су занимљиви и истински корисне идеје. Дакле, хајде да узмемо брзо поглед на околину овде, тако да знате шта чека. И у ствари, међу игара које смо можете играти су написани неколико програма од ЦС50 властитим бивших ученика. Један од њих, ја, ја ћу бити ово написан на постдипломским студијама за мене. Ако бих могао да узме један волонтера ко је вољан да игра игра за први пут. Наравно. Хајде горе. Kako se zoveš? ПУБЛИКА: Анђела. Давид Ј Малан: Анђела, дођи горе. Дакле, Огреби је од неколико година. И када сам био на постдипломским студијама, Ја сам био крст регистрованих на МИТ-у, узимајући професор Мичел је Ресницк Наравно о образовним технологијама. И ми смо били међу прва студенти у свету да заиста бета Тест Огреби. И мој пројекат је оно што је Анђела сада милостиво добровољно да игра се зове Осцартиме. Зато ћу ићи напред и двапут кликните на икону овде. То ће отворити програм окружење које ћемо ускоро заронити у. Ја ћу целог екрана је за Ангела, овде. Идем да погоди зелена застава за тренутак. А онда пуно смећа ће пасти са неба. А ти ћеш да користите миш овде да заиста драг анд дроп смеће у канте за смеће Осцар. Дакле, ако желите да идете напред и кликните зелена застава, игра ће почети. [Мусиц плаиинг] Ох, волим ђубре. Све прљав или прљав или прашњава. Све чупав или труло, или зарђао. Да, волим ђубре. Ако заиста желите да видите нешто безвредна, погледај ово. Овде имам патику То је Таттеред и носити. Све је пуна рупа има и чипке су покидане. Поклон од моје мајке оног дана кад сам се родио. Волим га јер је то је-- Давид Ј Малан: --Греен ових дана само бацати све у смеће. И шта један од Властити кадар ЦС50 је дид-- Јордан ко могао би испуњавају данас-- заправо има ажуриран ово данашње вријеме. И тако дозволите ми да отворим ремикс уместо за Ангела. И ми ћемо играти ово уместо за а неколико тренутака где сад си морати да одлучи да ли између да баци нешто у ђубре, или рециклира га или компоста га. Тако да је мало Притисак је на теби да ово право испред ваше 392 у 497 колеге овде у сали, ако хоћеш. [ВИДЕО РЕПРОДУКЦИЈА] [Мусиц плаиинг] Ох Ја волим ђубре. Све прљав или прљав или прашњава. Све чупав или труло или зарђао. Да, волим ђубре. Ако заиста желите да видите нешто безвредна, погледај ово. Овде имам патику То је Таттеред и носити. Све је пуна рупа и чипке су покидане. Поклон од моје мајке оног дана кад сам се родио. Волим га зато што је ђубре. Ох, волим ђубре. Све прљав, или прљав, или прашњава. Све чупав или труло или зарђао. Да, волим ђубре. Ево још мало труло ствари. Ја овде имам неке невспапер-- [Крај репродукције] Давид Ј Малан: --аре Заправо компоста. Али хвала нашем добровољац, Ангела. Имамо стрес лопта за вас и овде. Зато, хвала ти. Дакле, ова је написана од мене. Али сада један од стварног бившег студента који спроводи ова, која је игра. Све у овом језику зове Огреби, да ускоро огулити назад слојева. Али, ако бисмо као-- како о другој волонтер? Тако је. Хајде горе. Kako se zoveš? Поглед? Ленс. Ланце, дођи горе. Drago mi je da smo se upoznali. Хајде овако. Дакле, ово би се могло имати тема позната некима од вас. Али видећете да је превише не може бити интерактивност, чиме би стварно могао бити Улога карактера креће око. Drago mi je da smo se upoznali. Дејвид. Дајем ти, Пикацху. Упутства ће о да дођу на екрану. Али укратко, ти ћеш Желим да се ухвати укусна ствари, и избегне бомбе и друге ствари. Са курсора у потпуности. Дакле, погодио пречку простора. -Пикацху. Давид Ј Малан: Ухвати ствари на левој страни, не ухвате ствари на десној страни. [Мусиц плаиинг] Дакле, још једна овде. Ако бисмо могли да имамо једну више волонтер овде. Мислили смо да поново нешто од-- у жутој схирт-- од среде. Koje je tvoje ime? Мери, хајде до Марије. А сећате у среду представили смо појам бинарне, и бинарни сијалице. Ово је заправо сада су Имплементација тог истог интерфејса да смо имали на иПад са светлом сијалице, али овде дигитално изречена. И уместо да урадите стрес балл-- Драго ми је, Давиде. Донели смо неколико светлосних сијалице из Кембриџа. Ако можете, кликните на оне сијалице да их укључивати и искључивати, смислио бинарни заступљеност реци 256. И видећете у средње, тренутни Талли. Тако да је један је на. Дакле, крајње леве бит укључен. МЕРИ: Да, [неразумљиво] Давид Ј Малан: Па, тако да имамо само-- Ох. Дакле, ово је колона 128. Тако смо до 128. Морамо да одемо до 256. И можете да петљам у и офф, ништа страшно. Или можете погодити да 128 више пута ако желите. Добро, добро. 24. Да, приближава. Ближе! Ох, шта је онда проблем? Дакле, шта је проблем? Дакле, шта треба да ријешити овај проблем? Дакле, ми треба још мало. А ово је савршено разумне у стварности, зар не? Ако желите да рачуна са бројем 1 до 2 до 3 до 4 до 5, 6, 7, 8, 9 да стварно преврнути до 10, ти си Требаће додатни мало. Тако је у ствари нека ревинд овде, и дошао са-- то је очигледно требало да буде постављање. Не можеш да урадиш 256 са само сијалице. Како би било једноставно броја 50? Број 50. Одлично. Велики аплауз за Марију и њеног као. Hvala vam. Дакле, ово топиц-- намерно као да било-- ће заправо поновити. Највећа вредност коју можете представљају осам бита или један бајт, је заиста 256. Али не ако почнете рачунајући од 0, као и ми Изгледа да наставим да радим тако што све те бита офф. Али сада хајде да зарони у основни имплементација ове средине, и задиркивати поред неке од тих идеја. Тако смо у једном тренутку ћеш да видиш неколико различитих програмских основи. Први од којих ћемо назвати изјаву. Врста глагола, ако хоћете. Акције. Ствари које треба урадити. И у тренутку видећете блокови који изгледају овако. Реци "Хелло Ворлд", на пример. Или чекај једну секунду. Или плаи Соунд Меов. И заиста окружење у што ћемо ово радити назива Сцратцх. И ако подигне Сцратцх без прелоадинг стварне код, хајде да на брзину погледамо ово кориснички интерфејс, да тако кажем. Контроле са којима смо у интеракцији. На горњем левом овде од екран, испод менија, имамо сцену, да се тако изразим. Дакле, Огреби је оно што ћу позвати Сприте. То је карактер. И може контролисати писање програма против њега. И он ће бити у стању да се креће горе-доле и лево и десно у овом окружењу, не само померање миш, али програмски. Могу да кажем да хода право, валк лево, горе, доле или слично. И могу увести друге спрајтови или знакова, као. Заиста, на дну овде је видећете вашу листу Спритес. У овом тренутку, имам само један, али могу створити више, и они ће се појавити тачно тамо доле. Дакле, ако сте уназад за тренутак, као Осцартиме-- на пример, Оскар, на левој страни, смеће може, био је дух. А ствар у средини, рецицлинг бин, био је још један спрајт. И компост бин је још један вилењак. И сваки комад смеће или рецикланти који је падају са неба је такође сприте, од којих свака је програмиран појединачно. Како програм? Па, овде на десној страни стране налази се простор скрипте. И ово је место где можемо превуците и испустите делове слагалице. За недељу дана, то ће бити где смо еквивалентно пишу код са више од тастатуре, али данас ће бити превлачењем и отпуштањем пуззле пиецес је палете за које се сви наћи овде у средини. Заиста, у средини овде има гомила категорија слагалице комада или блокова. Један је у вези са кретањем, гледај, звук, оловка иде горе и доле, података, догађаји контролисати. Није баш сигуран још шта све ово значи, али видећете да су они је лепо категорисан. И да напише програм у Огреби, хајде да управо то. Ја ћу кренути у Догађаји и превуците ову овде. Када зелена застава кликне. Зашто она? Па сећам се да је наших волонтера дошао, прва ствар коју сам или они нису била кликните да зелено застава у горњем десном углу. И то само значи покренули програм. Дакле, када се тај догађај деси, оно што желим да урадим? Ја идем по изгледу, и ја ћу учинити "поздрави". И ја ћу да се то промени и рећи нешто попут "здраво Иале." И сада ћу то зоом напоље, кликните на зелену заставу, и воила, написао сам програм. Није све то узбудљиво још увек, али ово Управо где сваки оних аутор је почела, и са Пикацху, и бинарна сијалице, и Осцартиме, и много више примера. Можете почети супер једноставна, и онда почнете да слоја, и додати на функције и функционалности. Па шта су ови слојеви ће се састојати од? Па, осим изјава, такође ћемо има ствари које су мало више фанцили зове Булова изрази, након неког по имену Боол. И Булова израз је једноставно израз који је истинито или лажно, да или не, 1 или 0. Било поларне супротности тако. То је било истина или не. Али исто тако ћемо да видимо Они који може да изгледа овако. Тако на пример, је миш доле? Они су нека врста питања, ако хоћете. Миш је било доле, истина или није, лажна. 1 или 0, ако хоћете, има тенденцију да буде мапирање. Истина је 1, лажна је 0. Па шта мање од тога? Или тако, је ли ово мање од тога? То је питање врста. А ако сте ставили два Бројеви у ту, или к ће бити мањи од година или једнако и, или већи од и, али овај блок ћемо видети, само ће да одговори на питање, ово мање од тога? Такође могу видети овако нешто. Тоуцхинг миша показивачи. Дакле, у Сцратцх, можете питати питање, да ли је Спрајт додиривање миша? Другим речима, је курсор лебди преко поклопац, или еквивалент? Видећемо андинг ствари заједно. Можете питати два питања, и уверите се да су обојица да ти дам да или праве одговоре пре него доношење одлуке да уради нешто. Али како онда доносе одлуке? Па, имамо ове услове. Видели смо то у нашем Пример именика. Гледајући у лево или право за Мајк Смит. А у стању сте учини нешто потенцијално, ако боолеан израз је истина. И заиста, сада приметити облике. Има један чувар места одмах на графоскоп, где можемо фит-- ако сам уназад један слиде-- том облику. То није сасвим исте величине. И заиста, видећете да Огреби прилагођава ствари се динамички да се уклопи делове слагалице, али облик је оно што је важно. Ова ствар изгледа као да, и заиста је отприлике истог облика који би требало да стане унутра. И ако желимо да урадимо нешто овако или онако, ако иначе, имамо ову слагалицу комад у Сцратцх као добро. Сада претпоставимо да желите да радим ако, иф, или друго. Другим речима, тространо Форк ин тхе Роад. Па шта можете да урадите само по погледавши на ово? Могу да искористим ову слагалицу комад, и не изгледа да стане, али опет, Огреби ће ре-величине лепо за нас. Могао бих почети да слоја ове ствари заједно. Тако да сада имам троје виљушка ако је то истина, то. Јер ако ова друга ствар је то истина, овуда, иначе идемо овим другим путем. А у Муппет Мовие, Тхе Форк ин тхе Роад, да тако кажем, између Иале или Станфорд, био Управо то, само два услова. Или идемо овим путем, иначе отићи на тај начин. Па, петље постоје иу програмирању. И ми смо то већ у користи класа и Псеудокод код, и сигурно у тим Сцратцх програми форевер. Огреби има ту слагалицу комад који ће те пустити да уради нешто заувек. И понекад желите да уради нешто заувек. То није нужно буба, то је зато што желите сат да наставим, или игра да би играо. Или можете одредити коначан број кораци, као овим поновљеним блоком овде, који ће поновити нешто 10 пута. Можемо поставити променљиве, видећемо. И са варијабли, у духу сличним то алгебру, као к или И, или З. То је нешто симболично што може да складишти нека вредност, неки податак, да би желите да запамтите за касније. Најбољи пример за то може бити игра у којој имате резултат, као у Пикацху. Колико комада торте и шта све не си ухватио? Па, то може бити променљива зове резултат који почиње од 0. И онда сваки пут смо ухватили комад торте или слаткиша, или слично, бива повећава. То се додаје да један по један. И тако променљива складишти податак тако. Затим, ту је низове, а ми ћемо доћи назад на њих у недељу или две времену, али низ је попут инвентар или Сатцхел, унутра од којих можете ставити виртуелне ствари. То вам омогућава да сачувате више од једне податак. И то може бити корисно ако у игри, ти си врста шетају брање ствари. А можда желите да задржите све оне комада торте око, а не само једе они један за другим. А онда је одгајивач конструкт ћемо доћи до тзв функција или поступака. И мада ми идемо брже овде, ми ћемо видим да су веома природно решење проблема да идемо сусрет. Као што наши програми почињу постаје све већи ћемо почети да приметити обрасце у код које пишемо, комади пуззле ми смо превлачењем и отпуштањем. И чим се приметити радите нешто изнова и изнова, или још горе копирање и лепљење програмирање код које сте написали, То је вероватно прилика да се фактор шта год да задржи копирање и лепљење, и ставио га у нешто што се зове "функција". Али више на оне у много више детаља пре времена. А ту је и одгајивач карактеристике. За оне од вас удобније, или узимање оклопних транспортера или еквивалент, Огреби заправо подржава ствари као тема и догађаја и још много тога. Тако схвате да има прилично високи плафони, иако је такође веома широко доступна људима који никада нису програмирани раније. И заиста, хајде да погледамо на једноставан програм или два. Ми смо већ гледали како смо Могло би се рећи здраво са Сцратцх. Пусти ме само напред и отвори мало занимљив програм да сам написао унапред. И ово се зове Пет Цат. Сви ови програми ће бити доступно на сајту ЦС50 је. Заиста, већ тамо. Дакле, можете преузети их, и играти са њима, и са проблемом Сет 0, што је такође на сајту току је, сте охрабрени да ходају кроз њих. А осим тога, имамо Број хода кроз видео- Онлине у којој сам и Тим ЦС50 је заиста ходају кроз сваку од ових примера на много споријим темпом, врло брзо форвардабле, или намотани темпом, тако да можете ходати кроз њих у слободно време као добро. Дакле, овде је Огреби са леве стране. Ево програм на десној страни да сам већ пре-маде. Дакле, дозволите ми да зумира ово. И може ли неко на енглеском, знајући шта знаш, само од сада као на то како Сцратцх ради, некако кажу у енглеском фразом или реченице, Шта овај програм очигледно радим? Да, у наранџастој кошуљи. ПУБЛИКА: [неразумљиво] Давид Ј Малан: Да, ако ваш курсор је на Сцратцх мачка, репродукује звук меовинг. Али приметите како изражавамо то. Ту је очигледно петља тамо, заувек. А онда је услов, ако израз. И колективно, шта оне значе? То значи овај програм је само увек ради, и то је само увек чека и слушајући и гледајући за мене да се померим миш на мачку. Јер, сваки пут сам то, као ви предлажете, то ће урадити. Дозволите ми да покренете програм. Изгледа да ништа догађа, али приметите како Сада је истакнут у жутој линији. То само значи да је покренут. И зато што је заувијек петља, то је још увек ради. Дакле, дозволите ми да померим курсор изнад нуле. [МЕОВ] [МЕОВ] А ако га померите се, [МЕОВ] сада се не заустави, али је програм је и даље ради. [МЕОВ] И тако, неодољива. [МЕОВ] Дакле, хајде да отворимо мало напредније Пример назива Немојте Пет мачку. А сада да видимо шта дешава овде. [МЕОВ] Меовинг. Дакле, то је мало на Ауто Пилот, ако хоћете. --пет мачку. Pitam se zašto. [СТГ] [МЕОВ] Па како је овај посао? Па, можете врсту разлога кроз њу интуитивно, можда. Али хајде да погледамо стварне кода. Па опет, кад се зелена застава се кликне, ово заувек. Шта желите да заувек радимо? Па, ако дирљиво миш показивач, онда играти звук који се наводно зове Лав 5, то је унутар овог пројекта, друго плаи Соунд Меов, и сачекајте две секунде, па да није меовинг непрекидно. У ствари, можете веома брзо почети да себе и своје цимери нервирам. Хајде да уклоните овај блок. А погледајте шта је лепо у вези Сцратцх. Ствари некако драг и испустите и блокада. Дакле, поново расте до попуните оно што желите. Али ако уклоне ово, а онда хит представа, [Цомпутер БЛИП Соунд] --ИТ је некако саплету Сам, јер је буквално радим оно што говорим. То је заувек каже плаи тхис звук, али Ја то не даје прилику да заврши. И тако то би био грешка. И зато смо имали ово овде сада. Па хајде да кренемо од сцратцх-- ствари некако пун благо интендед-- у којој сада имамо мачку потез. Зато ћу да урадим ово у лету. Ја ћу зумирати овде, само да ме је почела догађаја. И зелена застава кликнули. А ту је и друге начине за почетак скрипте. Ми ћемо то буде једноставно овде. А сада идем напред и иди под контролом. А опет, ако си заборавио одакле ствари, само кликните около, и на крају их поново пронађем. Дакле, желим да заувек радимо шта? Желим да користите покрета блок Колико ја знам постоји, померите 10 корака. Дакле, хајде да видимо шта се дешава овде да играју ову игру. Срећом не оде предалеко. Ја и даље могу некако да га зграби за реп и повуците га назад. Али програм и даље ради, тако да је некако борби против мене. Али, било би лепо ако условно поправим ово у коду. Јер ово је нисам-- Заправо ово је стварно није забавна игра за свакога од било ког узраста. Дакле, хајде да покушамо да поправимо ово од има неку врсту услова. Зато ћу ићи испод Контрола, па ако. Свиђа ми се та идеја. Дакле, након пресељења 10 корака, ако-- пусти ме осетити где сам. Ја идем у Сенсинг, и онда то изгледа могу да одем одавде. ред облику утакмица. Величина не, али то је настави да расте испунити. А сада ово је мало мени. И сада миш поинтер-- не знам Желим миша, хоћу ивицу. Дакле, Огреби је довољно паметан да зна када је дух додирује ивицу. Оно што желим да ствари да радим? Пусти ме само напред и променити кретање. Znaš šta? Идем да га окренем. Дакле, на 15 степени није Заиста ће ми помоћи. Желим да се окрени и идес на другу страну. Дакле, хајде да видимо шта се дешава овде, ако сам погодио Играј сада. У реду, некако глупо изгледа, али то ради управо оно што сам рекао. И то је ротирање целу спрајт. Сада испада да ја могу поправити. И нисам знао како да поправим ово на први поглед. Некако сам морао да футз около и види најбољи начин да се то уради. Али ако одем да-- да видимо, кретање. Ох, нашао сам ово. Заправо, Сет Ротатион Стиле. Лево, десно, или не ротирати, или све око себе. И испада да је оно што желим. И ја ћу да ставим ово није моја петља, јер не треба да подесите ротација стил више пута. Ја ћу ставити га на самом врху овај програм тако да буде некада сет, а затим памти. А сада ћу да ово покушамо поново. Дозволите ми да заустави програм. И сада када фиксна ту грешку. Тако сам ја итеративно унапређивање на ово. Програм постаје мало сложенији и већи, али Водим беба кораке да тако кажем, и мале угриза из проблема да је све боље и боље. Али ово такође је некако јадно. Znaš šta? Да питам некога са јако добра, застрашујуће глас воле да дођу до? Неко са гласом. Ух, да. Хајде горе. У зеленој кошуљи. Тако испада да постоји нека друга забава ствари, естетика и звуци слични. Ево мјау. Ја кликните на картицу Соундс. [МЕОВ] Ту је мјау. [МЕОВ] [МЕОВ] [МЕОВ] --ацтуалли запис нешто од наших овдје. Па хајде да управо то. Уместо да користите овај мачке звук, хајдемо само напред овде, и како се зовеш? Ник, драго ми је. То је Давид. Дакле, у једном тренутку, ја идем да притиснете дугме Рецорд. А ако једноставно не могу вичу на лаптоп, "јао," као да вас управо ушао у зид, да ће бити много поштовати. 1, 2. Ницк: Јао! Давид Ј Малан: Страва. А сада може да уради мало уређивање овде. Гоинг то добили ослободити од мирних делова. И мислим да је то добро. Mnogo vam hvala. Ницк: Драго ми је. Давид Ј Малан: Имам само преименована у "јао," али сада ћу вратити у своје скрипте. И обавештење заиста постоји звук овде. И ја ћу ићи напред и репродуковати аудио Јао, и ја ћу то да урадим ако то је додиривање само ивице. А онда ћу Имам га окрени. Дакле, хајде да видимо шта се овде дешава. Идемо преко целог екрана. [ВИДЕО РЕПРОДУКЦИЈА] -Оуцх! Јој! Јој! Јој! Јој! Јој! Јој! Јој! [Крај репродукције] Давид Ј Малан: Дакле, ви схватате да смо се мало среће. Идем да га има потез као 100 корака истовремено. Ефекат који сада иде да бити-- [Цомпутер глитцх Соунд] Дакле, у разумним границама. Дакле, прилика да усавршите да Даље, ако заиста желимо да. Дакле, хајде да представим још један концепт. Да ме пусти у једну зове Схееп и употребну нешто назива променљива. Ово је неодољива мала овце, и Променио сам свој костим да се тако изразим. Дакле, иако је подразумевани је мачка, можете да поставите, можете извући, можете да урадите било који број ликови на вашем вилењак. Ево програм који је урадити шта на енглеском? Опет на основу баш оно што сада знамо. Шта је овај програм уради? Да, то ће да рачунају. Један број у једном тренутку. Ми имамо очигледно имају овај сет цоунтер. Ја не знам шта је то, али можда је променљива. То је само контејнер, Кс или И. Али реч бројач је више описни од Кс или И математичар је. Дакле, можемо да користимо енглеске речи за ствари. Заувек, само значи радити ово. Реци цоунтер. Сада одакле ово долази? Па, испада да бројач је променљива. Дакле, то је само још једна загонетка комад сам створио унапред. И иако се дешава да није истог облика овдје, нормално је да каже нешто као Хелло овде. Такође можете вући променљиву тако да то је рекао се. Онда сам чекати тренутак, ја промените бројач за један, то инцрементинг додавањем једног. Тако да је нето ефекат је ово диван бројање оваца. Иако је броји себе. Сада је врло брзо ћете добити досадно јер ће ово заиста заувек, али то је управо оно што је Дизајн програма прописује. Летс сада покушати још један пример да усклађује променљиву. Овај зове Хи Здраво, да не добије досадан брзо. Сада ова има два сценарија. И тако опет, водимо малим корацима. Почели смо са нечим супер мали, на то дода, додати на њу. Сада желим да урадим нешто још динамичнији, па желим да слушаш две различите ствари у исто време. Дакле, са леве стране, када зелена застава се кликне, Ја поставити променљиву да сам написао Унапред се зове Без тона. И произвољно га подесите на 0. Дакле, Огреби нема истина и лажна, али има 0 и 1. Тако да могу приближити ту исту идеју. А онда заувек, ако бар простор притисне, затим подесите променљиву на 0. Или ми је жао. Ако се притисне простор, и ако искључен, променљива је 0, а затим поставите пригушен на 1, друго сет пригушени на 0. Ово изгледа некако као да смо само ради и поништавање посао. Али шта је ефекат? Сваки пут када сам ударио размак, шта се дешава са мојим променљиве под називом искључен, логично? На неки начин бива преврнуо. Она се мења од 0 до 1, или 1 до 0. Тако да је неколико блокова да изрази, али сви Радим је деактивирана стање Ова променљива 0 или 1 или 0 или 1 сваки пут када сам ударио размак. Сада овде, шта то радиш? Заувек, ако је искључен 0, па ако искључен је лажна. Дакле, ако није искључен, је семантика тамо, играју звука морски лав, и мислим Здраво Хи за двоје секунди, чекај две секунде. Дакле, приметите сада ово скрипте су ефективно ће паралелно тако да се може се слуша за једну акцију, с друге стране да донесе одлуку на основу те акције. А то могу да урадим ово заувек. [СЕА ЛИОН БАРКИНГ] [СЕА ЛИОН БАРКИНГ] То ће то урадили заувек и [СЕА ЛИОН БАРКИНГ] као што сам урадио. И сада се још увек ради али ја сам "искључује" игра. [СЕА ЛИОН БАРКИНГ] И то је све овај момак ради сада превише. Отворимо други пример овде. Пусти ме на приредбама, а сад ово дивно такође. Али приметите да има два спрајтова. Дакле, не само са два писма један дух, већ два спритес. И ако кликнете на плави момка као што сам Већ имам, он види као један програм овде да буквално само каже ово, када сам добио неки догађај, кажу "Поло" за две секунде. Дакле, ако сте икада играли у базен, игра Марко Поло, ако је момак наранџаста скрипта је било индикација, очигледно сваки пут сам погодио размак, шта је наранџаста момак да уради? Он ће рећи "Марко". А онда је ово нови блок. Не Видели смо то раније, али емитује догађај. И да га зовем Догађај шта желимо. Вратићемо се на ово можда убрзо. Али емитује догађај је начин за један вилењак да разговара на другу у суштини то пролази поруку. То није порука коју видиш. То није нешто визуелно. То је нека врста компјутерског поруке да је други тип слуша за. Јер, заиста, плави момак, поврат нема када зелена застава кликне. Он уместо тога има, кад сам добио неки догађај. Када је буде предао ову белешку у класи, да тако кажем, да каже "Поло". И тако да је нето ефекат је да када сам погодио зелену заставу, ништа се не дешава. Али када сам ударио размак, каже "Марко", он одговара са "Поло". Али једини спрајт сам интеракција са је наранџаста. Дакле, ово је начин врсте пролази поруке између Спритес и има их комуницирају једни са другима. Сада погледајмо један задњи Један овде називају Теме. И приметио тако што га играју. Дакле, то су два духови. Птица је врста лете около. Он поскакује. Нема "јао", али иста идеја. Али мачка изгледа прилично паметан. Шта је мачка очигледно ради? И чекати. Шта је мачка очигледно ради? То једноставно није поскакује. Он је након птицу. И тако очигледно, постоји начин са комбинацијом блокова овде-- и хајде да погледамо мачку веома брзо. Заувек, ако додирнете птицу, онда играти звук Лав 4, шта год да је. Чули смо га једном. У супротном, указују птица, и померите један корак. Сада чињеница да је то један корак је оно што даје птицу мало предности у почетку, али ако уместо тога да ово 10, на пример, тако да сваки итерација петље је мовинг 10 корака времена. Дакле, више простора. Хајде да видимо шта се онда дешава. [Рикнути лав] Није све то много боље. Дакле, хајде да покушамо да се побољша на ово мало итеративно, и врати на то Појам функције. И заиста, један од фундаменталних Такеаваис дизајна класе. Не само писање програма који раде и да ли су, али су добро дизајниран. А дизајн је много више субјективно, па ћеш добити бољи у томе током времена. Али узмимо бебе кораке у правцу почевши од програма који ради, Апсолутно, али то није веома добар. То није добро написан. Дакле, овде је програм који то ради. Кашаљ, кашаљ, кашаљ. Шта је програм изгледа? Изгледа коректни према мени. То говори кауч фор а друго, онда је чека. Онда се то каже поново, онда је чека. Онда се то каже поново, онда је чека. А онда је програм имплицитно завршава, јер нема петљу. Али зашто је то лоше написано програма? Чак и ако никада нисте програмирали раније? Као што трља погрешан начин, можда овде? Да? ПУБЛИКА: [неразумљиво] Давид Ј Малан: Управо тако. Ви понављате се изнова и изнова. И буквално сам копирао и залепио два опет и опет те блокова. И то је управо она врста здравог разума проверите да ли се одлука. Sačekaj minut. Да ли стварно ово радити? Па шта је ово што је Очигледно решење можда? Имају неку врсту петље. И не сасвим опозив шта је слагалица комад је, али ако погледамо следећој верзији овде, заиста, нема само заувек петље, ту је поновити неке више пута. И тако сам прецизирао три. А сада приметила колико чвршће, како много језгровит овај програм је. У извесном смислу, како много више одржив. Ако желите да промените реч од кашља на нешто друго, као Ацхоо, као да је кијање. Онда сам га променити у једном место, а не три. Дакле, ово је већ осећа као мало бољи дизајн. Дозволите ми да уместо отворена кашаљ 2, наш трећи пример. Обратите пажњу као компјутерски научник, Ја почети да броји од 0, обично. Сада то изгледа мало страшније у први, али ефекат је исти. Кашаљ, кашаљ, кашаљ. Али оно што изгледа фундаментално нови у горњем делу програма? Ја сам уклонио реч. Ја сам уклонио чекања. И шта сам укључен у уместо? Функција. Кашаљ блок. Мислим, искрено, некако изгледа идиот ако нисам само почне са блоком да је очигледно зове "кашаљ", ако је то све што ја желим да урадим. Али то не постоји у Сцратцх. Радије сам један у Палета зове више блокова овде, и ја превуците ову велику ствар пурпле овде да ми дозвољава да дефинишемо функцију. То ме суштини омогућава створити своју слагалицу комад који се може назвати некако желе, да може да уради шта год пожелим, али му даје име. То ми даје нову, љубичасте пуззле пиеце да сада ради шта год ја то кажем. Дакле, ово љубичаста комад овде одговара овом овде. И шта он ради? Он каже да кашље већ друго, и онда чека. И сада сам некако створила моја обичај слагалице, тако да се понаша управо то исти начин. Тако да могу да наставим да радим ово. И заиста, ту ће бити све више и више могућности за модуларизације, а за наношење слојева, сложеност на врху једни другима. Али ово Основна идеја, заиста у проблему, рекао је 0. Шта ћеш бити изазов да урадите је да преузмете Сцратцх, или само га користити на вебу, и само забавите са њом. Ми ћемо вам дати сет захтјеви, који звук, а неки број комада слагалице. Али ћеш урадити управо то. И схватићете да ћеш Желим да предузме неке кораке бебе у почетку, док ваш програм добија све више и сложеније. Али, с обзиром да ли је то Најбољи начин да то могу? Могу ли да избегавају тај инстинкт можда, да копирате и налепите? Али пре него Проблем Сет 0, а пре него што завршимо, Мислили смо да заузимају једно више волонтер ако смо могли, за коначну програм То је можда највише Фиттинг уопште, с обзиром данашњу простор. Хајде доле. Да. Да. Kako se zoveš? Ух. To je ok. Оба сиђе. И ја сам се бавити некако у да наредних десет секунди. Дакле, хајде доле. Хајде доле. Дозволите ми дођи овамо. Hajde. U redu. Да видимо. Дакле, врло брзо приметити овде, Ако желите да се горе. Учинићемо две рунде ово. А како се ти зовеш? САБРИНА: Сабрина. Давид Ј Малан: Сабрина и? Иинг Гее: Јинг Боже. Давид Ј Малан: Јинг Боже. Драго ми је обоје. Дејвид. Дакле, наш крајњи пример овде зове Хардест Гаме Иви. А зашто не бисмо ти Ниво 1, а ти Левел 2. И ми ћемо видети колико далеко осим тога ми заправо идемо. Вриттен би студент прошле године, ремикед би ме тако да би то го преко добро у Њу Хејвену. И ти дам игру која се догађа у укључи померањем стрелице горе и доле, и добијање Иале до циља. Idemo. [ВИДЕО РЕПРОДУКЦИЈА] [МУЗИКА - Амерички НА Фок Тхеме ПЕСМА] [МУЗИКА - МЦ Хаммер, "У Цан НЕ ДИРАЈ  Овај "] -У Цан нот Тоуцх Тхис. У Цан нот тоуцх тхис. Цан нот Тоуцх Тхис. Мој, мој, мој, моја музика ме удари тако Тешко, чини ми каже, ох, мој господару. Хвала вам што сте ме благословио са смета да се римује и два Хипе ноге. То је добро кад знаш да си доле. Супер дрога дечко из Оактовн. И Ја сам познат као што је и овај ритам ух, не може дотаћи. Рекао сам ти Хомебои У Цан нот Тоуцх Тхис. Да, тако живимо а знате У Цан нот Тоуцх Тхис. Погледај ме у очи, човече. У Цан нот тоуцх тхис. Еј, пусти ме буст тхе Функи текст. У Цан нот тоуцх тхис. Свеже нове ударце и панталоне. Имаш га тако и Знаш да ванна данце. Тако се исели из седишта и добити мува девојку и ухватити ритам. Док се котрља држите на пумпа мало битни и нека знају шта се дешава. Баш тако. Баш тако. Хладно на мисији тако повуци назад. Нека знају да сте превише а то је потез ух не можете додирнути. Хеј, рекао сам ти У Цан нот Тоуцх Тхис. Зашто стојиш човече? У Цан нот тоуцх тхис. Еј, звук у Белл Сцхоол је, будало. У Цан нот тоуцх тхис. Дај ми песму, ритам их одлука знојим то је оно што сам им даје сада. Знају када говорите о Хаммер причаш о емисији која је хипед. И чврсто певачи су знојење тако да им донесе микрофон. Или трака да научите шта то ће се и сада он ће спалити картоне. Легит или рад тешко или можда и отказ. Јер, знате У Цан нот Тоуцх Тхис. У Цан нот тоуцх тхис. Провалите. Стоп. Хаммер тиме. Го витх тхе флов у спин ако не можемо да пређемо на ово онда вероватно су мртви. Тако ваве руке ваздух [неразумљиво] То је то за победник на плес ово и ви ћете добити тањи. Мове превуците гузицу само за минут хајде да сви радимо на рупу. Да. У Цан нот тоуцх тхис. У Цан нот тоуцх тхис. Боље ти је да хипед Дечак У Цан нот тоуцх тхис. Прстен звоно школски у. Провалите. Стоп. Хаммер тиме Давид Ј Малан: То је све за ЦС50! Хвала пуно сте нам се придружили! Видимо се напољу. [Крај репродукције] [ВИДЕО РЕПРОДУКЦИЈА] [МУЗИКА - "Сеинфелд" тхеме сонг] Хеј Дејвид. Хеј, Давиде. Kako ide? Добар посао, данас. Па јесте ли размишљали о томе шта ћеш да урадиш за шале? Не, немам ништа. Шта ако-- шта ако је ово шала из? -Као, Распакивања колица? Ух-ха. Знате, то је око чега. -Па Волим, не прича, не сукоб, без резолуције. Не разумем. О чему се ради онда? -Ништа. Па ми имамо од шала о ништа, а немамо глумце. Ко ће бити у томе? -Ne ne ne. Мислим, ја ћу бити у њему. Бићеш у њему? Да! Људи увек говоре ја сам лик. Па, мислим, то је истина. Али ко други неће бити у њој? То не може само бити ти. Ти ће бити у њему Гавин Дан, Дан Колтон, З'Мила, Алиссе, Даг, Дејвид, сви. Па то је ни о чему, и сви су у њему? Апсолутно ништа. -Ovo je smešno.