לדלג לתוכן

מילון מונחים לתכנות - כל המושגים שכל מתחיל חייב להכיר

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

יסודות השפה

משתנה (variable) - מקום באחסון בזיכרון עם שם, ששומר ערך שיכול להשתנות במהלך הריצה. לדוגמה x = 5 יוצר משתנה בשם x עם הערך 5.

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

לולאה (loop) - מנגנון שחוזר על בלוק קוד כמה פעמים, עד שתנאי מסוים מתקיים או על פני כל איבר ברשימה. שני הסוגים הנפוצים הם for ו-while.

תנאי - if - מבנה שמריץ קוד שונה בהתאם לשאלה אם ביטוי מסוים נכון או לא. זו הדרך שבה תוכנית "מקבלת החלטות".

בוליאני (boolean) - טיפוס נתונים שיכול לקבל רק אחד משני ערכים - אמת (true) או שקר (false). הוא הבסיס של כל תנאי ולולאת while.

מחרוזת (string) - רצף של תווים, כלומר טקסט - אותיות, מספרים וסימנים. לדוגמה "שלום עולם" היא מחרוזת.

פרמטר וארגומנט (parameter/argument) - פרמטר הוא השם שמופיע בהגדרת הפונקציה, וארגומנט הוא הערך בפועל שמעבירים אליה כשקוראים לה. ההבדל דק אבל שימושי כשמדברים על קוד עם אנשים אחרים.

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

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

סינטקס (syntax) - כללי הכתיבה של שפת תכנות, כלומר מה מותר ומה אסור מבחינת מבנה. שגיאת סינטקס אומרת שהקוד לא כתוב נכון לפי כללי השפה, לפני שבכלל בדקו מה הוא עושה.

פסאודוקוד (pseudocode) - תיאור של אלגוריתם בשפה קרובה לעברית או אנגלית רגילה, בלי להקפיד על סינטקס של שפה ספציפית. שימושי לתכנון פתרון לפני שכותבים קוד אמיתי.

מבני נתונים

מערך ורשימה (array/list) - מבנה נתונים ששומר כמה ערכים ברצף אחד, עם מספור שמתחיל מ-0. בפייתון, למשל, קוראים לזה list, וזה אחד המבנים הכי בסיסיים בכל שפה.

אובייקט ומחלקה (object/class) - מחלקה היא תבנית שמגדירה תכונות והתנהגויות, ואובייקט הוא מופע קונקרטי שנוצר לפי אותה תבנית. מחלקה בשם "כלב" יכולה להגדיר שם וגיל, ואובייקט הוא כלב ספציפי בשם רקסי.

None/Null - ערך מיוחד שמסמן "אין כאן כלום" או "לא הוגדר ערך". בפייתון קוראים לזה None, בשפות רבות אחרות Null, אבל הרעיון זהה.

שגיאות ודיבוג

באג ודיבוג (bug/debug) - באג הוא שגיאה בקוד שגורמת להתנהגות לא צפויה, ודיבוג הוא התהליך של איתור ותיקון אותה שגיאה. זה חלק בלתי נפרד מהעבודה, לא סימן שאתם גרועים.

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

כלים וסביבת עבודה

IDE - תוכנה שמרכזת בתוכה עורך קוד, כלי הרצה, דיבאגר ועוד, כדי שתוכלו לכתוב ולהריץ קוד בלי לקפוץ בין תוכנות. דוגמאות מוכרות הן VS Code ו-PyCharm.

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

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

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

ריפוזיטורי (repository) - התיקייה של פרויקט שמנוהלת בגיט, כולל כל הקבצים וכל ההיסטוריה שלהם לאורך זמן.

מושגים מתקדמים

API - ממשק שמאפשר לתוכנה אחת "לדבר" עם תוכנה אחרת ולבקש ממנה מידע או פעולות, בלי לדעת בכלל איך היא בנויה מבפנים.

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

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

ספרייה ופריימוורק (library/framework) - ספרייה היא אוסף קוד מוכן שאתם קוראים לו כשצריך, ופריימוורק הוא שלד שלם שקובע איך התוכנית שלכם בנויה, ואתם ממלאים אותו בקוד משלכם.

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

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

הצטרפו לקהילה בדיסקורד