[Powered by Google Translate] [וואָך 8, קאָנטינועד]
[דוד י מאַלאַן] [האַרוואַרד אוניווערסיטעט]
[דאס איז קס50.] [CS50.TV]
>> דאס איז קס50, אַזוי דאָס איז דער סוף פון וואָך 8 דאָ.
מיר פון קורס האט אַ ביסל פון אַ הורריקאַנע פריער דעם וואָך,
אַזוי רעכט איצט עס איז טאַקע נאָר איר און מיר אין דעם לעקציע האַלל,
אָבער הייַנט מיר פאָרזעצן אונדזער שמועס וועגן פפּ
און וועגן וועב פּראָגראַממינג מער בכלל, און מיר אויך באַקענען די געדאַנק
פון דאַטאַבייסיז, דער הויפּט איינער גערופן מיסקל, וואָס איז גאַנץ פאָלקס די טעג,
אין גרויס טייל ווייַל פון זייַן סקאַלאַביליטי ווי געזונט ווי ווייַל זייַן זייַענדיק פֿרייַ און עפענען מקור.
>> אבער ערשטער, אַ קוק בייַ ווו מיר לינקס אַוועק לעצטע צייַט.
צוריקרופן אַז מיר זענען קוקן בייַ די עטלעכע פראָש ימס ביישפילן,
און דאָס איז געווען די כידיאַס פאָרעם אַז איך געקומען זיך מיט עטלעכע 15 + יאר צוריק
אין סדר צו האָבן סטודענטן אויף קאַמפּאַס רעגיסטרירן פֿאַר פרעשמאַן ינטראַמיוראַל ספּאָרט
אָן פאקטיש ווייל צו טרעק ענימאָר אַריבער די הויף צו וויגגלעסוואָרטה
צו רוק אַ גשמיות שטיק פון פּאַפּיר ונטער עטלעכע פּראַקטער ס טיר.
אַנשטאָט מיר אריבערגעפארן אַלץ אָנליין, אָבער צו טאָן אַז מיר דארף צו מאַכן נוצן
פון אַ ביסל טעקנאַלאַדזשיז, אַזוי איין, מיר דארף HTML, כייפּערטעקסט מאַרקאַפּ שפּראַך,
וואָס ווידער איז דעם מאַרקאַפּ שפּראַך מיט וואָס איר מאַכן וועב בלעטער סטראַקטשעראַלי.
>> ניצן אַ ביסל פון קסס די טעג, קאַסקיידינג נוסח שיץ,
ווערביי מיר נוצן סטיליזאַטיאָנס פון דעם וועב בלאַט ניצן אַ ביסל אַנדערש סינטאַקס,
וועראַז די HTML איז געווען אַלע וועגן די סטרוקטור דערפון.
מיר אויך דאַרפֿן צו פאָרשטעלן אַ וועב פּראָגראַממינג שפּראַך.
אין דעם פאַל, מיר וועט נוצן פפּ, און פפּ איז געגאנגען צו לאָזן אונדז
צו דינאַמיקאַללי רעזולטאַט צופרידן ווי געזונט ווי טאָן פּראַגראַמאַטיק זאכן ווי
שיקט ימיילז, ווי איז געווען דער פאַל אויף דעם טאָן מיר לינקס לעצטע וואָך.
>> צוריקרופן אַז די קאָד פֿאַר דעם איז געווען אין 2 טיילן.
איינער, מיר האט פראָשימס3.פפּ,
און דאָס איז געווען לאַרגעלי מאַרקאַפּ מיט אַ HTML פאָרעם ין פון עס,
אַ קליינטשיק ביסל פון קסס אַרויף דאָ אין די נוסח אַטראַביוץ
אַזוי אַז די פאָרעם זיך וואָלט זייַן סענטערד אויף דעם בלאַט, אָבער ווייַטער אַז
מיר האט עטלעכע פארשטייער פאָרעם ינפּוץ, אַ טעקסט פעלד, אַ טשעקקבאָקס,
עטלעכע ראַדיאָ קנעפּלעך, אַ אויסקלייַבן מעניו, און אַ פאָרלייגן קנעפּל.
און דורך דעם פאָרעם, מיר דערלאנגט צו אַ טעקע וואָס איז משמעות גערופן רעגיסטער3.פפּ,
וואָס זיך געקוקט אַ ביסל עפּעס ווי דעם.
איצט, רובֿ פון די קאָד אין רעגיסטער3.פפּ, צוריקרופן, איז געווען אַלע וועגן Email.
עס האט אַ קליין ביסל פון וואַלאַדיישאַן פון די פאָרעם וואָס האט דערלאנגט צו מאַכן זיכער
אַז די פעלדער זענען פאקטיש צוגעשטעלט וואָס זענען דערוואַרט.
דעמאָלט מיר גערופן עטלעכע פפּ פאַנגקשאַנז ניצן אַ ביסל נייַ סינטאַקס,
אַפֿילו כאָטש עס ס באַראָוד פון סי
>> דעם פייַל אָפּעראַטאָר אַלאַוז אונדז צו מאַכן נוצן פון עפּעס גערופן כייפעץ-אָריענטיד פּראָגראַממינג.
מיר וועלן נישט גיין אין אַז אין קיין פּרט דאָ, אָבער וויסן פֿאַר איצט
עס ס אַ וועג פון בעת ​​פאַנגקשאַנז פארבונדן מיט אַבדזשעקס,
וואָס זענען אַ ספּעציעל טיפּ פון סטרוקטור, ווי מיר געזען אין סי
אבער פֿאַר איצט, נאָר נעמען אויף אמונה אַז דאָס איז די ריכטיק סינטאַקס צו נוצן
ווען ניצן אַ ביבליאָטעק ווי דעם פפּמאַילער ביבליאָטעק.
און דעמאָלט דורך דעם סוף פון דעם טעקע מיר האט דינאַמיקאַללי דזשענערייטאַד אַ Email
אַז גאַט געשיקט צו מיין jharvard@cs50.net חשבון
פון מיין jharvard@cs50.net חשבון,
און מיר ינפאָרמד דער באַניצער אַקאָרדינגלי אַז זיי האבן שוין רעגיסטרירט פֿאַר דעם ספּאָרט.
וואָס איז שיין פיל וואָס די פראָש ימס פּלאַץ האט אַלע יענע יאָרן צוריק
ווען איך ימפּלאַמענטאַד עס, געגעבן, אין אַ פאַרשידענע שפּראַך,
אָבער עס ווייזט איר טאָמער די מאַכט אַז איר האָבן
איצט אַז איר קענען אויסדריקן זיך ניט בלויז פּראָגראַממאַטיקאַללי
בייַ אַ נידעריק מדרגה אין אַ שפּראַך ווי C אָבער אין אַ פיל העכער מדרגה
מיט די זייער פאַקטיש וועלט פּראָגראַמען ווי Email צו פאקטיש סאָלווע
עטלעכע פאַקטיש וועלט פּראָבלעמס.
>> איצט, פון קורס, אַפֿילו כאָטש איך נוצן דעם שריפט צו דזשענערייט עטלעכע
ימיילז דינאַמיקאַללי פון jharvard@cs50.net, וואָס איז טאַקע אַ חשבון
אַז איך האָבן צוטריט צו, טאָן זייַן גאַנץ אָפּגעהיט צו שיקן
פּאָסט נאָר פון אַקאַונץ וואָס זענען פאקטיש דיין אייגן,
כדי דאס באַקומען איר אין אַ ביסל פון הייס וואַסער אין לעבן.
מיט וואָס האט געזאגט, לאָזן ס איצט יבערגאַנג צו סאַלווינג אַ אַנדערש פּראָבלעם בעסאַכאַקל,
אַז פון ריטיינינג שטאַטן.
איצט, וואָס טוט דאָס פאקטיש מיינען?
הטטפּ, דעם כייפּערטעקסט אַריבערפירן פּראָטאָקאָל,
איז פאקטיש אַ סטייטליס פּראָטאָקאָל, און וואָס דאָס מיטל איז אַז
ווען איר ציען זיך עפּעס ווי Google.com און דעמאָלט שלאָגן אַרייַן
יוזשאַוואַלי אייער בלעטערער האט עטלעכע מין פון ספּיננינג בילדל אַז דעמאָלט
רעזולטאַטן אין עטלעכע וועב בלאַט זייַענדיק דאַונלאָודיד,
און דעמאָלט אַז קליין בילדל סטאַפּס ספּיננינג, און אַז טאַקע סאַגדזשעס
אַז הטטפּ האט געענדיקט עטלעכע מין פון קשר צו די סערווער, און אַז ס עס.
הטטפּ איז סטייטליס אין די געפיל אַז עס טוט נישט טייַנען
אַ פּערסיסטענט קשר צו די סערווער אין די זעלבע וועג סקיפּע טוט
אָדער גטשאַט טוט ווייַל מיט הטטפּ
די האַשאָרע איז אַז אַמאָל איר ווע פעטשט אַ וועב בלאַט אַז ס עס.
>> איצט, אין פאַקט די טעג אויף זייטלעך ווי פאַסעבאָאָק און גוגל מאַפּס
און טוויטטער און די ווי דאָרט ס אַ פּלאַץ מער דיינאַמיזאַם ווערביי
אַפֿילו נאָך אַז בילדל סטאַפּס ספּיננינג איר קענען אין פאַקט באַקומען מער דערהייַנטיקונגען
פון די סערווער, מער טוועעץ, מער סטאַטוס דערהייַנטיקונגען אויף פאַסעבאָאָק און די ווי.
אבער אַפֿילו וואָס איז ניצן אַ טעכניק וואָס מיר וועט רעדן וועגן אין אַ וואָך אָדער צוויי
באקאנט ווי אַדזשאַקס ניצן אַ שפּראַך גערופן דזשאַוואַסקריפּט,
אָבער אין די סוף פון די טאָג, הטטפּ איז נאָך סטייטליס.
און נאָך אויב איר ווילן צו עפעס געדענקען זאכן וועגן אַ באַניצער
אַפֿילו נאָך זיי ווע דיסקאַנעקטיד פון דיין סערווירער
פפּ טוט פאַרגינענ איר אַ מיטל פון טאן דעם
ווייַל, ווי מיר געזען לעצטע צייַט, פפּ האט אַ נומער פון סופּערגלאָבאַלס,
און אַ סופּערגלאָבאַל איז, ווידער, אַ ספּעציעל גלאבאלע בייַטעוודיק
אַז ס קאָלנער צו איר דורך די וועב סערווער און דורך פפּ זיך.
>> איר טאָן ניט האָבן צו טאָן עפּעס צו שטעלן וואַלועס אין עס,
און צווישן די סופּערגלאָבאַלס מיר ווע געזען אַזוי ווייַט זענען באַקומען און פּאָסטן,
וואָס איז ווו פאָרעם פעלדער זענען שטעלן אויטאָמאַטיש פֿאַר איר,
ווי געזונט ווי אַ פּאָר פון אנדערע וואָס מיר האָבן נישט געזען נאָך.
ין פון $ _סערווער זענען עטלעכע ספּעציעל וועריאַבאַלז שייַכות צו די סערווירער זיך.
וואָס ס דעם IP אַדרעס, וואָס פּראָטאָקאָל, הטטפּ אָדער הטטפּס האט איר נוצן,
וואָס בעטן אופֿן האט איר נוצן און די ווי, אַזוי דאָרט ס עטלעכע טשיקאַווע,
זאַפטיק פרטים וועגן די סערווער, און אין פאַקט, דער באַניצער אין דאָרט ווי געזונט.
עס ס $ _קאָאָקיע, וואָס איז ווו די זאכן גערופן קיכלעך זענען סטאָרד.
מיר וועלן נישט פאַרברענגען צייַט אויף קיכלעך זיך הייַנט,
אָבער וויסן פֿאַר איצט אַז אַ קיכל איז נאָר אַ קליין שטיק פון אינפֿאָרמאַציע
אַז אַ וועב סערווער קענען פאַבריק אויף אַ וועב בלעטערער
און אין קער זייַן באַראַן אָדער זייַן קאָמפּיוטער 'ס שווער פאָר
צו קראָם אינפֿאָרמאַציע וועגן אַ באַניצער, פֿאַר בייַשפּיל, זייער באַניצער נאָמען
אַזוי אַז זיי טאָן ניט האָבן צו טיפּ עס יעדער מאָל זיי קלאָץ אין אָדער עטלעכע
יינציק נומער אָדער יידענטאַפייער פֿאַר אַז באַניצער
אַזוי אַז איר טאָן ניט האָבן צו דערגיינ די יאָרן זיי מיט די זעלבע מינים פון פראגעס וועגן
פּרעפֿערענצן אין דער צוקונפֿט, אָבער רובֿ פון אינטערעס
רעכט איצט איז $ _סעססיאָן.
>> דאס סופּערגלאָבאַל, וואָס, ווי די אנדערע, איז קאָלנער צו איר אויטאָמאַטיש דורך פפּ
ווען איר ניטאָ שרייבן פפּ-באזירט וועבסיטעס
קענען קראָם עפּעס איר ווילן, סטרינגס, ינטאַדזשערז,
פלאָוטינג ווייזט, וואַלועס, ערייז, אַבדזשעקס,
טאַקע עפּעס וואָס איר ווילן, און עס אַלאַוז איר צו קראָם עס אין אַזאַ אַ וועג
אַז אַפֿילו אויב דער באַניצער וויסיץ איר איצט און דעמאָלט
קומט צוריק אַ מינוט פון איצט אָדער 5 מינוט פון איצט ווייַל
זיי נעמען זייער צייַט איידער קליקינג עטלעכע אנדערע לינק
פפּ וועט ענשור אַז וועלכער איר שטעלן אין אַז סעסיע סופּערגלאָבאַל
אַ מינוט אָדער 5 מינוט צוריק וועט נאָך זייַן דאָרט ווען דער באַניצער קערט.
און ונטער דער קאַפּטער דעם סופּערגלאָבאַל איז ימפּלאַמענטאַד דורך וועג פון
יענע זאכן גערופן קיכלעך, אָבער פֿאַר איצט, עס ס נאָר אַ אַבסטראַקציע
ווערביי עס ס סאָרט פון די פּראַגראַמאַטיק עקוויוואַלענט פון אַ שאַפּינג קאַרט.
וועלכער איר, די פּראָגראַמיסט, שטעלן אין אַז
סופּערגלאָבאַל אַססאָסיאַטיווע מענגע וועט זייַן דאָרט עטלעכע נומער פון מינוט שפּעטער
ביז איר אויסמעקן עס אָדער ביז דער באַניצער קוויט זייַן אָדער איר בלעטערער בעסאַכאַקל.
>> זאל ס נעמען אַ קוק בייַ אַ בייַשפּיל פון ווי דעם זאַך איז פאקטיש געניצט.
אין קאָונטער.פפּ צווישן הייַנט ס ברעקלעך פון קאָד
מיר האָבן די פאלגענדע שורה.
אין די אָנהייב פון דעם טעקע מיר האָבן אַ בינטל פון בלוי באַמערקונגען, וואָס זענען אַנינטראַסטינג פֿאַר איצט.
אבער אין שורה 13 מיר האָבן אַ נייע ליניע,
סעססיאָנ_סטאַרט, און אַז פאקטיש טוט פּונקט וואָס עס זאגט.
עס סטאַרץ סעשאַנז.
עס ינייבאַלז איר צו נוצן אַז גרויס סופּערגלאָבאַל $ _סעססיאָן, און עס ס ווי פּשוט ווי אַז.
איצט, אויב מיר גיינ ווייַטער צו קוקן בייַ שורה 16, לאָזן ס פּרובירן צו רעכענען אויס וואָס דעם וועב בלאַט איז געגאנגען צו טאָן.
אויב (יססעט ($ _סעססיאָן ["קאָונטער"]) דעריבער גיין פאָרויס
און קראָם אין די קאָונטער בייַטעוודיק, לאָווערקאַסע קאָונטער,
$ _סעססיאָן ["קאָונטער"].
דאס מיינט צו זייַן דיקלערינג אַ היגע בייַטעוודיק גערופן טאָמבאַנק
ין פון וואָס עס ס פּאַטינג אַ קאָפּיע פון ​​וועלכער איז ין פון די סופּערגלאָבאַל
גערופן סעסיע בייַ דער אָרט "קאָונטער."
אַנדערש, משמעות, דאָס ביסל היגע בייַטעוודיק קאָונטער, איז ינישאַלייזד צו 0.
>> אבער דעמאָלט אַ ביסל שורות שפּעטער אין 26 באַמערקן אַז די סעסיע ס קאָפּיע פון ​​קאָונטער,
זייַן שליסל, האט אַ נייַ ווערט אַסיינד וואָס איז זייַן קראַנט ווערט פּלוס 1.
אין קורץ, דעם טעקע מיינט צו זייַן אַפּדייטינג
אַ קאָונטער אַז ס סטאָרד ין פון די סעסיע סופּערגלאָבאַל
דורך ינקרעמענטינג עס דורך 1, אָבער עס ערשטער ריטיינז אַ קאָפּיע פון ​​די פֿריִערדיקע ווערט
דורך סטאָרינג עס אין אַ היגע בייַטעוודיק גערופן $ קאָונטער,
און דעמאָלט אַראָפּ דאָ לאָזן ס זען וואָס בלייבט.
עס טורנס אויס עס ס שיין פיל נאָר HTML.
אין די דנאָ פון דעם בלאַט מיר זען אין שורה 37 וואָס איך האָבן באזוכט דעם פּלאַץ
טאָמבאַנק נומער פון מאל, אַזוי דאָרט ס אַ פּאָר טשיקאַווע פֿעיִקייטן דאָ.
איינער, דאָס איז קלאר אַ בייַטעוודיק, אָבער עס טוט נישט קלעקן צו נאָר שטעלן
$ טאָמבאַנק אין דעם גוף פון דיין HTML ווייַל פון קורס
אויב עס ס נאָר דאָרט צווישן דיין HTML פפּ איז געגאנגען צו יבערנעמען אַז ס נאָר HTML.
איר ממש ווילן $ טאָמבאַנק צו זייַן געדרוקט אויף דעם עקראַן.
>> אבער אַנשטאָט דורך דראַפּינג אין פפּ מאָדע
מיט דעם שטיק פון סינטאַקס מיר קענען דינאַמיקאַללי אַרייַנלייגן אַ ווערט דאָ
זייער ענלעך אין גייסט צו וואָס מיר האט לעצטע מאָל מיט
ינסערטינג וואַלועס אין סטרינגס.
אין פאַקט, דאָס איז נאָר אַ סטענאָגראַפיע נאָוטיישאַן פֿאַר זאגן עפּעס ווי דעם ממש,
דרוק ($ טאָמבאַנק) אָדער אַפֿילו עפּעס ווי פּרינטף (% s, טאָמבאַנק),
אָדער אַפֿילו, ווי איר זאלט ​​האָבן געזען אָנליין אָדער אין טעקסטבוקס,
דאָרט ס אַ פונקציאָנירן אין פפּ גערופן ווידערקאָל
וואָס טוט די זעלבע זאַך, און אַלע פון ​​יענע זענען נאָר מער ווינדיד וועגן
פון געזאגט <? =.
אין דעם איין פאַל איר טאָן ניט דאַרפֿן צו שטעלן
די וואָרט פפּ נאָך די קשיא צייכן.
דאס איז סטענאָגראַפיע נאָוטיישאַן פֿאַר, ווידער, וואָס מיר נאָר געזען אַ מאָמענט צוריק
וואָס איז עקאָוינג עטלעכע ווערט.
>> זאל ס זען וואָס דער סוף רעזולטאַט פון דעם פאקטיש איז.
זאל מיר גיין איבער אין אונדזער קאָונטער.פפּ טעקע,
און מיר וועט זען אַז דוד פּונקט געמאכט אַ גרייַז דורך פּלייינג מיט דעם קאָד עס.
זאל ס גיין פאַרריכטן וועלכער ער סקרוד אַרויף,
און די טעות מיינט צו זייַן דאָרט, ניטאָ, אויף שורה 37.
לויט צו די שפּיץ פון דעם בלאַט איך האָבן באזוכט דעם פּלאַץ 0 מאל.
נו, לאָזן ס גיין פאָרויס איצט, און בייַ דער שפּיץ פון דעם בלעטערער גיט אויף די
רילאָוד בילדל, און איך גיט רילאָוד,
און איצט איך ווע באזוכט די פּלאַץ 1 צייַט, 2, 3, 4, 5, 6, 7, 8.
און טאַקע, אויב מיר קוקן אין די מקור פון דעם בלאַט די פאַקטיש מקור קאָד איז טשאַנגינג,
און באַמערקן דעם גאַנץ אַוועק פון קיין פפּ, און אַז ס ווייַל
פפּ קאָד איז עוואַלואַטעד אָדער ינטערפּראַטאַד סערווער זייַט,
און אַזוי אַז מיטל וואָס דער רעזולטאַט פון די פפּ שריפט איז וואָס ס לעסאָף געשיקט צו דעם בלעטערער,
וואָס אין דעם פאַל איז עטלעכע רוי HTML און עטלעכע רוי טעקסט.
וואָס ס 'געגאנגען אויף דאָ?
>> נו, מיט לעפיערעך ביסל שורות פון קאָד איך בין קענען צו קראָם
פּערסיסטאַנטלי איבער די לויף פון עטלעכע סעקונדעס, אָדער אויב מיר געווארט לאַנג גענוג,
מינוט, אַפֿילו שעה, עטלעכע ווערט אין אַ וועג וואָס מאכט הטטפּ
ויסקומען סטאַטעפול ווי כאָטש מיר ווע ריטיינד
דעם קשר צו די סערווער, און עס ס נאָר רימעמבערינג וואָס איך דערציילט עס לעצטע צייַט,
אָבער אין פאַקט דאָרט ס אַ גאַנץ בינטל פון קאַמפּלעקסיטי געגאנגען אויף ונטער דער קאַפּטער
ינוואַלווינג קיכלעך אַז ס ענייבאַלינג פפּ צו געבן מיר דעם אילוזיע
פון דעם שאַפּינג קאַרט-ווי שטריך.
פֿאַר איצט, אַ נישטיק בייַשפּיל ווו מיר רע נאָר סטאָרינג אַ ינטעגער,
אָבער אַז שטריך וועט קומען צוריק צו זייַן פון גרויס ווערט
ווען מיר אָנהייבן גערעדט וועגן מער קאָמפּליצירט פראיעקטן,
צווישן זיי פּראָבלעם שטעלן 7.
דאס איז דיין זייער לעצטע פּראָבלעם שטעלן אין קס50.
איך וויסן, עס ס אַזוי טרויעריק, אָבער וואָס איר וועט געפֿינען איז אַז מיר רע געגאנגען צו פאַרענדיקן
דעם טייל פון די זמאַן דורך פאקטיש טראַנזישאַנינג
פון די קאָנטעקסט פון C אַוואַדע צו דעם קאָנטעקסט פון פפּ
אָבער בשעת ניצן עטלעכע פון ​​די זייער זעלביקער פאַנדאַמענאַלז
מיר ווע גערעדט וועגן פֿאַר עטלעכע מאָל.
>> די אָביעקטיוו מיט פּסעט 7 איז צו מאַכשער קס50 פינאַנסע,
וואָס איז אייער אייגן ווערסיע פון ​​יאַהאָאָ פינאַנסע אָדער גוגל פינאַנסע
אָדער אַפֿילו Etrade.com ווערביי איר האָבן די פיייקייַט צו
קוק אַרויף לאַגער פּרייסיז פֿאַר געגעבן סימבאָלס, אָבער אַפֿילו מער ווי אַז
איר האָבן די פיייקייַט צו "קויפן" און "פאַרקויפן" סטאַקס
וואָס זענען טריידיד אויף פארשידענע לאַגער יקסטשיינדזשיז ווייַל ווי דעם היים בלאַט
דאָ סאַגדזשעס, וואָס איז טאַקע די מאָס צו וואָס מיר ווע אנגעהויבן
די פּראָבלעם שטעלן פֿאַר איר, איר האָט אַ לאָגין פאָרעם אַז ס אַסקינג פֿאַר אַ באַניצער נאָמען און אַ פּאַראָל.
עס האט אַ פאָרלייגן קנעפּל, אָבער דערנאָכדעם, ווי מיר וועט יווענטשאַוואַלי זען,
עס איז גאָרנישט טאַקע געגאנגען אויף ונטער דער קאַפּטער נאָך ווייַל עס
בלייבט פֿאַר איר צו מאַכשער די פיייקייַט צו רעגיסטרירן נייַ ניצערס,
די פיייקייַט צו קויפן סטאַקס, צו פאַרקויפן סטאַקס,
צו פאקטיש קוק אַרויף קראַנט לאַגער פּרייסיז.
>> און טאַקע, דאָס וועט זייַן ווי פאַקטיש וועלט ווי מעגלעך ווייַל מיר האט
אַרייַננעמען אַ ביסל פון קאָד וואָס וועט לאָזן איר מיט אַ איין פֿונקציע
צו אָנפֿרעג יאַהאָאָ פינאַנסע, וואָס וואַנדערפאַלי מאכט פאַראַנען פֿרייַ דאַטן
פֿאַר קוקן אַרויף לאַגער פּרייסיז באזירט אויף די לאַגער סימבאָל אָדער טיקער סימבאָל,
און איר באַקומען צוריק דעם קראַנט לאַגער פּרייַז פון די טאָג.
די דאַטן איר ניטאָ פאקטיש געזען אין דעם באַזונדער פּסעט וועט זייַן
וועגן ווי פאַקטיש וועלט ווי עס קענען באַקומען אַזוי, אז איר ניטאָ פאקטיש ינטערפאַסינג
מיט פאַקטיש וועלט סטאַקס, פאַקטיש וועלט פּרייסיז,
און מיר וועלן זען ווי פיל געלט איר קענען מאַכן טאָמער
איבער דער ווייַטער עטלעכע טעג פון פּלייינג מיט אייער אייגן פּראָבלעם שטעלן.
>> אבער לאָזן ס ערשטער שטעלן די בינע פֿאַר ווי צו פּלאַן עפּעס אַז ס 'זיכער מער קאָמפּליצירט
ווי קאָונטער.פפּ, אַז ס 'מער קאָמפּליצירט ווי קיין פון די פראָש ימס ביישפילן אַזוי ווייַט,
און לאָזן ס פּרובירן צו פאָרשטעלן אַ ביסל פּעראַדיימז דאָ וואָס לאָזן אונדז
ביידע פֿאַר פּסעט 7 און אפֿשר פֿאַר דיין לעצט פּרויעקט אויב איר טאָן עפּעס וועב באזירט
צו האַלטן דיין קאָד גוט אָרגאַניזירט, צו האַלטן זיך באַמ זינען,
און צו נעמען אַ שריט צו קאַלאַבערייטינג, צי אין קס50 ס לעצט פּרויעקט
אָדער ווייַטער אויב איר פאָרזעצן צו פּראָגראַם עפּעס אין די צוקונפֿט.
עס ס דעם גענעראַל פּלאַן פּעראַדיים
אין קאָמפּיוטער וויסנשאַפֿט און אין ווייכווארג אַנטוויקלונג מער בכלל
באקאנט ווי מווק, מאָדעל מיינונג קאָנטראָללער,
און דאָס איז אַ נאַריש אַקראַנים וואָס באשרייבט אַ זייער פייַן געדאַנק,
וואָס איז די צעשיידונג פון פאַרשידענע אַספּעקץ פון אַ פּראָגראַם,
ספּאַסיפיקלי בעכעסקעם באַזונדער די לאָגיק אָדער די געשעפט לאָגיק פון אַ וועבזייַטל
אַזוי אַז עפּעס אַז ינוואַלווז זאכן ווי
פאַך פאַנגקשאַנז און קוועריינג דאַטאַבייסיז און די ווי
כאַפּאַנז ניט צווישן דיין HTML
אָבער אלא אין באַזונדער טעקעס, און טאַקע, דאָרט ס דעם איין טעקע
טיפּיקלי אַז איר האָט גערופן די קאָנטראָללער
אַז ס 'טאַקע די סייכל הינטער די אָפּעראַציע, און מיר וועט זען אַ בייַשפּיל
פון דעם אין נאָר אַ מאָמענט.
>> עס ס אַ מאָדעל וואָס איז פּראָגראַממינג קאָד
וואָס טוט דער גערעדט צו דיין דאַטאַבייסיז, וואָס רעדט צו יאַהאָאָ פינאַנסע און די ווי,
און דעמאָלט דאָרט ס די V אין מווק, די קוקן,
אַלע פון ​​די שטאָפּן אַז ס שייַכות צו עסטעטיק, דעם טעקעס אַז פאקטיש אַנטהאַלטן
דיין HTML, אפֿשר דיין קסס און די ווי.
דער געדאַנק דאָ, ווי דעם בילד סאַגדזשעס, איז אַז די קאָנטראָללער
איז די טעקע, ווי מיר וועט באַלד זען און ווי איר וועט דער הויפּט זען אין פּסעט 7,
אַז די וועלט רעדט צו דורך זייער וועב בראַוזערז.
וואָס איז די טעקע אַז געץ באזוכט אויף דער ציבור אינטערנעט,
אָבער די קאָנטראָללער רעדט צו פּאַטענטשאַלי אַ מאָדעל,
וואָס איז איינער אָדער מער אנדערע טעקעס וואָס אַנטהאַלטן קאָד שייַכות צו דאַטן,
קאָד שייַכות צו דאַטאַבייסיז און די ווי, און דאַן עס רעדט צו
די קאָנטראָללער איינער אָדער מער אנדערע טעקעס באקאנט ווי קוקן,
וואָס זענען די עסטעטיק פון אַ וועב בלאַט, טעמפּלאַטעס פון סאָרץ,
וואָס זאל נעמען עטלעכע דאַטן ווי אַרייַנשרייַב, אָבער אין די סוף פון די טאָג
דער בלויז לאָגיק ין פון אַ מיינונג זאָל זייַן די רענדערינג פון וואָס דאַטן,
יטעראַטינג איבער אַ שלייף און פאקטיש ספּיטינג אויס עטלעכע
HTML-באזירט רענדישאַן דערפון אָדער אַפֿילו עפּעס ווי אַ פּדף.
>> וואָס ס פייַן וועגן מווק איז אַז איר קענען האָבן פאַרשידענע קוקן
באזירט אויף דעם טיפּ פון מיטל, באזירט אויף דעם טיפּ פון טעקע פֿאָרמאַט אַז איר פאקטיש
ווילן צו ווייַזן צו דעם באַניצער.
זאל ס נעמען אַ קוק בייַ אַ ביסל פּראַגרעסיוולי מער קאָמפּליצירט און געזונט דיזיינד ביישפילן
דורך סטאַרטינג ערשטער מיט ווערסיע 0 דאָ.
זאל מיר גיין פאָרויס און עפענען אַרויף אין אונדזער מווק Directory הייַנט
אַ טעקע גערופן ינדעקס.פפּ אין Directory 0.
נאָטיץ דאָס איז אַ סופּער פּשוט און זייער ונדערווהעלמינג וועבזייַטל
אַז ס סאָרט פון ווערסיע 0 פון אַ האָמעפּאַגע פֿאַר קס50,
און באַמערקן ווי מיר האָבן אַ לינק צו לעקטורעס, מיר האָבן אַ לינק צו סיללאַבוס,
און אויב איך נאָכפאָלגן די לינק צו לעקטורעס באַמערקן אַז די URL
אַרויף שפּיץ איז געגאנגען צו טוישן צו לעקטורעס.פפּ.
אויב איך דעמאָלט נאָכפאָלגן די לינק צו וואָך 1 באַמערקן אַז די URL ענדערונגען צו וועעק1.פפּ.
עס מיינט צו זייַן אַ פערלי פּשוט כייראַרקאַקאַל סטרוקטור דאָ.
>> זאל ס נעמען אַ שנעל קוקן ונטער דער קאַפּטער אין ווי דעם איז געלייגט אויס,
און טאַקע, אויב איך קוק בייַ ינדעקס.פפּ עס ס שיין פּשוט.
אין פאַקט, אַפֿילו כאָטש איך גערופן דעם אַ פפּ טעקע דאָרט ס קיין פאַקטיש פּראָגראַממינג קאָד.
עס ס אַ באַמערקונג אַז איך געשריבן דאָ אין פפּ נאָר אַזוי דער באַניצער טוט ניט סוף אַרויף געזען עס.
פון קורס, ווי איידער, עפּעס אַז ס אין צווישן פפּ Tags
געץ ינטערפּראַטאַד, אַפֿילו אויב עס ס אַ באַמערקונג, און צו טייַטשן אַ באַמערקונג
מיטל נאָר צו וואַרפן עס אַוועק אין די סוף פון די טאָג און נישט פאקטיש
שיקן עס צו די בלעטערער, ​​אַזוי אַלץ אין דאָ איז נאָר עסטעטיק.
אויב איך עפענען אַרויף סימילאַרלי לעקטורעס.פפּ דעם אויך איז נאָר אַ שווער קאָדעד טעקע.
עס כאַפּאַנז צו ווערן גערופן עפּעס. פפּ,
אָבער עס טאַקע איז נאָר. HTML, און וועעק1.פפּ, וועעק2.פפּ
סימילאַרלי זענען נאָר מאַרקאַפּ, אַזוי דאָרט ס אַ בינטל פון שאָרטקאָמינגס פון דעם פּלאַן.
איינער, עס ס אַ ריזיק סומע פון ​​קאָפּיע / פּאַפּ.
אפילו כאָטש די בלויז זאַך אַז ס טשאַנגינג צווישן די טעקעס איז די ונאָרדערעד רשימה,
די לי טאַגס, איך נאַנדאַלעס האָבן שולדבאַנק טיפּ, HTML, קאָפּ,
טיטל, נאָענט גוף, נאָענט HTML און מער
אין יעדער איין טעקע, וואָס מיטל אַז אויב איך אלץ ווילן צו ריסטראַקטשער
דעם וועב בלאַט אָדער רעסטיליזע עס איך האָבן צו גיין אין און טוישן
אַלע די טעקעס מאַניואַלי אָדער מיט עטלעכע מאַסיוו געפֿינען און פאַרבייַטן.
>> זאל ס נעמען אַ שריט צו אַ סמאַרטער, מער טראכטן פּלאַן אין ווערסיע 1 דאָ
ווערביי ווי פּער די לייענען מיר אַז מיר ווע אַרייַנגערעכנט אַזוי אַז איר קענען שפּילן צוזאמען מיט
די מער ליזערלי אין שטוב באַמערקן אַז מיר האָבן דאָ
אַ קיצער פון דער טעקעס אין ווערסיע 1 פון דעם פּלאַץ,
און עס מיינט אַז איך ווע גענומען עס אויף זיך צו פאַקטאָר אויס
עטלעכע פּראָסט קאָד, העאַדער.פפּ און פאָאָטער.פפּ.
נו, לאָזן ס נעמען אַ קוק אין וואָס ס 'ין דער ערשטער פון יענע.
העאַדער.פפּ קוקט באַקאַנט,
אָבער באַמערקן ווו טוט עס באַקומען שנייַדן אַוועק?
רעכט נאָך שורה 19, אַזוי אַז ס 'אַלץ וואָס איז פּראָסט
פון די טעקעס ינדעקס.פפּ, לעקטורעס.פפּ,
וועעק1 און וועעק2.פפּ פון די פֿריִערדיקע בייַשפּיל.
וואָס איך האט איז קאָפּי און שנייַדן אַלץ וואָס איז פּראָסט צו אַלע יענע טעקעס,
שטעלן עס אין אַ באַזונדער כעדער טעקע, און סימילאַרלי אין פאָאָטער.פפּ
האט איך צולייגן די זעלבע פּרינציפּ ווערביי דער בלויז טשיקאַווע שורות
אין פאָאָטער.פפּ זענען די צוויי, נאָענט גוף און נאָענט HTML.
>> אבער וואָס דעם מיטל איצט איז אַז אין די נייע ווערסיע
פון ינדעקס.פפּ באַמערקן ווי פיל סימפּלער עס קענען באַקומען.
געגעבן, אַ ביסל מער קריפּטיק קוקן, אַ ביסל ווייניקער ינטואַטיוו
צו נאָכפאָלגן שפּיץ צו דנאָ, אָבער מיין גאָט, אַלע פון ​​וואָס יבעריקייַט איז איצט ניטאָ.
מיר דאַרפן ניצן אַ פפּ פונקציאָנירן ממש גערופן דאַרפן אַרויף שפּיץ,
וואָס איז זייער רעמאַניסאַנט, צוריקרופן, פון C ס # אַרייַננעמען מעקאַניזאַם.
מיר דאַרפן העאַדער.פפּ בייַ די שפּיץ.
מיר דאַרפן פאָאָטער.פפּ בייַ די דנאָ, און דער נאָר זאַך וואָס איז אַנדערש
אָדער ספּעציעל וועגן דעם טעקע איז די צופרידן אַז ס מענט צו זייַן יינציק צו עס.
אויב איך דעמאָלט גיין אין, זאָגן, לעקטורעס.פפּ, דער זעלביקער פּרינציפּ אַפּלייז.
ווידער, עטלעכע באַמערקונגען אַרויף שפּיץ, אָבער דעמאָלט איך דאַרפן כעדער, דאַרפן פוטער,
און אין צווישן אים ס נאָר די צופרידן אַז ס 'פאקטיש געביטן.
און אויב מיר געקוקט אין וואָך 1 און וואָך 2 מיר 'ד זען
אַז דער זעלביקער פּרינציפּ האט שוין געווענדט דאָרט.
נו, מיר ניטאָ ניט גאַנץ געטאן דאָרט.
>> זאל ס נעמען אַ קוק בייַ ווערסיע 2, וואָס האט אַ ענלעך סטרוקטור,
אָבער באַמערקן איצט איך ווע באַקענענ עפּעס אַנדערש.
אין שורה 10 איך ווע באַקענענ העלפּערס.פפּ,
וואָס משמעות כּולל העלפּער פאַנגקשאַנז.
א העלפּער פֿונקציע איז בכלל אַ לעפיערעך קורץ פֿונקציע
אַז איר שרייַבן צו העלפן איר אויס אין פארשידענע ערטער,
און לאָזן ס זען וואָס ס 'ין פון העלפּערס.פפּ.
אין דעם פאַל, עס קוקט ווי עס האט 2 פאַנגקשאַנז.
צוריקרופן פון די אנדערע טאָג מיט אונדזער קובע בייַשפּיל
איר קענען דעפינירן דיין אייגן פאַנגקשאַנז אין פפּ, און וואָס איך ווע געטאן איצט איז איך ווע
דיפיינד פאַנגקשאַנז גערופן ופפירן פוטער און ופפירן כעדער,
דער ערשטער פון וואָס נעמט אַ פּאַראַמעטער גערופן דאַטן,
וועמענס פעליקייַט ווערט איז אַן ליידיק מענגע, ווי סאַגדזשעסטיד דאָרט,
און מיר קענען פאקטיש שרייַבן דעם אַפֿילו מער סאַקסינגקטלי אין די לעצט ווערסיע פון ​​פפּ
דורך זאגן עפענען קוואַדראַט קאַנטיקער, פֿאַרמאַכט קוואַדראַט קאַנטיקער.
אַז מיטל אַן ליידיק מענגע פון ​​גרייס 0 אָבער נאַנדאַלעס אַ מענגע.
>> דאס עקסטראַקט פֿונקציע איז אַ ביסל ספּעציעל אין אַז
וואָס עס טוט איז עס נעמט ווי זייַן אַרגומענט אַ אַססאָסיאַטיווע מענגע
וואָס האט 0 אָדער מער שליסל ווערט פּערז, און אויב איר האָבן אַ שליסל פון פו
און אַ ווערט פון באַר די עקסטראַקט פֿונקציע
קריייץ אַ סיטואַציע אין וועלכע איצט, ווי פון שורה 11,
איר האָבן אַ היגע בייַטעוודיק גערופן $ פו וועמענס ווערט איז באַר.
און אויב איר האט מער שליסלען און וואַלועס אין די דאַטן מענגע,
סימילאַרלי וואָלט זיי זייַן יקסטראַקטיד אין די היגע פאַרנעם
אָדער נאָמען פּלאַץ אַזוי אַז פאָאָטער.פפּ און
די זעלבע געדאַנק אַראָפּ דאָ אַזוי אַז העאַדער.פפּ
האָבן צוטריט צו יענע וועריאַבאַלז.
אין פאַקט, לאָזן מיר עפענען זיך ווידער העאַדער.פפּ
און ציען ופמערקזאַמקייַט צו איצט וואָס עס קוקט ווי אין דעם ווערסיע.
>> אלא ווי שווער קאָודינג קס50 ווי דער טיטל פֿאַר יעדער איין בלאַט
באַמערקן די דיינאַמיזאַם אַז ס מעגלעך איצט.
אין שורה 5 איך בין עקאָוינג אַ טיטל בייַטעוודיק,
אָבער ערשטער איך בין גייט פארביי אַז טיטל בייַטעוודיק צו אַ פֿונקציע גערופן הטמלספּעסיאַלטשאַרס.
א נאַריש נאָמען פֿאַר אַ פֿונקציע, לאַנג ווי עס איז, אָבער עס טאַקע טוט וואָס עס זאגט.
עס ינשורז אַז קיין ספּעציעל אותיות
אין די שטריקל וואָס ס 'שוין דורכגעגאנגען אין זענען רעכט אנטרונען HTML.
דאס איז פאקטיש אַ וועג פון אַוווידינג עפּעס גערופן אַ קרייַז פּלאַץ סקריפּטינג באַפאַלן
ווערביי עמעצער קענען מאַלישיסלי אָדער אַקסאַדענאַלי
אַרייַנשפּריצן זייער אייגן HTML אין דיין וועבזייַטל
דורך פּאַסטינג אין עטלעכע פאָרעם, פֿאַר בייַשפּיל,
עפּעס אַז איר זענען נישט גאַנץ יקספּעקטינג, דער הויפּט דזשאַוואַסקריפּט קאָד,
ווי מיר וועט רעדן וועגן אין אַ וואָך אָדער צוויי ס מאָל.
>> דאס איצט העאַדער.פפּ, עס ס אַ מיינונג
אין דעם זינען, אז עס אַלאַוז איר צו מיינונג עסטעטיקלי די אינהאַלט פון עטלעכע דאַטן שטעלן.
אבער מער ספּאַסיפיקלי, עס ס אַ מוסטער.
דאס איז סאָרט פון אַ פּלאַן איצט פון וואָס מיר ווילן די כעדער פון יעדער בלאַט צו קוקן ווי,
אָבער דאָרט ס עטלעכע דיינאַמיזאַם אין אַז מיר ווילן די טיטל צו זייַן דינאַמיקאַללי ינסערטאַד
באזירט אויף דער טיטל בייַטעוודיק
וואָס איז געווען יקסטראַקטיד ווען מיר גערופן, ווידער,
די ופפירן כעדער פונקציאָנירן.
איצט, אויב מיר געקוקט בייַ ופפירן פוטער, דאָרט ס 'פאקטיש ניט פיל נוצן פון וואָס רעכט איצט
ווייַל אין פאָאָטער.פפּ דאָרט ס קיין דיינאַמיזאַם כוואַצאָועווער.
עס קען זייַן, אָבער בייַ דעם מאָמענט עס ס אַ שווער קאָדעד רשימה פון 2 טאַגס,
אָבער די זעלבע געדאַנק אַפּלייז, אַזוי אַז פאקטיש סאַגדזשעס וואָס
האט מיר וויסט צייַט בעת אַ ופפירן כעדער און אַ ופפירן פוטער פונקציאָנירן?
זאל מיר גיין אַנשטאָט איצט אין ווערסיע 3,
און אין ווערסיע 3 אין העלפּערס איך באַשלאָסן צו פאַרפּאָשעטערן עס אַפֿילו מער.
>> זאל מיר האָבן איין ופפירן פונקציאָנירן.
זאל מיר האָבן עס נעמען אן אנדער אַרגומענט, דאָס מאָל גערופן מוסטער,
וואָס איז מענט צו זייַן די נאָמען פון אַ מוסטער,
און דעמאָלט איך וועל קאַנקאַטאַנייט פּרעסומפּטואָוסלי. פפּ צו אַז בייַטעוודיק ס ווערט,
און דעריבער אויב עס יגזיסץ פאָאָ.פפּ, באַר.פפּ אָדער העאַדער.פפּ און פאָאָטער.פפּ,
דעמאָלט איך בין געגאנגען צו גיין פאָרויס און עקסטראַקט די בייַטעוודיק דאַטן
און דעמאָלט דאַרפן אַז דרך.
אין אנדערע ווערטער, צו נוצן דעם איצט, אויב איך עפענען אַרויף ינדעקס.פפּ
באַמערקן אַז איך טאָן ניט רופן ופפירן כעדער ענימאָר.
איך נאָר רופן ופפירן, אָבער איך פאָרן אין אַ ציטירטן ווערט פון כעדער
צו מאַכן קלאָר וואָס מוסטער איך פאקטיש ווילן צו מאַסע.
>> דעמאָלט איבער דאָ באַמערקן וואָס איך בין טאן.
איך בין גייט פארביי אין דינאַמיקאַללי אַ שליסל פון טיטל,
אַ ווערט פון קס50, און דאָס אויך, ווי מיר געזען פריער,
קען זייַן געמאכט מער סאַקסינגקט אין די לעצט ווערסיע פון ​​פפּ
ווו איך קען פאַרבייַטן די מענגע פונקציאָנירן מיט קוואַדראַט בראַקאַץ,
וואָס איך פאָרשלאָגן איז אַפֿילו מער ליינעוודיק און אַוואַדע
אַ ביסל גרינגער צו דרוקן.
און פון קורס, מיט די ופפירן פוטער רופן בייַ די דנאָ,
מיר טאָן ניט אַרן גייט פארביי אין אַ רגע אַרגומענט בייַ אַלע, קיין אַססאָסיאַטיווע מענגע,
ווייַל דאָרט ס 'גאָרנישט דינאַמיש ין פון וואָס פוטער.
עס ס נאָר עטלעכע נאָענט טאַגס פֿאַר HTML.
גוט, מיר רע גענומען טריט צו טאַקע רייניקונג זאכן אַרויף דאָ,
אָבער לאָזן מיר עפענען אַרויף 2 לעצט ביישפילן.
דאס איין, נומער 4, באַמערקן אַז איך ווע געמאכט אַ באַוווסטזיניק באַשלוס איצט
צו פֿאַרבעסערן אויף די פֿריִערדיקע בייַשפּיל דורך לעסאָף ניצן עטלעכע כייעראַרקי צו מיין טעקעס.
>> נאָטיץ אַז אין דעם קיצער, אין דעם לייענען מיר, איך ווע באַקענענ
אַ כולל וועגווייַזער און אַ טעמפּלאַטעס Directory
וועמענס אינהאַלט זענען געגאנגען צו זייַן די זאכן איך ווילן צו אַרייַננעמען
און די טעמפּלאַטעס אַז איך ווילן צו ופפירן, ריספּעקטיוולי.
דאס איז טאַקע מיר זייַענדיק אַנאַל און טריינג צו האַלטן דאס ציכטיק,
האַלטן פֿאַרבונדענע טעקעס צוזאַמען, אָבער די סוף רעזולטאַט
איז וואָס מיר איצט האָבן אַ ביסל טידיער סעטאַפּ, אָבער מיר האָבן צו געדענקען איצט
אין, פֿאַר בייַשפּיל, ינדעקס.פפּ
ווען מיר דאַרפן די טעקע העלפּערס.פפּ
מיר האָבן צו איצט דאַרפן עס דורך כולל / העלפּערס.פפּ
אלא ווי נאָר געזאגט העלפּערס.פפּ ווייַל איצט עס ס 'פאקטיש אין אַ סאַב וועגווייַזער.
איצט, ווי אַ באַזונדער, איר וועט זען אין די ביישפילן און עטלעכע אנדערע
פאַנגקשאַנז ווי דאַרפן, דאַרפן אַמאָל.
עס ס 'פאקטיש אַ פֿונקציע זיך גערופן אַרייַננעמען, און זיי אַלע האָבן אַ ביסל פאַרשידענע נאַטור.
דאָ איך זאָגן דאַרפן אַמאָל צו מאַכן סופּער קלאָר אַז איך נאָר וועלן יענע
העלפּערס אַרייַנגערעכנט אין מיין פּרויעקט אַמאָל.
אבער אויב איך בין אָפּגעהיט און אויב איך בין פאקטיש טראכטן דורך מיין לאָגיק רעכט
עס זאָל קלעקן אויך נאָר צו זאָגן דאַרפן אַרויף שפּיץ
אַזוי לאַנג ווי איך זיך טאָן ניט אַקסאַדענאַלי דאַרפן אַז זעלביקער טעקע אנדערש.
אין פאַקט, דאָס איז אַ ביסל מער עפעקטיוו וועג פון טאן זאכן דעמאָלט ניצן
דאַרפן אַמאָל, אַזוי איך וועט טרים עס אַראָפּ צו נאָר דאַרפן.
>> זאל ס נעמען איין שריט ווייַטער.
דאס לעצטע בייַשפּיל איצט, ווערסיע 5, האט אַן אַפֿילו קלינער טעקע כייעראַרקי.
נאָטיץ וואָס איך ווע געטאן דאָ פּער די לייענען מיר אין דעם לעצט ווערסיע
איז איצט איך האָבן מיין HTML וועגווייַזער, וואָס איך ווע האט אַלע דעם צייַט,
אָבער ין פון דאָרט איצט איז בלויז ינדעקס.פפּ, לעקטורעס.פפּ,
וועעק1.פפּ און וועעק2.פפּ.
די כולל Directory איצט לעבן אַלאָנגסייד פון דעם HTML וועגווייַזער,
אַזוי אין דער זעלביקער מדרגה ווי אַ סיבלינג, אַזוי צו רעדן.
אַזוי טוט די טעמפּלאַטעס טעקע.
דער שליסל טאַקעאַווייַ דאָ איז איך ווע באַקענענ אַ קליין ביסל מער סטרוקטור,
אָבער די שליסל שטריך איצט איז אַז נאָר די טעקעס
וואָס דאַרפֿן צו זייַן וועב צוטריטלעך, עפנטלעך אַדרעסאַבאַל
דורך אַ URL אויף די ציבור אינטערנעט ביסט אין מיין HTML וועגווייַזער.
>> דערווייַל, אנדערע טעקעס, העלפּערס.פפּ, פאָאָטער.פפּ,
העאַדער.פפּ, וואָס זענען אַרגיואַבלי אפֿשר מער שפּירעוודיק,
אפֿשר העלפּערס פאקטיש האט עטלעכע באַניצער נעמען און פּאַסווערדז אָדער עטלעכע אינטעלעקטואַל
פאַרמאָג פון מייַן, פאַנגקשאַנז איך טאַקע טאָן ניט וועלן די וועלט צו זען, אַפֿילו אויב אַקסאַדענאַלי.
עס ס גוט פיר צו האַלטן אויס פון די ציבור HTML Directory
קיין טעקעס אַז טאָן ניט דאַרפֿן זיך צו זייַן ציבור.
כל איר האָבן צו טאָן אין דעם פאַל ווען קוקן בייַ, פֿאַר בייַשפּיל,
די HTML Directory ס ינדעקס.פפּ טעקע,
מעלדונג מיר נאָר האָבן צו זייַן אַ ביסל מער אָפּגעהיט ווען ריקוויירינג
אָדער דאַרפן אַמאָל דעם טעקע.
איך דאַרפֿן צו ערשטער טאָן .. צו גיין צו די פאָטער וועגווייַזער,
דעמאָלט טאָן / כולל / העלפּערס.פפּ
צו ונטערטוקנ זיך צוריק אַראָפּ אין צו באַקומען די טעקע אַז איך זאָרגן וועגן.
>> קיין שאלות דעמאָלט אויף מווק
אָדער דעם לעפיערעך פּשוט ינקאַרניישאַן דערפון?
און לאָזן מיר מאַכן קלאָר אַז מיר פאָוקיסט גאַנץ אַ ביסל אויף די
V דאָ, די קוקן און די פאַקטערינג אויס פון די טעמפּלאַטעס.
מיר ווע ניט טאַקע אונטערשיידן ב פון C נאָר נאָך.
אין פאַקט, דאָרט טאַקע איז ניט ב דאָ, און אַפֿילו אונדזער C,
קאָנטראָללער, איז ניט טאַקע טאן אַלע אַז פיל, אָבער איר וועט באַקומען פיל מער
באַקאַנט מיט ביידע פון ​​יענע 2 אותיות פון מווק,
אָדער אלא, איר וועט באַקומען פיל מער באַקאַנט מיט די C
אין מווק פֿאַר פּראָבלעם שטעלן 7, אַזוי דאָרט ס מער פון וואָס אויף דעם האָריזאָנט.
שאלות?
עס ס 'פאקטיש קיין איינער דאָ.
>> אָוקיי, לאָזן ס איצט מאַך אויף צו די רגע און לעצט טעמע פֿאַר הייַנט.
וואָס איז די הקדמה פון אַ דאַטאַבאַסע.
אַרויף ביז דעם פונט מיר ווע האט אַ ביסל וועגן פון סטאָרינג דאַטן.
מיר ווע געניצט וועריאַבאַלז.
צוריק אין אונדזער C טעקע, איך / אָ דיסקוסיע מיר אנגעהויבן ניצן טעקסט טעקעס
און ניצן טעקעס ווי פפּרינטף, און דאַן מיר אַפֿילו אנגעהויבן
גערעדט וועגן קסוו טעקעס אַ קליין ביסל, קאָמע אפגעשיידט וואַלועס,
אַזוי אַלע פון ​​די ערלויבט אונדז צו האָבן דאַטן סטאָרד
אָדער ניט-פּערסיסטאַנטלי אָדער פּערסיסטאַנטלי.
אבער אַפֿילו קסווס זענען נישט טאַקע קאַנדוסיוו צו שאַרף
און ינסערטינג און דיליטינג.
עס ס טאַקע נאָר אַ נאַריש טעקסט טעקע אפגעשיידט דורך קאָמעס
רודערן דורך רודערן דורך רודערן דורך רודערן, אַזוי אויב איר ווילן צו
זוכן וואָס טעקע דער בעסטער איר קענען טאָן טאַקע איז לינעאַר זוכן.
איר האָבן צו אָנהייבן בייַ די שפּיץ פון דער טעקע, לייענען די גאנצע זאַך אין,
און קוק פֿאַר עטלעכע ווערט פון אינטערעס.
אויב איר ווילן צו אַרייַנלייגן אין עס איר האָבן צו טאָן די זעלבע זאַך,
יטעראַטינג איבער אים און ינסערטינג אין אַ באַזונדער אָרט,
און אין פאַקט, איר האָבן צו טאָן אַלע פון ​​די שאַרף לאָגיק זיך.
>> איר קענען נישט טאָן קלוג מוסטער ריכטן אויף אַ קסוו טעקע סייַדן איר זיך שרייַבן די קאָד.
איר קענען נישט טאָן פילטריישאַן פון אַ קסוו טעקע
סייַדן איר זיך שרייַבן די קאָד.
וואָלט נישט עס זייַן פייַן אויב עמעצער אַנדערש שטעלן אין אַלע פון ​​די מי
צו פאקטיש מאַכן שאַרף גרינג און ינסערשאַן גרינג
און דילישאַן און אַפּדייטינג און אַזוי אַרויס?
אַז ס פּונקט וואָס אַ דאַטאַבאַסע איז.
סקל, סטראַקטשערד אָנפֿרעג שפּראַך, איז נאָך אן אנדער שפּראַך
אַז מיר רע ינטראָודוסינג דאָ הייַנט, אָבער דאָס אויך איז פערלי צוטריטלעך,
און וואָס מיר רע טאַקע געגאנגען צו טאָן איז נאָר פליקן אויס פון אים עטלעכע פון ​​די מערסט שטאַרציק
טשאַראַקטעריסטיקס אַזוי אַז פֿאַר פּסעט 7, און אויב איר טאָן עפּעס וועב באזירט,
דיין לעצט פּרויעקט, איר האָבן די פיייקייַט צו אויסדריקן זיך
אין טערמינען פון דאַטן קוויריז.
איר האָבן די פיייקייַט צו קראָם אַ קליין אָדער אַ פּלאַץ פון דאַטן
אין אַ פיל מער סטראַקטשערד וועג וואָס וועט אין די סוף פון די טאָג
מאַכן אייער לעבן גרינגער ווייַל מיט סקל איר קענען אויסדריקן זיך
פיל מער דווקא, פיל מער מאַטאַדיקלי אין סדר צו
באַקומען צוריק עטלעכע סאַבסעט פון דאַטן פון אַ גרעסערע קאָרפּוס פון דאַטן.
>> איר קענען טראַכטן פון אַ דאַטאַבאַסע, אין דעם פאַל, אַ סקל דאַטאַבאַסע, טאַקע ווי עקססעל
אָדער נומבערס ווו עס ס אַ ספּרעדשיט,
אָדער אפֿשר קייפל ספּרעדשיץ, און אַ ספּרעדשיט, פון קורס,
האט ראָוז און שפאלטן, און אַז ס ווייַל
סקל דאַטאַבייסיז זענען ריליישאַנאַל, ריליישאַנאַל אין דעם זינען
אַז זיי קראָם דאַטן אין טערמינען פון די טישן,
ראָוז און שפאלטן.
זיי זענען העכער פּערפאָרמינג ווי עפּעס ווי אַ ספּרעדשיט,
און אַ ספּרעדשיט איז מענט צו זייַן געניצט דורך אַ מענטש.
א דאַטאַבאַסע איז מענט צו זייַן געניצט דורך אַ פּראָגראַמיסט
שרייבן קאָד קעגן אים, אַזוי דער ינקאַרניישאַן פון אַ דאַטאַבאַסע
איז געגאנגען צו זייַן אָדער באַפֿעל שורה.
>> איינער פון די מערסט פאָלקס ריליישאַנאַל דאַטאַבייסיז אויס דאָרט איז, ווידער, מיסקל,
וואָס איז וואַנדערפאַלי פֿרייַ, זייער הויך פּערפאָרמינג, און דאָס איז וואָס
פאַסעבאָאָק געניצט זייער פרי אויף און צו עטלעכע מאָס נאָך הייַנט
צו קראָם אַ פּלאַץ פון זייַן דאַטן, און מיר וועט זען אין אַ מאָמענט
וואָס ניצן לעפיערעך פּשוט קאַמאַנדז
מיר קענען אויסקלייַבן דאַטן, אַרייַנלייגן דאַטן, דערהייַנטיקן דאַטן,
אויסמעקן דאַטן און די ווי, אָבער טאַנגקפאַלי, דאָרט ס אַ מער באַניצער-פרייַנדלעך צובינד
ווי נאָר טייפּינג אין אַ שוואַרץ און ווייַס פּינטלעך דאָ.
מיר וועט נוצן פֿאַר פּסעט 7 און ווייַטער פון אַ פּאָטער געצייַג גערופן פפּמיאַדמין.
דער נאָמען איז קאָוינסאַדענטאַל.
די געצייַג כאַפּאַנז צו זייַן ימפּלאַמענטאַד אין פפּ,
אָבער אַז ס פאַנדאַמענטאַלי ירעלאַוואַנט.
וואָס ס נוצלעך וועגן פפּמיאַדמין איז אַז עס ס אַ וועב-באזירט נוצן.
מיר ווע פאַר-אינסטאַלירן עס אין די אַפּפּליאַנסע פֿאַר איר,
און מיט אים איר קענען מאַכן טישן אין אַ דאַטאַבאַסע,
איר קענען אַרייַנלייגן דאַטן, ויסמעקן דאַטן, און בכלל זען
דיין דאַטן אין אַ פערלי באַניצער-פרייַנדלעך סוויווע.
דיין ניצערס זענען נישט געגאנגען צו נוצן פפּמיאַדמין.
>> דאס איז טאַקע נאָר אַ אַדמיניסטראַטיווע אָדער דעוועלאָפּער 'ס געצייַג
מיט וואָס צו זען און שטורכען אַרום דיין דאַטן און רעכענען אויס ווי צו סטרוקטור עס,
פיל ווי איר זיך זאל נוצן עקססעל אָדער נומערן,
אָבער עס ס געגאנגען צו זייַן אַ גרויס וועג פון וויזשוואַלייזינג וואָס ס געגאנגען אויף ונטער דער קאַפּטער
אַזוי אַז איר קענען פאָקוס אויף די טשיקאַווע פּראָבלעם סאַלווינג און ניט אַזוי פיל
אויף די אַרקיין קאַמאַנדז.
זאל ס נעמען אַ קוק בייַ אַ בייַשפּיל פון דאַטן וואָס זאל זייַן סטאָרד טאַבולאַרלי
אין אַ ריליישאַנאַל דאַטאַבאַסע.
דאָ ס איין אַזאַ בייַשפּיל.
איצט, ליידער, פפּמיאַדמין ערד אויף די זייַט פון פארווארפן וועג אויך פילע ווערטער
און גראַפיקס אין איר, אָבער אויב איר האָנע אין נאָר אויף די
שייַן זייַל, דער באַניצער נאָמען זייַל, און די האַש זייַל,
דאָס איז יפעקטיוולי אַ ספּרעדשיט, אָבער עס כאַפּאַנז צו זייַן אַ סניפּאַט
פון אַ טיש ין פון די אַפּפּליאַנסע
ניצן אַ טעקע אַז מיר צושטעלן איר מיט אין פּראָבלעם שטעלן 7.
>> אין באַזונדער, מיר געבן אייך אַ טעקע אַז רעפּראַזענץ
אַ באַניצער ס טיש, אַזוי אַ ספּרעדשיט מיט ניצערס מיט 3 שפאלטן,
איינער פון וואָס איז אַ יינציק שייַן סטאַרטינג בייַ 1 און זייַענדיק ינקרעמענטעד דערנאָכדעם.
די רגע זייַל איז אַ באַניצער נאָמען, און יענע פון ​​איר ווער האט העקער,
די העקער Edition פֿאַר פּסעט 2, זאל דערקענען עטלעכע פון ​​די באַניצער נעמען אין מינדסטער.
אויף די רעכט-האַנט זייַט זענען פּאַסווערדז, אָבער זיי ניטאָ ניט פּשאַט - פּאָשעט פּאַסווערדז.
זיי ניטאָ כאַשאַז דערפון, אַזוי עס טורנס אויס
אַז סטאָרינג פּאַסווערדז אין אַ דאַטאַבאַסע איז אַ טאַקע שלעכט געדאַנק.
איר ווע אַלע מיסטאָמע לייענען אין עטלעכע פונט פון עטלעכע וועבזייַטל
אָדער עטלעכע פירמע ס דאַטאַבאַסע זייַענדיק קאַמפּראַמייזד, און דאַן איר האָבן צו
טוישן דיין פּאַראָל, איר דאַרפֿן צו באַקומען ריפאַנדז אויף זאכן
ווייַל עטלעכע שלעכט באָכער פאקטיש צעבראכן אין דיין חשבון ווי אַ רעזולטאַט.
>> סטאָרינג פּאַסווערדז אין קלאָר טעקסט, ונענקריפּטעד אין אַ דאַטאַבאַסע
איז גאָר אַסאַניין, און נאָך אים ס 'זייער אַמיוזינג
דעריבער צו לייענען וועגן עטלעכע זייער גוט באקאנט קאָמפּאַניעס
מאל אין די דריקן וועמענס דאַטאַבייסיז זענען קאַמפּראַמייזד,
און אַז טייל איז נישט מאָדנע, אָבער דער פאַקט אַז די דאַטאַבייסיז אַנטהאַלטן ונענקריפּטעד
פּאַסווערדז איז לעכערלעך ווייַל ממש מיט איין שורה פון קאָד
איר קענען באַשיצן קעגן אַז באַזונדער סאַקאָנע, און אַז ס וואָס מיר ווע געטאן דאָ.
אפילו פֿאַר אונדזער שווינדל ביסל קס50 פינאַנסע ווערסיע
מיר זענען ענקריפּטינג פּאַסווערדז נאָר פֿאַר גוט מאָס, און די פאַקט אַז
אַלע פון ​​די פּאַסווערדז אָנהייבן מיט $ 1 $ איז נאָר אַ קאַנווענשאַן.
אַז נאָר מיטל זיי ניטאָ ענקריפּטיד אָדער טאַקע כאַשט,
וואָס איז ווי אַ איין-וועג ענקריפּשאַן פֿונקציע
ווערביי איר קענען נישט פאַרקערט זייַן יפעקס מיט עפּעס גערופן מד 5.
>> דער פאַקט אַז 50 איז נאָך אַז מיטל אַז אַ זאַלץ ווערט
פון 50 איז געניצט פֿאַר כאַשינג אַלע פון ​​די פּאַסווערדז חוץ פֿאַר איין.
מייַן, פון קורס, ווי איר קענען זען דאָרט, המגיד,
איז ניצן אַ אַנדערש זאַלץ, אַזוי יענע פון ​​איר וואס גאַט אַ ביסל טריפּט אַרויף
אפֿשר אין העקער 2, וואָס זאל האָבן געווען דער רעזולטאַט פון אונדזער בעת געניצט
אַ אַנדערש האַש ווי די אנדערע ווייַל מיין Password איז פאקטיש דער זעלביקער
ווי עטלעכע אנדערע באַניצער אַרויף דאָרט.
אין פאַקט, אויב איר ווע שוין ווארטן אַלע די וואָכן צו געפֿינען אויס
וואָס יענע פּאַסווערדז זענען דאָ זענען די פּאַסווערדז אַז איר זענען טשאַלאַדזשד
צו פּלאַצן אין די העקער אויסגאבע פון ​​פּראָבלעם שטעלן 2, אַזוי קיינער אויך טריקי.
אין פאַקט, מאַלאַן ס 'איז געווען די זעלבע ווי דזשהאַרוואַרד,
אָבער אויב מיר גיין צוריק זיי געקוקט אַנדערש.
>> פאָקוס אויף דזשהאַרוואַרד אין פּאָמסן ווייַל זיי זענען סאָלטאַד דיפערענטלי.
די אַלגערידאַם איז פּערטערבד אין אַ וועג אַז די
האַש ווערט, די ענקריפּטיד ווערט קוקט אַ ביסל אַנדערש
ווייַל די ינפּוץ געווען אַ ביסל אַנדערש, אָבער דער Password ונטער דער קאַפּטער
איז נאָך לעסאָף פּאָמסן.
איצט, וואס דאגות וועגן דעם?
נו, מיר זענען פּראַוויידינג איר מיט דעם מוסטער ניצערס, די מוסטער באַניצער נעמען
און כאַשאַז פון זייער פּאַסווערדז אַזוי אַז איר פאקטיש האָבן עטלעכע
קאַסטאַמערז פֿאַר קס50 פינאַנסע ווען איר ערשטער באַקומען אַוועק די ערד מיט דיין קאָד.
איר וועט האָבן צו מאַכשער מער טישן ין פון מיסקל, ין פון די דאַטאַבאַסע.
איר וועט האָבן צו מאַכן מער ספּרעדשיץ, יפעקטיוולי, אָבער מיר באַשלאָסן צו געבן איר דעם איין
צו באַקומען איר אנגעהויבן, און איר וועט זען אַז די פּראָבלעם שטעלן באַשרייַבונג
גייט איר דורך די פּראָצעס פון ימפּאָרטינג דעם טיש
און אויך יקספּליינינג וואָס עטלעכע פון ​​די טשאַראַקטעריסטיקס ביסט,
און איר וועט אויך זען אַז מיר צושטעלן איר מיט די קאָד
צו שעפּן די כאַשינג אָדער די ענקריפּשאַן פון די פּאַסווערדז,
אַזוי איר טאָן ניט דאַרפֿן צו זאָרג אויך פיל וועגן וואָס מד 5 אָדער די ווי איז פאקטיש אַלע וועגן.
>> אַזוי, סקל, סטראַקטשערד אָנפֿרעג שפּראַך.
דאס איז, גאַנץ פשוט, די שפּראַך מיר רע וועגן צו אָנהייבן ניצן אין פּסעט 7
און טאָמער ווייַטער צו בעטן דאַטן פון עטלעכע דאַטאַבאַסע.
די דאַטן איז, ווידער, סטאָרד טאַבולאַרלי אין די ריליישאַנאַל טישן, שפאלטן, און ראָוז,
אָבער ניצן עטלעכע לעפיערעך פּשוט סינטאַקס ווי אויסמעקן,
אַרייַנלייגן, דערהייַנטיקן און אויסקלייַבן קענען מיר טאָן פּונקט וואָס.
מיר קענען אויסמעקן פון די דאַטאַבאַסע, אַרייַנלייגן,
דערהייַנטיקן דאַטן, ווי געזונט ווי אויסקלייַבן, וואָס איז, צוריקקריגן דאַטן פון די דאַטאַבאַסע.
ווי טאָן מיר גיין וועגן טאן דעם?
זאל מיר גיין פאָרויס אין די אַפּפּליאַנסע.
זאל מיר ציען אַרויף הטטפּ://לאָקאַלהאָסט,
וואָס, ווידער, איז די היגע אַפּפּליאַנסע זיך.
אַז ס זייַן פעליקייַט ניקקנאַמע.
און לאָזן מיר גיין צו / פפּמיאַדמין.
דאס כאַפּאַנז צו זייַן אַ ספּעציעל URL אַז די אַפּפּליאַנסע איז פּרעקאָנפיגורעד צו פֿאַרשטיין
אַז מיד פּראַמפּס מיר פֿאַר אַ באַניצער נאָמען און פּאַראָל.
>> ווי געוויינטלעך, איך בין געגאנגען צו טיפּ דזשהאַרוואַרד און פּאָמסן,
אָבער פאַרשטיין אַז ס דער אַדמיניסטראַטאָר חשבון אויף די קאָמפּיוטער.
עס ס נאָר אַ צופאַל אַז דאָרט ס אויך אַ דזשהאַרוואַרד רעגיסטרירט פֿאַר קס50 פינאַנסע.
דזשהאַרוואַרד, פּאָמסן, אַרייַן גיט מיר דער באַניצער צובינד אַז מיר געזען
אַ בליק פון אַ מאָמענט צוריק, און עס ס אַ ביסל אָוווערוועלמינג בייַ ערשטער,
אָבער מנוחה אַשורד, איר ניטאָ קיינמאָל געגאנגען צו האָבן צו גיט רובֿ פון די לינקס אין דעם געצייַג.
איר וועט סוף אַרויף ניצן אַ קליין סאַבסעט אַז ביסט סופּער נוציק,
דער ערשטער פון וואָס איז דאַטאַבייסיז אַרויף דאָ.
אויב איך גיין אַרויף צו דאַטאַבייסיז, באַמערקן אַז איך בין פּראַמפּטיד צו שאַפֿן אַ דאַטאַבאַסע.
דאס איז ווי שאפן אַ נייַ עקססעל טעקע, יפעקטיוולי.
איך בין געגאנגען צו גיין פאָרויס און רופן דעם לעקציע, און איך בין נאָר געגאנגען צו איגנאָרירן די פעלד דאָרט, קאָללאַטיאָן.
עס האט צו טאָן מיט די פאַרטרעטונג פון דאַטן דערין,
און איך בין געגאנגען צו גיט מאַכן, און איצט באַמערקן ווי איך לאָזן גיין פון שאַפֿן
אויף די לינקס-האַנט זייַט ווו עס זאגט קיין דאַטאַבייסיז
איך זאָל באַלד זען די לעקציע דאַטאַבאַסע.
>> אויב איך איצט גיט בייַ די לינקס-האַנט זייַט, די לעקציע דאַטאַבאַסע,
מעלדונג מיין טאַבס טוישן אַ קליין ביסל.
איך ווע גאַט סטרוקטור, סקל, אַרויספירן, אַרייַנפיר און עטלעכע אנדערע זאכן.
סטרוקטור איז שיין פיל ליידיק.
קיין טישן געפונען אין דאַטאַבאַסע, ווי עס זאגט דאָ,
אַזוי לאָזן ס שאַפֿן אַ טיש, און לאָזן ס גיין פאָרויס און שאַפֿן אַ טיש
ווי סטודענטן, און ווי פילע שפאלטן טאָן מיר ווילן?
זאל ס האַלטן דעם פּשוט, און לאָזן 'ס רעקאָרד פֿאַר יעדער תּלמיד
אַ שייַן נומער, אַ נאָמען, און אַ בליצפּאָסט אַדרעס.
>> מיר וועט האַלטן עס פּשוט ווי וואָס, אַזוי 3 שפאלטן, גיין.
די פאָרעם אַז איר זען דאָ איז איצט אַ קליין ביסל מעסי און אָוווערוועלמינג,
אָבער מיר נאָר האָבן צו גיין דורך עס רודערן דורך רודערן, אַזוי טאַקע געשווינד לאָזן ס געבן
דער ערשטער זייַל אין דעם דאַטאַבאַסע אַ נאָמען פון שייַן פֿאַר די יינציק יידענטאַפייער.
עס וועט זייַן אַ ינטעגער. איך קענען פאקטיש איגנאָרירן לענג און וואַלועס.
אַ ינט איז געגאנגען צו זייַן 32 ביטן קיין ענין וואָס איר טיפּ אין דאָרט, אַזוי לאָזן 'ס לאָזן עס פּוסט.
פעליקייַט ווערט, איך קען מאַכן עס נאַל, ווי דיפיינד.
איך בין געגאנגען צו לאָזן אַז אַליין. זאל ס נישט זאָרג וועגן פעליקייַט וואַלועס.
זאל ס מעגילע איבער דאָ צו די רעכט, אַטראַביוץ.
דאס איז טשיקאַווע.
זאל ס גיין פאָרויס און עפּעס אַרביטרעראַלי זאָגן אַז ידס מוזן זייַן אַנסיינד.
זאל ס נישט וויסט קיין נעגאַטיוו נומערן.
>> זאל ס גיין 0-4000000000, געבן אָדער נעמען,
און דעריבער לאָזן ס נישט פאַרבינדן קיין פון די פעלדער נאָר נאָך איבער דאָרט,
אָבער דעמאָלט לאָזן מיר טיפּ אין נאָמען אַראָפּ דאָ,
און דעריבער די אנדערע איז בליצפּאָסט, אַזוי די כאַפּן איז Email
און נאָמען, דאָך נישט ינטאַדזשערז, אַזוי לאָזן ס טוישן די צו אַ אַנדערש פעלד.
עס טורנס אויס וואַרטשאַר, בייַטעוודיק לענג טשאַר,
איז ווי אַ שטריקל אין אַ סקל דאַטאַבאַסע
אָבער אַ בייַטעוודיק לענג, און איר פאקטיש האָבן צו זאָגן עס אין שטייַגן די
מאַקסימום לענג פון דעם שטריקל, אַזוי איך בין געגאנגען צו עפּעס אַרביטרעראַלי
דורך קאַנווענשאַן טיפּ 255 אותיות.
איך קען טאָוטאַלי זאָגן 32. איך קען זאָגן 1.000.
איר מין פון דאַרפֿן צו באַשליסן פֿאַר זיך באזירט אויף דיין דעמאַגראַפיקס וואָס איז
די לאָנגעסט תּלמיד ס נאָמען און גיין מיט וואָס נומער אָדער אַ ביסל ביגער,
אָבער וואָס ס פייַן וועגן אַ וואַרטשאַר איז עס ס ניט געגאנגען צו וויסט
255 ביטעס אויף יעדער תּלמיד ס נאָמען.
אויב עס ס 'דוד אים ס ניט געגאנגען צו נוצן אַ גאַנץ 255 ביטעס,
אָבער אַז ס אַ אויבערשטער געבונדן, אַזוי איך וועט גיין מיט 255 נאָר דורך קאַנווענשאַן,
אָבער מיר קען דעבאַטע אַז צו זייַן עטלעכע נידעריקער ווערט, און פֿאַר בליצפּאָסט אַדרעס
נאָר צו זייַן קאָנסיסטענט 255, אָבער ווידער, מיר קען האָבן די זעלבע דעבאַטע.
אבער איך בין געגאנגען צו טאָן איינער אנדערע זאַך איבער דאָ אויף די רעכט-האַנט זייַט.
>> וואָס ס שטאַרק וועגן אַ דאַטאַבאַסע איז אַז עס קענען טאָן אַ פּלאַץ פון שווער ליפטינג
אָדער קאָמפּלעקס אַרבעט פֿאַר איר.
אין באַזונדער, איך טאַקע טאָן ניט זאָרגן וואָס מיין תּלמיד ס שייַן נומערן זענען.
עס ס נאָר מענט צו זייַן אַ יינציק יידענטאַפייער אין אַ דאַטאַבאַסע
אַזוי איך האָבן אַ 32-ביסל סאַקסינגקט פאַרטרעטונג פון וואָס תּלמיד
אַזוי אַז איך האָבן עטלעכע וועג פון יוניקלי יידענטאַפייינג זיי
כדי עס זייַן 2 דאַווידס, פֿאַר בייַשפּיל, אין אַ קלאַס.
אין פאַקט, איך בין געגאנגען צו קאָנטראָלירן דעם אַי קעסטל, אַוטאָ ינקראַמאַנט,
אַזוי אַז די דאַטאַבאַסע, מיסקל, פיגיערז אויס
וואָס יעדער ניי ינסערטאַד תּלמיד ס שייַן איז געגאנגען צו זייַן.
איך טאָן ניט אַפֿילו האָבן צו זאָרגן וועגן אַז אין מיין קאָד,
און איך בין אויך געגאנגען צו קלייַבן עפּעס אונטער די אינדעקס מעניו.
די אינדעקס קאַפּ אַראָפּ דאָ האט ערשטיק, יינציק,
אינדעקס און פול טעקסט.
איר קענען אפֿשר טרעפן וואָס אַ פּאָר פון די זאכן זענען,
אָבער עס טורנס אויס אין ריליישאַנאַל דאַטאַבייסיז
איר די פּראָגראַמיסט אָדער די דאַטאַבאַסע אַדמיניסטראַטאָר באַקומען צו פּריעמפּטיוולי
געבן הינץ צו די דאַטאַבאַסע ווי צו וואָס פעלדער
אין אַ טיש זענען אַ ביסל ספּעציעל.
>> פֿאַר בייַשפּיל, אין דעם פאַל איך בין געגאנגען צו זאָגן אַז שייַן
איז געגאנגען צו זייַן אַ ערשטיק אינדעקס, אַנדערש באקאנט ווי אַ ערשטיק שליסל.
וואָס דעם מיטל דורך דעפֿיניציע איז אַז שייַן איצט אן
וועט יוניקלי ידענטיפיצירן סטודענטן אין דעם טיש.
קיין תּלמיד וועט האָבן די זעלבע שייַן ווייַל איך בין ימפּאָוזינג דעם קאַנסטריינט אָדער דעם אינדעקס.
דערצו, וואָס דאָס איז געגאנגען צו טאָן פֿאַר מיר איז עס ס געגאנגען צו זאָגן
מיסקל אַז שייַן איז ספּעציעל.
איך זאָרג דער הויפּט וועגן שייַן, אַזוי גיין פאָרויס און טאָן דיין פאַנטאַזיע דאַטן סטרוקטור ס מאַגיש,
בויען אַרויף עטלעכע מין פון בוים.
טיפּיקלי עס ס 'עפּעס גערופן די בייטן-בוים, וואָס מיר האבן נישט קוקן אין וואָכן צוריק,
אָבער עס ס אנדערן אַזאַ דאַטן סטרוקטור ענלעך אין גייסט צו די ביינערי ביימער
און פרוווט אַז מיר געקוקט בייַ, אָבער עס ס געגאנגען צו זאָגן
צו די דאַטאַבאַסע דעם פעלד איז אַזוי וויכטיק אַז איך מיסטאָמע
ווילן צו זייַן ביכולת צו זוכן אויף עס, גיין פאָרויס און בויען אַרויף עטלעכע פאַנטאַזיע
דאַטן סטרוקטור אין זכּרון צו עקספּידייט אָנפֿרעגן אַזוי אַז יידילי
זיי ניטאָ קעסיידערדיק צייַט אָדער בייַ מינדסטער ווי נאָענט צו אַז ווי מעגלעך
אַזוי אַז עס טוט נישט דיוואַלוו אין לינעאַר זוכן, וואָס איז נישט געגאנגען צו זייַן
די מערסט הויך פּערפאָרמינג צוגאַנג.
דורך קאַנטראַסט, בליצפּאָסט אַדרעס קען האָבן געווען אַ ערשטיק שליסל.
>> אין טעאָריע, אַלעמען ס בליצפּאָסט אַדרעס איז יינציק, סייַדן איר ניטאָ ייַנטיילונג עטלעכע חשבון,
אָבער עס ס 'בכלל נישט גוט צו נוצן עפּעס ווי אַ שטריקל
ווי אַ ערשטיק שליסל ווייַל אויב זייַן ציל אין לעבן איז צו יוניקלי ידענטיפיצירן
ראָוז אין דיין טיש דאָרט ס קיין סיבה צו נוצן 255 ביטעס מאַקסימאַללי
צו יוניקלי ידענטיפיצירן עמעצער אויב איר קענען באַקומען אַוועק מיט נאָר 4 ביטעס
אָדער אַ 32-ביסל ינט.
אין אַלגעמיין, אַ ערשטיק שליסל זאָל זייַן קורץ און סאַקסינגקט
און יידילי עפּעס ווי אַ ינטעגער אָדער אַ גרויס ינט, וואָס כאַפּאַנז צו זייַן 64 ביטן.
אבער אַ בליצפּאָסט אַדרעס זאָל זייַן יינציק, און איינער פון די פֿעיִקייטן פון אַ דאַטאַבאַסע אויך
איז צו דורכפירן אייגנארטיקייט פֿאַר מיר.
דורך סאַלעקטינג יינציק דאָ ווייַטער צו בליצפּאָסט, אַפֿילו כאָטש Email זיך
איז סקראָללעד אַוועק די פאַרשטעלן, איך בין געזאגט צו די דאַטאַבאַסע
טאָן ניט צוטרוי מיר.
דו זאלסט נישט לאָזן מיר אַרייַנלייגן אין די דאַטאַבאַסע
דער זעלביקער בליצפּאָסט אַדרעס צוויי מאָל, אַפֿילו אויב איך בין אַ ידיאָט און בין ניט
זייער גוט מיט מיין יפס און אַנדערש יפס און פאַקטיש פפּ קאָד
און איך אַקסאַדענאַלי לאָזן דער באַניצער רעגיסטרירן מיט אַן שאַפֿן בליצפּאָסט אַדרעס
די דאַטאַבאַסע איז נאָך אן אנדער מדרגה פון פאַרטיידיקונג פֿאַר קערעקטנאַס
צו ענשור אַז אַז דופּליקאַט בליצפּאָסט אַדרעס טוט ניט סוף אַרויף אין די טיש.
>> איצט, דורך קאַנטראַסט, פֿאַר נאָמען איר מיסטאָמע טאָן נישט וועלן צו מאַכן אַז יינציק
ווייַל דעמאָלט דאָרט קען קיינמאָל זייַן 2 דאַווידס אָדער 2 מייק סמיטס, פֿאַר בייַשפּיל,
אין דיין דאַטאַבאַסע, אַזוי אַז איינער מיר וועט נאָר לאָזן אַליין.
איך בין געגאנגען צו גיין פאָרויס און גיט היט בייַ דנאָ רעכט,
און אַלץ קוקט גוט, אָבער באַמערקן אַרויף דאָ
דאָס איז אַ טייל וואָס פֿאַר איצט מיר וועלן נישט פאַרברענגען אויך פיל צייַט אויף
ווייַל די סינטאַקס איז אַ ביסל קאָמפּליצירט, און מיר טאָן ניט האָבן צו שאַפֿן טישן
אַלע וואָס אָפֿט, אָבער סקל זיך איז אַ שפּראַך,
די סינטאַקס פֿאַר וואָס איז רעכט דאָ אַז איך ווע כיילייטיד.
וואָס פפּמיאַדמין טאַקע טוט איז עס קריייץ אַ וועב-באזירט גוי פֿאַר איר
מיט וואָס איר קענען ראַטעווען צייַט און ניט האָבן צו מאַניואַלי טיפּ אויס
אַ פערלי לאַנג סקל אָנפֿרעג ווי אַז.
>> אין אנדערע ווערטער, אויב איר געוואלט צו מאַניואַלי שאַפֿן דעם טיש,
אָדער בייַ אַז שוואַרץ און ווייַס פּינטלעך אָדער אַפֿילו אין פפּמיאַדמין
דורך ניצן דעם אנדערע קוויטל, דעם סקל קוויטל ווו איר קענען דרוקן אין קיין סקל קוויריז
איר ווילן, פראַנגקלי, דאָס וואָלט האָבן גענומען מיר אַ מינוט
צו פאקטיש געדענקען די גאנצע סינטאַקס, און אַפֿילו דעמאָלט איך מיסטאָמע וואָלט האָבן
געמאכט עטלעכע טיפּאָס, אַזוי דעם געצייַג איז נוצלעך פֿאַר זאכן ווי אַז, און עס ס אויך ינסטראַקטיוו.
איר קענען נעמען צו אָפּלערנען וואָס די סינטאַקס איז
נאָר דורך דעם פייַן קאָלירן קאָודינג אַז פפּמיאַדמין איז אַדינג
פֿאַר אונדזער וויסואַל קאַנוויניאַנס.
אבער איצט לאָזן ס טאָן דעם אַנשטאָט.
זאל מיר גיין צו די אַרייַנלייגן קוויטל אין שפּיץ, און לאָזן מיר גיין פאָרויס און אַרייַנלייגן פֿאַר בייַשפּיל
אַ שייַן פון לאָזן ס זאָגן-פאקטיש איך טאָן ניט זאָרגן.
עס ס געגאנגען צו אַוטאָ ינקראַמאַנט. איך בין געגאנגען צו לאָזן די דאַטאַבאַסע האַנדלען מיט דעם.
אבער איך וועט זייַן דוד, און מיין Email זאָל זייַן malan@harvard.edu.
>> זאל ס גיין פאָרויס דאָ און שטעלן אין מייק סמיט ווי אנדערן איינער.
איך וועט געבן זיך אַ לעצטע נאָמען ווי געזונט,
און מיר וועט האָבן אים זייַן smith@example.com,
און דעמאָלט ווו טאָן איך גיין ווייַטער?
גוט, עס קוקט ווי גיין איז די קנעפּל צו גיט, און וווואַלאַ.
נאָטיץ אין די שפּיץ 2 ראָוז ינסערטאַד.
דאס איז די פאַקטיש סקל אָנפֿרעג.
אַז ס די פפּמיאַדמין געצייַג עקסאַקיוטאַד פֿאַר מיר,
אָבער די סוף רעזולטאַט, באַמערקן, אויב איך איצט גיין צו די בלעטער קוויטל,
איז צו זען 2 ראָוז אין דעם טיש, זייער רעמאַניסאַנט עסטעטיקלי
פון די טיש מיר געזען פריער פֿאַר אונדזער ניצערס פון פּסעט 7,
איינער פון וועמען איז דוד מאַלאַן, איינער פון וועמען איצט איז מייק סמיט.
אבער נאָר צו זייַן קלאָר, איך טאָן ניט דאַרפֿן צו נוצן פפּמיאַדמין,
און טאַקע, איר ניטאָ געגאנגען צו באַלד זייַן שרייבן קאָד פֿאַר פּסעט 7
אַז אָטאַמייץ דער פּראָצעס פון אַדינג ראָוז, דיליטינג ראָוז, אַפּדייטינג ראָוז און די ווי,
אַזוי לאָזן מיר אַנשטאָט גיין צו די סקל קוויטל אַרויף דאָ
און דרוקן אין אויסקלייַבן * פון סטודענטן ווו
Email = "malan@harvard.edu."
>> אין אנדערע ווערטער רעכן איצט איר האָבן
עטלעכע HTML פאָרעם, און דער באַניצער טייפּס אין זייער בליצפּאָסט אַדרעס, צווישן אנדערע פעלדער,
און דער ציל איצט איז אין פפּ אויף די צוריק סוף קאָד
צו פאקטיש קוק אַרויף אַז באַניצער ס אנדערע פרטים.
וואָס איז דיין פול נאָמען? וואָס איז דיין שייַן נומער?
איר קען שרייַבן אַ סקל אָנפֿרעג ווי דעם, אויסקלייַבן * פון סטודענטן
ווו Email = "malan@harvard.edu."
און אויב איך דעמאָלט גיט גיין, באַמערקן אַז איך זאָל, און טאַקע איך טאָן, באַקומען צוריק נאָר איין רודערן.
מייק איז איבערגעהיפּערט פון דעם רעזולטאַט שטעלן, ווי דער זאַמלונג פון ראָוז
איז בכלל גערופן, ווייַל ער טוט נישט האָבן די זעלבע בליצפּאָסט אַדרעס ווי מיר.
>> איצט, ווידער, דאָ פֿאַר פּסעט 7 איר וועט נוצן פפּמיאַדמין ווי אַן אַדמיניסטראַטיווע געצייַג
און אַ פּעדאַגאַדזשיקאַל געצייַג צו לערנען דיין וועג
אַרום דער וועלט פון סקל, אָבער אין די סוף פון די טאָג
איר ניטאָ געגאנגען צו זייַן שרייבן די קוויריז ין פון פאַקטיש פפּ קאָד,
און אַזוי בלייַבן טונד אין זאַמילאַ ס וואַלקטהראָוגה אין באַזונדער
ווו איר וועט באַקומען אַ רייַזע פון ​​דער פאַרשפּרייטונג קאָד פֿאַר דעם פּראָבלעם שטעלן
ווו מיר ווע געגעבן איר ניט בלויז די עסטעטיק פֿאַר די לאָגין בלאַט
און די פייַן סעקסי לאָגאָ וואָס זאגט קס50 פינאַנסע, אָבער מיר 'ווע אויך געגעבן איר
אַ בינטל פון פאַנגקשאַנז וואָס וועט מאַכן אייער לעבן אַ ביסל גרינגער.
מיר ווע אויך געשריבן טייל פון די פּסעט פֿאַר איר,
די לאָגין חלק פון אים אין באַזונדער, צו געבן איר אַ זינען פון אַ פארשטייער פּלאַן
אַז פאקטיש ניצט אַ קאָנטראָללער, פֿאַר בייַשפּיל, ינדעקס.פפּ,
לאָגינ.פפּ און די ווי, און דאַן איר וועט זען דעם פּסעט אויך האט אַ טעמפּלאַטעס Directory
וואָס האט אַלע פון ​​דיין קוקן, אַלע פון ​​די עסטעטיק.
און אַזוי די קוילעלדיק וואָרקפלאָוו אין פּסעט 7 איז געגאנגען צו זייַן אַז
דיין ניצערס באַזוכן אַ קאָנטראָללער דורך אַ URL אין אַ בלעטערער.
אַז קאָנטראָללער כּולל פפּ קאָד וואָס איר געשריבן, און ין פון דיין פפּ קאָד
זאל זייַן עטלעכע שורות פון סקל נעסטעד אין צווישן טאָפּל קוואָטעס
און דורכגעגאנגען צו אַ פֿונקציע מיר געשריבן גערופן אָנפֿרעג
וואָס וועט העלפן איר רעדן צו די דאַטאַבאַסע אָן ניצן עפּעס ווי
אַן אַדמיניסטראַטיווע געצייַג ווי פפּמיאַדמין.
>> איר וועט זייַן ביכולת צו שרייַבן סקל סטייטמאַנץ אין פפּ קאָד
און באַקומען צוריק אַ פפּ מענגע פון ​​דער רעזולטאַט שטעלן,
פון די ראָוז אַז פאקטיש גלייַכן וואָס אָנפֿרעג.
און סימילאַרלי וועט איר זייַן ביכולת צו טאָן ינסערץ אָדער דיליץ
אָדער דערהייַנטיקונגען אָדער די ווי, די סינטאַקס פֿאַר וואָס איז פערלי ענלעך,
און איר וועט זען פון עטלעכע אָנליין באַווייַזן, פון די פאַרשפּרייטונג קאָד
און פון די פּסעט פּאַק זיך פּונקט ווי צו גיין וועגן טאן אַז.
פאַרשטיין לעסאָף מיר רע טאַקע נאָר סקראַטשינג די ייבערפלאַך פון סקל
און פון מיסקל, אָבער די מאַכט פון אים טאַקע איז אַז עס פריז איר
צו פאָקוס אויף די פראבלעמען איר ווילן צו סאָלווע, די נוצן פאלן איר ווילן צו מאַכשער
אָן בעת ​​צו זאָרג גאַנץ ווי פיל, בייַ מינדסטער פרי אויף,
וועגן ווו און ווי צו קראָם און זוכן דיין דאַטאַבאַסע,
און דאָס איז גאַנץ ממש ווו פאַסעבאָאָק זיך גאַט זייַן אָנהייב
ניצן מיסקל און דעמאָלט ניצן מער מיסקל סערווערס און דעריבער מער מיסקל סערווערס
איידער לאַנג ביז זיי דעמאָלט האט צו טאַקע אָנהייבן טראכטן שווער וועגן ווי צו
קראָם דאַטן, ווי צו קראָם דאס אַפֿילו מער יפישאַנטלי,
אַזוי אַפֿילו כאָטש מיר וועט נעמען פֿאַר געגעבן די פאַקט אַז ינדעקסיז און יינציק קאַנסטריינץ
און אַזוי אַרויס נאָר אַרבעט עס ס אַ זייער טשיקאַווע שמועס
אַז דעם קענען אַלע יווענטשאַוואַלי פירן צו, אַזוי פאַרשטיין אַז מיר רע נאָר סקראַטשינג די ייבערפלאַך
פון וואָס קען יווענטשאַוואַלי פֿאַר איר אָדער אייער פראיעקטן ווערן גאַנץ אַ ביסל פון גרויס דאַטן.
>> מיט וואָס האט געזאגט, לאָזן ס סוף דאָ, און מיר וועט זען איר ווייַטער וואָך.
[CS50.TV]