Max.Tech: טכנולוגיה ללא גבולות

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

טכנולוגיה ללא גבולות

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

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

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

כך השתלטה השפה של ג'אווה על תחום המחשבים

מעל 20% מהתוכנות כתובות בשפת ג'אווה ומאחוריה נמצאת השפה C עם 13% בלבד. בין החודשים אפריל 2015 ואפריל 2016 חלה עלייה של 4.8% בכמות התוכנות שנכתבו בשפה הזו, לעומת ירידה של 1.84% בשימוש בשפת התכנות C וירידה של 1.04% בשפה ++C. אלו נתונים שעולים בקנה אחד עם השאיפה לקחת חלק בלימודי JAVA ועם הביקוש לאנשי מקצוע שעוסקים בתחום.

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

על אף האמור לעיל, שפת JAVA לא נולדה בתור הצלחה גדולה. היא הפכה לשפה עילית רק בשנת 1995 וכאשר הטכנולוגיה שעליה היא מבוססת הודגמה על דפדפן נטסקייפ. היישומונים שפותחו באמצעות השפה הזו המשיכו להשתפר ובנובמבר 2006 הכריזה חברת סאן לכלול את ג'אווה תחת רישוי שונה. כך הפכה שפת התכנות JAVA לשפה וסביבה פתוחה וחופשית וזה ככל הנראה גם מה שהאיץ את הפופולאריות שלה בקרב מתכנתים.

מה מאפיין את השפה המובילה בעולם?

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

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

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