Mac Catalyst

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


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

פיתוח לפני Mac Catalyst

Xcodeהיא סביבת פיתוח שתוכננה במיוחד עבור Mac לבניית אפליקציות לכל המכשירים מבוססי Apple. בתוך חלון סביבת עבודה בודד, מפתחים יכולים לערוך קוד, לנהל נכסים, ליצור את הממשק, לבדוק את האפליקציה שלהם ולבצע ניפוי באגים. הוא תומך ב-10 שפות תכנות, כולל Objective-C, Java ומָהִיר.

סביבת Xcode פועלת על MacBook Pro

לפני 2019, מפתחים השתמשו בשתי מסגרות שונות של ממשק משתמש בתוך Xcode כדי לעצב אפליקציות עבור מכשירי אפל: UIKit עבור iPhone/iPad ו-AppKit עבור מחשבי Mac. ל- UIKit היו שיעורים ובקרים שנבנו למגע וכללו אתiOSSDK. AppKit סיפק את כל האלמנטים עבור ממשק שולחן העבודה וכללה אתmacOSSDK.

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

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

היכנסו ל-Mac Catalyst

כדי לפתור בעיה זו, אפל החלה לעבוד על פרויקט פנימי כדי לעזור למזג פיתוח לחוויה מאוחדת אחת. Project Marzipan הופיע לראשונה עם macOS Mojave ב-2018, והביא אפליקציות מקוריות כמו חדשות, בית, מניות ותזכירים קוליים מה-iPad ל-Mac. אפל הציגה גם חנות Mac App Store שעוצבה מחדש, מה שמעיד על שינוי משמעותי בחוויית האפליקציה המקורית של Mac.

עִםmacOS Catalinaבשנת 2019, אפל הוסיפה תמיכה עבור UIKit. Mac Catalyst, שנקרא בעבר Project Catalyst, מאפשר למפתחים להשתמש במסגרת ממשק משתמש אחת בכל מכשירי אפל. במקביל, אפל הציגה גם את SwiftUI, מסגרת ממשק משתמש חדשה, כדי להפוך את פיתוח האפליקציות האוניברסליות לקל עוד יותר קדימה. אפל מציעה להשתמש בשפת התכנות המותאמת אישית שלה Swift ומספקת אתSwift Playgroundsאפליקציה כדי לעזור למפתחים להכיר יותר את השפה הזו.

אפליקציות Mac Catalyst ידועות מתוצרת אפל

להלן האפליקציות שפותחה על ידי אפל שנכללות תחת הבאנר של Mac Catalyst:

כתוצאה מכך, טוויטר חזר ל-Mac App Store יחד עםאספלט 9: אגדות, Post-It, Rosetta Stone ועוד. Apple Music ו-Apple TV עשו את הופעת הבכורה שלהם גם כן, והחליפו את iTunes.

Xcode כולל כעת תיבת סימון להוספת תמיכה ב-Mac.

כדי לתמוך ב-Mac, מפתחים יכולים כעת לטעון את הפרויקט שלהם ב-Xcode 11 ואילך, בחר את הפרויקט תחת 'יעדים', לחץ על הכרטיסייה 'כללי' ולאחר מכן סמן את 'Mac' המופיע בקטע 'פרטי פריסה'. ישנן עוד כמה הגדרות לבדיקה וכן התאמות ידניות אפשריות כדי להדר כהלכה אפליקציית Mac.

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

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

לבסוף, כל אפליקציות Catalyst יאמצו את העיצוב החזותי החדש שלmacOS Big Sur. העדכון מביא ממשקי API של חלון חדש לכרטיסיית חלונות שליטה, תמיכה בחלונות קופצים מחוץ לחלון וניתנים להסרה, שליטה מלאה באפליקציה באמצעות מקלדת, מסגרות חדשות ומעודכנות כמו ClassKit ו-GameKit, תמיכה ב-HomeKit ועוד.

המעבר לאפל סיליקון ו-Mac Catalyst

כפי שעשתה לפני שנים, כאשר עברה מ-PowerPC למעבדים מבוססי אינטל, אפל חשפה ב-2020 שהיא עוברת ל-In-house.אפל סיליקון, המבוסס על ארכיטקטורת ARM, עבור מחשבי Mac. החברה השיקה מחשבי Mac חדשים בסוף 2020 - אMacBook Pro בגודל 13 אינץ',MacBook Air, ומק מיני- מפעיל את החדש שלושבב M1. עם מעבר כה משמעותי, פירוש הדבר היה שהחברה צריכה לספק אמצעים לכל האפליקציות להישאר מקוריות על ידי חזרה לפורמט השומן-בינארי.

העברת אפליקציות iPad למחשבי Mac היא כעת אפילו קלה יותר.

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

בשנת 2005, Xcode 2.1 הציג את האמצעים ליצור אפליקציות שתמכו בשתי ארכיטקטורות CPU שונות. במחשבי Mac ישנים יותר, גרסה אחת הורכבה עבור מעבדי PowerPC ואחת עבור שבבי אינטל (x86).

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

בשנת 2009, Xcode 2.4 הוסיף תמיכה עבור ארבעה עיצובים: 32 סיביות ו-64 סיביות PowerPC, ו-32 סיביות ו-64 סיביות אינטל.

כמו בעבר, תיק ה-Mac של אפל בעתיד יתבסס על שתי ארכיטקטורות CPU, הדורשות שתי יישומים מהודרים בתוך קובץ הפעלה אחד: אחד מבוסס על arm64 (64 סיביות ARM) ואחד מבוסס על x86_64 (64 סיביות אינטל). במקרה זה, מפתחים זקוקים ל-Xcode 12, שמוסיף את arm64 לרשימת הבנייה.

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

כדי לעזור למפתחים, אפל מספקת את ערכת המעבר למפתחים (DTK) המבוססת על A12Z Bionic System on a Chip (SoC). אפליקציות שפותחו עבור האייפון והאייפד יפעלו באופן מקורי במחשבים עם Apple Silicon, אם כי מפרסמי אפליקציות יכולים לבטל את הסכמתם לספק אותם ב-App Store. מפתחים עדיין יכולים להשתמש ב-Mac Catalyst כדי לגרום לאפליקציות שלהם להרגיש יותר מקוריות ב-Mac.

Mac Catalyst כמחסום

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