-image-representing-the-C-programming-language

קורס ++C

פתיחת קורס
טרם נקבע
90
שעות לימוד אקדמיות
ניסיון מעשי בחטיבת הפיתוח
C Plus Plus

קורס ++C

על הקורס

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

קורס ++C הינו קורס מקיף זה מהווה מדריך שלם לפיתוח תוכנה למתחילים ומתקדמים.

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

קורס ++C הינו קורס מעשי הכולל מעל 80% Hands-On-Training. במהלך הקורס נבצע מאות תרגילי כיתה ותרגילי בית המלווים בפתרונות מוסברים, לקראת סיום הקורס נבצע פרויקטים מהתעשייה ונעבור על דוגמאות לשאלות מראיונות עבודה.

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

  • פיתוח מערכות משובצות מחשב (Embedded Systems)
  • פיתוח מערכות זמן אמת (Real Time Systems)
  • פיתוח לעולם ה-Networking
  • מהווה בסיס לפיתוח אפליקציות מורכבות במערכות ההפעלה
  • פיתוח אפליקציות, GUI ו-Data Base במערכות מבוססות Linux
  • ועוד פיתוחים רבים נוספים

שפת C כוללת את הטוב ביותר משני העולמות: היא תומכת בתכנות גנרי (Generic Programming) כירושה משפת C, וכן מהווה את השפה הראשונה בעלת יכולות תכנות מונחה עצמים (Object Oriented Programming).

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

למעשה, שפת ++C משמשת כהרחבה של שפת C. היא משלבת מספר מודלים תכנותיים, בנוסף ליכולות תכנות מונחה עצמים (Object Oriented Programming), יכולות האנשה, יחד עם מהירות ריצה גבוהה המאפשרת פיתוח תוכנה למערכות מורכבות ומסובכות בנישות שונות.


נקודות חשובות על לימוד ++C

שפת ++C וותיקה יחסית, פותחה בשנות השמונים אך שמרה על מקומה כשפת תכנות מובילה גם כיום. היא מהווה בסיס לשפות עיליות מתוחכמות רבות אשר הומצאו בשנים האחרונות כגון: Python, Java, ו-#C.

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

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

מרבית המושגים בשפה זו נלקחו משפת C אך השינוי מתבטא ברעיון. שפת ++C תומכת בנושאים כגון: Encapsulation, Inheritance, ו-Polymorphism, אשר משנים את אופן פיתוח התוכנה ותחזוקתה.

בניגוד לשפות המושתתות על תכנות מונחה עצמים כגון JAVA ו-#C, שפת ++C איננה שפה מונחית עצמים "נקייה", כלומר שיטת הכתיבה בה היא לאו דווקא בצורה של אובייקטים ומחלקות, והיא מאפשרת שימוש בפונקציות שאינן מותאמות בהכרח לתכנות מונחה עצמים.

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

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

אף שנעשה ניסיון להציע שפות תכנות מודרניות שמבוססות עליה ומושפעות ממנה, כגון: JAVA ו-#C, היא עדיין נותרה דומיננטית, חשובה, ורלוונטית לפיתוח תוכנה.

private lessons

למה כדאי ללמוד קורס ++C ?

  • שליטה בתכונות מתקדמות של ++C מודרני
  • הבנת מנגנוני הליבה של השפה
  • יכולת לכתוב קוד יעיל ואופטימלי
  • רכישת טכניקות לפיתוח קוד בטוח
  • הבנת מודלי הזיכרון והביצועים
  • יכולת לפתח מערכות מורכבות
  • שיפור איכות הקוד ותחזוקתיות
private lessons

מה לומדים בקורס שפת++C?

בקורס ++C המתקדם, הסטודנטים מתעמקים ביסודות השפה המודרנית ובתכונותיה העדכניות. הלימוד מתחיל בתכונות החדשות של C++17/20, כולל עבודה עם Templates מתקדמים, Lambda Expressions, וטכניקות חדשניות כמו Smart Pointers ו-Move Semantics.

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

STL ומבני נתונים מהווים חלק משמעותי מהקורס, עם התמקדות ב-Containers מתקדמים, Algorithms, ו-Iterators. הסטודנטים לומדים ליצור Custom Allocators, לעבוד עם Function Objects, ולנצל את יכולות ה-Ranges החדשות.

תכנות מקבילי מקבל תשומת לב מיוחדת, כולל הבנה מעמיקה של מודל הזיכרון של ++C, עבודה עם Threads ו-Futures, והתמודדות עם אתגרי סנכרון באמצעות Atomics ותכנות Lock-Free.

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

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

private lessons

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

  • מפתחי Embedded Systems
  • מהנדסי תוכנה המתמחים במערכות זמן אמת
  • מפתחי Firmware
  • מהנדסי חומרה העוסקים בפיתוח תוכנה
  • מתכנתים המעוניינים להתמחות בEmbedded Systems
private lessons

תנאי קבלה

  • ידע בסיסי בשפת C
  • הבנה בסיסית של ארכיטקטורת מחשבים
  • היכרות עם מערכות דיגיטליות
  • ידע בסיסי בEmbedded Systems יהווה יתרון
  • ניסיון בסיסי בעבודה עם מיקרו-בקרים

מיומנויות וטכניקות

  • יכולת פיתוח בשפת ++C מודרנית תוך שימוש בתכונות עדכניות
  • שליטה בתכנות מונחה עצמים מתקדם וניהול יעיל של משאבים
  • הבנה מעמיקה של STL ויכולת שימוש במבני נתונים מתקדמים
  • מיומנות בפיתוח תוכנה מקבילית ואסינכרונית
  • יכולת כתיבת קוד יעיל ומותאם לביצועים גבוהים
  • שליטה בטכניקות אופטימיזציה וניהול משאבי מערכת
  • יכולת שימוש בכלי פיתוח ודיבוג מתקדמים
  • הבנת עקרונות תכנון מערכות תוכנה מורכבות
  • יכולת זיהוי ופתרון בעיות ביצועים ודליפות זיכרון
  • מיומנות בפיתוח רכיבי תוכנה מותאמים למערכות משובצות
  • יכולת תכנון וניהול זיכרון אפקטיבי
  • שליטה בטכניקות לכתיבת קוד בטוח ועמיד
  • יכולת עבודה עם תבניות מתקדמות ומטא-תכנות
  • הבנת מודל הזיכרון והתזמון של ++C
  • יכולת פיתוח מערכות רב-תהליכיות מורכבות
  • יכולת יישום דפוסי תכנון (Design Patterns) מתקדמים
  • מיומנות בכתיבת קוד נקי ותחזוקתי
  • שליטה בטכניקות לניהול חריגות ושגיאות
  • יכולת פיתוח תוכנה בעלת ביצועים גבוהים
  • הבנת עקרונות של תכנות פונקציונלי ב-++C
  • מיומנות בשימוש ב-Lambda Expressions מתקדמים
  • יכולת אינטגרציה עם ספריות צד שלישי
  • שליטה בטכניקות לבדיקות תוכנה יחידתיות
  • הבנת שיקולי אבטחה בפיתוח תוכנה
  • יכולת כתיבת קוד מותאם לקומפילציה מותנית
  • מיומנות בניהול גרסאות ועבודה בצוות
  • יכולת אבחון וטיפול בבעיות זמן ריצה
  • שליטה בטכניקות לניהול זיכרון דינמי
  • הבנת עקרונות של Compile-Time Programming
  • יכולת פיתוח ממשקים גנריים וגמישים
  • שליטה בטכניקות Variadic Templates ויישומן
  • הבנת עקרונות SFINAE ומטא-תכנות מתקדם
  • יכולת אופטימיזציה של תבניות ומניעת code bloat
  • שליטה בטכניקות מודרניות לטיפול בשגיאות ו-error handling
  • הבנת מנגנוני הקומפילציה והלינקינג המודרניים

מבנה הקורס

פרק 1

Basic Classes

פרק 2

Dynamic Allocation

פרק 3

References

פרק 4

Copy Constructor

פרק 5

Streams

פרק 6

Files Input & Output

פרק 7

Strings

פרק 8

Static Functions & Variables

פרק 9

Friend Functions & Friend Classes

פרק 10

This Pointer

פרק 11

Operator Overloading

פרק 12

Composition

פרק 13

Inheritance

פרק 14

Virtual Function Polymorphism

פרק 15

Multiple Inheritance

פרק 16

Pure Virtual Functions & ADT

פרק 17

Runtime Type Identification

פרק 18

Errors & Exceptions

פרק 19

Design Patterns

פרק 20

STL standard Template Library

פרק 21

Vectors

פרק 22

Iterators

פרק 23

Templates

פרק 24

Smart Pointers

פרק 25

C++ for Real-Time Embedded Systems

Head of the department
teacher-image-בני-כהן

על המרצה

בני כהן

מנכ"ל ומייסד Real Time Group

  • בעל תואר שני M.Sc בהנדסת תקשורת.
  • תואר ראשון (BScTE) בהנדסת אלקטרוניקה.
  • מרצה וראש תחום קורס Real Time Embedded ב-RT-Group.
  • בעל ניסיון של מעל 20 שנה בפיתוח והדרכת מערכות RT Embedded Linux לחברות Enterprise, הביטחוניות ו- Startups המובילות בעולם.

מה מספרים בוגרי המכללה?

הכשרת הייטק עם לימודי ++C

תשובות לשאלות נפוצות

מהם תנאי הקבלה לקורס ++C?

אנגלית ברמה בינונית, ידע בסיסי בעבודה מול מחשב וראיון ידע מקצועי. '

close

באילו חברות ותפקידים ניתן להשתלב לאחר קורס ++C?

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

close

מדוע כדאי ללמוד שפת ++C ב – Real Time College?

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

close

האם אתם מתחייבים להשמה לעבודה בהייטק?

ההתחייבות בעזרה להשמה מצד המכללה היא לסטודנטים שלנו אשר לומדים במסלול הכשרה מלא ובהתאם לתקנון- מחלקת השמה של RT GROUP תעזור לך בכתיבת קו'ח והכנה לראיון עבודה
יש אפשרות לפרויקט גמר במעבדות החברה בלווי אנשי מקצוע שישפר משמעותית את סיכויי השמה
צרו איתנו קשר למידע נוסף וייעוץ

close

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

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

close

איך הקורס נוגע בביצועים ואופטימיזציה?

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

close

מה הגישה לתכנות פונקציונלי ב-++C?

נחקור את האלמנטים הפונקציונליים של ++C המודרני, כולל lambdas, std::function, ו-higher-order functions. נראה איך לשלב גישה פונקציונלית בקוד מונחה עצמים ואיך זה משפר את איכות הקוד.

close

סטודנטים ללימודי ++C התעניינו גם במודולים נוספים:

© כל הזכויות שמורות Real Time Group