MATLAB Compiler Runtime – עכשיו באריזה קומפקטית !
אז כבר כתבתם אפליקציה מושלמת ב-MATLAB ואתם רוצים שכל העולם יוכל ליהנות ממנה בלחיצת כפתור… אבל איך? איך נדאג לשמור עליה ואיך נאפשר גם למי שאין MATLAB להשתמש בה?
בדיוק בשביל זה MathWorks פיתחו את משפחת המוצרים שנועדו לתת מענה ל-Application Deployment, ובסדרת הפוסטים הקרובה רציתי לעשות לכם סדר בתוך מגוון האפשרויות.
בפוסט זה נכיר תחילה את MATLAB Compiler, המאפשר בלחיצת כפתור לקמפל את הקוד (או הממשק הגרפי) שכתבנו ב-MATLAB לקובץ exe עצמאי, אותו נוכל לשתף:
הקוד מקומפל ביחד עם הקבצים ורכיבי MATLAB הנדרשים לצורך הרצת הקוד מאחורי הקלעים. זיהוי אותם קבצים ורכיבים נעשה אוטומטית ע"י MATLAB.
הפצת אפליקציית MATLAB בדרך זו מגלמת מספר יתרונות:
- אנו יכולים לשתף את האפליקציה שלנו מבלי לפחד שהקוד שלנו יהיה חשוף לשינויים של גורמים חיצוניים
- האפליקציה תעבוד במחשב הקצה ללא תלות האם מותקן בו MATLAB או לא
- כל הקבצים ארוזים בהורדה אחת קלה ונגישה לכולם
- בניגוד לפעם, רק רכיבי התוכנה הרלוונטיים נארזים, כך שלא בהכרח נדרש נפח אחסון
אותן ספריות MATLAB הנדרשות להרצת הקוד שלנו הן חינמיות ונקראות MATLAB Runtime. בכל פעם שהאפליקציה תרוץ היא תיגש אליהן ותטען אותן.
חשוב לשים לב: גירסת MATLAB Runtime צריכה להיות זהה לגירסה שבה קומפל קוד המקור ב-MATLAB.
כמו כן, למי שמעדיף למזער את נפח קובץ ה-exe שאותו מפיצים למשתמשי הקצה, קיימת אפשרות נוספת – ניתן לארוז את האפליקציה בלבד, ללא MATLAB Runtime, אך במקרה זה משתמשי הקצה יהיו אחראים להוריד (בחינם) מהאינטרנט התקנה הכוללת את כל ספריות ה-Runtime. החסרון המרכזי בכך הוא שיידרש נפח אחסון גדול יותר להתקנת כל הרכיבים (מכיוון שלא מבוצע dependency analysis מקדים ע"י MATLAB Compiler).
התהליך המתואר כאן הוא צורת השימוש הנפוצה ביותר בקרב משתמשי MATLAB, אך למעשה, MATLAB Compiler מאפשר גם:
- לקמפל ל-Docker Container (רלוונטי למערכת ההפעלה לינוקס בלבד) – לדוגמה מפורטת לחצו כאן
- לייצר אפליקציות מבוססות רשת (Web Apps) –על כך נרחיב בפוסטים הבאים
- לייצר תוספים ל-Excel, המבוססים על פונקציות ב-MATLAB
- לקמפל רכיבים המיועדים לרוץ על תשתיות הרצה של big data, כגון Hadoop Cluster עם מנוע Spark – לדוגמה מפורטת לחצו כאן
אם אתם כבר שואלים את עצמכם לגבי דרכים מתקדמות לתת גישה רחבה ונוחה לכלים גרפיים שכתבתם ב-MATLAB, או על חיבור אפליקציות MATLAB למערכות מחשוב ארגוניות, תשתיות מחשוב מבוזרות ועוד – המשיכו לעקוב אחרי הפוסטים הבאים בסדרה הזו!
לסרטון הדגמה קצר (כ-4 דקות) – לחצו כאן