>> JASON Hirschhorna: Dobrodošli, svatko, na tjedan 10.
To je uzbudljiv tjedan, jer Sutra je kviz 1, što ćemo dobiti
da se u trenu.
Danas je u dijelu, mi ćemo ići preko neke resurse za kviz, te
onda ću odgovoriti na bilo koje i sve pitanja vi imate.
I mi ćemo na kraju završiti s neki problemi praksi.
>> Možemo potrošiti cijeli odjeljak odgovaranja na pitanja.
Možemo potrošiti cijeli odjeljak prelaženju praksa problema.
Mi samo će proširiti ispuniti prostora i vremena imamo.
>> Zato sam stavio taj popis svaki tjedan, ali to je osobito važno ovaj tjedan.
Za studiranje, ako niste započeo je već, oh boy.
No, nadamo se da ste počeli već.
A što se događa kroz materijale i ovdje su navedeni izvori.
Ja bih visoko preporučiti Broj tih.
>> Konkretno, bilješke s predavanja su izuzetno važno i korisno.
Study.cs50.net pruža Veliki premaz na puno
teme smo pokriveni.
Ona također ima neke super praksi probleme.
A onda, Google je super, previše.
Ne znam što bih ga koristiti za.
Ali koristiti Google, kao dobro.
>> Doprijeti do mene, ako imate bilo pitanja, komentare ili zabrinutosti.
Pogledajte preko pregleda sjednice slajdovi od sinoć.
Ili, ako imate malo vremena, gledati video.
Oni pružaju puno pomoći materijal i informacije.
I pokušati pokriti, ako ne i sve, mnogi od teme koje smo pokriveni i da
moglo vidjeti na kvizu.
>> Govoreći o kvizu, da će biti sutra.
To je 75 minuta.
Mnogi od vas su ga uzimati na dan 1. sati, a neki od vas su
uzimajući u 5:30.
Za to vrijeme ste ga uzimati i mjesto ste uzimajući ga, uvjerite
check out dokument Na CS50.net početnu stranicu.
>> Ne zaboravite da možete dobiti jedan 8 1/2 za 11 list da se s tobom.
Često, ljudi ne koriste ova List na svim tijekom kviza.
Ali stvarno, to je nevjerojatno koristan alat studija.
Tako stavljajući zajedno da lim se ono Proveo sam vjerojatno tri ili četiri sata
radio kad sam bio na studiju za CS50, a to je jednostavno najviše pomoći
način na koji sam mogao učiti za kviz.
Dakle, čak i ako imate neke tuđe studija vodiče za pogledati i
koristite kao reference, ja visoko preporučiti izradu vlastitog studija vodič, stavljajući
te stvari zajedno.
To stvarno pomaže da naučite sve materijala.
>> Posljednje, ali ne i najmanje važno u ovom poglavlju, nakon kviza sutra postoji jedna
više predavanje -
sljedeći ponedjeljak.
Ima još jedan dio, a ne naprijed Utorak prije Dana zahvalnosti, ali
Utorak nakon toga.
Mi ćemo se sastati zajedno za konačni zbogom stranka i radi neke kul
stvari da se ti dečki, potaknuti na daljnja istraživanja u računalnoj znanosti.
>> Tu je još jedan projekt, još jednom Sajam, još jedan hackathon.
Mi smo pri kraju CS50, što je uzbudljivo -
ali isto tako, ako ste poput ja, malo tužno.
Prije nego što sam krenuti dalje, se bilo tko imati bilo kakvih pitanja o tome što
smo do sada pokrivena?
>> OK, dobro idemo preko neka pitanja imate li za kviz i teme
bismo mogli pokriti.
Dakle, ovo je popis koji sam stavio zajedno.
To nipošto nije iscrpan, ali Nadamo se da će osvježi pamćenje, ako vam
imaju neka pitanja o bilo koji od ovih teme, ili ako imate pitanja o
praksa problemi iz kvizova u posljednjih godina.
>> Imao sam par pitanja koja su bila poštom za mene, ali ja želim da odlagati
na one za sekundu.
Da li itko ima bilo kakvih pitanja, Problemi nisu razumjeli,
odgovori nisu razumjeli da nas je sve počelo?
Avi.
>> PUBLIKA: Možete li samo ići preko DOM i Ajax jako brzo?
Kao, ono što trebamo znati ili bi trebalo razumijem o njima?
>> JASON Hirschhorna: Ja ću odgovoriti uglavnom to pitanje, što učiniti sam
trebate znati o određenoj temi x?
Jer imam osjećaj da mnogi od vas ćeš me pitati da, ili su
znatiželjni o tome.
Dakle, u mjeri u kojoj je tema bila pokrivena u predavanju, ili dio, ili na
study.cs50.net, problem postaviti, što bi trebao biti upoznat s njim.
>> Dakle, ne morate znati sve vrste od oznake koja je dostupna u HTML ili
svaki tip atributa ili imovine možete dati nešto u CSS.
Ali ako ga vidio u predavaonici primjer, ako ga vidio u problemu
set, vjerojatno biste trebali biti upoznati s njim, pogotovo stvari koje je vidio
u predavanju.
Tako smo razgovarali dokument Object Model malo u
poglavlje, pa još u predavanju.
Vi bi trebali biti upoznati s toliko toga.
>> A ti bi trebao biti upoznat s Ajax u istoj mjeri.
Mi nikada vidio nevjerojatno napredna ili komplicirani primjeri Ajax, pa
nećeš biti pitani učiniti nešto nevjerojatno kompliciran.
No, možda se pitao, kako ja radim napraviti Ajax poziv koristeći jQuery?
Koji je to nešto što sam vidio broj puta prije, kako u
pregledati sjednicu i na predavanju, a to je samo dva-ish linija koda.
>> Dakle, to je nešto što bi trebalo poznavati.
Ali opet, za sve ove teme, ako ste ga vidjeli
prije, to je fer igra.
I mogli bi vas pitati - Očito smo pitati vas Vi stvari
nisam vidio prije.
Coding nešto što nisu vidio prije.
Koji se ne želi reći da niste Vidjeli alate za rješavanje
taj problem prije.
Vi ste vidjeli one alate.
>> Na primjer, u kviz 1, ako vam je potrebno da kod strlen.
Nismo kodirane strlen prije.
No, znate kako koristiti za petlje, znate kako koristiti ako uvjeti.
Vi znate kako napisati varijable u C. To će biti ista stvar ovdje.
Vi ne ide da bude pitao za napraviti nešto što nisam vidio prije, ali
možda se traži da, kao, stavite nešto zajedno na novi način, ili
rješavanje drugu vrstu problema.
>> Žao nam je, da nije bio specifičan na svoj pitanje, ali ja ne mogu odgovoriti o
svaki topic ono što učiniti ili ne moraju znati.
No, isto tako, ispričavam se, posljednja stvar na tome.
Proveli smo znatno više vremena na vezu popisi nego imamo na Ajax.
Niste koristiti Ajax u problematičnim setu.
Jedna od središnjih obilježja koja Problem postaviti da je vezi liste.
I proveli smo dosta vremena u predavanju i poglavlje ga koristite.
>> Dakle, izgledi su popis veza će doći do više Često se na test nego Ajax volje.
Ili pitanja imaju veze s vezom Popis će biti vrijedan više bodova.
Dakle, sigurno možete fokusiranje i uska u na stvari koje su više
vjerojatno da će doći do jer imamo proveo više vremena na njih.
>> OK kakvih pitanja?
Da.
>> Ivanković: Možemo li ići iznad uporabe anonimne funkcije u JavaScriptu?
Ja sam se malo zbunjeni o tome.
>> JASON Hirschhorna: Pa u JavaScriptu -
Pokušavam misliti kako sam mogao napisati to na -
pa neka je zapravo otvaraju ovaj kod.
Dakle, ovo je kod koji smo prošli tjedan.
A i ti si ovo vidio ako su ovdje u sekciji prošlog tjedna.
Ili ste vidjeli nešto slično ovome.
>> No, možete pogledati na ovoj prvoj liniji.
To je, kako se početak -
svatko je ovo vidio.
Ako želite staviti neke JavaScript koda, ste ga stavili u to, pod pretpostavkom
koju koristite jQuery.
To je rekao, ne učiniti ništa do tog dokumenta učita.
>> A onda, Curt, vidite ovdje radimo nešto ovako -
funkcija otvorena zagrada, zatvorena zagrada.
Dakle, mi se ne daju to funkcionirati ime.
Nećemo se definirati ovu funkciju bi trebala pokrenuti, a zatim
nazvati ga pitati.
Mi smo se samo kaže ovaj dokument Već traje funkcija.
Nekoliko stvari koje treba učiniti.
>> A mi ne želimo trošiti vrijeme dajući mu ime ili ga spremiti za
vječnost.
Mi samo želimo raditi neke stvari.
Dakle anonimna funkcija vrsta od služi u tu svrhu.
Kad ti nećeš koristiti nešto iznova i iznova, tako da ne trebate
kako bi to ime - samo želite ga koristiti jednom -
ti bi samo reći funkciju, za Primjerice, u ovom slučaju, i ti si samo
definiranje nešto što mogli dati ime.
>> Kao, možemo povući tu funkciju out i dati mu ime, a zatim pozvati da
funkcionirati ovdje.
Ali mi ne trebaju, jer mi ne želim gubiti vrijeme kad mu daje ime ili
troši nešto u našem prostoru za naziv.
I vidjet ćete da je puno.
Na primjer, vidimo da su puno u to code, ali nisam ovo vidio kada
kliknete nešto -
pokrenuti ovu vrstu koda.
>> Mogli bismo definirati kôd koji želimo pokrenuti kada kliknete, u ovom slučaju,
to ID, kao odvojeni funkcije a zatim pokrenuti tu funkciju.
No, u ovom slučaju, samo smo preskakanje taj korak i kreće u ovdje i
Upravo se na definiranje sve da želimo da se dogodi i
Nije mu daje ime.
To još uvijek ne bi mogli imati odgovorio na vaše pitanje.
>> Ivanković: Ne, ne znači.
Mislim, valjda sam samo stvarno ne kužim zašto bi bilo
djelovati na sve, ipak.
Budući da to nije stvarno se zove.
To zapravo ne postoji naziv.
>> JASON Hirschhorna: To je funkcija u Osjećaj da je niz koraka,
kao što bi se staviti u funkciju.
A onda je to zato što mi zovemo je anonimna funkcija.
Nećemo mu dati ime.
Nećemo trošiti pokušavate da to ime, ali smo mogli.
>> Anonymous funkcije, što uvijek može dati ime.
Tako je, primjerice, ovaj broj ovdje, bismo mogli staviti ovaj kod unutar
funkcija, a zatim pozvati ova funkcija ovdje.
Umjesto toga, mi kažemo, nećemo gnjaviti s tim.
Samo ćemo pisati sve je ovdje.
>> To je kao da ponekad kad pišeš četiri petlje u C - momci
Vidio to prije - možda ste iterating kroz forloop
na i jednaka je 0.
I je manje od strlen.
Ili idete kroz neke polje, možete spremiti niz
index sam u nekoj varijabli.
A vi koristite tu varijablu.
Dakle, ne morate prepisati niz Nosač više sam i više i više.
>> I to je nešto kao dummy varijabla.
To ne služi više svrsi osim kako bi vaš kod malo čišći
i lakše za čitanje.
Slična funkcija ovdje.
Samo čini malo lakše, ali funkcionalno nema razlike.
Je li to odgovor na vaše pitanje?
>> Publika: Da.
>> JASON Hirschhorna: OK ..
Mario?
>> PUBLIKA: Jučer su često stavljaju Funkcija zagradi događaj.
Znači li to nešto?
Ili je to za stvari kao što su da bi oni to
document.ready funkcija događaj.
>> JASON Hirschhorna: Vidjeli smo to i opet, to su manje stvari koje
Vjerojatno ne želite trošiti previše vremena na.
Jer ponekad ne želim ljude bi popizdila da oni nisu
čuo o tim stvarima toliko.
No, razgovarali smo malo o tome rukuju događaj.
Dakle, nešto se događa, a zatim Ova funkcija se izvršava.
I onda smo također željeli znati neke pojedinosti o tome što
se dogodilo u ovom slučaju.
>> Tako se sjetim problema postaviti četiri.
To je vjerojatno najlakši način da se Razumijem da je u break out.
Bilo je nekih code -
kao događaj će se dogoditi, ali događaj može značiti mnogo stvari.
Ako bi moglo značiti miša klikne, ona moglo značiti da pogodio tipki sa strelicama, et
cetera, et cetera.
>> No, sve je spremljena u taj generički stvar se zove događaje.
A onda možemo reći, je ovaj događaj ova stvar?
Ili je ovaj događaj ova stvar?
Ili, kakav se dogodilo s tog događaja?
Dakle, to je razlog zašto ste stvorili tu varijablu postoji spasiti dodatnih informacija
što točno dogodilo da idete da želite
koristiti u funkciji.
Ali opet, to je vjerojatno jedan od manje važne stvari biti super
upoznati.
>> U redu, što druge pitanja imaju ljude imali, ili spoticanja oni '
naišao dok je pregledom?
Mi ćemo poduprijeti na tom popisu.
A što je u praksi kvizovima, ako ljudi su se oni već?
Koji su neki problemi koji Spotaknuo dečke?
Znam za činjenicu da je prošle godine kviz je stvarno teško.
>> PUBLIKA: Možete li objasniti što SQL injection napad?
>> JASON Hirschhorna: OK, super.
Tako smo razgovarali o tome malo.
Tu je predavanje o sigurnosti.
I opet, kao što sam spomenuo ranije, to na stranu.
No, što će biti frustriran na kvizu kada ste pročitali neku malu po dva boda
pitanje, a ti si kao, kada je jesam li ikad saznali da?
>> Sve one stvari u tim predavanjima da ne mislite li da je potrebno
znate, ili ste mogli prijeći preko, jer oni nisu imali veze s
Problem set, oni će vjerojatno dolaze ponovno na kvizu.
Dakle, cool, zabavnih stvari koje ste upravo Mislio David je govorio za vas
uživati, on ti govorio za vas uživati ​​i da vas samo biti super
uzbuđen o učenju sve postoji naučiti
o računalnoj znanosti.
Te stvari također dolaze na kvizovima.
Dakle, čak i ove male stvari koje do sada nisu izravno odnose na vaš problem
postaviti, kao ti dečki su upoznati s iz Kviz 0, vjerojatno će doći do.
I to je dobar primjer nečega.
>> Dakle, SQL injection napade je kada dobiti neke informacije od korisnika i
Želite li ga umetnuti u tablicu pomoću SQL umetanje izjavu, ali ti
nije dezinficirajte ulaz ispred vremena.
Dakle, očito je da smo vidjeli SQL izrazi.
Samo ću otvoriti -
idemo -
mi ćemo ići na pregled -
Mislim, tko je to pokriveno?
Mislim Samala učinio.
Tako možemo dobiti -
>> PUBLIKA: Odakle ti to?
>> JASON Hirschhorna: Dakle, ako idete CS50.net, kvizove, a zatim možete
pomaknite se i dobiti slajdove iz pregleda sjednice.
No, možete vidjeti da je ovo dobar primjer od injekcije napada SQL.
Mi se neke informacije od korisnika a oni nam daju niz, a zatim smo
želite umetnuti taj niz u bazu podataka.
Općenito mi idu na dezinficirati da ulaz, što znači da postoje neki
Likovi koji su opasni.
>> Na primjer, u SQL žice, ovi citati -
jednokrevetne citati ili dvostruko citati -
nešto značiti.
Oni znače završiti ovaj niz ovdje.
I tako, ako korisnik daje jednu ili dvaput citat, oni bi mogli biti
pokušava odalo SQL upita i umetnite neke loše stvari u nju.
A ako oni to učiniti, oni mogu dobiti Kontrola vaše baze podataka ili napraviti neki
stvari koje ne želite da ih učiniti.
>> Zato, kad god mi se SQL upite, mi dezinficirati ulaz prije
stavljajući ga u bazu podataka, što znači da smo pobjeći tih znakova.
Mi ćemo razgovarati o tome da se u trenu.
Ali ne duljimo, SQL injection Napad je ako to ne rade -
ako ne voditi brigu o unosu oni ti dao Prije stavljanja
baza podataka, oni se, kao što vidite dolje Ovdje, pokrenuti upit da, u stvari -
oni stavili u svoj kod ovdje dolje i ovaj odaberite liniju ovdje će odabrati
sve sa stola, bez obzira od onoga što je dano lozinkom.
Zato imate ili 1 jednak 1.
>> Dakle, to je u osnovi, ne duljimo, način da preuzme bazu podataka.
Pitanje je, dakle, za vas dečki, je gdje je u p setovima 7 si dezinficirati sve
ulazi u SQL upitima?
Odakle taj korak se dogoditi?
Gdje ti se spriječilo SQL injection Napadi iz događa u p set 7?
Da.
>> PUBLIKA: Crypt?
>> JASON Hirschhorna: Pa to nije kripti.
Nismo bi ste to učinili za to Poseban je problem postaviti, ali to se događa
u funkciji upita.
Mi zapravo ga je napisao za tebe, te smo se pobrinuli
dezinfekciju ulaza za vas.
No, u posljednjih godina, studenti su imali upisati ulaze na vlastitu.
U p setu 7, puno vas -
neka mi se otvori još jednu datoteku.
>> Tako ćete primijetiti ovdje puno ljudi, u problemu postavio 7, nije pozvao
ova funkcija na žice.
Ova je funkcija, htmlspecialchars, opet -
ovaj niz može imati neke stvari da u HTML znači nešto drugo.
Poput braće, kvadrat, ili pod kutem Nosač nešto znače u HTML-u.
>> I tako, ako ste napisati i da se na zaslon ili ako se samo da su i
ispisati da se na HTML-u, koji bi mogli učinite nešto što ne očekujete.
Dakle htmlspecialchars ide preko svih onih likovi koji imaju posebne
susreta i njih bježi.
Tako se dobiva isprintati kao tekst želite vidjeti, a ne
uništava svoj HTML.
Nazvali smo tu funkciju u zaglavlju.
I puno ljudi zaboravili nazvati tu funkciju u
Kod ste pisali.
>> Tako, na primjer, ako ima ime dionica kut nosač se u njemu i zaboravili
nazvati tu funkciju, taj kut Nosač mogao dobaciti od onoga
Vaš HTML izgledalo.
No, nazivajući ovu funkciju će pobjeći da, tako je zapravo ispisuje kao
kut nosač i ne bacajte off HTML kodu.
>> Isti razlog što smo vidjeli, ponekad, kose crte prije navodnicima u
printf linija, jer mi ne želimo dupli navodnici Dolje niz.
Želimo ih ispisati se na zaslonu.
Dakle, sve je to ista ideja.
Je li to odgovor na vaše pitanje?
>> Ivanković: Na neki način.
>> JASON Hirschhorna: Dali imati follow-up?
>> Ivanković: Mislim da je SQL injection napad ima veze s tim?
Ja ne razumijem kako dva su vezani.
Zašto bi to učinio da specialchars?
>> JASON Hirschhorna: OK, pa SQL injection napad je kada se uvelo
neki zlonamjerni žice u nečije Program, a oni samo ga se i pokrenite
SQL upit s nizom što ih je dao.
Kao što možete vidjeti ovdje, da moglo biti problematično.
Dakle, način na koji bi se spriječilo protiv koje je uzmete svoj niz koji daju
vi - pa ovaj niz upravo ovdje -
a vi ga dezinficirati.
Vi pobjeći sve stvari koje potencijalno problematično.
Tako da ih ne tumače kao nešto to znači nešto.
>> I primjer koji sa HTML je ova funkcija.
Dakle, to je ista ideja ovdje.
A samo sam se pokazati vam drugi primjeri kada ste
vidio ovu ideju prije.
Od bijega korisničkog unosa prije ispisa to se na zaslonu ili stavljanje
unutar SQL izraza.
>> PUBLIKA: Dakle, u ovom slučaju, korisnik se petljaju programera.
>> JASON Hirschhorna: Da.
Uz sve ove sigurnosnih napada, to je uvijek u pravilu korisnika, ili
netko, pokušava nered s vama, programer.
A to su načini na koje možete spriječilo protiv njih.
>> Ivanković: Pa imam pitanje o hash funkcija.
U kvizu 1 od 2011, postoje dvije Pitanja oko jednostranih presjeke.
A samo sam se pitao što to znači.
>> JASON Hirschhorna: OK, koji je kviz?
2011?
>> Publika: Da.
>> PUBLIKA: Kviz 1?
>> PUBLIKA: [nečujan].
To je kao da raspršivanja lozinku.
To nije stavljajući stvari -
>> JASON Hirschhorna: Koja je to stranica?
>> Ivanković: Mislim da je to bio 9 ili 10, ili oboje.
>> JASON Hirschhorna: U redu, ići naprijed, Curt.
Možete odgovoriti dok gledamo.
>> Ivanković: Mislim da to govori oko raspršivanja lozinku.
Kao, kada netko uđe lozinku, što se to pretvorilo u kriptiranom stvar.
To je lozinka mljeveno meso, što je razlikuje od funkcija raspršivanja koji
stavlja nešto u hash tablicu.
>> JASON Hirschhorna: Idemo vidjeti.
Dopustite mi podići ono što su daju kao odgovor.
A onda ćemo provesti kroz to.
>> Dakle Curt je dao veliki primjer od jednosmjernog mljeveno meso.
Kad smo vidjeli prije, uzeti lozinku i okrenuti -
sjetite se, u p setu 7, netko bi mogao imate lozinku koja je upravo lozinkom,
ali onda to dobiva kodiran u neki stvarno dugo stvar.
Jednosmjerna hash znači da je vrlo lako ići od jednog načina da se druga, ali
to je vrlo teško otići iz drugi put natrag.
>> I da znate, kada su provjere Lozinke ljudi u problemu
set 7, te će uzeti svoje -
Tako, na primjer, kaže da je htio promijeniti svoju lozinku, možete ih pitati
za njihovu staru lozinku.
Uzeo si svoju staru lozinku.
Ga kodiran Vi.
A zatim usporedili dvije enkripcije umjesto unencrypting izvornik
jedan, jer to je stvarno teško ići na taj način.
Da.
>> PUBLIKA: Kako se u dubini li naš razumijevanje telnet moraju biti?
>> JASON Hirschhorna: Ako je spomenuto Kratko je u predavanju, samo kratki
razumijevanja.
Opet, natrag u odgovoru u AVI pitanje -
više stvari dolaze gore, vjerojatnije to je da morate biti super
upoznati s njima.
Ako su došli do samo u predavanju, to je samo jedno mjesto.
No, ako oni dolaze u predavanju, poglavlje, i problem postaviti, onda
vjerojatno morati biti super upoznati s njima.
>> Tako sam imao pitanje iz ranije o tome -
jest bio pad 2010 -
Kviz 1, neka je podići -
ovo pitanje na hrpe i redova, koje smo proveli fer malo vremena
pričaju u predavanju, pa čak i iako mi nije stvarno
nikad ga pogodio u sekciji.
Dakle, ovo pitanje daje vam niz naredbi i vas pitaju što
dobiva tiskani u ovom slučaju.
Dakle, ovo je sasvim razumno pitanje koja bi se mogla tražiti od vas
Dečki, i onda ti dečki trebali biti u stanju odgovoriti na to.
>> Pa zašto ne gledati na to za 30. sekundi, a zatim, ako netko želi
predložiti odgovore na mene, a onda ćemo provesti kroz to.
U redu, tko ima odgovor na pitanje 27?
Da.
>> PUBLIKA: Je li to 1, 2, 3, 3?
>> JASON Hirschhorna: To je točno.
27 je 1, 2, 3, 3.
Pa pogledajmo kako smo to.
>> Prvo, mi govore, ako je je red, što se dobiva tiskani?
Dakle, q je prvi, van.
Vidjeli smo to i prije.
Vidjeli smo sliku o ljudima čeka na Apple
Spremite kupiti neki proizvod.
Prvi ljudi su prvi ljudi van.
Prvi stvari u red su prve stvari van.
>> Dakle, ako ćemo gurati nešto u redu, vas gurnuti jedan, onda smo pop 1.
Pop samo znači iznijeti.
U ovom slučaju, samo uzeti nešto.
Mi se iz prve stvar, to je 1.
Dakle, mi ćemo staviti stvari koje smo ispisati niz ovamo.
To više nije u našem redu.
>> Zatim smo gurnuti na 2 i 3, a smo pop off prvu stvar.
Opet, jer je to red.
Tako smo dobili dva, onda smo stavili na drugi 3 i ponovno nazvati pop.
Naša 3 je na prvom mjestu.
>> I onda smo imali hrpu druge stvari i poziv pop.
Ali opet, jer je to red, Prvi u, prvi van.
Mi uzeti prvu stvar koji je ikad stavio unutra
To je naš 3.
I, u ovom slučaju, ne brinite na sve one druge stvari.
Tako da je, ako je to red.
Sva pitanja o redu?
>> Stog je drugačiji.
Ono što je akronim imamo za razumijevanje hrpu?
>> PUBLIKA: Dolazak u, prvi van.
>> JASON Hirschhorna: LIFO, mislim.
Trajati u, prvi van.
Tako smo vidjeli primjer stog od ladica u blagovaonici.
Što god ladica na vrhu dobiva pokupila.
I onda ako novi ladice dolaze u, oni se stavljaju na vrh.
A onda je sve što je na top dobiva pokupila.
Dakle, one posude na dno snagom ostati tamo neko vrijeme.
>> U tom slučaju, opet, mi ćemo nacrtati ovo.
Mi gurnuti na jednu, tako da se je prvi u redu.
I mi pop nešto off.
I postoji samo jedna stvar u njemu, pa smo premjestili jedan ovdje dolje.
Onda smo stavili na 2. i 3. i smo pop nešto off.
>> Ali opet, budući da je to red -
ili je to stog, a -
ćemo poduzeti sve što je u posljednja.
Sve što je u posljednja izlazi prvi.
A 3 je u posljednja.
Tako smo stavili tri tamo dolje, a zatim smo stavili na drugi 3 i mi
ponovno se pojaviti nešto.
Konačno, stavili smo na 4, 5, 6 i 7, a ovdje smo pop.
I zato što je stog, uzmemo god je stavio u posljednja i pisati
da je ovdje.
Tako smo završili s 1, 3, 3, 7.
Da li itko ima bilo kakvih pitanja u vezi hrpe ili redove, ili ovaj primjer?
>> OK.
Vratimo se na popisu tema.
Nije na taj način, na ovaj način.
Koji druga pitanja ljudi imaju?
>> Ivanković: Ne znam koliko je važno to je, ali bio sam zbunjen
razlika između različitih vrsta jezika kao što su označavanje, sastaviti,
tumačiti.
>> JASON Hirschhorna: To je dobro pitanje.
Mislim da je nešto važno, pa idemo preko njega brzo.
Veliki jezici koje smo vidjeli do sada su C, PHP i JavaScript, u ​​smislu
programskih jezika.
HTML, kao što je spomenuto, nije programski jezik.
To je jezik za označavanje.
I onda imamo CSS, koji je također Ne programski jezik.
>> Također smo vidjeli SQL, što nije programski jezik bilo.
Dakle SQL vam omogućuje da pisati Upiti za bazu podataka.
HTML je jezik za označavanje.
Ona definira kako se stvari strukturirane.
I CSS vam omogućuje da stil stvari.
To je vjerojatno mjeri za ono što trebate znati o one tri.
Ali, to je zanimljivije slici iz razlike između C, PHP,
i JavaScript.
>> Dakle, jedna od najvećih razlika, kao što ste spomenuli, kako oni
sastavio, ili što god ekvivalent je.
Dakle C je sastavio.
Mi bi uvijek pokrenuti prevodilac.
I onda, gdje su vaše pogreške kada pokrenete C prevodilac?
Gdje to vam pokazati pogreške u kodu?
Kako znaš da postoji Pogreška u kodu u C?
>> Ivanković: To vam pokazuje u terminalu.
>> JASON Hirschhorna: To vam pokazuje u terminala kao što ste sastavljanja.
I ako postoje greške, to zapravo neće ga sastaviti.
Tako da znate da postoje pogreške desni daleko, ispred vremena, prije nego što vas
čak i pokrenuti svoj kôd.
>> Naravno, možda ćete pokrenuti svoj kôd i dobili grešku segmentaciju, ali to je bilo
Vjerojatno zato što nije neki glupi logika stvar.
No, svoj kod s tehnički točne i mogao pokrenuti.
Dakle C kod dobiva sastavio ispred vremena.
Što o PHP koda?
Gdje su pogreške u PHP koda?
Kako ste znali da je imao pogrešaka u PHP kodu?
>> PUBLIKA: Trčanje vrijeme?
>> JASON Hirschhorna: Da, kad bi ga pokrenuti, te će se izvoditi
PHP kod u leđa.
I onda će se prikazati zaslon.
Možda ćete vidjeti neke stvari na vrhu, ali onda će vidjeti, kao, neki
narančasta, ružna stol.
I to će vam dati broj linije i recimo, bla, bla, bla, ove stvari
ne rade.
>> Dakle PHP tumači redak po redak i izvode na poslužitelju.
I tada je rezultat poslana na vas.
Velika.
Izvršena u server redak po redak a zatim poslan na vas.
A ako postoji greška, to će poslati li pogreška, ali možda ćete morati
stečen neke stvari ispred vremena.
Dakle, nešto od toga mogli su radili, ali kasnije, neke stvari ne mogu imati
nije radio.
>> Što o JavaScriptu?
Gdje si vidjela JavaScript pogreške?
U p postaviti 8, kada je dobio pogreška, kako ste znali?
Gdje će se pojaviti?
>> Ivanković: U konzoli, na dnu.
>> JASON Hirschhorna: U konzola, na dnu.
Također će vam dati linije broj, a to bi
prikazuju se na dnu.
I JavaScript nije bio pogubljen na poslužitelju.
JavaScript je poslana na vaše računalo, i onda kad je bilo vrijeme za pokretanje
JavaScript, JavaScript je izvoditi redak po redak na
klijenta, na vašoj strani.
Ne poslužitelja, strani klijenta.
>> Te slično, bilo je izvoditi redak po redak.
I onda kad bi se pogreška, to će se pojaviti na dnu.
Slično PHP, neke bi to moglo izvršiti, a onda bi moglo doći
greška kasnije.
>> Također, malo za razliku od PHP, ako imaš pogrešku JavaScripta -
kažu da nije učinio pravo Šifra za okviru upozorenja -
mogli nastaviti prikazivati ​​svoj program.
Okvir upozorenja neće raditi, ali vaš program će biti u redu.
Samo možda da je funkcija će uspjeti.
>> Dakle, ima neke od najvećih Razlika u smislu kako to
jezici, ili kako programskog koda pišete zapravo se ocjenjuju.
Postoje i druge razlike u Uvjeti - najveća razlika
vidjeli smo u pogledu varijabli na različitim jezicima.
Dakle, može li netko dati mi razliku između varijabli
na tri jezika?
Da.
>> Ivanković: U C, oni su strogo upisali.
U druge dvije, oni su labavo upisali.
>> JASON Hirschhorna: A Što to znači?
>> Ivanković: To je u C, imate proglasiti Tip varijable kad
deklarirati varijablu, kao interbool ili char.
>> JASON Hirschhorna: Izvrsno.
U C, uvijek smo morali staviti tip varijable.
A mi stvarno nije mogao miješati tipove.
Niste mogli napraviti cijeli broj plus niz.
No, kao što smo vidjeli u tim drugim jezici, što zapravo može miješati tipove,
i nikada stvarno morati dati nešto tipa, ikad.
>> Pa kako ćemo znati stvari su varijable u PHP i JavaScript?
>> Ivanković: U PHP, počnu s znak za dolar.
U JavaScriptu, kada se proglasi ih, morate imati bar.
>> JASON Hirschhorna: Točno.
Tako je u PHP, počnu s znak za dolar.
U JavaScriptu, oni moraju imati bar, Iako ponekad ne zapravo
imati bar.
No, to je točno.
>> Dakle, to je velika razlika između varijabli.
Mislim da su to vjerojatno, off vrhu moje glave, dva najveća
razlike između njih tri jezika.
No, da.
>> Ivanković: I opseg C varijabli Ograničen je na vitičastim zagradama,
gdje su one druge, to je samo sviđa, da umre, ako je to samo u funkciji,
ali inače, it's -
>> JASON Hirschhorna: Točno.
Dakle, opseg je malo drugačiji u C. Kao sjećaš, kovrčava aparatić definirati
Opseg varijabli.
Dakle, ako je definirana unutrašnjosti ako stanje, koje je unutar for petlje,
varijabla postoji samo tamo.
>> U JavaScriptu, ako je varijabla definirana unutar Ako je uvjet -
unutar for petlje - to će postojati da je funkcija, ali to neće postojati
izvan te funkcije.
Dakle, opseg je malo fleksibilniji u JavaScript i PHP.
To odgovoriti na pitanje?
OK, bilo koja druga pitanja?
Mi možemo učiniti još četiri minute pitanja, a zatim
ćemo skočiti u kodiranje.
>> Ivanković: Možemo li otići u Ajax i razgovarati o tome što je to?
>> JASON Hirschhorna: Razgovarajte s Avi poslije.
On je to pitanje postavio prije.
>> PUBLIKA: Moje loše.
>> JASON Hirschhorna: Bez brige.
>> Publika: Što je točno JSON?
>> JASON Hirschhorna: Što je JSON?
Koje je vaše pitanje?
>> PUBLIKA: Samo jako brzo, razlika između
print i odjek u PHP-u.
>> JASON Hirschhorna: Zašto ne google Razlika između tiskanog i odjek?
Mala razlika.
Nije da je velika stvar.
No, svakako treba ga google, i da će vam dati dobar odgovor.
>> JSON, vjerojatno veća od posla.
Štandovi za JavaScript Object zapis.
A kad smo vidjeli JSON se koristi?
Kad ste vidjeli -
zašto uopće znaš riječ JSON?
Kad ste ga vidjeli?
>> Ivanković: Kad smo bili uzimajući burzovne kotacije za financije.
>> JASON Hirschhorna: Pa što ste vidjeli to kad ste bili dobivanje
burzovne kotacije za financije.
A zašto ste to vidjeli?
>> Ivanković: Kad smo bili preuzimanju Sve informacije koje
došao je u tom formatu.
>> JASON Hirschhorna: Tako da bi se -
Da.
Samo naprijed.
>> PUBLIKA: [nečujan] informacije iz objekta?
>> JASON Hirschhorna: Obje od onih sastavio je odgovor
tražimo.
Želite informacije iz ova druga web-stranica.
A što bi se nadam da kada ste sve te informacije, to bi bilo
predstavljena na vas u nekoj vrsti o standardiziranom formatu.
>> Svatko je vjerojatno upoznat sa zarezom odvojene vrijednosti.
Možete izvoz Excel proračunsku tablicu ili bilo koja vrsta tablicu kao popis
zarezom odvojene vrijednosti.
A zarezi podijeliti sve različitim područjima.
JavaScript Object zapis -
JSON -
je još jedna vrsta standardiziranih Raspored stvari.
I to je često koliko pronađemo Informacije iz naših Ajax upite.
>> Dakle, u ovom slučaju, to smo dobili iz Yahoo stranice.
Oni su se vratili stvari na nas u JSON objekt.
I znamo, jer je standard, što je
kako će izgledati.
Tako možemo ponoviti kroz niz koji je vratio u nama, u nizu
predmeti koji su se vratili u nama.
>> Mi vjerojatno trebamo znati ključeve, ali oni ti uglavnom daju
Dokumentacija na web stranici kada ti si dobavljanje neki JSON
Obavijest za njih.
Isto tako, možete JSON kodiranje objekt.
Dakle, tu je funkciju JSON naglašavaju kodirati.
I tako možete uzeti objekt koji koje ste stvorili, JSON ga kodiraju, i
ga davati nešto drugo, ako želite.
I JSON dekodiranje također postoji za slične namjene, ili za
Svrha suprotno.
>> PUBLIKA: Trebamo znati kodiranja za hash tablice i napad?
Ili mi samo treba razumjeti kako su oni koristili, konceptualno?
>> JASON Hirschhorna: Dakle, neka digne ruku ako je hash tablicu za p set 4
s popisa linkova.
Ili p postaviti pet.
Tako da je velika većina ljudi.
P postaviti 5, 6, tko zna.
Davno.
>> Dakle, velika većina vas nije Tablice s link listama.
A budući da je vjerojatno više zajednički pristup, i zato smo proveli
puno vremena raditi vezi liste i mljeveno meso tablice, što bi vjerojatno trebalo biti
prilično upoznati s kako to kod hash tablicu i popis veza.
>> A ako se sjetim tog problema postavili, to nije stvarno
tako teško kao što se očekivalo.
A bilo je puno manje Šifra nego što se očekivalo.
Rekao bih da bi trebali znati kako kodirati hash tablicu ili popis linkova.
Ne da bih se pitao da, nužno, ali trebali biste
Sigurno znate da je.
>> Isto tako, ako pogledate kroz minula kvizova, bilo je puno
Pitanja oko pisanja funkcija na vezi popise ili dvostruko povezane liste.
To mi se čini da se svake godine.
Pravo umetnite na popisu veze, zar ne izbrisati s popisa linkova, zar umetnite
za popis dvostruko povezana, et cetera.
Tako da, osjećam se prilično ugodno govoreći trebali biste znati da.
>> Za pokušaju, rekao bih da bi trebao Sigurno znate kako se to radi, a možda
dati neke pseudocode koliko da ga kod te ga postaviti.
No, to ne bi bilo najgore u svijet ako ne zna kako
kodirati ga u C. To bi bilo sjajno, ako vam znao kako da ga kod u C, ali mislim
Vjerojatno pseudocode za pokušaj je biti najviše što će trebati
znati za probati.
>> PUBLIKA: Extra kreditne?
>> JASON Hirschhorna: A isto s, ako smo ići u pretraživanje s binarnim stablima, možda
potrebno - i što ste vidjeli u prošlosti, smo učinili puno - znate kako
pretraživanje po binarnom stablu radi.
Vjerojatno bi trebao biti u stanju jedan set up u pseudo kodu.
No, budući da velika većina ljudi nije to učinio na problem
set, ja bih rekao da je vjerojatno manje važno da znate kako to kod
i postaviti stablo kao što je to.
>> Bilo koja druga pitanja?
Isto tako, možemo ih pitati tijekom kao što smo proći kroz neke probleme.
U redu, idemo krenuti dalje.
Preskoči taj tobogan za sada.
>> Govoreći o stablima, to je prvi put Pitanje Imam za vas dečki.
Budući da je to problem.
Ja bih rekao da je vrlo vjerojatno da ćete se problem kao što je ovaj na vašem kvizu
Vas traži da kod nekih vrsta umetkom, izbrisati, pretraživanje, za jednu vrstu
strukture podataka koje smo vidjeli.
>> To dolazi svake godine i proveli smo Puno vremena u drugoj polovici ove
semestar ide preko tih tipova podataka.
Pa sad, ja sam definirao čvor u binarnom stablu pretraživanja.
A ono što bih želio da učinite je dao pretraživanje po binarnom stablu koje počinje
u ovom čvoru zvjezdice korijena, dovršiti provedbu funkcije ispod,
koji se dogoditi da se funkcija otkriće.
I to sa i bez recursions.
>> Dakle, želim vam napisati dvije funkcije.
One to s rekurziju, jedan to bez rekurzije.
I nemojte pretpostavljati da Korijen će biti ne-null.
Znači tražimo za cijeli sam u Stablo s početkom u korijenu, i trebamo
napisati ovo rekurzivno i iterativno.
Da.
>> PUBLIKA: Dakle želite da se vratimo istina ako smo ga pronaći, a false ako smo
nemojte ga naći.
>> JASON Hirschhorna: Kako si znao?
Kako si znao?
>> PUBLIKA: Pitala sam prvi put, ali sam bio pretpostavku, jer kaže bool na
početak funkcije.
>> JASON Hirschhorna: Točno.
Piše bool, pa sam čak i ne trebaju ti reći što ja očekujem da se vrate
jer ona govori upravo tamo.
No, to je točno.
Povratak, istina ili laž.
>> Dakle, prije nego što počnete, ja bih preporučio, Ako niste upoznati s
binary search drveće, brzo crtanje slika njega kako bi dobili svoje
razumijevanja, zar ne.
To također će vam pomoći prilikom pisanja vaš broj i provjere.
Opet, vi nemate toliko Vrijeme na kvizu učiniti sve stvari
da smo vas zamoliti da učinite.
Dakle pisanja pseudo koda je vrlo korisna.
>> A mi uglavnom daju oko -
ako pseudocode je savršeno točna, to je
generalno 50% na pitanje.
Dakle, to nije teško i brzo pravila, ali ako ti samo napisati pseudocode i to je
točna, to je uglavnom 50%.
Dakle, ja bih uvijek preporučiti -
Ako ste u stisci s vremenom, ili čak i ako ti si samo pokušava shvatiti -
počevši od pseudocode.
I na kraju, ako bi mogao napisati ovo sve u C, to bi bilo fantastično.
>> Tako ćemo uzeti tri minute za rad na ovom programu.
A onda ćemo pisati pseudocode za to samo jednom, a zatim
ćemo ga kod rekurzivno a zatim iterativno.
>> Ako imate bilo kakvih pitanja, osjećam besplatno podići svoju ruku.
Sretan hodati okolo i odgovoriti na njih Prije nego smo započeli kao grupa.
>> Neka nam se nastaviti, a mi ćemo se pseudocode rekurzivni verziju
to, a onda ćemo ga kod.
Dakle rekurzivna funkcija treba dvije stvari.
To bi moglo biti pitanje koje mogli bi se tražiti.
Treba dvije stvari.
Tko može podići svoju ruku i reći mi ono što te dvije stvari rekurzivna
funkcija treba?
Po definiciji to su dvije stvari.
Što su te dvije stvari?
Novi ruke.
Da, Alden.
>> Ivanković: Pa nisam baš siguran ako ovo je terminologija, ali -
>> JASON Hirschhorna: Drago mi je ti si podizanje ruku.
>> Ivanković: To treba osnovni scenarij, i to treba rekurzivni korak.
>> JASON Hirschhorna: Savršeno.
To treba osnovnog scenarija i rekurzivna korak.
Dakle, ono što je naša baza i ovdje slučaj?
>> PUBLIKA: F korijena jednaka jednaka null.
Žao nam je, samo u pseudocode, ako je null.
Ako je korijen null.
>> JASON Hirschhorna: Ako je korijen null.
To je izvrsno.
To je naš osnovni scenarij.
To je ono što ćemo provjeriti svaki put.
A osnovni scenarij je Prva stvar koju trebate učiniti.
Ako pogodak osnovni scenarij, gotovi ste.
>> Sada moramo našu rekurzivni poziv, a ja bih biti spremni kladiti se trebamo par
rekurzivna poziva ovdje.
Budući da je stablo, a mi mogao ići više načina.
Dakle, ako je korijen null, mi smo dobro.
>> Što predlažete?
A sada ću početi doziva Na vama, jer sam znao da vi
Svi to znaju.
Ali Annie, što bi trebalo Sljedeći linija biti?
Što ako smo ga pronašli?
Što nam je činiti?
>> Ivanković: Ako ćemo ga naći?
>> JASON Hirschhorna: Ili ono bi trebala biti da se -
daj mi pseudocode za linija na kojoj smo ga pronašli.
>> Ivanković: Ako je jednako korijen ja?
>> JASON Hirschhorna: A onda što nam je činiti?
>> Ivanković: Povratak istina.
>> JASON Hirschhorna: Velika.
Dakle, ako sam je ja -
oh, obojica smo Zvao sam.
To dobiva zbunjujuće.
No, ako je i sam povratak istina.
To je vjerojatno sljedeća što smo trebali učiniti.
Ima smisla.
>> OK, sada nismo učinili naš rekurzivna još zovu, ipak, jer rekurzivna
Poziv opet bih nazvao ovu funkciju.
Dakle, ono što bi trebao iduće Linija pseudocode biti?
Anna.
>> PUBLIKA: lijeva strana.
>> JASON Hirschhorna: Budite precizni, ipak.
To je pretraživanje po binarnom stablu, pa što ne provjere lijevu stranu podrazumijeva?
>> Ivanković: Pa čvor -
Žao mi je, korijen.
I onda strelicu lijevo.
Čvor, čvor, žao.
Nisam to čitao ispravno.
To se zove čvor, zar ne?
>> JASON Hirschhorna: Zvat će se korijen u toj funkciji, ali ni način.
Lijeva strana - Da?
>> Ivanković: Ako se to ne dogodi jednaka I, onda ćemo nazvati
opet funkcija?
>> JASON Hirschhorna: To je točno.
Ako se to ne dogodi jednaka ja, idemo ponovno pozvati funkciju.
No, ono što strani stabla idemo ponovno pozvati funkciju?
>> Ivanković: Na lijevoj strani.
>> JASON Hirschhorna: Nismo uvijek će ga nazvati lijevo, ako je to
to ne jednak.
>> Publika: Oh, ispričavam se.
Poziv na desnoj strani.
>> JASON Hirschhorna: Želimo znati Naime, iako je - sjetite se, u
pretraživanje po binarnom stablu, sve do lijevoj strani je manja.
Sve u desno na desnoj strani je veći.
Dakle, to jednostavno nije - da, samo naprijed.
>> Ivanković: Ako je to manje nego što sam, a zatim -
ako je na lijevoj strani -
>> JASON Hirschhorna: Dakle, ako Ri je manje od -
pa ako je naš broj je manji od mene, što strani želimo otići?
>> PUBLIKA: Želimo otići na desnoj strani.
>> JASON Hirschhorna: Želimo ići -
dopustite mi da skrenem brzi stablo.
Ako je to 5, to će biti 3.
Dakle, ako ri je manje od pet, što strana ne želimo ići?
>> Ivanković: Žao mi je, što?
>> JASON Hirschhorna: Naš broj je manji od broja mi živimo
gledajući upravo sada.
>> Publika: Oh, onda želimo ići na lijevu stranu.
Da.
Oprostite.
>> JASON Hirschhorna: Točno.
Bez brige.
U binarnom pretraživanje stabla, sve manja je s lijeve strane,
veća je na desnoj strani.
Dakle, ako naš broj je manji od I mi smo provjeru -
jer vidiš u čvora, ima i -
onda želite ići na lijevo.
>> A to je lako.
Što je to druga linija pseudocode moramo napisati?
Carlos?
>> PUBLIKA: Ista stvar, samo prebaciti to veći od znaka
i ići na pravo.
>> JASON Hirschhorna: Može li reci to još jednom?
>> Ivanković: Ako naš broj veći nego ja, ići na pravo.
>> JASON Hirschhorna: Izvrsno Posao na pseudocode.
Neka nam to učiniti u stvarnom koda.
A opet, to će pseudocode Vjerojatno vam se, jer to je
točna, 50% na ovo pitanje.
Ali to pseudocode također prevodi jedan na jedan, u osnovi, u kodu.
>> Pa neka nam to učiniti u C Tko može dati ja prva linija koda?
Zapravo, prvi put, prije nego što mi je činiti da, neka mi navući -
>> Ivanković: Imam pitanje.
Zašto ste se uvukli linija koju sam ti dao?
>> JASON Hirschhorna: Zbog Nisam mogla pisati.
Ne znam.
U pravu si.
Ta linija trebala biti tamo.
>> OK, ovdje je naša funkcija.
I neka me navući, također, Naša definicija čvora.
Što će se dogoditi ako nismo pisati typedef?
Zna li itko?
>> Ivanković: Ne bi sastaviti.
>> JASON Hirschhorna: To bi sastaviti, da.
>> PUBLIKA: Bi li to samo jedan proglasi primjerice, umjesto što je nova
upisati mogli proglasiti višekratnik slučajevi?
>> JASON Hirschhorna: Dakle, to ne bi Znam - to ne bi
samo proglasiti jednu vrstu.
Još uvijek može napraviti puno čvorova.
>> PUBLIKA: Ali, ne bi mi moramo pisati struct čvora svaki put?
>> JASON Hirschhorna: To je točno.
Ti bi trebala pisati struct čvor svaki put, umjesto samo čvora.
No, s typedef, možete samo pisati čvora svaki put.
OK, tko nije dao - da, Avica.
>> Ivanković: Ako korijen jednako dosegne null, povratak false.
>> JASON Hirschhorna: Velika i to je naš osnovni scenarij.
Sljedeća linija koda.
Netko tko nije dao mi linija koda još?
Da.
>> PUBLIKA: Root strelica i jednak jednak i.
Zatim se vrati istina.
>> JASON Hirschhorna: Velika.
Sljedeća linija?
Da.
Netko drugi?
A onda možete ići naprijed.
>> PUBLIKA: Inače, ako korijen strelica Ja je manje nego što sam se vratiti
funkcija zove otkriće korijena -
>> JASON Hirschhorna: Žao mi je.
>> Ivanković: Povratak pronalazak korijena ukazuje na lijevo i zarez.
>> JASON Hirschhorna: Dakle, ako ri je veća od stvari na stablu, želimo
ići na lijevo?
>> Ivanković: Ne, morao sam da se uključi.
>> JASON Hirschhorna: Koja?
>> Ivanković: Ne, stvarno.
Imam manje nego potpisati tamo.
>> JASON Hirschhorna: Dobro, ako je ri manje nego što je u korijenu -
Naš trenutni korijena - onda smo Želim ići na lijevo.
I ono što je zadnja linija, što?
>> Ivanković: U osnovi ista stvar, osim prebaciti veći ili
jednak manje nego i lijeva na desno.
>> JASON Hirschhorna: Izvrsno.
Da li itko ima bilo kakvih pitanja o tome?
Dakle, neke druge stvari koje bi bila točna je da
mogao biti-ltiff.
Pogodite, tehnički, nitko od njih Stvarno također trebaju biti-ltiff.
>> Također, tu je vjerojatno jedina jedan slučaj ovdje.
Dakle, to je vjerojatno vaš posljednji slučaj.
Vi ne morate čak ni da-ltiff.
No, vjerojatno dobro napisati da, da bude jasno.
Da.
>> Ivanković: Pa ne mislite kviz - ako ćemo napraviti pogreške, primjerice,
u sintaksi -
malo sintakse pogreške -
kako to dobiti uzeti u kvizu?
>> JASON Hirschhorna: Općenito o kvizu, Mali sintaksa pogreške ili male
stil pogreške ne izgubiti bodove.
Dakle, ako ste zaboravili točku zarez ovdje, to bi bilo u redu.
Ako ste zaboravili zatvoriti ovu zagradu, to bi bilo u redu.
>> Ogroman sintaksa pogreške koje mijenjaju funkcionalni smisao kodu
dramatično, možda ćete dobiti skinut bodove za.
Ili općenito, samo vam ocjenjivanja o tome hoće li ili ne vaš
kod funkcije, čak i -
Nije njegov dizajn toliko, i nije njegov stil.
>> Idemo sada kodirati iterativni verzija otkriće.
Dakle, to će biti prilično slična, ali Tu svakako će biti
neke ključne razlike.
Međutim, naš pseudocode vjerojatno može ići -
još uvijek možemo uzeti jednu liniju pseudocode i shvatiti što
linija je u ovom slučaju.
>> Tako je u ponavljajući verziji, ono što Što mislite, Julia, trebali
biti prva crta?
>> Publika: Opet, u iterativnog Boolean, morate postaviti na petlji, zar ne?
>> JASON Hirschhorna: OK.
>> Ivanković: Pa za poput, k, za x jednaka je 0, x je manje od I.
Ili ne, x je manji od veličina stabla.
>> JASON Hirschhorna: stablo.
Dakle, mi zapravo ne znamo veličinu stabla, a mi zapravo ne znamo
koliko puta možemo ići, pa što je drugačiji tip petlje koje bi mogle biti
bolje u ovom slučaju?
>> Ivanković: Ako još?
>> JASON Hirschhorna: Ako još ne može biti petlje.
Zato što je tip petlje možemo samo ići dok se ne ispuni neki slučaj?
Što je samo druga vrsta petlje u C, osim za petlje?
>> Ivanković: Dok.
>> JASON Hirschhorna: Iako, točno.
U while petlji, zar ne morate znati kako -
while petlja i petlje može učiniti točno istu stvar, ali lijepa stvar
O while petlja se ne trebamo znati koliko je velika naša stablo.
Tako ćemo ići do čega?
>> Ivanković: Dok ne jednaka veličina -
>> JASON Hirschhorna: Pa, to je vrlo slična našoj rekurzivne slučaju.
Dakle -
>> Ivanković: Dok korijen Ja ne odgovara ja.
>> JASON Hirschhorna: To je jako blizu.
Dok korijena i -
ajmo to probati.
Ne mislim [nečujan]
gdje je korijen i nije jednako ja.
Možda ćemo ga morati promijeniti u malo malo, ali to zvuči kao da je prilično
dobro, za sada.
Dakle, mi ćemo to učiniti.
>> Također, ne zaboravite, ne možemo pretpostaviti po pitanju.
Vi ne pretpostaviti da Korijen će biti ne-null.
Dakle, što mislite vrlo Prvo što trebamo učiniti jest?
>> PUBLIKA: Dovoljno je učiniti isto stvar kao i prije.
Ako korijen jednako dosegne null, povratak false.
>> JASON Hirschhorna: Velika.
Dakle, to bi mogao biti null.
Na taj način želimo riješiti od njega odmah.
A onda ćemo provjeriti ako korijen i nije jednako ja.
Dakle, reći da smo u potrazi u ovom stablo 3, korijen i ne jednaka i, sada
mi smo u našem while petlje.
Što želimo učiniti?
A opet, to će biti prilično slična našoj rekurzivne verziji.
Da.
>> Ivanković: Pa ne bi htjela ponoviti, ili zadržati ide niz drvo dok
korijen nije jednak nuli.
>> Jason Hirschhorn: dok korijen nije jednak nulu?
>> PUBLIKA: korijen crtica i nije jednak nuli.
Samo korijena, da.
Kako god korijen nije jednak nulu.
>> JASON Hirschhorna: Dakle, želite da se to promijeni u korijenu
nije jednako null?
>> Publika: Da.
>> Ivanković: Možemo kombinirati to, zar ne?
Ne trebamo se IF, u početku.
>> JASON Hirschhorna: OK, pa ako mi ne -
ako ćemo ih kombinirati, tako da ćemo učiniti dok korijen ne jednak null, i
ako se dogodi da se korijen null na na početku, što ćemo učiniti ovdje dolje?
>> Ivanković: Povratak lažna.
>> JASON Hirschhorna: Velika.
Dakle, u oba smjera, vjerojatno bi radili.
To je drugačiji način, i to ga kombinira.
Ali opet, ako je ovako ili onako, mi smo neće poletjeti dizajn
ukazuje na kvizu.
No, to izgleda dobro.
>> Dakle, dok se korijen ne odgovara null, što je prvi put
stvar koju želite provjeriti?
Netko drugi?
Null, što je prva stvar?
>> Ivanković: Ako ri je manje od -
oh, mislim, ako smo već Našla se u korijenu.
Dakle, ako je korijen strelica ja je jednak i -
>> JASON Hirschhorna: Žao mi je?
>> Ivanković: Ako korijen strelica I jednako jednako ja -
>> JASON Hirschhorna: Što nam je činiti?
>> Ivanković: Povratak istina.
>> JASON Hirschhorna: Velika.
I što je sljedeće?
Jeff, što je sljedeća linija koda?
>> Ivanković: Ako sam manji od korijena strelice I, onda korijen jednako korijen strelicom lijevo.
>> JASON Hirschhorna: Korijen jednaki Korijen strelica lijevo.
Pa to je vjerojatno najveća Razlika je u to iterativan
Verzija za razliku rekurzivna verzija.
Rekurzivna verzija, mi opet pozvati funkciju.
Mi ćemo biti ažuriranju korijen kad zovemo novu funkciju.
Ovdje nećemo zvati novu funkciju.
Mi smo jednostavno samo ažuriranje Korijen u ovoj funkciji.
To je izvrsno.
I što je posljednja linija koda?
Da, Mario?
>> PUBLIKA: Else korijen jednaki Korijen strelica desno.
>> JASON Hirschhorna: Žao mi je?
>> PUBLIKA: Korijen jednaki Korijen strelica desno.
>> JASON Hirschhorna: Možete li i napisati nešto ovako?
>> Ivanković: Nemam pojma.
>> JASON Hirschhorna: Ne mogu.
Vi ne možete učiniti plus jednakima.
U redu, tako da to izgleda dobro.
Zašto ne bismo to učiniti da ga počistiti.
To izgleda sjajno, a to će raditi.
I mi bi izbiti.
>> Ako korijen lijevo je null ili korijena u pravu Bio null, mi bi došli ovamo.
Korijen bi bio jednak nuli.
Mi bi pobjeći iz naše petlje, i mi bismo se vratili lažna.
Dakle, kada smo pobjeći iz petlje, vraćamo lažna.
>> I opet, while petlja je bila savršena ovdje, jer mi ne znamo kako
Veliki naš stablo.
Pokušali smo pisati za petlje, ali mi shvatio moraš shvatiti kako
Veliki je ispred vremena.
Da.
>> Ivanković: Ako to nije binarno traži stablo, to bi bilo u stvarnom math-y
to pisati iterativno, zar ne?
Kao, ako je to stablo, ali ne nužno -
pa to nije bilo sve manje na lijevoj strani, i sve veća na desnoj strani.
To će biti jako teško to ponoviti preko njega, zar ne?
Morali bismo spasiti ono što je prije bilo na u stablo te se vratiti,
i takve stvari.
>> JASON Hirschhorna: Ako to nije binarno traži stablo, samo ako je to
Stablo i stvari nisu bile razvrstani ovako -
i ranije shvatili smo kada Anna bila nam pomaže da što je
sortirani nam puno pomaže -
mi bi trebao, da, uvijek spasiti gdje smo bili prije.
No, tu bi moglo biti puno gdje smo bili previouslys.
Tu bi moglo biti puno roditeljskim čvorovima.
>> Vjerojatno najbolji način za to bi se gurati stvari na neki
vrsta stog ili red.
Vi nikada ne bi trebao da kod toga zato što je težak problem.
Ali ti gurati neke stvari na stog ili stajati u redu, a zatim ih pop off, a
onda ih ocijenite.
>> I onda su neke druge stvari u kojima ti si zapravo stavljajući čvorova, a
zatim napraviti to, a onda traži kroz to.
To bi mogao biti najbolji način da to učinite.
OK, bilo kakva pitanja u vezi ovog problema?
>> Ivanković: Ovo je na odnose na umu.
Hoćemo li imati usporediti puta pokrenuti za Tablice, binarna
search drveće, i tako dalje?
>> JASON Hirschhorna: Vjerojatno.
Tako ćemo učiniti vrlo brzo.
Trčanje vrijeme za hash tablicu -
Koji su ostali?
Binarno stablo?
>> PUBLIKA: Link popisi.
>> JASON Hirschhorna: OK, idemo napraviti umetak.
Što je veliki O od umetkom na hash tablice?
Koje su pretpostavke praviš?
>> PUBLIKA: Vi ste ugurate počevši od popisa linkova.
>> JASON Hirschhorna: Vjerojatno prvi Pretpostavka je da nema sudara.
Ako nema sudara, a zatim vrijeme umetanja je jedan.
Ako postoje sudari, a ti si radi zasebnu povezivanje i umetanje
na početku popisa linkova, zatim umetanje je također konstantna.
>> Ako radite hash tablice ali imaju drugačiji način rješavanja
sa sudara, što je drugačiji način?
Što je je drugi način postupanja s
sudara u hash tablicu?
>> PUBLIKA: Linearno programiranje.
>> JASON Hirschhorna: Linearno programiranje.
Tako ćemo nastaviti tražiti za sljedeću otvorenom mjestu.
To nije konstantna vrijeme umetanja.
Ti bi mogao proći kroz Cijeli stol, tako da
mogla bi biti velika O n.
Da.
>> PUBLIKA: Inače samo ulančavanje?
>> JASON Hirschhorna: Napravili smo odvojeno ulančavanje.
To je bio prvi.
To je ono što Popis veza.
Fancy ime je odvojena ulančavanje.
To bi mogla biti bilo koja vrsta popisa strukture mi se dogoditi da učiniti u popisu linkova.
>> Pa opet, umetanja na hash tablicu mogla biti stalna vrijeme.
A što je umetanje na slaganje red?
>> Ivanković: Nije li to konstanta?
>> JASON Hirschhorna: To je stalna vrijeme.
Vi ste samo izazivaš.
OK.
Umetanje, što su one druge?
Na probati?
Što je veliki O umetanja na probu?
>> PUBLIKA: duljina je konstantna.
Duljina najdulje -
duljina riječi ti si umetanja.
>> JASON Hirschhorna: Žao mi je?
Čekaj, pa što sam čuo?
Rekli ste - što ste rekli?
Koji je vaš odgovor, Marcus?
>> PUBLIKA: duljina riječi ti si umetanja u likovima,
uz pretpostavku da je lik pokušati.
>> JASON Hirschhorna: OK, pa duljina riječi.
Napravit ćemo pretpostavku da to je niz znakova.
Rekao si nešto drugo, iako.
Rekli ste duljinu najduljeg riječi.
>> Ivanković: To je samo konstantna, zar ne?
>> JASON Hirschhorna: Zašto bi to biti konstanta?
>> Publika: Kao, ako koristite veliki O zapis, onda to ne razlikuju se ovisno
o broju stvari koje Već u pokušaju.
>> JASON Hirschhorna: Tako bismo kažu da je vremenska konstanta.
To je konstanta umetanje, i to je zato što je ta ideja -
kažu imamo riječ koja je 45, ili riječ koja je 60, koji
ima konstantan broj.
I to samo će biti umetnut u stalnom vrijeme.
>> U praksi ipak, to ne bi bilo, Očito, dogoditi u jednoj milisekundi,
na primjer.
No, rekli bismo veliki O je konstantna za probati.
I to je jedan od njegovih Najveće prednosti.
>> Što o ubacivanja u popisu veze?
Samo općenito, razvrstani popis veza?
Da.
>> PUBLIKA: Imao sam pitanje.
Na testu, bi li ikad nam pitajte umetanje put da je četiri koraka,
ili tako nešto?
Ili je to samo -
kad kažeš umetanje put je jedan, to samo znači stalnu vrijeme?
>> JASON Hirschhorna: Da, oni bi uvijek pitati, je li to velika O n?
Big O log n?
N na kvadrat konstantna.
Oni su zapravo samo one koje trebate znati.
A što je umetanje na razvrstani popis vezu?
>> PUBLIKA: Imao sam pitanje -
Pitanje -
>> JASON Hirschhorna: Što je odgovor na to pitanje, iako?
>> Publika: Čekaj, što pitaš?
>> JASON Hirschhorna: Što je veliki O od Ubacivanje sortirani popis veza?
>> PUBLIKA: Jedan?
Nema čekanja, nema čekanja, n.
>> JASON Hirschhorna: N. Osim Popis veza.
I ono što je vaše pitanje?
>> Ivanković: Pa bi ti pisati o k ili o 1 za -
>> JASON Hirschhorna: Oh.
Ja bih pisati o 1, vjerojatno.
Tu je još jedna struktura podataka da bi bio dobar.
Tree, pretraživanje po binarnom stablu.
Ono što je umetanje na pretraživanje po binarnom stablu?
>> PUBLIKA: Prijavi.
>> JASON Hirschhorna: Dakle, ono što je najgore slučaj u binarnom stablu pretraživanja?
Dakle, ako mi se dogoditi da počnu u 5, a svaka broj veći od 5, a zatim
mi imamo 5, 7, 9, 11, i tako dalje.
U ovom slučaju, to je u osnovi samo veza Popis, i trebamo umetnuti sve
način na kraju.
Dakle, to je veliki O n.
>> To bi mogao biti naš najgori slučaj Na binarnom stablu pretraživanja.
Očito, nikad ne bi izgraditi pretraživanje po binarnom stablu s 5 u
Srednji, znajući 5 bi biti najmanji broj.
No, to bi mogao biti, ako ste počevši od nule.
Bilo kakva pitanja na to prije nego što sam premjestiti na drugo pitanje?
To je dobro pitanje.
Ja bih znao veliki O iz -
>> PUBLIKA: Što o potrazi za one četiri?
>> JASON Hirschhorna: Definitivno smo nisam pretraživanje i sortiranje.
Učinili smo sve te algoritme, zar ne.
Čekaj, je da je za kviz 1?
Je li to pokriveno -
Jeste li već da pitanje na kvizu 1?
Veliki O runtime binarnog pretraživanja, umetanje vrsta, bubble vrsta?
>> Publika: Da.
>> JASON Hirschhorna: Ako ste imali da pitanje na kvizu 0, izgledi su da neće
dobiti isti točan pitanje na kvizu 1.
Možda se još uvijek dobro znati oni.
Vi nadamo trebali znati GH već.
>> Ali ostali logaritamske Runtimes Vjerojatno dobro znati.
Stvari koje nisu bile obuhvaćene na kvizu 0.
Kao i svih ovih operatera ove apstraktne tipove podataka.
>> U redu, idemo dalje.
To bi trebao biti prilično brzo.
A to je novi jezik nemamo zapravo kodirani prije.
To je pitanje molba koda u PHP-u.
Pa razmislite PHP polje ispod.
Napišite PHP i / ili HTML koda, kao da je izlazi dva stupca tablice je s TFS
imena i kuće.
>> Vi nikada niste to učinili prije, ovaj specifičan problem.
No, to bi trebalo biti jako poznato ono što ste učinili u problemu postaviti 7.
Dakle, ja bih biti spremni kladiti da će biti zatražio da kod nešto u PHP da
je vrlo slično onome što učinio u problemu postaviti 7.
>> Prvo, niz je da nije specifičan.
Koja vrsta polja je ovo?
>> PUBLIKA: Asocijativno.
>> JASON Hirschhorna: To je asocijativni niz.
I u čemu je razlika između asocijativno polje i objekt?
>> PUBLIKA: Objekt polje ima indeks cijelih brojeva, te je asocijativni niz
je indeks niza, ili nešto slično.
>> JASON Hirschhorna: Dakle niz predmeti bi indekse
cijeli brojevi, ali objekt ima područja.
Ima ta polja imena poput ime, kuću, student.
Imate li ideju?
>> Ivanković: Pa, asocijativno Niz je u PHP-u, zar ne?
A objekt je u JavaScriptu?
>> JASON Hirschhorna: Iskreno, ne postoji stvarna razlika između ta dva.
Oba imaju konce što ključeva, a može imaju u osnovi ništa kao vrijednost.
Različiti jezici nazvati jedan stvar asocijativne matrice,
jedna stvar objekt.
Pa iskreno, ne postoji pravi razlika, ali tu je svakako neki
sintaktičke razlike između ta dva.
Da.
>> Ivanković: Pa je objekt također kodirano u napa kao hash tablicu, onda?
>> JASON Hirschhorna: Što vam je činiti znači, kodirana ispod haube?
>> PUBLIKA: Rečeno nam je da asocijativne Niz je tehnički
hash tablicu.
Tako je stvar je i tehnički hash tablicu?
>> JASON Hirschhorna: Ja ne idem odgovoriti na to pitanje.
Ja ću se vratiti k vama o tome.
Ali ja ne bi ni pomislio da bilo od onih kao što je to.
No, na koji način, asocijativne matrice i objekt, općenito, ljudi koriste onima
Pojmovi naizmjenično.
U ovom slučaju, super dio je možete koristiti tipke.
Strings što su tipke, a ne samo jednostavne brojeve.
>> Tako sam se govori o ovo za neko vrijeme.
Nadam se, neki ljudi imaju dobivši počeo o tome.
Mi ćemo napisati neke PHP i HTML koda, tako da smo dobili dva stupca
stol sa TFS imenima i kućama.
>> OK, ja bih zaglavlje red na ovoj tablici.
Tako ću dobiti ravno u ovo.
Idemo u datoteku, novi, i idemo u -
>> OK.
Kako pokrenuti tablicu?
Što je tag, Michael, za početak stol?
>> PUBLIKA: Tablica.
>> JASON Hirschhorna: Tablica.
A ako mi otvorite oznaku, što još trebam?
>> PUBLIKA: glava?
Ili, pretpostavljam, klase.
>> JASON Hirschhorna: Dakle, mi.
Pretpostavimo da smo već pisali smo doctab, HTML, sve te stvari.
Ali, ako sam otvoriti ovaj stol oznaku, što još trebam napisati?
za provjeru HTML?
>> PUBLIKA: ga zatvoriti.
>> JASON Hirschhorna: Zatvorite oznaku.
Kako ću napisati bliski stol oznaku?
>> PUBLIKA: Dot slash stol.
>> JASON Hirschhorna: Slash stol, super.
Vjerojatno ima smisla za pisanje i od onih koji zajedno jer
moraš to učiniti.
OK, ako želim redak zaglavlja, kako Pišem redak zaglavlja s naslovima?
>> PUBLIKA: Je li to manje od 10 sati u neposrednoj blizini -
TR, da.
>> JASON Hirschhorna: TR?
>> PUBLIKA: Onda ista stvar, slash, da.
>> JASON Hirschhorna: OK, i daj mi dva stupca.
>> PUBLIKA: T D?
>> JASON Hirschhorna: OK.
Želim dva stupca.
Znači li to mi dvije kolone?
Koliko stupovi je ovo?
Jedan.
Tako ćemo kopirati i zalijepiti.
>> Pa zapravo, na kvizu, sve to kod da smo do sada je napisano
zapravo daje za vas.
No, što bi vjerojatno i dalje znam kako ga napisati.
Da.
>> PUBLIKA: Vaša kuća između ta dva.
>> JASON Hirschhorna: Boom.
To bi trebao ići tamo, zar ne?
Dobra odluka.
Pa opet, sve ovo je zapravo šifra s obzirom na vas na stvarni kvizu.
No, to je zabavno pisati, a vi treba znati kako ga napisati.
Dakle, ovo je mjesto gdje trebate pokrenuti svoj kôd.
Što trebamo napisati ovdje?
>> Žao mi je, moram promijeniti Naziv ove datoteke.
Tako smo ga spremili u. HTML datoteke, Ne u. PHP datoteke.
Te stvari bi značilo ništa u. PHP datoteke.
Dakle, mi smo u. HTML datoteku.
Što je prva stvar Trebam napisati?
Želim staviti neke PHP Kod u HTML.
>> Publika: PHP, poput drugog mrkve i upitnik PHP, zar ne?
>> JASON Hirschhorna: Velika.
A kako ću završiti to?
>> Ivanković: S upitnikom.
>> JASON Hirschhorna: To je super.
To je prvo što mi je potrebno ako želim staviti neke PHP kod ovdje.
>> PUBLIKA:. Mislio sam PHP file moglo potrajati HTML.
>> JASON Hirschhorna: Da.
. PHP datoteke može potrajati neko HTML i prikazati.
To je bio moj bad.
Samo sam pokušavao imitirati ono što je bilo na kvizu.
>> OK, ispričavam se zbuniti.
Da, practice.HTML.
Sada ćemo staviti Neki PHP kod u.
Što je prva linija PHP kod trebam napisati?
Ja ću proći kroz ovaj niz i čine ga u tablicu.
Da.
>> PUBLIKA: Možete koristiti ni za H petlje ili za petlju.
>> JASON Hirschhorna: U redu, što se želite koristiti?
>> Publika: Ja bih koristiti za petlju.
Jer, i onda ti znak dolara I jednako 0-zarezom dolar
potpisati i manje od dva.
I onda zarez i dolar potpisati i plus plus.
>> JASON Hirschhorna: Kako napraviti znate koristiti 2?
>> PUBLIKA: Budući da su dva asocijativne nizove unutar veća
asocijativni niz.
>> JASON Hirschhorna: Dakle, velika stvar je Ne suradnik polje.
Velika stvar je samo normalna polje.
No, u pravu si, postoje Dva asocijativne nizove
unutar našeg šireg polja.
Zato koristite dva.
Osjećam se nelagodno uz pretpostavku da oni su 2, pa ono što je način za pisanje
to bez pretpostavku da su 2?
>> PUBLIKA: [nečujan]?
>> JASON Hirschhorna: OK, kako pišeš da?
>> PUBLIKA: foreach znak dolara TFS ili kao znak dolara TF.
>> JASON Hirschhorna: U redu, tako da za svaki TFS što TFS, želim, sada
opet, ima moj stol.
Dakle, tko mi može dati Sljedeći linija koda?
>> Publika: Ispis, a zatim u citati, nosač tr kraj
Nosač, kraj citata.
Krajnji zagrade, zarez.
>> JASON Hirschhorna: OK, i Što je to učiniti?
>> Ivanković: To će reći, novi redak.
To će staviti tag za novi red.
>> JASON Hirschhorna: Točno, to PHP, kao i razgovarali smo o ranije - to
PHP će se ocjenjivati, a zatim to će se ispisati na ovim podnijeti
stol za vuču, a zatim da je HTML će se ocjenjivati.
Mi samo kopirate ovo HTML imali smo ovdje.
Da.
>> PUBLIKA: [nečujan]?
>> JASON Hirschhorna: Žao mi je?
To je upravo ovdje.
Jesen 2012.
Ne gledaj na odgovorima, ajmo to riješiti zajedno.
Tako smo tiskati stolni red.
Dakle, vjerojatno ste u swing stvari.
Koja je sljedeća linija Kod moramo napisati?
Assam, daj mi sljedeći redak koda.
>> PUBLIKA: Morate ime TF-a.
TF otvorene zagrade navodnik ime zatvorene zagrade.
>> JASON Hirschhorna: Daj mi svoje ime.
>> PUBLIKA: Morate ispisati da.
>> [ubačenih GLASOVI]
>> JASON Hirschhorna: OK, kako ću ga ispisati?
>> [ubačenih GLASOVI]
>> JASON Hirschhorna: Ja sam nedostaje nešto sada.
Što sam ja nedostaje?
>> PUBLIKA: Morate znak dolara.
>> JASON Hirschhorna: Što ostalo mi je promaklo?
Sve što smo do sada tiskana je tr.
>> PUBLIKA: Zatvorite tr nakon njega.
>> JASON Hirschhorna: Dakle, trebamo zatvoriti tr poslije.
Koji vidi ono što mi nedostaje na liniji 16?
Da, Anna.
>> PUBLIKA: Morate otvoriti td i vitičastim zagradama.
>> JASON Hirschhorna: A gdje su Ne možemo staviti vitičastim zagradama?
>> PUBLIKA: Oko imena TF.
>> JASON Hirschhorna: Kao što je ovaj?
>> Publika: Da.
I onda zatvoriti TD.
>> JASON Hirschhorna: Kao ovo?
>> PUBLIKA: Trebate li dvostruki citat ocjene naprijed u vitičastim zagradama?
>> JASON Hirschhorna: Ovdje?
Ne, ne znaš.
Dakle, to je točno.
Da.
>> Ivanković: Pa razlika između toga i encatenating s točkicama je, ako
koristite točkice, morao bi imati pod navodnicima, onda dot,
onda dot -
>> JASON Hirschhorna: Točno.
Kažeš da postoji krajnji način pisanja to tako.
Koji operater ulančavanje u JavaScriptu?
>> PUBLIKA: znak plus.
Zaboravio si staviti kovrčava braće vratiti.
>> JASON Hirschhorna: Velika.
A tu je još jedna linija koda nedostaje.
Tko mi može dati zadnju liniju koda si mi nedostaje?
>> PUBLIKA: Samo točno istu stvar, Upravo s kuće umjesto imena.
Velik
>> JASON Hirschhorna: Velika.
I vaš sintaksa je upravo prava stvar za dobivanje stvari u izvanredni niz.
Dakle, u stvarnom kvizu, što su zapravo dao do ovdje.
Tako je ovaj broj je dao vama.
Sve što je za pisanje su to četiri linije i ne zaboravite
zatvoriti stol oznaku.
Vi dečki zapravo učinio Sve to i još više.
Da.
>> Ivanković: Pa to bi bilo funkcionalno Isto ako ste upravo imali da su svi u
jedna velika ispis poziva, zar ne?
I onda samo konkateniraju što dalje, i tako dalje?
>> JASON Hirschhorna: Kao ovo?
>> Publika: Da.
To jednostavno ne bi izgledalo dobro, ako ste bili gleda na to kad si inspekciju
element na Vašoj web stranici, zar ne?
>> JASON Hirschhorna: Slažem se.
Ako sam opterećen ovu web-stranicu, bi li se mogli vidjeti ovu PHP kod, ikad?
>> Ivanković: Ne.
>> JASON Hirschhorna: Ne.
A zapravo, ja ne bih.
>> Ivanković: Ovo nije HTML, zar ne?
Dakle, možda ćete biti u mogućnosti -
>> JASON Hirschhorna: Dakle, ovo bi PHP se ocjenjuju strani poslužitelja.
PHP uvijek analizira strani poslužitelja, tako vi ste u mogućnosti vidjeti PHP kod nikad.
>> PUBLIKA: Ali ćeš moći vidjeti rezultat od otisaka.
>> JASON Hirschhorna: Točno.
I to iskreno ne bi mogli staviti sve na kocku.
Moglo bi ga oblikovati lijepo za vas, ili možda ga staviti na jednoj liniji.
Nejasno.
Ali, da, dobro pitanje.
>> PUBLIKA: Kako to da je bez teksta Osvjetljavanje
svaki od PHP naredbi?
Jer Sjećam vidim da.
>> JASON Hirschhorna: Zato što je to . HTML datoteke ovdje na vrhu gore.
Postoji li ići.
>> Ivanković: Ako smo učinili početni metodu sa za petlje, zar ne, ako smo
želio pristupiti TFS, mi bi učiniti TFS bracket 0 nosač, zatim
[Nečujan]?
>> JASON Hirschhorna: Vi bi -
Kažeš da za for petlje, što će učiniti u znak dolara TFS zagrada 1
ili ja, zar ne.
Ili znak dolara i zatvoriti nosač a zatim uglata zagrada
dvostruke navodnike, da.
>> OK, izvrsno.
Imamo još jednu brzu jedan.
Sedam minuta, pa želim ići preko ovoga.
Ovo je još jedan primjer.
Mi smo sada potpuno drugi jezik.
>> Imamo neke HTML koda.
To je neka vrsta male na ekranu, ali Želim vam da pogledate kroz nju stvarno
brzo, i može li mi netko reći, ako su se učitati ovu web stranicu,
ono što ću vidjeti?
Opišite sve o ova web stranica.
Noah?
Što bih ja vidjeti?
>> PUBLIKA: Kod na prednjem kraju Google s osjećajem za tekst i
submit gumb.
>> JASON Hirschhorna: A što bi gumb reći?
>> Ivanković: Podnijeti.
Oh, traži.
Žao mi je.
>> JASON Hirschhorna: To će reći pretragu.
Zapamtite, ime.
Što ćemo koristiti naziv?
Ovaj naziv atributa, što je da se koristi za?
>> [ubačenih GLASOVI]
>> Ivanković: To je njegovo ime za kada je kliknuo?
>> JASON Hirschhorna: To bi mogao biti.
No, ono što mi je općenito vidjeti - zašto dajemo ovo ime reda?
Zašto nam je to vidio?
Da.
>> Ivanković: Ne da postanu index od super globalne varijable?
>> JASON Hirschhorna: Da, u pravilu, kada Ovaj obrazac će podnijeti, a onda gdje
će to podnijeti?
Ono stranica?
Noah, što stranici bi to podnijeti?
>> Ivanković: Nisam siguran.
>> JASON Hirschhorna: Gdje mogli smo ga pronaći?
Gdje ste pronašli ono što stranica se podnosi?
Što linija koda?
>> PUBLIKA: Obrazac action.
>> JASON Hirschhorna: Točno.
Akcija.
Tako da podnosi stranici za pretraživanje.
Backslash pretraživanje.
Dakle, to je točno.
Što metoda?
>> PUBLIKA: Get.
>> JASON Hirschhorna: dobiti.
Točno.
Tako smo pročitali.
To će biti oblik.
Vi ste upravo pravo.
Dvije stvari o obliku, naslov stranica a na vrhu će biti Google.
>> Dakle, ovdje su dva pitanja trebali biti u mogućnosti odgovoriti o ovoj stranici.
Ako se to HTML živi na ovoj web stranici i Korisnik unosi bug u ovaj tekst
Polje upravo ovdje, ono što će se URL Korisnik pronaći sebe nakon
podnošenja obrasca?
>> Dakle, moramo ovo ovdje.
Ja ću se vratiti ovu stranicu, ipak.
Pisat ću ovaj prvi dio.
Može li svatko vidi ovamo?
OK, Mario, što mislite da znate?
Ono stranica?
>> PUBLIKA: Kosa crtica pretraživanje.
>> JASON Hirschhorna: Idem premjestiti ovdje.
OK, backslash traži pitanje Mark q jednako bug.
Svatko ima drugačiji prijedlog?
Da.
>> Pa kako ćemo to?
Pa, vidjeli smo to i prije.
I što je smislio ovo ranije.
Bio si u pravu, Noah, koji action nam govori ono što
stranica ćemo.
>> Također znamo što metoda.
Radimo dobiti.
A razlika između GET i POST je da se prikazuje u URL-u
i poslije ne.
Dakle, ako sam pisao komentar upravo u metoda, što bi bilo drugačije?
>> Ivanković: To bi samo biti udarac za pretraživanje.
>> JASON Hirschhorna: To bi Samo treba srezati pretragu.
Ništa ovdje će se dogoditi.
Ali zato što je se, URL prikazuje se na sljedeći način.
Prvo smo vidjeli upitnik i vidimo ime i vrijednost.
Kažu da je bio jedan drugi tekst polje i Dao sam mu ime r i sam unos
vrijednost, gusjenica.
Što bi to sada izgleda?
Imam još jedan tekst polje, dajem naziv r i vrijednosti gusjenica.
>> PUBLIKA: Nakon bara ne bi se znak za struju gusjenica.
>> JASON Hirschhorna: To je Ne Ampersand.
>> PUBLIKA: Ili samo ono što i simbol.
>> JASON Hirschhorna: Da, nema.
Bio si u pravu, bio sam u krivu.
To je poput g.
>> PUBLIKA: Caterpillar.
r jednaka gusjenicu, žao.
>> JASON Hirschhorna: Ima li nema r tamo?
>> Ivanković: Ne, ne postoji.
>> JASON Hirschhorna: Razgovarat ćemo o tome da je nakon predavanja.
To je točno.
Pa i točna.
I onda bi mogao imati više od njih, a oni će svi biti povezani tako
zajedno s tim i.
Dakle, to je točno.
>> Postoji još jedno pitanje.
Skicirati ovaj HTML-a DOM, počevši s dokumentom.
Mogli smo to učiniti u dvije minute.
Mi ćemo to učiniti ovdje.
Ja ću se vratiti na ovu stranicu.
U redu, možemo početi s dokumentom.
>> Što je sljedeće?
Dakle, kada ste čitanja kroz -
>> PUBLIKA: HTML.
>> JASON Hirschhorna: HTML je sljedeći.
Mi ćemo ići oznaku po oznaku.
Ono što je nakon HTML?
>> Ivanković: voditelj.
>> JASON Hirschhorna: Head.
Ono što je nakon glavi?
>> PUBLIKA: Naslov.
>> JASON Hirschhorna: Naslov.
A naslov je vrijednost Googlea, ali ja ne idem
pišu da je u za sada.
OK, gdje se tijelo ide?
>> PUBLIKA: Također dolazi off od HTML.
>> JASON Hirschhorna: Točno.
Tijelo se skida odavde.
Da li se svi vidjeti zašto to je slučaj?
Vjerojatno bi trebao biti u stanju shvatiti ovo, previše, čak i ako sam nije imao
ovo lijepo udubljenje.
>> Udubljenje na neki način daruje, , ali možete vidjeti da je glava tag ima
bio zatvoren, što mi znači vjerojatno Ne može ići dolje.
Moramo se vratiti do god bio u pravu prije glavi
tag, ili ispod toga.
Mi smo čak i uz glavu oznaku.
>> I u tijelu ide oblik.
Pod obliku, postoje dva ulaza.
OK.
To je sve što imam.
Kviz 1 je sutra.
Tako sam uzbuđen za vas dečki.
To će biti udar.
>> Ako imate -
>> PUBLIKA: [PLJESAK]
>> JASON Hirschhorna: Oh prestani, prestani.
Ali ne, ja se šalim.
Ako imate bilo kakvih pitanja, zar ne nakon sekcije, ja ću biti izvan.
Ako imate bilo kakvih pitanja večeras, slobodno nazvati, e-mail, gchat,
Nosač me golub.
Sretno sutra.
Imaju prekrasan zahvalnosti pauzu, ako ja ne vidjeti prije toga.
I ja ću vas vidjeti nakon Dana zahvalnosti u utorak za naše finale
poglavlje stranka ikad.
>> PUBLIKA: [nečujan].
>> JASON Hirschhorna: Velika.
OK, ja ću vidjeti momci naprijed tjedno, ili u dva tjedna.
I sretno sutra.