JASON HIRSCHHORN: Welcome, mindenki, hogy a 10. hétre. Ez egy izgalmas hét, mivel holnap Quiz 1, amit kap hogy a második. Ma részben fogunk menni mint bizonyos forrásokat a kvíz, és a akkor fogok válaszolni bármely és minden kérdés, amit a srácok. És végül véget Némi gyakorlat problémát. Tudjuk tölteni az egész rész válaszolok. Tudjuk tölteni az egész rész megy át a gyakorlat problémákat. Mi majd csak kitölti a térben és időben van. Szóval, hogy ezt a listát minden héten, de ez különösen fontos ezen a héten. A tanuló, ha nem megkezdődött, oh boy. De remélhetőleg már megkezdődött. És megy keresztül az anyagok és a források szerepel itt. Én nagyon ajánlom számos ilyen. Különösen, egyetemi jegyzetek hihetetlenül fontos és hasznos. A study.cs50.net nyújt nagy alapozó sok a témákat is kiterjed. Meg is van néhány nagy gyakorlatban problémákat. És akkor, a Google nagy is. Én nem tudom, mit akarsz használni azt. De a Google is. Érje el nekem, ha bármilyen kérdése, megjegyzése vagy problémája. Nézd át a felülvizsgálati ülésén diák tegnap este. Vagy, ha van egy kis ideje, nézze meg a videót. Ők biztosítják a sok hasznos anyagok és információk. És próbálja fedezni ha nem az összes, sok A téma, amit már lefedett, és hogy lehet látni a kvíz. Apropó a kvíz, hogy lesz holnap. Ez 75 perc hosszú. Sokan közületek szed 1 órakor, és néhány van figyelembe, hogy 5:30-kor. Mert az idő szedi, és a helyre visszük, hogy győződjön meg arról, nézd meg a dokumentumot A CS50.net honlapján. Ne feledje, hogy akkor kap egy 8 1/2 11 lap magával viheti. Gyakran az emberek nem használják ezt a lap alatt egyáltalán a teszt. De tényleg, ez egy hihetetlenül hasznos vizsgálat eszköze. Így összerakva azt a lapot, amit Töltöttem talán három vagy négy óra csinálsz, amikor tanultam a CS50, és ez egyszerűen a leghasznosabb úgy tudtam tanulmányozni a kvíz. Tehát akkor is, ha egy másik ember tanulmány útmutatók, hogy nézd meg, és használni referenciák, én nagyon ajánlom hogy a saját tanulmány útmutató, amivel a cucc együtt. Ez tényleg segít tanulni az összes anyagot. Végül, de nem utolsósorban ebben a szakaszban, miután a teszt holnap van egy több előadás - jövő hétfőn. Van még egy rész, nem a következő Kedd hálaadás előtt, de a Kedd után. Fogunk találkozni, valamint a végső búcsú party és csinál valami jó dolog, hogy nektek izgatott további vizsgálatok a számítástechnikában. Van még egy projekt, még egy tisztességes, még egy hackathon. Mi közeledik a vége CS50, ami izgalmas - hanem az, ha te, mint nekem, egy kicsit szomorú. Mielőtt továbblépnénk, van valakinek bármilyen kérdése van amit már lefedett eddig? Oké, menjünk át néhány kérdést hogy van a kvíz és témák talán fedezni. Tehát ez egy lista, hogy én raktam össze. Ez egyáltalán nem teljes, de remélhetőleg felrázza a memóriát, ha néhány kérdést bármelyik téma, vagy ha bármilyen kérdése van gyakorlatban problémák vetélkedők az elmúlt években. Volt egy pár kérdést, amelyek e-mailben nekem, de azt akarom, hogy távol tartja magát azokon a második. Van valakinek bármilyen kérdése van, probléma, hogy nem értik, válasz, hogy nem értik hogy minket el? Avi. Közönség: tudod csak megy át DOM és Ajax nagyon gyors? Mint, amit tudnod kell, vagy kellene megérteni őket? JASON HIRSCHHORN: fogok válaszolni Általában ezt a kérdést, mit én tudni kell adott témáról x? Mert van egy olyan érzésem, sokan fognak kérdezni, hogy vagy kíváncsi, hogy az. Tehát amennyiben a téma szereplő előadás, vagy részben, vagy study.cs50.net, a probléma meg, akkor ismernie kell azt. Szóval nem kell tudni, hogy minden típusú A címke, ami elérhető a HTML vagy minden típusú attribútum vagy tulajdonság tud adni valamit CSS. De ha látta, hogy egy előadás például ha látta, hogy a probléma meg, akkor ismerős lehet vele, különösen a dolgok, amiket látott előadás. Tehát beszéltünk a dokumentumot objektum modell egy kicsit rész, inkább előadás. Meg kell ismernie azzal, hogy sok belőle. És meg kell ismernie a Ajax ugyanolyan mértékben. Soha nem látott hihetetlenül fejlett vagy bonyolult példa Ajax, így akkor nem fog kérni csinálni valami hihetetlenül bonyolult. De lehet, hogy megkérdezte, hogyan tudom hogy egy Ajax hívást jQuery? Melyik az, amit láttam egy számot idők előtt, mind a felülvizsgálja ülésen, előadás, és ez csak két-szerű sornyi kódot. Szóval ez az, amit meg kell ismernie kell. De ismétlem, az összes ezeket a témákat, ha láttad, hogy előtt, ez fair játék. És lehet, hogy kérni - nyilván vagyunk akartam kérdezni dolgokat még nem látott. Kódolás, amit még nem látott. Ami nem jelenti azt, hogy nem látta az eszközöket megoldani hogy a probléma előtt. Láttad ezeket az eszközöket. Például, Kvíz 1, ha meg kell kódot strlen. Még nem kódolt strlen előtt. De tudod, hogyan kell használni a for ciklus, tudod, hogyan kell használni, ha a feltételek. Tudja, hogyan kell írni a változók C. Ez lesz ugyanaz a dolog itt. Nem fogod fel kell kérni, hogy nem valami, amit még nem látott, de a akkor lehet kérni, hogy, mint, tedd valamit együtt egy új módon, vagy megoldja a különböző típusú probléma. Sajnos ez nem volt jellemző, hogy a kérdés, de nem tudok válaszolni a minden egyes témában, amit nem, vagy nem kell tudni. De, bocs, az utolsó dolog, hogy a. Van töltött lényegesen több időt A linklisták, mint mi az Ajax. Nem használ Ajax a probléma meg. Az egyik központi jellemzője, hogy probléma meg volt linklisták. És mi töltött sok időt előadás és részben használja. Így esély Link lista jön több Gyakran a teszt, mint Ajax lesz. Vagy a kérdés, hogy köze van a kapcsolat lista lesz több pontot ér. Így természetesen a fókuszálás és a szűk az a dolog, hogy több valószínű, hogy jöjjön fel, mert van több időt töltött velük. OK más kérdés? Igen. Közönség: Mehetünk, hogy kapjon a anonim függvények JavaScript? Én egy olyan kis zavaros róla. JASON HIRSCHHORN: Tehát JavaScript - Próbálok arra gondolni, hogy én lehetne írni ezt - úgyhogy tulajdonképpen megnyitni ezt a kódot. Tehát ez a kód, hogy mi volt a múlt héten. És láttad ezt korábban, ha voltak itt részben a múlt héten. Vagy láttál valamit ehhez hasonló korábban. De nézd meg az első sorban. Így elkezd - mindenki látott ilyet. Ha azt szeretné, hogy egy kis JavaScript kódot, tedd belsejébe, feltételezve, Ön a jQuery. Ez azt mondja, nem csinál semmit amíg a dokumentum betöltve. És akkor, Curt, látod itt csinálunk ilyesmit - funkció nyitott paren, zárt paren. Tehát nem ad ez a funkció egy nevet. Nem fogunk meghatározni ezt a funkciót állítólag fut, majd a ez egy csomó idő. Mi csak azt mondja ez a dokumentum Már tart a funkciót. Egy pár dolgot csinálni. És mi nem akarjuk tölteni az időt így ez a név, vagy mentse el a örökre. Csak azt akarjuk futtatni néhány dolgot. Így egy névtelen függvény sort Az erre a célra szolgál. Amikor nem fogja használni valamit újra és újra, így nincs szükség hogy ez a név - csak akarjuk használni, ha - akkor csak azt a funkciót, a Például ebben az esetben, és te csak meghatározó valamit, ami adhatna egy nevet. Mint, tudtuk húzni ezt a funkciót ki és adja meg a nevet, majd hívja, hogy működik itt. De nem kell, mert nem akarnak időt pazarolni, hogy ez egy nevet vagy pazarlás valami a névtérben. És látni fogod, hogy sok. Például, azt látjuk, hogy a sokat ebben kódot, de láttad ezt korábban, amikor rákattint valamit - futtatni ezt a fajta kód. Tudtuk meghatározni a kódot, hogy szeretnénk futtatható kattintunk, ebben az esetben, az azonosító, a külön funkció majd futtassa ezt a funkciót. De ebben az esetben, mi csak kihagyom ezt a lépést, és a mozgó be itt és csak azért, hogy meghatározzák minden , hogy azt akarjuk, hogy megtörténjen, és nem ad neki egy nevet. Ez még mindig lehet, hogy nem válaszolt a kérdésre. Közönség: Nem, nem. Úgy értem, azt hiszem, csak nem igazán értem, miért lenne a működnek egyáltalán, mégis. Mert nem is hívott. Nem igazán van neve. JASON HIRSCHHORN: Ez a funkció a értelemben, hogy egy sor olyan intézkedést, mint akkor valósult meg a funkciót. És ezért hívjuk hogy névtelen funkciót. Nem fogjuk, hogy ez a név. Nem fogunk vesztegetni próbál a nevét, de mi igen. Anonymous funkciók, akkor mindig ad egy nevet. Így például, a kód itt, tudtuk tenni ezt a kódot belsejében funkciót, majd hívja ezt a funkciót itt. Ehelyett azt mondjuk, nem megyünk bajlódni vele. Mi csak fog írni hogy minden rendben van. Ez olyan, mint néha, ha írsz négy hurok C - srácok már láttak ilyet - talán iterációjával keresztül forloop a i értéke 0-ra. I-nél kisebb strlen. Vagy mész keresztül néhány tömb, mentheti array i indexet néhány változó. , És használja a változót. Szóval nem kell átírni array konzol Én újra és újra és újra. És ez a fajta, mint egy dummy változót. Ez nem szolgálja sokkal más célra, mint hogy a kódot egy kicsit tisztább és könnyebben olvasható. Hasonló funkciója van. Csak azért, hogy egy kicsit könnyebb, de funkcionálisan nincs különbség. Van, hogy a kérdésére? Közönség: Igen. JASON HIRSCHHORN: OK .. Mario? Közönség: Tegnap gyakran tesz funkció zárójelben esemény. Jelent ez valamit? Vagy ez a dolgok, mint hogy ők ezt document.ready funkció esemény. JASON HIRSCHHORN: Láttuk ezt, és megint, ezek a kisebb dolgok, Valószínűleg nem akarom, hogy töltenek túl sok időt. Mert néha nem akarom az embereket kap kiakadt, hogy nem Hallottam ezekről a dolgokról, hogy sok. De beszélgettünk egy kicsit arról, eseménykezelőkkel. Tehát valami történik, majd a ez a funkció kerül végrehajtásra. És akkor mi is szeretnénk tudni, néhány részletet arról, hogy mi történt ebben az esetben. Szóval szerintem vissza a probléma meg 4.. Ez talán a legegyszerűbb módja annak, hogy Megértjük, hogy a kitörni. Volt egy kódot - mint egy esemény fog történni, de esemény sok mindent jelent. Ha azt is jelentheti, az egér kattint, is jelenti, hogy megüt egy nyíl gombot, et satöbbi, satöbbi. De minden mentett Ez az általános nevezett dolog eseményeket. És akkor azt mondhatjuk, a Ebben az esetben ez a dolog? Vagy ez esetben, ha ez a dolog? Vagy milyen történt azzal, hogy az esemény? Szóval ez az, amiért létre, hogy a változó ott, hogy megmentse, extra információkat arról, hogy mi történt pontosan, hogy fogsz akar használja a funkciót. De ismétlem, ez talán az egyik kevésbé fontos dolog, hogy szuper ismeri. OK, milyen más kérdés, hogy az emberek voltak, vagy akadályt, hogy már találkozott átnézése során? Majd vissza a listára. Mi a gyakorlat során vetélkedők, ha ember vett a már? Mik voltak problémák megbotlott titeket? Tudom, hogy az a tény, hogy a tavalyi kvíz volt, nagyon nehéz. Közönség: Meg tudod magyarázni, mit SQL injekciós támadás? JASON HIRSCHHORN: OK, nagyszerű. Tehát beszéltünk erről egy kicsit. Van egy előadást a biztonságra. És ismét, ahogy azt már korábban említettem, ez egy félre. De akkor csalódott a kvíz ha elolvassa néhány kisebb két pont kérdés, és te, mint, amikor volt, amit valaha is megtudjuk, hogy? Minden olyan dolog ezekben az előadások , hogy nem gondolja, hogy szükséges, hogy tudja, vagy ha lehet elkendőz mert nem volt köze a probléma meg, azok lesznek valószínűleg jön ismét a kvíz. Tehát, hűvös, szórakoztató dolgok, amit csak gondolta David azt mondta, hogy élvezik, ő azt mondta, hogy az Ön számára, élvezni, és hogy csak a szuper izgatott a tanulás minden van tanulni a számítógép-tudomány. Azok a dolgok is jönnek fel a vetélkedők. Tehát, még ezek a kis dolgokat, hogy nem közvetlenül kapcsolódnak a problémára be, ahogy a srácok ismerik a Kvíz 0, valószínűleg jön. És ez egy jó példa valami. Tehát egy SQL injekciós támadás az, amikor hogy bizonyos információkat a felhasználó és a szeretnénk helyezze a táblát SQL INSERT utasítás, de nem sanitize a bemeneti idő előtt. Tehát nyilván láttunk SQL utasításokat. Én csak nyit - menjünk - megyünk a felülvizsgálat - Azt hiszem, ki fedezte? Azt hiszem, Samala tettem. Így juthatunk - Közönség: Hol találtad ezt? JASON HIRSCHHORN: Tehát, ha megy CS50.net, vetélkedők, és akkor lépjünk át és kap diák a felülvizsgálati ülésén. De látható, ez egy jó példa Egy SQL injekciós támadás. Vesszük néhány információt a felhasználó és adnak nekünk egy szöveget, aztán szeretnénk beszúrni a húr az adatbázisba. Általában fogunk sanitize hogy bemenet, ami azt jelenti, van néhány karakterek veszélyesek. Például az SQL húrok, ilyen idézetek - egy vagy dupla idézőjel - jelent valamit. Azt jelenti végén ezt a fonalat itt. És így ha a felhasználó ad egy vagy kettős idézet, ezek lehetnek próbálja elgáncsol SQL lekérdezést, és be néhány rossz dolgot bele. És ha igen, hogy ők is szert irányítást az adatbázis vagy némi dolog, amit nem akarsz tőlük. Tehát ezért, amikor vesszük SQL lekérdezések, hogy fertőtlenítse a bemeneti előtt üzembe azt az adatbázist, amely azt jelenti, hogy elkerülje ezeket a karaktereket. Majd beszélünk, hogy a második. De a hosszú történet rövid, a SQL injection támadás, ha nem teszed, hogy - ha nem gondoskodunk a bemeneti adtak meg, mielőtt a adatbázis, akkor, mint látod le Itt, futtasson egy lekérdezést, hogy valójában - raktak a kódot ide, és ez a SELECT LINE ide kiválasztja mindent az asztalról, függetlenül hogy mi a jelszó kap. Mert van a vagy 1 értéke 1. Tehát alapvetően, hosszú történet rövid, oly módon, hogy átvegye az adatbázisban. A kérdés tehát az, srácok, ez ahol p készletek 7 ugye sanitize minden A bemenetek az SQL lekérdezéseket? Hol ezt a lépést történt? Hol megakadályozni SQL injekciós támadások történik p szett 7? Igen. Közönség: Crypt? JASON HIRSCHHORN: Tehát nem volt kriptában. Mi nem ezt teszed ezt adott probléma meg, de ez történik a lekérdezés funkciót. Igazából azt írta, hogy az Ön számára, és vigyázott a fertőtlenítő bemenet az Ön számára. De az elmúlt években, a diákok voltak írja a bemenetek saját. A p szett 7, sok van - hadd nyissa meg egy másik fájlt. Szóval, észre fogod venni, itt a sok az emberek, a probléma meg a 7., nem hívja Ezt a funkciót a szálakat. Ez a funkció, htmlspecialchars, újra - ez a szöveg lehet, hogy bizonyos dolgokat hogy HTML mást jelent. Mint egy pár, a négyzet, vagy egy szög konzol jelent valamit a HTML-ben. És így ha nyomtatni, hogy ki a screen vagy ha csak úgy, hogy az, és nyomtatni, hogy ki, hogy a HTML, amelyek tenni valamit, akkor nem várható. Tehát htmlspecialchars megy át mindazok karakterek speciális találkozó és menekül őket. Így lesz a nyomtatott ki, mint a szöveg szeretné látni, nem pedig csavarja fel a HTML. Úgy hívják ezt a funkciót a fejlécben. És egy csomó ember elfelejtette, hogy hívja ezt a funkciót a kódot írtak. Így például, ha egy állomány volt egy nevet hegyes zárójel benne, és elfelejtette hogy ezt a funkciót, hogy a szög konzol volna dobták ki, milyen a HTML nézett ki. De hívás ez a funkció menekülni hogy így valóban nyomtat ki, mint egy hegyes zárójel, és nem dobja ki a HTML-kódot. Ugyanebből az okból láttunk, néha, vágás előtt, idézőjelek a printf sorban azért, mert nem akarjuk, hogy a idézőjelek le a húr. Azt akarjuk, hogy nyomtassa ki ki a képernyőn. Szóval ez ugyanaz a gondolat. Van, hogy a kérdésére? Közönség: Kind of. JASON HIRSCHHORN: Van egy nyomon követése? Közönség: Azt hiszem, az SQL injection támadás köze van, hogy az? Nem értem, hogyan a kettő összefügg. Miért tennél a specialchars? JASON HIRSCHHORN: OK, így az SQL injekciós támadás az, amikor beadja az injekciót néhány rosszindulatú húrok valakinek a programot, és csak úgy, és fuss Az SQL lekérdezés sztring amit adott nekik. Mint látható itt, hogy problémás lehet. Tehát ahogy megakadályozni ellen, hogy szedése szöveg, hogy azok meg - így ez a szöveg itt - és sanitize azt. Ha menekülni a dolog, hogy potenciálisan problematikus. Szóval nem értelmezi őket, mint valami ez jelent valamit. És egy példa az, hogy a HTML ezt a funkciót. Szóval ez ugyanaz a gondolat itt. És én csak megmutatja a többi példát, amikor már láttam ezt az ötletet korábban. Menekülés felhasználói nyomtatás előtt ki, hogy a képernyőt vagy üzembe belsejében egy SQL utasítást. Közönség: Tehát ebben az esetben a felhasználó A Messiás a programozó. JASON HIRSCHHORN: Igen. Az összes ilyen biztonsági támadások, ez mindig általában a felhasználó, vagy a valaki, megpróbál rendetlenség veled, a programozó. És ezek olyan módon tudja megakadályozza ellenük. Közönség: Szóval van egy kérdésem a hash függvények. Kvíz 1. 2011-től két kérdések egyoldalú hash-eket. És én csak gondoltam, hogy ez mit jelent. JASON HIRSCHHORN: OK, melyik kvíz? 2011-ben? Közönség: Igen. Közönség: Quiz 1? Közönség: [hallható]. Ez olyan, mintha kivonatoló a jelszót. Ez nem hozta a dolgokat - JASON HIRSCHHORN: Mi az oldal volt az? Közönség: Azt hiszem, 9 vagy 10, vagy mindkettő. JASON HIRSCHHORN: Rendben, megy előre, Curt. Lehet válaszolni, miközben nézünk. Közönség: Azt hiszem, beszél a kivonatoló egy jelszót. Mint, ha valaki belép egy jelszót, akkor kapcsolja be a kódolt dolog. Ez a jelszó hash, ami más, mint a hash függvény tesz valamit a hash tábla. JASON HIRSCHHORN: Lássuk csak. Hadd húzza fel, amit adni a választ. Aztán megyünk rajta. Tehát Curt adott egy nagyszerű példa Az egyirányú hash. Mikor láttunk ilyet, akkor hogy a jelszót, és kapcsolja be - ne feledd, a p szett 7, valaki esetleg Van egy jelszót, csak jelszó, de aztán ez lesz titkosítva a néhány igazán hosszú dolog. Az egyirányú hash azt jelenti, hogy nagyon könnyű megy az egyik módja annak, hogy a másik, de nagyon nehéz menni a másik vissza. És, hogy tudd, mikor ellenőrzi az emberek jelszavak probléma szett 7, akkor veszik a - Így például, mondjuk akarták változtatni a jelszót, kérje meg őket a régi jelszót. Elvette a régi jelszót. A titkosított azt. És akkor, mint a két titkosítási ahelyett unencrypting az eredeti Egy, mert ez tényleg nehéz menni az úton. Igen. Közönség: Milyen mélységben működik a megértése TelNet kell? JASON HIRSCHHORN: Ha már említettük, röviden előadás, csak egy rövid megértést. Ismét vissza a választ Avi kérdésére - Minél több dolog jön, annál valószínűbb, ez van, hogy szuper ismerik őket. Ha még csak előjön előadás, ez csak egy helyen. De ha jönnek fel az előadás, részben, és a probléma meg, akkor Valószínűleg kell szuper ismerik őket. Szóval volt egy kérdést korábban a - IS elbukott 2010 - Kvíz 1., hadd húzza fel - ezt a kérdést stack és a sorban állás, amit tett kiad egy tisztességes kis időt beszél az előadás, sőt bár mi nem igazán valaha hit, hogy a részben. Tehát ez a kérdés így egy sor A parancsok és azt kérdezi, hogy mi lesz nyomtatva ebben az esetben. Tehát ez egy teljesen ésszerű kérdés hogy lehetne kérni tőled fiúk, és akkor a srácok kell tud válaszolni. Akkor miért nem nézel ki 30 másodpercet, majd ha valaki el akarja javaslatot tesz a választ engem, akkor megyünk rajta. Rendben, aki választ kérdésre 27? Igen. Közönség: Van 1, 2, 3, 3? JASON HIRSCHHORN: Így van. 27 jelentése 1, 2, 3, 3. Akkor nézzük meg, hogy hogyan van az a. Először is, azt mondjuk, hogy s sorban, mi lesz a nyomtatott? Tehát egy q első, first out. Láttunk már ilyet. Láttuk, hogy a kép az emberek vár az Apple Boltba, hogy vásároljon néhány termék. Az első emberek a az első embereket. Az első dolog, amit a sorban az első a dolgokat. Tehát, ha nyomja valami egy sorban, akkor nyomja meg a 1, akkor a pop 1. Pop csak azt vegye ki. Ebben az esetben, csak úgy valamit. Vesszük meg az első dolog, ez egy 1. Tehát teszem dolgot lenyomó ide. Ez már nem a mi sorban. Aztán nyomja a 2 és 3, valamint hogy elsül az első dolog. Ismét, mert ez egy sorban. Így kapunk egy 2, akkor tesszük a másik 3. és hívja pop újra. A 3 az első. Aztán volt egy csomó más dolog, és a hívás pop. De ismétlem, mivel ez a sor, első, first out. Mi vegye ki az első dolog, amit valaha is be Ez a mi 3. És, ebben az esetben, mi nem aggódni az összes többi dolog. Szóval ez, ha ez a sor. Bármilyen kérdése van a sor? A halom más. Mi az a mozaikszó van megértéséhez a stack? KÖZÖNSÉG: utolsó be, első ki. JASON HIRSCHHORN: LIFO, azt hiszem. Utoljára, first out. Így láttunk példát a verem A tálcák egy étkezőben. Bármi tálca tetején lesz felvette. És akkor, ha az új tálca jön ben, akkor kap fel a tetején. És minden, ami a tetején lesz felvette. Tehát ezek tálcák alján hatalom ott egy darabig. Ebben az esetben ismét fogunk húzni az egészet. Mi nyomja az egyik, így az egyik az első a sorban. És pop valamit le. És már csak egy dolog van, így haladunk 1 idelent. Aztán fel a 2. és a 3. mi pop valamit ki. De ismétlem, mivel ez a sor - vagy ez egy rakás, hanem - vesszük akármi is volt az utolsó. Bármi is a múlt jön ki először. És 3. az elmúlt. Így tesszük a 3-oda, majd a teszünk egy másik a 3. és a mi pop valami újra. Végül, tesszük a 4, 5, 6., és a 7., és itt a pop. És mivel ez egy stack, veszünk bármi került az elmúlt és írni azt le itt. Így a végén, 1, 3, 3, 7. Van valakinek bármilyen kérdése van halom vagy sorok, vagy ez a példa? OK. Menjünk vissza a listához témák. Nem így, ezen a módon. Milyen egyéb kérdése van, emberek? Közönség: Nem tudom, hogy milyen fontos ez az, de én zavarba a különbség a különböző típusú nyelvek, mint a jelölés, össze, értelmezni. JASON HIRSCHHORN: Ez egy jó kérdés. Azt hiszem, ez kissé fontos, úgyhogy menjünk rajta gyorsan. A nagy nyelvek láttunk eddig C, PHP és a JavaScript, mind A programozási nyelvek. HTML, ahogy említettem, nem egy programozási nyelv. Ez egy jelölőnyelv. És akkor mi van CSS, ami szintén nem egy programozási nyelv. Azt is láttam SQL, ami nem egy programozási nyelv sem. Tehát SQL lehetővé teszi, hogy írni lekérdezések az adatbázis. HTML egy leíró nyelv. Ez határozza meg, hogy a dolgok épül. És CSS lehetővé teszi, hogy a stílus a dolgokat. Ez talán a mértékben, amit tudni kell a három. De sokkal érdekesebb, hogy a szám ki a különbség a C, PHP, és a JavaScript. Tehát az egyik legnagyobb különbség, ahogy említettem, az, hogy hogyan ők össze, vagy bármi egyenértékű az. Tehát C össze. Mi mindig fut a fordító. És akkor hol van a hiba futtatásakor a C fordító? Ahol nem mutatja meg a hibákat a kódot? Honnan tudod, hogy van egy hiba a kódot C? Közönség: Ez azt mutatja, a terminálon. JASON HIRSCHHORN: azt mutatja, hogy a terminál, mint te összeállítása. És ha vannak hibák, az ténylegesen nem fordíthatjuk le. Szóval tudom, hogy vannak hibák a jobb el, idő előtt, mielőtt még futtatni a kódot. Persze, lehet, hogy fut a kódot, és kap egy szegmentációs hiba, de ez valószínűleg azért, mert te valami ostoba logika dolog. De a kódot technikailag minden helyes és lehet futtatni. Tehát C kód kerül össze idő előtt. Mi a helyzet a PHP kódot? Hol voltak hibák a php-kód? Honnan tudom, hogy volt hiba a PHP kódot? Közönség: Run idő? JASON HIRSCHHORN: Igen, ha állna, akkor fog futni a PHP kódot a hátsó. És akkor kiírja a képernyőre. Lehet látni néhány dolgot a tetején, de akkor is látni, mint valami narancs, csúnya asztalra. És ez ad egy sorszámot és mondjuk, bla, bla, bla, ez a cucc nem működött. Tehát PHP értelmezi soronként és a kiszolgálón fut. És akkor az eredmény küldött neked. Remek. Végrehajtott a szerver soronként majd küldött neked. És ha van egy hiba, akkor küldök akkor a hiba, de lehet, hogy ütött néhány dolgot idő előtt. Néhányan talán már dolgozott, de a később, néhány dolgot esetleg nem nem működött. Mi a JavaScript? Hol láttad JavaScript hibák? A p be 8, ha van egy hiba, honnan tudtad? Hol lenne megjelenni? Közönség: A konzolon az alján. JASON HIRSCHHORN: A konzol alján. Ez is megadja a sorszám, és ez jelenik meg az alján. És a JavaScript nem került végrehajtásra a szerveren. JavaScript-t küld a felhasználó számítógépére, aztán amikor eljött az ideje, hogy futtassa a JavaScript A JavaScript volt fuss sorról sorra a ügyfél, az Ön oldalán. Nem a szerver, a kliens oldalon. És hasonlóképpen, ez volt fuss soronként. És ha kapnánk egy hiba, akkor jelenik meg az alján. Hasonlóképpen a PHP, egy részét esetleg végre, és akkor lehet, hogy egy hiba később. Továbbá, egy kicsit eltérően PHP, ha van egy JavaScript hiba - azt mondják, hogy nem a helyes kód egy figyelmeztető ablak - meg tudná tartani fut a program. A figyelmeztető doboz nem működik, de a A program rendben lesz. Csak lehet, hogy a funkció nem sikerül. Tehát van néhány, a legnagyobb különbség szempontjából az, hogy ezek a nyelven, vagy hogy a programkód írsz valóban értékelni. Vannak még egyéb különbségek tekintve - a legnagyobb különbség láttunk szempontjából változók a különböző nyelveken. Így tud valaki adni nekem egy különbség változók közötti A három nyelven? Igen. Közönség: A C, ők szigorúan gépelt. A másik két, ők lazán gépelt. JASON HIRSCHHORN És mit jelent ez? Közönség: Hogy C, akkor be kell jelenteniük hogy milyen típusú a változót, mikor Ön kijelenti, változó, mint interbool vagy char. JASON HIRSCHHORN: Kiváló. C-ben, mindig volt, hogy a változó típusát. És mi nem igazán keverje típusok. Lehet nem egész szám plusz egy string. De mint láttuk ezekben más nyelveket, hogy tényleg mix típusok és akkor soha nem kell adni valami típus, soha. Szóval, honnan tudjuk, hogy a dolgok változó PHP és JavaScript? KÖZÖNSÉG: PHP, elkezdenek egy dollár jel. A JavaScript, mikor kijelenti, őket, van, hogy egy bárban. JASON HIRSCHHORN: Így van. Így PHP, kezdik egy dollár jel. A JavaScript, akkor kell, hogy legyen bár, bár néha ők valójában nem kell, hogy legyen bár. De ez a helyes. Szóval ez egy nagy különbség változók között. Azt hiszem, ezek talán, ki a fejem tetején, a két legnagyobb ezek a különbségek három nyelven. De, igen. Közönség: és hatályát C változó korlátozódik a kapcsos zárójelek, ahol a másik is, olyan, mint, elhal, ha ez a funkció csak de egyébként, ez - JASON HIRSCHHORN: Így van. Tehát köre némileg eltér a C. A Emlékszel, kapcsos zárójelek határozzák meg hatálya változók. Tehát, ha azt meghatározott belül egy, ha állapot, ami belül van a for ciklus, A változó csak ott létezik. A JavaScript, ha a változó megadása belül egy, ha a feltétel - belül a for ciklus - ez lesz léteznek ezt a funkciót, de ez nem létezik kívül ezt a funkciót. Tehát köre egy kicsit rugalmasabb A JavaScript és a PHP. Ez a válasz a kérdésre? OK, más kérdés? Tehetünk még négy percig A kérdésre, akkor mi ugrik be kódolás. Közönség: Tudunk bemegy Ajax és beszélni, mi az? JASON HIRSCHHORN: Beszélj Avi után. Azt kérte, hogy a kérdés korábban. Közönség: Az én hibám. JASON HIRSCHHORN: Semmi gond. Közönség: Mi is pontosan a JSON? JASON HIRSCHHORN: Mi az a JSON? Mi a kérdés? Közönség: Csak nagyon gyorsan, a különbség nyomtatás és echo PHP-ben. JASON HIRSCHHORN: Miért nem a Google a különbség a nyomtatott és az echo? Enyhe különbség. Nem nagy ügy. De akkor feltétlenül google, és az, hogy kapsz egy jó válasz. JSON, valószínűleg nagyobb üzletet. Állványok JavaScript Object Notation. És amikor láttuk JSON használ? Ha láttad - miért is tudod a szót JSON? Mikor láttad? Közönség: Amikor kezdtek tőzsdei árfolyamokat a finanszírozáshoz. JASON HIRSCHHORN: Szóval látta , mikor kezdtek tőzsdei árfolyamokat a finanszírozáshoz. És miért nem látod? Közönség: Amikor mi voltunk letöltést minden olyan információt, jött, ebben a formátumban. JASON HIRSCHHORN: Tehát akkor kap - igen. Rajta. Közönség: [Nem hallható] információ ki egy tárgy? JASON HIRSCHHORN: Mindkettő össze a válasz keresünk. Akarsz információt ez a másik weboldal. És akkor remélem, hogy amikor hogy ezt az információt, nem lenne mutatni, hogy valamilyen típusú szabványosított formátumban. Mindenki ismeri: A vesszővel elválasztott értékek. Exportálhatja egy Excel táblázatot vagy bármilyen táblázatkezelő, mint a lista vesszővel elválasztott értékek. És a vesszőket osztani minden a különböző területeken. JavaScript Object Notation - JSON - egy másik típusa a szabványosított elrendezése a dolgok. És ez sokszor hogyan letölteni információt a Ajax lekérdezések. Tehát ebben az esetben megvan a Yahoo honlapján. Visszatérnek a dolgokat minket egy JSON objektumot. És tudjuk, mert szabványos, milyen ez fog kinézni. Így tudjuk halad végig a tömböt ami visszatért hozzánk, a tömb objektumok visszatért hozzánk. Nekünk tudni kell hozzá a kulcsokat, de általában kapsz dokumentáció a honlapon, amikor te elragadó néhány JSON jelölés számukra. Hasonlóképpen, akkor JSON kódol egy tárgy. Szóval van egy funkció JSON aláhúzás kódol. És így, hogy egy tárgy, amely , amit létrehozott, JSON kódolni, és adja át valamit mást, ha azt szeretnénk, hogy. És JSON dekódolására is létezik hasonló célra, vagy a másik cél. Közönség: Nem kell tudnunk kódolás a hash táblák és megpróbálja? Vagy csak meg kell érteni hogy ők használják, fogalmilag? JASON HIRSCHHORN: Tehát, emeld fel a kezed ha nem a hash tábla p készlet 4 egy link listát. Vagy o készlet 5. Szóval ez volt az emberek nagy többsége. P készlet 5, 6, ki tudja. Réges-régen. Így a legtöbb tetted hash táblák linklisták. És mivel ez valószínűleg a nagyobb közös megközelítés, és mivel töltöttünk sok időt csinál kapcsolat listák és hash asztalok, akkor valószínűleg nagyon ismeri, hogyan kell a kódot a hash tábla és egy linket listát. És ha úgy gondolja, vissza a problémára be, nem volt igazán olyan kemény, mint amire számítottál. És nem volt sokkal kevesebb kódot, mint amit várt. Azt mondanám, tudnia kell, hogyan kell kódot a hash tábla, vagy egy link listát. Nem azt kell kérni, hogy a feltétlenül, de meg kell biztosan tudja. Továbbá, ha megnézzük a korábbi vetélkedők, van már egy csomó kérdésekre írásban funkciók linklisták vagy kétszeresen láncolt listák. Úgy tűnik, hogy jöjjön fel minden egyes évben. Jobb be a Link lista jobb törölni egy linket listából, igaz be egy kétszeresen láncolt lista, satöbbi. Szóval, úgy érzem, elég kényelmes mondván, tudnia kell, hogy. A próbálkozás, azt mondják, meg kell biztosan tudom, hogyan működik, és talán ad néhány pszeudokódja hogyan kódot, és állítsd be. De nem lenne a legrosszabb dolog a világ, ha nem tudja, hogyan kell kódot, hogy a C lenne nagyszerű, ha tudta, hogyan kell a kódot, hogy C-ben, de azt hiszem, valószínűleg pszeudokódját egy próbát lenne a leginkább szüksége lenne tudni, hogy egy próbát. Közönség: Extra hitelt? JASON HIRSCHHORN És ugyanezt, ha bemegy bináris kereső fák, lehet, hogy szükség van - és láttad a múltban, már sokat - tudod, hogyan bináris kereső fa működik. Akkor valószínűleg tudja, hogy az egyiket fel pszeudo kódot. Hanem azért, mert az emberek nagy többsége nem tett, hogy a probléma meg, azt mondanám, hogy ez valószínűleg kevésbé Fontos, hogy tudja, hogyan kell a kódot és létrehozott egy fa, mint ezt. Van még kérdés? Is, akkor kérje meg őket, az egész ahogy végig néhány probléma. OK, fogunk lépni. Hagyja, hogy a csúszda most. Apropó fák, ez az első kérdés már a srácok. Mivel ez a probléma. Azt mondanám, hogy ez nagyon valószínű, akkor kap a probléma, mint ez a kvíz kérve, hogy kódolni valamilyen betét, törlés, keresés, az egyik típusú adatstruktúra láttunk. Hogy jön minden évben és mi töltött sok időt a második felében félév megy át ezeket az adattípusokat. Tehát most, amit meghatározott a csomópont egy bináris keresést fa. És szeretném, hogy nem kap bináris kereső fa kezdődik ebben node csillag gyökér, töltse ki az végrehajtását az alábbi függvénynek, amely történetesen a Keresés funkció. És csináld nélkül rekurziók. Szóval azt akarom, hogy írjon két funkció. Egyik ezt a rekurzió, egy ezt nem rekurzív. És ne feltételezzük, hogy a gyökér nem lesz null. Így keres a egész i a fa kezdve gyökere, és szükségünk van hogy megírjam ezt a rekurzív és iteratív. Igen. Közönség: Szóval azt akarod, hogy return true ha megtaláljuk, és hamis, ha nem találják. JASON HIRSCHHORN: Honnan tudod? Honnan tudja ezt? Közönség: Én kérdeztem először, de én feltételezve, mert azt mondja bool at az elején a funkciót. JASON HIRSCHHORN: Így van. Azt mondja bool, így nem is kell mondani, hogy mit vár, hogy visszatérjen mert azt mondja, ott. De ez így van. Vissza, igaz vagy hamis. Tehát mielőtt elkezdi, azt ajánlom, , ha nem ismerik a bináris kereső fák, gyorsan rajz egy képet róla, hogy a megértés, jobbra. Az is segít, ha írásban a kódot, és ellenőrzése. Ismét, még nem kell, hogy sok időt a kvízt, hogy tegyenek meg mindent a dolgot kérünk, hogy nem. Így írásban pszeudo kódja nagyon hasznos. És általában adni a - Ha a pszeudokód tökéletesen helyes, ez általában 50%-os a kérdésre. Tehát ez nem egy kemény és gyors szabály, de ha csak írni pszeudokódban, és ez helyes, ez általában 50%-os. Szóval azt mindig ajánlom - ha sürgeti az idő, vagy akkor is, ha csak most próbálják kitalálni - kezdve a pszeudokód. És végül, ha meg tudná írni ezt a mind a C, az fantasztikus lenne. Szóval vessünk három percig dolgozni a program. És akkor fogunk írni pszeudokódját mert csak egyszer, majd fogjuk kódot is rekurzívan majd iteratív. Ha bármilyen kérdése van, úgy érzi, szabad emeld fel a kezed. Örülök, hogy sétálni, és válaszolni rájuk mielőtt elkezdjük, mint egy csoport. Engedje meg, folytatódik, és megyünk pszeudokódja rekurzív változata ezt, és akkor majd kódot is. Így egy rekurzív függvény kell két dolgot. Ez lehet a kérdés, hogy akkor lehet kérni. Kell két dolgot. Ki tudja emelni a kezét, és mondja meg, amit a két dolog egy rekurzív funkció van szüksége? Definíció szerint ez két dolgot. Mi ez a két dolog? Új kezét. Igen, Alden. Közönség: Szóval nem vagyok teljesen biztos benne, hogy ez a terminológia, de - JASON HIRSCHHORN: örülök te emelni a kezét. Közönség: Szüksége van egy alapeset, és szüksége van egy rekurzív lépés. JASON HIRSCHHORN: Tökéletes. Szüksége van egy alapeset és rekurzív lépés. Szóval, mi az alapeset itt? Közönség: F gyökér egyenlő értéke null. Bocs, csak pszeudokódja, ha ez null. Ha a root null. JASON HIRSCHHORN: Ha a gyökér null. Ez kiváló. Ez a mi alapeset. Ez az, amit mi fogunk hogy ellenőrizze minden alkalommal. És alapeset a első dolog, amit tennie. Ha bejön az alapeset, kész. Most arra van szükség a rekurzív hívás, és én hajlandó fogadni, szükségünk van egy pár rekurzív hívások itt. Mert ez egy fa, és mehet többféle módon. Tehát, ha a gyökér null, jók vagyunk. Mit javasol? És most fogom kezdeni kiált A srácok, mert tudom, hogy a srácok Mindenki tudja ezt. De Annie, mit kell A következő sorban az? Mi van, ha megtaláltuk? Mit csináljunk? Közönség: ha megtaláltuk? JASON HIRSCHHORN: Vagy mi kell, hogy - add nekem a pszeudokód a vonal, ahol megtaláltuk. Közönség: Ha az i értéke a root i? JASON HIRSCHHORN És akkor mit csináljunk? Közönség: vissza igaz. JASON HIRSCHHORN: Remek. Tehát, ha én az i - ó, ők mindketten az i. Ez lesz zavaró. De ha az én vissza igaz. Ez talán a következő dolog, amit meg kell tennie. Van értelme. OK, most már nem történt meg a rekurzív hívás mégis, mégis, mert a rekurzív hívás nevezné ezt a funkciót újra. Szóval, mi legyen a következő vonal pszeudokódja legyen? Anna. Közönség: A bal szélen. JASON HIRSCHHORN: egyedi, mégis. Ez egy bináris kereső fa, akkor mi nem ellenőrzi a bal oldalon jár? Közönség: Tehát node - Sajnálom, gyökér. Aztán nyíl balra. Node, node, sajnálom. Én nem olvasni rendesen. Úgy hívják csomópontot, nem igaz? JASON HIRSCHHORN: Ez lesz az úgynevezett gyökér ezzel a feladattal, de akár úgy. A bal oldali - Igen? KÖZÖNSÉG: Ha nem egyenlő i, akkor fogunk hívni A funkció újra? JASON HIRSCHHORN: Így van. Ha nem egyenlő i, megyünk hogy hívja a függvényt újra. De melyik oldalon a fa megyünk hívni a függvényt újra? Közönség: A bal oldalon. JASON HIRSCHHORN: Nem vagyunk mindig fogja hívni a bal, ha a nem egyezik meg. KÖZÖNSÉG Ó, sajnálom. Hívd a jobb oldalon. JASON HIRSCHHORN: Szeretnénk tudni, konkrétan, de - ne feledd, a bináris kereső fa, mindent a bal oldali kisebb. Minden a megfelelő oldalán nagyobb. Tehát csak nem - Igen, megy előre. Közönség: Ha ez kevesebb, mint én, akkor - ha ez a bal oldalon - JASON HIRSCHHORN: Tehát, ha ri-nél kisebb - Tehát, ha a szám kevesebb, mint én, Milyen mellékhatások akarunk menni? Közönség: akarunk menni a jobb oldalon. JASON HIRSCHHORN: akarunk menni - hadd dolgozzon egy gyors fa. Ha ez 5, ez a 3 lesz. Tehát, ha ri kevesebb, mint öt, amit oldalon akarunk menni? Közönség: Bocs, mi? JASON HIRSCHHORN: A szám kevesebb, mint ahány vagyunk néztem most. Közönség: Ó, akkor szeretnénk menni a bal oldalon. Igen. Bocsánat. JASON HIRSCHHORN: Pontosan. Nem gond. A bináris kereső fa, minden az, hogy kisebb a bal oldalon, nagyobb az, hogy a jobb oldalon. Tehát, ha a szám kevesebb, mint i vagyunk ellenőrzése - mert látod a csomópont, van egy i - akkor akar menni balra. És ez könnyű. Mi ez a másik vonal a pszeudokódja meg kell írni? Carlos? Közönség: Ugyanaz, csak kapcsolja azt egy nagyobb jel és menj jobbra. JASON HIRSCHHORN: Tud azt mondják, hogy még egyszer? Közönség: Ha a szám nagyobb, mint én, menj jobbra. JASON HIRSCHHORN: Kitűnő munkát a pszeudokód. Engedje meg, hogy ezt a valós kódot. És ismét, ez pszeudokódja fog talán neked, mert megfelelő, 50%-át ebben a kérdésben. De ez pszeudokódját fordítja az egyik egy, lényegében a kódot. Így hát ezt a C. Ki tud adni nekem az első sorban a kód? Ami azt illeti, először, mielőtt én hogy hadd álljon le - Közönség: Lenne egy kérdésem. Miért húzni a vonal, amit adtam? JASON HIRSCHHORN: Mivel Nem tudtam írni. Nem tudom. Igazad van. Ez a vonal legyen ott. OK, itt van a funkció. És hadd álljon le, azt is, a meghatározása a csomópont. Mi történik, ha nem levelet typedef? Nem tudja valaki? Közönség: Nem volna fordítani. JASON HIRSCHHORN: Lenne össze, igen. Közönség: Vajon ez csak kijelentem, egy Például ahelyett, hogy ez egy új típus akkor kijelentik több esetek? JASON HIRSCHHORN: Tehát ez nem tudja, - nem lenne az csak kijelentem egyféle. Lehet még, hogy egy csomó csomópontok. Közönség: De nem is kell levelet struct node minden alkalommal? JASON HIRSCHHORN: Így van. Meg kellett volna írni struktúra csomópont minden alkalommal, ahelyett, hogy csak csomópontot. De typedef, ha csak levelet csomópont minden egyes alkalommal. OK, aki még nem adott - Igen, Avica. Közönség: Ha a root egyenlő az egyenlők null, return false. JASON HIRSCHHORN: Nagy-és ez a mi alapeset. Következő sor kódot. Valaki, aki nem adott nekem egy sor kódot még? Igen. Közönség: Root nyíl i egyenlő egyenlő i. Majd vissza igaz. JASON HIRSCHHORN: Remek. Következő sorban? Igen. Valaki más? És akkor megy a következő. Közönség: else if gyökér nyíl i kevesebb, mint visszatérek nevű függvényt találni gyökér - JASON HIRSCHHORN: Elnézést. Közönség: Return lelet gyökér rámutat balra vessző i. JASON HIRSCHHORN: Tehát, ha RI nagyobb mint a dolog, a fa, azt akarjuk, hogy megy a bal oldalon? Közönség: Nem, volt, hogy bekapcsolt. JASON HIRSCHHORN: Melyik az? Közönség: No, igen. Van egy kisebb jel van. JASON HIRSCHHORN: Jobb, ha a ri kevesebb, mint amit ez a gyökér - jelenlegi gyökér - akkor akar menni balra. És mi az utolsó sorban, igaz? Közönség: Alapvetően ugyanaz a dolog, kivéve a kapcsoló, vagy nagyobb, mint egyenlő, és kevesebb, mint balról jobbra. JASON HIRSCHHORN: Kiváló. Van valakinek kérdése erről? Így néhány más dolog, ami volt helyes az, hogy a lehet a-ltiff. Találd ki, technikailag, ezek közül egyik sem Nagyon is meg kell-ltiff. Is, ott valószínűleg csak egy esetben ide. Szóval ez talán az utolsó eset. Nem is kell, hogy a-ltiff. De talán jó írni azt, hogy világos. Igen. Közönség: Szóval nem gondolom, hogy a kvíz - ha teszünk a hibák, például a A szintaxis - kis szintaktikai hibákat - hogyan, hogy kap hozott a kvíz? JASON HIRSCHHORN: Általában a kvíz, kis szintaktikai hibát vagy kisebb stílus hibák nem veszít pontokat. Tehát, ha elfelejtette a pontosvessző Itt lenne az OK gombra. Ha elfelejtette bezárni ezt a zárójel, lenne rendben. Hatalmas szintaktikai hibákat, amelyek megváltoztatják a funkcionális értelme a kód drámaian, akkor lehet, hogy levették pontot. Vagy általában csak osztályozó akkor -e vagy sem a kód funkciót, sőt - nem a design annyira, és nem az a stílus. Nézzük most kódot iteratív változatát találni. Így lesz elég hasonló, de Vannak természetesen lesz néhány fontos különbség. Azonban a pszeudokódja valószínűleg menni - mi is venni egy sort a pszeudokódját, és kitaláljuk, mi a vonal ebben az esetben. Tehát iteratív verziószám, Mit gondolsz, Julia, amennyiben az első sorban? Közönség: Ismét iteratív logikai, meg kell, hogy hozzanak létre egy for ciklus, nem igaz? JASON HIRSCHHORN: OK. Közönség: Tehát mint k, az x értéke 0, x kevesebb, mint i. Vagy nem, x kisebb, mint a mérete a fa. JASON HIRSCHHORN: a fa. Szóval nem igazán tudom, a méret a fa, és nem igazán tudjuk hányszor tudunk menni, akkor mi a más típusú hurok, hogy lehet jobb ebben az esetben? Közönség: Ha a más? JASON HIRSCHHORN: Ha más nem lehet egy hurkot. Tehát mi az a típusú hurok mi csak addig, amíg néhány esetben teljesül? Mi csak más típusú hurok C mellett a for ciklus? Közönség: Bár a. JASON HIRSCHHORN: Bár, pontosan. A while ciklus, nem kell tudni, hogy - a while ciklus, és a hurok tehet a pontosan ugyanaz a dolog, de a szép dolog körülbelül egy while ciklus nem kell arra, hogy milyen nagy a fa. Így fogunk menni, amíg mi? Közönség: Amíg nem egyenlő a méret - JASON HIRSCHHORN: Nos, ez nagyon hasonló a mi rekurzív ügyben. Így - Közönség: Míg a gyökér Én nem egyenlő i. JASON HIRSCHHORN: Ez nagyon közel van. Míg a gyökér i - Próbáljuk meg. Nem hiszem, hogy [nem hallható] ahol a gyökér én nem egyenlő i. Lehet, hogy meg kell változtatni, hogy egy kis kicsit, de úgy hangzik, mintha ez elég jó, most. Így fogjuk csinálni. Továbbá, ne feledje, nem tudjuk vállalni, egy a kérdés. Nem feltételezzük, hogy a gyökér nem lesz null. Szóval, mit gondolsz a nagyon első dolog, amit meg kell tennie, hogy? Közönség: Csak nem ugyanaz dolog, mint korábban. Ha a gyökér értéke egyenlő null, return false. JASON HIRSCHHORN: Remek. Így lehet null. Így akarnak szabadulni IT azonnal. És akkor mi lesz, ellenőrizze, hogy gyökér i nem egyenlő i. Tehát azt mondom, keresett a fán 3, gyökér én nem egyenlő i, most mi vagyunk a while ciklus. Mit akarsz? És ismét, ez lesz elég hasonlóan a rekurzív változat. Igen. Közönség: Szóval azt akarod, hogy halad-hatunk, vagy folyamatosan megy le a fát, amíg A gyökér nem egyenlő null. JASON HIRSCHHORN: Amíg a gyökér nem egyenlő null? Közönség: A gyökér kötőjel i nem egyenlő null. Csak a gyökér, igen. A hosszú, mint a gyökér nem egyenlő null. JASON HIRSCHHORN: Szóval azt akarod, változtatni ezt a gyökér nem egyenlő null? Közönség: Igen. Közönség: tudtuk össze Ezek, ugye? Nem kell az, ha kezdetben. JASON HIRSCHHORN: OK, ha nem - ha kombináljuk őket, így fogunk tenni míg a gyökér nem egyenlő nulla, és Ha a gyökér történetesen null a elején, mit csinálunk itt? Közönség: return false. JASON HIRSCHHORN: Remek. Így mindkét irányban valószínűleg működött volna. Ez egy másik módja, és ez egyesíti azt. De ismétlem, ha mégis akár úgy, vagyunk nem fog felszállni tervezés pont a kvíz. De ez jól néz ki. Tehát míg a gyökér nem egyenlő null, mi az első dolog, amit szeretnénk ellenőrizni? Valaki más? Null, mi az első dolog? Közönség: Ha a ri kevesebb, mint - Ó, azt hiszem, ha már találta a gyökér. Tehát, ha a root nyíl i értéke i - JASON HIRSCHHORN: Tessék? Közönség: Ha a root nyíl i értéke egyenlő i - JASON HIRSCHHORN: Mit tegyünk? Közönség: vissza igaz. JASON HIRSCHHORN: Remek. És mi a következő lépés? Jeff, mi a következő kódsort? Közönség: Ha én kevesebb, mint gyökér nyíl i, majd a gyökér egyenlő gyökér nyíl balra. JASON HIRSCHHORN: Root egyenlő gyökér nyíl balra. Szóval ez talán a legnagyobb különbség itt ebben iteratív változatot, szemben a rekurzív változat. A rekurzív verzió, A funkciót újra. Mi lesz frissítése gyökér, ha hívjuk az új funkciót. Itt mi nem hív új funkciót. Mi egyszerűen csak a frissítése gyökér ebben a funkcióban. Ez kiváló. És mi az utolsó sor kódot? Igen, Mario? Közönség: Else gyökér egyenlő gyökér nyíl jobbra. JASON HIRSCHHORN: Tessék? Közönség: Root egyenlő gyökér nyíl jobbra. JASON HIRSCHHORN: Tudnál még írni valami ilyesmit? Közönség: Fogalmam sincs. JASON HIRSCHHORN: Nem lehet. Ezt nem teheted, plusz egyenlők. OK, így ez jól néz ki. Miért nem csak ezt, hogy törölje fel. Ez jól néz ki, és ez a munka. És mi lenne kitörni. Ha a root Balra null vagy root jogot volt, null, akkor jön ide. Root lenne egyenlő null. Mi lenne kitörni a hurok, és mi volna vissza hamis. Így, amikor kitör a loop, visszatérünk hamis. És ismét, az a while ciklus tökéletes volt itt, mert nem tudjuk, hogyan nagy a fa. Igyekeztünk írni a for ciklus, de rájött, muszáj, hogy kitaláljuk, hogyan nagy, hogy idő előtt. Igen. Közönség: Ha ez nem egy bináris keresési fa lenne igazi matematikai y kell írni iteratív, nem igaz? Mint, ha ez egy fa, de nem feltétlenül - így nem volt minden kisebb a bal oldalon, és minden nagyobb, a jobb oldalon. Ez lenne igazán nehéz kell végighaladni, igaz? Mi volna, hogy mentse, ami korábban volt be a fát, és menjen vissza, és ilyesmi. JASON HIRSCHHORN: Ha ez nem egy bináris keresési fa, ha ez csak egy fa, és a dolgok nem voltak sorrendje, mint ez - és rájöttünk, korábban, amikor Anna segített nekünk, hogy így rendezett segít sokat - meg kellene, igen, mindig menteni ahol korábban. De lehet, hogy egy csomó ahol mi voltunk previouslys. Lehetne sok szülő csomópontok. Talán a legjobb módja, hogy lenne , hogy ne nyomja a dolgokat rá néhány típusú verem vagy sor. Te soha nem kell kódot ezt mert ez egy nehéz probléma. De akkor nyomja meg néhány dolgot rá egy köteg vagy a sor, majd a pop őket, és a majd értékelni őket. És van néhány dolog, ahol a te tényleg állítva, hogy a csomópontok, és majd létre, hogy, majd keresni, hogy. Ez talán a legjobb módja annak, hogy csináld. OK, bármilyen kérdése van ez a probléma? Közönség: Ez egy kapcsolódó megjegyzés. Vajon meg kell összehasonlítani futási idő a hash táblák, bináris keresés fák, satöbbi? JASON HIRSCHHORN: Valószínűleg. Tehát lássuk, hogy nagyon gyorsan. Futási idő hash table - mi a többi? Bináris fa? KÖZÖNSÉG: Link listákat. JASON HIRSCHHORN: OK, tegyük betét. Mi az a nagy O betét egy hash tábla? Mik azok a feltételezések, még van? Közönség: Te behelyezése a elején a link lista. JASON HIRSCHHORN: Valószínűleg az első feltételezés, hogy nincsenek ütközések. Ha nincsenek ütközések, majd a beszúrási idő az egyik. Ha vannak ütközések, és te Ennek külön láncolási és beillesztése elején a link lista, majd behelyezés is állandó. Ha csinálsz egy hash tábla, de van egy másik módszer foglalkozik az ütközések, mi más módszert? Mi egy teljesen más módszer foglalkozó ütközés a hash tábla? Közönség: lineáris programozás. JASON HIRSCHHORN: lineáris programozás. Így fogjuk keresd a következő nyílt helyszínen. Ez nem állandó bevezetési idő. Lehet, hogy át kell esniük az egész táblázatot, hogy a lehet nagy O n. Igen. Közönség: egyébként csak láncolt? JASON HIRSCHHORN: Megcsináltuk külön láncolás. Ez volt az első. Ez az, amit a kapcsolat listában. A fantázianév különálló kötésével. Ez lehet bármilyen típusú listaszerkezetet történetesen csinálni Link lista. Tehát még egyszer, csatolandó a hash tábla lehet állandó időt. Mi a helyzet a behelyezés a targonca sorban? Közönség: Hát nem állandó? JASON HIRSCHHORN: Itt az állandó idő. Te csak nyomja be. OK. Beillesztése, mi volt a többi közül? Egy próbát? Mi az a nagy O behelyezés egy próbát? Közönség: Hossza állandó. Hossza a leghosszabb - a hossza a szó te beillesztése. JASON HIRSCHHORN: Tessék? Várj, szóval mit hallok? Azt mondta -, mit mondtál? Mi volt a válasz, Marcus? Közönség: A hossza a szó te beillesztése a karaktereket, feltételezve, hogy ez a karakter próbát. JASON HIRSCHHORN: OK, így a hossza a szót. Majd, hogy a feltételezés, hogy ez egy karaktersorozatot. Azt mondta, valami más, mégis. Azt mondta, hossza leghosszabb szó. Közönség: Ez csak az állandó, nem igaz? JASON HIRSCHHORN: Miért ez állandó? Közönség: Mint, ha használja a nagy O jelölést, akkor nem függ a néhány dolog, már a próbát. JASON HIRSCHHORN: Szóval lenne azt mondják, hogy az állandó idő. Ez állandó behelyezésekor, és hogy azért, mert ez a gondolat - mondjuk van egy szó, ami 45, vagy egy szó, ami, hogy a 60. van egy állandó számot. És ez csak a ki konstans id. A gyakorlatban azonban ez nem lenne, Nyilvánvaló, hogy történik egy milliszekundum, pl. De azt mondják, a nagy O állandó egy próbát. És ez az egyik legnagyobb előnye. Mi a helyzet a beszúrás egy link lista? Csak egy általános, rendezett Link lista? Igen. Közönség: Volt egy kérdés. A teszt azt valaha érdeklődjön a behelyezésének időpontjával, ez négy lépésben, vagy mi? Vagy csak - amikor azt mondod behelyezés idő egy, ami csak azt jelenti, konstans id? JASON HIRSCHHORN: Igen, ők mindig kérdez, ez nagy O n? Big O log n? N négyzeten állandó. Ezek valóban az egyetlen is meg kell tudni. Mi a helyzet a beszúrás-ra sorrendje Link lista? Közönség: Volt egy kérdés - a kérdés - JASON HIRSCHHORN: Mi a válasz erre a kérdésre, igaz? Közönség: Várj, mit kérsz? JASON HIRSCHHORN: Mi az a nagy O beszúrás a rendezett Link lista? Közönség: Egy? Nincs várakozás, nincs várakozás, n. JASON HIRSCHHORN: N. mellett a kapcsolat listában. És mi volt a kérdés? Közönség: Tehát írnál o k vagy o 1 a - JASON HIRSCHHORN: Oh. Írnék o 1, valószínűleg. Volt egy másik adatstruktúra lett volna jó. Fa, bináris keresési fa. Mi csatolandó a bináris kereső fa? Közönség: be. JASON HIRSCHHORN: Szóval, mi a legrosszabb esetben bináris kereső fába? Tehát, ha történetesen kezdeni 5, és minden a szám nagyobb, mint 5, akkor megvan 5, 7, 9, 11, et cetera. Ebben az esetben, ez alapvetően csak egy link lista, és meg kell be minden az utat a végén. Szóval ez a nagy O n. Ez lehet a legrosszabb eset A bináris kereső fába. Nyilvánvaló, hogy soha nem építeni bináris kereső fa 5 a közepén, tudván, 5 lenne a legalacsonyabb szám. De lehet, ha a semmiből. Bármilyen kérdése ez, mielőtt lépni egy másik kérdésed? Ez egy jó kérdés. Szeretném tudni, hogy a nagy O - Közönség: Mi a helyzet a keresést E négy? JASON HIRSCHHORN: Határozottan azt nem a keresés és válogatás. Mi volt mindazoknak, algoritmusok, jobbra. Várj, az volt, hogy a kvíz 1? Volt, hogy fedett - ment már van, hogy kérdés Quiz 1? A nagy O futási bináris keresés beillesztés sort, buborék sort? Közönség: Igen. JASON HIRSCHHORN: Ha lenne, hogy kérdés kvíz 0, esély akkor nem hogy pontosan ugyanolyan kérdést Quiz 1. Lehet, hogy még mindig jó tudni azokat. Meg kell tudni, remélhetőleg gh már. De más logaritmikus futási valószínűleg jó tudni. A dolgok, amelyek nem tartoztak a Quiz 0-ra. Mint ezek a szereplők az absztrakt adattípusok. OK, menjünk tovább. Ez meg elég gyorsan. És ez egy új nyelv, mi nem valójában kódolt előtt. Ez a kérdés kért kódot a PHP. Ezért úgy a PHP tömb alatt. Írja PHP és / vagy a HTML kódokat, hogy azt kiad egy kétoszlopos táblázatot TFs nevek és házak. Már soha nem csináltam ilyet, ezzel a problémával. De ez nagyon ismerős mit tett a probléma meg 7. Szóval lenne hajlandó fogadni, akkor kérte, hogy kódot valamit, a PHP, hogy nagyon hasonló ahhoz, amit tette a probléma meg 7. Először is, tömb nem az adott. Milyen típusú tömb ez? Közönség: asszociatív. JASON HIRSCHHORN: Ez egy asszociatív tömb. És mi a különbség egy asszociatív tömb és egy tárgy? Közönség: Egy objektum tömb index egész számok, és az asszociatív tömb egy index egy string, vagy valami ilyesmi. JASON HIRSCHHORN: Tehát egy sor tárgy volna indexek egész számok, de egy objektumnak területeken. Azt ezeken a területeken nevek, mint a név, ház, diák. Van egy ötleted? Közönség: Nos, asszociatív tömb PHP-ben, igaz? És a tárgy van a JavaScript? JASON HIRSCHHORN: Őszintén szólva, nincs valódi különbség a kettő között. Mindkét húrok, mint a gombok és alapvetően semmit, mint az érték. Különböző nyelvek hívja az egyik dolog asszociatív tömb, egy dolog egy tárgyat. Tehát őszintén, nincs igazi a különbség, de biztosan valami szintaktikai különbségek a kettő között. Igen. Közönség: Tehát az objektum is kódolva alatt a motorháztető, mint a hash tábla, akkor? JASON HIRSCHHORN: Mit értem, kódolt a motorháztető alatt? Közönség: Azt mondták, hogy asszociatív array technikailag a hash tábla. Így az objektum technikailag is a hash tábla? JASON HIRSCHHORN: Nem megyek válaszolni a kérdésre. Hozok vissza az Ön számára, hogy a. De én nem hiszem, sem olyan, mint ezt. De, bármilyen módon, asszociatív tömb és tárgy, általában az emberek használják ezeket a kifejezések szinonimaként. Ebben az esetben, a hűvös része az használhatja kulcsokat. Strings a kulcsok, és nem csak egyszerű számokat. Szóval már beszélt ez egy ideig. Remélhetőleg néhány ember ütött kezdődött ez. Fogunk írni néhány PHP és HTML kódot, oly módon, hogy kapunk egy kétoszlopos asztal TFs nevét és házak. OK, én is szeretnék egy fejlécet sor ezen az asztalon. Így fogok kapni egyenesen ebbe. Fogunk fájl, az új, és megyünk - OK. Hogyan kezdhetek egy asztalt? Mi az a tag, Michael, kezdeni a tábla? Közönség: táblázat. JASON HIRSCHHORN táblázat. És ha nyitok egy tag, milyen van még szükségem? Közönség: A fej? Vagy, azt hiszem, osztály. JASON HIRSCHHORN Szóval, sajnálom. Tegyük fel, hogy már írt doctab, HTML, minden ilyesmi. De ha kinyitom a táblázatban tag, milyen mást kell írnom? az érvényesíteni HTML? Közönség: Csukd be. JASON HIRSCHHORN: Zárja be a tag. Hogyan írhatok egy közeli asztal tag? Közönség: Dot perjel asztalra. JASON HIRSCHHORN: Slash asztal, nagy. Talán van értelme, hogy írjon két együtt, mert az említett muszáj csinálni. OK, ha én szeretnék egy fejléc, hogyan Írok egy fejléc címekkel? Közönség: Ez kevesebb mint 10 óra közel - TR, igen. JASON HIRSCHHORN: TR? KÖZÖNSÉG: Akkor ugyanaz a dolog, A perjel, igen. JASON HIRSCHHORN: OK, és adj két oszlop. Közönség: T D? JASON HIRSCHHORN: OK. Szeretnék két oszlop. Vajon ez ad nekem két oszlopot? Hány oszlopot ez? Egy. Szóval másold ezt. Tehát tulajdonképpen, a kvíz, mind ezt a kódot hogy írtam eddig volt valóban adott neked. De akkor talán még tudják, hogyan kell írni. Igen. Közönség: A ház van a kettő között. JASON HIRSCHHORN: Boom. Meg kell menni ott, ugye? Jó ötlet. Tehát még egyszer, mind a kód valójában adott meg a tényleges teszt. De jó, hogy írjon, és tudja, hogyan kell írni. Szóval ez az, ahol szükség van hogy indítsa el a kódot. Mit kell írni itt? Elnézést, meg kell változtatni a fájl nevét. Így mentette meg egy. HTML fájlt, nem a. PHP fájlt. Ezek a dolgok nem jelent semmit egy. PHP fájlt. Így vagyunk a. HTML fájlt. Mi az első dolog, Azt kell írni? Azt akarom, hogy egy kis PHP kódot egy HTML. Közönség: PHP, mint egy másik sárgarépa és a kérdőjel PHP, ugye? JASON HIRSCHHORN: Remek. És hogyan tudom bontani ezt? Közönség: egy kérdőjel. JASON HIRSCHHORN: Ez nagyszerű. Ez az első dolog, amit kell, ha azt akarom, hogy egy kis PHP kódot itt. Közönség: Azt hittem, egy. PHP fájl venni HTML. JASON HIRSCHHORN: Igen. Egy. PHP fájlt eltarthat egy HTML és jelenik meg. Ez volt a rossz. Én csak próbáltam utánozni mi volt a teszt. OK, sajnálom, hogy összezavarni téged. Igen, practice.HTML. Most fogunk tenni Egyes PHP kódot be Mi az első sora PHP kódot írjak? Én megyek át ezt a tömböt és ez egy asztalra. Igen. Közönség: Használhatod a H ​​hurok vagy a hurok. JASON HIRSCHHORN: OK, mi akarsz használni? Közönség: Szeretném használni a for ciklus. Mert aztán meg dollárjel i értéke 0 pontosvessző dollár jel i kevesebb, mint 2. És akkor pontosvessző i dollár jel i plus plus. JASON HIRSCHHORN: Hogyan tudja használni a 2-ben? Közönség: Mivel volt két asszociatív tömbök a nagyobb asszociatív tömb. JASON HIRSCHHORN: Tehát a nagy dolog nem társult tömbben. A nagy dolog, csak egy normális tömb. De igazad van, vannak két asszociatív tömb belül a nagyobb tömb. Ezért használjon két. Kényelmetlenül érzem magam, feltételezve, hogy ők 2, akkor mi a módja annak, hogy írni ez nem képzeli, hogy ők 2-ben? Közönség: [Nem hallható]? JASON HIRSCHHORN: OK, hogyan Ön azt írja, hogy? Közönség: Foreach dollárjel TFS vagy, mint a dollár jel tf. JASON HIRSCHHORN: OK, így minden TFS mint TFS, azt akarom, hogy most újra van a tábla. Szóval, aki tud adni nekem következő kódsor? Közönség: Nyomtatás, majd idézetek, konzol tr vége konzol, Idézet vége. Zárójel, pontosvessző. JASON HIRSCHHORN: OK, és ez mit fog csinálni? Közönség: Meg fog mondani, az új sor. Ez megy, hogy a tag egy új sort. JASON HIRSCHHORN: Rendben, ez a PHP-t, mint a beszéltünk korábban - ez PHP lesz értékelni, majd ez megy, hogy nyomtassa ki ezt a fájlt a asztal kóc, majd, hogy HTML fogják értékelni. Mi csak másolja ezt HTML volt itt. Igen. Közönség: [Nem hallható]? JASON HIRSCHHORN: Tessék? Itt van. Őszi 2012. Ne nézd meg a válaszokat, Oldjuk meg együtt. Tehát nyomtatni sort a táblázatban. Szóval valószínűleg a hinta a dolgok. Mi a következő sorban a kódot kell írni? Assam, add nekem a következő kódsort. Közönség: szükség van a tf nevét. Tf nyitott zárójelet, idézőjel név zárt zárójelben. JASON HIRSCHHORN: Adj nevüket. Közönség: Meg kell nyomtatni, hogy. [Közbeiktatásával VOICES] JASON HIRSCHHORN: OK, hogyan tudom nyomtatni? [Közbeiktatásával VOICES] JASON HIRSCHHORN: Én hiányzik valamit. Mit hagytam ki? Közönség: Szüksége van egy dollár jel. JASON HIRSCHHORN: Milyen mást hagytam ki? Minden, amit már a nyomtatott eddig a tr. Közönség: Zárja be a tr után. JASON HIRSCHHORN: Tehát meg kell zárja be a tr után. Aki látja, mi hiányzik on line 16? Igen, Anna. Közönség: Meg kell nyitni a td és a kapcsos zárójelek. JASON HIRSCHHORN: És hol tesszük kapcsos zárójelek? Közönség: Around the tf nevét. JASON HIRSCHHORN: Tetszik ez? Közönség: Igen. Majd zárja be a TD-t. JASON HIRSCHHORN: Tetszik ez? Közönség: Szüksége van két idézet jelek mellett a kapcsos zárójelek? JASON HIRSCHHORN: Itt? Nem, nem kell. Szóval ez pontosan így van. Igen. Közönség: Tehát a különbség, hogy az és encatenating pontokkal is, ha a használja pontokat, azt kell, hogy legyen a idézőjelet, majd egy pont, akkor a dot - JASON HIRSCHHORN: Helyes. Tehát azt mondja, hogy van egy végső módon írom ezt így. Mi az operátor JavaScript? Közönség: A plusz jel. Elfelejtetted, hogy a zárójel vissza. JASON HIRSCHHORN: Remek. És van még egy sort kód hiányzik. Ki tud adni nekem az utolsó sor kód mi hiányzik? Közönség: Csak pontosan ugyanaz a dolog, csak a ház, hanem a nevét. Nagy JASON HIRSCHHORN: Remek. És a szintaxis pontosan ehhez a dolgok a társult tömbben. Így a tényleges kvíz, akkor valóban adott-ig itt. Tehát ezt a kódot adtak meg. Mindössze annyit kellett írni voltak ezek négy sort, és emlékszem, hogy zárja be a táblát tag. Ti valójában nem minden, és így tovább. Igen. Közönség: Így lenne funkcionálisan ugyanaz, ha csak volt, hogy a egy nagy nyomtatási hívást, nem igaz? És akkor csak összefűzött azt, satöbbi? JASON HIRSCHHORN: Tetszik ez? Közönség: Igen. Csak nem néz ki jól, ha volt néztem, amikor ellenőrzésre Az elem a honlapon, nem igaz? JASON HIRSCHHORN: Egyetértek. Ha betöltött ez a weboldal, lennék tudja, hogy ezt a PHP kódot, soha? Közönség: Nem. JASON HIRSCHHORN: Nem. És valóban, én nem. Közönség: Ez nem a HTML, ugye? Szóval lehet, hogy - JASON HIRSCHHORN: Szóval ez a PHP lenne értékelni szerver oldalon. PHP mindig értékelik szerver oldalon, így a te soha nem tudja, hogy a PHP kódot. Közönség: De azt tudja, hogy nézze meg az eredményt a nyomatok. JASON HIRSCHHORN: Így van. És őszintén szólva lehet, hogy nem helyezzük az egészet a vonalon. Lehet, formázza meg szépen az Ön számára, vagy lehet, tedd egy sorba. Nem egyértelmű. De igen, jó pont. Közönség: Hogy lehet, hogy ott nincs szöveg kiemeli a minden a PHP parancsokat? Mert emlékszem, hogy láttam ezt. JASON HIRSCHHORN: Mert ez a . HTML fájl itt a tetején. Tessék. Közönség: Ha nem az első módszer az a hurok, jobb, ha szeretett volna elérni a TFS, tennénk do TFS konzol 0 konzol, akkor [Nem hallható]? JASON HIRSCHHORN: Azt - tehát azt mondod, hogy a for ciklus, akkor tenne dollárjel TFS konzol 1 vagy én, igaz. Vagy dollárjel i záró zárójel majd a szögletes zárójel idézőjelek, igen. OK, kiváló. Van még egy gyors egy. Hét perc, így azt akarom, hogy menjen át ezt. Ez egy másik példa. Mi most egy teljesen más nyelven. Van néhány HTML kódot. Elég kicsi a képernyőn, de a Azt akarom, hogy nézze át, hogy valóban gyorsan, és tudja valaki mondani, ha én is betölteni ezt a weboldalt, amit én látok? Írja le mindent, ami ezen a weboldalon. Noah? Mit látok? Közönség: Code elején végén Google kapjanak a szöveg és a elküld gombra. JASON HIRSCHHORN: És mi azt a gombot mondani? Közönség: Küldés. Ó, keresés. Sajnálom. JASON HIRSCHHORN: Nem mondanám keresést. Ne feledje, a nevét. És mi lesz a neve? Ez a név attribútum, mi hogy használt? [Közbeiktatásával VOICES] Közönség: Ez a neve amikor valaki rákattint? JASON HIRSCHHORN: Az lehet. De mit általában látni -, hogy miért vagyunk, amely ezt a nevet sor? Miért azt látjuk, hogy? Igen. Közönség: Nem válnak index A szuper globális változó? JASON HIRSCHHORN: Igen, általában, ha ebben a formában fog benyújtani, és akkor hol lenne ez nyújt be? Mi az oldal? Noah, milyen oldal lenne ez nyújt be? Közönség: Nem vagyok biztos benne. JASON HIRSCHHORN: Hol is találunk meg? Hol találja, amit oldal azt állítja, hogy? Milyen kódsor? Közönség: form action. JASON HIRSCHHORN: Pontosan. Action. Tehát azt állítja, hogy a keresési oldalon. Backslash keresést. Szóval ez pontosan így van. Milyen módszerrel? Közönség: Get. JASON HIRSCHHORN: Get. Pontosan. Így olvassuk ezt. Ez lesz a formában. Teljesen igazad van. Két dolog az űrlapon, a cím az oldalt és a tetején lesz a Google. Tehát itt van két kérdés, amit meg kell tud válaszolni erről az oldalról. Ha a HTML él ezen a honlapon, és a felhasználó által bevitt hiba ebbe a szöveget mező itt, milyen URL lesz a felhasználó találja magát fel elküldi az adatokat? Így van ez itt. Én megyek vissza ezen az oldalon, mégis. Írok fel az első rész. Lehet mindenki látja itt? OK, Mario, azt hiszed, tudod? Mi az oldal? Közönség: Backslash keresést. JASON HIRSCHHORN: megyek mozgatni le itt. OK, backslash kereső kérdés jel q egyenlő bug. Van valakinek más javaslata? Igen. Szóval hogyan is van ez? Nos, láttunk ilyet. És akkor jött fel ez korábban. Igazad volt, Noah, hogy a akció azt mondja, amit oldal megyünk. Azt is tudjuk, hogy milyen módszert. Megcsináljuk kap. És a különbség a GET és POST az, hogy kap jelenik meg az URL-ben és az azt követő nem. Tehát, ha én írtam után ott a módszer, mi lenne más? Közönség: Ez csak legyen slash keresést. JASON HIRSCHHORN: Lenne csak lenni perjel keresést. Semmi sem itt fog történni. De mivel ez egy kap, az URL-t a következőképpen jelenik meg. Először látunk egy kérdőjel és látjuk a nevet és az értéket. Mondjuk volt egy másik szövegmezőbe, és Adtam neki egy nevet az R és I bemenet a érték, hernyó. Mi lenne ez most úgy néz ki, mint a? Én még egy szövegmezőbe, adok egy neve az R értéke hernyó. Közönség: Miután bar ha volna A jel hernyó. JASON HIRSCHHORN: Ez nem jel. Közönség: Vagy csak bármi a és a szimbólum. JASON HIRSCHHORN: Igen, nem. Igazad volt, tévedtem. Ez olyan, mint a g. Közönség: Caterpillar. r értéke hernyó, sajnálom. JASON HIRSCHHORN: Van nem r van? Közönség: Nem, nincs. JASON HIRSCHHORN: Majd beszélünk arról, hogy az óra után. Ez pontosan így van. Tehát a és helyes. És akkor is sok ilyen, és ők mind összefűzhető együtt, hogy és. Szóval ez pontosan így van. Van még egy kérdés. Vázlat ezt a HTML DOM, kezdve a dokumentumot. Megtehetjük, hogy két perc alatt. Megcsináljuk itt. Megyek vissza ezen a weboldalon. OK, kezdjük dokumentumot. Mi a következő lépés? Tehát, ha olvasod keresztül - Közönség: HTML. JASON HIRSCHHORN: HTML mellett. Fogunk menni tag címke. Mi után a HTML-t? Közönség: Head. JASON HIRSCHHORN: Head. Mi után a feje? Közönség: Cím. JASON HIRSCHHORN: Cím. És a cím értéke Google, de én nem fogok azt írja, hogy a most. OK, hol a test megy? Közönség: Szintén jön ki a HTML. JASON HIRSCHHORN: Pontosan. Karosszéria jön le itt. Tudja mindenki, hogy miért ez a helyzet? Akkor valószínűleg tudja kitalálni ezt ki is, még akkor is, ha nem volt ez a szép behúzás. A behúzás a fajta adja el, de látható, hogy a fej címke van lezárták, ami azt jelenti, hogy valószínűleg nem megy le itt. Meg kell, hogy menjen vissza, hogy bármilyen igaza volt, mielőtt a fej tag, vagy a, hogy. Vagyunk még a head tag. És a test alá megy formában. Forma alatt, két bemenet van. OK. Ez minden, amim van. Kvíz 1. holnap. Annyira izgatott vagyok a srácok. Ez lesz a robbanás. Ha - Közönség: [taps] JASON HIRSCHHORN: Ó állj, állj. De nem, csak viccelek. Ha bármilyen kérdése van, a jobb szakasz után, én leszek kint. Ha bármilyen kérdése van ma este, nyugodtan hívja, e-mail, gchat, postagalamb engem. Sok szerencsét holnapra. Van egy csodálatos Hálaadás szünet, Ha nem látom, hogy ezt megelőzően. És én látlak Hálaadás utáni kedden a végső rész party valaha. Közönség: [hallható]. JASON HIRSCHHORN: Remek. OK, én találkozunk a következő hét vagy két hét alatt. És sok szerencsét holnapra.