1 00:00:00,000 --> 00:00:02,620 [Powered by Google Translate] [שבוע 7, המשך] 2 00:00:02,620 --> 00:00:05,090 [דוד י מלאן, אוניברסיטת הרווארד] 3 00:00:05,090 --> 00:00:07,780 [זה CS50.] [CS50.TV] 4 00:00:07,780 --> 00:00:09,810 בסדר. ברוך שובך. זה CS50, 5 00:00:09,810 --> 00:00:12,100 וזה סוף השבוע 7. 6 00:00:12,100 --> 00:00:15,460 אז אחת מהדברים הקטנים והטיפשים האלה שמסתובב באינטרנט 7 00:00:15,460 --> 00:00:24,080 ואנחנו גמענו, ואת זה צריך עכשיו לעשות קצת תחושת חנונית אליך. 8 00:00:24,080 --> 00:00:28,330 ובכן, זה היה מצחיק לבחור הזה מזה שהיה לכם. 9 00:00:28,330 --> 00:00:32,619 אם כבר מדבר על, נו, חבר 'ה, 10 00:00:32,619 --> 00:00:42,550 היום הוא יום הולדתו של נייט. 11 00:00:42,550 --> 00:00:46,630 כדי לתת לך תחושה של נייט רק כמה טוב ואני נמצא 12 00:00:46,630 --> 00:00:50,140 בפיתוח אינטרנט המבוסס על מעמדו של יום שני ומתבסס כעת על זה, 13 00:00:50,140 --> 00:00:53,170 חשבתי שאני רוצה למשוך את דף הבית של נייט, אם לא ראית אותו. 14 00:00:53,170 --> 00:00:57,020 זה כאן-HTML של ia נייט. 15 00:00:57,020 --> 00:00:59,380 אז רואה sourcecode אם אתה רוצה לראות איך לעשות את זה, ונייט, 16 00:00:59,380 --> 00:01:02,250 אם תוכל embarass זמן קצר בלבד, צוות קבל אותך משהו קטן 17 00:01:02,250 --> 00:01:06,080 אם אתה רוצה לחלוק קינוח עם חלק מהילדים בכיתה כאן. 18 00:01:06,080 --> 00:01:10,150 אם אתה רוצה לבוא אליו למטה. 19 00:01:10,150 --> 00:01:14,350 כולכם מריעים והם מאוד נחמדים, אבל אף אחד לא יושבים בקרבת מקום נייט, 20 00:01:14,350 --> 00:01:17,560 מסיבה כלשהי, שבאזור הגב. 21 00:01:17,560 --> 00:01:24,020 אז אולי אתה יכול למצוא כמה אנשים כדי ליהנות אלה עם. 22 00:01:24,020 --> 00:01:33,380 יום הולדת שמח, נייט. 23 00:01:33,380 --> 00:01:37,660 >> דברי ברכה נוספים: הראנו כמה קטעים מתלמידי CS50x. 24 00:01:37,660 --> 00:01:39,710 אם אתה רוצה לראות מי עוד זה בעולם 25 00:01:39,710 --> 00:01:41,850 זה לאחר יחד, אתם יכולים לגשת לכתובת אתר זו, 26 00:01:41,850 --> 00:01:45,780 שם יוסף, אחד מTFS שלנו, יש להרכיב מונטאז' של מינים 27 00:01:45,780 --> 00:01:50,290 לכל מי שכבר הגישו את סרטי הווידאו האלה, ביניהם ריק אסטלי. 28 00:01:50,290 --> 00:01:53,010 ואם אתה לגלול דרך כל אלה, זה באמת די מעורר השראה 29 00:01:53,010 --> 00:01:56,890 כדי לראות את המגוון של מדינות וערים שממנו יוצאי אנשים. 30 00:01:56,890 --> 00:02:00,830 אז אם אתה רוצה להעיף מבט על זה, שיהיה עד עד הסוף הסמסטר. 31 00:02:00,830 --> 00:02:05,370 כיום אנו ממשיכים המבט שלנו באינטרנט, תכנות אינטרנט, HTML וכדומה, 32 00:02:05,370 --> 00:02:08,280 ויש לנו גם ארוחת הצהריים המגיעים ביום שישי הקרוב 33 00:02:08,280 --> 00:02:11,360 אם אתה רוצה, ובמיוחד, לא עשית זאת בעבר. 34 00:02:11,360 --> 00:02:13,630 הנושא זה של יום שישי יהיה יום הולדתו של נייט, 35 00:02:13,630 --> 00:02:15,700 כך שאם אתה רוצה לאכול ארוחת צהריים לכבוד יום הולדת עם נייט 36 00:02:15,700 --> 00:02:17,500 ואחרים, שחלק מחברינו מתעשייה, 37 00:02:17,500 --> 00:02:19,300 אנא אל ראש כך שכתובת אתר לשם. 38 00:02:19,300 --> 00:02:22,510 שטח, כמו תמיד, הוא מוגבל. כמו כן, אם שכחת, 39 00:02:22,510 --> 00:02:26,460 מבין שבשבוע הבא הוא המועד האחרון לבעיה המוגדרת של 4 ציד נבלות, 40 00:02:26,460 --> 00:02:30,070 לפי לאחר שחלים כל JPEGs האלה מcard.raw, 41 00:02:30,070 --> 00:02:32,880 אתה והחברים שלך הסעיף, אם תרצה, תוכל לנסות לצלם 42 00:02:32,880 --> 00:02:36,100 כרבים ממדעני המחשב שמכרטיס הזיכרון שאפשר, 43 00:02:36,100 --> 00:02:39,070 ואתה והקטע שלך אז יהיה לזכות בפרס מדהים. 44 00:02:39,070 --> 00:02:44,470 לחזור ולעיין במפרט של pset 4 על מה להגיש ומתי. 45 00:02:44,470 --> 00:02:47,650 כמו כן, אם אתה רוצה שתהיה לי מעשה ידיך הונצח 46 00:02:47,650 --> 00:02:51,400 באתר האינטרנט של הקורס ואת ההיסטוריה שלה של הלבשה, 47 00:02:51,400 --> 00:02:54,010 יודע שאתה מוזמן עכשיו להתחיל הגשת עיצובים 48 00:02:54,010 --> 00:02:57,180 לחולצות של השנה והסוודרים וכדומה. 49 00:02:57,180 --> 00:02:59,200 נעשינו כמיטב יכולתנו כדי לכלול כמה שאנחנו יכולים, 50 00:02:59,200 --> 00:03:01,440 אבל יהיה לנו חלק מחברי צוות הביקורת את כל העיצובים 51 00:03:01,440 --> 00:03:04,180 כדי לוודא שהם עולים בקנה אחד עם המפרטים, 52 00:03:04,180 --> 00:03:07,500 ולאחר מכן לבחור בדרך קומץ מהם להיות מוצג. 53 00:03:07,500 --> 00:03:10,620 אז אם אתה הסוג של העיצוב, פשוט יודע שהדרישות 54 00:03:10,620 --> 00:03:14,030 לגרפיקה PNG, לפחות 200 DPI, 55 00:03:14,030 --> 00:03:16,520 הם לא צריכים להיות יותר מ 4000 4000 פיקסלים, 56 00:03:16,520 --> 00:03:19,010 ולא יותר מ 10 מגה בייט, אבל אתה מוזמן להשתמש בדברים כמו 57 00:03:19,010 --> 00:03:22,430 פוטושופ או GIMP או תוכניות שונות של הגרפיקה, 58 00:03:22,430 --> 00:03:24,590 כל מה שיש לך לרשותך. 59 00:03:24,590 --> 00:03:28,280 >> גם באופק הוא פרויקט הגמר. פרויקט הגמר הוא באמת השיא של 50, 60 00:03:28,280 --> 00:03:30,560 לפי כל המטלות בקורס, 61 00:03:30,560 --> 00:03:33,170 זה ההזדמנות שלך באמת לעשות את הדבר שלך. 62 00:03:33,170 --> 00:03:35,280 וזה יכול להיות פשוט לעשות משהו בשביל כיף, 63 00:03:35,280 --> 00:03:38,160 זה יכול להיות כדי לפתור חלק הבעיה דוחקת קבוצת התלמיד שלך, 64 00:03:38,160 --> 00:03:40,980 עבור חלק האתר חדש, מנגנון כלשהו אוסף חדש לנתונים. 65 00:03:40,980 --> 00:03:43,420 זה יכול להיות יישומים ניידים עבור אנדרואיד, לiOS. 66 00:03:43,420 --> 00:03:46,030 באמת, השמים הוא הגבול, ובמהלך השבועות הקרובים, 67 00:03:46,030 --> 00:03:50,900 כפי שאנו מעבר מ C לשפות ברמה גבוהה יותר אלה כמו PHP ו-JavaScript, 68 00:03:50,900 --> 00:03:55,150 אתה תמצא את עצמך יותר ויותר להכיר עם כמה טכניקות בעולם אמיתי, 69 00:03:55,150 --> 00:03:57,800 כמה כלים בעולם אמיתי, וכדי להשלים את זה, 70 00:03:57,800 --> 00:04:00,170 יודע שכמובן יש לו היסטוריה של סמינרים, 71 00:04:00,170 --> 00:04:02,880 לפי במהלך שבועות הקרובים, חלק מסגל ההוראה 72 00:04:02,880 --> 00:04:06,160 וחברים שלנו מקמפוס יציעו סמינרים אופציונליים 73 00:04:06,160 --> 00:04:08,540 שמעל ומעבר למה שנעשה בדרך כלל בסעיף 74 00:04:08,540 --> 00:04:11,090 כדי להכיר לך את הדברים כמו תכנות אנדרואיד, 75 00:04:11,090 --> 00:04:13,450 כדי להכיר לך את הדברים כמו iOS תכנות 76 00:04:13,450 --> 00:04:15,950 או טכניקות מתקדמות יותר אינטרנט פיתוח. 77 00:04:15,950 --> 00:04:17,970 יש כל ההיסטוריה שלהם כבר נמצאים באינטרנט. 78 00:04:17,970 --> 00:04:25,000 אם אתה הולך לcs50.net/seminars, אנחנו כבר עושים את זה במשך כמה וכמה שנים, 79 00:04:25,000 --> 00:04:28,740 ותראה שארכיון כאן עם קבצי PDF וקטעי וידאו וכמו 80 00:04:28,740 --> 00:04:33,090 כמה עשרות קטעי וידאו של סמינרים. 81 00:04:33,090 --> 00:04:37,380 בשנה שעברה, למשל, היה לנו סמינר על acing הראיונות הטכניים שלך, 82 00:04:37,380 --> 00:04:40,980 אם אתה באמת מחפש ללכת ולעשות התמחות או חלטורה במשרה מלאה. 83 00:04:40,980 --> 00:04:43,450 נייד פיתוח של Windows, אנדרואיד פיתוח, Google Maps, 84 00:04:43,450 --> 00:04:47,700 API, CSS, פיתוח עבור בלקברי, Emacs. 85 00:04:47,700 --> 00:04:52,610 באמת, אתה מוזמן להעיף מבט בכל סמינרים אלה בנוחות שלך. 86 00:04:52,610 --> 00:04:57,080 ואנחנו נהיה מחזיקים כמה חדשים בסמסטר הזה, גם כן. 87 00:04:57,080 --> 00:04:59,020 >> אז מה היא קדימה עם פרויקט הגמר? 88 00:04:59,020 --> 00:05:01,090 ובכן, ראשית, למרות שמועד זה הוא קצת קרוב, 89 00:05:01,090 --> 00:05:06,460 זה באמת רק הזדמנות להתחיל לחשוב על פרויקט גמר די מציאותי. 90 00:05:06,460 --> 00:05:10,550 אנחנו יודעים רק את ההתחלה של חלק ממה שאנחנו עדיין נהיה כיסוי בקורס, 91 00:05:10,550 --> 00:05:13,470 HTML, PHP והכד ', אבל אתה מכיר עם האינטרנט, 92 00:05:13,470 --> 00:05:16,270 ואני הטית השיחה הזאת לכיוון האינטרנט רק בגלל 93 00:05:16,270 --> 00:05:18,380 רוב האנשים עושים בסופו של פרויקט גמר מבוסס אינטרנט, 94 00:05:18,380 --> 00:05:20,260 אבל זה בהחלט לא הכרחי. 95 00:05:20,260 --> 00:05:22,260 שימוש C הוא בסדר, האובייקטיבי C, Java, 96 00:05:22,260 --> 00:05:25,350 כל שפה אחרת שאולי יודע או רוצה לדעת היא די בסדר. 97 00:05:25,350 --> 00:05:29,370 אבל כדי לקבל את המיצים הזורמים בתחילה, אנו מצפים להגשת preproposal 98 00:05:29,370 --> 00:05:33,520 אשר, לקובץ PDF באתר, שנמצא כעת בcs50.net, 99 00:05:33,520 --> 00:05:36,080 ובפינה השמאלית העליונה תראה פרויקט גמר 100 00:05:36,080 --> 00:05:38,920 הוא מפרט פרויקט הגמר, 101 00:05:38,920 --> 00:05:41,470 ויש פרטים על preproposal וכדומה. 102 00:05:41,470 --> 00:05:44,760 זה די הרבה מסתכם דוא"ל לעמית ההוראה שלך 103 00:05:44,760 --> 00:05:48,450 רק כדי לפתוח בשיחה עימו או לה על מה שאתה חושב. 104 00:05:48,450 --> 00:05:52,510 על projects.cs50.net הוא מאגר של רעיונות מאנשים בקמפוס 105 00:05:52,510 --> 00:05:54,480 אם אתה נאבק כדי לבוא עם רעיון מסוים, 106 00:05:54,480 --> 00:06:01,140 וmanual.cs50.net/APIs הוא מאגר הקישורים לממשקי API. 107 00:06:01,140 --> 00:06:06,710 >> מה, אם כי, הוא API? 108 00:06:06,710 --> 00:06:09,790 מה API? אני כבר אמרתי את זה לפחות פעמים, 109 00:06:09,790 --> 00:06:12,640 לפי פרוטוקול של השבועות האחרונים. 110 00:06:12,640 --> 00:06:17,050 מה זה? [סטודנטים, לא מובנים] 111 00:06:17,050 --> 00:06:19,340 >> אוקיי, טוב. אז ממשק תכנות משהו. 112 00:06:19,340 --> 00:06:22,710 ממשק תכנות יישומים, וזה יכול לקחת כמה צורות, 113 00:06:22,710 --> 00:06:25,850 אבל מה זה באמת מסתכם הוא עד קוד 114 00:06:25,850 --> 00:06:29,660 שמישהו אחר כתב או hs נתונים שמישהו אחר שנאסף 115 00:06:29,660 --> 00:06:33,670 כי הוא נעשה זמין לך בדרך כלשהי תוכניתית. 116 00:06:33,670 --> 00:06:36,630 אתה יכול לכתוב קוד ב-C, PHP, Python, Ruby, 117 00:06:36,630 --> 00:06:38,760 מה השפה של בחירה שלך בדרך כלל היא, 118 00:06:38,760 --> 00:06:42,240 ואתה איכשהו יכול לבנות על הפונקציונליות של מישהו אחר 119 00:06:42,240 --> 00:06:44,440 או של מישהו אחר ערכת נתונים. 120 00:06:44,440 --> 00:06:47,210 לדוגמה, אם אני הולך לקישור הזה כאן, 121 00:06:47,210 --> 00:06:50,750 ותראה זוג הקישורים בדף הבא 122 00:06:50,750 --> 00:06:56,093 לפי שיש לנו ממשקי API של CS50 עצמו, שהם מאוד ממוקדים הרווארד, ולאחר מכן APIs של הצד השלישי. 123 00:06:56,930 --> 00:06:59,300 בין ממשקי API של הצד השלישי הם דברים באמת שימושיים 124 00:06:59,300 --> 00:07:01,780 כמו להיות מסוגל לשלוח אנשים לשל SMS, 125 00:07:01,780 --> 00:07:04,690 להיות מסוגלת לקבל הודעות SMS מאנשים. 126 00:07:04,690 --> 00:07:08,160 ודברים כאלה שאולי יש לך מושג איך ליישם את עצמך, 127 00:07:08,160 --> 00:07:10,440 אך הודות לשירותים, חלק בחינם וחלק מסחרי, 128 00:07:10,440 --> 00:07:14,000 אתה יכול לבנות על גבי אלה ולעשות משהו שמעניין אותך. 129 00:07:14,000 --> 00:07:16,990 בין ממשקי API של CS50 הם הדברים האלה קמפוס ממוקד כמו 130 00:07:16,990 --> 00:07:21,480 קורסי הרווארד, אנרגיה, מזון, אירועים, מפות, חדשות, טוויטים וShuttleboy של עצמו, 131 00:07:21,480 --> 00:07:23,940 ואלה הם ממשקי API שנראים משהו קטן כזה. 132 00:07:23,940 --> 00:07:26,990 >> תן לי להכין את ה-API HarvardFood. 133 00:07:26,990 --> 00:07:30,620 אם אי פעם בקר באתר של HUD, שכנראה הייתי שם 134 00:07:30,620 --> 00:07:35,410 רק כדי לראות מה יש לארוחת ערב או לראות מה הן השעות עבור חלק ד-האולם. 135 00:07:35,410 --> 00:07:38,000 ובכן, זה לא קל במיוחד לניווט, 136 00:07:38,000 --> 00:07:41,100 ואז מה שעשינו לפני כמה זמן היה לנו כתבתי תוכנה, 137 00:07:41,100 --> 00:07:47,270 זה קורה להיות ב-PHP, כי למעשה מסך מגרד את השלמות של אתר האינטרנט של HUD. 138 00:07:47,270 --> 00:07:51,400 להקרין משהו לגרד פירוש הדבר לכתוב תכנית בשפה כמו PHP 139 00:07:51,400 --> 00:07:55,270 המתיימר להיות דפדפן, למרות שאתה אולי להפעיל אותו בשורת פקודה, 140 00:07:55,270 --> 00:07:58,180 המתיימר להיות דפדפן, מתחבר לאתר, 141 00:07:58,180 --> 00:08:01,480 מוריד HTML שלה, השפה שבה זה כתוב, 142 00:08:01,480 --> 00:08:04,300 ואז קורא אותו, או לייתר דיוק, מנתח אותו 143 00:08:04,300 --> 00:08:06,140 מלמעלה למטה, משמאל לימין. 144 00:08:06,140 --> 00:08:08,870 ומה שעשינו זה שכתבנו את הקוד שלנו בצורה כזאת, כי 145 00:08:08,870 --> 00:08:12,910 כל פעם שראינו משהו שבHTML שנראה כמו משהו בתפריט, 146 00:08:12,910 --> 00:08:16,470 כמו המבורגר, שהיינו לאחר מכן לייבא לתוך מסד הנתונים ש. 147 00:08:16,470 --> 00:08:20,410 וכל פעם שראינו את הערך תזונתי, הייתי לייבא לתוך מסד הנתונים שלנו. 148 00:08:20,410 --> 00:08:23,090 ומה שעשינו היה למנף את העובדה כי אתר האינטרנט של HUD, 149 00:08:23,090 --> 00:08:27,280 למרות שזה יכול להיות קצת אתגר עבורנו בני האדם לניווט 150 00:08:27,280 --> 00:08:32,559 מתחת למכסת המנוע, כל HTML מופק על ידי תוכנות המחשב שלהם. 151 00:08:32,559 --> 00:08:35,159 אז כולם HTML, למרות שזה עשוי להיראות מבולגן, 152 00:08:35,159 --> 00:08:38,026 כמו רוב האתרים שמתחת למכסת המנוע זה כדלקמן דפוס. 153 00:08:38,260 --> 00:08:40,799 אז אנחנו פשוט בילינו כמה שעות להבין שדפוס 154 00:08:40,799 --> 00:08:44,240 כך שבסופו של דבר, אנחנו זורקים את כל הבלגן HTML, 155 00:08:44,240 --> 00:08:47,340 כל האסתטיקה של מול ההדגשה והטיה וכדומה, 156 00:08:47,340 --> 00:08:52,350 ומה שאנחנו אז נוכל לעשות הוא נציג אותו הנתונים. 157 00:08:52,350 --> 00:08:54,870 לדוגמה, בדרך זו. 158 00:08:54,870 --> 00:08:56,840 אז, על פי התיעוד כאן, 159 00:08:56,840 --> 00:08:59,190 הודיע ​​לעולם שאם אתה מבקש כתובה URL 160 00:08:59,190 --> 00:09:03,310 שנראה כמו זה, food.cs50.net / משהו, 161 00:09:03,310 --> 00:09:07,220 ואתה מספק פרמטרים מסוימים, שנדברנו עליו היום, 162 00:09:07,220 --> 00:09:11,780 כמו תאריך הסיום זמן תאריך ההתחלה זמן, ארוחה, וכן הלאה, 163 00:09:11,780 --> 00:09:14,090 מה השרתים שלנו יחזרו אליך, למשל, 164 00:09:14,090 --> 00:09:18,740 הוא קובץ CSV, פסיק separted ערכים כמו קובץ Excel, 165 00:09:18,740 --> 00:09:23,140 המכיל את כל מה לארוחת בוקר בתאריך מסוים זה במרץ של שנה שעברה 166 00:09:23,140 --> 00:09:25,450 כאשר יזדמנו לי לכתוב את התיעוד הזה. 167 00:09:25,450 --> 00:09:27,870 >> למי שמכיר, CSV אינו תבנית קובץ בלבד. 168 00:09:27,870 --> 00:09:30,610 יש תבנית אחרת זה כל עוד הצדדים 169 00:09:30,610 --> 00:09:32,670 נקרא JSON, סימון אובייקט JavaScript. 170 00:09:32,670 --> 00:09:34,770 הנתונים יכולים לחזור בפורמט זה. 171 00:09:34,770 --> 00:09:38,110 אז takeaway כאן הוא שאם אתה צולל לתוך API זה 172 00:09:38,110 --> 00:09:41,170 או כל אחד אחר משל CS50 או משהו שם בחוץ באינטרנט, 173 00:09:41,170 --> 00:09:45,560 או בכלל לא, להבין שהעולם החל יותר ויותר כדי לתקן 174 00:09:45,560 --> 00:09:47,670 איך מכשירי תקשורת הדדית ביניהם. 175 00:09:47,670 --> 00:09:50,660 אנו משתמשים בתבניות נתונים סטנדרטיות כמו CSV או JSON. 176 00:09:50,660 --> 00:09:54,320 ומה זה אומר לגביך הוא שאתה יכול לכתוב את החלק המעניין של תכנית 177 00:09:54,320 --> 00:09:56,580 המאפשר למשתמש שלך לחפש תפריט חדר אוכל, 178 00:09:56,580 --> 00:10:00,010 המאפשר להם ליצור רשימות של מועדפים, המאפשרות להם לקבל התראות טקסט 179 00:10:00,010 --> 00:10:02,480 כאשר הארוחה האהובה עליהם עומדת להיות מוגשים בחלק ד באולם 180 00:10:02,480 --> 00:10:07,090 באמצעות של מישהו אחר ערכות נתונים ובנייה על גבי ממשקי API שלהם. 181 00:10:07,090 --> 00:10:13,600 אז עוד על כך בצורה של סמינרים והתיעוד שיש לך כאן באינטרנט. 182 00:10:13,600 --> 00:10:16,450 אז מי, אם כן, ממשקי API. 183 00:10:16,450 --> 00:10:18,900 >> זה מחזיר אותנו ל-HTML. סיכום מהיר. 184 00:10:18,900 --> 00:10:22,920 מה זה HTML? 185 00:10:22,920 --> 00:10:25,000 [סטודנטים, לא מובן] טובים. >> שפת HyperText Markup. 186 00:10:25,000 --> 00:10:31,300 מישהו אחר, מה היא שפת סימון היפר? 187 00:10:31,300 --> 00:10:37,340 שפת HyperText Markup. 188 00:10:37,340 --> 00:10:40,330 אוקיי. אז HTML, HyperText. 189 00:10:40,330 --> 00:10:43,100 HyperText פשוט מתייחס לאינטרנט, על פי רוב. 190 00:10:43,100 --> 00:10:45,730 סימון אומר שזה לא ממש שפת תכנות, HTML. 191 00:10:45,730 --> 00:10:48,120 זה לא שפה שאתה יכול להביע את ההיגיון פנימה 192 00:10:48,120 --> 00:10:50,710 זה לא חייב לולאות. זה לא חייב תנאים. 193 00:10:50,710 --> 00:10:52,820 זה לא חייב פונקציות, כשלעצמה. 194 00:10:52,820 --> 00:10:56,680 במקום זאת, יש דברים שנקראים תגים, או לייתר דיוק, אלמנטים. 195 00:10:56,680 --> 00:10:59,970 והאלמנטים האלה יש תגי התחלה ותגי קצה, 196 00:10:59,970 --> 00:11:04,300 או תגים פתוחים ותגים סגורים, ומה שהתגים האלה בדרך כלל מתכוונים לדפדפן הוא, 197 00:11:04,300 --> 00:11:09,270 להתחיל לעשות משהו ואז תפסיק לעשות משהו, למרות שיש יוצאים מן הכלל לכך. 198 00:11:09,270 --> 00:11:12,480 לפעמים זה פשוט "לשים מעבר שורה כאן ', למשל. 199 00:11:12,480 --> 00:11:15,150 וראינו דוגמאות של שהיום השני, בין הפונה נועזת, 200 00:11:15,150 --> 00:11:17,430 מעברי שורה, ואחריו זוג של תגים אחרים. 201 00:11:17,430 --> 00:11:19,880 אז HTML הוא השפה שבה כתובים דפי אינטרנט. 202 00:11:19,880 --> 00:11:23,760 אז אם אני הולך למשהו כמו Google.com 203 00:11:23,760 --> 00:11:26,180 ולמשוך רק דף הבית שלהם, 204 00:11:26,180 --> 00:11:29,690 זוכר שאם אתה לוחץ לחיצה ימני או לשלוט לחץ 205 00:11:29,690 --> 00:11:32,140 ולהסתכל על מקור דף תצוגה, בדרך כלל 206 00:11:32,140 --> 00:11:34,420 זה בלגן שלם בימים אלה מתחת למכסת המנוע, אבל זה בגלל 207 00:11:34,420 --> 00:11:38,170 מחשבים לא אכפת חלל לבן, ולכן זה לא צריך להיראות יפה. 208 00:11:38,170 --> 00:11:40,240 אבל אם להתמקד על חלקים ממנה, 209 00:11:40,240 --> 00:11:43,460 שם לב שהכרום, רק כדי להיות נחמד, יש צבע מקודד דברים. 210 00:11:43,460 --> 00:11:48,460 אכן, מדובר בתג הראשון שראינו בדף אינטרנט. 211 00:11:48,460 --> 00:11:51,750 ושוב, HTML 5, הגרסה האחרונה של שפה זו, 212 00:11:51,750 --> 00:11:53,830 אין לי הדבר הזה בהתחלה, 213 00:11:53,830 --> 00:11:57,820 00:12:03,580 אבל זה רק סוג של תקן שאומר, היי עולם, כאן מגיע קובץ HTML בגרסה 5. 215 00:12:03,580 --> 00:12:08,920 >> החלק המעניין מתחיל כאן. אז 00:12:11,640 אלמנטי HTML בפעם אחרונה. 217 00:12:11,640 --> 00:12:14,630 מה היו שני הילדים האלה עיקריים? 218 00:12:14,630 --> 00:12:17,170 ראש וגוף, בדיוק כמו הבחור עם הקעקוע לפני רגע. 219 00:12:17,170 --> 00:12:19,640 יש כאן שני חלקים של דף אינטרנט, בראש והגוף, 220 00:12:19,640 --> 00:12:23,750 וזכירה, אם כן, שאולי דף האינטרנט הפשוט ביותר שאנחנו יכולים לעשות נראות כך. 221 00:12:23,750 --> 00:12:27,460 ואני כבר מסוכסך זה רק כדי להיות סוג של נקי ומסודר עם הקוד שלי, 222 00:12:27,460 --> 00:12:30,710 אבל מה שבאמת חשוב כאן היא שיש כמה היררכיה לזה. 223 00:12:30,710 --> 00:12:35,420 וכל תג שאני כבר פתחתי לי סגור ושיש לכן סימטריה זו 224 00:12:35,420 --> 00:12:38,300 לכל הסימון שיצרתי. 225 00:12:38,300 --> 00:12:41,620 אז בפעם האחרונה שהתחלנו בכתיבת דפי אינטרנט במחשב הנייד שלי. 226 00:12:41,620 --> 00:12:45,470 פתחתי את עריכת טקסט, ששמרתי את הקובץ כhello.html, 227 00:12:45,470 --> 00:12:50,190 אז גררתי את הקובץ לדפדפן שלי, וזהו, היו לי דף באינטרנט. 228 00:12:50,190 --> 00:12:53,110 עכשיו, זה לא לגמרי במקרה, היה לי דף בכונן הקשיח שלי, 229 00:12:53,110 --> 00:12:58,260 ואני היה ממש האדם היחיד בעולם שהיה רואה אותו דף האינטרנט בדפדפן. 230 00:12:58,260 --> 00:13:00,670 >> אז היום, אנחנו מציגים את שרת אינטרנט בפועל 231 00:13:00,670 --> 00:13:02,750 והרעיון של ממש משרת תוכן באינטרנט 232 00:13:02,750 --> 00:13:04,970 ואיך כל זה מתחיל להתחבר לי. 233 00:13:04,970 --> 00:13:08,350 אז מתברר שכל הזמן הזה במכשיר CS50 234 00:13:08,350 --> 00:13:11,590 יש לך שרת אינטרנט במחשב שלך. 235 00:13:11,590 --> 00:13:16,560 יש לנו, בהגינות, השתמשתי בו רק לgedit, לקלאנג, לGDB וכדומה, 236 00:13:16,560 --> 00:13:21,000 אבל גם מותקן על ידינו עבורך במכשיר הוא שרת אינטרנט, 237 00:13:21,000 --> 00:13:23,940 וששרת האינטרנט קורה להיות חופשי, קוד פתוח, 238 00:13:23,940 --> 00:13:26,580 אחד מאלה הפופולריים ביותר בעולם, בשם אפצ'י. 239 00:13:26,580 --> 00:13:31,340 השם שלו הוא יותר הטכני httpd, ד להיות לדמון כאן, 240 00:13:31,340 --> 00:13:34,110 שמילה טכנית לשרת. 241 00:13:34,110 --> 00:13:38,690 אז התקין במכשיר CS50 הוא שרת אינטרנט, ומה זה אומר? 242 00:13:38,690 --> 00:13:43,740 ובכן, שרת אינטרנט, מושגית, חלק השרת באינטרנט שמשרת את התוכן באינטרנט. 243 00:13:43,740 --> 00:13:48,630 כשנשאל לקובץ, הוא יורק את ה-HTML שמלחין קובץ זה, וזהו. 244 00:13:48,630 --> 00:13:51,370 אתה רואה את דף הבית של אתר מסוים. 245 00:13:51,370 --> 00:13:54,970 אבל שרת הוא, לייתר דיוק, חלק מתוכנה. 246 00:13:54,970 --> 00:13:59,190 זה לא חייב להיות במחשב פיזי, זה פשוט צריך להיות חתיכת ריצת תוכנה. 247 00:13:59,190 --> 00:14:01,980 אז מכשיר CS50, כמובן, הוא חלק מתוכנה 248 00:14:01,980 --> 00:14:04,270 למרות שזה סוג של מתחזה למכונה. 249 00:14:04,270 --> 00:14:06,960 זה מתיימר להיות בתוך מחשב של מחשב, 250 00:14:06,960 --> 00:14:11,140 אבל זה רק אומר שהמכשיר בהחלט יכול להריץ דברים כמו שרתי אינטרנט. 251 00:14:11,140 --> 00:14:13,260 זה באמת יכול להריץ שרתי דואר. 252 00:14:13,260 --> 00:14:16,440 אנו יכולים להריץ את שרת מסרים מיידי במכשיר אם רצינו, 253 00:14:16,440 --> 00:14:20,780 ואכן, אנו מפעילים סוג אחד אחר של שרת, הידוע בשרת מסד נתונים, MySQL. 254 00:14:20,780 --> 00:14:22,620 אבל גם על זה בשבוע הבא. 255 00:14:22,620 --> 00:14:26,400 זה אומר שאני באמת יכול לבקר בדפי אינטרנט 256 00:14:26,400 --> 00:14:30,480 הפנימי של המכשיר שלי באמצעות דפדפן בתוך המכשיר 257 00:14:30,480 --> 00:14:33,600 או אפילו במחשב הנייד שלי, שלי או Mac המחשב שלי. 258 00:14:33,600 --> 00:14:37,780 אז מה זה אומר? מתברר כי בכל פעם שאתה מפעיל מחשב לינוקס, 259 00:14:37,780 --> 00:14:40,910 הכינוי שלה הוא "מארח מקומי." 260 00:14:40,910 --> 00:14:43,370 זה לא חייב שם הדומיין כי אנחנו לא קנינו שם תחום 261 00:14:43,370 --> 00:14:46,590 למשהו כמו המכשיר, כך ששם ברירת המחדל שלו היא המארח מקומי. 262 00:14:46,590 --> 00:14:50,470 >> אבל כדי לקבל את המכשיר, כדי להתחיל להציג את דפי אינטרנט, 263 00:14:50,470 --> 00:14:52,270 אנחנו צריכים ליצור אותם ראשונים. 264 00:14:52,270 --> 00:14:55,200 אז בואו נעשה את זה. בואו ילכו לחלון מסופי כאן 265 00:14:55,200 --> 00:14:58,190 ושים לב שאני בג'ון הרווארד הפקודה הטיפוסית שלי. 266 00:14:58,190 --> 00:15:01,670 תן לי ללכת קדימה והקלד ls, ואנו רואים כמה דברים מוכרים מהסמסטר הזה, 267 00:15:01,670 --> 00:15:04,580 שולחן עבודה, הורדות, Dropbox וכן הלאה, 268 00:15:04,580 --> 00:15:07,540 אבל עכשיו אנחנו מתחילים מפנים את תשומת לבנו לזוג. 269 00:15:07,540 --> 00:15:11,530 על שרתי האינטרנט Linux רבים יש תיקייה שנקראת html הציבור, 270 00:15:11,530 --> 00:15:15,630 אבל אנחנו הולכים לדלג כי אחד לעת עתה ולהתמקד ב, vhosts זה. 271 00:15:15,630 --> 00:15:18,850 מישהו יודע מה הוא vhost? 272 00:15:18,850 --> 00:15:21,110 רק ז'רגון מטופש למארח וירטואלי, 273 00:15:21,110 --> 00:15:23,850 ומה זה אומר הוא שעל שרת טיפוסי 274 00:15:23,850 --> 00:15:26,810 אתה בעצם יכול לארח מספר אתרי אינטרנט. 275 00:15:26,810 --> 00:15:31,500 אתה יכול לקנות שם דומיין כמו foo.com, ואתה יכול לארח אותו בשרת. 276 00:15:31,500 --> 00:15:36,100 אבל אתה יכול גם לקנות bar.com ולארח אותו באותו השרת. 277 00:15:36,100 --> 00:15:40,250 הסיבה לכך, דפדפנים הן חכמים מספיק כדי ליידע את השרת 278 00:15:40,250 --> 00:15:45,880 כאשר משתמש מבקש דף אינטרנט כלשהו, ​​מה שם הדומיין המשתמש רוצה דף הבית ל. 279 00:15:45,880 --> 00:15:48,760 אז מה שיפה זה שאתה לא צריך שרת פיזי אחד 280 00:15:48,760 --> 00:15:52,040 או CS50 מכשיר אחד לכל אתר אינטרנט, ייתכן שתרצה ליצור. 281 00:15:52,040 --> 00:15:55,520 אתה יכול להשתמש באותו השרת ולפתח מאה אתרים שונים. 282 00:15:55,520 --> 00:15:58,770 ואכן, אם אתה אדם מנסה להקים אתר אינטרנט, 283 00:15:58,770 --> 00:16:02,100 בין אם להנאה או לעסקים, בדרך כלל אתה יוצא באינטרנט, 284 00:16:02,100 --> 00:16:04,650 ואתה תשלם 10 דולרים מישהו חודש, מאה דולרים בחודש 285 00:16:04,650 --> 00:16:06,670 כדי לארח את אתר האינטרנט שלך עבורך. 286 00:16:06,670 --> 00:16:11,060 ואופן שבו עובד הוא שהם לחייב אנשים אחרים 287 00:16:11,060 --> 00:16:13,160 10 דולרים לחודש או 100 דולרים בחודש 288 00:16:13,160 --> 00:16:17,200 לארח אתרי האינטרנט של אנשים אחרים על אותו השרת שלהם. 289 00:16:17,200 --> 00:16:20,740 הסיבה שהם יכולים לעשות את זה בגלל תכונה זו נקראת bhosts, 290 00:16:20,740 --> 00:16:23,790 אבל עוד על זה כשזה מגיע זמן לעבודות גמר. 291 00:16:23,790 --> 00:16:28,360 >> לעת עתה, בואו פשוט לצלול שם. אז vhosts cd, ואם אני מקליד ls עכשיו, 292 00:16:28,360 --> 00:16:31,370 שם לב שיש תיקייה בשם 'מארח מקומי. 293 00:16:31,370 --> 00:16:33,440 הסיבה לכך, כברירת מחדל, נתוני המכשיר 294 00:16:33,440 --> 00:16:36,160 אתה אי פעם הולך לרוץ אתר אחד על מכשיר. 295 00:16:36,160 --> 00:16:38,970 זה לא באמת העולם האמיתי, זה לא שרת אינטרנט בעולם האמיתי. 296 00:16:38,970 --> 00:16:41,690 אז תן לי ללכת למארח מקומי, ועכשיו אנחנו נראה שם 297 00:16:41,690 --> 00:16:44,290 המדריך האחרון שנקרא ה-HTML. 298 00:16:44,290 --> 00:16:47,080 אז זה קצת עמוק, ההיררכיה, אבל אם וכאשר 299 00:16:47,080 --> 00:16:51,230 אתה מחליט להתחיל בפיתוח אתרים מרובים בחודשים או השנים הקרובים n, 300 00:16:51,230 --> 00:16:54,370 סוג זה של מבנה תיקיות נוטה להיות מועיל. 301 00:16:54,370 --> 00:16:56,560 עכשיו בואו נלך לHTML כרק עשיתי, 302 00:16:56,560 --> 00:16:59,010 ls סוג, ואין לי כלום. 303 00:16:59,010 --> 00:17:01,390 אז עכשיו בואו נלך ותעשה את זה. בואו תפתחו לי כרום 304 00:17:01,390 --> 00:17:07,300 פנימי של המכשיר, ותנו לי ללכת לhttp://localhost. 305 00:17:07,300 --> 00:17:14,440 אז ממש שם למכשיר שלי, להיכנס, ואני מקבל את המדד /. 306 00:17:14,440 --> 00:17:18,290 זה באמת לא מראה לי משהו מעניין, 307 00:17:18,290 --> 00:17:23,400 אבל מתברר כי מה שאנחנו רואים הוא שתיקייה, HTML. 308 00:17:23,400 --> 00:17:25,770 אין שום דבר בתוך תיקייה עכשיו, 309 00:17:25,770 --> 00:17:28,750 אז במקום זה, מה שאני הולך לעשות הוא ליצור קובץ ראשון. 310 00:17:28,750 --> 00:17:33,530 צור קובץ HTML כמו שעשינו ביום שני, אבל הפעם שם אותו בתוך המכשיר. 311 00:17:33,530 --> 00:17:36,830 לאלו מכם שמנסים לבצע יחד עם מחשבים ניידים עכשיו, 312 00:17:36,830 --> 00:17:42,040 תנו לי לעשות אחד בצד שאהיה מכוסה בpset מבוסס אינטרנט, 313 00:17:42,040 --> 00:17:44,280 אבל כדי לקבל את זה עובד בפעם הראשונה, 314 00:17:44,280 --> 00:17:49,830 אתה הולך צריך לרוץ בפקודה זו: מתחילה httpd שירות sudo. 315 00:17:49,830 --> 00:17:52,670 וזה, שוב, יחזור על עצמו בpset האחרון, 316 00:17:52,670 --> 00:17:55,460 אבל אם אתה משחק יחד בבית עכשיו, שרת האינטרנט 317 00:17:55,460 --> 00:17:58,660 כבוי במכשיר, וזה, כך שזה לא להתיש את זכרון RAM 318 00:17:58,660 --> 00:18:01,960 וזיכרון במשך 7 שבועות מתוך הסמסטר שבו אנחנו לא צריכים את זה. 319 00:18:01,960 --> 00:18:05,190 אז אתה צריך להפעיל את הפקודה הזאת פעם אחת, ותקבל פלט כזה. 320 00:18:05,190 --> 00:18:07,920 אז אתה צריך להיות מסוגל לשחק יחד כאן. 321 00:18:07,920 --> 00:18:10,330 עכשיו בואו נחזור לתיקייה זו. 322 00:18:10,330 --> 00:18:12,770 תיקייה זו ריקה, אז תן לי להתחיל ביצירת קובץ, 323 00:18:12,770 --> 00:18:16,360 gedit hello.html. 324 00:18:16,360 --> 00:18:20,930 >> בסדר. Gedit פתוח, כרגיל. תן לי לעשות doctype, html, 325 00:18:20,930 --> 00:18:25,270 html, תן לי מקדים את המאוחר ולהתחיל לסגור התגים שלי מראש. 326 00:18:25,270 --> 00:18:28,380 עכשיו יש לי בראש. תן לי ללכת קדימה ולסגור את הראש, 327 00:18:28,380 --> 00:18:32,450 תן לי עכשיו לעשות את הכותרת של הדף, שלום עולם, כמו בפעם שעברה, 328 00:18:32,450 --> 00:18:34,790 כותרת קרובה, עכשיו תן לי את גוף. 329 00:18:34,790 --> 00:18:38,130 כאן אני אגיד שלום, עולם עם כמה exclams 330 00:18:38,130 --> 00:18:40,550 כדי להבהיר שמדובר במחרוזת אחרת. 331 00:18:40,550 --> 00:18:45,800 גוף סגור, ועכשיו תן לי ללכת קדימה ולהגיש לשמור. 332 00:18:45,800 --> 00:18:48,470 תן לי לחזור לחלון המסוף שלי, ואם אני מקליד ls, 333 00:18:48,470 --> 00:18:51,830 אני צריך, כנראה, לראות hello.html. ואני עושה. 334 00:18:51,830 --> 00:18:55,070 אז עכשיו בואו נחזור לדפדפן שלי, לחץ על טענת מחדש, 335 00:18:55,070 --> 00:18:58,930 ואתה יכול לראות שהם אכן בתוך תיקיית ה-HTML. 336 00:18:58,930 --> 00:19:02,310 אני לא רואה בדף אינטרנט, עדיין, זה אפצ'י, שרת האינטרנט, 337 00:19:02,310 --> 00:19:04,670 פשוט מראה לי את תוכן הרשימה של מדריך זה. 338 00:19:04,670 --> 00:19:08,260 בדיוק כמו Mac OS או Windows הייתי עושה בדרך כלל בכונן הקשיח המקומי שלך. 339 00:19:08,260 --> 00:19:12,730 אז אם אני רוצה לראות את דף האינטרנט הזה, אני יכול ללחוץ על קישור זה קצת פה, hello.html, 340 00:19:12,730 --> 00:19:15,160 ואכן, זה מה שציפיתי לראות. 341 00:19:15,160 --> 00:19:18,080 עכשיו, שוב, זה לא כתובת אתר שכל אחד מכם יכול לבקר עכשיו, 342 00:19:18,080 --> 00:19:20,760 כי בשבילך מארח, מקומי, אם יש לך מחשב נייד כאן, 343 00:19:20,760 --> 00:19:23,050 הוא התייחס למקרה של המכשיר שלך. 344 00:19:23,050 --> 00:19:25,900 זה על המכשיר האישי שלי, 345 00:19:25,900 --> 00:19:29,080 אבל זה קצת טיפש ויהיה לי, שיהיה לי 346 00:19:29,080 --> 00:19:34,480 משתמש כמוני לחץ על hello.html באמת לראות את התוכן של דף זה. 347 00:19:34,480 --> 00:19:42,590 מתברר כי שרתי אינטרנט כמו Apache לתת לך קובץ ברירת מחדל עבור כל שרת אינטרנט. 348 00:19:42,590 --> 00:19:44,640 שים לב שיש לנו כאן hello.html. 349 00:19:44,640 --> 00:19:48,410 מה הפקודה בלינוקס לשנות את שם קובץ? 350 00:19:48,410 --> 00:19:50,870 >> MV, למהלך. אז תן לי לעשות את זה, 351 00:19:50,870 --> 00:19:55,870 ותנו לי לשנות את השם hello.html לindex.html. 352 00:19:55,870 --> 00:19:58,610 תן לי להקליד ls כדי לאשר עכשיו זה השתנה. 353 00:19:58,610 --> 00:20:03,250 עכשיו זה הולך - אם אני חוזר למארח מקומי, 354 00:20:03,250 --> 00:20:06,710 שם לב עכשיו שאני באופן אוטומטי אני רואה שדף האינטרנט. 355 00:20:06,710 --> 00:20:11,740 זה זהה לשלי / index.html בעצם עושה, 356 00:20:11,740 --> 00:20:14,740 אבל הדבר הנחמד כרגע הוא ששרת האינטרנט של חישובים, 357 00:20:14,740 --> 00:20:18,830 או, אם יש לך קובץ ש, על ידי מוסכמות אדם, נקרא index.html, 358 00:20:18,830 --> 00:20:21,200 תן לי להראות לי את המשתמש שקובץ כברירת מחדל 359 00:20:21,200 --> 00:20:25,290 במקום כמה רישום בספרייה טיפש שהוא בכלל לא ידידותי למשתמש. 360 00:20:25,290 --> 00:20:28,900 ואכן, רוב האתרים שאתה מבקר באינטרנט אין לי רשימת הקבצים ללחוץ על, 361 00:20:28,900 --> 00:20:34,040 הם פשוט להראות לך את התוכן. אז ככה שאנחנו יכולים לעשות את זה, index.html. 362 00:20:34,040 --> 00:20:37,000 אז כל זה כיף וטוב, אבל זה הוא דף אינטרנט פשוט למדי. 363 00:20:37,000 --> 00:20:41,640 תן לי ללכת קדימה, לפתוח את index.html בvhosts, 364 00:20:41,640 --> 00:20:47,620 מארחים מקומיים, ספריית ה-HTML, ובואו יוסיפו משהו מעניין יותר. 365 00:20:47,620 --> 00:20:56,120 אז יש שלום עולם, בואו במקום לומר, "זהו CS50, הרווארד של מכללה. . '. 366 00:20:56,120 --> 00:21:00,000 אז ראשית תיאור הקטלוג כמובן כלשהי שם. 367 00:21:00,000 --> 00:21:03,780 עכשיו, אם אני מחדש, אני צריך לראות את זה בדף הבית שלי. 368 00:21:03,780 --> 00:21:09,560 אוקיי, ואני רואה את זה, אבל אניח שאני רוצה עכשיו לרשימה עוד קצת תוכן בקובץ זה. 369 00:21:09,560 --> 00:21:15,160 אני יכול ללכת לכאן ואומר, אף אחד תנאים מוקדמים, 370 00:21:15,160 --> 00:21:18,740 למרות שחלק מכם בטח כמו ', חה חה חה, אין תנאים מוקדמים. " 371 00:21:18,740 --> 00:21:24,320 אבל - באופן רשמי. אז לטעון מחדש, ועכשיו יש לנו את אותו שיגיון שראינו בפעם אחרונה. 372 00:21:24,320 --> 00:21:26,240 אבל למה זה? זה היה תיקון פשוט. 373 00:21:26,240 --> 00:21:31,440 למה דף זה הוא שבור? 374 00:21:31,440 --> 00:21:34,170 [סטודנטים, לא מובן] >> כן, אנחנו פתרנו את זה קודם 375 00:21:34,170 --> 00:21:37,440 באומרו במפורש דפדפן 'לשים מעבר שורה כאן.' 376 00:21:37,440 --> 00:21:39,440 וזה כי, שוב, דפדפן רק ילכו ויעשו 377 00:21:39,440 --> 00:21:42,610 במפורש מה שפת הסימון אומרת לו לעשות, 378 00:21:42,610 --> 00:21:45,730 אז למרות שאולי פגעו להיכנס פעם או פעמים או אפילו עשר פעמים, 379 00:21:45,730 --> 00:21:49,870 זה הולך לשלב את זה לתוך כל חלל אחד, רק על ידי ועידה. 380 00:21:49,870 --> 00:21:52,770 אז אם אתה באמת רוצה מעבר שורה, אתה צריך להשתמש בתג br, 381 00:21:52,770 --> 00:21:56,840 ועכשיו להודעה, כמו יום שני, אני מניח / פנימי של תג זה, 382 00:21:56,840 --> 00:22:00,090 רק בגלל שזה פשוט לא מרגיש נכון 383 00:22:00,090 --> 00:22:02,990 כדי להתחיל מעבר שורה ועצור אותו עם שום דבר באמצע. 384 00:22:02,990 --> 00:22:07,740 >> אז הוועידה בHTML היא לפתוח ולסגור תג בו זמנית. 385 00:22:07,740 --> 00:22:11,050 במאמר מוסגר, תראה הרבה אתרים בספרים לא עושים את זה. 386 00:22:11,050 --> 00:22:14,240 זה נכון לעשות או לא לעשות את זה, אבל אנו טוענים 387 00:22:14,240 --> 00:22:17,430 שהעיצוב חכם וסגנונית, זה רק טוב יותר 388 00:22:17,430 --> 00:22:20,540 כי אז כל תג הוא גם נפתח ונסגר איכשהו. 389 00:22:20,540 --> 00:22:23,370 אז עכשיו בואו לשמור ולטעון מחדש. חזור לדפדפן, בסדר. 390 00:22:23,370 --> 00:22:26,680 עכשיו אנחנו התקדמות מסוימת, אבל זה לא מספיק. 391 00:22:26,680 --> 00:22:33,210 בואו נלך קדימה והתחל להקליד בחלק הגוף ארוך יותר של טקסט. 392 00:22:33,210 --> 00:22:40,610 אז בואו נגיד, 'שועל חום זריז קופץ מעל כלב עצלן. " 393 00:22:40,610 --> 00:22:42,700 ועכשיו תן לי רק להעתיק ולהדביק את זה כמה פעמים 394 00:22:42,700 --> 00:22:45,040 כך שיש לנו פסק מטקסט. 395 00:22:45,040 --> 00:22:47,780 תן לי לחזור לכאן. אז זה לא נראה טוב מאוד. 396 00:22:47,780 --> 00:22:50,000 יש לי מעבר שורה, אז זה בסדר, 397 00:22:50,000 --> 00:22:52,140 אבל עכשיו, ברגע שאנחנו מגיעים לנקודה שיש לו דף אינטרנט 398 00:22:52,140 --> 00:22:55,640 שיש בו הרבה תוכן וקווים לא רק בודדים להפגין HTML, 399 00:22:55,640 --> 00:22:58,570 אנחנו יכולים להתחיל לחשוב על הדברים האלה כסעיפים בפועל. 400 00:22:58,570 --> 00:23:01,590 ואנחנו יכולים להתחיל לבנות את דף האינטרנט שלנו קצת יותר נקי. 401 00:23:01,590 --> 00:23:05,120 ואכן, מה שאני יכול לעשות זה ללכת לכאן בתוך תגית הגוף שלי, 402 00:23:05,120 --> 00:23:09,400 ואתה יודע מה, אם "זה CS50. . '. באמת demarks תחילת הפיסקה, 403 00:23:09,400 --> 00:23:11,310 ובכן, בואו לתייג אותו ככזה. 404 00:23:11,310 --> 00:23:13,570 תנו לי לשנן את הטקסט, פשוט על ידי אמנה, הרשה לי לומר 405 00:23:13,570 --> 00:23:15,710 שסעיף זה מסתיים כאן, 406 00:23:15,710 --> 00:23:18,320 ואז, במקום אין מעבר השורה זו, הרשה לי לומר 407 00:23:18,320 --> 00:23:23,300 שזה שייך לשם וכפסקה חדש, 408 00:23:23,300 --> 00:23:27,610 ואני רק לשנן במהירות על ידי פשוט מחצתי את כל הדברים האלה. 409 00:23:27,610 --> 00:23:30,660 >> אז עכשיו יש לנו פסק מסוכסך שם, 410 00:23:30,660 --> 00:23:33,510 ועכשיו הסימון שלנו מתחיל לקבל יותר קטן 411 00:23:33,510 --> 00:23:37,070 סמנטי בקנה אחד עם מה שאנחנו מנסים לעשות. 412 00:23:37,070 --> 00:23:40,130 יש לנו פסק, אז בואו נקראים לזה סעיף עם תג p. 413 00:23:40,130 --> 00:23:43,370 יש לנו פסק שנייה, אז בואו נקראים לזה סעיף עם תג p. 414 00:23:43,370 --> 00:23:45,850 ועכשיו, מה שדפדפן יהיה בדרך כלל לעשות 415 00:23:45,850 --> 00:23:48,490 בדיוק כמו בספר או מאמר באנגלית, 416 00:23:48,490 --> 00:23:51,280 שם בדרך כלל שאתה רואה כמה מעברי שורה בין פסקאות. 417 00:23:51,280 --> 00:23:53,720 דפדפנים יעשו את זה בשבילך באופן אוטומטי. 418 00:23:53,720 --> 00:23:56,680 אז עכשיו יש לנו שני סעיפים, ואנחנו יכולים להמשיך בזה. 419 00:23:56,680 --> 00:23:58,770 אבל, כמובן, באינטרנט, כאשר יש לך גופים של טקסט 420 00:23:58,770 --> 00:24:01,370 בדרך כלל זה לא רק בועות ענקיות של טקסט. 421 00:24:01,370 --> 00:24:04,040 לעתים קרובות יש בקישורים שם. 422 00:24:04,040 --> 00:24:07,250 אז אם אנחנו רוצים, למשל, כוללים כמה קישורים שם, 423 00:24:07,250 --> 00:24:10,760 מניח מה עשוי להיות עניין בכל מה שדף האינטרנט אני יוצר כאן הוא - 424 00:24:10,760 --> 00:24:12,780 תנו לי ללכת לGoogle.com, 425 00:24:12,780 --> 00:24:16,540 ותנו לי לחפש שועל חום מהיר. 426 00:24:16,540 --> 00:24:22,150 עבור לגוגל תמונות, ואיך, על - זה חמוד. 427 00:24:22,150 --> 00:24:27,420 אנחנו נלך עם זה. אז הנה יש לנו קפיצות שועל חום זריזות מעל כלב עצלן. 428 00:24:27,420 --> 00:24:30,560 אז מה אני הולך לעשות כאן, רק לשם הדגמה, 429 00:24:30,560 --> 00:24:32,950 הוא מניח שהתמונה הזאת הייתה בשרת שלי, 430 00:24:32,950 --> 00:24:35,240 ואני כבר ביצירת דימויים אלה. 431 00:24:35,240 --> 00:24:38,720 מה שאני פשוט לא היה קליק ימני או לשלוט לחיצה על התמונה, 432 00:24:38,720 --> 00:24:42,370 ומה שתראה ברוב הדפדפנים הוא תפריט קטן - 433 00:24:42,370 --> 00:24:48,800 תפסיק לעשות את זה - קצת תפריט שמאפשר לך לבחור מיקום קישור עותק או URL עותק. 434 00:24:48,800 --> 00:24:52,750 אז תן לי לחזור עכשיו לHTML שלי, ותניח שאני רוצה 435 00:24:52,750 --> 00:24:56,420 ליפר לעמוד אינטרנט אחר. 436 00:24:56,420 --> 00:24:58,640 >> מה היה התג קרא לזה? 437 00:24:58,640 --> 00:25:01,650 [סטודנטים, לא מובנים] >> כן. אז href לעיון יתר. 438 00:25:01,650 --> 00:25:04,660 תן לי ללכת קדימה ומדביק פנימה 439 00:25:04,660 --> 00:25:07,290 זה כתובת אתר יפה ארוכה, אז בואו להתקרב בחזרה החוצה. 440 00:25:07,290 --> 00:25:09,950 סוגריים קרובים, אז עכשיו ישימו לב שאני בדרך לכאן 441 00:25:09,950 --> 00:25:11,960 מכיוון שכתובת אתר שבמקרה הייתה די ארוך. 442 00:25:11,960 --> 00:25:15,180 בואו לגלול אותי לכאן לסוף שועל חום מהיר, 443 00:25:15,180 --> 00:25:18,830 ואז תן לי לסגור את התג הזה עם 00:25:21,280 שם סגרתי את השם של התג היחיד. 445 00:25:21,280 --> 00:25:24,470 עכשיו תן לי ללכת קדימה ולשמור את הקובץ, לטעון מחדש את דף האינטרנט, 446 00:25:24,470 --> 00:25:27,880 ועכשיו, כברירת מחדל, כי זה הולך להיות מודגש בכחול בשבילי, 447 00:25:27,880 --> 00:25:31,980 אבל אכן, עכשיו אני יכול ללחוץ על זה וזהו. יש תמונה ש. 448 00:25:31,980 --> 00:25:33,990 וזה לא חייב להיות תמונה, זה יכול להיות קשור 449 00:25:33,990 --> 00:25:36,270 לאתר כלשהו באופן אקראי אחר באינטרנט. 450 00:25:36,270 --> 00:25:39,610 אני יכול לעשות את זה, למשל, עם CS50, כך שהדוגמא האחרונה כאן. 451 00:25:39,610 --> 00:25:42,730 "זה CS50 'אולי הגיוני ללכת, href = 452 00:25:42,730 --> 00:25:50,340 http://www.cs50.net, ציטוט קרוב, עוגן קרוב. 453 00:25:50,340 --> 00:25:53,990 אז עכשיו זה אפילו URL קצרה יותר, והפעם אנחנו לא מתכוונים לקישור לתמונה. 454 00:25:53,990 --> 00:25:57,880 במקום זאת, אתה הולך לקישור לדף אחר. 455 00:25:57,880 --> 00:25:59,840 עכשיו, יש לנו תמונה כאן. 456 00:25:59,840 --> 00:26:02,970 אני מרגיש שאנחנו יכולים לעשות קצת יותר טובים מאשר רק קישור לתמונה. 457 00:26:02,970 --> 00:26:05,760 מה אם אנחנו רוצים באמת לגלם אותו בדף האינטרנט שלנו? 458 00:26:05,760 --> 00:26:09,290 >> ובכן, מה אני יכול לעשות כאן הוא, ולא קישור לזה גרפיקה, 459 00:26:09,290 --> 00:26:14,690 תן לי במקום לחתוך את כתובת האתר, ואנחנו הולכים להיפטר שמהיפר ולנקות את זה. 460 00:26:14,690 --> 00:26:17,190 וגם תלכו לכאן ולהיפטר מזה. 461 00:26:17,190 --> 00:26:20,910 אנחנו לא באמת צריכים את כל המשפטים האלה עכשיו, אז בואו יקצרו לי את הדף קצת. 462 00:26:20,910 --> 00:26:24,530 ואז כאן תיתן לי ללכת קדימה בפסק חדשה, 463 00:26:24,530 --> 00:26:30,100 להגיד שאני לא רוצה שטקסט עכשיו, אני רוצה תמונת המקור שהוא הולך להיות שכתובת האתר. 464 00:26:30,100 --> 00:26:33,100 תמונה, כמו מעבר שורה, הוא גם שם או שזה לא. 465 00:26:33,100 --> 00:26:35,900 אז תן לי לסגור את התג שמייד. 466 00:26:35,900 --> 00:26:39,440 תן לי ללכת קדימה עכשיו ולסגור את הסעיף שאני בפנים, 467 00:26:39,440 --> 00:26:43,010 ואם הכל ילך כשורה בשלום, עולם, אם אני מחדש עכשיו, 468 00:26:43,010 --> 00:26:45,520 אני, אמנם, לראות ממש בתוך דף האינטרנט שלי תמונה. 469 00:26:45,520 --> 00:26:48,570 אז עכשיו יש לנו תג תמונה, תג עוגן וכדומה, 470 00:26:48,570 --> 00:26:51,320 ולמען סדר טוב, תנו לי לעשות עוד דבר אחד שלעתים קרובות מזניח את 471 00:26:51,320 --> 00:26:55,900 באתרי אינטרנט בימים אלה: בואו לספק קצת טקסט תיאורים לתמונה זו 472 00:26:55,900 --> 00:26:58,090 לאנשים שנמצאים במכשיר נייד 473 00:26:58,090 --> 00:27:00,640 ולכן ייתכן שלא תוכל להוריד את הדימוי הזה מהר מאוד, 474 00:27:00,640 --> 00:27:03,310 עבור אנשים עיוורים ולא יוכל לראות את התמונה 475 00:27:03,310 --> 00:27:06,480 אבל אולי כן קורא מסך שיכול לספר להם מה זה תמונה של. 476 00:27:06,480 --> 00:27:09,100 וכדי לעשות זאת, יש עוד תכונה לתגי תמונה 477 00:27:09,100 --> 00:27:11,290 נקרא alt, לטקסט חלופי. 478 00:27:11,290 --> 00:27:14,650 ומה אני יכול לעשות כאן הוא אומר, 'זה הוא שועל חום זריז ". 479 00:27:14,650 --> 00:27:17,650 כך שגם אם האדם לא יכול לראות את התמונה על המסך, 480 00:27:17,650 --> 00:27:20,560 הוא או היא יכולה לפחות לשמוע, כמו בחלק כלשהו של תוכנה, 481 00:27:20,560 --> 00:27:23,080 מה באמת נמצא שם על המסך. 482 00:27:23,080 --> 00:27:25,040 >> זה לא ישנה את האסתטיקה של הדף, 483 00:27:25,040 --> 00:27:27,640 אבל זה בהחלט תרגול טוב עבור משתמשים. 484 00:27:27,640 --> 00:27:31,760 בסדר, בואו נשאיר את דף האינטרנט בצורתה הנוכחית, 485 00:27:31,760 --> 00:27:33,890 אבל בואו נראה אם ​​אנחנו לא יכולים עכשיו להציג 486 00:27:33,890 --> 00:27:36,210 כמה גישות טובות יותר לכתיבת דפי האינטרנט אלה, 487 00:27:36,210 --> 00:27:39,980 כמה לקחים שהם הולכים לשרת אותנו גם הדפים שלנו נעשה יותר ויותר מורכבים. 488 00:27:39,980 --> 00:27:42,220 מה שאנחנו לא מתכוונים לעשות במהלך השבועות הקרובים 489 00:27:42,220 --> 00:27:46,810 הוא יעבור את כל עשרות כמה תגי HTML שיש בעולם. 490 00:27:46,810 --> 00:27:49,800 ממש כמו בהתחלה תחזור בשבוע 0, זה כנראה יספיק 491 00:27:49,800 --> 00:27:52,120 לתת סקירה ברמה גבוהה של כמה מהמושגים, 492 00:27:52,120 --> 00:27:54,530 סיור מהיר של כמה בלוקים אתה כנראה תוכל, 493 00:27:54,530 --> 00:27:58,240 די בנוחות, כדי לנווט בעצמך, את חלקי הפאזל השונים. 494 00:27:58,240 --> 00:28:00,460 וזה הולך לקרות שוב ב-HTML, ככל הנראה, 495 00:28:00,460 --> 00:28:04,320 לפי שיש משאבים בשפע באינטרנט שאנחנו נצביע לך ב, 496 00:28:04,320 --> 00:28:06,920 ספרי לימוד שונים, אם אתה מעדיף לקרוא ספר, 497 00:28:06,920 --> 00:28:10,560 שידריך אותך בכל מיני דברים שאתה יכול לעשות עם HTML, 498 00:28:10,560 --> 00:28:16,100 אבל באמת, שראינו עד כה ב-HTML ביותר של מושגי היסוד. 499 00:28:16,100 --> 00:28:19,900 יש לנו את הרעיון של תגים שנפתחו, תגים שהיו סגורים. 500 00:28:19,900 --> 00:28:22,100 כמה תגים ששניהם נפתחו ונסגרו 501 00:28:22,100 --> 00:28:24,620 במובן זה שהם ריקים; לא צריך להיות דבר פנימי שלהם 502 00:28:24,620 --> 00:28:27,490 כמו תג תמונה או מעבר שורה, שהם פשוט שם. 503 00:28:27,490 --> 00:28:32,330 אנחנו גם נראים כבר ברעיון של תכונה, כמו alt או מקור. 504 00:28:32,330 --> 00:28:36,410 שים לב שמילים אלה נוטות, למוסכמות, להיות קצר ותמציתי. 505 00:28:36,410 --> 00:28:39,140 >> אין לנו שיקול דעת על מה הדברים האלה נקראים, 506 00:28:39,140 --> 00:28:42,060 מישהו אחר שהמציא HTML בא עם השמות הללו. 507 00:28:42,060 --> 00:28:44,710 אז אתה רק צריך להתחיל לדעת או לחפש, בכל פעם שאתה צריך אותם, 508 00:28:44,710 --> 00:28:47,160 מה השמות הם לתגים ותכונות אלה. 509 00:28:47,160 --> 00:28:49,510 במקרה של תכונות אלה, מייחס בדרך 510 00:28:49,510 --> 00:28:52,900 לשנות את ההתנהגות של תג מסוים. 511 00:28:52,900 --> 00:28:55,710 במקרה זה, תכונת המקור מספרת את תג התמונה 512 00:28:55,710 --> 00:28:57,940 מה המקור של התמונה צריך להיות. 513 00:28:57,940 --> 00:29:04,460 תכונת href מספרת את תג העוגן מה זה צריך להיות ממש מקשר. 514 00:29:04,460 --> 00:29:06,800 אבל במונחים של המבנה של דף אינטרנט, למרות שפייסבוק 515 00:29:06,800 --> 00:29:09,680 ו-Google ונראה כמו כמו בלגן שלם 516 00:29:09,680 --> 00:29:12,560 מתחת למכסת המנוע במבט הראשון, אם אתה מתחיל לקרוא את זה 517 00:29:12,560 --> 00:29:16,950 יותר באופן שיטתי, כולם נאמן למבנה זה בסיסי, בסיסי. 518 00:29:16,950 --> 00:29:19,660 אבל אנחנו יכולים לשפר את הסגנון של הדברים האלה. 519 00:29:19,660 --> 00:29:24,180 אז תן לי ללכת לכמה דוגמאות שהוכנתי מבעוד מועד. 520 00:29:24,180 --> 00:29:27,280 תן לי ללכת קדימה ולהעתיק אותם מתיקייה אחרת כאן 521 00:29:27,280 --> 00:29:29,380 ולהכניס אותם לספרייה זו. 522 00:29:29,380 --> 00:29:32,210 מראש, מה שעשיתי היה להכין כמה קבצים: 523 00:29:32,210 --> 00:29:35,670 search0, search1, search2, וsearch3 ו4. 524 00:29:35,670 --> 00:29:38,740 תן לי ללכת קדימה ולפתוח הראשון של קבצים אלה, 525 00:29:38,740 --> 00:29:42,570 ובואו נראים אם אנחנו לא יכולים להתחיל ליצור מנוע חיפוש משלנו. 526 00:29:42,570 --> 00:29:46,530 בחלק העליון של קובץ זה, כפי שקורה בדרך כלל בכיתה, פשוט חבורה של הערות. 527 00:29:46,530 --> 00:29:49,760 ב-HTML, אם כי, זה שבאמצעותו אתה מתחיל תגובה 528 00:29:49,760 --> 00:29:55,640 הוא <- ואז אתה בתוך תגובה, הערה מרובה שורות. 529 00:29:55,640 --> 00:29:59,800 כאשר אתה מוכן להפסיק תגובה, כי אתה יכול לעשות ->. 530 00:29:59,800 --> 00:30:02,380 כך שהכול בראש בכחול הוא רק תגובה. 531 00:30:02,380 --> 00:30:04,620 >> זוהי הצהרת doctype שלי, ששוב, 532 00:30:04,620 --> 00:30:07,080 אתה יכול פשוט להעתיק ולהדביק באמונה, לעת עתה. 533 00:30:07,080 --> 00:30:10,410 זה פשוט אומר לדפדפן, "הנה בא חלק 5 HTML. ' 534 00:30:10,410 --> 00:30:13,600 מתחת לזה, בקו 14, הוא הראשון מהתגים שלי בפועל, 535 00:30:13,600 --> 00:30:16,900 וזה רק אומר, כמו בעבר, כאן מגיע חלק HTML, 536 00:30:16,900 --> 00:30:19,460 הנה מגיע ראש הדף שלי, הנה מגיע את התואר, 537 00:30:19,460 --> 00:30:23,900 ולאחר מכן, לעומת זאת, זה אותו על התואר, זה הכל לראש. 538 00:30:23,900 --> 00:30:26,460 הנה עכשיו מגיע לגוף של הדף שלי. 539 00:30:26,460 --> 00:30:31,040 אז כמה תגים חדשים עכשיו: h1 עומד לכותרת 1. 540 00:30:31,040 --> 00:30:33,850 יש מסורת בHTML לשנים רבות לאחור 541 00:30:33,850 --> 00:30:37,990 שיש גדלים שונים של טקסט. 542 00:30:37,990 --> 00:30:41,980 ובחזרה באותו היום, כל אחד מהם התכוון, בדרך כלל, רק גדול ונועז. 543 00:30:41,980 --> 00:30:45,860 אבל יש גם H2, שהיא גדולה אבל לא ממש גדולה ונועזת. 544 00:30:45,860 --> 00:30:49,320 יש H3, שהוא סוג של גדול אבל לא כל כך גדול ונועז, 545 00:30:49,320 --> 00:30:52,380 וכן הלאה, כל הדרך למטה לh6. 546 00:30:52,380 --> 00:30:55,550 בימים אלה, אם כי, H1, H2 ו H3 הם באמת התכוונו 547 00:30:55,550 --> 00:30:57,980 יש משמעות סמנטית יותר אליהם, 548 00:30:57,980 --> 00:31:01,100 לפי h1 הוא באמת כותרת: הכותרת של דף אינטרנט, 549 00:31:01,100 --> 00:31:04,210 הכותרת של עמודה או משהו כזה של טקסט. 550 00:31:04,210 --> 00:31:09,030 אז בכוונה שאמר h1 CS50 חיפוש> h1 551 00:31:09,030 --> 00:31:12,640 לspecifiy שזה באמת הכותרת, הכותרת של הדף שלי. 552 00:31:12,640 --> 00:31:14,850 לא הכותרת, במובן שורת הכותרת, 553 00:31:14,850 --> 00:31:18,960 אבל הכותרת שאתה בעצם רואה בדף האינטרנט עצמו, בגוף. 554 00:31:18,960 --> 00:31:20,990 ועכשיו זה, כנראה שאתה יכול לנחש מה זה, 555 00:31:20,990 --> 00:31:23,110 למרות שיש לנו כמה קטעים חדשים של תחביר. 556 00:31:23,110 --> 00:31:25,930 זוהי צורה. אז האינטרנט באמת מתחיל להיות מעניין 557 00:31:25,930 --> 00:31:28,770 כאשר אתרים לקחת מידע ממשתמשים. 558 00:31:28,770 --> 00:31:31,700 במעמד הזה, בבעיה להגדיר בתכנות האינטרנט, 559 00:31:31,700 --> 00:31:33,880 אנחנו לא מתכוונים לעשות אתר, כשלעצמה, 560 00:31:33,880 --> 00:31:37,570 עם תוכן סטטי המציג תצלומים שצלמתם, 561 00:31:37,570 --> 00:31:40,010 או זה קורות החיים שלי, ועליי הדברים, 562 00:31:40,010 --> 00:31:42,450 בגלל הדברים האלה הם יחסית קלים להרכיב. 563 00:31:42,450 --> 00:31:44,400 זה קשה לעשות דברים יפים באינטרנט, 564 00:31:44,400 --> 00:31:46,390 אבל לפחות לשים את התוכן הוא די טריוויאלי. 565 00:31:46,390 --> 00:31:49,380 אבל דברים מקבלים באמת מעניינים כאשר מישהו יכול לבקר באתר האינטרנט שלך 566 00:31:49,380 --> 00:31:52,260 ולספק קלט ויכול למלא טפסים, 567 00:31:52,260 --> 00:31:55,800 יכול לבדוק את תיבות סימון ויכול לקיים אינטראקציה עם האתר שלך. 568 00:31:55,800 --> 00:31:57,780 ואכן, כנראה בכל אתר שאכפת לך 569 00:31:57,780 --> 00:32:00,710 בימים אלה, בכל פרט, הוא איכשהו אינטרקטיווי. 570 00:32:00,710 --> 00:32:03,110 פייסבוק, גוגל, וכמו, שייקח את קלט משתמש 571 00:32:03,110 --> 00:32:05,100 ולהפיק פלט מותאם אישית. 572 00:32:05,100 --> 00:32:07,780 >> אז בואו נתחיל לעשות את זה עכשיו. מעבר בואו עכשיו 573 00:32:07,780 --> 00:32:11,150 מעתה באמצעות HTML לסימון של תוכן סטטי 574 00:32:11,150 --> 00:32:14,790 כבמקום מנגנון אספקה ​​לתוכן דינמי. 575 00:32:14,790 --> 00:32:17,350 וכיוון שהסוף, בואו ליישם מנוע החיפוש שלנו. 576 00:32:17,350 --> 00:32:20,820 בואו נעשה את זה באופן בא. הנה צורת התג. 577 00:32:20,820 --> 00:32:24,090 תכונת הפעולה מציינת כי כאשר המשתמש ממלא את הטופס הבא 578 00:32:24,090 --> 00:32:28,400 עם המקלדת שלהם, היא תישלח לכתובת אתר זו כאן. 579 00:32:28,400 --> 00:32:31,230 אז אני סוג של רמאות. זה הולך לקחת אותנו עוד קצת 580 00:32:31,230 --> 00:32:33,780 מכיתה אחת ליישם את מנוע החיפוש כולו, 581 00:32:33,780 --> 00:32:35,880 אז אנחנו פשוט נעשה את החלק הקדמי, אם אפשר לומר כך. 582 00:32:35,880 --> 00:32:38,650 אנחנו נעשה את החלק שמאפשר חיפוש של המשתמש, ונטפלנו בדוגית לגוגל 583 00:32:38,650 --> 00:32:40,950 חלק הקשה של מציאת תוצאות חיפוש, 584 00:32:40,950 --> 00:32:43,520 אבל, באופן ספציפי, אני הולך לדבר עם שרת האינטרנט של גוגל 585 00:32:43,520 --> 00:32:46,710 תוך שימוש באחת משתי שיטות מאוד פופולריות. 586 00:32:46,710 --> 00:32:50,000 אחד שיקבל, נוסף, שסופו של דבר יראה, להיות הודעה, 587 00:32:50,000 --> 00:32:52,660 למרות שיש לאחרים בתדירות נמוכה יותר המשמשים. 588 00:32:52,660 --> 00:32:56,440 אז לקבל רק מעלה את הרעיון, אני רוצה לקבל קצת תוכן, תקבל חלק מתוצאות חיפוש. 589 00:32:56,440 --> 00:32:58,440 זה, אולי אתה יכול לנחש מה זה עושה. 590 00:32:58,440 --> 00:33:01,900 זה סוג של קלט, זה, למעשה, הולך להיראות כמו שדה טקסט, 591 00:33:01,900 --> 00:33:05,200 ושמו של קלט, את שמו של אותו משתנה, כביכול, 592 00:33:05,200 --> 00:33:08,610 הולך להיות ש לשאילתא על ידי ועידה. 593 00:33:08,610 --> 00:33:11,700 ושוב, הסוג של קלט זה לא הולך להיות תיבת סימון; 594 00:33:11,700 --> 00:33:13,890 זה לא הולך להיות תפריט, זה הולך להיות שדה טקסט 595 00:33:13,890 --> 00:33:18,060 ככונה על ידי תכונה זו כאן, ותיבת טקסט זו, 596 00:33:18,060 --> 00:33:20,680 כמו מעבר שורה, הוא או שם או לא. 597 00:33:20,680 --> 00:33:24,480 אז יש לנו אלמנט ריק עם הלוכסן בתוך התגית. 598 00:33:24,480 --> 00:33:28,050 ואז אני הולך לשים מעבר שורה, ואתה יכול, אולי, לנחש מה זה הולך לעשות. 599 00:33:28,050 --> 00:33:30,210 זה סוג אחר של קלט טופס. 600 00:33:30,210 --> 00:33:32,350 >> הפעם זה הולך להיות בשימוש לשליחת הטופס. 601 00:33:32,350 --> 00:33:36,140 אז זה הולך להיות על הכפתור הגדול שאפשר ללחוץ כדי לשלוח את הטופס, 602 00:33:36,140 --> 00:33:40,800 והתווית על כפתור זה הולכת להיות 'CS50 חפש'. 603 00:33:40,800 --> 00:33:44,170 צורה סגורה, גוף קרוב, קרוב HTML. 604 00:33:44,170 --> 00:33:46,280 בואו נראה מה יש לנו בצורה של דף אינטרנט זה. 605 00:33:46,280 --> 00:33:48,260 אז תן לי ללכת לדפדפן שלי, 606 00:33:48,260 --> 00:33:50,360 תן לי ללכת, עדיין, למארח מקומי. 607 00:33:50,360 --> 00:33:54,650 זה עדיין index.html, כך שאם אני רוצה לראות את הקובץ הזה שנקרא search0, 608 00:33:54,650 --> 00:33:59,710 אני יכול פשוט לעשות / search0.html, זן - 609 00:33:59,710 --> 00:34:01,880 והראשון מהטעויות שלי. 610 00:34:01,880 --> 00:34:04,400 מה קורה? אני בבירור אין לך הרשאה 611 00:34:04,400 --> 00:34:06,430 כדי לגשת לקובץ זה, מסיבה כלשהי. 612 00:34:06,430 --> 00:34:10,170 אבל זה משום שבניגוד העבודה שעשינו עד כה ב-C, 613 00:34:10,170 --> 00:34:14,340 איפה את התוכניות שאתה כותב הם הניחו להיות runable על ידך, 614 00:34:14,340 --> 00:34:17,590 הפעלה על ידי לך, זה לא ממש המקרה באינטרנט, 615 00:34:17,590 --> 00:34:21,010 לפי לפעמים אולי כדאי לך ליצור קבצים בשרת, 616 00:34:21,010 --> 00:34:23,310 אבל אתה לא רוצה שכל העולם יוכל לראות אותם. 617 00:34:23,310 --> 00:34:25,469 במקום זאת, אתה רוצה שהעולם רואה כמה קבצים 618 00:34:25,469 --> 00:34:27,730 אך לא לאחרים, רק למען השמירה על הפרטיות. 619 00:34:27,730 --> 00:34:30,730 אז זה יותר מבסיס opt-in כשאתה עושה דברים באינטרנט. 620 00:34:30,730 --> 00:34:32,810 ואז תן לי דווקא הקלד ls כאן, 621 00:34:32,810 --> 00:34:37,440 ואתה רואה את הקבצים שיש לי, אבל תזכור שאם אני עושה ls-l לזמן רב, 622 00:34:37,440 --> 00:34:41,520 אני אקבל רשימה ארוכה יותר שנותנת לי קצת יותר פרטים, קבצים אלה 623 00:34:41,520 --> 00:34:45,139 כי עכשיו, באמת, לזמן הרלוונטי אלינו הראשון. 624 00:34:45,139 --> 00:34:47,840 שימו לב כי בקצה הימני הם השמות של הקבצים שלי, 625 00:34:47,840 --> 00:34:50,690 ואז הזמן שבו הם שונים לאחרונה או העתקה. 626 00:34:50,690 --> 00:34:54,370 מספר זה הנה מה? האם אתה זוכר? 627 00:34:54,370 --> 00:34:56,400 הגודל בבתים, כמה גדול הוא הקובץ. 628 00:34:56,400 --> 00:34:59,520 >> אז נראה שיש איזה לוגו בכאן כי הוא גדול יותר מכל שאר הקבצים. 629 00:34:59,520 --> 00:35:03,610 זה מי שאני, זה מה שאני ומה קבוצה אני בפנים 630 00:35:03,610 --> 00:35:07,430 אבל אז, כאן בצד השמאל הוא קצת רצף מסתורי, 631 00:35:07,430 --> 00:35:10,040 ודברנו, אני חושב, בקצרה על זה בעבר, 632 00:35:10,040 --> 00:35:12,050 אבל זה קשור להרשאות. 633 00:35:12,050 --> 00:35:14,020 גם אם זה קצת מעורפל ו, 634 00:35:14,020 --> 00:35:17,270 RW כנראה אומר לקרוא ולכתוב. 635 00:35:17,270 --> 00:35:22,560 אז מתבררים שהמקפים אלה יסמנו קבוצות שונות של הרשאות לאנשים שונים. 636 00:35:22,560 --> 00:35:24,730 והדפוס הוא, למעשה, כמפורט להלן. 637 00:35:24,730 --> 00:35:27,650 כשאתה רואה רצף של מקפים כאן, הם ייראו כלהלן. 638 00:35:27,650 --> 00:35:30,450 יש מקף, אז יש עוד שלושה מקפים, 639 00:35:30,450 --> 00:35:33,390 אז יש עוד שלוש, ואז יש עוד שלוש. 640 00:35:33,390 --> 00:35:36,800 הראשון הוא או מקף או מודעה שלו לספרייה. 641 00:35:36,800 --> 00:35:40,220 אז גם בזה די קל. אם זה תיקייה, זה אומר ד, אחר זה מקף. 642 00:35:40,220 --> 00:35:44,080 יש כאן שני מקרים אחרים, אך לעת עתה אנחנו פשוט אכפת קבצים וספריות. 643 00:35:44,080 --> 00:35:48,090 3 מקפים אלה הקרובים - ואני מוכנסים באופן מלאכותי את הרווחים. 644 00:35:48,090 --> 00:35:50,490 הם היו, כמובן, לא היו שם כאשר ראו אותם לפני רגע. 645 00:35:50,490 --> 00:35:52,900 אלו הן הרשאות של בעל הקובץ, 646 00:35:52,900 --> 00:35:55,840 וזוכר מלפני שני שהוא קורא וכותב. 647 00:35:55,840 --> 00:35:58,560 זה היה משום שאני, כאדם שיצר את הקובץ הזה לפני רגע, 648 00:35:58,560 --> 00:36:01,250 אני, רק כברירת מחדל, במחשב לינוקס, 649 00:36:01,250 --> 00:36:03,910 יש את היכולת להמשיך בקריאה וכתיבת קובץ זה. 650 00:36:03,910 --> 00:36:07,170 >> אז מערכת ההפעלה פשוט נותנת לי RW באופן אוטומטי. 651 00:36:07,170 --> 00:36:10,840 אלה ביניים מתייחסים לקבוצה שלי, זה של תלמידים, 652 00:36:10,840 --> 00:36:14,590 שהוא סוג של משמעות על המכשיר משום שאני האדם היחיד שמשתמש במכשיר. 653 00:36:14,590 --> 00:36:16,620 אז תן לי רק לנפנף בידות שלי בזה לעת עתה. 654 00:36:16,620 --> 00:36:19,190 אבל אלה האחרונים הם חשובים ביותר עבור האינטרנט. 655 00:36:19,190 --> 00:36:21,580 זה כל אחד אחר בעולם, ואת העובדה 656 00:36:21,580 --> 00:36:24,600 ש--- אומר שאף אחד אחר בעולם 657 00:36:24,600 --> 00:36:26,680 יש לו כל הרשאות משתמשת בקובץ זה. 658 00:36:26,680 --> 00:36:29,180 ברור שבעיה, אז אני צריך לתקן את זה 659 00:36:29,180 --> 00:36:33,830 על ידי מתן לעולם מה איכשהו? קריאה וכתיבה? 660 00:36:33,830 --> 00:36:35,850 זה כנראה טיפשי, נכון? אני לא רוצה שאף אחד באינטרנט 661 00:36:35,850 --> 00:36:38,530 ללכת לבקר בדף שלי ואיכשהו לשנות את הקובץ, 662 00:36:38,530 --> 00:36:40,800 למרות שהם ממש לא יכולים עם קובץ HTML, 663 00:36:40,800 --> 00:36:44,110 אבל רק בעיקרון, ככל הנראה לא רוצה שהם יהיו מסוגלים לקרוא אותו. 664 00:36:44,110 --> 00:36:47,910 מה זה אומר לקרוא אותו? זה לא אומר שהם הולכים לאכפת HTML בפועל, 665 00:36:47,910 --> 00:36:51,820 אבל הדפדפן צריך להיות מסוגל לנתח ששפת הסימון, 666 00:36:51,820 --> 00:36:53,720 מלמעלה למטה, משמאל לימין. 667 00:36:53,720 --> 00:36:57,990 אז מישהו באינטרנט צריך להיות מסוגל לקרוא אותו, אז אני מינימאלי צריך לתת לו r. 668 00:36:57,990 --> 00:37:00,240 אני יכול לעשות זאת בכמה דרכים שונות, אבל אולי 669 00:37:00,240 --> 00:37:03,080 הפשוט ביותר הוא הפעלת פקודה זו כאן. 670 00:37:03,080 --> 00:37:10,860 Chmod, שינוי מצב, אז + R אז כל, כל אחד בעולם + לקרוא, 671 00:37:10,860 --> 00:37:13,830 ולאחר מכן את השם של הקובץ, search0.html. 672 00:37:13,830 --> 00:37:18,310 >> עכשיו, אם אני עושה ls-l שוב, שים לב שהקובץ שהשתנה, 673 00:37:18,310 --> 00:37:21,440 ואכן, אני כבר פניתי למחקר לכולם. 674 00:37:21,440 --> 00:37:23,350 גם אני כבר הפכתי אותו בקבוצה שלי, אבל זה בסדר, 675 00:37:23,350 --> 00:37:27,150 כי אם פניתי בכולם, הקבוצה שלי היא קבוצת משנה של זה. 676 00:37:27,150 --> 00:37:31,480 כך שגם זה בסדר. זה רק אומר שהמחשב הפך עכשיו זה קריא. 677 00:37:31,480 --> 00:37:34,430 עכשיו תנו לי לחזור לדפדפן שלי, לחץ על רענן. 678 00:37:34,430 --> 00:37:36,330 אה, חה. עכשיו יש לנו CS50 חיפוש. 679 00:37:36,330 --> 00:37:39,830 אני כבר זנקתי באופן מלאכותי קטן - מנוע חיפוש די מחריד. 680 00:37:39,830 --> 00:37:41,930 אבל בואו נראים אם זה באמת עובד. 681 00:37:41,930 --> 00:37:45,880 ראשית, הרשה לי לעשות את בדיקת שפיות מהירה, תן לי לשלוט לחץ ולהציג מקור של דף. 682 00:37:45,880 --> 00:37:50,780 שים לב שבתוך Chrome אנחנו רואים עכשיו אותו HTML שאני עצמי יצרתי. 683 00:37:50,780 --> 00:37:55,420 אל תתבלבל אף כאן,. אני לא יכול להתחיל לשנות את הקוד כאן, 684 00:37:55,420 --> 00:37:59,420 משום שיש לדפדפן תצוגה לקריאה בלבד של קוד זה. 685 00:37:59,420 --> 00:38:06,060 הדפדפן בדיוק שאל את המארח מקומי לקובץ שנקרא search0.html. 686 00:38:06,060 --> 00:38:09,490 עכשיו זה צירוף מקרים בלבד שהמכשיר 687 00:38:09,490 --> 00:38:13,480 במקרה באותו המחשב כדפדפן שלי. 688 00:38:13,480 --> 00:38:20,470 אני רק יכול להיות, באופן שקול, הקליד בwww.facebook.com/search0.html, 689 00:38:20,470 --> 00:38:23,830 ואם פייסבוק היה קובץ בשם זה, הייתי אז להיות רואה HTML שלהם. 690 00:38:23,830 --> 00:38:27,360 וכמובן, אני לא יכול לשנות את הקובץ שחוזר מפייסבוק, או. 691 00:38:27,360 --> 00:38:29,360 אז עכשיו אנחנו בסוג של טשטוש גבולות. 692 00:38:29,360 --> 00:38:32,130 המכשיר הוא גם שרת, המשרת את דפי אינטרנט, 693 00:38:32,130 --> 00:38:34,870 אבל זה גם לקוח במובן זה שאני משתמש בדפדפן 694 00:38:34,870 --> 00:38:37,630 בעצם לדבר ששרת. 695 00:38:37,630 --> 00:38:39,610 אז בואו לראות אם מנוע החיפוש של Google שלי עובד. 696 00:38:39,610 --> 00:38:44,930 תן לי ללכת קדימה ולחפש שועל חום זריז, להיכנס. 697 00:38:44,930 --> 00:38:47,540 וזהו, עכשיו יש לי מנוע החיפוש שלי. 698 00:38:47,540 --> 00:38:51,460 >> אבל איך זה עובד? 699 00:38:51,460 --> 00:38:55,380 קצת למתוח, אבל - ועכשיו אתה לא יכול לראות, בדיוק, זה חלק מעניין. 700 00:38:55,380 --> 00:38:57,370 שים לב מה קורה. 701 00:38:57,370 --> 00:39:00,430 שים לב לכתובת האתר. מתברר כי שיטה ש, 702 00:39:00,430 --> 00:39:02,780 נקרא להגיע, הוא סופר פשוט. 703 00:39:02,780 --> 00:39:10,270 כשאתה מציין בצורה שאתה רוצה 'להגיע' תוצאות משרת כלשהו, 704 00:39:10,270 --> 00:39:13,200 מה זה הולך לעשות הוא לקחת את כל מה שהקלדת לתוך הטופס 705 00:39:13,200 --> 00:39:15,290 ולשים אותו ב-URL. 706 00:39:15,290 --> 00:39:18,580 זה הולך לתקנן איך זה יכניס אותו לכתובת באופן בא. 707 00:39:18,580 --> 00:39:22,290 שים לב שזו היא כתובת האתר שהיה הערך של תכונת הפעולה שלי. 708 00:39:22,290 --> 00:39:24,730 זה המקום שאני רוצה את הטופס לסופו. 709 00:39:24,730 --> 00:39:26,950 אבל אז הבחין בסימן השאלה הזה. 710 00:39:26,950 --> 00:39:30,230 זו מוסכמה באינטרנט לפיה כדי לספק קלט משתמש 711 00:39:30,230 --> 00:39:35,320 לאתר אינטרנט, אתה מצרף את כתובת האתר בסימן שאלה, 712 00:39:35,320 --> 00:39:38,330 ואז יש לך חבורה שלמה של זוגות מפתח וערכים. 713 00:39:38,330 --> 00:39:42,380 השם של מפתח, הידוע כפרמטר באינטרנט, 714 00:39:42,380 --> 00:39:46,380 אז יש לך סימן שוויון, אז יש לך את הערך של פרמטר זה. 715 00:39:46,380 --> 00:39:49,810 אז זה בעצם שם משתנה וערך משתנה, 716 00:39:49,810 --> 00:39:54,250 אבל שמות וערכים אלה של משתנים הגיעו מטופס HTML. 717 00:39:54,250 --> 00:39:56,250 למה את הפלוסים שם, אתה חושב? 718 00:39:56,250 --> 00:39:59,340 בגלל שלא להקליד ב+ בין המילים שלי. 719 00:39:59,340 --> 00:40:01,430 [סטודנטים, לא מובנים] 720 00:40:01,430 --> 00:40:05,080 >> כן, זה רק למרווח. רוב הסיכויים הם, בכל פעם שראית את כתובת אתר, 721 00:40:05,080 --> 00:40:07,320 אף פעם אין רווחים כלשהם בזה, ולו רק בגלל 722 00:40:07,320 --> 00:40:09,440 אם היו, אתה לא באמת יכול להעתיק ולהדביק אותו 723 00:40:09,440 --> 00:40:12,700 למיידי או לדוא"ל כי זה יישבר. 724 00:40:12,700 --> 00:40:15,420 אתה רוצה שכל הדבר יהיה מחרוזת רציפה אחד של תווים. 725 00:40:15,450 --> 00:40:18,450 >> אז הדפדפן הוא חכם מספיק כדי להבין, לא ולא. 726 00:40:18,450 --> 00:40:22,610 האם לא פשוט לשים רווח שם. תן לי לקודד את החלל בדרך סטנדרטית. 727 00:40:22,610 --> 00:40:25,170 אחת הוועידות לכך הוא שיש לדפדפן 728 00:40:25,170 --> 00:40:29,350 באופן אוטומטי את + בך אחרת היה חלל. 729 00:40:29,350 --> 00:40:32,140 אז עכשיו, ההודעה גוגל כבר סוג של ידידותי למשתמש. 730 00:40:32,140 --> 00:40:34,380 אני בוודאי לא ליצור דף אינטרנט זה, 731 00:40:34,380 --> 00:40:37,200 אבל הם מאוכלסים מראש שדה טקסט משלהם 732 00:40:37,200 --> 00:40:39,490 עם מה, בדיוק, הקלדתי פנימה 733 00:40:39,490 --> 00:40:43,090 אניח שאני רוצה לחפש משהו אחר, כמו כלב עצלן. 734 00:40:43,090 --> 00:40:45,340 אני יכול פשוט להקליד את זה כאן, מחדש חיפוש. 735 00:40:45,340 --> 00:40:47,730 שים לב שכתובת האתר משנה עד כאן, 736 00:40:47,730 --> 00:40:51,390 אבל אז שם לב שאני ממש יכול לחפש כל דבר שאני רוצה 737 00:40:51,390 --> 00:40:53,610 רק על ידי הבנת אופן עבודה של כתובות אתרים. 738 00:40:53,610 --> 00:40:56,840 אני יכול לעשות את החתול עצל, זן, 739 00:40:56,840 --> 00:41:01,370 ושים לב עכשיו אני מקבל מאוד עצלן - אנחנו צריכים? אני מרגיש שאנחנו צריכים. 740 00:41:01,370 --> 00:41:09,900 אני מקבל חתול עצלן מאוד. 741 00:41:09,900 --> 00:41:11,930 בסדר. זה אחד הדברים הכי הטיפשיים שעשינו. 742 00:41:11,930 --> 00:41:17,160 אבל זה חתול עצלן. 743 00:41:17,160 --> 00:41:19,730 בכל אופן, מה ממסעדה המפתח כאן? 744 00:41:19,730 --> 00:41:22,830 עכשיו אנחנו סוג של משחק בעולם של HTTP. 745 00:41:22,830 --> 00:41:26,050 HTML הוא רק שפה זה סימון, תג פתוח, תג סגירה, 746 00:41:26,050 --> 00:41:29,490 שאומר לי דפדפן כיצד לעבד את התוכן בדף אינטרנט. 747 00:41:29,490 --> 00:41:32,850 אבל כשאתה מתחיל העברת נתונים דרך האינטרנט 748 00:41:32,850 --> 00:41:36,290 בין דפדפן והשרת, ששם זה פרוטוקול 749 00:41:36,290 --> 00:41:39,370 מכונה HyperText Transfer Protocol משתלט. 750 00:41:39,370 --> 00:41:42,630 זה הסוג של מוסכמה אנושית; כאשר סם ואני לחצתי ידות ביום שני, 751 00:41:42,630 --> 00:41:48,300 החל חיבור ולאחר מכן לסגור את אותו חיבור רעיון, כאן. 752 00:41:48,300 --> 00:41:53,100 איך התוצאות של גוגל חוזרות אליי? 753 00:41:53,100 --> 00:41:55,290 איך טופס ההגשה שלי הולכת לגוגל? 754 00:41:55,290 --> 00:41:58,160 ובכן, זוכר מהימים כי מה שבאמת קורה 755 00:41:58,160 --> 00:42:02,150 מתחת למכסת המנוע כאשר אתה מבקש דף אינטרנט הוא, 756 00:42:02,150 --> 00:42:04,860 הדפדפן שלך שולח הודעה במקצת, מסתורית כמו 757 00:42:04,860 --> 00:42:09,510 GET / HTTP/1.1 לדף הבית המוגדר כברירת מחדל. 758 00:42:09,510 --> 00:42:13,000 >> או, במקרה זה, משום שאני דווקא בקשתי קודם לכן 759 00:42:13,000 --> 00:42:17,340 search0.html, אז זה יהיה המסר של מקצת-הסתום 760 00:42:17,340 --> 00:42:20,040 כי הדפדפן שלי שולח למכשיר. 761 00:42:20,040 --> 00:42:23,090 או, במקרה זה של גוגל, מה ששלח בפועל 762 00:42:23,090 --> 00:42:33,740 היא בקשה ל/ חיפוש, ולאחר מכן? q = חתול עצלן, עם תוספת שם. 763 00:42:33,740 --> 00:42:36,790 אז המסר הזה, שאני, האדם, אני בחיים לא הקלדה, 764 00:42:36,790 --> 00:42:40,620 אבל הוא נשלח על ידי הדפדפן שלי, זה איך קורה HTTP. 765 00:42:40,620 --> 00:42:43,240 זו מקבילה של הידות שלנו שהוא המוכה והחבולים. 766 00:42:43,240 --> 00:42:46,320 זו הבקשה, והשרת עומד לשלוח תגובה. 767 00:42:46,320 --> 00:42:48,560 אז בואו נסתכל על זה מתחת למכסת המנוע. 768 00:42:48,560 --> 00:42:55,320 כמו בעבר, אנחנו יכולים לפתוח את השדה המיוחד הזה בדפדפן. 769 00:42:55,320 --> 00:42:58,720 צפייה בדף, לבדוק מרכיבים. 770 00:42:58,720 --> 00:43:01,550 וכך, תחת לבדוק אלמנט, שים לב כי מה שקרה בכרום, 771 00:43:01,550 --> 00:43:04,160 וIE ו-Firefox יש מנגנונים דומים, 772 00:43:04,160 --> 00:43:07,370 יש לנו כלי פיתוח אלו נגישים לנו. 773 00:43:07,370 --> 00:43:09,630 אנשים נורמלים לא להשתמש בכרטיסיות אלה. 774 00:43:09,630 --> 00:43:11,940 אבל אנחנו, עכשיו, מתעניייינים במה שקורה 775 00:43:11,940 --> 00:43:13,890 מתחת למכסת המנוע ברמת הרשת. 776 00:43:13,890 --> 00:43:16,130 אז אם אני מוריד את רמת הרשת כאן, 777 00:43:16,130 --> 00:43:18,510 תנו לי ללכת קדימה ולהרחיב את החלון הזה, 778 00:43:18,510 --> 00:43:21,840 לפתוח את הפוסט הזה כאן, ומסתכל על הכותרות. 779 00:43:21,840 --> 00:43:26,010 אז מה קורה כאשר אני מבקש קובץ משרת אינטרנט 780 00:43:26,010 --> 00:43:29,410 הדפדפן שלי הוא שולח חבורה שלמה של דברים. 781 00:43:29,410 --> 00:43:32,390 ותן לי להציג את המקור. וכך, תחת כותרות בקשה, 782 00:43:32,390 --> 00:43:35,250 וזה רק מראה לי כמה Chrome פלט אבחון, 783 00:43:35,250 --> 00:43:37,340 כמו סוג של הבאגים מסוג כלשהו, 784 00:43:37,340 --> 00:43:40,500 תבחין כי מה שמודגש כאן היא בדיוק מה 785 00:43:40,500 --> 00:43:47,060 כרום הוא שולח לשרת כדי לבקש קובץ שנקרא search0.html. 786 00:43:47,060 --> 00:43:50,160 הוא אומר מה שהוא חושב שרת שמה, 787 00:43:50,160 --> 00:43:52,210 הודות לתחום מעי גס מארח זה, אז יש כמה 788 00:43:52,210 --> 00:43:56,950 דברים די אזוטרי בפה, כמו משהו שצריך לעשות עם תאריכים ושעות, 789 00:43:56,950 --> 00:43:59,720 משהו לעשות עם השפות שהדפדפן מבין, 790 00:43:59,720 --> 00:44:02,850 אבל הקווים החשובים באמת הם אלה שני ראשונים כאן. 791 00:44:02,850 --> 00:44:05,490 >> מה השרת מגיב עם? ובכן, אם אנחנו לגלול למטה כאן 792 00:44:05,490 --> 00:44:08,510 ולהציג את המקור של הדבר הזה, שים לב שהשרת 793 00:44:08,510 --> 00:44:13,700 גם הגיב עם הודעה סתומה למדי, 304 לא שונו. 794 00:44:13,700 --> 00:44:16,030 זה קצת מוזר, תן לי באמת מנסה לתקן את זה. 795 00:44:16,030 --> 00:44:18,670 תן לי להחזיק את המקש SHIFT לחוץ ולחץ טענתי מחדש כאן 796 00:44:18,670 --> 00:44:22,460 כדי לאלץ את הדפדפן בפועל לביצוע בקשה זו בפעם הראשונה. 797 00:44:22,460 --> 00:44:25,700 אז תן לי להתמקד ב, ואנו רואים עכשיו שהתגובה של השרת, 798 00:44:25,700 --> 00:44:28,950 כי אני נערכתי משמרת, הוא 200 אישור. 799 00:44:28,950 --> 00:44:31,170 אז יש לך כנראה מעולם לא ראה את המספר 200 800 00:44:31,170 --> 00:44:33,300 בהקשר של האינטרנט, אבל מה שהמספרים 801 00:44:33,300 --> 00:44:36,760 יש לך לפעמים ראה לא צפוי משרת? 802 00:44:36,760 --> 00:44:42,010 404, קובץ לא נמצא, 403, אסור; 500, שגיאת שרת. 803 00:44:42,010 --> 00:44:44,890 אז יש קודים מספריים אלה, שהעולם משתמש באינטרנט 804 00:44:44,890 --> 00:44:47,870 כדי לסמן טעויות, בדיוק כמו פונקציות C 805 00:44:47,870 --> 00:44:51,030 יכול לחזור ושגיאות עיקריות יכול להחזיר קודי יציאה. 806 00:44:51,030 --> 00:44:54,160 200, אם כי, אתה כמעט ולא רואה, כי זה אומר שהכול בסדר. 807 00:44:54,160 --> 00:44:59,000 ו304 אתה כנראה לא תראה, כי מה זה מסמל? 808 00:44:59,000 --> 00:45:03,330 ששום דבר לא - בואו נראה אם ​​אנחנו יכולים לדמות את זה שוב - 809 00:45:03,330 --> 00:45:07,170 הו, עכשיו זה לא משתף פעולה. 304 אמרו לא שונים, 810 00:45:07,170 --> 00:45:09,170 אז למה היה השרת אפילו להגיב? 811 00:45:09,170 --> 00:45:12,550 ובכן, ליעילות, שרת אינטרנט באופן אוטומטי עבורך, 812 00:45:12,550 --> 00:45:16,570 אם הקובץ לא השתנה, היא לא לשדר קובץ HTML כולה. 813 00:45:16,570 --> 00:45:19,150 זה פשוט יגיד לו הדפדפן לא השתנה. 814 00:45:19,150 --> 00:45:21,220 פשוט להשתמש בעותק כבר יש לך. 815 00:45:21,220 --> 00:45:22,650 אז יש את הרעיון הזה במטמון באינטרנט 816 00:45:22,650 --> 00:45:25,840 עבור ביצועים, כך שאתה לא לבזבז את הזמן ורוחב פס פסולת 817 00:45:25,840 --> 00:45:29,160 הורדת קבצים שוב ושוב שלא לצורך. 818 00:45:29,160 --> 00:45:31,460 >> אבל דף אינטרנט זה, עכשיו, היה סופר פשוט, 819 00:45:31,460 --> 00:45:34,980 וזה הראה לי רק את ה-HTML שחזר. 820 00:45:34,980 --> 00:45:40,940 בואו באמת להשתמש בכרטיסיית הרשת עכשיו לעשות חיפוש בגוגל כמו שועל חום מהיר. 821 00:45:40,940 --> 00:45:43,010 תן לי לאחר מכן לחץ על CS50 חיפוש, 822 00:45:43,010 --> 00:45:46,950 ועכשיו, שים לב שבתחתית כאן כל מיני דברים חזרו 823 00:45:46,950 --> 00:45:49,900 כי כשאני מבקר באתר אמיתי כמו Google.com, 824 00:45:49,900 --> 00:45:53,520 יש להם תמונות, יש להם טקסט, יש להם שפת JavaScript נקראת שם. 825 00:45:53,520 --> 00:45:55,940 אז כל שורה בטבלה זו כאן 826 00:45:55,940 --> 00:46:01,490 מייצג משהו שגוגל לירוק בתגובה לבקשה היחידה שלי. 827 00:46:01,490 --> 00:46:04,160 אני דואג, אם כי, הוא זו ראשונה. 828 00:46:04,160 --> 00:46:08,420 ואם אני הולך לחיפוש, בקשה, לחץ על צג מקור כאן, 829 00:46:08,420 --> 00:46:11,300 תבחין כי, אכן, הודעה סודית שהדפדפן שלי שלח 830 00:46:11,300 --> 00:46:15,010 לגוגל הייתה שני הקווים האלה כאן, 831 00:46:15,010 --> 00:46:18,420 אחרי קצת מידע מסתורי כאן שנתעלמנו לעת עתה. 832 00:46:18,420 --> 00:46:20,890 אבל שימו לב, גם את מה שהכרום הוא די שימושי עם, 833 00:46:20,890 --> 00:46:24,540 זה גם מראה לי את מחרוזת השאילתה שנשלחה פנימה 834 00:46:24,540 --> 00:46:27,410 אז במקום להראות לי את זה, ששלח אותי באמת, 835 00:46:27,410 --> 00:46:30,800 אם אני רואה אותה פוענח, כרום, בדיוק למטרת איתור באגים, 836 00:46:30,800 --> 00:46:34,270 עבור מפתחים כמונו, זה רק מראה לי את גרסה ידידותית לאדם ל-- 837 00:46:34,270 --> 00:46:36,390 זה לא איך אתה מאיית שועל, כנראה. 838 00:46:36,390 --> 00:46:40,520 אני רק עכשיו אני שם לב זה עכשיו - אבל זה מראה לך מה שאני, כנראה, הקלדתי. 839 00:46:40,520 --> 00:46:45,340 בינתיים, התגובה שחזרה מהשרת היא שוב 200 אישור. 840 00:46:45,340 --> 00:46:47,930 אבל נכלל שבתגובה לכך, כמובן, 841 00:46:47,930 --> 00:46:51,920 אם אנחנו באמת להציג HTML של הדף - 842 00:46:51,920 --> 00:46:55,440 מצטער, זה קיצור מקשים קצת השתבש היום. 843 00:46:55,440 --> 00:46:59,020 >> אני אתמודד עם זה בהמשך. אז אם אנחנו באמת להציג המקור של הדף, 844 00:46:59,020 --> 00:47:02,990 שאני יכול לעשות כאן למטה על ידי לחיצה על תגובה, 845 00:47:02,990 --> 00:47:10,080 זה מה שבעצם הייתה יורק בחזרה, בנוסף לאישור שההודעה מסתורית 200 מהשרת. 846 00:47:10,080 --> 00:47:12,520 לא ברור מספיק, אבל לאן כל זה מגיע? 847 00:47:12,520 --> 00:47:15,570 ובכן, בואו לעשות דבר אחד אחר כאן. עוד פקודה במקצת, מסתורית, 848 00:47:15,570 --> 00:47:20,530 אבל סוג שלו מסודר של זה בכך שהוא מגלה לנו בדיוק את מה שקורה מתחת למכסת המנוע. 849 00:47:20,530 --> 00:47:22,530 אז אני חוזר על Mac שלי כאן, יש לי קשר 850 00:47:22,530 --> 00:47:25,980 באמצעות תוכנה בשם SSH, Shell המאובטח, לשרת אחר 851 00:47:25,980 --> 00:47:28,940 משום שרוב המחשבים של הרווארד לחסום את הפקודה שאנחנו עומדים לרוץ 852 00:47:28,940 --> 00:47:31,640 בגלל שיש בפקודה זו על שרתים מסוימים בשם traceroute 853 00:47:31,640 --> 00:47:34,810 זה מאפשר לך לעקוב אחר המסלול שבין נקודתי A ו-B, 854 00:47:34,810 --> 00:47:37,020 ועד כה אנחנו כבר לוקחים כמובן מאליו לחלוטין 855 00:47:37,020 --> 00:47:40,170 שאני יכול להקליד בGoogle.com ואיכשהו לקבל נתונים בחזרה 856 00:47:40,170 --> 00:47:43,530 מצד השני של הארץ או בקצה השני של העולם. 857 00:47:43,530 --> 00:47:45,810 עם traceroute אנחנו באמת יכולים לצלול בקצת יותר לעומק 858 00:47:45,810 --> 00:47:49,370 לגבי איך האינטרנט עובד, ולראות מה קורה מתחת למכסת המנוע. 859 00:47:49,370 --> 00:47:54,440 אז בואו נלך קדימה ושרירותי לעקוב אחר מסלול, להגיד, Stanford.edu, 860 00:47:54,440 --> 00:47:57,150 אשר הוא בכל רחבי הארץ, והקש על Enter. 861 00:47:57,150 --> 00:47:59,380 פקודה זו יכולה להיות סופר מהירה או סופר איטי, 862 00:47:59,380 --> 00:48:02,010 אבל מה שאנחנו רואים עכשיו, שורה אחרת שורה, 863 00:48:02,010 --> 00:48:08,060 הוא כל אחד מהשלבים או במסיבות בינינו ופאלו אלטו, או סטנפורד, 864 00:48:08,060 --> 00:48:11,010 שם יש להם שרת האינטרנט שלהם. 865 00:48:11,010 --> 00:48:16,600 אז מה עושה כל אחד מהקווים הללו מייצגים יותר קונקרטיים, אם כי? 866 00:48:16,600 --> 00:48:19,100 חתיכת העגה מהאינטרנט? [סטודנטים, לא מובנים] 867 00:48:19,100 --> 00:48:21,570 >> מה זה? [סטודנטים, לא מובנים] 868 00:48:21,570 --> 00:48:25,390 >> אה, אז יש פעמים, אבל מה זה כל שורה - מה שאני מתכוון בופ? 869 00:48:25,390 --> 00:48:29,140 >> ובכן, יש את הדברים האלה באינטרנט שנקראים נתבים. 870 00:48:29,140 --> 00:48:33,020 ונתבים, כפי שהשם מרמז, מידע מסלול מנקודה לנקודה ב '. 871 00:48:33,020 --> 00:48:36,920 אבל יש כמה נקודות מעבר וb. 872 00:48:36,920 --> 00:48:40,010 יש C ו-D וה F ובין השורה 1, 873 00:48:40,010 --> 00:48:43,480 אשר קורה להיות כתובת ה-IP של המחשב שלי, 874 00:48:43,480 --> 00:48:46,890 או הכתובת המספרית שלי, שמזהה באופן ייחודי את המחשב שלי, 875 00:48:46,890 --> 00:48:50,300 ואת שלב 15, שהוא למעשה שרת האינטרנט 6, 876 00:48:50,300 --> 00:48:54,640 כנראה, שאני הסקתי את זה, או הגרסה 6 של שרת האינטרנט שלהם בסטנפורד. 877 00:48:54,640 --> 00:48:56,680 אבל מה הוא סוג של מסודר, אנחנו יכולים לראות את הנתיב 878 00:48:56,680 --> 00:49:00,480 ש 0 שלי ושל 1 לוקחים מהמחשב שלי לסטנפורד. 879 00:49:00,480 --> 00:49:02,500 אז בשלב 1 הוא הכתובת של המחשב שלי. 880 00:49:02,500 --> 00:49:05,760 בכל מחשב באינטרנט יש מזהה ייחודי שנראה כך. 881 00:49:05,760 --> 00:49:08,150 Number.number.number.number. 882 00:49:08,150 --> 00:49:10,370 במקום כלשהו בקמפוס הזה, כנראה במרכז המדע, 883 00:49:10,370 --> 00:49:16,780 הוא נתב בשם Gateway Core 2-te83, מה זה אומר, 884 00:49:16,780 --> 00:49:20,590 אז זה אחד מהנתבים הגדולים והמפוארים של הרווארד שמסלולים הרבה התנועה שלהם. 885 00:49:20,590 --> 00:49:24,640 הנה עוד אחד מהנתבים של הרווארד, זה אחד הוא גבול שער, 886 00:49:24,640 --> 00:49:28,310 משמעות גבול זה כנראה בשולי קמפוס איפשהו. 887 00:49:28,480 --> 00:49:32,790 אז יש NOx אחד, השורה 4, שהוא פרש דרכים בצפון, 888 00:49:32,790 --> 00:49:35,070 שהוא גדול ISP, ספק שירותי אינטרנט, 889 00:49:35,070 --> 00:49:37,740 שמקומות כמו הרווארד חבר עד. 890 00:49:37,740 --> 00:49:40,760 אבל אז דברים לקבל קצת מעניינים בקו 6. 891 00:49:40,760 --> 00:49:45,960 איפה הביטים שלי פתאום? קנזס. 892 00:49:45,960 --> 00:49:49,300 העולם יש מנהג של שימוש בקודי שדות תעופה בהרבה מהדברים האלה, 893 00:49:49,300 --> 00:49:52,900 או בקיצורים ביותר עבור מדינות או ערים, 894 00:49:52,900 --> 00:49:56,490 כך זה נראה, במרחק של רק 60 אלפיות השני, 895 00:49:56,490 --> 00:49:59,420 חבילת המידע, 0 ו 1 זה מהמחשב הנייד שלי 896 00:49:59,420 --> 00:50:03,210 עשה את כל הדרך לקנזס, ושוב, ב60 אלפיות השניים. 897 00:50:03,210 --> 00:50:08,180 >> יתר על כן, לאחר שקנזס, הם לקחו את הסיור ביוסטון, כנראה, 898 00:50:08,180 --> 00:50:10,140 כפי שהוצע על ידי שמו של שרת זה. 899 00:50:10,140 --> 00:50:13,310 אז בדיוק כמו שרת באינטרנט חייב להיות כתובת מספרית, 900 00:50:13,310 --> 00:50:18,360 זה גם יכול, לחלופין, יש כתובת קצת יותר ידידותי לאדם שבני האדם המציא. 901 00:50:18,360 --> 00:50:20,510 עכשיו, בשלב 8, אנחנו לא יודעים מה זה. 902 00:50:20,510 --> 00:50:22,550 לפעמים נתבים פשוט סוג של מתעלמים ממך, 903 00:50:22,550 --> 00:50:25,010 והם פשוט לא לענות על השאלות, אז זה בסדר. 904 00:50:25,010 --> 00:50:29,290 אחד אחרי השלב 8 הוא כנראה שם? לוס אנג'לס 905 00:50:29,290 --> 00:50:35,290 שים לב רק 78 בטרשת נפוצה, מה שלוקח אותנו בני אדם כמו 6 + שעות לעשות מבחינה פיזית, 906 00:50:35,290 --> 00:50:40,110 לוקח מנות של מידע באינטרנט 78 אלפית לנסוע כל כך רחוק. 907 00:50:40,110 --> 00:50:45,890 שלב 10 הוא בלוס אנג'לס, כמו גם, ושלב 11 נראה שנסע צפונה עד בסמוך לאוניברסיטת סטנפורד. 908 00:50:45,890 --> 00:50:48,750 זה נתב גבולם, או נתבו גבול. 909 00:50:48,750 --> 00:50:51,240 בכמה צעדים מאוניברסיטת סטנפורד שמתעלמים מאתנו, 910 00:50:51,240 --> 00:50:55,610 ולבסוף, אנחנו מגיעים לשרת האינטרנט פשוט ב87 אלפיות שני. 911 00:50:55,610 --> 00:50:57,760 עכשיו, כל המספרים האלה, כמו בצד, 912 00:50:57,760 --> 00:51:00,640 רק להגיד לך כמה הזמן לוקח לנתונים כדי לקבל ממני 913 00:51:00,640 --> 00:51:03,530 לכל אחד מהנתבים האלה, וזה לא מצטבר. 914 00:51:03,530 --> 00:51:06,960 מה התכנית הזו עושה זה, הוא שולח הודעה 1, למעשה, לנתב הראשון. 915 00:51:06,960 --> 00:51:09,490 אז אחד לנתב 2: ואז אחד לנתב השלישי, 916 00:51:09,490 --> 00:51:12,610 מדידה בכל פעם. כך בתאוריה, זמנים אלו גדלו 917 00:51:12,610 --> 00:51:14,860 או לפחות די קרוב לזה, 918 00:51:14,860 --> 00:51:18,090 ואכן, את אלו שממש כאן בקמפוס הם סופר קטנים. 919 00:51:18,090 --> 00:51:20,820 ברגע שאתה מתחיל ללכת בכל רחבי הארץ, זה לוקח נתונים 920 00:51:20,820 --> 00:51:24,830 עוד קצת לנסוע, קרוב יותר ל 100 אלפיות שניים, פחות או יותר. 921 00:51:24,830 --> 00:51:28,330 אבל בואו נלך עכשיו לכיוון השני. מה דעתך על אוניברסיטת קיימברידג' בבריטניה? 922 00:51:28,330 --> 00:51:32,540 תן לי במקום לרוץ traceroute של www.cam לקיימברידג', 923 00:51:32,540 --> 00:51:36,710 . Ac לאקדמי,. בריטניה, ולהיט להיכנס לכאן. 924 00:51:36,710 --> 00:51:38,830 זה היה די מהיר. 925 00:51:38,830 --> 00:51:43,300 הנתונים שלי ממש יצאו לקיימברידג' באנגליה, באותו שבריר השני של זמן. 926 00:51:43,300 --> 00:51:45,340 >> אז בואו לראות את הנתיב שלקח. 927 00:51:45,340 --> 00:51:47,520 הרווארד, אוניברסיטת הרווארד, אוניברסיטת הרווארד, פרשת דרכים בצפון, 928 00:51:47,520 --> 00:51:52,690 שהוא ספק אינטרנט, ואז זה Crossroads הצפון, ואז בום. 929 00:51:52,690 --> 00:51:58,320 מה בין השלבים 6 ו 7, נתב 6 ו 7? 930 00:51:58,320 --> 00:52:02,040 האוקיינוס ​​האטלנטי. ואנחנו להסיק זאת מהעובדה ש 931 00:52:02,040 --> 00:52:06,530 אנחנו הולכים מכאן 20 עד 80 אלפיות שניים ms כאן. 932 00:52:06,530 --> 00:52:10,050 אז משהו לקח 60 אלפיות השני, פחות או יותר, כדי להתגבר עליו. 933 00:52:10,050 --> 00:52:12,910 וזאת הייתה כנראה גוף גדול של מים. 934 00:52:12,910 --> 00:52:15,250 מה שקורה לאחר מכן? ובכן, הנה אנחנו בלונדון, 935 00:52:15,250 --> 00:52:18,860 רק 88 אלפיות שני מאוחר יותר. יותר לונדון, לונדון יותר, 936 00:52:18,860 --> 00:52:21,730 לא בטוח איפה זה, אבל נניח שזה מחוץ ללונדון, 937 00:52:21,730 --> 00:52:26,390 קיימברידג' כאן, ולבסוף - פשוטו כמשמעו, אוניברסיטת קיימברידג' 938 00:52:26,390 --> 00:52:29,500 . Something.net, ואז, סוף סוף, בקו 16, 939 00:52:29,500 --> 00:52:31,720 שרת האינטרנט שלהם נקרא ככל הנראה עקרב 940 00:52:31,720 --> 00:52:35,500 מתחת למכסת המנוע, למרות שאנחנו מכירים אותו כwww. 941 00:52:35,500 --> 00:52:38,790 הסוג של המוח נושב-, אני חושב. הפעם הראשונה שעשיתי את זה, זה לחלוטין פוצצה את דעתי. 942 00:52:38,790 --> 00:52:41,670 למרבה הצער, הרווארד חוסם סוג זה של תנועה, בדרך כלל, ברשת. 943 00:52:41,670 --> 00:52:44,340 אז אתה לא יכול לעשות את זה סופר בקלות. 944 00:52:44,340 --> 00:52:48,500 תבין, אם כי, זה כאן הוא אפשרי. 945 00:52:48,500 --> 00:52:53,630 בסדר. בואו ניקח ההפסקה שלנו 5-הרגע פה. אנחנו נחזור ולצלול עמוק יותר. 946 00:52:53,630 --> 00:53:00,850 אז אנחנו נמצאים מאחור, וסוג שלנו השתרכנו על בכמה כיוונים שונים כאן. 947 00:53:00,850 --> 00:53:03,700 אז בואו נסכם בדיוק מה שקורה כאן. 948 00:53:03,700 --> 00:53:07,990 התחלנו את השיחה מדברת על שפה זו נקראת HTML. 949 00:53:07,990 --> 00:53:10,680 שוב, לא שפת תכנות. זה רק שפת סימון 950 00:53:10,680 --> 00:53:15,490 שהוא במידה רבה על אסתטיקה ובנייה של תוכן בצורה של דף אינטרנט. 951 00:53:15,490 --> 00:53:19,220 אבל HTML, ולכן, צריך איזה מנגנון 952 00:53:19,220 --> 00:53:22,870 נסיעה בין דפדפן אינטרנט לשרת. 953 00:53:22,870 --> 00:53:28,360 HTML ולכן סוג של רוכב על גבי לשון אחרת זה, 954 00:53:28,360 --> 00:53:31,280 או יותר כמו שצריך, פרוטוקול, המכונה HTTP. 955 00:53:31,280 --> 00:53:33,730 >> וHTTP, כפי שראינו אותו עד כה, 956 00:53:33,730 --> 00:53:37,140 הוא סוג של אנלוגיה לכינוס האנושי הזה של לחיצת ידות. 957 00:53:37,140 --> 00:53:39,940 כאשר דפדפן רוצה לבקש דף משרת, 958 00:53:39,940 --> 00:53:43,450 הוא שולח כי "מקבל" בקשה מדפדפן לשרת, 959 00:53:43,450 --> 00:53:48,040 ולאחר מכן השרת מגיב עם מספר כמו 200, הכל בסדר, 960 00:53:48,040 --> 00:53:53,290 כמו גם את ה-HTML או מספר רע כמו 404, קובץ לא נמצא. 961 00:53:53,290 --> 00:53:58,220 אבל בינתיים, HTTP עצמו הוא לא באינטרנט, כשלעצמה. 962 00:53:58,220 --> 00:54:01,550 HTTP הוא רק שירות, תכונה של האינטרנט 963 00:54:01,550 --> 00:54:05,530 כמו G צ'אט הוא שירות אחר, כמו דואר אלקטרוני הוא שירות אחר. 964 00:54:05,530 --> 00:54:09,180 יש כל מיני דברים שאנחנו יכולים לעשות באינטרנט. 965 00:54:09,180 --> 00:54:12,670 HTTP הוא רק אחד מהיישומים אלה. 966 00:54:12,670 --> 00:54:17,210 אז בראש - HTTP הוא על גבי משהו אחר 967 00:54:17,210 --> 00:54:21,750 שלא לדבר בשמו, אתה אולי שמעת על ידי שם, TCP / IP. 968 00:54:21,750 --> 00:54:25,160 אז הסיפור פשוט אמרתי שיש הוא על כל 969 00:54:25,160 --> 00:54:28,720 כמה נתונים נוסעים מנקודת א 'לנקודה ב. 970 00:54:28,720 --> 00:54:30,950 ובמקרה הזה, שראינו ברמה נמוכה מאוד 971 00:54:30,950 --> 00:54:33,060 הנתב מנתב לנתב לנתב, 972 00:54:33,060 --> 00:54:35,390 כיצד הנתונים בפועל משודרים. 973 00:54:35,390 --> 00:54:40,510 אבל לאורך הדרך, זה הולך להיתקל במכשולים שונים. 974 00:54:40,510 --> 00:54:43,770 חוץ נתבים אלה, יש דברים שנקראים חומות אש באינטרנט, 975 00:54:43,770 --> 00:54:46,680 וכן נתונים, כגון שאנחנו פשוט משדרים 976 00:54:46,680 --> 00:54:49,720 ממני לסטנפורד, ממני לקיימברידג', 977 00:54:49,720 --> 00:54:54,560 הוא נשלח ל, ברמה זו, משהו שנקרא כתובת IP. 978 00:54:54,560 --> 00:54:57,340 ראינו את זה לפני רגע, וכתובת ה-IP 979 00:54:57,340 --> 00:55:02,480 רק כתובת מספרית של w.x.y.z הצורה, 980 00:55:02,480 --> 00:55:08,070 שם כל אחד מאלה הוא בין, פחות או יותר, 0 ל 255, 981 00:55:08,070 --> 00:55:10,080 למרות שאתה לא ממש יכול להשתמש בכל המספרים האלה. 982 00:55:10,080 --> 00:55:14,220 אבל כל אחד מבעלי המקום אלה הוא מספר בין 0 ל 255. 983 00:55:14,220 --> 00:55:16,820 אז כתובת ה-IP בימים אלה הם 32 סיביים. 984 00:55:16,820 --> 00:55:20,780 >> עכשיו, שנותן לנו כמה אפשרי כתובות IP בעולם? 985 00:55:20,780 --> 00:55:24,420 בערך 4 מליארד דולרים, משום שכל זמן שאנחנו סופרים בחזקים של 2 986 00:55:24,420 --> 00:55:27,760 כל הדרך עד 32 במשהו, זה בדרך כלל נותנת לנו 4 מליארד שקל. 987 00:55:27,760 --> 00:55:30,160 אז זה הרבה כתובות IP, אך ייתכן שקראת, 988 00:55:30,160 --> 00:55:32,410 או שעכשיו ייתכן שיבחין בעיתונות הפופולרית, 989 00:55:32,410 --> 00:55:36,020 דחיפה לעבר גרסה חדשה של ה-IP בשם IPv6. 990 00:55:36,020 --> 00:55:38,290 כרגע אנחנו משתמשים בגרסה 4. 991 00:55:38,290 --> 00:55:41,060 יש באמת לא הייתה גרסה 5, אנחנו רק קופצים זכות 6. 992 00:55:41,060 --> 00:55:46,760 גרסה 6 היא מתכוונת להשתמש 128 סיביות של כתובות IP, שמתחרפנת ענקית ל. 993 00:55:46,760 --> 00:55:49,430 אנחנו לא צריכים לרוץ החוצה די הרבה זמן עכשיו, 994 00:55:49,430 --> 00:55:52,980 אבל אנחנו התחלנו לרוץ החוצה 4 כתובות IP של גרסה, 995 00:55:52,980 --> 00:55:56,110 כי לכולנו יש דברים לא רק כמו מחשבים ניידים ומחשבים שולחניים, 996 00:55:56,110 --> 00:55:58,700 הרבה מאתנו יש טלפונים, הרבה מאתנו יש מכשירים אחרים 997 00:55:58,700 --> 00:56:01,600 כמו TiVo וכמו שיש כתובות IP בעצמם. 998 00:56:01,600 --> 00:56:03,720 הרווארד עצמו יש עשרות אלף מחשבים. 999 00:56:03,720 --> 00:56:07,970 אז באמת העולם הולך ואוזל של כתובות IP, לפחות בצורה זו. 1000 00:56:07,970 --> 00:56:10,340 וכך, במשך השנים הקרובות, אתה הולך לראות את הכתובות 1001 00:56:10,340 --> 00:56:12,870 במחשבים שלך כנראה משתנה באיטיות 1002 00:56:12,870 --> 00:56:16,740 כאשר יותר ויותר חברות ואוניברסיטות תתחלנה לתמוך בגרסה החדשה יותר. 1003 00:56:16,740 --> 00:56:22,770 אבל כתובת IP היא לא מספיק למחשב כדי לבקש נתונים ממחשב ב. 1004 00:56:22,770 --> 00:56:24,950 בגלל מחשב ב יכול להיות שרת, 1005 00:56:24,950 --> 00:56:27,600 ושרת, כפי שהזכרתי קודם, יכול לעשות צרורות של דברים. 1006 00:56:27,600 --> 00:56:29,940 הוא יכול לארח דפי אינטרנט, זה יכול להיות שרת דואר אלקטרוני, 1007 00:56:29,940 --> 00:56:32,310 זה יכול להיות שרת סקייפ, זה יכול להיות שרת צ'אט G. 1008 00:56:32,310 --> 00:56:35,870 >> כל שירותים שונים שיכולים להינתן על שרת 1009 00:56:35,870 --> 00:56:38,330 אפשר הכל, מבחינה פיזית, להיות על אותו מחשב. 1010 00:56:38,330 --> 00:56:40,380 אז בנוסף לכתובות IP, 1011 00:56:40,380 --> 00:56:43,250 בעולם יש דברים בשם יציאות באינטרנט. 1012 00:56:43,250 --> 00:56:47,830 נמל הוא רק מספר, כך שיש מספר ייחודי עבור HTTP. 1013 00:56:47,830 --> 00:56:50,280 המספר שלו הוא 80. 1014 00:56:50,280 --> 00:56:55,870 HTTP משתמש גם במספר 443, אבל באופן ספציפי יותר, לHTTPS המוצפן. 1015 00:56:55,870 --> 00:57:00,030 בכל פעם שאתה רואה את זה, למאובטח, שמשתמש במספר אחר. 1016 00:57:00,030 --> 00:57:06,580 יש מספרים אחרים, כמו 25, המשמשים למשהו שנקרא SMTP, הידוע גם בכינויו דואר אלקטרוני. 1017 00:57:06,580 --> 00:57:09,620 יש משהו שנקרא 22 עבור SSH, 1018 00:57:09,620 --> 00:57:11,850 ויש חבורה שלמה של נמלים אחרות שם בחוץ. 1019 00:57:11,850 --> 00:57:14,460 עכשיו, אנחנו בני אדם כמעט ולא רואה את המספרים האלה. 1020 00:57:14,460 --> 00:57:21,970 עם זאת, בעת הקלדה בכתובת כמו http://www.facebook.com, 1021 00:57:21,970 --> 00:57:26,560 דפדפן חשאי הכנסת 80, כי אתה משתמש בפרוטוקול HTTP. 1022 00:57:26,560 --> 00:57:30,630 אם, במקום זאת, HTTPS סוג, זה חשאי הכנסה 443. 1023 00:57:30,630 --> 00:57:35,180 ואנחנו יכולים לראות את זה סוג של ידני אם אני חונה בראוור 1024 00:57:35,180 --> 00:57:41,850 וללכת לhttp://www.facebook.com:80. 1025 00:57:41,850 --> 00:57:44,550 לכן במפורש מצטט לא רק את שמו של האתר 1026 00:57:44,550 --> 00:57:47,650 אבל היציאה שאני רוצה לדבר איתו, והקש על Enter. 1027 00:57:47,650 --> 00:57:50,170 שים לב, זה נעלם, כי הדפדפן מניח, 1028 00:57:50,170 --> 00:57:53,360 הו, 80, אני לא אפילו לא אטרח להראות לך את זה. 1029 00:57:53,360 --> 00:57:56,400 אבל הסיבה לכך היא שאם באמת הייתי רוצה לשלוח מישהו דוא"ל, 1030 00:57:56,400 --> 00:58:02,340 אני באמת תהיה לשלוח להם את זה ביציאה 25, כי להיות ה-SMTP. 1031 00:58:02,340 --> 00:58:04,890 קצת פשטני, אבל כמה מכם יש חברים 1032 00:58:04,890 --> 00:58:09,290 שבאמת עובדים בפייסבוק, והם, באופן דומה, יש שרתים שמקבלים דוא"ל. 1033 00:58:09,290 --> 00:58:12,610 >> בכל פעם שאתה שולח דואר אלקטרוני, מה gmail עושה בשבילך 1034 00:58:12,610 --> 00:58:14,960 או Outlook או כל תכנית אתה משתמש, 1035 00:58:14,960 --> 00:58:19,270 זה סוג של החדרת חשאי גם את המספר הזה, 25, במקרה זה. 1036 00:58:19,270 --> 00:58:24,490 זהו זה שילוב של כתובת ומספר שמזהה באופן ייחודי ה-IP 1037 00:58:24,490 --> 00:58:29,190 מחשב באינטרנט ושירות מסוים באותו מחשב. 1038 00:58:29,190 --> 00:58:33,460 עכשיו, כמובן, רובנו כנראה מעולם לא הקלידה באופן ידני כתובת IP. 1039 00:58:33,460 --> 00:58:37,340 אולי יש לך במכשיר, אבל בעולם האמיתי, לא כל כך הרבה. 1040 00:58:37,340 --> 00:58:42,750 למה אנחנו לא להקליד כתובות IP לדפדפנים? 1041 00:58:42,750 --> 00:58:45,860 כך זה עובד, למעשה, אנחנו יכולים לראות את זה, תן לי להראות לך 1042 00:58:45,860 --> 00:58:50,000 פקודה אחת אחרת שצריך לעבוד ביותר בכל מקום בקמפוס של אוניברסיטת הרווארד במקינטוש או ב-PC. 1043 00:58:50,000 --> 00:58:53,970 אין בפקודה זו נקראת nslookup, בדיקת שרת שם. 1044 00:58:53,970 --> 00:58:59,960 אם אני מסתכל למעלה www.cnn.com, מתברר כי CNN יש - הו, מעניין. 1045 00:58:59,960 --> 00:59:03,180 CNN החל להשתמש בשירותי אינטרנט של אמזון. 1046 00:59:03,180 --> 00:59:06,380 אתה אולי יודע של מחשוב ענן, אחד של אמזון של השחקנים הגדולים במחשוב ענן. 1047 00:59:06,380 --> 00:59:10,240 מה שאני פשוט לא היה, אמרתי, 'תן לי את הכתובת של שרת האינטרנט של CNN,' 1048 00:59:10,240 --> 00:59:14,090 אבל מסתבר ששרת האינטרנט של CNN מנוהל על ידי אמזון, 1049 00:59:14,090 --> 00:59:16,030 אמזון שירותי אינטרנט, זה מצביע. 1050 00:59:16,030 --> 00:59:19,680 ואת הכתובת של שרת שזה כאן. 1051 00:59:19,680 --> 00:59:22,350 אז אני לא בטוח אם זה יעבוד, כי הם לא נהגו להשתמש באמזון. 1052 00:59:22,350 --> 00:59:32,830 אבל בואו ננסה את זה; כתובת http://, IP, זן, ו-- 1053 00:59:32,830 --> 00:59:35,690 זה הולך לעבוד? 1054 00:59:35,690 --> 00:59:39,280 כן. הוא הולך לעבודה. אינטרנט הוא כיום סופר איטי. 1055 00:59:39,280 --> 00:59:43,680 אבל, ברגע אחד, אתה תראה איזה סיפור חדשות. 1056 00:59:43,680 --> 00:59:48,360 הנה. הבנק אוף אמריקה שנתבע. בסדר. 1057 00:59:48,360 --> 00:59:54,000 >> הסיבה לכך היא כתובת ה-IP זה פשוט קורית שם נרדף על ידי www.cnn.com. 1058 00:59:54,000 --> 00:59:59,920 כמובן, זה יהיה נורא שיווק לומר, לבקר אותנו באינטרנט ב50.112.94.127. 1059 00:59:59,920 --> 01:00:02,370 אתה לעולם לא הייתי זוכר. כך שאפילו בימים אלה אתם אולי זוכרים דברים 1060 01:00:02,370 --> 01:00:07,210 כמו 1-800-COLLECT או המנמוניקה העולם בא עם מספרי טלפון. 1061 01:00:07,210 --> 01:00:09,540 אשר, לפני טלפונים סלולריים, ולא היו קשה לזכור 1062 01:00:09,540 --> 01:00:11,800 עד שאתה יכול פשוט להקליד אותו ובתשכח מזה. 1063 01:00:11,800 --> 01:00:15,730 אז האינטרנט, גם לה יש אמנה זו של שמות וכתובות IP, 1064 01:00:15,730 --> 01:00:17,770 ויש את הדברים האלה בחוץ נקראים שרתי DNS, 1065 01:00:17,770 --> 01:00:23,870 שרתי שם דומיין מערכות, המתרגמים כתובות IP לשמות ולהיפך. 1066 01:00:23,870 --> 01:00:26,340 אז זה מה שקורה מתחת למכסת המנוע. 1067 01:00:26,340 --> 01:00:29,540 בסופו, יש לנו פרוטוקול TCP / IP, שהוא פרוטוקול נמוך מאוד ברמה זו 1068 01:00:29,540 --> 01:00:32,570 כי, באמת, פשוט מקבל 0 ו 1 של ברחבי רשת האינטרנט, 1069 01:00:32,570 --> 01:00:36,030 והיא עושה זאת על ידי לשים אותם לתוך מעטפה וירטואלית, 1070 01:00:36,030 --> 01:00:38,820 אם תרצה, וכותב בצד החיצוני של המעטפה 1071 01:00:38,820 --> 01:00:43,930 כתובת IP של היעד, כמו גם את מספר היציאה המספרי 1072 01:00:43,930 --> 01:00:47,520 של השירות שביעד שהוא רוצה לדבר איתו. 1073 01:00:47,520 --> 01:00:51,060 בינתיים, על המעטפה יש גם משהו ידוע ככתובת שולח, 1074 01:00:51,060 --> 01:00:55,600 שכתובת ה-IP שלך, כך שכאשר CNN מקבל חבילת המידע ממך, 1075 01:00:55,600 --> 01:00:58,710 פותח מעטפה הווירטואלית הזה, רואה שאתה רוצה בדף הבית, 1076 01:00:58,710 --> 01:01:04,630 הוא יודע מחלק השולח של מעטפה וירטואלית, זה מי לשלוח חזרה לHTML. 1077 01:01:04,630 --> 01:01:07,470 אז בואו נסתכל על זה בפירוט קצת יותר. 1078 01:01:07,470 --> 01:01:11,370 זה מחברה שנקראת אריקסון, מכמה שנים אחורה. 1079 01:01:11,370 --> 01:01:14,780 והם לקחו כמה חירויות עם איך האינטרנט עובד באמת, 1080 01:01:14,780 --> 01:01:18,920 אבל זה מצייר תמונה הרבה יותר ויזואלי מגיר לכאן בלבד. 1081 01:01:18,920 --> 01:01:26,690 אז אני נותן לך "קצת באינטרנט". 1082 01:02:26,660 --> 01:02:29,840 >> [קריין] בפעם הראשונה בהיסטוריה, 1083 01:02:29,840 --> 01:02:35,260 אנשים ומכונות עובדים יחד, הגשמת חלום. 1084 01:02:35,260 --> 01:02:38,910 כוח המאחד שאינו יודע גבולות גיאוגרפיים. 1085 01:02:38,910 --> 01:02:43,230 ללא הבדל גזע, דת או צבע. 1086 01:02:43,230 --> 01:02:47,770 עידן חדש שבו תקשורת באמת מביאה אנשים יחד. 1087 01:02:47,770 --> 01:02:50,070 זהו 1088 01:02:50,070 --> 01:02:54,980 השחר הנקי. 1089 01:02:54,980 --> 01:03:04,640 רוצה לדעת איך זה עובד? לחץ כאן כדי להתחיל את המסע שלך לרשת. 1090 01:03:04,640 --> 01:03:07,890 עכשיו, בדיוק מה שקרה בעת לחיצה על הקישור הזה? 1091 01:03:07,890 --> 01:03:10,150 אתה התחלת זרימת המידע. 1092 01:03:10,150 --> 01:03:13,310 מידע זה עובר למטה לחדר הדואר האישי שלך 1093 01:03:13,310 --> 01:03:18,500 בי חבילות IP מר, מתייגות אותו, ושולחת אותו לדרך. 1094 01:03:18,500 --> 01:03:20,960 כל מנה היא מוגבלת בגודלו. 1095 01:03:20,960 --> 01:03:23,880 חדר הדואר צריך להחליט כיצד לחלק את המידע 1096 01:03:23,880 --> 01:03:26,070 וכיצד לארוז אותו. 1097 01:03:26,070 --> 01:03:29,550 כעת, החבילה זקוקה לתווית המכילה מידע חשוב 1098 01:03:29,550 --> 01:03:35,570 כגון כתובת השולח, כתובתו של כונס הנכסים, וסוג החבילה שהוא. 1099 01:03:51,700 --> 01:03:54,980 בגלל המנה המסוימת הזה היא יוצא לאינטרנט, 1100 01:03:54,980 --> 01:03:57,720 הוא גם מקבל כתובת לשרת Proxy, 1101 01:03:57,720 --> 01:04:01,520 שיש לו תפקיד מיוחד, כפי שנראים בהמשך. 1102 01:04:01,520 --> 01:04:06,650 המנה עכשיו השיקה גבי הרשת המקומית, או LAN. 1103 01:04:06,650 --> 01:04:10,160 רשת זו משמשת לחיבור כל המחשבים המקומיים ' 1104 01:04:10,160 --> 01:04:15,900 נתבים, מדפסות, וכן הלאה, להחלפת מידע בתוך החומות הפיזיות של הבניין. 1105 01:04:15,900 --> 01:04:20,290 LAN היא מקום די מבוקר, ולמרבה הצער, 1106 01:04:20,290 --> 01:04:23,950 תאונות יכולות לקרות. 1107 01:04:31,190 --> 01:04:34,710 הכביש המהיר של רשת ה-LAN הוא ארוז עם כל סוגי המידע. 1108 01:04:34,710 --> 01:04:38,900 אלו הן מנות IP, Novell מנות, AppleTalk מנות. 1109 01:04:38,900 --> 01:04:41,270 הם הולכים נגד כיוון תנועה, כרגיל. 1110 01:04:41,270 --> 01:04:44,260 הנתב המקומי קורא את הכתובת ואם יש צורך, 1111 01:04:44,260 --> 01:04:48,520 מרים את המנה לרשת אחרת. 1112 01:04:48,520 --> 01:04:54,270 אה, את הנתב. סמל של שליטה בעולם שנראה לא מאורגן. 1113 01:04:54,270 --> 01:05:05,480 [נתב ממלמל ומדבר לעצמו] 1114 01:05:05,480 --> 01:05:10,030 >> [קריין] הנה הוא, שיטתי, אדיש, ​​שיטתי, 1115 01:05:10,030 --> 01:05:14,150 שמרני, ולפעמים לא ממש עד מהירות. 1116 01:05:14,150 --> 01:05:17,680 אבל לפחות הוא מדויק, על פי רוב. 1117 01:05:32,270 --> 01:05:36,820 כמנות לעזוב את הנתב, שהם עושים את דרכם לאינטרנט של החברה 1118 01:05:36,820 --> 01:05:40,830 ואת הראש של מתג הנתב. 1119 01:05:40,830 --> 01:05:46,250 קצת יעיל יותר מהנתב, מתג הנתב משחק מהר ומשוחרר עם מנות IP, 1120 01:05:46,250 --> 01:05:48,920 זריזות ניתובם לאורך דרך. 1121 01:05:48,920 --> 01:05:52,130 'אשף פינבול, "דיגיטלי, אם תרצה. 1122 01:05:52,130 --> 01:06:04,270 [מתג נתב מדבר לעצמו] 1123 01:06:09,830 --> 01:06:12,150 [קריין] כפי שמנות מגיעות לייעדם, 1124 01:06:12,150 --> 01:06:14,740 הם נאספים על ידי ממשק הרשת, 1125 01:06:14,740 --> 01:06:18,040 מוכן לשליחה לרמה הבאה. 1126 01:06:18,040 --> 01:06:21,010 במקרה זה, ה-proxy. 1127 01:06:21,010 --> 01:06:25,040 פרוקסי משמש חברות רבות כסוג של איש באמצע 1128 01:06:25,040 --> 01:06:27,630 כדי להפחית את העומס על חיבור לאינטרנט 1129 01:06:27,630 --> 01:06:32,240 ומטעמי ביטחון, גם כן. 1130 01:06:32,240 --> 01:06:38,750 כפי שניתן לראות, המנות הן כל גדלים שונים בהתאם את התוכן שלהם. 1131 01:06:55,210 --> 01:07:01,890 פרוקסי פותח את החבילה ומחפש את כתובת האינטרנט או את כתובת אתר. 1132 01:07:01,890 --> 01:07:04,950 תלויה אם הכתובה מקובלת, 1133 01:07:04,950 --> 01:07:08,000 המנה נשלחת לאינטרנט. 1134 01:07:13,890 --> 01:07:19,630 יש, עם זאת, חלק מכתובות שאינם עומדים באישור פרוקסי. 1135 01:07:19,630 --> 01:07:25,680 כלומר, הנחיות ארגוניות או ניהול. 1136 01:07:25,680 --> 01:07:30,580 אלה עסקו בשיפוט המהיר. 1137 01:07:30,580 --> 01:07:32,410 יהיה לנו שום דבר כזה. 1138 01:07:32,410 --> 01:07:36,350 למי שעושה את זה, זה על הכביש שוב. 1139 01:07:46,850 --> 01:07:53,310 >> בא למעלה, חומת האש. 1140 01:07:53,310 --> 01:07:57,410 חומת האש הארגונית משרתת שתי מטרות. 1141 01:07:57,410 --> 01:08:02,420 הוא מונע כמה דברים ולא מגעילים מהאינטרנט מלבוא באינטראנט, 1142 01:08:02,420 --> 01:08:10,280 וזה גם יכול למנוע מידע ארגוני רגיש מנשלח החוצה אל האינטרנט. 1143 01:08:10,280 --> 01:08:12,980 מהרגע שעבר את חומת האש, נתב מרים את המנה 1144 01:08:12,980 --> 01:08:18,180 וממקם אותו על כביש צר בהרבה, או רוחב פס, כמו שאנחנו אומרים. 1145 01:08:18,180 --> 01:08:23,720 ברור שהדרך אינה רחבה מספיק כדי לקחת את כולם. 1146 01:08:23,720 --> 01:08:29,319 עכשיו, אתה עשוי לתהות מה קורה לכל המנות האלה שלא עושות את זה לאורך כל הדרך. 1147 01:08:29,319 --> 01:08:32,270 ובכן, כאשר מר IP אינו מקבל הכרה 1148 01:08:32,270 --> 01:08:35,000 שחבילה התקבלה בבוא זמן, 1149 01:08:35,000 --> 01:08:39,890 הוא פשוט שולח מנות תחליף. 1150 01:08:39,890 --> 01:08:44,760 כעת אנחנו מוכנים להיכנס לעולם של האינטרנט. 1151 01:08:44,760 --> 01:08:49,370 קורי עכביש של רשתות מקושרות אשר משתרעים כל כדור הארץ. 1152 01:08:49,370 --> 01:08:56,050 הנה, נתבים ומתגים לבסס קשרים בין רשתות. 1153 01:08:56,050 --> 01:08:59,200 עכשיו, הנקי היא סביבה שונה לחלוטין ממה שאתה תמצא 1154 01:08:59,200 --> 01:09:01,569 בתוך החומות המגנות של הרשת המקומית שלך. 1155 01:09:01,569 --> 01:09:04,060 כאן, זה המערב הפרוע. 1156 01:09:04,060 --> 01:09:06,359 שפע של מקום, שפע של הזדמנויות, 1157 01:09:06,359 --> 01:09:09,760 הרבה דברים לחקור ומקומות ללכת. 1158 01:09:09,760 --> 01:09:12,760 הודות לשליטה ורגולציה מעט מאוד, 1159 01:09:12,760 --> 01:09:18,300 רעיונות חדשים מוצאים קרקע פורה לדחוף את מעטפת האפשרויות שלהם. 1160 01:09:18,300 --> 01:09:22,330 אבל בגלל החופש הזה, גם סכנות מסוימות אורבות. 1161 01:09:22,330 --> 01:09:27,000 אתה לעולם לא תדע מתי תפגוש פינג המפחיד של מוות, 1162 01:09:27,000 --> 01:09:29,890 גרסה מיוחדת של פינג בקשה רגילה, 1163 01:09:29,890 --> 01:09:35,720 שאיזה אידיוט חשב עד בלגן מארחים תמימים. 1164 01:09:35,720 --> 01:09:39,130 הדרך שלנו לקחת את המנות עשויה להיות באמצעות לווין, 1165 01:09:39,130 --> 01:09:43,090 קווי טלפון, אלחוטי או כבלים אפילו טרנס. 1166 01:09:43,090 --> 01:09:46,520 לא תמיד הם ייקחו את המסלולים המהירים ביותר או קצרים ביותר אפשריים, 1167 01:09:46,520 --> 01:09:50,290 אבל הם יגיעו לשם בסופו. 1168 01:09:50,290 --> 01:09:55,230 אולי זו הסיבה שהוא נקרא לעתים "World Wide מתן". 1169 01:09:55,230 --> 01:09:57,980 אבל כאשר הכל פועל בצורה חלקה, 1170 01:09:57,980 --> 01:10:03,800 אתה יכול לעקוף את העולם חמש פעמים בירידה של כובע, פשוטו כמשמעו. 1171 01:10:03,800 --> 01:10:08,230 והכול במחיר של שיחה מקומית או פחות. 1172 01:10:08,230 --> 01:10:15,070 לקראת סופו של היעד שלנו, אנחנו מוצאים את חומת אש אחרת. 1173 01:10:15,070 --> 01:10:18,420 >> בהתאם לנקודת המבט שלך כחבילת נתונים, 1174 01:10:18,420 --> 01:10:23,730 חומת האש יכולה להיות מעוז של ביטחון או יריב אימתני. 1175 01:10:23,730 --> 01:10:28,530 הכל תלוי באיזה צד אתה נמצא ומה הכוונות שלך. 1176 01:10:28,530 --> 01:10:34,990 חומת האש נועדה לאפשר רק במנות אלה העומדים בקריטריונים שלה. 1177 01:10:34,990 --> 01:10:39,360 חומת אש זו פועלת ביציאות 80 ו 25. 1178 01:10:39,360 --> 01:10:46,630 כל ניסיונות הזנה דרך יציאות אחרות סגורים לעסקים. 1179 01:10:57,660 --> 01:11:03,480 יציאה 25 משמשת למנות אלקטרוניות, 1180 01:11:03,480 --> 01:11:10,720 בזמן יציאה 80 היא הכניסה למנות מהאינטרנט לשרת האינטרנט. 1181 01:11:10,720 --> 01:11:15,080 בתוך חומת האש, מנות מוקרנות באופן יסודי יותר. 1182 01:11:15,080 --> 01:11:17,970 מנות מסוימות להפוך אותו בקלות במכס, 1183 01:11:17,970 --> 01:11:21,420 בעוד שאחרים נראים קצת מפוקפקים. 1184 01:11:21,420 --> 01:11:24,060 כעת, קצין חומת האש לא מצליח לשטות בקלות, 1185 01:11:24,060 --> 01:11:32,120 כגון כאשר פינג זה של מנות מוות מנסה להסוות את עצמו כמנת פינג נורמלית. 1186 01:11:32,120 --> 01:11:37,520 [קצין חומת אש מדבר מנות] 1187 01:11:37,520 --> 01:11:40,510 [קריין] למנות מזל מספיק כדי לעשות את זה כל כך רחוק ההם, 1188 01:11:40,510 --> 01:11:45,730 המסע כמעט נגמר. 1189 01:11:45,730 --> 01:11:52,130 זה רק קו על הממשק להיות נלקח לשרת האינטרנט. 1190 01:11:52,130 --> 01:11:55,440 כיום, שרת אינטרנט יכול לרוץ על הרבה דברים, 1191 01:11:55,440 --> 01:11:59,230 ממיינפריים למצלמת אינטרנט למחשב על השולחן שלך. 1192 01:11:59,230 --> 01:12:01,720 למה לא המקרר שלך? 1193 01:12:01,720 --> 01:12:04,870 עם ההתקנה הנכונה, אתה יכול לברר אם יש לך את המצרכים 1194 01:12:04,870 --> 01:12:08,390 לCacciatore עוף, או אם יש לך ללכת לקניות. 1195 01:12:08,390 --> 01:12:11,760 זכור, זה השחר של הרשת. 1196 01:12:11,760 --> 01:12:17,310 כמעט כל דבר אפשרי. 1197 01:12:17,310 --> 01:12:20,440 אחד אחד, את המנות קבלה, 1198 01:12:20,440 --> 01:12:26,320 פתח, ופרק. 1199 01:12:26,320 --> 01:12:31,200 המידע שהם מכילים, כלומר, הבקשה לקבלת מידע, 1200 01:12:31,200 --> 01:12:34,830 הוא נשלח ליישום בשרת האינטרנט. 1201 01:12:41,540 --> 01:12:47,140 המנה עצמו ממוחזר, 1202 01:12:47,140 --> 01:12:57,570 מוכן לשימוש נוסף, ומלא במידע המבוקש שלך, 1203 01:12:57,570 --> 01:13:03,340 התייחס, ונשלח בדרכה חזרה אליך. 1204 01:13:03,340 --> 01:13:13,250 חזור עבר חומת האש, נתבים, ועל דרך לאינטרנט. 1205 01:13:13,250 --> 01:13:21,020 חזרה דרך חומת האש הארגונית שלך 1206 01:13:21,020 --> 01:13:24,180 ועל הממשק שלך, 1207 01:13:24,180 --> 01:13:31,180 מוכן לספק דפדפן האינטרנט שלך עם המידע שבקשת. 1208 01:13:31,180 --> 01:13:39,840 כלומר, זה סרט. 1209 01:13:39,840 --> 01:13:43,550 מרוצה ממאמציהם, ולבטוח בעולם הטוב יותר, 1210 01:13:43,550 --> 01:13:50,250 מנות נתונינו הנאמנים לרכב את האושר אל השקיעה של יום נוסף, 1211 01:13:50,250 --> 01:13:56,880 ידיעה מלאה הם שירתו את אדוניהם טובים. 1212 01:13:56,880 --> 01:14:02,560 עכשיו, זה לא הסוף טוב? 1213 01:14:02,560 --> 01:14:07,040 [מלאן] אוקיי, זה מספיק. ניראה אותך בשבוע הבא. 1214 01:14:07,040 --> 01:14:10,040 [CS50.TV]