JASON Hirschhorn: Xoş gəlmisiniz, Həftə 10 hər kəs. Bu maraqlı həftə, çünki sabah biz əldə olan Quiz 1, ikinci üçün. Bu gün bölümü, biz getmək üçün gedir bəzi viktorina üçün resursları, və sonra hər hansı və bütün cavab verəcək sual uşaqlar var. Və biz nəhayət sona çatacaq bəzi təcrübə problemləri. Biz bütün bölmə sərf edə bilər suallara cavab. Biz bütün bölmə sərf edə bilər təcrübə problemləri üzərində gedir. Biz yalnız doldurmaq üçün genişlənəcəkdir zaman və məkan biz var. Mən hər həftə bu siyahı qoymaq, lakin bu həftə xüsusilə vacibdir. Əgər varsa, öyrənilməsi üçün boy oh, artıq başlayıb. Amma inşallah siz artıq açılmış etdik. Və siz materialların keçir və resursları burada verilmişdir. Mən tövsiyə edirəm Bu bir sıra. Xüsusilə, mühazirə qeydlər olduqca mühüm və faydalı. The study.cs50.net təmin edir bir çox böyük primer mövzular biz əhatə. Bu da bəzi böyük var problemləri təcrübə. Və sonra, Google çox böyükdür. Mən sizin üçün istifadə istədiyiniz nə bilmirəm. Həm də, Google istifadə edin. Əgər varsa mənə çatmaq sualınız, şərh və ya narahatlıqlar. Nəzərdən iclasında üzərində baxmaq Son gecə slaydlar. Və ya, bir müddət varsa, video baxın. Onlar faydalı bir çox təmin material və informasiya. Və cəhd edin və əgər bütün, bir çox əhatə edir biz əhatə və sizə etdiyiniz mövzular viktorina görmək bilər. Yarışmanın danışan ki, sabah olacaq. 75 dəqiqə uzun. Bir çox 1 onu atırıq saat, və bəzi 5:30 onu alaraq. Bu dəfə siz onu alaraq və etdiyiniz Siz qəbul etdiyiniz yer, əmin olun Siz sənəd kontrol Bu CS50.net ana. Bir 8 1/2 almaq bilər unutmayın 11 hesabatı ilə etmək. Oftentimes, insanlar bu istifadə etməyin viktorina ərzində bütün hesabatı. Lakin, həqiqətən, bu inanılmaz edir faydalı təhsil vasitədir. Belə ki, hesabatı birlikdə qoyaraq Mən yəqin ki, üç və ya dörd saat sərf Mən CS50 üçün təhsil alan zaman etdiyini və ki, asanlıqla ən faydalı idi Mən viktorina üçün öyrənmək bilər yol. Siz insanların digər belə, hətta təhsil baxmaq təlimatlar və istinadlar kimi istifadə, yüksək gəlir qoyaraq, sizin öz təhsil guide edilməsi birlikdə stuff. Bu, həqiqətən, sizin öyrənmək kömək edir material bütün. Bu bölmədə ən son deyil, viktorina sabah sonra bir var daha mühazirə - bazar ertəsi gələcək. Bir daha ikibölməli, növbəti var Şükran əvvəl Çərşənbə axşamı, lakin Çərşənbə axşamı sonra. Biz final birlikdə görüş olacaq partiya və bəzi sərin bunu goodbye Siz uşaqlar haqqında heyecan almaq üçün hər şeyi kompüter daha sonrakı araşdırmalar. Bir daha layihə, bir çox var ədalətli, daha bir Hackathon. Biz CS50 başa çatmaq edirik, olan maraqlı deyil - həm də, siz kimi əgər Mənə bir az kədərli. Mən hərəkət əvvəl, hər kəs yoxdur haqqında hər hansı bir sualınız nə Biz bu günə qədər əhatə etdik? OK, yaxşı bəzi suallar üzərində gedək Siz viktorina və mövzular var ki biz əhatə edə bilər. Belə ki, bu mən birlikdə qoymaq bir siyahısı. Bu, heç bir vasitə ilə tam, lakin inşallah yaddaş itələmək olacaq siz əgər Bu hər hansı bir sualınız haqqında suallarınız mövzular, və ya əgər sınavlar təcrübə problemləri son illərdə. Mən ki, bir neçə sual var idi mənə e-poçt, amma off keçirmək istəyirəm ikinci üçün bu barədə. Heç bir sualınız varmı, problemlər onlar başa düşmədim, onlar başa düşmədim cavab us başlamaq üçün? Avi. Auditoriya: yalnız üzərində gedə bilər DOM və Ajax həqiqətən sürətli? Kimi, biz bilmək lazımdır və ya olmalıdır nə onlar haqqında anlamaq? JASON Hirschhorn: Mən cavab gedirəm ümumiyyətlə bu sual, nə verilmiş mövzu x haqqında bilmək lazımdır? Mən sizə bir hiss çox var, çünki ki, mənə soruşacağam, və ya var ki, maraqlı. Belə ki, mövzu idi ki, dərəcədə mühazirə əhatə, və ya bölmə, və ya study.cs50.net, müəyyən bir problem, siz ilə tanış olmalıdır. Beləliklə, siz hər növü bilmək lazım deyil HTML var və ya tag atribut və ya əmlakın hər növü Siz CSS bir şey verə bilər. Amma bir mühazirə timsalında gördüm, Bir problem onu ​​gördüm set, siz yəqin ki, tanış olmalıdır ilə, xüsusilə şeyi gördüm mühazirə. Beləliklə, biz də sənədi müzakirə Model bir az etiraz ikibölməli, daha çox mühazirə. Siz tanış olmalıdır bu ki, çox ilə. Və siz ilə tanış olmalıdır Eyni dərəcədə AJAX. Biz olduqca inkişaf etmiş və ya görmedin mürəkkəb Ajax nümunələri, belə ki, xahiş etmək fikrində deyilik nə inanılmaz mürəkkəb bir şey. Amma mən bunu necə, xahiş oluna bilər jQuery istifadə edərək Ajax zəng etmək? Bir sıra gördüm, bir şey olan əvvəl dəfə, bu, həm də sessiya və mühazirə nəzərdən, və bu kodu yalnız iki-ish xətləri var. Belə ki, siz olmalıdır şeydir ilə tanış ola bilər. Ancaq yenə də, bütün bu mövzular üçün, Siz onu gördüm əgər əvvəl, ədalətli oyun. Və biz xahiş edə bilər - əlbəttə ki, biz istəyirik siz şeyi soruşacağam əvvəl görmədim. Siz yoxdur bir şey Coding əvvəl görüldü. Siz yoxdur demək deyil həll etmək üçün alətlər görüldü əvvəl problem. Siz bu alətlər gördük. Məsələn, 1 İlke, əgər Siz strlen kod lazımdır. Biz əvvəl strlen kodlu deyil. Amma, loop üçün istifadə etmək necə Siz şərait əgər necə istifadə bilirik. Siz C. dəyişənlərin yazmaq necə Burada eyni şey olacaq. Bunu etmək üçün xahiş etmək fikrində deyilik siz əvvəl görüldü, lakin bir şey Siz kimi, qoymaq üçün xahiş oluna bilər bir roman şəkildə birlikdə bir şey, və ya problemin müxtəlif növü həll. Bağışlayın, xüsusi deyil, sizin sual, amma cavab verə bilər hər bir mövzu nə və ya bilmək lazım deyil. Lakin, sorry ki, son şey. Biz daha çox vaxt sərf biz Ajax daha link siyahısında. Siz problem set Ajax istifadə etməyib. Ki, mərkəzi xüsusiyyətlərindən biri problem ki, link siyahıları idi seçin. Və biz mühazirə çox vaxt sərf və bölmə istifadə. Belə ki, odds link siyahısına daha gəlmək olacaq tez-tez Ajax iradəsindən çox viktorina. Və ya suallara link ilə olan siyahısı daha çox xal dəyərində olacaq. Belə ki, əlbəttə diqqət və dar bilər daha çox şeylər haqqında çünki bizdə gəlmək ehtimalı onlara daha çox vaxt sərf. Hər hansı digər suallar OK? Bəli. Auditoriya: Biz istifadə üzərində getmək olarmı JavaScript anonim funksiyaları? Mən bir bu barədə az qarışıq edirəm. JASON Hirschhorn: Belə JavaScript - Mən hesab çalışıram necə Bu yazmaq bilər - belə ki, həqiqətən bu kodu açmaq bildirin. Belə ki, bu biz ötən həftə idi ki kodu. Əgər siz əvvəl bu gördüm burada bölməsində ötən həftə idi. Yoxsa bir şey gördüm əvvəl bu oxşar. Amma bu ilk line baxmaq olar. Bu başlamaq necə - hamı əvvəl bu görülür. Bəzi JavaScript kodu qoymaq istəyirsinizsə, Siz fərz etsək, bu daxili qoyun Siz jQuery istifadə edirik. Bu bir şey yoxdur, deyib sənəd dolu qədər. Və sonra, Curt, siz burada görmək bu kimi bir şey yapýyorsun - funksiyası açıq paren, paren bağlanıb. Beləliklə, biz bu verilməsi deyil bir ad fəaliyyət göstərir. Biz bu funksiyası müəyyən etmək niyyətində deyil sonra run və ehtimal olunur dəfə bir dəstə çağırırıq. Biz yalnız bu sənəd deyərək edirik artıq bir funksiyası edir. Etmək şeyi bir neçə. Və biz vaxt sərf etmək istəmirəm bir ad verilməsi və ya saxlamaq daimilik. Biz yalnız bir şeyi run etmək istəyirəm. Belə ki, bir anonim funksiyası sort ki, məqsədi xidmət edir. Əgər bir şey istifadə etmək fikrində deyilik zaman üzərində yenidən, belə ki, ehtiyac yoxdur bir ad vermək - siz yalnız bir dəfə istifadə etmək istədiyiniz - Siz yalnız, funksiyası deyərdim Məsələn, bu halda, və yalnız istəyirik bir şey müəyyən ki, Siz ad verə bilər. Kimi, biz bu funksiyanı çıxarmaq bilər və bir ad vermək və sonra zəng burada fəaliyyət göstərir. Biz deyil, çünki biz lazım deyil bir ad və ya verilməsi vaxt sərf etmək istəyirəm Bizim adı məkanında bir şey israf. Və siz bir çox görəcəksiniz. Məsələn, biz görürük ki, bu bir çox kodu, lakin siz əvvəl bu gördüm zaman Əgər bir şey basın - kodu bu cür axır. Biz istəyirik ki, kodu müəyyən edə Bu halda biz, basın zaman run, Bu ID ayrı bir funksiyası kimi və sonra funksiyanı çalıştırmak. Lakin bu halda, biz yalnız atlama edirik ki, addım və burada onu hərəkət və yalnız hər şeyi müəyyən etmək biz baş istəyirəm ki, bir ad verilməsi deyil. Ki, hələ ola bilər sual cavab. Auditoriya: Xeyr, bunu edir. Mən demək, Mən həqiqətən deyil tapmaq bir olacaq nə almaq baxmayaraq ki, bütün fəaliyyət göstərir. Həqiqətən adlanan deyil, çünki. Bu, həqiqətən bir adı yoxdur. JASON Hirschhorn: Bu bir funksiyası var bu bir sıra addımlar var ki, mənada, kimi bir funksiyası qoymaq olardı. Biz zəng niyə və o var bu anonim funksiyası. Biz bir ad vermək fikrində deyilik. Biz çalışırıq sərf etmək fikrində deyilik adını, lakin biz bilər üçün. Anonymous funksiyaları, həmişə bir ad verə bilər. Belə ki, məsələn, burada bu kodu, biz daxilində bu kodu qoymaq bilər sonra funksiyası və zəng burada bu funksiya. Əksinə, biz getmirik, demək ki, narahat. Biz yalnız yazmaq olacaq burada bütün. Siz yazılı etdiyiniz zaman bəzən kimi C dörd loop - uşaqlar əvvəl bu gördük - bəlkə siz bir forloop vasitəsilə iterating i 0 bərabərdir daxil. Mən strlen azdır. Yoxsa bəzi vasitəsilə olacaq array, array saxlaya bilərsiniz index bəzi dəyişən i. Və dəyişən istifadə. Belə ki, array yeniden yazmaq üçün ehtiyac yoxdur bracket i üzərində və üzərində. Və sort kimi bir dummy dəyişən. Bu çox digər məqsədə xidmət deyil Sizin kodu bir az təmiz etmək və daha asan oxumaq üçün. Burada oxşar funksiyası. Yalnız bir az daha asan edir, lakin funksional heç bir fərq yoxdur. Ki, sual cavab verirmi? Auditoriya: Bəli. JASON Hirschhorn: OK .. Mario? Auditoriya: Dünən onlar tez-tez qoymaq funksiyası hadisə parantez. Ki, bir şey deməkdir? Və ya kimi şeylər üçün onlar ki, funksiyası hadisə document.ready. JASON Hirschhorn: Biz bu gördüm, yenə bu kiçik şeylər ki, yəqin ki, mən istəmirəm çox çox vaxt sərf edirlər. Bəzən insanlar istəmirəm, çünki onlar ki çıldırdı almaq Bu şeylər haqqında eşitdim ki, çox. Amma biz bir az danışdıq hadisə işleyicileri. Belə bir şey sonra olur, və Bu funksiya icra edilir. Və sonra biz də bilmək istəyirəm əlaqədar bəzi detallar nə Bu hadisə baş verib. Belə ki, geri problem düşünmək set 4. Bu yəqin ki, asan bir yoldur fasilə ki, başa düşürük. Bəzi kodu var idi - kimi bir hadisə baş, amma ki, hadisə çox şey demək olar. Demək bilər Əgər siçan tıklandığında, bu demək bilər bir arrow düyməsini basın, et Cetera, et Cetera. Amma bütün bu ümumi qeyd edir şey hadisələr çağırıb. Və sonra biz, demək olar Bu hadisə bu şey? Və ya bu hadisə bu şeydir? Və ya, nə cür oldu ki, hadisə ilə? Siz ki, dəyişən yaratmaq nə ki, var ki, əlavə məlumat saxlamaq üçün dəqiq nə haqqında istədiyiniz olacaq funksiyası istifadə. Ancaq yenə də, yəqin ki, biri super daha az əhəmiyyətli şeylər ilə tanış. OK, nə digər suallar insanlar var idi, və ya onlar blokları etdik büdrəmə tanış olarkən rast? Biz siyahısına geri olacaq. Təcrübə viktorina zamanı nə haqqında, əgər insanlar artıq o qəbul etdilər? Bəzi problemlər nə idi ki, Siz uşaqlar qədər dövrəyə girdi? Mən bir fakt bilirəm ki, ötən il viktorina həqiqətən çətin idi. Auditoriya: siz nə izah edə bilər bir SQL injection hücum edir? JASON Hirschhorn: OK, böyük. Beləliklə, biz bu barədə bir az danışdıq. Təhlükəsizlik üzrə mühazirə var. Və yenə, mən əvvəllər qeyd olunduğu kimi bu bir kənara. Amma viktorina incidir ediləcək Bəzi kiçik iki nöqtə oxumaq zaman sual, və zaman kimi istəyirik Mən heç ki, öyrənmək idi? O mühazirələr o hər şeyi sizə lazım düşünmədiklərini bilirik, və ya artıq çünki parıltı bilər onlar ilə yox idi problem set, o güman olacaq viktorina yenidən gündəmə gəlib. Belə ki, cool, fun şeyi yalnız David sizin üçün izah düşündüm zövq, o, sizin üçün izah edilmişdir zövq və yalnız super olmaq üçün hər şeyi öyrənmək haqqında heyecan öyrənmək var kompüter haqqında. Həmin şeylər də viktorina gəlib. Belə ki, etmədi ki, hətta bu kiçik şeylər birbaşa problemin aid Sizlərin ilə tanış kimi, müəyyən Quiz 0, yəqin ki, gələcək. Bu yaxşı bir nümunə bir şey. Zaman belə bir SQL injection hücum edir istifadəçi bir məlumat almaq və Siz istifadə edərək, bir masa onu əlavə etmək istəyirəm bir SQL insert şərhdə, ancaq giriş sanitize etməyib vaxtından əvvəl. Belə ki, açıq-aydın biz gördük SQL hesabatları. Mən yalnız açmaq lazımdır - gidelim - Biz nəzərdən getmək lazımdır - Mən onu əhatə, hesab edirəm ki? Mən Samala etdiyimizi düşünürəm. Belə ki, biz əldə edə bilərsiniz - Auditoriya: Siz bu almısan? JASON Hirschhorn: Beləliklə, siz getmək əgər Sonra CS50.net, sınavlar, və siz üzərində hərəkət və slaydlar almaq Nəzərdən iclasında. Amma bu yaxşı bir nümunə bilərsiniz bir SQL injection hücum. Biz istifadəçi müəyyən məlumatlar almaq və onlar bizə bir string vermək, və sonra biz ki, simli daxil etmək istəyirəm bir verilənlər bazası daxil. Ümumiyyətlə biz sanitize gedir deməkdir giriş, bəzi var təhlükəli olan simvol. Məsələn, SQL strings, Bu quotes - tək quotes və ya ikiqat quotes - bir şey demək. Onlar burada bu simli son deməkdir. Və belə ki, istifadəçi bir bir verir və ya ikiqat quote, onlar ola bilər Sizin SQL sorğu səfər üçün çalışırıq və onu pis stuff daxil edin. Onlar bunu əgər, onlar əldə edə bilər Sizin bazası nəzarət və ya bəzi Əgər siz onları etmək istəyirəm olmayan şeylər. Biz SQL almaq zaman nə ki, var queries, biz əvvəl daxil sanitize verilənlər bazası onu qoyaraq, olan biz bu simvol qurtarmaq deməkdir. Biz ikinci olduğu haqqında danışmaq lazımdır. Amma uzun hekayə qısa, bir SQL injection siz bunu etməyin, əgər hücum edir - Siz daxil qayğı yoxsa Onlar qoyulması əvvəl sizə verdi Sizin verilənlər bazası, onlar sizə aşağı görmək kimi burada, bir sorğu run ki, əslində - Onlar aşağı burada kodu qoymaq və aşağı burada bu seçin line seçin asılı olmayaraq masa hər şey nə parol verilir. Siz, çünki və ya 1 1 bərabərdir. Belə ki, əsasən uzun hekayə qısa verilənlər bazası üzərində almaq üçün bir yol. Bu sual, sonra, uşaqlar üçün, p dəstləri 7 bütün sanitize hara Sizin SQL queries giriş? Harada ki, addım oldu? Siz SQL injection qarşısını almaq harada p baş hücumları 7 qurmaq? Bəli. Auditoriya: Crypt? JASON Hirschhorn: Belə ki crypt deyil. Bu üçün bunu etməyib xüsusi problem müəyyən, lakin bu baş sorğu funksiyası. Biz, həqiqətən, sizin üçün yazdı və biz qayğı sizin üçün giriş sanitizing. Lakin son illərdə, tələbələr var öz giriş yazın. P set 7, sizə bir çox - Mənə başqa bir fayl açmaq bildirin. Belə ki, burada bir çox görəcəksiniz insanlar, 7 set problem, zəng etməyib strings bu funksiya. Bu funksiya, htmlspecialchars, yenidən - Bu simli bəzi şeylər ola bilər HTML ki, başqa şey deməkdir. Burğu, bir kvadrat və ya bir bucaq kimi bracket HTML şey deməkdir. Və siz ki, çap əgər ekran və ya yalnız almaq və əgər HTML ki, qüdrət ki, çap Siz gözləmirəm bir şey. Belə ki, htmlspecialchars bütün üzərində gedir xüsusi var ki, simvol görüş və onları escape. Belə ki, mətn kimi çap olur görürsünüz, daha çox istəyirəm HTML up screwing. Biz mövzu ki, funksiyası adlanır. Və bir çox insanlar unuttum Bu ki, funksiyası zəng Siz yazılı idi kodu. Belə ki, məsələn, əgər bir səhmdar adı idi bir bucaq bu bracket və unuttum Bu funksiya, ki bucağı zəng etmək üçün bracket off atılan bilərdi nə HTML kimi baxdı. Amma bu funksiyası zəng xilas edəcək ki, bu, həqiqətən bir kimi yazdıran angle bracket və atmaq deyil HTML kodu off. Biz gördük eyni səbəbi, bəzən, bir ikiqat quotes əvvəl slashes biz istəmirik printf line çünki ikiqat quotes simli aşağı. Biz onları çap etmək istəyirəm ekran üçün. Belə ki, bu eyni fikirdir. Ki, sual cavab verirmi? Auditoriya: şərti. JASON Hirschhorn: gəlirmi təqib var? Auditoriya: Mən SQL injection tapmaq hücum ki, nə var? Mən necə başa düşmürəm iki bağlıdır. Niyə specialchars edərdiniz? JASON Hirschhorn: OK, belə ki, SQL Siz yeritmək zaman injection hücum edir Kimsə bəzi zərərli strings proqram, və onlar yalnız almaq və run bir simli ilə SQL sorğu Əgər siz onları verdi. Burada aşağı Gördüyünüz kimi, ki, problemli ola bilər. Belə ki, qarşı qarşısını almaq yoldur Əgər onlar verir ki, onların string almaq Siz - burada bu string - və bunu sanitize. Siz hər şeyi xilas ki, potensial problemlidir. Beləliklə, siz bir şey kimi şərh yoxdur ki, bir şey deməkdir. Və nümunə ilə HTML bu funksiyası var. Belə ki, burada eyni fikirdir. Mən yalnız digər göstərirdi Siz var zaman nümunələri əvvəl bu fikir görüldü. Çap əvvəl istifadəçi daxil qaçan bu bir ekran və ya qoyaraq bir SQL bəyanat daxilində. Auditoriya: Belə ki, bu halda, istifadəçi proqramçı ilə messing. JASON Hirschhorn: Bəli. Bu təhlükəsizlik hücumların bütün, həmişə ümumiyyətlə istifadəçi var, və ya kimsə, mess çalışır sizinlə, proqramçı. Və bu siz yolları onlara qarşı qarşısını almaq. Auditoriya: Mən bir sual var hash funksiyaları haqqında. 2011-ci ildən Quiz 1, iki var birtərəfli hashes haqqında suallar. Və yalnız merak nə demək idi. JASON Hirschhorn: OK, hansı viktorina? 2011? Auditoriya: Bəli. Auditoriya: Quiz 1? Auditoriya: [işitilemez]. Ki, bir parol hashing kimi. Şeylər qoyaraq deyil - JASON Hirschhorn: Bu nədir səhifə idi? Auditoriya: Mən idi 9 və ya 10 və ya hər ikisi. JASON Hirschhorn: Bütün sağ, Curt, davam. Biz baxmaq edərkən Siz cavab verə bilərsiniz. Auditoriya: Mən söhbət edirəm bir parol hashing haqqında. Kimi, kimsə bir parol daxil zaman, Siz şifreli şey çevirmək. Ki, bu, parol hash var bir hash funksiyası müxtəlif ki, bir hash masa daxil bir şey qoyur. JASON Hirschhorn: Bakalým. Mənə etdiklərini qoparmaq edək cavab olaraq verir. Və sonra biz onun vasitəsilə gəzmək lazımdır. Belə ki, Curt böyük bir misal verdi bir yol hash. Biz əvvəl bu gördüm, biz parol almaq və öz növbəsində - p set 7, xatırlayıram, kimsə bilər yalnız parol var ki, bir parol var, lakin sonra şifrelenir olur Bəzi həqiqətən uzun bir şey. Bir yol hash çox asandır deməkdir digər bir yol getmək, lakin Bu getmək çox çətindir geri digər yol. Siz yoxlanılması zaman və belə ki, bilirik problem insanların parol 7 qurmaq, onların edəcək - belə ki, məsələn, onlar istədiklərini deyirlər parol dəyişdirmək, siz isteyin köhnə parol. Siz öz köhnə Şifrəni aldı. Siz şifrelenir. Və sonra iki encryptions müqayisədə daha orijinal unencrypting çox Bu həqiqətən bir, çünki ki, yol getmək çətin. Bəli. Auditoriya: dərinliyində necə bizim Telnet anlayışı olmalıdır? JASON Hirschhorn: qeyd edildi mühazirə qısa, yalnız bir qısa anlayış. Yenə geri cavab avi sualına - daha şeylər gəlib, daha çox bu super olmalıdır edir onlarla tanış. Yalnız mühazirə gəlmək varsa, ki, yalnız bir yer var. Lakin onlar mühazirə gəlmək əgər, bölmə, və bir problem sonra, müəyyən yəqin ki, super olmalıdır onlarla tanış. Mən bir sual var idi əvvəllər haqqında - Payız 2010-cu il - Quiz 1, ən qoparmaq imkan - borular və sıralarında bu sual, biz zaman ədalətli bit sərf etdiyi hətta, mühazirə söhbət biz, həqiqətən, olmadı, baxmayaraq Heç bölməsində edib. Belə ki, bu sual bir sıra verir əmrləri və xahiş nə Bu halda çap olur. Belə ki, bu tamamilə ağlabatan məsələdir ki, sizin xahiş edilə bilər uşaqlar, və sonra uşaqlar olmalıdır cavab biləcəklər. Beləliklə, nə siz 30 üçün baxmaq yoxdur Heç istəyir saniyə, və sonra əgər mənə cavab təklif, və sonra biz onun vasitəsilə gəzmək lazımdır. Bir cavab var olan bütün sağ, 27 sual? Bəli. Auditoriya: o 1, 2, 3, 3 mı? JASON Hirschhorn: Bu doğru deyil. 27 1, 2, 3, 3. Belə ki, biz ki, var necə baxaq. Birincisi, biz s əgər, söyləyərək bir sıra, nə çap olur? Belə ki, bir q ilk out, ilk. Biz əvvəl gördük. Biz insanların şəkil gördüm Apple gözləyən Bəzi məhsul almaq üçün saxlamaq. Var olan ilk insanlar ilk insanlar. Növbəyə ilk şey ilk şey həyata var. Beləliklə, biz bir sıra daxil bir şey təkan əgər, Siz 1 basmaq, sonra biz 1 pop. Pop yalnız çıxarmaq deməkdir. Bu halda, yalnız bir şey almaq. Biz ilk çıxarmaq şey, bir 1 var. Beləliklə, biz şeylər qoymaq lazımdır burada aşağı çap. Bu, bizim növbəyə artıq. Sonra bir 2 və 3-basmaq və biz ilk şey off pop. Yenə də, bu bir sıra çünki. Beləliklə, biz bir 2 almaq, sonra başqa bir qoymaq 3 və daha pop zəng. Bizim 3 ilk. Və sonra biz bütün dəstə idi digər şeylər və zəng pop. Amma yenə də, bu bir sıra edir-ci ildən, ilk ilk out,. Biz ilk şey çıxarmaq ki, heç daxil verilib Yəni bizim 3 var. Və bu halda, biz narahat olmayın haqqında bütün başqa şeylər. Bu bir queue əgər ki, var. Növbə haqqında hər hansı bir sualınız? Bir yığın fərqli. Biz abbreviaturadır nədir bir yığın anlaşma üçün? Auditoriya: ilk out, Son. JASON Hirschhorn: LIFO, mən hesab edirəm. Həyata ilk davam. Beləliklə, biz bir yığın nümunə gördüm bir yemekhane qablar. Üst nə tray seçilmiş olur. Və sonra yeni qablar, gəlib , onlar üst qoymaq almaq. Və sonra nə edir top seçilmiş olur. Alt qüdrətinə Belə ki, o qablar biraz üçün orada qalmaq. Bu halda, yenə biz will bu cəlb edir. Biz bir təkan, belə bir ilk line edir. Və biz bir şey off pop. Və yalnız bir şey, orada var belə ki, biz aşağı burada 1 hərəkət. Sonra 2 və 3 qoymaq və biz bir şey off pop. Amma yenə də, bu bir sıra çünki - və ya bu bir yığın, əksinə - biz son idi nə almaq. Son nə ilk çıxır. Və 3 son edir. Belə ki, biz sonra oralara 3 qoymaq biz başqa 3 qoymaq və biz yenə bir şey pop. Nəhayət, biz, 4, 5 qoymaq 6, 7, və burada biz pop. Bu bir yığın, çünki, biz almaq son qoymaq və yazmaq edilmişdir nə ki, aşağı burada. Belə ki, biz 1, 3, 3, 7 ilə qədər. Heç haqqında hər hansı bir sualınız varmı çıxarıcı borular və ya sıralarında, və ya bu misal? OK. Geri mövzular siyahısına getmək edək. Ki yol, bu yol. Insanlar digər hansı suallar var? Auditoriya: Mən bilmirəm nə qədər əhəmiyyətli bu, amma çaşdı müxtəlif növ arasında fərq tərtib biçimlendirme kimi dil, şərh. JASON Hirschhorn: var Yaxşı sualdır. Mən bir qədər əhəmiyyətli olduğunu düşünürəm belə ki, tez üzərində gedək. Biz gördük böyük dil bu günə qədər C, PHP, və JavaScript, baxımından languages ​​proqramlaşdırma. HTML, siz dediyiniz kimi deyil, bir proqramlaşdırma dili. Bu bir biçimlendirme dili var. Və sonra biz də olan CSS var bir proqramlaşdırma dili. Biz də deyil SQL, gördüm bir proqramlaşdırma dili ya. Belə ki, SQL yazmaq imkan verir bir verilənlər bazası üçün queries. HTML biçimlendirme dili. Bu şeylər strukturlaşdırılmış olunur necə müəyyən edir. Və CSS şeyi stil verir. Yəni nə üçün yəqin ki, dərəcədə var o üç haqqında bilmək lazımdır. Amma bu rəqəm daha maraqlıdır C, PHP arasında fərqlər həyata, və JavaScript. Böyük fərqlər belə bir, Siz qeyd etdiyiniz kimi, onlar necə tərtib, və ya hər hansı bərabərdir. Belə ki, C tərtib edilir. Biz həmişə bir compiler çalışır. Və sonra harada səhvlər var Siz C compiler çalıştırdığınızda? Harada siz göstərir Sizin kod səhvlər? Necə bir var bilirik C kodunuzu səhv? Auditoriya: Bu göstərir Terminalda. JASON Hirschhorn: Bu sizə göstərir Əgər tərtib etdiyiniz kimi terminal. Və səhvlər var, əgər həqiqətən tərtib edəcək. Beləliklə, siz sağ səhvlər var bilirik ki, üz, vaxtından əvvəl, siz əvvəl hətta kodu axır. Əlbəttə, sizin kodu run və bilər bir seqmentasiya günah almaq, ancaq ki, siz yəqin ki, çünki bəzi silly məntiq şey. Ancaq texniki ilə kodu doğru bütün run bilər. Belə ki, C kodu vaxtından tərtib edilir. Nə PHP indeksi haqqında? Harada PHP kodu səhvlər idi? Necə səhv idi bilirdinizmi Sizin PHP kodu? Auditoriya: dəfə Run? JASON Hirschhorn: Bəli, zaman run ki, siz çalışır Geri PHP kodu. Və sonra bir ekran göstərmək olar. Siz üst bəzi şeyi görmək bilər, lakin sonra bəzi kimi görmək olardı portağal, çirkin masa. Və bir xətt nömrəsi verəcəkdir demək, blah, blah, blah, bu məhsulları tutmadı. Belə ki, PHP xətti ilə line şərh olunur və server icra. Və sonra nəticə Sizə göndərilir. Böyük. Xətti ilə server line edam və sonra siz artıq göndərdi. Və bir səhv var, əgər göndereceğiz Siz səhv, ancaq ola bilər vaxtından əvvəl bəzi məhsulları kazanılmış. Belə ki, bəzi çalışmış, lakin ola bilər sonra, bəzi stuff ola bilər işləyib deyil. Nə JavaScript haqqında? Harada JavaScript səhvləri gördünüz? Siz var zaman p, 8 müəyyən bir səhv, necə bilirdinizmi? Harada göstərmək olardı? Auditoriya: konsol, alt. JASON Hirschhorn: In konsol, alt. Bu da verəcək line nömrəsi, və bu ki, alt göstərilir. Və JavaScript edam edilib server. JavaScript bilgisayarınıza göndərilmiş, və sonra çalıştırmak üçün vaxt idi JavaScript, JavaScript idi haqqında xətti ilə line run müştəri, sizin tərəfdən. Not server, müştəri yan. Və eyni, o, idi xətti ilə line axır. Və sonra bir səhv almaq zaman, bu alt göstərmək olardı. Eynilə PHP, bəzi güc icra, və sonra bir almaq bilər sonra səhv. Həmçinin, bir az fərqli PHP, əgər Bir JavaScript səhv var - Siz doğru etmədi demək bir uyarı qutusu üçün kodu - Siz proqram çalışan saxlamaq bilər. Uyarı qutusu iş deyil, lakin Proqram gözəl olardı. Just bəlkə funksiyası uğursuz olacaq. Belə ki, ən böyük bəzi var necə bu baxımından fərq Dillər, və ya necə proqramlaşdırma kodu yazmaq həqiqətən qiymətləndirilir. Digər fərqlər də var ən böyük fərq - şərtləri biz dəyişənlərin baxımından gördüm müxtəlif dillərdə. Belə ki, heç mənə bir fərq verə bilər dəyişənlər arasında üç dildə? Bəli. Auditoriya: C, onlar ciddi yazılmış. Digər iki, onlar loosely yazılmış. JASON Hirschhorn: And ki, nə deməkdir? Auditoriya: C, elan var ki, dəyişən növü zaman Siz dəyişən elan, interbool və ya char kimi. JASON Hirschhorn: Əla. C, biz həmişə qoymaq idi bir dəyişən bir növü. Və biz, həqiqətən növ mix bilmədi. Siz tam edə bilmədim plus bir string. Amma biz bu digər gördüm kimi languages, həqiqətən növ mix edə bilərsiniz, və həqiqətən vermək heç vaxt bir növü bir şey, heç vaxt. Belə ki, necə biz hər şeyi dəyişənlər var bilmirəm PHP və JavaScript? Auditoriya: PHP, onlar başlamaq bir dollar işarəsi ilə. Siz bəyan zaman JavaScript ildə onlara, bir bar var. JASON Hirschhorn: Right. Beləliklə, PHP, onlar başlamaq bir dollar işarəsi ilə. JavaScript, onlar bar var, bəzən onlar həqiqətən yoxdur, baxmayaraq ki, bar var. Amma ki, doğru deyil. Belə ki, bir böyük fərq var dəyişənlər arasında. Mən bu off, yəqin ki, hesab edirəm ki, mənim baş üst, iki böyük bu arasında fərqlər üç languages. Lakin, yeah. Auditoriya: Və C dəyişənlərin daxilində qıvrım aşırma məhdudlaşdırılır, digər olanları, yalnız kimi yerdə, yalnız bir funksiyası var, əgər vəfat lakin başqa, it's - JASON Hirschhorn: Right. Belə ki, həcmi kimi C. qədər fərqlidir Yadınızdadırsa, qıvrım aşırma müəyyən dəyişənlərin daxilində. Bir daxili müəyyən edilmişdir, belə ki, əgər loop üçün daxili olan vəziyyəti, dəyişən yalnız var. JavaScript, əgər bir dəyişən müəyyən edilir bir əgər vəziyyətdə daxili - loop üçün daxili - bu mövcud olacaq ki, funksiyası, lakin mövcud deyil ki, funksiyası xaricində. Belə ki, əhatə dairəsi bir az daha çevik edir JavaScript və PHP. Bu suala cavab? OK, hər hansı digər suallar? Biz daha dörd dəqiqə edə bilərsiniz suallar, sonra biz kodlaşdırma daxil jump lazımdır. Auditoriya: Biz Ajax daxil edə bilərəmmi və nə haqqında danışmaq? JASON Hirschhorn: Avi sonra danışın. O, əvvəllər o sualı soruşdu. Auditoriya: Mənim pis. JASON Hirschhorn: Heç bir narahatlıq. Auditoriya: tam JSON nədir? JASON Hirschhorn: JSON nədir? Sual nədir? Auditoriya: Yalnız həqiqətən tez, arasında fərq PHP çap və echo. JASON Hirschhorn: Niyə google yoxdur çap və əks-səda arasında fərq nədir? Qədər fərq. Bir şey ki, böyük deyil. Amma mütləq google lazımdır, və ki, siz yaxşı bir cavab vermək lazımdır. JSON, müqavilə yəqin ki, böyük. JavaScript Obyekt Notation üçün dayanır. Və biz JSON istifadə olunur gördük? Zaman gördük - niyə belə söz JSON bilirik? Zaman siz onu görmüşəm? Auditoriya: Biz əldə zaman fond maliyyə üçün quotes. JASON Hirschhorn: Belə ki, gördüm bu əldə zaman fond maliyyə üçün quotes. Və niyə onu gördünüz? Auditoriya: Biz alanda zaman bütün məlumat ki, ki, format gəldi. JASON Hirschhorn: Beləliklə, siz almaq olardı - Bəli. Durmayın. Auditoriya: [işitilemez] məlumat bir obyekt həyata? JASON Hirschhorn: O həm araya cavab biz aradığınız. Siz məlumat istəyirəm Bu digər web. Və zaman etdiyiniz ümid edirəm məlumat əldə olardı bir növü sizə təqdim standart format. Hər kəs yəqin ki, tanış deyil vergül ayrılmış dəyərlər ilə. Siz Excel elektron tablo və ya ixrac edə bilər bir siyahısı kimi elektron tablo hər hansı bir növü vergül ayrılmış dəyərlər. Və virgül bütün bölmək müxtəlif sahələri. JavaScript Obyekt Notation - JSON - standart bir növüdür şeyi layout. Və biz almaq necə tez-tez var bizim Ajax queries məlumat. Belə ki, bu halda, biz var Yahoo site. Onlar şeyi qayıtmaq bir JSON obyekt us. Çünki Və sonra, biz bilirik standart, nə var kimi baxmaq niyyətində. Beləliklə, biz array vasitəsilə təkrarlamaq olar ki, bizə, array döndü oldu bizə qaytarılır ki, obyektlər. Biz yəqin ki, düymələri bilmək lazımdır, lakin onlar adətən vermək web sənədlər zaman bəzi JSON gətirilərkən edirik onlar üçün notation. Eyni zamanda, siz JSON bir obyekt kodlar. Belə ki, bir funksiyası JSON var kodlar vurğulayır. Və belə bir obyekt almaq bilər ki, Yaratdığınız, JSON bu kodlar, və bir şey üçün keçmək başqa, istəyirsinizsə. Və JSON decode üçün də mövcuddur oxşar məqsəd, ya qarşı məqsədi. Auditoriya: Biz kodlaşdırma bilmək lazımdır hash masalar və çalışır üçün? Yoxsa biz yalnız anlamaq lazımdır necə konseptual, istifadə etdiyiniz? JASON Hirschhorn: Belə ki, əl qaldırmaq Siz əgər p üçün hash table set 4 bir link siyahısı ilə. Və ya p 5 seçin. Belə ki, insanların əksəriyyəti idi. P bilən, 6 5 seçin. A uzun müddət əvvəl. Belə ki, əksəriyyəti etdi link siyahıları ilə masalar hash. Və yəqin ki, daha çox, çünki ümumi yanaşma və biz sərf çünki link siyahıları və hash zaman bunu bir çox masalar, siz yəqin ki, olmalıdır kod necə ilə olduqca tanış bir hash masa və bir link siyahısı. Və ki, problemin geri düşünüyorsanız müəyyən, bu, həqiqətən deyil kimi ağır gözlənilir. Və az çox idi siz gözləniləndən daha kodu. Mən sizə bilməlidir deyərdim necə bir hash masa və ya bir link siyahısı kodu. Ki, xahiş istədiyiniz ki, Mütləq, ancaq siz olmalıdır əlbəttə ki, bilirik. Ayrıca, keçmiş sınavlar vasitəsilə baxsaq, bir çox var funksiyaları yazılı haqqında suallar link siyahıları və ya Ikiqat-bağlı siyahıları. Bu gəlmək üçün görünür hər il. Sağ, bir link siyahısı daxil bir link siyahıdan silmək, sağ daxil bir ikiqat bağlı siyahısı üçün, et Cetera. Belə ki, mən olduqca rahat hiss Siz bilməlidir ki söyləyərək. Cəhd, mən olmalıdır deyərdim əlbəttə ki, necə bilirsiniz, və bəlkə necə üçün bəzi pseudocode vermək kod və onu qurmaq üçün. Amma bu ən pis şey ola bilməz dünya bilmirdim necə Bu, böyük olardı C. kod siz əgər C kod necə bilirdi, lakin mən hesab edirəm Bir cəhd üçün yəqin ki, pseudocode ki Siz lazımdır ən çox Bir cəhd üçün bilmək. Auditoriya: Extra kredit? JASON Hirschhorn: ilə və eyni, əgər biz ikili axtarış ağac daxil, siz bilər lazımdır - və siz keçmişdə gördük, biz bir çox etdik - Siz necə ikili axtarış ağac işləyir. Siz yəqin ki, lazımdır yalançı kodu birini qurmaq. Lakin insanların əksəriyyəti problem bunu etmədi set, mən yəqin ki, az demək istədiyiniz Siz kod necə vacibdir ki, kimi bir ağac qurmaq. Hər hansı digər suallar? Həmçinin, biz ərzində onlara xahiş edə bilər biz bəzi problemləri getmək kimi. OK, biz hərəkət olacaq. Indi ki, slayd keçmək. Ağac danışan ki, ilk Mən sizə uşaqlar üçün sual. Bu bir problem deyil. Mən will ehtimal var deyərdim Sizin viktorina bu kimi bir problemlə almaq , insert bir növü kod isteyen bir növü üçün, axtarış silmək məlumat strukturunun biz gördük. Hər il gəlir və biz sərf Bu vaxt çox ikinci yarısında Bu data növləri üzərində gedən semestr. Belə ki, indi mən bir node müəyyən etdik bir ikili axtarış ağac. Və nə Mən bunu istəyirəm verilir başlayır ki, bir ikili axtarış ağac Bu node ulduz kök, tam Aşağıdakı funksiyasının həyata keçirilməsi, bir tapmaq funksiyası olur. Və və recursions olmadan bunu. Mən iki funksiyaları yazmaq istəyirəm. Recursion, biri ilə bunu One recursion olmadan bunu. Və güman etmirəm ki, root qeyri-null olacaq. Beləliklə, biz tam i aradığınız ağac kök başlayan və biz lazım recursively bu yazmaq və iteratively. Bəli. Auditoriya: Belə ki, bizə doğru qayıtmaq istəyirəm biz, və yalan tapmaq əgər biz tapmıram. JASON Hirschhorn: Necə bilirsiniz? Necə ki, bilirdinizmi? Auditoriya: Mən ilk xahiş, lakin mən Bu bool deyir, çünki fərz funksiyası başlanğıcı. JASON Hirschhorn: Right. Bu bool, mən belə ehtiyac yoxdur deyir Mən sizə qayıtmaq üçün gözləmək nə demək bu hüququ var deyir, çünki. Amma doğru. , Doğru və ya yalan qayıt. Siz başlamaq əvvəl Belə ki, I, tövsiyə edirəm Siz ilə tanımadığı halda ikili axtarış ağac, tez rəsm almaq üçün bir şəkil sizin anlaşma, sağ. Yazarkən də sizə kömək edəcək Sizin kodu və yoxlanılması. Yenə, siz də yoxdur ki, çox bütün şeyə viktorina vaxt biz bunu dilə. Belə ki, yalançı kodu yazılı çox faydalıdır. Və biz ümumiyyətlə vermək - Bu pseudocode mükəmməl əgər doğru, ki bir sual üzərinə ümumiyyətlə 50%. Belə ki, bir ağır və sürətli qayda deyil, lakin əgər yalnız pseudocode yazmaq və bu doğru, ümumiyyətlə 50% var. Mən həmişə tavsiye ederim - vaxt darda edirsinizsə, və ya hətta Siz yalnız anlamaq çalışdığınız - Bu pseudocode ilə başlayan. Və nəhayət, bu yazmaq bilər bütün C, fantastik olardı ki. Belə ki, üç dəqiqə götürək bu proqram üzrə işləmək. Və sonra biz yazmaq üçün gedir bunun üçün pseudocode yalnız bir dəfə, sonra biz recursively kod olacaq və sonra iteratively. Hər hansı bir sualınız varsa, hiss pulsuz əl qaldırmaq. Ətrafında gəzmək və onlara cavab xoşbəxt biz qrup olaraq başlamaq əvvəl. Us bərpa edək, və biz olacaq recursive versiyası pseudocode Bu, sonra biz bunu kod olacaq. Belə ki, bir recursive funksiyası iki şey lazımdır. Bu bir sual ola bilər ki, Əgər tələb oluna bilər. Iki şey lazımdır. Kim əl qaldırmaq və mənə deyə bilərsiniz nə iki şeyi bir recursive funksiyası lazımdır? Müəyyən By iki şey var. Bu iki şey nədir? New əlləri. Bəli, Alden. Auditoriya: Mən əgər dəqiq əmin deyiləm bu terminologiya, ancaq - JASON Hirschhorn: Mən sevindim Sizin tərəfdən artırılması edirik. Auditoriya: Bu baza halda lazımdır, və bir recursive addım lazımdır. JASON Hirschhorn: Perfect. Bu baza halda lazımdır və bir recursive addım. Belə ki, burada bizim əsas işi var? Auditoriya: F root bərabərdir null bərabərdir. Bağışlayın, yalnız pseudocode, bu null varsa. Kök null varsa. JASON Hirschhorn: kök null varsa. Ki, əla. Yəni bizim əsas işi var. Yəni biz olacaq nə hər zaman yoxlamaq. Və baza halda deyil siz ilk şey. Siz baza halda hit varsa, siz tamamlayın. İndi bizim recursive zəng lazımdır, və mən had biz bir neçə lazımdır bahis etmək istəyən recursive çağırır. Bir ağac var, çünki biz çox yolları getmək bilər. Kök null Belə ki, biz yaxşı deyilik. Siz nə təklif edirsiniz? İndi mən zəng başlamaq üçün gedirəm Siz uşaqlar, mən sizi uşaqlar bilirik, çünki bütün bu bilirik. Amma Annie, nə olmalıdır növbəti line olacaq? Nə biz onu aşkar əgər? Nə edəcəyik? Auditoriya: Biz onu aşkar varsa? JASON Hirschhorn: Yoxsa nə ki, olmalıdır - mənə üçün pseudocode vermək biz onu aşkar harada line. Auditoriya: i kök i bərabər? JASON Hirschhorn: And onda biz nə etməliyəm? Auditoriya: doğru qayıdın. JASON Hirschhorn: Great. Belə ki, i i olduqda - oh, onlar həm də i adlı edirik. Bu confusing olur. I olsa i doğru qayıtmaq. Yəqin ki, növbəti var biz bunu etməliyik şey. Əhəmiyyət kəsb edir. OK, indi biz recursive həyata yoxdur hələ zəng, baxmayaraq ki, çünki bir recursive zəng yenə bu funksiya zəng olardı. Belə ki, nə lazımdır növbəti pseudocode line olacaq? Anna. Auditoriya: Sol tərəfi. JASON Hirschhorn: baxmayaraq ki, xüsusi olun. Bu ikili axtarış ağac, belə ki, nə səbəb sol yoxlanılması edir? Auditoriya: Belə node - Üzr, kök deyiləm. Və sonra sol arrow. Node, node, sorry. Mən düzgün oxu deyiləm. Bu doğru, node deyirlər? JASON Hirschhorn: Bu kök adlı olunacaq ki, funksiyası, amma ya yol. Sol tərəfi - yeah? Auditoriya: Bu bərabər deyilsə i, sonra biz zəng olacaq yenidən funksiyası? JASON Hirschhorn: Bu doğru deyil. Bu bərabər i biz gedirik, əgər yenidən funksiyası zəng etmək. Amma ağac nə yan biz gedir yenidən funksiyası zəng etmək? Auditoriya: sol tərəfində. JASON Hirschhorn: Biz həmişə deyilik əgər, sol zəng etmək üçün gedir onu əvəz etmir. Auditoriya: Oh, sorry. Sağ edin. JASON Hirschhorn: Biz bilmək istəyirik xüsusilə də - bir, xatırlayıram ikili axtarış ağac, hər şey sol tərəfdən kiçik. Sağ hər şey tərəfdən böyükdür. Belə ki, yalnız deyil - Bəli, davam. Auditoriya: o, i az varsa - Bu sol varsa - JASON Hirschhorn: əgər ri azdır - belə ki, bizim nömrə i az olduqda, biz nə yan getmək istəyirsiniz? Auditoriya: Biz getmək istəyirəm sağ tərəfinə. JASON Hirschhorn: Biz getmək istəyirəm - mənə tez ağac cəlb edək. Bu 5, bu 3 olacaq. Belə ki, ri az beş, əgər nə yan biz getmək istəyirsiniz? Auditoriya: Bağışlayın, nə? JASON Hirschhorn: Bizim sayı biz istəyirik sayının az İndi baxırıq. Auditoriya: Oh, sonra biz istəyirik sol tərəfə getmək. Bəli. Üzr istəyirik. JASON Hirschhorn: Exactly. Heç bir narahatlıq. Ikili axtarış ağac, hər şey aşağı sol üçün, daha sağa edir. Belə ki, bizim sayı az olduqda biz yoxlanılması olduğunuz i - Siz görmək, çünki node, bir i var - sonra sol getmək istəyirəm. Bu asan biridir. Bu pseudocode digər xətt nədir biz yazmaq lazımdır? Carlos? Auditoriya: Eyni şey, yalnız keçid Bu əlaməti daha çox üçün və doğru gedin. JASON Hirschhorn: Siz Can Bir dəfə daha demək? Auditoriya: Bizim sayı çox olduqda i, doğru getmək daha. JASON Hirschhorn: Əla Bu pseudocode haqqında iş. Us real kodu bunu bildirin. Və yenə bu pseudocode olacaq çünki yəqin ki, siz almaq Bu suala doğru, 50%. Amma bu pseudocode də bir tərcümə bir, mahiyyətcə, kodu daxil. Belə ki, bizə verə bilər kim C. bunu bildirin Mənə kodu ilk line? Əslində, ilk əvvəl mən ki, mənə üzərində çəkmək imkan - Auditoriya: Mən bir sual var. Niyə indent etməyib line Mən sizə verdi? JASON Hirschhorn: Çünki Mən yazmaq bilməz. Bilmirəm. Siz sağ istəyirik. Bu xətt üzərində olmalıdır. OK, burada bizim funksiyası. Və mənə də, üzərində çəkmək imkan bir node bizim definition. Biz əgər nə olar typedef yazmaq? Heç bilir? Auditoriya: Bu tərtib deyil. JASON Hirschhorn: Bu ki Bəli, tərtib edir. Auditoriya: yalnız bir elan istəyirsiniz əvəzinə yeni bir edilməsi instansiya Siz çox bəyan edə bilər yazın halları? JASON Hirschhorn: Belə ki, olmaz bilirəm - bu deyil ki yalnız bir növü elan. Siz hələ qovşaqlarının bir çox edə bilər. Auditoriya: Amma biz olmazdı struct node hər zaman yazmaq? JASON Hirschhorn: Bu doğru deyil. Siz struct node yazmaq olardı əvəzinə yalnız node hər zaman. Amma typedef ilə, siz yalnız bilərsiniz Node hər bir zaman yazın. OK, kim verməyib - Bəli, Avica. Auditoriya: root bərabərdir bərabərdir varsa null, saxta qayıtmaq. JASON Hirschhorn: Böyük və ki, bizim əsas işi var. Kodu Next line. Etməyən kimsə hələ mənə kod line? Bəli. Auditoriya: Root arrow i i bərabər bərabərdir. Sonra doğru geri. JASON Hirschhorn: Great. Next line? Bəli. Başqası? Və sonra növbəti bilərsiniz. Auditoriya: Else əgər kök arrow i i qayıtmaq azdır find kök adlı funksiyası - JASON Hirschhorn: Sorry. Auditoriya: qayıt find kök vergül i sol göstərir. JASON Hirschhorn: Belə ri olarsa ağac şey daha çox, biz istəyirik sol getmək? Auditoriya: Xeyr, mən ki, işə. JASON Hirschhorn: Hansı? Auditoriya: Xeyr, Bəli. Mən orada imzalanması bir az var. JASON Hirschhorn: sağ, ri əgər kök nə az - Bizim cari kök - biz sol getmək istəyirəm. Və son line siz, nə var? Auditoriya: Əsasən eyni şey, daha az və ya keçid istisna olmaqla, daha az və sağ bərabərdir. JASON Hirschhorn: Əla. Heç bir sualınız varmı bu? Belə ki, bəzi başqa şeylər ki doğru olmuşdur ki, the-ltiff ola bilər. , Texniki, Guess bunların heç biri həqiqətən də-ltiff olmaq lazımdır. Həmçinin, yalnız yəqin ki var aşağı burada bir halda. Belə ki, yəqin ki, sizin son vəziyyət var. Siz hətta-ltiff ehtiyac yoxdur. Amma yəqin ki, yaxşı yazmaq Bu, aydın olmalıdır. Bəli. Auditoriya: Belə ki, viktorina düşünmürəm - biz səhvlər etmək əgər, misal üçün, sintaksis - az sintaksis səhvlər - necə ki, viktorina almaq deyil? JASON Hirschhorn: Ümumiyyətlə viktorina, sintaksis səhvlər kiçik və ya kiçik stil səhvlər siz xal itirmək yoxdur. Bir nöqtəli vergül unuttum əgər burada, bu OK olacaq. Bu mötərizə bağlayın unuttum, əgər ki, OK olardı. Bu mehrab ki, böyük sintaksis səhvlər kodunuzu funksional mənası dramatik ala bilər üçün bal off götürülmüşdür. Və ya ümumiyyətlə, yalnız grading haqqında və ya sizin kodu funksiyaları, hətta - onun dizayn çox deyil, və onun stil. Indi bir iterative kod edək tapıntının versiyası. Belə ki, olduqca oxşar olacaq, lakin var əlbəttə var gedir bəzi əsas fərqlər. Lakin, bizim pseudocode yəqin ki, getmək bilər - biz hələ bir line edə bilər pseudocode və rəqəm nə line bu halda. Bir iterative versiyası Belə ki, nə Sizcə, Julia, olmalıdır ilk line olacaq? Auditoriya: Yenə iterativ boolean da, sağ, loop üçün qurmaq lazımdır? JASON Hirschhorn: OK. Auditoriya: Belə kimi, k, x 0 bərabərdir, x i azdır. Və ya, x azdır ağac ölçüsü. JASON Hirschhorn: The ağac. Belə ki, biz, həqiqətən, ölçüsünü bilmirəm ağac, və biz, həqiqətən bilmirəm biz getmək necə bir çox dəfə, belə ki, nə var ola bilər ki, loop müxtəlif növü bu halda daha yaxşı? Auditoriya: Başqa? JASON Hirschhorn: Başqa bir loop ola bilməz. Belə ki, nə biz yalnız bilərsiniz loop bir növü var Bəzi halda görüşüb qədər getmək? Loop yalnız başqa növü nedir C loop üçün başqa? Auditoriya: baxmayaraq. JASON Hirschhorn: baxmayaraq, dəqiq. Bir müddət loop, yoxdur necə bilmək lazımdır - bir müddət loop və loop üçün nə edə bilər eyni şey, lakin gözəl şey haqqında isə loop biz ehtiyac yoxdur bizim ağac necə böyük bilmək. Beləliklə, biz nə qədər getmək olacaq? Auditoriya: o bərabərdir qədər ölçüsü - JASON Hirschhorn: Bəli, bu, çox var Bizim recursive halda oxşar. Belə ki, - Auditoriya: baxmayaraq kök i bərabər i deyil. JASON Hirschhorn: Bu həqiqətən yaxın. Isə kök i - Nin cəhd edək. Mən düşünmürəm [işitilemez] root i i bərabər deyil yerləşir. Biz bir az onu dəyişdirmək lazımdır bilər bu olduqca kimi bit, lakin səsləri yaxşı, indi üçün. Belə ki, biz bunu edəcəyik. Həmçinin, biz güman edə bilərsiniz, unutmayın sual başına. Siz güman etmirəm ki, root qeyri-null olacaq. Beləliklə, siz çox nə düşünürsünüz biz etmək lazımdır ilk şey? Auditoriya: Just eyni əvvəlki kimi bir şey. Kök bərabərdir bərabərdir əgər null, saxta qayıtmaq. JASON Hirschhorn: Great. Belə ki, null ola bilər. Beləliklə, biz qurtarmaq istəyirəm dərhal onun. Və sonra biz çek olacaq əgər root i bərabər i yoxdur. Belə ki, biz bu ağac axtarış deyirlər 3, kök üçün i etmir bərabər i indi biz isə loop istəyirik. Biz nə istəyirik? Və yenə, bu, olduqca olacaq Bizim recursive versiyası oxşar. Bəli. Auditoriya: Belə ki, təkrarlamaq istəyirəm, və ya istədiyiniz kimi uzun ağac aşağı davam kök null bərabər deyil. JASON Hirschhorn: The kimi uzun kimi kök null bərabər deyil? Auditoriya: The kök dash i null bərabər deyil. Yalnız kök, evet. Kök kimi uzun kimi null bərabər deyil. JASON Hirschhorn: Belə ki, istədiyiniz kök daxil bu dəyişdirmək üçün bərabər null edir? Auditoriya: Bəli. Auditoriya: Biz birləşdirmək bilər Bu, sağ? Biz ilkin, əgər ehtiyac yoxdur. JASON Hirschhorn: OK, belə ki, biz dəfndə əgər - Biz onları birləşdirmək, belə ki, biz nə edirik root bərabər null yoxdur, isə kök at null olmaq olur başlayan, biz burada nə aşağı etməliyəm? Auditoriya: yalan qayıt. JASON Hirschhorn: Great. Belə ki, həm yolları yəqin ki, çalışıb olardı. Bu fərqli bir yol, və bu birləşdirir. Ya yol əgər Lakin yenə, biz istəyirik dizayn off etmək niyyətində deyil viktorina edir. Amma bu yaxşı görünür. Belə ki, kök bərabər deyil isə null, ilk nədir odur ki, biz yoxlamaq istəyirsiniz? Başqası? Null, ilk şey nədir? Auditoriya: ri azdır varsa - oh, mən tapmaq, əgər biz artıq kök onu aşkar. Belə ki, əgər kök arrow i i bərabərdir - JASON Hirschhorn: Bağışlayın? Auditoriya: Əgər kök arrow i i bərabərdir bərabərdir - JASON Hirschhorn: biz nə etməliyəm? Auditoriya: doğru qayıdın. JASON Hirschhorn: Great. Və nə gələn var? Jeff, kodu növbəti line nə var? Auditoriya: i kök ox azdırsa i, sonra kök kök arrow sol bərabərdir. JASON Hirschhorn: Root bərabər root arrow sol. Belə ki, yəqin ki, ən böyük var Bu iterative burada fərq Bu kimi qarşı version recursive versiyası. Bu recursive versiyası, biz yenidən funksiyası zəng. Biz kök yenilənməsi olacaq biz yeni funksiyası zəng. Burada biz yeni bir funksiyası zəng deyilik. Biz sadəcə yalnız təzələyirik bu funksiyası kök. Ki, əla. Və Kodu son line nədir? Bəli, Mario? Auditoriya: Else kök bərabər root arrow hüququ. JASON Hirschhorn: Bağışlayın? Auditoriya: Root bərabər root arrow hüququ. JASON Hirschhorn: bilərdi siz də bu kimi bir şey yazmaq? Auditoriya: Mən heç bir fikrim yoxdur. JASON Hirschhorn: Siz bilməz. Siz plus bərabərdir edə bilməz. OK, belə ki, bu yaxşı görünür. Niyə biz yalnız bunu yoxdur onu təmizləmək. Bu, böyük görünür, və bu iş olacaq. Və biz çıxmaq olardı. Root sol null ya kök sağ idi, null idi, biz bura qədər gəlmək olardı. Root null bərabər olardı. Biz loop çıxmaq istədiyiniz, və biz yalan ediyorum. Beləliklə, biz çıxmaq zaman loop, biz yalan. Və yenə bir müddət loop mükəmməl idi biz bilmirik çünki burada necə böyük bizim ağac. Biz loop üçün yazmaq üçün çalışdı, lakin biz Siz anlamaq üçün var həyata necə böyük vaxtından edir. Bəli. Auditoriya: Bu ikili olmasaydı axtarış ağac, bu, real riyaziyyat-y olardı sağ, iteratively yazmaq? Kimi, bir ağac idi, lakin mütləq - belə ki, sol bütün kiçik idi və sağ bütün böyük. Bu, həqiqətən çətin olacaq sağ, üzərində təkrarlamaq? Biz əvvəllər nə saxlamaq istədiyiniz və ağac haqqında geri və kimi stuff. JASON Hirschhorn: bir ikili olmasaydı axtarış ağac, əgər bu yalnız bir ağac və şeylər deyildi bu kimi sıralanır - və biz əvvəllər həyata zaman Anna bizə kömək ki, edilməsi sorted bizə çox kömək edir - biz, bəli, həmişə saxlamaq lazımdır biz əvvəllər olduğu. Amma bir çox ola bilər biz previouslys idi. Valideyn qovşaqlarının bir çox ola bilər. Yəqin ki, bunu etmək üçün ən yaxşı yol olardı bəzi üzərinə basmaqla şeyi saxlamaq üçün ola yığını və ya növbə növü. Bu kod lazımdır heç vaxt bir ağır problem, çünki. Amma bir yığını üzərində bəzi şeylər təkan və ya queue və sonra onları off pop, və sonra onları qiymətləndirmək. Və sonra bəzi digər şey var həqiqətən qovşaqlarının qoyaraq, və edirik sonra yaratmaq, və vasitəsilə axtarış. Yəni bunu etmək üçün ən yaxşı yol ola bilər. OK, bu problem haqqında hər hansı bir sualınız? Auditoriya: Bu əlaqədar qeyd edir. Biz run dəfə müqayisə olacaq hash masalar, ikili axtarış ağacları, et Cetera? JASON Hirschhorn: Yəqin ki. Belə ki, həqiqətən tez bunu edək. Hash masa üçün vaxt Run - başqaları nə var? Binary ağac? Auditoriya: Link siyahıları. JASON Hirschhorn: OK, insert edək. Insert böyük O nədir bir hash masa? Fərziyyələr hansılardır Siz edirik? Auditoriya: Siz at daxil olduğunuz Bu link siyahısı başlayan. JASON Hirschhorn: Yəqin ki, ilk ehtimal heç bir toqquşma vardır. Heç bir toqquşma sonra, varsa durub zaman biridir. Var toqquşma və siz değilseniz ayrı-ayrı chaining etdiyini və daxil Bu link siyahısı başında, sonra durub da daimi deyil. Bir hash table etdiyini ancaq edirsinizsə məşğul fərqli bir üsul var toqquşma ilə, nə fərqli bir üsul? Fərqli bir üsul Nə edir ilə məşğul bir hash masa toqquşma? Auditoriya: Xətti proqramlaşdırma. JASON Hirschhorn: Xətti proqramlaşdırma. Beləliklə, biz axtarır saxlamaq olacaq növbəti açıq spot üçün. Ki, daimi durub zaman deyil. Siz vasitəsilə getmək üçün ola bilər bütün masa, belə ki, n böyük O ola bilər. Bəli. Auditoriya: Əks halda yalnız chaining? JASON Hirschhorn: Biz etdi ayrı-ayrı chaining. Bu birincisi oldu. Ki, nə link siyahısı. Xülya adı ayrı-ayrı chaining edir. Bu siyahısı strukturu hər hansı bir növü ola bilər biz link siyahıda nə üçün baş verir. Belə ki, yenə bir hash masa durub daimi zaman ola bilər. Nə durub haqqında bir stacker queue? Auditoriya: daimi deyilmi? JASON Hirschhorn: Bu daimi vaxt var. Siz yalnız onu məcbur edirik. OK. Durub, digər olanları nə idi? Bir cəhd On? Bir cəhd durub böyük O nədir? Auditoriya: Length daimi deyil. Ən uzun Length - sözün uzunluğu Siz daxil olduğunuz. JASON Hirschhorn: Bağışlayın? Gözləyin, mən nə eşitmisiniz? Siz dediniz - Siz nə demək idi? Sizin cavab Marcus nə idi? Auditoriya: Sözün uzunluğu Siz simvol daxil olduğunuz, bir xarakter cəhd var hərfinin. JASON Hirschhorn: OK, belə ki, sözün uzunluğu. Biz ehtimal etmək lazımdır ki, Bu simvol bir simli var. Siz də, fərqli bir şey edib. Siz uzun sözün uzunluğu bildirib. Auditoriya: Bu doğru, yalnız daimi var? JASON Hirschhorn: Niyə Bu daimi olacaq? Auditoriya: kimi, böyük O istifadə əgər notation, o əsaslı fərqli deyil şeyi sayı ki, Bu cəhd artıq. JASON Hirschhorn: Biz ki Bu daimi vaxt demək. Bu daimi daxil edir, və ki, bu fikir, çünki - biz, 45 ki, bir söz var ki və ya 60 ki, bir söz ki, sabit bir sayı var. Və yalnız daxil olunacaq daimi vaxt. Təcrübədə, baxmayaraq ki, ola bilməz, Aydındır ki, bir millisecond baş, məsələn. Amma biz böyük O demək olardı Bir cəhd üçün daimi. Və biri onun ən böyük üstünlükləri. Nə link siyahısına daxil durub haqqında? Just ümumi sıralaması link siyahısı? Bəli. Auditoriya: Mən bir sual var idi. Test, onlar bizə bu xahiş edirəm dörd addımlar var ki, durub zaman, və ya bir şey? Və ya yalnız - Siz daxil zaman bir deyəndə, yalnız daimi vaxt deməkdir? JASON Hirschhorn: Bəli, onlar həmişə n böyük O ki, xahiş? Log n Big O? N daimi kvadrat. Bu həqiqətən yalnız Bildiyiniz üçün lazım olanları. Nə üzərində durub haqqında link siyahısı sıralanır? Auditoriya: Mən bir sual var idi - bir sual - JASON Hirschhorn: cavab nədir Bu suala, baxmayaraq ki? Auditoriya: siz nə xahiş etdi, gözləyin? JASON Hirschhorn: big O nədir bir sıralanır link siyahısına daxil durub? Auditoriya: One? No wait, No wait, n. JASON Hirschhorn: N. başqa link siyahısı. Və sual nə idi? Auditoriya: Belə ki, yazmaq olardı üçün k və ya 1 o o - JASON Hirschhorn: Oh. Mən yəqin ki, 1 o yazmaq olardı. Başqa data strukturu var idi ki, yaxşı olardı. Tree, ikili axtarış ağac. A Nə durub ikili axtarış ağac? Auditoriya: Giriş. JASON Hirschhorn: Belə ki, pis nədir bir ikili axtarış ağac halda? Biz 5-də başlayacaq və hər baş Belə ki, əgər sayı, sonra 5-dən böyükdür biz 5, 7, 9, 11, Et Cetera var. Bu halda, bu, əsasən yalnız bir link var siyahısı, və biz bütün daxil lazımdır sonunda yol. Belə ki, n böyük O var. Yəni bizim ən pis halda ola bilər bir ikili axtarış ağac. Aydındır ki, siz tikintisi heç vaxt Bu 5 ilə ikili axtarış ağac orta, 5 bilmədən ən aşağı sayı. Değilseniz Lakin bu, ola bilər sıfırdan başlayaraq. Bu əvvəl hər hansı bir sual mən başqa suala keçin? Yaxşı bir sual idi. Mən böyük O bilirik ki - Auditoriya: Axtarılanlar haqqında o dörd? JASON Hirschhorn: Konkret biz axtarış və çeşidlənməsi idi. Biz bütün bu alqoritmlər etdi. Gözləyin, ki Quiz 1 üçün? Ki, əhatə etmişdir - Əgər siz artıq var idi ki, Quiz 1 sual? Binar axtarış böyük O uzunluğu, durub sort, bubble sırala? Auditoriya: Bəli. JASON Hirschhorn: Siz olsaydı ki, Quiz 0 sual üzərinə, bahis siz iradə var Quiz 1 eyni dəqiq sual almaq. O bilmək hələ yaxşı ola bilər. Inşallah artıq GH bilməlidir. Amma digər logarithmic runtimes yəqin ki, bilmək yaxşı. Quiz 0 əhatə deyil ki Things. Bütün bu operatorlar kimi bu mücərrəd data növləri. OK, edək keçin. Bu olduqca sürətli olmalıdır. Bu biz bir yeni dil həqiqətən əvvəl kodlu. Bu sual, xahiş edir PHP kod. Belə ki, aşağıdakı PHP array hesab edir. PHP və / və ya HTML kodları yazmaq belə ki, TFS ilə iki sütun masa nəticələr adları və evləri. Siz əvvəl bu həyata heç etdik, Bu xüsusi problem. Amma bu çox tanış olmalıdır nə problem etdi 7 təyin. Mən sizə olacaq bahis istəyən olardı PHP bir şey kod xahiş nə çox oxşardır 7 problem set etdi. Birincisi, array xüsusi deyil. Bu nə növü array? Auditoriya: Assosiativ. JASON Hirschhorn: Bu assosiativ array. Və bir arasında fərq nədir assosiativ array və obyekt? Auditoriya: An object array indeksi var integers və assosiativ array simli bir göstəricidir, və ya kimi bir şey. JASON Hirschhorn: belə ki, bir sıra obyektlərin göstəriciləri var ki integers, lakin bir obyekt sahələri var. Bu kimi həmin sahələrdə adları var , ev, tələbə adı. Siz bir fikir var? Auditoriya: Bəli, assosiativ array sağ, PHP edir? Və object JavaScript edir? JASON Hirschhorn: Sözün düzü, heç bir var arasında real fərq. Həm düymələri kimi strings var, və bilərsiniz dəyəri kimi əsasən bir şey var. Müxtəlif dillərdə bir zəng şey assosiativ array, bir şey bir obyekt. Belə ki, vicdanla, heç bir real var fərq, lakin bəzi əlbəttə var sintaktik fərqlər arasında. Bəli. Auditoriya: Belə object də altında kodlu sonra hash masa kimi başlıq? JASON Hirschhorn: Nə demək, başlıq altında kodlu? Auditoriya: Biz Bildirilib ki assosiativ array texniki oldu hash table. Belə ki object texniki da bir hash table? JASON Hirschhorn: getmirəm bu suala cavab. Hesab edirəm ki, geri almaq lazımdır. Amma ya düşünmək olmaz belə bu. Lakin, hər hansı bir şəkildə, assosiativ array və obyekt, ümumiyyətlə, insanlar bu istifadə şərtləri əvəz. Bu halda, sərin hissəsi Siz düymələri istifadə edə bilərsiniz. Düymələri, daha çox kimi Strings yalnız sadə ədəd. Mən söhbət etdik Bu biraz üçün. Ümid edirəm ki, bəzi insanlar var kazanılmış bu başlamışdır. Biz bəzi PHP və HTML yazmaq olacaq biz iki sütun almaq kodu, belə ki, TFS adları və ev masa. OK, Mən də bir mövzu istəyirəm Bu masa satır. Mən düz almaq üçün gidiyorum bu daxil. Biz, yeni fayl olacaq və biz olacaq - OK. Necə bir masa başlar? Tag nə var, Michael, bir masa başlamaq üçün? Auditoriya: Cədvəl. JASON Hirschhorn: Cədvəl. Mən bir tag açmaq əgər, nə Başqa lazımdır? Auditoriya: A baş? Və ya, hərhalda, sinif. JASON Hirschhorn: Belə ki, sorry. Biz artıq yazdıq Fərz edək ki, doctab, HTML, bütün stuff. Amma bu masa tag açmaq əgər, nə başqa mən yazmaq lazımdır? HTML doğrulamak? Auditoriya: bağlayın. JASON Hirschhorn: tag bağlayın. Nasıl yaxın masa tag yazmaq edirsiniz? Auditoriya: Dot masa doğramaq. JASON Hirschhorn: böyük, masa Slash. Yəqin ki, həm də yazmaq anlamlı bir araya çünki siz bunu var. Mən header sıra istəyirsinizsə OK, necə Mən adları ilə bir header sıra yazmaq? Auditoriya: az mı 10 hr yaxın çox - TR, evet. JASON Hirschhorn: TR? Auditoriya: Sonra eyni şey, çizgi, evet. JASON Hirschhorn: OK, və Mənə iki sütun verir. Auditoriya: T D? JASON Hirschhorn: OK. Mən iki sütun istəyirəm. Bu mənə iki sütun verir? Bu necə çox sütun edir? Biri. Belə ki, surəti imkan və bu yapışdırıb. Yəni əslində, viktorina, bütün bu kodu Biz bu günə qədər idi yazdıq ki, həqiqətən sizə veriləcək. Amma siz hələ yəqin ki, olmalıdır yazmaq necə. Bəli. Auditoriya: Sizin ev arasında edir. JASON Hirschhorn: Boom. Bu doğru, orada getmək lazımdır? Yaxşı zəng. Belə ki, yenə bütün bu kodu həqiqətən edir faktiki viktorina sizə verilir. Amma onu yazmaq üçün əyləncə var, və siz yazmaq necə olmalıdır. Siz lazım Belə ki, bu kodunuzu başlamaq üçün. Nə biz burada yazmaq lazımdır? Bağışlayın, mən dəyişdirmək lazımdır Bu fayl adı. Belə ki, biz, bir. HTML fayl onu xilas bir. PHP fayl. Bunlar heç bir şey demək olardı a. PHP fayl. Beləliklə, biz bir. HTML faylı istəyirik. Ilk şey nədir Mən yazmaq lazımdır? Mən bəzi PHP qoymaq istəyirəm HTML kodu. Auditoriya: PHP, başqa yerkökü kimi və sual işarəsi PHP, sağ? JASON Hirschhorn: Great. Və necə ki, başa edirsiniz? Auditoriya: bir sual işarəsi ilə. JASON Hirschhorn: Bu harika. Mən istəyirəm, mən lazım olan ilk şey Burada bəzi PHP kodu qoymaq üçün. Auditoriya:. Mən düşündüm bir PHP fayl HTML bilər. JASON Hirschhorn: Bəli. A. PHP fayl bəzi bilər HTML və göstərilir. Bu mənim pis idi. Mən yalnız taklit çalışır Bu viktorina nə. OK, siz çaşdırmaq üçün sorry. Bəli, practice.HTML. İndi biz qoymaq olacaq da bəzi PHP kodu Ilk line nədir PHP kodu I yazmaq lazımdır? Mən bu array vasitəsilə getmək üçün gedirəm və bir masa daxil etmək. Bəli. Auditoriya: Siz istifadə edə bilərsiniz loop üçün H loop və ya bir üçün. JASON Hirschhorn: OK, nə Siz istifadə etmək istəyirsən? Auditoriya: Mən loop üçün istifadə edir. Sonra üçün və dollar işarəsi i 0 nöqtəli vergül dollar bərabərdir 2-dən i az imzalamaq. Və sonra nöqtəli vergül i dollar i plus plus olun. JASON Hirschhorn: necə Bir 2 istifadə etmək üçün bilirik? Iki var idi Auditoriya: böyük daxilində assosiativ Diziler assosiativ array. JASON Hirschhorn: Belə ki, böyük şey Agentliyi bir asılı array. Böyük şey yalnız bir normal array var. Amma doğru danışırsınızsa var iki assosiativ Diziler bizim böyük array daxilində. Siz iki istifadə görə. I hərfinin narahat hiss ki, onlar 2 istəyirik, nə yazmaq üçün bir yoldur onlar 2 olduğunu fərz etsək bu? Auditoriya: [işitilemez]? JASON Hirschhorn: OK, necə ki, yazmaq edirsiniz? Auditoriya: Foreach dollar işarəsi TFS və ya kimi dollar işarəsi tf. JASON Hirschhorn: OK, belə ki, hər TFS kimi TFS, mən indi, istəyirəm yenə mənim masa var. Belə olan mənə verə bilər kodu növbəti line? Auditoriya: Print, və sonra kotirovkaların, bracket tr end bracket, son quote. End parantez, nöqtəli vergül. JASON Hirschhorn: OK, və nə nə olacaq? Auditoriya: Bu, yeni bir sıra demək olacaq. Bu qoymaq üçün gedən Yeni sıra üçün tag. JASON Hirschhorn: Sağ, bu PHP kimi Biz əvvəllər haqqında danışdı - bu PHP sonra qiymətləndirdi olacaq və bu faylı üçün çap olacaq masa dartmaq, və sonra HTML qiymətləndiriləcək. Biz yalnız bu çıxarmaq edirik Bura qədər idi HTML. Bəli. Auditoriya: [işitilemez]? JASON Hirschhorn: Bağışlayın? Bu sağ burada. 2012-Fall. Cavablar baxmaq etməyin, birlikdə həll edək. Beləliklə, biz masa sıra çap. Beləliklə, siz yəqin edirik şeyi swing. Növbəti line nədir kodu yazmaq lazımdır? Assam, mənə kodu növbəti line verir. Auditoriya: Siz TF adı lazımdır. Tf açıq Mötərizədə dırnaq işarəsi qapalı Mötərizədə ad. JASON Hirschhorn: mənə ad verin. Auditoriya: Siz çap etmək lazımdır. [Interposing SƏSLƏRİ] JASON Hirschhorn: OK, necə Mən bunu çap edirsiniz? [Interposing SƏSLƏRİ] JASON Hirschhorn: I itkin alıram İndi bir şey. Mən nə itkin alıram? Auditoriya: Siz bir dollar işarəsi ehtiyac. JASON Hirschhorn nə Başqa itkin edirəm? Biz bu günə qədər çap etdiyiniz bütün az deyil. Auditoriya: bundan sonra az bağlayın. JASON Hirschhorn: Beləliklə, biz ehtiyac sonra az bağlayın. Biz kimik itkin nəyi görür line 16? Bəli, Anna. Auditoriya: Siz açmaq lazımdır td və qıvrım aşırma. JASON Hirschhorn: Və biz qıvrım aşırma qoymaq bilərəm? Auditoriya: tf adı Around. JASON Hirschhorn: Bu kimi? Auditoriya: Bəli. Və sonra td bağlayın. JASON Hirschhorn ki kimi? Auditoriya: Siz ikiqat kotirovka lazımdır qıvrım aşırma yanında nişanları? JASON Hirschhorn: Right here? Xeyr, deyil. Belə ki, məhz doğru. Bəli. Auditoriya: Belə ki arasındakı fərq və nöqtələr ilə encatenating, əgər Siz nöqtələr istifadə, siz var istədiyiniz çift ​​tırnak işaretleri, sonra bir dot, sonra dot - JASON Hirschhorn: Correct. Belə ki, son var deyərək edirik yol kimi bu yazı. Nə concatenation operator JavaScript? Auditoriya: A plus sign. Siz qoymaq unuttum buruq geri burğu. JASON Hirschhorn: Great. Və daha bir xətt var kodu itkin. Kim mənə son line verə bilər kodu əskik edirik? Auditoriya: Just eyni şey, yalnız ev əvəzinə adı ilə. Böyük JASON Hirschhorn: Great. Və syntax üçün doğru deyil Asılı sıra şeyi əldə. Belə ki, faktiki viktorina, siz var həqiqətən, burada qədər verilir. Belə ki, bu kodu sizə verilmişdir. Yazmaq idi bütün bu idi dörd xətləri və yadda masa tag yaxın. Siz uşaqlar həqiqətən etdi bütün və daha çox. Bəli. Auditoriya: Belə ki funksional olacaq yalnız idi, eyni ki, bütün böyük bir print zəng, sağ? Və sonra yalnız zəncirləmə bu, et Cetera? JASON Hirschhorn ki kimi? Auditoriya: Bəli. Siz əgər bu, yalnız yaxşı baxmaq deyil Siz yoxlanılması etdiyiniz zaman bu baxaraq Web sitenizde element, sağ? JASON Hirschhorn: Mən razıyam. Mən bu web yüklü, mən olacaq heç bu PHP kodu görmək? Auditoriya: Xeyr JASON Hirschhorn: Xeyr Və həqiqətən, mən deyil. Auditoriya: Bu doğru, HTML deyil? Beləliklə, siz edə bilər - JASON Hirschhorn: Belə ki, bu PHP ki server yan qiymətləndiriləcək. PHP həmişə belə, server yan qiymətləndirilir Siz PHP kodu görmək heç vaxt istəyirik. Auditoriya: Amma siz olarıq izləri nəticəsini görürük. JASON Hirschhorn: Right. Və vicdanla ola bilər xətti onu bütün qoymaq. Bu, sizin üçün gözəl format bilər və ya bir xətt onu qoymaq bilər. Aydın. Amma bəli, yaxşı point. Auditoriya: Necə oldu gəlib üçün heç bir mətn işıqlandırılması PHP əmrləri hər hansı? Mən görən xatırlayıram çünki. JASON Hirschhorn: bir Çünki . HTML burada üst qədər fayl. Orada getmək. Auditoriya: Biz ilkin üsulu etdim varsa loops üçün, sağ, əgər biz , bir TFS daxil etmək istəyirdi ki, biz sonra, TFS bracket 0 bracket etmək [Işitilemez]? JASON Hirschhorn: Görsən - belə ki, siz, loop üçün üçün deyərək edirik dollar işarəsi TFS bracket 1 edəcəyini və ya i, doğru. Və ya dollar işarəsi i bracket bağlamaq və sonra kvadrat mötərizə ikiqat quotes, evet. OK, əla. Biz bir daha sürətli bir var. Seven dəqiqə, mən istəyirəm bu bir artıq getmək üçün. Bu bir nümunəsidir. İndi tamamilə başqa dil istəyirik. Biz bəzi HTML kod var. Bu cür kiçik ekranda, lakin Mən sizə həqiqətən vasitəsilə baxmaq istəyirəm tez və kimsə mənə deyə bilərsiniz, Mən bu web page yüklemek üçün idi, əgər Mən görmək nə? Haqqında hər şeyi təsvir bu web. Noah? Mən nə görmək olardı? Auditoriya: ön sonuna da Kodu Mətn və bir hiss ilə Google submit 'düyməsinə. JASON Hirschhorn: Hansı düyməsini deyəcəksiniz? Auditoriya: tarixi. Oh, search. Üzgünüm. JASON Hirschhorn: Bu axtarış deyərdim. , Adını xatırlayıram. Biz nə üçün adı istifadə edirsiniz? Bu ad atributu, nə üçün istifadə? [Interposing SƏSLƏRİ] Auditoriya: onun adı var Bu tıklayan zaman? JASON Hirschhorn: Bu ola bilər. Amma nə biz ümumiyyətlə görürsünüz - niyə Biz bu adı növbə verir? Niyə biz görürük? Bəli. Auditoriya: ki, index olmur super qlobal dəyişən? JASON Hirschhorn: Bəli, ümumiyyətlə zaman Bu forma sonra təqdim və harada Bu təqdim edərdiniz? Nə səhifə? Nuh nə səhifə bu təqdim edərdiniz? Auditoriya: Mən əmin deyiləm. JASON Hirschhorn: Harada biz bunu tapa bilərsiniz bilər? Harada tapa nə səhifə bu təqdim? Nə kodu xətt? Auditoriya: Form fəaliyyət. JASON Hirschhorn: Exactly. Action. Belə ki, axtarış səhifə üçün təqdim edir. Backslash axtarış. Belə ki, məhz doğru. Nə üsul? Auditoriya: alın. JASON Hirschhorn: alın. Məhz. Beləliklə, biz bu oxumaq. Bu forma olacaq. Siz doğru edirik. Şəklində iki şeyi adı səhifə və üst Google olardı. Belə ki, burada olmalıdır iki suallar Bu səhifə haqqında cavab biləcəklər. Bu HTML Bu veb yaşayır və əgər istifadəçi bu mətn daxil səhv giriş burada sahədə, nə URL olacaq istifadəçi ilə özünü tapmaq şəklində təqdim? Beləliklə, biz burada bu var. Mən geri getmək üçün gedirəm baxmayaraq ki, bu səhifə. Mən bu ilk hissəsi yazmaq lazımdır. Hamı burada bax edə bilərəmmi? OK, Mario, siz bilirsiniz? Nə səhifə? Auditoriya: backslash axtarış. JASON Hirschhorn: Mən gedirəm burada hərəkət etmək. OK, backslash search sual mark q səhv bərabərdir. Kimse Yok Mu fərqli bir təklif var? Bəli. Belə ki, necə biz bu alıram? Yaxşı, biz əvvəl bu gördüm. Və bu əvvəllər ilə gəldi. Sağ idi, Nuh ki, hərəkət bizə izah edir səhifə biz olacaq. Biz də nə metod bilirsiniz. Biz almaq edirik. Və get və post arasında fərq URL ki, ekran almaq və post deyil. Mən orada yazdı Belə ki, əgər üsulu, nə müxtəlif ola bilər? Auditoriya: Bu, yalnız ki slash axtarış ola bilər. JASON Hirschhorn: Bu ki yalnız axtarış doğramaq bilər. Burada heç bir şey olardı. Amma bir almaq, URL, çünki aşağıdakı kimi göstərilir. Birinci biz bir sual işarəsi görmək və biz adı və dəyəri görmək. Orada başqa bir mətn sahəsində idi və demək Mən giriş bunun r bir ad verdi və dəyəri, tırtıl. Bu artıq nə kimi görünür? Mən bir daha mətn sahəsində veririk r və tırtıl bir dəyər ad. Auditoriya: bar sonra istədiyiniz işareti tırtıl. JASON Hirschhorn: var Ampersand deyil. Auditoriya: Və ya yalnız nə Bu və rəmzi. JASON Hirschhorn: Bəli, no. Siz sağ idi, mən yanlış idi. Ki, bir g kimi. Auditoriya: Caterpillar. r üzr, tırtıl bərabərdir. JASON Hirschhorn: var Orada heç bir r? Auditoriya: Xeyr, var. JASON Hirschhorn: Biz danışmaq lazımdır sinif sonra ki, haqqında. Dəqiq doğru. Belə ki, və doğru deyil. Və sonra bu çox ola bilər, və onlar bütün zəncirləmə olunacaq birlikdə və. Belə ki, məhz doğru. Daha bir sual var. Başlayaraq, bu HTML nin DOM eskiz sənəd ilə. Biz iki dəqiqə bunu edə bilər. Biz burada artıq edəcəyik. Mən bu web page getmək lazımdır. OK, biz sənəd ilə başlayın. Növbəti nədir? Beləliklə, siz vasitəsilə oxumaq etdiyiniz zaman - Auditoriya: HTML. JASON Hirschhorn: HTML yanında. Biz Tag tərəfindən tag getmək olacaq. HTML sonra nə var? Auditoriya: Head. JASON Hirschhorn: Head. Rəhbəri sonra nə var? Auditoriya: Title. JASON Hirschhorn: Title. Və adı, Google bir dəyəri var amma fikrində deyiləm İndi ki, yazın. OK, burada bədən getmək edir? Auditoriya: Həmçinin HTML off gəlir. JASON Hirschhorn: Exactly. Body burada off gəlir. Niyə hamı görür ki, işin var? Siz yəqin ki, anlamaq lazımdır bu da, mən yox idi, hətta bu gözəl abzas. Bu abzas sort, onu üz verir ancaq baş tag olduğunu görə bilərsiniz yəqin ki, biz deməkdir ki, bağlanıb burada enmək bilməz. Biz geri getmək lazımdır nə sağ rəhbəri əvvəl idi tag, və ya altında. Biz baş tag ilə hətta istəyirik. Və bədən altında formu gedir. Forma altında, iki giriş var. OK. Mən var bütün. Quiz 1 sabah. Mən sizə uşaqlar üçün heyecan alıram. Bu bir partlayış olacaq. Əgər - Auditoriya: [Alqış] JASON Hirschhorn: Oh dayandırmaq, dayandırmaq. Amma xeyr, mən söylüyorum deyiləm. Hər hansı bir sualınız varsa, sağ bölməsində sonra, mən xaricində olacaq. Əgər hər hansı bir sual axşam varsa zəng etmək üçün çekinmeyin, e-poçt, Gchat, carrier mənə göyərçin. Sabah Uğurlar. Gözəl Thanksgiving fasilə var, Mən əvvəl görmürəm əgər. Mən Şükran sonra siz görəcəksiniz Bizim final üçün çərşənbə axşamı bölmə party heç. Auditoriya: [işitilemez]. JASON Hirschhorn: Great. OK, Mən növbəti uşaqlar görəcəksiniz həftə və ya iki həftə. Və sabah uğurlar yaxşı.