שפת תכנות היא אוסף חוקים של תחביר (איך כותבים פקודות) וסמנטיקה (מה הפקודה עושה).
תוכנית בשפה כזו מגדירה תהליך אלגוריתמי, סדר פעולות שמחשב מבצע.
לרוב הלומדים שפה חדשה מוצגים תחילה לביטוי הפשוט "hello world".
שפות תכנות מנסות להשיג שלוש מטרות בו־זמנית: לתווך בין מחשב למתכנת;
להעלות רמת הפשטה כדי לתקשר בקלות בין מתכנתים; ולאפשר ניסוח ברור של אלגוריתמים.
שפות מציעות מבני בקרה (לולאות ותנאים), פרוצדורות, עצמים ומחלקות שיעזרו בארגון הקוד.
השפות דורשות חד־משמעיות ולכן יש להן אוצר מילים מצומצם וכללי תחביר נוקשים.
רבים שואפים לקוד קריא, כדי להקל על תיקון ותחזוקה.
שפה נקראת שלמה־טיורינג אם אפשר לבצע בה כל חישוב שמכונת טיורינג יכולה לבצע.
שפת התכנות אינה מובנת ישירות למעבד. יש תיווך בשתי דרכים עיקריות:
הידור (קומפילציה) שמתרגם את הקוד לשפת מכונה, או פירוש (אינטרפרטציה) שמריץ אותו ישירות.
יש שפות שמשתמשות בשילוב של שניהם.
פותחו מאות שפות, לכל אחת יתרונות וחסרונות. יש שפות קלות למתחילים ויש מקצועיות.
הבחירה בשפה תלויה במשימה, בכלים, בכישורי המתכנת ובדרישות הלקוח.
שפות קרובות למכונה כמו אסמבלי ו־C מנצלות טוב יותר חומרה ומייצרות תוכניות מהירות.
שפות עיליות (High-level) פותרות את המתכנת מפרטים טכניים, ולכן מקלות פיתוח ותחזוקה.
התוכנית בדוגמה כתובה בפייתון. היא בודקת אם מספר הוא מספר ראשוני.
יש בה פונקציה שמוצאת את המחלק (מספר שמחלק ללא שארית) הגבוה ביותר של המספר.
אם המחלק הגבוה ביותר הוא 1, המספר ראשוני.
המעבר משפת מכונה החל עם האסמבלי. בהמשך נוצרו מהדרים ראשונים,
Grace Hopper פיתחה מהדר ב־1952. FORTRAN (1957) ו־COBOL (1960) היו בין השפות הראשונות המצליחות.
LISP שימשה לחקר בינה מלאכותית. בשנות ה־60 וה־70 צמחו שפות כמו BASIC, Pascal ו־C.
C השפיעה על שפות רבות, כגון C++ ו־Java. בשנות ה־90 נוספו פייתון ורובי, שכוונו לפשטות וקריאות.
גם שפות קטנות וניסיוניות נוצרו, כמו BF שמיישמת רעיון בסיסי מאד.
האינטרנט תרם להתפתחות שפות חדשות ולדרישה לניידות בין מכשירים.
שפה אזוטרית היא שפת ניסוי או אומנותית. היא נועדה לבחינת רעיונות בעיצוב שפה.
שפות כאלו לעיתים אינן שימושיות לפיתוח יומיומי, אבל מראות גבולות אפשריים בעיצוב.
שפות כוללות הצהרות והכרזות, טיפוסים (סוגי נתונים), קבועים ומשתנים,
מילים שמורות, אופרטורים ומבני בקרה (תנאים ולולאות). יש גם שגרות ופונקציות.
אלמנטים אלה מסייעים לארגן קוד ולחלק משימות ליחידות ברורות.
תכנות חזותי מציג רכיבים גרפיים במקום כתיבת כל השורות בטקסט.
בכלים כאלה מציירים טפסים וגרירים פקדים עם העכבר, והסביבה מייצרת את הקוד הנדרש.
הגישה מקלה על פיתוח ממשקי משתמש, מקצרת עבודה ומאפשרת לראות את המבנה במהירות.
עדיין ניתן לשלב בין כתיבה טקסטואלית לבין ייצוג חזותי.
שפת תכנות היא השפה שמספרת למחשב מה לעשות.
"תחביר" (איך כותבים נכון) ו"סמנטיקה" (מה זה עושה) עוזרים להבין אותה.
ברוב הקורסים לומדים קודם תוכנית שמדפיסה "hello world".
שפה טובה מקשרת בין המחשב למתכנת.
היא עוזרת לארגן רעיונות ולכתוב הוראות ברורות.
יש בה פקודות של לולאה (חוזר על פעולה) ותנאי (עושה רק כשמשהו נכון).
קוד קריא עוזר לתקן ולשפר תוכניות אחר כך.
המחשב לא מבין שפות תכנות ישר.
יש מהדר (ממיר לתרגום למכונה) או מפרש (מריץ את הקוד כמו שהוא).
יש המון שפות תכנות. כל שפה טובה למשימה אחרת.
אסמבלי (שפת סף) קרובה מאוד למחשב.
שפות עיליות מסתירות פרטים טכניים ועוזרות לכתוב מהר יותר.
הדוגמה בפייתון בודקת אם מספר הוא ראשוני.
פונקציה היא קטע קוד שעושה עבודה מסוימת ומחזירה תוצאה.
לפני היו כותבים בשפת מכונה. אחר כך הגיע האסמבלי.
FORTRAN ו־COBOL היו בין השפות הראשונות המצליחות.
במהלך השנים הופיעו שפות כמו BASIC, Pascal, C, Java ופייתון.
שפות חדשות נוצרות כדי להקל על המתכנתים.
שפה אזוטרית היא שפה מיוחדת וניסיונית.
מפתחים משתמשים בה כתרגיל או כאמנות.
הן לא תמיד נוחות לכתיבת תוכנות רגילות.
יש הצהרות והכרזות (מה יש בקוד).
יש טיפוסים (סוגי נתונים) וקבועים (ערכים שלא משתנים).
יש משתנים (מקומות בזיכרון לשים ערכים) ומילים שמורות.
יש אופרטורים (סימנים שעושים פעולות) ומבני בקרה.
יש גם פרוצדורות ופונקציות שעוזרות לחלק עבודה לחלקים.
בתכנות חזותי מציירים רכיבים במקום לכתוב כל שורה.
הסביבה יוצרת את הקוד מהציור. זה מקל על יצירת חלונות ותפריטים.
תגובות גולשים