מושגי יסוד

סגור באמצעות טופס זה תוכלו לספר ולהמליץ לחבריכם..
שם השולח:
כתובת דוא"ל של השולח:
שם המקבל:
שלח לכתובת דוא"ל:
הוסף הערה:
פיתוח אפליקציות אסינכרוניות ב- Windows 10 מושגי יסוד מה זה פלטפורמה (Platform) מה זה תשתית תוכנה (Framework)? מה הקשר בין תשתית תוכנה לשפת תכנות? מה זה Cross Platform?
פיתוח אפליקציות אסינכרוניות ב- Windows 10 מושגי יסוד
 

מאת: ארז קלר
 
מה זה אפליקציה (יישום)?
אפליקציה היא תוכנית מחשב או קבוצה של תוכניות מחשב אשר מיועדות עבור משתמש הקצה.
אפליקציות ניתן לחלק לשתי קבוצות כלליות:
תוכנות מערכת – תוכנות לניהול משאבי המחשב, כמו ניקוי זיכרון, אופטימיזציה של תהליכים שרצים על המחשב, ניהול משאבי סוללה ועוד.
תוכנות יישומים - יישומי תוכנה כגון: מעבדי תמלילים, דפדפני אינטרנט, גיליונות אלקטרוניים, משחקים ועוד.
אפליקציה מיועדת לבצע דבר ספציפי עבור המשתמש או במקרים מסוימים עבור אפליקציה אחרת.
 
מה זה פלטפורמה (Platform)
פלטפורמה הנה אוסף של טכנולוגיות המשמשות כבסיס לפיתוח אפליקציות או מערכות תוכנה.
המושג פלטפורמה מתייחס לעיקר לחומרה הבסיסית (בעיקר מעבד- CPU) ולמערכת ההפעלה שמנהלת את החומרה.
לעיתים המושג פלטפורמה מגדיר גם את כלי הפיתוח שמשתמשים בהם על מנת לפתח את האפליקציה.
הפלטפורמה מגדירה סטנדרט שעליו ניתן לפתח אפליקציה או מערכות תוכנה.
ברגע הפלטפורמה הוגדרה, מפתחי תוכנה יכולים לייצר תוכנה מתאימה ומנהלים יכולים לרכוש חומרה מתאימה.
 
מה זה תשתית תוכנה (Framework)?
שלד תוכנה או בסיס תוכנה שעליו מתבססים בפיתוח אפליקציות.
התשתית מספקת בסיס המורכב מאוסף גדול של מחלקות, ממשקים שמתכנתים מתבססים עליו בפיתוח אפליקציות עבור פלטפורמה מסוימת.
לדוגמה, תשתית יכולה להכיל מראש מחלקות ומתודות שיטפלו בקלט, בהצגה של פקדים ורכיבים גרפיים אחרים, בתקשורת, בניהול קבצים, גישה למסדי נתונים, אבטחה, ניהול התקני חומרה, אינטראקציה עם מערכת ההפעלה.
השימוש בתשתית תוכנה מייעל ומקצר את תהליך הפיתוח.
מתכנתים לא צריכים להמציא את הגלגל מחדש בכל פעם שהם מפתחים אפליקציה חדשה.
אמינות של המערכת.
קיימות הרבה מאוד תשתיות תוכנה, לדוגמה:
.NET Framework – לפיתוח תוכנות למחשבי PC ושרתים המריצים מערכת ההפעלה Windows.
Java JDK – תשתית לפיתוח תוכנות Cross Platform.
Cocoa Touch – לפיתוח אפליקציות לאיפון.
Android Application Framework – לפיתוח אפליקציות לאנדרואיד.
Phone Gap – תשתית Cross Platform לפיתוח אפליקציות.
DirectX – תשתית לפיתוח משחקים תלת ממדיים למערכת ההפעלה Windows.
OpenGL – תשתית לפיתוח משחקים תלת ממדיים.
 
מה הקשר בין תשתית תוכנה לשפת תכנות?
כל תשתית תוכנה (Framework) תומכת בשפת תכנות ספציפית.
בשביל לפתח ב-JDK צריך לפתח ב-Java.
בשביל לפתח ב-Touch Cocoa צריך לפתח בשפת C.
בשביל לפתח ב- Phone Gap יש להכיר HTML ו-Java Script.
DirectX – דורשת הכרות עם C++.
.NET Framework היא יוצאת מן הכלל כי היא מאפשרת פיתוח במספר שפות: C#, VB.NET, C++, F#.
 
מה זה Cross Platform?
יכולת של שפת תכנות (כמו Java או C#) ותשתית תוכנה לרוץ על מספר פלטפורמות חומרה.
מאפשרת לכתוב תוכנה פעם אחת בלבד ולהריץ אותה ללא שינוי (או עם שינויים קטנים ונקודתיים) על מספר פלטפורמות.
שפת Java והתשתית Java JDK הם Cross Platform – ניתן להריץ אפליקציות שנכתבו בהם במחשבים המריצים  Windows, Linux או Mac IOS.
שפת C# ו- .NET Core הם Cross Platform - ניתן להריץ אפליקציות שנכתבו בהם במחשבים המריצים  Windows, Linux או Mac IOS על טלפונים סלולאריים, טאבלטים ואפילו כרטיסים למייקרים כמו Raspberry PI ו-Arduino. (.NET Core  זה גרסת ה- Cross Platform של .NET Framework)
לסיכום
אנחנו נפתח אפליקציות בתשתית תוכנה הנקראת .NET Core בשפת C#.
האפליקציות שנכתוב יהיו Cross Platform כי הן יוכלו לרוץ על מגוון רחב מאוד של חומרות שמריצות Windows 10: מחשבי PC, טאבלטים, טלפונים חכמים, שעונים, משקפי מציאות מדומה, קונסולת משחקים, רספברי פיי, ארדואינו ......