קופון 20% הנחה עד מחר | EDUCA20 (ללא שום סיכון) נגמר בעוד

:
**מוגבל ל-20 קופונים
X
איזו שפת תכנות כדאי ללמוד

איזו שפת תכנות כדאי ללמוד

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

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

 

אז איזה שפות תכנות מומלץ ללמוד ?

קוראים לי ליאור ואני בתחום משנת 2013 אני מתכנת אתרים ומערכות חכמות בסביבת דוט-נט ובשפה המקצועית אפשר לקרוא לי Dotnet Full stack developer כיום יש שפות תכנות שהם עליות ושפות תכנות שהם תחתונות (קרובות למעבד (assembly. לא משנה אם אתם רוצים לכתוב קוד כתחביב או בצורה מקצועית אתם תצטרכו לבחור בשפת תכנות.

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

C#

C++

Java

Python

Javascript

PHP

שפות תחתיות – Low level
כשמה כן היא שפה תחתונה שקרובה יותר למעבד וניתנת להמרה לשפת מכונה מבלי להשתמש במהדר(קומפיילר – כלי שממיר את הקוד למכונה בגדול) ובגלל זה היא רצה הרבה יותר מהר והשימוש בזיכרון הוא קטן יותר. דוגמאות לשפות תכנות "נמוכות":

c language

Assembler

Pascal

 

מתי נכתוב בשפה תכנות נמוכה ?

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

 

אוקי אז אם שפת תכנות עילית ,אז איזו מהם ?

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

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

שפת תכנות Java - זוהי השפת תכנות עם הכי הרבה משתמשים. ג'אבה שעליה אחראית חברת Oracle שהיא טוענת ש 3 ביליון (!) מכשירים רצים על ג'אווה. ורוב הנתח כמובן מגיע ממובייל. Java היא השפה הרשמית של אנדרואיד וניתן לבנות עליה אפליקציות למובייל. וגם אתרי אינטרנט וגם לבנות אפליקציות שולחניות ע"י טכנולוגיות כמו סווינג.

שפת התכנות C# - זוהי השפה שמייקרוסופט פיתחה כבר מ 2002. היום היא כבר בגרסה 8 שנותנת לנו המון כוח וקיצורים לכתיבת קוד נוחים יותר. סביבת העבודה שלה הינה Visual studio שרצה על חלונות ווינדוס. בשנים האחרונות מיקרוסופט פיתחו סביבת עבודה בשם Visual studio code והיא תומכת מ mac וגם ב לינוקס למי שאין מערכת הפעלה של ווינדוס שזה קפיצת מדרגה ענקית.
את סביבת העבודה של visual studio אני אישית מחשיב אותה לטובה ביותר והיא נוחה לעבודה. וניתן לבנות בה המון סוגי אפליקציות כמו אתרי אינטרנט , API , אפליקציות שולחניות, אפליקציית קונסול ועוד המון סוגי אפליקציות.

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

שפת התכנות Python - שפה מאוד מהירה בזכות דרך הידור מהיר(Interpreter). בנוסף היא מוכרת לנו המון בזכות תחום הכרית מידע data science שבו אנו מעבדים מידע בעזרת למידת מכונה ML – Machine Learning ובונים מודלים ומנתחים מידע. זהו תחום מאוד מעניין וניתן ליצור מודלים לניחוש מידע עתידי כמו מה יהיה המזג האוויר בזמן הקרוב או בתחום הרופאה לזהות תבניות של התנהגות הגוף,אפילו בבורסה לנחש מניות האם הם יעלו או ירדו. זהו תחום מאוד מעניין בפני עצמו.

כמובן שיש עוד כמו שפות עליות אבל את הפופולאריות הזכרנו במאמר זה.

 

 

 

 

 

איזו שפת תכנות הכי טובה

אפליקציות Web – אתרי אינטרנט

בעולם שלי לדוגמא אני עובד בסביבת Web שזה אומר שרת ולקוח ( בגדול אתרי אינטרנט).
לקוח – מי שצורך ומבקש את המידע מהאינטרנט, לדוגמא אני הלקוח (דפדפן מסוים) ואני רוצה לקבל מגוגל תוצאת דף חיפוש ולכן אני הלקוח(הדפדפן) מבקש תוצאות חיפוש מהשרת של גוגל במקרה הזה ע"י פניית Http get פשוטה מהדפדפן שלי לשרת של גוגל כך : https://www.google.com/search?q=best+car

שרת - זהו מחשב רגיל שמקבל את הבקשה שלנו ויודע להביא לנו דף תוצאות על פי הכתובת שהזנו אליו (בקשה). המידע שחוזר מהשרת מגיע בצורה שהלקוח(דפדפן) יכול להבין בשפתו:Html ,css, javascript כלומר הוא יחזיר דף Html כתשובה.

זוהי הארכיטקטורה הבסיסית שעליה אנו עובדים מדי יום מבלי להיכנס לפרוטוקולים של אבטחה וכדומה. עוד דוגמא: כאשר אני גולש באתר ומחפש לדוגמא מחשב נייד באתר "זאפ" אז אני מבקש מהשרת את הדף לפי הפילטרים שבחרתי בדף (ממחיר עד מחיר וכו..). השרת מקבל את מקבל את הבקשה, מעבד אותה ומחזיר לנו דף של אינטרנט. הדפדפן שלנו מבין את השפות Html,Css,Javascirpt וזהו בקצרה על האינטרנט, יש המון ללמוד ואפשר לכתוב רק על הנושא הזה כמה מאמרים טובים.

 

לימוד תכנות מאפס אנגולר

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

Angular -
פותחה ע"י גוגל וזוהי סביבת עבודה ליצור אתר אינטרנט ע"י Typescirpt מאפשרת לנו לנהל דפים וקומפוננטות באתר שאנו בונים. קרוב ל – 3.6 מיליון אתרים פותחו ע"י אנגולר ביניהם:
Papypal,Google.org,Forbes,Autodesk,indiegogo,UPS,CrunchBase

React -
פותח ע"י פייסבוק ונהפכה ליותר ויותר פופולארית בשנים האחרונות עקב הגמישות שלה ועוד כמה דברים שנוספו.
Facebook,Dropbox,Tesla,Airbnb,Netflix,Reddit,

Vue -
פותחה בתחילת 2014 ,זוהי הטכנולוגיה החדשה ביותר מבין השלשה והיא שילוב של כל הפיצ'רים הטובים של שניהם ובעצם בטווח הארוך כנראה שבתוך 5 שנים היא תהיה המובילה בנישה הזו.

 

לסיכום שפות תכנות

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

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

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

 

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

ליאור כבאזה

קורס ג'אבה - Java בסיסי למתחילים

מאמרים אחרונים