פּראָגראַממינג: די פּסיטשאָלאָגי פון קאָמפּיוטערס

מיר זענען אַלע ענג פארבונדן צו פּראָגראַממינג, זיין אַ באַניצער, ווי אַ אַדמיניסטראַטאָר, ווי אַ פּראָגראַמיסט זיך, אָבער לעסאָף עס איז עפּעס וואָס וועט זיין מער פארבונדן צו אונדזער לעבן אין די יאָרן.

אין דעם אַרטיקל (די אָנהייב פון אַ קליין סעריע וואָס איך פּלאַן צו שאַפֿן), איך ווילן צו טיילן מיט איר אַ ביסל קאַנסעפּס וועגן וואָס איך האָבן דיסקאַווערד וועגן פּראָגראַממינג איבער די יאָרן. איך טאָן ניט פאַרהיטן צו זיין העכסט טעכניש, איך וועט דערקלערן וואָס שפּעטער. אָבער וואָס איך טאָן איז צו מאַכן זיי זען די וועלט מיט מיין אויגן, און אויב זיי ווי די ווי עס קוקט, לאָזן זיי דעלוו אין עס אַ ביסל 🙂

איך וועל ערשטער באַפאַלן די סימפּלאַסט פונט פון אַלע איידער איך גיין אין פרטים.

פארוואס טאָן איך נישט טאָן אַ טעכניש פּאָסטן?

געזונט פֿאַר יענע וואָס האָבן לייענען מיין פּאָסטן וועגן בעסטער לינוקס באַפֿעל, איר וועט וויסן אַ ביסל וועגן די גרונט פון דעם פאָקוס. טעכנאָלאָגיע איז שטענדיק טשאַנגינג, און אויב איך שרייבן עפּעס הייַנט, אויב די פּאָסטן איז געזונט באקומען, איך וועט שטענדיק האָבן צו דערהייַנטיקן די אינפֿאָרמאַציע. אין די מערסט פּראָסט שפּראַכן פון הייַנט, דער בלויז זיכער זאַך איז טוישן. מיט דעם איך מיינען (און די פּראָוגראַמערז קענען באַווייַזן מיר רעכטפראַמעוואָרקס זענען שטענדיק גראָוינג און מאַדאַפייינג פֿון זייער קאָרעס. דאָס איז ווייַל ערראָרס שטיי אויף, עטלעכע קענען זיין גערעכנט ווי פּשוט באַגז, בשעת אנדערע קען ווערן וואַלנעראַביליטיז. דאָס איז די סיבה וואָס שרייבן אַ אַרטיקל וועגן אַ ספּעציפיש שפּראַך, היינט, קען גאַראַנטירן מיר אַ ביסל חדשים פון נוציקייט, אין בעסטע איין אָדער צוויי יאָר, אָבער דאָס איז נישט דער געדאַנק 🙂

עלעקטרע איז וויכטיק

יענע פון ​​איר וואָס האָבן דורכגעקאָכט אַ ביסל פאָרשונג אין די נידעריקער ווייכווארג פּראָגראַממינג שפראכן, וועלן וויסן אַז עס דאַטעס צוריק צו עלעקטרע. אין דער פאַרגאַנגענהייט, פּראָגראַממינג איז דורכגעקאָכט אויף די ייַזנוואַרג מדרגה, דאָס מיינט אַז די אַלט קלאַקס, קאַלקולאַטאָרס און פילע אנדערע דעוויסעס קען מקיים זייער צוקונפט דורך פּראָגראַממינג דורך ייַזנוואַרג.

די פּראָבלעם

טשאַנגינג ייַזנוואַרג פּראָגראַממינג איז טייַער און קאָמפּליצירט 🙂 (לפּחות אַז ס וואָס זיי דערציילט מיר 🙂 ). דאָס איז וואָס פּראַסעסערז ימערדזשד, וואָס אַקשלי אַבסטראַקט די ייַזנוואַרג שיכטע צו צושטעלן עטלעכע קאַמאַנדז צו קענען צו טאָן אַלץ וואָס איז געווען מעגלעך דורך ייַזנוואַרג בלויז איצט אין די ייַזנוואַרג שיכטע. סאָפטווער.

פּראָסעססאָרס

הייַנט פּראַסעסערז האָבן אַ לימיטעד נומער פון פאַנגקשאַנז ינסטראַקשאַנז אין פילע ביכער. די אַלאַוז איר צו דורכפירן די מערסט יקערדיק פאַנגקשאַנז אַז ייַזנוואַרג קענען דורכפירן און צו מאָובאַלייז אינפֿאָרמאַציע דורך די זכּרון פון די קאָמפּיוטער.

רעגיסטערס

רעדזשיסטריז זענען אַ פּלאַץ אין וואָס די פּראַסעסער סטאָרז אינפֿאָרמאַציע צו קענען צו דורכפירן אַרבעט אויף די קערן, דיפּענדינג אויף די אַרקאַטעקטשער, זיי קענען האָבן אַ אַנדערש גרייס און סדר, אָבער אין זייער פּשוט וועג, זייער פֿונקציע איז צו קראָם דאַטן וואָס ינדיקייץ די פּראַסעסער איינער פון די ווייַטערדיק טייפּס פון אַרבעט: מאַך דאַטן, אַריטמעטיק און לאָגיק, און קאָנטראָל פון לויפן. אַלץ קענען זיין סאַמערייזד אין די טייפּס פון פאַנגקשאַנאַליטי.

בינאַריאָ

פּראָסעססאָרס אַרבעט ביינערי, דאָס מיינט אַז זיי נאָר פֿאַרשטיין 0sy 1יאָ 🙂. א טשיקאַווע פאַקט דאָ 😀געדענקט GNU / Linux פּערמישאַנז? נו,האָבן איר אלץ געחידושט ווי דער פּראַסעסער אַקשלי אנערקענט די פּערמישאַנז? פּשוט 🙂 ביינערי. אויף די לאָואַסט שטאַפּל, אַ פּראַסעסער וועט פֿאַרשטיין די פּערמישאַנז ווי אַ סאַקסעשאַן פון 0 ס און 1 ס, און דאָס איז די סיבה וואָס די אַקטאַל וואָס מיר פאָרעם האט די וואַלועס פֿאַר דורכפירונג, 2 פֿאַר לייענען און 4 פֿאַר שרייבן. פֿאַר יענע וואָס קענען לייענען ביינערי, זיי וועלן פֿאַרשטיין אַז:

111100101111

זיי שטעלן די לייענען, שרייַבן און דורכפירן פּערמישאַנז פֿאַר די גרופּע אנדערע בשעת פאָרשטעלונג און לייענען פֿאַר די גרופּע גרופּע און לייענען בלויז פֿאַר די טעקע באַזיצער. פֿאַר די מערסט נייַגעריק, די לעצטע דריי 1 אַקטאַווייט די setguid, setuid און sticky bit. אויב איר טאָן ניט וויסן וואָס דעם ביינערי איז, איך קענען דערקלערן עס אין אן אנדער פּאָסטן. אויב איר טאָן ניט וויסן וועגן setuid, setgid און די קלעפּיק ביסל, איך וועט לאָזן עס צו איר 😉 אָבער איך קען אויך דערקלערן עס אַנדערש ווו עס איז נויטיק.

ווען נייַגעריקייַט רופט ...

נו, אויב איר האָט נאָכפאָלגן מיר דאָ, דיין נייַגעריקייַט זאָל אָנהייבן צו פרעגן אַ פּלאַץ פון טינגז, דער ערשטער וואָס איך ווילן צו ענטפֿערן (און טאָמער די בלויז וואָס דעם פּאָסטן וועט לאָזן מיר ווייַל איך שוין שרייבן אַ פּלאַץ) איז: אויב די רופט זענען די זעלבע, וואָס זענען די מגילה אַזוי אַנדערש?

פּסיכאָלאָגיע

פּראָגראַממינג איז די קונסט פון לערנען צו לייענען מחשבות. איך וועל אָנהייבן דעם אָפּטיילונג מיט אַ ציטאַט וואָס איך לייענען אַ לאַנג צייַט צוריק, עדסגער דיקסטראַ האט געזאגט:

אויב דיבאַגינג איז דער פּראָצעס פון דיבאַגינג, די פּראָגראַממינג מוזן זיין דער פּראָצעס פון ינטראָודוסינג זיי

און איך קען נישט געפֿינען אַ בעסער וועג צו דערקלערן אַלע דעם. פארוואס איז פּראָגראַממינג די קונסט פון ינטראָודוסינג ערראָרס? מער ווי איינער וועט זיין וואַנדערינג אין דעם פונט. דער ענטפער איז פּשוט, ווייַל אונדזער מחשבות זענען מענטשלעך און יומאַנז מאַכן מיסטייקס - עס איז אין אונדזער נאַטור און עס וועט זיין ווי לאַנג ווי דער מענטש יגזיסץ אויף דעם פּלאַנעט.

קאָמפּיוטערס זענען נישט פאַלש

מיר זענען די וואָס מאַכן מיסטייקס, די טימז וועלן שטענדיק באַגרענעצן זיך צו רעפּראָדוקציע וואָס מיר זאָגן זיי, זיי טאָן ניט יבערנעמען עפּעס, זיי טאָן ניט טייַטשן עפּעס, זיי טאָן ניט אַנטקעגנשטעלנ עפּעס, זיי נאָר לייענען און שפּילן. אַז ס וואָס אין אן אנדער C בוך איך אלץ לייענען עפּעס ווי דאָס:

C איז גראָב שפּראַך, איר קענען טאָן אַ פּלאַץ מיט אים, אָבער עס וועט קיינמאָל האַלטן איר צו דרייען זיך אין די פֿיס אויב איר ווילן צו טאָן דאָס, אָדער אַזוי איר זאָגן עס.

דאָס איז אַ גאַנץ נייַגעריק אמת 🙂 זינט ווען ארבעטן אין אַזאַ אַ נידעריק מדרגה, עס איז מעגלעך אַז פילע אַפּעריישאַנז וואָס זענען דורכגעקאָכט קענען זיין דעסטרוקטיווע, עפּעס וואָס קען נישט פּאַסירן מיט שפּראַכן פון אַ ביסל העכער מדרגה, ווייַל די טעות פאַרהיטונג לייַערס זיי זענען עלטער.

אַלץ איז פּסיכאָלאָגיע

יעדער שפּראַך, פראַמעוואָרק, פּראָגראַממער, רעספּעקט און נאָכפאָלגן עטלעכע סאָרט פון פילאָסאָפיע, און אויב נישט, עס האט נישט אַ זייער פּראַמאַסינג צוקונפֿט. יענע פון ​​אונדז וואָס אַרבעטן אויף יוניקס און דעריוואַטיווז וועלן מיסטאָמע וויסן די אַלט פראַזע:

טאָן איין זאַך און טאָן דאָס זייער גוט.

די פילאָסאָפיע איז נאכגעגאנגען דורך עטלעכע פּראַדזשעקס ווי די קערנעל, גאַנץ קליין פאַנגקשאַנז וואָס נאָר טאָן איין זאַך, אָבער טאָן די בעסטער זיי קענען.

אויב מיר גיין צו אנדערע שפראכן, יעדער איינער וועט האָבן אַ פונקציע און אָביעקטיוו, עטלעכע מער פּערמיסיוו און אנדערע מער ריסטריקטיוו, אָבער אַלע נאָכגיין זייער אייגענע וועג פון טראכטן.

לערן צו לייענען מחשבות

צווישן פּראָוגראַמערז עס איז אַ גאַנץ פּראָסט זאגן אַז עס זענען הונדערטער וועגן צו סאָלווע די זעלבע פּראָבלעם. דאָס איז אמת, אָבער עס איז עפּעס דיפּער וועגן דעם אַספּעקט. אויב איר לייענען מקור קאָד, איר קענען לייענען מחשבות - ניט נאָר קיין מיינונג, אָבער די מיינונג פון די פּראָגראַמיסט (אָדער פּראָוגראַמערז) וואָס געשריבן עס. עס איז אַ מין פון ווירטואַל און טיף טאָגבוך, עס אַלאַוז איר צו וויסן אין טיפעניש די מיינונג פון די דעוועלאָפּער, און אין דעם פאַל פון גרויס פּראַדזשעקס, עס אַלאַוז איר צו זען ווי זייער לאַדזשיקאַל און קריטיש טינגקינג איז געוואקסן איבער צייַט. עפּעס ויסערגעוויינלעך און וואָס נערישאַז די מינדס פון די יאַנגגאַסט, ווייַל איר קענען וויסן די בעסטער פּאַטס פון מענטשן וואָס האָבן צו אַנטדעקן זיי.

צו זיין קאָנסיסטענט

פילע פּראָוגראַמערז און ספּעשאַלאַסץ זאָגן אַז מיר האָבן צו באַקומען אויס פון אונדזער טרייסט זאָנע, און כאָטש עס איז אמת, עס איז אויך מער ווי נייטיק צו טייַנען זיכער פּראַסעסאַז און פֿאָרמאַטירונגען. דאָס איז פּשוט צו דערקלערן. אונדזער מחשבות זענען ריפּעטיטיוו און רעספּעקט סטראַקטשערז אויב איר שרייַבן קאָד אין די זעלבע וועג יעדער טאָג אין אַ קורץ צייט איר וועט האַלטן צו טראַכטן וועגן די פאָרעם און איר קענען קאַנסאַנטרייט אויף עס. הינטערגרונט. דעם אַלאַוז איר צו זען די לאָגיק פון דעם פּראָגראַם אַנשטאָט פון די שפּראַך סינטאַקס. און דאָס איז די סיבה וואָס איך טראַכטן אַז לערנען די קאָנסעפּץ וועט שטענדיק זיין מער וויכטיק ווי לערנען די פארמען. דאָס איז אַ פערזענלעכע מיינונג, אָבער איך האָפֿן אַז נאָך לייענען אַלע דעם איר קענען פֿאַרשטיין וואָס איך באַטראַכטן עס אַזוי - אויך עמעצער וואס האט צו פּראָגראַם אין C, Java, Javascript, Python, Ruby, PHP און אנדערע דערציילט זיי - וויסן די קאַנסעפּס מאכט עס גרינג צו שרייַבן קאָד.

אין קיצער

נו, דאָס איז דער ערשטער שריט אין אַ סעריע וואָס איך האָפֿן אַז וועט העלפֿן איר טראַכטן אַנדערש וועגן דער קונסט פון פּראָגראַממינג, און אפילו פאַרבעטן איר צו גראָבן אין די קאַנסעפּס וואָס לאָזן איר דורכפירן דעם קאָד וואָס איר האָט געשריבן אפֿשר הונדערטער מאָל. אָבער זיי האָבן ניט סטאַפּט צו טראַכטן וועגן וואָס עס טאַקע טוט. און פֿאַר יענע וואָס האָבן ניט סטאַרטעד פּראָגראַממינג, אָבער וואָלט ווי, צו קענען צו פּרייאָראַטייז אַ ביסל איבער וואָס איז טאַקע וויכטיק צו וויסן 🙂 גרעעטינגס


דער אינהאַלט פון דעם אַרטיקל אַדכיר צו אונדזער פּרינציפּן פון לייט עטיקס. צו מעלדונג אַ טעות גיט דאָ.

5 באַמערקונגען, לאָזן דיין

לאָזן דיין באַמערקונג

אייער בליצפּאָסט אַדרעס וועט נישט זייַן ארויס.

*

*

  1. פאַראַנטוואָרטלעך פֿאַר די דאַטן: Miguel Ángel Gatón
  2. ציל פון די דאַטן: קאָנטראָל ספּאַם, קאָמענטאַר פאַרוואַלטונג.
  3. לעגיטימאַטיאָן: דיין צושטימען
  4. קאָמוניקאַציע פון ​​די דאַטן: די דאַטן וועט נישט זיין קאַמיונאַקייטיד צו דריט פּאַרטיעס אַחוץ דורך לעגאַל פליכט.
  5. דאַטן סטאָרידזש: דאַטאַבייס כאָוסטיד דורך Occentus Networks (EU)
  6. רעכט: צו קיין צייט איר קענט באַגרענעצן, צוריקקריגן און ויסמעקן דיין אינפֿאָרמאַציע.

  1.   Javier G. Delgado דאָס

    א זייער קאַנשיענשאַס אַרטיקל וואָס רעדט (אין דעם פאַל) פון פּראָגראַממינג טאָמער אין אַ נייַע שפּראַך וואָס מגילה אין מער טיף, מיין שטיצן גייט צו די פאלגענדע.

    1.    קריסאַדר דאָס

      העלא כאַוויער, דאַנקען דיר זייער פיל 🙂 איך טראַכטן דאָס איז זייער וויכטיק ווייַל זיי האָבן שטענדיק געוואלט צו לערנען מיר בלויז צו רעפּראָדוצירן דעם קאָד, די באַרימט Ctrl + C ... Ctrl + V 🙂 אָבער איך האָבן קיינמאָל לאָזן זיך שלעפּן דורך דעם, אפילו אויב עס איז די סימפּלאַסט פּראָבלעם אין דער וועלט, איך'ד בעסער צו שרייַבן עס ווי צו צייכענען עס פון עמעצער אַנדערש, עס מאכט מיר פילן ווי דאָס איז מיין שאַפונג.
      גרוס

  2.   באַלואַ דאָס

    איך שוין ווארטן פֿאַר די ווייַטער קאַפּיטל, איך סטאַפּט פּראָגראַממינג פֿאַר אַ לאַנג צייַט צוריק, און איך טראַכטן איך קען געפֿינען אין אַ שפּעטער קאַפּיטל אַ סיבה פֿאַר מיין באַשלוס, ווייַל איך נעמען אַראָפּ מיין הוט אין דעם קאַפּיטל.

  3.   קריסאַדר דאָס

    העלא באַלואַ 🙂
    נו, איך וועט קומען מיט עפּעס פֿאַר די ווייַטער איינער. עס איז אַ ביסל קאָמפּליצירט צו סדר אַלץ אַזוי אַז די פאָדעם קענען זיין נאכגעגאנגען פֿון קיין פּאָסטן, אָבער איך וועל פּרובירן צו האָבן דעם (און עטלעכע אנדערע וואָס האָבן געבעטן מיר) באַלד. דאַנקען פֿאַר דיין באַמערקונג. טשעערס

  4.   אַנדערס דאָס

    א יידלשטיין פון אַן אַרטיקל! איך האָפֿן די ווייַטער ...

בול (אמת)