1 00:00:00,000 --> 00:00:00,060 2 00:00:00,060 --> 00:00:01,560 >> DAVID ลัน: สิทธิทั้งหมดที่เราจะกลับมา 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 >> แต่ทำไมเราไม่ลองดู ที่ส่วนผสมกับโลกนี้ 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 >> ผู้ชม: [ไม่ได้ยิน] 21 00:00:48,679 --> 00:00:51,720 DAVID ลัน: เก็บข้อมูลทั้งหมด ตกลงและสิ่งที่ชนิดของข้อมูล 22 00:00:51,720 --> 00:00:53,186 คุณอาจใส่ในนั้น? 23 00:00:53,186 --> 00:00:54,590 >> ผู้ชม: [ไม่ได้ยิน] 24 00:00:54,590 --> 00:00:56,450 >> DAVID ลัน: ข้อมูลใด ๆ ที่คุณใส่ในนั้นคุณจะได้รับกลับมา 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 ผู้ชม: [ไม่ได้ยิน] 29 00:01:04,260 --> 00:01:05,051 DAVID ลัน: ผู้ใช้ 30 00:01:05,051 --> 00:01:07,000 ดังนั้นสิ่งที่ผู้ใช้? 31 00:01:07,000 --> 00:01:09,765 >> ผู้ชม: [ไม่ได้ยิน] 32 00:01:09,765 --> 00:01:11,640 DAVID ลัน: ตกลงที่ลงทะเบียน ผู้ใช้ของเว็บไซต์ 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 ผู้ชม: [ไม่ได้ยิน] 37 00:01:19,206 --> 00:01:21,040 DAVID ลัน: ใช่ส่วนบุคคล ข้อมูลและฉันชอบที่ 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 ผู้ชม: [ไม่ได้ยิน] 41 00:01:26,150 --> 00:01:29,130 DAVID ลัน: การ addr-- ตกลง ดังนั้นชื่อ, นามสกุล 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 ที่จะเปิดโอกาสให้มีการ การอภิปรายยังคงต่อไป 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 คุณไม่ต้องการให้ เพียงแค่จะเก็บไว้ในแรม 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 หรือชื่อน่ารัก, 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 ชีตหรือแอปเปิ้ล 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 และที่จริงให้ฉัน ตอนนี้เริ่มที่จะ map เหล่านี้ 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 ผู้ชม: [ไม่ได้ยิน] 85 00:03:58,450 --> 00:03:59,616 DAVID ลัน: ใช่ดังนั้นสตริง 86 00:03:59,616 --> 00:04:04,744 และในบริบทของฐานข้อมูลเราจะ มักจะเรียกข้อมูลถ่านนี้ 87 00:04:04,744 --> 00:04:07,660 ฉันเพียงแค่จะบอกว่าถ่านสำหรับในตอนนี้ แต่เรา จะปรับแต่งนี้ในช่วงเวลาที่ 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 >> เพศชายหรือเพศหญิงจึง อาจจะเป็นข้อมูลถ่าน 93 00:04:18,310 --> 00:04:21,380 มันอาจจะเป็นคำพูดอย่างใดอย่างหนึ่งได้นำมาอ้าง "ชาย" หรืออ้างนำมาอ้าง "เพศหญิง" 94 00:04:21,380 --> 00:04:23,650 หรือมันอาจจะเป็น M หรือ F 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 เช่นอ้างนำมาอ้าง "ชาย" อ้าง ได้นำมาอ้าง "เพศหญิง" และอื่น ๆ 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 >> ตกลงดังนั้นสิ่งที่หมายเลข 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 >> ผู้ชม: [ไม่ได้ยิน] 119 00:05:36,382 --> 00:05:38,590 DAVID ลัน: โอ้ตกลงดังนั้น บางทีมันอาจจะไม่ได้เป็นจำนวนมาก 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 >> ผู้ชม: [ไม่ได้ยิน] 136 00:06:14,460 --> 00:06:16,980 >> DAVID ลัน: มันเป็นอีเมล แต่ที่ตัวละครใช่มั้ย? 137 00:06:16,980 --> 00:06:19,813 มันก็มีลักษณะเหมือนขี้ขลาด "การที่" สัญลักษณ์หรือสิ่งอื่น 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-- ให้ฉันทำให้บาง here-- ห้องพัก 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 ตกลงผมได้รับมัน อาจจะเพียงแค่โกรธเคืองเหมือนครึ่ง 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 ทุกด้านขวาและฉันคิดว่า เราตกลงในห้องพัก 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 ทำไมฉันจึงไม่เพียงแค่พูดเช่น 1,000? 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 >> ผู้ชม: [ไม่ได้ยิน] 162 00:07:38,005 --> 00:07:40,130 DAVID ลัน: ใช่มัน สิ้นเปลืองขวาโดยเฉพาะอย่างยิ่ง 163 00:07:40,130 --> 00:07:44,630 ถ้าชื่อมากที่สุดคือเพียงห้าหรือ 10 หรือ 15 ตัวอักษรที่สิ้นเปลืองมาก 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 ทั่วไปคุณ มีสิ่งที่เรียกว่าสนามถ่าน 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 เขตข้อมูลถ่านคุณออกแบบ ต้องระบุล่วงหน้า 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 อาจจะต้องทำบางอย่างเพื่อ Googling ดูว่าปลอดภัยจริงพอ 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 >> เขตข้อมูลถ่านจะบ่งบอก ในฐานข้อมูลที่คุณ 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 >> ดังนั้นเมื่อคุณคิดว่า คุณอาจเลือกถ่าน 189 00:08:59,950 --> 00:09:05,240 เมื่อเทียบกับ varchar ระบุว่าการออก? 190 00:09:05,240 --> 00:09:09,321 ถ่านใช้ว่าตัวละครหลาย varchar ใช้ไม่เกินที่ตัวอักษรหลายตัว 191 00:09:09,321 --> 00:09:10,196 ผู้ชม: [ไม่ได้ยิน] 192 00:09:10,196 --> 00:09:13,859 193 00:09:13,859 --> 00:09:16,900 DAVID ลัน: ตกลงเมื่อคุณรู้ว่า ความยาวของสตริงที่น่าสนใจสวย 194 00:09:16,900 --> 00:09:19,316 เพียงแค่ใช้ถ่าน 'ทำให้ถ้า คุณจะรู้ว่าเพียงแค่วางมันลง 195 00:09:19,316 --> 00:09:23,390 และบางทีที่เป็นจริงสำหรับซิป รหัสในสหรัฐอเมริกาอย่างน้อย 02138, 196 00:09:23,390 --> 00:09:26,660 ก็มักจะเป็นห้า ตัวอักษรจนกว่าคุณจะเพิ่มประสี่ 197 00:09:26,660 --> 00:09:29,750 แต่คุณอาจจะมีค่าบางอย่างสำหรับ ที่คุณเคยรู้ความยาว 198 00:09:29,750 --> 00:09:32,310 หรือสัญลักษณ์ของรัฐอาจจะ เช่นนิวยอร์กนิวยอร์ก 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 ทุกอย่างโดยตรรกะที่? 205 00:09:50,300 --> 00:09:51,677 จะต้องมีการจับ 206 00:09:51,677 --> 00:09:52,552 ผู้ชม: [ไม่ได้ยิน] 207 00:09:52,552 --> 00:09:54,952 208 00:09:54,952 --> 00:09:56,660 DAVID ลัน: สามารถ เขียนอะไรบางอย่างที่ไม่ถูกต้อง 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 คุณอาจจะเป็นเพียงแค่บวก 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 ถ้าคุณจะเป็นมอมแมม 232 00:11:08,340 --> 00:11:11,480 ชนิดของมันไปเข้าและออกตาม กับความยาวที่แท้จริงของสตริง 233 00:11:11,480 --> 00:11:14,460 ดังนั้นเมื่อคุณรู้ว่าระยะเวลาที่เป็น คารีมบอกว่าใช้ฟิลด์ถ่าน, 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 >> ที่พบบ่อยมากตรงไปตรงมา สำหรับ [? ประวัติศาสตร์?] 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 >> แต่ปัญหาก็คือว่าเราสามารถ ทำผิดพลาดเป็น [ไม่ได้ยิน] เสนอ 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 ที่สมมติว่าเป็นรหัสตัวเลขมัน อาจจะเป็นจำนวนเต็มบวก 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 >> ผู้ชม: [ไม่ได้ยิน] 278 00:13:24,630 --> 00:13:26,610 >> DAVID ลัน: 32 บิต 279 00:13:26,610 --> 00:13:30,270 ดังนั้นวิธีการที่จำนวนผู้ใช้ที่เราสามารถมีใน ฐานข้อมูลของเราถ้าพวกเขาทั้งหมดมีรหัส 280 00:13:30,270 --> 00:13:33,320 และบัตรประจำตัวนี้จะต้องไม่ซ้ำกัน? 281 00:13:33,320 --> 00:13:36,780 32 บิตหมายความว่าเรามีรูปแบบ ของหนึ่งสองสามสี่ five-- 282 00:13:36,780 --> 00:13:41,000 รูปแบบที่แตกต่างกันดังนั้นวิธีการที่หลายศูนย์ และคนที่คุณสามารถมีถ้ามี 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 และจากนั้นคุณพยายามที่จะแทรก 4000000000 และ 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 ตกลงเราจะทำให้มันง่ายขึ้น 304 00:14:49,410 --> 00:14:53,310 อะไรหมายเลขนี้ เป็นตัวแทนในไบนารี? 305 00:14:53,310 --> 00:14:56,794 ตกลงเราจะทำให้มันง่ายขึ้นสิ่งที่ นี้ไม่ได้เป็นตัวแทนในไบนารี? 306 00:14:56,794 --> 00:14:57,460 ผู้ชม: สาม 307 00:14:57,460 --> 00:14:59,670 DAVID ลัน: สามเพราะ เรามีคนที่ column-- 308 00:14:59,670 --> 00:15:00,450 [LAUGHTER] 309 00:15:00,450 --> 00:15:01,350 ต๊าย! 310 00:15:01,350 --> 00:15:03,980 เรามีคนที่คอลัมน์ และคอลัมน์ที่เจ้าตัว 311 00:15:03,980 --> 00:15:07,250 ดังนั้นคิดว่าจริงของเรา [? สนาม?] ไม่ได้ 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-- อาจไม่ได้ แต่ถ้าคุณ have-- 316 00:15:22,780 --> 00:15:26,500 ล้นจำนวนเต็มที่คุณ ให้พลิกทั้งหมดของคุณบิต 317 00:15:26,500 --> 00:15:29,640 จะเป็นค่าที่เป็นไปที่ใหญ่ที่สุด แล้วคุณจะออกจากบิต 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 ผู้ชม: [ไม่ได้ยิน] 325 00:15:39,790 --> 00:15:41,780 DAVID ลัน: One-- ใช่ ไม่ได้บอกว่า 100 ต่อ 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 คุณไปนี้หรือมากกว่าใช่ 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 บิตซึ่งโดยทั่วไปจะเป็น 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 >> สิทธิทั้งหมดจึงขอตัดขึ้น ด้วยอีเมลและที่อยู่ทางไปรษณีย์ 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 ผู้ชม: [ไม่ได้ยิน] 366 00:17:39,200 --> 00:17:41,900 367 00:17:41,900 --> 00:17:43,890 >> DAVID ลัน: มันไม่ได้ เพียงรหัสไปรษณีย์แม้ว่า 368 00:17:43,890 --> 00:17:45,720 ที่อยู่ไปรษณีย์ผมได้ยิน 369 00:17:45,720 --> 00:17:50,720 ดังนั้นนี้เป็นเหมือน 1 เสียงอึกทึกสแควร์ จุลภาคเคมบริดจ์ Mass. จุลภาค 02138 370 00:17:50,720 --> 00:17:53,860 และในความเป็นจริงให้ฉันเพียงแค่ดึง ขึ้นแผ่นเล็ก ๆ น้อย ๆ ที่นี่ 371 00:17:53,860 --> 00:17:56,510 นี้รู้สึกเหมือนมัน พลาดโอกาส 372 00:17:56,510 --> 00:18:01,480 ถ้าเรามี 1 เสียงอึกทึกสแควร์ จุลภาคเคมบริดจ์แมสซาชูเซต 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 >> ผู้ชม: [ไม่ได้ยิน] 378 00:18:12,260 --> 00:18:17,579 >> DAVID ลัน: ใช่จึงขอ เรียกว่า 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 ถนนแล้ว city-- ขอโทษ? 382 00:18:26,240 --> 00:18:28,440 >> ผู้ชม: [ไม่ได้ยิน] 383 00:18:28,440 --> 00:18:29,690 DAVID ลัน: เราจะทำอย่างนั้น 384 00:18:29,690 --> 00:18:30,702 สายหนึ่งสายสอง 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 แล้วรัฐและจากนั้นขอ จะเป็นเพียงเล็กน้อยสหรัฐเป็นศูนย์กลางสำหรับตอนนี้ 388 00:18:38,180 --> 00:18:42,040 และเพียงแค่ทำรหัสไปรษณีย์เพียงเพราะ มันจะนำไปสู่​​ความผิดพลาดที่น่าสนใจ 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 แต่ตอนนี้เราสามารถแท็ก สิ่งเล็ก ๆ น้อย ๆ ที่ดีกว่า 393 00:18:49,200 --> 00:18:53,210 >> ดังนั้นตอนนี้สถานที่จำนวนอาจจะ ไม่ควรจะเป็นถ่านควรมันได้หรือไม่ 394 00:18:53,210 --> 00:18:54,835 สิ่งที่มันควรจะเป็นอย่างไร 395 00:18:54,835 --> 00:18:55,710 ผู้ชม: [ไม่ได้ยิน] 396 00:18:55,710 --> 00:18:57,835 DAVID ลัน: บางทีจำนวน เช่นจำนวนเต็มอีกครั้งหรือไม่ 397 00:18:57,835 --> 00:19:00,170 จำนวนเต็มใหญ่? 398 00:19:00,170 --> 00:19:02,170 คุณอาจไม่ได้อาศัยอยู่ ที่ 4 พันล้านถนนสายหลัก 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 เสียงอึกทึกสแควร์หรือ 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 >> ฟิลด์ถ่านอาจจะ? 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 ทำวิจัยบาง แต่เราจะไปกับความกล้าของเราตอนนี้ 412 00:19:39,900 --> 00:19:44,565 ถนนถ่าน, 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 ซิตี้เดียวกันนั่นเองดังนั้นถ่าน 50 416 00:19:54,200 --> 00:19:59,120 >> รัฐสามารถสหรัฐเป็นศูนย์กลางสำหรับตอนนี้ 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 ดังนั้นจริง ๆ แล้วบางทีผมเก็บไว้ว่าถ่าน 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 อาจจะเป็นถ่านที่มีความยาว 2 รัฐ 423 00:20:16,150 --> 00:20:20,670 ถ้าในสหรัฐอเมริกาที่พวกเขามีเหมือนแม่ แมสซาชูเซต, นิวยอร์ก, นิวยอร์ก, นิวเจอร์ซีย์, นิว 424 00:20:20,670 --> 00:20:22,100 นิวเจอร์ซีย์และอื่น ๆ 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 >> แต่ผมคิดว่าโอลิเวียคุณ เสนออีกวิธีหนึ่ง 428 00:20:29,915 --> 00:20:30,790 ผู้ชม: [ไม่ได้ยิน] 429 00:20:30,790 --> 00:20:33,670 DAVID ลัน: ใช่จึงเป็น น่ารำคาญเล็ก ๆ น้อย ๆ ที่จะพิมพ์ใน 430 00:20:33,670 --> 00:20:37,890 แต่ enum อาจทำให้รู้สึกมากขึ้น เพราะวิธีการนี​​้อย่างน้อยในสหรัฐอเมริกา 431 00:20:37,890 --> 00:20:41,320 คุณสามารถระบุถ้าเบื่อหน่าย แต่ คุณทำมันได้เพียงครั้งเดียวในฐานข้อมูลของคุณ 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 Let 's ติดกับที่นั่นเพราะ มันเรียงลำดับของการบังคับใช้ความรุนแรงมากขึ้น 435 00:20:51,720 --> 00:20:53,620 แล้วรหัสไปรษณีย์? 436 00:20:53,620 --> 00:20:55,306 ผมคิดว่าแอนดรูมีความคิดว่า 437 00:20:55,306 --> 00:20:56,180 ผู้ชม: [ไม่ได้ยิน] 438 00:20:56,180 --> 00:20:57,240 DAVID ลัน: ใช่ห้าหรือเก้า 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 >> ผู้ชม: [ไม่ได้ยิน] 454 00:21:47,900 --> 00:21:50,650 >> DAVID ลัน: มันต้องใช้เวลา 0 ดีค่อนข้างมัน 455 00:21:50,650 --> 00:21:53,810 เอารหัสไปรษณีย์ทั้งหมดเป็น จำนวนและดังนั้นจึงเป็น 456 00:21:53,810 --> 00:21:56,590 ชั้นนำ 0 ซึ่งหมายความว่า มันไม่มีความหมาย 457 00:21:56,590 --> 00:21:59,470 และอื่น ๆ 2138 น่าจะเป็นรหัสไปรษณีย์ของฉัน 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 Let 's รักษาเหล่านี้เป็นตัวเลข 462 00:22:15,290 --> 00:22:16,790 และตัดทอนศูนย์ชั้นนำ 463 00:22:16,790 --> 00:22:19,165 >> ฉันสาบานกับพระเจ้าทุกคู่ ของเดือนที่ฉันหาที่อยู่, 464 00:22:19,165 --> 00:22:22,300 และออกจากการจัดเรียงของโรคให้ฉันกลับไป และเพิ่ม 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 ตกลงไม่เพราะทุกคนใน แมสซาชูเซตในพื้นที่นี้ 469 00:22:31,610 --> 00:22:33,270 เป็นไปได้ที่จะมี o นำพวกเขา 470 00:22:33,270 --> 00:22:38,070 ดังนั้นขอไปด้วยเช่น ถ่านอาจจะห้า 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 ดังนั้นถ่านตระหนักถึงคุณสามารถพิมพ์ ใน H-E-L-L-O รหัสไปรษณีย์ของคุณ 477 00:22:57,400 --> 00:22:59,180 ซึ่งไม่ได้เห็นได้ชัดว่าเป็นตัวเลข 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 หรือ database-- สัมพันธ์ทั่วไปที่ 488 00:23:26,600 --> 00:23:28,790 อีกครั้งเพียงแค่สัมพันธ์ หมายความว่าแถวและคอลัมน์ 489 00:23:28,790 --> 00:23:35,500 ว่าเป็นวิธีที่คุณจัดระเบียบ data-- ของคุณ และตระหนักดีว่าสิ่งที่หมายถึงนี้ 490 00:23:35,500 --> 00:23:37,740 ฉันได้รับการเข้าใจผิดใน ที่ผม drawing-- นี้ 491 00:23:37,740 --> 00:23:40,190 เป็นสิ่งที่เรียกว่าคี สำหรับตารางฐานข้อมูล 492 00:23:40,190 --> 00:23:42,810 นี้เป็นเหมือน ข้อกำหนดสำหรับ table-- 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 ดังนั้นสำหรับตัวอย่างเช่นส่วนหัวของเราอยู่ในขณะนี้ ชื่อ, นามสกุล, เพศ, ID, 501 00:24:15,200 --> 00:24:20,980 อีเมลหมายเลขถนน, ถนน, ขออภัย 502 00:24:20,980 --> 00:24:25,710 ถนนเมืองรัฐเพียง เกี่ยวกับพอดีกับหน้าจอ 503 00:24:25,710 --> 00:24:29,080 >> ดังนั้นสิ่งนี้หมายความว่าเมื่อมีการ ผู้ใช้คนแรกที่ลงทะเบียนสำหรับเว็บไซต์ของฉัน 504 00:24:29,080 --> 00:24:32,880 มันจะเป็นสิ่งที่ชอบ ดาวิดลัน, M, สมมติว่า 1 505 00:24:32,880 --> 00:24:42,910 malan@harvard.edu จำนวนบนท้องถนนจะ จะเป็นเหมือน 1 เสียงอึกทึกสแควร์, เคมบริดจ์ 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 และผมก็แค่การวาดภาพได้ ออกมาในแถวและคอลัมน์ 512 00:24:56,033 --> 00:24:58,320 นี่เป็นเพียงสคีมา ความหมายที่ครอบคลุม 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 >> ผู้ชม: [ไม่ได้ยิน] 518 00:25:13,830 --> 00:25:17,690 >> DAVID ลัน: ชื่อนี้ใช่ดังนั้น ฉันชอบความจริงในปัจจุบันผู้ใช่ 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 ประดิษฐ์สถานการณ์ที่ บางทีเจ้านายของฉันได้ถามผมว่า 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 ทำสิ่งบางขลังใต้ เครื่องดูดควันและทำบางสิ่งบางอย่างในลักษณะ 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 ผู้ชม: [ไม่ได้ยิน] 550 00:26:32,500 --> 00:26:33,090 DAVID ลัน: ประสิทธิภาพการทำงาน 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 ผู้ชม: [ไม่ได้ยิน] 557 00:26:44,240 --> 00:26:45,031 DAVID ลัน: พื้นที่ 558 00:26:45,031 --> 00:26:46,520 ดังนั้นอีกครั้งเหล่านี้มีการค้าร่วมกัน 559 00:26:46,520 --> 00:26:50,820 ฉันสามารถเพิ่มความเร็วในการค้นหาของคุณ แต่ก็ จะเสียค่าใช้จ่ายมากขึ้นไบต์ของพื้นที่ 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 ถ้าเรามีดาวิดและสกัลลีและคารีม และ 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 สกัลลีอยู่ในที่นี่แล้ว เรามีคารีมและ 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 >> แต่ถ้าผมบอกว่าเดี๋ยวก่อนฐานข้อมูล ดัชนีฟิลด์ชื่อแรก 575 00:27:33,470 --> 00:27:37,000 แล้วก็จะทำบางสิ่งบางอย่าง นักเล่นและสนับสนุนบางสิ่งบางอย่าง 576 00:27:37,000 --> 00:27:38,130 เช่นการค้นหาแบบไบนารี 577 00:27:38,130 --> 00:27:39,820 มันอาจไม่ค้นหา binary ต่อ se 578 00:27:39,820 --> 00:27:42,810 ฐานข้อมูลมีแนวโน้มที่จะใช้อีก โครงสร้างข้อมูลที่เรียกว่า B-ต้นไม้ 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 เป็นไบต์มากขึ้น 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 หรือจะไม่ซ้ำกันที่ มีแนวโน้มที่จะเป็นสนามที่ดี 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 คุณสามารถพูดว่าเดี๋ยวก่อนฐานข้อมูลให้แน่ใจว่า ว่ารหัสในตารางนี้ทุกที่ไม่ซ้ำ 605 00:28:56,060 --> 00:28:59,330 อย่าแม้แต่จะให้โปรแกรมเมอร์ ตั้งใจใส่ในอีเมลที่ซ้ำกัน 606 00:28:59,330 --> 00:29:00,740 หรือคัดลอกหมายเลขรหัส 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 เพราะคุณทำมัน defensively 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 >> ผู้ชม: [ไม่ได้ยิน] 625 00:29:43,470 --> 00:29:44,404 >> DAVID ลัน: เลขที่ 626 00:29:44,404 --> 00:29:45,279 >> ผู้ชม: [ไม่ได้ยิน] 627 00:29:45,279 --> 00:29:47,840 628 00:29:47,840 --> 00:29:48,826 >> DAVID ลัน: OK 629 00:29:48,826 --> 00:29:49,701 >> ผู้ชม: [ไม่ได้ยิน] 630 00:29:49,701 --> 00:29:52,420 631 00:29:52,420 --> 00:29:54,850 >> DAVID ลัน: โอ้ดังนั้นเรา มีการพูดคุยในทาง 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 >> ผู้ชม: [ไม่ได้ยิน] 636 00:30:06,870 --> 00:30:10,030 >> DAVID ลัน: คำดีกว่าการใช้ คือสามารถใช้ภาษาใด ๆ 637 00:30:10,030 --> 00:30:15,280 ดังนั้นผมจึงสามารถเขียนโค้ด JavaScript, C รหัส, C ++, Java รหัสรหัสทับทิม 638 00:30:15,280 --> 00:30:19,010 ทั้งหมดที่พูดคุยกับ ฐานข้อมูลและดำเนินการสอบถาม 639 00:30:19,010 --> 00:30:22,310 ในความเป็นจริงที่ไม่เลว ทำต่อไปตัวอย่างเช่นการสอบถาม 640 00:30:22,310 --> 00:30:25,720 และอีกครั้งที่เราจะไม่ไปลง Java หรือ C ++ หรือใด ๆ ของอีกต่อไป 641 00:30:25,720 --> 00:30:29,420 แต่ใน SQL, ภ​​าษาที่ฉันให้ อ้างอิง Structured Query Language, 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 และเพื่อให้เลือกเป็นอย่างมาก คำกริยาที่พบบ่อยถ้าคุณ 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 >> ผู้ชม: [ไม่ได้ยิน] 653 00:31:04,410 --> 00:31:05,380 >> DAVID ลัน: ฉันขอโทษ? 654 00:31:05,380 --> 00:31:06,300 >> ผู้ชม: [ไม่ได้ยิน] 655 00:31:06,300 --> 00:31:09,580 >> DAVID ลัน: ไม่จำเป็นก็ รวมมากขึ้นกว่าที่เป็นจริง 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 หรือเท่ากันแถวหลายวิธีที่ควร ฉันจะส่งกลับมาจากฐานข้อมูลหรือไม่ 666 00:31:41,680 --> 00:31:45,860 อาจเป็นเพียงแค่หนึ่งถ้าฉันมีแน่นอน ได้รับการรักษารหัสเป็นตัวระบุที่ไม่ซ้ำกัน 667 00:31:45,860 --> 00:31:50,710 และหากมีเดวิดที่ ID ที่ไม่ซ้ำผม ควรจะได้รับกลับมาเพียงหนึ่งเดียวและแถว 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 เลือกรหัสไปรษณีย์จาก ผู้ใช้ที่ id 1 674 00:32:10,860 --> 00:32:15,820 นี้จะเลือกที่จะฉันเพียงไปรษณีย์ของดาวิด รหัสและไม่ครบถ้วนของแถวว่า 675 00:32:15,820 --> 00:32:19,541 ทำไมฉันอาจจะทำเช่นนี้แทน แบบสอบถามดาวป่าการ์ด? 676 00:32:19,541 --> 00:32:21,950 >> ผู้ชม: [ไม่ได้ยิน] 677 00:32:21,950 --> 00:32:24,590 >> DAVID ลัน: ใช่ผมอาจจะต้องมัน 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 ไม่ครบถ้วนของแถว 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 และจากนั้นเราจะบอกว่าค่า เช่นสมมติว่าลอเรนสกัลลี 689 00:33:00,150 --> 00:33:02,380 ช่างภาพของเราได้ที่นี่ 690 00:33:02,380 --> 00:33:04,390 และเขตต่อไปคือเพศ 691 00:33:04,390 --> 00:33:08,020 ดังนั้นเราจะพูดอ้างนำมาอ้าง "F" แล้วเรามีรหัส 692 00:33:08,020 --> 00:33:12,250 และฉันจะขอ say-- หลอกว่าเธอไม่ได้จริงที่นี่ 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 ดังนั้นมันจะเป็นเหมือน ลอเรนสกัลลีและอื่น ๆ 697 00:33:22,140 --> 00:33:24,360 และเราก็จะ dot dot จุดมันออกไปจากที่นี่ 698 00:33:24,360 --> 00:33:26,890 ตอนนี้มันจะได้รับเพียงเล็กน้อย น่าเบื่อ แต่แบบสอบถามแทรก 699 00:33:26,890 --> 00:33:28,310 ในท้ายที่สุดจะมีลักษณะเช่นนั้น 700 00:33:28,310 --> 00:33:30,970 >> ถ้าผมต้องการที่จะกำจัด สกัลลีอ๊ะขอยกเลิกการลงทะเบียน 701 00:33:30,970 --> 00:33:37,420 เธอจะลบบัญชีของเธอ ลบจากผู้ใช้ที่ id เท่ากับ 2 702 00:33:37,420 --> 00:33:38,500 จะได้รับการกำจัดของสกัลลี 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 ชุดไปรษณีย์เท่ากับ 021-- Nope, ที่ไปรษณีย์ปัจจุบันของเธอ 706 00:33:53,730 --> 00:33:54,487 90210 707 00:33:54,487 --> 00:33:56,320 เท่านั้นรหัสไปรษณีย์อื่น ๆ ฉันรู้ว่าในโลก 708 00:33:56,320 --> 00:33:59,002 เพื่อที่จะเปลี่ยน ไปรษณีย์เธอ 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 >> ผู้ชม: [ไม่ได้ยิน] 713 00:34:05,302 --> 00:34:08,010 DAVID ลัน: ใช่ฉันย้ายทุกคน เบเวอร์ลี่ฮิลส์รัฐแคลิฟอร์เนีย 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 เลือกแทรกลบปรับปรุง กับภาคเหล่านี้ในตอนท้าย 718 00:34:20,260 --> 00:34:22,139 เหล่านี้คำสั่งที่เพื่อที่จะพูด 719 00:34:22,139 --> 00:34:25,170 และมีจำนวนมากขึ้นคุณสามารถ ทำ แต่จริงๆมันก็เดือดลง 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 คุณใส่ลอเรนสกัลลีเข้าสู่ ฐานข้อมูลที่จะนำเธอในหน่วยความจำ 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 ผู้ชม: [ไม่ได้ยิน] 727 00:34:44,266 --> 00:34:46,364 728 00:34:46,364 --> 00:34:47,780 DAVID ลัน: คำถามที่ดีจริงๆ 729 00:34:47,780 --> 00:34:50,370 สคริปต์เหล่านี้จะเปลี่ยนจาก Microsoft Access เพื่อ Oracle 730 00:34:50,370 --> 00:34:52,290 ไปยัง 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 ไปไมโครซอฟท์ 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 >> และ anecdotally บริษัท ส่วนใหญ่มีแนวโน้มที่ ไม่เคยที่จะย้ายออกจากฐานข้อมูลของพวกเขา 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 >> ผู้ชม: [ไม่ได้ยิน] 760 00:36:13,147 --> 00:36:17,820 761 00:36:17,820 --> 00:36:21,480 >> DAVID ลัน: ใช่ดังนั้น คุณสามารถคิดฐานข้อมูล 762 00:36:21,480 --> 00:36:25,020 เป็นเพียงเซิร์ฟเวอร์ในตอนท้ายของ วันและภายในของเซิร์ฟเวอร์ที่ 763 00:36:25,020 --> 00:36:28,670 เป็นทั้งกลุ่ม ตารางแถวและคอลัมน์ 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 ผู้ชม: [ไม่ได้ยิน] 770 00:36:48,208 --> 00:36:53,540 771 00:36:53,540 --> 00:36:55,070 >> DAVID ลัน: แน่นอนว่า 772 00:36:55,070 --> 00:36:58,450 ดังนั้น pseudocode สำหรับบางสิ่งบางอย่าง เช่นนั้นอาจเป็นแบบนี้ 773 00:36:58,450 --> 00:37:02,450 ในไฟล์ PHP ของคุณหรือของคุณ ไฟล์หลามหรือแฟ้ม Java ของคุณ 774 00:37:02,450 --> 00:37:09,210 คุณจะมีรหัส pseudocode หรือ รอยขีดข่วนเช่นบล็อกเช่นถ้าผู้ใช้เข้าชม 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 แม้ว่าเราจะข้ามบาง ขั้นตอนการดำเนินการ 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 เมื่อเวลาผ่านไปความซ้ำซ้อนอย่างมีนัยสำคัญ และดังนั้นจึงขาดประสิทธิภาพ 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 >> ผู้ชม: [ไม่ได้ยิน] 794 00:38:20,940 --> 00:38:22,686 >> DAVID ลัน: ทำไมคุณหมายความว่า? 795 00:38:22,686 --> 00:38:23,561 ผู้ชม: [ไม่ได้ยิน] 796 00:38:23,561 --> 00:38:32,180 797 00:38:32,180 --> 00:38:32,930 DAVID ลัน: ใช่ 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 อย่างใดหลายเมืองมี อย่างใดรหัสไปรษณีย์เดียวกัน 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 >> แล้วคิดว่าฉันอาศัยอยู่ในเคมบริดจ์ แมสซาชูเซตตามตารางของผู้ใช้นี้, 808 00:39:01,650 --> 00:39:04,100 และคิดว่าลอเรน สกัลลีที่อาศัยอยู่ในเคมบริดจ์ 809 00:39:04,100 --> 00:39:06,120 และสมมติว่าคารีม อาศัยอยู่ในเคมบริดจ์ 810 00:39:06,120 --> 00:39:10,400 และ Arwa อาศัยอยู่ในเคมบริดจ์ MA, เราทุกคนใน 02138 811 00:39:10,400 --> 00:39:15,890 เหตุผลที่เราจะจดจำเคมบริดจ์ MA, 02138 สำหรับทั้งสี่ของเรา? 812 00:39:15,890 --> 00:39:18,903 สิ่งที่ควรพอเพียงที่จะจำได้ไหม? 813 00:39:18,903 --> 00:39:20,249 >> ผู้ชม: [ไม่ได้ยิน] 814 00:39:20,249 --> 00:39:21,540 DAVID ลัน: เพียงแค่รหัสไปรษณีย์ 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 >> ผู้ชม: [ไม่ได้ยิน] 824 00:39:54,535 --> 00:39:55,930 >> DAVID ลัน: ใช่ 825 00:39:55,930 --> 00:40:01,440 ดังนั้นไปรษณีย์และรัฐและเมือง 826 00:40:01,440 --> 00:40:05,350 และอื่น ๆ ชนิดที่นี่เราจะบอกว่า นี้จะเป็นถ่าน 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 >> ผู้ชม: [ไม่ได้ยิน] 832 00:40:23,100 --> 00:40:23,850 DAVID ลัน: นีซ 833 00:40:23,850 --> 00:40:30,239 รัฐและเมืองหายไปดังนั้นผมจึงได้ตอนนี้ กำจัดความไร้ประสิทธิภาพที่มีศักยภาพ 834 00:40:30,239 --> 00:40:33,280 สำหรับเกินความจำเป็นจดจำเคมบริดจ์ MA, เคมบริดจ์, เคมบริดจ์ 835 00:40:33,280 --> 00:40:35,712 เคมบริดจ์ซึ่งหวังว่า ไม่เคยไปเปลี่ยน 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 >> ผู้ชม: [ไม่ได้ยิน] 844 00:40:55,684 --> 00:40:58,100 DAVID ลัน: แน่นอนและฉัน ดีใจที่คุณใช้คำว่าเข้าร่วม 845 00:40:58,100 --> 00:41:01,320 เพราะที่จริงคำหลัก ในโลกของฐานข้อมูลเชิงสัมพันธ์ 846 00:41:01,320 --> 00:41:05,270 ใน 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 ฉันจะเป็นเพียงแค่ย้ายไปยังบรรทัดที่สอง เพื่อที่ว่านี้ users.zip fits-- เท่ากับ 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 แต่มันก็ไม่ได้มาจากผู้ใช้ต่อ se 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 ดีเห็นได้ชัดว่า ตารางผู้ใช้ซิปฟิลด์ 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 กับเหล่านี้ชนิดของตัวยึด 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 และมือนี้เป็นรหัสไปรษณีย์ ตารางเราเรียงลำดับของ finding-- 874 00:42:38,090 --> 00:42:41,330 และเคล็ดลับของมือของฉันที่มีซิป มากกว่าที่นี่และเคล็ดลับของนิ้วมือข​​องฉัน 875 00:42:41,330 --> 00:42:43,740 ที่นี่มีซิปคุณ ชนิดของการเชื่อมต่อกันมัน 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 และมันไม่จำเป็นต้องเป็นซิป 879 00:42:50,840 --> 00:42:54,460 มันอาจจะเป็นอะไรมากที่สุดอื่น แต่ ไปรษณีย์เป็นสิ่งที่ดีเพราะหนึ่งมันสั้น 880 00:42:54,460 --> 00:42:56,470 สองมันเสมอ ยาวเท่ากันเพื่อให้มี 881 00:42:56,470 --> 00:43:02,270 ประสิทธิภาพจริงกับสิ่งที่ โอลิเวียที่นำเสนอที่นี่ 882 00:43:02,270 --> 00:43:05,200 กับแฟออกซิปและ [ไม่ได้ยิน] เสนอว่าเราได้รับการกำจัด 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 คุณได้รับการจัดเรียงของ หายไปในวัชพืช 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 เอาเรื่องข้อมูลร่วมกันเพื่อ จะได้รับเงินฝากออมทรัพย์ของพื้นที่บางส่วน 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 แต่ถ้าคุณได้อ่าน ขึ้นบนบทเรียนหรือรับ 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 และคุณอาจจะคิดหรือวิศวกรที่ไม่ดี อาจจะบอกว่าโอ้ดีจ่ายเราดีขึ้น 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 ถ้าคุณไป in-- และคุณสามารถไปใน หลังจากที่ fact-- และเพิ่มดัชนี 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 วงเล็บปีกกาเกิดขึ้นกับ ถูกนำมาใช้ที่นี่ค่อนข้างมาก 942 00:45:51,270 --> 00:45:55,400 คุณอาจจะมีบางสิ่งบางอย่าง เช่นชื่อแรกคือดาวิด 943 00:45:55,400 --> 00:46:00,180 คุณอาจจะมีข้อเสนอนี้อยู่ ชื่อลัน, คำพูด, 944 00:46:00,180 --> 00:46:07,530 คุณอาจมี ID is-- ขอโทษนะ ID whoops-- คือ 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 และแน่นอนว่าจริงๆ ข้อมูลที่เดือดลงไป, 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 ในความเป็นจริงมากในสมัย วันนี้เป็นระบบฐานข้อมูล 963 00:47:07,310 --> 00:47:11,942 เช่น MongoDB และ Redis และไม่กี่ เครื่องมืออื่น ๆ ที่มีอยู่ได้อย่างอิสระ 964 00:47:11,942 --> 00:47:13,400 แต่พวกเขามีมากขึ้นสมัย​​ en 965 00:47:13,400 --> 00:47:18,850 ส่วนหนึ่งเป็นเพราะพวกเขานำเสนอเพิ่มเติม คุณสมบัติมากกว่าวิธีตารางเหล่านี้ 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 ดังนั้น pluses และ minuses 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 Let 's การเปลี่ยนแปลงเล็ก ๆ น้อย ๆ กลับมาตอนนี้กับการเขียนโปรแกรมเว็บ 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 cascading สไตล์ชีต 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, และในระหว่างแท็กสคริปต์ของฉัน 993 00:48:43,820 --> 00:48:53,460 กล่าวว่าการแจ้งเตือน ( '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 >> ดังนั้นการทำงานที่เป็น การแจ้งเตือนเพื่อให้ไปที่หน้านี้ 999 00:49:09,630 --> 00:49:14,046 ในขณะนี้และคลิกโหลดและตอนนี้คุณ เห็นนิด ๆ หน่อย ๆ ของการติดต่อสื่อสาร 1000 00:49:14,046 --> 00:49:15,420 เป็นชนิดของโรงเรียนเก่าและน่าเกลียด 1001 00:49:15,420 --> 00:49:18,580 นี้ชนิดของการแจ้งเตือนคุณของ ป๊อปอัพบางทีของปีกลาย 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 เริ่มต้นเมื่อวานนี้ซึ่งดูเหมือน นี้ผ่านทางที่เราหาแมว 1009 00:49:43,027 --> 00:49:45,360 แต่สังเกตเห็นมีชนิดของ ข้อผิดพลาดในรุ่นปัจจุบัน 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 และเพิ่มแท็กสคริปต์เช่นนี้ที่ ฉันจะพิมพ์รหัส 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 ฉันต้องการที่จะได้รับ Q และฉันกำลังจะไป พูดเท่ากับไม่มีอะไรเหมือน this-- 1023 00:50:33,050 --> 00:50:38,220 จริงให้ฉันใช้คำพูดสอง เพียงเพื่อ consistency-- เท่ากับไม่มีอะไร 1024 00:50:38,220 --> 00:50:46,650 แล้วแจ้งเตือน ( "กรุณาพิมพ์แบบสอบถาม") ที่นี่ 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 เรียกว่า Q 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 ในเขตข้อมูลแบบฟอร์มที่นี่ฉันจะไป เพิ่มสิ่งที่เรียกว่าตัวจัดการเหตุการณ์ 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 ฉันจะเยื้องนี้และเพิ่มอีก วงเล็บปีกกาที่นี่และอีกคนหนึ่งที่นี่ 1042 00:51:48,280 --> 00:51:50,110 พิจารณาสิ่งนี้คือตอนนี้ทำ 1043 00:51:50,110 --> 00:51:54,210 ฉันมี now-- คิดว่านี้เป็นของฉันสร้างขึ้น ชิ้นส่วนจิ๊กซอว์ตัวเองที่ไม่ได้ก่อนหน้านี้ 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 ไม่มีค่ามันก็เท่ากับ อ้างนำมาอ้างไม่มีอะไรในนั้น 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 และแจ้งให้เราตรวจสอบเพียงครั้งว่า ฉันไม่ได้ในความเป็นจริงจะทำให้ความผิดพลาดใด ๆ 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 ตอนนี้ให้ฉันโหลดมันและตอนนี้ปล่อยให้ ผมลองส่งโดยไม่ต้องพิมพ์ 1067 00:53:02,170 --> 00:53:05,860 อะไรเลยด่ามันยากจน 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 ผมขอเปิดคอนโซล [ไม่ได้ยิน] บันทึกการโหลดหน้าเว็บ 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 ฉันทำพิมพ์ผิด 1076 00:53:18,630 --> 00:53:20,760 ผมจำได้ว่ามันคืออะไร 1077 00:53:20,760 --> 00:53:21,350 .value 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 ดังนั้นจึงไม่ปล่อยให้ฉันผ่าน 1085 00:53:36,840 --> 00:53:40,210 ฉันจะเป็นชนิดของขี้เล่นกับเรื่องนี้ และแทนที่จะตรวจสอบไม่มีค่า 1086 00:53:40,210 --> 00:53:46,720 ฉันจะบอกอะไรบางอย่างเช่น ไม่มีการค้นหาสำหรับแมว 1087 00:53:46,720 --> 00:53:51,150 และตอนนี้เราก็สามารถเล่นให้มากขึ้น การค้นหาของผู้ใช้สำหรับสุนัขถ้าเขาหรือเธอ 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 ดังนั้นหนึ่งเราได้นำเข้าสู่ โลกของเราของ HTM​​L และ 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 ไปข้างหน้าให้ฉันเปิดสไลด์ถัดไป ที่นี่และเพียงแค่ชี้ให้เห็นสิ่งหนึ่ง 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 และนี่จะทำให้เรามีโอกาส ในบริบทเล็กน้อยความสนุกสนานมากขึ้น 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 อุ่ย 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 ดังนั้นสิ่งที่คุณมีเกี่ยวกับเรื่องนี้ หน้าเป็นทั้งกลุ่ม 1126 00:56:33,340 --> 00:56:38,024 ปริศนาภาพโดยเพื่อน ที่ Stanford University 1127 00:56:38,024 --> 00:56:41,190 ดังนั้นสิ่งที่คุณเห็นนี่เป็นเกือบ ชนิดของหนึ่งในบรรดาปริศนาตาวิเศษ 1128 00:56:41,190 --> 00:56:43,815 แต่ถ้าคุณแค่จ้องมองไปที่มัน ไม่มีอะไรที่จะปรากฏออกที่คุณ 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 และเราสามารถทำให้ทุก สีรุ้ง 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 ดังนั้นสิ่งที่นิคไม่ได้เขา กระชับลงสีแดงแล้ว 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 ที่ นิคได้เขียนขึ้นสำหรับคุณ 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 มันเป็นเพียงแค่คิวภาพเพื่อมนุษย์ 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 ที่เขาบอกให้ฉันใหม่ อ้างนำมาอ้างภาพ "ง่าย" 1171 00:58:45,240 --> 00:58:49,680 >> ภาพที่เรียบง่ายในบริบทนี้ เป็นสิ่งที่เรียกว่าชั้นดี 1172 00:58:49,680 --> 00:58:53,910 มันเป็นชนิดเช่น class-- เทคนิค prototype-- แต่จริงๆ 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 นี้ไวยากรณ์ค่อนข้างคลุมเครือที่นี่ เป็นชนิดเช่นบล็อกซ้ำ 1180 00:59:15,360 --> 00:59:19,140 ว่าบางส่วนของที่คุณเห็นในเกาก่อนหน้านี้ วันนี้ที่คุณสามารถทำซ้ำ 10 ครั้ง 1181 00:59:19,140 --> 00:59:22,220 ในกรณีนี้นิคไม่ได้ 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 >> และเพื่อที่จะเป็นที่เหมาะสมมากขึ้นภาพเป็น ตัวแปรจุดหมายความว่าไปภายในของมัน 1185 00:59:38,160 --> 00:59:40,900 และได้รับความกว้างของตนและ แล้ววงเล็บเปิดปิด 1186 00:59:40,900 --> 00:59:43,687 วงเล็บเป็นเพียงวิธีการของโปรแกรมเมอร์ ของคำพูดนี้เป็นฟังก์ชั่น 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 ของการกระตุ้นให้เกิดห่วงที่เป็น จะย้ำกว่า 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 และในภายใน ในขณะที่เรากำลังทำซ้ำ 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 เพียงแค่ไปมากกว่า ภาพทั้งหมดซ้ำ 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 จะช่วยให้คุณสามารถดูซ้ำ ในทุกพิกเซลทุกจุดในภาพ 1204 01:00:43,090 --> 01:00:43,790 >> อะไรพิกเซล? 1205 01:00:43,790 --> 01:00:46,250 ดีที่มีความชัดเจนถ้าเรามอง ที่เดิมและขยาย 1206 01:00:46,250 --> 01:00:49,060 ถ้าคุณจริงๆใส่ดวงตาของคุณ ไปที่หน้าจอคอมพิวเตอร์ที่ 1207 01:00:49,060 --> 01:00:53,510 เพียงแค่ทั้งกลุ่มของจุดหลาย พันจุดเต็มไปด้วยกันมี 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 สีแดงหมายความว่าไม่มี สีแดง, 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 >> ผู้ชม: [ไม่ได้ยิน] 1226 01:01:51,009 --> 01:01:52,800 DAVID ลัน: คุณต้องการ หวังว่าอย่างนั้นมันเป็นสีขาว 1227 01:01:52,800 --> 01:01:55,333 แต่นี้ operates-- ขอโทษ? 1228 01:01:55,333 --> 01:01:56,380 >> ผู้ชม: [ไม่ได้ยิน] 1229 01:01:56,380 --> 01:01:58,630 DAVID ลัน: ดังนั้นคุณจริง มีสีดำในกรณีนี้ 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 ผู้ชม: [ไม่ได้ยิน] 1237 01:02:19,360 --> 01:02:20,610 DAVID ลัน: ขวาอย่างเห็นได้ชัด 1238 01:02:20,610 --> 01:02:25,940 แล้วไม่มีสีแดงจำนวนมาก สีเขียว, สีฟ้าไม่มีแล้ว 1239 01:02:25,940 --> 01:02:29,590 ถ้าคุณ have-- ดีเราก็จะเสร็จสิ้น มันเพียงเพราะ แต่นี้แน่นอน 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 และอี และ 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, ฐานสิบหกคือ 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 แล้วบีและซีแล้วดังนั้น วิธีที่คุณนับเลขฐานสิบหก 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 เป็นศูนย์ผ่าน ตอนนี้ทำไมเอฟที่มีความสำคัญ? 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 >> ดังนั้นในกรณีนี้เป็นสิ่งสำคัญ เพราะนิคที่ Stanford 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 และขีดเหล่านี้ เป็นเพียงตัวยึด 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 ในคำอื่น ๆ ซึ่งจุดที่ พิกเซลที่คุณต้องการที่จะได้รับสีเขียวที่ 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 >> ตอนนี้ขอเพียงแค่นี้สรุปสิ่งที่จะทำ 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 ค่านิยมและค่าทั้งหมดวาย 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 >> ผู้ชม: [ไม่ได้ยิน] 1314 01:06:25,140 --> 01:06:26,151 >> DAVID ลัน: นีซ 1315 01:06:26,151 --> 01:06:28,260 >> ผู้ชม: [ไม่ได้ยิน] 1316 01:06:28,260 --> 01:06:30,850 >> DAVID ลัน: นีซ 1317 01:06:30,850 --> 01:06:36,120 และฉันจะซูมออกและใช้เวลาเพียงแค่ ดูแลที่คุณไม่ได้ทำผิดพลาดใด ๆ 1318 01:06:36,120 --> 01:06:39,390 และถ้าคุณสะดวกสบาย กับสิ่งที่คุณได้ทำ 1319 01:06:39,390 --> 01:06:42,936 ไปข้างหน้าและคลิกที่ปุ่ม Run / บันทึกและดูสิ่งที่คุณได้รับ 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 ถ้าคุณต้องการที่จะตี การเรียกใช้ / ปุ่มบันทึกกี่ครั้ง 1326 01:06:58,450 --> 01:07:01,190 ในการแก้ไขปัญหาบางสิ่งบางอย่าง 1327 01:07:01,190 --> 01:07:03,610 >> และแจ้งให้เรายังซูมในของฉัน รหัสเพื่อให้คุณสามารถคัดลอก 1328 01:07:03,610 --> 01:07:04,110 ดี. 1329 01:07:04,110 --> 01:07:08,720 ดังนั้นผมจึงเห็นแอนดรูมีสิ่งที่ ดูเหมือนว่าจะเป็นความผิดพลาด 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 >> DAVID ลัน: บิ๊กสี่เหลี่ยมสีดำ? 1334 01:07:14,360 --> 01:07:16,068 ตกลงดังนั้นขอคิด เกี่ยวกับสิ่งที่นี้หมายถึง 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 Maybe คุณเห็น บางสิ่งบางอย่างเล็ก ๆ น้อย ๆ ที่นั่น? 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 >> ผู้ชม: [ไม่ได้ยิน] 1345 01:07:38,050 --> 01:07:39,510 >> DAVID ลัน: สปอยเลอร์! 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 ดังนั้นถ้าเราต้องการที่จะขยายจำนวนเงินที่ สีแดงให้ฉันนำเสนอเคล็ดลับนี้ 1350 01:07:51,670 --> 01:07:53,750 ผมขอขยายบนหน้าจอของฉัน 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 ที่จะได้รับปริมาณของสีแดงที่ 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 ผู้ชม: [ไม่ได้ยิน] 1367 01:08:34,493 --> 01:08:36,279 DAVID ลัน: ใช่บางที คูณด้วย 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 และดาวดอกจันบนของคุณ แป้นพิมพ์เป็นคนทั่วไปไม่ได้ใช้ 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 >> ดังนั้นตามสัญชาตญาณคารีมของ เก็บไว้ในตัวแปรนี้เรียกว่าจำนวนเงิน 1375 01:08:59,790 --> 01:09:03,649 เป็นวิธีการที่สีแดงมากฉันต้องการที่ XY สถานที่ตั้ง 1376 01:09:03,649 --> 01:09:11,500 วิธีตอนนี้ฉันจะทำให้ พิกเซลมีตัวเลขที่? 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 ผู้ชม: [ไม่ได้ยิน] 1380 01:09:18,540 --> 01:09:20,040 DAVID ลัน: ใช่ดี คุณไม่ต้องการให้ 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 >> ผู้ชม: [ไม่ได้ยิน] 1386 01:09:30,130 --> 01:09:30,880 >> DAVID ลัน: นีซ 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 >> DAVID ลัน: 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 ในคำอื่น ๆ ตัวแปร เป็นตัวยึดชั่วคราว 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 กึ่งทวิภาคและวงเล็บ 1400 01:10:02,330 --> 01:10:06,290 >> ไปข้างหน้าและคลิก เรียกใช้ / บันทึกอีกครั้งและคุณ 1401 01:10:06,290 --> 01:10:10,690 ควรเห็นอย่างน่าอัศจรรย์สิ่งที่เป็นจริง ที่นั่น [? 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 ผู้ชม: [ไม่ได้ยิน] 1407 01:10:21,090 --> 01:10:22,180 DAVID ลัน: สิทธิทั้งหมด 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 >> ผู้ชม: [ไม่ได้ยิน] 1432 01:11:40,580 --> 01:11:44,010 >> DAVID ลัน: ตกลงดังนั้นคนนี้ฉัน ไม่ได้จะให้คำแนะนำที่เป็นจำนวนมาก 1433 01:11:44,010 --> 01:11:47,220 ดังนั้นผมจึง would-- โอ้ขอ เห็นคุณมีการพิมพ์ผิดนี่ 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 ดี 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 ของวิทยาศาสตร์หรือศิลปะ เรียกว่าซูรินาเม, 1443 01:12:11,080 --> 01:12:14,100 ศิลปะของการซ่อนข้อมูลในภาพ 1444 01:12:14,100 --> 01:12:16,890 โดยปกติภาพอาจจะ ใส่ลายน้ำดิจิตอลมากโจ๋งครึ่ม 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 และผมคิดว่าแอนดรูอาจ มีอากาศมันเป็นครั้งแรก 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 >> DAVID ลัน: อนุสาวรีย์เทพีเสรีภาพ จะเป็นคำตอบในครั้งนี้ 1457 01:13:28,500 --> 01:13:31,140 ดังนั้นอีกครั้งเพียงบางส่วนที่เรียบง่าย ตัวอย่างเป้าหมายของการที่ 1458 01:13:31,140 --> 01:13:35,040 คือการให้ความรู้สึกของวิธีการ เราได้รับการแปลเป็​​นภาพรอยขีดข่วน 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 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 ความสุขที่จะสรุปบางสิ่งภาพ 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 ของการให้บริการ API ที่ไม่เพียง แต่ 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 และลงนามเราขึ้นสำหรับบัญชีฟรี ที่หวังว่า 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 สำหรับ 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 และพวกเขาได้มีทั้งกลุ่มของ API 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 และที่จะนำคุณไปตอนนี้ ต่อไปนี้หน้า, การสาธิตและรหัสตัวอย่าง 1502 01:15:49,360 --> 01:15:51,190 ผมขอซูมออกจากที่นี่ 1503 01:15:51,190 --> 01:15:56,300 และแจ้งให้เราได้รับเรา to-- เลื่อนลง เพื่อที่จะบอกว่าขั้นตอนการเริ่มต้นอย่างรวดเร็ว 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 หากคุณเพิ่งจะโบกมือฉัน ถ้าหากไม่แน่ใจว่าเราอยู่ที่ไหน 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 ในหน้าต่างเดียวและ การกวดวิชานี้ในหน้าต่างอื่น 1517 01:16:34,240 --> 01:16:37,120 ช่วยให้ได้รับจริงของเราเอง แอพลิเคชันและทำงาน 1518 01:16:37,120 --> 01:16:40,920 ที่ฝังกำหนดเองของ 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 API Javascript? 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 ตกลงในแท็บอื่นถ้าคุณทำไม่ได้ มีมันเปิดไม่ไปลง Cloud9 1526 01:16:58,090 --> 01:17:03,500 และได้รับตัวไปเพียง แท็บใหม่ในที่สุด 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 มีเพียงพรอมต์กะพริบในที่ว่างเปล่า แท็บที่เรียกว่าสิ่งที่ต้องการ 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 API JavaScript, 1538 01:17:48,000 --> 01:17:50,010 เราจะข้ามไปอ่าน ผ่านทุกข้อความนี้ 1539 01:17:50,010 --> 01:17:53,760 แต่แจ้งให้ทราบสวัสดีโลกที่เป็น แน่นอนทุกที่ที่คุณเห็นได้ในขณะนี้ 1540 01:17:53,760 --> 01:17:58,020 สวัสดีชาวโลกมีขนาดใหญ่นี้มีสีสัน ตัวอย่างของทั้งกลุ่มของ HTM​​L 1541 01:17:58,020 --> 01:18:03,590 ไปข้างหน้าและคัดลอกและวางเพียงแค่นั้น HTML ดังนั้นจากประเภทเอกสารที่อยู่ด้านบน 1542 01:18:03,590 --> 01:18:08,810 ไปทางแท็กปิดไป ข้างหน้าและคัดลอกในปัจจุบันผู้อีกครั้ง 1543 01:18:08,810 --> 01:18:14,430 ที่อยู่ภายใต้โลกเฮ example-- และวางลงในแท็บ Cloud9 ของคุณ 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 มีเราสุ่มสี่สุ่มห้าคัดลอกและวาง 1550 01:18:30,860 --> 01:18:33,334 พวกเขาเพียงแค่ต้องการที่จะช่วย แท้จริงเราได้รับการเริ่มต้น 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 สายหนึ่งในสิ่งที่ฉัน ดูและหวังว่าคุณ 1558 01:18:48,800 --> 01:18:51,710 เห็นสิ่งที่หมายความว่า, DOCTYPE HTML ได้ไหม? 1559 01:18:51,710 --> 01:18:52,385 คารีมจำ? 1560 01:18:52,385 --> 01:18:53,260 ผู้ชม: [ไม่ได้ยิน] 1561 01:18:53,260 --> 01:18:53,968 DAVID ลัน: ใช่ 1562 01:18:53,968 --> 01:18:54,870 ที่นี่มา HTML 5 1563 01:18:54,870 --> 01:18:57,950 ในขณะเดียวกันสายที่สองบน หน้าจอนี่หมายความว่าเบราว์เซอร์เดี๋ยวก่อน 1564 01:18:57,950 --> 01:18:59,482 นี่มาจริง HTM​​L 1565 01:18:59,482 --> 01:19:01,440 สายสามเฮ้เบราว์เซอร์ นี่มาหัว 1566 01:19:01,440 --> 01:19:04,260 สายสี่เป็นของหลักสูตรเดี๋ยวก่อน เบราว์เซอร์ที่นี่มาชื่อ 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 ในกรณีนี้มันเป็นเพียงแค่ปรับขนาด หน้าไปเริ่มต้น สายหก 1570 01:19:13,340 --> 01:19:16,140 เรายังไม่ได้พูดคุยเกี่ยวกับ แต่มัน ระบุการเข้ารหัสอักขระ 1571 01:19:16,140 --> 01:19:19,181 มีวิธีการที่แตกต่างกันในการเข้ารหัสไฟล์ของ โดยเฉพาะอย่างยิ่งสำหรับภาษาต่างประเทศ 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 เราสามารถอนุมานชนิดของ 1576 01:19:30,810 --> 01:19:37,075 ดังนั้นสายแปดหมายถึงเฮ้เบราว์เซอร์ที่ใช้ ทั้งหมดต่อไปนี้ที่สองแท็ก 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 และนี่เป็นเพียงวิธีการ ระบุหลายแท็กในครั้งเดียว 1582 01:19:46,140 --> 01:19:47,640 >> จากนั้นเราได้มีวงเล็บปีกกา 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 อัตรากำไรขั้นต้นหมายถึงนอกหมายถึงช่องว่างภายใน ภายใน แต่มันเป็นชนิดเดียวกันของการจัดการ 1595 01:20:14,980 --> 01:20:17,520 มันเป็นเรื่องเล็กน้อยของกันชน ระหว่างคุณและขอบ 1596 01:20:17,520 --> 01:20:21,170 >> แล้วสาย 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 >> ผู้ชม: [ไม่ได้ยิน] 1600 01:20:31,485 --> 01:20:32,360 DAVID ลัน: แน่นอน 1601 01:20:32,360 --> 01:20:36,900 คุณสมบัตินี้คุณสมบัตินี้ CSS นำไปใช้เพียงสิ่งหนึ่งแท็ก 1602 01:20:36,900 --> 01:20:41,180 ที่มีรหัสของคำพูดที่นำมาอ้าง "แผนที่" 1603 01:20:41,180 --> 01:20:44,460 และตอนนี้ขอไปข้างหน้าอย่างรวดเร็วเลื่อน ลงไปด้านล่างของไฟล์ซึ่ง 1604 01:20:44,460 --> 01:20:49,860 ไม่ไกลเกินไปและแจ้งให้ทราบล่วงหน้าในบรรทัด 19 ถ้าคุณวางมันเหมือนกับผม 1605 01:20:49,860 --> 01:20:53,405 line 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 มันเป็นแท็กเปิดปิดแท็ก 1609 01:20:57,550 --> 01:20:59,490 แต่มันจะมีรหัสเฉพาะ 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 และไม่มีขอบไม่มีขอบเพราะ สิ่งที่เรากำลังจะไปใส่ใน 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 และนี่คือแม้ว่ามันจะเป็น syntactically แปลกเล็กน้อย 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 เราจะได้ใช้ใน รหัสของนิค แต่เขาไม่ได้ดังนั้นฉัน 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 และชนิดที่คุณสามารถอนุมาน เกิดอะไรขึ้นที่นี่. 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 ด้านขวาบอกว่าเดี๋ยวก่อน เบราว์เซอร์ให้ฉันแผนที่ใหม่ของ 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 >> หลังจากวงเล็บที่เราเคยเห็น นี้มาก่อนเฮ้เบราว์เซอร์ได้รับ 1637 01:22:23,010 --> 01:22:29,210 ฉันองค์ประกอบในหน้านี้ แท็กในหน้าเว็บที่มีรหัสเฉพาะ is-- 1638 01:22:29,210 --> 01:22:30,710 >> ผู้ชม: [ไม่ได้ยิน] 1639 01:22:30,710 --> 01:22:31,790 >> DAVID ลัน: --map 1640 01:22:31,790 --> 01:22:35,770 และสิ่งที่เกิดขึ้นดี สายนี้ด้วยกันสาย 23 1641 01:22:35,770 --> 01:22:38,630 เป็นหลักว่า เฮ้เบราว์เซอร์ให้ไปรับฉัน 1642 01:22:38,630 --> 01:22:42,800 ที่ div ที่ว่างเปล่าบนหน้าเว็บ ที่มีรหัสเฉพาะคือแผนที่, 1643 01:22:42,800 --> 01:22:45,600 เพราะผมต้องการแทรก เข้า it-- ฉีดเข้าไปในนั้น 1644 01:22:45,600 --> 01:22:49,520 ถ้าคุณ will-- ทั้งกลุ่มของเนื้อหา ที่เกิดขึ้นจะมาจากเว็บ 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 ว่าตัวอย่างนี้คือ เพื่อให้ API ของ Google 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 ระดับการซูมเป็นค่าระหว่างฉันทำไม่ได้ รู้หนึ่งใน 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 คือสิ่งที่ดาวน์โหลดไป เบราว์เซอร์ของ API ที่เกิดขึ้นจริงของ Google 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 และมันจะนำคุณไปสู่​​แท็บใหม่ 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 >> จึงขออภัยข้อผิดพลาด ข้อความที่ไม่ enlightening 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 แต่ผมเจอ ก่อนหน้านี้ดังนั้นฉันแล้ว 1679 01:24:29,445 --> 01:24:30,820 คิดออกว่าการแก้ปัญหาคือ 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 หรือมากกว่าของเรา 1689 01:24:57,190 --> 01:24:59,470 เริ่มต้นใช้คีย์เดียวกัน แต่เรามาดูสิ่งที่เกิดขึ้น 1690 01:24:59,470 --> 01:25:03,030 ดังนั้นถ้าคุณไปลงในวันนี้ สไลด์ภาพนิ่งหนึ่งต่อมามี 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 เพราะมันให้ความรู้สึกที่เต็มไป กับความผิดพลาดที่อาจเกิดขึ้น 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 ทุนตะโกนที่คุณ 1700 01:25:32,200 --> 01:25:34,810 บันทึกหน้าเว็บของคุณกลับไป ไปที่อื่น ๆ แท็บโหลด 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 >> DAVID ลัน: ออสเตรเลีย 1704 01:25:38,748 --> 01:25:41,200 ดังนั้นเห็นได้ชัดว่าผู้ที่มี พิกัดจีพีเอสของออสเตรเลีย 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 นี้ ขึ้นหรือวิกิพีเดียสามารถบอกคุณได้ 1709 01:25:51,436 --> 01:25:54,410 แต่เลือกที่แตกต่างกันสองค่า สำหรับละติจูดและลองจิจูด 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 >> และเมื่อคุณทำกับ ที่ติดตาม challenge-- 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 เปลี่ยนแผนที่เพื่อจะไม่ได้นี้ เริ่มต้นการ์ตูน แต่แผนที่ดาวเทียม 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 แต่คุณสามารถ do-- เช่นให้ฉัน ไปที่สิ่งที่เราทำเพื่อการเรียนการสอน 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 ดังนั้นถ้าฉันต้องการค้นหา, เช่นแมตทิวส์ฮอลล์ 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 และถ้าคุณคลิกที่แมตทิวส์ ฮอลล์ได้ทันที 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 >> แต่ถึงแม้จะเล็ก ๆ น้อย ๆ นี้ ป๊อปอัพที่เราไม่ได้ใช้ 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 และถ้าฉันคลิกตัวอย่าง ที่นี่และนี่คือสิ่งที่สนุก 1741 01:27:37,190 --> 01:27:40,530 คุณสามารถทำสิ่งเช่นนี้ คลิกที่เครื่องหมายและจากนั้น voila, 1742 01:27:40,530 --> 01:27:42,400 ข้อมูลจะปรากฏขึ้น 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 แต่เราได้มีรอยขีดข่วนชนิดของพื้นผิว 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 ดังนั้นเราจึงได้เลือกชนิดของและการเลือกสรร จากบรรดาทั้งหมดคุณสมบัติต่างๆเหล่านี้ 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 ที่จะได้รับสิ่งที่ออกจากหน้าอกของคุณ เพื่อที่คุณจะเดินออกไปจากที่นี่ 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 >> DAVID ลัน: โอ้ความดีของเรา 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 >> ผู้ชม: [ไม่ได้ยิน] 1767 01:28:37,055 --> 01:28:44,130 1768 01:28:44,130 --> 01:28:46,810 >> DAVID ลัน: คุณ can-- ใน Internet Explorer, ส่วนที่เหลืออยู่ในความสงบ 1769 01:28:46,810 --> 01:28:49,310 คุณใช้เพื่อให้สามารถที่จะนำ VB สคริปต์สคริปต์พื้นฐานเสมือน 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 ผมขอผ่านออกเหล่านี้และถ้าคุณ มีข้อสงสัยใด ๆ ในขณะเดียวกัน 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 ผู้ชม: [ไม่ได้ยิน] 1786 01:29:18,754 --> 01:29:26,737 1787 01:29:26,737 --> 01:29:28,570 DAVID ลัน: นั่น มักจะเป็นความจริงวันนี้ 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 สำหรับการเข้าสู่ระบบ 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 >> และอีกครั้งที่ราคาที่คุณจ่ายเป็น ทั้งทางการเงินหรือการหยุดทำงาน 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