שפת תכנות היא אמצעי תקשורת בין מתכנת למחשב. מחשב במקרה זה הוא מכונה שמבינה רק פקודות אלמנטריות. מהי השפה הקשה ביותר לאדם לדבר עם מחשב?
קוד בינארי
הרומן הסובייטי "המתכנת" מספר על מצב בו מחשב נכשל במכון טכני. באו הבוסים וביקשו להפגין את עבודתה. אבל היא לא הבינה את הפקודות של שפת התכנות. ואז המהנדס המוכשר החל בדיאלוג עם המכונה בשפתה - ממש בקוד הבינארי.
מתכנתים רבים רואים בקוד בינארי את שפת התכנות הקשה ביותר - וזה פרדוקס, מכיוון שמספרים בינאריים אינם שפה. עצם המושג "שפת תכנות" מרמז על תרגום משפת המחשבים לשפה האנושית. בינארי, על המתכנת להתווכח עם המכונה ללא פשטנות יתר.
למרות הקשיים העצומים בעבודה עם קוד בינארי באופן ישיר, ההיגיון הבינארי הוא שמאפשר שימוש חסכוני ביותר בזיכרון המכונה. ניתן להשתמש בו במכשירים חשמליים פשוטים (תנורי מיקרוגל, קומקומים), וכן במכשירים הדורשים מהירות מיוחדת (שעונים מדויקים, ציוד רפואי, ציוד ספורט לשיפוט).
הרכבת
אסמבלר היא קבוצה של הוראות קוד בינארי המקובצות למקטעים. משתמשים בשפה זו בעת פירוק תוכניות. לפעמים יש צורך לברר את קוד התוכנית לפי קבצי ההפעלה שלו. לשם כך, עליך לפענח את קובץ ההפעלה (לעבודה יש הרבה מן המשותף לקריפטוגרפיה). תהליך זה של פענוח קבצי הפעלה נקרא פירוק. בפלט, המתכנת מקבל קבוצה של הוראות הרכבה, גם אם התוכנית נכתבה במקור בשפה אחרת. עבודה עם שפת הרכבה (asm) זה כמו תכנות בבינארי, מאתגר אפילו מתכנתים חזקים.
C ++ פופולרי
מספר עצום של תוכניות ופגזים בעולם נכתבים בשפות של קבוצת C. שפת C. עצמה נוצרה בשנת 1970 לעבודה עם מעבדים. שפה זו הייתה פשוטה מאוד.
ב '' 'פותחה שפת C ++, שירשה את מרבית היכולות של קודמתה, אך הוסיפה עיקרון נוסף - פרדיגמת הירושה. למרות הפשטות הניכרת של הפקודות, שפה זו היא כלי התכנות החזק ביותר. מספר עצום של ספריות צד שלישי מעניקות למתכנת חופש רב לתהליך היצירה. עם זאת, לשפה יש מבנה לוגי מורכב. עליכם להשתמש בגישה מונחית עצמים המפחיתה את מספר שורות הקוד (בגלל ירושה) אך מסבכת את ההיגיון. מתכנת נדרש להיות בעל יכולת לפנטז, וזה לא קל כשלעצמו.
שפות חדשות
נכון לעכשיו, שפות תכנות "מופשטות" בחינם פופולריות מאוד: NOSQL, Erlang, Python. לא קל לשלוט בהם, אך מומחים בשפות נדירות פופולריים מאוד. ככלל, נוצרות שפות חדשות כדי לפתור בעיות ספציפיות: עבודה עם ממשקי אינטרנט, יצירת יישומים או ניהול תהליכי שרת. קושי מיוחד בתכנות בשפות האחרונות טמון במחקר הקטן שלהם - ישנם מעט רכיבים וספריות, מפרטים וספרי לימוד.