fbpx

01. הקדמה והקמת סביבה

הקדמה

בקורס זה נלמד להכיר את יסודות התכנות תוך כדי הכרת שפת ++C, המכונה גם “סי פלוס פלוס”, שזה CPP בקיצור.

ונתחיל בשאלה מהי באמת המשמעות של תכנות?

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

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

אמנם לשם ביצוע פרויקטים מורכבים ובניית תוכנות המתממשקות עם פלטפורמות שונות כמו אתרי אינטרנט ואפליקציות, יש מי שיגיד שעדיף יהיה לעבוד בעזרת שפות תכנות יותר “עיליות”, כמו למשל Java ו-Python. ועדיין, בשביל להבין לעומק את היכולת ליעל קוד, ישנה חשיבות רבה להבנת התיאוריה של הקוד, ולשם כך, שפת CPP היא מושלמת.

כמו כן, חשוב להבין ששפת CPP שונה משפות “סקריפט” כמו פייתון וג’אווה, בכך שבשביל להריץ את הקוד, ישנו צורך ב”קומפילציה” שזה תהליך שבו הקוד עובר כולו תרגום כלשהו, ורק אז הריצה מתחילה. לעומת שפות כמו פייתון, בהן כל שורה ושורה עוברת תרגום בפני עצמה, עוברת ריצה, ואז מגיעה השורה הבאה. המשמעות של “תרגום”, או יותר נכון במילה המדויקת “הידור” (קומפילציה) של כל הקוד עוד טרום הריצה עצמה, זה שהתהליך הרבה יותר יעיל. קוד שנכתב ב-CPP יהיה בממוצע פי 100 ויותר,  יעיל יותר במהירות הריצה שלו מול קוד שנכתב בפייתון.

ואגב – נכון לכתיבת שורות אלו, באופן כללי מתכנת מוצלח בשפת CPP משתכר טוב יותר ממתכנתים בשפות עיליות.

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

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

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

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

התקנת סביבה

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

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

תחילה נוריד את התוכנה מהאתר של מיקרוסופט, לשם כך נחפש בגוגל “Visual studio community download”, ונחפש בתוצאות את האתר של מיקרוסופט, או לחילופין, נשתמש ב-קישור להורדה.

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

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

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

במסך הבא, נוכל לבחור איזה “רקע” נעדיף לתוכנה, אני מעדיף את השחור, מרגיש בריא יותר לעיניים ולבטריה של המחשב…

נלחץ על “להתחיל” למטה, ושוב נמתין כמה שניות, עד למסך הבא:

נבחר ב-Create a new project, נמשיך עם ברירת המחדל של Empty Project

תחת Project Name, נבחר לפרוייקט שלנו שם, למשל Project1 כפי שאולי כבר מוצע לנו. ונלחץ על Create.

כעת נצפה להגיע בשעה טובה למסך שבו נעבוד:

או למי שבחר בצבע רקע שונה, משהו כזה:

בתוך החלונית Solution Explorer שזו החלונית שבה נוכל לראות את כל החלקים של הפרויקט שלנו, נלחץ קליק ימני בעכבר על Source Files, נבחר ב-Add, ואז New Item. (אם הסתבכנו, נוכל לנסות פשוט ללחוץ על המקשים Control+Shift+A.

נוודא שאלו הן ההגדרות שלנו, ונלחץ על Add:

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

נוכל גם פה לבחור לקובץ “שם” כרצוננו. (בתמונה בחרתי לקרוא לקובץ בשם my_first_cpp_file)

מזל טוב! יצרנו את קובץ הקוד הראשון שלנו.

הערה קלה: ישנם אתרים שמאפשרים להריץ אונליין קוד של CPP, זה יכול להיות פתרון להתחלת הלמידה, אבל לא פתרון קבוע. למשל אתר זה.

 

א-ב תחבירית:

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

				
					#include<iostream> 
using namespace std;
				
			

כדאי להעתיק שורות קוד אלו בעזרת Copy-Paste (תוכלו להיעזר בכפתור ה-“Copy” שמופיע בצד ימין כשעוברים עם העכבר על קטע הקוד). טעות של תו בודד, או מחסור של סוגריים, הינו קריטי לצורך תפקוד נכון של התוכנית. באופן כללי בתכנות, הדיוק הוא ממש חשוב. גם טעויות קטנות כמו החלפת אות גדולה A באות קטנה a עלולות לגרום לכל התוכנית שלא לעבוד.

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

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

ובכן, בשלב הבא אנו ניצור קטע קוד, או בשמו המלא: “פונקציה”, ממנו התוכנית תתחיל לבצע פקודות.
לפונקציה אנו נצטרך לקרוא main ונעשה זאת כך:

				
					void main()
{

}
				
			

הכותרת של הקוד זה void main, והקוד עצמו מוקף בשני סימני סוגריים מסולסלים, שבתוכה אנו נוסיף שורות קוד בעתיד.

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

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

 

הפקודה הראשונה שנכיר הינה פקודת הדפסה למסך. שם הפקודה הוא cout.

צורת השימוש בפקודה היא באמצעות ההוראה הבאה:

				
					cout <<
				
			

אנו נרצה כמובן שמשהו יודפס, אז נוסיף את המילים “שלום עולם”:

				
					cout << "Hello World"; 
				
			

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

ולמדנו משהו נוסף: בסוף שורת קוד אנו מוסיפים נקודה פסיק (;).

 

אז דוגמא לתוכנית הראשונה המלאה שלנו:

				
					#include<iostream>
using namespace std;

void main()
{
	cout << "Hello World";
}
				
			

בתוכנית זו אנו ביקשנו מהפונקציה main להדפיס למסך את המילים “Hello World”.

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

(או F5 למקצרים…) בכל שלב, אם התוכנית תיתקע, במקום המשולש הירוק, יהיה לידו ריבוע כתום, נלחץ עליו, והתוכנית תיסגר.

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

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

נזהה שבמסך השחור כתובות המילים שביקשנו מהמחשב להדפיס Hello World.

התוכנית גם מספרת לנו בשורות הבאות ש:

א. ה”הרצה” שלה הסתיימה בהצלחה (exit code 0)

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

כעת לאחר שנלחץ אנטר, התוכנית תסתיים.

אם ננתח את הפעולה שעשינו, השתמשנו במילה cout, לאחריה השתמשנו בסימן המוזר ” >> ” ואז ציינו את מה שרצינו להדפיס.

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

 

אספר לכם שאם נרצה בסוף שורת ההדפסה שלנו hello world, שתבוצע במסך “ירידה” לשורה חדשה, נוכל להוסיף את הצירוף endl, באופן הבא:

				
					cout << "my name is Ori" << endl;
ctou << " bye       bye" << endl;
				
			

הפלט יהיה:

				
					my name is Ori
 bye       bye
				
			

(משמעות שם הסימול endl הוא קיצור של end-line – סיים שורה).

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

				
					cout << "my name is Ori" << endl << " bye       bye" << endl;
				
			

בשילוב זה אנו מבינים שניתן לבצע “הדפסה כפולה” למסך בעזרת שימוש נוסף בסימן >> בין שני ה”דברים” הנשלחים להדפסה וכל זה עם שימוש בודד של המילה cout בתחילת השורה.

אם נרצה להוסיף “הערות” לקוד, נוכל בכל מקום שנרצה לכתוב מה שנרצה אם רק נוסיף פעמיים את הסימן  //. למשל:

				
					cout << "hello";   // this line will print “hello”, and this sentence is a comment
				
			

 

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

כניסה

שכחתי סיסמה

אין לך חשבון? להצטרפות

איפוס סיסמה:

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

ברכות! סיימתם את השיעור הראשון בקורס!

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

שינוי סיסמה

עריכת פרטים אישיים