שפות תכנות הם כלי חשוב שיוכל לקדם אותנו ולהצעיד אותנו לעבר משרות המחר. לא מעט אנשים מאבדים את עבודתם עקב שיפורי טכנולוגיה במפעלים ובעולם בכלל, ונראה שלמידת מקצועות טכנולוגיים זה אחד מהפתרונות היותר טובים שניתן לפנות אליהם.
למי נועד הקורס
עבור אדם שאין לו שום רקע בתחום התכנות או המחשבים, המושג "שפות תכנות" יכול להישמע זר, מורכב, ובלתי אפשרי. אך האמת היא שלא ממש כך הדבר, למעשה כאשר אנו באים עם הגישה הנכונה ללמידת שפות תכנות, הלמידה יכולה להיות זורמת ומהנה.
במדריך זה באמצעות גישה פרקטית, נלמד מבוא לשפות תכנות, ובתור דוגמה נשתמש בשפה C. מדריך זה נועד בעיקר לאלו שרוצים לקבל מושגים והבנה כוללת לפני שלוקחים קורס מקיף יותר על שפת תכנות ספציפית, או לאלו אשר רוצים ללמוד תכנות ולא בטוחים אם התחום מתאים להם.
משתמשים אשר יסיימו קורס זה יוכלו לכתוב קוד באמצעות שפת C, ותהיה להם הבנה טובה ונרחבת יותר לגבי שפות תכנות. שוב נציין שזהו לא מדריך מקיף המלמד שפת C בשלמותה, אלא מבוא לשפות תכנות הנעזר בשפת C להדגמה.
אנו נצא מתוך נקודת ההנחה שהאנגלית שלכם בסיסית לפחות, על מנת שתוכלו להבין מדריך זה במלואו.
שפות תכנות – הקדמה
לפני שניכנס אל תוך נושא התכנות, עלינו להבין מהם שפות תכנות ומה ניתן לעשות באמצעותן. תוכנת מחשב היא למעשה רצף של פקודות שנועדו לגרום למחשב לבצע משימה מסוימת. על מנת להבהיר זאת תארו לכם את הסיטואציה הבאה: אתם עומדים ברחוב כאשר אדם אחר ניגש אליכם ושואל אותכם איך להגיע לבית קפה מסוים. בשפת בני האדם תשובתכם תראה כך –
לך שמאלה, ואז ימינה, תעלה במדרגות שמולך, תחצה את הכיכר, ותמצא את בית הקפה מולך.
אך אם נרצה לכתוב סדרת פקודות זו בשפת תכנות זה יראה כך:
לך שמאלה לך ימינה תעלה במדרגות שמולך תחצה את הכיכר בית הקפה נמצא מולך
מה שהודגם כאן למעלה הוא רצף של פקודות המסודרות בסדר יורד, בדיוק כפי שזה נראה בשפת תכנות, כאשר השתמשנו במקרה זה בעברית במקום בשפת C.
בדוגמה הבאה נדגים תוכנה פשוטה הכתובה בשפת התכנות Python:
print ("Hello, World!")
כאשר נריץ תכנית זו, המשפט "!Hello, World" יופיע על גבי המסך, ואנו נעזרים בפקודה print על מנת לבצע פעולה זו.
במהלך השנים יצאו מגוון של שפות תכנות, למעשה מאות. במדריך זה נלמד באמצעות שפת C, אך נשתמש גם בדוגמאות מהשפות Java ו-Python במהלכו.
מהו אלגוריתם
מנקודת מבט של מתכנתים, אלגוריתם הוא פתרון בגישת צעד אחרי צעד לבעיות מורכבות. כלומר, שהמתכנת כותב מספר פקודות על מנת לפתור בעיה מסוימת עוד לפני שהוא ניגש לכתיבת גוף התוכנית. האלגוריתם הבא נועד למצוא את המספר הגדול ביותר בסדרה נתונה:
Get a list of numbers L1, L2, L3....LN Assume L1 is the largest, Largest = L1 Take next number Li from the list and do the following If Largest is less than Li Largest = Li If Li is last number from the list then Print value stored in Largest and come out Else repeat same process starting from step 3
קוד זה נכתב ברובו באנגלית ולא בשפת תכנות, אך הוא נועד לתאר כיצד פועל אלגוריתם, וכיצד אנו משתמשים באלגוריתם על מנת שנוכל לפתור בעיה נתונה. ככל שתתקדמו בשפות תכנות, תתקלו גם בדרכים הרבה יותר יעילות ומקצועיות לכתוב אלגוריתם, דוגמה זו נועדה להמחשה בלבד, והיא תופיע שוב במהלך הקורס בצורה מפורטת ומבוארת בפרק 14 של הקורס – פונקציות Functions.
שפות תכנות – הבסיס
כמו שבשפות שבני האדם משתמשים בהם יש הטיות, פעלים וכו', בשפות תכנות יש משהו דומה על מנת שיהיה סדר והגיון לטקסט והוא יהיה קריא על ידי המחשב. יש מושגים מסוימים שהם משותפים למרבית שפות התכנות אשר קיימות, בקורס זה אנו נקדיש פרק לכל מושג שבו נסביר ונדגים איך להשתמש בו. אנו נדגים במהלך הקורס איך להשתמש בכל מושג באמצעות מספר שפות תכנות, ובסיומו תרגישו בנוח עם שפות תכנות ואף תוכלו להתחיל לתכנת בעצמכם. במדריך זה תלמדו לכתוב קוד באמצעות C, Python, ו-Java. אך כפי שנכתב למעלה, רוב המדריך יוסבר באמצעות שפת C שאותה נלמד בעיקר.