Menu
Coddy logo textTech

מה זה קוד מקור?

קוד מקור (source code) הוא הטקסט הקריא של תוכנית, שמתכנת כותב בשפה כמו Python, Java או C ושומר בקבצי טקסט פשוטים, וקומפיילר או מפרש הופכים אותו להוראות שמחשב יכול להריץ.

מאת Kevin Spektor, מייסד שותף ו-CTO

עודכן ב-24 בספטמבר 2026

פתחו כל קובץ שמסתיים ב-.py, .c או .java בעורך טקסט פשוט, ואתם קוראים קוד מקור. זה אותו סוג של קובץ כמו רשימת קניות: אותיות, ספרות, רווחים ומעברי שורה. מה שהופך אותו לתוכנית הוא שהטקסט עומד בכללים של שפת תכנות, כך שכלי יכול להפוך אותו להוראות למעבד.

איך קוד מקור נראה

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

Total: 12

אותה תוכנית ב-C היא גם קוד מקור, רק בשפה אחרת עם כללים אחרים:

#include <stdio.h>

int main(void) {
    int price = 4;
    printf("Total: %d\n", price * 3);
    return 0;
}

אפליקציה אמיתית היא אלפי קבצים כאלה. בקרנל של Linux יש יותר מ-30 מיליון שורות של קוד מקור, ולאפליקציית ווב קטנה יכולות להיות בקלות כמה מאות קבצים. לכל קובץ יש סיומת שאומרת לכלים באיזו שפה הוא כתוב:

סיומתשפה
.pyPython
.c, .hC
.cpp, .hppC++
.javaJava
.jsJavaScript
.goGo
.rsRust

קוד מקור הוא טקסט פשוט

בקוד מקור אין גופנים, צבעים או עיצוב נסתר. הצבעים שרואים בעורך נוספים על ידי העורך כדי להקל על הקריאה, והם לא נשמרים בקובץ. בגלל זה כותבים קוד בעורך קוד כמו VS Code ואף פעם לא ב-Microsoft Word: מעבד תמלילים שומר נתוני עיצוב ומירכאות "חכמות", והתוצאה היא קובץ שהשפה לא יכולה לקרוא, ובדרך כלל הוא נדחה עם שגיאת תחביר.

מכיוון שזה רק טקסט, תוכנית יכולה אפילו להחזיק את קוד המקור של תוכנית אחרת במחרוזת ולהריץ אותו:

<class 'str'>
3 lines of text
Total: 12

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

איך קוד מקור הופך לתוכנית רצה

המעבד במחשב שלכם לא יודע לקרוא Python או C. הוא מריץ רק קוד מכונה, כלומר הוראות בינאריות שמתאימות לסוג מסוים של מעבד (x86-64 ברוב המחשבים הניידים והשרתים, ARM בטלפונים ובמחשבי Mac עם Apple Silicon). משהו צריך לתרגם. יש שתי דרכים עיקריות:

  1. קומפיילר מתרגם את כל התוכנית מראש. הרצה של gcc hello.c -o hello קוראת את קוד המקור ב-C וכותבת קובץ חדש, hello, מלא בקוד מכונה. אפשר למחוק את hello.c אחר כך, ו-hello עדיין ירוץ.
  2. מפרש מריץ את המקור ישירות. הרצה של python3 hello.py מפעילה את המפרש של Python, שקורא את hello.py ומבצע את ההוראות שלו. לא נוצר קובץ תוכנית נפרד, ולכן המקור צריך להיות שם בכל פעם.

הרבה שפות משלבות בין השתיים. קוד מקור של Java מקומפל על ידי javac ל-bytecode (קבצי .class), וה-Java Virtual Machine מריץ את ה-bytecode הזה. ההשוואה המלאה נמצאת בדף קומפיילר מול מפרש.

קוד מקור, קוד אובייקט וקוד מכונה

שלושת המונחים האלה מתארים את אותה תוכנית בשלבים שונים:

מונחמי קורא אותודוגמה
קוד מקוראנשים וקומפיילריםtotal = price * 3 בקובץ app.py
קוד אובייקטה-linkerhello.o, שנוצר על ידי gcc -c hello.c
קוד מכונה (קובץ הרצה)המעבדhello ב-Linux או ב-macOS, hello.exe ב-Windows

אם פותחים קובץ הרצה מקומפל בעורך טקסט רואים סימנים לא קריאים, כי הוא בינארי ולא טקסט. ב-Mac, ארבעת הבתים הראשונים של התוכנית hello שלמעלה הם cf fa ed fe בהקסדצימלי, הסימן של קובץ הרצה מסוג Mach-O. אפשר להסתכל על ערכים גולמיים כאלה עם ממיר הבסיסים.

קוד פתוח וקוד סגור

מי יכול לקרוא את קוד המקור היא שאלה משפטית לא פחות מטכנית. תוכנה בקוד פתוח (open source) מפרסמת את קוד המקור שלה תחת רישיון שמאפשר לכל אחד לקרוא, לשנות ולשתף אותו. Python, Linux ו-Firefox הן קוד פתוח. תוכנה בקוד סגור (קניינית) מופצת רק כתוכנית מקומפלת. Microsoft Windows ו-Adobe Photoshop הן בקוד סגור, וקוד המקור שלהן הוא סוד מסחרי.

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

תפיסות שגויות נפוצות

  • "View Page Source מראה את קוד המקור של אתר." הוא מראה את ה-HTML, ה-CSS וה-JavaScript שהדפדפן קיבל. צד השרת של האתר (שנכתב ב-Python, Java, PHP או שפה אחרת) אף פעם לא יוצא מהשרת, ולכן אי אפשר לראות אותו.
  • "Decompiler מחזיר את המקור המקורי." Decompiler בונה מחדש קוד קריא מתוכנית מקומפלת, אבל ההערות נעלמות ולעיתים קרובות גם השמות, ולכן התוצאה היא ניחוש של המקור, לא הקובץ שהכותבים כתבו.
  • "קוד וקוד מקור זה אותו דבר." קוד מקור הוא הגרסה שנכתבה בידי אנשים. "קוד" רחב יותר, והוא כולל גם קוד מכונה, bytecode וקוד שנוצר אוטומטית.
  • "קוד מקור חייב להיות באנגלית." מילות מפתח כמו if ו-print הן מילים באנגלית, אבל שמות משתנים, הערות ומחרוזות יכולים להיות בכל שפה. קבצי מקור של Python 3 הם UTF-8 כברירת מחדל, ולכן גם prix = 4 וגם # 合計を計算する תקינים.

לאן ממשיכים מכאן

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

שאלות נפוצות

מה דוגמה לקוד מקור?
כל קובץ שמתכנת כותב בשפת תכנות הוא קוד מקור: סקריפט Python כמו app.py, קובץ C כמו main.c, או ה-JavaScript בדף אינטרנט. אפילו שורה אחת כמו print("Hello") ששמורה בקובץ .py נחשבת. תוכנות כמו Firefox או Linux בנויות ממיליוני שורות כאלה.
מה ההבדל בין קוד לקוד מקור?
קוד מקור הוא הגרסה של התוכנית שנכתבה בידי אדם, בשפת תכנות. "קוד" היא מילה רחבה יותר, שכוללת גם את מה שכלים מייצרים ממנו, כמו קוד מכונה, bytecode או קוד שנוצר אוטומטית. בשיחה יומיומית מתכנתים אומרים "קוד" כשהם מתכוונים לקוד מקור, וההקשר מבהיר את זה.
איך משיגים את קוד המקור של תוכנה?
בפרויקטים שלכם, קוד המקור הוא אוסף הקבצים שכתבתם, שבדרך כלל נשמרים במאגר Git. בתוכנות קוד פתוח, קוד המקור מפורסם, לרוב ב-GitHub או ב-GitLab. בתוכנה בקוד סגור בדרך כלל אי אפשר להשיג אותו: יש לכם רק את קובץ ההרצה המקומפל, ו-decompiler נותן במקרה הטוב קירוב, בלי ההערות והשמות המקוריים.
האם HTML הוא קוד מקור?
כן. HTML היא שפת סימון ולא שפת תכנות, אבל קבצי ה-.html שמפתח כותב הם המקור של דף אינטרנט, ודפדפנים קוראים לתצוגה שלהם "View Page Source". אותו דבר נכון לקבצי CSS ולקבצי ה-JavaScript שדף טוען.
מה זה ניהול קוד מקור?
ניהול קוד מקור, שנקרא גם בקרת גרסאות, הוא תיעוד של כל שינוי בקבצי המקור של פרויקט, כדי שאפשר יהיה לראות מי שינה מה, לחזור לגרסה קודמת ולשלב עבודה של כמה אנשים. Git הוא הכלי הנפוץ ביותר לזה, ושירותים כמו GitHub ו-GitLab מארחים מאגרי Git באינטרנט.
איור של שפות התכנות ב-Coddy

ללמוד תכנות עם Coddy

להתחיל