התקנות: כל מה שמתקינים בקורס

מטרות השיעור
  • להסביר במילים פשוטות מה תפקידו של כל כלי — VS Code, Python, Git, Docker, Terminal
  • להתקין את Python, VS Code, Git ו-Docker Desktop, כולל סימון PATH ב-Windows
  • לבדוק כל התקנה עם הדגל --version ולקרוא את הפלט
  • לזהות ולתקן שגיאת “not recognized” ו-Docker Desktop שלא פתוח
  • לדעת מה עוד מתקינים בהמשך הקורס, באיזה נושא ולמה

מה בשיעור

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

  1. פרק ראשון — הכלים של הקורס: מה כל כלי עושה
  2. פרק שני — שלבי ההתקנה, צעד אחר צעד
  3. פרק שלישי — בדיקה שהכול מותקן, ומה נתקין בהמשך הקורס

פרק ראשון: הכלים של הקורס

מה נלמד?

בשיעור הזה נכיר את הקורס ואת דרך העבודה בו, ואז נכין את סביבת העבודה (Development Environment) — אוסף הכלים שבעזרתם נכתוב ונריץ קוד לאורך כל הקורס. בסוף השיעור יהיו מותקנים אצלכם כל הכלים, ותדעו מה התפקיד של כל אחד מהם:

  • VS Code — המקום שבו כותבים קוד.
  • Python — התוכנה שמריצה את הקוד שכתבנו.
  • Git — הכלי ששומר היסטוריה של הקוד.
  • Docker — מריץ תוכנות מוכנות, כמו מסד נתונים, בתוך “קופסה” מבודדת.
  • Terminal — חלון שבו נותנים למחשב פקודות בכתב.

למה צריך את זה?

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

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

איך בנוי הקורס

  • הקורס מחולק לנושאים, לפי סדר הלימוד ובדיוק לפי סדר המצגות: התקנות, מחשב ומערכת הפעלה, רשתות, Python, Git, OOP, Backend ומסדי נתונים.
  • כל נושא מחולק לשיעורים. כל שיעור עומד בפני עצמו ובנוי באותו מבנה קבוע: מה נלמד ‏←‏ למה צריך ‏←‏ הסבר מהבסיס ‏←‏ תחביר ‏←‏ דוגמה ‏←‏ פירוק שורה אחר שורה ‏←‏ דוגמה נוספת ‏←‏ טעות נפוצה ‏←‏ תרגול ‏←‏ סיכום. בנושאים התיאורטיים (המחשב ומערכת ההפעלה, רשתות) אין קוד — והתרגול הוא שאלות הבנה.
  • בסוף כל שיעור יש 5 תרגילים — אותם תרגילים שבקובץ התרגילים של המצגת. הפתרונות מוסתרים ונפתחים רק בלחיצה, כדי שתנסו קודם לבד.
  • בראש ובתחתית כל שיעור יש כפתור סמן כהושלם, ובכל עמוד מוצגת ההתקדמות הכללית שלכם בקורס.
איך להפיק את המקסימום מהאתר

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

הסבר מהבסיס

מהו קוד, ומי מבין אותו?

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

Python — המתורגמן

Python היא גם שם השפה וגם שם התוכנה שמריצה אותה. התוכנה הזו נקראת Interpreter (מפרש) — היא קוראת את הקובץ שלנו שורה אחר שורה ומבצעת כל שורה.

אנלוגיה

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

VS Code — עורך הקוד

VS Code (Visual Studio Code) הוא עורך קוד (Code Editor) — תוכנה לכתיבת טקסט, שמותאמת במיוחד לקוד. אפשר לכתוב קוד גם ב-Notepad, אבל VS Code נותן:

  • צביעת תחביר (Syntax Highlighting) — מילים שונות בקוד נצבעות בצבעים שונים, כך שקל לזהות טעויות.
  • השלמה אוטומטית — מציע שמות של פונקציות ומשתנים בזמן ההקלדה.
  • Terminal מובנה — אפשר להריץ את הקוד בלי לצאת מהעורך.
  • Debugger — כלי לעצירת הקוד באמצע ובדיקה מה קורה בו (נלמד בנושא Python).

חשוב להבין: VS Code לא מריץ את הקוד בעצמו. כשלוחצים “Run”, הוא פשוט מבקש מ-Python להריץ את הקובץ. לכן צריך להתקין את שניהם.

Git — מכונת הזמן של הקוד

Git הוא כלי לניהול גרסאות (Version Control). הוא שומר “תמונות מצב” של הקוד לאורך הזמן, כך שאפשר לחזור לגרסה קודמת, לראות מה השתנה ומתי, ולעבוד בצוות על אותו קוד. נלמד אותו לעומק בנושא Git. היום רק מתקינים.

Docker — תוכנות מוכנות בקופסה

בהמשך הקורס נעבוד עם מסד נתונים — תוכנה שמנהלת ושומרת מידע (MySQL). להתקין אותה ישירות על המחשב זה תהליך ארוך ושונה בכל מערכת הפעלה. Docker פותר את זה: הוא מריץ תוכנות מוכנות בתוך קונטיינר (Container) — “קופסה” מבודדת שכבר יש בה כל מה שהתוכנה צריכה. בפקודה אחת, ואצל כולם בדיוק אותו דבר. היום רק מתקינים, ונשתמש בו כשנגיע למסדי נתונים.

Terminal — לדבר עם המחשב בכתב

רוב הזמן אנחנו מפעילים את המחשב בעכבר: לוחצים על אייקונים, גוררים קבצים. ה-Terminal (נקרא גם Command Line או שורת הפקודה) הוא דרך אחרת: כותבים פקודה בטקסט, לוחצים Enter, והמחשב מבצע ומחזיר תשובה בטקסט.

למה לעבוד ככה? כי הרבה כלים של מפתחים (Python, Git, שרתים) עובדים בעיקר דרך פקודות. ב-Windows ה-Terminal מריץ בדרך כלל את PowerShell, ובמק/לינוקס את Bash או Zsh. נלמד את ההבדלים בנושא המחשב ומערכת ההפעלה.

מילון קצר
  • Development Environment — סביבת הפיתוח: כל הכלים יחד.
  • Interpreter — תוכנה שקוראת קוד ומבצעת אותו שורה אחר שורה.
  • Code Editor — עורך טקסט שמותאם לכתיבת קוד.
  • Version Control — מערכת שמנהלת גרסאות של קוד לאורך זמן.
  • Container — “קופסה” מבודדת שבה רצה תוכנה מוכנה, עם כל מה שהיא צריכה.
  • Terminal — חלון שבו נותנים פקודות בכתב.
  • Command — פקודה: שורת טקסט שמבקשת מהמחשב לבצע משהו.

דוקומנטציה רשמית

פרק שני: שלבי ההתקנה

מה נלמד?

מתקינים את ארבעת הכלים לפי הסדר: Python, VS Code, Git ו-Docker. כל כלי מורידים רק מהאתר הרשמי שלו (הקישורים כאן למטה), וברוב המסכים משאירים את ברירות המחדל. אחרי כל התקנה בודקים שהכלי עובד — ורק אז ממשיכים לבא.

1. Python

  1. נכנסים ל- python.org/downloads ומורידים את הגרסה העדכנית (3.12 ומעלה).
  2. ב-Windows — חשוב מאוד: במסך הראשון של ההתקנה מסמנים Add python.exe to PATH. בלי זה ה-Terminal לא ימצא את Python (נסביר מהו PATH בנושא המחשב ומערכת ההפעלה).
  3. לוחצים Install Now ומחכים לסיום.

2. VS Code

  1. מורידים מ- code.visualstudio.com ומתקינים עם ברירות המחדל.
  2. ב-Windows, מסמנים בהתקנה גם Add to PATH ו-Open with Code.
  3. פותחים את VS Code ‏←‏ לשונית Extensions (סמל הריבועים בצד) ‏←‏ מחפשים Python (של Microsoft) ‏←‏ Install.
  4. (אפשר גם עכשיו, וחובה בנושא מסדי נתונים) תוסף Database Client (של Weijan Chen) — ממשק לצפייה במסד הנתונים ולהרצת SQL.

3. Git

  1. מורידים מ- git-scm.com/downloads ומתקינים עם ברירות המחדל.
  2. במק אפשר גם להריץ בטרמינל xcode-select --install.

4. Docker

  1. מורידים את Docker Desktop מ- docker.com/products/docker-desktop ומתקינים עם ברירות המחדל.
  2. ב-Windows: Docker Desktop צריך את WSL 2 (תשתית של Windows להרצת Linux). אם ההתקנה מבקשת להתקין או לעדכן אותו — מאשרים, ולפעמים צריך להפעיל את המחשב מחדש.
  3. פותחים את Docker Desktop ומחכים שיסיים לעלות (בפינה מופיע Engine running). פקודות docker עובדות רק כשהוא פתוח.

5. Terminal

  • Windows: ה-Terminal כבר מותקן. מחפשים בתפריט התחל Terminal או PowerShell.
  • Mac: אפליקציית Terminal (חיפוש עם Cmd + Space).
  • בתוך VS Code: תפריט Terminal → New Terminal (או Ctrl + `). זה ה-Terminal שנעבוד איתו רוב הקורס.
אחרי התקנה — לפתוח Terminal חדש

Terminal שהיה פתוח לפני ההתקנה לא “יודע” על הכלי החדש. אם מקבלים שגיאה שהפקודה לא נמצאה — סוגרים את ה-Terminal (ואת VS Code) ופותחים מחדש.

דוקומנטציה רשמית

פרק שלישי: בדיקה ומה מתקינים בהמשך

תחביר

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

python --version
git --version
code --version
docker --version

המבנה של כל פקודה:

<program name>  <flag>
     python     --version
  • שם התוכנה — איזו תוכנה להפעיל.
  • דגל (Flag) — מילה שמתחילה ב--- (או -) ומשנה את מה שהתוכנה עושה. --version אומר: “אל תעשי שום דבר חוץ מלהדפיס את הגרסה שלך”.

דוגמת קוד ראשונה

פותחים Terminal ומריצים את פקודת הבדיקה הראשונה:

python --version

פלט צפוי (Expected Output):

Python 3.12.4

המספר אצלכם יכול להיות שונה — העיקר שמתחיל ב-Python 3.

פירוק הקוד שורה אחר שורה

python --version
חלקמה הוא עושה
pythonשם התוכנה. ה-Terminal מחפש במחשב תוכנה בשם הזה (בתיקיות שרשומות ב-PATH) ומפעיל אותה.
רווחמפריד בין שם התוכנה לבין מה שמעבירים לה.
--versionדגל שאומר ל-Python: “הדפיסי את הגרסה וצאי”. Python לא מריצה שום קוד במקרה הזה.

ומה מופיע בפלט:

פלטמשמעות
Pythonשם התוכנה שענתה — הוכחה שה-Terminal מצא אותה.
3.12.4מספר הגרסה: 3 = גרסה ראשית, 12 = גרסת משנה, 4 = תיקון באגים.

דוגמה נוספת

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

python --version
git --version
code --version
docker --version

פלט צפוי:

Python 3.12.4
git version 2.45.1.windows.1
1.93.1
38c31bc77e0dd6ae88a4e9cc93428cc27a56ba40
x64
Docker version 27.3.1, build ce12230
  • git version ... — Git מותקן.
  • Docker version ... — Docker מותקן. (המספרים אצלכם יכולים להיות שונים.)
  • code --version מדפיס שלוש שורות: גרסת VS Code, מזהה הבנייה (מחרוזת ארוכה) וסוג המעבד (x64 או arm64). כל שלוש השורות תקינות.

טעות נפוצה

הטעות: מתקינים Python ב-Windows בלי לסמן את Add python.exe to PATH, ואז מריצים:

python --version

ומקבלים:

python : The term 'python' is not recognized as the name of a cmdlet, function,
script file, or operable program.

או לפעמים נפתחת דווקא חנות Microsoft Store.

למה זה קורה? ה-Terminal מחפש תוכנות רק בתיקיות שרשומות ברשימה בשם PATH. אם Python לא נרשמה שם — מבחינת ה-Terminal היא לא קיימת, גם אם היא מותקנת על הדיסק.

התיקון:

  1. מריצים שוב את קובץ ההתקנה של Python ‏←‏ Modify ‏←‏ Next ‏←‏ מסמנים Add Python to environment variables ‏←‏ Install.
  2. סוגרים ופותחים מחדש את ה-Terminal.
  3. חלופה ב-Windows: הפקודה py --version (ה-Python Launcher) עובדת בדרך כלל גם בלי PATH.
Docker: Docker Desktop לא פתוח

docker --version עובד גם כש-Docker Desktop סגור — אבל פקודות אחרות (כמו docker ps) ייכשלו עם failed to connect to the docker API. הפתרון: לפתוח את Docker Desktop ולחכות שיעלה.

עוד טעות קלאסית: Mac

במק, הפקודה python לפעמים לא קיימת ורק python3 עובדת. זה תקין. במק השתמשו ב-python3 בכל מקום שבו כתוב python באתר.

מה נתקין בהמשך הקורס

ארבעת הכלים מותקנים כבר מהיום הראשון. במהלך הקורס נוסיף עוד כמה דברים — כל אחד בדיוק בנושא שצריך אותו. אין צורך להתקין אותם עכשיו; כאן הם מופיעים כדי שתהיה לכם רשימה אחת מלאה של כל ההתקנות בקורס:

מהמתיאיך
חשבון GitHubנושא Gitנרשמים ב- github.com (חינם)
הגדרת שם ומייל ל-Gitנושא Gitgit config --global user.name ו-user.email — פעם אחת במחשב
סביבה וירטואלית (venv)נושא Backendpython -m venv .venv בתיקיית הפרויקט
FastAPIנושא Backendpip install "fastapi[standard]" בתוך ה-venv
מסד הנתונים MySQLנושא מסדי נתוניםקונטיינר ב-Docker: docker run ... mysql:8.4
תוסף Database Clientנושא מסדי נתוניםב-VS Code: Extensions → Database Client (של Weijan Chen)
ה-Driver ‏mysql-connector-pythonנושא מסדי נתוניםpip install mysql-connector-python בתוך ה-venv

הפקודות עצמן — רק כדי להכיר. נריץ אותן כשנגיע לנושא, עם הסבר מלא:

# Git topic: one-time identity
git config --global user.name "Dana Cohen"
git config --global user.email "dana@example.com"

# Backend topic: inside a venv
pip install "fastapi[standard]"

# Databases topic: driver + MySQL image
pip install mysql-connector-python
docker pull mysql:8.4
  • pip — מנהל החבילות של Python. הוא מוריד ספריות מהאינטרנט ומתקין אותן, כמו חנות אפליקציות לקוד.
  • docker pull — מוריד מראש את ה-Image של MySQL (התבנית שממנה Docker יוצר קונטיינר). במסדי נתונים docker run יוריד אותו לבד אם הוא חסר — אבל אם יש לכם זמן ואינטרנט טוב, אפשר להוריד אותו כבר עכשיו.
רשימת בדיקה לסוף השיעור
  • python --version מדפיס Python 3.x
  • git --version מדפיס git version ...
  • code --version מדפיס את גרסת VS Code
  • docker --version מדפיס Docker version ..., ו-Docker Desktop נפתח ומציג Engine running
  • ב-VS Code מותקן התוסף Python של Microsoft

סיכום

  • סביבת עבודה = חמישה כלים: VS Code (כותבים), Python (מריצים), Git (שומרים היסטוריה), Docker (מריץ תוכנות מוכנות, כמו מסד נתונים), Terminal (נותנים פקודות).
  • Python היא Interpreter — היא קוראת את הקוד שלנו ומבצעת אותו שורה אחר שורה. VS Code רק מבקש ממנה להריץ.
  • ב-Windows מסמנים Add python.exe to PATH בהתקנה של Python, ו-Docker Desktop צריך WSL 2.
  • בודקים התקנה של כל כלי עם --version.
  • שגיאת “not recognized” אומרת בדרך כלל שהכלי לא רשום ב-PATH, או שה-Terminal נפתח לפני ההתקנה.
  • בהמשך הקורס נוסיף: חשבון GitHub ו-git config (Git), venv ו-FastAPI (Backend), MySQL ב-Docker, Database Client וה-Driver (מסדי נתונים).

דוקומנטציה רשמית

תרגול

שאלות הבנה על החומר של השיעור — בלי קוד.

תרגיל 1: חמישה כלים — חמישה תפקידים

התאימו לכל כלי את התפקיד שלו:

כליתפקיד
Python?
VS Code?
Git?
Terminal?
Docker?

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

הצג פתרון
כליתפקיד
Python(ב) — המתורגמן: קורא את הקוד ומבצע אותו
VS Code(ד) — עורך הקוד: כותבים, מריצים ומדבגים
Git(א) — מכונת הזמן: היסטוריה של כל שינוי בקוד
Terminal(ג) — מדברים עם המחשב בפקודות כתובות
Docker(ה) — מריץ תוכנות מוכנות, כמו MySQL, בקונטיינר מבודד

תרגיל 2: “The term ‘python’ is not recognized”

סטודנטית התקינה Python, פתחה את ה-Terminal שהיה פתוח כבר מקודם, הקלידה python --version וקיבלה את ההודעה:

python : The term 'python' is not recognized as the name of a cmdlet...
  1. מה ההודעה אומרת?
  2. תנו שתי סיבות אפשריות לבעיה, ומה עושים בכל מקרה.
הצג פתרון
  1. ה-Terminal לא מצא תוכנה בשם python באף אחת מהתיקיות שרשומות ב-PATH.
  2. שתי סיבות אפשריות:
    • ה-Terminal נפתח לפני ההתקנה — הוא לא “יודע” על השינוי ב-PATH. סוגרים ופותחים Terminal חדש.
    • בהתקנה לא סומנה התיבה Add python.exe to PATH — מריצים שוב את ההתקנה (Modify) ומסמנים אותה, או משתמשים ב-py --version.

(ב-Mac הפקודה היא בדרך כלל python3.)

תרגיל 3: “failed to connect to the docker API”

סטודנט התקין Docker Desktop. הפקודה docker --version עובדת ומדפיסה גרסה, אבל הפקודה docker ps נכשלת:

failed to connect to the docker API
  1. איך ייתכן שפקודה אחת של Docker עובדת והשנייה לא?
  2. מה עושים כדי לתקן?
  3. איזה רכיב נוסף צריך להיות מותקן ב-Windows כדי ש-Docker Desktop יעבוד?
הצג פתרון
  1. docker --version רק מדפיסה את הגרסה של כלי הפקודה — היא לא צריכה את המנוע של Docker. docker ps צריכה לדבר עם המנוע (Engine), והוא רץ רק כש-Docker Desktop פתוח.
  2. פותחים את Docker Desktop ומחכים שיסיים לעלות (מופיע Engine running), ואז מריצים שוב.
  3. WSL 2 — התשתית של Windows להרצת Linux. אם ההתקנה מבקשת להתקין או לעדכן אותו — מאשרים, ולפעמים צריך להפעיל מחדש את המחשב.

תרגיל 4: מה מתקינים ומתי?

לכל פריט ברשימה כתבו מתי מתקינים אותו בקורס: (א) ביום הראשון, (ב) בנושא Git, (ג) בנושא Backend, (ד) בנושא מסדי נתונים.

פריטמתי?
Python?
חשבון GitHub?
FastAPI?
Docker Desktop?
mysql-connector-python?
VS Code?
הצג פתרון
פריטמתי?
Python(א) ביום הראשון
חשבון GitHub(ב) בנושא Git — שם גם מגדירים שם ומייל עם git config
FastAPI(ג) בנושא Backend — מתקינים עם pip בתוך סביבה וירטואלית
Docker Desktop(א) ביום הראשון — אבל משתמשים בו רק במסדי נתונים
mysql-connector-python(ד) בנושא מסדי נתונים — ה-Driver שמחבר את Python ל-MySQL
VS Code(א) ביום הראשון

הכלל: את ארבעת הכלים (Python, VS Code, Git, Docker) מתקינים ביום הראשון. את הספריות והחשבונות מוסיפים כשמגיעים לנושא שצריך אותם.

תרגיל 5: לקרוא את פלט הבדיקה

סטודנטית הריצה את ארבע פקודות הבדיקה וקיבלה:

Python 3.12.4
git version 2.45.1.windows.1
1.93.1
38c31bc77e0dd6ae88a4e9cc93428cc27a56ba40
x64
docker : The term 'docker' is not recognized as the name of a cmdlet...
  1. אילו כלים מותקנים ותקינים?
  2. code --version הדפיסה שלוש שורות. מה כל שורה?
  3. מה הבעיה בשורה האחרונה, ומה עושים?
הצג פתרון
  1. Python, Git ו-VS Code מותקנים — כל אחד הדפיס את הגרסה שלו.
  2. שלוש השורות של VS Code:
    • 1.93.1 — גרסת VS Code.
    • המחרוזת הארוכה — מזהה הבנייה (Commit).
    • x64 — סוג המעבד שהגרסה נבנתה בשבילו.
  3. ה-Terminal לא מוצא את docker — Docker לא הותקן, או שה-Terminal נפתח לפני ההתקנה. מתקינים את Docker Desktop (אם צריך), סוגרים ופותחים Terminal חדש, ובודקים שוב עם docker --version.