You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/he/1-getting-started-lessons/1-intro-to-programming-lang.../README.md

16 KiB

מבוא לשפות תכנות וכלי עבודה

השיעור הזה מכסה את היסודות של שפות תכנות. הנושאים המוצגים כאן רלוונטיים לרוב שפות התכנות המודרניות כיום. בחלק "כלי עבודה", תלמדו על תוכנות שימושיות שמסייעות לכם כמפתחים.

Intro Programming

סקיצה מאת Tomomi Imura

שאלון לפני השיעור

שאלון לפני השיעור

מבוא

בשיעור הזה נעסוק ב:

  • מהי תכנות?
  • סוגי שפות תכנות
  • אלמנטים בסיסיים בתוכנית
  • תוכנות וכלים שימושיים למפתח מקצועי

ניתן לקחת את השיעור הזה ב-Microsoft Learn!

מהי תכנות?

תכנות (המכונה גם קידוד) הוא תהליך כתיבת הוראות למכשיר כמו מחשב או מכשיר נייד. אנו כותבים את ההוראות הללו באמצעות שפת תכנות, שמפורשת לאחר מכן על ידי המכשיר. מערכי ההוראות הללו עשויים להיקרא בשמות שונים, אך תוכנית, תוכנית מחשב, אפליקציה (app) ו-קובץ הרצה הם כמה מהשמות הפופולריים.

תוכנית יכולה להיות כל דבר שנכתב עם קוד; אתרים, משחקים ואפליקציות טלפון הם תוכניות. למרות שאפשר ליצור תוכנית ללא כתיבת קוד, ההיגיון הבסיסי מפורש על ידי המכשיר, וההיגיון הזה ככל הנראה נכתב עם קוד. תוכנית ש-רצה או מבצעת קוד מבצעת הוראות. המכשיר שבו אתם קוראים את השיעור הזה מריץ תוכנית שמדפיסה אותו על המסך שלכם.

בצעו מחקר קטן: מי נחשב למתכנת המחשב הראשון בעולם?

שפות תכנות

שפות תכנות מאפשרות למפתחים לכתוב הוראות למכשיר. מכשירים יכולים להבין רק בינארי (0 ו-1), ולרוב המפתחים זו לא דרך יעילה לתקשר. שפות תכנות הן הכלי לתקשורת בין בני אדם למחשבים.

שפות תכנות מגיעות בפורמטים שונים ועשויות לשרת מטרות שונות. לדוגמה, JavaScript משמשת בעיקר לאפליקציות אינטרנט, בעוד Bash משמשת בעיקר למערכות הפעלה.

שפות ברמה נמוכה דורשות בדרך כלל פחות שלבים מאשר שפות ברמה גבוהה כדי שמכשיר יפרש הוראות. עם זאת, מה שהופך שפות ברמה גבוהה לפופולריות הוא הקריאות והתמיכה שלהן. JavaScript נחשבת לשפה ברמה גבוהה.

הקוד הבא ממחיש את ההבדל בין שפה ברמה גבוהה עם JavaScript לבין שפה ברמה נמוכה עם קוד אסמבלי ARM.

let number = 10
let n1 = 0, n2 = 1, nextTerm;

for (let i = 1; i <= number; i++) {
    console.log(n1);
    nextTerm = n1 + n2;
    n1 = n2;
    n2 = nextTerm;
}
 area ascen,code,readonly
 entry
 code32
 adr r0,thumb+1
 bx r0
 code16
thumb
 mov r0,#00
 sub r0,r0,#01
 mov r1,#01
 mov r4,#10
 ldr r2,=0x40000000
back add r0,r1
 str r0,[r2]
 add r2,#04
 mov r3,r0
 mov r0,r1
 mov r1,r3
 sub r4,#01
 cmp r4,#00
 bne back
 end

תאמינו או לא, שניהם עושים את אותו הדבר: מדפיסים רצף פיבונאצ'י עד 10.

רצף פיבונאצ'י מוגדר כקבוצת מספרים שבה כל מספר הוא סכום של שני המספרים הקודמים לו, החל מ-0 ו-1. עשרת המספרים הראשונים ברצף פיבונאצ'י הם 0, 1, 1, 2, 3, 5, 8, 13, 21 ו-34.

אלמנטים בתוכנית

הוראה יחידה בתוכנית נקראת פקודה ובדרך כלל תהיה לה תו או רווח שמסמן היכן ההוראה מסתיימת, או מסתיימת. איך תוכנית מסתיימת משתנה בין שפה לשפה.

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

יש סיכוי שחלק מהפקודות לא יבוצעו על ידי מכשיר. זה בדרך כלל נעשה בכוונה על ידי המפתח או בטעות כאשר מתרחשת שגיאה בלתי צפויה. סוג זה של שליטה על אפליקציה הופך אותה ליותר חזקה וניתנת לתחזוקה. בדרך כלל, שינויים אלה בשליטה מתרחשים כאשר תנאים מסוימים מתקיימים. פקודה נפוצה בשפות תכנות מודרניות לשליטה על אופן הפעולה של תוכנית היא פקודת if..else.

תלמדו יותר על סוג הפקודה הזה בשיעורים הבאים.

כלי עבודה

Tools of the Trade

🎥 לחצו על התמונה למעלה לצפייה בסרטון על כלים

בחלק הזה תלמדו על כמה תוכנות שעשויות להיות מאוד שימושיות כשאתם מתחילים את המסע שלכם כמפתחים מקצועיים.

סביבת פיתוח היא סט ייחודי של כלים ותכונות שמפתח משתמש בהם לעיתים קרובות בעת כתיבת תוכנה. חלק מהכלים הללו הותאמו לצרכים הספציפיים של המפתח, ועשויים להשתנות עם הזמן אם המפתח משנה סדרי עדיפויות בעבודה, בפרויקטים אישיים, או כאשר הוא משתמש בשפת תכנות אחרת. סביבת פיתוח היא ייחודית כמו המפתחים שמשתמשים בה.

עורכים

אחד הכלים הקריטיים ביותר לפיתוח תוכנה הוא העורך. עורכים הם המקום שבו אתם כותבים את הקוד שלכם ולעיתים גם המקום שבו אתם מריצים אותו.

מפתחים מסתמכים על עורכים מכמה סיבות נוספות:

  • איתור באגים מסייע לחשוף באגים ושגיאות על ידי מעבר על הקוד, שורה אחר שורה. חלק מהעורכים כוללים יכולות איתור באגים; ניתן להתאים אותם ולהוסיף אותם לשפות תכנות ספציפיות.
  • הדגשת תחביר מוסיפה צבעים ועיצוב טקסט לקוד, מה שהופך אותו לקריא יותר. רוב העורכים מאפשרים התאמה אישית של הדגשת תחביר.
  • תוספים ואינטגרציות הם כלים מיוחדים למפתחים, על ידי מפתחים. כלים אלה לא נבנו לתוך העורך הבסיסי. לדוגמה, מפתחים רבים מתעדים את הקוד שלהם כדי להסביר איך הוא עובד. הם עשויים להתקין תוסף לבדיקת איות כדי לעזור למצוא שגיאות כתיב בתיעוד. רוב התוספים מיועדים לשימוש בתוך עורך ספציפי, ורוב העורכים מגיעים עם דרך לחפש תוספים זמינים.
  • התאמה אישית מאפשרת למפתחים ליצור סביבת פיתוח ייחודית שמתאימה לצרכים שלהם. רוב העורכים ניתנים להתאמה אישית רבה ועשויים גם לאפשר למפתחים ליצור תוספים מותאמים אישית.

עורכים פופולריים ותוספים לפיתוח אינטרנט

דפדפנים

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

רבים מהדפדפנים מגיעים עם כלי מפתחים (DevTools) שמכילים סט של תכונות ומידע מועילים כדי לעזור למפתחים לאסוף וללכוד מידע חשוב על האפליקציה שלהם. לדוגמה: אם לדף אינטרנט יש שגיאות, לפעמים מועיל לדעת מתי הן התרחשו. ניתן להגדיר את כלי המפתחים בדפדפן כדי ללכוד מידע זה.

דפדפנים וכלי מפתחים פופולריים

כלי שורת פקודה

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

אפשרויות שורת פקודה פופולריות

אפשרויות לשורת הפקודה ישתנו בהתאם למערכת ההפעלה שבה אתם משתמשים.

💻 = מגיעה מותקנת מראש במערכת ההפעלה.

Windows

MacOS

Linux

כלי שורת פקודה פופולריים

  • Git (💻 ברוב מערכות ההפעלה)
  • NPM
  • Yarn

תיעוד

כאשר מפתח רוצה ללמוד משהו חדש, הוא ככל הנראה יפנה לתיעוד כדי ללמוד כיצד להשתמש בו. מפתחים מסתמכים לעיתים קרובות על תיעוד כדי להדריך אותם כיצד להשתמש בכלים ושפות בצורה נכונה, וגם כדי להעמיק את הידע שלהם על איך זה עובד.

תיעוד פופולרי על פיתוח אינטרנט

בצעו מחקר: עכשיו כשאתם יודעים את היסודות של סביבת מפתח אינטרנט, השוו אותה לסביבת מעצב אינטרנט.


🚀 אתגר

השוו בין כמה שפות תכנות. מהם כמה מהמאפיינים הייחודיים של JavaScript לעומת Java? ומה לגבי COBOL לעומת Go?

שאלון אחרי השיעור

שאלון אחרי השיעור

סקירה ולימוד עצמי

למדו קצת על השפות השונות הזמינות למתכנת. נסו לכתוב שורה בשפה אחת, ואז כתבו אותה מחדש בשתי שפות אחרות. מה למדתם?

משימה

קריאת התיעוד


כתב ויתור:
מסמך זה תורגם באמצעות שירות תרגום מבוסס בינה מלאכותית Co-op Translator. למרות שאנו שואפים לדיוק, יש לקחת בחשבון שתרגומים אוטומטיים עשויים להכיל שגיאות או אי-דיוקים. המסמך המקורי בשפתו המקורית נחשב למקור הסמכותי. למידע קריטי, מומלץ להשתמש בתרגום מקצועי על ידי מתרגם אנושי. איננו נושאים באחריות לכל אי-הבנה או פרשנות שגויה הנובעת משימוש בתרגום זה.