1 00:00:00,000 --> 00:00:11,470 2 00:00:11,470 --> 00:00:12,764 >> 1 דובר: הכל, ממש ברכה בחזרה. 3 00:00:12,764 --> 00:00:14,140 זה CS50. 4 00:00:14,140 --> 00:00:16,800 וזו תחילתו של השבוע תשע. 5 00:00:16,800 --> 00:00:19,960 וזו היא ההתחלה של שאר את הזמן שלך בCS50, שבו אנו 6 00:00:19,960 --> 00:00:23,170 מעבר עכשיו, סוף סוף, לאינטרנט היבט של הקורס, שבו תוכל 7 00:00:23,170 --> 00:00:26,200 מוצא שהרבה את היסודות ש אנחנו כבר מייצאים לשבועות 8 00:00:26,200 --> 00:00:29,270 עדיין חוזרים לבקר, או לרדוף, אותנו. 9 00:00:29,270 --> 00:00:33,440 אבל עכשיו, אתה תמצא שזה סדר הגודל יותר קל 10 00:00:33,440 --> 00:00:36,540 לבצע משימות מסוימות ו לפתור בעיות מסוימות - 11 00:00:36,540 --> 00:00:41,050 עד כדי כך שגם אם חשב סטים בעייתיים מסוימים היו כיף בהם 12 00:00:41,050 --> 00:00:44,200 הדרך שלו, אני חושב שאתה תמצא כי עמ להגדיר 7, עמ '8 להגדיר, ולאחר מכן, 13 00:00:44,200 --> 00:00:47,990 סופו של דבר, פרויקט הגמר יהיה כל הסיפוק יותר, כי אתה 14 00:00:47,990 --> 00:00:51,830 מוצא שאנחנו מתחילים לקחת כמובן מאליו עכשיו דברים כמו ניהול זיכרון, ו 15 00:00:51,830 --> 00:00:54,190 מצביעים, ומה קורה על מתחת למכסת המנוע. 16 00:00:54,190 --> 00:00:57,310 ושוב, נושאיות, לאורך כל סמסטר כבר שכבות זו 17 00:00:57,310 --> 00:00:58,030 ושכבות. 18 00:00:58,030 --> 00:01:00,530 ועכשיו אנחנו סוג של עד כאן, עומד על 19 00:01:00,530 --> 00:01:01,930 כתפיים של שבועות האחרונים. 20 00:01:01,930 --> 00:01:05,360 >> עכשיו, זוכר מהפעם האחרונה שאנחנו דיבר על איך האינטרנט עובד. 21 00:01:05,360 --> 00:01:08,120 וזה היה אולי פשטני, אך יש לזכור כי 22 00:01:08,120 --> 00:01:12,960 לכל מחשב בעולם ה-IP כתובת, אם כי זה קצת 23 00:01:12,960 --> 00:01:14,570 פשטנות עדיין. 24 00:01:14,570 --> 00:01:18,180 וכתובות אלה משמשות לייחודיים מכונות מזהה, כך ש 25 00:01:18,180 --> 00:01:22,010 כאשר אתה שולח את המידע, או מנות, כביכול, הם יכולים להיות מקור 26 00:01:22,010 --> 00:01:24,000 כתובת וכתובת יעד. 27 00:01:24,000 --> 00:01:27,830 וניתן להשתמש בן כתובות ה-IP האלה גם לטוב וגם לרע, 28 00:01:27,830 --> 00:01:29,270 כדי לעקוב אחר אותך, למשל. 29 00:01:29,270 --> 00:01:32,200 למעשה, בכל אחד מכם עם מחשב נייד לפתוח עכשיו, או בטלפון שלך 30 00:01:32,200 --> 00:01:35,070 בכיס, יש לו כתובת ה-IP ברשת של אוניברסיטת הרווארד. 31 00:01:35,070 --> 00:01:39,120 וזה לא כל כך קשה לתאם את זה כדי ושבו אתה 32 00:01:39,120 --> 00:01:40,180 הם בימים אלה. 33 00:01:40,180 --> 00:01:42,090 אבל עוד על כך אולי בעתיד. 34 00:01:42,090 --> 00:01:46,510 >> עכשיו חשבתי שאני רוצה להחזיר חלק זכרונות [? לשפר?] ואתן לך 35 00:01:46,510 --> 00:01:49,360 סרטון נוסף מתכניתך אולי תמצא מוכר. 36 00:01:49,360 --> 00:01:52,710 אם היינו יכול לעמעם את האורות רק כמה שניות. 37 00:01:52,710 --> 00:01:53,960 את Numb3rs הפרקים. 38 00:01:53,960 --> 00:01:57,510 39 00:01:57,510 --> 00:02:00,540 >> רמקול 2: זה כתובת IPP4 32 סיביות. 40 00:02:00,540 --> 00:02:01,610 >> רמקול 3: IPP, כמו באינטרנט? 41 00:02:01,610 --> 00:02:02,968 >> רמקול 2: רשת פרטית. 42 00:02:02,968 --> 00:02:04,960 לרשת הפרטית של Amita. 43 00:02:04,960 --> 00:02:16,930 44 00:02:16,930 --> 00:02:19,602 היא כל כך מדהימה. 45 00:02:19,602 --> 00:02:21,030 >> רמקול 3: בחייך, צ'רלי. 46 00:02:21,030 --> 00:02:21,490 >> רמקול 2: זה. 47 00:02:21,490 --> 00:02:22,470 כתובת ה-IP מראה. 48 00:02:22,470 --> 00:02:27,680 היא מאפשרת לנו לצפות במה היא עושה בזמן אמת. 49 00:02:27,680 --> 00:02:30,930 >> 1 רמקול: אוקיי, אז כמה דברים לא בסדר בתמונה הזאת. 50 00:02:30,930 --> 00:02:32,920 אז אחת, ואת זה הוא מקובל, זה הוא למעשה 51 00:02:32,920 --> 00:02:34,400 לא כתובת IP חוקית. 52 00:02:34,400 --> 00:02:38,190 כתובת IP חוקית צריכה להיות מספרים של הטופס w.x.y.z, שבו כל אחד מ 53 00:02:38,190 --> 00:02:40,000 המכתבים האלה הוא 0 עד 255. 54 00:02:40,000 --> 00:02:42,330 אבל זה בסדר, כי בדיוק כמו סרטים שבם הם מספרי טלפון מזויפים, 55 00:02:42,330 --> 00:02:43,520 הם מזייפים את כתובות ה-IP. 56 00:02:43,520 --> 00:02:45,230 אתה לא ממש פגע שרתים אמיתיים. 57 00:02:45,230 --> 00:02:46,760 >> אבל אכפת לך, זה דפדפן. 58 00:02:46,760 --> 00:02:50,760 ודפדפנים לא מתחילים פלט קוד מחשב כזה. 59 00:02:50,760 --> 00:02:54,230 ואם נתבונן קצת יותר לעומק, שים לב כי השפה שהם רואים 60 00:02:54,230 --> 00:02:57,040 על המסך היא שפה הנקראת Objective C, המהווה את השפה ב 61 00:02:57,040 --> 00:02:59,520 אפליקציות אייפון שנכתבות, במיוחד אלה הקשורים 62 00:02:59,520 --> 00:03:03,540 עפרונות צבעוניים, כפי שניתן לראות מ קוד המקור כאן. 63 00:03:03,540 --> 00:03:06,600 64 00:03:06,600 --> 00:03:07,560 >> אוקיי, אני חשבתי שזה מצחיק. 65 00:03:07,560 --> 00:03:12,240 אז קטע הקוד הזה יש בהחלט מה לעשות עם כל מה שזה 66 00:03:12,240 --> 00:03:13,940 פרק מסוים היה עליו. 67 00:03:13,940 --> 00:03:17,590 אז היא סוג של הבדיחה על האנשים לוקח לזה מובן מאליו. 68 00:03:17,590 --> 00:03:20,220 אבל זה לא כל כך קשה כדי לקבל פרטים אלה הנכונים טכניים. 69 00:03:20,220 --> 00:03:21,980 והייתי ממליץ לך. 70 00:03:21,980 --> 00:03:25,530 ולמעשה, 50 ייתכן מאוד לקלקל הרבה תוכניות טלביזיה וסרטים או שאתה 71 00:03:25,530 --> 00:03:27,320 בגלל שאתה תמצא שזה רק לא ניתן מה שהם מחפשים 72 00:03:27,320 --> 00:03:28,630 עושה על המסך. 73 00:03:28,630 --> 00:03:31,750 אבל אכן, זה הקוד שאתה עשוי לראות את זה ביישומי iPhone 74 00:03:31,750 --> 00:03:33,640 או יישום של Mac OS. 75 00:03:33,640 --> 00:03:35,685 יש לו שום דבר מה לעשות עם ביטחון. 76 00:03:35,685 --> 00:03:38,610 אז לפקוח עין במשך יותר דברים שכיף כאלה כמו ש. 77 00:03:38,610 --> 00:03:42,720 >> אבל היום אנו מתחילים לצלול בבאמת עמוק למגוון שלם של שפות. 78 00:03:42,720 --> 00:03:45,410 אכן, אחד מהעל מזנונים של חלק זה של 79 00:03:45,410 --> 00:03:51,815 כמובן אין בכך כדי ללמוד איך לתכנת ב-PHP, לא ללמוד SQL כשלעצמה, לא 80 00:03:51,815 --> 00:03:58,100 ללמוד JavaScript כשלעצמה, אלא ללמד את עצמך איך ללמד 81 00:03:58,100 --> 00:04:02,030 בעצמך שפות חדשות, כי, אכן, אנו מתחילים לקחת עכשיו 82 00:04:02,030 --> 00:04:06,020 גלגלי עזר מכך שלאחר סוף, כמובן, אתה לא מצפה 20 83 00:04:06,020 --> 00:04:08,890 מפרט דף כדי לספר לכם איך כדי ליישם את תכנית כלשהי. 84 00:04:08,890 --> 00:04:12,970 יש לך מספיק חומרים בך נפש, ומספיק כלים בכלי שלך 85 00:04:12,970 --> 00:04:15,750 ערכה, שבה להתחיל בבנייה פתרונות לבעיות המעניינים את 86 00:04:15,750 --> 00:04:19,130 לך על איזו קבוצת תלמידים, עבור חלק פרויקט המחקר, או באמת כל דבר 87 00:04:19,130 --> 00:04:20,140 לעניין אותך. 88 00:04:20,140 --> 00:04:24,150 >> אז לשם כך, זוכר שזה היה התמונה שציירנו אותו בפעם האחרונה. 89 00:04:24,150 --> 00:04:27,620 וזה שני מחשבים, ולקוח ניתק, מדבר אחד לשני. 90 00:04:27,620 --> 00:04:31,130 ואת הפרוטוקול, את השפה, ולכן כדי לדבר, ששני המחשבים האלה קורים 91 00:04:31,130 --> 00:04:33,220 שמדבר נקרא HTTP. 92 00:04:33,220 --> 00:04:37,730 וזה רק בשימוש על ידי הפרוטוקול מחשבים להעברת מידע על 93 00:04:37,730 --> 00:04:38,710 אינטרנט ברחבי העולם. 94 00:04:38,710 --> 00:04:41,770 האינטרנט, כמובן, הוא רק שירות אחד שפועל על חלקו העליון של 95 00:04:41,770 --> 00:04:43,000 מה שנקרא אינטרנט. 96 00:04:43,000 --> 00:04:48,660 מה עוד שירות זמין על עליון של האינטרנט בימים אלה? 97 00:04:48,660 --> 00:04:51,600 חלק אחר או פרוטוקול - מה זה? 98 00:04:51,600 --> 00:04:52,300 >> קהל: ה-FTP. 99 00:04:52,300 --> 00:04:52,790 >> רמקול 1: ה-FTP. 100 00:04:52,790 --> 00:04:54,630 אז פרוטוקול העברת קבצים הוא אחר. 101 00:04:54,630 --> 00:04:56,050 רובכם בוודאי לא השתמש בו. 102 00:04:56,050 --> 00:04:58,830 אבל רובכם כנראה השתמשו דברים כמו Gchat, או מיידי 103 00:04:58,830 --> 00:05:00,970 מסרים באופן כללי יותר, בהחלט דואר אלקטרוני. 104 00:05:00,970 --> 00:05:04,470 ואלה, גם הם שירותים שרצים על גבי האינטרנט כי, ב 105 00:05:04,470 --> 00:05:08,180 סופו של היום, האינטרנט עצמו באמת רק לקבל נתונים מנקודת א 106 00:05:08,180 --> 00:05:12,480 נקודה ב 'וזה משתמש במספר חלקיקים עצמו, אחד מהם או שתיים 107 00:05:12,480 --> 00:05:17,340 מהם ביותר, בדרך כלל בשם TCP / IP, כלומר מחשב אחד שעל 108 00:05:17,340 --> 00:05:19,960 האינטרנט באמת יכול לעשות דברים שונים, דואר אלקטרוני, 109 00:05:19,960 --> 00:05:20,980 ואינטרנט, וכן הלאה. 110 00:05:20,980 --> 00:05:22,220 גוגל עושה הרבה זה. 111 00:05:22,220 --> 00:05:26,310 אז איך השירותים האלה באופן ייחודי מזוהה, לא אנחנו אומרים, במחשב 112 00:05:26,310 --> 00:05:29,080 כי בעצם אפשר לעשות דברים מרובים? 113 00:05:29,080 --> 00:05:29,860 >> מספר היציאה. 114 00:05:29,860 --> 00:05:34,180 ואלה הם רק אנושיים שרירותיים מוסכמות כמו 80 היא באינטרנט, הוא 443 115 00:05:34,180 --> 00:05:36,580 אינטרנט מוצפן, 25 הוא דואר אלקטרוני. 116 00:05:36,580 --> 00:05:38,230 ויש צרורות של אחרים. 117 00:05:38,230 --> 00:05:41,860 ואת המספרים האלה פשוט כלולים ב אלה מנות של מידע, אלה 118 00:05:41,860 --> 00:05:46,230 מעטפה וירטואלית, שלמעשה הכיל בקשה או תגובה. 119 00:05:46,230 --> 00:05:51,300 >> לכן, כאשר אתה מקבל בחזרה את תגובה אינטרנט, בדרך כלל, אתה לא רואה שום 120 00:05:51,300 --> 00:05:54,780 מספרים כלשהם במונחים של קוד מצב של התגובה. 121 00:05:54,780 --> 00:05:56,770 אתה לא באמת רואה הפעולה פנימית של 122 00:05:56,770 --> 00:05:58,090 מנות שתחזורנה. 123 00:05:58,090 --> 00:05:59,860 אבל 200 אכן מתכוונים לאישור. 124 00:05:59,860 --> 00:06:01,530 וזה אומר שהכל טוב. 125 00:06:01,530 --> 00:06:02,870 אולי ראה חבורה של אלה. 126 00:06:02,870 --> 00:06:05,710 וזה כנראה נפוץ ביותר שראית באינטרנט? 127 00:06:05,710 --> 00:06:05,980 >> 404. 128 00:06:05,980 --> 00:06:07,330 זה רק אומר שקובץ לא נמצא. 129 00:06:07,330 --> 00:06:08,270 זה אומר שמישהו פשלה. 130 00:06:08,270 --> 00:06:11,450 אתה עשית את של mistyping את כתובת האתר, או מישהו אחר עשה על ידי נותן לך 131 00:06:11,450 --> 00:06:15,100 כתובת אתר לא חוקי, או שהם נמחקו קובץ וכתובת האתר הוא עדיין 132 00:06:15,100 --> 00:06:16,130 בשימוש על ידי אנשים. 133 00:06:16,130 --> 00:06:19,670 אז כל מספר הסיבות יכול להסביר מדוע קובץ לא נמצא. 134 00:06:19,670 --> 00:06:22,990 ואתה עוד תראה, בשבועות הבאים, קודי שגיאה אחרים אלה, ואתה 135 00:06:22,990 --> 00:06:24,195 לנצל חלק מהם. 136 00:06:24,195 --> 00:06:25,760 הגרוע ביותר הוא 500. 137 00:06:25,760 --> 00:06:29,820 אם אתה מקבל שגיאה 500 בקוד שיש לך כתב, חשב על זה כסוג של 138 00:06:29,820 --> 00:06:33,290 אנלוגי של תקלות בSEG עולם של תכנות אינטרנט. 139 00:06:33,290 --> 00:06:34,560 זה לא ממש קשה באותה מידה. 140 00:06:34,560 --> 00:06:36,660 אבל זה רק אומר ש, אי שם, אתה דפוק. 141 00:06:36,660 --> 00:06:38,260 אז מצפה לאלה. 142 00:06:38,260 --> 00:06:39,910 >> אבל בואו נראה אם ​​אנחנו יכולים לראות אותם בהקשר נכון. 143 00:06:39,910 --> 00:06:43,460 תן לי ללכת לדפדפן כאן ובצע את הפעולות הבאות. 144 00:06:43,460 --> 00:06:45,710 אז זה כרום, אשר קורה להיות מותקן במכשיר. 145 00:06:45,710 --> 00:06:49,410 אבל כמעט בכל דפדפן יש בימים אלה חלק מהפונקציונליות שווה ערך. 146 00:06:49,410 --> 00:06:52,610 אני הולך לעלות תפריט של כרום, וללכת לכלים, ואני מתכוון ללכת 147 00:06:52,610 --> 00:06:53,990 לכלים למפתחים. 148 00:06:53,990 --> 00:06:57,040 ואתה תראה שהפנל הקטן הזה נפתח בחלק התחתון של החלון. 149 00:06:57,040 --> 00:07:00,190 קיצור דרך נוסף, אם להיות כנה, שאני בדרך כלל משתמש בעצמי הוא ללחוץ על העכבר 150 00:07:00,190 --> 00:07:04,370 או בקרה לחץ בכל מקום באינטרנט דף ופשוט ללכת לבדוק את האלמנט. 151 00:07:04,370 --> 00:07:07,440 וזה לא רק לפתוח זה בשבילך. 152 00:07:07,440 --> 00:07:10,230 זה יהיה גם לפתוח, באופן ספציפי, חלק אלמנטים על 153 00:07:10,230 --> 00:07:11,430 בצד השמאל. 154 00:07:11,430 --> 00:07:12,460 >> אז אנחנו כמובן רואים את גוגל. 155 00:07:12,460 --> 00:07:13,930 הם שינו את הלוגו שלהם היום. 156 00:07:13,930 --> 00:07:20,200 אבל אם אני בלגלול למטה עד לכאן, שים לב כי תחת יסודות, אתה רואה 157 00:07:20,200 --> 00:07:23,460 מה שנקרא ה-HTML, HyperText Markup שפה, וזו לשונו 158 00:07:23,460 --> 00:07:26,000 שזה ובכל דפי האינטרנט, באמת, נכתבים בי 159 00:07:26,000 --> 00:07:28,950 אבל זה בעצם מעוצב עבור לנו כל כך הרבה יותר readably 160 00:07:28,950 --> 00:07:29,970 ממה שזה בדרך כלל הוא. 161 00:07:29,970 --> 00:07:34,810 למעשה, אם אני להקטין את תצוגה, ואני במקום פשוט לחץ לחיצה ימנית או לשלוט בלחץ 162 00:07:34,810 --> 00:07:39,630 לחץ על הדף, ולאחר מכן ללכת לצפייה מקור דף, זה ממש מה 163 00:07:39,630 --> 00:07:42,150 גוגל שלחה את לדפדפן שלי. 164 00:07:42,150 --> 00:07:46,480 >> אז איזה אדם או אנשים כתבו Google.com באמצעות קוד מקור זה. 165 00:07:46,480 --> 00:07:47,790 רוב זה לא ה-HTML. 166 00:07:47,790 --> 00:07:49,340 זה בעצם שפה שנקראת JavaScript, אשר 167 00:07:49,340 --> 00:07:50,880 אנחנו נבוא ליום רביעי. 168 00:07:50,880 --> 00:07:55,580 אבל מה כרום, ומה שכל דפדפן יכול לעשות עבורנו, הוא סוג של לראות 169 00:07:55,580 --> 00:07:59,610 העבר את כל הסחות הדעת של תחביר משוגע, והכנס שוב שטח לבן 170 00:07:59,610 --> 00:08:02,940 עבורנו, ואף להדגיש תחביר, או לצבוע את הדברים עבורנו. 171 00:08:02,940 --> 00:08:06,470 אז אתה תמצא כי אלה שנקרא כלי פיתוח שנבנו לתוך דפדפנים 172 00:08:06,470 --> 00:08:10,830 יהפוך את החיים שלך כל כך, כל כך הרבה יותר קל כי אתה יכול לחקור, באמצעות תפריט זה 173 00:08:10,830 --> 00:08:13,940 ממשק, בדיוק מה הבסיסי קוד המקור הוא עבור 174 00:08:13,940 --> 00:08:15,750 כל דף באינטרנט. 175 00:08:15,750 --> 00:08:19,070 ואכן, זו היא אחת ביותר דרכים יעילות כדי ללמוד איך לעשות את 176 00:08:19,070 --> 00:08:22,860 משהו חדש, לפחות אם הדף הוא לא כל כך מורכב כמו להציף, הוא 177 00:08:22,860 --> 00:08:26,700 כדי להתחיל לחטט זה HTML, נראה בCSS כביכול שלו, שאנחנו נבוא 178 00:08:26,700 --> 00:08:30,310 לביט, כמו גם, כדי לקבל הבנה של אופן שהמתכנת 179 00:08:30,310 --> 00:08:33,480 יישם חלק מסוים תכונה של הדף. 180 00:08:33,480 --> 00:08:36,530 >> אבל יותר מבחינה טכנית נכון מעניין עכשיו זה הולך להיות זה. 181 00:08:36,530 --> 00:08:39,429 אם אני הולך לכרטיסיית הרשת, בואו עכשיו לנקות את זה. 182 00:08:39,429 --> 00:08:43,429 אני הולך ללחוץ קצת סמל לחצות כאן, ולאחר מכן 183 00:08:43,429 --> 00:08:45,630 ללכת לאתר אחר. 184 00:08:45,630 --> 00:08:48,430 ואני רק הולך להקליד בFacebook.com. 185 00:08:48,430 --> 00:08:51,940 לא HTTP, HTTPS לא, לא בעניין. 186 00:08:51,940 --> 00:08:53,850 בואו לראות מה באמת קורה כאן. 187 00:08:53,850 --> 00:08:55,030 >> Enter. 188 00:08:55,030 --> 00:08:58,480 עכשיו שם לב חבורה שלמה של דברים פשוט הופיע בפנל תחתון זו, ב 189 00:08:58,480 --> 00:09:00,285 בנוסף לדף האינטרנט המופיע בחלקו העליון. 190 00:09:00,285 --> 00:09:04,890 אני הולך כדי לגלול לגבות לתוך כרטיסיית רשת כאן, ואני הולך 191 00:09:04,890 --> 00:09:06,080 לחץ על השורה הראשונה. 192 00:09:06,080 --> 00:09:10,580 מה הכלי הזה הולך לחשוף בפנינו הוא בכל אחת מהבקשות HTTP 193 00:09:10,580 --> 00:09:13,550 כי רק במהירות וחזר שוב בין הדפדפן שלי 194 00:09:13,550 --> 00:09:14,930 והשרת של פייסבוק. 195 00:09:14,930 --> 00:09:17,830 וכך כל אחד משורות האלה מייצג בקשה אחד כזה או 196 00:09:17,830 --> 00:09:20,970 תגובה, אחד או יותר של אלה מעטפה וירטואלית. 197 00:09:20,970 --> 00:09:24,080 או יותר כבדרך אגב, זה כמו אדם כמו אדם, לקוח ב 198 00:09:24,080 --> 00:09:26,710 מסעדה, לבקש משהו שוב, ושוב, ושוב. 199 00:09:26,710 --> 00:09:29,400 והמלצר ממשיך להביא אותו חזרה אחת בכל פעם. 200 00:09:29,400 --> 00:09:33,850 >> אז עכשיו, אם אני זום על זה, שים לב וזה יהיה מסוג הדברים 201 00:09:33,850 --> 00:09:36,600 שאתה מוזמן ועודדתי לשחק עם בעצמך, בגלל שאנחנו 202 00:09:36,600 --> 00:09:38,150 לא לעבור את כל מה בפירוט רב. 203 00:09:38,150 --> 00:09:40,070 אבל שם לב שיש כמה תת - לשוניות כאן 204 00:09:40,070 --> 00:09:43,700 כותרות, תצוגה מקדימה, תגובה, עוגיות, ועיתוי. 205 00:09:43,700 --> 00:09:48,280 אני רק הולך להסתכל על כותרות לעת עתה, כי אלה הם קטן 206 00:09:48,280 --> 00:09:53,600 מרכיבים פנימיים של המעטפה ש תעזור להגיע לנתונים וממקומות. 207 00:09:53,600 --> 00:09:57,590 >> אז קודם כל, תן לי לחץ על זה, צפה מקור בסמוך לכותרות בקשה. 208 00:09:57,590 --> 00:10:01,910 אין בקשה שהדפדפן שלי, כרום, במקרה זה, שנשלח בתוך 209 00:10:01,910 --> 00:10:02,910 שהמעטפה וירטואלית. 210 00:10:02,910 --> 00:10:04,800 אתה זוכר בשבוע שעבר הקליד אותו באופן ידני בעת 211 00:10:04,800 --> 00:10:06,380 מתחזה לדפדפן. 212 00:10:06,380 --> 00:10:09,980 ואז זה הזכיר את השרת שזה מחפש מארח נקרא 213 00:10:09,980 --> 00:10:10,835 Facebook.com. 214 00:10:10,835 --> 00:10:13,630 ואז יש קצת יותר מסתורי מידע שאנו לנופף 215 00:10:13,630 --> 00:10:14,830 ידי שלנו לעת עתה. 216 00:10:14,830 --> 00:10:18,640 >> אבל אם אני מתחיל לגלול למטה החברה ב חלון זה, תן לי להגיע ל 217 00:10:18,640 --> 00:10:19,980 כותרות תגובה. 218 00:10:19,980 --> 00:10:23,270 זה היה מה שהוא בוירטואלי מעטפה שחזרה מ 219 00:10:23,270 --> 00:10:24,095 Facebook.com. 220 00:10:24,095 --> 00:10:27,390 ואם אני לוחץ על הצג מקור פשוט כדי לראות את הטקסט הגולמי שלו, 221 00:10:27,390 --> 00:10:28,400 שם לב כמה דברים. 222 00:10:28,400 --> 00:10:32,130 אחד, פייסבוק גם מדבר באותו פרוטוקול, גרסה 1.1 ממנו. 223 00:10:32,130 --> 00:10:33,390 אז זה נחמד. 224 00:10:33,390 --> 00:10:36,820 אבל קוד מצב 301, עבר באופן קבוע. 225 00:10:36,820 --> 00:10:38,880 >> ובכן, איפה לעזאזל היה פייסבוק ללכת? 226 00:10:38,880 --> 00:10:40,430 מה זה מנסה להעביר לנו? 227 00:10:40,430 --> 00:10:44,310 ובכן, שים לב כאן למטה יש עוד כותרת בשם מיקום. 228 00:10:44,310 --> 00:10:51,050 אז למה פייסבוק אומר לי שהם הועבר לצמיתות לכתובת האתר ש 229 00:10:51,050 --> 00:10:53,580 בסמוך למיקום? 230 00:10:53,580 --> 00:10:54,962 שכחתי www. 231 00:10:54,962 --> 00:10:56,250 >> אז זה היה הבחירה שלי. 232 00:10:56,250 --> 00:11:00,450 למעשה, רובנו רק לעתים נדירות, כנראה, הקלד www.whatever.com בימים אלה. 233 00:11:00,450 --> 00:11:03,390 אבל מתברר למנהל מערכת, כמו פייסבוק של, יכול 234 00:11:03,390 --> 00:11:06,800 להגדיר את השרתים שלהם בצורה כזו כי גם Facebook.com עובד, או 235 00:11:06,800 --> 00:11:12,450 www.Facebook.com עובד, או, בעצם, כל קידומת כזה מולם 236 00:11:12,450 --> 00:11:13,210 שם תחום. 237 00:11:13,210 --> 00:11:14,500 אז הם עשו את זה בשבילנו. 238 00:11:14,500 --> 00:11:16,910 והם מפנים אותנו, כנראה לחלק טכני, 239 00:11:16,910 --> 00:11:18,100 כמה סיבות שיווקיות. 240 00:11:18,100 --> 00:11:21,570 הם רק רוצים canonicalize על www.Facebook.com. 241 00:11:21,570 --> 00:11:24,040 >> אבל זה לא בדיוק זה. 242 00:11:24,040 --> 00:11:28,560 אם אני לגלול למטה כאן, בואו לראות מה קורה. 243 00:11:28,560 --> 00:11:30,810 זה אומר לי שאנחנו עבר באופן קבוע ל 244 00:11:30,810 --> 00:11:33,450 http://www.Facebook.com. 245 00:11:33,450 --> 00:11:36,620 אז בואו נסתכל על הבקשה השנייה כי הדפדפן שלי שולח. 246 00:11:36,620 --> 00:11:40,070 למרבה הצער, זה נראה כמו פייסבוק עבר שוב כי השני 247 00:11:40,070 --> 00:11:44,420 בקשה, על ידי בחירת כתובת אתר שבמקום זאת, אומר שגם עבר 248 00:11:44,420 --> 00:11:45,010 באופן קבוע. 249 00:11:45,010 --> 00:11:48,140 ותן לי לגלול למטה כאן לכותרות בתגובה. 250 00:11:48,140 --> 00:11:51,530 לאן נעלם פייסבוק עכשיו? 251 00:11:51,530 --> 00:11:52,680 >> אז HTTPS. 252 00:11:52,680 --> 00:11:56,130 אז עכשיו פייסבוק החלה, במיוחד לאור הנוכחי 253 00:11:56,130 --> 00:11:59,750 אירועים בחודשים האחרונים, ובמיוחד ו גם בכמה השנים האחרונות 254 00:11:59,750 --> 00:12:03,670 לחייב את כל המשתמשים שלהם, בטוב אגב, כדי להשתמש ב-HTTPS, שהוא יותר 255 00:12:03,670 --> 00:12:06,210 הבטחת, אם כי אינו בטוח לחלוטין. 256 00:12:06,210 --> 00:12:10,000 ואז עכשיו את הדף שלי, הדפדפן שלי הוא הולך לבקש כתובת אתר שלישי זה. 257 00:12:10,000 --> 00:12:14,710 ועכשיו, סוף סוף, אנחנו מקבלים 200 אישור אחר בלתי נראה. 258 00:12:14,710 --> 00:12:18,830 >> אז מה בעולם או את כל השורות אחרות האלה כאן למטה. 259 00:12:18,830 --> 00:12:22,630 אני ממש הקלדתי דבר אחד, ושלי דפדפן נראה כמו שביקשת 260 00:12:22,630 --> 00:12:23,840 20 כמה דברים מוזרים. 261 00:12:23,840 --> 00:12:24,640 מה זה? 262 00:12:24,640 --> 00:12:25,810 >> קהל: סקריפטים? 263 00:12:25,810 --> 00:12:28,460 >> רמקול 1: סקריפטים, קבצים אחרים כך כתוב בשפה הנקראת 264 00:12:28,460 --> 00:12:30,780 JavaScript, אשר, שוב, אנו לראות קצת ביום רביעי. 265 00:12:30,780 --> 00:12:32,760 מה עוד? 266 00:12:32,760 --> 00:12:33,390 גיליונות סגנון. 267 00:12:33,390 --> 00:12:36,350 אז משהו בשפה שנקראה CSS, אשר שנראה בקצת. 268 00:12:36,350 --> 00:12:40,690 GIF, וJPEGs, וPNGs ותמונות, וסרט קבצים - כל מה שדף האינטרנט 269 00:12:40,690 --> 00:12:43,280 יש סיכוי הטוב ביותר ב הצורה של קובץ. 270 00:12:43,280 --> 00:12:46,750 ואז מה שאנחנו רואים בצד השמאל צד יש את כל הקבצים 271 00:12:46,750 --> 00:12:50,280 שכרום היה צריך להוריד, באופן רקורסיבי, אם תרצה, על מנת 272 00:12:50,280 --> 00:12:52,430 להלחין את השלמות של הדף. 273 00:12:52,430 --> 00:12:56,210 >> אז מה שראינו לפני רגע עם גוגל, אם אני לוחץ על האלמנטים 274 00:12:56,210 --> 00:13:00,470 כרטיסייה, זה, כמובן, היא ה-HTML, שפה שמלחינה דף זה. 275 00:13:00,470 --> 00:13:01,890 אבל יש צרורות דברים אחרים. 276 00:13:01,890 --> 00:13:02,640 אין לוגו. 277 00:13:02,640 --> 00:13:04,680 יש איש הכחול אלה סמלים שם. 278 00:13:04,680 --> 00:13:07,610 ויש גורמים אחרים עדיין על הדף שעצמם עשויים להיות 279 00:13:07,610 --> 00:13:08,610 קבצים נפרדים. 280 00:13:08,610 --> 00:13:11,860 >> אז מה שיפה הוא שדפדפן זה נראה בשפה שאנחנו הולכים 281 00:13:11,860 --> 00:13:14,690 כדי להתחיל לכתוב, או שיש לך כבר כתיבה החלה בP 7 סט, דמויות 282 00:13:14,690 --> 00:13:17,970 איפה הקבצים האלה גרים, ו הולך ותופס גם אותם. 283 00:13:17,970 --> 00:13:21,010 ואני לא יכול להדגיש מספיק, אפילו למרות שחלק מזה אולי נראה קצת 284 00:13:21,010 --> 00:13:24,820 מסתוריות או מכריע במבט הראשון, ללמוד איך לתכנת 285 00:13:24,820 --> 00:13:28,500 בקשות לאינטרנט, זה לא יסולא בפז כדי להבין כיצד אלה 286 00:13:28,500 --> 00:13:29,410 כלים קטנים לעבוד. 287 00:13:29,410 --> 00:13:33,830 אלה הם כמו סוג של GDB כמו כלים, אבל הרבה יותר פשוט, סופו של דבר, לשימוש - 288 00:13:33,830 --> 00:13:37,690 ובאמת נותן לך את העיניים למה אנחנו כבר לוקחים כמובן מאליו עבור 289 00:13:37,690 --> 00:13:39,170 די הרבה זמן עכשיו. 290 00:13:39,170 --> 00:13:42,270 >> אז מה יכול עכשיו אנחנו עושים עם את המידע הזה? 291 00:13:42,270 --> 00:13:44,875 טוב, בואו באמת נסתכל את המושגים בסיסיים HTML. 292 00:13:44,875 --> 00:13:49,025 ואנו לדחות, כפי שכבר יש לנו, כדי סעיפים בשבוע זה, לבעיה 293 00:13:49,025 --> 00:13:53,260 להגדיר 7 מפרט, לחלק מיותר פרטים של שפות אלה. 294 00:13:53,260 --> 00:13:57,020 אבל בואו נראה אם ​​אנחנו לא יכולים לצייר תמונה של מה שאתה צריך להבין 295 00:13:57,020 --> 00:13:57,940 כולל כאן. 296 00:13:57,940 --> 00:14:02,280 >> אז ה-HTML, שפת סימון היפרטקסט, לא שפת תכנות. 297 00:14:02,280 --> 00:14:03,520 מה זה באמת אומר? 298 00:14:03,520 --> 00:14:05,690 אז ה-HTML נראית כך. 299 00:14:05,690 --> 00:14:06,810 וכמה מכם כבר יודעים את זה. 300 00:14:06,810 --> 00:14:08,130 חלק מכם כבר עושים זה כבר כמה זמן. 301 00:14:08,130 --> 00:14:10,270 אבל בואו נראה אם ​​אנחנו לא יכולים למלא וכן בכמה מקומות ריקים. 302 00:14:10,270 --> 00:14:11,760 אז שם לב כמה דברים כאן. 303 00:14:11,760 --> 00:14:13,030 אחד, זה רק טקסט. 304 00:14:13,030 --> 00:14:15,960 אז זה בדיוק כמו בקוד המקור C, או בשפה השנייה. 305 00:14:15,960 --> 00:14:17,750 >> שים לב שנראה להיות כאן דפוס. 306 00:14:17,750 --> 00:14:20,870 אין כניסה, אבל מבחינה טכנית הכניסה היא רק אדם 307 00:14:20,870 --> 00:14:21,205 אמנה. 308 00:14:21,205 --> 00:14:24,980 לא אכפת לו אם יש דפדפנים חדשים קווים וכרטיסיות כמו שאנחנו רואים שם. 309 00:14:24,980 --> 00:14:27,410 אבל שם לב שיש סימטריות כאן. 310 00:14:27,410 --> 00:14:31,180 יש מה שאני אתקשר, בחלק העליון של בקובץ זה, התג הפתוח, או בתחילתו 311 00:14:31,180 --> 00:14:33,030 תג, בשם ה-HTML. 312 00:14:33,030 --> 00:14:36,800 ואז, למטה, בשורה בצורה מושלמת למעלה, ממש כמו שאנחנו עושים עם סוגריים מסולסלים, 313 00:14:36,800 --> 00:14:40,910 אנו רואים סוגר פתוח, קדימה לוכסן, HTML, קרוב סוגר. 314 00:14:40,910 --> 00:14:44,610 אז זה קרוב מקביל תג, או בסוף התג, על הדבר הזה. 315 00:14:44,610 --> 00:14:47,990 >> יחד, כל מה שבתוך מה שנקרא תג פתיחה וסגירת תג 316 00:14:47,990 --> 00:14:50,440 להלחין את מה שאנחנו קוראים לאלמנט. 317 00:14:50,440 --> 00:14:53,910 ואנו רואים, ברגע, זה באמת אוהב את צומת בתוך עצים. 318 00:14:53,910 --> 00:14:57,470 כי אם אתה חושב על החברה כניסה שנרמזה כאן, אתה 319 00:14:57,470 --> 00:15:00,780 סוג של יש, אוהב, סב צומת נקראת ה-HTML. 320 00:15:00,780 --> 00:15:06,870 כמה ילדים אפשר לומר, המבוסס בתמונה זו, יש לו את אלמנט HTML? 321 00:15:06,870 --> 00:15:07,720 >> אז כנראה שתיים. 322 00:15:07,720 --> 00:15:10,240 אחד מהם הוא אלמנט הראש, כנראה. 323 00:15:10,240 --> 00:15:11,710 ואחד הוא אלמנט הגוף. 324 00:15:11,710 --> 00:15:12,555 ולמה שני ילדים? 325 00:15:12,555 --> 00:15:15,840 ובכן, אני פשוט סוג של להסיק מסקנה, שאם יש לי ראש פתוח תג ולאחר מכן 326 00:15:15,840 --> 00:15:17,820 תג הראש קרוב, זה אלמנט. 327 00:15:17,820 --> 00:15:21,200 ולאחר מכן, אם יש גוף פתוח אחר תג ותג גוף קרוב, זה כמו 328 00:15:21,200 --> 00:15:22,340 אלמנט נוסף. 329 00:15:22,340 --> 00:15:26,000 אז במובן זה שאם אני סוג של סיבוב התמונה בצד שלה, זה 330 00:15:26,000 --> 00:15:29,910 כמו שיש תג HTML, ולאחר מכן תג ראש, ולאחר מכן תג גוף, ו 331 00:15:29,910 --> 00:15:34,290 לאחר מכן טקסט כלשהו, ​​שלום עולם, משתלשל הנחה של תג הגוף עצמו. 332 00:15:34,290 --> 00:15:36,620 >> אז אנחנו יכולים לצייר תמונה ש עשוי להיראות כך. 333 00:15:36,620 --> 00:15:38,020 הצורות שרירותיות. 334 00:15:38,020 --> 00:15:40,870 אבל שמו לב שאני השתמשתי סוג של אליפסה בחלק העליון כדי לייצג את 335 00:15:40,870 --> 00:15:41,860 המסמך עצמו. 336 00:15:41,860 --> 00:15:45,980 מתברר שלא יכול להיות כל מיני דברים אחרים בתוך דף אינטרנט שיש לי לא 337 00:15:45,980 --> 00:15:46,940 נמשך לכאן. 338 00:15:46,940 --> 00:15:50,800 אז אנחנו הולכים אפילו לתלות את ה-HTML מצומת של מה שמכונה צומת מסמך. 339 00:15:50,800 --> 00:15:53,730 ולאחר מכן יש לנו את הראש ו גוף וכותרת, הודעה מוקדמת, 340 00:15:53,730 --> 00:15:55,360 אשר מקונן נוסף. 341 00:15:55,360 --> 00:15:58,650 לא טרחתי לשים קו נוסף הפסקות בתוך של תג הכותרת. 342 00:15:58,650 --> 00:16:02,710 זה פשוט הרגיש כאילו זה היה מקבל מדי מפורט קטנה. 343 00:16:02,710 --> 00:16:07,000 אז עזבתי אותו בשורה אחת שם, עם כותרת פתוחה, שלום עולם, תואר קרוב. 344 00:16:07,000 --> 00:16:09,380 ואז יש לנו קצת טקסט משתלשל מן מפה. 345 00:16:09,380 --> 00:16:12,200 >> אז התמונה הזאת תחזור אל שלנו כאשר אנחנו צוללים לתוך-JavaScript. 346 00:16:12,200 --> 00:16:15,110 והבנה שכאשר אתה לכתוב HTML כמו זה, מה 347 00:16:15,110 --> 00:16:16,250 הוא עושה את דפדפן? 348 00:16:16,250 --> 00:16:19,290 ובכן, אנחנו לא צריכים לדאוג איך היא עושה את זה, או עם מה 349 00:16:19,290 --> 00:16:23,090 אלגוריתם, אך בסופו של היום, כאשר דפדפן מקבל HTML כמו 350 00:16:23,090 --> 00:16:27,510 כי, מפייסבוק או גוגל, זה מנתח אותו, אם אפשר לומר כך, הוא קורא אותו, 351 00:16:27,510 --> 00:16:31,160 עם משהו כמו fread, מלמעלה למטה, משמאל לימין, וכפי שהוא 352 00:16:31,160 --> 00:16:36,300 מבין, אה, תג פתוח, ולאחר מכן לסגור תג, זה מתחיל לmalloc, אם אפשר לומר כך, 353 00:16:36,300 --> 00:16:37,800 צומת בעץ. 354 00:16:37,800 --> 00:16:41,130 וכאשר הוא נתקל, כפי שמשתמעים כאן עם הכניסה, 355 00:16:41,130 --> 00:16:45,400 צומת ילד, זה mallocs צומת בשביל זה וצרף את זה לעץ. 356 00:16:45,400 --> 00:16:49,150 >> כך מבני העץ, העצים בינאריים, עצים משולשת, ועצים גדולים יותר, כי 357 00:16:49,150 --> 00:16:53,380 אנחנו הצצתי בשבוע או שבועות לפני, שים לב כי אותו העיקרון הוא 358 00:16:53,380 --> 00:16:54,220 אחזור אלינו. 359 00:16:54,220 --> 00:16:57,590 ומי שיישם, כרום מה צוות עשה את זה, מן הסתם היה לי 360 00:16:57,590 --> 00:17:00,800 ליישם איזה מבנה עץ מתחת למכסת המנוע. 361 00:17:00,800 --> 00:17:05,329 וזה עצמו הוא כנראה ב שפה כמו C, או C + +, או נמוך יותר 362 00:17:05,329 --> 00:17:08,540 שפה ברמה שאנחנו יהיו כעת להשתמש על גבי האינטרנט. 363 00:17:08,540 --> 00:17:11,200 >> אז עכשיו, אולי, יהיה זה הגיוני יותר. 364 00:17:11,200 --> 00:17:15,420 קעקוע בפועל מאיזה בחור שאולי אצטער על כך בסופו, סוג של. 365 00:17:15,420 --> 00:17:17,359 בסדר, בסדר, כל כך הרבה הומור אינטרנט. 366 00:17:17,359 --> 00:17:18,599 זה לא ממש הולך מעל כל כך טוב היום. 367 00:17:18,599 --> 00:17:19,560 כך יהיה לנו להמשיך הלאה. 368 00:17:19,560 --> 00:17:20,180 בסדר. 369 00:17:20,180 --> 00:17:22,760 >> אז בואו נסתכל עכשיו בכמה דוגמאות. 370 00:17:22,760 --> 00:17:24,660 הפשוט ביותר אפשרי דבר זה יכול להיות. 371 00:17:24,660 --> 00:17:29,170 אני הולך קדימה ולפתוח ב gedit קובץ שנקרא hello.php. 372 00:17:29,170 --> 00:17:31,730 373 00:17:31,730 --> 00:17:36,330 ובתוך מכאן, אני הולך במהירות פשוט לעשות את זה, printf, לצטט 374 00:17:36,330 --> 00:17:38,590 סוף ציטוט, "שלום העולם". 375 00:17:38,590 --> 00:17:42,460 >> אז הודעה, ואני אעשה את הקו הנטוי n שלי, אני כבר לא טרחתי להכריז ראשי. 376 00:17:42,460 --> 00:17:45,310 מתברר, ב-PHP, והרבה שפות, אתה לא צריך ראשי 377 00:17:45,310 --> 00:17:46,090 פונקציה כשלעצמה. 378 00:17:46,090 --> 00:17:47,720 אתה יכול פשוט להתחיל לכתוב התכנית שלך. 379 00:17:47,720 --> 00:17:51,210 עכשיו, כאשר אני שומר את הקובץ הזה, אני שם לב אצטרך לבצע את הפעולות הבאות. 380 00:17:51,210 --> 00:17:55,360 אני לא הולך להשתמש לעשות, ואני לא הולך להשתמש בצלצול כי PHP, בניגוד 381 00:17:55,360 --> 00:17:57,400 C, אינו שפת הידור. 382 00:17:57,400 --> 00:18:01,400 זה מה שנקרא פירש שפה, מה שאומר שאתה מפעיל את זה 383 00:18:01,400 --> 00:18:04,650 כקלט באמצעות תכנית אחרת נקרא מתורגמן. 384 00:18:04,650 --> 00:18:08,150 ותכנית שקוראות את זה, ועד ראש למטה, משמאל לימין, ועושה 385 00:18:08,150 --> 00:18:09,290 מה שאתה אומר לו לעשות. 386 00:18:09,290 --> 00:18:12,920 >> אז במקרה הזה יש לי כאן שורה אחת שאומרת printf. 387 00:18:12,920 --> 00:18:17,990 לכן, כאשר אני מפעיל את קוד מקור של זה, hello.php, למרות שתכנית 388 00:18:17,990 --> 00:18:22,830 קורה, בנוחות, שייקרא PHP, PHP התכנית כי הוא הולך לקרוא 389 00:18:22,830 --> 00:18:26,120 בקובץ זה, מלמעלה למטה, משמאל לימין, וזה הולך לעשות מה שאני 390 00:18:26,120 --> 00:18:30,110 אומר לו לעשות - ביצוע קוד, ואם הוא אינו מזהה משהו, פשוט 391 00:18:30,110 --> 00:18:31,320 יורק אותו החוצה. 392 00:18:31,320 --> 00:18:34,940 אז אני הולך קדימה להפעיל PHP של hello.php. 393 00:18:34,940 --> 00:18:37,110 Enter. 394 00:18:37,110 --> 00:18:39,690 >> וזה לא בדיוק מה שהתכוונתי. 395 00:18:39,690 --> 00:18:40,530 ובכן, מדוע זה כך? 396 00:18:40,530 --> 00:18:43,910 ובכן, PHP היא שפה שבעצם נועד להיות די 397 00:18:43,910 --> 00:18:46,150 זורה באינטרנט. 398 00:18:46,150 --> 00:18:50,460 בעת ביצוע דפי אינטרנט בשפה זו PHP, כפי שבקרוב תוכל לראות, אנו 399 00:18:50,460 --> 00:18:54,560 רוצה לעשות משהו כמו הדפסה מתוך שורות כמו זה. 400 00:18:54,560 --> 00:18:55,940 >> אז אני הולך לעשות את זה. 401 00:18:55,940 --> 00:19:00,810 סוגר פתוח, סימן שאלה, PHP ו עכשיו אני פשוט הולך כניסה רק כדי לשמור על 402 00:19:00,810 --> 00:19:01,960 דברים יפים. 403 00:19:01,960 --> 00:19:04,910 ועכשיו אני הולך לעשות את שאלה לסמן קרוב סוגר. 404 00:19:04,910 --> 00:19:06,270 אז יש קצת חוסר סימטריה כאן. 405 00:19:06,270 --> 00:19:07,490 אתה לא עושה את זה. 406 00:19:07,490 --> 00:19:10,530 ואתה לא עושה את קו נטוי, ולכן PHP היא קצת שונה. 407 00:19:10,530 --> 00:19:14,610 >> אבל עכשיו, אם אני שידור חוזר תכנית זו, PHP hello.php, עכשיו אני 408 00:19:14,610 --> 00:19:16,090 למעשה לקבל שלום העולם. 409 00:19:16,090 --> 00:19:17,750 ואנו רואים למה זה הוא בעל ערך. 410 00:19:17,750 --> 00:19:20,960 אחד, זה מאפשר לי לציין, סופר במפורש, זה 411 00:19:20,960 --> 00:19:22,480 קוד, לבצע את זה. 412 00:19:22,480 --> 00:19:25,480 וזה אכן מה אלה תגים מיוחדים לרמוז כאן. 413 00:19:25,480 --> 00:19:30,330 >> אבל זה גם אומר שאם אני עושה רק משהו כמו שאני שואף לכאן, כי 414 00:19:30,330 --> 00:19:34,000 זה אומר, פשוטו כמשמעו, שרק להיות מודפס החוצה ללא הצורך 415 00:19:34,000 --> 00:19:36,850 בעצם קוראים printf, או הדפסה, או כל תפקיד דומה. 416 00:19:36,850 --> 00:19:39,445 אז אנחנו נחזור לזה ברגע. 417 00:19:39,445 --> 00:19:40,470 >> ראשית, בואו נעשינו את זה. 418 00:19:40,470 --> 00:19:43,950 פנימי של המכשיר, יש לנו ספרייה בשם Vhosts, לוירטואלי 419 00:19:43,950 --> 00:19:47,000 מארחים, לקצץ מארח מקומי, לקצץ ציבוריים. 420 00:19:47,000 --> 00:19:50,240 אז זה קצת מפורט, אבל סיפור ארוך בקיצור, המכשיר תוכנן כך שלא 421 00:19:50,240 --> 00:19:53,770 רק כדי לתמוך בג זה גם נועד לתמוך PHP. 422 00:19:53,770 --> 00:19:57,440 אבל זה גם נועד להיות אינטרנט שרת, ושרת מסד הנתונים. 423 00:19:57,440 --> 00:20:00,230 וזה מתוכנן, ובאמת מוגדר, להיות מזכיר את כל 424 00:20:00,230 --> 00:20:04,230 חברת אירוח אתרים מסחרית ש אתה עלול לשלם 5 דולרים לחודש עבור, 425 00:20:04,230 --> 00:20:05,040 100 דולרים לחודש ל. 426 00:20:05,040 --> 00:20:08,200 לא משנה מה הוא השירות, זה מוגדר להיות דומה מאוד 427 00:20:08,200 --> 00:20:10,170 שרת ייצור בעולם אמיתי. 428 00:20:10,170 --> 00:20:13,485 >> ומה זה אומר הוא שפועל על המכשיר הוא תוכנת שרת אינטרנט. 429 00:20:13,485 --> 00:20:15,060 זה קורה להיקרא האפצ'י. 430 00:20:15,060 --> 00:20:17,790 זה פשוט חופשי, וקוד פתוח, ומאוד פופולרי. 431 00:20:17,790 --> 00:20:23,260 ויש לנו להגדיר את האפצ'י לדעת שאם אני מבקר בכתובת אתר מסוימת, עם 432 00:20:23,260 --> 00:20:28,060 כרום או כל דפדפן פנימי של מכשיר, להסתכל לתוך ספרייה זו 433 00:20:28,060 --> 00:20:31,030 עבור קבצים ש משתמש מבקש. 434 00:20:31,030 --> 00:20:32,790 >> במילים אחרות, תן לי אתם מוזמנים לעשות את זה. 435 00:20:32,790 --> 00:20:36,890 החלק פנימי של הספרייה הציבורית שלי, אני הולך ללכת קדימה וליצור קובץ 436 00:20:36,890 --> 00:20:39,580 קרא index.html. 437 00:20:39,580 --> 00:20:41,000 זה נותן לי כרטיסייה כאן. 438 00:20:41,000 --> 00:20:44,210 ואני הולך מהר מאוד וקדימה, ולדפוק את 439 00:20:44,210 --> 00:20:45,010 תכנית זו כאן. 440 00:20:45,010 --> 00:20:48,410 Doctype HTML, אשר לעת עתה, רק תניח שאתה צריך להקליד. 441 00:20:48,410 --> 00:20:53,490 זה רק תג מסתורי, שלא באמת תג HTML, שמציין כי 442 00:20:53,490 --> 00:20:55,050 כאן מגיעה חלק ה-HTML. 443 00:20:55,050 --> 00:20:57,400 >> אני הולך קדימה, וליצור מחדש מה שראינו לפני רגע. 444 00:20:57,400 --> 00:20:58,650 הנה ראש הדף. 445 00:20:58,650 --> 00:21:01,170 בתוך הראש היה - 446 00:21:01,170 --> 00:21:01,890 כך הכותרת. 447 00:21:01,890 --> 00:21:04,340 כך יהיה לנו להגיד שלום, העולם. 448 00:21:04,340 --> 00:21:06,570 ולאחר מכן כאן למטה היה תג הגוף. 449 00:21:06,570 --> 00:21:08,580 תן לי לסגור את תג הגוף. 450 00:21:08,580 --> 00:21:12,280 ולאחר מכן בפה אני גם אומר, רק לשם הבהרה, שלום עולם. 451 00:21:12,280 --> 00:21:14,770 >> אז זהו, ללא ספק, הפשוט ביותר דף אינטרנט שלך אפשרי 452 00:21:14,770 --> 00:21:15,770 יכול לעשות את זה חוקי. 453 00:21:15,770 --> 00:21:17,030 זה מבחינה תחבירית בתוקף. 454 00:21:17,030 --> 00:21:18,620 כל מה שנפתח סגור. 455 00:21:18,620 --> 00:21:20,910 הכל יפה ב מנוסח ומסוכסך. 456 00:21:20,910 --> 00:21:23,600 אז בואו נראה עכשיו איך אני תוכל לגשת לקובץ זה. 457 00:21:23,600 --> 00:21:25,540 >> ובכן, תן לי ללכת ל-Chrome כאן. 458 00:21:25,540 --> 00:21:35,050 ותן לי ללכת ל http://localhost/index.html. 459 00:21:35,050 --> 00:21:36,200 אז מה המארח מקומי? 460 00:21:36,200 --> 00:21:39,400 ובכן, רוב מחשב כלשהו בעולם, לינוקס, Mac OS, Windows, יש כינוי 461 00:21:39,400 --> 00:21:40,680 שם מארח מקומי. 462 00:21:40,680 --> 00:21:42,900 אז אם אי פעם אתה רוצה לדבר למחשב שלך - 463 00:21:42,900 --> 00:21:45,140 אם כי, באופן מוזר רפלקסיבי - 464 00:21:45,140 --> 00:21:47,080 אתה קורא לעצמך מארח מקומי. 465 00:21:47,080 --> 00:21:50,390 לא משנה מה הוא המחשב שלך בפועל קרא, בין אם זה של דוד MacBook 466 00:21:50,390 --> 00:21:52,490 אוויר, או משהו יותר מפורט כזה. 467 00:21:52,490 --> 00:21:57,760 >> אז URL זה כנראה הולך להשתמש HTTP כדי לדבר עם המארח המקומי, 468 00:21:57,760 --> 00:22:00,800 אותו מחשב, את המכשיר, ו זה הולך לבקש, פשוט לקחת את 469 00:22:00,800 --> 00:22:02,570 לנחש, מה קובץ? 470 00:22:02,570 --> 00:22:04,460 Index.html. 471 00:22:04,460 --> 00:22:08,650 אז המכשיר הוגדר ב להתקדם ליודע שאם אני מבקש 472 00:22:08,650 --> 00:22:13,460 למשהו כמו index.html, לחפש בתיקייה בשם Vhosts, ב 473 00:22:13,460 --> 00:22:17,950 תיקייה בשם localhost, בתיקייה בשם הציבור בו. 474 00:22:17,950 --> 00:22:20,400 זה שבו כל הציבור שלי קבצים הולכים להיות. 475 00:22:20,400 --> 00:22:22,610 אז אני עכשיו הולך על Enter. 476 00:22:22,610 --> 00:22:27,100 >> ולעזאזל, יש אסור ש הודעה, הידוע גם 403, 477 00:22:27,100 --> 00:22:28,490 קוד מספרי עבורו. 478 00:22:28,490 --> 00:22:30,130 אז מה לא בסדר כאן? 479 00:22:30,130 --> 00:22:33,210 ובכן, זה לא מספיק רק לשים את הקובץ בתוך התיקייה שלי. 480 00:22:33,210 --> 00:22:35,790 אני צריך בעצם לעשות את הדברים הבאים. 481 00:22:35,790 --> 00:22:40,210 >> תנו לי ללכת לספריית Vhosts שלי, לתוך localhost, לציבור, ולתת 482 00:22:40,210 --> 00:22:41,680 לי לעשות את מקף L LS. 483 00:22:41,680 --> 00:22:44,510 ויש עוד כמה דברים לכאן למטרות של היום. 484 00:22:44,510 --> 00:22:50,540 אבל שים לב בצד השמאל, ליד לindex.html, אנחנו רואים אחד RW בלבד. 485 00:22:50,540 --> 00:22:53,560 ובעבר, מה יש RW עמד ל? 486 00:22:53,560 --> 00:22:54,240 >> רק לקרוא או לכתוב. 487 00:22:54,240 --> 00:22:58,000 עובדה שזה אומר RW בצד השמאל אומר שאני, הבעלים של קובץ זה, יכול 488 00:22:58,000 --> 00:22:59,020 לקרוא או לכתוב אותו. 489 00:22:59,020 --> 00:23:05,010 אבל אני צריך לתת לכל אנשים ב העולם לקרוא את זה, אם כי לא כותב את זה. 490 00:23:05,010 --> 00:23:09,650 אז אני הולך לשנות את מצבו של קובץ, chmod, כל r בתוספת לתת 491 00:23:09,650 --> 00:23:13,910 כולם לקרוא את האישור על קובץ בשם index.html. 492 00:23:13,910 --> 00:23:18,040 >> ואם אני L מקף LS עכשיו Retype, הודעה כי, לכאן, עוד קצת 493 00:23:18,040 --> 00:23:19,160 R של צצו. 494 00:23:19,160 --> 00:23:21,090 ועכשיו, המפרט הולך לקבלת פרטים נוספים. 495 00:23:21,090 --> 00:23:24,450 עבור P 7 סט, שרק אומר כולם עכשיו יכול לקרוא קובץ זה. 496 00:23:24,450 --> 00:23:27,790 אם אני חוזר לדפדפן שלי החברה ולטעון מחדש, וזהו. 497 00:23:27,790 --> 00:23:28,750 שלום עולם. 498 00:23:28,750 --> 00:23:32,260 >> ואני אפילו יכול לפתוח הכלים Chrome שלי ותראה, בדיוק כמו עם גוגל ו 499 00:23:32,260 --> 00:23:34,590 פייסבוק שיש HTML שלי, מעוצב קצת 500 00:23:34,590 --> 00:23:35,930 לצבוע באופן שונה ו. 501 00:23:35,930 --> 00:23:40,450 אם אני הולך לכרטיסיית הרשת ולטעון מחדש הדף, שם לב שיש לקבל 502 00:23:40,450 --> 00:23:42,900 לבקש כי כרום הוא שולח למכשיר. 503 00:23:42,900 --> 00:23:46,020 יש 200 בשביל זה קובץ מסוים. 504 00:23:46,020 --> 00:23:49,340 אז בקיצור, זה איך כל אלה חלקים שונים באים יחד. 505 00:23:49,340 --> 00:23:53,530 זה פשוט כל כך קורה כי שרת האינטרנט אנחנו משתמשים עכשיו לא רחוק, 506 00:23:53,530 --> 00:23:54,210 כמו פייסבוק. 507 00:23:54,210 --> 00:23:58,330 זה ממש באותו המחשב, וזה בסדר גמור. 508 00:23:58,330 --> 00:24:00,590 >> אז מה אנחנו יכולים לעשות יותר בדף אינטרנט? 509 00:24:00,590 --> 00:24:03,110 ובכן, פשוט, בואו רוח באמצעות כמה מהדברים האלה. 510 00:24:03,110 --> 00:24:07,860 אבל תן לי ללכת קדימה ולפתוח מחדש Gedit עם index.html. 511 00:24:07,860 --> 00:24:13,980 ותנו לי להמשיך ולומר שלום CS50, לשמור קובץ זה, לחזור ל 512 00:24:13,980 --> 00:24:16,260 דפדפן, שינוי באמת underwhelming. 513 00:24:16,260 --> 00:24:19,130 >> אבל מה אם אנחנו רוצים באמת קישור למשהו עכשיו? 514 00:24:19,130 --> 00:24:23,480 אז מתברר שיכול להיות לנו קישורים ב-HTML, כי הם פשוט תגים 515 00:24:23,480 --> 00:24:24,140 את עצמם. 516 00:24:24,140 --> 00:24:27,320 זה קורה להיקרא תג עוגן. href שווה 517 00:24:27,320 --> 00:24:33,190 https://www.cs50.net, www.cs50.net ציטוט קרוב, קרוב סוגר. 518 00:24:33,190 --> 00:24:35,230 ועכשיו בואו נראה מה עוד יבוא בהמשך. 519 00:24:35,230 --> 00:24:36,500 >> אני כבר פתחתי את התג. 520 00:24:36,500 --> 00:24:38,990 עכשיו אני צריך לתת לו ביטוי כמו CS50. 521 00:24:38,990 --> 00:24:40,600 תן לי לסגור את התג. 522 00:24:40,600 --> 00:24:42,010 ושימו לב כמה דברים. 523 00:24:42,010 --> 00:24:45,270 למרות שיש דבר המסתורי הזה כאן, יש לי לא חזרתי עליו בעת 524 00:24:45,270 --> 00:24:46,010 לסגור את התג. 525 00:24:46,010 --> 00:24:48,230 אתה פשוט לסגור את התג עם השם שלו לבד. 526 00:24:48,230 --> 00:24:50,940 וזה מה שנקרא תכונה עם ערך. 527 00:24:50,940 --> 00:24:56,070 תכונות פשוט לשנות את ההתנהגות מהחלק הפנימי של דף מסוים תג. 528 00:24:56,070 --> 00:24:59,150 >> אז זה ציון שהיפר התייחסות, דרך מגונדרת להגיד 529 00:24:59,150 --> 00:25:03,660 כתובת אתר לעוגן זה, בשביל זה קישור, צריך להיות CS50.net. 530 00:25:03,660 --> 00:25:07,440 ואת הטקסט שאנחנו רוצים להראות משתמש הוא לא כתובת אתר שגלם, אלא 531 00:25:07,440 --> 00:25:08,730 המילה CS50. 532 00:25:08,730 --> 00:25:13,710 >> אז אם עכשיו אני מחדש, תן לי קרב ל בהירות, הרשה לי לטעון מחדש את הדף, 533 00:25:13,710 --> 00:25:16,460 שם לב שיש לנו בבית הספר הישן הזה כחול עם קו תחתון קישור. 534 00:25:16,460 --> 00:25:20,000 ואם אני מרחף מעליו, וזה הולך להיות קשוח כדי לראות, בפינה שמאלית התחתונה 535 00:25:20,000 --> 00:25:23,690 פינה ימנית של המסך, שים לב שזה אומר את כתובת האתר שאליו 536 00:25:23,690 --> 00:25:24,430 אני הולך ללכת. 537 00:25:24,430 --> 00:25:27,940 ואם אני לוחץ שם, וזהו, עכשיו אני עושה את דפי אינטרנט. 538 00:25:27,940 --> 00:25:30,140 ואנחנו כבר הובילו את עצמנו לדף הבית. 539 00:25:30,140 --> 00:25:32,670 >> אבל שים לב מה פוטנציאל זה מציע לנו. 540 00:25:32,670 --> 00:25:34,890 אבטחה היא במידה רבה באופנה בימים אלה. 541 00:25:34,890 --> 00:25:41,210 מה אם אני במקום לומר משהו כמו זה, ואני במקום ללכת, להגיד, בואו 542 00:25:41,210 --> 00:25:42,460 תראה, fakeCS50.net. 543 00:25:42,460 --> 00:25:44,660 544 00:25:44,660 --> 00:25:46,360 רענן דף זה. 545 00:25:46,360 --> 00:25:50,180 >> אוקיי, אז שם לב לזה עדיין נראה כאילו אני הולך CS50, אלא אם כן עיניים נבונות 546 00:25:50,180 --> 00:25:51,560 יבחין אני הולך CS50 המזויף. 547 00:25:51,560 --> 00:25:54,550 אני מנחש שתחום זה לא נלקח. 548 00:25:54,550 --> 00:25:55,960 אוקיי, אז זה לא זמין. 549 00:25:55,960 --> 00:25:56,600 אז זה טוב. 550 00:25:56,600 --> 00:25:57,900 לאף אחד אין באמת תחום זה. 551 00:25:57,900 --> 00:26:00,380 >> אבל בואו נהיה קצת יותר זדוני כי זה סוג של טיפשים. 552 00:26:00,380 --> 00:26:02,240 מה יקרה אם נשנה את זה ל Paypal. 553 00:26:02,240 --> 00:26:09,960 ומה אם אנחנו קוראים לזה, כאילו, www.paypal.badguy.com, 554 00:26:09,960 --> 00:26:12,070 כל תחום הוא. 555 00:26:12,070 --> 00:26:13,700 שכנראה קיים. 556 00:26:13,700 --> 00:26:16,260 אז עכשיו תן לי לטעון מחדש את הדף. 557 00:26:16,260 --> 00:26:22,890 וכאן יש לנו סוג של התחזות התקפה, P-H-I-S-H-I-N-G, שהוא 558 00:26:22,890 --> 00:26:26,760 מילה טיפשית נתון להתקפה כי מנסה מידע דגים, או, טוב יותר 559 00:26:26,760 --> 00:26:30,450 ובכל זאת, כסף, מאנשים על ידי הטעיית שלהם למתן מידע ה 560 00:26:30,450 --> 00:26:31,990 אחרת הם עלולים לא לעשות. 561 00:26:31,990 --> 00:26:33,500 זה נראה לגיטימי לחלוטין, נכון? 562 00:26:33,500 --> 00:26:34,930 אני חייב להיות כאן קישור לPaypal.com. 563 00:26:34,930 --> 00:26:37,700 564 00:26:37,700 --> 00:26:40,430 למען הגינות, אם אני חרמנית אותו עם כמה גרפיקה, אנחנו יכולים לגרום לזה להיראות 565 00:26:40,430 --> 00:26:41,310 יותר כמו PayPal. 566 00:26:41,310 --> 00:26:41,510 נכון? 567 00:26:41,510 --> 00:26:43,815 כי אני יכול, במאמר מוסגר, אני יכול ללכת לPaypal.com. 568 00:26:43,815 --> 00:26:47,110 ויש לנו רק לראות איך אני יכול לראות את כל של HTML שלהם. 569 00:26:47,110 --> 00:26:50,560 אני יכול פשוט להעתיק אותו ולשחזר את אסתטיקה של Paypal ולא ללכת 570 00:26:50,560 --> 00:26:51,490 בית הספר ישן כאן. 571 00:26:51,490 --> 00:26:55,010 אבל שם לב, כמובן, וזה קצת קטן עדיין, רק בחלקו התחתון 572 00:26:55,010 --> 00:26:59,190 פינה שמאלית, כמו בנקודה 10 גופן, האם אתה רואה את מה שאת כתובת אתר 573 00:26:59,190 --> 00:27:01,310 בעצם הולך להיות הוביל ל. 574 00:27:01,310 --> 00:27:06,580 >> וכך, אם אי פעם קיבל דואר זבל אומר ללכת קדימה, ואתה חשבון 575 00:27:06,580 --> 00:27:07,420 נפרץ. 576 00:27:07,420 --> 00:27:10,615 אנא לחץ על הקישור הזה ותן לנו לדעת הסיסמה שלך, כדי שנוכל להבטיח שאתה 577 00:27:10,615 --> 00:27:13,010 אותך, אף פעם לא עושה את זה. 578 00:27:13,010 --> 00:27:14,180 את הדברים האלה צריכים ללכת בלי לומר. 579 00:27:14,180 --> 00:27:17,670 אבל זה נפלא משעשע, ו טרגי, איך בכל שנה זה נראה 580 00:27:17,670 --> 00:27:19,660 במקרה שאינו אפס חלק מספר האנשים. 581 00:27:19,660 --> 00:27:21,400 >> וזה היופי של התקפות פישינג. 582 00:27:21,400 --> 00:27:23,160 אתה יכול לשלוח מיליון הודעות דוא"ל. 583 00:27:23,160 --> 00:27:27,720 וגם אם 0.01% מאנשים באמת לחץ על Paypal וייתן לך שלך 584 00:27:27,720 --> 00:27:31,040 סיסמא, זה עדיין מספר שאינו אפס אנשים פשוט שיש לתת 585 00:27:31,040 --> 00:27:32,200 לך הכסף שלהם. 586 00:27:32,200 --> 00:27:36,170 ושליחת מיילים, כמובן, היא די קל ו, למעשה, ללא תשלום 587 00:27:36,170 --> 00:27:36,970 בימים אלה. 588 00:27:36,970 --> 00:27:40,410 >> אז סיפור ארוך קצר, נפלא רעיון יפה, נכון? 589 00:27:40,410 --> 00:27:44,620 לפני שנים, זה היה המוקדם אינטרנט, מה שמאפשר אינטרנט של 590 00:27:44,620 --> 00:27:46,330 קישורים בין משאבים. 591 00:27:46,330 --> 00:27:49,520 אבל כל כך מהר זה יכול להיות משמש למטרות שליליות. 592 00:27:49,520 --> 00:27:54,100 ודואר אלקטרוני, די אם נאמרתי, אלה ימים, שמוטבעים בתוך ה-HTML. 593 00:27:54,100 --> 00:27:55,410 >> ובכן, תן לי רק דבר אחד. 594 00:27:55,410 --> 00:27:58,640 ואנו לדחות במידה רבה לסעיף ב בעיה להגדיר שבע כדי לאפשר לך 595 00:27:58,640 --> 00:28:00,000 לחקור את הפרטים. 596 00:28:00,000 --> 00:28:01,990 אבל תן לי ללכת קדימה ו לעשות כמה דברים כאן. 597 00:28:01,990 --> 00:28:04,840 אני מתכוון ללכת ובלהכריז מה שנקרא div, או 598 00:28:04,840 --> 00:28:06,080 חטיבה, של הדף. 599 00:28:06,080 --> 00:28:07,770 תן לי לסגור את תג div ש. 600 00:28:07,770 --> 00:28:11,460 >> ואני הולך להגיד את כאן החלק העליון של דף. 601 00:28:11,460 --> 00:28:14,940 ואז מתחת לזה, אני הולך לעשות משהו כמו div נוסף, סגור את זה 602 00:28:14,940 --> 00:28:17,800 תג, ולעשות את החלק התחתון של דף. 603 00:28:17,800 --> 00:28:18,840 ובואו להציל אותו. 604 00:28:18,840 --> 00:28:21,040 >> אז עכשיו בואו נחזור לתיק שלי. 605 00:28:21,040 --> 00:28:22,120 מאוד underwhelming. 606 00:28:22,120 --> 00:28:25,520 אבל מה החלוקה משמש ל, מתחת למכסת המנוע, הוא שזה בעצם 607 00:28:25,520 --> 00:28:26,920 אלמנט מבני נחמד. 608 00:28:26,920 --> 00:28:30,300 זה לא חייב שום אסתטיקה ככל אנו יכולים לראות, למעט, ככל הנראה, 609 00:28:30,300 --> 00:28:31,890 לשים את הדברים על קווים חדשים. 610 00:28:31,890 --> 00:28:36,290 >> אבל שימו לב, במאמר מוסגר, רק להכות הזן לא לחתוך אותו ב-HTML כמו שזה 611 00:28:36,290 --> 00:28:39,840 אין בג אתה עשוי לחשוב כי זה הולך לשים את פער גדול שבין נחמד 612 00:28:39,840 --> 00:28:41,300 החלק העליון והתחתון של הדף. 613 00:28:41,300 --> 00:28:43,420 אבל זה להתעלם ממנו. 614 00:28:43,420 --> 00:28:48,040 חלל לבן הוא התעלם למעשה ב דפי אינטרנט אחרים מאשר הראשונה 615 00:28:48,040 --> 00:28:51,530 אופי חלל הבר, או לשורה חדשה, שאתה מכה במקלדת. 616 00:28:51,530 --> 00:28:55,370 אם אתה רוצה יותר מעברי שורה, אתה צריך לציין את זה בעצמך. 617 00:28:55,370 --> 00:28:59,080 >> אז אני הולכת לעשות כמה דברים כאן כדי להראות את מה שקורה. 618 00:28:59,080 --> 00:29:02,700 אני הולך להוסיף תכונה ה קיים ושוב, הדרך בה אתה לומד 619 00:29:02,700 --> 00:29:07,110 מה שמייחס קיימים, מה תגים קיימים, באמת, הוא אזכור באינטרנט. 620 00:29:07,110 --> 00:29:09,750 HTML הוא הסוג של שפה - זה לא שפת תכנות. 621 00:29:09,750 --> 00:29:12,460 זה שפת סימון - שאחרי טובה חצי שעה, אולי, שעה עם 622 00:29:12,460 --> 00:29:15,930 את זה, אתה בהחלט להבין, רוב סביר להניח, את הרעיון הבסיסי. 623 00:29:15,930 --> 00:29:20,350 ולאחר מכן חיפוש של גוגל משם הוא כל את התגים האפשריים כי אתה עלול להיות 624 00:29:20,350 --> 00:29:21,170 מעוניין בו 625 00:29:21,170 --> 00:29:24,290 ולמפרט, כי הוא די ברכה ועודד את כאן. 626 00:29:24,290 --> 00:29:26,120 >> אז עכשיו תן לי ללכת קדימה ו לעשות משהו כזה. 627 00:29:26,120 --> 00:29:28,690 צבע רקע. 628 00:29:28,690 --> 00:29:32,060 ועכשיו, אני הולך לעשות משהו כמו אדום, פסיק. 629 00:29:32,060 --> 00:29:33,970 ואתה יכול לעשות את זה ב כמה דרכים שונות. 630 00:29:33,970 --> 00:29:36,770 אני פשוט סוג של ההקלדה כסופר באופן מפורש ככל האפשר. 631 00:29:36,770 --> 00:29:41,960 >> אבל מסתבר שהערך הזה כאן הוא מה שנקרא CSS, סגנון מדורג 632 00:29:41,960 --> 00:29:43,700 פחים, וזה עוד שפה לגמרי. 633 00:29:43,700 --> 00:29:46,770 יש CSS ולא כלום עם לפתוח תגים ותגים קרובים. 634 00:29:46,770 --> 00:29:48,230 יש לו לעשות עם נכסים. 635 00:29:48,230 --> 00:29:52,660 >> ומאפיינים הם פשוט ערך מפתח זוגות, שרק אומר איזו מילה, 636 00:29:52,660 --> 00:29:54,680 מעי גס, ולאחר מכן איזו מילה אחרת. 637 00:29:54,680 --> 00:29:57,940 ואם יש לך אלה מרובים, או רק אחד כאן, אתה יכול בסופו של אותו עם 638 00:29:57,940 --> 00:29:59,390 פסיק, רק לבהירות. 639 00:29:59,390 --> 00:30:01,370 אבל גם את זה, יעבוד כאן. 640 00:30:01,370 --> 00:30:02,500 >> עכשיו מה זה הולך לעשות? 641 00:30:02,500 --> 00:30:03,610 אתה יכול לנחש. 642 00:30:03,610 --> 00:30:05,930 תן לי ללכת קדימה וטען מחדש דף זה. 643 00:30:05,930 --> 00:30:07,300 ועכשיו זה באמת בא. 644 00:30:07,300 --> 00:30:09,150 אז החלק העליון של הדף שלי הוא אדום. 645 00:30:09,150 --> 00:30:12,380 אבל מה שמפתח כאן הוא ש, שציינתי קודם לכן, div שנותן לך 646 00:30:12,380 --> 00:30:13,220 חלוקה של הדף. 647 00:30:13,220 --> 00:30:14,410 וזה אכן מה שהיא עושה. 648 00:30:14,410 --> 00:30:17,920 זה בעצם מחלק את הדף ל מלבן שאתה יכול לאחר מכן 649 00:30:17,920 --> 00:30:18,720 מניפולציות. 650 00:30:18,720 --> 00:30:22,330 >> והרעיון הזה של מלבנים הוא סוג של משכנע בזה, אם אתה חושב על 651 00:30:22,330 --> 00:30:26,410 ביותר לכל אתר, יש כנראה כמה מבנה אליו. 652 00:30:26,410 --> 00:30:29,620 רובכם ראו כנראה רק לעתים נדירות בדף הבית של פייסבוק, אם אתה מחובר 653 00:30:29,620 --> 00:30:30,440 בכל הזמן. 654 00:30:30,440 --> 00:30:33,920 >> אבל בדף הבית של פייסבוק, יש איזה div לאורך החלק העליון. 655 00:30:33,920 --> 00:30:36,140 וזה לא יכול להיות פשוט כdiv אחד, אבל יש 656 00:30:36,140 --> 00:30:37,560 אזור מלבני שם. 657 00:30:37,560 --> 00:30:40,290 שאר הדף הוא כמו div ענק, כמו הרבה 658 00:30:40,290 --> 00:30:41,910 אזור מלבני גדול יותר. 659 00:30:41,910 --> 00:30:44,540 אז סיפור ארוך קצר, רק על ידי בעל אבני הבניין הקטן האלה, את 660 00:30:44,540 --> 00:30:49,250 יכולת מודל דברים כמו מלבנים, אם רחב או צר, אתה יכול גם 661 00:30:49,250 --> 00:30:53,680 להפוך את העמודות באופן פוטנציאלי, מאפשר לך להוציא דפים, באמת, אבל אתה 662 00:30:53,680 --> 00:30:54,100 הייתי רוצה. 663 00:30:54,100 --> 00:30:56,170 אנחנו באמת פשוט מגרדים את פני השטח כאן. 664 00:30:56,170 --> 00:30:59,820 >> ואכן, אם אני עושה אחד אחד אחר, תן לי ללכת ולעשות בסגנון, 665 00:30:59,820 --> 00:31:05,410 צבע רקע, אנחנו נעשה משהו כמו ציטוטים כחולים, קרובים. 666 00:31:05,410 --> 00:31:06,620 בואו רענן. 667 00:31:06,620 --> 00:31:08,260 אז עכשיו זה מתחיל להיות אפילו יותר מכוער. 668 00:31:08,260 --> 00:31:11,520 אבל עכשיו אני די יכול להשוויץ P להגדיר חמישה כישורים, נכון? 669 00:31:11,520 --> 00:31:12,690 אדום. 670 00:31:12,690 --> 00:31:15,640 זה מזכיר לי RGB, אדום משולשים כחולים ירוקים. 671 00:31:15,640 --> 00:31:19,330 ובכן, מסתבר בתכנות אינטרנט, או עיצוב אתרים, שהוא זה, שיש לנו 672 00:31:19,330 --> 00:31:21,650 עדיין לא לתכנת כל דבר כשלעצמו, למעשה אתה יכול 673 00:31:21,650 --> 00:31:22,880 יש קוד הקסדצימלי. 674 00:31:22,880 --> 00:31:26,480 אז משהו משהו, משהו משהו, משהו משהו. 675 00:31:26,480 --> 00:31:30,650 אז אתה יכול לקבל שש הקסדצימלי דמויות, או שלוש, במקרים מסוימים, 676 00:31:30,650 --> 00:31:33,480 וכל אחד מסימני השאלה האלה חייב להיות ספרות הקסדצימליים, 677 00:31:33,480 --> 00:31:34,985 אפס עד F. 678 00:31:34,985 --> 00:31:41,000 >> אם אני רוצה יש לי הרבה אדום, ו לא ירוק, ולא כחול, מה 679 00:31:41,000 --> 00:31:43,740 היפוכו של אפס בעת שימוש hex? 680 00:31:43,740 --> 00:31:44,480 זה f. 681 00:31:44,480 --> 00:31:51,130 אז אני יכול לעשות FF, אפס אפס, אפס אפס, לשמור את זה, ועכשיו לבוא לכאן. 682 00:31:51,130 --> 00:31:52,700 ואני לא ממש רואה את שינוי. 683 00:31:52,700 --> 00:31:56,230 אז ציטוט סוף ציטוט "אדום" היא ככל הנראה שם נרדף לכל אדום, 684 00:31:56,230 --> 00:31:57,610 לא ירוק, לא כחול. 685 00:31:57,610 --> 00:31:59,960 בינתיים, בואו בכוונה לשנות זה צריך להיות משהו 686 00:31:59,960 --> 00:32:01,210 אקראי, כמו ABCDF. 687 00:32:01,210 --> 00:32:03,790 688 00:32:03,790 --> 00:32:05,860 >> בואו לראות מה זה. 689 00:32:05,860 --> 00:32:08,530 זה כחול ממש נחמד, למעשה, כחול תינוק. 690 00:32:08,530 --> 00:32:11,820 בסדר, אז אלה הם רק עכשיו שילובים של אקראיים במקצת 691 00:32:11,820 --> 00:32:12,210 תווים. 692 00:32:12,210 --> 00:32:13,410 אז אנחנו לא להסתבך בכאן. 693 00:32:13,410 --> 00:32:15,930 אבל שוב, זה מדבר על הדיוק כי אתה יכול להתחיל 694 00:32:15,930 --> 00:32:19,090 חל - גם אם אתה מאוד המום על ידי האסתטיקה. 695 00:32:19,090 --> 00:32:21,750 למעשה, אם אתה באמת רוצה להיות התרשמתי, תנו לי ללכת קדימה ולשנות 696 00:32:21,750 --> 00:32:23,500 את גודל הגופן, למשל. 697 00:32:23,500 --> 00:32:25,960 ושים לב לנקודת פסיק, ה יש צורך לשם. 698 00:32:25,960 --> 00:32:29,570 >> גודל גופן, אנחנו יכולים להיות פשוט מגוחכים כאן, 96 נקודות. 699 00:32:29,570 --> 00:32:31,280 שמור את זה. 700 00:32:31,280 --> 00:32:33,670 וואו, זה גודל גופן גדול. 701 00:32:33,670 --> 00:32:35,490 בסדר, אז זה קל מאוד. 702 00:32:35,490 --> 00:32:38,260 ובעצם, אתה בעצם רואה דף האינטרנט הראשון שעשיתי 703 00:32:38,260 --> 00:32:40,060 לפני שנים, כאשר אני ראשון למד את החומר הזה. 704 00:32:40,060 --> 00:32:42,190 זה מאוד קל לעשות מאוד דברים איומים במהירות. 705 00:32:42,190 --> 00:32:46,115 >> ואם אתה מכיר את Wayback מכונת על archive.org, אתה 706 00:32:46,115 --> 00:32:48,210 ניתן למצוא את כל המחריד שלי דפי אינטרנט לתואר ראשונים. 707 00:32:48,210 --> 00:32:50,090 לאחד היה קרמיט הצפרדע בחזית. 708 00:32:50,090 --> 00:32:53,150 עברתי שלב שבו חשבתי זה היה מגניב לקחת את הרקע של 709 00:32:53,150 --> 00:32:56,320 וילון אדום, כאשר נודע לי איך אתה יכולות שוב תמונות רעפים, ושוב, ו 710 00:32:56,320 --> 00:32:59,540 שוב, כדי למלא את דף עם וילון אדום דביק גדול. 711 00:32:59,540 --> 00:33:03,120 ולאחר מכן, על גבי זה, היה סמל כי אתה צריך ללחוץ כדי להיכנס לבית שלי 712 00:33:03,120 --> 00:33:04,960 דף משום שהיה מאוד באופנה. 713 00:33:04,960 --> 00:33:08,870 >> ולאחר מכן התכנית הראשונה שלי שאי פעם כתבה לא היה ב-PHP, אבל בשפה 714 00:33:08,870 --> 00:33:12,260 בשם פרל, כתב בספר אורחים, בי זה דבר ממש מגניב ש 715 00:33:12,260 --> 00:33:14,250 הרבה אנשים מצפים ממך יש בדף הבית. 716 00:33:14,250 --> 00:33:17,510 כשאתה מגיע לדף, הם רוצים אותך כדי להיכנס, ואומרים מי אתה, 717 00:33:17,510 --> 00:33:18,720 ולמה אתה שם. 718 00:33:18,720 --> 00:33:21,320 זה עיצוב אתרים בסגנון מאוד 1990. 719 00:33:21,320 --> 00:33:24,130 >> אבל בימים אלה, ללא ספק, יש לנו מגיע הרבה יותר רחוק. 720 00:33:24,130 --> 00:33:27,560 ואתה עוד תראה, בסעיף, ואפילו בבעיה להגדיר שבע, על ידי 721 00:33:27,560 --> 00:33:31,570 מינוף ספריות בימים אלה, זה כל כך הרבה יותר קל לעשות 722 00:33:31,570 --> 00:33:33,400 דברים יפים יותר במהירות. 723 00:33:33,400 --> 00:33:36,550 ממש כאן, אנחנו רק מגרדים את פני השטח של מה שאתה יכול לעשות 724 00:33:36,550 --> 00:33:37,400 סגנונית. 725 00:33:37,400 --> 00:33:41,660 >> ואכן, כבר, תן לי להדגיש כי זה כבר מתחיל להיות מכוער, לא 726 00:33:41,660 --> 00:33:46,030 רק מבחינה אסתטית, אבל במונחים של סגנון של הקוד שלי, או 727 00:33:46,030 --> 00:33:47,260 עיצוב של הקוד שלי. 728 00:33:47,260 --> 00:33:52,350 אני כרגע יש התמזגתי HTML, אשר היא את תגיות הפתוחות הירקרקות שם, עם 729 00:33:52,350 --> 00:33:55,160 מאפייני CSS, אשר הוא לגיטימי לחלוטין. 730 00:33:55,160 --> 00:33:57,200 זה ממש שבו השפה היו מקורותיה. 731 00:33:57,200 --> 00:34:01,030 >> אבל בעניין של עיצוב נקי, כמו שהתחלנו את הדברים הפקטורינג 732 00:34:01,030 --> 00:34:05,370 מ. קבצי C לקבצי h, בואו לי דווקא לתרגל סוג כזה של 733 00:34:05,370 --> 00:34:07,990 עיקרון ולהתחיל לעשות זה במקום. 734 00:34:07,990 --> 00:34:13,280 תן לי לשים את תג בסגנון כאן, אשר קיים גם ב-HTML, ונתן לי 735 00:34:13,280 --> 00:34:15,330 ציין את הדברים הבאים. 736 00:34:15,330 --> 00:34:16,360 תן לי למחוק זאת. 737 00:34:16,360 --> 00:34:18,110 צבע רקע הולך להיות אדום. 738 00:34:18,110 --> 00:34:19,800 אני הולך למחוק את זה לגמרי. 739 00:34:19,800 --> 00:34:22,580 אני הולך להיפטר מהסגנון תכונה, ואני הולך באופן ייחודי 740 00:34:22,580 --> 00:34:24,620 div לזהות את זה עם מילה - 741 00:34:24,620 --> 00:34:28,750 באופן שרירותי, אבל באופן סביר, ציטוט סוף ציטוט "מלמעלה". והאיד הוא מיוחד 742 00:34:28,750 --> 00:34:32,530 תכונה ייחודית שמגדירה אלמנט HTML מסוים 743 00:34:32,530 --> 00:34:33,850 כבעל מזהה את זה. 744 00:34:33,850 --> 00:34:37,969 >> אם אני עכשיו רוצה מסוגנן זה, עד כאן ב ראש הדף שלי, בתוך 745 00:34:37,969 --> 00:34:41,730 תג סגנון, יבחין כי אני יכול לעשות עליון חשיש. 746 00:34:41,730 --> 00:34:45,300 ואז אני יכול לשים כמה מתולתל פלטה, המזכיר C, ולאחר מכן אפשר 747 00:34:45,300 --> 00:34:47,130 הדבק לי בסגנון הזה. 748 00:34:47,130 --> 00:34:49,929 ותנו לי להמשיך ולצפות כאן לאן אני הולך עם זה. 749 00:34:49,929 --> 00:34:53,380 תן לי גם ליצור אחד לdiv התחתון. 750 00:34:53,380 --> 00:34:58,010 תן לי לתפוס את הקוד המחריד הזה מלמטה כאן, הכניס אותו לכאן, ואני אהיה 751 00:34:58,010 --> 00:35:00,770 זה קצת יותר אנאלי עם החברה ומסוגנן רק על ידי לשים את הדברים בעצמם 752 00:35:00,770 --> 00:35:02,540 קו, שהסתיים עם נקודה ופסיק. 753 00:35:02,540 --> 00:35:04,430 תן לי להיפטר מתג הסגנון. 754 00:35:04,430 --> 00:35:05,320 >> אבל אני לא עשיתי עדיין. 755 00:35:05,320 --> 00:35:07,406 אני צריך לעשות עוד דבר אחד. 756 00:35:07,406 --> 00:35:10,070 כן, id שווה סוף ציטוט, "מלמטה", ציטוט או מה שלא מזהה אני רוצה 757 00:35:10,070 --> 00:35:11,740 לתת לו אלמנט. 758 00:35:11,740 --> 00:35:13,420 עכשיו, הרשה לי לחזור לכאן. 759 00:35:13,420 --> 00:35:14,360 ואת זה הוא זוועתי. 760 00:35:14,360 --> 00:35:15,805 אני לא יכול להתמודד עם 96 נקודות. 761 00:35:15,805 --> 00:35:16,960 בואו נעשה 24 נקודות. 762 00:35:16,960 --> 00:35:18,320 או שאתה יכול להיות מדויק יותר. 763 00:35:18,320 --> 00:35:21,800 למעשה אתה יכול להשתמש בפיקסלים, פיקסלים, ולכן כי אתה באמת מקבל עדין תבואה 764 00:35:21,800 --> 00:35:23,220 שליטה על הדף שלך. 765 00:35:23,220 --> 00:35:26,860 >> במאמר מוסגר, זה לא בהכרח הדבר הטוב ביותר אם משתמשים, עבור 766 00:35:26,860 --> 00:35:29,650 סיבות לנגישות, רוצים תוכל להגדיל את הגדלים. 767 00:35:29,650 --> 00:35:32,650 אז מבין שיש דרכים לעשות דברים שלא בהכרח 768 00:35:32,650 --> 00:35:34,230 כל מה שקוד קשה. 769 00:35:34,230 --> 00:35:37,220 >> בסדר, אז זה יותר גדול, 24 נקודות, מכל מה שברירת המחדל הוא. 770 00:35:37,220 --> 00:35:38,630 אבל עכשיו זה שואב קטן. 771 00:35:38,630 --> 00:35:40,230 ותנו לי לקחת את זה צעד אחד קדימה. 772 00:35:40,230 --> 00:35:47,220 בדיוק כמו הרעיון של קבצי כותרת, שם לב שאנחנו צעד אחד קרוב יותר לזה. 773 00:35:47,220 --> 00:35:52,000 יש לי בחשבון, אבל עדיין נשאר, בתוך הדף שלי, כללי CSS אלה. 774 00:35:52,000 --> 00:35:56,200 למה אולי אני רוצה לקחת את זה צעד אחד נוסף, להסיר את זה לגמרי, ו 775 00:35:56,200 --> 00:35:59,860 לשים אותו בקובץ נפרד? 776 00:35:59,860 --> 00:36:01,070 >> אז אני יכול להשתמש בו שוב, נכון? 777 00:36:01,070 --> 00:36:03,155 זה פשוט סוג של אינטואיציה עכשיו. 778 00:36:03,155 --> 00:36:06,340 בעבר, טען שזה היה רק מקבלים מכוער שיש את הסגנון 779 00:36:06,340 --> 00:36:08,480 תכונות פנימיות של Divs עצמם. 780 00:36:08,480 --> 00:36:09,750 אבל רק סוג של חושב שדרך. 781 00:36:09,750 --> 00:36:13,560 כדף שלך מקבל עוד ועוד, אם אתה משקיע כאן, וכאן, ו 782 00:36:13,560 --> 00:36:18,350 כאן, וכאן, כל אלה שונים צבעים וגדלי גופן, ועוד כאלה 783 00:36:18,350 --> 00:36:22,550 תכונות, הדף שלך היא מהר מאוד הולך להיות בלתי ניתנת לניהול בשבילך. 784 00:36:22,550 --> 00:36:24,570 >> אם מישהו בא אליך ו אומר, אה, אתה יודע מה? 785 00:36:24,570 --> 00:36:28,070 אני באמת רוצה לשנות את גודל הגופן על ידי שתי נקודות נוספות, אתה 786 00:36:28,070 --> 00:36:31,275 אולי צריך ללכת ולחפש ולהחליף מספר עצום של שורות קוד. 787 00:36:31,275 --> 00:36:35,170 זה הרבה יותר משכנע לרכז כל האסתטיקה כאלה כאן. 788 00:36:35,170 --> 00:36:38,850 אבל אם אתה רוצה לעשות שימוש חוזר במי אסתטיקה בדפי אינטרנט מרובים, כל 789 00:36:38,850 --> 00:36:41,100 משכנע יותר, עבור למשל, ליצור קובץ 790 00:36:41,100 --> 00:36:45,290 התקשרתי עם תכנים אלה. 791 00:36:45,290 --> 00:36:46,680 >> ותנו לי לעשות את זה. 792 00:36:46,680 --> 00:36:51,150 793 00:36:51,150 --> 00:36:51,920 שמור קובץ זה. 794 00:36:51,920 --> 00:36:55,580 אני אומר styles.css, שרירותי, אבל קונבנציונלי. 795 00:36:55,580 --> 00:36:58,770 אני אשים אותו בביתו של ג'ון הרווארד מדריך כעת לפשטות. 796 00:36:58,770 --> 00:37:03,880 ומה אני יכול לעשות בדף האינטרנט שלי הוא להגיע להיפטר מתג הסגנון לגמרי, 797 00:37:03,880 --> 00:37:08,270 וקצת unintuitively, השתמש בקישור תג, אשר לא נותן לך קישור ב 798 00:37:08,270 --> 00:37:13,140 קישור, מובן שניתן ללחוץ, אבל שבו אני אומר קישור, href שווה 799 00:37:13,140 --> 00:37:15,120 styles.css. 800 00:37:15,120 --> 00:37:20,050 ומערכת היחסים שהאלמנט הזה יש בדף האינטרנט הוא לשמש 801 00:37:20,050 --> 00:37:21,280 גיליון הסגנון שלו. 802 00:37:21,280 --> 00:37:22,670 >> אז איך אני יודע את זה? 803 00:37:22,670 --> 00:37:25,950 אחד, אתה פשוט לקרוא את המדריך, או שאתה גוגל בסביבה, ואתה 804 00:37:25,950 --> 00:37:27,000 מסתכל על משאבים שונים. 805 00:37:27,000 --> 00:37:30,520 אני מתכוון, זה באמת הוא איך אתה מרים טכניקות כמו זה, וכן, עולה בקנה אחד 806 00:37:30,520 --> 00:37:34,720 עם הרעיון הזה של ללמד את עצמך חדש שפות, שוב, אתה תמצא כי 807 00:37:34,720 --> 00:37:38,830 יש רק מספר סופי של דברים לכל שפה, ברגע שאתה מקבל 808 00:37:38,830 --> 00:37:41,310 אותם, אתה תמצא שהוא מקבל מהר יותר ויותר לכתוב. 809 00:37:41,310 --> 00:37:44,180 ואכן לומד, תכנות חדש שפה היא כל כך הרבה יותר מהר מאשר חדשה 810 00:37:44,180 --> 00:37:47,380 שפה מדוברת, כי הדברים האלה הם הרבה יותר קטנים והרבה יותר 811 00:37:47,380 --> 00:37:48,820 בדיוק מוגדר. 812 00:37:48,820 --> 00:37:51,590 >> אבל אני הדגיש קצת של האנומליה כאן. 813 00:37:51,590 --> 00:37:57,750 למה יש לי הדגיש את זה קו נטוי כאן? 814 00:37:57,750 --> 00:37:59,420 כי אני צריך לסגור את התג. 815 00:37:59,420 --> 00:38:00,530 אני צריך לסגור את התג. 816 00:38:00,530 --> 00:38:02,750 ואתה תמצא את משאבים אין ספור באינטרנט שלא 817 00:38:02,750 --> 00:38:04,080 בהכרח תגים קרובים. 818 00:38:04,080 --> 00:38:08,770 ומציאותי, זה לא ממש לצורך טכני ויש 819 00:38:08,770 --> 00:38:11,950 סיבות של מציאות, הן רק דפדפנים די סובלני לטעויות באינטרנט 820 00:38:11,950 --> 00:38:14,360 דפים, לטוב או לרע, אבל בעיקר גרוע. 821 00:38:14,360 --> 00:38:18,830 >> אז זה כאן הוא רק דרך נקיה של אומר משהו טיפשי כזה, 822 00:38:18,830 --> 00:38:22,330 שבו אם אתה רוצה לפתוח את תג הקישור אבל לסגור אותו, באמת אין מושג 823 00:38:22,330 --> 00:38:23,720 תוכן עבור תג קישור. 824 00:38:23,720 --> 00:38:26,000 זה רק אומר לטעון את זה קובץ ולשים אותו כאן. 825 00:38:26,000 --> 00:38:30,610 זה כמו למנות חד בC. אתה יכול לפתוח ולסגור את תג בבת אחת 826 00:38:30,610 --> 00:38:31,660 בתוך אותו התג. 827 00:38:31,660 --> 00:38:33,520 ויש גם דוגמאות אחרות של זה. 828 00:38:33,520 --> 00:38:37,280 זו לא הדרך לעשות את זה, אבל תג br, למעברי שורה, אם אני 829 00:38:37,280 --> 00:38:41,780 באמת רציתי להשיג את מה שהייתי ניסיתי לפני על ידי להכות הזן, אם 830 00:38:41,780 --> 00:38:45,380 אני אומר באופן מפורש מעבר שורה, מעבר שורה, מעבר שורה, מעבר שורה, ו 831 00:38:45,380 --> 00:38:49,100 לאחר מכן טען מחדש דף זה, עכשיו תוכל להבחין חלק תחתון של הדף שהוא, 832 00:38:49,100 --> 00:38:51,940 אכן, הרבה יותר למטה ב החלק התחתון של הדף. 833 00:38:51,940 --> 00:38:55,840 אבל גם אפשר לעשות את זה הרבה יותר נקי עם CSS, ועם השוליים, 834 00:38:55,840 --> 00:38:58,120 ועם אסתטי אחרות כגון טכניקות. 835 00:38:58,120 --> 00:38:59,940 >> אז לעת עתה, את המזנונים הם זה. 836 00:38:59,940 --> 00:39:02,320 ב-HTML, יש לנו אלה דברים נקראים תגים. 837 00:39:02,320 --> 00:39:04,830 ב-CSS, יש לנו את הדברים האלה התקשר נכסים. 838 00:39:04,830 --> 00:39:08,700 אנחנו יכולים מתערבבים שתי שפות אלו, או על ידי שימוש בתכונת הסגנון, 839 00:39:08,700 --> 00:39:14,240 או תג הסגנון, או טוב ביותר עד כה, פקטורינג אותו לגמרי, כפי שאנו עושים 840 00:39:14,240 --> 00:39:17,270 בעיה בהגדרת 7. 841 00:39:17,270 --> 00:39:23,820 שאלות, אם כן, על יסודות רעיוניים כאן? 842 00:39:23,820 --> 00:39:24,740 >> קהל: יש לי שאלה. 843 00:39:24,740 --> 00:39:25,630 >> רמקול 1: אה, סליחה. 844 00:39:25,630 --> 00:39:28,880 >> קהל: למה זה לא היה בצבע - 845 00:39:28,880 --> 00:39:31,410 >> רמקול 1: אה, בכרטיסייה האחרת? 846 00:39:31,410 --> 00:39:32,232 זה כאן? 847 00:39:32,232 --> 00:39:33,482 >> קהל: לא, זה כמו - 848 00:39:33,482 --> 00:39:35,330 849 00:39:35,330 --> 00:39:39,480 >> 1 דובר: אה, זה בגלל אני להיות מרושל. 850 00:39:39,480 --> 00:39:41,350 אני שם את הקובץ במקום הלא נכון. 851 00:39:41,350 --> 00:39:47,840 אז אם באמת שמתי את זה כאן, ואני chmod זה, כל + R לstyles.css, ו 852 00:39:47,840 --> 00:39:52,050 עכשיו לטעון מחדש את הדף, עכשיו אנחנו לקבל את סגנון גב. 853 00:39:52,050 --> 00:39:54,530 ובגלל שגודל הגופן הוא שונים, אנו לא רואים די הרבה 854 00:39:54,530 --> 00:39:55,010 שטח לבן. 855 00:39:55,010 --> 00:39:58,240 אנחנו במקום לראות מה ברירת מחדל הוא במקום. 856 00:39:58,240 --> 00:40:00,050 שאלה טובה. 857 00:40:00,050 --> 00:40:00,846 כן? 858 00:40:00,846 --> 00:40:02,630 >> קהל: מדוע הקישור תג בתוך הכותרת? 859 00:40:02,630 --> 00:40:06,270 >> רמקול 1: למה את הקישורים בתוך תג של הכותרת - 860 00:40:06,270 --> 00:40:07,650 תשובה קצרה, רק בגלל ש. 861 00:40:07,650 --> 00:40:08,930 זה מה שהוחלט. 862 00:40:08,930 --> 00:40:10,720 זה מקום שבי את תגי הקישור הולכים כש יש לך מה שנקרא 863 00:40:10,720 --> 00:40:13,650 גיליון סגנונות חיצוני. 864 00:40:13,650 --> 00:40:16,430 שאלות אחרות? 865 00:40:16,430 --> 00:40:17,770 >> בסדר, גם בואו נעשינו את זה. 866 00:40:17,770 --> 00:40:20,500 יש לנו כל כך כיף לפנינו היום. 867 00:40:20,500 --> 00:40:22,480 זה רק מגרד פני השטח של ה-CSS. 868 00:40:22,480 --> 00:40:23,010 בואו נעשה את זה. 869 00:40:23,010 --> 00:40:25,980 בואו לקחת הפסקה של חמש דקות כאן משום, למייל שלי, בואו לתלות ב 870 00:40:25,980 --> 00:40:27,200 שם עד 02:30 איש היום. 871 00:40:27,200 --> 00:40:28,540 אבל אם אתה עושה צריך לעזוב, וזה בסדר. 872 00:40:28,540 --> 00:40:30,380 אבל אנחנו לפרוץ קדימה לאחר הפסקה של חמש דקות. 873 00:40:30,380 --> 00:40:35,930 ואנחנו תלמדו משהו קטן על PHP, MySQL, ועוד. 874 00:40:35,930 --> 00:40:44,520 >> בסדר, אז בואו ננסה, עכשיו, כדי לקשור כמה מהרעיונות האלה ביחד ולעשות, 875 00:40:44,520 --> 00:40:46,180 אומר, מנוע החיפוש שלנו. 876 00:40:46,180 --> 00:40:48,570 שמתי לב, ולא בסקרנות, את הדברים הבאים. 877 00:40:48,570 --> 00:40:52,610 כאשר אתה בGoogle.com, אתה בדרך כלל בכתובת אתר כמו זה כאן 878 00:40:52,610 --> 00:40:54,870 עם שום דבר אחרי נקודת com. 879 00:40:54,870 --> 00:40:59,760 אבל אם אני מחפש משהו טיפשי כמו חתולים, והקישו על Enter, נקבל - לא 880 00:40:59,760 --> 00:41:01,300 טיפשי, אבל אתה יודע. 881 00:41:01,300 --> 00:41:05,410 >> אוקיי, אז תשימו לב, בחלקו העליון של הדף, עכשיו, את כתובת האתר יש, כמובן, השתנתה. 882 00:41:05,410 --> 00:41:07,190 וזה לא דבר חדש לכל אחד מאיתנו. 883 00:41:07,190 --> 00:41:09,290 אתה לוחץ על קישורים וכאלה קורה באינטרנט. 884 00:41:09,290 --> 00:41:11,420 אבל מה שמעניין כאן הוא הבא. 885 00:41:11,420 --> 00:41:14,500 יש המון עומס, אבל בואו שלי לזרוק דברים שאני לא 886 00:41:14,500 --> 00:41:16,600 ממש הבין או לא באמת נראה רלוונטי. 887 00:41:16,600 --> 00:41:18,490 >> תן לי להיפטר מזה. 888 00:41:18,490 --> 00:41:20,030 תן לי להיפטר מזה. 889 00:41:20,030 --> 00:41:22,630 ותנו לי רק להיפטר מכל זה. 890 00:41:22,630 --> 00:41:28,840 ועכשיו שם לב שחתולים הוא בכתובת האתר, אחריו עם Q, אז שווה 891 00:41:28,840 --> 00:41:29,710 היכנס מול זה. 892 00:41:29,710 --> 00:41:32,110 אז מתברר ככה ככה זה עובד כשמדובר 893 00:41:32,110 --> 00:41:33,360 לקלט ופלט. 894 00:41:33,360 --> 00:41:37,510 >> ארוך שדיברנו עליו קופסות שחורות, נכון? 895 00:41:37,510 --> 00:41:41,650 אז אם זו היא פונקציה מיושמת כאן כמו קופסה שחורה, זה לוקח קלט 896 00:41:41,650 --> 00:41:45,290 ומייצר תפוקה, טוב, משמעות הדבר היא שבו אתה לספק קלט כדי 897 00:41:45,290 --> 00:41:49,270 אתר אינטרנט הוא בדרך, לעתים קרובות, של כתובות האתרים שלה. 898 00:41:49,270 --> 00:41:52,850 אתה פשוט לשים סימן שאלה ולאחר מכן על מקש שווה ערך. 899 00:41:52,850 --> 00:41:56,740 ואז אולי אמפרסנד, ולאחר מכן מפתח נוסף שווה ערך, אז אולי 900 00:41:56,740 --> 00:41:58,810 אמפרסנד אחר, מפתח שווה ערך. 901 00:41:58,810 --> 00:42:03,030 ככה אתה עובר במפתחות ו ערכים, זוגות של תשומות. 902 00:42:03,030 --> 00:42:07,050 >> אז אם אני מכה הזן עכשיו, מה מעניין על גוגל הוא שכל 903 00:42:07,050 --> 00:42:10,420 העומס שמחקתי לא מופיע להיות הכרחי. 904 00:42:10,420 --> 00:42:15,120 כל מה שאני צריך לשלוח אותו לגוגל היא שאלה סימן שאלה שווה חתולים כדי לקבל 905 00:42:15,120 --> 00:42:16,160 בחזרה כמה חתולים. 906 00:42:16,160 --> 00:42:20,160 ובכן, משמעות של זה, ולאחר מכן, הוא אם אני מושך את gedit, אני כבר התחלתי 907 00:42:20,160 --> 00:42:24,360 מה שהופך את מנוע החיפוש משלי כאן בקובץ שנקרא seach0.html. 908 00:42:24,360 --> 00:42:26,750 >> ותן לי ללכת קדימה ולמחוק שורה אחת יותר, כי אתה 909 00:42:26,750 --> 00:42:27,910 לא היו אמור לראות. 910 00:42:27,910 --> 00:42:31,070 ועכשיו, תן לי להיכנס לדפדפן שלי, כל כך לא לגוגל, וללכת ל 911 00:42:31,070 --> 00:42:34,900 http://localhost. 912 00:42:34,900 --> 00:42:36,220 וזה הולך לקבל בדרך. 913 00:42:36,220 --> 00:42:43,240 אז אנחנו הולכים צריכים להיפרד כי לעת עתה, מהלך זה כאן, 914 00:42:43,240 --> 00:42:46,270 הו, עכשיו אנחנו הולכים צריכים להיפרד לקובץ זה. 915 00:42:46,270 --> 00:42:51,700 >> בכל פעם שיש לך קובץ שנקרא index.html או index.php ב 916 00:42:51,700 --> 00:42:54,980 ספרייה, אם שרת האינטרנט הוא מוגדר בדרך זו, מה שאתה 917 00:42:54,980 --> 00:42:59,600 תראה, כברירת מחדל, הוא את תוכנו של ש קובץ ולא רישום של 918 00:42:59,600 --> 00:43:02,330 ספרייה, כמו שאני רוצה כאן. 919 00:43:02,330 --> 00:43:03,750 עוד על כך במפרט. 920 00:43:03,750 --> 00:43:04,610 אתה לא רואה את זה. 921 00:43:04,610 --> 00:43:06,360 >> אז זה מה שאני באמת רוצה. 922 00:43:06,360 --> 00:43:08,810 אבל לפני רגע, לא היה קובץ בתיקייה זו נקרא 923 00:43:08,810 --> 00:43:11,290 index.html וindex.php. 924 00:43:11,290 --> 00:43:13,380 וכך היה שרת האינטרנט מראה לי את הקבצים הללו. 925 00:43:13,380 --> 00:43:15,900 במקום זאת, אני רוצה בספרייה זו רישום כאן. 926 00:43:15,900 --> 00:43:18,340 >> אז אני הולך להיכנס CSS וללכת לsearch0. 927 00:43:18,340 --> 00:43:21,770 ואני טוען שזה שזה הולך להיות תחילת התחרותית שלי 928 00:43:21,770 --> 00:43:22,490 מנוע חיפוש. 929 00:43:22,490 --> 00:43:27,630 וכדי לעשות את זה, אני מתכוון ללכת ב כאן, לCSS, ולפתוח עם 930 00:43:27,630 --> 00:43:30,190 gedit, חיפוש 0. 931 00:43:30,190 --> 00:43:32,280 אבל למרבה הצער, יש לא הרבה קורה כאן. 932 00:43:32,280 --> 00:43:35,690 כל מה שעשיתי היה להשתמש בתג כותרת, אשר קורה שייקרא H1, אשר 933 00:43:35,690 --> 00:43:38,180 בעצם אומר גדול ו מודגש, וזהו זה. 934 00:43:38,180 --> 00:43:40,810 אבל את הכלי שבאמצעותו אנו יכולים תשומות מספקות הן באמצעות אלה 935 00:43:40,810 --> 00:43:42,180 דברים נקראים צורות. 936 00:43:42,180 --> 00:43:46,040 >> אז הרשה לי להמשיך ולפתוח ולסגור, מנע, תג טופס שם. 937 00:43:46,040 --> 00:43:48,060 ותן לי ללכת ולעשות משהו כזה. 938 00:43:48,060 --> 00:43:51,430 קלט, סוג שווה טקסט. 939 00:43:51,430 --> 00:43:56,320 ואז בואו נסגור את התג בתוך את סוגריים עצמם. 940 00:43:56,320 --> 00:43:58,800 אני לא צריך להתחיל שדה טקסט ולהפסיק את שדה טקסט. 941 00:43:58,800 --> 00:44:01,080 זה פשוט הולך להיות שם או לא. 942 00:44:01,080 --> 00:44:06,210 >> ואז מתחת לזה, בואו נעשה סוג הקלט שווה להגיש. 943 00:44:06,210 --> 00:44:06,870 שמור את זה. 944 00:44:06,870 --> 00:44:08,630 ועכשיו בואו פשוט לעשות שפיות מהירה לבדוק. 945 00:44:08,630 --> 00:44:09,820 בואו לטעון מחדש. 946 00:44:09,820 --> 00:44:10,890 >> אוקיי, אז זה לא רע. 947 00:44:10,890 --> 00:44:13,260 זה לא הסגנון של גוגל, אבל זה די קרוב. 948 00:44:13,260 --> 00:44:13,920 יש שדה טקסט. 949 00:44:13,920 --> 00:44:17,190 אני יכול להקליד כמה דברים ב, על Enter, אבל שום דבר לא קורה עדיין. 950 00:44:17,190 --> 00:44:21,090 וזה בגלל שעוד לא צוין פעולה לטופס זה, אם אפשר לומר כך. 951 00:44:21,090 --> 00:44:23,860 אז אם אני חוזר לצורת היסוד, מתברר, ואני יודע שזה רק 952 00:44:23,860 --> 00:44:27,460 מהצורך לקרוא את התיעוד, כי צורת התג לוקח תכונה 953 00:44:27,460 --> 00:44:31,880 בשם פעולה שהיא כתובת האתר של האתר שבו אתה 954 00:44:31,880 --> 00:44:34,790 רוצה לשלוח את הטופס. 955 00:44:34,790 --> 00:44:37,610 >> אני לא באמת חושב שיש לנו זמן ליישם את כל החלק האחורי של 956 00:44:37,610 --> 00:44:38,570 מנועי חיפוש כיום. 957 00:44:38,570 --> 00:44:41,900 אז אנחנו פשוט הולכים לומר, אה, ללכת לgoogle.com / חיפוש. 958 00:44:41,900 --> 00:44:43,450 ועכשיו הרשה לי לסגור את הציטוטים שלי. 959 00:44:43,450 --> 00:44:46,070 ותנו לי עוד לציין כי השיטה לשימוש הולכת 960 00:44:46,070 --> 00:44:47,120 להיקרא לקבל. 961 00:44:47,120 --> 00:44:50,650 >> סיפור ארוך קצר, יש שתי דרכים, ב לפחות, שתוכל לשלוח את הפרטים 962 00:44:50,650 --> 00:44:51,880 מדפדפן לשרת. 963 00:44:51,880 --> 00:44:55,340 אחד הוא מקבל, ו, למטרות של היום, זה רק אומר בכתובת האתר. 964 00:44:55,340 --> 00:44:58,730 אתה רואה את סימני השאלה בדיוק, את שווה סימנים, וסימן חיבור ש 965 00:44:58,730 --> 00:44:59,780 שראינו קודם לכן. 966 00:44:59,780 --> 00:45:02,890 או שיש הודעה בשם חלופית. 967 00:45:02,890 --> 00:45:06,490 לעת עתה, יודע המשמשת לעתים קרובות הודעה כאשר אתה רוצה להעלות קבצים, כמו 968 00:45:06,490 --> 00:45:09,820 תמונות וכן הלאה, או כאשר אתה רוצה לשלוח את פרטי כרטיס אשראי, או 969 00:45:09,820 --> 00:45:13,810 סיסמאות, כל דבר שהוא לא עושה ממש הגיוני, מבחינה מושגית, או 970 00:45:13,810 --> 00:45:18,020 אבטחה חכמה, בסופו של כתובת האתר של הדפדפן שלך, שבי חטטנות ההורים, 971 00:45:18,020 --> 00:45:21,520 או שותפים לדירה, או כל אחד עם גישה למחשב שלך עשוי לראות. 972 00:45:21,520 --> 00:45:23,110 >> אז בואו נחסוך את זה כאן. 973 00:45:23,110 --> 00:45:24,480 ואני צריך לעשות עוד דבר אחד. 974 00:45:24,480 --> 00:45:27,250 זה לא יספיק רק כדי אומרים לי שדה טקסט. 975 00:45:27,250 --> 00:45:29,850 אני צריך לתת שדה ש של מעריך שם. 976 00:45:29,850 --> 00:45:34,500 אז הרשה לי לשאול את הבחירה של גוגל שמות, Q, וציין ששני 977 00:45:34,500 --> 00:45:38,150 מייחס אני לא ממש אכפת שמו של כפתור השליחה. 978 00:45:38,150 --> 00:45:40,890 כל מה אכפת לי היא הגשה אילו סוגי המשתמשים פנימה 979 00:45:40,890 --> 00:45:41,940 >> ועכשיו זה סוג של מכוער. 980 00:45:41,940 --> 00:45:42,820 זה פשוט אומר שיגיש. 981 00:45:42,820 --> 00:45:46,350 מתברר, ואני יודע את זה מ תיעוד, אני יכול להגיד 982 00:45:46,350 --> 00:45:51,710 ערך שווה ציטוט סוף ציטוט "cs50 Seach, "ציטוט קרוב. 983 00:45:51,710 --> 00:45:53,030 אז בואו מחדש שוב. 984 00:45:53,030 --> 00:45:57,020 אז אני ממשיך להכות פיקוד-R, או שליטה על המקלדת שלי R כדי לטעון מחדש. 985 00:45:57,020 --> 00:45:58,605 >> עכשיו יש לנו יותר מעניין מנוע חיפוש. 986 00:45:58,605 --> 00:46:00,340 זה לא נראה ממש כמו גוגל עדיין, אם כי. 987 00:46:00,340 --> 00:46:04,100 אז בואו נלך קדימה בפה ו לעשות מעבר שורה קטנה. 988 00:46:04,100 --> 00:46:06,066 >> אוקיי, אז עכשיו יש לנו גוגל. 989 00:46:06,066 --> 00:46:08,260 למעשה כמעט אין לנו גוגל. 990 00:46:08,260 --> 00:46:10,460 אז עכשיו מה יקרה? 991 00:46:10,460 --> 00:46:12,220 אני הולך להקליד משהו כמו חתולים. 992 00:46:12,220 --> 00:46:16,570 והדפדפן הולך לנתח שהצורה שאני מוגדר. 993 00:46:16,570 --> 00:46:19,470 וזה הולך לשלוח המשתמש לכתובת האתר ש. 994 00:46:19,470 --> 00:46:23,420 אז הפעם, מסיבה מוזרה, יש לי מידע נוסף על מניות 995 00:46:23,420 --> 00:46:24,410 מאשר על חתולים בפועל. 996 00:46:24,410 --> 00:46:30,580 אבל זה בסדר, כי שם לב שאנחנו עדיין בסופו כאן, q שווה חתולים. 997 00:46:30,580 --> 00:46:35,200 >> אז סיפור ארוך קצר, זה נראה די טריוויאלי לקבל קלט מהמשתמש. 998 00:46:35,200 --> 00:46:38,190 וכדי להיות הוגן, יש צרורות סוגים אחרים של שדות טופס. 999 00:46:38,190 --> 00:46:41,510 יש תיבות סימון, ומעט הדדית כפתורי רדיו בלעדיים, וכן 1000 00:46:41,510 --> 00:46:42,960 תפריטים נפתחים, ועוד. 1001 00:46:42,960 --> 00:46:46,160 אבל כל אלה הם כיחסית מיושם בקלות כ 1002 00:46:46,160 --> 00:46:48,040 שדה טקסט זה היה. 1003 00:46:48,040 --> 00:46:52,050 וסופו של דבר, אנחנו רק צריכים לעשות בטוח שמישהו מקשיב לעומת 1004 00:46:52,050 --> 00:46:56,490 בסופו של הקו כדי לקבל את זה עיבוד מידע, איכשהו, ו 1005 00:46:56,490 --> 00:46:58,440 תחזירו לנו את החתולים שלנו. 1006 00:46:58,440 --> 00:47:00,840 >> בואו נסתכל על מעט יותר מעורב ירושלים. 1007 00:47:00,840 --> 00:47:06,020 תנו לי ללכת לספרייה של Vhost שלי, למארח מקומי, ציבורי, ואיפה אני 1008 00:47:06,020 --> 00:47:06,980 לשים את קוד המקור של ימינו. 1009 00:47:06,980 --> 00:47:09,800 כל זה יהיה במגרש של אתר בשבילך להתעסק איתו. 1010 00:47:09,800 --> 00:47:15,420 ואם אני נכנסתי לfroshims, הרשה לי לפתוח את הקובץ הזה עכשיו, froshim0.php. 1011 00:47:15,420 --> 00:47:18,460 זה אחד זה קצת יותר מפורט, ולכן אנחנו לא כותבים את זה מהתחלה. 1012 00:47:18,460 --> 00:47:21,970 אבל רק עכשיו שמתי לב כמה מעט מאפיינים מוכרים. 1013 00:47:21,970 --> 00:47:24,550 >> אחד, צורת תג, פעולה שונה. 1014 00:47:24,550 --> 00:47:25,670 זה לא כתובת אתר מלאה. 1015 00:47:25,670 --> 00:47:29,930 עכשיו, זה כנראה לקובץ שנקרא register0.php כי, ברגע אחד, 1016 00:47:29,930 --> 00:47:32,660 אני הולך ללמד את עצמי קצת משהו על PHP, תכנות 1017 00:47:32,660 --> 00:47:37,360 שפה, כי PHP יכול לשמש כדי ליישם את מה שגוגל יישמה כ 1018 00:47:37,360 --> 00:47:39,650 בקצה האחורי של מנועי החיפוש שלהם. 1019 00:47:39,650 --> 00:47:42,890 >> גוגל, במציאות, כנראה משתמשת כמה פייתון, C + +, וחלק 1020 00:47:42,890 --> 00:47:44,230 צרורות של שפות אחרות. 1021 00:47:44,230 --> 00:47:48,230 אבל אנחנו בהחלט יכולים ליישם חיפוש תוצאות באמצעות PHP אם אנחנו רוצים. 1022 00:47:48,230 --> 00:47:49,610 אבל לעת עתה, אנו לשמור את זה פשוט. 1023 00:47:49,610 --> 00:47:53,320 ואת זה הוא למעשה מזכיר אחד של אתרי האינטרנט האחרים אני הראשון 1024 00:47:53,320 --> 00:47:54,490 עשה לפני שנים. 1025 00:47:54,490 --> 00:47:58,160 >> חזרה ביום שלי, אתה נרשם ל ספורט עירוני בשנה ראשונה על ידי 1026 00:47:58,160 --> 00:48:00,880 מילוי פיסת נייר, הליכה על פני החצר, ושחרורו ב 1027 00:48:00,880 --> 00:48:04,890 תיבת הדואר של פרוקטור ב Wigglesworth, וזה היה איך אתה 1028 00:48:04,890 --> 00:48:05,460 רשום. 1029 00:48:05,460 --> 00:48:09,650 וכן הפרויקט שלי זמן קצר לאחר CS50, היה לשים את זה, מה שהופך מושלם 1030 00:48:09,650 --> 00:48:13,460 תחושה, על גבי אינטרנט, שלא הייתה כמו באופנה אז כפי שהוא עכשיו. 1031 00:48:13,460 --> 00:48:17,510 אבל כל שהיינו צריך לעשות היה ליצור, למעשה, טופס ה-HTML. 1032 00:48:17,510 --> 00:48:19,640 >> והצורה שנראתה בערך כמו זה. 1033 00:48:19,640 --> 00:48:22,480 היה לי קלט עבור שמו של תלמיד השנה הראשונה. 1034 00:48:22,480 --> 00:48:27,780 היה לי עוד תיבת סימון עבור האם או או לא הם רצו להיות קפטן, מה 1035 00:48:27,780 --> 00:48:30,400 המגדר שלהם היה, ו מה שהיו במעונות שלהם. 1036 00:48:30,400 --> 00:48:33,370 ואז אני מקודד בדברים קשה כמו אפליי בית משפט, וCanaday, 1037 00:48:33,370 --> 00:48:34,880 אפור, וכן הלאה. 1038 00:48:34,880 --> 00:48:36,300 >> אז שוב, תגים חדשים. 1039 00:48:36,300 --> 00:48:39,820 לא ראיתי אותם לפני, חדש תכונות, אבל די נגיש. 1040 00:48:39,820 --> 00:48:42,360 ברגע שאתה רואה, למשל, שאתה יכול סוג של ללוות את הרעיון הזה ולהפוך את ירידה 1041 00:48:42,360 --> 00:48:43,820 למטה בתפריט לכל דבר ביותר. 1042 00:48:43,820 --> 00:48:46,350 אבל מה שחשוב הוא שכל אחד מ יש את הדברים האלה שמות. 1043 00:48:46,350 --> 00:48:49,720 ובתחתית טופס זה, יש כפתור שליחת תווית ש, 1044 00:48:49,720 --> 00:48:51,510 או ערך, הוא להירשם. 1045 00:48:51,510 --> 00:48:52,670 >> אז בואו נלך לדף זה. 1046 00:48:52,670 --> 00:48:55,050 תן לי לחזור אל רישום בספרייה. 1047 00:48:55,050 --> 00:48:59,410 תן לי להיכנס לfroshims, וללכת לfroshim0.php. 1048 00:48:59,410 --> 00:49:01,150 אז זה נורא, כדי להיות הוגן. 1049 00:49:01,150 --> 00:49:03,950 אז בהחלט אני יכול לסגנן את זה עם קצת CSS, אני יכול לעשות קצת 1050 00:49:03,950 --> 00:49:06,890 גרפיקה, אולי להוסיף כמה צבעים, ולעשות את זה יותר יפה. 1051 00:49:06,890 --> 00:49:10,530 אבל בחינה תפקודית, הייתי טוען שזה הוא למעשה די מלא. 1052 00:49:10,530 --> 00:49:15,190 >> למרבה הצער, כאשר אני ממלא את זה, דוד, קפטן, זכר, נצטרך לבחור, 1053 00:49:15,190 --> 00:49:20,510 נניח מתיוס, הרשמה, כל מה שקורה הוא זה. 1054 00:49:20,510 --> 00:49:21,910 אבל שים לב כמה מזנונים. 1055 00:49:21,910 --> 00:49:27,130 אחד, מה שקובץ חזר אלו תוצאות, כפי הנראה? 1056 00:49:27,130 --> 00:49:29,470 אז זה הוא, אכן, register0.php. 1057 00:49:29,470 --> 00:49:34,570 אז העובדה שראינו כי פעולה ערך לפני רגע לregister0, זה 1058 00:49:34,570 --> 00:49:37,500 מאשש שאכן הסתיימו עד בקובץ מסוים. 1059 00:49:37,500 --> 00:49:39,040 >> עכשיו זה רק טקסט מכוער. 1060 00:49:39,040 --> 00:49:42,810 אבל שם לב שהטקסט הזה הוא מגיע ממארח ​​מקומי, 1061 00:49:42,810 --> 00:49:44,170 שהוא מהמכשיר. 1062 00:49:44,170 --> 00:49:46,350 תחשוב על המכשיר עכשיו כמו סתם שרת אינטרנט שיכול להיות ב 1063 00:49:46,350 --> 00:49:46,910 מרכז מדע. 1064 00:49:46,910 --> 00:49:48,060 זה יכול להיות באינטרנט בפועל. 1065 00:49:48,060 --> 00:49:49,850 אז זה נגיש לציבור. 1066 00:49:49,850 --> 00:49:55,480 >> אז ברור, שיש דרך כלשהי להעביר יוצר שדה תשומות לשרת 1067 00:49:55,480 --> 00:49:56,840 כך שהוא יכול לעשות משהו איתם. 1068 00:49:56,840 --> 00:49:59,020 למרבה הצער, register0 הוא די טיפש. 1069 00:49:59,020 --> 00:50:01,870 כל שהיא עושה היא להדפיס את המערך שנראה כמו זה. 1070 00:50:01,870 --> 00:50:04,790 וזה לא במערך הגיוני. שאנו מכירים אותו 1071 00:50:04,790 --> 00:50:08,760 מתברר שPHP, והרבה שפות, יש לא רק מבחינה מספרית 1072 00:50:08,760 --> 00:50:12,350 מערכים באינדקס שמדד הוא ראשון אפס, ואז אחת, ואז שתיים, ואז נקודה, 1073 00:50:12,350 --> 00:50:13,780 נקודה, נקודה, n מינוס 1. 1074 00:50:13,780 --> 00:50:16,400 >> זה מה שנקרא מערך אסוציאטיבי. 1075 00:50:16,400 --> 00:50:21,150 מערך אסוציאטיבי הוא כזה שבי אתה יכול לאחסן את הערך מרכזי שבם זוגות 1076 00:50:21,150 --> 00:50:23,160 המפתח הוא לא בהכרח מספר. 1077 00:50:23,160 --> 00:50:25,580 זה יכול למעשה להיות מחרוזת, מילה. 1078 00:50:25,580 --> 00:50:28,230 ואז זה יכול להיות מיושם, מתחת למכסת המנוע, מתברר, 1079 00:50:28,230 --> 00:50:31,896 שימוש במבנה נתונים המכונה? 1080 00:50:31,896 --> 00:50:33,600 חשבתי שמשהו דרמטי עומד לקרות - 1081 00:50:33,600 --> 00:50:34,840 שולחן חשיש. 1082 00:50:34,840 --> 00:50:38,955 >> אז שולחן חשיש, כזכור, לאלה מכם מי עשה את זה עבור P סט 6, או אפילו זוכר 1083 00:50:38,955 --> 00:50:44,110 זה, לפחות, גם אם עשה לי ניסיון, שולחן חשיש, בשימוש שלנו, היה בשימוש כדי 1084 00:50:44,110 --> 00:50:45,090 רק לאחסן מילים. 1085 00:50:45,090 --> 00:50:47,980 אבל באמת, היית אחסון מפתחות וערכים. 1086 00:50:47,980 --> 00:50:51,940 אם ייושם שולחן חשיש עבור P להגדיר 6 מילון, המפתחות היו 1087 00:50:51,940 --> 00:50:56,890 מילים עצמם, והערכים היו יעיל אמת או שקר. 1088 00:50:56,890 --> 00:51:00,190 כן, כאן, או במשתמע, לא, לא כאן. 1089 00:51:00,190 --> 00:51:02,140 >> ובכן, אנחנו יכולים להכליל את הרעיון הזה. 1090 00:51:02,140 --> 00:51:06,230 ואנחנו יכולים להשתמש בנתונים דומים מאוד מבנה לאחסון לא המחרוזת 1091 00:51:06,230 --> 00:51:10,180 את עצמו לבד בשולחן החשיש שלך, אבל נניח שבכל אחד מהחשיש 1092 00:51:10,180 --> 00:51:11,130 צמתים של הטבלה. 1093 00:51:11,130 --> 00:51:14,210 ואתה אפילו יכול לעשות את זה בניסיון ולא רק שיש לי בול. 1094 00:51:14,210 --> 00:51:15,350 יכול להיות לך משהו אחר. 1095 00:51:15,350 --> 00:51:19,590 מה אם המפתח לא היה מקסוול, עבור למשל, "שם", אבל סוף ציטוט או ציטוט 1096 00:51:19,590 --> 00:51:22,900 לצטט את "קפטן". סוף ציטוט ובתוך מבנה נתונים C שלך, אתה שם את 1097 00:51:22,900 --> 00:51:26,170 ערך, ולא רק בוליאני, אלא של ערך כמו ציטוט סוף ציטוט "דוד", או 1098 00:51:26,170 --> 00:51:28,690 "M", או "מתיוס," וכן הלאה. 1099 00:51:28,690 --> 00:51:33,170 >> אז את אותם מבני נתונים ששמשנו אותנו ככל הנראה, קיימים בשפות אחרות. 1100 00:51:33,170 --> 00:51:37,650 ואני טוען שהם בעצם הרבה, הרבה יותר פשוט לגשת לכאן. 1101 00:51:37,650 --> 00:51:40,300 בואו בעובדה תסתכל עכשיו בחלק התחביר כזה. 1102 00:51:40,300 --> 00:51:43,120 >> אני הולך להיכנס לספריית PHP. 1103 00:51:43,120 --> 00:51:48,390 ואני הולך לפתוח טוב יותר גרסה של שלום-0 מקודם. 1104 00:51:48,390 --> 00:51:50,270 שים לב שכל מה שעשיתי היה להוסיף כמה הערות. 1105 00:51:50,270 --> 00:51:52,530 כדי שנוכל להיפטר מהסחת הדעת ש. 1106 00:51:52,530 --> 00:51:57,610 >> ותכנית זו אכן מדפיסה שלום כי אני כבר צוין בין 1107 00:51:57,610 --> 00:52:01,420 תגיות שאני רוצה לבצע קוד ש. 1108 00:52:01,420 --> 00:52:03,380 עכשיו, שנראה ברגע למה זה שימושי. 1109 00:52:03,380 --> 00:52:05,630 אבל בואו אפתח דוגמה השנייה כאן. 1110 00:52:05,630 --> 00:52:10,430 תן לי ללכת קדימה ולפתוח את אומר, gedit של תנאים אחד. 1111 00:52:10,430 --> 00:52:12,970 >> זוהי דרך חזרה בזמן עכשיו. 1112 00:52:12,970 --> 00:52:16,320 אבל לפני שבועות, אני חושב, בשבוע או אחת , היה לנו שבוע שני בשם דוגמה 1113 00:52:16,320 --> 00:52:18,470 conditions1.c. 1114 00:52:18,470 --> 00:52:22,050 ואני החלטתי reimplement זה ב-PHP, רק כדי להדגיש שסוג של 1115 00:52:22,050 --> 00:52:26,500 PHP, מבחינה תחבירית, הוא כמעט זהה לג זה לא קפיצה גדולה 1116 00:52:26,500 --> 00:52:27,840 משבוע שעבר לזה. 1117 00:52:27,840 --> 00:52:31,230 >> שים לב שבחלק העליון של תכנית זו, אשר מתחיל, כמו בעבר, עם כמה 1118 00:52:31,230 --> 00:52:34,260 הערות, שאני אפטר כמהסחת דעת. 1119 00:52:34,260 --> 00:52:37,410 שים לב שאני ב-PHP מצב בקובץ זה. 1120 00:52:37,410 --> 00:52:40,160 אז את הקוד הזה, שנראה, יקבל להורג. 1121 00:52:40,160 --> 00:52:42,670 שים לב שיש readline, שהוא כנראה 1122 00:52:42,670 --> 00:52:46,230 אנלוגי ב-PHP של getstring. 1123 00:52:46,230 --> 00:52:47,390 שים לב שזה קצת שונה. 1124 00:52:47,390 --> 00:52:51,410 אתה בעצם לציין הנחיה פונקציה שנקראת קו לקרוא, וזה 1125 00:52:51,410 --> 00:52:52,180 מה שהמשתמש רואה. 1126 00:52:52,180 --> 00:52:53,520 אז אתה לא צריך printf באופן ידני. 1127 00:52:53,520 --> 00:52:54,860 אבל זה לא עניין גדול. 1128 00:52:54,860 --> 00:52:59,150 אני הולך לחנות, בתוך $ n, תחזור ערכו של זה, ולכן כל מה 1129 00:52:59,150 --> 00:53:00,490 המשתמש מקליד הוא int שלהם. 1130 00:53:00,490 --> 00:53:01,660 והנה סקרנות אחרת. 1131 00:53:01,660 --> 00:53:05,810 מתברר, ב-PHP, כל משתנה פשוט צריך להיות התחילית 1132 00:53:05,810 --> 00:53:06,970 עם סימן דולר. 1133 00:53:06,970 --> 00:53:08,110 זה קצת מעצבן. 1134 00:53:08,110 --> 00:53:10,870 אבל שים לב למה שלא עשיתי ב-PHP. 1135 00:53:10,870 --> 00:53:13,980 מה שחסר ביד השמאל צד של סימן שווה? 1136 00:53:13,980 --> 00:53:15,430 >> אין אזכור של סוג. 1137 00:53:15,430 --> 00:53:19,400 אז זה שונה מג לטוב יותר או לרע, PHP היא רופפת 1138 00:53:19,400 --> 00:53:20,550 שפה מוקלדת. 1139 00:53:20,550 --> 00:53:22,010 זה עושה לי מספרים. 1140 00:53:22,010 --> 00:53:23,240 זה עושה לי המיתרים. 1141 00:53:23,240 --> 00:53:24,015 זה עושה לי Booleans. 1142 00:53:24,015 --> 00:53:26,220 וזה עושה לי כמה סוגי נתונים אחרים. 1143 00:53:26,220 --> 00:53:30,570 אבל אתה, המתכנת, בדרך כלל לא צריך לדאוג להם. 1144 00:53:30,570 --> 00:53:34,010 היתרון של זה הוא שזה גורם זה קצת יותר קל לתכנית. 1145 00:53:34,010 --> 00:53:35,380 אתה יכול לחשוב קצת פחות. 1146 00:53:35,380 --> 00:53:39,840 החסרון הוא זה גם פותח לך באגים אפשריים אם אתה בטעות 1147 00:53:39,840 --> 00:53:43,080 טיפול במספר כמחרוזת, מחרוזת כמספר, באופן פוטנציאלי, אבל גם 1148 00:53:43,080 --> 00:53:46,150 לאחר מכן, PHP, והרבה שפות, הם די סובלניים. 1149 00:53:46,150 --> 00:53:49,050 הם ישתמשו במה שנקרא ליהוק סמוי. 1150 00:53:49,050 --> 00:53:55,220 ואם אתה מנסה להשתמש בn בהקשר ממצב מספרי, זה יהיה 1151 00:53:55,220 --> 00:53:58,040 להמיר את מה שכאן הולך להיות מחרוזת, כי אם המשתמש מקליד 1152 00:53:58,040 --> 00:54:01,570 משהו ב, ואתה מקבל את התוצאה, כמו עם readline, או לקבל מחרוזת, 1153 00:54:01,570 --> 00:54:02,910 זה הולך להחזיר מחרוזת. 1154 00:54:02,910 --> 00:54:07,360 >> אבל שים לב, כמה שורות מאוחר יותר, אני לבדוק אם n הוא גדול מאפס. 1155 00:54:07,360 --> 00:54:13,370 אז PHP הולך להטיל במרומז 123 "מחרוזת", או מה שהמשתמש 1156 00:54:13,370 --> 00:54:14,860 סוגים ב, לתוך int. 1157 00:54:14,860 --> 00:54:18,730 אז בקיצור, דברים פשוט עובד הרבה יותר באופן אינטואיטיבי. 1158 00:54:18,730 --> 00:54:23,410 אז עכשיו אנחנו מתחילים להירגע כמה דברים שאנחנו כבר נעשו בעבר. 1159 00:54:23,410 --> 00:54:24,780 >> הרבה מהדברים האלה הוא אותו הדבר, אם כי. 1160 00:54:24,780 --> 00:54:26,340 עדיין יש לי שווה שווה. 1161 00:54:26,340 --> 00:54:30,350 במאמר המוסגר PHP גם שווה שווה שווה, אבל עוד על כך, אולי, ב 1162 00:54:30,350 --> 00:54:30,850 העתיד. 1163 00:54:30,850 --> 00:54:31,150 זה היה. 1164 00:54:31,150 --> 00:54:35,660 טעות דפוס, אך שתיים שווה סימני פירושו דבר כמו קודם, לשם השוואה. 1165 00:54:35,660 --> 00:54:37,060 printf אומר את אותו דבר כמו קודם. 1166 00:54:37,060 --> 00:54:39,160 הקו הנטוי N פירושו דבר כמו קודם. 1167 00:54:39,160 --> 00:54:40,390 >> אז איך אני מפעיל את התכנית זו? 1168 00:54:40,390 --> 00:54:44,400 ובכן, כמו בעבר, אם אני עושה את PHP, conditions1.php, והקלד 1169 00:54:44,400 --> 00:54:46,560 מספר כמו 123. 1170 00:54:46,560 --> 00:54:47,720 זה מספר חיובי. 1171 00:54:47,720 --> 00:54:49,510 אם אני מקליד ב0, אני מרים 0. 1172 00:54:49,510 --> 00:54:53,700 ואם אני מקליד ב123 שליליים, אני מקבל לגבות מספר שלילי, שהוא רק 1173 00:54:53,700 --> 00:54:59,050 לומר, מבחינה תחבירית, PHP הוא סופר, סופר דומה. 1174 00:54:59,050 --> 00:55:03,250 >> אז למה זה עכשיו שימושי בהקשר אינטרנט? 1175 00:55:03,250 --> 00:55:06,710 ובכן, בואו נחזור לזה froshims למשל, שנראתה, 1176 00:55:06,710 --> 00:55:08,600 שוב, כמו זה כאן. 1177 00:55:08,600 --> 00:55:11,580 ובואו באמת למשוך את דף האינטרנט שוב, מה שנראה כמו זה. 1178 00:55:11,580 --> 00:55:14,930 מה אנחנו יכולים לעשות עם הנתונים שהוגש? 1179 00:55:14,930 --> 00:55:18,770 >> ובכן, הרשה לי לפתוח חדש יותר גרסה של זה. 1180 00:55:18,770 --> 00:55:20,920 ותראה שהבעיה מפרט סטים מנחה אותך 1181 00:55:20,920 --> 00:55:22,850 דרך כמה מהם. 1182 00:55:22,850 --> 00:55:29,610 במקום להתחיל עם אפס, בואו נסתכל על froshims3, 1183 00:55:29,610 --> 00:55:31,410 שעושה קצת יותר. 1184 00:55:31,410 --> 00:55:34,780 >> ההודעה ראשונה, בעצם, בואו לפתוח את מה שהיה 0, כך שאתה רואה 1185 00:55:34,780 --> 00:55:37,170 מה היו לרשום 0. 1186 00:55:37,170 --> 00:55:40,040 שים לב מה עשה קופה 0. 1187 00:55:40,040 --> 00:55:41,730 אחד, יש לי הערות בראש. 1188 00:55:41,730 --> 00:55:43,900 מחק את אלה ולהתמקד רק בזה. 1189 00:55:43,900 --> 00:55:48,730 רוב התוכן של register0.php הם, כמובן, באיזו שפה? 1190 00:55:48,730 --> 00:55:49,980 רק PHP גלם. 1191 00:55:49,980 --> 00:55:53,430 >> אז הודעה, קובץ זה אינו מופעל עם, באותו הרגע, סוגר הפתוח, 1192 00:55:53,430 --> 00:55:54,970 סימן שאלה, PHP. 1193 00:55:54,970 --> 00:55:59,800 PHP עושה יאפשר לך להתערבב קוד PHP עם תגי HTML. 1194 00:55:59,800 --> 00:56:04,130 אבל אני כבר עשיתי את זה כאן בפנים של הדף לכאן. 1195 00:56:04,130 --> 00:56:08,180 >> עכשיו, שוב, היית יודע את זה רק מ לאחר שהסתכל במדריך. print_r, 1196 00:56:08,180 --> 00:56:13,410 מתברר, הוא print_recursive. _recursive וזה רק שימושי 1197 00:56:13,410 --> 00:56:16,780 פונקציית תועלת שפשוט מדפיסה, באופן רקורסיבי, כל מה שאתה מוסר אותו. 1198 00:56:16,780 --> 00:56:18,760 אם אתה מוסר אותו מערך, זה יהיה להדפיס את מערך. 1199 00:56:18,760 --> 00:56:20,180 אם אתה מוסר אותו מספר, זה יהיה להדפיס מספר. 1200 00:56:20,180 --> 00:56:21,570 למסור אותו חוט, זה יהיה להדפיס מחרוזת. 1201 00:56:21,570 --> 00:56:24,500 אם אתה מוסר אותו שולחן חשיש, אותו יהיה להדפיס את טבלת חשיש. 1202 00:56:24,500 --> 00:56:26,730 אתה לא צריך לכתוב את כל שמהקוד בעצמך. 1203 00:56:26,730 --> 00:56:29,490 >> עכשיו שם לב שאני נכנסתי מצב PHP לכאן. 1204 00:56:29,490 --> 00:56:32,070 אני יוצא מצב PHP לכאן. 1205 00:56:32,070 --> 00:56:35,950 לכן, כאשר שרת האינטרנט קורא קובץ זה מלמעלה למטה, משמאל לימין, משום 1206 00:56:35,950 --> 00:56:40,750 הוא מסתיים בשם קובץ בשם. PHP, כל מה שלא בתוך תגי PHP הוא 1207 00:56:40,750 --> 00:56:42,820 פשוט הולך להיות לירוק החוצה, כמו HTML גלם. 1208 00:56:42,820 --> 00:56:43,630 לא עניין גדול. 1209 00:56:43,630 --> 00:56:49,280 אבל ברגע שמבחין בשרת האינטרנט זה, זה הולך לומר, שאני לא צריך 1210 00:56:49,280 --> 00:56:51,850 לירוק החוצה, פשוטו כמשמעו, print_r של פוסט. 1211 00:56:51,850 --> 00:56:54,910 אני צריך לבצע את הפעולות הבאות שורת קוד. 1212 00:56:54,910 --> 00:56:59,850 >> אז השאלה האחרונה, אם כן, של קובץ זה הוא, ובכן, מה זה לעזאזל? 1213 00:56:59,850 --> 00:57:00,530 קח ניחוש. 1214 00:57:00,530 --> 00:57:04,230 מהו _POST $, כנראה? 1215 00:57:04,230 --> 00:57:07,070 >> קהל: [לא ברור] 1216 00:57:07,070 --> 00:57:08,830 >> רמקול 1: כן, את הנתונים שפורסמו. 1217 00:57:08,830 --> 00:57:11,350 כזכור, בואו לגלול אחורה ב זמן רק לרגע. 1218 00:57:11,350 --> 00:57:13,165 froshim0, שוב, שנראה כמו זה. 1219 00:57:13,165 --> 00:57:15,640 רוב הסופר זה הוא רק ה-HTML. 1220 00:57:15,640 --> 00:57:18,410 שוב, כמה תגים יש לך לא ראיתי עדיין, או שבה 1221 00:57:18,410 --> 00:57:19,360 אתה כבר מכיר. 1222 00:57:19,360 --> 00:57:21,990 אבל הדבר המעניין היה זה. 1223 00:57:21,990 --> 00:57:27,270 שורה אחת זה מה שבאמת מקשר אותו לקובץ register0.php שלנו. 1224 00:57:27,270 --> 00:57:29,200 אני הגשת הודעה דרך שיטה. 1225 00:57:29,200 --> 00:57:33,130 וזה אומר שהפרמטרים המשתמש מקליד באינו 1226 00:57:33,130 --> 00:57:35,150 הולך בסופו שבו. 1227 00:57:35,150 --> 00:57:36,175 >> הם לא הולכים תופיע בכתובת האתר. 1228 00:57:36,175 --> 00:57:39,020 הם עדיין הולכים להישלח מ לקוח, מהדפדפן, כדי 1229 00:57:39,020 --> 00:57:42,080 שרת, אך רק באמצעות חלק אחר מנגנון שאנחנו מוותרים על ידי שלנו 1230 00:57:42,080 --> 00:57:44,330 להיום, אבל זה לא בכתובת האתר. 1231 00:57:44,330 --> 00:57:47,630 אבל שים לב ליחסים עם החברה הודעה, אשר, על ידי אמנה, היא 1232 00:57:47,630 --> 00:57:49,160 אותיות קטנות כאן. 1233 00:57:49,160 --> 00:57:54,090 >> אבל אם אני פותח את register0.php, אני כנראה מדפיס את זה. 1234 00:57:54,090 --> 00:57:56,450 אז זהו סוג של מוזר שמות אמנה. 1235 00:57:56,450 --> 00:58:01,430 אבל מה שנחמד ב-PHP הוא שכאשר באמצעות PHP בהקשר אינטרנט, לא ב 1236 00:58:01,430 --> 00:58:04,480 שורת הפקודה כמו שעשיתי לפני רגע, כאשר אתה בעצם משתמש בו באינטרנט 1237 00:58:04,480 --> 00:58:10,580 דף, בספריית Vhost כמו שאנחנו, באופן אוטומטי PHP למלא את זה 1238 00:58:10,580 --> 00:58:15,560 דבר, שהוא מערך אסוציאטיבי, כביכול, שולחן חשיש, עם 1239 00:58:15,560 --> 00:58:17,290 כל מה שמשתמש הקליד פנימה 1240 00:58:17,290 --> 00:58:22,000 >> ב$ _POST בקיצור, בכל כמוסות היא משתנה הגלובלי שרק PHP 1241 00:58:22,000 --> 00:58:25,050 באורח פלא יוצר עבורך בעת באמצעות PHP בהקשר אינטרנט. 1242 00:58:25,050 --> 00:58:29,160 וזה מכניס בתוכו את כל שמות של פרמטרים בצורה ש 1243 00:58:29,160 --> 00:58:33,200 הוגש לקובץ זה וכל את הערכים שמשתמש קליד פנימה 1244 00:58:33,200 --> 00:58:37,790 אז זה נותן לך את מה שהמשתמש הקליד בטופס זה. 1245 00:58:37,790 --> 00:58:42,210 >> אז לפני, יש לנו פלט ממש טיפש רק לראות את זה, כי כל מה שעשיתי 1246 00:58:42,210 --> 00:58:44,400 באופן רקורסיבי היה להדפיס מערך זה. 1247 00:58:44,400 --> 00:58:46,060 המפתח הוא שם, הערך הוא דוד. 1248 00:58:46,060 --> 00:58:46,980 המפתח הוא קפטן. 1249 00:58:46,980 --> 00:58:47,970 הערך הוא על. 1250 00:58:47,970 --> 00:58:52,300 והחץ הכפול והזווית סוגר שם, זה רק שרירותי. 1251 00:58:52,300 --> 00:58:53,270 זה לא קוד. 1252 00:58:53,270 --> 00:58:57,690 זוהי רק הדרך של PHP של מראה לך מהו הערך של חלק מרכזי. 1253 00:58:57,690 --> 00:59:03,000 >> אבל עכשיו הרשה לי להציע כי ב froshIMs3, זה כמעט זהה 1254 00:59:03,000 --> 00:59:04,950 חוץ מזה שמגיש לקובץ זה. 1255 00:59:04,950 --> 00:59:08,570 ושוב, אנחנו הולכים לסוג של רק להציץ בזה, רק כדי לראות כמה 1256 00:59:08,570 --> 00:59:12,040 תחביר, אבל שימו לב מה הקובץ הזה עושה. 1257 00:59:12,040 --> 00:59:14,930 קח ניחוש מבוסס רק על הקווים של קוד, שסביר להניח שנראה כמו 1258 00:59:14,930 --> 00:59:17,410 יווני, במידה מסוימת, הוא עושה כנראה. 1259 00:59:17,410 --> 00:59:20,580 1260 00:59:20,580 --> 00:59:23,110 >> קובץ זה קשור איכשהו לדואר, דואר אלקטרוני. 1261 00:59:23,110 --> 00:59:24,770 אז מה הוא עושה בתכנית זו? 1262 00:59:24,770 --> 00:59:28,740 בגרסה זו, אם הייתי באמת למלא טופס זה - ונתן לי ללכת ל 1263 00:59:28,740 --> 00:59:30,760 froshIMs3, לא froshIMs0 - 1264 00:59:30,760 --> 00:59:33,280 1265 00:59:33,280 --> 00:59:34,540 הטופס נראה אותו הדבר. 1266 00:59:34,540 --> 00:59:37,980 דוד, קפטן, זכר, מעונות, מתיוס. 1267 00:59:37,980 --> 00:59:42,980 אבל אם אני מגיש את זה, קובץ זה הוא הולך לregister3.php. 1268 00:59:42,980 --> 00:59:46,330 >> ואני טוען, על ידי התבוננות בזה קוד מקור, זה הולך 1269 00:59:46,330 --> 00:59:47,650 איכשהו כרוך בדוא"ל. 1270 00:59:47,650 --> 00:59:49,620 תן לי ללכת קדימה ולפתוח את זה בחלון גדול יותר, ולכן אנחנו 1271 00:59:49,620 --> 00:59:51,030 אפשר לראות את זה יותר נקי. 1272 00:59:51,030 --> 00:59:57,220 אנחנו בVhosts, מארח מקומי, הציבור, froshims. 1273 00:59:57,220 --> 00:59:58,680 אני הולך לפתוח את שונה תכנית, רק כדי ש 1274 00:59:58,680 --> 01:00:00,160 ניתן לראות יותר בבת אחת. 1275 01:00:00,160 --> 01:00:03,100 >> אז עכשיו כאן, שימו לב כמה דברים. 1276 01:00:03,100 --> 01:00:06,530 בחלק העליון של הקובץ פתוח סוגר, סימן שאלה, PHP. 1277 01:00:06,530 --> 01:00:08,920 אז יש חבורה של הערות, שבו אנו יכולים להתעלם, הוא 1278 01:00:08,920 --> 01:00:10,450 לא מעניין לעת עתה. 1279 01:00:10,450 --> 01:00:11,300 >> עכשיו יש את זה. 1280 01:00:11,300 --> 01:00:14,200 מתברר PHP יש הרבה של קוד נקרא דורש. 1281 01:00:14,200 --> 01:00:19,110 זה דומה מאוד ברוחו לC של כולל, כולל חשיש, אשר 1282 01:00:19,110 --> 01:00:21,980 למעשה תופס את התוכן של חלק קובץ אחר ופשוט נופל אותם כאן, 1283 01:00:21,980 --> 01:00:22,930 כך שאתה יכול להשתמש בם. 1284 01:00:22,930 --> 01:00:27,060 במקרה זה, יש לו את המכשיר, מותקן מראש, ספרייה, ללא תשלום ו 1285 01:00:27,060 --> 01:00:29,900 ספריית קוד פתוחה בשם PHP מיילר, שכל אחד יכול 1286 01:00:29,900 --> 01:00:30,770 להוריד מהאינטרנט. 1287 01:00:30,770 --> 01:00:32,000 אנחנו רק עשינו את זה בשבילך. 1288 01:00:32,000 --> 01:00:36,130 וזה אומר עכשיו שיש לי דואר אלקטרוני פונקציונלי העומדים לרשותי. 1289 01:00:36,130 --> 01:00:38,170 >> עכשיו, שימו לב כמה דברים. 1290 01:00:38,170 --> 01:00:41,120 אני הולך כדי לאמת ההגשה של הטופס. 1291 01:00:41,120 --> 01:00:45,980 מתברר PHP, אחד, יש סימן קריאה נקודות עבור המפעיל לא, בדיוק כמו 1292 01:00:45,980 --> 01:00:49,810 C. אבל PHP יש גם פונקציה קרא ריק. 1293 01:00:49,810 --> 01:00:53,920 >> ריק פשוט מחזיר אמת אם הערך של הדבר אתה מגיש את זה 1294 01:00:53,920 --> 01:00:57,190 סוגריים ריק, כמו משתמש לא מקליד כל דבר פנימה 1295 01:00:57,190 --> 01:01:02,680 אז זה אומר, ולב תחביר, מזכיר מאוד את C, אם 1296 01:01:02,680 --> 01:01:07,730 שם מפתח, ולכן שם השדה בטופס, שהוגש באמצעות דואר, על ידי 1297 01:01:07,730 --> 01:01:13,010 למשתמש, לא לרוקן, ו מגדר אינו ריק בצורה כמו 1298 01:01:13,010 --> 01:01:15,980 כן, והמעונות שלהם אינם ריקות - 1299 01:01:15,980 --> 01:01:19,980 אבל לב לא אכפת לי על קפטן, אז מה אנחנו הולכים לעשות? 1300 01:01:19,980 --> 01:01:21,990 >> אני הולך לבצע הקו הזה של קוד. 1301 01:01:21,990 --> 01:01:24,100 ואתה יכול לחשוב מסוג זה כמו malloc, אבל זה קצת זה 1302 01:01:24,100 --> 01:01:24,800 מהודר יותר מזה. 1303 01:01:24,800 --> 01:01:29,200 אבל לעת עתה זה נותן לי מיוחד מבנה מטיפוס PHP מיילר. 1304 01:01:29,200 --> 01:01:31,410 אבל להתעלם ממילת מפתח החדשה להיום. 1305 01:01:31,410 --> 01:01:35,670 >> עכשיו אני הולך לקרוא לפונקציה הנקראת IsSMTP, שאומר, להשתמש SMTP. 1306 01:01:35,670 --> 01:01:39,380 זוהי יציאה 25, בדיוק כמו בסרטון בשבוע שעבר, כשהדבר היה זורק 1307 01:01:39,380 --> 01:01:40,710 הודעות דוא"ל לחומת האש. 1308 01:01:40,710 --> 01:01:42,440 נמל 25 הוא SMTP. 1309 01:01:42,440 --> 01:01:44,410 SMTP הפירוש להשתמש בשרת הדואר. 1310 01:01:44,410 --> 01:01:46,215 איזה מהם, אנחנו יכולים להשתמש ברווארד של SMTP.fas.harvard.edu. 1311 01:01:46,215 --> 01:01:48,850 1312 01:01:48,850 --> 01:01:51,590 >> אנו יכולים להגדיר את מכתובת להיות ג'ון הרווארד של. 1313 01:01:51,590 --> 01:01:55,090 אם אני לגלול למטה עוד יותר, אני יכול להגדיר כתובת הנמען, רק 1314 01:01:55,090 --> 01:01:56,840 באופן שרירותי, להיות ג'ון הרווארד זה גם כן. 1315 01:01:56,840 --> 01:01:59,210 אז הוא הולך להיות דואר אלקטרוני עצמו. 1316 01:01:59,210 --> 01:02:01,600 >> עכשיו אני יכול להגדיר את הנושא להיות רישום. 1317 01:02:01,600 --> 01:02:03,700 ואני יכול להגדיר את הגוף של דואר אלקטרוני באופן הבא. 1318 01:02:03,700 --> 01:02:06,500 הקו הזה נראה קצת יותר מסתורי, אבל זה רק בגלל שיש הרבה 1319 01:02:06,500 --> 01:02:07,450 ממידע שבו. 1320 01:02:07,450 --> 01:02:10,670 אחד, יש מפעיל נקודה. 1321 01:02:10,670 --> 01:02:14,510 מישהו חייב לדעת כבר מה מפעיל הנקודה עושה. 1322 01:02:14,510 --> 01:02:15,436 זה שרשור. 1323 01:02:15,436 --> 01:02:19,240 אז אם אתה רוצה לקחת את מחרוזת ב-PHP, ולצרף אותו, או לשים לפניו, כדי 1324 01:02:19,240 --> 01:02:23,500 מחרוזת אחרת ב-PHP, תודה לאל שאתה לא צריך להשתמש בstrcopy וmalloc, 1325 01:02:23,500 --> 01:02:25,490 ואת כל זה יותר. 1326 01:02:25,490 --> 01:02:28,765 >> אם אתה רוצה לשרשר שתי מחרוזות, שאכפת לו הזיכרון. 1327 01:02:28,765 --> 01:02:30,850 בוא דמות PHP שיצא לך. 1328 01:02:30,850 --> 01:02:35,200 מה יעשה עם PHP מפעיל הנקודה כאן הוא פשוט להפוך את משפט גדול החוצה 1329 01:02:35,200 --> 01:02:37,900 מהקו הזה, הקו הזה, הקו הזה, הקו הזה. 1330 01:02:37,900 --> 01:02:40,460 ועכשיו שים לב, זה הולך לחיבור בערכים. 1331 01:02:40,460 --> 01:02:43,680 אז דוא"ל שג'ון הרווארד הולך לקבל הולך ממש לומר 1332 01:02:43,680 --> 01:02:49,450 שם, במעי גס, משהו, ולא, אז אנחנו לסגור את המחרוזת ולשרשר על 1333 01:02:49,450 --> 01:02:52,220 כל מה שמשתמש הקליד ב, ולאחר מכן בשורה חדשה. 1334 01:02:52,220 --> 01:02:54,570 >> ואז, בשורה הבאה של ג'ון הרווארד של דוא"ל, זה הולך לומר 1335 01:02:54,570 --> 01:02:55,910 קפטן, ביום או בשום דבר. 1336 01:02:55,910 --> 01:02:57,810 זה הולך לומר מין, זכר או נקבה. 1337 01:02:57,810 --> 01:02:59,680 המעונות הולכת להיות מתיוס במקרה שלי. 1338 01:02:59,680 --> 01:03:03,400 ואז שם לב פסיק מוכר ממש בסוף. 1339 01:03:03,400 --> 01:03:07,830 ואז, כאן למטה, שים לב, במידה מסוימת עדיין מסתורי, אבל שוב, בעקבות 1340 01:03:07,830 --> 01:03:12,730 דפוס שהפך מוכרות יותר לאחר P להגדיר 7, אם בשליחת הדואר 1341 01:03:12,730 --> 01:03:16,610 מחזיר שקר, אז קדימה ולמות. 1342 01:03:16,610 --> 01:03:19,610 >> אז PHP יש פונקציה שנקראת למות, אשר, פשוטו כמשמעו, פשוט הורג 1343 01:03:19,610 --> 01:03:22,830 אתר ופשוט מדפיס את כל מה אתה אומר את זה - גוסס 1344 01:03:22,830 --> 01:03:24,280 מילים, אם אפשר להתבטא כך. 1345 01:03:24,280 --> 01:03:28,310 וזה, במקרה, הוא יודפס מה פרטי השגיאה הוא עבור 1346 01:03:28,310 --> 01:03:29,860 כל מה שקרה לי להשתבש. 1347 01:03:29,860 --> 01:03:34,490 אז סיפור ארוך קצר כאן, מה שיש לנו היא דוגמה שבה כאשר המשתמש 1348 01:03:34,490 --> 01:03:39,150 שולח את הטופס, froshim0, froshims3.php, זה הולך 1349 01:03:39,150 --> 01:03:40,760 register3.php. 1350 01:03:40,760 --> 01:03:45,290 אבל register3.php אז ממשיך כדי לבצע את כל הקווים הללו. 1351 01:03:45,290 --> 01:03:46,620 >> אז יש כמה משלוחים ככאן. 1352 01:03:46,620 --> 01:03:50,380 אחד, זה ככל הנראה קל למדי, תכנותי, לשלוח מיילים, 1353 01:03:50,380 --> 01:03:50,830 וזה טוב. 1354 01:03:50,830 --> 01:03:53,500 כאשר משתמשים להירשם לאתר שלך, ב מקרה זה, כאשר הם נרשמים לשלך 1355 01:03:53,500 --> 01:03:56,220 ספורט, אתה יכול לשלוח את כיתה ט ' פרוקטור, או ג'ון 1356 01:03:56,220 --> 01:03:57,650 הרווארד, במקרה זה. 1357 01:03:57,650 --> 01:04:01,630 >> אבל זה גם אומר שאתה יכול לעשות מה? 1358 01:04:01,630 --> 01:04:03,970 לשלוח מיילים מאף אחד לאף אחד. 1359 01:04:03,970 --> 01:04:05,430 וזה נכון מאוד. 1360 01:04:05,430 --> 01:04:08,580 זה לא נעשה באותה קלות אם אתה רגיל להשתמש ב-Gmail. 1361 01:04:08,580 --> 01:04:11,310 אבל אם אי פעם השתמש או יודורה Outlook, אתה יכול פחות או יותר להגיד לי 1362 01:04:11,310 --> 01:04:13,720 שרת דואר שאתה כל מי שאתה רוצה. 1363 01:04:13,720 --> 01:04:16,450 וזה מקום שבו אני צריך לשים על הכובע הזה ואומר, לא עושה את זה. 1364 01:04:16,450 --> 01:04:21,140 אבל זו היא עדות לעד כמה קל זה הוא לבצע התקפות פישינג, ו 1365 01:04:21,140 --> 01:04:24,310 לשלוח הודעות דוא"ל אנונימיות, ו דואר זבל, באופן כללי יותר. 1366 01:04:24,310 --> 01:04:27,330 וזה באמת מסתכם עובדה שכל מה שאתה צריך זה קצת 1367 01:04:27,330 --> 01:04:28,500 גישה תוכניתית. 1368 01:04:28,500 --> 01:04:31,940 >> במאמר מוסגר, המפגש הקרוב ביותר שלי עם לוח המודעות, בשנה הראשונה שלי, 1369 01:04:31,940 --> 01:04:34,320 היה כשגיליתי את זה מגניב טריק ש, וואו, אתה יכול 1370 01:04:34,320 --> 01:04:36,850 לשלוח מיילים מאף אחד. 1371 01:04:36,850 --> 01:04:39,770 וכך היו לנו כמה טיפש ויכוח, פשוטו כמשמעו, במתיוס, 1372 01:04:39,770 --> 01:04:40,790 בקרב קבוצת פרוקטור שלי. 1373 01:04:40,790 --> 01:04:42,470 אני אפילו לא זוכר מה הייתה הבעיה. 1374 01:04:42,470 --> 01:04:44,970 אבל רציתי לנסות לשים בסופו של ויכוח טיפשי לזה. 1375 01:04:44,970 --> 01:04:48,580 >> אז החלטתי שאני פשוט אשלח דוא"ל לקבוצת פרוקטור, מתיימר להיות 1376 01:04:48,580 --> 01:04:52,000 הבחור השני, עם דעתו אני לא הסכימו עם זה, ויש לו להשלים עם 1377 01:04:52,000 --> 01:04:54,680 מה שלדעתי היה ב דיון המסוים הזה. 1378 01:04:54,680 --> 01:04:59,320 ואז אני מזויף הודעה זו באמצעות טכניקה דומה ברוחו לזה. 1379 01:04:59,320 --> 01:05:01,256 אבל זה היה ממש קל באותו הזמן. 1380 01:05:01,256 --> 01:05:02,435 פגע לשלוח. 1381 01:05:02,435 --> 01:05:06,660 הוא לא היה מרוצה, וגם לא היית היה לוח המודעות. 1382 01:05:06,660 --> 01:05:10,280 >> ותפסו אותי מהר מאוד בתוך שניות, כי, כפי שאתה יודע, אני חותם 1383 01:05:10,280 --> 01:05:11,420 המיילים שלי בצורה מסוימת. 1384 01:05:11,420 --> 01:05:14,200 ולמרות שאני עושה את זה באופן ידני, בגדול חלק, 15 שנים מאוחר יותר, כי אני היה 1385 01:05:14,200 --> 01:05:15,080 טראומה מזה. 1386 01:05:15,080 --> 01:05:16,960 אין לי חתימה בדוא"ל שלי עכשיו. 1387 01:05:16,960 --> 01:05:20,440 אבל בשנת 1995, פשוט היה לי SIG, חתימה במייל שלי. 1388 01:05:20,440 --> 01:05:24,630 כך שלא היה הפתק הזה אומר, נכבד קבוצת פרוקטור, אני להשלים את דעתי 1389 01:05:24,630 --> 01:05:31,240 ומסכים עם דוד, שנחתם וכך כך, קו חדש, הקו חדש, DJM. 1390 01:05:31,240 --> 01:05:36,220 >> אז אל תעשה את זה או, באופן כללי, לקחת יתרון של שיטה זו. 1391 01:05:36,220 --> 01:05:39,950 אבל כאשר עושים באתר, כמו עבור פרויקט הגמר שלך, בעת ביצוע 1392 01:05:39,950 --> 01:05:43,460 אתר למשהו יזמי, כך, פרגמטי, שאתה יכול 1393 01:05:43,460 --> 01:05:47,000 מינוף שירותים אחרים באינטרנט כמו דואר אלקטרוני ולאחר מכן למעשה 1394 01:05:47,000 --> 01:05:49,440 לשלוח דברים באמצעות קוד. 1395 01:05:49,440 --> 01:05:51,240 >> אז איך אנחנו יכולים לשפר את זה? 1396 01:05:51,240 --> 01:05:54,370 ובכן, ראשית בואו צאו לסיור מהיר של כמה מהדברים שאתה רואה, 1397 01:05:54,370 --> 01:05:56,170 ואז תסתכל על כמה דוגמאות. 1398 01:05:56,170 --> 01:05:59,500 אז אחד, להרגיע, כי אנו טסים דרך PHP. 1399 01:05:59,500 --> 01:06:02,470 ואני יודע, בשלב מסוים, יהיה לך כדי להתחיל בעצם כותב את זה אם אתה 1400 01:06:02,470 --> 01:06:03,460 יש כבר לא. 1401 01:06:03,460 --> 01:06:06,220 מבין את זה, אחד, עיקרי הוא סוג של מחוץ לחלון עם PHP. 1402 01:06:06,220 --> 01:06:09,420 אם ברצונך לכתוב קוד שמקבל להורג, אתה פשוט להתחיל לכתוב אותו ב 1403 01:06:09,420 --> 01:06:13,970 קובץ שנקרא, כל עוד. PHP יש לך את סוגר הפתוח 1404 01:06:13,970 --> 01:06:15,620 סימן השאלה PHP תג. 1405 01:06:15,620 --> 01:06:19,730 >> אבל שים לב אלה הם תנאים ב-PHP. 1406 01:06:19,730 --> 01:06:22,610 שים לב, זה בדיוק אותו השקופית היו לנו בשבוע אחד, כאשר היו לנו 1407 01:06:22,610 --> 01:06:25,670 תנאים בתנאים בג PHP הן מבנית ו 1408 01:06:25,670 --> 01:06:27,140 תחבירי זהה. 1409 01:06:27,140 --> 01:06:30,290 הבדל אמיתי היחיד הוא אם יש לך משתנים מעורבים, יש לך אלה 1410 01:06:30,290 --> 01:06:31,600 סימני דולר. 1411 01:06:31,600 --> 01:06:33,970 >> בינתיים, בביטויים בוליאניים נראה בדיוק כמו זה עבור 1412 01:06:33,970 --> 01:06:35,725 או ing או ו- ing יחד. 1413 01:06:35,725 --> 01:06:37,780 מתגים נראים אותו הדבר בדיוק. 1414 01:06:37,780 --> 01:06:42,180 מה שיפה ב-PHP, ואילו ב-C, מתגים צריכים להיות במקרים 1415 01:06:42,180 --> 01:06:46,380 הפרימיטיבים כמו ints או תווים, ב-PHP ההצהרות במקרה שלך באמת יכולות להיות 1416 01:06:46,380 --> 01:06:48,430 על כולה מחרוזות, שהוא דווקא די נחמד. 1417 01:06:48,430 --> 01:06:49,480 חוסך לך זמן. 1418 01:06:49,480 --> 01:06:50,820 לא יכל לעשות את זה בג 1419 01:06:50,820 --> 01:06:52,880 >> הנה לולאה לב-PHP. 1420 01:06:52,880 --> 01:06:53,740 זה זהה. 1421 01:06:53,740 --> 01:06:55,400 אולי יש לי כמה סימני דולר עבור המשתנים. 1422 01:06:55,400 --> 01:06:57,530 אתה לא צריך להזכיר את זה משהו הוא int. 1423 01:06:57,530 --> 01:07:00,580 אתה פשוט להכריז עליו עם סימן דולר ואת שמו של משתנה. 1424 01:07:00,580 --> 01:07:01,430 אבל ללולאה הוא אותו הדבר. 1425 01:07:01,430 --> 01:07:02,760 לולאה בזמן זהה. 1426 01:07:02,760 --> 01:07:04,870 לעשות בזמן שלולאה היא אותו הדבר. 1427 01:07:04,870 --> 01:07:06,170 >> זה קצת שונה. 1428 01:07:06,170 --> 01:07:12,410 אז עם PHP, עם מערך, אתה יכול סטטי להצהיר על מערך, כמו ב-C, 1429 01:07:12,410 --> 01:07:14,420 אבל אתה משתמש בסוגריים מרובעים. 1430 01:07:14,420 --> 01:07:17,060 ב-C, היית משתמש בסוגריים מסולסלים, אם אתה אפילו יודע את זה. 1431 01:07:17,060 --> 01:07:20,910 אבל זה ממש נפוץ מאוד ב-PHP כדי להצהיר על מערך, במקרה זה, 1432 01:07:20,910 --> 01:07:23,640 של מספרים, ולקרוא מספרים משתנים. 1433 01:07:23,640 --> 01:07:25,300 >> משתנים עצמם להיראות כך. 1434 01:07:25,300 --> 01:07:28,710 הנה היא מחרוזת, מירכאות "שלום העולם. "יכול להיות לך n קו נטוי. 1435 01:07:28,710 --> 01:07:30,950 אני פשוט לא במקרה הזה. 1436 01:07:30,950 --> 01:07:32,640 >> עכשיו זה הוא מבנה מעניין. 1437 01:07:32,640 --> 01:07:33,700 C אין את זה. 1438 01:07:33,700 --> 01:07:34,700 אבל זה סופר מועיל. 1439 01:07:34,700 --> 01:07:38,160 ואתה רואה את זה בP סט 7 מפרט - עבור כל אחד מהמושגים. 1440 01:07:38,160 --> 01:07:41,800 אם אתה רוצה לחזור על כל אלמנטי מערך, אין לך 1441 01:07:41,800 --> 01:07:45,500 כדי להתמודד עם $ ואני $ n, ו+ +, וכל זה. 1442 01:07:45,500 --> 01:07:47,640 אתה יכול להגיד, פשוטו כמשמעו, ב-PHP, זה - 1443 01:07:47,640 --> 01:07:51,890 כלמספר, כך שכל מספרים אני מניח ש$ מספרים 1444 01:07:51,890 --> 01:07:53,380 הוא מערך של מספרים. 1445 01:07:53,380 --> 01:07:56,460 וכשאני אומר לכל אחד מהם מספרים כמספר, זה הולך 1446 01:07:56,460 --> 01:08:00,505 באופן אוטומטי, כמו הלולאה שלי מבצעת, לעדכן, בכל איטרציה, הערך 1447 01:08:00,505 --> 01:08:03,260 בתוך מספר סימן דולר - 1448 01:08:03,260 --> 01:08:07,730 שוב, ושוב, ושוב הליכה בשבילי על מערך זה. 1449 01:08:07,730 --> 01:08:08,735 אז זה פשוט חוסך לנו קוד. 1450 01:08:08,735 --> 01:08:12,250 לא פסיק, לא + + 's, לא אני זה, לא n של, זה פשוט נחמד. 1451 01:08:12,250 --> 01:08:13,700 >> אבל PHP יש גם את זה. 1452 01:08:13,700 --> 01:08:14,830 ואת זה הוא סופר חזק. 1453 01:08:14,830 --> 01:08:17,410 ואתה משתמש בזה, ידי ב, בP להגדיר 7. 1454 01:08:17,410 --> 01:08:21,990 ומערך אסוציאטיבי הוא גם הכריז עם סוגריים מרובעים. 1455 01:08:21,990 --> 01:08:23,569 שלא להבחין בתחביר עכשיו. 1456 01:08:23,569 --> 01:08:26,880 זה מזכיר את מה שראינו עם print_r לפני רגע. 1457 01:08:26,880 --> 01:08:31,810 כמה מפתחות, כבדיקת שפיות קטנה, לא נראה שיש מערך זה. 1458 01:08:31,810 --> 01:08:32,689 >> אז יש לו שתיים. 1459 01:08:32,689 --> 01:08:33,830 ואני קורא למערך הזה. 1460 01:08:33,830 --> 01:08:36,760 אבל אם זה עוזר, אתה יכול לחשוב משולחן החשיש כמו זה, או כמו 1461 01:08:36,760 --> 01:08:37,930 מערך אסוציאטיבי. 1462 01:08:37,930 --> 01:08:39,580 אבל זה פשוט שונה סוג של מערך. 1463 01:08:39,580 --> 01:08:41,080 ושוב, בשפות שונות יש את אלה. 1464 01:08:41,080 --> 01:08:43,810 אנחנו תראו משהו דומה ב-JavaScript, כמו גם. 1465 01:08:43,810 --> 01:08:44,609 יש שני מפתחות. 1466 01:08:44,609 --> 01:08:48,390 אחת היא מרכאות, "סמל", הוא אחד לצטט את "מחיר". סוף ציטוט והמפתחות האלה 1467 01:08:48,390 --> 01:08:49,250 כל אחד יש לו ערך. 1468 01:08:49,250 --> 01:08:54,420 במקרה זה ערכו של הסמל הוא בסיס פנסיון מלא, עבור שווי פייסבוק, ושל המחיר הוא 49, 26, 1469 01:08:54,420 --> 01:08:56,899 שהייתה מניית של פייסבוק מחיר נכון להבוקר. 1470 01:08:56,899 --> 01:09:00,170 >> אז מה הוא שימושי על מערך אסוציאטיבי. 1471 01:09:00,170 --> 01:09:02,620 אני היה יכול להיות מבחינה מספרית מערך עם אינדקס רק 1472 01:09:02,620 --> 01:09:04,120 סוגריים מרובעים פשוטים. 1473 01:09:04,120 --> 01:09:09,380 ויכולים להיות שהיה לי סימן דולר ציטוט שווה בדיוק את זה. 1474 01:09:09,380 --> 01:09:10,529 תן לי באמת לעשות את זה. 1475 01:09:10,529 --> 01:09:14,796 נניח שהייתי במקום רק הכריז מערך זה ככה. 1476 01:09:14,796 --> 01:09:17,590 זה חוקי לחלוטין, מבחינה תחבירית. 1477 01:09:17,590 --> 01:09:20,569 זה לא לאבד את כל מידע, כשלעצמו. 1478 01:09:20,569 --> 01:09:24,760 אני עדיין רואה שהוא הסמל FB, וכי המחיר הוא 49, 26. 1479 01:09:24,760 --> 01:09:28,939 אז למה הם אסוציאטיביים מערכים משכנעים? 1480 01:09:28,939 --> 01:09:30,189 >> קהל: אתה לא צריך לזכור איפה אתה שם את הדברים. 1481 01:09:30,189 --> 01:09:32,050 1482 01:09:32,050 --> 01:09:34,130 >> רמקול 1: בדיוק, אין לך לזכור איפה שמת את הדברים. 1483 01:09:34,130 --> 01:09:37,670 אתה לא צריך לזכור באופן שרירותי סמל מניית שהוא במדרגת אפס, 1484 01:09:37,670 --> 01:09:41,479 ומחירי המניות הוא בסוגר אחד, שהוא מסוכן במיוחד אם 1485 01:09:41,479 --> 01:09:43,220 לשנות דברים, בסופו. 1486 01:09:43,220 --> 01:09:46,399 זה הרבה יותר נחמד לקשר מה שאנחנו נתקשר מטה 1487 01:09:46,399 --> 01:09:48,340 עם הנתונים שלך בפועל. 1488 01:09:48,340 --> 01:09:52,399 הייתי טוען כי מה שבאמת אכפת לנו עליו כאן הוא FB ו49, 26. 1489 01:09:52,399 --> 01:09:57,020 הסמל והמחיר הוא מטה המתאר את הנתונים שאנו 1490 01:09:57,020 --> 01:09:58,180 ממש אכפת. 1491 01:09:58,180 --> 01:10:01,910 אבל זה פשוט כל כך הרבה קלה יותר לגישה. 1492 01:10:01,910 --> 01:10:04,090 >> עכשיו, במאמר מוסגר מה המחיר שאנחנו משלמים? 1493 01:10:04,090 --> 01:10:06,600 אנחנו כבר עושים את זה בCS50 במשך שבועות. 1494 01:10:06,600 --> 01:10:10,740 תכונה זו חייבת לבוא במחיר קצת. 1495 01:10:10,740 --> 01:10:11,350 זיכרון. 1496 01:10:11,350 --> 01:10:13,830 אז אתה לא רק אחסון של 32 סיביות מספר שלם, למשל. 1497 01:10:13,830 --> 01:10:17,980 אתה אחסון סמל / 0, כנראה. 1498 01:10:17,980 --> 01:10:19,160 אז אתה משתמש בזיכרון רב יותר. 1499 01:10:19,160 --> 01:10:22,540 >> ומה הביצועים של מחפש משהו ב 1500 01:10:22,540 --> 01:10:24,822 מערך אסוציאטיבי, כנראה? 1501 01:10:24,822 --> 01:10:26,590 זה כנראה איטי יותר. 1502 01:10:26,590 --> 01:10:29,670 גישה אקראית היא נחמדה, במיוחד כאשר אתה יכול לעשות חיפוש בינארי. 1503 01:10:29,670 --> 01:10:33,380 אבל אם אתה באמת מחפש עכשיו לא למספרים, אבל למיתרים, זה 1504 01:10:33,380 --> 01:10:37,630 באמת מיושם מתחת מכסה המנוע, כנראה כשולחן חשיש, שבו 1505 01:10:37,630 --> 01:10:42,950 אתה משתמש או שולחן חשיש עם שרשור נפרד. 1506 01:10:42,950 --> 01:10:46,040 או שאתה משתמש נסה למעשה לאחסן את הערכים. 1507 01:10:46,040 --> 01:10:50,550 אז אולי אתה יכול לעשות בזמן קבוע, אבל אתה עדיין צריך להסתכל על ה-S-Y-M-B-O-L, 1508 01:10:50,550 --> 01:10:54,510 באופן פוטנציאלי, ולא רק 32 ביטים ללחפש משהו. 1509 01:10:54,510 --> 01:10:58,430 אז שוב, אותם הרעיונות באים לגבות לחזור על עצמו בהקשר הזה. 1510 01:10:58,430 --> 01:11:02,120 >> אבל שוב, עכשיו PHP יש כמה סופר GLOBALS זה, כך מתברר, הם 1511 01:11:02,120 --> 01:11:02,900 מערכים אסוציאטיביים. 1512 01:11:02,900 --> 01:11:05,590 ראינו אחד לפני רגע, $ _POST. 1513 01:11:05,590 --> 01:11:08,400 ושסופר הגלובלי יש מפתחות וערכים. 1514 01:11:08,400 --> 01:11:10,550 באופן ספציפי, מפתחות ליישר קו עם מה? 1515 01:11:10,550 --> 01:11:14,520 לאן את המפתחות ב$ _POST באו? 1516 01:11:14,520 --> 01:11:15,380 רק כדי לסכם? 1517 01:11:15,380 --> 01:11:16,480 >> קהל: 'שם'. 1518 01:11:16,480 --> 01:11:17,900 >> 1 רמקול: שם, שם? 1519 01:11:17,900 --> 01:11:19,860 >> קהל: [לא ברור] 1520 01:11:19,860 --> 01:11:20,750 >> רמקול 1: שם היא תכונה. 1521 01:11:20,750 --> 01:11:23,480 גם בו, שבו הם עשו במקור בא? 1522 01:11:23,480 --> 01:11:24,120 הטופס. 1523 01:11:24,120 --> 01:11:30,140 אז אם יש דף HTML תג טופס, בתוכה כמה כניסות, כמו 1524 01:11:30,140 --> 01:11:34,760 תיבות סימון, תיבות טקסט, הנפתחות תפריטים, שכל אחד מהם יש שם, אלה 1525 01:11:34,760 --> 01:11:40,260 שמות סופו של דבר כפי שמפתחות ב_POST $, ו, בכנות, לצורך העניין, $ _GET. 1526 01:11:40,260 --> 01:11:42,130 אם השיטה היא לקבל, אותו הרעיון. 1527 01:11:42,130 --> 01:11:43,830 זה פשוט בסופר הגלובלי שונה. 1528 01:11:43,830 --> 01:11:47,620 ואת הערכים, כמובן, מגיעים מ כל מה שמשתמש קליד בו או 1529 01:11:47,620 --> 01:11:48,890 הדפדפן שלה. 1530 01:11:48,890 --> 01:11:49,830 >> אבל יש עוד כמה אחרות. 1531 01:11:49,830 --> 01:11:52,140 יש עוגייה, שאנו יהיו תחזור אל סופו של דבר. 1532 01:11:52,140 --> 01:11:56,050 אבל אלה הם הדברים שאתה יודע האינטרנט משתמש לכמה טוב או רע. 1533 01:11:56,050 --> 01:11:57,420 אבל אנחנו עוד נחזור לזה. 1534 01:11:57,420 --> 01:12:01,720 שרת והפעלה, ושני אלה יש לי כמה שירות מיוחד. 1535 01:12:01,720 --> 01:12:03,940 >> אבל בואו נסתכל על זה. 1536 01:12:03,940 --> 01:12:13,330 תן לי ללכת קדימה ולפתוח את דוגמה קרא mvc0.php אז MVC 1537 01:12:13,330 --> 01:12:14,900 מייצג את הפעולות הבאות. 1538 01:12:14,900 --> 01:12:19,390 ואנחנו מציגים את זה מוקדם יותר מאשר הוא טיפוסי, באמת, כדי להביא לך עיצוב 1539 01:12:19,390 --> 01:12:22,180 סט 7 בעיה, וגם פרויקטי גמר, בסוג של תעשייה 1540 01:12:22,180 --> 01:12:23,670 דרך סטנדרטית, ודרך נקיות. 1541 01:12:23,670 --> 01:12:24,820 זה עיצוב טוב. 1542 01:12:24,820 --> 01:12:29,090 >> אז אתה עומד לראות, ואתה ניסיון, בעמ '7 קבוצה, פרדיגמה, סוג 1543 01:12:29,090 --> 01:12:32,260 של הלך רוח בתכנות, שנראה משהו קטן כזה. 1544 01:12:32,260 --> 01:12:35,570 M עבור דגם, C עבור הבקר, V לתצוגה. 1545 01:12:35,570 --> 01:12:39,690 סיפור ארוך קצר, MVC הוא רק סוג של המתודולוגיה, דרך של עשיית 1546 01:12:39,690 --> 01:12:43,360 אתרי אינטרנט, בפרט, שבו אתה לשים את כל הביטוי שלך, הטיפש - 1547 01:12:43,360 --> 01:12:44,970 היגיון עסקי - 1548 01:12:44,970 --> 01:12:49,710 כל הקניין הרוחני שלך ב מה שנקרא בקר, קובץ 1549 01:12:49,710 --> 01:12:54,840 כמו index.php, או שנראה, quote.php, או buy.php. 1550 01:12:54,840 --> 01:12:59,570 >> בהקשר של קבוצת הבעיה 7, דגמים מכילים בדרך כלל את הנתונים שלך, 1551 01:12:59,570 --> 01:13:03,860 כל מה שקשור למסד נתונים, שכן אנו סופו של דבר לראות, ואת השקפותיך 1552 01:13:03,860 --> 01:13:07,510 מכיל את האסתטיקה שלך אתר, HTML, CSS. 1553 01:13:07,510 --> 01:13:10,420 אז אנחנו כבר ראינו את זה בקצת C קצת על ידי שימוש בקבצים. h. 1554 01:13:10,420 --> 01:13:15,010 אנחנו באמת ראינו את זה לפני רגע עם CSS, על ידי הפקטורינג סגנון CSS 1555 01:13:15,010 --> 01:13:16,520 דברים מתוך ה-HTML שלנו. 1556 01:13:16,520 --> 01:13:20,730 >> אז MVC הוא באמת רק על ציור קווים בחול ואומר, 1557 01:13:20,730 --> 01:13:25,400 קוד תכנות מעניין עבורך אתר שייך במה שאנחנו קוראים 1558 01:13:25,400 --> 01:13:26,400 הבקר. 1559 01:13:26,400 --> 01:13:29,280 דברים הקשורים לאתר בדרך כלל בסופו של מודל. 1560 01:13:29,280 --> 01:13:33,070 אבל תראו, בסט בעיה 7, אנחנו למזג C ו M כדי לשמור את זה פשוט. 1561 01:13:33,070 --> 01:13:37,630 אבל תצוגה שבו כל של HTML שלך ואסתטיקה בדרך כלל ללכת. 1562 01:13:37,630 --> 01:13:39,160 >> אז מה זה אומר במונחים ריאליים? 1563 01:13:39,160 --> 01:13:45,980 ובכן, תן לי ללכת לMVC ספרייה כדלקמן. 1564 01:13:45,980 --> 01:13:48,880 ואתם תראו יותר מאלה סייר דרך במפרט. 1565 01:13:48,880 --> 01:13:53,200 אז בmvc0, אני טוען שזה הוא, כמו, גרסת 0 של אתרי האינטרנט של CS50. 1566 01:13:53,200 --> 01:13:56,670 >> כל מה שיש לנו הוא קצת HTML, כמו תג h1 גדול, כנראה. 1567 01:13:56,670 --> 01:13:57,800 ולאחר מכן רשימה עם תבליטים. 1568 01:13:57,800 --> 01:13:59,860 מעולם לא ראיתי את רשימה עם תבליטים בעבר, אבל לא ביג דיל. 1569 01:13:59,860 --> 01:14:01,590 בואו מהר לראות את קוד המקור. 1570 01:14:01,590 --> 01:14:06,610 מתברר רשימה לא מסודרת בכדורים הוא ul סוגר הפתוח עם אחד או 1571 01:14:06,610 --> 01:14:09,065 עוד פריטי רשימה, לי. 1572 01:14:09,065 --> 01:14:10,650 אז הודעה כאן היא תג עוגן. 1573 01:14:10,650 --> 01:14:12,130 ראיתי שלפני רגע. 1574 01:14:12,130 --> 01:14:13,810 >> אז ככה אני יישמנו בדף זה. 1575 01:14:13,810 --> 01:14:18,460 יש לי שני קישורים, שני פריטי רשימה, אחד UL לרשימה לא מסודרת, וסופו של דבר 1576 01:14:18,460 --> 01:14:22,700 תוצאה, מבחינה אסתטית, האם זה מאוד אתר יפה, גרסה 0 כאן. 1577 01:14:22,700 --> 01:14:26,840 אבל מה שמעניין עכשיו הוא איך זה מיושם מתחת למכסת המנוע. 1578 01:14:26,840 --> 01:14:33,590 >> תן לי להיכנס לgedit ולפתוח את זה הדוגמא הראשונה לצייר תמונה. 1579 01:14:33,590 --> 01:14:37,070 ואנחנו מסתכלים מה פגומים, באופן פוטנציאלי, בכאן. 1580 01:14:37,070 --> 01:14:43,260 עכשיו, אם אני נכנסתי localhost, ציבורי, MVC, שים לב כמה קבצים. 1581 01:14:43,260 --> 01:14:45,780 אני הולך לקרוא לאלה, ל רגע, כל הבקרים. 1582 01:14:45,780 --> 01:14:48,640 אבל זה קצת התעללות כי תראה הכול מעורבב 1583 01:14:48,640 --> 01:14:49,620 הפנימי שלהם. 1584 01:14:49,620 --> 01:14:52,330 >> ותן לי ללכת בתוך index.php. 1585 01:14:52,330 --> 01:14:54,700 ואנחנו רואים, פשוטו כמשמעו, אותה ה-HTML. 1586 01:14:54,700 --> 01:14:57,970 כך שגם אם קובץ זה מסתיים ב . PHP, זה לא אומר שיש לו 1587 01:14:57,970 --> 01:14:59,500 יש כל קוד PHP. 1588 01:14:59,500 --> 01:15:02,290 זה יכול להיות רק HTML גלם, אם כי זה קצת טיפשי. 1589 01:15:02,290 --> 01:15:07,650 אבל שם לב שאין סוגר PHP הפתוח לתייג, פרט לזו, אשר, בכנות, 1590 01:15:07,650 --> 01:15:09,160 הוא פשוט שם כדי לשרת כהערה. 1591 01:15:09,160 --> 01:15:12,080 אבל זה לא פונקציונלי אפילו שזה מעניין. 1592 01:15:12,080 --> 01:15:12,960 >> אבל שם לב זה. 1593 01:15:12,960 --> 01:15:15,400 מה שמעניין הוא מה שעכשיו שינויים בדף זה. 1594 01:15:15,400 --> 01:15:16,650 תן לי לחץ על הרצאות. 1595 01:15:16,650 --> 01:15:18,560 ושים לב לכתובת האתר הוא עומד להשתנות. 1596 01:15:18,560 --> 01:15:20,930 עכשיו אני בlectures.php. 1597 01:15:20,930 --> 01:15:22,630 תן לי לחץ על אפס. 1598 01:15:22,630 --> 01:15:27,200 עכשיו אני בweek0.php ועכשיו בוא לי לפתוח את הקבצים הללו בgedit. 1599 01:15:27,200 --> 01:15:30,120 לא רק מדד, אבל בואו לפתוח לי את הרצאות. 1600 01:15:30,120 --> 01:15:33,900 ותנו לי להיפטר מההערות להתמקד בחלק זה בלבד. 1601 01:15:33,900 --> 01:15:37,680 >> ועכשיו תן לי רק לפתוח עוד אחד, week0.php, לזרוק את ההערות, 1602 01:15:37,680 --> 01:15:39,910 רק כדי לנקות את זה. 1603 01:15:39,910 --> 01:15:41,720 ועכשיו שם לב שלאחר מכן. 1604 01:15:41,720 --> 01:15:47,340 לחשוב באמת סוג של זהירות על עיצוב, ובואו נעשו את זה הקו 1605 01:15:47,340 --> 01:15:52,013 את אותו הדבר, מה אפשר לעשות כאן טוב יותר, לדעתך? 1606 01:15:52,013 --> 01:15:56,450 1607 01:15:56,450 --> 01:15:57,780 >> איך אני עושה את זה בשבוע? 1608 01:15:57,780 --> 01:15:58,480 מה דעתך על זה. 1609 01:15:58,480 --> 01:16:00,450 אז ככה אני עשיתי בשבוע אחד. 1610 01:16:00,450 --> 01:16:08,290 ניגשתי אל קובץ, חדש, הדבק, שמור, week1.php, ולאחר מכן הלכתי לכאן. 1611 01:16:08,290 --> 01:16:09,875 ואני שיניתי אחד - 1612 01:16:09,875 --> 01:16:11,646 מה זה היה, אחד ליום שישי. 1613 01:16:11,646 --> 01:16:14,430 1614 01:16:14,430 --> 01:16:15,810 אני שיניתי את האפסים לאחד. 1615 01:16:15,810 --> 01:16:17,150 אני שיניתי את זה לאחד. 1616 01:16:17,150 --> 01:16:20,350 >> אוקיי, אז עכשיו להסתכל על הקבצים שלי. 1617 01:16:20,350 --> 01:16:22,100 מה אפשר לעשות אחרת? 1618 01:16:22,100 --> 01:16:25,310 איפה את ההזדמנות, אולי? 1619 01:16:25,310 --> 01:16:28,330 אז יש את ההזדמנות להתחיל הפקטורינג את החומר הזה. 1620 01:16:28,330 --> 01:16:32,950 בואו לפתוח אותי, כספוילר, ל מה שתראה בסט P 7. 1621 01:16:32,950 --> 01:16:38,750 אם אני פותח, עכשיו, בגרסת index.php חמש מזה, זה נראה דרך 1622 01:16:38,750 --> 01:16:40,730 מסתורי יותר, יש להודות. 1623 01:16:40,730 --> 01:16:43,710 >> אבל זה, כרגע, הוא מה שאני אתקשר הבקר ששליטה 1624 01:16:43,710 --> 01:16:44,770 היגיון של הדף שלי. 1625 01:16:44,770 --> 01:16:48,510 ואתה יכול לשחזר סוג של, באופן אינטואיטיבי, אולי, מה קורה. 1626 01:16:48,510 --> 01:16:50,630 בשורה הראשונה, זה לא ברור מספיק. 1627 01:16:50,630 --> 01:16:54,040 אבל שם לב שאני דורש, כמו עם כולל חד, קובץ שנקרא 1628 01:16:54,040 --> 01:16:55,930 helpers.php. 1629 01:16:55,930 --> 01:16:59,980 ואז אני מתקשר, ככל הנראה, פונקציה, הנקראת לדקלם, עוברת ב 1630 01:16:59,980 --> 01:17:00,850 שני טיעונים. 1631 01:17:00,850 --> 01:17:02,440 >> אחת מהן היא ציטוט סוף ציטוט, כותרת. 1632 01:17:02,440 --> 01:17:04,800 והשני הוא, איזה סוג של סוג הנתונים הוא זו, המבוסס על 1633 01:17:04,800 --> 01:17:07,180 על התחביר שלנו קודם לכן? 1634 01:17:07,180 --> 01:17:08,160 זה מערך משויך. 1635 01:17:08,160 --> 01:17:11,730 באופן ספציפי, זה עובר בכותרת עם קצת מטה שמזכיר לי 1636 01:17:11,730 --> 01:17:13,430 לי מה הוא ואת הערך שלו. 1637 01:17:13,430 --> 01:17:16,340 ואז אני רואה את קוד קשה ul, אז קצת HTML גלם. 1638 01:17:16,340 --> 01:17:20,020 אבל אז אני שוב במצב PHP קורא לדקלם לתפקד. 1639 01:17:20,020 --> 01:17:24,390 אז גם אם מעולם לא השתמשתי HTML או PHP בעבר, ולמרות שזה נראה 1640 01:17:24,390 --> 01:17:27,480 מפחיד, למה זה כנראה עיצוב טוב יותר? 1641 01:17:27,480 --> 01:17:31,310 מה טוב יותר על זה, המבוסס על היקש? 1642 01:17:31,310 --> 01:17:32,130 >> קהל: [לא ברור] 1643 01:17:32,130 --> 01:17:35,750 >> רמקול 1: פחות יתיר שב אין תג HTML יותר, לא יותר 1644 01:17:35,750 --> 01:17:38,410 ראשי תג, לא יותר גוף תגית בכל קובץ ארור. 1645 01:17:38,410 --> 01:17:41,860 במקום זאת, יש לי בחשבון את המשותף ומן הסתם לשים אותם 1646 01:17:41,860 --> 01:17:45,150 לקובץ קשור איכשהו לכותרת. 1647 01:17:45,150 --> 01:17:48,500 ואותו דבר לגוף הקרוב תג, תג HTML הקרוב. 1648 01:17:48,500 --> 01:17:52,165 זה כנראה כאן בפנים מהמקום כלשהו התחתונה. 1649 01:17:52,165 --> 01:17:57,050 ואתה עוד תראה, בסט בעיה 7, סיור קטן בזה. 1650 01:17:57,050 --> 01:17:58,070 >> אז מה לפנינו? 1651 01:17:58,070 --> 01:18:03,390 דבר אחד יש לנו לא את היכולת עדיין להוא לאחסן נתונים בפועל. 1652 01:18:03,390 --> 01:18:06,110 ולכן מה שאנחנו נתחיל לראות יום רביעי, למשל, הוא ש 1653 01:18:06,110 --> 01:18:08,450 חבר אקסל הישן, או מספרים, מאפשר לך לאחסן הרבה 1654 01:18:08,450 --> 01:18:10,060 הנתונים בשורות ועמודות. 1655 01:18:10,060 --> 01:18:12,570 מתברר שאתה יכול לעשות את זה במה בשם מסד נתונים, תכנות. 1656 01:18:12,570 --> 01:18:16,620 מאניה ומתברר, אחרי זה, שנוכל לאחסן דברים כמו 1657 01:18:16,620 --> 01:18:20,550 זה, שתראה שוב בסט P 7, כל חבורה של שמות משתמש ו 1658 01:18:20,550 --> 01:18:23,690 סיסמאות, הם האחרונים שבם מוצפן למעשה, ממש כמו שהם 1659 01:18:23,690 --> 01:18:25,550 היו במהדורה של האקר P סט 2. 1660 01:18:25,550 --> 01:18:29,600 וסופו של דבר, תוכל ליישם את זה, האתר כמו שלך שETrade 1661 01:18:29,600 --> 01:18:32,220 מיישם קולקטיבי CS50 פיננסים. 1662 01:18:32,220 --> 01:18:36,000 >> לבסוף, מאחר שאתה נשאר כאן כל כך מאוחר היום, אם אתה חוזר לחלק זה 1663 01:18:36,000 --> 01:18:41,120 של קמפוס, בשעה 4:00 היום, אנו אתן לך לא רק עצה, בSCES 1664 01:18:41,120 --> 01:18:44,200 ייעוץ הוגן, בשעה 4:00 ב מקסוול-דבורקין, אנחנו אתן לך קצת 1665 01:18:44,200 --> 01:18:47,470 חלום Americone, צ'רי גרסייה, שוקולד פאדג' בראוני, שוקולד 1666 01:18:47,470 --> 01:18:50,840 בצק צ'יפ קוקי, ו, כאשר אתה גוגל קוף שמנמן, אתה מקבל את זה. 1667 01:18:50,840 --> 01:18:53,620 אז כל שמחכה בשעה 4:00 PM במקסוול-דבורקין. 1668 01:18:53,620 --> 01:18:56,736 לראות אותך ביום רביעי גם כן. 1669 01:18:56,736 --> 01:18:59,960 >> רמקול 2: בסמוך CS50, RJ ישן פנימה 1670 01:18:59,960 --> 01:19:03,656 1671 01:19:03,656 --> 01:19:04,906 >> RJ: הקטע שלי! 1672 01:19:04,906 --> 01:19:07,727 1673 01:19:07,727 --> 01:19:08,977 חה! 1674 01:19:08,977 --> 01:19:12,056 1675 01:19:12,056 --> 01:19:13,306 אה, 1676 01:19:13,306 --> 01:19:16,374