1 00:00:00,000 --> 00:00:08,090 2 00:00:08,090 --> 00:00:09,810 >> JASON HIRSCHHORN: მოგესალმებით, ყველას, კვირაში 10. 3 00:00:09,810 --> 00:00:15,130 ეს არის საინტერესო week რადგან ხვალ არის Quiz 1, რომელიც ჩვენ მიიღებს 4 00:00:15,130 --> 00:00:16,400 to მეორე. 5 00:00:16,400 --> 00:00:21,770 დღეს სექციაში, ჩვენ ვაპირებთ წასვლა მეტი რამდენიმე რესურსების ვიქტორინა, და 6 00:00:21,770 --> 00:00:24,890 მერე პასუხს ნებისმიერი და ყველა კითხვები თქვენ ბიჭებს აქვთ. 7 00:00:24,890 --> 00:00:27,880 და ჩვენ საბოლოოდ დასრულდება გარკვეული პრაქტიკის პრობლემები. 8 00:00:27,880 --> 00:00:30,940 >> ჩვენ შეგიძლიათ გაატაროთ მთელი განყოფილებაში შეკითხვებს. 9 00:00:30,940 --> 00:00:33,240 ჩვენ შეგიძლიათ გაატაროთ მთელი განყოფილებაში აპირებს მეტი პრაქტიკა პრობლემები. 10 00:00:33,240 --> 00:00:36,890 ჩვენ უბრალოდ გაფართოებას შევსება სივრცე და დრო გვაქვს. 11 00:00:36,890 --> 00:00:40,590 >> ასე რომ მე ზუსტად ამ სიაში ყოველ კვირას, მაგრამ ეს განსაკუთრებით მნიშვნელოვანია ამ კვირაში. 12 00:00:40,590 --> 00:00:44,980 შესასწავლად, თუ თქვენ არა გაქვთ დაიწყო, რა ბიჭი. 13 00:00:44,980 --> 00:00:46,400 მაგრამ იმედია თქვენ დაიწყო. 14 00:00:46,400 --> 00:00:50,710 და თქვენ ვაპირებთ საშუალებით მასალები და რესურსი აქ ჩამოთვლილი. 15 00:00:50,710 --> 00:00:54,300 მე მაღალ რეკომენდაციას რიგი ამ. 16 00:00:54,300 --> 00:00:58,780 >> კერძოდ, ლექცია შენიშვნები ძალიან მნიშვნელოვანი და სასარგებლოა. 17 00:00:58,780 --> 00:01:02,880 Study.cs50.net უზრუნველყოფს დიდი მაჩვენებელი, ბევრი 18 00:01:02,880 --> 00:01:04,250 თემებზე, ჩვენ დაფარული. 19 00:01:04,250 --> 00:01:07,810 მას ასევე აქვს რამდენიმე დიდი პრაქტიკაში პრობლემები. 20 00:01:07,810 --> 00:01:11,260 და მაშინ, Google არის დიდი, ძალიან. 21 00:01:11,260 --> 00:01:12,360 მე არ ვიცი, რა ნეტავ გამოიყენოს იგი. 22 00:01:12,360 --> 00:01:14,090 მაგრამ გამოიყენოს Google, ისევე. 23 00:01:14,090 --> 00:01:16,680 >> მივაწვდინოთ ჩემთვის თუ თქვენ გაქვთ რაიმე შეკითხვები, კომენტარები, ან შეშფოთება. 24 00:01:16,680 --> 00:01:19,420 შეხედეთ მეტი მიმოხილვის სხდომა სლაიდიც ღამით. 25 00:01:19,420 --> 00:01:21,540 ან, თუ თქვენ გაქვთ გარკვეული დროის განმავლობაში, უყუროთ ვიდეო. 26 00:01:21,540 --> 00:01:24,930 მათ ბევრი სასარგებლო მასალა და ინფორმაცია. 27 00:01:24,930 --> 00:01:29,730 და ცდილობენ და მოიცავს თუ არა ყველა, ბევრი თემებზე, ჩვენ დაფარული და რომ თქვენ 28 00:01:29,730 --> 00:01:32,610 შესაძლოა ნახე ვიქტორინა. 29 00:01:32,610 --> 00:01:35,590 >> ვსაუბრობ ინტელექტუალური, რომელიც იქნება ხვალ. 30 00:01:35,590 --> 00:01:37,260 ის 75 წუთის განმავლობაში. 31 00:01:37,260 --> 00:01:40,740 ბევრი იღებენ მას 1 საათზე, და ზოგიერთი ხარ 32 00:01:40,740 --> 00:01:42,740 აღების at 5:30. 33 00:01:42,740 --> 00:01:45,300 იმ დროს თქვენ მიღების და მდებარეობა თქვენ აღების მას, დარწმუნდით 34 00:01:45,300 --> 00:01:49,400 თქვენ შეამოწმეთ დოკუმენტი წლის CS50.net მთავარ გვერდზე. 35 00:01:49,400 --> 00:01:54,340 >> გახსოვდეთ, რომ თქვენ შეგიძლიათ მიიღოთ ერთი 8 1/2 11 ფურცელი მიიღოს თქვენთან ერთად. 36 00:01:54,340 --> 00:01:57,310 ხშირად ხალხი არ გამოიყენოს ეს ფურცელი ყველა დროს ვიქტორინა. 37 00:01:57,310 --> 00:01:59,740 მაგრამ რეალურად, ეს არის წარმოუდგენლად სასარგებლო სასწავლო ინსტრუმენტი. 38 00:01:59,740 --> 00:02:04,370 ასე აყენებს ერთად რომ ფურცელი რა გავატარე, ალბათ სამი ან ოთხი საათის 39 00:02:04,370 --> 00:02:07,110 აკეთებს როცა სწავლობს CS50 და რომ იოლად ყველაზე გამოსადეგი 40 00:02:07,110 --> 00:02:08,740 გზა მე ვერ შესწავლა ვიქტორინა. 41 00:02:08,740 --> 00:02:10,949 ისე კი, თუ თქვენ გაქვთ რაიმე სხვა ადამიანების სასწავლო გიდები შევხედოთ და 42 00:02:10,949 --> 00:02:14,740 გამოიყენოთ როგორც მითითება, უაღრესად რეკომენდაცია მიღების საკუთარი სასწავლო სახელმძღვანელო, აყენებს 43 00:02:14,740 --> 00:02:15,490 რომ პერსონალის ერთად. 44 00:02:15,490 --> 00:02:17,335 რომ ნამდვილად დაგეხმარებათ ვისწავლოთ ყველა მასალა. 45 00:02:17,335 --> 00:02:20,270 46 00:02:20,270 --> 00:02:24,810 >> ბოლო, მაგრამ არანაკლებ ამ სექციაში, მას შემდეგ, რაც ინტელექტუალური ხვალ არსებობს ერთი 47 00:02:24,810 --> 00:02:25,940 უფრო ლექცია - 48 00:02:25,940 --> 00:02:26,960 მომავალი ორშაბათიდან. 49 00:02:26,960 --> 00:02:30,430 კიდევ ერთი მონაკვეთი, არ მომავალ სამშაბათი ადრე მადლიერების, მაგრამ 50 00:02:30,430 --> 00:02:31,630 სამშაბათი ამის შემდეგ. 51 00:02:31,630 --> 00:02:36,600 ჩვენ უნდა შეხვედრის ერთად საბოლოო მშვიდობით პარტიის და ასევე აკეთებს ზოგიერთი cool 52 00:02:36,600 --> 00:02:41,530 რამ მისაღებად თქვენ ბიჭები აღფრთოვანებული შესახებ შემდგომი კვლევების კომპიუტერულ მეცნიერებაში. 53 00:02:41,530 --> 00:02:45,040 >> კიდევ ერთი პროექტი, კიდევ ერთი სამართლიანი, კიდევ ერთი Hackathon. 54 00:02:45,040 --> 00:02:47,900 ჩვენ nearing ბოლომდე CS50, რომელიც არის საინტერესო - 55 00:02:47,900 --> 00:02:50,950 არამედ, თუ თქვენ, ისევე როგორც ჩემთვის, ცოტა სევდიანი. 56 00:02:50,950 --> 00:02:53,950 სანამ გადაადგილება, ვინმეს აქვს რაიმე შეკითხვა, თუ რა 57 00:02:53,950 --> 00:02:55,200 ჩვენ დაფარული აქამდე? 58 00:02:55,200 --> 00:03:02,760 59 00:03:02,760 --> 00:03:08,730 >> OK, ისე მოდით წავიდეთ მეტი რამდენიმე შეკითხვებს რომ თქვენ გაქვთ ვიქტორინა და თემები 60 00:03:08,730 --> 00:03:09,960 ჩვენ შეიძლება დაფაროს. 61 00:03:09,960 --> 00:03:11,540 ასე რომ, ეს არის სია, რომ მე ერთად. 62 00:03:11,540 --> 00:03:15,500 ეს არ ნიშნავს ამომწურავი, მაგრამ იმედია jog თქვენი მეხსიერება, თუ 63 00:03:15,500 --> 00:03:20,310 კითხვები ნებისმიერ ამ თემა, ან თუ თქვენ გაქვთ შეკითხვები შესახებ 64 00:03:20,310 --> 00:03:23,260 პრაქტიკის პრობლემები ტესტები წლის წარსული. 65 00:03:23,260 --> 00:03:27,470 >> მე მქონდა რამდენიმე კითხვა, რომელიც იყო ელექტრონული ფოსტით ჩემთვის, მაგრამ მინდა, გამართავს off 66 00:03:27,470 --> 00:03:29,490 იმ მეორე. 67 00:03:29,490 --> 00:03:34,570 ვინმეს გაქვთ რაიმე შეკითხვები, პრობლემები მათ არ ესმით, 68 00:03:34,570 --> 00:03:38,100 პასუხი მათ არ ესმით მისაღებად us დაიწყო? 69 00:03:38,100 --> 00:03:39,520 Avi. 70 00:03:39,520 --> 00:03:41,585 >> აუდიტორია: შეგიძლიათ უბრალოდ მეტი DOM და აიაქსი მართლაც სწრაფი? 71 00:03:41,585 --> 00:03:46,540 Like, რაც ჩვენ უნდა ვიცოდეთ, ან უნდა მესმის მათ შესახებ? 72 00:03:46,540 --> 00:03:49,750 >> JASON HIRSCHHORN: მე ვაპირებ პასუხის გაცემა ზოგადად, ამ კითხვაზე, რა შემიძლია 73 00:03:49,750 --> 00:03:52,100 უნდა იცოდეთ ამ თემაზე x? 74 00:03:52,100 --> 00:03:55,280 იმის გამო, რომ ისეთი შეგრძნება მაქვს, ბევრ თქვენგანს ვაპირებთ, ვთხოვოთ მითხრა, რომ, თუ 75 00:03:55,280 --> 00:03:56,570 curious შესახებ. 76 00:03:56,570 --> 00:04:02,920 ასე რომ, იმის გათვალისწინებით, რომ თემა იყო დაფარული ლექცია, ან სექცია, ან 77 00:04:02,920 --> 00:04:06,460 study.cs50.net, პრობლემა შექმნას, თქვენ უნდა იცნობს მას. 78 00:04:06,460 --> 00:04:10,580 >> ასე რომ თქვენ არ უნდა იცოდეთ ყველა ტიპის საქართველოს აქვს, რომ შესაძლებელია HTML ან 79 00:04:10,580 --> 00:04:15,950 ყველა ტიპის ატრიბუტი ან ქონება თქვენ შეგიძლიათ მისცეს რაღაც CSS. 80 00:04:15,950 --> 00:04:20,204 მაგრამ თუ დაინახა ეს ლექცია მაგალითად, თუ დაინახა ეს პრობლემა 81 00:04:20,204 --> 00:04:23,290 კომპლექტი, თქვენ უნდა ალბათ იყოს ნაცნობი ეს, განსაკუთრებით რამ ვნახე 82 00:04:23,290 --> 00:04:24,260 ლექცია. 83 00:04:24,260 --> 00:04:28,510 ასე რომ, ჩვენ განვიხილეთ დოკუმენტი ობიექტის მოდელი ცოტა 84 00:04:28,510 --> 00:04:30,530 განყოფილებიანი, უფრო ისე ლექცია. 85 00:04:30,530 --> 00:04:32,990 თქვენ უნდა იყოს ნაცნობი რომ ბევრი მას. 86 00:04:32,990 --> 00:04:34,750 >> და თქვენ უნდა იყოს იცნობს Ajax იგივე ზომით. 87 00:04:34,750 --> 00:04:38,105 ჩვენ არასოდეს დაინახა წარმოუდგენლად მოწინავე ან რთული მაგალითები Ajax, ასე რომ, 88 00:04:38,105 --> 00:04:40,920 თქვენ არ იქნება სთხოვა გავაკეთოთ რაღაც წარმოუდგენლად რთული. 89 00:04:40,920 --> 00:04:45,180 მაგრამ თქვენ შეიძლება სთხოვა, როგორ შემიძლია რათა Ajax ზარის გამოყენებით jQuery? 90 00:04:45,180 --> 00:04:47,350 რაც ვნახე ნომერი ჯერ ადრე, როგორც 91 00:04:47,350 --> 00:04:51,370 განიხილავს სხდომაზე და ლექცია და ეს მხოლოდ ორი ish ხაზი კოდი. 92 00:04:51,370 --> 00:04:53,190 >> ასე რომ, არის რაღაც თქვენ უნდა იცნობს. 93 00:04:53,190 --> 00:04:55,550 თუმცა ისევ და ისევ, ყველა ეს თემა, თუ ვნახე ის 94 00:04:55,550 --> 00:04:59,220 ადრე, ეს არის სამართლიანი თამაში. 95 00:04:59,220 --> 00:05:01,540 და ჩვენ შეიძლება გთხოვოთ, - ცხადია, ჩვენ ვაპირებთ გთხოვოთ, რამ 96 00:05:01,540 --> 00:05:02,340 არ მინახავს ადრე. 97 00:05:02,340 --> 00:05:04,240 კოდირების რაღაც თქვენ არა გაქვთ მინახავს ადრე. 98 00:05:04,240 --> 00:05:06,570 რაც არ უნდა ვთქვა, თქვენ არა გაქვთ ჩანს ინსტრუმენტები გადაწყვიტოს 99 00:05:06,570 --> 00:05:08,120 ამ პრობლემის წინაშე. 100 00:05:08,120 --> 00:05:09,200 თქვენ არ ჩანს, ვინც ინსტრუმენტები. 101 00:05:09,200 --> 00:05:11,160 >> მაგალითად, Quiz 1, თუ თქვენ უნდა კოდექსში strlen. 102 00:05:11,160 --> 00:05:12,790 ჩვენ არ კოდირებული strlen ადრე. 103 00:05:12,790 --> 00:05:14,980 მაგრამ თქვენ იცით, თუ როგორ გამოიყენოთ მარყუჟის, თქვენ იცით, თუ როგორ გამოიყენოთ იმ შემთხვევაში, თუ პირობები. 104 00:05:14,980 --> 00:05:18,570 თქვენ იცით, როგორ დავწეროთ ცვლადები in C. ეს იქნება იგივე აქ. 105 00:05:18,570 --> 00:05:22,350 თქვენ არ იქნება სთხოვა გავაკეთოთ არაფერი თქვენ არ მინახავს ადრე, მაგრამ 106 00:05:22,350 --> 00:05:25,150 თქვენ შეიძლება სთხოვა, როგორც, დააყენა რაღაც ერთად რომანის გზა, ან 107 00:05:25,150 --> 00:05:27,650 მოსაგვარებლად სხვადასხვა სახის პრობლემა. 108 00:05:27,650 --> 00:05:30,830 >> სამწუხაროდ, ეს არ იყო კონკრეტული თქვენს კითხვა, მაგრამ მიჭირს პასუხის შესახებ 109 00:05:30,830 --> 00:05:34,390 თითოეული თემა, რაც თქვენ გააკეთოს ან არ უნდა იცოდეს. 110 00:05:34,390 --> 00:05:36,830 არამედ, უკაცრავად, ბოლო რამ, რომ. 111 00:05:36,830 --> 00:05:42,900 გავატარეთ მნიშვნელოვნად მეტი დრო on ლინკი სიები, ვიდრე გვაქვს Ajax. 112 00:05:42,900 --> 00:05:46,160 თქვენ არ გამოიყენოს Ajax in პრობლემა კომპლექტი. 113 00:05:46,160 --> 00:05:48,510 ერთი ცენტრალური თვისებები, რომ პრობლემა კომპლექტი რომ იყო ლინკი სიებში. 114 00:05:48,510 --> 00:05:50,370 და ჩვენ გაატარა ბევრი დრო ლექცია და განყოფილების გამოყენება. 115 00:05:50,370 --> 00:05:57,080 >> ასე რომ, შანსები ლინკი სია ამუშავება მეტი ხშირად ინტელექტუალური, ვიდრე Ajax ნება. 116 00:05:57,080 --> 00:06:00,390 ან კითხვებს მქონე ვუყოთ ლინკი სია იქნება ღირს უფრო მეტი რაოდენობა. 117 00:06:00,390 --> 00:06:03,520 ასე რომ თქვენ შეგიძლიათ რა თქმა უნდა, აქცენტი და ვიწრო in რამ, რომ უფრო 118 00:06:03,520 --> 00:06:06,720 სავარაუდოა, რომ ამუშავება, რადგან ჩვენ გვაქვს გატარებული მეტი დრო მათ. 119 00:06:06,720 --> 00:06:08,700 >> OK ნებისმიერი სხვა კითხვები? 120 00:06:08,700 --> 00:06:09,890 ჰო. 121 00:06:09,890 --> 00:06:13,660 >> აუდიტორია: შეგვიძლია წავიდეთ გამოყენება ანონიმური ფუნქციები JavaScript? 122 00:06:13,660 --> 00:06:17,140 მე ცოტა დაბნეული შესახებ. 123 00:06:17,140 --> 00:06:20,180 >> JASON HIRSCHHORN: ასე რომ JavaScript - 124 00:06:20,180 --> 00:06:24,400 ვცდილობ ვფიქრობ, როგორ მე შეეძლო დაეწერა ეს - 125 00:06:24,400 --> 00:06:27,590 მოდით რეალურად გაიხსნას ეს კოდი. 126 00:06:27,590 --> 00:06:31,830 127 00:06:31,830 --> 00:06:36,030 ასე რომ, ეს არის კოდი, რომელიც ჩვენ გავაკეთეთ გასულ კვირას. 128 00:06:36,030 --> 00:06:41,400 და ვნახე ეს ადრე თუ აქ განყოფილებაში გასულ კვირას. 129 00:06:41,400 --> 00:06:43,180 ან თქვენ ჩანს რაღაც მსგავსი ადრე. 130 00:06:43,180 --> 00:06:44,800 >> მაგრამ შეგიძლიათ შევხედოთ ამ პირველი ხაზი. 131 00:06:44,800 --> 00:06:46,950 ეს არის, თუ როგორ დაიწყოს - 132 00:06:46,950 --> 00:06:48,010 ყველას უნახავს ეს ადრე. 133 00:06:48,010 --> 00:06:51,930 თუ გსურთ დააყენა რამდენიმე JavaScript კოდი, თქვენ ამას შიგნით ამ, ვთქვათ, 134 00:06:51,930 --> 00:06:53,520 თქვენ იყენებთ JQuery. 135 00:06:53,520 --> 00:06:56,940 ეს ამბობს, არ არაფერი სანამ დოკუმენტის დატვირთული. 136 00:06:56,940 --> 00:06:59,940 >> და შემდეგ, Curt, ხედავთ აქ ვაკეთებთ რაღაც მსგავსი - 137 00:06:59,940 --> 00:07:02,560 ფუნქციის ღია paren, დახურული paren. 138 00:07:02,560 --> 00:07:05,250 ასე რომ, ჩვენ არ ვაძლევთ ამ ფუნქციონირებს სახელი. 139 00:07:05,250 --> 00:07:09,160 ჩვენ არ ვაპირებთ, რომ განსაზღვროს ამ ფუნქციის უნდა აწარმოებს და შემდეგ 140 00:07:09,160 --> 00:07:10,830 მას bunch of ჯერ. 141 00:07:10,830 --> 00:07:15,140 ჩვენ უბრალოდ განაცხადა, რომ ეს დოკუმენტი უკვე იღებს ფუნქცია. 142 00:07:15,140 --> 00:07:16,690 რამდენიმე რამ უნდა გააკეთოს. 143 00:07:16,690 --> 00:07:20,670 >> და ჩვენ არ გსურთ გაატაროთ დრო ვაძლევთ მას სახელი ან გადარჩენა მას 144 00:07:20,670 --> 00:07:21,650 perpetuity. 145 00:07:21,650 --> 00:07:24,150 ჩვენ უბრალოდ გვინდა აწარმოებს ზოგი რამ. 146 00:07:24,150 --> 00:07:27,500 ასე რომ ანონიმური ფუნქცია sort საქართველოს ამ მიზანსაც ემსახურება. 147 00:07:27,500 --> 00:07:30,280 როდესაც თქვენ არ აპირებთ გამოიყენოთ რაღაც უსასრულოდ, ასე რომ თქვენ არ გჭირდებათ 148 00:07:30,280 --> 00:07:32,420 მისცეს მას სახელი - უბრალოდ მინდა გამოიყენოს იგი ერთხელ - 149 00:07:32,420 --> 00:07:36,720 თქვენ უბრალოდ ამბობენ ფუნქცია, მაგალითად, ამ შემთხვევაში, და თქვენ მხოლოდ 150 00:07:36,720 --> 00:07:38,280 განსაზღვრავს, რომ რაღაც თქვენ შეიძლება მისცეს სახელი. 151 00:07:38,280 --> 00:07:40,920 >> მსგავსად, ჩვენ შეიძლება გაიყვანოს ამ ფუნქციის out და მისცეს მას სახელი და შემდეგ მოვუწოდებთ, რომ 152 00:07:40,920 --> 00:07:41,760 ფუნქცია აქ. 153 00:07:41,760 --> 00:07:44,270 მაგრამ ჩვენ არ უნდა იმიტომ, რომ ჩვენ არ მინდა დაგვრჩა დრო ვაძლევთ მას სახელი ან 154 00:07:44,270 --> 00:07:46,240 გაყვანაა რაღაც ჩვენს სახელწოდება სივრცეში. 155 00:07:46,240 --> 00:07:47,530 და დაინახავთ, რომ ბევრი. 156 00:07:47,530 --> 00:07:52,810 მაგალითად, ჩვენ ვხედავთ, რომ ბევრი ამ კოდი, მაგრამ თქვენ მინახავს ეს ადრე, როდესაც 157 00:07:52,810 --> 00:07:54,010 თქვენ დააჭირეთ რაღაც - 158 00:07:54,010 --> 00:07:55,980 აწარმოებს ამ ტიპის კოდი. 159 00:07:55,980 --> 00:07:59,850 >> ჩვენ შეგვიძლია განვსაზღვროთ კოდი, რომ ჩვენ გვინდა როცა ჩვენ დააწკაპუნეთ, ამ შემთხვევაში, 160 00:07:59,850 --> 00:08:03,450 ამ ID, როგორც ცალკე ფუნქცია და შემდეგ აწარმოებს, რომ ფუნქცია. 161 00:08:03,450 --> 00:08:07,940 მაგრამ ამ შემთხვევაში, ჩვენ უბრალოდ skipping ეს ნაბიჯი და მოძრავი მას აქ და 162 00:08:07,940 --> 00:08:10,340 უბრალოდ განსაზღვრის ყველაფერი რომ ჩვენ გვინდა, რომ მოხდეს და 163 00:08:10,340 --> 00:08:12,450 არ ვაძლევთ მას სახელი. 164 00:08:12,450 --> 00:08:15,550 რომ ჯერ კიდევ შეიძლება არ აქვს მიუგო თქვენს კითხვაზე. 165 00:08:15,550 --> 00:08:15,960 >> აუდიტორია: არა, ეს ასეა. 166 00:08:15,960 --> 00:08:18,290 ვგულისხმობ, მე ვფიქრობ, მე უბრალოდ ნამდვილად არ კიდევ რატომ იქნებოდა 167 00:08:18,290 --> 00:08:20,800 ფუნქციონირებს, თუმცა. 168 00:08:20,800 --> 00:08:21,590 იმიტომ, რომ ეს ნამდვილად არ მიმდინარეობს მოუწოდა. 169 00:08:21,590 --> 00:08:23,170 ეს ნამდვილად არ აქვს სახელი. 170 00:08:23,170 --> 00:08:25,510 >> JASON HIRSCHHORN: ეს ფუნქცია გაგებით, რომ ეს რიგი ნაბიჯები, 171 00:08:25,510 --> 00:08:28,460 თქვენნაირი იქნებოდა მა ფუნქცია. 172 00:08:28,460 --> 00:08:29,970 და შემდეგ, ამიტომ ჩვენ მოვუწოდებთ ეს ანონიმური ფუნქცია. 173 00:08:29,970 --> 00:08:30,815 ჩვენ არ ვაპირებთ, რათა ეს სახელი. 174 00:08:30,815 --> 00:08:33,159 ჩვენ არ ვაპირებთ დაგვრჩა ცდილობს დაარქვით, მაგრამ შეგვეძლო. 175 00:08:33,159 --> 00:08:34,890 >> Anonymous ფუნქციები, თქვენ ყოველთვის შეგიძლიათ მისცეს სახელი. 176 00:08:34,890 --> 00:08:37,620 ასე მაგალითად, ეს კოდი აქ, ჩვენ ვერ დააყენა ეს კოდი შიგნით 177 00:08:37,620 --> 00:08:39,929 ფუნქცია და შემდეგ დარეკეთ ეს ფუნქცია აქ. 178 00:08:39,929 --> 00:08:41,600 სამაგიეროდ, ჩვენ ვთქვათ, ჩვენ არ ვაპირებთ შეწუხება რომ. 179 00:08:41,600 --> 00:08:44,390 ჩვენ უბრალოდ აპირებს დაწერა ეს ყველაფერი აქ. 180 00:08:44,390 --> 00:08:49,840 >> ეს იგივეა, ზოგჯერ, როდესაც თქვენ წერა ოთხი loop in C - თქვენ ბიჭები 181 00:08:49,840 --> 00:08:51,630 მინახავს ამ ადრე - იქნებ თქვენ iterating მეშვეობით forloop 182 00:08:51,630 --> 00:08:53,090 თარგმნეს i უდრის 0. 183 00:08:53,090 --> 00:08:54,830 I ნაკლებია strlen. 184 00:08:54,830 --> 00:08:59,520 ან თქვენ აპირებს მეშვეობით array, შეგიძლიათ შეინახოთ მასივი 185 00:08:59,520 --> 00:09:01,580 ინდექსი i ზოგიერთ ცვლადი. 186 00:09:01,580 --> 00:09:02,830 და თქვენ იყენებთ, რომ ცვლადი. 187 00:09:02,830 --> 00:09:06,550 ასე რომ თქვენ არ უნდა გადაწერა მასივი bracket i მეტი და მეტი და მეტი. 188 00:09:06,550 --> 00:09:08,160 >> და რომ ერთგვარი მოსწონს dummy ცვლადი. 189 00:09:08,160 --> 00:09:10,790 ეს არ ემსახურება ბევრი სხვა მიზნით, ვიდრე რათა თქვენი კოდი ცოტა სუფთა 190 00:09:10,790 --> 00:09:12,120 და ადვილად წასაკითხი. 191 00:09:12,120 --> 00:09:13,290 მსგავსი ფუნქცია აქ. 192 00:09:13,290 --> 00:09:15,665 მხოლოდ ხდის ცოტა ადვილი, მაგრამ ფუნქციურად არ არსებობს განსხვავება. 193 00:09:15,665 --> 00:09:18,620 194 00:09:18,620 --> 00:09:19,330 ამჯამად რომ უპასუხოს შეკითხვას? 195 00:09:19,330 --> 00:09:19,970 >> აუდიტორია: დიახ. 196 00:09:19,970 --> 00:09:20,720 >> JASON HIRSCHHORN: OK .. 197 00:09:20,720 --> 00:09:21,880 Mario? 198 00:09:21,880 --> 00:09:25,380 >> აუდიტორია: გუშინ ისინი ხშირად დააყენა ფუნქცია ფრჩხილებში ღონისძიება. 199 00:09:25,380 --> 00:09:26,420 ნიშნავს ეს რაღაც? 200 00:09:26,420 --> 00:09:30,500 თუ რამ, როგორიცაა რომ ყველაფერს გააკეთებს 201 00:09:30,500 --> 00:09:35,100 document.ready ფუნქცია ღონისძიება. 202 00:09:35,100 --> 00:09:37,130 >> JASON HIRSCHHORN: ჩვენ ვნახეთ, და ისევ და ისევ, ეს არის პატარა რამ, 203 00:09:37,130 --> 00:09:39,590 ალბათ მე არ მინდა ატარებენ ძალიან ბევრი დრო. 204 00:09:39,590 --> 00:09:43,200 იმიტომ, რომ ზოგჯერ მე არ მინდა ხალხი მისაღებად freaked, რომ მათ არ აქვთ 205 00:09:43,200 --> 00:09:44,220 შეიტყო ეს ყველაფერი რომ ბევრი რამ. 206 00:09:44,220 --> 00:09:46,200 მაგრამ ჩვენ ვისაუბრეთ ცოტა შესახებ ღონისძიება ელფოსტის. 207 00:09:46,200 --> 00:09:50,360 ასე რომ რაღაც მოხდება, და შემდეგ ეს ფუნქცია ხორციელდება. 208 00:09:50,360 --> 00:09:53,210 და მაშინ ჩვენ ასევე გვინდა ვიცოდეთ ზოგიერთი დეტალი იმაზე, თუ რა 209 00:09:53,210 --> 00:09:54,450 მოხდა ამ ღონისძიებაზე. 210 00:09:54,450 --> 00:09:55,730 >> ასე რომ, ვფიქრობ, თავში პრობლემა კომპლექტი 4. 211 00:09:55,730 --> 00:09:58,390 ეს, ალბათ, ყველაზე იოლი გზაა გვესმის, რომ შესვენება out. 212 00:09:58,390 --> 00:09:59,740 გარკვეული კოდი - 213 00:09:59,740 --> 00:10:01,980 როგორც მოვლენა მოხდება, მაგრამ ღონისძიება შეიძლება ნიშნავს ბევრი რამ. 214 00:10:01,980 --> 00:10:06,240 თუ შეიძლება ნიშნავს მაუსის აირჩიეთ, რომ შეიძლება ნიშნავს, თქვენ მოხვდა arrow გასაღები, et 215 00:10:06,240 --> 00:10:07,190 cetera, et cetera. 216 00:10:07,190 --> 00:10:09,800 >> მაგრამ ყველა გადაარჩინა ამ generic რამ მოუწოდა მოვლენები. 217 00:10:09,800 --> 00:10:12,340 და მაშინ ჩვენ შეგვიძლია ვთქვათ, ის არის, ეს ღონისძიება ამ რამ? 218 00:10:12,340 --> 00:10:13,640 ან ეს ღონისძიება ამ რამ? 219 00:10:13,640 --> 00:10:15,500 ან, რა სახის მოხდა რომ ღონისძიება? 220 00:10:15,500 --> 00:10:18,660 ასე რომ, თუ რატომ შექმნა, რომ ცვლადი არ გადარჩენა, რომ დამატებითი ინფორმაცია 221 00:10:18,660 --> 00:10:21,420 შესახებ, თუ რა მოხდა, რომ თქვენ აპირებს მინდა 222 00:10:21,420 --> 00:10:24,840 გამოყენების ფუნქცია. 223 00:10:24,840 --> 00:10:28,200 თუმცა ისევ და ისევ, რომ ალბათ ერთი ნაკლებად მნიშვნელოვანი რამ უნდა იყოს სუპერ 224 00:10:28,200 --> 00:10:29,450 იცნობს. 225 00:10:29,450 --> 00:10:31,470 226 00:10:31,470 --> 00:10:36,110 >> OK, რა შეკითხვები აქვს ხალხს ჰქონდა, ან დაბრკოლება ისინი 227 00:10:36,110 --> 00:10:37,360 შეექმნა ხოლო განხილვის? 228 00:10:37,360 --> 00:10:41,260 229 00:10:41,260 --> 00:10:42,510 ჩვენ უკან რომ სიაში. 230 00:10:42,510 --> 00:10:52,550 231 00:10:52,550 --> 00:10:56,080 რაც შეეხება დროს პრაქტიკა ტესტები, თუ ადამიანი გადაიყვანეს იმ უკვე? 232 00:10:56,080 --> 00:10:59,110 რა იყო პრობლემა, რომელიც იმყოფებოდა თუ არა ბიჭები up? 233 00:10:59,110 --> 00:11:08,970 234 00:11:08,970 --> 00:11:12,720 მე ვიცი, რომ ის ფაქტი, რომ გასული წლის ვიქტორინა იყო ძალიან რთული. 235 00:11:12,720 --> 00:11:15,670 >> აუდიტორია: შეგიძლიათ, თუ რა SQL ინექცია თავდასხმა? 236 00:11:15,670 --> 00:11:18,970 >> JASON HIRSCHHORN: OK, დიდი. 237 00:11:18,970 --> 00:11:20,440 ასე რომ, ჩვენ ვისაუბრეთ ამ ცოტა. 238 00:11:20,440 --> 00:11:22,050 არსებობს ლექცია უსაფრთხოებას. 239 00:11:22,050 --> 00:11:25,670 და ისევ, როგორც ზემოთ აღინიშნა, ეს არის განზე. 240 00:11:25,670 --> 00:11:30,010 მაგრამ თქვენ უნდა იმედგაცრუებული on ვიქტორინა როცა წაიკითხავთ მცირე ორი წერტილი 241 00:11:30,010 --> 00:11:33,040 კითხვაზე, და თქვენ, როგორიცაა, როდესაც არც მე ოდესმე ვისწავლოთ, რომ? 242 00:11:33,040 --> 00:11:35,560 >> ყველა იმ რამ იმ ლექციებს რომ თქვენ არ ვფიქრობ, რომ თქვენ საჭირო 243 00:11:35,560 --> 00:11:38,290 იცით, ან შეგიძლიათ სიპრიალის, რადგან მათ არ უნდა გავაკეთოთ 244 00:11:38,290 --> 00:11:41,860 პრობლემა კომპლექტი, ვინც სავარაუდოდ ამუშავება ისევ ვიქტორინა. 245 00:11:41,860 --> 00:11:45,030 ასე რომ, cool, fun რამ, რომ თქვენ მხოლოდ ფიქრობდა დავითი ეუბნება თქვენ 246 00:11:45,030 --> 00:11:49,070 სარგებლობენ, მას გეუბნებოდით თქვენ სარგებლობენ და, რომ თქვენ მხოლოდ სუპერ 247 00:11:49,070 --> 00:11:50,550 აღელვებს სწავლის ყველაფერი არსებობს ვისწავლოთ 248 00:11:50,550 --> 00:11:51,670 კომპიუტერულ მეცნიერებაში. 249 00:11:51,670 --> 00:11:53,680 იმ რამ, ასევე მოდის up on ტესტებში. 250 00:11:53,680 --> 00:11:56,440 ასე რომ, თუნდაც ამ მცირე რამ, რაც არ პირდაპირ კავშირშია თქვენი პრობლემა 251 00:11:56,440 --> 00:11:59,630 მითითებული, რადგან თქვენ ბიჭები იცნობს დან Quiz 0, სავარაუდოდ ამუშავება. 252 00:11:59,630 --> 00:12:01,530 და ეს არის კარგი მაგალითი რაღაც. 253 00:12:01,530 --> 00:12:10,140 >> ასე რომ, SQL ინექცია შეტევა, როდესაც თქვენ მივიღოთ ინფორმაციის შესახებ და 254 00:12:10,140 --> 00:12:15,090 გსურთ ჩადეთ იგი მაგიდასთან გამოყენებით SQL ჩასმა განაცხადი, მაგრამ თქვენ 255 00:12:15,090 --> 00:12:17,680 არ სანიტარია შეტანილ ვადამდე. 256 00:12:17,680 --> 00:12:21,560 ასე რომ, ბუნებრივია ჩვენ ვნახეთ SQL განცხადებებს. 257 00:12:21,560 --> 00:12:22,810 მე უბრალოდ გახსნა - 258 00:12:22,810 --> 00:12:25,590 259 00:12:25,590 --> 00:12:26,840 მოდით წავიდეთ - 260 00:12:26,840 --> 00:12:31,290 261 00:12:31,290 --> 00:12:31,960 გავემგზავრებით მიმოხილვა - 262 00:12:31,960 --> 00:12:35,180 მე ვფიქრობ, რომ, რომელიც დაფარული ეს? 263 00:12:35,180 --> 00:12:36,350 ვფიქრობ Samala გააკეთა. 264 00:12:36,350 --> 00:12:39,292 ასე რომ ჩვენ შეგვიძლია კიდევ - 265 00:12:39,292 --> 00:12:41,270 >> აუდიტორია: სად მოვძებნოთ ეს? 266 00:12:41,270 --> 00:12:44,990 >> JASON HIRSCHHORN: ასე რომ, თუ მიდიხარ CS50.net, ტესტები, და შემდეგ შეგიძლიათ 267 00:12:44,990 --> 00:12:47,170 გადახვევა მეტი და მიიღოს სლაიდები საწყისი განხილვის სხდომაზე. 268 00:12:47,170 --> 00:12:49,860 მაგრამ ხედავთ, ეს არის კარგი მაგალითი საქართველოს SQL ინექცია თავდასხმა. 269 00:12:49,860 --> 00:12:53,690 ჩვენ გარკვეული ინფორმაციის შესახებ და მათ მოგვცეს სიმებიანი და შემდეგ ჩვენ 270 00:12:53,690 --> 00:12:55,780 გვინდა ჩადეთ რომ სიმებიანი შევიდა მონაცემთა ბაზაში. 271 00:12:55,780 --> 00:12:59,780 ზოგადად, ჩვენ ვაპირებთ, რომ sanitize input, რაც იმას ნიშნავს, რომ არსებობს 272 00:12:59,780 --> 00:13:01,050 გმირები, რომლებიც საშიშია. 273 00:13:01,050 --> 00:13:04,000 >> მაგალითად, SQL strings, ეს შეთავაზებები - 274 00:13:04,000 --> 00:13:05,000 ერთჯერადი შეთავაზებები და ორმაგი შეთავაზებები - 275 00:13:05,000 --> 00:13:05,620 რაღაცას ნიშნავს. 276 00:13:05,620 --> 00:13:08,380 ისინი ნიშნავს დასრულდება ეს კონტექსტი აქ. 277 00:13:08,380 --> 00:13:13,090 და ასე თუ მომხმარებელი გაძლევთ ერთი ან ორმაგი გაცემა, ისინი შეიძლება 278 00:13:13,090 --> 00:13:18,970 ცდილობს მოგზაურობა თქვენი SQL შეკითხვაზე და ჩადეთ ზოგიერთი ცუდი პერსონალის მივანიჭო. 279 00:13:18,970 --> 00:13:23,130 და თუ ისინი, ისინი შეიძლება მოიპოვოს კონტროლი თქვენს მონაცემთა ბაზაში ან დაკავდით 280 00:13:23,130 --> 00:13:24,760 რამ, რომ თქვენ არ გსურთ მათ უნდა გააკეთოს. 281 00:13:24,760 --> 00:13:28,300 >> ასე რომ, ამიტომ როდესაც ჩვენ ვიღებთ SQL შეკითხვებს, გავუკეთოთ სანიტარია შეტანილ ადრე 282 00:13:28,300 --> 00:13:31,090 აყენებს მას მონაცემთა ბაზაში, რომელიც ნიშნავს, რომ ჩვენ გაქცევა იმ სიმბოლოებს. 283 00:13:31,090 --> 00:13:32,590 ჩვენ ვსაუბრობთ, რომ მეორე. 284 00:13:32,590 --> 00:13:35,820 მაგრამ ხანგრძლივი ამბავი მოკლედ, SQL ინექცია თავდასხმა თუ თქვენ არ გავაკეთოთ, რომ - 285 00:13:35,820 --> 00:13:39,760 თუ არ იზრუნოს input მათ თქვენ წინაშე აყენებს თქვენი 286 00:13:39,760 --> 00:13:46,830 მონაცემთა ბაზის, მათ შეუძლიათ, როგორც ხედავთ ქვემოთ აქ, აწარმოებს შეკითხვაზე, რომ, ფაქტობრივად - 287 00:13:46,830 --> 00:13:52,470 ისინი თავიანთ კოდი ქვემოთ აქ და ამ აირჩიეთ ხაზი ქვემოთ აქ შეარჩევს 288 00:13:52,470 --> 00:13:56,360 ყველაფერი მაგიდაზე, მიუხედავად იმისა, რა დაგავიწყდათ ენიჭება. 289 00:13:56,360 --> 00:13:58,960 რადგან თქვენ გაქვთ ან 1 უდრის 1. 290 00:13:58,960 --> 00:14:02,750 >> ასე რომ, ძირითადად, გრძელი ამბავი მოკლედ, გზა აღება მონაცემთა ბაზაში. 291 00:14:02,750 --> 00:14:07,570 კითხვა, მაშინ, თქვენ ბიჭები, ის არის, სადაც p კომპლექტი 7 გქონდათ sanitize ყველა 292 00:14:07,570 --> 00:14:10,010 საშუალებებით თქვენს SQL queries? 293 00:14:10,010 --> 00:14:11,230 სად ეს ნაბიჯი მოხდეს? 294 00:14:11,230 --> 00:14:14,150 სად ასაცილებლად SQL ინექცია თავდასხმები ხდება p მითითებული 7? 295 00:14:14,150 --> 00:14:20,100 296 00:14:20,100 --> 00:14:20,490 ჰო. 297 00:14:20,490 --> 00:14:21,870 >> აუდიტორია: Crypt? 298 00:14:21,870 --> 00:14:23,120 >> JASON HIRSCHHORN: ასე რომ, ეს არ იყო საძვალე. 299 00:14:23,120 --> 00:14:52,360 300 00:14:52,360 --> 00:14:55,380 ჩვენ არ მიიღოს თქვენ ამ ამ კონკრეტული პრობლემის შექმნას, მაგრამ ეს მოხდება 301 00:14:55,380 --> 00:14:58,190 ამ შეკითხვაზე ფუნქცია. 302 00:14:58,190 --> 00:15:00,930 ჩვენ რეალურად წერდა იგი თქვენთვის, და ჩვენ ზრუნავდნენ 303 00:15:00,930 --> 00:15:03,040 sanitizing საშუალებებით თქვენთვის. 304 00:15:03,040 --> 00:15:07,790 მაგრამ გასულ წლებში, სტუდენტები არ ჰქონდა აკრიფოთ საშუალებებით საკუთარი. 305 00:15:07,790 --> 00:15:10,020 In p კომპლექტი 7, ბევრი თქვენგანი - 306 00:15:10,020 --> 00:15:11,270 ნება მომეცით გახსენით ერთი სხვა ფაილი. 307 00:15:11,270 --> 00:15:18,530 308 00:15:18,530 --> 00:15:22,590 >> ასე რომ თქვენ შეამჩნევთ აქ ბევრი ადამიანი, პრობლემა მითითებული 7 არ გამოიძახა 309 00:15:22,590 --> 00:15:25,240 ამ ფუნქციის strings. 310 00:15:25,240 --> 00:15:27,880 ამ ფუნქციას, htmlspecialchars, კიდევ ერთხელ - 311 00:15:27,880 --> 00:15:31,410 ეს კონტექსტი შესაძლოა ზოგიერთი რამ რომ HTML ნიშნავს რაღაც. 312 00:15:31,410 --> 00:15:36,160 Like a brace, მოედანზე, ან კუთხე bracket ნიშნავს რაღაც HTML. 313 00:15:36,160 --> 00:15:38,980 >> და ასე რომ, თუ თქვენ ბეჭდვა, რომ გარეთ ეკრანზე ან თუ უბრალოდ მიიღოს, რომ და 314 00:15:38,980 --> 00:15:42,260 ბეჭდვა, რომ თქვენი HTML, რომ შესაძლოა, რაღაც თქვენ არ ველით. 315 00:15:42,260 --> 00:15:45,180 ასე htmlspecialchars მიდის ყველა იმ სიმბოლო, რომ აქვს სპეციალური 316 00:15:45,180 --> 00:15:47,030 შეხვედრის და გაქცევის მათ. 317 00:15:47,030 --> 00:15:51,450 ასე რომ, იგი იღებს იბეჭდება როგორც ტექსტი გსურთ იხილოთ, ვიდრე 318 00:15:51,450 --> 00:15:53,280 screwing თქვენი HTML. 319 00:15:53,280 --> 00:15:55,040 ჩვენ მოუწოდა, რომ ფუნქცია header. 320 00:15:55,040 --> 00:15:57,390 და ბევრი ადამიანი დაავიწყდა მოვუწოდებთ, რომ ფუნქცია 321 00:15:57,390 --> 00:15:58,700 კოდი თქვენ წერა. 322 00:15:58,700 --> 00:16:03,970 >> ასე, მაგალითად, თუ საფონდო სახელი ჰქონდა კუთხე bracket, და თქვენ დაავიწყდა 323 00:16:03,970 --> 00:16:06,675 მოვუწოდებთ ამ ფუნქციას, რომელიც კუთხე bracket შეიძლება არ დააგდეს off რა 324 00:16:06,675 --> 00:16:08,250 თქვენი HTML ჰგავდა. 325 00:16:08,250 --> 00:16:11,810 მაგრამ დარეკვით ეს ფუნქცია გაქცევა რომ ასე რეალურად ბეჭდავს როგორც 326 00:16:11,810 --> 00:16:15,870 კუთხე bracket და არ ჩააგდოს off თქვენი HTML კოდი. 327 00:16:15,870 --> 00:16:18,760 >> ამავე მიზეზით ჩვენ ვნახეთ, ზოგჯერ, დახრილ ხაზებს ადრე ორმაგი შეთავაზებები 328 00:16:18,760 --> 00:16:22,310 printf ხაზი იმიტომ, რომ ჩვენ არ გვინდა ორმაგი შეთავაზებები ქვემოთ string. 329 00:16:22,310 --> 00:16:24,050 ჩვენ გვინდა, რომ ამობეჭდოთ მათ იმისათვის, რომ ეკრანზე. 330 00:16:24,050 --> 00:16:26,920 ასე რომ, ეს ყველაფერი იგივე იდეა. 331 00:16:26,920 --> 00:16:28,260 ამჯამად რომ უპასუხოს შეკითხვას? 332 00:16:28,260 --> 00:16:31,529 333 00:16:31,529 --> 00:16:33,870 >> აუდიტორია: კეთილი. 334 00:16:33,870 --> 00:16:35,300 >> JASON HIRSCHHORN: თქვენ აქვს შემდგომი? 335 00:16:35,300 --> 00:16:43,252 >> აუდიტორია: ვფიქრობ SQL ინექცია თავდასხმის უნდა გააკეთოს, რომ? 336 00:16:43,252 --> 00:16:45,720 მე არ მესმის, როგორ ორ დაკავშირებული. 337 00:16:45,720 --> 00:16:47,610 რატომ უნდა გავაკეთოთ specialchars? 338 00:16:47,610 --> 00:16:51,200 >> JASON HIRSCHHORN: OK, ასე რომ SQL ინექცია შეტევა, როდესაც გაიკეთეთ 339 00:16:51,200 --> 00:16:59,180 ზოგიერთი მუქარის strings თარგმნეს ვიღაცის პროგრამა, და ისინი მხოლოდ მას და აწარმოებს 340 00:16:59,180 --> 00:17:01,230 SQL შეკითხვაზე სიმებიანი თქვენ მისცა მათ. 341 00:17:01,230 --> 00:17:04,220 როგორც ხედავთ ქვემოთ აქ, რომ შეიძლება იყოს პრობლემატური. 342 00:17:04,220 --> 00:17:07,480 ასე რომ გზა თავიდან ასაცილებლად წინააღმდეგ, რომ თქვენ მიიღოს მათი სიმებიანი რომ აძლევენ 343 00:17:07,480 --> 00:17:09,220 თქვენ - ასე რომ, ეს string სწორედ აქ - 344 00:17:09,220 --> 00:17:11,240 და სანიტარია იგი. 345 00:17:11,240 --> 00:17:14,305 თქვენ გაქცევა ყველა რამ, რომ პოტენციურად პრობლემურია. 346 00:17:14,305 --> 00:17:18,626 ასე რომ თქვენ არ ინტერპრეტაცია მათ, როგორც რაღაც ეს ნიშნავს, რომ რაღაც. 347 00:17:18,626 --> 00:17:23,390 >> და მაგალითი, რომ HTML არის ამ ფუნქციას. 348 00:17:23,390 --> 00:17:26,060 ასე რომ, ეს იგივე იდეა აქ. 349 00:17:26,060 --> 00:17:27,579 და მე უბრალოდ გვიჩვენებს, თუ სხვა მაგალითები, როდესაც თქვენ 350 00:17:27,579 --> 00:17:29,030 ჩანს ეს იდეა ადრე. 351 00:17:29,030 --> 00:17:33,913 აფარებს მომხმარებლის შეყვანის ადრე ბეჭდვა ის ეკრანზე ან აყენებს მას 352 00:17:33,913 --> 00:17:36,782 შიგნით SQL განცხადებაში. 353 00:17:36,782 --> 00:17:40,790 >> აუდიტორია: ასე რომ, ამ შემთხვევაში, მომხმარებელს არის ძვირფასი პროგრამისტი. 354 00:17:40,790 --> 00:17:41,240 >> JASON HIRSCHHORN: დიახ. 355 00:17:41,240 --> 00:17:44,800 ყველა ამ უსაფრთხოების თავდასხმები, რომ ყოველთვის ზოგადად შესახებ, ან 356 00:17:44,800 --> 00:17:47,470 ვინმეს, ცდილობს სასადილო თქვენ, პროგრამისტი. 357 00:17:47,470 --> 00:17:51,038 და ეს არის გზა შეგიძლიათ თავიდან ასაცილებლად მათ წინააღმდეგ. 358 00:17:51,038 --> 00:17:54,280 >> აუდიტორია: ასე რომ მე მაქვს შეკითხვა შესახებ hash ფუნქციები. 359 00:17:54,280 --> 00:17:59,340 In Quiz 1 2011, არსებობს ორი კითხვებს ცალმხრივი ჰეშები. 360 00:17:59,340 --> 00:18:02,540 და მე უბრალოდ მაინტერესებს რას ნიშნავდა. 361 00:18:02,540 --> 00:18:03,660 >> JASON HIRSCHHORN: OK, რომელიც ვიქტორინა? 362 00:18:03,660 --> 00:18:03,770 2011 წელს? 363 00:18:03,770 --> 00:18:04,705 >> აუდიტორია: Yeah. 364 00:18:04,705 --> 00:18:06,720 >> აუდიტორია: Quiz 1? 365 00:18:06,720 --> 00:18:08,620 >> აუდიტორია: [INAUDIBLE]. 366 00:18:08,620 --> 00:18:09,940 ასეთი hashing პაროლი. 367 00:18:09,940 --> 00:18:12,220 რომ არ აყენებს რამ - 368 00:18:12,220 --> 00:18:13,440 >> JASON HIRSCHHORN: რა გვერდი იყო ეს? 369 00:18:13,440 --> 00:18:15,720 >> აუდიტორია: ვფიქრობ, ეს იყო 9 ან 10, ან ორივე. 370 00:18:15,720 --> 00:18:16,720 >> JASON HIRSCHHORN: ყველა უფლება, წავიდეთ წინ, Curt. 371 00:18:16,720 --> 00:18:17,780 შეგიძლიათ პასუხის გაცემა, ხოლო ჩვენ გამოიყურება. 372 00:18:17,780 --> 00:18:19,540 >> აუდიტორია: მე ვფიქრობ, რომ ის საუბარი შესახებ hashing პაროლი. 373 00:18:19,540 --> 00:18:24,430 მოსწონს, როცა ვინმე შემოდის დაგავიწყდათ, თქვენ აქციოს იგი დაშიფრულ რამ. 374 00:18:24,430 --> 00:18:27,395 სწორედ დაგავიწყდათ hash, რომელიც განსხვავებული ქეშირების ფუნქცია, რომ 375 00:18:27,395 --> 00:18:30,900 აყენებს რაღაც hash მაგიდასთან. 376 00:18:30,900 --> 00:18:31,610 >> JASON HIRSCHHORN ვნახოთ. 377 00:18:31,610 --> 00:18:33,930 ნება მომეცით დახევის up, რაც მათ მისცეს პასუხი. 378 00:18:33,930 --> 00:18:35,440 და მაშინ ჩვენ გავლა იგი. 379 00:18:35,440 --> 00:18:42,430 380 00:18:42,430 --> 00:18:45,400 >> ასე რომ, Curt მისცა დიდი მაგალითია საქართველოს ერთი გზა hash. 381 00:18:45,400 --> 00:18:48,800 როდესაც ჩვენ ვხედავთ ამ ადრე, ჩვენ მიიღოს დაგავიწყდათ და იქაური - 382 00:18:48,800 --> 00:18:53,040 უნდა გვახსოვდეს, რომ p კომპლექტი 7, ვინმემ აქვს პაროლი, რომელიც მხოლოდ password, 383 00:18:53,040 --> 00:18:55,300 მაგრამ შემდეგ იგი იღებს დაშიფრული ზოგიერთი მართლაც დიდი რამ. 384 00:18:55,300 --> 00:18:59,830 ერთი გზა hash იმას ნიშნავს, რომ ძალიან ადვილია გადასვლა ერთი გზა სხვა, მაგრამ 385 00:18:59,830 --> 00:19:02,800 ეს ძალიან რთული გადასვლა სხვა გზა უკან. 386 00:19:02,800 --> 00:19:05,230 >> და ასე რომ თქვენ იცით, როდესაც შემოწმების ხალხის პაროლები პრობლემა 387 00:19:05,230 --> 00:19:08,820 მითითებული 7, თქვენ მიიღოს მათი - 388 00:19:08,820 --> 00:19:11,953 ასე, მაგალითად, ამბობენ, რომ მათ სურდათ შეცვალოს მათი დაგავიწყდათ, თქვენ მათ ვთხოვთ 389 00:19:11,953 --> 00:19:13,130 მათი ძველი პაროლი. 390 00:19:13,130 --> 00:19:13,910 თქვენ აიღო მათი ძველი პაროლი. 391 00:19:13,910 --> 00:19:15,150 თქვენ დაშიფრული იგი. 392 00:19:15,150 --> 00:19:19,240 და მაშინ შედარებით ორი encryptions ვიდრე unencrypting ორიგინალური 393 00:19:19,240 --> 00:19:20,780 ერთი, იმიტომ, რომ ეს ნამდვილად იმისთვის, რომ წავიდეთ რომ გზა. 394 00:19:20,780 --> 00:19:27,070 395 00:19:27,070 --> 00:19:28,035 ჰო. 396 00:19:28,035 --> 00:19:31,430 >> აუდიტორია: როგორ სიღრმისეული აკეთებს ჩვენი გაგება Telnet უნდა იყოს? 397 00:19:31,430 --> 00:19:34,870 398 00:19:34,870 --> 00:19:41,360 >> JASON HIRSCHHORN თუ აღინიშნა მოკლედ ლექცია, მხოლოდ მოკლე 399 00:19:41,360 --> 00:19:43,260 გაგება. 400 00:19:43,260 --> 00:19:45,585 კიდევ ერთხელ, უკან პასუხი to Avi კითხვაზე - 401 00:19:45,585 --> 00:19:48,260 402 00:19:48,260 --> 00:19:50,430 რამ ამუშავება, უფრო სავარაუდოა, ის, რომ თქვენ უნდა იყოს სუპერ 403 00:19:50,430 --> 00:19:51,530 იცნობს მათ. 404 00:19:51,530 --> 00:19:54,730 იმ შემთხვევაში, თუ ისინი მხოლოდ ამუშავება ლექცია, ეს მხოლოდ ერთ ადგილას. 405 00:19:54,730 --> 00:19:57,180 მაგრამ თუ ისინი ამუშავება ლექცია, განყოფილებიანი, და პრობლემა მითითებული, მაშინ 406 00:19:57,180 --> 00:19:58,710 ალბათ უნდა იყოს სუპერ იცნობს მათ. 407 00:19:58,710 --> 00:20:01,320 408 00:20:01,320 --> 00:20:03,960 >> ასე რომ, მე მქონდა კითხვა ადრე - 409 00:20:03,960 --> 00:20:06,950 ეს იყო შემოდგომაზე 2010 - 410 00:20:06,950 --> 00:20:08,520 Quiz 1, მოდით დახევის up - 411 00:20:08,520 --> 00:20:17,390 412 00:20:17,390 --> 00:20:21,790 ამ საკითხზე stacks და რიგები, რომელიც ჩვენ გავაკეთეთ დახარჯოს სამართლიანი ცოტა დრო 413 00:20:21,790 --> 00:20:23,720 ვსაუბრობთ ლექცია, მაშინაც კი, თუმცა, ჩვენ ნამდვილად არ 414 00:20:23,720 --> 00:20:26,020 ოდესმე მოხვდა ის განყოფილებაში. 415 00:20:26,020 --> 00:20:33,190 ასე რომ, ამ კითხვაზე გაძლევს სერია ბრძანებები და ეკითხება, თუ რა 416 00:20:33,190 --> 00:20:35,560 იღებს დაბეჭდილი ამ შემთხვევაში. 417 00:20:35,560 --> 00:20:40,180 ასე რომ, ეს სრულიად გონივრული შეკითხვა რომელიც შეიძლება სთხოვა თქვენ 418 00:20:40,180 --> 00:20:43,090 ბიჭები, და მაშინ ბიჭები უნდა შეძლებს უპასუხოს მას. 419 00:20:43,090 --> 00:20:50,020 >> რატომ არ გადავხედავთ 30 წამი, შემდეგ კი თუ ვინმეს სურს 420 00:20:50,020 --> 00:20:52,140 შესთავაზოს პასუხი ჩემთვის, და მაშინ ჩვენ გავლა იგი. 421 00:20:52,140 --> 00:21:22,590 422 00:21:22,590 --> 00:21:24,235 ყველა უფლება, რომელსაც აქვს პასუხი ეჭვქვეშ 27? 423 00:21:24,235 --> 00:21:31,740 424 00:21:31,740 --> 00:21:33,860 ჰო. 425 00:21:33,860 --> 00:21:40,250 >> აუდიტორია: ეს 1, 2, 3, 3? 426 00:21:40,250 --> 00:21:40,780 >> JASON HIRSCHHORN: ეს უფლება. 427 00:21:40,780 --> 00:21:42,570 27 1, 2, 3, 3. 428 00:21:42,570 --> 00:21:44,510 მოდით შევხედოთ, თუ როგორ მივიღეთ, რომ. 429 00:21:44,510 --> 00:21:48,930 >> პირველი, ჩვენ ვამბობთ, თუ არის მდგომ, რა ხდება დაბეჭდილი? 430 00:21:48,930 --> 00:21:53,360 ასე რომ, q არის პირველი, პირველი გარეთ. 431 00:21:53,360 --> 00:21:54,680 ჩვენ ვნახეთ, რომ ადრე. 432 00:21:54,680 --> 00:21:56,820 ჩვენ ვნახეთ სურათს ადამიანი ელოდება Apple 433 00:21:56,820 --> 00:21:58,400 შესანახად ყიდვა ზოგიერთი პროდუქტი. 434 00:21:58,400 --> 00:22:00,900 პირველი ადამიანები არიან პირველი ადამიანი გარეთ. 435 00:22:00,900 --> 00:22:02,940 პირველი რამ მდგომ პირველი რამ out. 436 00:22:02,940 --> 00:22:08,320 >> ასე რომ, თუ ჩვენ დააყენებს რაღაც მდგომ, თქვენ დააყენებს 1, მაშინ ჩვენ pop 1. 437 00:22:08,320 --> 00:22:09,630 Pop მხოლოდ იმას ნიშნავს, აიღოს. 438 00:22:09,630 --> 00:22:11,080 ამ შემთხვევაში, უბრალოდ რაღაც გარეთ. 439 00:22:11,080 --> 00:22:12,910 ჩვენ აიღოს პირველი რამ, რომ 1. 440 00:22:12,910 --> 00:22:15,200 ასე რომ, ჩვენ დააყენა რამ ჩვენ ბეჭდვა ქვემოთ აქ. 441 00:22:15,200 --> 00:22:18,110 ეს აღარ არის ჩვენი რიგიდან. 442 00:22:18,110 --> 00:22:23,500 >> მაშინ ჩვენ იმოძრავეთ 2 და 3 და ჩვენ პოპ off პირველი რამ. 443 00:22:23,500 --> 00:22:25,030 ერთხელ, რადგან რიგიდან. 444 00:22:25,030 --> 00:22:33,320 ასე რომ, ჩვენ კიდევ 2, მაშინ ჩვენ სხვა 3 და მოვუწოდებთ pop ერთხელ. 445 00:22:33,320 --> 00:22:34,980 ჩვენი 3 პირველი. 446 00:22:34,980 --> 00:22:40,940 >> და მაშინ ჩვენ გვქონდა მთელი bunch სხვა რამ და ზარის პოპ. 447 00:22:40,940 --> 00:22:43,740 მაგრამ ერთხელ, რადგან ეს არის მდგომ, პირველი, პირველი გარეთ. 448 00:22:43,740 --> 00:22:45,980 ჩვენ აიღოს პირველი, რაც რომელიც ოდესმე დააყენა სისტემაში 449 00:22:45,980 --> 00:22:47,100 ეს არის ჩვენი 3. 450 00:22:47,100 --> 00:22:50,060 და, ამ შემთხვევაში, ჩვენ არ ინერვიულოთ ყველა იმ სხვა რამ. 451 00:22:50,060 --> 00:22:51,310 ასე რომ, თუ ეს არის რიგიდან. 452 00:22:51,310 --> 00:22:58,917 453 00:22:58,917 --> 00:23:00,167 რაიმე შეკითხვები მდგომ? 454 00:23:00,167 --> 00:23:03,290 455 00:23:03,290 --> 00:23:04,040 >> დასტის სხვადასხვა. 456 00:23:04,040 --> 00:23:07,782 რა არის აბრევიატურა ჩვენ გაგება დასტის? 457 00:23:07,782 --> 00:23:08,750 >> აუდიტორია: ბოლო წელს, პირველი გარეთ. 458 00:23:08,750 --> 00:23:10,130 >> JASON HIRSCHHORN: LIFO, ვფიქრობ. 459 00:23:10,130 --> 00:23:11,830 გაგრძელდება, პირველი გარეთ. 460 00:23:11,830 --> 00:23:15,630 ასე რომ, ჩვენ ვნახეთ მაგალითი დასტის ქაღალდის წელს სასადილოს. 461 00:23:15,630 --> 00:23:17,590 როგორიც არ უნდა იყოს უჯრა არის ყველაზე იღებს აიყვანეს. 462 00:23:17,590 --> 00:23:19,550 და მაშინ, თუ ახალი ქაღალდის მოდის in, ისინი დააყენა თავზე. 463 00:23:19,550 --> 00:23:21,070 და მერე, რაც არის top იღებს აიყვანეს. 464 00:23:21,070 --> 00:23:24,010 ასე რომ იმ ქაღალდის ქვედა ძალა იქ awhile. 465 00:23:24,010 --> 00:23:28,480 >> იმ შემთხვევაში, კიდევ ერთხელ, ჩვენ გამოგიგზავნით დავხატოთ ამ გარეთ. 466 00:23:28,480 --> 00:23:31,770 ჩვენ დააყენებს ერთ, ისე ერთი პირველი ხაზი. 467 00:23:31,770 --> 00:23:32,790 და ჩვენ პოპ რაღაც off. 468 00:23:32,790 --> 00:23:37,280 და არსებობს მხოლოდ ერთი რამ არსებობს, ასე რომ, ჩვენ გადაადგილება 1 down აქ. 469 00:23:37,280 --> 00:23:41,940 მაშინ ჩვენ დააყენა 2 და 3 და ჩვენ პოპ რაღაც off. 470 00:23:41,940 --> 00:23:43,650 >> მაგრამ ერთხელ, რადგან ეს არის მდგომ - 471 00:23:43,650 --> 00:23:45,010 ან ეს არის დასტის, არამედ - 472 00:23:45,010 --> 00:23:47,480 ჩვენ რაც არ უნდა იყო გასული. 473 00:23:47,480 --> 00:23:49,300 რაც გასული გამოდის პირველი. 474 00:23:49,300 --> 00:23:50,890 და 3 არის ბოლო. 475 00:23:50,890 --> 00:23:56,110 ასე რომ, ჩვენ 3 ქვემოთ იქ, მაშინ ჩვენ შესახებ კიდევ 3 და ჩვენ 476 00:23:56,110 --> 00:23:57,360 პოპ რაიმეს. 477 00:23:57,360 --> 00:23:59,990 478 00:23:59,990 --> 00:24:05,710 და ბოლოს, ჩვენ ჩაიცვი 4, 5, 6, 7, და აქ ჩვენ პოპ. 479 00:24:05,710 --> 00:24:09,060 და რადგან ეს არის დასტის, ჩვენ ვიღებთ რაც არ უნდა დასვა, ბოლო და დაწეროთ 480 00:24:09,060 --> 00:24:10,240 რომ ქვემოთ აქ. 481 00:24:10,240 --> 00:24:14,256 ასე რომ, ჩვენ დასრულდება მდე 1, 3, 3, 7. 482 00:24:14,256 --> 00:24:17,380 483 00:24:17,380 --> 00:24:21,380 ვინმეს გაქვთ რაიმე შეკითხვები stacks ან რიგები, ან ეს მაგალითი? 484 00:24:21,380 --> 00:24:27,540 485 00:24:27,540 --> 00:24:29,030 >> OK. 486 00:24:29,030 --> 00:24:30,440 მოდით დავუბრუნდეთ სიას თემებზე. 487 00:24:30,440 --> 00:24:32,510 არ არის, რომ გზა, ამ გზით. 488 00:24:32,510 --> 00:24:34,280 რა სხვა სახის კითხვებით, ხალხს აქვს? 489 00:24:34,280 --> 00:24:37,550 490 00:24:37,550 --> 00:24:39,480 >> აუდიტორია: მე არ ვიცი, რამდენად მნიშვნელოვანია ეს არის, მაგრამ მე დაბნეული 491 00:24:39,480 --> 00:24:43,550 სხვაობა სხვადასხვა სახის ენებს, როგორიცაა markup, დაკომპლექტება, 492 00:24:43,550 --> 00:24:45,980 ინტერპრეტირებული. 493 00:24:45,980 --> 00:24:46,750 >> JASON HIRSCHHORN: ეს კარგი კითხვაა. 494 00:24:46,750 --> 00:24:50,500 მე ვფიქრობ, რომ გარკვეულწილად მნიშვნელოვანია, მოდით წავიდეთ სწრაფად. 495 00:24:50,500 --> 00:24:56,850 დიდი languages ​​ჩვენ ვნახეთ ჯერჯერობით C, PHP და JavaScript თვალსაზრისით, 496 00:24:56,850 --> 00:24:58,330 პროგრამირების ენები. 497 00:24:58,330 --> 00:25:01,060 HTML, როგორც თქვენ აღნიშნეთ, არ არის პროგრამირების ენაზე. 498 00:25:01,060 --> 00:25:02,260 ის markup ენაზე. 499 00:25:02,260 --> 00:25:05,700 და მაშინ ჩვენ გვაქვს CSS, რომელიც ასევე არ არის პროგრამირების ენა. 500 00:25:05,700 --> 00:25:10,330 >> ჩვენ ასევე ვნახეთ, SQL, რომელიც არ არის პროგრამირების ენა ან. 501 00:25:10,330 --> 00:25:15,695 ასე რომ, SQL საშუალებას გაძლევთ დაწეროთ შეკითხვა მონაცემთა ბაზაში. 502 00:25:15,695 --> 00:25:18,370 503 00:25:18,370 --> 00:25:20,140 HTML არის markup ენაზე. 504 00:25:20,140 --> 00:25:22,570 იგი განსაზღვრავს, თუ როგორ სტრუქტურულად. 505 00:25:22,570 --> 00:25:26,250 და CSS საშუალებას გაძლევთ სტილი რამ. 506 00:25:26,250 --> 00:25:28,520 ეს, ალბათ, იმდენად, რამდენადაც, რაც თქვენ უნდა იცოდეთ ის სამი. 507 00:25:28,520 --> 00:25:32,920 მაგრამ ეს უფრო საინტერესო ფიგურა out განსხვავებები C, PHP, 508 00:25:32,920 --> 00:25:34,320 და JavaScript. 509 00:25:34,320 --> 00:25:37,900 >> ასე რომ, ერთ ერთი ყველაზე დიდი განსხვავებები, როგორც თქვენ აღნიშნეთ, თუ რამდენად ისინი 510 00:25:37,900 --> 00:25:40,550 შედგენილი, ან რასაც ეკვივალენტს არის. 511 00:25:40,550 --> 00:25:42,580 ასე რომ C არის შედგენილი. 512 00:25:42,580 --> 00:25:43,950 ჩვენ ყოველთვის აწარმოებს შემდგენელი. 513 00:25:43,950 --> 00:25:51,100 და მაშინ, სადაც არის თქვენი შეცდომები როდესაც თქვენ აწარმოებს C შემდგენელი? 514 00:25:51,100 --> 00:25:55,740 სადაც იგი გაჩვენებთ შეცდომები თქვენი კოდი? 515 00:25:55,740 --> 00:25:57,860 იცით, არსებობს შეცდომა თქვენი კოდი C? 516 00:25:57,860 --> 00:25:58,770 >> აუდიტორია: ეს გიჩვენებთ ტერმინალში. 517 00:25:58,770 --> 00:26:00,410 >> JASON HIRSCHHORN: ეს გიჩვენებთ წელს ტერმინალი, როგორც თქვენ შედგენა. 518 00:26:00,410 --> 00:26:02,620 და თუ არსებობს შეცდომები, ის რეალურად არ კომპილირება. 519 00:26:02,620 --> 00:26:04,830 ასე რომ თქვენ იცით, რომ არსებობს შეცდომები უფლება მოშორებით, ვადამდე, სანამ 520 00:26:04,830 --> 00:26:06,050 კი აწარმოებს თქვენს კოდი. 521 00:26:06,050 --> 00:26:10,010 >> რა თქმა უნდა, თქვენ შეიძლება აწარმოებს თქვენი კოდი და მიიღეთ სეგმენტაცია ბრალია, მაგრამ ეს იყო 522 00:26:10,010 --> 00:26:12,350 ალბათ იმიტომ, რომ თქვენ გააკეთა ზოგიერთი სულელური ლოგიკა რამ. 523 00:26:12,350 --> 00:26:15,770 მაგრამ თქვენი კოდი და ტექნიკურად ყველა სწორია და შეიძლება აწარმოებს. 524 00:26:15,770 --> 00:26:18,210 ასე რომ, C კოდი იღებს შედგენილი ვადამდე. 525 00:26:18,210 --> 00:26:19,760 რაც შეეხება PHP კოდი? 526 00:26:19,760 --> 00:26:21,430 სად იყო შეცდომები თქვენი PHP კოდი? 527 00:26:21,430 --> 00:26:23,170 როგორ იცით თქვენ შეცდომები აღმოაჩნდა თქვენი PHP კოდი? 528 00:26:23,170 --> 00:26:26,038 529 00:26:26,038 --> 00:26:28,430 >> აუდიტორია: გაუშვით დროს? 530 00:26:28,430 --> 00:26:31,230 >> JASON HIRSCHHORN: Yeah, როდესაც თქვენ რომ აწარმოებს, თქვენ აწარმოებს 531 00:26:31,230 --> 00:26:32,180 PHP კოდი უკან. 532 00:26:32,180 --> 00:26:33,300 და მაშინ არიან ეკრანზე. 533 00:26:33,300 --> 00:26:35,260 თქვენ შეიძლება ნახოთ ზოგიერთი რამ ზედა, მაგრამ მაშინ თქვენ დაინახავთ, ისევე, ზოგიერთი 534 00:26:35,260 --> 00:26:36,710 ფორთოხალი, მახინჯი მაგიდასთან. 535 00:26:36,710 --> 00:26:41,420 და ეს მოგცემთ ხაზის ნომერი და ვთქვათ, blah, blah, blah, ამ პერსონალის 536 00:26:41,420 --> 00:26:42,400 არ იმუშავებს. 537 00:26:42,400 --> 00:26:48,730 >> ასე PHP ინტერპრეტაცია ხაზს და შესრულებული სერვერზე. 538 00:26:48,730 --> 00:26:52,380 და მერე შედეგი გაიგზავნება თქვენ. 539 00:26:52,380 --> 00:26:53,340 დიდი. 540 00:26:53,340 --> 00:26:56,410 შესრულებული სერვერზე ხაზს და შემდეგ გაიგზავნება თქვენ. 541 00:26:56,410 --> 00:26:59,010 და თუ იქ შეცდომა, ეს გამოგიგზავნით თქვენ შეცდომა, მაგრამ ალბათ 542 00:26:59,010 --> 00:27:00,400 მიღებული რაღაცები ვადამდე. 543 00:27:00,400 --> 00:27:02,730 ასე რომ ზოგიერთი ეს შეიძლება არ მუშაობდა, მაგრამ მოგვიანებით, რაღაცები შეიძლება არ აქვს 544 00:27:02,730 --> 00:27:03,890 ვერ იმუშავა. 545 00:27:03,890 --> 00:27:04,600 >> რაც შეეხება JavaScript? 546 00:27:04,600 --> 00:27:06,065 სად ხედავთ JavaScript შეცდომები? 547 00:27:06,065 --> 00:27:10,860 548 00:27:10,860 --> 00:27:12,870 In p მითითებული 8, როცა შენ შეცდომა, რა იცით? 549 00:27:12,870 --> 00:27:13,710 სადაც იქნებოდა ის გამოჩნდება? 550 00:27:13,710 --> 00:27:15,900 >> აუდიტორია: In კონსოლი, ბოლოში. 551 00:27:15,900 --> 00:27:17,650 >> JASON HIRSCHHORN: In კონსოლის ქვედა. 552 00:27:17,650 --> 00:27:20,160 იგი ასევე გაძლევთ ხაზის ნომერი, და ეს იქნებოდა 553 00:27:20,160 --> 00:27:21,330 გამოჩნდება ბოლოში. 554 00:27:21,330 --> 00:27:24,320 და JavaScript არ შესრულდა სერვერზე. 555 00:27:24,320 --> 00:27:27,800 JavaScript გაიგზავნა თქვენს კომპიუტერში, და მაშინ, როდესაც დროა აწარმოებს 556 00:27:27,800 --> 00:27:31,670 JavaScript, JavaScript იყო აწარმოებს ხაზის მიერ ხაზი 557 00:27:31,670 --> 00:27:33,410 კლიენტს, თქვენს მხარეს. 558 00:27:33,410 --> 00:27:35,570 არა სერვერზე, კლიენტის მხარეს. 559 00:27:35,570 --> 00:27:37,690 >> და ანალოგიურად, ეს იყო აწარმოებს ხაზს. 560 00:27:37,690 --> 00:27:40,630 და მაშინ, როდესაც თქვენ გაქვთ შეცდომა, ეს იქნებოდა გამოჩნდება ბოლოში. 561 00:27:40,630 --> 00:27:44,580 ანალოგიურად, PHP, ზოგიერთი შესაძლოა შეასრულოს, და მაშინ შესაძლოა 562 00:27:44,580 --> 00:27:46,310 შეცდომა მოგვიანებით. 563 00:27:46,310 --> 00:27:49,910 >> ასევე, პატარა განსხვავებით, PHP, თუ თქვენ გაქვთ JavaScript შეცდომა - 564 00:27:49,910 --> 00:27:52,780 ამბობენ, რომ თქვენ არ უფლება კოდი alert box - 565 00:27:52,780 --> 00:27:55,800 შეგიძლიათ შენარჩუნება გაშვებული თქვენი პროგრამა. 566 00:27:55,800 --> 00:27:58,180 Alert box არ მუშაობს, მაგრამ თქვენი პროგრამა იქნება ჯარიმა. 567 00:27:58,180 --> 00:28:00,490 უბრალოდ, შესაძლოა, რომ ფუნქცია ვერ. 568 00:28:00,490 --> 00:28:02,610 >> ასე რომ ზოგიერთი ყველაზე დიდი განსხვავება თვალსაზრისით როგორ შეიძლება ამ 569 00:28:02,610 --> 00:28:09,230 ენებზე, თუ როგორ პროგრამირების კოდი წერთ რეალურად შეაფასა. 570 00:28:09,230 --> 00:28:11,970 ასევე არსებობს სხვა განსხვავებები თვალსაზრისით - დიდი განსხვავება 571 00:28:11,970 --> 00:28:15,590 ჩვენ ვნახეთ თვალსაზრისით ცვლადები სხვადასხვა ენებზე. 572 00:28:15,590 --> 00:28:19,660 ასე რომ შეიძლება ვინმეს მომეცი განსხვავება შორის ცვლადები 573 00:28:19,660 --> 00:28:20,910 სამი ენებზე? 574 00:28:20,910 --> 00:28:24,802 575 00:28:24,802 --> 00:28:25,770 დიახ. 576 00:28:25,770 --> 00:28:27,130 >> აუდიტორია: In C, ისინი მკაცრად აკრეფილი. 577 00:28:27,130 --> 00:28:28,550 დანარჩენი ორი, ისინი თავისუფლად აკრეფილი. 578 00:28:28,550 --> 00:28:30,040 >> JASON HIRSCHHORN: და რას ნიშნავს ეს? 579 00:28:30,040 --> 00:28:31,775 >> აუდიტორია: ეს C, თქვენ უნდა განაცხადოს ტიპის ცვლადი, როდესაც 580 00:28:31,775 --> 00:28:36,140 თქვენ განაცხადოს ცვლადი, ისევე როგორც interbool ან char. 581 00:28:36,140 --> 00:28:36,990 >> JASON HIRSCHHORN: Excellent. 582 00:28:36,990 --> 00:28:39,780 In C, ჩვენ ყოველთვის უნდა დააყენოს ტიპის ცვლადი. 583 00:28:39,780 --> 00:28:41,360 და ჩვენ შეგვიძლია ნამდვილად არ ავურიოთ ტიპის. 584 00:28:41,360 --> 00:28:45,750 თქვენ ვერ გავაკეთებთ, მთელი პლუს string. 585 00:28:45,750 --> 00:28:48,760 მაგრამ როგორც ჩვენ ვნახეთ ამ სხვა ენებზე, თქვენ ნამდვილად შეგიძლიათ ავურიოთ ტიპის, 586 00:28:48,760 --> 00:28:51,230 და თქვენ არასდროს ნამდვილად უნდა მისცეს რაღაც ტიპის, როგორც არასდროს. 587 00:28:51,230 --> 00:28:53,905 >> ასე რომ, ვიცით, რამ ცვლადები PHP და JavaScript? 588 00:28:53,905 --> 00:28:57,120 589 00:28:57,120 --> 00:28:58,685 >> აუდიტორია: In PHP, ისინი დაიწყოს დოლარის ნიშანი. 590 00:28:58,685 --> 00:29:00,810 ამ JavaScript, როდესაც თქვენ გამოაცხადოს მათ, თქვენ უნდა აქვს ბარი. 591 00:29:00,810 --> 00:29:01,760 >> JASON HIRSCHHORN: Right. 592 00:29:01,760 --> 00:29:03,535 ასე რომ, PHP, ისინი დაიწყოს დოლარის ნიშანი. 593 00:29:03,535 --> 00:29:06,300 ამ JavaScript, ისინი უნდა აქვს ბარი, მიუხედავად იმისა, რომ ზოგჯერ ისინი რეალურად არ 594 00:29:06,300 --> 00:29:07,520 აქვს ბარი. 595 00:29:07,520 --> 00:29:09,240 მაგრამ ეს სწორი. 596 00:29:09,240 --> 00:29:13,300 >> ასე რომ დიდი სხვაობა შორის ცვლადები. 597 00:29:13,300 --> 00:29:16,140 მე ვფიქრობ, ეს, ალბათ, off ზევით ჩემი უფროსი, ორი დიდი 598 00:29:16,140 --> 00:29:19,250 განსხვავებები ამ სამ ენაზე. 599 00:29:19,250 --> 00:29:20,594 მაგრამ, yeah. 600 00:29:20,594 --> 00:29:24,720 >> აუდიტორია: და ფარგლებს C ცვლადები შეზღუდულია curly აფრთხილებს, 601 00:29:24,720 --> 00:29:27,760 სადაც სხვა პირობა, უბრალოდ მინდა, იგი კვდება თუ ის ფუნქცია მხოლოდ, 602 00:29:27,760 --> 00:29:29,650 მაგრამ სხვაგვარად, it's - 603 00:29:29,650 --> 00:29:30,240 >> JASON HIRSCHHORN: Right. 604 00:29:30,240 --> 00:29:36,780 ასე ფარგლებს ოდნავ განსხვავებული C. როგორც გახსოვთ, curly აფრთხილებს განსაზღვრავს 605 00:29:36,780 --> 00:29:37,710 ფარგლებში ცვლადები. 606 00:29:37,710 --> 00:29:41,680 ასე რომ, თუ იგი განსაზღვრული შიგნით თუ მდგომარეობა, რომელიც არის შიგნით ამისთვის მარყუჟის, 607 00:29:41,680 --> 00:29:44,290 ცვლადი მხოლოდ არსებობს იქ. 608 00:29:44,290 --> 00:29:47,760 >> ამ JavaScript, თუ ცვლადი განსაზღვრულია შიგნით თუ მდგომარეობა - 609 00:29:47,760 --> 00:29:50,750 შიგნით for loop - ეს კიდე არსებობს ეს ფუნქცია, მაგრამ ეს არ იქნება 610 00:29:50,750 --> 00:29:52,330 გარეთ რომ ფუნქცია. 611 00:29:52,330 --> 00:29:59,250 ასე ფარგლებში არის ცოტა უფრო მოქნილი in JavaScript და PHP. 612 00:29:59,250 --> 00:30:00,500 რომ კითხვაზე პასუხის გაცემა? 613 00:30:00,500 --> 00:30:03,110 614 00:30:03,110 --> 00:30:04,635 OK, ნებისმიერი სხვა კითხვები? 615 00:30:04,635 --> 00:30:07,260 616 00:30:07,260 --> 00:30:08,865 ჩვენ შეგვიძლია გავაკეთოთ კიდევ ოთხი წუთის კითხვები, მაშინ 617 00:30:08,865 --> 00:30:10,740 ჩვენ ხტომა შევიდა კოდირების. 618 00:30:10,740 --> 00:30:12,645 >> აუდიტორია: შეგვიძლია წასვლას Ajax და ვისაუბროთ რა, რომ არის? 619 00:30:12,645 --> 00:30:15,670 620 00:30:15,670 --> 00:30:17,800 >> JASON HIRSCHHORN: Talk to Avi შემდეგ. 621 00:30:17,800 --> 00:30:19,170 მან სთხოვა, რომ საკითხი ადრე. 622 00:30:19,170 --> 00:30:19,630 >> აუდიტორია: ჩემი ცუდი. 623 00:30:19,630 --> 00:30:20,880 >> JASON HIRSCHHORN: არარის შეშფოთებულია. 624 00:30:20,880 --> 00:30:22,740 625 00:30:22,740 --> 00:30:24,290 >> აუდიტორია: რა არის JSON? 626 00:30:24,290 --> 00:30:28,360 627 00:30:28,360 --> 00:30:28,900 >> JASON HIRSCHHORN: რა არის JSON? 628 00:30:28,900 --> 00:30:29,930 რა არის თქვენი შეკითხვა? 629 00:30:29,930 --> 00:30:31,350 >> აუდიტორია: Just მართლაც სწრაფად, სხვაობა 630 00:30:31,350 --> 00:30:32,870 ბეჭდვითი და echo PHP. 631 00:30:32,870 --> 00:30:36,200 632 00:30:36,200 --> 00:30:38,490 >> JASON HIRSCHHORN: რატომ არ google სხვაობა ბეჭდვითი და ეხო? 633 00:30:38,490 --> 00:30:40,670 მცირე განსხვავება. 634 00:30:40,670 --> 00:30:42,020 არ არის, რომ დიდი გარიგება. 635 00:30:42,020 --> 00:30:44,960 მაგრამ თქვენ უნდა google ის, და რომ მოგცემთ კარგი პასუხი. 636 00:30:44,960 --> 00:30:46,910 >> JSON, ალბათ უფრო დიდი გარიგება. 637 00:30:46,910 --> 00:30:49,300 დგას JavaScript Object ნოტაცია. 638 00:30:49,300 --> 00:30:51,865 და როდესაც გვაქვს ჩანს JSON გამოიყენება? 639 00:30:51,865 --> 00:30:55,110 640 00:30:55,110 --> 00:30:55,900 როდესაც გინახავთ - 641 00:30:55,900 --> 00:30:57,400 რატომ კი ვიცი სიტყვა JSON? 642 00:30:57,400 --> 00:30:59,140 როდესაც გინახავთ ეს? 643 00:30:59,140 --> 00:31:02,200 >> აუდიტორია: როცა ჩვენ ვიღებთ საფონდო მოჰყავს ფინანსთა. 644 00:31:02,200 --> 00:31:02,690 >> JASON HIRSCHHORN: ასე რომ თქვენ ნახეთ ეს მაშინ, როდესაც იღებდნენ 645 00:31:02,690 --> 00:31:04,830 საფონდო მოჰყავს ფინანსთა. 646 00:31:04,830 --> 00:31:07,340 და რატომ ხედავთ? 647 00:31:07,340 --> 00:31:09,000 >> აუდიტორია: როცა ჩვენ ძებნისათვის ყველა ინფორმაცია, რომ 648 00:31:09,000 --> 00:31:10,400 მოვიდა ამ ფორმატში. 649 00:31:10,400 --> 00:31:11,700 >> JASON HIRSCHHORN: ასე რომ თქვენ მიიღოთ - 650 00:31:11,700 --> 00:31:12,540 yeah. 651 00:31:12,540 --> 00:31:13,020 წავიდეთ წინ. 652 00:31:13,020 --> 00:31:15,210 >> აუდიტორია: [INAUDIBLE] ინფორმაცია out ობიექტი? 653 00:31:15,210 --> 00:31:17,170 >> JASON HIRSCHHORN: ორივე ერთად არის პასუხი 654 00:31:17,170 --> 00:31:18,100 ჩვენ ვეძებთ. 655 00:31:18,100 --> 00:31:21,240 გსურთ ინფორმაცია ეს სხვა webpage. 656 00:31:21,240 --> 00:31:23,790 და იმედი მაქვს, რომ როდესაც თქვენ მიღების, რომ ინფორმაცია, რომ ეს იქნება 657 00:31:23,790 --> 00:31:26,720 წარმოგიდგინეთ ზოგიერთი ტიპის სტანდარტიზებული ფორმატი. 658 00:31:26,720 --> 00:31:29,530 >> ყველა ალბათ იცნობს ერთად მძიმით გამოყოფილი ღირებულებები. 659 00:31:29,530 --> 00:31:32,970 თქვენ შეგიძლიათ საექსპორტო Excel-ან ნებისმიერი ტიპის ცხრილების როგორც სიაში 660 00:31:32,970 --> 00:31:34,540 მძიმით გამოყოფილი ღირებულებები. 661 00:31:34,540 --> 00:31:37,370 და მძიმეები დაყოს ყველა სხვადასხვა სფეროში. 662 00:31:37,370 --> 00:31:38,780 JavaScript Object Notation - 663 00:31:38,780 --> 00:31:39,440 JSON - 664 00:31:39,440 --> 00:31:43,540 არის სხვა ტიპის სტანდარტიზებული განლაგება რამ. 665 00:31:43,540 --> 00:31:49,010 და რომ ხშირად, თუ როგორ ვიღებ ინფორმაცია ჩვენი Ajax შეკითხვებს. 666 00:31:49,010 --> 00:31:51,770 >> ასე რომ, ამ შემთხვევაში, მივიღეთ ის საწყისი Yahoo საიტზე. 667 00:31:51,770 --> 00:31:53,600 ისინი დაბრუნდებიან რამ ჩვენს JSON ობიექტი. 668 00:31:53,600 --> 00:31:56,790 და მაშინ ჩვენ ვიცით, რადგან ეს სტანდარტი, რასაც ის 669 00:31:56,790 --> 00:31:57,250 აპირებს გამოიყურებოდეს. 670 00:31:57,250 --> 00:32:00,760 ასე რომ ჩვენ შეგვიძლია iterate მეშვეობით მასივი რომ დაბრუნდა ჩვენთვის მასივი 671 00:32:00,760 --> 00:32:03,180 ობიექტები, რომლებიც დაბრუნდა us. 672 00:32:03,180 --> 00:32:07,770 >> ჩვენ არ ალბათ უნდა იცოდეს, გასაღებები, მაგრამ ზოგადად გადმოგცეთ 673 00:32:07,770 --> 00:32:11,370 დოკუმენტაციის ნახვა, როდესაც თქვენ მიღება ზოგიერთი JSON 674 00:32:11,370 --> 00:32:12,170 notation მათთვის. 675 00:32:12,170 --> 00:32:16,940 გარდა ამისა, თქვენ შეგიძლიათ JSON encode ობიექტი. 676 00:32:16,940 --> 00:32:19,900 ასე რომ არსებობს ფუნქცია JSON ხაზგასმით encode. 677 00:32:19,900 --> 00:32:22,970 და ასე რომ თქვენ შეუძლია მიიღოს ობიექტი, რომელიც თქვენ შექმნა, JSON encode, და 678 00:32:22,970 --> 00:32:26,390 გაიაროს ეს რაღაც სხვაგან, თუ გსურთ. 679 00:32:26,390 --> 00:32:30,770 და JSON decode ასევე არსებობს მსგავსი მიზნით, ან 680 00:32:30,770 --> 00:32:31,780 საპირისპირო მიზნით. 681 00:32:31,780 --> 00:32:36,570 >> აუდიტორია: ნუ ჩვენ უნდა ვიცოდეთ კოდირების განთავსების hash მაგიდები და ცდილობს? 682 00:32:36,570 --> 00:32:40,300 ან ჩვენ უბრალოდ უნდა გვესმოდეს როგორ ისინი გამოიყენება, კონცეპტუალურად? 683 00:32:40,300 --> 00:32:44,570 >> JASON HIRSCHHORN: ასე რომ, გაზარდოთ თქვენი მხრივ, თუ გააკეთა hash მაგიდა p მითითებული 4 684 00:32:44,570 --> 00:32:46,920 ბმული სიაში. 685 00:32:46,920 --> 00:32:47,960 ან p მითითებული 5. 686 00:32:47,960 --> 00:32:49,060 ისე, რომ იყო დიდი უმრავლესობა. 687 00:32:49,060 --> 00:32:50,390 P მითითებული 5, 6, ვინ იცის. 688 00:32:50,390 --> 00:32:51,240 დიდი ხნის წინ. 689 00:32:51,240 --> 00:32:54,140 >> ასე რომ დიდი უმრავლესობა თქვენ გააკეთეთ hash მაგიდები ლინკი სიებში. 690 00:32:54,140 --> 00:32:56,525 და იმის გამო, რომ ალბათ უფრო ერთიანი მიდგომა, და რადგან გავატარეთ 691 00:32:56,525 --> 00:32:59,460 ბევრი დრო აკეთებს ლინკი სიები და hash მაგიდები, თქვენ უნდა ალბათ იყოს 692 00:32:59,460 --> 00:33:02,600 საკმაოდ იცნობს, თუ როგორ კოდექსში hash მაგიდა და ბმული სიაში. 693 00:33:02,600 --> 00:33:05,060 >> და თუ ფიქრობთ თავში, რომ პრობლემა მითითებული, ეს ნამდვილად არ იყო 694 00:33:05,060 --> 00:33:06,410 როგორც მყარი, როგორც თქვენ მოსალოდნელია. 695 00:33:06,410 --> 00:33:08,120 და იქ იყო ბევრი ნაკლებად კოდი ვიდრე მოსალოდნელი იყო. 696 00:33:08,120 --> 00:33:11,150 697 00:33:11,150 --> 00:33:14,650 მე ვიტყოდი, რომ თქვენ უნდა იცოდეს, თუ როგორ უნდა კოდექსის hash მაგიდასთან ან ლინკი სიაში. 698 00:33:14,650 --> 00:33:17,010 არ არის, რომ თქვენ მინდა იყოს სთხოვა, რომ, აუცილებლად, მაგრამ თქვენ უნდა 699 00:33:17,010 --> 00:33:19,730 რა თქმა უნდა, ვიცი, რომ. 700 00:33:19,730 --> 00:33:21,860 >> ასევე, თუ გადავხედავთ წარსულში ტესტებში, არ ყოფილა ბევრი 701 00:33:21,860 --> 00:33:26,450 კითხვებს წერილობით ფუნქციები ლინკი სიები ან ორმაგად დაკავშირებული სიებში. 702 00:33:26,450 --> 00:33:28,370 რომ როგორც ჩანს ამუშავება ყოველ წელს. 703 00:33:28,370 --> 00:33:31,940 მარჯვენა ჩადეთ ბმულს სიაში, უფლება წაშლა ბმული სიაში, უფლება ჩადეთ 704 00:33:31,940 --> 00:33:33,610 განთავსების ორმაგად დაკავშირებული სიაში, et cetera. 705 00:33:33,610 --> 00:33:36,170 ასე რომ, ვფიქრობ, საკმაოდ კომფორტული ამბობდა, რომ თქვენ უნდა იცოდეს, რომ. 706 00:33:36,170 --> 00:33:40,600 >> განთავსების ლელო, მე ვიტყოდი, თქვენ უნდა რა თქმა უნდა ვიცი როგორ მუშაობს, და იქნებ 707 00:33:40,600 --> 00:33:43,570 ზოგიერთი pseudocode თუ როგორ კოდექსში და შექმნას it up. 708 00:33:43,570 --> 00:33:45,600 მაგრამ ეს არ იქნება უარესი რამ მსოფლიოში, თუ თქვენ არ იცით, თუ როგორ 709 00:33:45,600 --> 00:33:48,870 კოდექსის ის C. ეს ძალიან კარგი იქნება, თუ თქვენ იცოდა კოდექსით C, მაგრამ მე ვფიქრობ, 710 00:33:48,870 --> 00:33:52,516 ალბათ pseudocode ამისთვის შანსი იქნებოდა იყოს საუკეთესო თქვენ უნდა 711 00:33:52,516 --> 00:33:53,270 ვიცი ცდილობენ. 712 00:33:53,270 --> 00:33:53,930 >> აუდიტორია: Extra საკრედიტო? 713 00:33:53,930 --> 00:33:58,290 >> JASON HIRSCHHORN: და იგივე, თუ ჩვენ წასვლას ორობითი ძებნა ხეები, ალბათ 714 00:33:58,290 --> 00:34:02,320 უნდა - და თქვენ ვნახეთ წარსულში, ჩვენ გავაკეთეთ ბევრი - იცით, თუ როგორ 715 00:34:02,320 --> 00:34:03,380 ორობითი ძებნა ხე მუშაობს. 716 00:34:03,380 --> 00:34:07,150 თქვენ უნდა ალბათ შეძლებს მითითებული ერთი up in ფსევდო კოდი. 717 00:34:07,150 --> 00:34:10,510 არამედ იმიტომ, რომ დიდი უმრავლესობა ხალხი არ გავაკეთოთ, რომ პრობლემა 718 00:34:10,510 --> 00:34:13,880 კომპლექტი, მინდა ვთქვა, რომ ეს, ალბათ, ნაკლებად მნიშვნელოვანია, რომ თქვენ იცით, თუ როგორ კოდექსში 719 00:34:13,880 --> 00:34:17,380 და შეიქმნა ხე იგრძნობა. 720 00:34:17,380 --> 00:34:19,679 >> ნებისმიერი სხვა კითხვები? 721 00:34:19,679 --> 00:34:23,234 ასევე, ჩვენ შეგვიძლია მათ ვთხოვთ, მთელი როგორც ჩვენ გაიაროს გარკვეული პრობლემები. 722 00:34:23,234 --> 00:34:27,170 OK, ჩვენ ვაპირებთ გადაადგილება. 723 00:34:27,170 --> 00:34:28,230 გამოტოვე რომ slide ახლა. 724 00:34:28,230 --> 00:34:32,449 >> საუბარი ხეები, რომ ეს არის პირველი კითხვა მაქვს თქვენ ბიჭები. 725 00:34:32,449 --> 00:34:34,270 იმიტომ, რომ ეს არის პრობლემა. 726 00:34:34,270 --> 00:34:37,380 მე ვიტყოდი, რომ ეს ძალიან სავარაუდოა, თქვენ კიდევ პრობლემა მოსწონს ეს თქვენს ვიქტორინა 727 00:34:37,380 --> 00:34:43,659 გეკითხებით კოდექსის ზოგიერთი ტიპის ჩადეთ, წაშლა, ძიების, ერთი ტიპის 728 00:34:43,659 --> 00:34:45,270 მონაცემთა სტრუქტურა ჩვენ ვნახეთ. 729 00:34:45,270 --> 00:34:47,719 >> რომ მოდის up ყოველწლიურად გავატარეთ ბევრი დრო მეორე ნახევარში ამ 730 00:34:47,719 --> 00:34:50,270 სემესტრის აპირებს მეტი ამ ტიპის მონაცემები. 731 00:34:50,270 --> 00:34:54,170 ასე რომ, ახლა, მე განსაზღვრული კვანძის in ორობითი ძებნა ხე. 732 00:34:54,170 --> 00:34:58,490 და რა მინდა გავაკეთოთ ენიჭება ორობითი ძებნა ხე, რომელიც იწყება 733 00:34:58,490 --> 00:35:05,450 ამ კვანძის star root, დაასრულებს განხორციელების ფუნქცია ქვემოთ, 734 00:35:05,450 --> 00:35:07,430 რომელიც ხდება უნდა იყოს იპოვოს ფუნქცია. 735 00:35:07,430 --> 00:35:09,260 და ამის გარეშე recursions. 736 00:35:09,260 --> 00:35:10,860 >> ასე რომ, მინდა დაწერა ორი ფუნქცია. 737 00:35:10,860 --> 00:35:14,310 ერთი აკეთებს ამ უკან, ერთი ამით გარეშე უკან. 738 00:35:14,310 --> 00:35:18,050 და არ ვივარაუდოთ, რომ root იქნება არასამთავრობო null. 739 00:35:18,050 --> 00:35:21,790 ასე რომ, ჩვენ ვეძებთ მთელი i in ხე იწყება root, და ჩვენ გვჭირდება 740 00:35:21,790 --> 00:35:25,280 დაწერა ამ რეკურსიული და iteratively. 741 00:35:25,280 --> 00:35:26,300 ჰო. 742 00:35:26,300 --> 00:35:29,730 >> აუდიტორია: ასე რომ გსურთ us დაბრუნებას ჭეშმარიტი თუ ჩვენ, და ცრუ თუ ჩვენ 743 00:35:29,730 --> 00:35:30,480 არ საპოვნელად. 744 00:35:30,480 --> 00:35:32,160 >> JASON HIRSCHHORN: როგორ იცით? 745 00:35:32,160 --> 00:35:33,100 როგორ იცით რომ? 746 00:35:33,100 --> 00:35:36,500 >> აუდიტორია: I ითხოვდა, მაგრამ მე ვიყავი ვთქვათ, რადგან ის ამბობს bool at 747 00:35:36,500 --> 00:35:37,490 დასაწყისში ფუნქცია. 748 00:35:37,490 --> 00:35:37,880 >> JASON HIRSCHHORN: Right. 749 00:35:37,880 --> 00:35:41,020 იგი აცხადებს, bool, ასე რომ მე კი არ უნდა გეტყვით, თუ რა ველოდები თქვენ დაბრუნებას 750 00:35:41,020 --> 00:35:41,350 რადგან ის ამბობს უფლება არსებობს. 751 00:35:41,350 --> 00:35:42,280 მაგრამ ეს უფლება. 752 00:35:42,280 --> 00:35:43,510 დაბრუნება, ჭეშმარიტი ან მცდარი. 753 00:35:43,510 --> 00:35:47,630 >> ასე რომ, სანამ დაიწყება, მე რეკომენდაციას, თუ თქვენ ხართ უცხო ერთად 754 00:35:47,630 --> 00:35:51,300 ორობითი ძებნა ხეები, სწრაფად გრაფიკა სურათს, რომ მიიღოთ თქვენი 755 00:35:51,300 --> 00:35:51,750 გაგება, მარჯვნივ. 756 00:35:51,750 --> 00:35:54,720 ეს ასევე დაგეხმარებათ, როდესაც წერილობით თქვენი კოდი და შემოწმების. 757 00:35:54,720 --> 00:35:57,830 ერთხელ, თქვენ ასევე არ უნდა, რომ ბევრი დრო ვიქტორინა გავაკეთოთ ყველაფერი, 758 00:35:57,830 --> 00:35:59,030 რომ ჩვენ ვთხოვთ თქვენ უნდა გააკეთოს. 759 00:35:59,030 --> 00:36:02,350 ასე წერა ფსევდო კოდი არის ძალიან გამოსადეგი. 760 00:36:02,350 --> 00:36:05,310 >> და ჩვენ ზოგადად მისცეს შესახებ - 761 00:36:05,310 --> 00:36:06,820 თუ pseudocode შესანიშნავად სწორი, რომ 762 00:36:06,820 --> 00:36:08,910 ზოგადად 50% კითხვაზე. 763 00:36:08,910 --> 00:36:11,410 ასე რომ, ეს არ არის რთული და სწრაფად წესი, მაგრამ თუ თქვენ უბრალოდ დაწერეთ pseudocode და ეს 764 00:36:11,410 --> 00:36:13,460 სწორი, ეს ზოგადად 50%. 765 00:36:13,460 --> 00:36:14,970 ასე რომ, მე ყოველთვის ვურჩევ - 766 00:36:14,970 --> 00:36:16,870 თუ თქვენ დაპრესილი დრო, ან თუნდაც თქვენ უბრალოდ ცდილობს გაერკვნენ ის - 767 00:36:16,870 --> 00:36:18,290 დაწყებული pseudocode. 768 00:36:18,290 --> 00:36:24,840 და ბოლოს, თუ თქვენ ვერ წერენ ამ ყველა C, ეს იქნება ფანტასტიური. 769 00:36:24,840 --> 00:36:29,010 >> მოდით სამ წუთში მუშაობა ამ პროგრამით. 770 00:36:29,010 --> 00:36:33,120 და მაშინ ჩვენ ვაპირებთ დავწეროთ pseudocode მას მხოლოდ ერთხელ, და შემდეგ 771 00:36:33,120 --> 00:36:35,455 ჩვენ ვაპირებთ კოდექსით რეკურსიული და შემდეგ iteratively. 772 00:36:35,455 --> 00:37:28,720 773 00:37:28,720 --> 00:37:30,760 >> იმ შემთხვევაში, თუ თქვენ გაქვთ რაიმე შეკითხვები, ვგრძნობ უფასო დააყენებს თქვენი მხრივ. 774 00:37:30,760 --> 00:37:34,270 Happy მოიარე და უპასუხოს მათ სანამ დავიწყებდეთ, როგორც ჯგუფი. 775 00:37:34,270 --> 00:39:22,600 776 00:39:22,600 --> 00:39:27,200 >> მოდით, განაახლოს, და ჩვენ ვაპირებთ pseudocode რეკურსიული მობილური 777 00:39:27,200 --> 00:39:29,830 ამ, და მაშინ ჩვენ კოდექსით. 778 00:39:29,830 --> 00:39:33,380 ასე რომ რეკურსიული ფუნქცია სჭირდება ორი რამ. 779 00:39:33,380 --> 00:39:35,960 ეს შეიძლება იყოს კითხვა, თქვენ შეიძლება სთხოვა. 780 00:39:35,960 --> 00:39:37,950 სჭირდება ორი რამ. 781 00:39:37,950 --> 00:39:40,610 ვისაც შეუძლია დააყენოს მათი ხელი და მითხრა, რა ორი რამ რეკურსიული 782 00:39:40,610 --> 00:39:43,680 ფუნქცია სჭირდება? 783 00:39:43,680 --> 00:39:45,030 ზოგადად ეს ორი რამ. 784 00:39:45,030 --> 00:39:46,280 რა არის ეს ორი რამ? 785 00:39:46,280 --> 00:39:48,580 786 00:39:48,580 --> 00:39:49,830 New ხელში. 787 00:39:49,830 --> 00:39:55,050 788 00:39:55,050 --> 00:39:56,390 დიახ, Alden. 789 00:39:56,390 --> 00:39:57,980 >> აუდიტორია: ასე რომ, მე არ ვარ დარწმუნებული ზუსტად თუ ეს არის ტერმინოლოგია, მაგრამ - 790 00:39:57,980 --> 00:39:59,715 >> JASON HIRSCHHORN: მოხარული ვარ თქვენ ამაღლების თქვენი მხრივ. 791 00:39:59,715 --> 00:40:03,380 >> აუდიტორია: ეს სჭირდება ბაზის შემთხვევაში, და მას სჭირდება რეკურსიული ნაბიჯი. 792 00:40:03,380 --> 00:40:03,960 >> JASON HIRSCHHORN: Perfect. 793 00:40:03,960 --> 00:40:06,340 მას სჭირდება ბაზის შემთხვევაში და რეკურსიული ნაბიჯი. 794 00:40:06,340 --> 00:40:10,430 რა არის ჩვენი ბაზის შემთხვევაში აქ? 795 00:40:10,430 --> 00:40:12,950 >> აუდიტორია: F root უდრის უდრის null. 796 00:40:12,950 --> 00:40:15,110 სამწუხაროდ, მხოლოდ pseudocode, თუ ეს null. 797 00:40:15,110 --> 00:40:16,360 იმ შემთხვევაში, თუ root არის null. 798 00:40:16,360 --> 00:40:21,900 799 00:40:21,900 --> 00:40:23,540 >> JASON HIRSCHHORN თუ root არის null. 800 00:40:23,540 --> 00:40:23,850 ეს არის ის კარგი. 801 00:40:23,850 --> 00:40:24,610 ეს არის ჩვენი ბაზის შემთხვევაში. 802 00:40:24,610 --> 00:40:25,910 ეს არის ის, რასაც ჩვენ ვაპირებთ რათა შეამოწმოს ყოველ ჯერზე. 803 00:40:25,910 --> 00:40:28,000 და ბაზის შემთხვევაში არის პირველი, რასაც თქვენ აკეთებთ. 804 00:40:28,000 --> 00:40:29,720 თუ თქვენ მოხვდა ბაზის შემთხვევაში, თქვენ გაკეთდეს. 805 00:40:29,720 --> 00:40:34,140 >> ახლა ჩვენ გვჭირდება ჩვენი რეკურსიული ზარი, და მინდა იყოს სურვილი, რომ დადებს ჩვენ გვჭირდება რამდენიმე 806 00:40:34,140 --> 00:40:35,440 რეკურსიული მოუწოდებს აქ. 807 00:40:35,440 --> 00:40:39,630 იმიტომ, რომ ეს ხე, და ჩვენ შეიძლება წავიდეს სხვადასხვა გზები. 808 00:40:39,630 --> 00:40:43,190 ასე რომ, თუ root არის null, ჩვენ კარგი. 809 00:40:43,190 --> 00:40:44,970 >> რას ვთავაზობთ? 810 00:40:44,970 --> 00:40:49,640 და ახლა მე ვაპირებ დაიწყება დარეკვით out თქვენ ბიჭები, რადგან ვიცი, რომ თქვენ ბიჭები 811 00:40:49,640 --> 00:40:50,540 ყველამ ვიცით ეს. 812 00:40:50,540 --> 00:40:52,610 მაგრამ Annie, რა უნდა შემდეგი ხაზი იყოს? 813 00:40:52,610 --> 00:40:53,570 რა მოხდება, თუ ჩვენ ვერ? 814 00:40:53,570 --> 00:40:55,526 რა ვქნათ? 815 00:40:55,526 --> 00:40:57,300 >> აუდიტორია: თუ ჩვენ ვერ? 816 00:40:57,300 --> 00:40:59,160 >> JASON HIRSCHHORN: ან რა უნდა იყოს, რომ - 817 00:40:59,160 --> 00:41:02,124 მომეცი pseudocode ამისთვის ხაზი, სადაც ჩვენ ვერ. 818 00:41:02,124 --> 00:41:04,700 >> აუდიტორია: თუ მე შეადგენს root i? 819 00:41:04,700 --> 00:41:06,650 >> JASON HIRSCHHORN: და მაშინ რა ვქნათ? 820 00:41:06,650 --> 00:41:07,590 >> აუდიტორია: დაბრუნება ჭეშმარიტი. 821 00:41:07,590 --> 00:41:08,530 >> JASON HIRSCHHORN: Great. 822 00:41:08,530 --> 00:41:16,890 ასე რომ, თუ მე i - 823 00:41:16,890 --> 00:41:17,400 oh, ისინი ორივე ეწოდება i. 824 00:41:17,400 --> 00:41:18,470 რომ იღებს დამაბნეველი. 825 00:41:18,470 --> 00:41:23,830 მაგრამ თუ მე ვბრუნდები ასეა. 826 00:41:23,830 --> 00:41:25,620 ეს, ალბათ, მომდევნო რაც ჩვენ უნდა გავაკეთოთ. 827 00:41:25,620 --> 00:41:27,300 აზრი. 828 00:41:27,300 --> 00:41:30,610 >> OK, ახლა ჩვენ არ კეთდება ჩვენი რეკურსიული დარეკეთ არ არის, თუმცა, იმის გამო, რომ რეკურსიული 829 00:41:30,610 --> 00:41:32,300 დარეკეთ მოვუწოდებთ ამ ფუნქციის ერთხელ. 830 00:41:32,300 --> 00:41:41,460 რა უნდა მომავალ ხაზი pseudocode იყოს? 831 00:41:41,460 --> 00:41:42,730 ანა. 832 00:41:42,730 --> 00:41:43,980 >> აუდიტორია: მარცხენა ფლანგზე. 833 00:41:43,980 --> 00:41:47,040 834 00:41:47,040 --> 00:41:47,590 >> JASON HIRSCHHORN: იყავით კონკრეტული, თუმცა. 835 00:41:47,590 --> 00:41:50,600 ეს არის ორობითი ძებნა ხე, რა ამჯამად შემოწმების მარცხენა მხარეს იწვევს? 836 00:41:50,600 --> 00:41:51,890 >> აუდიტორია: ასე კვანძის - 837 00:41:51,890 --> 00:41:53,342 მე ვწუხვარ, root. 838 00:41:53,342 --> 00:41:55,306 და შემდეგ arrow მარცხენა. 839 00:41:55,306 --> 00:41:59,234 840 00:41:59,234 --> 00:42:00,720 კვანძის, კვანძში, უკაცრავად. 841 00:42:00,720 --> 00:42:01,978 მე არ კითხულობს სწორად. 842 00:42:01,978 --> 00:42:05,700 ეს მოუწოდა კვანძის, არა? 843 00:42:05,700 --> 00:42:09,270 >> JASON HIRSCHHORN: ეს იქნება ე.წ. root რომ ფუნქცია, მაგრამ არც გზა. 844 00:42:09,270 --> 00:42:10,925 მარცხენა მხარეს - yeah? 845 00:42:10,925 --> 00:42:13,780 >> აუდიტორია: თუ ეს არ თანაბარი i, მაშინ ჩვენ ვაპირებთ მოვუწოდებთ 846 00:42:13,780 --> 00:42:15,130 ფუნქცია ერთხელ? 847 00:42:15,130 --> 00:42:15,490 >> JASON HIRSCHHORN: ეს უფლება. 848 00:42:15,490 --> 00:42:17,870 თუ ეს არ თანაბარი i, ჩვენ ვაპირებთ მოვუწოდებთ ფუნქცია ერთხელ. 849 00:42:17,870 --> 00:42:21,435 მაგრამ რა მხარეს ხე მივდივართ მოვუწოდებთ ფუნქცია ერთხელ? 850 00:42:21,435 --> 00:42:22,685 >> აუდიტორია: მარცხენა მხარეს. 851 00:42:22,685 --> 00:42:25,932 852 00:42:25,932 --> 00:42:27,670 >> JASON HIRSCHHORN: ჩვენ არ ვართ ყოველთვის ვაპირებთ ეძახით მარცხენა, თუ იგი 853 00:42:27,670 --> 00:42:29,190 არ გაუტოლდება მას. 854 00:42:29,190 --> 00:42:29,610 >> აუდიტორია: ოჰ, უკაცრავად. 855 00:42:29,610 --> 00:42:31,200 ზარის უფლება. 856 00:42:31,200 --> 00:42:33,680 >> JASON HIRSCHHORN: ჩვენ გვინდა ვიცოდეთ კერძოდ, მიუხედავად იმისა, რომ - უნდა გვახსოვდეს, რომ 857 00:42:33,680 --> 00:42:37,700 ორობითი ძებნა ხე, ყველაფერი მარცხენა მხარეს არის პატარა. 858 00:42:37,700 --> 00:42:40,460 იმისათვის, რომ უფლება მხარეს მეტია. 859 00:42:40,460 --> 00:42:43,990 ასე რომ, ეს უბრალოდ არ არის - yeah, წავიდეთ წინ. 860 00:42:43,990 --> 00:42:46,805 >> აუდიტორია: თუ ეს არანაკლებ i, შემდეგ - 861 00:42:46,805 --> 00:42:52,130 862 00:42:52,130 --> 00:42:53,380 თუ ის მარცხენა - 863 00:42:53,380 --> 00:42:56,160 864 00:42:56,160 --> 00:42:58,606 >> JASON HIRSCHHORN: ასე რომ, თუ ri ნაკლებია, ვიდრე - 865 00:42:58,606 --> 00:43:01,854 866 00:43:01,854 --> 00:43:09,110 ასე რომ, თუ ჩვენი ნაკლებია, ვიდრე i, რა მხარეს გვინდა წასვლა? 867 00:43:09,110 --> 00:43:15,120 >> აუდიტორია: ჩვენ გვინდა წასვლა მარჯვენა მხარეს. 868 00:43:15,120 --> 00:43:16,250 >> JASON HIRSCHHORN: ჩვენ გვინდა წასვლა - 869 00:43:16,250 --> 00:43:19,210 მოგიყვანთ სწრაფი ხე. 870 00:43:19,210 --> 00:43:23,850 თუ ეს არის 5, ეს იქნება 3. 871 00:43:23,850 --> 00:43:29,410 ასე რომ, თუ ri ხუთზე ნაკლებია, რაც მხარე გვინდა წასვლა? 872 00:43:29,410 --> 00:43:30,390 >> აუდიტორია: უკაცრავად, რა? 873 00:43:30,390 --> 00:43:33,190 >> JASON HIRSCHHORN ჩვენი ნომერი ნაკლები რაოდენობის ჩვენ 874 00:43:33,190 --> 00:43:34,710 ეძებს ახლა. 875 00:43:34,710 --> 00:43:35,890 >> აუდიტორია: Oh, მაშინ ჩვენ გვინდა წასვლა მარცხენა მხარეს. 876 00:43:35,890 --> 00:43:36,240 ჰო. 877 00:43:36,240 --> 00:43:36,920 უკაცრავად. 878 00:43:36,920 --> 00:43:37,230 >> JASON HIRSCHHORN: ზუსტად. 879 00:43:37,230 --> 00:43:38,480 არ შფოთვა. 880 00:43:38,480 --> 00:43:41,020 ორობითი ძებნა ხე, ყველაფერი ქვედა მარცხენა, 881 00:43:41,020 --> 00:43:42,110 დიდი არის უფლება. 882 00:43:42,110 --> 00:43:46,700 ასე რომ, თუ ჩვენი ნაკლებია, ვიდრე i ჩვენ შემოწმების - 883 00:43:46,700 --> 00:43:48,790 იმის გამო, რომ ხედავთ კვანძის, მას აქვს i - 884 00:43:48,790 --> 00:43:50,040 მაშინ მინდა მარცხენა. 885 00:43:50,040 --> 00:43:55,480 886 00:43:55,480 --> 00:43:56,720 >> და ეს არის ადვილი. 887 00:43:56,720 --> 00:44:01,700 რა არის ეს მეორე ხაზი pseudocode ჩვენ უნდა დაწეროთ? 888 00:44:01,700 --> 00:44:02,910 Carlos? 889 00:44:02,910 --> 00:44:05,970 >> აუდიტორია: იგივე, უბრალოდ გადახვიდეთ მას მეტია ნიშანი 890 00:44:05,970 --> 00:44:07,420 და გადადით მარჯვნივ. 891 00:44:07,420 --> 00:44:08,350 >> JASON HIRSCHHORN: შეგიძლიათ ამბობენ, რომ ეს კიდევ ერთხელ? 892 00:44:08,350 --> 00:44:11,640 >> აუდიტორია: თუ ჩვენი რიცხვი მეტია, ვიდრე მე, გადადით მარჯვნივ. 893 00:44:11,640 --> 00:44:24,900 894 00:44:24,900 --> 00:44:26,690 >> JASON HIRSCHHORN: Excellent სამუშაო pseudocode. 895 00:44:26,690 --> 00:44:28,700 მოდით გავაკეთოთ ეს რეალურ კოდი. 896 00:44:28,700 --> 00:44:33,280 და კვლავ, ამ pseudocode იქნება ალბათ თქვენ, რადგან ეს 897 00:44:33,280 --> 00:44:35,480 სწორია, 50% ამ კითხვაზე. 898 00:44:35,480 --> 00:44:39,720 მაგრამ ეს pseudocode ასევე ითარგმნება ერთი ერთი, არსებითად, თარგმნეს კოდი. 899 00:44:39,720 --> 00:44:44,380 >> მოდი გავაკეთოთ ეს C. ვის შეუძლია მისცეს ჩემთვის პირველი ხაზი კოდი? 900 00:44:44,380 --> 00:44:48,390 სინამდვილეში, პირველი, სანამ გავაკეთო რომ, ნება მომეცით დახევის გამო - 901 00:44:48,390 --> 00:44:49,260 >> აუდიტორია: მე მაქვს შეკითხვა. 902 00:44:49,260 --> 00:44:52,430 რატომ აბზაცის ონლაინ მივეცი თქვენ? 903 00:44:52,430 --> 00:44:54,160 >> JASON HIRSCHHORN: იმის გამო, მე ვერ წერენ. 904 00:44:54,160 --> 00:44:55,240 მე არ ვიცი. 905 00:44:55,240 --> 00:44:55,650 თქვენ უფლება. 906 00:44:55,650 --> 00:44:57,780 რომ ხაზი უნდა იყოს იქ. 907 00:44:57,780 --> 00:45:11,600 908 00:45:11,600 --> 00:45:14,480 >> OK, აქ არის ჩვენი ფუნქცია. 909 00:45:14,480 --> 00:45:18,090 და ნება მომეცით დახევის გამო, ასევე, ჩვენი განმარტება კვანძში. 910 00:45:18,090 --> 00:45:23,320 911 00:45:23,320 --> 00:45:27,180 რა მოხდება, თუ ჩვენ არ დაწერა typedef? 912 00:45:27,180 --> 00:45:30,240 ვინმემ იცის? 913 00:45:30,240 --> 00:45:32,570 >> აუდიტორია: ეს არ კომპილირდება. 914 00:45:32,570 --> 00:45:33,860 >> JASON HIRSCHHORN: ეს იქნებოდა კომპილირება, yeah. 915 00:45:33,860 --> 00:45:37,120 >> აუდიტორია: თუ უბრალოდ განაცხადოს ერთი მაგალითად, ნაცვლად მას ახალი 916 00:45:37,120 --> 00:45:39,840 ჩაწერეთ თქვენ შეიძლება განაცხადოს მრავალჯერადი შემთხვევები? 917 00:45:39,840 --> 00:45:41,700 >> JASON HIRSCHHORN: ასე რომ არ ვიცი - ეს არ 918 00:45:41,700 --> 00:45:43,120 უბრალოდ განაცხადოს ერთი ტიპის. 919 00:45:43,120 --> 00:45:46,150 თქვენ შეიძლება კვლავ მიიღოს ბევრი კვანძების. 920 00:45:46,150 --> 00:45:48,070 >> აუდიტორია: მაგრამ არ გვაქვს დაწერა struct კვანძის ყოველ ჯერზე? 921 00:45:48,070 --> 00:45:48,640 >> JASON HIRSCHHORN: ეს უფლება. 922 00:45:48,640 --> 00:45:50,960 თქვენ უნდა დაწერა struct კვანძის ყოველ ჯერზე, ნაცვლად მხოლოდ კვანძში. 923 00:45:50,960 --> 00:45:55,270 მაგრამ typedef, შეგიძლიათ უბრალოდ დაწერა კვანძის თითოეული დრო. 924 00:45:55,270 --> 00:45:58,240 OK, რომელსაც არ მიეცა - yeah, Avica. 925 00:45:58,240 --> 00:46:01,520 >> აუდიტორია: თუ root შეადგენს შეადგენს null, დაბრუნების ცრუ. 926 00:46:01,520 --> 00:46:07,130 927 00:46:07,130 --> 00:46:09,490 >> JASON HIRSCHHORN: Great, და რომ ჩვენი ბაზის შემთხვევაში. 928 00:46:09,490 --> 00:46:11,200 შემდეგი ხაზი კოდი. 929 00:46:11,200 --> 00:46:13,999 ვინც არ მიეცა მე ხაზი კოდი არის? 930 00:46:13,999 --> 00:46:14,945 ჰო. 931 00:46:14,945 --> 00:46:23,360 >> აუდიტორია: Root arrow i ტოლი ტოლი i. 932 00:46:23,360 --> 00:46:27,260 შემდეგ დაბრუნდება ნამდვილი. 933 00:46:27,260 --> 00:46:29,162 >> JASON HIRSCHHORN: Great. 934 00:46:29,162 --> 00:46:32,048 შემდეგი ხაზი? 935 00:46:32,048 --> 00:46:32,790 ჰო. 936 00:46:32,790 --> 00:46:34,010 ვინმეს? 937 00:46:34,010 --> 00:46:36,774 და მაშინ წავიდეთ მომავალი. 938 00:46:36,774 --> 00:46:44,820 >> აუდიტორია: Else თუ root arrow i ნაკლებია, ვიდრე ვბრუნდები 939 00:46:44,820 --> 00:46:47,737 ფუნქცია მოუწოდა იპოვოს root - 940 00:46:47,737 --> 00:46:50,611 >> JASON HIRSCHHORN: უკაცრავად. 941 00:46:50,611 --> 00:46:56,272 >> აუდიტორია: დაბრუნება იპოვოს root მიუთითებს მარცხენა მძიმით i. 942 00:46:56,272 --> 00:47:01,760 943 00:47:01,760 --> 00:47:08,440 >> JASON HIRSCHHORN: ასე რომ, თუ ri მეტია ვიდრე ის ხე, ჩვენ გვინდა 944 00:47:08,440 --> 00:47:09,573 გადადით მარცხნივ? 945 00:47:09,573 --> 00:47:11,790 >> აუდიტორია: არა, მე არ ჰქონდა, რომ შეცვალა. 946 00:47:11,790 --> 00:47:13,040 >> JASON HIRSCHHORN: რომელი? 947 00:47:13,040 --> 00:47:16,310 948 00:47:16,310 --> 00:47:16,950 >> აუდიტორია: არა, yeah. 949 00:47:16,950 --> 00:47:19,050 მე მაქვს ნაკლები მოაწეროს არსებობს. 950 00:47:19,050 --> 00:47:22,890 >> JASON HIRSCHHORN: მარჯვენა, თუ ri არის ნაკლებია, ვიდრე რა არის root - 951 00:47:22,890 --> 00:47:25,660 ჩვენი დღევანდელი root - მაშინ ჩვენ მინდა წასვლა მარცხენა. 952 00:47:25,660 --> 00:47:26,960 და რა არის ბოლო ხაზი, თქვენ? 953 00:47:26,960 --> 00:47:30,930 >> აუდიტორია: ძირითადად იგივე, გარდა გადართოთ მეტია ან 954 00:47:30,930 --> 00:47:34,690 ტოლი ნაკლები და მარცხნიდან მარჯვნივ. 955 00:47:34,690 --> 00:47:43,590 956 00:47:43,590 --> 00:47:43,680 >> JASON HIRSCHHORN: Excellent. 957 00:47:43,680 --> 00:47:48,430 ვინმეს გაქვთ რაიმე შეკითხვები ამის შესახებ? 958 00:47:48,430 --> 00:47:52,560 ასე რომ ზოგიერთი სხვა რამ, რაც იქნება უკვე სწორია, რომ 959 00:47:52,560 --> 00:47:53,810 შეიძლება იყოს-ltiff. 960 00:47:53,810 --> 00:47:56,520 961 00:47:56,520 --> 00:47:59,520 ვფიქრობ, ტექნიკურად, არცერთი ნამდვილად ასევე უნდა იყოს ltiff. 962 00:47:59,520 --> 00:48:00,950 >> ასევე, ალბათ, მხოლოდ ერთ შემთხვევაში ქვემოთ აქ. 963 00:48:00,950 --> 00:48:02,380 ასე რომ, ალბათ, უკანასკნელი საქმე. 964 00:48:02,380 --> 00:48:04,000 თქვენ კი არ უნდა, რომ, ltiff. 965 00:48:04,000 --> 00:48:06,160 მაგრამ ალბათ კარგი დაწერა ის, რომ იყოს ნათელი. 966 00:48:06,160 --> 00:48:06,660 ჰო. 967 00:48:06,660 --> 00:48:09,200 >> აუდიტორია: ასე რომ თქვენ არ ვფიქრობ, ვიქტორინა - თუ ჩვენ შეცდომები, მაგალითად, 968 00:48:09,200 --> 00:48:11,725 in სინტაქსი - 969 00:48:11,725 --> 00:48:13,990 ცოტა სინტაქსი შეცდომები - 970 00:48:13,990 --> 00:48:17,810 როგორ ამჯამად რომ მიიღოთ მიღებული ვიქტორინა? 971 00:48:17,810 --> 00:48:21,300 >> JASON HIRSCHHORN: საერთოდ on ვიქტორინა, მცირე სინტაქსის შეცდომა ან მცირე 972 00:48:21,300 --> 00:48:24,010 სტილი შეცდომები არ დაკარგოს რაოდენობა. 973 00:48:24,010 --> 00:48:26,610 ასე რომ, თუ თქვენ დაგავიწყდათ მძიმით აქ, ეს იქნება OK. 974 00:48:26,610 --> 00:48:30,290 თუ დაგავიწყდათ დახურვა ფრჩხილებში, რომ იქნება OK. 975 00:48:30,290 --> 00:48:34,880 >> დიდი syntax შეცდომები, რომ შეცვალოს ფუნქციური მნიშვნელობით თქვენი კოდი 976 00:48:34,880 --> 00:48:37,600 მკვეთრად, შესაძლოა წაიყვანეს ქულა. 977 00:48:37,600 --> 00:48:40,330 ან საერთოდ, უბრალოდ შეფასების თქვენ თუ არა თქვენი 978 00:48:40,330 --> 00:48:42,150 კოდი ფუნქციები, თუნდაც - 979 00:48:42,150 --> 00:48:44,830 არა მისი დიზაინი იმდენად, და არა მისი სტილი. 980 00:48:44,830 --> 00:48:50,780 981 00:48:50,780 --> 00:48:55,480 >> მოდით ახლა კოდექსის iterative მობილური იპოვოს. 982 00:48:55,480 --> 00:49:00,400 983 00:49:00,400 --> 00:49:03,450 ასე რომ, ეს იქნება საკმაოდ მსგავსია, მაგრამ არსებობს რა თქმა უნდა, იქნება 984 00:49:03,450 --> 00:49:06,250 რამოდენიმე ძირითადი განსხვავებები. 985 00:49:06,250 --> 00:49:09,160 თუმცა, ჩვენი pseudocode ალბათ წასვლა - 986 00:49:09,160 --> 00:49:11,610 ჩვენ მაინც ერთი ხაზი pseudocode და გაერკვნენ, თუ რა 987 00:49:11,610 --> 00:49:14,160 ხაზი ამ შემთხვევაში. 988 00:49:14,160 --> 00:49:18,010 >> ასე რომ განმეორებითი მობილური, რა როგორ ფიქრობთ, იულია, უნდა 989 00:49:18,010 --> 00:49:19,260 იყოს პირველი ხაზი? 990 00:49:19,260 --> 00:49:23,100 991 00:49:23,100 --> 00:49:26,920 >> აუდიტორია: კვლავ, განმეორებითი ლოგიკური, თქვენ უნდა შექმნას მარყუჟის, არა? 992 00:49:26,920 --> 00:49:27,660 >> JASON HIRSCHHORN: OK. 993 00:49:27,660 --> 00:49:38,480 >> აუდიტორია: ასე მოსწონს, k, განთავსების x უდრის 0, x არის ნაკლები ვიდრე i. 994 00:49:38,480 --> 00:49:42,260 ან არა, x ნაკლებია, ვიდრე ზომის ხე. 995 00:49:42,260 --> 00:49:42,760 >> JASON HIRSCHHORN: ხე. 996 00:49:42,760 --> 00:49:46,660 ასე რომ, ჩვენ ნამდვილად არ ვიცი ზომა ხე, და ჩვენ ნამდვილად არ ვიცი 997 00:49:46,660 --> 00:49:48,900 რამდენჯერ ჩვენ შეგვიძლია წავიდეთ, რა არის სხვადასხვა ტიპის loop, რომელიც შეიძლება იყოს 998 00:49:48,900 --> 00:49:50,150 უკეთესი ამ შემთხვევაში? 999 00:49:50,150 --> 00:49:53,250 1000 00:49:53,250 --> 00:49:55,244 >> აუდიტორია: თუ სხვა? 1001 00:49:55,244 --> 00:49:57,070 >> JASON HIRSCHHORN თუ სხვაგან არ შეიძლება იყოს loop. 1002 00:49:57,070 --> 00:49:58,935 რა ტიპის loop ჩვენ შეგვიძლია მხოლოდ წასვლა სანამ ზოგიერთ შემთხვევაში შეხვდა? 1003 00:49:58,935 --> 00:50:07,250 1004 00:50:07,250 --> 00:50:11,560 რა არის მხოლოდ სხვა ტიპის loop in C გარდა for loop? 1005 00:50:11,560 --> 00:50:11,930 >> აუდიტორია: მიუხედავად იმისა. 1006 00:50:11,930 --> 00:50:13,380 >> JASON HIRSCHHORN: მიუხედავად იმისა, ზუსტად. 1007 00:50:13,380 --> 00:50:16,430 ხოლო loop, არ უნდა იცოდეს, როგორ - 1008 00:50:16,430 --> 00:50:18,450 ხოლო loop და loop შეუძლია გააკეთოს ზუსტად იგივე რამ, მაგრამ ლამაზი რამ 1009 00:50:18,450 --> 00:50:21,500 დაახლოებით ხოლო loop ჩვენ არ გვჭირდება იცოდეთ, თუ როგორ დიდი ჩვენი ხე. 1010 00:50:21,500 --> 00:50:23,060 ამიტომ, ჩვენ ვაპირებთ წავიდეთ სანამ რა? 1011 00:50:23,060 --> 00:50:25,880 1012 00:50:25,880 --> 00:50:28,032 >> აუდიტორია: სანამ ის ტოლია ზომა - 1013 00:50:28,032 --> 00:50:32,320 >> JASON HIRSCHHORN: ისე, ძალიან მსგავსი ჩვენი რეკურსიული შემთხვევაში. 1014 00:50:32,320 --> 00:50:33,360 ასე რომ, - 1015 00:50:33,360 --> 00:50:36,470 >> აუდიტორია: მიუხედავად იმისა, root i არ თანაბარი i. 1016 00:50:36,470 --> 00:50:37,620 >> JASON HIRSCHHORN: ეს მართლაც ახლოს. 1017 00:50:37,620 --> 00:50:39,430 მიუხედავად იმისა, რომ root i - 1018 00:50:39,430 --> 00:50:40,610 მოდით ცდილობენ. 1019 00:50:40,610 --> 00:50:41,180 მე არ ვფიქრობ, [INAUDIBLE] 1020 00:50:41,180 --> 00:50:43,026 სადაც root i არ თანაბარი i. 1021 00:50:43,026 --> 00:50:47,380 1022 00:50:47,380 --> 00:50:49,460 ჩვენ ალბათ უნდა შეიცვალოს ეს პატარა ცოტა, მაგრამ რომ ჟღერს ეს საკმაოდ 1023 00:50:49,460 --> 00:50:50,160 კარგი, ახლა. 1024 00:50:50,160 --> 00:50:51,710 ამიტომ ჩვენ ყველაფერს გავაკეთებთ, რომ. 1025 00:50:51,710 --> 00:50:55,660 >> ასევე, მახსოვს, ჩვენ არ შეგვიძლია ვივარაუდოთ ერთ კითხვას. 1026 00:50:55,660 --> 00:50:57,880 თქვენ არ ვივარაუდოთ, რომ root იქნება არასამთავრობო null. 1027 00:50:57,880 --> 00:51:01,914 ასე რომ, რას ფიქრობთ ძალიან პირველი, რაც უნდა გავაკეთოთ არის? 1028 00:51:01,914 --> 00:51:02,770 >> აუდიტორია: Just იგივეს რამ, როგორც ადრე. 1029 00:51:02,770 --> 00:51:05,260 იმ შემთხვევაში, თუ root შეადგენს შეადგენს null, დაბრუნების ცრუ. 1030 00:51:05,260 --> 00:51:11,030 1031 00:51:11,030 --> 00:51:12,130 >> JASON HIRSCHHORN: Great. 1032 00:51:12,130 --> 00:51:13,820 ასე რომ, ეს შეიძლება იყოს null. 1033 00:51:13,820 --> 00:51:15,810 ასე რომ ჩვენ გვინდა, თავი დაეღწია იგი დაუყოვნებლივ. 1034 00:51:15,810 --> 00:51:19,560 და მაშინ ჩვენ ვაპირებთ შევამოწმოთ, თუ root i არ თანაბარი i. 1035 00:51:19,560 --> 00:51:24,480 ასე რომ, ვთქვათ, ჩვენ ძებნას ამ ხე 3, root i არ თანაბარი i, ახლა 1036 00:51:24,480 --> 00:51:25,950 ჩვენ ჩვენი ხოლო loop. 1037 00:51:25,950 --> 00:51:27,500 რა გვინდა გავაკეთოთ? 1038 00:51:27,500 --> 00:51:32,320 1039 00:51:32,320 --> 00:51:35,430 ისევ და ისევ, ეს იქნება საკმაოდ მსგავსი ჩვენი რეკურსიული ვერსია. 1040 00:51:35,430 --> 00:51:36,230 ჰო. 1041 00:51:36,230 --> 00:51:40,470 >> აუდიტორია: ასე ნეტავ მინდა iterate, ან შენარჩუნებას აპირებს ქვემოთ ხე, რადგან 1042 00:51:40,470 --> 00:51:42,400 ფესვი არ არის ტოლი null. 1043 00:51:42,400 --> 00:51:45,120 1044 00:51:45,120 --> 00:51:46,640 >> JASON HIRSCHHORN: ვინაიდან root არ არის ტოლი null? 1045 00:51:46,640 --> 00:51:50,200 >> აუდიტორია: root dash i არ არის ტოლი null. 1046 00:51:50,200 --> 00:51:51,220 უბრალოდ root, yeah. 1047 00:51:51,220 --> 00:51:52,920 როგორც ხანგრძლივი, როგორც root არის არ არის ტოლი null. 1048 00:51:52,920 --> 00:51:54,240 >> JASON HIRSCHHORN: ასე რომ გსურთ შეცვალოს ამ შევიდა root 1049 00:51:54,240 --> 00:51:56,590 არ თანაბარი null? 1050 00:51:56,590 --> 00:51:59,020 >> აუდიტორია: Yeah. 1051 00:51:59,020 --> 00:52:00,800 >> აუდიტორია: ჩვენ შეიძლება დააკავშიროთ ეს, არა? 1052 00:52:00,800 --> 00:52:02,990 ჩვენ არ გვჭირდება, თუ თავდაპირველად. 1053 00:52:02,990 --> 00:52:05,180 >> JASON HIRSCHHORN: OK, ასე რომ, თუ ჩვენ don't - 1054 00:52:05,180 --> 00:52:08,140 თუ ჩვენ დააკავშიროთ მათ, ამიტომ ჩვენ ვაპირებთ ხოლო root არ თანაბარი null, და 1055 00:52:08,140 --> 00:52:10,800 თუ root ხდება იყოს null at დასაწყისში, რას ვაკეთებთ ქვემოთ აქ? 1056 00:52:10,800 --> 00:52:11,450 >> აუდიტორია: დაბრუნება ყალბი. 1057 00:52:11,450 --> 00:52:12,730 >> JASON HIRSCHHORN: Great. 1058 00:52:12,730 --> 00:52:14,110 ასე რომ, ორივე გზით, ალბათ, არ მუშაობდა. 1059 00:52:14,110 --> 00:52:15,645 ეს არის სხვადასხვა გზა, და ეს აერთიანებს იგი. 1060 00:52:15,645 --> 00:52:18,950 თუმცა ისევ და ისევ, თუ თქვენ არ ნებისმიერ შემთხვევაში, ჩვენ არ აპირებს off დიზაინი 1061 00:52:18,950 --> 00:52:19,800 მიუთითებს ვიქტორინა. 1062 00:52:19,800 --> 00:52:21,020 მაგრამ ეს გამოიყურება კარგი. 1063 00:52:21,020 --> 00:52:23,940 >> ასე რომ, ხოლო root არ თანაბარი null, რა არის პირველი 1064 00:52:23,940 --> 00:52:25,400 რაც ჩვენ გვინდა შევამოწმოთ? 1065 00:52:25,400 --> 00:52:26,330 სხვისი? 1066 00:52:26,330 --> 00:52:29,720 Null, რა არის პირველი რამ? 1067 00:52:29,720 --> 00:52:32,850 >> აუდიტორია: თუ ri ნაკლებია, ვიდრე - 1068 00:52:32,850 --> 00:52:36,140 oh, ვფიქრობ, თუ ჩვენ უკვე ი ის root. 1069 00:52:36,140 --> 00:52:40,830 ასე რომ, თუ root arrow i ტოლია i - 1070 00:52:40,830 --> 00:52:40,990 >> JASON HIRSCHHORN: უკაცრავად? 1071 00:52:40,990 --> 00:52:45,840 >> აუდიტორია: თუ root arrow i ტოლია ტოლია i - 1072 00:52:45,840 --> 00:52:47,090 >> JASON HIRSCHHORN: რა ვქნათ? 1073 00:52:47,090 --> 00:52:50,300 1074 00:52:50,300 --> 00:52:51,550 >> აუდიტორია: დაბრუნება ჭეშმარიტი. 1075 00:52:51,550 --> 00:52:58,850 1076 00:52:58,850 --> 00:52:59,280 >> JASON HIRSCHHORN: Great. 1077 00:52:59,280 --> 00:53:00,530 და რა არის შემდეგი? 1078 00:53:00,530 --> 00:53:04,510 1079 00:53:04,510 --> 00:53:06,843 Jeff, რა მომავალი ხაზი კოდი? 1080 00:53:06,843 --> 00:53:16,190 >> აუდიტორია: თუ i ნაკლებია, ვიდრე root arrow i, მაშინ root შეადგენს root arrow მარცხენა. 1081 00:53:16,190 --> 00:53:21,550 >> JASON HIRSCHHORN: Root შეადგენს root arrow მარცხენა. 1082 00:53:21,550 --> 00:53:24,530 ასე რომ, ალბათ, ყველაზე დიდი განსხვავება აქ ამ iterative 1083 00:53:24,530 --> 00:53:26,600 ვერსია, როგორც ეწინააღმდეგებოდა რეკურსიული ვერსია. 1084 00:53:26,600 --> 00:53:28,970 რეკურსიული მობილური, ჩვენ მოვუწოდებთ ფუნქცია ერთხელ. 1085 00:53:28,970 --> 00:53:32,640 ჩვენ უნდა განახლებაზე root როდესაც ჩვენ მოვუწოდებთ ახალი ფუნქცია. 1086 00:53:32,640 --> 00:53:34,170 აქ ჩვენ არ მოუწოდებდა ახალი ფუნქცია. 1087 00:53:34,170 --> 00:53:37,610 ჩვენ უბრალოდ უბრალოდ განახლება root ამ ფუნქციას. 1088 00:53:37,610 --> 00:53:38,880 ეს არის ის კარგი. 1089 00:53:38,880 --> 00:53:40,730 და რა არის ბოლო ხაზი კოდი? 1090 00:53:40,730 --> 00:53:43,950 1091 00:53:43,950 --> 00:53:44,880 ჰო, Mario? 1092 00:53:44,880 --> 00:53:48,290 >> აუდიტორია: Else root შეადგენს root arrow უფლება. 1093 00:53:48,290 --> 00:53:49,492 >> JASON HIRSCHHORN: უკაცრავად? 1094 00:53:49,492 --> 00:53:52,340 >> აუდიტორია: Root შეადგენს root arrow უფლება. 1095 00:53:52,340 --> 00:53:55,590 1096 00:53:55,590 --> 00:53:57,140 >> JASON HIRSCHHORN: იქნებ ასევე წერენ რაღაც მსგავსი? 1097 00:53:57,140 --> 00:54:02,786 1098 00:54:02,786 --> 00:54:03,890 >> აუდიტორია: მე არ ვიცი. 1099 00:54:03,890 --> 00:54:05,140 >> JASON HIRSCHHORN თქვენ არ შეგიძლიათ. 1100 00:54:05,140 --> 00:54:07,302 1101 00:54:07,302 --> 00:54:08,270 თქვენ არ შეგიძლიათ პლუს შეადგენს. 1102 00:54:08,270 --> 00:54:10,780 OK, ასე რომ, ეს გამოიყურება კარგი. 1103 00:54:10,780 --> 00:54:13,620 რატომ არ გვაქვს უბრალოდ, რომ გაწმენდა it up. 1104 00:54:13,620 --> 00:54:15,220 ეს გამოიყურება დიდი, და ეს იმუშავებს. 1105 00:54:15,220 --> 00:54:16,920 და ჩვენ შესვენება out. 1106 00:54:16,920 --> 00:54:21,460 >> იმ შემთხვევაში, თუ root მარცხენა null ან root უფლება იყო null, ჩვენ ამუშავება აქ. 1107 00:54:21,460 --> 00:54:22,470 Root იქნება ტოლი null. 1108 00:54:22,470 --> 00:54:24,270 ჩვენ მინდა დაარღვიოს ჩვენი loop, და ჩვენ გვინდა დაბრუნების ცრუ. 1109 00:54:24,270 --> 00:54:26,280 ასე რომ, როდესაც ჩვენ შესვენება გარეთ loop, ვბრუნდებით ყალბი. 1110 00:54:26,280 --> 00:54:29,520 1111 00:54:29,520 --> 00:54:32,793 >> ისევ და ისევ, ხოლო loop იყო სრულყოფილი აქ, რადგან ჩვენ არ ვიცით, როგორ 1112 00:54:32,793 --> 00:54:33,850 დიდი ჩვენი ხე. 1113 00:54:33,850 --> 00:54:36,460 ჩვენ შევეცადეთ დაწერა for loop, მაგრამ ჩვენ მიხვდა, თქვენ მოხვდით გაერკვნენ, თუ როგორ 1114 00:54:36,460 --> 00:54:37,410 დიდი ეს არის ვადამდე. 1115 00:54:37,410 --> 00:54:38,720 ჰო. 1116 00:54:38,720 --> 00:54:41,790 >> აუდიტორია: თუ ეს არ იყო ორობითი ძებნა ხე, ეს იქნება რეალური math-y 1117 00:54:41,790 --> 00:54:44,220 დაწერა iteratively, არა? 1118 00:54:44,220 --> 00:54:47,170 მსგავსად, თუ ეს იყო ხე, მაგრამ არ არის აუცილებელი - 1119 00:54:47,170 --> 00:54:49,730 ასე რომ, ეს არ იყო ყველა პატარა მარცხენა, და ყველა დიდი უფლება. 1120 00:54:49,730 --> 00:54:52,540 ეს იქნება მართლაც რთული to iterate მას, არა? 1121 00:54:52,540 --> 00:54:55,720 ჩვენ გვინდა, რომ გადავარჩინოთ, რა იყო ადრე on ხე და დაბრუნდეს, 1122 00:54:55,720 --> 00:54:56,970 და პერსონალის იგრძნობა. 1123 00:54:56,970 --> 00:54:59,690 1124 00:54:59,690 --> 00:55:02,010 >> JASON HIRSCHHORN: თუ ეს არ იყო ორობითი ძებნა ხე, თუ ეს იყო უბრალოდ 1125 00:55:02,010 --> 00:55:04,740 ხე და რამ არ იყო დალაგებულია მსგავსი - 1126 00:55:04,740 --> 00:55:07,440 და ჩვენ მიხვდა, ადრე, როდესაც ანა გვეხმარებოდა, რომ რაც მას 1127 00:55:07,440 --> 00:55:08,800 დახარისხებული გვეხმარება ბევრი - 1128 00:55:08,800 --> 00:55:12,610 ჩვენ უნდა, დიახ, ყოველთვის შეინახე სად ვიყავით ადრე. 1129 00:55:12,610 --> 00:55:14,430 მაგრამ იქ შეიძლება ბევრი სად ვიყავით previouslys. 1130 00:55:14,430 --> 00:55:17,730 იქ შეიძლება ბევრი მშობელი კვანძების. 1131 00:55:17,730 --> 00:55:22,530 >> ალბათ საუკეთესო გზა ამის, რომ უნდა შევინარჩუნოთ უბიძგებს რამ გადატანა რამდენიმე 1132 00:55:22,530 --> 00:55:24,170 ტიპის დასტის ან რიგიდან. 1133 00:55:24,170 --> 00:55:26,030 თქვენ არასოდეს არ უნდა კოდექსს იმიტომ, რომ ეს რთული პრობლემაა. 1134 00:55:26,030 --> 00:55:30,820 მაგრამ თქვენ დააყენებს ზოგიერთი რამ გადატანა დასტის ან მდგომ და შემდეგ პოპ მათ off და 1135 00:55:30,820 --> 00:55:31,890 მაშინ შეაფასებს მათ. 1136 00:55:31,890 --> 00:55:34,200 >> და შემდეგ ზოგიერთი სხვა რამ, სადაც თქვენ რეალურად აყენებს კვანძების და 1137 00:55:34,200 --> 00:55:36,090 შემდეგ შექმნა, და შემდეგ ძებნის მეშვეობით რომ. 1138 00:55:36,090 --> 00:55:38,700 ეს შეიძლება იყოს საუკეთესო გზა ამის გაკეთება. 1139 00:55:38,700 --> 00:55:42,410 OK, რაიმე შეკითხვები ამ პრობლემას? 1140 00:55:42,410 --> 00:55:44,670 >> აუდიტორია: ეს არის დაკავშირებული შენიშვნა. 1141 00:55:44,670 --> 00:55:50,460 ჩვენ უნდა შეადაროთ ტირაჟი ჯერ განთავსების hash მაგიდები, ორობითი 1142 00:55:50,460 --> 00:55:52,160 ძებნის ხეები, et cetera? 1143 00:55:52,160 --> 00:55:54,310 >> JASON HIRSCHHORN ალბათ. 1144 00:55:54,310 --> 00:55:56,150 მოდით გავაკეთოთ, რომ მართლაც სწრაფად. 1145 00:55:56,150 --> 00:55:58,490 აწარმოებს დრო hash table - 1146 00:55:58,490 --> 00:55:59,090 რა არიან სხვები? 1147 00:55:59,090 --> 00:56:00,050 ორობითი ხე? 1148 00:56:00,050 --> 00:56:02,920 >> აუდიტორია: Link სიებში. 1149 00:56:02,920 --> 00:56:04,780 >> JASON HIRSCHHORN: OK, მოდით ჩანართით. 1150 00:56:04,780 --> 00:56:09,980 რა არის დიდი O of ჩასმა on hash მაგიდასთან? 1151 00:56:09,980 --> 00:56:13,080 1152 00:56:13,080 --> 00:56:15,285 რა ვარაუდები თქვენ მიღების? 1153 00:56:15,285 --> 00:56:17,760 >> აუდიტორია: თქვენ ჩასმის დროს დასაწყისში ლინკი სიაში. 1154 00:56:17,760 --> 00:56:19,860 >> JASON HIRSCHHORN ალბათ პირველი ვარაუდი არის ის, რომ არ არსებობს შეჯახება. 1155 00:56:19,860 --> 00:56:22,340 თუ არ არსებობს შეჯახება, მაშინ ჩასმის დროს არის ერთი. 1156 00:56:22,340 --> 00:56:26,560 თუ არსებობს შეჯახება, და თქვენ აკეთებს ცალკე chaining და ჩასმა 1157 00:56:26,560 --> 00:56:31,880 დასაწყისში ბმული სია, მაშინ ჩასმა ასევე მუდმივი. 1158 00:56:31,880 --> 00:56:34,700 >> თუ თქვენ აკეთებთ hash მაგიდა, მაგრამ თქვენ აქვს სხვადასხვა მეთოდი საქმე 1159 00:56:34,700 --> 00:56:36,040 ერთად შეჯახება, რა განსხვავებული მეთოდი? 1160 00:56:36,040 --> 00:56:41,580 1161 00:56:41,580 --> 00:56:42,960 რა არის განსხვავებული მეთოდი საქმე 1162 00:56:42,960 --> 00:56:44,205 შეჯახება მოხდა hash მაგიდასთან? 1163 00:56:44,205 --> 00:56:44,915 >> აუდიტორია: ხაზოვანი პროგრამირების. 1164 00:56:44,915 --> 00:56:45,540 >> JASON HIRSCHHORN: ხაზოვანი პროგრამირების. 1165 00:56:45,540 --> 00:56:47,770 ამიტომ, ჩვენ ვაპირებთ, რომ შევინარჩუნოთ ეძებს მომდევნო ღია ადგილზე. 1166 00:56:47,770 --> 00:56:50,390 ეს არ არის მუდმივი ჩასმის დროს. 1167 00:56:50,390 --> 00:56:52,266 თქვენ შეიძლება უნდა გაიაროს მთელი მაგიდა, ისე, რომ 1168 00:56:52,266 --> 00:56:53,936 შეიძლება დიდი O of n. 1169 00:56:53,936 --> 00:56:54,740 ჰო. 1170 00:56:54,740 --> 00:56:57,690 >> აუდიტორია: სხვა შემთხვევაში უბრალოდ chaining? 1171 00:56:57,690 --> 00:57:00,160 >> JASON HIRSCHHORN: ჩვენ ცალკე chaining. 1172 00:57:00,160 --> 00:57:00,720 ეს იყო პირველი. 1173 00:57:00,720 --> 00:57:01,560 სწორედ ლინკი სიაში. 1174 00:57:01,560 --> 00:57:03,720 ლამაზი სახელია ცალკე chaining. 1175 00:57:03,720 --> 00:57:06,880 ეს შეიძლება იყოს ნებისმიერი ტიპის სიაში სტრუქტურა ჩვენ არ უნდა გავაკეთოთ ლინკი სიაში. 1176 00:57:06,880 --> 00:57:10,490 >> ასე რომ კიდევ ერთხელ, ჩასმის შესახებ hash table შეიძლება იყოს მუდმივი დრო. 1177 00:57:10,490 --> 00:57:13,160 რაც შეეხება ჩასმა წლის stacker მდგომ? 1178 00:57:13,160 --> 00:57:19,260 1179 00:57:19,260 --> 00:57:20,640 >> აუდიტორია: არ არის, რომ მუდმივი? 1180 00:57:20,640 --> 00:57:21,530 >> JASON HIRSCHHORN: ეს არის მუდმივი დრო. 1181 00:57:21,530 --> 00:57:23,420 თქვენ უბრალოდ უბიძგებს მას. 1182 00:57:23,420 --> 00:57:24,120 OK. 1183 00:57:24,120 --> 00:57:25,380 Insertion, რა იყო სხვა პირობა? 1184 00:57:25,380 --> 00:57:27,100 On ლელო? 1185 00:57:27,100 --> 00:57:30,252 რა არის დიდი O ჩანართი on ლელო? 1186 00:57:30,252 --> 00:57:32,808 >> აუდიტორია: სიგრძე არის მუდმივი. 1187 00:57:32,808 --> 00:57:34,560 სიგრძე გრძელი - 1188 00:57:34,560 --> 00:57:36,998 ხანგრძლივობა სიტყვა თქვენ ჩასმა. 1189 00:57:36,998 --> 00:57:38,210 >> JASON HIRSCHHORN: უკაცრავად? 1190 00:57:38,210 --> 00:57:39,120 დაველოდოთ, რა არ მესმის? 1191 00:57:39,120 --> 00:57:40,260 თქვენ თქვით - რა ვთქვა? 1192 00:57:40,260 --> 00:57:41,650 რა იყო თქვენი პასუხი, Marcus? 1193 00:57:41,650 --> 00:57:43,640 >> აუდიტორია: ხანგრძლივობა სიტყვა თქვენ ჩასმა in გმირები, 1194 00:57:43,640 --> 00:57:45,480 ვთქვათ, ის ხასიათი ცდილობენ. 1195 00:57:45,480 --> 00:57:46,840 >> JASON HIRSCHHORN: OK, ასე რომ, ხანგრძლივობა სიტყვა. 1196 00:57:46,840 --> 00:57:49,500 ჩვენ დავდებთ იმის ვარაუდი, რომ ეს სიმებიანი პერსონაჟების. 1197 00:57:49,500 --> 00:57:51,930 თქვენ თქვით, რაღაც განსხვავებული, თუმცა. 1198 00:57:51,930 --> 00:57:55,490 თქვენ თქვით, სიგრძით გრძელი სიტყვა. 1199 00:57:55,490 --> 00:57:57,600 >> აუდიტორია: ეს მხოლოდ მუდმივი, არა? 1200 00:57:57,600 --> 00:57:58,440 >> JASON HIRSCHHORN: რატომ ეს იქნება მუდმივად? 1201 00:57:58,440 --> 00:58:00,970 >> აუდიტორია: Like, თუ თქვენ იყენებთ დიდი O ნოტაცია, მაშინ იგი არ განსხვავება 1202 00:58:00,970 --> 00:58:04,680 რაოდენობის შესახებ, რაც უკვე ცდილობენ. 1203 00:58:04,680 --> 00:58:07,344 >> JASON HIRSCHHORN: ასე რომ ჩვენ გვინდა ამბობენ, რომ ეს მუდმივი დრო. 1204 00:58:07,344 --> 00:58:11,840 ეს არის მუდმივი ჩასაგდები და ეს იმიტომ, რომ ეს იდეა - 1205 00:58:11,840 --> 00:58:14,820 ამბობენ, რომ ჩვენ სიტყვა, რომელიც არის 45, ან სიტყვა, რომ 60, რომელიც 1206 00:58:14,820 --> 00:58:16,800 აქვს მუდმივი ნომერი. 1207 00:58:16,800 --> 00:58:21,050 და ეს უბრალოდ უნდა დაემატოს მუდმივი დრო. 1208 00:58:21,050 --> 00:58:26,060 >> პრაქტიკაში, თუმცა, ეს არ იქნება, რა თქმა უნდა, ხდება ერთი millisecond, 1209 00:58:26,060 --> 00:58:26,590 მაგალითად. 1210 00:58:26,590 --> 00:58:28,880 მაგრამ ჩვენ ვიტყოდი დიდი O არის მუდმივი ცდილობენ. 1211 00:58:28,880 --> 00:58:31,330 და რომ მისი ყველაზე დიდი უპირატესობა. 1212 00:58:31,330 --> 00:58:33,330 >> რაც შეეხება Insertion into ბმული სიაში? 1213 00:58:33,330 --> 00:58:37,220 უბრალოდ generic, დახარისხებული ლინკი სიაში? 1214 00:58:37,220 --> 00:58:37,700 ჰო. 1215 00:58:37,700 --> 00:58:38,530 >> აუდიტორია: მე მქონდა კითხვა. 1216 00:58:38,530 --> 00:58:42,670 ტესტი, რომ ისინი ოდესმე გვეკითხებიან ჩასმის დროს, რომ ოთხი ნაბიჯები, 1217 00:58:42,670 --> 00:58:43,270 ან რამე? 1218 00:58:43,270 --> 00:58:44,300 ან უბრალოდ - 1219 00:58:44,300 --> 00:58:47,670 როცა ამბობენ, რომ ჩასმის დროს არის ერთი, რომ მხოლოდ იმას ნიშნავს მუდმივ დრო? 1220 00:58:47,670 --> 00:58:49,770 >> JASON HIRSCHHORN: Yeah, ისინი ყოველთვის ვთხოვ, არის დიდი O of n? 1221 00:58:49,770 --> 00:58:51,440 დიდი O of log n? 1222 00:58:51,440 --> 00:58:53,960 N კვადრატში მუდმივი. 1223 00:58:53,960 --> 00:58:56,520 ეს არის მართლაც ერთადერთი ვინც თქვენ უნდა იცოდეთ. 1224 00:58:56,520 --> 00:58:58,420 რაც შეეხება ჩასაგდები გადატანა დალაგებულია ლინკი სიაში? 1225 00:58:58,420 --> 00:58:59,440 >> აუდიტორია: მე მქონდა კითხვა - 1226 00:58:59,440 --> 00:58:59,980 კითხვა - 1227 00:58:59,980 --> 00:59:01,060 >> JASON HIRSCHHORN: რა არის პასუხი ამ კითხვაზე, თუმცა? 1228 00:59:01,060 --> 00:59:02,120 >> აუდიტორია: დაველოდოთ, რა ვთხოვო? 1229 00:59:02,120 --> 00:59:06,750 >> JASON HIRSCHHORN: რა არის დიდი O of ჩასმის შევიდა დახარისხებული ლინკი სიაში? 1230 00:59:06,750 --> 00:59:07,070 >> აუდიტორია: One? 1231 00:59:07,070 --> 00:59:09,400 არ დაველოდოთ, არ დაველოდოთ, n. 1232 00:59:09,400 --> 00:59:11,420 >> JASON HIRSCHHORN: N. გარდა ბმული სიაში. 1233 00:59:11,420 --> 00:59:12,706 და რა იყო თქვენი შეკითხვა? 1234 00:59:12,706 --> 00:59:16,440 >> აუდიტორია: ასე რომ წერთ o of k ან o of 1 - 1235 00:59:16,440 --> 00:59:18,150 >> JASON HIRSCHHORN: Oh. 1236 00:59:18,150 --> 00:59:21,830 მინდა დაწერა o 1, ალბათ. 1237 00:59:21,830 --> 00:59:24,160 იქ იყო ერთი სხვა მონაცემები სტრუქტურა ეს იქნებოდა კარგი. 1238 00:59:24,160 --> 00:59:25,730 ხე, ორობითი ძებნა ხე. 1239 00:59:25,730 --> 00:59:27,510 რა ჩასმის შესახებ ორობითი ძებნა ხე? 1240 00:59:27,510 --> 00:59:31,190 1241 00:59:31,190 --> 00:59:33,900 >> აუდიტორია: შესვლა. 1242 00:59:33,900 --> 00:59:39,260 >> JASON HIRSCHHORN: მაშ, რა არის ყველაზე ცუდი საქმე ორობითი ძებნა ხე? 1243 00:59:39,260 --> 00:59:45,350 ასე რომ, თუ ჩვენ არ დაიწყოს 5 და ყველა ნომერი მეტია 5, მაშინ 1244 00:59:45,350 --> 00:59:48,760 გვაქვს 5, 7, 9, 11, et cetera. 1245 00:59:48,760 --> 00:59:52,255 ამ შემთხვევაში, ეს, ძირითადად, მხოლოდ ლინკი სიაში, და ჩვენ უნდა ჩაწეროთ ყველა 1246 00:59:52,255 --> 00:59:52,680 გზა დასასრულს. 1247 00:59:52,680 --> 00:59:54,350 ასე რომ, ეს დიდი O of n. 1248 00:59:54,350 --> 00:59:57,720 >> ეს შეიძლება იყოს ჩვენი უარეს შემთხვევაში on ორობითი ძებნა ხე. 1249 00:59:57,720 --> 01:00:00,890 ცხადია, თქვენ ვერასოდეს ააშენებს ორობითი ძებნა ხე 5 1250 01:00:00,890 --> 01:00:04,270 შუა, იცის, 5 იქნებოდა იყოს ყველაზე დაბალი ნომერი. 1251 01:00:04,270 --> 01:00:08,030 მაგრამ ეს შეიძლება იყოს, თუ თქვენ დაწყებული ნულიდან. 1252 01:00:08,030 --> 01:00:10,980 ნებისმიერი შეკითხვა ამ სანამ გადაადგილება სხვა კითხვა? 1253 01:00:10,980 --> 01:00:11,560 ეს იყო კარგი კითხვაა. 1254 01:00:11,560 --> 01:00:15,100 მინდა იცოდეს, დიდი O of - 1255 01:00:15,100 --> 01:00:18,620 >> აუდიტორია: რა ძებნას იმ ოთხი? 1256 01:00:18,620 --> 01:00:20,400 >> JASON HIRSCHHORN: აუცილებლად ჩვენ არ ეძებს და დახარისხება. 1257 01:00:20,400 --> 01:00:22,160 ჩვენ გავაკეთეთ ყველა იმ ალგორითმები, მარჯვნივ. 1258 01:00:22,160 --> 01:00:23,390 დაველოდოთ, იყო, რომ Quiz 1? 1259 01:00:23,390 --> 01:00:23,980 იყო, რომ დაფარული - 1260 01:00:23,980 --> 01:00:25,860 არც თქვენ უკვე გაქვთ, რომ კითხვა Quiz 1? 1261 01:00:25,860 --> 01:00:29,650 დიდი O runtime ორობითი ძებნა, Insertion დალაგების, bubble sort? 1262 01:00:29,650 --> 01:00:30,160 >> აუდიტორია: Yeah. 1263 01:00:30,160 --> 01:00:32,790 >> JASON HIRSCHHORN თუ ჰქონდა, რომ კითხვა Quiz 0, შანსი თქვენ არ 1264 01:00:32,790 --> 01:00:35,180 იგივე ზუსტი კითხვას Quiz 1. 1265 01:00:35,180 --> 01:00:36,300 შეიძლება მაინც კარგი იცოდეს იმ. 1266 01:00:36,300 --> 01:00:38,520 თქვენ უნდა იმედია იცით gh უკვე. 1267 01:00:38,520 --> 01:00:40,740 >> მაგრამ სხვა ლოგარითმული runtimes ალბათ კარგი ვიცი. 1268 01:00:40,740 --> 01:00:42,890 რამ, რაც არ იყო დაფარული Quiz 0. 1269 01:00:42,890 --> 01:00:47,300 როგორც ყველა ამ ოპერატორების ეს აბსტრაქტული მონაცემთა ტიპები. 1270 01:00:47,300 --> 01:00:50,760 >> OK, მოდით გადაადგილება. 1271 01:00:50,760 --> 01:00:52,190 ეს ერთი უნდა იყოს საკმაოდ სწრაფი. 1272 01:00:52,190 --> 01:00:56,170 და ეს არის ახალი ენა არ გვაქვს რეალურად კოდირებული ადრე. 1273 01:00:56,170 --> 01:00:59,300 ეს არის საკითხი, ეკითხება კოდექსში PHP. 1274 01:00:59,300 --> 01:01:01,950 ასე მიიჩნევენ PHP მასივი ქვემოთ. 1275 01:01:01,950 --> 01:01:06,150 დაწერეთ PHP ან / და HTML კოდები ასეთი, რომ შედეგები ორი სვეტი მაგიდასთან TFs 1276 01:01:06,150 --> 01:01:08,810 სახელები და სახლები. 1277 01:01:08,810 --> 01:01:11,600 >> თქვენ არასოდეს კეთდება ეს ადრე, ეს კონკრეტული პრობლემა. 1278 01:01:11,600 --> 01:01:16,270 მაგრამ ეს უნდა იყოს ძალიან ნაცნობი რა გააკეთეთ თქვენ პრობლემა მითითებული 7. 1279 01:01:16,270 --> 01:01:21,250 ასე რომ, მე მოხარული იქნება დადებს თქვენ იქნება სთხოვა კოდექსის რაღაც PHP რომ 1280 01:01:21,250 --> 01:01:23,880 ძალიან ჰგავს ის, რაც თქვენ გააკეთა პრობლემა მითითებული 7. 1281 01:01:23,880 --> 01:01:26,300 >> პირველ რიგში, array არ არის, რომ კონკრეტული. 1282 01:01:26,300 --> 01:01:28,140 რა ტიპის array არის ეს? 1283 01:01:28,140 --> 01:01:29,080 >> აუდიტორია: ასოციაციური. 1284 01:01:29,080 --> 01:01:31,250 >> JASON HIRSCHHORN: ეს ასოციაციურ მასივში. 1285 01:01:31,250 --> 01:01:33,750 და რა სხვაობაა ასოციაციურ მასივში და ობიექტი? 1286 01:01:33,750 --> 01:01:41,780 1287 01:01:41,780 --> 01:01:44,857 >> აუდიტორია: ობიექტი მასივი აქვს ინდექსი რიცხვებით და ასოციაციურ მასივში 1288 01:01:44,857 --> 01:01:47,814 არის მაჩვენებელი სიმებიანი, ან რამე მაგდაგვარს. 1289 01:01:47,814 --> 01:01:50,570 1290 01:01:50,570 --> 01:01:54,880 >> JASON HIRSCHHORN: So მასივი ობიექტების ექნება მაჩვენებლები 1291 01:01:54,880 --> 01:01:57,090 რიცხვებით, მაგრამ ობიექტს გააჩნია სფეროებში. 1292 01:01:57,090 --> 01:02:01,590 მას აქვს იმ სფეროებში სახელები, როგორიცაა სახელი, სახლი, სტუდენტი. 1293 01:02:01,590 --> 01:02:03,720 გაქვთ იდეა? 1294 01:02:03,720 --> 01:02:06,630 >> აუდიტორია: Well, ასოციაციურ array არის PHP, არა? 1295 01:02:06,630 --> 01:02:07,880 და ობიექტი არის JavaScript? 1296 01:02:07,880 --> 01:02:12,330 1297 01:02:12,330 --> 01:02:14,820 >> JASON HIRSCHHORN: პატიოსნად, არ არსებობს რეალური განსხვავება შორის. 1298 01:02:14,820 --> 01:02:19,540 ორივე სტრიქონები, როგორც გასაღებები, და შეგიძლიათ ძირითადად არაფერი, როგორც ღირებულება. 1299 01:02:19,540 --> 01:02:21,250 სხვადასხვა ენებზე მოვუწოდებთ ერთი რამ ასოციაციურ მასივში, 1300 01:02:21,250 --> 01:02:22,750 ერთი რამ ობიექტი. 1301 01:02:22,750 --> 01:02:25,960 ასე რომ, პატიოსნად, არსებობს რეალური განსხვავება, მაგრამ არსებობს რა თქმა უნდა ზოგიერთი 1302 01:02:25,960 --> 01:02:27,730 სინტაქსური განსხვავებები ორ. 1303 01:02:27,730 --> 01:02:28,200 ჰო. 1304 01:02:28,200 --> 01:02:33,580 >> აუდიტორია: ასე რომ ობიექტი ასევე კოდირებული ქვეშ hood როგორც hash table, მაშინ? 1305 01:02:33,580 --> 01:02:35,796 >> JASON HIRSCHHORN: რას ნიშნავს, კოდირებული ქვეშ hood? 1306 01:02:35,796 --> 01:02:38,017 >> აუდიტორია: გვითხრეს, რომ ასოციაციური array იყო ტექნიკურად 1307 01:02:38,017 --> 01:02:39,960 hash მაგიდასთან. 1308 01:02:39,960 --> 01:02:44,510 ამიტომ არის ობიექტი, ასევე ტექნიკურად hash მაგიდასთან? 1309 01:02:44,510 --> 01:02:45,350 >> JASON HIRSCHHORN: მე არ ვაპირებ ამ კითხვაზე პასუხის გაცემა. 1310 01:02:45,350 --> 01:02:46,600 მე დაუბრუნდეთ თქვენ რომ. 1311 01:02:46,600 --> 01:02:48,980 მაგრამ მე არ ვფიქრობ, რომ არც იმ იგრძნობა. 1312 01:02:48,980 --> 01:02:53,790 მაგრამ, ნებისმიერ შემთხვევაში, ასოციაციურ მასივში და ობიექტი, ზოგადად, ადამიანი გამოიყენებს იმ 1313 01:02:53,790 --> 01:02:54,910 თვალსაზრისით interchangeably. 1314 01:02:54,910 --> 01:02:57,630 ამ შემთხვევაში, cool ნაწილი თქვენ შეგიძლიათ გამოიყენოთ გასაღებები. 1315 01:02:57,630 --> 01:03:00,580 Strings როგორც გასაღებები, ვიდრე უბრალოდ მარტივი ნომრები. 1316 01:03:00,580 --> 01:03:02,070 >> ასე რომ, მე უკვე საუბარი ამ awhile. 1317 01:03:02,070 --> 01:03:04,090 იმედია, ზოგიერთ ადამიანს აქვს მიღებული დაიწყო ეს. 1318 01:03:04,090 --> 01:03:08,050 ჩვენ ვაპირებთ დავწეროთ ზოგიერთი PHP და HTML კოდი, ისეთი, რომ ჩვენ კიდევ ორი ​​სვეტი 1319 01:03:08,050 --> 01:03:11,830 მაგიდა TFs სახელები და სახლები. 1320 01:03:11,830 --> 01:03:15,380 >> OK, მე ასევე მინდა header ზედიზედ ამ მაგიდასთან. 1321 01:03:15,380 --> 01:03:18,410 ასე რომ, მე ვაპირებ, რომ მიიღოთ სწორი ამ. 1322 01:03:18,410 --> 01:03:20,770 ჩვენ ვაპირებთ შეიტანოს, ახალი, და ჩვენ ვაპირებთ - 1323 01:03:20,770 --> 01:03:27,780 1324 01:03:27,780 --> 01:03:28,320 >> OK. 1325 01:03:28,320 --> 01:03:29,970 როგორ დავიწყო მაგიდასთან? 1326 01:03:29,970 --> 01:03:32,090 რა არის tag, მიხეილი, დაიწყოს მაგიდასთან? 1327 01:03:32,090 --> 01:03:32,890 >> აუდიტორია: მაგიდა. 1328 01:03:32,890 --> 01:03:34,020 >> JASON HIRSCHHORN: მაგიდა. 1329 01:03:34,020 --> 01:03:37,870 და თუ მე გახსნა tag, რა სხვა მჭირდება? 1330 01:03:37,870 --> 01:03:39,810 >> აუდიტორია: A ხელმძღვანელი? 1331 01:03:39,810 --> 01:03:41,040 ან, ვფიქრობ, კლასი. 1332 01:03:41,040 --> 01:03:41,730 >> JASON HIRSCHHORN: ასე რომ, ბოდიში. 1333 01:03:41,730 --> 01:03:45,430 ვივარაუდოთ, რომ ჩვენ უკვე დაწერილი doctab, HTML, ყველა რომ პერსონალი. 1334 01:03:45,430 --> 01:03:50,230 მაგრამ თუ მე გახსნა ამ მაგიდაზე აქვს, რა სხვაგან მე უნდა დაწეროთ? 1335 01:03:50,230 --> 01:03:53,450 განთავსების შეამოწმოს HTML? 1336 01:03:53,450 --> 01:03:55,000 >> აუდიტორია: დახუროს იგი. 1337 01:03:55,000 --> 01:03:56,050 >> JASON HIRSCHHORN: დახურვა აქვს. 1338 01:03:56,050 --> 01:03:57,575 როგორ შემიძლია დაწერა ახლო მაგიდა tag? 1339 01:03:57,575 --> 01:03:59,580 >> აუდიტორია: Dot slash მაგიდასთან. 1340 01:03:59,580 --> 01:04:00,960 >> JASON HIRSCHHORN: Slash მაგიდა, დიდი. 1341 01:04:00,960 --> 01:04:02,730 ალბათ აზრი დაწერა ორივე იმ ერთად, რადგან 1342 01:04:02,730 --> 01:04:03,870 თქვენ მოხვდით გავაკეთოთ. 1343 01:04:03,870 --> 01:04:08,575 OK, თუ მინდა header ზედიზედ, როგორ ვწერ header ზედიზედ სათაურები? 1344 01:04:08,575 --> 01:04:11,650 1345 01:04:11,650 --> 01:04:19,290 >> აუდიტორია: ეს ნაკლებად ვიდრე 10 hr ახლო - 1346 01:04:19,290 --> 01:04:21,550 TR, yeah. 1347 01:04:21,550 --> 01:04:22,100 >> JASON HIRSCHHORN: TR? 1348 01:04:22,100 --> 01:04:25,080 >> აუდიტორია: მაშინ იგივე, slash, yeah. 1349 01:04:25,080 --> 01:04:26,610 >> JASON HIRSCHHORN: OK, და მომეცი ორი სვეტით. 1350 01:04:26,610 --> 01:04:30,100 1351 01:04:30,100 --> 01:04:33,210 >> აუდიტორია: T D? 1352 01:04:33,210 --> 01:04:34,460 >> JASON HIRSCHHORN: OK. 1353 01:04:34,460 --> 01:04:37,730 1354 01:04:37,730 --> 01:04:39,520 მინდა ორი სვეტით. 1355 01:04:39,520 --> 01:04:40,960 ნიშნავს თუ არა ეს მომეცი ორი სვეტით? 1356 01:04:40,960 --> 01:04:43,880 რამდენი სვეტების არის ეს? 1357 01:04:43,880 --> 01:04:45,920 ერთი. 1358 01:04:45,920 --> 01:04:47,170 მოდით დააკოპირეთ და ჩასვით ეს. 1359 01:04:47,170 --> 01:04:59,750 1360 01:04:59,750 --> 01:05:03,390 >> ასე რომ, რეალურად, on ვიქტორინა, ყველა ეს კოდი რომ ჩვენ წერილობითი აქამდე იყო 1361 01:05:03,390 --> 01:05:04,710 რეალურად მოცემული თქვენ. 1362 01:05:04,710 --> 01:05:06,200 მაგრამ თქვენ უნდა ალბათ მაინც ვიცი, როგორ დაწერა. 1363 01:05:06,200 --> 01:05:06,470 ჰო. 1364 01:05:06,470 --> 01:05:10,636 >> აუდიტორია: თქვენი სახლი არის შორის. 1365 01:05:10,636 --> 01:05:11,130 >> JASON HIRSCHHORN: Boom. 1366 01:05:11,130 --> 01:05:12,720 ის უნდა წავიდეს იქ, არა? 1367 01:05:12,720 --> 01:05:14,600 კარგი ზარი. 1368 01:05:14,600 --> 01:05:17,760 ასე რომ კიდევ ერთხელ, ყველა ეს კოდი არის რეალურად მოცემული თქვენ ფაქტობრივი ვიქტორინა. 1369 01:05:17,760 --> 01:05:19,570 მაგრამ ეს fun დაწერა, და თქვენ უნდა იცოდეს, თუ როგორ დაწერა. 1370 01:05:19,570 --> 01:05:23,640 ასე რომ ეს არის, სადაც თქვენ უნდა რათა დაიწყოს თქვენი კოდი. 1371 01:05:23,640 --> 01:05:25,150 რას უნდა დაწეროთ აქ? 1372 01:05:25,150 --> 01:05:28,640 1373 01:05:28,640 --> 01:05:30,565 >> უკაცრავად, მე უნდა შეიცვალოს სახელი ამ ფაილის. 1374 01:05:30,565 --> 01:05:41,180 1375 01:05:41,180 --> 01:05:44,270 ასე რომ, ჩვენ გადაარჩინა იგი. HTML ფაილი, არ. PHP ფაილი. 1376 01:05:44,270 --> 01:05:47,030 ეს ყველაფერი იმას ნიშნავს, არაფერი წელს. PHP ფაილი. 1377 01:05:47,030 --> 01:05:48,500 ასე რომ, ჩვენ წელს. HTML ფაილი. 1378 01:05:48,500 --> 01:05:50,090 რა არის პირველი რამ, მე უნდა დავწერო? 1379 01:05:50,090 --> 01:05:52,990 მინდა რამდენიმე PHP კოდის HTML. 1380 01:05:52,990 --> 01:05:57,300 >> აუდიტორია: PHP, ისევე როგორც სხვა სტაფილოს და კითხვის ნიშნის PHP, არა? 1381 01:05:57,300 --> 01:05:58,310 >> JASON HIRSCHHORN: Great. 1382 01:05:58,310 --> 01:05:59,360 და როგორ შემიძლია დასრულდება, რომ? 1383 01:05:59,360 --> 01:06:02,510 >> აუდიტორია: With კითხვის ნიშნის. 1384 01:06:02,510 --> 01:06:03,120 >> JASON HIRSCHHORN: ეს არის დიდი. 1385 01:06:03,120 --> 01:06:07,090 ეს არის ის, პირველ რიგში, მე უნდა, თუ მინდა დააყენოს გარკვეული PHP კოდი აქ. 1386 01:06:07,090 --> 01:06:11,210 >> აუდიტორია: მეგონა. PHP ფაილის შეეძლო HTML. 1387 01:06:11,210 --> 01:06:12,290 >> JASON HIRSCHHORN: ჰო. 1388 01:06:12,290 --> 01:06:15,330 A. PHP ფაილი შეიძლება გარკვეული HTML და იქნება ნაჩვენები. 1389 01:06:15,330 --> 01:06:16,450 ეს იყო ჩემი ცუდი. 1390 01:06:16,450 --> 01:06:18,300 მე უბრალოდ ცდილობს mimic ის, რაც იყო ვიქტორინა. 1391 01:06:18,300 --> 01:06:21,910 1392 01:06:21,910 --> 01:06:24,720 >> OK, უკაცრავად აღრეული თქვენ. 1393 01:06:24,720 --> 01:06:25,550 დიახ, practice.HTML. 1394 01:06:25,550 --> 01:06:27,340 ახლა ჩვენ ვაპირებთ დააყენა ზოგიერთი PHP კოდი შემოსული 1395 01:06:27,340 --> 01:06:30,530 რა არის პირველი ხაზი PHP კოდი მე უნდა დავწერო? 1396 01:06:30,530 --> 01:06:33,360 მე ვაპირებ გავლა ამ მასივი და იგი მაგიდასთან. 1397 01:06:33,360 --> 01:06:34,600 ჰო. 1398 01:06:34,600 --> 01:06:37,160 >> აუდიტორია: თქვენ შეგიძლიათ გამოიყენოთ განთავსების H მარყუჟი ან ამისთვის loop. 1399 01:06:37,160 --> 01:06:38,415 >> JASON HIRSCHHORN: OK, რა გინდათ გამოიყენოთ? 1400 01:06:38,415 --> 01:06:40,720 >> აუდიტორია: მე გამოიყენოს for loop. 1401 01:06:40,720 --> 01:06:48,700 , და მაშინ ამის გაკეთება დოლარის ნიშანი i უდრის 0 მძიმით დოლარი 1402 01:06:48,700 --> 01:06:51,580 მოაწეროს i ნაკლები 2. 1403 01:06:51,580 --> 01:06:55,455 და შემდეგ მძიმით i dollar მოაწეროს i plus plus. 1404 01:06:55,455 --> 01:07:01,890 1405 01:07:01,890 --> 01:07:03,880 >> JASON HIRSCHHORN: როგორ თქვენ იცით, რომ იყენებთ 2? 1406 01:07:03,880 --> 01:07:10,444 >> აუდიტორია: იმიტომ, რომ იქ იყო ორი ასოციაციური მასივით ფარგლებში დიდი 1407 01:07:10,444 --> 01:07:11,960 ასოციაციურ მასივში. 1408 01:07:11,960 --> 01:07:13,610 >> JASON HIRSCHHORN: ასე დიდი რამ არ არის ასოცირებული მასივი. 1409 01:07:13,610 --> 01:07:15,500 დიდი რამ უბრალოდ ჩვეულებრივი მასივი. 1410 01:07:15,500 --> 01:07:17,380 მაგრამ შენ მართალი ხარ, არსებობს ორი ასოციაციური მასივით 1411 01:07:17,380 --> 01:07:18,910 შიგნით ჩვენი დიდი მასივი. 1412 01:07:18,910 --> 01:07:20,310 ამიტომ, თქვენ იყენებთ ორი. 1413 01:07:20,310 --> 01:07:24,270 ვგრძნობ არასასიამოვნო ვთქვათ, რომ ისინი 2 ისე რა გზა დაწერა 1414 01:07:24,270 --> 01:07:26,810 გარეშე ვთქვათ, რომ ისინი 2? 1415 01:07:26,810 --> 01:07:27,507 >> აუდიტორია: [INAUDIBLE]? 1416 01:07:27,507 --> 01:07:29,165 >> JASON HIRSCHHORN: OK, თუ როგორ წერთ, რომ? 1417 01:07:29,165 --> 01:07:35,262 >> აუდიტორია: Foreach დოლარის ნიშანი TFS ან მოსწონს დოლარის ნიშანი tf. 1418 01:07:35,262 --> 01:07:38,360 1419 01:07:38,360 --> 01:07:41,960 >> JASON HIRSCHHORN: OK, ასე რომ, თითოეული TFS როგორც TFS, მინდა, ახლა 1420 01:07:41,960 --> 01:07:43,650 ერთხელ, ჩემი მაგიდა. 1421 01:07:43,650 --> 01:07:45,250 ასე რომ, ვისაც შეუძლია მომეცი შემდეგი ხაზი კოდი? 1422 01:07:45,250 --> 01:07:52,870 1423 01:07:52,870 --> 01:07:59,810 >> აუდიტორია: Print, ხოლო შემდეგ ციტატები, bracket tr ბოლოს 1424 01:07:59,810 --> 01:08:02,670 bracket, ბოლომდე გაცემა. 1425 01:08:02,670 --> 01:08:05,300 ბოლოს ფრჩხილებში, მძიმით. 1426 01:08:05,300 --> 01:08:07,135 >> JASON HIRSCHHORN: OK, და რა, რომ აპირებს? 1427 01:08:07,135 --> 01:08:08,610 >> აუდიტორია: იგი აპირებს ამბობენ, ახალი row. 1428 01:08:08,610 --> 01:08:11,070 ის აპირებს დააყენოს tag ახალი row. 1429 01:08:11,070 --> 01:08:13,000 >> JASON HIRSCHHORN: მარჯვენა, ამ PHP, როგორიცაა ჩვენ ვისაუბრეთ ადრე - ამ 1430 01:08:13,000 --> 01:08:22,160 PHP აპირებს შეფასდება, და შემდეგ ის აპირებს ამობეჭდოთ ამ ფაილს 1431 01:08:22,160 --> 01:08:26,350 მაგიდა tow, და შემდეგ რომ HTML შეფასდება. 1432 01:08:26,350 --> 01:08:27,810 ჩვენ უბრალოდ გადაწერა ამ HTML გვქონდა აქ. 1433 01:08:27,810 --> 01:08:28,120 ჰო. 1434 01:08:28,120 --> 01:08:29,470 >> აუდიტორია: [INAUDIBLE]? 1435 01:08:29,470 --> 01:08:30,290 >> JASON HIRSCHHORN: უკაცრავად? 1436 01:08:30,290 --> 01:08:31,240 ეს უფლება აქ. 1437 01:08:31,240 --> 01:08:33,590 Fall 2012. 1438 01:08:33,590 --> 01:08:35,970 არ შევხედოთ პასუხი, მოდით გადაწყვიტოს ერთად. 1439 01:08:35,970 --> 01:08:37,330 ასე რომ, ჩვენ ბეჭდვა გრაფაში. 1440 01:08:37,330 --> 01:08:38,550 ასე რომ თქვენ ალბათ სვინგის რამ. 1441 01:08:38,550 --> 01:08:41,060 რა არის შემდეგი ხაზი კოდი ჩვენ უნდა დაწეროთ? 1442 01:08:41,060 --> 01:08:42,926 Assam, მომეცი შემდეგი ხაზი კოდი. 1443 01:08:42,926 --> 01:08:46,290 >> აუდიტორია: თქვენ უნდა tf სახელი. 1444 01:08:46,290 --> 01:08:54,319 Tf ღია ფრჩხილებში ბრჭყალებით ასახელებს დახურული ფრჩხილებში. 1445 01:08:54,319 --> 01:08:57,310 >> JASON HIRSCHHORN: მომეცი მათი სახელი. 1446 01:08:57,310 --> 01:08:58,540 >> აუდიტორია: თქვენ უნდა ბეჭდვა, რომ. 1447 01:08:58,540 --> 01:08:59,790 >> [INTERPOSING VOICES] 1448 01:08:59,790 --> 01:09:01,963 1449 01:09:01,963 --> 01:09:03,430 >> JASON HIRSCHHORN: OK, როგორ შემიძლია ბეჭდვა ეს? 1450 01:09:03,430 --> 01:09:04,680 >> [INTERPOSING VOICES] 1451 01:09:04,680 --> 01:09:08,609 1452 01:09:08,609 --> 01:09:10,350 >> JASON HIRSCHHORN: მე დაკარგული რაღაც არის. 1453 01:09:10,350 --> 01:09:12,470 რა მე ვერ გავიგე? 1454 01:09:12,470 --> 01:09:13,720 >> აუდიტორია: თქვენ უნდა დოლარის ნიშანი. 1455 01:09:13,720 --> 01:09:15,960 1456 01:09:15,960 --> 01:09:17,210 >> JASON HIRSCHHORN: რა სხვაგან მე ვერ გავიგე? 1457 01:09:17,210 --> 01:09:20,100 1458 01:09:20,100 --> 01:09:21,650 ყველა ჩვენ ბეჭდვითი ჯერჯერობით tr. 1459 01:09:21,650 --> 01:09:25,589 1460 01:09:25,589 --> 01:09:27,470 >> აუდიტორია: დახურვა tr შემდეგ. 1461 01:09:27,470 --> 01:09:28,720 >> JASON HIRSCHHORN: ასე რომ, ჩვენ გვჭირდება დახურვა tr შემდეგ. 1462 01:09:28,720 --> 01:09:34,390 1463 01:09:34,390 --> 01:09:37,906 ვინც ხედავს, რასაც ჩვენ გვყოფნის on line 16? 1464 01:09:37,906 --> 01:09:39,340 ჰო, ანა. 1465 01:09:39,340 --> 01:09:47,050 >> აუდიტორია: თქვენ უნდა გახსნა td და curly აფრთხილებს. 1466 01:09:47,050 --> 01:09:49,380 >> JASON HIRSCHHORN: სად ჩვენ დააყენა curly აფრთხილებს? 1467 01:09:49,380 --> 01:09:51,790 >> აუდიტორია: Around the tf სახელი. 1468 01:09:51,790 --> 01:09:53,080 >> JASON HIRSCHHORN: Like ეს? 1469 01:09:53,080 --> 01:09:55,420 >> აუდიტორია: Yeah. 1470 01:09:55,420 --> 01:09:59,000 და შემდეგ დახურეთ td. 1471 01:09:59,000 --> 01:10:00,250 >> JASON HIRSCHHORN: Like რომ? 1472 01:10:00,250 --> 01:10:03,370 1473 01:10:03,370 --> 01:10:06,950 >> აუდიტორია: თქვენ უნდა ორმაგი ბრჭყალი ნიშნების შემდეგ curly აფრთხილებს? 1474 01:10:06,950 --> 01:10:07,460 >> JASON HIRSCHHORN: Right აქ? 1475 01:10:07,460 --> 01:10:08,710 არა, თქვენ არ. 1476 01:10:08,710 --> 01:10:10,820 1477 01:10:10,820 --> 01:10:12,550 ასე რომ, სწორედ. 1478 01:10:12,550 --> 01:10:12,940 ჰო. 1479 01:10:12,940 --> 01:10:15,290 >> აუდიტორია: ასე რომ სხვაობაა, რომ და encatenating ერთად წერტილების, თუ 1480 01:10:15,290 --> 01:10:18,420 თქვენ იყენებთ dots, ნეტავ უნდა ჰქონდეს ორმაგი ბრჭყალი ნიშნები, მაშინ dot, 1481 01:10:18,420 --> 01:10:20,370 მაშინ dot - 1482 01:10:20,370 --> 01:10:20,520 >> JASON HIRSCHHORN სწორი. 1483 01:10:20,520 --> 01:10:23,800 ასე რომ, რას ამბობდა იქ საბოლოო გზა წერა ამ იგრძნობა. 1484 01:10:23,800 --> 01:10:26,760 1485 01:10:26,760 --> 01:10:28,966 რა გაერთიანების ოპერატორი in JavaScript? 1486 01:10:28,966 --> 01:10:31,200 >> აუდიტორია: A პლუს ნიშანი. 1487 01:10:31,200 --> 01:10:34,710 თქვენ დაავიწყდა დააყენა curly გაუწიოს უკან. 1488 01:10:34,710 --> 01:10:35,760 >> JASON HIRSCHHORN: Great. 1489 01:10:35,760 --> 01:10:38,850 და არსებობს კიდევ ერთი ხაზი კოდი დაკარგული. 1490 01:10:38,850 --> 01:10:40,130 ვის შეუძლია მომეცი ბოლო ხაზი კოდი ჩვენ აკლია? 1491 01:10:40,130 --> 01:10:43,940 1492 01:10:43,940 --> 01:10:47,602 >> აუდიტორია: Just ზუსტად იგივე რამ, მხოლოდ სახლის ნაცვლად სახელწოდება. 1493 01:10:47,602 --> 01:10:52,960 1494 01:10:52,960 --> 01:10:53,450 დიდი 1495 01:10:53,450 --> 01:10:54,390 >> JASON HIRSCHHORN: Great. 1496 01:10:54,390 --> 01:10:59,320 და თქვენი სინტაქსი არის ზუსტად სწორი მიღების რამ ასოცირებული მასივი. 1497 01:10:59,320 --> 01:11:04,450 ასე რომ, ფაქტობრივი ვიქტორინა, თქვენ ფაქტობრივად, სანამ აქ. 1498 01:11:04,450 --> 01:11:05,710 ასე რომ, ეს კოდი გადაეცა თქვენ. 1499 01:11:05,710 --> 01:11:07,750 ყველა თქვენ უნდა დაწეროთ იყო ეს ოთხი ხაზები და მახსოვს 1500 01:11:07,750 --> 01:11:09,190 დახურვა მაგიდაზე აქვს. 1501 01:11:09,190 --> 01:11:11,370 თქვენ ბიჭები რეალურად გააკეთა ყველა რომ და სხვა. 1502 01:11:11,370 --> 01:11:11,810 ჰო. 1503 01:11:11,810 --> 01:11:14,850 >> აუდიტორია: ასე რომ, ეს იქნება ფუნქციურად იგივე თუ უბრალოდ ჰქონდა, რომ ყველა 1504 01:11:14,850 --> 01:11:17,250 ერთი დიდი ბეჭდვითი ზარი, არა? 1505 01:11:17,250 --> 01:11:19,630 და შემდეგ უბრალოდ concatenated ის, et cetera? 1506 01:11:19,630 --> 01:11:20,730 >> JASON HIRSCHHORN: Like რომ? 1507 01:11:20,730 --> 01:11:21,980 >> აუდიტორია: Yeah. 1508 01:11:21,980 --> 01:11:23,810 1509 01:11:23,810 --> 01:11:26,940 ეს უბრალოდ არ გამოიყურება კარგი თუ იყო ეძებს მას, როდესაც თქვენ ინსპექტირების 1510 01:11:26,940 --> 01:11:28,550 ელემენტის თქვენს საიტზე, არა? 1511 01:11:28,550 --> 01:11:29,800 >> JASON HIRSCHHORN: ვეთანხმები. 1512 01:11:29,800 --> 01:11:35,410 1513 01:11:35,410 --> 01:11:38,710 იმ შემთხვევაში, თუ მე დატვირთული ამ ვებგვერდზე, რომ ვიყო ნახოს ეს PHP კოდი, ოდესმე? 1514 01:11:38,710 --> 01:11:39,240 >> აუდიტორია: არა 1515 01:11:39,240 --> 01:11:40,080 >> JASON HIRSCHHORN: არა 1516 01:11:40,080 --> 01:11:42,240 და რეალურად, მე არ. 1517 01:11:42,240 --> 01:11:43,920 >> აუდიტორია: ეს არ არის HTML, არა? 1518 01:11:43,920 --> 01:11:45,000 ასე, რომ თქვენ შესაძლოა - 1519 01:11:45,000 --> 01:11:46,780 >> JASON HIRSCHHORN: ასე რომ, ეს PHP აკეთებთ შეფასდება სერვერის მხარეს. 1520 01:11:46,780 --> 01:11:51,020 PHP ყოველთვის ფასდება სერვერის მხარეს, ასე რომ, თქვენ არასდროს ნახოს PHP კოდი. 1521 01:11:51,020 --> 01:11:52,980 >> აუდიტორია: მაგრამ ნეტავ შეძლებს ვნახოთ შედეგი ანაბეჭდები. 1522 01:11:52,980 --> 01:11:53,480 >> JASON HIRSCHHORN: Right. 1523 01:11:53,480 --> 01:11:55,510 და ეს გულწრფელად შეიძლება არ ამას ყველა ხაზი. 1524 01:11:55,510 --> 01:11:59,740 ეს შეიძლება დააფორმატე ლამაზად თქვენ, ან შეიძლება დააყენა ის ერთ ხაზი. 1525 01:11:59,740 --> 01:12:01,521 გაურკვეველია. 1526 01:12:01,521 --> 01:12:03,596 მაგრამ დიახ, კარგი წერტილი. 1527 01:12:03,596 --> 01:12:06,470 >> აუდიტორია: როგორ მოვიდა იქ ტექსტი შეფერადება for 1528 01:12:06,470 --> 01:12:07,550 ნებისმიერ PHP ბრძანებები? 1529 01:12:07,550 --> 01:12:09,370 რადგან მახსოვს ხედავს, რომ. 1530 01:12:09,370 --> 01:12:11,620 >> JASON HIRSCHHORN: იმის გამო, რომ ის . HTML ფაილი აქ ზედა. 1531 01:12:11,620 --> 01:12:20,390 1532 01:12:20,390 --> 01:12:21,650 აქ თქვენ წასვლა. 1533 01:12:21,650 --> 01:12:25,752 1534 01:12:25,752 --> 01:12:28,800 >> აუდიტორია: თუ გავაკეთეთ საწყის მეთოდი ერთად მარყუჟების, უფლება, თუ ჩვენ 1535 01:12:28,800 --> 01:12:33,500 სასურველი წვდომის TFS, რომ ჩვენ გავაკეთოთ TFS bracket 0 bracket, მაშინ 1536 01:12:33,500 --> 01:12:35,180 [INAUDIBLE]? 1537 01:12:35,180 --> 01:12:35,970 >> JASON HIRSCHHORN თქვენ აკეთებთ - 1538 01:12:35,970 --> 01:12:40,560 ასე რომ თქვენ განაცხადა, რომ მარყუჟის, თქვენ ყველაფერს გააკეთებს დოლარის ნიშანი TFS bracket 1 1539 01:12:40,560 --> 01:12:41,850 ან მე, მარჯვნივ. 1540 01:12:41,850 --> 01:12:46,780 ან დოლარის ნიშანი i დახურვა bracket და მაშინ კვადრატული ფრჩხილი 1541 01:12:46,780 --> 01:12:49,600 ორმაგი შეთავაზებები, yeah. 1542 01:12:49,600 --> 01:12:50,640 >> OK, კარგი. 1543 01:12:50,640 --> 01:12:53,020 ჩვენ კიდევ ერთი სწრაფი ერთი. 1544 01:12:53,020 --> 01:12:55,090 შვიდი წუთი, ასე რომ მინდა წასვლა ეს ერთი. 1545 01:12:55,090 --> 01:12:56,160 ეს არის კიდევ ერთი მაგალითი. 1546 01:12:56,160 --> 01:12:58,740 ჩვენ ახლა სრულიად სხვა ენაზე. 1547 01:12:58,740 --> 01:12:59,990 >> ჩვენ გვაქვს გარკვეული HTML კოდი. 1548 01:12:59,990 --> 01:13:02,480 1549 01:13:02,480 --> 01:13:07,460 ეს ერთგვარი პატარა ეკრანზე, მაგრამ მინდა გაეცნონ ეს ნამდვილად 1550 01:13:07,460 --> 01:13:11,140 სწრაფად, და შეიძლება ვინმე მითხრათ, თუ მე ვტვირთავ ამ გვერდზე, 1551 01:13:11,140 --> 01:13:12,390 რა მინდა ვხედავ? 1552 01:13:12,390 --> 01:13:22,710 1553 01:13:22,710 --> 01:13:26,450 აღწერეთ ყველაფერი ამ ვებგვერდზე. 1554 01:13:26,450 --> 01:13:28,630 ნოეს? 1555 01:13:28,630 --> 01:13:30,450 რას ვხედავ? 1556 01:13:30,450 --> 01:13:38,140 >> აუდიტორია: Code ფრონტის ბოლოს Google ერთად შეგრძნებას ტექსტი და 1557 01:13:38,140 --> 01:13:39,190 submit ღილაკს. 1558 01:13:39,190 --> 01:13:41,180 >> JASON HIRSCHHORN: რა რომ ღილაკს ვთქვა? 1559 01:13:41,180 --> 01:13:42,430 >> აუდიტორია: შეტანა. 1560 01:13:42,430 --> 01:13:44,620 1561 01:13:44,620 --> 01:13:45,160 Oh, ძებნა. 1562 01:13:45,160 --> 01:13:45,840 მე ბოდიში. 1563 01:13:45,840 --> 01:13:46,830 >> JASON HIRSCHHORN: ეს ვიტყოდი ძებნა. 1564 01:13:46,830 --> 01:13:47,520 გახსოვდეთ, სახელი. 1565 01:13:47,520 --> 01:13:50,550 რას ვიყენებთ სახელი? 1566 01:13:50,550 --> 01:13:53,774 ამ სახელის ატრიბუტი, რაც რომ გამოიყენება? 1567 01:13:53,774 --> 01:13:55,470 >> [INTERPOSING VOICES] 1568 01:13:55,470 --> 01:13:59,300 >> აუდიტორია: ეს მისი სახელი როდესაც ის აირჩიეთ? 1569 01:13:59,300 --> 01:14:00,160 >> JASON HIRSCHHORN: ეს შეიძლება იყოს. 1570 01:14:00,160 --> 01:14:02,690 მაგრამ რა ჩვენ ზოგადად ვხედავ - რატომ ჩვენ ვაძლევთ ამ სახელის მდგომ? 1571 01:14:02,690 --> 01:14:03,830 რატომ ვხედავ, რომ? 1572 01:14:03,830 --> 01:14:05,220 ჰო. 1573 01:14:05,220 --> 01:14:08,600 >> აუდიტორია: აბსოლიტურად რომ გახდეს ინდექსი სუპერ გლობალური ცვლადი? 1574 01:14:08,600 --> 01:14:12,740 >> JASON HIRSCHHORN: ჰო, ზოგადად, როდესაც ამ ფორმით წარმოადგინოს და შემდეგ, სადაც 1575 01:14:12,740 --> 01:14:13,500 იქნებოდა ეს წარუდგინოს? 1576 01:14:13,500 --> 01:14:14,750 რა გვერდი? 1577 01:14:14,750 --> 01:14:16,820 1578 01:14:16,820 --> 01:14:18,460 ნოეს, რა გვერდი რომ ამ წარუდგინოს? 1579 01:14:18,460 --> 01:14:25,710 1580 01:14:25,710 --> 01:14:27,700 >> აუდიტორია: მე არ ვარ დარწმუნებული. 1581 01:14:27,700 --> 01:14:28,920 >> JASON HIRSCHHORN: სად შეიძლება ჩვენ შეგვიძლია ვიპოვოთ იგი? 1582 01:14:28,920 --> 01:14:31,025 სად პოულობენ რა გვერდი მას წარუდგენს? 1583 01:14:31,025 --> 01:14:32,850 რა ხაზი კოდი? 1584 01:14:32,850 --> 01:14:34,040 >> აუდიტორია: ფორმა action. 1585 01:14:34,040 --> 01:14:34,650 >> JASON HIRSCHHORN: ზუსტად. 1586 01:14:34,650 --> 01:14:35,130 მოქმედება. 1587 01:14:35,130 --> 01:14:37,100 ასე რომ, ეს წარუდგენს ძებნის გვერდი. 1588 01:14:37,100 --> 01:14:38,630 Backslash ძებნა. 1589 01:14:38,630 --> 01:14:40,140 ასე რომ, სწორედ. 1590 01:14:40,140 --> 01:14:40,680 რა მეთოდით? 1591 01:14:40,680 --> 01:14:42,090 >> აუდიტორია: ოჯახის. 1592 01:14:42,090 --> 01:14:42,490 >> JASON HIRSCHHORN: ოჯახის. 1593 01:14:42,490 --> 01:14:43,420 ზუსტად. 1594 01:14:43,420 --> 01:14:44,490 ასე რომ, ჩვენ წაიკითხოს ეს. 1595 01:14:44,490 --> 01:14:45,180 ეს იქნება ფორმით. 1596 01:14:45,180 --> 01:14:45,910 თქვენ ზუსტად უფლება. 1597 01:14:45,910 --> 01:14:50,340 ორი რამ სახით, ტიტული გვერდზე და ზევით იქნება Google. 1598 01:14:50,340 --> 01:14:54,270 >> ასე რომ, აქ არის ორი საკითხი უნდა გასცე პასუხი ამ გვერდზე. 1599 01:14:54,270 --> 01:15:01,760 თუ ეს HTML ცხოვრობს ამ ნახვა და მომხმარებლის საშუალებებით bug ამ ტექსტი 1600 01:15:01,760 --> 01:15:06,900 სფეროში სწორედ აქ, რა URL იქნება მომხმარებლის მოძიების თავად საფუძველზე 1601 01:15:06,900 --> 01:15:08,150 წარდგენის ფორმა? 1602 01:15:08,150 --> 01:15:10,980 1603 01:15:10,980 --> 01:15:12,510 >> ასე რომ, ჩვენ ამ უფლების აქ. 1604 01:15:12,510 --> 01:15:13,720 მე ვაპირებ დაბრუნდეს ამ გვერდზე, თუმცა. 1605 01:15:13,720 --> 01:15:16,980 დავწერ ამ პირველი ნაწილი. 1606 01:15:16,980 --> 01:15:18,230 შეგიძლიათ ყველამ ნახოთ აქ? 1607 01:15:18,230 --> 01:15:30,620 1608 01:15:30,620 --> 01:15:32,906 OK, Mario, ფიქრობთ თუ არა? 1609 01:15:32,906 --> 01:15:34,700 რა გვერდი? 1610 01:15:34,700 --> 01:15:37,630 >> აუდიტორია: backslash ძებნა. 1611 01:15:37,630 --> 01:15:38,880 >> JASON HIRSCHHORN: მე ვაპირებ ქვევით აქ. 1612 01:15:38,880 --> 01:15:44,800 1613 01:15:44,800 --> 01:15:49,155 OK, backslash ძებნის კითხვა მარკა q ტოლია bug. 1614 01:15:49,155 --> 01:15:53,560 1615 01:15:53,560 --> 01:15:55,165 ვინმეს აქვს განსხვავებული მოსაზრება? 1616 01:15:55,165 --> 01:15:57,910 1617 01:15:57,910 --> 01:15:59,160 ჰო. 1618 01:15:59,160 --> 01:16:01,700 1619 01:16:01,700 --> 01:16:03,740 >> ასე როგორ უნდა მიიღონ ეს? 1620 01:16:03,740 --> 01:16:05,520 ისე, ჩვენ ვნახეთ ადრე. 1621 01:16:05,520 --> 01:16:07,170 და თქვენ გამოვიდა ამ ადრე. 1622 01:16:07,170 --> 01:16:08,870 თუ მართალი, ნოეს, რომ აქცია გვეუბნებოდა, რა 1623 01:16:08,870 --> 01:16:11,700 გვერდი ჩვენ ვაპირებთ. 1624 01:16:11,700 --> 01:16:12,820 >> ჩვენ ასევე ვიცით, რა მეთოდით. 1625 01:16:12,820 --> 01:16:13,420 ვაკეთებთ მისაღებად. 1626 01:16:13,420 --> 01:16:17,040 და განსხვავება GET და POST არის ის, რომ კიდევ მონიტორები URL 1627 01:16:17,040 --> 01:16:18,490 და პოსტ არ. 1628 01:16:18,490 --> 01:16:22,760 ასე რომ, თუ მე დავწერე პოსტი უფლება იქ მეთოდი, რა იქნება განსხვავებული? 1629 01:16:22,760 --> 01:16:24,250 >> აუდიტორია: ეს იქნებოდა უბრალოდ იყოს slash ძებნა. 1630 01:16:24,250 --> 01:16:25,400 >> JASON HIRSCHHORN: ეს იქნებოდა უბრალოდ უნდა slash ძებნა. 1631 01:16:25,400 --> 01:16:27,400 არაფერი აქ მოხდებოდა. 1632 01:16:27,400 --> 01:16:30,030 არამედ იმიტომ, რომ ეს არის კიდევ, URL გამოისახება შემდეგნაირად. 1633 01:16:30,030 --> 01:16:35,140 პირველი, ჩვენ ვხედავთ, კითხვის ნიშნის და ჩვენ ვხედავთ, სახელი და მნიშვნელობა. 1634 01:16:35,140 --> 01:16:42,730 ამბობენ, რომ იქ იყო ერთი სხვა ველში და მე მას სახელი r და მე შეყვანის 1635 01:16:42,730 --> 01:16:45,220 ღირებულება, მუხლუხა. 1636 01:16:45,220 --> 01:16:48,560 რა ეს ახლა გამოიყურებოდეს? 1637 01:16:48,560 --> 01:16:52,040 მე კიდევ ერთი ტექსტური ველი, მე ვაძლევ დასახელება r და ღირებულება მუხლუხა. 1638 01:16:52,040 --> 01:16:56,990 >> აუდიტორია: მას შემდეგ, ბარი ნეტავ ampersand მუხლუხა. 1639 01:16:56,990 --> 01:16:58,380 >> JASON HIRSCHHORN: ეს არ ampersand. 1640 01:16:58,380 --> 01:17:00,500 >> აუდიტორია: ან უბრალოდ რასაც და სიმბოლო. 1641 01:17:00,500 --> 01:17:01,330 >> JASON HIRSCHHORN: Yeah, no. 1642 01:17:01,330 --> 01:17:03,700 თუ მართალი ვიყავი, არასწორია. 1643 01:17:03,700 --> 01:17:05,660 ასეთი გ. 1644 01:17:05,660 --> 01:17:06,910 >> აუდიტორია: Caterpillar. 1645 01:17:06,910 --> 01:17:08,840 1646 01:17:08,840 --> 01:17:11,090 რ შეადგენს მუხლუხა, უკაცრავად. 1647 01:17:11,090 --> 01:17:13,970 1648 01:17:13,970 --> 01:17:14,700 >> JASON HIRSCHHORN: არის არ r იქ? 1649 01:17:14,700 --> 01:17:16,680 >> აუდიტორია: არა, არ არის. 1650 01:17:16,680 --> 01:17:18,030 >> JASON HIRSCHHORN: ჩვენ ვსაუბრობთ შესახებ, რომ მას შემდეგ კლასი. 1651 01:17:18,030 --> 01:17:18,930 ეს არის ზუსტად ის უფლება. 1652 01:17:18,930 --> 01:17:20,530 ასე რომ, და სწორია. 1653 01:17:20,530 --> 01:17:23,430 და მაშინ შეიძლება ბევრი ამ, და ისინი ყველა უნდა concatenated 1654 01:17:23,430 --> 01:17:24,950 ერთად რომ და. 1655 01:17:24,950 --> 01:17:25,900 ასე რომ, სწორედ. 1656 01:17:25,900 --> 01:17:27,700 >> არსებობს კიდევ ერთი შეკითხვა. 1657 01:17:27,700 --> 01:17:30,676 ესკიზის ამ HTML-ის DOM, დაწყებული დოკუმენტთან. 1658 01:17:30,676 --> 01:17:33,330 1659 01:17:33,330 --> 01:17:34,570 ჩვენ შეგვიძლია გავაკეთოთ, რომ ორი წუთის განმავლობაში. 1660 01:17:34,570 --> 01:17:36,790 ჩვენ გავაკეთებთ აქ. 1661 01:17:36,790 --> 01:17:38,040 მე დავუბრუნდეთ ამ ვებგვერდზე. 1662 01:17:38,040 --> 01:17:40,630 1663 01:17:40,630 --> 01:17:42,160 OK, ჩვენ დავიწყებთ დოკუმენტი. 1664 01:17:42,160 --> 01:17:49,698 1665 01:17:49,698 --> 01:17:52,090 >> რა არის შემდეგი? 1666 01:17:52,090 --> 01:17:53,910 ასე რომ, როდესაც თქვენ კითხულობთ მეშვეობით - 1667 01:17:53,910 --> 01:17:54,540 >> აუდიტორია: HTML. 1668 01:17:54,540 --> 01:17:55,790 >> JASON HIRSCHHORN: HTML შემდეგ. 1669 01:17:55,790 --> 01:17:57,850 ჩვენ ვაპირებთ წავიდეთ tag მიერ tag. 1670 01:17:57,850 --> 01:18:00,890 რა შემდეგ HTML? 1671 01:18:00,890 --> 01:18:01,550 >> აუდიტორია: Head. 1672 01:18:01,550 --> 01:18:02,800 >> JASON HIRSCHHORN: Head. 1673 01:18:02,800 --> 01:18:05,090 1674 01:18:05,090 --> 01:18:08,520 რა არის მას შემდეგ, რაც ხელმძღვანელი? 1675 01:18:08,520 --> 01:18:09,770 >> აუდიტორია: სათაური. 1676 01:18:09,770 --> 01:18:11,880 1677 01:18:11,880 --> 01:18:12,560 >> JASON HIRSCHHORN: სათაური. 1678 01:18:12,560 --> 01:18:14,740 და სათაური აქვს ღირებულება Google, მაგრამ მე არ ვაპირებ 1679 01:18:14,740 --> 01:18:16,240 წერენ, რომ ახლა. 1680 01:18:16,240 --> 01:18:18,750 OK, სადაც ამჯამად ორგანო წავიდეთ? 1681 01:18:18,750 --> 01:18:20,890 >> აუდიტორია: ასევე მოდის გამორთვა HTML. 1682 01:18:20,890 --> 01:18:21,490 >> JASON HIRSCHHORN: ზუსტად. 1683 01:18:21,490 --> 01:18:22,820 Body მოდის off აქ. 1684 01:18:22,820 --> 01:18:25,970 1685 01:18:25,970 --> 01:18:30,330 ამჯამად ყველას ვხედავ, რატომ ეს საქმე? 1686 01:18:30,330 --> 01:18:32,970 თქვენ უნდა ალბათ შეძლებს გაერკვნენ ამ გარეთ, ძალიან, მაშინაც კი, თუ მე არ მაქვს 1687 01:18:32,970 --> 01:18:33,665 ამ ლამაზი წანაცვლება. 1688 01:18:33,665 --> 01:18:37,680 >> წანაცვლება სახის იძლევა ის დაშორებით, მაგრამ ხედავთ, რომ ხელმძღვანელი tag აქვს 1689 01:18:37,680 --> 01:18:41,240 დაიხურა, რაც იმას ნიშნავს, რომ ჩვენ, ალბათ, ვერ ქვევით აქ. 1690 01:18:41,240 --> 01:18:43,460 ჩვენ უნდა დაბრუნდეს რაც სწორი იყო, სანამ უფროსი 1691 01:18:43,460 --> 01:18:44,730 tag, ან რომ. 1692 01:18:44,730 --> 01:18:46,720 ჩვენ კი ხელმძღვანელი ტეგით. 1693 01:18:46,720 --> 01:18:48,560 >> და ქვეშ ორგანოს მიდის ფორმით. 1694 01:18:48,560 --> 01:18:50,300 Under ფორმა, არსებობს ორი საშუალებებით. 1695 01:18:50,300 --> 01:18:53,330 1696 01:18:53,330 --> 01:18:54,420 OK. 1697 01:18:54,420 --> 01:18:55,490 რომ ყველა მე მივიღე. 1698 01:18:55,490 --> 01:18:56,980 Quiz 1 არის ხვალ. 1699 01:18:56,980 --> 01:18:58,350 მე ასე აღფრთოვანებული თქვენ ბიჭები. 1700 01:18:58,350 --> 01:18:59,690 ეს იქნება აფეთქება. 1701 01:18:59,690 --> 01:19:00,250 >> თუ თქვენ გაქვთ - 1702 01:19:00,250 --> 01:19:00,600 >> აუდიტორია: [ტაში] 1703 01:19:00,600 --> 01:19:02,460 >> JASON HIRSCHHORN: Oh შეჩერება, შეწყვეტა. 1704 01:19:02,460 --> 01:19:04,520 მაგრამ არა, მე kidding. 1705 01:19:04,520 --> 01:19:07,220 თუ თქვენ გაქვთ რაიმე შეკითხვები, მარჯვენა შემდეგ სექციაში, მე ვიქნები გარეთ. 1706 01:19:07,220 --> 01:19:11,700 იმ შემთხვევაში, თუ თქვენ გაქვთ რაიმე შეკითხვები დღეს, მოგერიდებათ მოვუწოდებთ, ელ gchat, 1707 01:19:11,700 --> 01:19:12,740 გადამზიდავი Pigeon ჩემთვის. 1708 01:19:12,740 --> 01:19:13,950 წარმატებებს გისურვებთ ხვალ. 1709 01:19:13,950 --> 01:19:16,220 აქვს შესანიშნავი მადლიერების შესვენების თუ მე ვერ ვხედავ, სანამ შემდეგ. 1710 01:19:16,220 --> 01:19:19,320 და მე ვხედავ თქვენ შემდეგ მადლიერების სამშაბათს ჩვენი საბოლოო 1711 01:19:19,320 --> 01:19:20,295 განყოფილების პარტიის ოდესმე. 1712 01:19:20,295 --> 01:19:21,545 >> აუდიტორია: [INAUDIBLE]. 1713 01:19:21,545 --> 01:19:25,270 1714 01:19:25,270 --> 01:19:25,790 >> JASON HIRSCHHORN: Great. 1715 01:19:25,790 --> 01:19:28,900 OK, მე ვხედავ, რომ თქვენ ბიჭები მომავალ კვირის ან ორი კვირის განმავლობაში. 1716 01:19:28,900 --> 01:19:30,150 და წარმატებას გისურვებთ ხვალ. 1717 01:19:30,150 --> 01:19:32,203