1 00:00:00,000 --> 00:00:00,060 2 00:00:00,060 --> 00:00:01,560 >> დავით Malan: ყველა უფლება, ჩვენ უკან. 3 00:00:01,560 --> 00:00:03,830 ასე რომ, საინტერესო დასკვნა, ჩვენი ბოლო მონაკვეთზე 4 00:00:03,830 --> 00:00:06,900 ვებ პროგრამირების, რომელიც მე ვფიქრობდით, ნეტავ გამოიყენოთ როგორც ზოგადი ტერმინი 5 00:00:06,900 --> 00:00:08,440 ხელში მცირერიცხოვანი თემები. 6 00:00:08,440 --> 00:00:10,390 ასე რომ, ბოლოს დღეს, ჩვენ რეალურად 7 00:00:10,390 --> 00:00:14,830 ცოტა პრაქტიკული ვებ პროგრამირების ერთად ენის მოუწოდა JavaScript. 8 00:00:14,830 --> 00:00:17,510 და მე ვფიქრობ, რომ ჩვენ შევხედოთ რაღაც დაკავშირებული სურათები 9 00:00:17,510 --> 00:00:20,040 და გამოვლენა რაღაც ჩუმად ჩაფლული იმიჯი, 10 00:00:20,040 --> 00:00:23,230 და ასევე შევხედოთ Google Maps API, განაცხადის პროგრამირების 11 00:00:23,230 --> 00:00:26,040 ინტერფეისი, რაღაც წარმომადგენელი ტიპის პროგრამული უზრუნველყოფა 12 00:00:26,040 --> 00:00:28,800 რომ ის სულ უფრო და თავისუფლად ხელმისაწვდომი დღეს. 13 00:00:28,800 --> 00:00:32,029 >> მაგრამ, რატომ არ უნდა შევხედოთ at ნივთიერება ამ სამყაროში 14 00:00:32,029 --> 00:00:34,070 რომ ჩვენ სახის ყოფილა აღების მიანიჭა არსებობს 15 00:00:34,070 --> 00:00:36,720 გარკვეული დროის განმავლობაში, მონაცემთა ბაზაში. 16 00:00:36,720 --> 00:00:39,150 გასული დღე და ნახევარი ჩვენ ვივარაუდოთ, 17 00:00:39,150 --> 00:00:42,910 რომ ჩვენ გვაქვს წვდომა ბაზაში, მაგრამ რა პრობლემა აქვს მონაცემთა ბაზის მოგვარება? 18 00:00:42,910 --> 00:00:45,540 რას ნიშნავს ეს ჩვენთვის? 19 00:00:45,540 --> 00:00:47,030 რა არის ეს? 20 00:00:47,030 --> 00:00:48,679 >> აუდიტორია: [INAUDIBLE] 21 00:00:48,679 --> 00:00:51,720 დავით Malan: ადგენს ყველა ინფორმაცია, OK, და რა სახის ინფორმაცია 22 00:00:51,720 --> 00:00:53,186 შეიძლება დააყენა ეს? 23 00:00:53,186 --> 00:00:54,590 >> აუდიტორია: [INAUDIBLE] 24 00:00:54,590 --> 00:00:56,450 >> დავით Malan: ნებისმიერი ინფორმაცია თქვენ, რომ ეს, თქვენ მიიღებთ უკან. 25 00:00:56,450 --> 00:00:57,070 ეს სიმართლეა. 26 00:00:57,070 --> 00:01:01,900 და ტიპიური ვებ დაფუძნებული და ვებ განცხადება, თუ რა სახის ინფორმაცია, 27 00:01:01,900 --> 00:01:03,385 კერძოდ, შესაძლოა, თქვენ დააყენა? 28 00:01:03,385 --> 00:01:04,260 აუდიტორია: [INAUDIBLE] 29 00:01:04,260 --> 00:01:05,051 დავით Malan: მომხმარებელი. 30 00:01:05,051 --> 00:01:07,000 ასე რომ, რა ხარ? 31 00:01:07,000 --> 00:01:09,765 >> აუდიტორია: [INAUDIBLE] 32 00:01:09,765 --> 00:01:11,640 დავით Malan: კარგი, რეგისტრირებული შესახებ საიტზე. 33 00:01:11,640 --> 00:01:15,100 და რას ნიშნავს, მაღაზია მომხმარებლების ინფორმაცია? 34 00:01:15,100 --> 00:01:17,260 რა შეადგენს მომხმარებელი? 35 00:01:17,260 --> 00:01:18,331 მომხმარებელი აქვს, თუ რა? 36 00:01:18,331 --> 00:01:19,206 აუდიტორია: [INAUDIBLE] 37 00:01:19,206 --> 00:01:21,040 დავით Malan: ჰო, პირადი მონაცემები და მინდა, რომ. 38 00:01:21,040 --> 00:01:21,970 მოდით უფრო ზუსტი. 39 00:01:21,970 --> 00:01:25,275 ასე რომ, შესახებ, როგორც წესი, აქვს სახელი, რა შეიძლება მომხმარებელს აქვს? 40 00:01:25,275 --> 00:01:26,150 აუდიტორია: [INAUDIBLE] 41 00:01:26,150 --> 00:01:29,130 DAVID Malan: addr-- OK, ასე რომ, სახელი, გვარი. 42 00:01:29,130 --> 00:01:29,630 კარგია. 43 00:01:29,630 --> 00:01:31,463 რეალურად, მოდით დაფიქსირება იმიტომ, რომ ის აპირებს 44 00:01:31,463 --> 00:01:35,010 გახსნა up შესაძლებლობა დისკუსია, ჯერ კიდევ, უფრო. 45 00:01:35,010 --> 00:01:39,090 სახელი, გვარი, სქესი. 46 00:01:39,090 --> 00:01:41,820 47 00:01:41,820 --> 00:01:43,481 პირადობის გარკვეული. 48 00:01:43,481 --> 00:01:43,980 სხვა რა? 49 00:01:43,980 --> 00:01:45,438 გავიგე რაღაც ადრე, ძალიან. 50 00:01:45,438 --> 00:01:51,600 ელ-ფოსტის გაგზავნა, საფოსტო მისამართი. 51 00:01:51,600 --> 00:01:58,170 >> მოდით პაუზის არსებობს და ახლა განიხილავს არა ის, რაც ჩვენ შენახვის მონაცემთა ბაზაში, 52 00:01:58,170 --> 00:02:01,980 but-- და არა, რატომ, მას შემდეგ, რაც, ალბათ, აშკარაა, რომ ერთხელ თქვენ რეგისტრაცია შესახებ, 53 00:02:01,980 --> 00:02:03,730 თქვენ უნდა გვახსოვდეს, მათ გარკვეული დრო. 54 00:02:03,730 --> 00:02:05,480 თქვენ არ გვინდა, რომ ეს მხოლოდ იყოს შენახული RAM 55 00:02:05,480 --> 00:02:08,690 და forgotten-- ასე მოდით ფოკუსირება, თუ როგორ. 56 00:02:08,690 --> 00:02:11,700 >> გამოდის, რომ ამ მსოფლიოს მონაცემთა ბაზები, 57 00:02:11,700 --> 00:02:14,410 არსებობს მინიმუმ ორი სახის ამ დღეებში. 58 00:02:14,410 --> 00:02:20,010 რაღაც მოუწოდა SQL მონაცემთა ბაზაში, სტრუქტურირებული შეკითხვის ენა, 59 00:02:20,010 --> 00:02:24,770 ან, cutely დაასახელა, NoSQL, რომელიც არ არის SQL. 60 00:02:24,770 --> 00:02:26,980 და ეს უკანასკნელი მაგალითად, თუ რა შეიძლება 61 00:02:26,980 --> 00:02:30,660 ეწოდოს ობიექტზე ორიენტირებული, ან ობიექტი მაღაზია, მონაცემთა ბაზა 62 00:02:30,660 --> 00:02:36,010 რომელიც ინახავს ობიექტების, და არა, საბაბი ჩემთვის, როგორც ჩვენ მალე ვხედავ, რიგები. 63 00:02:36,010 --> 00:02:41,800 >> ასე რომ, ჩვენ ფოკუსირება მხოლოდ ერთი წუთით, პირველი ეს, კერძოდ, SQL 64 00:02:41,800 --> 00:02:46,850 მონაცემთა ბაზა, თუ მხოლოდ იმიტომ, რომ ეს ასე ნაცნობი, უკვე არავის 65 00:02:46,850 --> 00:02:51,070 რომელიც გამოიყენება Excel ან Google მონაცემები ან Apple 66 00:02:51,070 --> 00:02:53,740 ნომრები ან სტანდარტული ცხრილების პროგრამას, 67 00:02:53,740 --> 00:02:56,040 ან, ექვივალენტური, ან უფრო sophisticatedly, 68 00:02:56,040 --> 00:02:58,610 რაღაც Microsoft დაშვების ან Oracle 69 00:02:58,610 --> 00:03:03,890 ან MySQL და PostgreSQL, რაც არის პროდუქტი სახელები შესრულება 70 00:03:03,890 --> 00:03:04,865 საქართველოს შემდეგ იდეა. 71 00:03:04,865 --> 00:03:10,350 >> რელატიური მონაცემთა ბაზა უბრალოდ რაღაც რომ აქვს რიგები და სვეტები. 72 00:03:10,350 --> 00:03:12,850 და რიგები და სვეტები, მე ფაქტიურად ნიშნავს, რაღაც 73 00:03:12,850 --> 00:03:21,860 როგორც ეს, ასე რომ, სადაც ჩვენ შეიძლება ჰქონდეს ასახელებს სფეროში და მისი ტიპის აქ. 74 00:03:21,860 --> 00:03:25,800 და ფაქტობრივად, ნება მომეცით ახლა დაიწყება რუკა ეს. 75 00:03:25,800 --> 00:03:29,420 ასე რომ, რეალურად, მე არ ვიცი, ამიტომ, მე გაამახვილა ცალკე გრაფა. 76 00:03:29,420 --> 00:03:30,780 მოდით ეს მარტივია. 77 00:03:30,780 --> 00:03:34,830 >> ჩვენ გვაქვს უფლება აქ დასაწყისი ჩვენს მაგიდასთან, სადაც 78 00:03:34,830 --> 00:03:40,150 ეს არის სახელი სფეროში და ეს არის მონაცემები ტიპის, 79 00:03:40,150 --> 00:03:41,660 და ტიპის ვგულისხმობ შემდეგ. 80 00:03:41,660 --> 00:03:45,510 ეს არის ნომერი, ის არის, სიმებიანი, მოკლე სიმებიანი მოსწონს ერთი სიტყვით, 81 00:03:45,510 --> 00:03:49,340 ეს არის პირველი პუნქტის, არის ის, ბინარულ მონაცემებს, როგორიცაა გამოსახულება? 82 00:03:49,340 --> 00:03:51,980 და მოდით უბრალოდ აჯავრებენ ამ გარდა მხოლოდ ერთი წუთით. 83 00:03:51,980 --> 00:03:57,575 ასე რომ, პირველი სახელი, ნომერი, სიმებიანი, დიდი ბლოკი text-- 84 00:03:57,575 --> 00:03:58,450 აუდიტორია: [INAUDIBLE] 85 00:03:58,450 --> 00:03:59,616 დავით Malan: დიახ, ასე string. 86 00:03:59,616 --> 00:04:04,744 და მონაცემთა ბაზაში კონტექსტში, ჩვენ როგორც წესი, მოვუწოდებთ ამ char სფეროში. 87 00:04:04,744 --> 00:04:07,660 მე უბრალოდ, ვამბობთ char ახლა, მაგრამ ჩვენ აპირებს დახვეწა ამ მომენტში. 88 00:04:07,660 --> 00:04:09,180 ხასიათი სფეროში. 89 00:04:09,180 --> 00:04:11,365 გვარი, ალბათ, იგივე. 90 00:04:11,365 --> 00:04:11,865 სქესი? 91 00:04:11,865 --> 00:04:16,230 92 00:04:16,230 --> 00:04:18,310 >> კაცი ან ქალი, ასე რომ შეიძლება იყოს char სფეროში. 93 00:04:18,310 --> 00:04:21,380 ეს შეიძლება იყოს ციტირებით unquote "კაცი" ან გაცემა, unquote "ქალი" 94 00:04:21,380 --> 00:04:23,650 ან შეიძლება იყოს, მ ან ვ. 95 00:04:23,650 --> 00:04:26,540 თუ გსურთ უფრო ინკლუზიური, თქვენ უნდა მესამე მნიშვნელობა 96 00:04:26,540 --> 00:04:28,640 ან რაიმე სახის სხვა სფეროში საერთოდ. 97 00:04:28,640 --> 00:04:31,350 ასე რომ, თქვენ შეიძლება გამოიყენოთ ნამდვილი სიცრუეა. 98 00:04:31,350 --> 00:04:35,036 სფეროში შეიძლება ეწოდოს კაცი, და მაშინ შეიძლება ითქვას, ჭეშმარიტი ან მცდარი. 99 00:04:35,036 --> 00:04:38,160 მაგრამ ეს სულაც არ ხელში ყველა ინფორმაცია დაგვჭირდება. 100 00:04:38,160 --> 00:04:41,118 >> გამოდის, რომ არსებობს სხვა ტიპის სფეროში, რომელიც შეიძლება იყოს სასარგებლო აქ 101 00:04:41,118 --> 00:04:46,040 ტიპიური მონაცემთა ბაზა, ე.წ. ENUM, სადაც ეს არის ხასიათი სფეროში, 102 00:04:46,040 --> 00:04:50,480 მაგრამ თქვენ, დიზაინერი მისაღებად ჩამოვთვალოთ შესაძლო მნიშვნელობებია, 103 00:04:50,480 --> 00:04:54,630 მოსწონს გაცემა, unquote "კაცი", გაცემა, unquote "ქალი" და სხვ. 104 00:04:54,630 --> 00:04:57,620 ასე რომ, რასაც ღირებულება თქვენს მონაცემთა ბაზაში, 105 00:04:57,620 --> 00:05:00,670 მართლაც ხასიათი დაფუძნებული, მაგრამ ეს უნდა იყოს ერთ-ერთი იმ ღირებულებებს. 106 00:05:00,670 --> 00:05:03,520 ჩვენ, ალბათ, არ სურს ENUM პირველი სახელი ან გვარი. 107 00:05:03,520 --> 00:05:05,630 წინააღმდეგ შემთხვევაში, ჩვენ უნდა ჩამოთვლა, როგორც სახელი 108 00:05:05,630 --> 00:05:09,570 გამომდინარეობს, ფაქტიურად ყოველ შესაძლებელია სახელი და გვარი. 109 00:05:09,570 --> 00:05:13,960 >> OK, ასე ID რა უნდა პირადობის იყოს? 110 00:05:13,960 --> 00:05:15,200 დიახ, იქნებ ნომერი. 111 00:05:15,200 --> 00:05:17,870 მოდით გამყარებაში რომ ახლა, ნომერი. 112 00:05:17,870 --> 00:05:22,010 და ნომერი, ნომერი არის ცოტა ფართო ახლა. 113 00:05:22,010 --> 00:05:23,900 ბოლოს მეორე დღეს, ვგრძნობ, ჩვენ 114 00:05:23,900 --> 00:05:25,280 უნდა იყოს უფრო ზუსტი. 115 00:05:25,280 --> 00:05:29,280 პუნქტების შეიძლება ნიშნავს, თითქოსდა, შეიძლება იყოს რაღაც 1,236. 116 00:05:29,280 --> 00:05:31,500 და ეს, ალბათ არ რას ვგულისხმობთ პირადობის მოწმობა. 117 00:05:31,500 --> 00:05:34,635 რა ჩვენ, ალბათ, ვგულისხმობთ ID? 118 00:05:34,635 --> 00:05:36,382 >> აუდიტორია: [INAUDIBLE] 119 00:05:36,382 --> 00:05:38,590 დავით Malan: Oh, OK, ასე შესაძლოა, ეს კი არ არის. 120 00:05:38,590 --> 00:05:42,840 იქნებ ეს რეალურად უნიკალური იდენტიფიკატორი ეს არის ის, სიმებიანი, როგორიცაა მომხმარებლის სახელი. 121 00:05:42,840 --> 00:05:44,580 ასე რომ, რა თქმა უნდა, შეიძლება. 122 00:05:44,580 --> 00:05:46,730 მე ვფიქრობ, რომ ვინმე ალბათ იმას ნიშნავდა, რიცხვითი, თუმცა. 123 00:05:46,730 --> 00:05:48,460 მოდით დარჩენილიყო, რომ. 124 00:05:48,460 --> 00:05:49,320 რა სახის ნომერი? 125 00:05:49,320 --> 00:05:51,960 რა არის უფრო precise-- რიცხვი. 126 00:05:51,960 --> 00:05:56,710 ასე რომ ნომერი, როგორიც 0, 1, 2, 3, ასე რომ, ჩვენ მოვუწოდებთ ამ რიცხვი. 127 00:05:56,710 --> 00:05:58,909 და მაშინაც, შემეძლო უნდა nitpicking, ეს 128 00:05:58,909 --> 00:06:00,700 ნამდვილად არ არის მხოლოდ ზოგადად მთელი გსურთ. 129 00:06:00,700 --> 00:06:04,340 თქვენ, ალბათ, არ მინდა უარყოფითი, მხოლოდ იმიტომ, რომ ის უბრალოდ გრძნობს უცნაური. 130 00:06:04,340 --> 00:06:06,070 თქვენ ალბათ მინდა დადებითი რიცხვებით. 131 00:06:06,070 --> 00:06:07,920 ასე რომ თქვენ შეგიძლიათ გამოხატოთ რომელიც მონაცემთა ბაზაში, 132 00:06:07,920 --> 00:06:09,450 მაგრამ ახლა, ჩვენ ვიტყვით, რიცხვი. 133 00:06:09,450 --> 00:06:10,650 >> ელ-ფოსტის გაგზავნა? 134 00:06:10,650 --> 00:06:13,550 ეს, ალბათ, just-- რა? 135 00:06:13,550 --> 00:06:14,460 >> აუდიტორია: [INAUDIBLE] 136 00:06:14,460 --> 00:06:16,980 >> დავით Malan: ეს ელექტრონული ფოსტის, მაგრამ ეს არის სიმბოლო, არა? 137 00:06:16,980 --> 00:06:19,813 უბრალოდ აქვს ხმაურიანი ხასიათი მოსწონს an "at" სიმბოლო ან რაღაც, 138 00:06:19,813 --> 00:06:21,580 მაგრამ ეს ჯერ კიდევ ხასიათი სფეროში. 139 00:06:21,580 --> 00:06:23,900 და საფოსტო მისამართი? 140 00:06:23,900 --> 00:06:25,360 ხასიათი სფეროში. 141 00:06:25,360 --> 00:06:31,400 ასე რომ, ლამაზი დასაწყისში, მაგრამ მოდით ცოტა უფრო სწორედ ახლა. 142 00:06:31,400 --> 00:06:34,540 >> გამოდის, რომ მონაცემთა ბაზა, თქვენ ხშირად 143 00:06:34,540 --> 00:06:39,120 გაქვთ არჩევანი მეტი დახვეწილი ვერსიის ეს ყველაფერი. 144 00:06:39,120 --> 00:06:44,330 ფაქტობრივად, ტიპიური SQL მონაცემთა ბაზაში, SQL, ან უფრო ზოგადად, რელატიური მონაცემთა ბაზა, 145 00:06:44,330 --> 00:06:46,680 მონაცემთა ბაზის რიგები და სვეტები, ხშირად 146 00:06:46,680 --> 00:06:53,610 მისაღებად განსაზღვრავს არა მარტო ტიპის field-- მიადევნე თვალი გარკვეული ოთახი აქ 147 00:06:53,610 --> 00:06:56,600 არამედ სიგრძეზე. 148 00:06:56,600 --> 00:06:59,900 >> ასე რომ, რამდენი ხანი არის სახელი? 149 00:06:59,900 --> 00:07:07,060 მე ვფიქრობ, D-A-V-I-D. OK, მივიღე ეს მე ალბათ უბრალოდ განაწყენებული, როგორც ნახევარი 150 00:07:07,060 --> 00:07:11,260 ერთი ადამიანი ოთახში, მარჯვნივ, მას შემდეგ, რაც თქვენი სახელები უმეტეს ხუთი 151 00:07:11,260 --> 00:07:16,608 წერილები, ასე ხუთ როგორც ჩანს, ცოტა ეგოისტური და გულუბრყვილო, რა არის უკეთესი მნიშვნელობა? 152 00:07:16,608 --> 00:07:19,320 153 00:07:19,320 --> 00:07:24,330 10, ყველა უფლება, და მე ვფიქრობ, ჩვენ OK ოთახში. 154 00:07:24,330 --> 00:07:26,254 13-ში? 155 00:07:26,254 --> 00:07:27,541 30? 156 00:07:27,541 --> 00:07:29,540 რატომ არ მიიღოს მიდგომა ადრე, როდესაც ჩვენ 157 00:07:29,540 --> 00:07:31,081 ვსაუბრობთ კოლექტორები და მეხსიერება? 158 00:07:31,081 --> 00:07:32,450 რატომ არ მე უბრალოდ ამბობენ 1000? 159 00:07:32,450 --> 00:07:35,260 არავის სახელი აპირებს უნდა იყოს არა უმეტეს 1,000. 160 00:07:35,260 --> 00:07:36,706 უკან მიწოლა. 161 00:07:36,706 --> 00:07:38,005 >> აუდიტორია: [INAUDIBLE] 162 00:07:38,005 --> 00:07:40,130 დავით Malan: ჰო, ეს არარაციონალური, უფლება, მით უმეტეს, 163 00:07:40,130 --> 00:07:44,630 თუ სახელებზე მხოლოდ ხუთი ან 10 ან 15 პერსონაჟი, რომ ძალიან wasteful. 164 00:07:44,630 --> 00:07:45,810 ასე, რომ თქვენ იცით, რა? 165 00:07:45,810 --> 00:07:48,020 ეს არის ერთგვარი რთული საკითხია. 166 00:07:48,020 --> 00:07:51,721 ახლა, ჩვენ, რა თქმა უნდა ანალიზი ინგლისური და ნებისმიერი სხვა ენის სახელები 167 00:07:51,721 --> 00:07:54,470 და გაერკვნენ, ასევე, რა არის average-- საშუალოდ ნამდვილად არ 168 00:07:54,470 --> 00:07:57,150 დაეხმაროს us-- რა არის მაქსიმალური არის ალბათ, რასაც ჩვენ ნამდვილად გსურთ. 169 00:07:57,150 --> 00:07:59,920 მაგრამ აღმოჩნდება, რომ ჩვენ გვაქვს გარკვეული არჩევანის მეტი ტიპის აქ. 170 00:07:59,920 --> 00:08:03,400 >> ტიპიური SQL მონაცემთა ბაზაში, არ რაღაც მოუწოდა char სფეროში 171 00:08:03,400 --> 00:08:07,505 და ასევე varchar, V-A-R, ცვლადი char სფეროში. 172 00:08:07,505 --> 00:08:08,630 და განსხვავება არის ეს. 173 00:08:08,630 --> 00:08:12,400 რომ char სფეროში, თქვენ დიზაინერი, უნდა მიუთითოთ წინასწარ 174 00:08:12,400 --> 00:08:14,900 ზუსტი სიგრძე სფეროში. 175 00:08:14,900 --> 00:08:20,530 ასე რომ, შესაძლოა, სახელი მოსწონს 20 გრძნობს სახის უსაფრთხო. 176 00:08:20,530 --> 00:08:23,950 ალბათ უნდა გავაკეთოთ ზოგიერთი დაგუგლვის to თუ, რომ, ფაქტობრივად, უსაფრთხო საკმარისი. 177 00:08:23,950 --> 00:08:26,910 იქ, ალბათ, სახელი 21 გმირები, მაგრამ ახლა, ვფიქრობ, 20 178 00:08:26,910 --> 00:08:27,620 უსაფრთხოა. 179 00:08:27,620 --> 00:08:30,070 >> რომ char სფეროში ნიშნავს იმას, მონაცემთა ბაზა, რომელიც თქვენ 180 00:08:30,070 --> 00:08:33,289 იყენებთ 20 და ყოველთვის 20 სიმბოლოს. 181 00:08:33,289 --> 00:08:37,419 ახლა, თუ ეს მხოლოდ D-A-V-I-D, 15 იმ უბრალოდ იქნება ცარიელი სიმბოლო, 182 00:08:37,419 --> 00:08:40,450 მაგრამ თქვენ მაინც გამოყენებით ყველა 20 ბაიტი. 183 00:08:40,450 --> 00:08:46,302 Varchar სფეროში, პირიქით, იმას ნიშნავს, რომ სიმებიანი უნდა იყოს 20 გმირები 184 00:08:46,302 --> 00:08:48,260 მაგრამ, თუ ის მხოლოდ ხუთი, თქვენ მხოლოდ აპირებს გამოიყენოს 185 00:08:48,260 --> 00:08:51,270 ხუთი, ან შესაძლოა, ექვსი დიდი განსაკუთრებული მნიშვნელობა ბოლოს, 186 00:08:51,270 --> 00:08:54,980 მინდა, რომ 0, ჩვენ განვიხილეთ, რომ ნიშნავს, ბოლომდე ხასიათი 187 00:08:54,980 --> 00:08:56,790 თანმიმდევრობით მეხსიერებაში. 188 00:08:56,790 --> 00:08:59,950 >> ასე რომ, როდესაც ფიქრობთ თქვენ შეიძლება აირჩიონ char 189 00:08:59,950 --> 00:09:05,240 წინააღმდეგ varchar, იმის გათვალისწინებით, რომ სავაჭრო-off? 190 00:09:05,240 --> 00:09:09,321 Char იყენებს, რომ ბევრი პერსონაჟი, varchar იყენებს არა უმეტეს, რომ ბევრი პერსონაჟი. 191 00:09:09,321 --> 00:09:10,196 აუდიტორია: [INAUDIBLE] 192 00:09:10,196 --> 00:09:13,859 193 00:09:13,859 --> 00:09:16,900 დავით Malan: კარგი, როდესაც თქვენ იცით სიგრძეზე სიმებიანი საკმაოდ მყარი 194 00:09:16,900 --> 00:09:19,316 უბრალოდ გამოიყენოთ char, "მიზეზი, თუ თქვენ იცით, რომ, უბრალოდ დააყენა მას. 195 00:09:19,316 --> 00:09:23,390 და შესაძლოა, რომ ნამდვილი ამისთვის zip კოდი, აშშ, მინიმუმ, 02138, 196 00:09:23,390 --> 00:09:26,660 ის ყოველთვის იქნება ხუთი გმირები სანამ დაამატოთ dash ოთხ. 197 00:09:26,660 --> 00:09:29,750 მაგრამ ალბათ ზოგიერთი ღირებულებების რომელიც თქვენ ყოველთვის ვიცი, სიგრძე. 198 00:09:29,750 --> 00:09:32,310 ან იქნებ სახელმწიფო სიმბოლიკა, როგორიცაა NY ნიუ-იორკში, 199 00:09:32,310 --> 00:09:33,811 და MA მასაჩუსეტსის, აშშ. 200 00:09:33,811 --> 00:09:36,560 იქნებ თქვენ გაქვთ გარკვეული სიტუაციებში სადაც რომ სრულიად გონივრული, 201 00:09:36,560 --> 00:09:39,520 მაგრამ იმ ლოგიკით, რატომ არიან ჩვენ კი overthinking ეს? 202 00:09:39,520 --> 00:09:41,800 რატომ არ ჩვენ უბრალოდ გამოიყენოთ varchar და მაშინ ჩვენ უბრალოდ 203 00:09:41,800 --> 00:09:46,730 ყოველთვის გამოიყენოთ ორი სიმბოლო მაინც, ან ყოველთვის გამოიყენოთ ხუთი გმირები მაინც? 204 00:09:46,730 --> 00:09:50,300 რატომ არ გადარჩენა varchar for ყველაფერი, იმ ლოგიკით? 205 00:09:50,300 --> 00:09:51,677 იქ უნდა იყოს დაჭერა. 206 00:09:51,677 --> 00:09:52,552 აუდიტორია: [INAUDIBLE] 207 00:09:52,552 --> 00:09:54,952 208 00:09:54,952 --> 00:09:56,660 დავით Malan: ვერ წერენ რაღაც. 209 00:09:56,660 --> 00:09:58,090 ასე რომ, მართალია. 210 00:09:58,090 --> 00:10:01,030 მაგრამ მაშინაც, მათ არ შეუძლიათ გამოიყენონ მეტი მეხსიერების ვიდრე მე გამოყოფს. 211 00:10:01,030 --> 00:10:03,340 მე ჯერ კიდევ საბოლოო ამბობენ სიგრძე, 212 00:10:03,340 --> 00:10:06,780 ასე რომ მათ ვერ შემთხვევით შეცდომა, მაგრამ კარგი აზრის. 213 00:10:06,780 --> 00:10:10,510 ეს არის უფრო დახვეწილი, მაგრამ ძალიან ახლოს ჩვენი განხილვის, ფაქტობრივად, მასივები 214 00:10:10,510 --> 00:10:12,390 და დაკავშირებული სიები ადრე. 215 00:10:12,390 --> 00:10:16,290 >> გამოდის, რომ მონაცემთა ბაზაში, თუ იგი დარწმუნებულია, რომ ყველა ღირებულებები 216 00:10:16,290 --> 00:10:19,250 ფიქსირებული სიგრძის, მაშინაც კი, თუ ზოგიერთი იმ ღირებულებებს არის ცარიელი, 217 00:10:19,250 --> 00:10:22,484 ერთგვარი ესთეტიურად ცარიელი, D-A-V-I-D და შემდეგ 15 ბლანკები, 218 00:10:22,484 --> 00:10:24,650 გამოდის, რომ თუ ყოველ ველი იმავე სიგრძის, 219 00:10:24,650 --> 00:10:28,670 ჰგავს მასივი ჰქონდა ყველა მისი პერსონალის თავში დაბრუნება თავში დაბრუნება ისე, რომ 220 00:10:28,670 --> 00:10:33,480 შეიძლება მხოლოდ plus 1 მისაღებად შემდეგი მნიშვნელობა, იგივე იდეა მონაცემთა ბაზის ცხრილში. 221 00:10:33,480 --> 00:10:37,550 თუ ყველა თქვენი ხასიათი სიმები არის იგივე სიგრძის, 222 00:10:37,550 --> 00:10:39,390 თქვენ გაქვთ რასაც წვდომის. 223 00:10:39,390 --> 00:10:41,850 თუ ყველა სიმები არიან სიგრძე 20, თქვენ არა მხოლოდ 224 00:10:41,850 --> 00:10:45,230 ამის პლუს 1 თქვენ მხოლოდ ამის პლუს 20, + 20, + 20, + 20, 225 00:10:45,230 --> 00:10:48,775 და თქვენ შეგიძლიათ ძალიან სწრაფად გადახვევა მეშვეობით ან მოძებნოთ ყველა თქვენი მონაცემები. 226 00:10:48,775 --> 00:10:54,420 >> ცვლადი char სფეროში, პირიქით, ყოველთვის არ გვაქვს 20 სიმბოლო. 227 00:10:54,420 --> 00:10:58,000 ალბათ, 20 და მაშინ 15 და შემდეგ 19 და შემდეგ 10, 228 00:10:58,000 --> 00:11:00,720 და ასე რომ, თუ გსურთ მოძებნოთ მეშვეობით, თქვენ შეგიძლიათ არა მხოლოდ ბრმად 229 00:11:00,720 --> 00:11:03,050 რჩეულებში 20 ბაიტი, რათა მომდევნო ერთი. 230 00:11:03,050 --> 00:11:07,280 თქვენ ფაქტიურად უნდა მოძებნოთ მეშვეობით იმიტომ, რომ ზღვარზე მონაცემების სტრუქტურას, 231 00:11:07,280 --> 00:11:08,340 თუ თქვენ, არის ragged. 232 00:11:08,340 --> 00:11:11,480 ეს ერთგვარი მიდის და გარეთ დაფუძნებული ფაქტობრივი სიგრძეზე სიმებიანი. 233 00:11:11,480 --> 00:11:14,460 ასე რომ, როდესაც თქვენ იცით, ხანგრძლივობა, როგორც Kareem ამბობს, გამოიყენოთ char სფეროში, 234 00:11:14,460 --> 00:11:16,460 იმიტომ, რომ თქვენ მოიპოვოს, რომ ეფექტურობის მიმდინარეობს 235 00:11:16,460 --> 00:11:19,170 შეგიძლიათ მოძებნოთ მეშვეობით იგი სწრაფად როდესაც თქვენ ეძებს მონაცემები, 236 00:11:19,170 --> 00:11:20,550 სხვაგვარად გამოყენება ცვლადი. 237 00:11:20,550 --> 00:11:24,450 >> სამწუხაროდ, მე არ მაქვს კარგი პასუხი რამდენი ხანი სახელი უნდა იყოს, 238 00:11:24,450 --> 00:11:26,360 მაგრამ რაღაც სახელი, მე ვიტყოდი, 239 00:11:26,360 --> 00:11:28,470 varchar არის საერთო იმიტომ, რომ ის არ აპირებს 240 00:11:28,470 --> 00:11:30,430 უნდა იყოს ფიქსირებული სიგრძის ყველასთვის. 241 00:11:30,430 --> 00:11:33,650 20, მე არ ვიცი, 20 გრძნობს პატარა მჭიდრო. 242 00:11:33,650 --> 00:11:36,460 მოდით უბრალოდ, ვამბობთ 50, 50. 243 00:11:36,460 --> 00:11:39,210 ეს ნამდვილად არ ღირს, რომ ბევრად უფრო ვთქვათ 50 ნაცვლად 40, 244 00:11:39,210 --> 00:11:41,260 მაგრამ რაღაც მომენტში, თქვენ უნდა რათა განაჩენი ზარი. 245 00:11:41,260 --> 00:11:43,090 >> ძალიან გავრცელებული, სიმართლე გითხრათ, for [? ისტორიული ?] 246 00:11:43,090 --> 00:11:47,670 მიზეზების გამო, მიუხედავად იმისა, რომ გადაჭარბებული, უნდა ითქვას, 255, იმიტომ, რომ რამდენიმე ხნის წინ, 247 00:11:47,670 --> 00:11:51,440 პოპულარული მონაცემთა ბაზის სისტემები, როგორიცაა MySQL, უფასო ღია კოდის ინსტრუმენტი 248 00:11:51,440 --> 00:11:53,790 რომ ბევრი კომპანიები როგორც კი Facebook გამოიყენება, 249 00:11:53,790 --> 00:11:56,654 ეს იყო მაქსიმალური ძირითადად ასე რომ, ადამიანი უბრალოდ წავიდა ის. 250 00:11:56,654 --> 00:11:59,070 ასე რომ, არ არის დაუსაბუთებელი, მაგრამ ჩვენ ცოტა მეტი ინტუიცია 251 00:11:59,070 --> 00:12:02,970 და აცხადებენ, რომ დარწმუნებული ვარ, 50, რომ ალბათ ცოტა გადაჭარბებული. 252 00:12:02,970 --> 00:12:05,720 >> სქესი, მე როგორიც ENUM, ასე რომ, ჩვენ, შესაბამისად 253 00:12:05,720 --> 00:12:08,760 ჩამოვთვალოთ კაცი ან ქალი, ან იქნებ უფრო ეფექტურად, 254 00:12:08,760 --> 00:12:13,420 მ ან f ან სხვა სიმბოლიკის, მაგრამ ENUM იგრძნობა კარგი არჩევანი არ არსებობს. 255 00:12:13,420 --> 00:12:16,740 უნდა იყოს მკაფიო, გენდერული შეიძლება იყოს მხოლოდ varchar, 256 00:12:16,740 --> 00:12:19,090 და ჩვენ შეგვიძლია უბრალოდ ყველა შეთანხმდნენ ლამაზი ხალხი, 257 00:12:19,090 --> 00:12:21,010 ყოველთვის დააყენა იგივე ღირებულებები არსებობს. 258 00:12:21,010 --> 00:12:22,720 კაცი ან ქალი და whatnot. 259 00:12:22,720 --> 00:12:27,800 >> მაგრამ პრობლემა მაშინ, არის, რომ ჩვენ შეგვიძლია შეცდომა, როგორც [INAUDIBLE] შემოთავაზებული 260 00:12:27,800 --> 00:12:29,140 ადრე სხვადასხვა კონტექსტში. 261 00:12:29,140 --> 00:12:32,780 თუ ჩვენ შეცდომა, ჩვენ ვერ არასწორი ღირებულებების ჩვენს მონაცემთა ბაზაში. 262 00:12:32,780 --> 00:12:36,320 ასე რომ, რა ლამაზი მონაცემთა ბაზები როგორც Oracle და MySQL და სხვები, 263 00:12:36,320 --> 00:12:39,280 ის არის, რომ თქვენ გაქვთ ეს უკანასკნელი ფენის თავდაცვის, სადაც 264 00:12:39,280 --> 00:12:43,010 თქვენი DBA, მონაცემთა ბაზის ადმინისტრატორი, ვინც დიზაინისა ამ მაგიდასთან, როგორც ჩვენ 265 00:12:43,010 --> 00:12:46,440 ზეპირი ფორმით, ვერ დააყენა ადგილი ENUM- სა, რომ 266 00:12:46,440 --> 00:12:51,250 იცავს, რომ სასურველი მამრობითი, მდედრობითი, და ასე რომ, არავინ 267 00:12:51,250 --> 00:12:54,230 სხვა არ პროგრამისტი შემთხვევით ჩადეთ ნებისმიერი სხვა მნიშვნელობა. 268 00:12:54,230 --> 00:12:55,480 ასე რომ, ეს იქნება კარგი რამ. 269 00:12:55,480 --> 00:12:56,660 ეს არის ფუნქცია. 270 00:12:56,660 --> 00:13:00,760 >> ასე რომ, ID, თუ, რა თქმა რიცხობრივი ID, რომ ალბათ უნდა იყოს დადებითი მთელი რიცხვი. 271 00:13:00,760 --> 00:13:04,380 და ჩვენ ხანდახან გვაქვს შესაძლებლობა განიხილოს სიგრძე. 272 00:13:04,380 --> 00:13:06,830 თქვენ არ, როგორც წესი, დაზუსტება ნომერი აქ, 273 00:13:06,830 --> 00:13:11,310 ამის ნაცვლად განსაზღვროს ეს არის int, ან დიდი int, 274 00:13:11,310 --> 00:13:12,980 რადგან ისინი, როგორც წესი, ეწოდება. 275 00:13:12,980 --> 00:13:18,840 თუმცა, როგორც წესი, მთელი რიცხვი იქნებოდა, ვთქვათ, 4 ბაიტი. 276 00:13:18,840 --> 00:13:23,694 და თუ ეს არის 4 ბაიტი, ეს არის ის, რამდენი ბიტი? 277 00:13:23,694 --> 00:13:24,630 >> აუდიტორია: [INAUDIBLE] 278 00:13:24,630 --> 00:13:26,610 >> დავით Malan: 32 ბიტი. 279 00:13:26,610 --> 00:13:30,270 ასე რომ, რამდენი მომხმარებლებს შეუძლიათ გვაქვს ჩვენს ბაზაში, თუ მათ აქვთ პირადობის 280 00:13:30,270 --> 00:13:33,320 და ეს ID უნდა იყოს უნიკალური? 281 00:13:33,320 --> 00:13:36,780 32 ბიტი ნიშნავს, რომ ჩვენ ნიმუშების ერთი, ორი, სამი, ოთხი, ხუთ 282 00:13:36,780 --> 00:13:41,000 ასე რომ, თუ რამდენი სხვადასხვა ნიმუშების zeros და პირობა აქვს, თუ 32? 283 00:13:41,000 --> 00:13:43,235 ეს არის იგივე, რაც გეკითხებით, რა არის ორი 32? 284 00:13:43,235 --> 00:13:46,472 285 00:13:46,472 --> 00:13:48,430 ეს არის დიდი რაოდენობით, რომ მე არ შემიძლია საკმაოდ მიიღოს უფლება, 286 00:13:48,430 --> 00:13:50,270 მაგრამ მე ვიცი, რომ დაახლოებით 4 მილიარდი. 287 00:13:50,270 --> 00:13:53,970 ეს ნიშნავს, რომ თქვენს მონაცემთა ბაზაში მაგიდა აქვს ოთხი მილიარდი წევრებს და ეს არის. 288 00:13:53,970 --> 00:13:56,410 >> ასე რომ, ეს არის საინტერესო დიზაინი გავლენა. 289 00:13:56,410 --> 00:14:00,840 ღირსეული რიგი კომპანიები გადავწყვიტეთ, იქნებ არა იმდენად 290 00:14:00,840 --> 00:14:04,860 მათი წევრებს მაგიდა, რადგან მას 4 მილიარდი მომხმარებლებს იშვიათი პრობლემა. 291 00:14:04,860 --> 00:14:08,410 ეს არის ერთგვარი Facebook- ის სტილის პრობლემა, არ არის ტიპიური კომპანია პრობლემა. 292 00:14:08,410 --> 00:14:12,670 მაგრამ შესაძლოა, თუ თქვენ გაქვთ გარიგების ჟურნალები ან რაიმე სახის მონაცემები, რომელიც მუდმივად 293 00:14:12,670 --> 00:14:15,610 იღებს დაწერილი თქვენს მონაცემთა ბაზაში რომ აბსოლუტურად შეეძლო მილიარდობით 294 00:14:15,610 --> 00:14:18,900 და მილიარდობით რიგები და თქვენ იყენებთ რიცხვი მას, 295 00:14:18,900 --> 00:14:22,750 რა მოხდება, როგორც კი თქვენ უნდა რიგის ნომერი 4 მილიარდი 296 00:14:22,750 --> 00:14:26,210 და შემდეგ თქვენ ცდილობენ ჩადეთ 4 billionth და 1, ასე ვთქვათ? 297 00:14:26,210 --> 00:14:29,610 მე გამარტივების ნომრები ცოტა. 298 00:14:29,610 --> 00:14:33,740 >> თქვენ შეგიძლიათ გაჭრა უკან, ვგულისხმობ უნდა გაუმკლავდეს, რომ როგორმე. 299 00:14:33,740 --> 00:14:37,910 და რა კომპიუტერი, როგორც წესი, ამის გაკეთება, ვიფიქროთ, რომ მაშინაც კი, ამ დილით, 300 00:14:37,910 --> 00:14:42,430 თუ თქვენ გაქვთ 4-ბიტიანი მნიშვნელობა 1, 1, 1, 1, რომელიც, 301 00:14:42,430 --> 00:14:44,920 უბრალოდ უსიამოვნოა დილით ერთად დღის მეორე ნახევარში, რა 302 00:14:44,920 --> 00:14:48,369 ჯერ ეს ნომერი წარმოადგენენ ორობითი? 303 00:14:48,369 --> 00:14:49,410 OK, ჩვენ გაუადვილებს. 304 00:14:49,410 --> 00:14:53,310 რას ნიშნავს ეს ნომერი წარმოადგენს ორობითი? 305 00:14:53,310 --> 00:14:56,794 OK, ჩვენ გაუადვილოს, რა ჯერ ეს წარმოადგენს ორობითი? 306 00:14:56,794 --> 00:14:57,460 აუდიტორია: სამი. 307 00:14:57,460 --> 00:14:59,670 დავით Malan: სამი, რადგან ჩვენ პირობა column-- 308 00:14:59,670 --> 00:15:00,450 [სიცილის] 309 00:15:00,450 --> 00:15:01,350 Whew! 310 00:15:01,350 --> 00:15:03,980 ჩვენ გვქონდა პირობა სვეტი და twos სვეტი. 311 00:15:03,980 --> 00:15:07,250 ამიტომ ვარაუდობენ, რომ, მართლაც, ჩვენი [? infield?] არ იყო, 32 ბიტი, 312 00:15:07,250 --> 00:15:13,440 მაგრამ ეს იყო ორი ბიტი, ჩვენ შეგვიძლია იმედი მომხმარებლის ნომერი 0, 1, 2, 3, 313 00:15:13,440 --> 00:15:18,040 და მაშინ ჩვენ სახის უკან შესახებ 00 ერთხელ. 314 00:15:18,040 --> 00:15:19,739 ასე რომ, ეს არის ის, რაც, როგორც წესი, ხდება. 315 00:15:19,739 --> 00:15:22,780 თუ თქვენ ოდესმე მსმენია expression-- ალბათ არა, მაგრამ თუ გაქვთ 316 00:15:22,780 --> 00:15:26,500 რიცხვი overflow, სადაც თქვენ შენარჩუნება flipping ყველა თქვენი bits 317 00:15:26,500 --> 00:15:29,640 უნდა იყოს ყველაზე დიდი შესაძლო მნიშვნელობებია, და შემდეგ თქვენ out ბიტი, 318 00:15:29,640 --> 00:15:30,850 რა იქნებოდა, როგორც წესი, ხდება? 319 00:15:30,850 --> 00:15:32,280 რატომ ამბობენ, რომ 00? 320 00:15:32,280 --> 00:15:33,220 ისე, ეს არის სამი. 321 00:15:33,220 --> 00:15:34,230 როგორ შემიძლია წარმოადგენს 4? 322 00:15:34,230 --> 00:15:36,890 323 00:15:36,890 --> 00:15:38,915 როგორ შემიძლია წარმოადგენს რიგი 4 ორობითი? 324 00:15:38,915 --> 00:15:39,790 აუდიტორია: [INAUDIBLE] 325 00:15:39,790 --> 00:15:41,780 დავით Malan: One-- yeah, არ ვამბობ, 100 per se, 326 00:15:41,780 --> 00:15:44,190 იმიტომ, რომ მას არასწორი კონტექსტში, მაგრამ 1-0-0. 327 00:15:44,190 --> 00:15:48,920 ასე, რომ ნომერი, 1-0-0 მართლაც სწორი, მაგრამ თუ მხოლოდ ორი ბიტი, 328 00:15:48,920 --> 00:15:50,820 რას აკეთებდა? 329 00:15:50,820 --> 00:15:53,219 შენ შემოვიდა მეტი 00. 330 00:15:53,219 --> 00:15:54,760 და მართლაც, რომ ის, რაც მოხდებოდა. 331 00:15:54,760 --> 00:15:56,884 სინამდვილეში, თქვენ შეიძლება ვიფიქროთ ეს უფრო მოურიდებლად. 332 00:15:56,884 --> 00:15:59,350 თუ გავიხსენებთ, რა, 16 წლის წინ, მსოფლიოს 333 00:15:59,350 --> 00:16:03,380 უნდა დასრულდება, როდესაც Y2K პრობლემა მოხდა. 334 00:16:03,380 --> 00:16:04,330 რატომ იყო? 335 00:16:04,330 --> 00:16:08,170 ისე ყველაზე კომპიუტერები, გონივრულ გადაწყვეტილებას 336 00:16:08,170 --> 00:16:15,320 შენახვის ნომრები მოსწონს წელი 1975 და 1999 წელს 337 00:16:15,320 --> 00:16:19,010 მხოლოდ გამოყენებით ორი ციფრი კომპიუტერის მეხსიერებაში. 338 00:16:19,010 --> 00:16:21,950 ასე რომ, რა თქმა უნდა, თუ რა ხდება როდესაც თქვენ, რომ 2000 წელს, 339 00:16:21,950 --> 00:16:25,790 წასვლა ამ, უფრო სწორად, yeah. 340 00:16:25,790 --> 00:16:30,120 ასე, რომ თქვენ წასვლა 2000 წელს, მაგრამ თუ თქვენ მხოლოდ გამოყენებით ორი ციფრი იგი გამოიყურება 341 00:16:30,120 --> 00:16:32,660 როგორიცაა წლის 00 და ასე რომ თქვენ შემოვიდა მეტი. 342 00:16:32,660 --> 00:16:36,820 და ეს არის, რის გამოც ბევრი სისტემები საჭირო დაზუსტებას მფლობელის მხრიდან დროს. 343 00:16:36,820 --> 00:16:42,500 >> ასე, რომ განაცხადა, კომპანიები, Facebook აწარმოებს წინააღმდეგ. 344 00:16:42,500 --> 00:16:46,147 ასე რომ ერთადერთი გზა გაუმკლავდეს სიტუაცია, სიმართლე გითხრათ, არის ის, რომ გავუსწრო იგი. 345 00:16:46,147 --> 00:16:47,980 და სუფთა გზა გაუმკლავდეს ამ სიტუაციაში 346 00:16:47,980 --> 00:16:50,330 არის, რომ მოსალოდნელია, რომ ეს ასე რომ თქვენ არ უნდა მიიღოს ცვლილებების შემდეგ. 347 00:16:50,330 --> 00:16:51,970 ასე რომ, ნაცვლად 8 ბაიტი, იცით, რა? 348 00:16:51,970 --> 00:16:54,261 მე ვაპირებ, რომ მომავალზე ფიქრი აქ, მიუხედავად იმისა, რომ 349 00:16:54,261 --> 00:16:56,760 ცოტა ოპტიმისტური, რომ ჩვენ ვაპირებთ, რომ აქვს 4 მილიარდი 350 00:16:56,760 --> 00:16:58,850 და 1 მომხმარებელი ჩვენს ვებგვერდზე. 351 00:16:58,850 --> 00:17:01,790 მაგრამ მოდით უბრალოდ გამოიყენოთ 8 ბაიტი, ან 64 bits, რომელიც, ზოგადად, 352 00:17:01,790 --> 00:17:05,640 მოუწოდა დიდი რიცხვი, ძალიან ტექნიკური. 353 00:17:05,640 --> 00:17:10,280 და ეს მხოლოდ იმას ნიშნავს, თქვენ შეგიძლიათ კიდევ უფრო ციფრები თქვენი ნომერი. 354 00:17:10,280 --> 00:17:12,599 მაგრამ ეს არ არის მნიშვნელოვანი დიზაინის გადაწყვეტილება, 355 00:17:12,599 --> 00:17:16,400 იმიტომ, რომ თუ აირჩიეთ ნომერი, რომელიც აქვს ძალიან ცოტა ბიტი გამომსახველობა 356 00:17:16,400 --> 00:17:19,089 თქვენ შეიძლება რეალურად შექმნა ხარვეზის თქვენი პროგრამული უზრუნველყოფა. 357 00:17:19,089 --> 00:17:21,750 >> ყველა უფლება, მოდით გადაიტანოთ up ფოსტის და საფოსტო მისამართზე. 358 00:17:21,750 --> 00:17:26,369 ასე რომ, ელექტრონული ფოსტის, როდემდე უნდა ელექტრონული ფოსტის მისამართი უნდა იყოს? 359 00:17:26,369 --> 00:17:26,869 50. 360 00:17:26,869 --> 00:17:29,220 მე ნამდვილად არ ვიცი, მაგრამ ეს ალბათ ასე რომ, 361 00:17:29,220 --> 00:17:32,261 იმიტომ, რომ წინააღმდეგ შემთხვევაში, არავინ აპირებს წერენ, თუ იგი იღებს ძალიან დიდი ხანია, ასე 50, 362 00:17:32,261 --> 00:17:33,360 მოდით წავიდეთ ერთად, რომ ახლა. 363 00:17:33,360 --> 00:17:35,770 საფოსტო მისამართი, როდემდე უნდა იყოს ეს? 364 00:17:35,770 --> 00:17:38,325 365 00:17:38,325 --> 00:17:39,200 აუდიტორია: [INAUDIBLE] 366 00:17:39,200 --> 00:17:41,900 367 00:17:41,900 --> 00:17:43,890 >> დავით Malan: ეს არ არის უბრალოდ ZIP კოდი, თუმცა. 368 00:17:43,890 --> 00:17:45,720 საფოსტო მისამართი, გავიგე. 369 00:17:45,720 --> 00:17:50,720 ასე რომ, ეს არის როგორც 1 brattle მოედანზე, მძიმე, Cambridge Mass., მძიმე, 02138. 370 00:17:50,720 --> 00:17:53,860 და სინამდვილეში, ნება მომეცით გაიყვანოს პატარა worksheet აქ. 371 00:17:53,860 --> 00:17:56,510 ეს იგრძნობა ეს გაშვებული შესაძლებლობა. 372 00:17:56,510 --> 00:18:01,480 თუ ჩვენ 1 brattle მოედანზე, მძიმე, კემბრიჯის MA 02138, 373 00:18:01,480 --> 00:18:04,510 ვგრძნობ, ჩვენ შეგვიძლია გავაკეთოთ უკეთესი მეტი, ვიდრე უბრალოდ მისამართი. 374 00:18:04,510 --> 00:18:07,100 რატომ არ უნდა აფეთქდეს ამ ცოტა? 375 00:18:07,100 --> 00:18:08,030 რა ვარ მე მიღების დროს? 376 00:18:08,030 --> 00:18:10,970 რა უნდა ჩვენ ნაცვლად აქვს ჩვენი რიგები აქ, ალბათ? 377 00:18:10,970 --> 00:18:12,260 >> აუდიტორია: [INAUDIBLE] 378 00:18:12,260 --> 00:18:17,579 >> დავით Malan: ჰო, მოდით ეძახით street_number, 379 00:18:17,579 --> 00:18:20,620 და ტირეთი მხოლოდ საერთო გზა, რომელსაც რა ჰგავს სივრცეში, 380 00:18:20,620 --> 00:18:22,360 მაგრამ ეს არ არის, რეალურად. 381 00:18:22,360 --> 00:18:26,240 Street, და შემდეგ city-- ბოდიში? 382 00:18:26,240 --> 00:18:28,440 >> აუდიტორია: [INAUDIBLE] 383 00:18:28,440 --> 00:18:29,690 დავით Malan: ჩვენ შეგვიძლია ამის გაკეთება. 384 00:18:29,690 --> 00:18:30,702 Line ერთი, ხაზი ორი. 385 00:18:30,702 --> 00:18:32,410 რატომ არ ჩვენ გავაგრძელებთ ეს მარტივია, ახლა, 386 00:18:32,410 --> 00:18:34,840 მაგრამ ეს არის აბსოლუტურად მისაღები გადაწყვეტილება. 387 00:18:34,840 --> 00:18:38,180 და შემდეგ სახელმწიფო და მაშინ მოდით იყოს ცოტა აშშ-centric ახლა 388 00:18:38,180 --> 00:18:42,040 და მხოლოდ ამის ZIP კოდი, მხოლოდ იმიტომ, ის ყველაფერს გამოიწვიოს საინტერესო შეცდომა 389 00:18:42,040 --> 00:18:43,090 და პრობლემა აქ. 390 00:18:43,090 --> 00:18:44,655 ასე რომ, ვფიქრობ, რომ ახლა ჩვენი მისამართზე. 391 00:18:44,655 --> 00:18:47,280 ეს ცოტა უფრო შემაშფოთებელი, რომ ჩვენ ყველა ამ მეტი სფეროებში, 392 00:18:47,280 --> 00:18:49,200 მაგრამ ახლა ჩვენ შეგვიძლია tag რამ ცოტა უკეთესი. 393 00:18:49,200 --> 00:18:53,210 >> ასე რომ, ახლა ქუჩაზე ალბათ არ უნდა იყოს char, უნდა ეს? 394 00:18:53,210 --> 00:18:54,835 რა უნდა იყოს? 395 00:18:54,835 --> 00:18:55,710 აუდიტორია: [INAUDIBLE] 396 00:18:55,710 --> 00:18:57,835 დავით Malan: შესაძლოა, რამდენიმე როგორც მთელი რიცხვი კიდევ ერთხელ? 397 00:18:57,835 --> 00:19:00,170 დიდი რიცხვი? 398 00:19:00,170 --> 00:19:02,170 თქვენ, ალბათ, არ ცხოვრობს 4 მილიარდი Main Street 399 00:19:02,170 --> 00:19:03,490 ან რამე გიჟური იგრძნობა. 400 00:19:03,490 --> 00:19:06,850 ასე რომ, მთელი ალბათ ჯარიმა, მაგრამ აქვს ვინმეს 401 00:19:06,850 --> 00:19:13,880 ოდესმე ცხოვრობდა საათზე მისამართი მოსწონს 1A brattle მოედანზე, ან 1 და 1/2? 402 00:19:13,880 --> 00:19:17,030 ეს ყველაფერი არსებობს, სამწუხაროდ, მაშინაც კი, თუ თქვენ არ ცხოვრობდა, 403 00:19:17,030 --> 00:19:21,240 არსებობს ამ ანომალიების სტილის ბინა 1A, 1B, 1C. 404 00:19:21,240 --> 00:19:24,260 ასე, რომ თქვენ იცით რა, ჩვენ, ალბათ, არ უნდა წავიდეს მთელი რიცხვი, 405 00:19:24,260 --> 00:19:27,440 წინააღმდეგ შემთხვევაში, ჩვენ ვაპირებთ დასაკარგი ზოგიერთი გაყიდვების. 406 00:19:27,440 --> 00:19:29,920 >> Char სფეროში, იქნებ? 407 00:19:29,920 --> 00:19:30,870 მე არ ვიცი, რამდენი ხანი. 408 00:19:30,870 --> 00:19:33,370 ეს, ალბათ, არ იქნება რომელიც დიდი ხანია, ასე 10 ან რამე. 409 00:19:33,370 --> 00:19:34,950 არავინ აპირებს დაწერა აღარ ნომერი, იქნებ. 410 00:19:34,950 --> 00:19:37,070 მაგრამ ერთხელ, ჩვენ უნდა ალბათ უფრო მეტი აზრის, რომ. 411 00:19:37,070 --> 00:19:39,900 იქნებ google, ზოგიერთი კვლევის, მაგრამ ჩვენ წასვლა ჩვენი guts ახლა. 412 00:19:39,900 --> 00:19:44,565 ქუჩები, char, 50, მე არ ვიცი. 413 00:19:44,565 --> 00:19:46,940 რაღაც მომენტში, არავინ აპირებს დაწერა ეს კონვერტში, 414 00:19:46,940 --> 00:19:49,350 ძალიან, ასე რომ, ალბათ, ზოგიერთი ზედა საზღვრები არსებობს. 415 00:19:49,350 --> 00:19:54,200 City, იგივე, რა თქმა უნდა, ასე რომ char 50. 416 00:19:54,200 --> 00:19:59,120 >> სახელმწიფო, შეიძლება აშშ-centric ახლა. 417 00:19:59,120 --> 00:20:01,850 ასე რომ, ეს შეიძლება იყოს სიაში, ასე რომ სახის განაჩენი ზარი, სახელმწიფო. 418 00:20:01,850 --> 00:20:04,000 ეს შეიძლება იყოს როგორც ორი სიმბოლო. 419 00:20:04,000 --> 00:20:06,140 ასე რომ, რეალურად, შესაძლოა, მე ამბობდა char. 420 00:20:06,140 --> 00:20:09,420 მე, ალბათ, იმას ნიშნავს, varchar, მხოლოდ რამდენიმე ეფექტურობის, 421 00:20:09,420 --> 00:20:12,240 მაგრამ ჩვენ დავბრუნდებით რომ გადაწყვეტილება ამ მომენტში. 422 00:20:12,240 --> 00:20:16,150 შეიძლება იყოს char სიგრძე 2 სახელმწიფო. 423 00:20:16,150 --> 00:20:20,670 იმ შემთხვევაში, თუ აშშ-მათ აქვთ, როგორც MA, Massachusetts, NY, New York, NJ, New 424 00:20:20,670 --> 00:20:22,100 Jersey, და სხვ. 425 00:20:22,100 --> 00:20:23,630 ასე რომ, ეს შეიძლება იყოს დაფიქსირებული, რომ. 426 00:20:23,630 --> 00:20:25,900 DC ვაშინგტონში. 427 00:20:25,900 --> 00:20:29,915 >> მაგრამ მე ვფიქრობ, Olivier, თქვენ შემოთავაზებული სხვა მიდგომა. 428 00:20:29,915 --> 00:20:30,790 აუდიტორია: [INAUDIBLE] 429 00:20:30,790 --> 00:20:33,670 დავით Malan: ჰო, ასე რომ, ეს არის ცოტა შემაშფოთებელი აკრიფოთ, 430 00:20:33,670 --> 00:20:37,890 მაგრამ ENUM შეიძლება უფრო გრძნობა, რადგან ეს გზა, მაინც, აშშ, 431 00:20:37,890 --> 00:20:41,320 თქვენ შეიძლება ჩამოვთვალოთ, თუ tediously, მაგრამ თქვენ ამის გაკეთება მხოლოდ ერთხელ თქვენს მონაცემთა ბაზაში 432 00:20:41,320 --> 00:20:47,480 და აღარასოდეს უნდა ვიფიქროთ ეს, ყველა 50 ორსიმბოლოიანი კოდები. 433 00:20:47,480 --> 00:20:48,660 ასე რომ, მე მიყვარს ENUM. 434 00:20:48,660 --> 00:20:51,720 მოდით გამყარებაში, რომ არსებობს, იმიტომ, ეს ერთგვარი აღმასრულებელთა უფრო rigor. 435 00:20:51,720 --> 00:20:53,620 და მერე ZIP კოდი? 436 00:20:53,620 --> 00:20:55,306 მე ვფიქრობ, ენდრიუ აზრის, რომ 437 00:20:55,306 --> 00:20:56,180 აუდიტორია: [INAUDIBLE] 438 00:20:56,180 --> 00:20:57,240 დავით Malan: ჰო, ხუთი ან ცხრა. 439 00:20:57,240 --> 00:20:58,323 მოდით უბრალოდ შეინახოს იგი მარტივი. 440 00:20:58,323 --> 00:20:59,380 მხოლოდ ამის ხუთ ახლა. 441 00:20:59,380 --> 00:21:03,070 მაგრამ იქნებ მე მხოლოდ ამის რიცხვი, არა? 442 00:21:03,070 --> 00:21:08,750 შემეძლო, მაგრამ იცით რა, მე ეს შეცდომა ერთხელ, რაღაც გაგებით. 443 00:21:08,750 --> 00:21:13,110 წლების წინ, მე გადამფრენი Microsoft Outlook, რომ Gmail, 444 00:21:13,110 --> 00:21:18,640 და Outlook აქვს გზა ექსპორტს ყველა თქვენი კონტაქტები, როგორც Excel ფაილი, 445 00:21:18,640 --> 00:21:21,280 CSV ფაილი, მძიმით გამოყოფილი მნიშვნელობები ფაილი. 446 00:21:21,280 --> 00:21:23,950 და მე დაუშვა შეცდომა, მე ვფიქრობ, ორმაგი დაჭერით, 447 00:21:23,950 --> 00:21:27,380 ერთხელ მე გადმოწერილი ექსპორტი, რათა დარწმუნდით, რომ იგი ჩანდა როგორც ველოდი. 448 00:21:27,380 --> 00:21:31,320 მე უნდა მოხვდა შენახვა ან ნება ავტო შენახვა დარტყმა ან რამე. 449 00:21:31,320 --> 00:21:35,100 იმიტომ, რომ როდესაც მე მაშინ იმპორტირებული ის Gmail, ეს ყველაფერი მუშაობდა. 450 00:21:35,100 --> 00:21:39,910 მაგრამ წლების განმავლობაში, ამ დღეს, და მე ამ ხუთი, 10 წლის წინ, 451 00:21:39,910 --> 00:21:44,380 მე მაინც მოძიებაში მეგობარი, რომელსაც აქვს მისამართები, რომ გამოიყურება. 452 00:21:44,380 --> 00:21:45,700 რატომ? 453 00:21:45,700 --> 00:21:47,900 >> აუდიტორია: [INAUDIBLE] 454 00:21:47,900 --> 00:21:50,650 >> დავით Malan: დასჭირდა 0, ასევე, უფრო სწორად, ეს 455 00:21:50,650 --> 00:21:53,810 აიღო მთელი ZIP კოდი, როგორც ნომერი, და ამიტომ, 456 00:21:53,810 --> 00:21:56,590 წამყვანი 0 რაც იმას ნიშნავს, მას არ აქვს მნიშვნელობა. 457 00:21:56,590 --> 00:21:59,470 ასე რომ, 2138 როგორც ჩანს, ჩემი ZIP კოდი. 458 00:21:59,470 --> 00:22:07,100 და ეს არის, სიმართლე გითხრათ, შემაშფოთებელი Excel ფუნქცია, რომლის დროსაც მე ვფიქრობ, ჩვეულებრივ, 459 00:22:07,100 --> 00:22:10,980 მაშინაც კი, თუ ეს ნიშნავს, რომ მხოლოდ იყოს ტექსტი, Microsoft Excel 460 00:22:10,980 --> 00:22:13,780 გადაწყვეტს, ნება მომეცით იყოს სასარგებლო, და რა, მე ვხედავ მხოლოდ ნომრები. 461 00:22:13,780 --> 00:22:15,290 მოდით მკურნალობა ამ როგორც ციფრები. 462 00:22:15,290 --> 00:22:16,790 და ეს truncates წამყვანი zeros. 463 00:22:16,790 --> 00:22:19,165 >> ვფიცავ ღმერთს, ყოველ რამდენიმე თვის მოვძებნო მისამართი, 464 00:22:19,165 --> 00:22:22,300 და გარეთ ერთგვარი OCD, მე დაბრუნდეს და დაამატოთ 0, მიუხედავად იმისა, რომ მე არასოდეს 465 00:22:22,300 --> 00:22:23,700 გაუგზავნე ადამიანი წერილები ან არაფერი. 466 00:22:23,700 --> 00:22:25,510 მაგრამ მე მაინც მოძიებაში ნარჩენებისგან ეს. 467 00:22:25,510 --> 00:22:28,820 ასე რომ, ეს არის იმის თქმა, არის თუ არა ეს კარგი იდეა? 468 00:22:28,820 --> 00:22:31,610 OK, არ არის, იმიტომ, რომ ვინმეს Massachusetts, ამ სფეროში, 469 00:22:31,610 --> 00:22:33,270 აპირებს აქვს o ხელმძღვანელობით. 470 00:22:33,270 --> 00:22:38,070 მოდით წავიდეთ ერთად, როგორიცაა char, ალბათ, ხუთი. 471 00:22:38,070 --> 00:22:41,450 >> და აქ, გააცნობიეროს, რომ ჩვენ შეიძლება გამოიყენოთ ENUM და ჩვენ 472 00:22:41,450 --> 00:22:44,600 შეიძლება ჩამოვთვალოთ 10,000 შესაძლებელია საფოსტო კოდები, 473 00:22:44,600 --> 00:22:48,530 მაგრამ, რომ იგრძნობა ეს, ალბათ, გადაკვეთის ხაზი, ისევე, როგორც სარგებელი. 474 00:22:48,530 --> 00:22:51,350 თუ თქვენ გაქვთ შეყვანის რომ ბევრი მონაცემები თქვენს მონაცემთა ბაზაში 475 00:22:51,350 --> 00:22:52,940 იმისათვის, რომ დაიცვას რაღაც. 476 00:22:52,940 --> 00:22:57,400 ასე რომ char მიხვდა, შეგიძლიათ აკრიფოთ H-E-L-L-O თქვენი ZIP კოდი, 477 00:22:57,400 --> 00:22:59,180 რომელიც არ არის, ცხადია, numeric. 478 00:22:59,180 --> 00:23:01,680 ასე რომ არ არსებობს გზა, ტიპიური მონაცემთა ბაზა, 479 00:23:01,680 --> 00:23:05,561 მიუთითოთ მხოლოდ ციფრული და მხოლოდ ხუთი სიმბოლო 480 00:23:05,561 --> 00:23:07,310 ასე რომ, ჩვენ ვაპირებთ, რომ უნდა გავაკეთოთ, რომ კოდი. 481 00:23:07,310 --> 00:23:11,100 ჩვენ ვაპირებთ, რომ გავაკეთოთ, რომ PHP ან Java და რა ენაზე ჩვენ 482 00:23:11,100 --> 00:23:14,230 გამოყენებით სერვერზე აღასრულოს რომ სახის შეზღუდვა. 483 00:23:14,230 --> 00:23:14,860 >> Whoo! 484 00:23:14,860 --> 00:23:18,322 ყველა უფლება, რაიმე შეკითხვები უბრალოდ არ არის? 485 00:23:18,322 --> 00:23:19,780 მოდით, კიდევ ერთი დიზაინი გადაწყვეტილება. 486 00:23:19,780 --> 00:23:22,500 გამოდის, რომ თქვენ ასევე უნდა აირჩიოს, 487 00:23:22,500 --> 00:23:26,600 როდესაც დიზაინის SQL მონაცემთა ბაზაში, ან ტიპიური რელატიური მონაცემთა ბაზა, სადაც 488 00:23:26,600 --> 00:23:28,790 ერთხელ, რელატიური მხოლოდ იმას ნიშნავს, რიგები და სვეტები, 489 00:23:28,790 --> 00:23:35,500 ეს არის ის, თუ როგორ ორგანიზება თქვენი მონაცემები და გააცნობიეროს, რომ რა ეს იმას ნიშნავს, 490 00:23:35,500 --> 00:23:37,740 მე უკვე შეცდომაში შეყვანის in რომ, მე drawing-- ეს 491 00:23:37,740 --> 00:23:40,190 რასაც სქემის მონაცემთა ბაზის მაგიდასთან. 492 00:23:40,190 --> 00:23:42,810 ეს არის მსგავსად სპეციფიკაციები მაგიდასთან 493 00:23:42,810 --> 00:23:48,040 მაგრამ როდესაც საქმე დრო რეალურად შეინახოს მონაცემები, 494 00:23:48,040 --> 00:23:52,081 და ჩვენ ყველაფერს გავაკეთებთ ამ მხოლოდ მაგალითად აქ. 495 00:23:52,081 --> 00:23:55,080 მე ვაპირებ გახსნას Excel, რადგან Excel მომცემს რიგები და სვეტები. 496 00:23:55,080 --> 00:23:58,050 და სწორედ ის, რაც Oracle და MySQL და სხვა იარაღები მომცემს. 497 00:23:58,050 --> 00:24:02,270 ასე რომ, მე მხოლოდ აპირებს გამოიყენოს ეს განხილვის გამო. 498 00:24:02,270 --> 00:24:05,250 ნება მომეცით წავიდეთ წინ და გახსენით წარმომადგენელი დოკუმენტის აქ, 499 00:24:05,250 --> 00:24:06,310 მიუახლოვდით ცოტა. 500 00:24:06,310 --> 00:24:15,200 ასე მაგალითად, ჩვენი headers ახლა გვარი, სახელი, სქესი, ID, 501 00:24:15,200 --> 00:24:20,980 ელ, ქუჩის ნომერი, ქუჩის, whoops. 502 00:24:20,980 --> 00:24:25,710 Street, ქალაქი, სახელმწიფო, უბრალოდ შესახებ შეესაბამება ეკრანზე. 503 00:24:25,710 --> 00:24:29,080 >> ასე რომ, ეს რას ნიშნავს, რომ როდესაც შესახებ პირველი რეგისტრაციას ჩემი ნახვა, 504 00:24:29,080 --> 00:24:32,880 ეს იქნება რაღაც David, Malan, m, ვთქვათ, 1, 505 00:24:32,880 --> 00:24:42,910 malan@harvard.edu, ქუჩაზე იქნება იყოს, როგორც 1 brattle მოედანზე, Cambridge, MA, 506 00:24:42,910 --> 00:24:44,780 02138, და მაშინ სხვ. 507 00:24:44,780 --> 00:24:48,290 ასე რომ, როცა ამბობენ, რომ რელატიური მონაცემთა ბაზაში ან SQL მონაცემთა ბაზის რიგები და სვეტები, 508 00:24:48,290 --> 00:24:49,350 ვგულისხმობ ეს. 509 00:24:49,350 --> 00:24:51,900 რომ ფაქტობრივი მონაცემები ინახება რიგები და სვეტები. 510 00:24:51,900 --> 00:24:53,950 ეს არის მხოლოდ დამთხვევა, რომ ჩვენ ვსაუბრობთ, 511 00:24:53,950 --> 00:24:56,033 და მე უბრალოდ ხატვის out რიგები და სვეტები. 512 00:24:56,033 --> 00:24:58,320 ეს არის მხოლოდ schema, ძირითადი განმარტება. 513 00:24:58,320 --> 00:25:01,640 >> ასე რომ, ამ სფეროში აქ, ან ექვივალენტური, იქ, 514 00:25:01,640 --> 00:25:06,270 რომლებიც სფეროებში, რომ თქვენ ფიქრობთ მე სავარაუდოდ ძიება თუ მე პროფაილი 515 00:25:06,270 --> 00:25:09,200 და თუ მე ვარ, მონაცემთა ბაზის ადმინისტრატორი? 516 00:25:09,200 --> 00:25:12,426 მსგავსად, რა სფეროებში ვარ რეალურად აპირებს ძიება? 517 00:25:12,426 --> 00:25:13,830 >> აუდიტორია: [INAUDIBLE] 518 00:25:13,830 --> 00:25:17,690 >> დავით Malan: სახელი, yeah ასე მომწონს ის ფაქტი, that-- yeah, 519 00:25:17,690 --> 00:25:19,750 ელ შეიძლება იყოს საკმაოდ გავრცელებული. 520 00:25:19,750 --> 00:25:21,440 ბოდიში, თქვენ თქვით, სახელი. 521 00:25:21,440 --> 00:25:24,030 ასე რომ, maybe-- და ისევ, ჩვენ სახის საუბარი აბსტრაქტული. 522 00:25:24,030 --> 00:25:25,988 მე არ ვიცი, რატომ ნეტავ უნდა ეძებს სახელი, 523 00:25:25,988 --> 00:25:29,340 მაგრამ, რომ გრძნობს გონივრული, თუ თქვენ ეძებს შესახებ. 524 00:25:29,340 --> 00:25:31,170 იქნებ აცხადებს, დარწმუნებული ვარ, ID. 525 00:25:31,170 --> 00:25:34,100 526 00:25:34,100 --> 00:25:36,160 >> და ეს მოლიპულ ფერდობზე, რადგან შემეძლო 527 00:25:36,160 --> 00:25:38,890 contrive სცენარი, სადაც იქნებ ჩემი ბოსი მთხოვა, 528 00:25:38,890 --> 00:25:40,417 რამდენი კაცი გვაქვს ჩვენს საიტზე? 529 00:25:40,417 --> 00:25:42,000 რამდენი ქალი არ გვაქვს ჩვენი საიტი? 530 00:25:42,000 --> 00:25:45,210 ასე რომ, იმ ეტაპზე, დაგვჭირდება ძებნის გენდერული სფეროში, ძალიან, 531 00:25:45,210 --> 00:25:45,940 და სხვა არაფერი. 532 00:25:45,940 --> 00:25:47,350 ასე რომ, არსებობს ვაჭრობის აქ. 533 00:25:47,350 --> 00:25:49,180 ისევ და ისევ, არ არსებობს სწორი პასუხი, მაგრამ არ 534 00:25:49,180 --> 00:25:53,760 არის ფუნქცია ყველაზე SQL მონაცემთა ბაზებთან ცნობილია, როგორც ინდექსირებას, რომლის 535 00:25:53,760 --> 00:25:56,100 თქვენ, დიზაინერი, მონაცემთა ბაზის ადმინისტრატორი, 536 00:25:56,100 --> 00:26:01,730 უნდა გადაწყვიტოს, წინასწარ რომელიც სფეროებში მონაცემთა ბაზაში უნდა ოპტიმიზაცია 537 00:26:01,730 --> 00:26:02,980 ძიება წლის. 538 00:26:02,980 --> 00:26:07,620 >> თქვენ შეიძლება ძალიან გულუბრყვილოდ ამბობენ, ოპტიმიზაცია ეს, ოპტიმიზაცია, რომ ოპტიმიზაცია ეს, 539 00:26:07,620 --> 00:26:10,300 ოპტიმიზაცია და ეს, და მონაცემთა ბაზის 540 00:26:10,300 --> 00:26:14,882 დაკავდით ჯადოსნური რამ ქვეშ hood, და რაღაც ისე 541 00:26:14,882 --> 00:26:17,090 რომ მომავალი დრო თქვენ ძიება ნებისმიერ ამ სფეროებში, 542 00:26:17,090 --> 00:26:18,400 ეს, ფაქტობრივად, უფრო სწრაფად. 543 00:26:18,400 --> 00:26:19,110 ეს არის შესაძლებელი. 544 00:26:19,110 --> 00:26:20,530 ეს არ გააუქმებს თავად გარეთ. 545 00:26:20,530 --> 00:26:22,500 მაგრამ იქ უნდა იყოს გადახდილი ფასი. 546 00:26:22,500 --> 00:26:27,220 >> თუ თქვენ გულუბრყვილოდ, ან ზედმეტად ენთუზიაზმით ვთქვათ, ინდექსი ყველა ამ სფეროში, 547 00:26:27,220 --> 00:26:29,810 ასე ვთქვათ, მათ ყველა ეფექტურად საძიებო, 548 00:26:29,810 --> 00:26:31,625 რა ფასი თქვენ ალბათ გადამხდელი? 549 00:26:31,625 --> 00:26:32,500 აუდიტორია: [INAUDIBLE] 550 00:26:32,500 --> 00:26:33,090 დავით Malan: შესრულებით. 551 00:26:33,090 --> 00:26:33,798 რას გულისხმობთ? 552 00:26:33,798 --> 00:26:37,380 ისე შესრულება, მაინც, კონტექსტში მე განხილვისას, ახლა უკეთესია. 553 00:26:37,380 --> 00:26:38,830 ეს არის ის, განმარტება ინდექსირებას. 554 00:26:38,830 --> 00:26:41,180 ეს გახდის ძიებები. 555 00:26:41,180 --> 00:26:43,366 ასე რომ, დრო მცირდება, ასე ვთქვათ. 556 00:26:43,366 --> 00:26:44,240 აუდიტორია: [INAUDIBLE] 557 00:26:44,240 --> 00:26:45,031 დავით Malan: ფართი. 558 00:26:45,031 --> 00:26:46,520 ასე რომ კიდევ ერთხელ, ეს არის საერთო სავაჭრო. 559 00:26:46,520 --> 00:26:50,820 შემიძლია დააჩქაროს თქვენი ძიება, მაგრამ ეს აპირებს დაგიჯდებათ მეტი bytes სივრცეში. 560 00:26:50,820 --> 00:26:51,610 რატომ? 561 00:26:51,610 --> 00:26:55,230 ისე, ძირითადად, თუ ჩვენ გვაქვს არცერთი ეს წითელი ვარსკვლავი, არც ამ მაჩვენებლებით, 562 00:26:55,230 --> 00:26:58,797 როგორც მე ვამბობ, როგორ ფიქრობთ, ძიება სახელის ამ მონაცემთა ბაზაში? 563 00:26:58,797 --> 00:27:00,630 მოდით დავხატოთ ჩვენი ყურადღება ამ მაგალითს. 564 00:27:00,630 --> 00:27:06,300 თუ ჩვენ გვაქვს დავით და სკალი და Kareem და Arwa და სხვები ამ რიგები, 565 00:27:06,300 --> 00:27:06,910 მაგალითად. 566 00:27:06,910 --> 00:27:08,390 >> მოდით გავაკეთოთ ზუსტად რომ. 567 00:27:08,390 --> 00:27:13,990 Scully არის აქ, და შემდეგ ჩვენ Kareem და Arwa, 568 00:27:13,990 --> 00:27:18,390 და ყველას, თუ არ გაქვთ ინდექსი განისაზღვრება, ასე ვთქვათ, 569 00:27:18,390 --> 00:27:20,160 საუკეთესო შეგიძლიათ გააკეთოთ ხაზოვანი ძებნა. 570 00:27:20,160 --> 00:27:23,470 თუ თქვენ მოძებნოთ Arwa, ჩვენ არ ვართ იქნება შეუძლია ხტომა უფლება მისი 571 00:27:23,470 --> 00:27:24,140 სწრაფად. 572 00:27:24,140 --> 00:27:26,556 ჩვენ ვაპირებთ, რომ დაიწყოს ზედა და წავიდეთ ყველა გზა ბოლოში, 573 00:27:26,556 --> 00:27:28,600 არ არის განსხვავებით ჩვენი ორიგინალური მაიკ სმიტი მაგალითად. 574 00:27:28,600 --> 00:27:33,470 >> მაგრამ, თუ მე ვიტყვი, hey, მონაცემთა ბაზა, ინდექსი სახელი სფეროში, 575 00:27:33,470 --> 00:27:37,000 შემდეგ ის აპირებს, რომ რამე fancier და მხარდაჭერა რაღაც 576 00:27:37,000 --> 00:27:38,130 ორობითი ძებნა. 577 00:27:38,130 --> 00:27:39,820 ეს, ალბათ, არ ორობითი ძებნა თავისთავად. 578 00:27:39,820 --> 00:27:42,810 მონაცემთა ბაზების ტენდენცია გამოიყენოთ სხვა მონაცემები სტრუქტურა მოუწოდა ბ ხეები, 579 00:27:42,810 --> 00:27:46,540 არ უნდა აგვერიოს ბინარული ხეები, რომ მხოლოდ რათა ის უფრო სწრაფად ძიება 580 00:27:46,540 --> 00:27:48,500 რაღაც ლოგარითმული ბუნებაში. 581 00:27:48,500 --> 00:27:53,510 მაგრამ ფასი იხდით დაამყარონ, რომ ფუნქცია, რომ მონაცემები სტრუქტურა მეხსიერება, 582 00:27:53,510 --> 00:27:54,570 უფრო bytes. 583 00:27:54,570 --> 00:27:57,170 ასე რომ, ეს შესაძლოა გარკვეული მბ, ზოგიერთი გიგაბაიტი, ვინ იცის? 584 00:27:57,170 --> 00:27:58,410 ეს დამოკიდებულია მონაცემები. 585 00:27:58,410 --> 00:28:02,640 >> ასე რომ, რაღაც მომენტში, თქვენ უნდა გადაწყვიტოს, ეს, ალბათ, არ არის საერთო საქმე. 586 00:28:02,640 --> 00:28:06,000 ასე რომ, რა ფაქტობრივი საერთო შემთხვევაში, თუ თქვენ ნამდვილად უნდა აირჩიოს, 587 00:28:06,000 --> 00:28:10,080 რა შეიძლება თქვენი საყვარელი სფეროებში იყოს? 588 00:28:10,080 --> 00:28:10,580 ელ. 589 00:28:10,580 --> 00:28:14,400 და მე მინდა ელ რადგან ფოსტის გაგზავნა, თეორიულად, უნდა იყოს უნიკალური. 590 00:28:14,400 --> 00:28:17,650 ასე რომ, როგორც წესი, როდესაც თქვენ იცით, წინასწარ, რომ თქვენი ერთ-ერთი სფეროებში 591 00:28:17,650 --> 00:28:20,277 არის ან იქნება უნიკალური, რომ tends უნდა იყოს კარგი მოედანი 592 00:28:20,277 --> 00:28:22,860 ძებნის, იმიტომ, რომ გზა, როდესაც თქვენ მოძებნოთ რამე, 593 00:28:22,860 --> 00:28:26,194 თქვენ აპირებს მიიღოს უკან ერთი ან ნულის პასუხები და შემდეგ თქვენ გაკეთდეს. 594 00:28:26,194 --> 00:28:28,110 თქვენ არ უნდა შეინარჩუნოს ეძებს კიდევ სხვები. 595 00:28:28,110 --> 00:28:31,992 >> ასე რომ, ამ შემთხვევაში აქ, ელექტრონული ფოსტის, ისე, სანამ თქვენ არ შეგიძლიათ რეგისტრაცია ორჯერ 596 00:28:31,992 --> 00:28:33,450 იგივე ელ, არის კარგი ერთი. 597 00:28:33,450 --> 00:28:36,710 ID განმარტება, რომ კომპიუტერულ მეცნიერებათა მსოფლიოში, 598 00:28:36,710 --> 00:28:39,610 თუ ვსაუბრობთ ID, რომ უკეთესი იყოს უნიკალური. 599 00:28:39,610 --> 00:28:42,970 ეს არის ერთგვარი კონტექსტში პირადობის მოწმობის ან იდენტიფიკატორი. 600 00:28:42,970 --> 00:28:46,440 და დანარჩენი ეს შეიძლება იყოს, მოდით მოვუწოდებთ მათ ლამაზი haves, 601 00:28:46,440 --> 00:28:47,860 მაგრამ ნამდვილად არ არის საჭირო. 602 00:28:47,860 --> 00:28:49,976 >> ასე რომ, მონაცემთა ბაზა, თქვენ დააკონკრეტა ინდექსები, 603 00:28:49,976 --> 00:28:51,350 მაგრამ თქვენ შეიძლება იყოს კიდევ უფრო ზუსტი. 604 00:28:51,350 --> 00:28:56,060 შეიძლება ითქვას, hey, მონაცემთა ბაზა, დარწმუნდით რომ ყოველ ID ამ მაგიდასთან არის უნიკალური. 605 00:28:56,060 --> 00:28:59,330 არ მიშვებენ პროგრამისტი შემთხვევით მა დუბლიკატი ელ 606 00:28:59,330 --> 00:29:00,740 ან დუბლიკატი ID ნომერი. 607 00:29:00,740 --> 00:29:03,140 ასე ჰგავს enums დაგვიცავს ანალოგიურად, 608 00:29:03,140 --> 00:29:04,881 შეიძლება ჰქონდეს იმ ქვედა დონის თავდაცვა. 609 00:29:04,881 --> 00:29:07,130 ასე რომ, მონაცემთა ბაზის დიზაინი, გარკვეული აზრით, არის ერთგვარი გართობა, 610 00:29:07,130 --> 00:29:08,380 იმიტომ, რომ თქვენ ამის გაკეთება დაცვას. 611 00:29:08,380 --> 00:29:11,460 თქვენ ერთგვარი ვივარაუდოთ, რომ თქვენ მუშაობა საშინელი, საშინელი პროგრამისტები 612 00:29:11,460 --> 00:29:15,550 და გსურთ დააყენა, როგორც ბევრი თავდაცვითი როგორც თქვენ შეგიძლიათ დაიცავს თქვენს მონაცემებს, 613 00:29:15,550 --> 00:29:18,940 მაგრამ ამავე დროს გსურთ დავეხმაროთ მათ შეასრულოს უკეთესი 614 00:29:18,940 --> 00:29:21,386 არჩევით რომელიც სფეროებში ოპტიმიზაცია. 615 00:29:21,386 --> 00:29:24,260 მაგრამ თქვენ ვერ აუცილებლად ამის გაკეთება ვაკუუმი, როგორც ჩვენ სახის აქ ვართ. 616 00:29:24,260 --> 00:29:26,480 თქვენ უნდა იცოდეს, რა არის იმ საერთო საქმეებზე. 617 00:29:26,480 --> 00:29:29,397 თუ დეველოპერები განხორციელების მისამართი წიგნი, 618 00:29:29,397 --> 00:29:32,230 თქვენ შეიძლება ძალიან კარგად გსურთ შეძლებს ძებნის თითქმის ყველა სფეროში, 619 00:29:32,230 --> 00:29:33,830 მხოლოდ ბუნების განაცხადი. 620 00:29:33,830 --> 00:29:37,910 იქნებ დახარჯავს რომ დამატებითი ფართი. 621 00:29:37,910 --> 00:29:39,090 >> უფლება, ნებისმიერი კითხვები? 622 00:29:39,090 --> 00:29:41,820 623 00:29:41,820 --> 00:29:42,486 ჰო. 624 00:29:42,486 --> 00:29:43,470 >> აუდიტორია: [INAUDIBLE] 625 00:29:43,470 --> 00:29:44,404 >> დავით Malan: No. 626 00:29:44,404 --> 00:29:45,279 >> აუდიტორია: [INAUDIBLE] 627 00:29:45,279 --> 00:29:47,840 628 00:29:47,840 --> 00:29:48,826 >> დავით Malan: OK. 629 00:29:48,826 --> 00:29:49,701 >> აუდიტორია: [INAUDIBLE] 630 00:29:49,701 --> 00:29:52,420 631 00:29:52,420 --> 00:29:54,850 >> დავით Malan: Oh, ასე რომ, ჩვენ ვსაუბრობთ გზა 632 00:29:54,850 --> 00:29:57,940 ახლა, რომ მთლიანად ენის აგნოსტიკი. 633 00:29:57,940 --> 00:30:02,370 ასე რომ, ჩვენ ვსაუბრობთ ახლა შესახებ რელაციური მონაცემთა ბაზები, უფრო ზოგადად, 634 00:30:02,370 --> 00:30:04,760 ან SQL მონაცემთა ბაზებთან უფრო ზოგადად. 635 00:30:04,760 --> 00:30:06,870 >> აუდიტორია: [INAUDIBLE] 636 00:30:06,870 --> 00:30:10,030 >> დავით Malan: უკეთესი სიტყვა გამოიყენოს ეს არის, შეიძლება გამოყენებულ იქნას ნებისმიერ ენაზე. 637 00:30:10,030 --> 00:30:15,280 ასე რომ, შემიძლია წერა JavaScript კოდი, C კოდი, C ++, Java კოდი, Ruby კოდი, 638 00:30:15,280 --> 00:30:19,010 ყველაფერი, რაც გაიგო, რომ მონაცემთა ბაზაში და შეასრულოს შეკითხვებს. 639 00:30:19,010 --> 00:30:22,310 ფაქტია, რომ ეს არ არის ცუდი segue მაგალითის შეკითხვაზე. 640 00:30:22,310 --> 00:30:25,720 ისევ და ისევ, ჩვენ არ ვაპირებთ წასვლას Java და C ++ ან რომ აღარ, 641 00:30:25,720 --> 00:30:29,420 მაგრამ SQL, ენა, რომელიც მე შენარჩუნება გულისხმობდა, სტრუქტურირებული შეკითხვის ენა, 642 00:30:29,420 --> 00:30:32,790 ეს თავისთავად არის პროგრამირების ენა, მაგრამ ეს იმას ნიშნავდა, რომ უნდა იქნეს გამოყენებული, არ 643 00:30:32,790 --> 00:30:37,330 სიურპრიზი, სტრუქტურირებული შეკითხვის შეკითხვებს. 644 00:30:37,330 --> 00:30:38,660 >> რომ მე ვგულისხმობ ამ. 645 00:30:38,660 --> 00:30:41,190 გზა თქვენ აირჩიოთ მონაცემთა საწყისი MySQL მონაცემთა ბაზაში 646 00:30:41,190 --> 00:30:49,330 არის ფაქტიურად ჩაწერეთ თქვენი პროგრამა რაღაც აირჩიეთ ვარსკვლავი მომხმარებლებს. 647 00:30:49,330 --> 00:30:52,200 მე თუ ვთქვათ, რომ ეს მაგიდა, ამიერიდან ეწოდება მომხმარებლებს. 648 00:30:52,200 --> 00:30:54,860 მე ვერ ვუწოდებ არაფერი გვინდა, მაგრამ, რომ ასეთი სახის აზრი. 649 00:30:54,860 --> 00:30:57,240 ასე რომ, აირჩიეთ არის ძალიან საერთო verb, თუ 650 00:30:57,240 --> 00:30:59,290 იქნება, SQL, რომ ფაქტიურად აკეთებს, რომ. 651 00:30:59,290 --> 00:31:02,730 რას ფიქრობთ ვარსკვლავი ნიშნავს ამ კონტექსტში? 652 00:31:02,730 --> 00:31:04,410 >> აუდიტორია: [INAUDIBLE] 653 00:31:04,410 --> 00:31:05,380 >> დავით Malan: მე ბოდიში? 654 00:31:05,380 --> 00:31:06,300 >> აუდიტორია: [INAUDIBLE] 655 00:31:06,300 --> 00:31:09,580 >> დავით Malan: არ არის საჭირო, ეს არის უფრო ინკლუზიური ვიდრე ის, რომ რეალურად. 656 00:31:09,580 --> 00:31:11,700 ეს ველური ბარათი ხასიათი. 657 00:31:11,700 --> 00:31:14,740 ვარსკვლავი თითქმის ყოველთვის არაფერს ნიშნავს, ასე რომ, ეს იმას ნიშნავს, რომ ამ შემთხვევაში, 658 00:31:14,740 --> 00:31:16,510 შეარჩიეთ ყველაფერი ბაზიდან. 659 00:31:16,510 --> 00:31:20,730 ასე რომ, როცა ამბობენ, რომ ეს, ვგულისხმობ მომეცი უკან ყოველი სვეტი 660 00:31:20,730 --> 00:31:22,440 ჩემი მაგიდა სახელწოდებით მომხმარებლებს. 661 00:31:22,440 --> 00:31:24,730 ასე რომ მომეცი შედეგი კომპლექტი, როგორც მას უწოდებენ. 662 00:31:24,730 --> 00:31:28,210 სხვა სიტყვებით, მომეცი ასლი ცხრილების, არის ის, რაც მე მიღების დროს. 663 00:31:28,210 --> 00:31:34,890 >> მაგრამ თუ მე ვუთხარი აირჩიეთ ვარსკვლავი მომხმარებლები სადაც ID უდრის 1, რამდენად დიდი უნდა 664 00:31:34,890 --> 00:31:36,640 ჩემი შედეგი მითითებული იქნება შემდეგ? 665 00:31:36,640 --> 00:31:41,680 ან equivalently, რამდენი რიგები უნდა მე გადაეცემა უკან ბაზიდან? 666 00:31:41,680 --> 00:31:45,860 ალბათ, მხოლოდ ერთი, თუ მე მაქვს ნამდვილად მკურნალობა ID უნიკალური იდენტიფიკატორი, 667 00:31:45,860 --> 00:31:50,710 და თუ დავით აქვს, რომ უნიკალური ID, I უნდა დავუბრუნდეთ ერთი და მხოლოდ ერთი row 668 00:31:50,710 --> 00:31:53,220 შეიცავს ყველა დავითის ინფორმაცია. 669 00:31:53,220 --> 00:31:56,390 თუ მე ვუთხარი ამ, სადაც ID უდრის 99, მე უნდა დავუბრუნდეთ, 670 00:31:56,390 --> 00:32:00,320 ამ კონტექსტში, ნულოვანი რიგები, მინიმუმ მომენტში. 671 00:32:00,320 --> 00:32:03,620 >> თუმცა, მე ნამდვილად არ მაინტერესებს, ყველა ინფორმაციას, 672 00:32:03,620 --> 00:32:06,970 მე ვერ, უბრალოდ ამბობენ, სადაც ამჯამად დავით ცხოვრობს? 673 00:32:06,970 --> 00:32:10,860 აირჩიეთ zip კოდი წევრებს, სადაც ID არის 1. 674 00:32:10,860 --> 00:32:15,820 ეს შეარჩევს ჩემთვის მხოლოდ დავითის zip კოდი და არა მთლიანად, რომ ზედიზედ. 675 00:32:15,820 --> 00:32:19,541 რატომ შეიძლება გავაკეთო ამ ნაცვლად ვარსკვლავი შეკითხვაზე, ველური ბარათი? 676 00:32:19,541 --> 00:32:21,950 >> აუდიტორია: [INAUDIBLE] 677 00:32:21,950 --> 00:32:24,590 >> დავით Malan: ჰო, მე შეიძლება მხოლოდ სჭირდება. 678 00:32:24,590 --> 00:32:26,350 ასე რომ, შესრულება კვლავ პასუხი აქ. 679 00:32:26,350 --> 00:32:28,540 რატომ ითხოვენ მეტი ინფორმაცია, ვიდრე გჭირდებათ, 680 00:32:28,540 --> 00:32:32,020 იმიტომ, რომ მაშინაც კი, თუ ეს ყველა უფლება ერთად, თქვენ კვლავ უნდა ასლი, რომ მონაცემები, 681 00:32:32,020 --> 00:32:35,560 როგორც ჩანს, მონაცემთა ბაზიდან თქვენი პროგრამა რატომღაც, 682 00:32:35,560 --> 00:32:38,490 და ეს მხოლოდ სულელური, თუ თქვენ მხოლოდ უნდა ხუთ ციფრები, 683 00:32:38,490 --> 00:32:40,340 არა მთლიანად საქართველოს row. 684 00:32:40,340 --> 00:32:42,180 >> ასე რომ, მე ჩადეთ მომხმარებელი? 685 00:32:42,180 --> 00:32:44,780 დავუშვათ, რომ მომხმარებელს აქვს მხოლოდ რეგისტრირებული პირველად. 686 00:32:44,780 --> 00:32:46,560 სინტაქსი, როგორც წესი, ასე გამოიყურება. 687 00:32:46,560 --> 00:32:52,700 ჩადეთ წევრებს, და მაშინ ჩვენ ვიტყოდით, ღირებულებები, 688 00:32:52,700 --> 00:33:00,150 და მაშინ ჩვენ ვიტყოდით, ფასეულობები ისევე, როგორც, ვთქვათ, Lauren Scully, 689 00:33:00,150 --> 00:33:02,380 ჩვენი videographer უფლება აქ. 690 00:33:02,380 --> 00:33:04,390 და მომდევნო ველი სქესის. 691 00:33:04,390 --> 00:33:08,020 ასე რომ, ჩვენ ვიტყვით, ციტირებით unquote "ვ", მაშინ ჩვენ გვაქვს ID 692 00:33:08,020 --> 00:33:12,250 და მე ვაპირებ ვთქვა, მოდით ვიტყვი, რომ ის არ არის, ფაქტობრივად, აქ, 693 00:33:12,250 --> 00:33:14,380 ასე რომ, ჩვენ გადახვევა ამბავი. 694 00:33:14,380 --> 00:33:16,530 ასე რომ 2 იქნება მისი პირადობის მოწმობა. 695 00:33:16,530 --> 00:33:19,130 ხოლო შემდეგ მომდევნო სფეროში აქ არის მისი ელ. 696 00:33:19,130 --> 00:33:22,140 ასე რომ, ეს იქნება, როგორც Lauren Scully და ა.შ., 697 00:33:22,140 --> 00:33:24,360 და ჩვენ უბრალოდ dot dot dot ის დაშორებით აქ. 698 00:33:24,360 --> 00:33:26,890 ახლა კი კიდევ ცოტა tedious, მაგრამ ჩანართით შეკითხვაზე 699 00:33:26,890 --> 00:33:28,310 საბოლოოდ ჰგავს, რომ. 700 00:33:28,310 --> 00:33:30,970 >> თუ მინდა, რომ თავი დაეღწია Scully, uh-oh, მოდით მოეხსნა 701 00:33:30,970 --> 00:33:37,420 მას, იგი წაშლის და მისი ანგარიში, წაშლა წევრებს, სადაც ID უდრის 2, 702 00:33:37,420 --> 00:33:38,500 დავაღწიოთ Scully. 703 00:33:38,500 --> 00:33:48,050 და შემიძლია ვთქვა, განახლება წევრებს შეიქმნა, ვთქვათ, რა შეიძლება ჩვენ შეიცვლება? 704 00:33:48,050 --> 00:33:49,430 დავუშვათ, რომ იგი მოძრაობს. 705 00:33:49,430 --> 00:33:53,730 Set zip უდრის 021-- nope, ეს არის ის, მისი ამჟამინდელი zip. 706 00:33:53,730 --> 00:33:54,487 90210. 707 00:33:54,487 --> 00:33:56,320 ერთადერთი ZIP კოდი მე ვიცი, მსოფლიოში. 708 00:33:56,320 --> 00:33:59,002 ასე, რომ შეიცვალოს მისი zip code-- ფაქტობრივად, 709 00:33:59,002 --> 00:34:00,460 რომ არ შეიცვლება მისი საფოსტო კოდი. 710 00:34:00,460 --> 00:34:02,170 >> რა მე მხოლოდ ამის გაკეთება? 711 00:34:02,170 --> 00:34:04,292 მიუხედავად იმისა, რომ სინტაქსი, ალბათ, ახალი. 712 00:34:04,292 --> 00:34:05,302 >> აუდიტორია: [INAUDIBLE] 713 00:34:05,302 --> 00:34:08,010 დავით Malan: ჰო, მე გადავიდა ყველას to Beverly Hills, California. 714 00:34:08,010 --> 00:34:11,920 ასე რომ, მე რეალურად უნდა ამბობენ, სადაც ID უტოლდება 2. 715 00:34:11,920 --> 00:34:12,820 და ასე შემდეგ. 716 00:34:12,820 --> 00:34:15,290 ასე რომ, SQL არის ყველაფერი ეს სახის მითითებებს. 717 00:34:15,290 --> 00:34:20,260 აირჩიეთ, ჩადეთ, წაშლა, განახლება, ამ predicates ბოლოს 718 00:34:20,260 --> 00:34:22,139 ეს სადაც პუნქტები, ასე ვთქვათ. 719 00:34:22,139 --> 00:34:25,170 და იქ გაცილებით მეტი შეგიძლიათ , მაგრამ ეს ნამდვილად boils ქვემოთ 720 00:34:25,170 --> 00:34:29,750 უბრალოდ, თუ arcanely, გამოხატავს რა გსურთ მონაცემთა ბაზაში უნდა გააკეთოს. 721 00:34:29,750 --> 00:34:31,580 >> და შემდეგ მონაცემთა ბაზაში გაერკვნენ, როდესაც 722 00:34:31,580 --> 00:34:35,630 თქვენ ჩადეთ Lauren Scully შევიდა მონაცემთა ბაზა, სადაც დააყენოს მისი მეხსიერება 723 00:34:35,630 --> 00:34:38,230 ასე რომ ჩვენ შეგვიძლია ძალიან სწრაფად მისი საფუძველზე მისი ელექტრონული ფოსტის მისამართი 724 00:34:38,230 --> 00:34:42,610 და ეფუძნება მის ID ნომერი ან მოსწონს. 725 00:34:42,610 --> 00:34:43,391 ჰო, დენ. 726 00:34:43,391 --> 00:34:44,266 აუდიტორია: [INAUDIBLE] 727 00:34:44,266 --> 00:34:46,364 728 00:34:46,364 --> 00:34:47,780 დავით Malan: კარგი კითხვა. 729 00:34:47,780 --> 00:34:50,370 იქნება ეს სკრიპტები შეიცვალოს Microsoft Access to Oracle 730 00:34:50,370 --> 00:34:52,290 to MySQL, რომ PostgreSQL? 731 00:34:52,290 --> 00:34:53,790 მოკლე პასუხი არის ეს დამოკიდებულია. 732 00:34:53,790 --> 00:34:58,697 თეორიულად, არსებობს ძალიან მნიშვნელოვანი საერთო ქვესიმრავლე SQL 733 00:34:58,697 --> 00:35:00,780 რომ საერთო მთელი ამ შესრულება. 734 00:35:00,780 --> 00:35:03,340 თუმცა, სხვადასხვა მწარმოებლები აქვს დამატებული თვისებები 735 00:35:03,340 --> 00:35:07,120 მათი მონაცემთა ბაზის გავაკეთოთ გარკვეული რამ სცილდება ამ თვისებების, 736 00:35:07,120 --> 00:35:08,720 რომელიც შესაძლოა, ფაქტობრივად, შესვენება. 737 00:35:08,720 --> 00:35:11,210 >> ასე რომ გზა დეველოპერები ვალუტა წინააღმდეგ, 738 00:35:11,210 --> 00:35:14,350 ის არის, რომ, ვიდრე წერილობით ნედლეული SQL კოდი, როგორც მე წერა აქ, 739 00:35:14,350 --> 00:35:19,460 მათ ნაცვლად გამოიყენოთ ბიბლიოთეკა, საერთო ბიბლიოთეკა, რომ თავად 740 00:35:19,460 --> 00:35:23,650 არის ერთგვარი მაღალი დონის და რეზიუმეები მოშორებით, რომელიც პროდუქტის თქვენ იყენებთ. 741 00:35:23,650 --> 00:35:25,710 და ეს გაძლევთ ფუნქციები და პროცედურები 742 00:35:25,710 --> 00:35:28,810 მოვუწოდებთ ასე რომ თქვენ არასოდეს რეალურად წერენ ნედლეული SQL. 743 00:35:28,810 --> 00:35:32,609 >> თეორიულად, მაშინ, თქვენ შეგიძლიათ შეცვალოთ პროდუქციის Oracle to Microsoft 744 00:35:32,609 --> 00:35:34,650 ან პირიქით, ან არაფერი სხვაგან, და თქვენ ფაქტიურად 745 00:35:34,650 --> 00:35:36,920 არაფერი შეიცვლება თქვენი კოდი. 746 00:35:36,920 --> 00:35:40,180 რეალობა, თუმცა, ის არის, რომ ზოგჯერ დათმობს თვისებები შედეგად. 747 00:35:40,180 --> 00:35:43,860 თქვენ მიერ არჩეული პროდუქტი, რადგან ის მივიღე ამ დამატებითი ღირებულების თვისებები, 748 00:35:43,860 --> 00:35:46,610 და თქვენ მხოლოდ ახლა არა გამოყენებით მათ შეგნებულად. 749 00:35:46,610 --> 00:35:51,630 >> და ამბობენ, ყველაზე კომპანიები, როგორც წესი, არასოდეს გადაადგილება დაშორებით მათ მონაცემთა ბაზაში. 750 00:35:51,630 --> 00:35:54,002 ასე რომ, ხოლო ეს არის ლამაზი აქვს ფუნქცია, რეალობა 751 00:35:54,002 --> 00:35:55,960 არის, თუ თქვენ განაახლეს თქვენს მონაცემთა ბაზაში, თქვენ 752 00:35:55,960 --> 00:35:59,890 ალბათ მიღების მტევნების სხვა ცვლილებებს მაინც, რომ თქვენ ამის გაკეთება არ არის აუცილებელი 753 00:35:59,890 --> 00:36:01,360 უნდა განისაზღვროს, რომ. 754 00:36:01,360 --> 00:36:03,720 ასე რომ, ეს, ალბათ, მეტი საინჟინრო პრობლემა, 755 00:36:03,720 --> 00:36:05,670 მაგრამ ეს ნამდვილად დამოკიდებულია კონტექსტში. 756 00:36:05,670 --> 00:36:09,960 თუმცა თეორიულად, SQL გაუზიარეს მთელი ამ სხვადასხვა პროდუქცია. 757 00:36:09,960 --> 00:36:11,560 ძალიან კარგი კითხვა. 758 00:36:11,560 --> 00:36:12,272 ჰო. 759 00:36:12,272 --> 00:36:13,147 >> აუდიტორია: [INAUDIBLE] 760 00:36:13,147 --> 00:36:17,820 761 00:36:17,820 --> 00:36:21,480 >> დავით Malan: ჰო, ასე რომ, თქვენ შეიძლება ვიფიქროთ, მონაცემთა ბაზა 762 00:36:21,480 --> 00:36:25,020 მხოლოდ სერვერზე, ბოლოს დღეს, და შიგნით რომ სერვერზე 763 00:36:25,020 --> 00:36:28,670 არის მთელი bunch of მაგიდები, რიგები და სვეტები. 764 00:36:28,670 --> 00:36:33,410 და როდესაც თქვენ შეკითხვის მოსწონს ეს თქვენი პროგრამა, თქვენი ნახვა, 765 00:36:33,410 --> 00:36:39,340 დაწერილი Java, Ruby, Python, რასაც, სერვერზე ამ ბრძანების მიღების 766 00:36:39,340 --> 00:36:41,660 და წერით ეს ფაქტიურად იგივე გზა 767 00:36:41,660 --> 00:36:43,660 ჩვენ განვიხილეთ ადრე ერთად ინტერპრეტაცია ენები, 768 00:36:43,660 --> 00:36:47,333 და შემდეგ ასრულებენ გარკვეული მოქმედება ნულოვანი ან მეტი რიგები ნულოვანი ან მეტი მაგიდები. 769 00:36:47,333 --> 00:36:48,208 აუდიტორია: [INAUDIBLE] 770 00:36:48,208 --> 00:36:53,540 771 00:36:53,540 --> 00:36:55,070 >> დავით Malan: ზუსტად, ზუსტად. 772 00:36:55,070 --> 00:36:58,450 ასე რომ, pseudocode რაღაც მინდა, რომ შეიძლება იყოს ეს. 773 00:36:58,450 --> 00:37:02,450 თქვენს PHP ფაილი ან თქვენი Python ფაილი ან თქვენი Java ფაილი, 774 00:37:02,450 --> 00:37:09,210 თქვენ უნდა pseudocode კოდი, ან Scratch მსგავსი ბლოკები, თუ მომხმარებლის სტუმრობს 775 00:37:09,210 --> 00:37:19,870 acme.com/register~~V პირველად, შემდეგ ჩადეთ შევიდა წევრებს და სხვ. 776 00:37:19,870 --> 00:37:22,619 და ჩვენ თარგმნა ეს უფრო კონკრეტული კოდი ბოლომდე. 777 00:37:22,619 --> 00:37:24,660 მაგრამ, რეალურად, ჩვენ გვაქვს ყველა შენობა ბლოკები აქ, 778 00:37:24,660 --> 00:37:27,680 მიუხედავად იმისა, რომ ჩვენ skipping ზოგიერთი განხორციელების ნაბიჯები. 779 00:37:27,680 --> 00:37:31,560 >> ნება მომეცით, ბრალია, რაც ჩვენ შესანიშნავად გააკეთა მხოლოდ ერთი წუთით წინ. 780 00:37:31,560 --> 00:37:36,470 შევქმენით საკმაოდ სრული ცხრილი მომხმარებლებს. 781 00:37:36,470 --> 00:37:38,920 უნდა აღინიშნოს, რომ ჩვენ შეგვიძლია განვახორციელოთ მას რამდენიმე სხვადასხვა გზით, 782 00:37:38,920 --> 00:37:43,030 მაგრამ თქვენ არ რეალურად მიგვიყვანა ქვემოთ path-- და გეუბნებით თქვენ, 783 00:37:43,030 --> 00:37:48,080 მაგრამ ეს, ალბათ, ჩემი fault-- საკმაოდ არაეფექტური ბაზაში განხორციელება. 784 00:37:48,080 --> 00:37:49,950 ეს არ არის დარეგულირებული. 785 00:37:49,950 --> 00:37:52,320 >> და ნორმალიზება ვგულისხმობ არ იქნება, 786 00:37:52,320 --> 00:37:57,380 დროთა განმავლობაში, მნიშვნელოვანი redundancy, და, შესაბამისად, არაეფექტურობა, 787 00:37:57,380 --> 00:38:00,210 რომ არის ნარჩენები სივრცე. 788 00:38:00,210 --> 00:38:05,650 დაყრდნობით მხოლოდ ის, რაც თქვენ აქ, შეუძლია თქვენ გვჯერა, სადაც ეს ნარჩენები სივრცე 789 00:38:05,650 --> 00:38:08,710 აპირებს მოდის, დროთა განმავლობაში, უფრო და უფრო მეტი მომხმარებლის რეგისტრაცია 790 00:38:08,710 --> 00:38:10,860 თქვენი საიტი? 791 00:38:10,860 --> 00:38:13,047 რა მონაცემები შეიძლება გახდეს ზედმეტი? 792 00:38:13,047 --> 00:38:19,084 793 00:38:19,084 --> 00:38:20,940 >> აუდიტორია: [INAUDIBLE] 794 00:38:20,940 --> 00:38:22,686 >> დავით Malan: რატომ ნიშნავს, რომ? 795 00:38:22,686 --> 00:38:23,561 აუდიტორია: [INAUDIBLE] 796 00:38:23,561 --> 00:38:32,180 797 00:38:32,180 --> 00:38:32,930 დავით Malan: ჰო. 798 00:38:32,930 --> 00:38:35,622 და მოდით ვივარაუდოთ მიზნებისათვის დღეს, რომ ეს მართლაც ასეა. 799 00:38:35,622 --> 00:38:38,330 გამოდის, და ჩვენ ვისწავლეთ ამ რთული გზა, რომ ასე არ არის. 800 00:38:38,330 --> 00:38:41,670 რატომღაც სხვადასხვა ქალაქებში აქვს, რატომღაც, იგივე ZIP კოდი, 801 00:38:41,670 --> 00:38:43,390 რომელიც არღვევს ამ შესანიშნავი ინტუიცია. 802 00:38:43,390 --> 00:38:46,180 მაგრამ დავუშვათ, რომ სიმართლეა, იმიტომ, რომ ეს თითქმის ყოველთვის მართალია. 803 00:38:46,180 --> 00:38:51,390 ამიტომ ვარაუდობენ, რომ საფოსტო კოდი ყოველთვის დაკავშირებულია იმავე ქალაქში 804 00:38:51,390 --> 00:38:53,600 და სახელმწიფო, რომელიც არის ერთგვარი ვარაუდი, 805 00:38:53,600 --> 00:38:54,840 მაგრამ არასწორი, თურმე. 806 00:38:54,840 --> 00:38:57,310 მაგრამ არსებობს საფუძვლიანი ვარაუდი დღევანდელი მიზნებისათვის. 807 00:38:57,310 --> 00:39:01,650 >> მაშინ უნდა ვივარაუდოთ, რომ ვცხოვრობ Cambridge, MA, შესაბამისად, ამ მომხმარებლის მაგიდა, 808 00:39:01,650 --> 00:39:04,100 და ვარაუდობენ, რომ Lauren Scully ცხოვრობს Cambridge, MA, 809 00:39:04,100 --> 00:39:06,120 და ვარაუდობენ, რომ Kareem ცხოვრობს Cambridge, MA, 810 00:39:06,120 --> 00:39:10,400 და Arwa ცხოვრობს Cambridge, MA, ყველა ჩვენგანი 02138. 811 00:39:10,400 --> 00:39:15,890 რატომ ვართ დამახსოვრების Cambridge, MA, 02138 ოთხივე ჩვენგანი? 812 00:39:15,890 --> 00:39:18,903 რა უნდა საკმარისი უნდა გვახსოვდეს? 813 00:39:18,903 --> 00:39:20,249 >> აუდიტორია: [INAUDIBLE] 814 00:39:20,249 --> 00:39:21,540 დავით Malan: მხოლოდ zip კოდი. 815 00:39:21,540 --> 00:39:25,080 უბრალოდ, რომ 02138 არსებობს, რადგან თქვენ იცით, რა შეგვიძლია გავაკეთოთ? 816 00:39:25,080 --> 00:39:32,650 ჩვენ შეიძლება კიდევ პატარა ლამაზი აქ და აქ, განსაზღვრავს სხვა მაგიდასთან 817 00:39:32,650 --> 00:39:35,850 სადაც ეს იქნება სახელი, ეს იქნება ტიპის, 818 00:39:35,850 --> 00:39:38,840 ეს იქნება სიგრძე, და ამიერიდან, მე 819 00:39:38,840 --> 00:39:42,900 ვაპირებ მოვუწოდო ამ ჩემი ქალაქებში მაგიდასთან. 820 00:39:42,900 --> 00:39:47,011 ეს ეწოდა, რა რა თქმა უნდა, ჩემი წევრებს მაგიდასთან. 821 00:39:47,011 --> 00:39:49,885 ასე რომ, რა უნდა ვთქვათ მეტი აქ ჩემი ქალაქებში მაგიდა, როგორ ფიქრობთ? 822 00:39:49,885 --> 00:39:53,605 823 00:39:53,605 --> 00:39:54,535 >> აუდიტორია: [INAUDIBLE] 824 00:39:54,535 --> 00:39:55,930 >> დავით Malan: ჰო. 825 00:39:55,930 --> 00:40:01,440 ასე რომ, zip სახელმწიფო და ქალაქში. 826 00:40:01,440 --> 00:40:05,350 ასე რომ, ტიპის, აქ, ჩვენ ვიტყვით, ეს იქნება char 5 ისევ, 827 00:40:05,350 --> 00:40:06,750 თემაზე დებატები ადრე. 828 00:40:06,750 --> 00:40:14,810 ეს იქნება ENUM, ალბათ ისევე, როგორც ადრე, და ქალაქში იქნება varchar 50. 829 00:40:14,810 --> 00:40:17,960 ასე რომ, ახლა რა მივიღო წაშლას ამ მაგიდაზე 830 00:40:17,960 --> 00:40:21,995 აღმოფხვრას რომ არაეფექტურობა? 831 00:40:21,995 --> 00:40:23,100 >> აუდიტორია: [INAUDIBLE] 832 00:40:23,100 --> 00:40:23,850 დავით Malan: Nice. 833 00:40:23,850 --> 00:40:30,239 სახელმწიფო და ქალაქის მიდიან, ასე რომ მე ახლა აღმოფხვრილი პოტენციალი არაეფექტურობა 834 00:40:30,239 --> 00:40:33,280 for redundantly დამახსოვრების, Cambridge, MA, Cambridge, MA, Cambridge, MA, 835 00:40:33,280 --> 00:40:35,712 Cambridge, MA, რომელიც, იმედია არასოდეს არ შეიცვლება. 836 00:40:35,712 --> 00:40:37,670 და მაშინაც კი, თუ ეს ასეა, ეს minorly შემაშფოთებელი, ახლა 837 00:40:37,670 --> 00:40:39,750 რომ მე უნდა შეიცვალოს ის მრავალჯერადი რიგები, 838 00:40:39,750 --> 00:40:43,770 ხოლო აქ, მე მხოლოდ შეცვალოს იგი ერთ ადგილას. 839 00:40:43,770 --> 00:40:46,890 >> ახლა რა ვაჭრობის, ალბათ? 840 00:40:46,890 --> 00:40:48,020 ეს იყო სუპერ მოსახერხებელი. 841 00:40:48,020 --> 00:40:50,730 ჰქონდა ყველა ჩემი მონაცემები ლამაზად ერთად. 842 00:40:50,730 --> 00:40:53,644 მაგრამ რა არის ნათლად შემთხვევაში ახლა? 843 00:40:53,644 --> 00:40:55,684 >> აუდიტორია: [INAUDIBLE] 844 00:40:55,684 --> 00:40:58,100 დავით Malan: ზუსტად, და მე მოხარული ვარ, თქვენ გამოყენებული სიტყვა შეუერთდება, 845 00:40:58,100 --> 00:41:01,320 იმიტომ, რომ, ფაქტობრივად, სიტყვით, მსოფლიოში რელაციური მონაცემთა ბაზები 846 00:41:01,320 --> 00:41:05,270 in SQL, ის ფაქტობრივი სიტყვა შეიძლება ტიპის ან მინიმუმ გადმოცემა. 847 00:41:05,270 --> 00:41:09,280 და სინამდვილეში, ის, რაც ჩვენ ახლა უნდა გავაკეთოთ აირჩიოთ დავითის სრული ინფორმაცია 848 00:41:09,280 --> 00:41:19,700 რაღაც აირჩიეთ ვარსკვლავი მომხმარებლებს, შეუერთდეს ქალაქებში, on-- და ახლა 849 00:41:19,700 --> 00:41:24,010 მე ვაპირებ უბრალოდ გადავა მეორე ხაზი ასე, რომ ეს fits-- users.zip ტოლია 850 00:41:24,010 --> 00:41:34,570 cities.zip, სადაც users.ID უდრის 1. 851 00:41:34,570 --> 00:41:35,550 >> რა ხდება? 852 00:41:35,550 --> 00:41:38,970 ეს მახინჯი ეძებს, მაგრამ შეგიძლიათ სახის წავიკითხე ეს მარცხნიდან მარჯვნივ, ზემოდან. 853 00:41:38,970 --> 00:41:41,030 აირჩიეთ ვარსკვლავი მომხმარებლები არის იგივე, როგორც ადრე, 854 00:41:41,030 --> 00:41:42,930 მაგრამ ეს არ არის მომხმარებლებს, თავისთავად. 855 00:41:42,930 --> 00:41:45,910 ეს წევრებს შეუერთდეს ქალაქებში. 856 00:41:45,910 --> 00:41:48,520 რა ვარ მე უერთდება იმ ორი მაგიდები? 857 00:41:48,520 --> 00:41:51,820 ისე, როგორც ჩანს, მომხმარებლის მაგიდები zip სფეროში, 858 00:41:51,820 --> 00:41:54,810 და ამ პერიოდში მხოლოდ სპეციალური სინტაქსი გამოთქვას, რომ იდეა, 859 00:41:54,810 --> 00:41:58,130 და ეს არის ქალაქებში მაგიდები zip სფეროში. 860 00:41:58,130 --> 00:42:01,580 მინდა იმ ორი უნდა იყოს თანასწორი, მაგრამ მე მინდა, რომ საბოლოოდ აირჩიეთ 861 00:42:01,580 --> 00:42:06,280 მხოლოდ იმ სტრიქონების, სადაც ID მომხმარებლების მაგიდა 862 00:42:06,280 --> 00:42:08,730 უდრის 1, რაც მოხდა, რომ აფეთქდა. 863 00:42:08,730 --> 00:42:11,781 >> და უბრალოდ უნდა იყოს ნათელი, პროგრამისტი, როგორც წესი, როდესაც 864 00:42:11,781 --> 00:42:14,780 hardcode რაღაც რაოდენობის 1, რადგან, წინააღმდეგ შემთხვევაში ვებგვერდზე მხოლოდ 865 00:42:14,780 --> 00:42:17,630 მხარს უჭერს დავით ან პირველი შესახებ, თქვენ 866 00:42:17,630 --> 00:42:20,720 იმის მაგივრად, რომ ამის რაღაც ID, სადაც 867 00:42:20,720 --> 00:42:22,510 ეს წარმოადგენს ცვლადი, რომ რაღაც 868 00:42:22,510 --> 00:42:26,210 შეიძლება შეიცვალოს დროთა განმავლობაში, მსგავსი სულისკვეთება, თუ რა ვთქვი ადრე 869 00:42:26,210 --> 00:42:28,080 ამ სახის placeholders. 870 00:42:28,080 --> 00:42:30,396 მაგრამ ახლა ჩვენ უბრალოდ hardcode, როგორც 1. 871 00:42:30,396 --> 00:42:31,520 ასე რომ, რას ნიშნავს ეს? 872 00:42:31,520 --> 00:42:35,100 ისე, კარგი გზა ვიზუალურად ეს არის იმ შემთხვევაში, თუ ამ მხრივ არის მომხმარებლის მაგიდა, 873 00:42:35,100 --> 00:42:38,090 და ამ მხრივ არის zips მაგიდა, ჩვენ ერთგვარი finding-- 874 00:42:38,090 --> 00:42:41,330 და რჩევები ჩემი თითების zip აქ და რჩევები ჩემი თითების 875 00:42:41,330 --> 00:42:43,740 აქ არის zip, თქვენ სახის გადაჯაჭვული ეს 876 00:42:43,740 --> 00:42:47,950 ისე, რომ თქვენ უკან, რის შედეგადაც ორიგინალური მაგიდა, რომელსაც ნამდვილად ში 877 00:42:47,950 --> 00:42:49,590 ორ მაგიდას საერთო სფეროში. 878 00:42:49,590 --> 00:42:50,840 და ეს არ უნდა იყოს zip. 879 00:42:50,840 --> 00:42:54,460 ეს შეიძლება იყოს ყველაზე არაფერი, მაგრამ zip არის ლამაზი, რადგან ერთი, ეს მოკლედ, 880 00:42:54,460 --> 00:42:56,470 ორი, ის ყოველთვის იმავე სიგრძის, ასე რომ, 881 00:42:56,470 --> 00:43:02,270 რეალური ეფექტურობის რა Olivier შემოთავაზებული აქ 882 00:43:02,270 --> 00:43:05,200 ერთად ფაქტორინგი გარეთ zip, და [INAUDIBLE] ვთავაზობ, რომ ჩვენ დავაღწიოთ 883 00:43:05,200 --> 00:43:07,110 ქალაქის და სახელმწიფოები. 884 00:43:07,110 --> 00:43:11,370 >> ასე რომ, ეს არის პროცესი ცნობილია, როგორც ნორმალიზაცია. 885 00:43:11,370 --> 00:43:14,171 ნებისმიერი კითხვები რომ? 886 00:43:14,171 --> 00:43:16,170 ისე ნება მომეცით აღვნიშნო, ეს არის ერთგვარი პერსონალი, 887 00:43:16,170 --> 00:43:19,202 მიუხედავად იმისა, რომ საკმაოდ დაბალი დონის, ამ დისკუსიის, რომ თქვენ ვფიქრობ 888 00:43:19,202 --> 00:43:20,910 თქვენ ერთგვარი მიღების დაკარგული Weeds, 889 00:43:20,910 --> 00:43:26,690 ეს არის გამოვლინება საკმაო შესაძლებლობა დეველოპერები იყოს ცუდი. 890 00:43:26,690 --> 00:43:29,600 და სინამდვილეში, მაშინაც კი, როდესაც ჩვენ, კურსების მე ასწავლიდა, როდესაც ჩვენ გვქონდა, 891 00:43:29,600 --> 00:43:32,290 მაგალითად, გამოუცდელი ბაკალავრიატის პროგრამისტები 892 00:43:32,290 --> 00:43:35,920 აშენება საიტებზე, ერთი შეხედვით, ვებ-შეიძლება გამოიყურებოდეს შესანიშნავი. 893 00:43:35,920 --> 00:43:38,280 და მათ ყველა ფუნქციონალური მოვითხოვეთ, 894 00:43:38,280 --> 00:43:40,650 დეველოპერები გააკეთა კარგ საქმეს. 895 00:43:40,650 --> 00:43:43,370 >> მაგრამ ისინი არ არის აუცილებელი იცოდეს საკმარისი მონაცემთა დიზაინი 896 00:43:43,370 --> 00:43:46,680 ან საერთოდ არ ვფიქრობ, რთული საკმარისი სახის მონაცემები 897 00:43:46,680 --> 00:43:49,220 და ტიპის მომხმარებლებს ნახვა მივდიოდი უნდა, 898 00:43:49,220 --> 00:43:53,240 და ჩვენ, მაშინ, ექვსი თვის შემდეგ, შემდეგ ისინი დაამთავრა და გადავიდა, 899 00:43:53,240 --> 00:43:56,016 რომ რა იგი, ჩვენი საიტი მართლაც, ნამდვილად ნელი. 900 00:43:56,016 --> 00:43:58,890 და მე კი არ ვსაუბრობთ, რომელსაც მილიონობით და ათასობით მომხმარებლებს. 901 00:43:58,890 --> 00:44:02,580 ვგულისხმობ რამდენიმე ასეული მომხმარებლები კამპუსში, ყველა, ვისაც მოსწონს, რომ, მაგალითად, 902 00:44:02,580 --> 00:44:04,870 მაღაზია კურსები ამავე დროს, ისინი 903 00:44:04,870 --> 00:44:07,010 გამოყენებით, რომ კურსი კატალოგი განაცხადის აღვნიშნე 904 00:44:07,010 --> 00:44:10,410 და რამ მისაღებად ნამდვილად ნელი რადგან არ იყო ინდექსები. 905 00:44:10,410 --> 00:44:13,740 არ იყო წითელი ვარსკვლავი, ასე საუბარი, ან ჩვენ გვქონდა არ არის აუცილებელი 906 00:44:13,740 --> 00:44:17,690 factored საერთო მონაცემები მივიღოთ დანაზოგების სივრცეში. 907 00:44:17,690 --> 00:44:21,880 >> ასე რომ, როდესაც დამოწმებისა დეველოპერი ან მონაცემთა ბაზის პირი ან მოსწონს, 908 00:44:21,880 --> 00:44:25,864 სახის კითხვებით ვფიქრობ მეშვეობით კი, როდესაც განხილვის ვიღაცის კოდი, 909 00:44:25,864 --> 00:44:28,530 თქმა უნდა, არ არის აუცილებელი, გამოიყურება მთელი მათი კოდი, მაგრამ ამბობენ, 910 00:44:28,530 --> 00:44:30,154 მოდით შევხედოთ მეშვეობით მონაცემთა ბაზის ცხრილები. 911 00:44:30,154 --> 00:44:31,150 რას შენახვის? 912 00:44:31,150 --> 00:44:33,941 და შემდეგ ამბობენ, კარგად, დაველოდოთ წუთი, რატომ გამოყენებით რიცხვი? 913 00:44:33,941 --> 00:44:36,224 რა მოხდება, თუ ჩვენ გვაქვს 4 მილიარდი 1 ეს სტრიქონები? 914 00:44:36,224 --> 00:44:38,140 და ამ სახის კითხვები არის შესაძლებლობა 915 00:44:38,140 --> 00:44:40,170 სახის დააყენებს უკან და მისაღებად გრძნობა, სადაც 916 00:44:40,170 --> 00:44:42,300 თუ თქვენ არ კომფორტულად ის, რომელსაც ვინმე ტექნიკური 917 00:44:42,300 --> 00:44:45,425 ეს კითხვები დასვათ, თუ არა პირი მართლაც იცის მათი პერსონალი. 918 00:44:45,425 --> 00:44:47,890 და ეს არის ერთგვარი პერსონალი, ძალიან, რომ ადამიანი 919 00:44:47,890 --> 00:44:50,540 ინტერნეტ, რომელიც არის თვითნასწავლი, შესაძლოა, 920 00:44:50,540 --> 00:44:53,920 ვისწავლოთ ნაკლებად ხშირად, იმიტომ, რომ თქვენ არ არის აუცილებელი, რომ გვხვდება ეს 921 00:44:53,920 --> 00:44:56,630 იმდენი, რადგან თქვენ შეგიძლიათ მიიღოთ მონაცემთა ბაზაში და გაშვებული, 922 00:44:56,630 --> 00:44:58,880 მაგრამ თუ თქვენ წაკითხული up on გაკვეთილები ან ყოფილა 923 00:44:58,880 --> 00:45:01,880 ამის შესახებ მონაცემთა ბაზის ნორმალიზაციის და ინდექსირებას და შესრულება, 924 00:45:01,880 --> 00:45:04,255 ეს არის სახის რამ, რომ ვაპირებთ დააზარალებს თქვენ. 925 00:45:04,255 --> 00:45:07,480 და თქვენ ალბათ ფიქრობთ, ან ცუდი ინჟინერი შეიძლება ითქვას, oh, ასევე, ჩვენ უკეთესი ანაზღაურებისა 926 00:45:07,480 --> 00:45:09,600 უფრო დიდი მონაცემთა ბაზა ან სწრაფად მონაცემთა ბაზაში 927 00:45:09,600 --> 00:45:13,360 ან უბრალოდ იმისათვის, რომ ფული ამ, ვერტიკალურად მასშტაბით, არა. 928 00:45:13,360 --> 00:45:16,920 თუ წასვლა შიგნით და თქვენ შეიძლება წავიდეს მას შემდეგ, რაც ის ფაქტი და დაამატოთ ინდექსები, 929 00:45:16,920 --> 00:45:20,320 და ეს, შესაძლოა, რამდენიმე საათში მონაცემთა ბაზის დაამყარონ, რომ ახალი მონაცემები 930 00:45:20,320 --> 00:45:24,100 სტრუქტურა, რომელიც მე გააკეთა მინიშნება ადრე, თქვენ მაინც გაასწორონ ამ ფაქტის შემდეგ, 931 00:45:24,100 --> 00:45:26,180 რომ ეს არის, სადაც თქვენ დაიწყოს გამოირჩეოდნენ 932 00:45:26,180 --> 00:45:28,830 კარგი დიზაინერების ცუდი დიზაინერების, არა მხოლოდ ესთეტიურად, 933 00:45:28,830 --> 00:45:32,972 მაგრამ შესრულება ბრძენი ისევე. 934 00:45:32,972 --> 00:45:33,555 ნებისმიერი კითხვები? 935 00:45:33,555 --> 00:45:36,420 936 00:45:36,420 --> 00:45:37,480 არ არის? 937 00:45:37,480 --> 00:45:41,980 ასე რომ, NoSQL, რომელიც სხვა ტიპის მონაცემთა ბაზის, რომელიც მე გააკეთა მინიშნება ადრე, 938 00:45:41,980 --> 00:45:43,490 თქვენ არ გაქვთ რიგები და სვეტები. 939 00:45:43,490 --> 00:45:47,000 ამის ნაცვლად, თქვენ გაქვთ რაიმე რომ გამოიყურება ცოტა უფრო მოსწონს ეს. 940 00:45:47,000 --> 00:45:48,630 მე ვაპირებ გამოიყენოს საერთო სინტაქსი. 941 00:45:48,630 --> 00:45:51,270 Curly braces მოხდეს გამოყენებულ აქ საკმაოდ ბევრი. 942 00:45:51,270 --> 00:45:55,400 ალბათ რაღაც როგორც პირველი სახელი არის დავით, 943 00:45:55,400 --> 00:46:00,180 ალბათ ბოლო სახელი Malan, კვოტების, 944 00:46:00,180 --> 00:46:07,530 ალბათ ID is-- მაპატიეთ, whoops-- ID არის 1, 945 00:46:07,530 --> 00:46:13,410 ელ malan@harvard.edu, და მე არ გადაიტვირთოთ აკრეფით გარეთ დანარჩენი, და შემდეგ 946 00:46:13,410 --> 00:46:14,380 ზოგიერთი სხვა რამ. 947 00:46:14,380 --> 00:46:17,380 >> სხვა სიტყვებით, ეს არის ტექსტური წარმომადგენლობა 948 00:46:17,380 --> 00:46:20,720 რასაც ჩვენ მოვუწოდებთ ზოგადად ობიექტის კომპიუტერული პროგრამა. 949 00:46:20,720 --> 00:46:26,079 და ობიექტი არის ზოგადად მხოლოდ კოლექცია გასაღები ღირებულება წყვილი. 950 00:46:26,079 --> 00:46:27,370 ასე რომ, კიდევ ერთხელ, ეს განმეორებადი თემა. 951 00:46:27,370 --> 00:46:30,440 ჩვენ ვნახეთ გასაღები მნიშვნელობის წყვილის HTML, ჩვენ ვნახეთ გასაღები ღირებულება წყვილი ახლა 952 00:46:30,440 --> 00:46:34,020 კონტექსტში მონაცემთა ბაზა, და ჩვენ დაინახა გასაღები ღირებულება წყვილი კონტექსტში 953 00:46:34,020 --> 00:46:35,970 , მე ვფიქრობ, ენის დღეს. 954 00:46:35,970 --> 00:46:36,890 ინარჩუნებს ახლოვდება. 955 00:46:36,890 --> 00:46:39,620 და მართლაც, რომ მართლაც რა მონაცემები boils ქვემოთ, 956 00:46:39,620 --> 00:46:44,240 მონაცემები და მეტადატის, ან ღირებულებებს და გასაღებები, შესაბამისად. 957 00:46:44,240 --> 00:46:47,430 >> ასე რომ, არასამთავრობო რელატიური მონაცემთა ბაზა, რაღაც საფუძველზე 958 00:46:47,430 --> 00:46:50,680 ობიექტები, სადაც თქვენ უბრალოდ ეწებებიან ყველაფერი ერთად და მისი 959 00:46:50,680 --> 00:46:55,640 მეხსიერებაში, რომ, ზოგადად, სურათები, როგორც, ან ფიქრობდა, როგორც ეს. 960 00:46:55,640 --> 00:47:00,500 და მე დავტოვებთ, რომ ახლა, როგორც ერთგვარი ალტერნატიული მიდგომა. 961 00:47:00,500 --> 00:47:03,750 და ერთი არ არის აუცილებელი უკეთესია, ვიდრე სხვა. 962 00:47:03,750 --> 00:47:07,310 ფაქტობრივად, ძალიან vogue ამ დღეებში არის მონაცემთა ბაზის სისტემები 963 00:47:07,310 --> 00:47:11,942 როგორიცაა MongoDB და Redis და რამდენიმე სხვა ისეთი იარაღები, თავისუფლად არის შესაძლებელი, 964 00:47:11,942 --> 00:47:13,400 მაგრამ ისინი სულ უფრო და უფრო en vogue. 965 00:47:13,400 --> 00:47:18,850 ნაწილობრივ იმიტომ, რომ მათ ვთავაზობთ დამატებით თვისებები ამ tabular მიდგომები, 966 00:47:18,850 --> 00:47:20,850 არამედ იმიტომ, რომ ისინი ცოტა ადვილი გამოყენება, 967 00:47:20,850 --> 00:47:24,099 იმიტომ, რომ თქვენ არ უნდა ვიფიქროთ, როგორც მყარი, შესახებ ბევრი დიზაინის გადაწყვეტილებები. 968 00:47:24,099 --> 00:47:25,970 ასე რომ, დადებითი და cons. 969 00:47:25,970 --> 00:47:29,740 ასე, არსებობს ვარიანტი მიღმა, რასაც ჩვენ მხოლოდ დახარჯული დრო. 970 00:47:29,740 --> 00:47:32,310 >> ასე რომ, მოდით ეს. 971 00:47:32,310 --> 00:47:37,870 მოდით გადასვლას ცოტა ახლა ვებ პროგრამირების, 972 00:47:37,870 --> 00:47:40,470 ასე, რომ ჩვენ სახის დავასკვნათ დღეს რაღაც 973 00:47:40,470 --> 00:47:43,930 რომ ცოტა პრაქტიკული, შევსების ზოგიერთ ხარვეზები გუშინ. 974 00:47:43,930 --> 00:47:45,340 ნება მომეცით წასვლა პირველი. 975 00:47:45,340 --> 00:47:49,310 გავიხსენოთ, რომ გუშინ ჩვენ გვქონდა კანონიკური HTML 976 00:47:49,310 --> 00:47:55,110 გვერდები, რომ თავდაპირველად, მხოლოდ HTML, და შემდეგ ხელახლა ჰქონდა CSS, 977 00:47:55,110 --> 00:47:56,620 კასკადური სტილების. 978 00:47:56,620 --> 00:47:59,830 ეს არის ახალი აქვს, რომ ჩვენ არ გუშინდელ, ან დაეფუძნება, 979 00:47:59,830 --> 00:48:01,490 ე.წ. სცენარი აქვს. 980 00:48:01,490 --> 00:48:05,830 >> გამოდის, თქვენ შეგიძლიათ რეალურად ხმა ენის მოუწოდა JavaScript თქვენს ვებ 981 00:48:05,830 --> 00:48:08,310 გვერდზე და თქვენი ვებ გვერდები რამე. 982 00:48:08,310 --> 00:48:09,710 ასე რომ, რა ნიშნავს, რომ? 983 00:48:09,710 --> 00:48:12,630 ასევე, ნება მომეცით წავიდეთ წინ და მხოლოდ სესხის ეს კოდი მომენტში. 984 00:48:12,630 --> 00:48:15,860 მე ვაპირებ წასვლას Cloud9, არ სჭირდება რომ იქ თავი უბრალოდ არ არის, 985 00:48:15,860 --> 00:48:21,350 და მე ვაპირებ მოვუწოდო ამ alert.HTML. 986 00:48:21,350 --> 00:48:23,650 მე ვაპირებ ჩასვით ჩემი ფაილი აქ. 987 00:48:23,650 --> 00:48:32,070 და რომ განვმარტო, რასაც მე ვაკეთებ, ნება მე ამ მისამართზე და წასვლა პირთა, 988 00:48:32,070 --> 00:48:33,870 და ხედავთ Hello World. 989 00:48:33,870 --> 00:48:35,440 >> მაგრამ ეს არის ერთგვარი underwhelming. 990 00:48:35,440 --> 00:48:37,410 მე მინდა, რომ რამე ცოტა განსხვავებული. 991 00:48:37,410 --> 00:48:40,610 ამიტომ, მე ვაპირებ, რომ რეალურად ამის გაკეთება. 992 00:48:40,610 --> 00:48:43,820 მე ვაპირებ წავიდეთ აქ e, და მათ შორის ჩემი script tags, 993 00:48:43,820 --> 00:48:53,460 ამბობენ alert ( 'hello, world "); ასე რომ შეამჩნია ეს ცოტა დაუდევარი, მაგრამ მაქვს HTML, 994 00:48:53,460 --> 00:48:56,180 შიგნით რაც არის ენის მოუწოდა JavaScript, 995 00:48:56,180 --> 00:48:59,420 და ეს არის ის, რაც ე.წ. ფუნქცია ზარის ან პროცედურა ზარი. 996 00:48:59,420 --> 00:49:04,500 ეს არის ზმნა, ფაქტიურად, ამ შემთხვევაში, და მე მარტო აპელირებს კოდი ფუნქცია 997 00:49:04,500 --> 00:49:06,310 რომ ვინმეს დაწერა. 998 00:49:06,310 --> 00:49:09,630 >> ასე რომ, ფუნქცია არის alert, მოდით წავიდეთ ამ გვერდზე 999 00:49:09,630 --> 00:49:14,046 ახლა და დააჭირეთ განაახლეთ, და ახლა თქვენ ვხედავ ცოტა interactivity. 1000 00:49:14,046 --> 00:49:15,420 ეს არის ერთგვარი ძველი სკოლა და მახინჯი. 1001 00:49:15,420 --> 00:49:18,580 ამ სახის შეგახსენებთ, რომ pop-ups, ალბათ, წარსულის 1002 00:49:18,580 --> 00:49:22,030 მაგრამ ეს არ გააკეთა რამე ცოტა მეტი პროგრამული. 1003 00:49:22,030 --> 00:49:26,940 >> ასე რომ, მეტი რომ, მოდით რაღაც უფრო საინტერესო. 1004 00:49:26,940 --> 00:49:30,980 ნება მომეცით წავიდეთ აქ და თავი დაეღწია ამ. 1005 00:49:30,980 --> 00:49:33,840 და მე ვაპირებ წავიდეთ წინ და შევქმნათ ფორმა, როგორც ჩვენ გავაკეთეთ გუშინ. 1006 00:49:33,840 --> 00:49:34,840 სინამდვილეში, თქვენ იცით, რა? 1007 00:49:34,840 --> 00:49:37,350 მე ვაპირებ წასვლას google.html, რომელიც ჩვენ 1008 00:49:37,350 --> 00:49:43,027 დაიწყო გუშინ, რომელიც ჩანდა ამ, რომლის მეშვეობითაც ჩვენ ჩხრეკა cat 1009 00:49:43,027 --> 00:49:45,360 მაგრამ შეამჩნია არ არის ერთგვარი bug მიმდინარე ვერსია. 1010 00:49:45,360 --> 00:49:49,770 იგი მუშაობს კატა, მაგრამ ვფიქრობ, რომ მე არ თანამშრომლობენ და მე აკრიფოთ არაფერი, 1011 00:49:49,770 --> 00:49:53,290 და მე, უბრალოდ დაწკაპეთ წარუდგინოს. 1012 00:49:53,290 --> 00:49:54,540 სწორედ ასეთი უცნაური ქცევა. 1013 00:49:54,540 --> 00:49:57,300 წამიყვანეს რეალური Google, არ მაძლევს შეცდომა. 1014 00:49:57,300 --> 00:50:00,590 მე მინდა ვუთხრა შესახებ თქვენ უნდა მოგვცეს მნიშვნელობა. 1015 00:50:00,590 --> 00:50:01,780 >> ასე როგორ შეიძლება ამის გაკეთება? 1016 00:50:01,780 --> 00:50:06,790 ისე ნება მომეცით დაბრუნდეს Cloud9 და ნება მომეცით წასვლას დაბრუნება ჩემი გვერდი 1017 00:50:06,790 --> 00:50:11,980 და დაამატოთ script tag მოსწონს, სადაც მე ვაპირებ აკრიფოთ ზოგიერთი JavaScript კოდი. 1018 00:50:11,980 --> 00:50:15,420 და მე ვაპირებ ამის შემდეგ. 1019 00:50:15,420 --> 00:50:22,910 თუ (document.getelementByID-- და გავიხსენოთ რომ ჩვენ ვისაუბრეთ, რომ ადრე, 1020 00:50:22,910 --> 00:50:23,960 რომ ფუნქცია. 1021 00:50:23,960 --> 00:50:25,310 რა ID მინდა კიდევ? 1022 00:50:25,310 --> 00:50:33,050 მინდა კიდევ რ და მე ვაპირებ ვთქვათ შეადგენს არაფერი, როგორც ამას 1023 00:50:33,050 --> 00:50:38,220 მოდით ორმაგ ბრჭყალებში მხოლოდ consistency-- უდრის არაფერი, 1024 00:50:38,220 --> 00:50:46,650 მაშინ alert ( "გთხოვთ, აკრიფოთ შეკითხვის") აქ. 1025 00:50:46,650 --> 00:50:49,200 >> ასე რომ, მე რა, როგორც ჩანს რაღაც მდგომარეობაში. 1026 00:50:49,200 --> 00:50:51,410 ჩვენ ვნახეთ ამ ზოგადი იდეა ნულიდან. 1027 00:50:51,410 --> 00:50:54,240 ეს იგივეა, იმ თავსატეხი ცალი რომ ჩანდა მოსწონს ეს. 1028 00:50:54,240 --> 00:50:55,780 და რა ვარ მე ამბობდა? 1029 00:50:55,780 --> 00:50:59,520 ისე, აქ, შეამჩნია, რომ მე ვარ აპირებს ამის შემდეგ. 1030 00:50:59,520 --> 00:51:02,790 მე ვაპირებ, რომ ამ ფორმით სფეროში არ არის მხოლოდ სახელი q, რომელიც 1031 00:51:02,790 --> 00:51:06,630 რა იღებს გავიდა Google, მაგრამ მე ვაპირებ, რათა ეს ადგილობრივი იდენტიფიკატორი, 1032 00:51:06,630 --> 00:51:07,630 ასევე მოუწოდა ქ. 1033 00:51:07,630 --> 00:51:11,780 მაგრამ მე ვერ ვუწოდებ ამ არაფერი მინდა, მე ვაპირებ, რომ შევინარჩუნოთ ის მარტივი 1034 00:51:11,780 --> 00:51:14,570 და ასევე ეძახით q, მხოლოდ სიმარტივის. 1035 00:51:14,570 --> 00:51:17,650 >> და ახლა მე ვაპირებ ამის გაკეთებას რაღაც ცოტა მეტი. 1036 00:51:17,650 --> 00:51:22,600 On ფორმა სფეროებში აქ, მე ვაპირებ რჩეულებში რასაც ღონისძიება დამმუშავებლის. 1037 00:51:22,600 --> 00:51:32,260 წარმოადგინოს, მინდა მოვუწოდო ფუნქცია მოუწოდა შეამოწმოს. 1038 00:51:32,260 --> 00:51:35,520 ეს ჯერ არ არსებობს, ეს სიტყვა, ან ამ ზმნის დავამტკიცოთ, 1039 00:51:35,520 --> 00:51:38,560 იმიტომ, რომ ის, რაც მე ვაპირებ ამის გაკეთებას აქ ახლა დაამატოთ ზოგიერთი კოდი. 1040 00:51:38,560 --> 00:51:42,200 >> მე ვაპირებ ვთქვა ფუნქცია შეამოწმოს. 1041 00:51:42,200 --> 00:51:48,280 მე ვაპირებ აბზაცის ამ და დაამატოთ კიდევ ერთი Curly გაუწიოს აქ და კიდევ ერთი აქ. 1042 00:51:48,280 --> 00:51:50,110 განვიხილოთ, თუ რას აკეთებს. 1043 00:51:50,110 --> 00:51:54,210 მე მაქვს, ახლა ვფიქრობ, როგორც შექმნა საკუთარი თავსატეხი ცალი რომ არ ადრე 1044 00:51:54,210 --> 00:51:57,440 არსებობს, და მე მოუწოდა ამ თავსატეხი ცალი შეამოწმოს თავსატეხი ცალი. 1045 00:51:57,440 --> 00:52:01,620 მისი მიზანი ცხოვრებაში არის ის, რომ შეასრულოს ოთხი ხაზი კოდი შიგნით მას. 1046 00:52:01,620 --> 00:52:04,940 >> თუ document.getElementByID ასე კონცეპტუალურად, 1047 00:52:04,940 --> 00:52:09,380 რომ აპირებს წასვლას ელემენტს, HTML ელემენტი რომლის უნიკალური 1048 00:52:09,380 --> 00:52:12,930 იდეა არის უბრალოდ Q, და შემდეგ, მიუხედავად იმისა, სინტაქსი გამოიყურება ცოტა უცნაური, 1049 00:52:12,930 --> 00:52:16,430 რომ თანაბარი ტოლია მხოლოდ იმას ნიშნავს, შეადგენს. 1050 00:52:16,430 --> 00:52:20,950 ასე რომ, ეს ნიშნავს, რომ, თუ ელემენტს ერთად უნიკალური იდენტიფიკატორი q, როდესაც მიღებული, 1051 00:52:20,950 --> 00:52:25,700 არ აქვს მნიშვნელობა, ეს ტოლია ციტირებით unquote, არაფერი არსებობს, 1052 00:52:25,700 --> 00:52:27,170 მერე რა უნდა გავაკეთოთ? 1053 00:52:27,170 --> 00:52:29,360 მინდა დაწეროთ შესახებ. 1054 00:52:29,360 --> 00:52:31,710 >> და ჩვენ არ უნდა დიდი დეტალურად აქ. 1055 00:52:31,710 --> 00:52:32,960 მე ვაპირებ დაბრუნებას ყალბი. 1056 00:52:32,960 --> 00:52:34,380 ეს არის შეცდომა. 1057 00:52:34,380 --> 00:52:38,746 სხვას, მე ვაპირებ დაბრუნებას ჭეშმარიტი. 1058 00:52:38,746 --> 00:52:40,120 ასე რომ არც ეს მუშაობდა და ეს არ გააკეთა. 1059 00:52:40,120 --> 00:52:41,800 ყალბი ან ნამდვილი. 1060 00:52:41,800 --> 00:52:47,820 ახლა კი, თუ მე არ მიიღოს ნებისმიერი შეცდომები, ნება მომეცით გადარჩენა და განაახლეთ ეს. 1061 00:52:47,820 --> 00:52:50,940 და ნება მომეცით უბრალოდ ორმაგი შემოწმება, მე არ, ფაქტობრივად, არანაირი typos, 1062 00:52:50,940 --> 00:52:52,690 ასე რომ მე არ გართულებების თავს. 1063 00:52:52,690 --> 00:52:54,240 ვნახოთ, თუ ეს სამუშაოები. 1064 00:52:54,240 --> 00:52:56,930 >> ასე რომ, ახლა მე ვაპირებ აკრიფოთ კატა. 1065 00:52:56,930 --> 00:52:59,421 ეს ჯერ კიდევ მუშაობს, ან ნახევარი სამუშაოები, მინიმუმ. 1066 00:52:59,421 --> 00:53:02,170 ახლა ნება მომეცით განაახლეთ იგი, და ახლა me ცდილობენ წარდგენის გარეშე აკრეფით 1067 00:53:02,170 --> 00:53:05,860 anything-- ჯანდაბას, იგი დაიწყო. 1068 00:53:05,860 --> 00:53:06,430 ერთი წუთით. 1069 00:53:06,430 --> 00:53:09,380 1070 00:53:09,380 --> 00:53:12,660 მიადევნე თვალი გახსნა კონსოლი, [INAUDIBLE] შესვლა, განაახლეთ გვერდი. 1071 00:53:12,660 --> 00:53:13,576 ნება მომეცით ცდილობენ ამ ერთხელ. 1072 00:53:13,576 --> 00:53:17,000 1073 00:53:17,000 --> 00:53:17,501 ოჰ, რა იგი. 1074 00:53:17,501 --> 00:53:18,000 დამავიწყდა. 1075 00:53:18,000 --> 00:53:18,630 მე მივიღე typo. 1076 00:53:18,630 --> 00:53:20,760 მახსოვს, რა არის. 1077 00:53:20,760 --> 00:53:21,350 .ჩაირთო. 1078 00:53:21,350 --> 00:53:27,060 მე მინდოდა მეთქვა, თუ ღირებულება ელემენტს, რომლის ID არის q 1079 00:53:27,060 --> 00:53:29,800 ტოლია, მაშინ დაწეროთ შესახებ. 1080 00:53:29,800 --> 00:53:31,870 >> ახლა ნება მომეცით, ჩემი სუნთქვა ერთხელ. 1081 00:53:31,870 --> 00:53:33,480 აქ ჩვენ მივდივართ. 1082 00:53:33,480 --> 00:53:34,130 იქ ჩვენ წავიდეთ. 1083 00:53:34,130 --> 00:53:35,010 გთხოვთ, აკრიფოთ შეკითხვაზე. 1084 00:53:35,010 --> 00:53:36,840 ასე რომ, ეს არ არის გაქირავების me მეშვეობით. 1085 00:53:36,840 --> 00:53:40,210 მე შეიძლება სახის playful ერთად, და ნაცვლად შემოწმების არ ღირებულება, 1086 00:53:40,210 --> 00:53:46,720 შემიძლია ვთქვა, რაღაც, აღარ ეძებს კატა, 1087 00:53:46,720 --> 00:53:51,150 და ახლა ჩვენ შეგვიძლია უბრალოდ უფრო playfully მიადევნე მომხმარებლის ძიება ძაღლი, თუ იგი 1088 00:53:51,150 --> 00:53:57,490 სურს, ან, თუ მე აქ და ძიება კატა, ახლა მე არ შემიძლია. 1089 00:53:57,490 --> 00:53:58,690 >> ასე რომ, რა takeaway აქ? 1090 00:53:58,690 --> 00:54:03,010 ასე რომ, ერთი, ჩვენ შემოტანილი ჩვენს სამყაროში HTML და CSS, 1091 00:54:03,010 --> 00:54:04,320 პროგრამირების ფუნქცია. 1092 00:54:04,320 --> 00:54:06,300 მე შემიძლია რეალურად ახლა მიიღოს გადაწყვეტილება კოდი. 1093 00:54:06,300 --> 00:54:10,570 მანამდე, მე შეიძლება არ არის აღსანიშნავად ტექსტური ფაილი ან გრაფიკული ფაილი 1094 00:54:10,570 --> 00:54:13,080 და ვუთხრა მას, რა უნდა ვეძებოთ მოსწონს და სადაც არიან. 1095 00:54:13,080 --> 00:54:16,650 ახლა შემიძლია რეალურად ითხოვენ კითხვები ვებ გვერდზე 1096 00:54:16,650 --> 00:54:20,010 და გადაწყვეტილებები მასზე და უბიძგონ შესახებ 1097 00:54:20,010 --> 00:54:22,780 თუ მე უნდა დაწეროთ მას. 1098 00:54:22,780 --> 00:54:28,740 >> მოდით ცდილობენ რაღაც ჩვენი საკუთარი ამ. 1099 00:54:28,740 --> 00:54:33,350 წავიდეთ წინ, ნება მომეცით გახსნა მომდევნო slide აქ, და მხოლოდ აღვნიშნო ერთი რამ. 1100 00:54:33,350 --> 00:54:37,250 ისევე, როგორც CSS, ჩვენ შეგვიძლია გამოვსახოთ ფაქტორი ჩვენი JavaScript კოდი ცალკე ფაილი, 1101 00:54:37,250 --> 00:54:40,660 შეგიძლიათ გააკეთოთ იგივე, ერთად JavaScript, CSS. 1102 00:54:40,660 --> 00:54:44,520 და თქვენ იყენებთ, რომ წყარო ატრიბუტი სცენარი აქვს. 1103 00:54:44,520 --> 00:54:46,540 მაგრამ ჩვენ არ გაართულებს რამ ახლა. 1104 00:54:46,540 --> 00:54:50,440 სამაგიეროდ, თუ შეიძლება წასვლა არ ამ გვერდზე, 1105 00:54:50,440 --> 00:55:02,690 but-- ნება მომეცით გადავიდეს ამ გარშემო order-- წასვლა, თუ შეიძლება, ამ გვერდზე აქ. 1106 00:55:02,690 --> 00:55:03,592 ამ URL აქ. 1107 00:55:03,592 --> 00:55:04,550 ეს დღევანდელ სლაიდები. 1108 00:55:04,550 --> 00:55:07,133 თქვენ გაქვთ განაახლეთ, რადგან მე დასძინა რამდენიმე რამ. 1109 00:55:07,133 --> 00:55:09,970 1110 00:55:09,970 --> 00:55:13,890 >> მაგრამ იქ, სადაც რამდენიმე სტუმრებთან დაელოდება. 1111 00:55:13,890 --> 00:55:16,670 და ეს მოგვცემს საშუალებას, ოდნავ უფრო fun კონტექსტში, 1112 00:55:16,670 --> 00:55:20,610 უნდა ჩაერიოს რამდენიმე JavaScript. 1113 00:55:20,610 --> 00:55:25,505 და როდესაც თქვენ იქ, მე რას ელის. 1114 00:55:25,505 --> 00:55:47,350 1115 00:55:47,350 --> 00:55:47,850 მიიღეთ მწვანე. 1116 00:55:47,850 --> 00:56:03,063 1117 00:56:03,063 --> 00:56:03,562 უცნობია ლურჯი. 1118 00:56:03,562 --> 00:56:11,030 1119 00:56:11,030 --> 00:56:13,930 ადგენს მწვანე, ადგენს წითელი. 1120 00:56:13,930 --> 00:56:19,220 1121 00:56:19,220 --> 00:56:20,220 Oops. 1122 00:56:20,220 --> 00:56:22,330 ბოდიში. 1123 00:56:22,330 --> 00:56:27,630 >> ეს არის იმდენად, რამდენადაც ჩვენი დოკუმენტაცია ამ გამოწვევას. 1124 00:56:27,630 --> 00:56:29,920 და ეს იმუშავებს ასეთია. 1125 00:56:29,920 --> 00:56:33,340 ასე რომ, ის, რაც თქვენ ამ გვერდი არის მთელი bunch 1126 00:56:33,340 --> 00:56:38,024 სურათი თავსატეხები ბადი სტენფორდის უნივერსიტეტში. 1127 00:56:38,024 --> 00:56:41,190 ასე რომ, რას ხედავს აქ თითქმის სახის ერთ-ერთი იმ ჯადოსნური თვალი თავსატეხები 1128 00:56:41,190 --> 00:56:43,815 მაგრამ თუ უბრალოდ სახლიდან მას, არაფერი აპირებს პოპ out at თქვენ. 1129 00:56:43,815 --> 00:56:46,000 პირიქით, რაღაც იმალება ამ იმიჯს. 1130 00:56:46,000 --> 00:56:47,790 და ეს ჩაფლული შემდეგ გზა. 1131 00:56:47,790 --> 00:56:51,740 სურათები, როგორც მოგეხსენებათ, შეიძლება იყოს შედგება მხოლოდ სამი ფერის. 1132 00:56:51,740 --> 00:56:53,346 ზოგიერთი წითელი, ზოგი ლურჯი, და ზოგიერთი მწვანე. 1133 00:56:53,346 --> 00:56:55,220 და ჩვენ შეგვიძლია ყველა ფერები rainbow 1134 00:56:55,220 --> 00:56:57,570 შერევით იმ სამი ფერის რატომღაც. 1135 00:56:57,570 --> 00:57:01,940 >> ასე რომ, ეს გამოიყურება ძირითადად მწვანე და ლურჯი, მაგრამ როგორც ნიკ ამბობს აქ, 1136 00:57:01,940 --> 00:57:04,060 ამ რკინის თავსატეხი გამოსახულება არის თავსატეხი. 1137 00:57:04,060 --> 00:57:06,780 იგი შეიცავს იმიჯი რაღაც ცნობილი, თუმცა, 1138 00:57:06,780 --> 00:57:08,310 იმიჯი უკვე დამახინჯებული. 1139 00:57:08,310 --> 00:57:11,500 ცნობილი ობიექტი არის წითელი ღირებულებებს. 1140 00:57:11,500 --> 00:57:13,810 თუმცა, წითელი და ღირებულებებს აქვს ყველა იქნა დაყოფილი 10. 1141 00:57:13,810 --> 00:57:16,230 ასე რომ, ისინი ძალიან მცირე ფაქტორი 10. 1142 00:57:16,230 --> 00:57:18,280 სხვა სიტყვებით, ნიკ აიღო ორიგინალური იმიჯი, 1143 00:57:18,280 --> 00:57:21,500 და ის desaturated ყველა წითელი მისგან, 1144 00:57:21,500 --> 00:57:23,850 ამცირებს ოდენობით წითელი მელნის, თუ გნებავთ, მას. 1145 00:57:23,850 --> 00:57:26,060 >> ლურჯი და მწვანე ღირებულებები ყველა მხოლოდ უაზრო, 1146 00:57:26,060 --> 00:57:30,000 შემთხვევითი ღირებულებები, aka ხმაური შექმნილია გადაფაროს რეალური სურათი. 1147 00:57:30,000 --> 00:57:32,250 ასე რომ, რა Nick გააკეთა, ის იკლო წითელი და მაშინ 1148 00:57:32,250 --> 00:57:34,380 ის უბრალოდ ესროლა შემთხვევითი რაოდენობით ლურჯი და მწვანე 1149 00:57:34,380 --> 00:57:37,590 იმიჯი სახის ბუნდოვანი რა არის რეალურად ჯერ კიდევ არსებობს. 1150 00:57:37,590 --> 00:57:41,089 თქვენ უნდა გაუქმება ამ სხვაობა გამოავლინოს იმიჯი. 1151 00:57:41,089 --> 00:57:44,255 პირველი, მითითებული ყველა ლურჯი და მწვანე ღირებულებები ნულის მიიღონ მათ შორის, 1152 00:57:44,255 --> 00:57:48,700 და შევხედოთ შედეგი. მაშინ გამრავლების თითოეული წითელი ღირებულება 10, 1153 00:57:48,700 --> 00:57:51,720 შეკვეცის მდე დაახლოებით მისი საბოლოო ღირებულება. 1154 00:57:51,720 --> 00:57:53,035 რა არის ცნობილი ობიექტი? 1155 00:57:53,035 --> 00:57:57,920 >> ასე რომ, ყველა თქვენ გაქვთ ეს მართკუთხედი თქვენი ბრაუზერის ახლავე. 1156 00:57:57,920 --> 00:58:00,830 და შეამჩნია, რომ არსებობს გარკვეული შემქმნელის კოდი, ასე ვთქვათ. 1157 00:58:00,830 --> 00:58:04,370 ეს არის JavaScript კოდი, რომელიც Nick დაწერილი თქვენთვის. 1158 00:58:04,370 --> 00:58:07,250 და შეამჩნია, რომ არსებობს ხაზი, შუა 1159 00:58:07,250 --> 00:58:10,380 იწყება ხაზი ხაზი, რომ რა ზოგადად მოუწოდა კომენტარი. 1160 00:58:10,380 --> 00:58:14,660 ეს იმას ნიშნავს, რომ ეს არის ფრაზა პროგრამისტი რომ არ აქვს ფუნქციური დატვირთვა. 1161 00:58:14,660 --> 00:58:16,520 ეს არის მხოლოდ ვიზუალური CUE ადამიანის. 1162 00:58:16,520 --> 00:58:18,670 >> ასე, რომ თქვენ შეიძლება წავიდეთ წინ და წაშლა უბრალოდ, ხაზი, 1163 00:58:18,670 --> 00:58:22,214 და სუპერ ფრთხილად, რომ არ წაშლა ან შეცვლა არაფერი. 1164 00:58:22,214 --> 00:58:25,130 და ნება მომეცით უბრალოდ ფეხით თქვენ მეშვეობით რა ეს კოდი აკეთებს და მე რომ 1165 00:58:25,130 --> 00:58:28,580 თქვენ უნდა გაერკვნენ საიდუმლო იმიჯი. 1166 00:58:28,580 --> 00:58:32,226 ეს პირველი ხაზი აქ რომ მე უბრალოდ ხაზგასმით გაძლევთ შემდეგ. 1167 00:58:32,226 --> 00:58:34,100 მარცხენა მხარეს, თქვენ გაქვთ რასაც 1168 00:58:34,100 --> 00:58:39,140 ცვლადი, რომელიც ნიკას თვითნებურად, მაგრამ გონივრულად მოუწოდა im სურათი. 1169 00:58:39,140 --> 00:58:41,660 მარჯვენა მხარეს რომ თანაბარი ნიშანი, 1170 00:58:41,660 --> 00:58:45,240 ის ამბობდა მომეცი ახალი გაცემა, unquote "უბრალო გამოსახულება". 1171 00:58:45,240 --> 00:58:49,680 >> უბრალო გამოსახულება, ამ კონტექსტში რასაც კლასი, ასევე, 1172 00:58:49,680 --> 00:58:53,910 ეს ერთგვარი მოსწონს კლასის ტექნიკურად პროტოტიპი მაგრამ რეალურად, 1173 00:58:53,910 --> 00:58:58,000 ეს მაძლევს ახალი ობიექტი, შინაარსი, რომლებიც ფაილი, 1174 00:58:58,000 --> 00:58:59,610 რკინის puzzle.png. 1175 00:58:59,610 --> 00:59:03,190 სხვა სიტყვებით, ნიკ შეიქმნა ეს ცნება უბრალო სურათი 1176 00:59:03,190 --> 00:59:05,920 ასე რომ ჩვენ შეგვიძლია, პედაგოგიური მიზნით, თამაში გამოსახულება 1177 00:59:05,920 --> 00:59:09,790 და შეცვალოს თავისი წითელი, მწვანე და ლურჯი ღირებულებებს. 1178 00:59:09,790 --> 00:59:11,750 >> და როგორ ვაკეთებთ ამას? 1179 00:59:11,750 --> 00:59:15,360 ეს გარკვეულწილად cryptic სინტაქსი აქ სახის როგორც განმეორებითი ბლოკი 1180 00:59:15,360 --> 00:59:19,140 რომ ზოგიერთი ვნახე Scratch ადრე დღეს, სადაც შეგიძლიათ ვიმეორებ 10 ჯერ. 1181 00:59:19,140 --> 00:59:22,220 ამ შემთხვევაში, Nick არ აქვს hardcoded ხმების მოსწონს 10. 1182 00:59:22,220 --> 00:59:28,020 იმის ნაცვლად, ის ამბობს, ინიციალიზაცია ცვლადში x 0, 1183 00:59:28,020 --> 00:59:33,180 შემოწმება, თუ x ნაკლებია სიგანე იმიჯი. 1184 00:59:33,180 --> 00:59:38,160 >> ასე რომ, უფრო სწორი სურათი არის ცვლადი, dot ნიშნავს, წავიდეთ შიგნით ეს 1185 00:59:38,160 --> 00:59:40,900 და მიიღეთ მისი სიგანე და შემდეგ ღია paren, დახურული 1186 00:59:40,900 --> 00:59:43,687 paren მხოლოდ პროგრამისტი გზა ამბობდა, ეს ფუნქცია. 1187 00:59:43,687 --> 00:59:44,520 ეს არის პროცედურა. 1188 00:59:44,520 --> 00:59:46,430 ეს არის ფუნქციონალური სხვისი დაწერა. 1189 00:59:46,430 --> 00:59:48,570 გამოიყენეთ იგი და მომეცი უკან პასუხი. 1190 00:59:48,570 --> 00:59:53,610 და მაშინ x ++ არის ლამაზი გზა განაცხადა, რომ მას შემდეგ, რაც თქვენ გაკეთდეს ამ ერთხელ, 1191 00:59:53,610 --> 00:59:55,850 ნამატი x 1. 1192 00:59:55,850 --> 00:59:58,760 სხვა სიტყვებით, ეს არის პროგრამისტი გზა 1193 00:59:58,760 --> 01:00:05,760 of inducing მარყუჟის, რომ აპირებს iterate მეტი 1194 01:00:05,760 --> 01:00:10,410 ყველა სვეტები იმიჯი. 1195 01:00:10,410 --> 01:00:14,790 >> სურათი არის მხოლოდ ქსელის წერტილები, რიგები და სვეტები წერტილები. 1196 01:00:14,790 --> 01:00:18,270 ეს არის გზა iterating მთელ იმ სვეტების. 1197 01:00:18,270 --> 01:00:20,770 და ქვეყნის შიგნით, იმავდროულად, ჩვენ iterating 1198 01:00:20,770 --> 01:00:24,030 მეტი სიმაღლეები, აქ და აქ და აქ. 1199 01:00:24,030 --> 01:00:29,442 ასე რომ, ეს უბრალოდ გზა traipsing, როგორც თითქმის სკოლა საბეჭდი მანქანა, 1200 01:00:29,442 --> 01:00:32,230 უბრალოდ წასვლა მეტი მთელი იმიჯის iteratively. 1201 01:00:32,230 --> 01:00:36,370 მიუხედავად იმისა, რომ ეს არ არის საკმაოდ მთლიანად ნათელია, უბრალოდ იღებს რწმენა, ახლა, 1202 01:00:36,370 --> 01:00:38,880 რომ ის სამი ხაზი კოდი ერთად ვართ 1203 01:00:38,880 --> 01:00:43,090 აპირებს საშუალებას გაძლევთ iteratively გამოიყურება ყოველ pixel, ყველა dot გამოსახულება. 1204 01:00:43,090 --> 01:00:43,790 >> რა არის pixel? 1205 01:00:43,790 --> 01:00:46,250 ასევე, უნდა იყოს ნათელი, თუ დავაკვირდებით ორიგინალური და მასშტაბის in, 1206 01:00:46,250 --> 01:00:49,060 თუ თქვენ ნამდვილად თქვენს თვალში კომპიუტერი ეკრანზე, რომ 1207 01:00:49,060 --> 01:00:53,510 მხოლოდ მთელი bunch of წერტილები, რამდენიმე ათასი წერტილები შეფუთული ერთად არსებობს. 1208 01:00:53,510 --> 01:00:56,180 ასე რომ, რას უნდა გააკეთოს? 1209 01:00:56,180 --> 01:00:59,240 ყოველ ერთ იმ წერტილების, საბოლოო განმარტება, 1210 01:00:59,240 --> 01:01:06,350 არის შედეგი, რასაც ზოგადად მოუწოდა RGB, წითელი, მწვანე, ლურჯი, რომელიც 1211 01:01:06,350 --> 01:01:09,940 კიდევ ერთხელ, შეიძლება კომბინირებული გაძლევთ ნებისმიერი რაოდენობის ფერები. 1212 01:01:09,940 --> 01:01:13,200 >> სინამდვილეში, თუ გახსოვთ ბევრი, ბევრი წლის წინ, 1213 01:01:13,200 --> 01:01:17,320 პროექტორი ეკრანებზე მოსწონს ეს რამ გამოყენებული აქვს არა ერთი ობიექტივი, მაგრამ სამი. 1214 01:01:17,320 --> 01:01:20,700 ერთ-ერთი მათგანი შამფურზე წითელი შუქი, ერთი მათ შამფურზე მწვანე შუქი, ერთ-ერთი მათგანი 1215 01:01:20,700 --> 01:01:21,600 შამფურზე ლურჯი სინათლე. 1216 01:01:21,600 --> 01:01:24,391 და თუ იყო საშუალო სკოლა როგორიც მე ვიყავი, სადაც ისინი არასდროს 1217 01:01:24,391 --> 01:01:27,000 სათანადოდ იდეებს, თქვენ ყოველთვის თვალს ისტორია ფილმები 1218 01:01:27,000 --> 01:01:29,770 რომ იყო ოდნავ დამახინჯებული, იმიტომ, რომ სამი ფერის არ იყო 1219 01:01:29,770 --> 01:01:30,970 აერთიანებს სწორად. 1220 01:01:30,970 --> 01:01:36,330 >> მაგრამ აღმოჩნდება, რომ თითოეული ეს ფასეულობები წითელი, მწვანე და ლურჯი 1221 01:01:36,330 --> 01:01:37,980 შეიძლება ჰქონდეს რაოდენობის მათთან ასოცირებული. 1222 01:01:37,980 --> 01:01:42,500 მაგალითად, 0 წითელი ნიშნავს, რომ არ red, 0 მწვანე ნიშნავს, რომ არ მწვანე, 1223 01:01:42,500 --> 01:01:45,120 და 0 ლურჯი იმას ნიშნავს, არ ლურჯი. 1224 01:01:45,120 --> 01:01:49,403 ასე რომ, თუ თქვენ არ გაქვთ წითელი, არ მწვანე, და არ ლურჯი, რა ფერის გაქვთ? 1225 01:01:49,403 --> 01:01:51,009 >> აუდიტორია: [INAUDIBLE] 1226 01:01:51,009 --> 01:01:52,800 დავით Malan: თქვენ იმედი მაქვს, რომ ეს არის თეთრი. 1227 01:01:52,800 --> 01:01:55,333 სამწუხაროდ, ეს operates-- ბოდიში? 1228 01:01:55,333 --> 01:01:56,380 >> აუდიტორია: [INAUDIBLE] 1229 01:01:56,380 --> 01:01:58,630 დავით Malan: ასე, რომ თქვენ რეალურად აქვს შავი, ამ შემთხვევაში. 1230 01:01:58,630 --> 01:02:01,530 ასე რომ, თუ თქვენ გაქვთ არცერთი ეს ფერები აღმოჩნდა, თქვენ გაქვთ შავი. 1231 01:02:01,530 --> 01:02:06,510 თუმცა, თუ თქვენ გაქვთ, ვთქვათ, ბევრი მათ, როგორც ბევრი წითელი, 255 ის, 1232 01:02:06,510 --> 01:02:10,340 ბევრი მწვანე, და ბევრი ლურჯი, რომელიც არის თეთრი. 1233 01:02:10,340 --> 01:02:12,230 ასე რომ ეს არის ორი უკიდურესი. 1234 01:02:12,230 --> 01:02:17,460 ასე რომ, ამ ლოგიკით, თუ მაქვს ბევრი წითელი და არ მწვანე და არ ლურჯი, 1235 01:02:17,460 --> 01:02:18,485 რა ფერის არის, რომ? 1236 01:02:18,485 --> 01:02:19,360 აუდიტორია: [INAUDIBLE] 1237 01:02:19,360 --> 01:02:20,610 დავით Malan: მარჯვენა, ცხადია. 1238 01:02:20,610 --> 01:02:25,940 და მაშინ არ წითელი, ბევრი მწვანე, არა ლურჯი, და შემდეგ 1239 01:02:25,940 --> 01:02:29,590 თუ გაქვთ კარგად, ჩვენ უბრალოდ დასრულდება უბრალოდ იმიტომ, რომ, მაგრამ ეს, რა თქმა უნდა, 1240 01:02:29,590 --> 01:02:31,350 ახლა, არის ლურჯი. 1241 01:02:31,350 --> 01:02:33,030 და ახლა თქვენ შეგიძლიათ დააკავშიროთ ამ ფერები. 1242 01:02:33,030 --> 01:02:36,430 ახლა, როგორც განზე, თუ რომელიმე თქვენგანს აქვს ოდესმე გაკეთდეს გარკვეული ფაქტობრივი ვებ დიზაინი, 1243 01:02:36,430 --> 01:02:38,360 თქვენ შეიძლება რეალურად იხილეთ სიმბოლოები მოსწონს ეს. 1244 01:02:38,360 --> 01:02:42,030 FFF-- და რეალურად, ეს ალბათ არ არის, რომ. 1245 01:02:42,030 --> 01:02:44,380 ეს FFFFFF. 1246 01:02:44,380 --> 01:02:48,970 >> ვინმეს ოდესმე მინახავს F და E ს და A through-- გამოდის, 1247 01:02:48,970 --> 01:02:52,970 ჩვენ ვისაუბრეთ გუშინ ათობითი, და დღეს, სახის შესახებ ათობითი. 1248 01:02:52,970 --> 01:02:54,570 დღეს ჩვენ ვისაუბრეთ ორობითი. 1249 01:02:54,570 --> 01:02:59,010 გამოდის, თექვსმეტობითი არის ძალიან ერთიანი ბაზა სისტემის გამოყენება კომპიუტერულ. 1250 01:02:59,010 --> 01:03:04,960 ორობითი არის ორი, ათობითი 10, hex არის 16. 1251 01:03:04,960 --> 01:03:08,640 და აღმოჩნდება, როგორ ითვლიან თექვსმეტობითი? 1252 01:03:08,640 --> 01:03:11,620 ნულოვანი, ერთი, ორი, სამი, ოთხი, ხუთი, ექვსი, შვიდი, რვა, 1253 01:03:11,620 --> 01:03:14,730 ცხრა, რა იყენებთ შემდეგ ცხრა? 1254 01:03:14,730 --> 01:03:16,600 რა არის შემდეგი ნომერი? 1255 01:03:16,600 --> 01:03:19,180 ჩვენ უკვე გამოიყენება ნულოვანი. 1256 01:03:19,180 --> 01:03:20,570 მე უნდა 16 ამ. 1257 01:03:20,570 --> 01:03:25,770 ნულოვანი, ერთი, ორი, სამი, ოთხი, ხუთი, ექვსი, შვიდი, რვა, ცხრა, 1258 01:03:25,770 --> 01:03:27,520 თქვენ უნდა ზოგიერთი თვითნებური კონვენციას. 1259 01:03:27,520 --> 01:03:30,810 >> და რა კაცობრიობის გადაწყვიტა გარკვეული დრო წინ, რომ მას შემდეგ, ცხრა მოდის წერილი 1260 01:03:30,810 --> 01:03:34,450 და შემდეგ B და შემდეგ C. ასე რომ, გზა იმედი თექვსმეტობითი 1261 01:03:34,450 --> 01:03:37,040 ნულოვანი, ერთი, ორი, სამი, ოთხი, ხუთი, ექვსი, შვიდი, რვა, ცხრა, 1262 01:03:37,040 --> 01:03:42,880 A, B, C, D, E, F, და რომ დაითვლის თქვენ ყველა გზა, თურმე, 15. 1263 01:03:42,880 --> 01:03:47,850 ასე რომ, ნულოვანი 15 ნულოვანი მეშვეობით F. ახლა რატომ არის, რომ მნიშვნელოვანი? 1264 01:03:47,850 --> 01:03:51,570 ისე, როდესაც თქვენ გაქვთ ორი F ს, ეს არის ის, თუ როგორ გამოვხატოთ 255. 1265 01:03:51,570 --> 01:03:54,350 >> ასე რომ გრძელი ამბავი მოკლედ, მსოფლიოს Photoshop, 1266 01:03:54,350 --> 01:03:57,299 რომ გრაფიკული დიზაინი პროგრამული უზრუნველყოფა, მსოფლიოში ვებ განვითარება, 1267 01:03:57,299 --> 01:03:59,590 სადაც თქვენ უნდა ბევრი ფერები, რა თქმა უნდა, თამაში, 1268 01:03:59,590 --> 01:04:02,350 ხშირად პროგრამისტები გამოხატავენ იმ თექვსმეტობითი, 1269 01:04:02,350 --> 01:04:05,260 მხოლოდ იმიტომ, რომ ეს ტენდენცია იყოს ცოტა მარტივია. 1270 01:04:05,260 --> 01:04:07,850 მიუხედავად იმისა, რომ ერთი შეხედვით ეს ბევრად უფრო რთული. 1271 01:04:07,850 --> 01:04:11,590 >> ასე რომ, ნებისმიერ შემთხვევაში, ეს არის მნიშვნელოვანი იმიტომ, რომ ნიკა სტენფორდის 1272 01:04:11,590 --> 01:04:15,100 მოგვცა ექვსი ცალი ფუნქცია რომ თქვენ, დაწყებული პროგრამისტების, 1273 01:04:15,100 --> 01:04:17,060 ახლა აქვს უნარი გამოიყენოს. 1274 01:04:17,060 --> 01:04:19,960 ჩაშენებული ამ ვებ გვერდი ექვსი ფუნქციები, 1275 01:04:19,960 --> 01:04:21,820 ექვსი პროცედურები, რომ ნიკა დაწერა. 1276 01:04:21,820 --> 01:04:26,800 სამი მათგანი მიიღებს თქვენ ნომერი, წითელი, მწვანე, ან ლურჯი ღირებულება. 1277 01:04:26,800 --> 01:04:28,787 სამი მათგანი იქნება, რომ მნიშვნელობა. 1278 01:04:28,787 --> 01:04:30,620 და ეს ხაზს უსვამს უბრალოდ placeholders, 1279 01:04:30,620 --> 01:04:32,600 ასე რომ თქვენ უნდა იცოდეს, თუ რა არის ის. 1280 01:04:32,600 --> 01:04:36,240 >> ასე რომ, ამ სამი ფუნქციები, პირველი ასეთი რამ 1281 01:04:36,240 --> 01:04:39,190 ეს იქნება x კოორდინირება, და მეორე, ეს ყველაფერი 1282 01:04:39,190 --> 01:04:40,700 აპირებს იყოს y-კოორდინაციას. 1283 01:04:40,700 --> 01:04:44,650 სხვა სიტყვებით, რომელიც dot, რომელიც pixel არ გსურთ მიიღოთ მწვანე, 1284 01:04:44,650 --> 01:04:46,480 მიიღეთ ლურჯი, კიდევ წითელი. 1285 01:04:46,480 --> 01:04:51,440 და მერე აქ, ეს იქნება x, ეს იქნება y ღირებულება, 1286 01:04:51,440 --> 01:04:55,379 და ეს იქნება ნომერი. 1287 01:04:55,379 --> 01:04:57,170 მოდით გავაკეთოთ პირველი ხაზი ამ ერთად 1288 01:04:57,170 --> 01:05:00,220 და მერე მე რომ თქვენ ცდილობენ დავასკვნათ დანარჩენი. 1289 01:05:00,220 --> 01:05:03,100 ასე რომ, თითო ინსტრუქციები ამ გვერდზე, ჩვენ გვჭირდება 1290 01:05:03,100 --> 01:05:08,960 გაზრდის წითელი ფაქტორი 10, და ჩვენ უნდა ამოიღონ მწვანე 1291 01:05:08,960 --> 01:05:09,930 და ამოიღონ ლურჯი. 1292 01:05:09,930 --> 01:05:12,410 დავიწყოთ ამ უკანასკნელის სცენარი. 1293 01:05:12,410 --> 01:05:17,760 ასე რომ, თუ მინდა, და მე ვაპირებ აბზაცის გამოყენებით ზოგიერთი ფართები, 1294 01:05:17,760 --> 01:05:22,291 თუ მინდა, რომ მითითებული წითელი, მწვანე, ან ლურჯი ღირებულება, 1295 01:05:22,291 --> 01:05:23,540 მე ვაპირებ ამის შემდეგ. 1296 01:05:23,540 --> 01:05:31,280 >> გამოსახულება, im.setBlue და შემდეგ საფუძველზე, ჩემს მითითებებს აქ, 1297 01:05:31,280 --> 01:05:36,700 რა სამი რამ უნდა ჩაწერეთ შიგნით ფრჩხილებში ახლა? 1298 01:05:36,700 --> 01:05:41,960 მე უნდა x ღირებულება, y ღირებულება, და რა რაოდენობის 1299 01:05:41,960 --> 01:05:48,770 უნდა დააყენოს აქ, თუ მინდა, რომ თავი დაეღწია ლურჯი, ეფუძნება ეს ამბავი აქ? 1300 01:05:48,770 --> 01:05:49,630 მხოლოდ ნულოვანი. 1301 01:05:49,630 --> 01:05:52,420 თუ მე აღარ მინდა ლურჯი, მე მხოლოდ აპირებს შეცვალოს იგი ნულის ტოლია. 1302 01:05:52,420 --> 01:05:54,465 >> ახლა მოდით უბრალოდ recap, თუ რას აკეთებს. 1303 01:05:54,465 --> 01:05:56,970 1304 01:05:56,970 --> 01:06:01,170 მაქვს ამ დაბრუნება მეორე და მესამე ხაზი, 1305 01:06:01,170 --> 01:06:04,080 მე მტკიცებით ორი მარყუჟების, წყობილი მარყუჟების, თუ 1306 01:06:04,080 --> 01:06:08,360 იქნება, რომ ვაპირებთ აქვს ეფექტი პროგრესირებს მარცხენა მარჯვნივ, 1307 01:06:08,360 --> 01:06:11,590 ზედა ქვედა მეტი ყველა x ღირებულებები და ყველა y ღირებულებებს. 1308 01:06:11,590 --> 01:06:15,167 იმის გამო, რომ ერთხელ, სურათი მხოლოდ ქსელის რიგები და სვეტები. 1309 01:06:15,167 --> 01:06:17,000 ასე რომ, ეს აპირებს მოისპოს ყველა ლურჯი. 1310 01:06:17,000 --> 01:06:18,627 ნება მომეცით, რომ მომდევნო ხაზი თქვენ. 1311 01:06:18,627 --> 01:06:20,043 როგორ შემიძლია მოშორება ყველა მწვანე? 1312 01:06:20,043 --> 01:06:23,747 1313 01:06:23,747 --> 01:06:25,140 >> აუდიტორია: [INAUDIBLE] 1314 01:06:25,140 --> 01:06:26,151 >> დავით Malan: Nice. 1315 01:06:26,151 --> 01:06:28,260 >> აუდიტორია: [INAUDIBLE] 1316 01:06:28,260 --> 01:06:30,850 >> დავით Malan: Nice. 1317 01:06:30,850 --> 01:06:36,120 და მე ვაპირებ დააშორებს, და მხოლოდ მიიღოს ზრუნვა, რომ თქვენ არ კეთდება ნებისმიერი typos. 1318 01:06:36,120 --> 01:06:39,390 და თუ თქვენ კომფორტულად ერთად, რას ვაკეთებ, 1319 01:06:39,390 --> 01:06:42,936 წავიდეთ წინ და დააჭირეთ ღილაკს აწარმოებს / შენახვა და ვხედავ, რაც თქვენ. 1320 01:06:42,936 --> 01:06:46,982 1321 01:06:46,982 --> 01:06:48,690 ისევ და ისევ, ჩვენ გააკეთა მხოლოდ სამი ცვლილებები. 1322 01:06:48,690 --> 01:06:52,130 ჩვენ იშლება, რომ პირველი კომენტარი და შეცვალა იგი 1323 01:06:52,130 --> 01:06:53,575 ამ ორი ხაზი კოდი. 1324 01:06:53,575 --> 01:06:55,742 1325 01:06:55,742 --> 01:06:58,450 და ეს OK, თუ თქვენ უნდა მოხვდა პერსპექტივაში / Save ღილაკს რამდენიმე ჯერ 1326 01:06:58,450 --> 01:07:01,190 დაფიქსირება რაღაც. 1327 01:07:01,190 --> 01:07:03,610 >> ნება მიბოძეთ, ასევე მიუახლოვდით ჩემი კოდი, ასე რომ თქვენ შეიძლება transcribe. 1328 01:07:03,610 --> 01:07:04,110 კარგი. 1329 01:07:04,110 --> 01:07:08,720 ასე ვხედავ Andrew აქვს რა როგორც ჩანს, შეცდომა. 1330 01:07:08,720 --> 01:07:11,110 ის უბრალოდ მიიღო დიდი შავი ოთხკუთხედი მისი ეკრანზე. 1331 01:07:11,110 --> 01:07:13,120 ამჯამად ვინმეს აქვს დიდი შავი ოთხკუთხედი? 1332 01:07:13,120 --> 01:07:13,390 >> აუდიტორია: დიახ. 1333 01:07:13,390 --> 01:07:14,360 >> დავით Malan: დიდი შავი ოთხკუთხედი? 1334 01:07:14,360 --> 01:07:16,068 OK, მოდით ვიფიქროთ რას ნიშნავს ეს. 1335 01:07:16,068 --> 01:07:20,560 ჩვენ ვთქვით, რომ ნულოვანი, ნულოვანი, ნულოვანი, ასე რომ, არ მწვანე, არა წითელი, არ ლურჯი, 1336 01:07:20,560 --> 01:07:21,980 აპირებს თუ არა შავი. 1337 01:07:21,980 --> 01:07:24,467 და აღმოჩნდება, რომ საუკეთესო ჩვენი ლაპტოპები 1338 01:07:24,467 --> 01:07:25,800 უბრალოდ არ არის საკმარისი ერთგულება. 1339 01:07:25,800 --> 01:07:27,750 თქვენ არ შეგიძლიათ საკმაოდ გითხრათ არ რეალურად რაღაც არსებობს. 1340 01:07:27,750 --> 01:07:30,340 და თუ სახის იქნებ მჭლე თქვენს ეკრანზე წინ და უკან, 1341 01:07:30,340 --> 01:07:32,850 იქნებ ხედავთ რაღაც არსებობს? 1342 01:07:32,850 --> 01:07:34,820 შესაძლოა, სახის, სახის? 1343 01:07:34,820 --> 01:07:36,640 ეს არ არის შესანიშნავად შავი. 1344 01:07:36,640 --> 01:07:38,050 >> აუდიტორია: [INAUDIBLE] 1345 01:07:38,050 --> 01:07:39,510 >> დავით Malan: სპოილერი! 1346 01:07:39,510 --> 01:07:42,610 არსებობს გარკვეული წითელი არსებობს, მაგრამ მახსოვს სპეციფიკაციები 1347 01:07:42,610 --> 01:07:44,940 პრობლემა, ნიკ ტონს მას. 1348 01:07:44,940 --> 01:07:47,860 მან desaturated ეს გარკვეულწილად, მაგრამ არა ყველა გზა ნულოვანი. 1349 01:07:47,860 --> 01:07:51,670 ასე რომ, თუ ჩვენ გვინდა, რომ magnify თანხა წითელი, ნება მომეცით შესთავაზოს ამ შეასრულა. 1350 01:07:51,670 --> 01:07:53,750 ნება მომეცით zoom ჩემს ეკრანზე. 1351 01:07:53,750 --> 01:07:58,678 და ნება მომეცით წავიდეთ წინ და აცხადებენ, თანხა უდრის im.getRed (x, y). 1352 01:07:58,678 --> 01:08:02,440 1353 01:08:02,440 --> 01:08:05,790 >> ეს ხაზი კოდი, რაც მე რაღაც მოუწოდა ცვლადი. 1354 01:08:05,790 --> 01:08:09,643 მაქვს თვითნებურად, მაგრამ, სავარაუდოდ, გონივრულად მოუწოდა ჩემი ცვლადი რა, 1355 01:08:09,643 --> 01:08:10,143 როგორც ჩანს? 1356 01:08:10,143 --> 01:08:13,530 1357 01:08:13,530 --> 01:08:14,340 თანხა. 1358 01:08:14,340 --> 01:08:14,980 უბრალოდ თანხა. 1359 01:08:14,980 --> 01:08:16,960 მე ვერ მოვისმინეთ უწოდა არაფერი მინდა, მაგრამ მე 1360 01:08:16,960 --> 01:08:19,490 გამოყენებისას სხვა ფუნქცია რომ მე აღწერილი ადრე 1361 01:08:19,490 --> 01:08:25,359 მიიღოთ თანხა წითელი at x მძიმით y. 1362 01:08:25,359 --> 01:08:27,520 რატომ გავაკეთე, რომ? 1363 01:08:27,520 --> 01:08:30,004 რა გინდა აქ? 1364 01:08:30,004 --> 01:08:32,910 1365 01:08:32,910 --> 01:08:33,619 თქვენ უნდა add-- 1366 01:08:33,619 --> 01:08:34,493 აუდიტორია: [INAUDIBLE] 1367 01:08:34,493 --> 01:08:36,279 დავით Malan: დიახ, შესაძლოა გავამრავლოთ იგი 10. 1368 01:08:36,279 --> 01:08:38,862 და თუ არ ვიცი, მე ვარ ვაპირებ წავიდეთ წინ და ამის გაკეთება. 1369 01:08:38,862 --> 01:08:42,060 მე ვაპირებ წავიდეთ წინ და ვთქვათ, მე მინდა ოდენობით წითელი 1370 01:08:42,060 --> 01:08:46,550 მე მინდა, რომ რაც არ უნდა არის წითელი, 10-ჯერ 1371 01:08:46,550 --> 01:08:50,330 და ვარსკვლავი, ვარსკვლავი თქვენს კლავიატურის the-- არ იყენებენ x. 1372 01:08:50,330 --> 01:08:51,569 გამოიყენეთ ვარსკვლავი. 1373 01:08:51,569 --> 01:08:55,350 აი, როგორ უნდა გავამრავლოთ რამ ყველაზე პროგრამირების ენები. 1374 01:08:55,350 --> 01:08:59,790 >> ასე რომ, შესაბამისად Kareem ინტუიცია, ინახება ამ ცვლადში თანხა, 1375 01:08:59,790 --> 01:09:03,649 არის, თუ რამდენად წითელი მე მინდა ადგილმდებარეობა xy. 1376 01:09:03,649 --> 01:09:11,500 როგორ, ახლა, ნუ მე რომ Pixel აქვს, რომ ნომერი? 1377 01:09:11,500 --> 01:09:12,859 თქვენ უკვე გაკეთდა ადრე. 1378 01:09:12,859 --> 01:09:17,666 თქვენ მითითებული მწვანე და ლურჯი არ ღირებულება, ნულის ტოლია. 1379 01:09:17,666 --> 01:09:18,540 აუდიტორია: [INAUDIBLE] 1380 01:09:18,540 --> 01:09:20,040 დავით Malan: დიახ, კარგად თქვენ არ გვინდა, რომ ეს 10. 1381 01:09:20,040 --> 01:09:21,460 თქვენ უკვე გააკეთა მათემატიკის აქ. 1382 01:09:21,460 --> 01:09:24,779 ასე რომ, ჩვენ ვიღებთ ღირებულების წითელი, რომელიც დაბალი ნომერი, სავარაუდოდ. 1383 01:09:24,779 --> 01:09:26,180 ვამრავლებთ მიერ 10. 1384 01:09:26,180 --> 01:09:29,139 რა გინდათ უნდა გააკეთოს ცვლადი თანხის ახლა? 1385 01:09:29,139 --> 01:09:30,130 >> აუდიტორია: [INAUDIBLE] 1386 01:09:30,130 --> 01:09:30,880 >> დავით Malan: Nice. 1387 01:09:30,880 --> 01:09:34,616 ასე რომ, im.set-- რა? 1388 01:09:34,616 --> 01:09:35,640 >> აუდიტორია: setRed. 1389 01:09:35,640 --> 01:09:39,760 >> დავით Malan: setRed, საიდან xy. 1390 01:09:39,760 --> 01:09:40,260 ჰო. 1391 01:09:40,260 --> 01:09:41,200 და მხოლოდ თანხა. 1392 01:09:41,200 --> 01:09:44,257 სხვა სიტყვებით, ცვლადი დროებითი placeholder 1393 01:09:44,257 --> 01:09:45,840 რომ შეგიძლიათ არაფერი გსურთ. 1394 01:09:45,840 --> 01:09:48,680 ჩვენ არ უნდა იყოს გამოსული რაოდენობის ეს, იმ მომენტში. 1395 01:09:48,680 --> 01:09:51,569 ჩვენ მრავლდება ის 10 რათა ის უფრო დიდი. 1396 01:09:51,569 --> 01:09:56,480 და ახლა მე შემცვლელი, რომ ცვლადი იმის გამო, რომ მესამე არგუმენტი, ან შეყვანის 1397 01:09:56,480 --> 01:09:57,810 მითითებული წითელი. 1398 01:09:57,810 --> 01:10:00,440 და ისე, რომ ერთხელ თქვენ დასრულდება, რომ, და მიიღოს ნოტა 1399 01:10:00,440 --> 01:10:02,330 ნახევრად colons და ფრჩხილებში. 1400 01:10:02,330 --> 01:10:06,290 >> წავიდეთ წინ და დააჭირეთ აწარმოებს / გადარჩენა ერთხელ, და თქვენ 1401 01:10:06,290 --> 01:10:10,690 უნდა დაინახოს, magically, რა იყო რეალურად არსებობს. [? Arwa,?] რა არის იქ? 1402 01:10:10,690 --> 01:10:16,412 ეიფელის კოშკი სრულფასოვანი წითელი, საკმაოდ მუქი. 1403 01:10:16,412 --> 01:10:17,870 ეს უნდა იყოს უფრო აშკარა ახლა, არა? 1404 01:10:17,870 --> 01:10:18,840 კარგი. 1405 01:10:18,840 --> 01:10:20,215 და ანდრეა, აღარ შავი ყუთი? 1406 01:10:20,215 --> 01:10:21,090 აუდიტორია: [INAUDIBLE] 1407 01:10:21,090 --> 01:10:22,180 დავით Malan ყველა უფლება. 1408 01:10:22,180 --> 01:10:23,610 ასე რომ, მე გავაგრძელებთ ამ ეკრანზე. 1409 01:10:23,610 --> 01:10:27,010 თუ გსურთ ითამაშოს ამ მოგვიანებით, მე ხელახლა ეს თქვენთვის. 1410 01:10:27,010 --> 01:10:29,140 მაგრამ ეს კოდი აქ ზუსტად რომ. 1411 01:10:29,140 --> 01:10:31,460 რატომ არ უნდა გავაკეთოთ ერთი სხვა. 1412 01:10:31,460 --> 01:10:33,880 ნება მომეცით გადახვევა ქვემოთ ოდნავ. 1413 01:10:33,880 --> 01:10:36,760 >> ასე რომ, ამ შემთხვევაში, პროექტორი ნამდვილად არ სამართლიანობა. 1414 01:10:36,760 --> 01:10:40,486 მაგრამ თქვენს ეკრანებზე, ალბათ, აქვს ძალიან წითელი და ძალიან შავი ყუთი. 1415 01:10:40,486 --> 01:10:42,610 ეს, ძალიან, არის თავსატეხი, რომ აჩვენებს რაღაც ცნობილი. 1416 01:10:42,610 --> 01:10:44,193 თუმცა, იმიჯი უკვე დამახინჯებული. 1417 01:10:44,193 --> 01:10:47,740 ნამდვილი სურათი, ამ დროს, ლურჯი და მწვანე ღირებულებებს. 1418 01:10:47,740 --> 01:10:51,820 თუმცა, ისინი ყველა იყოფა 20 ასე ღირებულებებს ძალიან მცირე. 1419 01:10:51,820 --> 01:10:54,660 წითელი ღირებულებები მხოლოდ შემთხვევითი ნომრები, ხმაური. 1420 01:10:54,660 --> 01:10:57,190 გაუქმება ამ სხვაობა გამოავლინოს ნამდვილი იმიჯი. 1421 01:10:57,190 --> 01:10:59,200 >> ასე რომ, ნიკ შემდეგ ეუბნება, თუ რა უნდა გააკეთოს. 1422 01:10:59,200 --> 01:11:04,290 უცნობია წითელი ფასეულობები ნულოვანი და მაშინ არ გააფუჭებს, რა არის. 1423 01:11:04,290 --> 01:11:07,110 შემდეგ გავამრავლოთ ლურჯი და მწვანე ღირებულებებს 20. 1424 01:11:07,110 --> 01:11:09,820 ასე რომ, ეს არის თითქმის იმავე პროგრამით, როგორც ადრე, 1425 01:11:09,820 --> 01:11:11,380 მაგრამ თქვენ უკუქცევის პროცესი. 1426 01:11:11,380 --> 01:11:13,780 და მე დააყენა ჩემი კოდი სანამ ეკრანზე შემთხვევაში 1427 01:11:13,780 --> 01:11:16,650 გსურთ მიმართოს უკან კი ან ითამაშოს უფრო, რომ ერთი. 1428 01:11:16,650 --> 01:11:18,100 მიადევნე თვალი მიუახლოვდით რომ. 1429 01:11:18,100 --> 01:11:21,450 მაგრამ გადაჭრით სპილენძის გამოსახულება თავსატეხი, ნომერი ორი. 1430 01:11:21,450 --> 01:11:37,623 1431 01:11:37,623 --> 01:11:40,580 >> აუდიტორია: [INAUDIBLE] 1432 01:11:40,580 --> 01:11:44,010 >> დავით Malan: OK, ასე რომ ამ ერთი მე ვარ არ აპირებენ, როგორც ბევრი მინიშნებები. 1433 01:11:44,010 --> 01:11:47,220 ასე რომ, მე would-- OH, მოდით ვხედავ, თქვენ გაქვთ typo აქ. 1434 01:11:47,220 --> 01:11:49,621 ასე მახსოვს, ეს აქ რეალურად სჭირდება წასასვლელად. 1435 01:11:49,621 --> 01:11:52,870 ასე რომ, რა მინდა შესთავაზოს, თუ გვინდა, რომ ფოკუსირება ამ ერთი, არ არის პასუხი. 1436 01:11:52,870 --> 01:11:57,060 თუ გსურთ ტრანსკრიფციას, რომ, უნდა მიიღოს პირველი სამუშაო. 1437 01:11:57,060 --> 01:11:59,910 და შემდეგ შეგიძლიათ გამოიყენოთ, რომ როგორც შთაგონების მეორე. 1438 01:11:59,910 --> 01:12:02,230 Nice. 1439 01:12:02,230 --> 01:12:02,730 კარგი. 1440 01:12:02,730 --> 01:12:05,430 1441 01:12:05,430 --> 01:12:08,180 >> და ცნობისმოყვარე, ეს არის მარტივი მაგალითი 1442 01:12:08,180 --> 01:12:11,080 მეცნიერების ან ხელოვნების მოუწოდა steganography, 1443 01:12:11,080 --> 01:12:14,100 ხელოვნების ინფორმაციის დამალვაში images. 1444 01:12:14,100 --> 01:12:16,890 როგორც წესი, images შეიძლება იყოს watermarked უხეშად 1445 01:12:16,890 --> 01:12:19,500 ლოგო ქვედა კუთხეში, მაგრამ, ცხადია, თქვენ 1446 01:12:19,500 --> 01:12:22,070 შეიძლება იყოს ბევრად უფრო დახვეწილი და რეალურად 1447 01:12:22,070 --> 01:12:25,050 დამალვა სხვა სურათები სურათები რატომღაც ამ ტექნიკით. 1448 01:12:25,050 --> 01:12:59,890 1449 01:12:59,890 --> 01:13:05,770 >> მიიღოს სხვა 30 წამში, და მაშინ ჩვენ მინიმუმ აცხადებს ის, რაც თქვენ უნდა დაინახოს. 1450 01:13:05,770 --> 01:13:08,330 და მე დავტოვებთ მესამე ერთი, როგორც სახლში სწავლება, 1451 01:13:08,330 --> 01:13:11,353 თუ გსურთ მეტი გამოწვევას ამ კვირის ბოლოს. 1452 01:13:11,353 --> 01:13:18,240 1453 01:13:18,240 --> 01:13:20,390 და მე ვფიქრობ, Andrew შეიძლება მიღებული იგი. 1454 01:13:20,390 --> 01:13:22,645 რა არის მეორე სურათი, ანდრია? 1455 01:13:22,645 --> 01:13:23,920 >> აუდიტორია: თავისუფლების ქანდაკება. 1456 01:13:23,920 --> 01:13:28,500 >> დავით Malan: Statue of Liberty იქნება პასუხი ამ დროს. 1457 01:13:28,500 --> 01:13:31,140 ასე რომ, კიდევ ერთხელ, მხოლოდ რამდენიმე მარტივი მაგალითები, რომლის მიზანი 1458 01:13:31,140 --> 01:13:35,040 არის გადმოგცეთ გრძნობა, თუ როგორ ჩვენ თარგმნილი ფერწერული Scratch 1459 01:13:35,040 --> 01:13:40,410 ბლოკები უფრო შემაშფოთებელი და მეტი რთული კოდი, მაგრამ ყველა იმ იდეებისა 1460 01:13:40,410 --> 01:13:42,980 დღესაც ზუსტად იგივე, თუმცა დანერგვა 1461 01:13:42,980 --> 01:13:48,380 ახლა ცნება ცვლადი, რომ შეუძლია შეინახოს რაღაც დროებით. 1462 01:13:48,380 --> 01:13:51,750 >> მოდით გავაკეთოთ კიდევ ერთი პრაქტიკული, მხოლოდ იმიტომ, რომ ახლა დაკავშირება წერტილების 1463 01:13:51,750 --> 01:13:53,880 რაღაც ცოტა უფრო რეალურ სამყაროში. 1464 01:13:53,880 --> 01:13:56,610 როდესაც თქვენ მზად, თუ შეიძლება გადადით ამ URL ეკრანზე. 1465 01:13:56,610 --> 01:14:00,610 სწორედ ასევე თქვენი ასლი სლაიდები, developers.google.com/maps~~V. 1466 01:14:00,610 --> 01:14:03,660 მოდით რეალურად რაღაც რეალური, ასე ვთქვათ, ვებ 1467 01:14:03,660 --> 01:14:07,600 გამოყენებით Google Maps API, ან განაცხადის პროგრამირების ინტერფეისი, 1468 01:14:07,600 --> 01:14:08,940 შემდეგ გზა. 1469 01:14:08,940 --> 01:14:12,341 >> Google, როგორც ბევრი კომპანიები, უზრუნველყოფს ბევრი თავისუფალი ფუნქციონირება 1470 01:14:12,341 --> 01:14:14,840 რომ თქვენ შეგიძლიათ გამოიყენოთ აშენება თქვენი საკუთარი საინტერესო პროგრამები. 1471 01:14:14,840 --> 01:14:18,890 სინამდვილეში, თუ თქვენ ოდესმე გამოყენებული Uber მიიღოს კაბინა ან მანქანაში, 1472 01:14:18,890 --> 01:14:21,640 ალბათ იცით, რომ Uber აქვს რუკა და ეს გვიჩვენებს, მანქანა მას. 1473 01:14:21,640 --> 01:14:24,870 რომ არის, როგორც საუკეთესო, რაც შემიძლია გითხრათ, Google Maps API. 1474 01:14:24,870 --> 01:14:28,884 ისინი რეალურად გამოყენებით Google- ის რუკები, მაგრამ Uber არ არის რუკების კომპანია, 1475 01:14:28,884 --> 01:14:31,050 არც იქნებოდა, რომ იყოს განსაკუთრებით საინტერესო პრობლემა 1476 01:14:31,050 --> 01:14:33,510 გადაწყვიტოს თავზე მანქანით მომსახურება პრობლემა. 1477 01:14:33,510 --> 01:14:35,510 ასე რომ, ისინი დგანან, ერთხელ, მხრებზე 1478 01:14:35,510 --> 01:14:37,520 სხვები, Google ამ შემთხვევაში. 1479 01:14:37,520 --> 01:14:42,850 ასე რომ, ისინი გამოიყენოთ Google- ის რუკები, მაგრამ საკუთარი მანქანის მომსახურების და სხვა ასეთი თვისებები. 1480 01:14:42,850 --> 01:14:47,770 >> ამიტომ, ჩვენ ვაპირებთ, რომ ისარგებლოს ეს უნდა გავაკეთოთ შემდეგ. 1481 01:14:47,770 --> 01:14:50,230 და თუ მე წასული ძალიან სწრაფად, უბრალოდ მირეკავენ მეტი მომენტი. 1482 01:14:50,230 --> 01:14:53,500 Happy რომ Recap ზოგიერთი გამოსახულება პერსონალი. 1483 01:14:53,500 --> 01:14:56,290 თქვენ უნდა ნახოთ თავს ერთი გვერდი მოსწონს ეს. 1484 01:14:56,290 --> 01:14:58,230 ასე რომ Google- ის ლამაზი და ისინი შორის საუკეთესო 1485 01:14:58,230 --> 01:15:01,364 უზრუნველყოფს არა მხოლოდ APIs, მაგრამ უფასო APIs, რომ თქვენ 1486 01:15:01,364 --> 01:15:02,780 შეგიძლიათ ითამაშოთ ერთად ან კომერციულად. 1487 01:15:02,780 --> 01:15:06,450 ისინი დაიწყოს დატენვის თქვენ, თუ თქვენი გამოყენება მაღალია, მაგრამ მივედი ადრე წინასწარ 1488 01:15:06,450 --> 01:15:10,490 და ხელმოწერილი ჩვენს up უფასო ანგარიში რომელიც, იმედია, 10 კომპიუტერი 1489 01:15:10,490 --> 01:15:12,480 არ დისკვალიფიკაცია ჩვენთვის მოულოდნელად. 1490 01:15:12,480 --> 01:15:14,320 ასე რომ იმედია ეს აქციის იმუშავებს. 1491 01:15:14,320 --> 01:15:18,840 >> და შენიშნავს, რომ მათ აქვთ APIs for Android, iOS, ვებ, და ვებ მომსახურება, 1492 01:15:18,840 --> 01:15:19,620 რასაც არ არის. 1493 01:15:19,620 --> 01:15:20,700 მოდით ფოკუსირება ინტერნეტში. 1494 01:15:20,700 --> 01:15:26,560 ასე დააჭირეთ ვარდისფერი ყუთი, ვებ, და ეს მიგვიყვანს თქვენ, იმედია, გვერდი 1495 01:15:26,560 --> 01:15:27,630 აქ. 1496 01:15:27,630 --> 01:15:29,335 და მათ მოხვდით მთელი bunch of APIs. 1497 01:15:29,335 --> 01:15:31,210 და ეს შეიძლება იყოს პატარა აბსოლუტური თავდაპირველად, 1498 01:15:31,210 --> 01:15:33,000 მაგრამ მე იზიარებს ჩვენს მეშვეობით, რაც ჩვენ გვინდა. 1499 01:15:33,000 --> 01:15:38,500 >> ზედა მარცხენა არის Google Maps JavaScript API, JavaScript API. 1500 01:15:38,500 --> 01:15:40,380 ასე რომ, წავიდეთ წინ და დააჭირეთ, რომ ერთი. 1501 01:15:40,380 --> 01:15:49,360 და რომელიც მიგვიყვანს თქვენ ახლა შემდეგი გვერდი demos და ნიმუში კოდი. 1502 01:15:49,360 --> 01:15:51,190 ნება მომეცით დააშორებს აქ. 1503 01:15:51,190 --> 01:15:56,300 და ნება მომეცით მიიღოს us, რომელთა მიზანია გადახვევა ქვემოთ იქ, სადაც ის ამბობს, სწრაფი დაწყება ნაბიჯები. 1504 01:15:56,300 --> 01:15:57,970 თქვენს ეკრანზე უნდა გამოიყურებოდეს აფეთქდა. 1505 01:15:57,970 --> 01:16:01,130 >> და იქ ორი ნაბიჯი, მიიღოს გასაღები და დაიწყოს ვითარდება. 1506 01:16:01,130 --> 01:16:04,190 მე უკვე გააკეთა ნაბიჯი ერთი ჩვენთვის, მიღების ე.წ. გასაღები. 1507 01:16:04,190 --> 01:16:05,320 და ეს არის საერთო აზრი. 1508 01:16:05,320 --> 01:16:09,210 API გასაღები ზოგადად მხოლოდ დიდი შემთხვევითი ნომერი ან სიმებიანი 1509 01:16:09,210 --> 01:16:11,130 რომ თქვენ უნდა ჩასვით თქვენი კოდი, 1510 01:16:11,130 --> 01:16:15,280 ისე, რომ Google იცის ვინ ხარ შენ, როდესაც თქვენ გამოყენებით მათი მომსახურების, მათი API. 1511 01:16:15,280 --> 01:16:17,370 იმას არ ნიშნავს, რომ ჩვენ ბრალდებულნი არაფერი. 1512 01:16:17,370 --> 01:16:21,030 და ახლა, დააწკაპუნეთ ნაცვლად, ერთი, დააჭირეთ დაიწყოს ვითარდება. 1513 01:16:21,030 --> 01:16:25,990 თუ შეიძლება მხოლოდ ტალღის me მეტი თუ არ ვარ დარწმუნებული, სადაც ჩვენ ვართ. 1514 01:16:25,990 --> 01:16:28,040 >> ასე რომ, ჩვენ მხოლოდ გადასაფხეკი ზედაპირზე, მაგრამ აქ რა 1515 01:16:28,040 --> 01:16:31,000 მეგონა იქნებოდა მყარი რეალურად აქვს ყველა ჩვენგანი, 1516 01:16:31,000 --> 01:16:34,240 გამოყენებით Cloud9 ერთი ფანჯრის და ამ tutorial სხვა ფანჯარაში, 1517 01:16:34,240 --> 01:16:37,120 მოდით რეალურად მიიღეთ ჩვენი საკუთარი პროგრამა და გაშვებული 1518 01:16:37,120 --> 01:16:40,920 რომ embeds საბაჟო Google რუკაზე ჩვენს ვებგვერდზე, 1519 01:16:40,920 --> 01:16:43,010 და შემდეგ დასძენს ერთი ან ორი თვისებები. 1520 01:16:43,010 --> 01:16:45,520 მაგრამ ჩვენ მხოლოდ გადასაფხეკი ზედაპირზე რა შეგვიძლია გავაკეთოთ. 1521 01:16:45,520 --> 01:16:47,020 >> ასე რომ, მხოლოდ სწრაფი საღი აზრის ქვითარი. 1522 01:16:47,020 --> 01:16:49,740 ყველას ამ გვერდზე, Google Maps JavaScript API? 1523 01:16:49,740 --> 01:16:50,872 უნდა ითქვას, მიღება დაიწყო. 1524 01:16:50,872 --> 01:16:53,330 ჩვენ არ ვაპირებთ, უნდა გაიაროს მთელი რამ ნებისმიერი გზით. 1525 01:16:53,330 --> 01:16:58,090 OK, სხვა tab, თუ არ აქვს ღია, არ წასვლას Cloud9 1526 01:16:58,090 --> 01:17:03,500 და მისაღებად უბრალოდ ახალი tab, საბოლოოდ. 1527 01:17:03,500 --> 01:17:11,070 ასე რომ კიდევ ერთხელ, c9.io გუშინ, c9.io და უბრალოდ შექმნათ ახალი ფაილი. 1528 01:17:11,070 --> 01:17:13,500 და წავიდეთ წინ და მოწოდება ის რაც გსურთ. 1529 01:17:13,500 --> 01:17:16,495 დავურეკე ჩემი map.html. 1530 01:17:16,495 --> 01:17:17,870 მას არაფერი მთავრდება .html. 1531 01:17:17,870 --> 01:17:23,930 1532 01:17:23,930 --> 01:17:26,580 და თქვენ უნდა იყოს უხეშად სადაც მე ვარ ამ პროცესში 1533 01:17:26,580 --> 01:17:31,470 მხოლოდ მოციმციმე სწრაფი ცარიელ tab ეწოდება რაღაც map.html. 1534 01:17:31,470 --> 01:17:35,808 1535 01:17:35,808 --> 01:17:38,148 ან ფაილი, ახალი ფაილი ამ დროს. 1536 01:17:38,148 --> 01:17:41,960 1537 01:17:41,960 --> 01:17:48,000 >> და ახლა, დასრულდა Google Maps JavaScript API, 1538 01:17:48,000 --> 01:17:50,010 ჩვენ გაფართოებული მოსმენით მთელი ეს ტექსტი. 1539 01:17:50,010 --> 01:17:53,760 მაგრამ შეამჩნია, რომ hello მსოფლიოში არის მართლაც ყველგან, თქვენ დანახვა. 1540 01:17:53,760 --> 01:17:58,020 გაუმარჯოს მსოფლიოში ამ დიდი ფერადი მაგალითად მთელი bunch of HTML. 1541 01:17:58,020 --> 01:18:03,590 წავიდეთ წინ და დააკოპირეთ და ჩასვით მხოლოდ, რომ HTML, ასე რომ, doc ტიპის ზედა 1542 01:18:03,590 --> 01:18:08,810 ყველა გზა მჭიდრო HTML tag, წასვლა წინ და დააკოპირეთ ყველა that-- ერთხელ, 1543 01:18:08,810 --> 01:18:14,430 რომ ქვეშ hello მსოფლიოში მაგალითად და ჩასვით რომ თქვენი Cloud9 tab, 1544 01:18:14,430 --> 01:18:17,996 ასე რომ, ახლა თქვენს ეკრანზე უნდა გამოიყურებოდეს დაახლოებით, როგორიც ჩემია. 1545 01:18:17,996 --> 01:18:22,280 1546 01:18:22,280 --> 01:18:24,520 >> და შეგიძლიათ შეინახოთ, მაგრამ არ ჩატვირთოს ის უბრალოდ არ არის. 1547 01:18:24,520 --> 01:18:26,290 მოდით პირველი შევხედოთ კოდი და ვნახოთ, თუ ჩვენ 1548 01:18:26,290 --> 01:18:29,110 ვერ დასკვნის ან ვისწავლოთ ეხლა, რა არის Google 1549 01:18:29,110 --> 01:18:30,860 ჰქონდა us ბრმა ასლი და პასტა. 1550 01:18:30,860 --> 01:18:33,334 ისინი უბრალოდ გვინდა, რომ დავეხმაროთ, ფაქტიურად, us დაიწყო, 1551 01:18:33,334 --> 01:18:35,500 მაგრამ იქ არ არის, რომ ბევრი სირთულის ფაქტობრივად არ არსებობს. 1552 01:18:35,500 --> 01:18:40,100 1553 01:18:40,100 --> 01:18:42,210 ნებისმიერი კითხვები უბრალოდ არ არის? 1554 01:18:42,210 --> 01:18:43,790 ჩვენ უსაფრთხო გაყალბებას წინ? 1555 01:18:43,790 --> 01:18:44,330 კარგი. 1556 01:18:44,330 --> 01:18:46,800 >> ასე სწრაფად, მოდით გავაკეთოთ რამდენიმე სწრაფი საღი აზრის ამოწმებს. 1557 01:18:46,800 --> 01:18:48,800 Line ერთ-ერთი, რაც მე ხედავთ, და იმედია, თქვენ 1558 01:18:48,800 --> 01:18:51,710 ვნახოთ, რას ნიშნავს, doctype HTML? 1559 01:18:51,710 --> 01:18:52,385 Kareem, გავიხსენოთ? 1560 01:18:52,385 --> 01:18:53,260 აუდიტორია: [INAUDIBLE] 1561 01:18:53,260 --> 01:18:53,968 დავით Malan: დიახ. 1562 01:18:53,968 --> 01:18:54,870 აქ ჩნდება HTML 5. 1563 01:18:54,870 --> 01:18:57,950 იმავდროულად, გამოდიან ორი წლის ეკრანზე აქ იმას ნიშნავს, hey ბრაუზერი, 1564 01:18:57,950 --> 01:18:59,482 აქ მოდის ფაქტობრივი HTML. 1565 01:18:59,482 --> 01:19:01,440 Line სამი hey ბრაუზერი, აქ მოდის უფროსი. 1566 01:19:01,440 --> 01:19:04,260 Line ოთხი, რა თქმა უნდა, hey ბრაუზერი, აქ ჩნდება ტიტული. 1567 01:19:04,260 --> 01:19:07,780 რას ხაზი ხუთ გავაკეთოთ? 1568 01:19:07,780 --> 01:19:09,930 სინამდვილეში, ეს არ ნამდვილად არაფერი ჩვენთვის. 1569 01:19:09,930 --> 01:19:13,340 ამ შემთხვევაში, უბრალოდ, უცვლის გვერდზე იყოს. Line ექვსი, 1570 01:19:13,340 --> 01:19:16,140 ჩვენ არ ისაუბრა, მაგრამ ეს განსაზღვრავს ხასიათი კოდირება. 1571 01:19:16,140 --> 01:19:19,181 არსებობს სხვადასხვა გზა, რათა encode ფაილი, განსაკუთრებით უცხო ენებზე. 1572 01:19:19,181 --> 01:19:21,100 UTF-8 უბრალოდ იხრება იყოს. 1573 01:19:21,100 --> 01:19:26,580 >> ახლა ჩვენ ვხედავთ ხაზი შვიდი გზით 16, ზოგიერთი CSS. 1574 01:19:26,580 --> 01:19:29,260 და მიუხედავად იმისა, რომ ჩვენ არ მინახავს ყველა ამ საკითხზე ადრე, 1575 01:19:29,260 --> 01:19:30,810 ჩვენ შეგვიძლია სახის infer. 1576 01:19:30,810 --> 01:19:37,075 ისე გამოდიან რვა საშუალებით, hey ბრაუზერი, ვრცელდება ყველა შემდეგ, რომელიც ორი tags, 1577 01:19:37,075 --> 01:19:37,575 როგორც ჩანს? 1578 01:19:37,575 --> 01:19:40,650 1579 01:19:40,650 --> 01:19:41,701 HTML და ტექსტი. 1580 01:19:41,701 --> 01:19:43,200 ასე რომ, მძიმე არის ახალი რამ არსებობს. 1581 01:19:43,200 --> 01:19:46,140 და ეს მხოლოდ გზა სასურველი მრავალჯერადი tags ერთდროულად. 1582 01:19:46,140 --> 01:19:47,640 >> მაშინ ჩვენ მივიღეთ curly აფრთხილებს. 1583 01:19:47,640 --> 01:19:51,170 ასე რომ, როგორც ჩანს, ეს ეუბნება ბრაუზერის, სიმაღლე გვერდის 100%. 1584 01:19:51,170 --> 01:19:54,170 ასე რომ, თუ იქ ძალიან ცოტა შინაარსი, რათა მთელი გვერდი, 1585 01:19:54,170 --> 01:19:55,530 რათა რამ შევსება გვერდზე. 1586 01:19:55,530 --> 01:19:57,524 საქართველოს რუკა საბოლოოდ შევსება გვერდზე. 1587 01:19:57,524 --> 01:19:58,690 ზღვარი, რას ნიშნავს ეს? 1588 01:19:58,690 --> 01:20:01,559 ეს, როგორც წესი, როგორც თვითნებური თეთრი სივრცის გარშემო კიდეები 1589 01:20:01,559 --> 01:20:04,350 რომ ზოგიერთი ბრაუზერის დიზაინერი მხოლოდ გადაწყვიტა უნდა იყოს იქ, იმიტომ, რომ ეს 1590 01:20:04,350 --> 01:20:05,540 ერთგვარი რაც რამ გამოიყურება სუფთა. 1591 01:20:05,540 --> 01:20:06,498 მაგრამ ჩვენ არ გვინდა, რომ. 1592 01:20:06,498 --> 01:20:08,710 ჩვენ გვინდა, რომ რუკა აპირებს ყველა გზა კიდეები. 1593 01:20:08,710 --> 01:20:10,930 Padding, მსგავსი სულისკვეთება მინდვრები. 1594 01:20:10,930 --> 01:20:14,980 მინდვრები ნიშნავს გარეთ, padding საშუალება შიგნით, მაგრამ ეს იგივე სახის გარიგება. 1595 01:20:14,980 --> 01:20:17,520 ეს ცოტა ბუფერული შორის თქვენ და კიდეები. 1596 01:20:17,520 --> 01:20:21,170 >> და შემდეგ line 13 კარგი შანსი სწრაფი მიმოხილვა. 1597 01:20:21,170 --> 01:20:26,440 რას მკვეთრი ნიშანი რუკა ნიშნავს, ან hashtag რუკა ნიშნავს? 1598 01:20:26,440 --> 01:20:29,650 რას ნიშნავს ეს ეხება, პრინციპში? 1599 01:20:29,650 --> 01:20:31,485 >> აუდიტორია: [INAUDIBLE] 1600 01:20:31,485 --> 01:20:32,360 დავით Malan: ზუსტად. 1601 01:20:32,360 --> 01:20:36,900 ეს უძრავი ქონება, ამ ცენტრის ქონება ვრცელდება მხოლოდ ერთი რამ, HTML tag 1602 01:20:36,900 --> 01:20:41,180 რომ აქვს პირადობის ციტირებით unquote "რუკა". 1603 01:20:41,180 --> 01:20:44,460 და ახლა მოდით სწრაფი წინ, გადახვევა ქვემოთ ბოლოში ფაილი, რომელიც 1604 01:20:44,460 --> 01:20:49,860 არ არის ძალიან შორს, და გაფრთხილების on line 19, თუ პასტა ზუსტად ისევე, როგორც მე, 1605 01:20:49,860 --> 01:20:53,405 ხაზი 19 აქვს მხოლოდ div, რომელიც არის სამმართველოს გვერდზე, რომელიც გუშინ მე 1606 01:20:53,405 --> 01:20:54,820 ე.წ. მართკუთხა რეგიონში. 1607 01:20:54,820 --> 01:20:55,820 ეს მივიღე არაფერი. 1608 01:20:55,820 --> 01:20:57,550 ეს ღია tag, ჭდის. 1609 01:20:57,550 --> 01:20:59,490 მაგრამ ეს არ აქვს უნიკალური ID. 1610 01:20:59,490 --> 01:21:02,090 >> ასე რომ, რაც, როგორც ჩანს ხდება აქ არის Google 1611 01:21:02,090 --> 01:21:05,880 ამზადებს ჩვენს ვებ გვერდზე აქვს სრული 100% სიმაღლე, 1612 01:21:05,880 --> 01:21:09,680 და არ padding, არსებობს ზღვარი, რადგან ის, რაც ჩვენ ვაპირებთ, რომ ქვეყნის შიგნით 1613 01:21:09,680 --> 01:21:13,647 ამ div, რომლის უნიკალური ID არის რუკა, არის ფაქტობრივი ჩანერგილი რუკა. 1614 01:21:13,647 --> 01:21:15,480 და ჩვენ გვინდა, რომ შეავსოთ გვერდზე და არა მხოლოდ 1615 01:21:15,480 --> 01:21:17,560 იყოს რაღაც პატარა მართკუთხედი შუა. 1616 01:21:17,560 --> 01:21:24,220 ამიტომ ხაზი 14 ანალოგიურად ხაზს უსვამს, რომ რუკა თავად უნდა ჰქონდეს სიმაღლე 100%. 1617 01:21:24,220 --> 01:21:29,220 >> ასე რომ, ახლა შეამჩნია, ხაზებს შორის 20 და 28, ეს არის JavaScript კოდი. 1618 01:21:29,220 --> 01:21:33,020 და ეს არის, მიუხედავად იმისა, რომ სინტაქსურად ცოტა უცნაურია, 1619 01:21:33,020 --> 01:21:34,730 იქ არ არის, რომ ბევრი ხდება აქ. 1620 01:21:34,730 --> 01:21:39,310 შეესაბამება 21, ეს არის გამოცხადების რაღაც მოუწოდა ცვლადი. 1621 01:21:39,310 --> 01:21:42,030 იმის ნაცვლად, რომ აცხადებენ, რომ ის შეადგენს, როგორც ეს ადრე იყო, 1622 01:21:42,030 --> 01:21:44,500 ჩვენ უფრო ზუსტად ამბობდა var, რომელიც მხოლოდ იმას ნიშნავს ცვლადი. 1623 01:21:44,500 --> 01:21:46,520 ჩვენ შეეძლო, რომ Nick კოდი, მაგრამ არ ვარ, ამიტომ 1624 01:21:46,520 --> 01:21:48,190 არ გადაიტვირთოთ აკეთებს ან. 1625 01:21:48,190 --> 01:21:50,240 ეს ცვლადში რუკა, და შემდეგ იქ 1626 01:21:50,240 --> 01:21:53,360 ფუნქცია, რომელიც არის სავარაუდოდ მოუწოდა initMap. 1627 01:21:53,360 --> 01:21:55,780 >> ასე რომ, ეს არის, როგორც ჩვენი საკუთარი თავსატეხი ცალი ნულიდან. 1628 01:21:55,780 --> 01:21:58,830 ჩვენ შევქმენით ნაჭერი ფუნქცია მოუწოდა initMap, 1629 01:21:58,830 --> 01:22:00,980 და თქვენ შეგიძლიათ სახის infer რა ხდება აქ. 1630 01:22:00,980 --> 01:22:02,930 მარცხენა მხარეს, ჩვენ მივიღეთ ცვლადი, 1631 01:22:02,930 --> 01:22:06,000 ასე რომ, ჩვენ ვაპირებთ, რომ შემდეგ რაც შიგნით რომ ცვლადი, 1632 01:22:06,000 --> 01:22:07,362 მარჯვნიდან მარცხნივ. 1633 01:22:07,362 --> 01:22:11,940 მარჯვენა მხარე აცხადებს, hey ბრაუზერი, მომეცი ახალი Google რუკა. 1634 01:22:11,940 --> 01:22:16,490 და google.maps.map მხოლოდ ხმაურიანი გზა მიუთითებს, რომ ეს ფუნქცია 1635 01:22:16,490 --> 01:22:19,790 ეკუთვნის Google Maps. 1636 01:22:19,790 --> 01:22:23,010 >> მას შემდეგ, რაც ფრჩხილებში, ჩვენ ვნახეთ ეს ადრე, hey ბრაუზერი, მიიღოს 1637 01:22:23,010 --> 01:22:29,210 me ელემენტების გვერდზე, ტეგი გვერდი რომლის უნიკალური ID is-- 1638 01:22:29,210 --> 01:22:30,710 >> აუდიტორია: [INAUDIBLE] 1639 01:22:30,710 --> 01:22:31,790 >> დავით Malan: --map. 1640 01:22:31,790 --> 01:22:35,770 და, რა ხდება, ასევე, ამ ხაზის ერთად, line 23, 1641 01:22:35,770 --> 01:22:38,630 არსებითად განაცხადა, hey ბრაუზერი, წავიდეთ მისაღებად me 1642 01:22:38,630 --> 01:22:42,800 რომ ცარიელი div გვერდზე რომლის უნიკალური ID არის რუკა, 1643 01:22:42,800 --> 01:22:45,600 იმიტომ, რომ მე მინდა ჩასასმელად შევიდა it-- მიეცეს მას, 1644 01:22:45,600 --> 01:22:49,520 თუ will-- მთელი bunch of content რომ ხდება, მოდის ინტერნეტში, 1645 01:22:49,520 --> 01:22:50,427 შემდგომში. 1646 01:22:50,427 --> 01:22:52,010 და Google- ის ყველაფერს აკეთებს, რომ ჩვენთვის. 1647 01:22:52,010 --> 01:22:55,350 >> ასე რომ კიდევ ერთხელ, ძალიან, დღის ბოლოს, ჩვენ ამ მაგალითს აბსტრაქცია. 1648 01:22:55,350 --> 01:22:58,610 წარმოდგენა არ მაქვს, რა რუკა ან როგორ უნდა განახორციელოს რუკა API. 1649 01:22:58,610 --> 01:22:59,460 ჩვენ არ უნდა. 1650 01:22:59,460 --> 01:23:02,740 ჩვენ უბრალოდ უნდა ვუთხრა რუკა სად უნდა დააყენოს თავად და დატოვოს 1651 01:23:02,740 --> 01:23:04,880 იმ ძირითადი განხორციელებას დეტალები Google. 1652 01:23:04,880 --> 01:23:08,190 ახლა არ არის, როგორც ჩანს, ორი ცალი მონაცემები 1653 01:23:08,190 --> 01:23:11,940 რომ ეს მაგალითი არის უზრუნველყოფს Google- ის API. 1654 01:23:11,940 --> 01:23:16,450 როგორც ჩანს, ცენტრში რუკა, და მასშტაბის, ასე ვთქვათ. 1655 01:23:16,450 --> 01:23:21,390 >> და ვინმეს აღიარებს ამ კოორდინატები, გრძედი და განედი? 1656 01:23:21,390 --> 01:23:24,364 ალბათ არა, მაგრამ ჩვენ შეგვიძლია დავუბრუნდეთ სამეურვეო, ფაქტიურად ვხედავ. 1657 01:23:24,364 --> 01:23:25,780 მაგრამ ჩვენ ვხედავთ, რომ რაღაც მომენტში. 1658 01:23:25,780 --> 01:23:29,880 Zoom დონეზე არის ღირებულება შორის, მე არ ვიცი, ერთი 13 ან რამე მაგდაგვარს. 1659 01:23:29,880 --> 01:23:32,880 ეს უბრალოდ უნდა გააკეთოს, თუ რამდენად შორს თქვენ მიახლოება ან გარეთ, და ეს არის ის. 1660 01:23:32,880 --> 01:23:35,690 და ახლა ბოლომდე გვერდი, შეამჩნია ხაზი 29-- 1661 01:23:35,690 --> 01:23:39,960 ეს არის პატარა მახინჯი, რადგან ეს wraps-- ეს ხაზი კოდი 1662 01:23:39,960 --> 01:23:44,570 არის ის, რაც იწერს იმ ბრაუზერი Google- ის ფაქტობრივი API. 1663 01:23:44,570 --> 01:23:47,500 ყველა კოდი, რომელიც Google- ის ინჟინრები არ წერია, რომ განახორციელოს 1664 01:23:47,500 --> 01:23:50,000 მთელი ეს თვისება ჩაშენებული რუკები. 1665 01:23:50,000 --> 01:23:51,470 >> ახლა მოდით არაფერი შეიცვლება. 1666 01:23:51,470 --> 01:23:54,761 თუ თქვენ შემდეგ გასწვრივ, წავიდეთ წინ და უბრალოდ შენახვა, რომ ფაილი, თუ მართლაც აქვს 1667 01:23:54,761 --> 01:23:55,760 რაც მაქვს. 1668 01:23:55,760 --> 01:23:57,370 წასვლა მისი URL. 1669 01:23:57,370 --> 01:23:59,820 დააწკაპუნეთ Run ღილაკს ზევით და რომ გეტყვით, 1670 01:23:59,820 --> 01:24:03,050 თქვენ URL თქვენს სერვერზე ერთხელ. 1671 01:24:03,050 --> 01:24:06,010 და ეს გამოიწვევს თქვენ ახალი tab. 1672 01:24:06,010 --> 01:24:11,910 თუ თქვენ დააჭირეთ ღია map.html და შანსი თქვენ 1673 01:24:11,910 --> 01:24:15,520 აპირებს მიიღოს მზადყოფნაში, შეცდომა, არა? 1674 01:24:15,520 --> 01:24:18,570 შეცდომა, შეცდომა? 1675 01:24:18,570 --> 01:24:21,170 >> ასე რომ, სამწუხაროდ, შეცდომა გაგზავნა არ არის, რომ საგანამანთლებლო 1676 01:24:21,170 --> 01:24:23,890 თუ თქვენ რეალურად გახსნა კონსოლი, რომელიც სპეციალური ჩანართი ჩვენ 1677 01:24:23,890 --> 01:24:27,110 ინახება გახსნის გუშინ ცოტა უფრო ადრე დღეს. 1678 01:24:27,110 --> 01:24:29,445 მაგრამ მე stumbled მასშტაბით ეს ადრე, ასე რომ მე უკვე 1679 01:24:29,445 --> 01:24:30,820 figured, თუ რა გამოსავალი არის. 1680 01:24:30,820 --> 01:24:34,440 დღევანდელ სლაიდები, ან უფრო სწორად, Cloud9, ცნობა 1681 01:24:34,440 --> 01:24:36,430 რომ ჩვენ არ რაღაც შეგნებულად. 1682 01:24:36,430 --> 01:24:40,690 გაითვალისწინეთ, რომ ეს სკრიპტი ტეგი ხაზი 29, თუ წაიკითხავთ მეშვეობით, 1683 01:24:40,690 --> 01:24:44,440 ეს იგივეა, maps.googleapis.com/ რაღაც, რაღაც, რაღაც, 1684 01:24:44,440 --> 01:24:46,430 მაშინ შეამჩნია ვინმე, ერთ დეველოპერები, 1685 01:24:46,430 --> 01:24:50,040 წერდა მთელი კაპიტალი წერილები, თქვენი API გასაღები. 1686 01:24:50,040 --> 01:24:51,700 >> ჩვენ უნდა ჩასვით ის არსებობს. 1687 01:24:51,700 --> 01:24:53,450 და ეს იყო ნაბიჯი გავაკეთე ჩვენს წინაშე, 1688 01:24:53,450 --> 01:24:57,190 და კიდევ ერთხელ, შესაძლოა, მათ შავ ჩვენთვის, თუ მოულოდნელად, 12 ან მეტი us 1689 01:24:57,190 --> 01:24:59,470 დაიწყოს გამოყენებით იგივე გასაღები, მაგრამ ვნახოთ, რა მოხდება. 1690 01:24:59,470 --> 01:25:03,030 ასე რომ, თუ წასვლას დღევანდელი სლაიდები, ერთი slide მოგვიანებით, იქ 1691 01:25:03,030 --> 01:25:07,070 ეს ძალიან ხმაურიანი ეძებს სიმებიანი ტექსტი. 1692 01:25:07,070 --> 01:25:12,230 წავიდეთ წინ და უბრალოდ კოპირება და ჩასვით სადაც იგი აცხადებს, თქვენი API გასაღები. 1693 01:25:12,230 --> 01:25:15,120 ეს ერთი მე მოაწერა ხელი. 1694 01:25:15,120 --> 01:25:17,700 >> და ნამდვილად არ ცდილობენ ბეჭდვის ის ხელით, 1695 01:25:17,700 --> 01:25:21,210 რადგან იგი გრძნობს ექნებათ ერთად typos, პოტენციურად. 1696 01:25:21,210 --> 01:25:23,260 ასე რომ, უბრალოდ დააკოპირეთ და ჩასვით რომ. 1697 01:25:23,260 --> 01:25:26,090 და ის აპირებს, რომ ხაზი აღარ, მაგრამ ახლა, უბრალოდ უნდა იყოს მკაფიო, 1698 01:25:26,090 --> 01:25:29,540 იგი უნდა გამოიყურებოდეს ცოტა მეტი მსგავსი, სადაც გასაღები შეადგენს არა 1699 01:25:29,540 --> 01:25:32,200 კაპიტალიზაცია ყვირილი at თქვენ. 1700 01:25:32,200 --> 01:25:34,810 დაზოგეთ თქვენი გვერდი, დაბრუნდეს რომ სხვა tab, განახლება, 1701 01:25:34,810 --> 01:25:36,770 და ვიმედოვნებთ, რომ რუკა საიდან 1702 01:25:36,770 --> 01:25:37,790 >> აუდიტორია: ავსტრალიაში. 1703 01:25:37,790 --> 01:25:38,748 >> დავით Malan: ავსტრალიაში. 1704 01:25:38,748 --> 01:25:41,200 ასე რომ, როგორც ჩანს, ეს არის ის, GPS კოორდინატები ავსტრალიაში. 1705 01:25:41,200 --> 01:25:44,491 და ნება მომეცით მოიარე მხოლოდ ერთი წუთით და დაეხმაროს ყველას, ვინც არ არის საკმაოდ არსებობს, 1706 01:25:44,491 --> 01:25:47,729 მაგრამ ნება მომეცით შესთავაზოს, Google- ის მეშვეობით, იპოვოს GPS- ის კოორდინატები საკუთარ მშობლიურ 1707 01:25:47,729 --> 01:25:48,770 ან საკუთარი ქვეყნის. 1708 01:25:48,770 --> 01:25:51,436 და, ალბათ, Google შეიძლება იქცეს ამ up, ან ვიკიპედიაში შემიძლია გითხრათ. 1709 01:25:51,436 --> 01:25:54,410 მაგრამ აირჩიოს ორი განსხვავებული ღირებულებები for გრძედი და განედი, 1710 01:25:54,410 --> 01:25:57,530 დაბრუნდეს და ჩასვით მათ, და შემდეგ განაახლეთ გვერდი შემდეგ გადარჩენა 1711 01:25:57,530 --> 01:26:00,718 და თუ შეგიძლიათ რუკაზე საკუთარი მშობლიურ. 1712 01:26:00,718 --> 01:26:04,500 1713 01:26:04,500 --> 01:26:08,042 >> და როდესაც თქვენ გაკეთდეს , რომ შემდგომი გამოწვევა 1714 01:26:08,042 --> 01:26:11,250 და მე მივცემ ცოტა ნაკლები მიმართულებით, განზრახ, ასე რომ თქვენ შეგნებულად 1715 01:26:11,250 --> 01:26:13,791 აქვს ბრძოლას რამდენიმე ე წუთზე დოკუმენტაცია, 1716 01:26:13,791 --> 01:26:18,740 შეცვლა რუკა უნდა იყოს არა ამ cartoonish იყოს, მაგრამ სატელიტური რუკა. 1717 01:26:18,740 --> 01:26:24,600 ასე, რომ თქვენ რეალურად ვხედავ სატელიტური გამოსახულება ნაცვლად საკმაოდ ფერები. 1718 01:26:24,600 --> 01:26:29,710 >> და მინიშნება მე მივცემ თქვენ შეცვალოთ რუკა ტიპს. 1719 01:26:29,710 --> 01:26:33,084 დაბრუნდეს, რომ მიღების დაიწყო გვერდზე შთაგონების. 1720 01:26:33,084 --> 01:26:40,599 1721 01:26:40,599 --> 01:26:42,390 როგორც თქვენ შესაძლოა მოპოვებული, თუ თქვენ ვეძებთ, 1722 01:26:42,390 --> 01:26:44,250 არსებობს ამდენი მეტი რამ შეგიძლიათ გააკეთოთ. 1723 01:26:44,250 --> 01:26:46,380 ზოგიერთ თქვენგანს უკვე შეცვალა რუკის ტიპის. 1724 01:26:46,380 --> 01:26:49,890 მაგრამ თქვენ შეგიძლიათ გავაკეთოთ მაგალითად, ნება მომეცით წასვლა რაღაც გავაკეთეთ, რა თქმა უნდა 1725 01:26:49,890 --> 01:26:52,050 მე teach-- maps.cs50.net. 1726 01:26:52,050 --> 01:26:53,470 ჩვენი ერთ-ერთი სტუდენტებს გააკეთა. 1727 01:26:53,470 --> 01:26:58,890 ჩვენ იყოს ჩვენს რუკას მეტი ჰარვარდის ეზო და თარგების ყველა ეს შენობა სახელები, 1728 01:26:58,890 --> 01:27:01,070 და ჩვენ გვქონდა მას დაამატოთ ეს. 1729 01:27:01,070 --> 01:27:04,270 ასე რომ, თუ გსურთ მოძებნოთ, მაგალითად, Matthews Hall, 1730 01:27:04,270 --> 01:27:05,730 ჩვენ გვაქვს პატარა ჩამოსაშლელი მენიუ. 1731 01:27:05,730 --> 01:27:09,080 და მე ვფიქრობ, რომ ის გამოყენებით ჩატვირთვის, რომ ბიბლიოთეკა ჩვენ განვიხილეთ ადრე ამ. 1732 01:27:09,080 --> 01:27:12,190 და თუ თქვენ დააჭირეთ Matthews Hall, მაშინვე 1733 01:27:12,190 --> 01:27:14,790 გადასვლა რუკაზე გარკვეული ადგილმდებარეობა, და ეს შოუები 1734 01:27:14,790 --> 01:27:16,440 თქვენ სურათს ამ პატარა pop-up. 1735 01:27:16,440 --> 01:27:18,670 >> მაგრამ მაშინაც კი, ამ პატარა pop-up, ჩვენ არ განახორციელოს. 1736 01:27:18,670 --> 01:27:27,521 თუ მე გადახვევა ქვემოთ ჩვენს მიღების დაიწყო გვერდი და ვეძებთ ინფორმაციის ფანჯრები, 1737 01:27:27,521 --> 01:27:29,770 დაინახავთ, რომ ზოგიერთი ფუნქციონალური თქვენ თავს 1738 01:27:29,770 --> 01:27:31,561 შეგიძლიათ, თუმცა უფრო მეტი სირთულის, 1739 01:27:31,561 --> 01:27:33,970 არის რაღაც მოუწოდა ინფორმაციის ფანჯარა. 1740 01:27:33,970 --> 01:27:37,190 და თუ მე დააჭირეთ მაგალითი აქ, და ეს არის ის, რაც fun, 1741 01:27:37,190 --> 01:27:40,530 შეგიძლიათ გააკეთოთ მსგავსი რამ, დაწკაპვით მარკერის და მაშინ voila, 1742 01:27:40,530 --> 01:27:42,400 ინფორმაცია pops up. 1743 01:27:42,400 --> 01:27:45,874 >> ასე რომ, ჩვენ არ საკმაოდ გააცნო საკმარისი თვისებები JavaScript 1744 01:27:45,874 --> 01:27:49,040 ხატავს სურათს, თუ რამდენად თქვენ შეიძლება მავთულის ყველა ამ პერსონალის ერთად, 1745 01:27:49,040 --> 01:27:50,706 მაგრამ ჩვენ სახის scratched ზედაპირზე. 1746 01:27:50,706 --> 01:27:53,140 ფაქტობრივად, რაც მე გავაკეთე, როდესაც მე დაწკაპავთ რომ მარკერის, 1747 01:27:53,140 --> 01:27:55,819 იქმნება ღონისძიება, ე.წ. დაჭერით ღონისძიება. 1748 01:27:55,819 --> 01:27:57,610 და ჩვენ, ფაქტობრივად დაინახა ღონისძიება დღეს, 1749 01:27:57,610 --> 01:28:00,670 ე.წ. წარუდგინოს ღონისძიება, როდესაც ჩვენ თავიდან აცილების 1750 01:28:00,670 --> 01:28:02,490 მომხმარებელს ეძებს კატა. 1751 01:28:02,490 --> 01:28:06,560 ასე რომ, ჩვენ სახის აიყვანეს და choosed შორის ყველა ამ სხვადასხვა თვისებები, 1752 01:28:06,560 --> 01:28:08,990 გადმოგცეთ აზრი, იმედია, რა შეგიძლიათ რეალურად 1753 01:28:08,990 --> 01:28:11,000 ამის ცოტა მეტი კომფორტს პროგრამირებაში, 1754 01:28:11,000 --> 01:28:12,587 და სრულიად უფასოდ რესურსები. 1755 01:28:12,587 --> 01:28:15,856 1756 01:28:15,856 --> 01:28:18,770 >> ნებისმიერი კითხვები? 1757 01:28:18,770 --> 01:28:19,790 არ არის? 1758 01:28:19,790 --> 01:28:22,542 ეს არის თქვენი საბოლოო შანსი, დღეს მაინც, პარასკევი, 1759 01:28:22,542 --> 01:28:25,000 არაფერი off თქვენი გულმკერდის ასე რომ თქვენ ფეხით out of აქ 1760 01:28:25,000 --> 01:28:27,067 შეგრძნება დარწმუნებული და კომფორტული. 1761 01:28:27,067 --> 01:28:27,566 დიახ. 1762 01:28:27,566 --> 01:28:29,740 >> აუდიტორია: რატომ არ თქვენ დაამატოთ კიდევ ერთი რამ? 1763 01:28:29,740 --> 01:28:32,720 >> დავით Malan: Oh ჩემი სიკეთე. 1764 01:28:32,720 --> 01:28:35,260 მე უნდა დაისვენოს ამ კვირის ბოლოს, მე ვფიქრობ. 1765 01:28:35,260 --> 01:28:36,180 სხვა კითხვები? 1766 01:28:36,180 --> 01:28:37,055 >> აუდიტორია: [INAUDIBLE] 1767 01:28:37,055 --> 01:28:44,130 1768 01:28:44,130 --> 01:28:46,810 >> დავით Malan: თქვენ can-- in Internet Explorer, დანარჩენი სამშვიდობო, 1769 01:28:46,810 --> 01:28:49,310 თქვენ უნდა იყოს შეუძლია დააყენოს VB script, ვირტუალური ძირითადი სკრიპტი, 1770 01:28:49,310 --> 01:28:50,643 მაგრამ, რომ ნამდვილად არასდროს არ დაიჭირეს. 1771 01:28:50,643 --> 01:28:52,490 ასე რომ, მოკლე პასუხი არის მხოლოდ JavaScript. 1772 01:28:52,490 --> 01:28:55,144 1773 01:28:55,144 --> 01:28:55,810 სხვა კითხვები? 1774 01:28:55,810 --> 01:28:58,427 1775 01:28:58,427 --> 01:28:59,760 ყველა უფლება, ასევე, ნება მომეცით ამის გაკეთება. 1776 01:28:59,760 --> 01:29:02,070 მიადევნე თვალი დაიბრუნოს ჩვენი კოლეგების გარეთ. 1777 01:29:02,070 --> 01:29:04,500 მათ აქვთ გარკვეული შეფასების ფორმები, რომ მათ სურთ ყველას 1778 01:29:04,500 --> 01:29:06,310 უნდა დახარჯოს რამდენიმე წუთში შევსების. 1779 01:29:06,310 --> 01:29:08,775 მათ უნდათ, რომ შეაგროვოს, რომ ფორმა და ნებისმიერი გაუქმებასთან, რომ თქვენ ალბათ გარეთ. 1780 01:29:08,775 --> 01:29:10,240 ისინი ყველაფერს ასევე აქვს სერტიფიკატები. 1781 01:29:10,240 --> 01:29:12,380 მე გამოცნობა არსებობს ჯერ კიდევ რამდენიმე საჭმლის გარეთ. 1782 01:29:12,380 --> 01:29:14,360 მიადევნე თვალი გაივლის ამ out, და თუ გაქვთ რაიმე შეკითხვები, მანამდე, 1783 01:29:14,360 --> 01:29:17,120 მე ფეხით გარშემო უფრო ინდივიდუალურად და ჩვენ შეგვიძლია მისაღებად თქვენ დაიწყო. 1784 01:29:17,120 --> 01:29:17,879 დიახ, რა თქმა უნდა. 1785 01:29:17,879 --> 01:29:18,754 აუდიტორია: [INAUDIBLE] 1786 01:29:18,754 --> 01:29:26,737 1787 01:29:26,737 --> 01:29:28,570 დავით Malan: ეს არის როგორც წესი, ნამდვილი ამ დღეებში. 1788 01:29:28,570 --> 01:29:30,730 რა თქმა უნდა, ვებ პროგრამული უზრუნველყოფა, თქვენ პრო 1789 01:29:30,730 --> 01:29:32,901 სხვები თქვენ ან ესთეტიურად გამოყენებით რამ 1790 01:29:32,901 --> 01:29:35,400 როგორიცაა ჩატვირთვის, ასე რომ თქვენ არ უნდა განახორციელოს დაბალი დონე 1791 01:29:35,400 --> 01:29:37,169 დეტალები მენიუები და ღილაკების და ყველა რომ. 1792 01:29:37,169 --> 01:29:39,210 თქვენ პრო ვინმე როგორიცაა Google, ასე რომ თქვენ 1793 01:29:39,210 --> 01:29:42,050 არ უნდა ავაშენოთ Uber ბიზნესი და რუკების ბიზნესი, 1794 01:29:42,050 --> 01:29:44,850 და ნებისმიერი რაოდენობის მსგავსი განაცხადების ასევე. 1795 01:29:44,850 --> 01:29:46,350 >> ფაქტობრივად, შესვლა პოპულარულია, ძალიან. 1796 01:29:46,350 --> 01:29:48,500 თუ თქვენ უკვე გამოიყენება Spotify ან ნებისმიერი რაოდენობის საიტებზე, 1797 01:29:48,500 --> 01:29:51,210 თქვენ შეხვიდეთ, რომ ზოგიერთი საიტებზე გამოყენებით Facebook. 1798 01:29:51,210 --> 01:29:53,350 რა არის ლამაზი, არ არის APIs for შესვლა 1799 01:29:53,350 --> 01:29:56,570 დღეს, ასე რომ თქვენ არ აქვს აქვს საკუთარი მომხმარებლის მაგიდა 1800 01:29:56,570 --> 01:29:59,440 და ყველა საკუთარი მონაცემთა ბაზა აუცილებლად იმავე ზომით. 1801 01:29:59,440 --> 01:30:01,795 თქვენ შეგიძლიათ ნება Facebook გავაკეთოთ ყველა რომ სირთულის თქვენთვის. 1802 01:30:01,795 --> 01:30:03,920 ასე რომ, ეს საინტერესო დროს, პატიოსნად, პროგრამირებაში, 1803 01:30:03,920 --> 01:30:07,200 რადგან არსებობს ამდენი მესამე მომსახურების, რომ თქვენ შეძლოთ თავზე. 1804 01:30:07,200 --> 01:30:10,890 >> ისევ და ისევ, ფასი იხდით ან ფინანსური ან downtime. 1805 01:30:10,890 --> 01:30:13,750 თუ Google მიდის ქვემოთ, ასე აკეთებს Uber, სავარაუდოდ, 1806 01:30:13,750 --> 01:30:15,690 მაგრამ, ალბათ, ეს არის ის, გონივრული ვაჭრობის. 1807 01:30:15,690 --> 01:30:18,040 ისევ და ისევ, ეს იყო ერთ-ერთი თემა, იმედია, რომ ბოლო რამდენიმე დღის განმავლობაში, 1808 01:30:18,040 --> 01:30:18,780 არის ამ ვაჭრობის ღ. 1809 01:30:18,780 --> 01:30:20,738 და იშვიათად არის იქ უნდა იყოს სწორი პასუხი. 1810 01:30:20,738 --> 01:30:25,700 ეს ნამდვილად არ არის უკეთესი ორი ან მეტი პასუხი. 1811 01:30:25,700 --> 01:30:26,682 >> გაივლის ამ გარშემო. 1812 01:30:26,682 --> 01:30:36,830 1813 01:30:36,830 --> 01:30:41,110 >> და ეს Cloud9 ანგარიშების გააგრძელებს მუშაობა, თეორიულად, სამუდამოდ. 1814 01:30:41,110 --> 01:30:45,000 თქვენ შეიძლება თუ დაველოდოთ რამდენიმე დღე და ერთი კვირის ან მეტი შეხვიდეთ უკან მათ, 1815 01:30:45,000 --> 01:30:49,170 შესაძლოა, როგორც ერთი ან ხუთ წუთში გახსნა უკან, 1816 01:30:49,170 --> 01:30:54,090 მაგრამ ეს მხოლოდ იმიტომ, რომ ისინი ძილის გადარჩენა რესურსები. 1817 01:30:54,090 --> 01:31:10,527