< Return to Video

Principi rada računala, uvod (19 min)

  • 0:00 - 0:06
    Bog, moje ime je Nick Parlante, a ovo je nastava o
  • 0:06 - 0:11
    svojstvima računala. Kako ona funkcioniraju, što mogu, a što ne mogu raditi.
  • 0:11 - 0:17
    Ne traži se nikakvo predznanje o računalima. Namijenjena je svima. Dakle prije
  • 0:17 - 0:22
    nego što započnem, želio bih se, kratko, zahvaliti Google-u na podršci mojim ranim
  • 0:22 - 0:26
    istraživanjima na ovu temu, koja su u konačnici pomogla u kreiranju ove nastave. Također
  • 0:26 - 0:31
    kratka napomena o obliku. Nastava se ne sastoji samo od videa. Uz svako poglavlje videa
  • 0:31 - 0:36
    postoji i neka vrsta pisanog dokumenta, kojeg ću listati, pomicati, na ekranu, koji
  • 0:36 - 0:40
    prati izlaganje i sadrži dijagrame, primjere koda i slične stvari.
  • 0:40 - 0:45
    Dakle, vi možete u bilo kojem trenutku prelaziti s videa na dokument
  • 0:45 - 0:50
    ako želite ponovo pročitati obrazloženje ili isprobati neki primjer ili slično.
  • 0:50 - 0:56
    Postoji velika razlika između gledanja kako ja nešto radim i pokušaja da to sami napravite.
  • 0:56 - 1:00
    Moj savjet bi bio: Puno puta, na kraju poglavlja imati ćemo vježbe.
  • 1:00 - 1:03
    Tada, prije nego što probate odraditi vježbe, odlučiti da li ste spremni
  • 1:03 - 1:07
    odmah prijeći na vježbe ili se želite vratiti na
  • 1:07 - 1:10
    dokument i malo sami eksperimentirati s primjerima da učvrstite
  • 1:10 - 1:14
    svoje znanje. Tek toliko da znate da vam ta mogućnost stoji na raspolaganju za svako poglavlje.
  • 1:14 - 1:21
    Rekao bih da je temeljna jednadžba računala:
  • 1:21 - 1:27
    računalo je "moćno" plus "glupo". Moćno u smislu da računala mogu
  • 1:27 - 1:32
    obaviti na milijarde operacija. Ona rade nezamislivo brzo. Ali,
  • 1:32 - 1:38
    operacije su "glupe" u smislu da su operacije koje računalo izvodi
  • 1:38 - 1:43
    u suštini vrlo jednostavne, one su potpuno mehaničke. One nemaju ništa što bi mi
  • 1:43 - 1:48
    opisali kao inteligentni (čovjekov) uvid u to na čemu rade. Dakle ta čudna
  • 1:48 - 1:52
    kombinacija, na neki način, velike moći kombinirane s nekom vrstom mehaničke
  • 1:52 - 1:57
    ograničenosti (gluposti). Taj obrazac postati će kristalno jasan dok budemo obrađivali
  • 1:57 - 2:02
    ove male primjere koda, kako bi se na neki način poigrali u računalnom svijetu.
  • 2:02 - 2:07
    Sad sam malo provokativan, na neki način ismijavam računala. "O da, ona su glupa",
  • 2:07 - 2:11
    ali u drugu ruku vidimo da su računala ...
    ona su vrlo korisna.
  • 2:11 - 2:16
    Na neki način to je ono o čemu ova predavanja govore. S jedne strane ulaženje
  • 2:16 - 2:21
    u, na neki način zabavan svijet računala koji je pomalo mehanički onda ga povezivati
  • 2:21 - 2:26
    sa stvarima poput email-a i MP3 zvučnih zapisa. Stvarima koje su u realnom svijetu
  • 2:26 - 2:31
    vrlo uobičajene. Pokušavati povezati ta dva svijeta i pokazati kako računala funkcioniraju
  • 2:31 - 2:35
    i kako se to uklapa u svijet.
    Moj cilj je da kad odradite nastavu
  • 2:35 - 2:40
    kako računala rade i kako se uklapaju u svijet.
  • 2:40 - 2:44
    I da ne budete zastrašeni računalima. Da ne mislite o njima kao nekakvoj magiji,
  • 2:44 - 2:50
    neshvatljivoj kutiji. Imam također i skriveni plan.
    Premalo ima u svijetu onih koji se bave
  • 2:50 - 2:55
    računalnom znanošću. Postoji velik broj problema za koje bi željeli da budu riješeni
  • 2:55 - 3:00
    ali jednostavno nema dovoljno ljudi koji bi napisali programe za sve njih. Dakle,
  • 3:00 - 3:05
    moj skriveni plan je da, otvarajući vam pogled u računalni svijet i način kako
  • 3:05 - 3:10
    on funkcionira, vi otkrijete da ste zainteresirani nastaviti se baviti
  • 3:10 - 3:15
    računalnom znanošću i dalje. Dakle prva približan uvid u koji želim ući:
  • 3:15 - 3:19
    Kako računala funkcioniraju?
    Iznutra je računalo pogonjeno kodom.
  • 3:19 - 3:24
    Mi ćemo detaljnije o tome kasnije. Ovo bi trebao biti samo prvi uvid.
  • 3:24 - 3:29
    Napravio sam ovdje malu sliku računala. Kod unutar računala sastavljen je
  • 3:29 - 3:34
    od ovih jednostavnih naredbi. Jedna naredba mogla bi biti da se zbroje dva broja,
  • 3:34 - 3:39
    izračuna se koliko je 1 više 1 ili da se provjeri da li je 2 manje od 10.
  • 3:39 - 3:44
    To je ono što računalo radi, na prvi pogled ono samo izvodi ovu listu naredbi.
  • 3:44 - 3:49
    Svaka je instrukcija vrlo jednostavna i računalo jednostavno izvodi jednu po jednu
  • 3:49 - 3:54
    s liste, ali ih izvodi izuzetno velikom brzinom.
  • 3:54 - 3:59
    Svaka instrukcija ima neku vrstu određenog mehaničkog dojma. Rekao bih,
  • 3:59 - 4:04
    da nas ovo vodi prema prirodnom pitanju koje glasi: Ako ... ako računalo
  • 4:04 - 4:09
    samo mehanički izvodi niz instrukcija, kako je moguće da ono obavlja
  • 4:09 - 4:14
    tako mnogo korisnih stvari u svijetu. Imam ovaj dijagram za taj slučaj.
  • 4:14 - 4:19
    Na desnoj strani zamisliti ću neke korisne mogućnosti poput
  • 4:19 - 4:24
    uklanjanja "crvenih očiju" ili instant messaging-a. Reći ću radi pojašnjenja da morate znati
  • 4:24 - 4:29
    da su vaš mobitel, vaš digitalni fotoaparat, sve su to računala.
    Dakle na desnoj strani
  • 4:29 - 4:33
    imam korisnu mogućnost: "uklanjanje crvenih očiju",
    a na lijevoj strani
  • 4:33 - 4:38
    imam računalo, koje upravo izvodi svoje, kao što znate, jednostavne mehaničke instrukcije.
  • 4:38 - 4:42
    Što je ono što povezuje ova dva pogleda?
    A odgovor je
  • 4:42 - 4:47
    to je u suštini računalno programiranje.
    Postoji osoba
  • 4:47 - 4:51
    računalni programer, koji u početku ima ideju. O, trebam ukloniti efekt "crvenih očiju",
  • 4:51 - 4:56
    to bi bilo vrlo korisno. Oni koriste svoju kreativnost i svoju imaginaciju
  • 4:56 - 5:00
    da smisle što bi računalo moglo korisno obaviti.
  • 5:00 - 5:05
    I tada, ono što programer radi je da strukturira i
  • 5:05 - 5:09
    razdijeli taj problem, tako da ga računalo može obaviti. Oni instruiraju računalo,
  • 5:09 - 5:14
    i strukturiraju stvari tako da to računalo može obaviti tu korisnu stvar.
  • 5:14 - 5:19
    To je ono što programiranje jest. I u stvari za bilo koju korisnu stvar
  • 5:19 - 5:24
    koju izvodite svojom digitalnom kamerom ili svojim mobitelom
  • 5:24 - 5:30
    ili svojim računalom, u pozadini stoji osoba koja je omogućila da se to dogodi.
  • 5:30 - 5:35
    Sviđa mi se ta kombinacija. Na neki način programer, osoba,
  • 5:35 - 5:41
    unosi svoju kreativnost i svoj pogled na svijet i razmišljanje o stvarima
  • 5:41 - 5:46
    koje bi bilo korisno napraviti i to je njihova polovica problema. A računalo
  • 5:46 - 5:50
    donosi ono u čemu je računalo dobro. Rekao bih da je računalo dobro u tome što je
  • 5:50 - 5:55
    u konačnici prilično jeftino. Računalo je u stanju izvoditi ove instrukcije
  • 5:55 - 5:59
    vrlo, vrlo brzo i tako u konačnici dobivamo ovu lijepu kombinaciju.
  • 5:59 - 6:03
    To je na neki način razlog što tako veliki broj računala
  • 6:03 - 6:08
    u svijetu izvodi tako mnogo korisnih stvari. To pokazuje da je ovo dobro partnerstvo
  • 6:10 - 6:12
    između ljudi i računala. Na svoj način ovaj dijagram je pomalo sažetak ovih predavanja.
  • 6:12 - 6:17
    Posjetiti ćemo na lijevoj strani da vidimo, pomalo, da vidimo
  • 6:17 - 6:21
    kako izgleda računalni svijet. I pogledati na vezu između tih
  • 6:21 - 6:26
    i aktualnih mogućnosti koje ste koristili i donekle razumjeli kako se računalo uklapa
  • 6:26 - 6:33
    u svijet i omogućava da se stvari obave. U drugom dijelu ovog poglavlja
  • 6:33 - 6:37
    započeti ću izvoditi male primjere koda. I moram kazati da će to zahtijevati
  • 6:37 - 6:42
    nešto strpljenja. Početi ću pisati kod ... i naš prvi
  • 6:42 - 6:47
    primjer biti će vrlo jednostavan. On neće obavljati ništa blistavo.
  • 6:47 - 6:52
    Rekao bih da je to pomalo kao LEGO kockice. Svaki komad koda koji naučimo
  • 6:52 - 6:56
    predstavlja dodatnu kockicu, i s vremenom ćemo biti u mogućnosti sastaviti ih
  • 6:56 - 7:00
    zajedno i napraviti prilično zgodne stvari. Međutim u ovih prvih nekoliko poglavlja
  • 7:00 - 7:05
    stvari ..., negdje moramo započeti, i ovi prvi primjeri su vrlo jednostavne.
  • 7:05 - 7:09
    Molim vas stoga za strpljenje i obećavam da ćemo postići nešto zgodno s ovim materijalom
  • 7:09 - 7:13
    U stvari, ovdje stavljam malo nagovještaja, kroz nekoliko sati predavanja
  • 7:13 - 7:18
    započeti ćemo raditi specijalne vizualne efekte.
  • 7:18 - 7:23
    Poigrati ćemo se poznatim, tu prikazanim, majmun-mjesec-banana problemom.
  • 7:23 - 7:28
    Samo malo naznake gdje ćemo dospjeti.
    Ali ono što ćemo raditi danas su vrlo
  • 7:28 - 7:33
    jednostavni komadići koda. Za ove vježbe kodiranja koristiti ćemo programski jezik zvan
  • 7:33 - 7:37
    JavaScript. JavaScript je vrlo popularan jezik. Izvodi se u web pregledniku (browser-u)
  • 7:37 - 7:41
    što ga čini iznimno popularnim. To je i razlog koji ga
  • 7:41 - 7:45
    čini pogodnim za ovu nastavu. Jer radi, jer mi radimo u web browser-u,
  • 7:45 - 7:49
    moguće je da naš kod funkcionira vrlo jednostavno.
    Koristiti ćemo JavaScript plus još neke
  • 7:49 - 7:53
    dodatke koje sam dodao samo za ova predavanja. Tako ovo neće izgledati baš kao
  • 7:53 - 7:57
    profesionalni JavaScript kod. Raditi ćemo na dijelovima koda
  • 7:57 - 8:02
    koji je u konačnici vrlo kratak, tek toliko da ukažemo na poantu
  • 8:02 - 8:06
    onog što pokazujemo i pomalo istražimo računala, ali bez dovlačenja puno "prtljage"
  • 8:06 - 8:10
    koja bi bila nužna za pisanje kompletnih profesionalnih programa.
  • 8:10 - 8:15
    Evo dakle mog prvog primjera. Ono što će kod napraviti za nas je ...
  • 8:15 - 8:19
    imamo ovo pravokutno područje i ovaj tekst u okviru njega
  • 8:19 - 8:23
    to je kod. Imati ćemo svaki put "RUN" gumb ovdje dolje.
    Kad napravim klik mišem
  • 8:23 - 8:28
    na RUN gumb. Ono što će se dogoditi je da će računalo otići ovdje gore i
  • 8:28 - 8:32
    jednostavno proći ovim linijama. On će jednostavno, kao što kažemo, izvesti svaku liniju.
  • 8:32 - 8:37
    Obaviti će ono što ona kaže. U ovom slučaju, dakle, ono što gledamo je
  • 8:37 - 8:41
    print funkcija. Dakle imamo riječ "print". Način na koji je print funkcija uvedena u kod
  • 8:41 - 8:46
    je da imamo riječ "print" i onda imamo lijevu (otvorenu) zagradu i nakon nje niz stvari
  • 8:46 - 8:50
    U ovom primjeru to je samo brojka 6 nakon čega
  • 8:50 - 8:54
    redak završava s desnom (zatvorenom) zagradom i znakom točkom-zarez. Ono što print funkcija radi je
  • 8:54 - 8:59
    da uzme one stvari koje pišu u zagradama i ispisuje ih.
  • 8:59 - 9:04
    Ako pogledate preko na desnu stranu ovo je ispis
  • 9:04 - 9:10
    koji se dobije kad kliknemo na RUN. Ako ovo promijenim na recimo print(42) i sad
  • 9:10 - 9:15
    kliknem RUN tada vidimo 42. To je ono što dobijemo od prve linije, a kad
  • 9:15 - 9:21
    kažem print(1,2) tada vidim 1 i 2 s druge strane.
    Dakle to tako radi.
  • 9:21 - 9:26
    Rekao sam već da su naši prvi primjeri vrlo banalni, nisu nešto blistavo.
  • 9:26 - 9:32
    To je u ovom slučaju doista i istina. Dakle mogao bih sada ovdje pokušati još par stvari.
  • 9:32 - 9:37
    Mogao bih napisati zarez 47 tako da kad to izvedem ... OK, sada vidimo
  • 9:37 - 9:43
    da dobijemo 1 i 2 i 47. Također da pokažem da se ove linije uzimaju samo jedna po jedna
  • 9:43 - 9:49
    Kopirati ću to i onda to mogu zalijepiti nekoliko puta ...
  • 9:49 - 9:54
    Imam viš linija, tako da kad to izvedem, ... sad možemo reći da je to u redu
  • 9:54 - 10:00
    dobijemo, dakle dobijemo ponavljanje onoga što god nam je ispis bio.
  • 10:00 - 10:07
    Dakle ono što treba naglasiti je da sintaksa naredbe nije slobodna forma.
  • 10:07 - 10:11
    Naprotiv, ona je vrlo čvrsto strukturirana. Ona mora biti upravo takva
  • 10:11 - 10:16
    da bi je računalo moglo razumjeti. To je, u stvari, posljedica
  • 10:16 - 10:20
    unutarnje prirode računala. Ono ima tu mehaničku čvrstinu, ograničenost,
  • 10:20 - 10:25
    pa će i jezik, kojeg ono razumije isto biti mehanički, čvrst.
  • 10:25 - 10:30
    Ovo je malo čudno. U početku krećemo slobodno pisati
  • 10:30 - 10:35
    engleski ovdje i postići da to računalo slijedi. Razmišljajte i tome
  • 10:35 - 10:39
    kao svojoj prvoj lekciji o prirodi računala. Ili po principu
  • 10:39 - 10:43
    "kad si u Rimu ponašaj se kao Rimljanin". Dakle tražim od vas da zavirite
  • 10:43 - 10:46
    u svijet računala. Raditi ćemo stoga malo u jeziku računala.
  • 10:46 - 10:49
    U početku će izgledati malo čudno, ali stvarnost je slijedeća,
    to nije komplicirano,
  • 10:49 - 10:54
    Sintaksa postoji. To jest čvrsta struktura, ali to zapravo i nije tako teško
  • 10:54 - 11:00
    Htio bih vas ohrabriti da ne odustajete zbog pomalo
  • 11:00 - 11:05
    čvrsto strukturirane mehaničke kvalitete jezika. Ona će nam omogućiti da radimo
  • 11:05 - 11:10
    neke zgodne stvari. U redu, to je bio moj prvi primjer, probajmo ovaj drugi
  • 11:10 - 11:16
    U prvom primjeru radio sam samo s brojevima. U računalnom kodu postoje
  • 11:16 - 11:22
    i nešto što zovemo strig-om (nizom znakova). Ovo je prvi primjer sa string-om: "hi" unutar navodnika
  • 11:22 - 11:27
    Dakle niz je samo slijed znakova i u kodu ga zapisujemo između dvostrukih navodnika.
  • 11:27 - 11:32
    Zbog toga imam "hi". Dakle print može prihvatiti brojke i ispisati ih, a
  • 11:32 - 11:37
    pokazuje se da može ispisati i stringove. On jednostavno interpretira string kao
  • 11:37 - 11:41
    slijed slova i kojih god znakova što ga čine i ispisuje ih redom ovdje.
  • 11:41 - 11:46
    Mogao bih, znate, ovo izmijeniti da umjesto "hi" to promjenim u "good day"
  • 11:46 - 11:51
    Dakle string može uključivati i razmake. Ako to izvedem mi ćemo samo
  • 11:51 - 11:58
    dobiti ovdje 'good day'. Dakle u računalnom programu i stringovi i brojevi su, i jedni i drugi,
  • 11:58 - 12:02
    vrlo česti. Stringovi u programu se koriste da se u njima čuva
  • 12:02 - 12:07
    npr. URL kojeg ste utipkali ili, u programu za uređivanje teksta, cijeli stavak
  • 12:07 - 12:11
    teksta na kojem radimo može biti pohranjen u string.
    Dakle string je u suštini
  • 12:11 - 12:16
    sekvenca znakova. To je vrlo uobičajena vrsta podatka u računalu.
  • 12:16 - 12:20
    Druga stvar koju smo pokazali u ovom primjeru koda je ovaj prvi redak. To nazivamo
  • 12:20 - 12:25
    komentarom i u JavaScript jeziku komentari započinju s dvije kose crte a komentari funkcioniraju tako
  • 12:25 - 12:30
    da se sve, počevši s dvije kose crte pa sve desno do kraja retka
  • 12:30 - 12:35
    ignorira od strane računala. Mogu to onda koristiti da tu napišem bilo kakvu opasku poput
  • 12:35 - 12:40
    tu imam dva stringa i sl. Neku malu opasku ili primjedbu sebi ili slično o kodu.
  • 12:40 - 12:45
    Dakle kad ovo izvedem računalo, recimo, ignorira ovaj dio.
  • 12:45 - 12:50
    U nekom od mojih primjera koji slijede vidjeti ćete
  • 12:50 - 12:55
    komentare razasute okolo u kojima ja stavljam napomene o tome što se događa.
  • 12:55 - 13:02
    Dakle, jedan primjer kojeg bi ovdje mogao pokazati, a koji je malo zbunjujući. Staviti ću riječ print
  • 13:02 - 13:09
    unutar stringa i pogledati što se ispisuje. Sad dakle ovdje
  • 13:09 - 13:15
    na drugom retku dobivam 'hello to print'. Ono što se dogodilo da se riječ print unutar
  • 13:15 - 13:21
    stringa ne tretira kao kod, kojeg treba izvesti poput riječi print izvan stringa,
  • 13:21 - 13:26
    t.j. kao funkcija koju kod programa poziva. Dakle kad se nalazi unutar dvostrukih navodnika
  • 13:26 - 13:32
    ista riječ tretira se kao običan podatak. To predstavlja distinkciju unutar koda.
  • 13:32 - 13:38
    To bi bilo u redu. Na kraju poglavlja imati ćemo nekoliko vježbi
  • 13:38 - 13:44
    u kojima ćete moći pisati kod kao što sam ja radio ovdje. Kao što sam prije spomenuo
  • 13:44 - 13:50
    kod funkcionira unutar sustava koji ima čvrsto strukturiranu ograničenu sintaksu.
  • 13:50 - 13:55
    U stvari, vrlo često se potkrade pogreška i profesionalnim programerima koji pišu
  • 13:55 - 13:59
    programe po cijeli dan. Kad se utipkava neki kod postoji tendencija da se naprave
  • 13:59 - 14:04
    sitne sintaktičke pogreške na raznim mjestima u kodu.
    Moguće da se ispusti desna zagrada
  • 14:04 - 14:09
    ili se krivo otipka neka riječ ... I te sintaktičke pogreške su vrlo lake za
  • 14:09 - 14:14
    ispravljanje. Dakle kad pritisnete RUN gumb
  • 14:14 - 14:19
    vrlo često će se ukazati nekakva sitna pogreška koju je potrebno ispraviti.
  • 14:19 - 14:23
    Htio bi da to razumijete. Te sitne pogreške ne odražavaju vaše
  • 14:23 - 14:27
    duboko nerazumijevanje ili ozbiljan nedostatak, radi se samo o površnim previdima
  • 14:27 - 14:32
    koja se događaju tijekom kodiranja, a rade ih i profesionalni programeri cijelo vrijeme .
  • 14:32 - 14:37
    Mi niti ne mislimo o njima dok ih uklanjamo, uopće ne razmišljamo o njima.
  • 14:39 - 14:41
    Mislim stoga da, kad se ljudi uvode u kodiranje, ovo ih
  • 14:41 - 14:46
    pomalo izbacuje iz takta. To da postoje ove male sintaktičke greške
  • 14:46 - 14:50
    odvraća im pažnju i oni misle da rade nešto potpuno krivo, dok zapravo svi
  • 14:50 - 14:55
    rade takve greške. To uopće nije značajno. Da bi pomogao da vam malo
  • 14:55 - 14:58
    odvratim pažnju s toga, ja ću vam jednostavno prikazati gomilu primjera u kojima sam ...
  • 14:58 - 15:02
    Zadao sam par primjera u kojima imam neke tipične male sintaktičke greške.
  • 15:02 - 15:05
    Pokazati ću kako se greška manifestira kad kliknete na RUN gumb. Dobro?
  • 15:05 - 15:09
    Dakle što će se dogoditi je da kad kliknem RUN gumb stvari neće raditi. Dobiti ću
  • 15:09 - 15:12
    neku vrstu poruke o grešci. Dakle želim Vam pokazati proces od
  • 15:12 - 15:16
    pojave greške do razrješenja ovog sintaktičkog problema, samo kako bi se privikli.
  • 15:16 - 15:19
    O, da, kad prvi put kliknete RUN gumb, to je vrlo česta pojava,
  • 15:19 - 15:23
    dogoditi će se ovo. Samo da prođemo kroz ovo. U redu dakle kliknimo RUN gumb.
  • 15:23 - 15:26
    I umjesto izvođenja koda i realizacije ispisa, dobio sam
  • 15:26 - 15:30
    neku grešku ovdje. Malu poruku o grešci. Ponekad su poruke o grešci
  • 15:30 - 15:34
    prilično dobre i jasno opisuju što se događa. Dakle pogledajmo prvu, ona glasi:
  • 15:34 - 15:39
    Error: prlnt is not defined. Što se dogodilo je da "print" je funkcija ....
  • 15:39 - 15:44
    ali ovaj drugi navod, u drugom retku, ... sad u ovom slučaju,
  • 15:44 - 15:50
    dobro, to ne radi uvijek, ali u velikom broju slučajeva bit' će označen redak u kom je problem.
  • 15:50 - 15:56
    Problem je u tipkanju. Ne piše P R I N T,
    već piše P R L N T
  • 15:56 - 16:01
    Dakle ako "l" promijenim u "i". Ha! Sada radi.
    Dakle ovaj mali program
  • 16:01 - 16:05
    ispisuje 'a', pa '1' i 'b', pa 'c' i '3' , dakle jedan potpuno besmislen primjer
  • 16:05 - 16:09
    kojeg sam izmislio. Naravno stavio sam l jer sam razmišljao kako je to slovo
  • 16:09 - 16:13
    koje vrlo sliči i. Pa je nužno da pažljivo zagledate, dakle bio sam
  • 16:13 - 16:17
    pomalo zločesti profesor. U redu, pokušajmo s jednim od ovih
  • 16:17 - 16:22
    Kliknuti ću na RUN gumb na ovom. Javlja grešku, nezaključen doslovni string
  • 16:22 - 16:26
    i označio je drugi redak. Moram, dakle pregledati drugi redak s lijeva
  • 16:26 - 16:31
    na desno. Vidite ovaj (redak) i postoji 'b' . Ovdje je vidite problem što imamo doslovno naveden string
  • 16:31 - 16:36
    Htjeli smo string "b", ali nedostaje nam zatvaranje (desni) navodnika.
  • 16:36 - 16:41
    Trebamo oba navodnika.
    Probati ću s trećim primjerom.
  • 16:41 - 16:45
    Pogledajmo, greška, nedostaje desna zagrada.
    Još jednom je linija osvijetljena.
  • 16:45 - 16:49
    Ja ću ... u stvari ... u ovom slučaju ..
    poruka o grešci je prilično dobra.
  • 16:49 - 16:54
    Ona govori, gledaj ..., kao i kod navodnika,
    lijeva (otvorena) zagrada
  • 16:54 - 16:58
    i desna (zatvorena) zagrada, moraju se spariti.
    Mora biti desna zagrada,
  • 16:58 - 17:03
    točno ovdje, da bi se dala naredbu ispisa. Sada, dakle, radi.
  • 17:03 - 17:12
    Evo zadnjeg. Nešto ne štima, javlja grešku da nema desne zagrade, ali kad pogledam ona je tu.
  • 17:12 - 17:16
    Ono što se dogodilo je da je poruka o grešci netočna. Ponekad, kad postoji sintaktička greška,
  • 17:16 - 17:21
    računalo se zbuni i ne može dobro dijagnosticirati grešku za vas u svojoj poruci
  • 17:21 - 17:25
    Ono u osnovici može govoriti
    nešto ne valja u drugom retku.
  • 17:25 - 17:30
    Moja preporuka je da dobro pregledate s lijeva na desno ... i pogledajte ovdje, izgleda
  • 17:30 - 17:34
    prilično razumno. Izgleda da u ovom slučaju ono što nedostaje je zarez
  • 17:34 - 17:39
    Mislim da taj primjer dobro ukazuje na razliku između čovjeka i računala.
  • 17:39 - 17:43
    Čovjek bi mogao pogledati naredbu i otkriti vašu namjeru. Poput: vidim što je on
  • 17:43 - 17:47
    namjeravao je da ispiše '1' i 'b'.
    Ali računalo ima tu mehaničku (nesvjesnu) crtu.
  • 17:47 - 17:52
    Stvari moraju biti upravo onakve kakve se očekuje da budu, pa i zarez
  • 17:52 - 17:57
    nije opcija već mora biti tamo, tako da smo blokirani tok to ne riješimo.
  • 17:57 - 18:03
    U redu, sad to radi. Dakle ti je prvo poglavlje samo s osnovnim ispisom
  • 18:03 - 18:09
    s brojkama i stringovima.
    Imam jedan problemski primjer kojeg ću probati.
  • 18:09 - 18:14
    Ovako će najčešće izgledati vježbe.
    Iako će kasnije vježbe biti zabavnije.
  • 18:14 - 18:18
    To vam obećavam. Ovdje piše:
    izmijeni donji kod tako da kad se izvede
  • 18:18 - 18:23
    on generira upravo ovakav izlaz. Tu stoji
    '1 2 buckle' .... dakle zasniva se na brojalici
  • 18:23 - 18:26
    'one, two, buckle my shoe'. Dakle, ovaj kod ovdje koji nešto radi
  • 18:26 - 18:30
    ali to nije, to uopće nije ono što trebamo, pa da moramo prepraviti
  • 18:30 - 18:33
    Pogledajmo! Najprije, ono što ću napraviti je ja ću dodati 2 i onda ću se
  • 18:33 - 18:37
    sjetiti dodati zarez ... i onda ću promijeniti ovaj strig
  • 18:37 - 18:41
    da glasi 'buckle'. Sad to mogu izvesti tek da vidim što radi.
  • 18:41 - 18:44
    Htio bi vas ohrabriti, da ako imate ideju za neki kod, ili samo želite nešto isprobati, ...
  • 18:44 - 18:48
    ne možete ništa razbiti ako ovdje bilo što ukucate i kliknete pogrešan gumb.
  • 18:48 - 18:52
    Dobro je imati osjećaj da malo eksperimentirate.
  • 18:52 - 18:59
    To je bio prvi redak. Isprobati ću i drugi.
    '3' zarez '4' zarez 'knock'
  • 18:59 - 19:07
    Dobro je, sada to radi.
    Vrlo često kad radim male pokuse
  • 19:07 - 19:13
    u dokumentu poput ovog, ... to može biti ovaj u videu,
    raditi ću gomilu primjera
  • 19:13 - 19:17
    i onda vi možda zaželite isprobati ... moda ćete znate biti radoznali vezano za drugi primjer
  • 19:17 - 19:21
    I vi ćete naići na jedan i htjeti isprobati neku varijantu i stisnuti ćete krivu tipku
  • 19:21 - 19:24
    To je nešto što vi slobodno možete napraviti.
  • 19:24 - 19:27
    Često ću u dokumentu imati mali
    'show solution' (pokaži rješenje) gumb
  • 19:27 - 19:31
    To znači da vi možete doći na njega, ... on je prazan, dakle možete eksperimentirati
  • 19:31 - 19:35
    Ali onda ako ste radoznali koji kod sam ja koristio, tada je i to dostupno
  • 19:35 - 19:38
    u dokumentu tako da možete usporediti to s vašim rješenjem.
  • 19:38 - 19:42
    Ili ako želite iz njega kopirati ili što god bilo to je u redu.
  • 19:42 - 19:45
    Time završavamo prvo poglavlje, isprobajte vježbe s kodom.
Title:
Principi rada računala, uvod (19 min)
Description:

Nick Parlante, Stanford, uvodni video uz CS-101

more » « less
Video Language:
English

Croatian subtitles

Revisions