לקראת WWDC 2016: מה צפוי ל-iCloud ול-CloudKit

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

הזמנת Swift של אפל ל-WWDC 2016

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

WWDCעוסק כולו בתוכנה, שכן מדובר בפגישה השנתית של החברה עם מפתחי אפליקציות, שותפים לאביזרים ואחרים שמתממשקים עם ממשקי ה-API של הפלטפורמה של אפל. בעוד שהחברה מציגה מדי פעם לראשונה חומרה חדשה ב-WWDC, בשנים האחרונות האירוע התמקד כמעט לחלוטין במהדורות תוכנה חדשות (iOS, Mac OS, watchOS ו-iCloud) ובדרכים שמפתחים יכולים להפיק את המרב מהפלטפורמות של אפל.

אפל, מאוחר לענן

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

אפל איחרה לסמארטפונים עד שהאייפון הפך כמעט מיד לסמארטפון הפופולרי ביותר בעולם. אפל איחרה להעריך משחקי וידאו, לפני ש-iOS הפכה לפלטפורמה בת-קיימא הגדולה בעולם החדש של המשחקים הניידים. אפל איחרה לתשלומי NFC ולשעונים חכמים, עד ש-Apple Pay ו-Apple Watch הפכו את החברה למובילת תשלומים וציוד לביש.

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

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

אפל הציגה Photo Stream, Apps/iBooks/iTunes בענן ומסמכים ונתונים, שלוש יוזמות חדשות שהדגישו את הפשטות באופן שבו משתמשים יכולים ליצור אינטראקציה עם אחסון בענן. כשזה עבד, "זה פשוט עבד".

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

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

בשנת 2013 - באותה שנה iCloud הפך ל-שירות המדיה בענן הנפוץ ביותרעל ידי צרכנים אמריקאים - אפל הביאה את זהאפליקציות iWorkל-iCloud, ובעקבותיותכונות עריכה משותפות.

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

החברה הציגה גםכונן iCloud(להלן) להעתקה ידנית של קבצים ל-iCloud ב-iOS וב-Mac.

לאחר שחשבונות מפורסמים נוצלו על ידי גנבי סיסמאות, אפל הציגהאימות שני גורמיםעבור iCloud שדרש אימות של שינויי סיסמה באמצעות מכשיר מוכר.

CloudKit עובר בין פלטפורמות, לצד השרת

ה-CloudKit של אפל מטפל במשימות צד שרת עבור מפתחים, דואג לפרטים הנדרשים לאחסון ועדכון נתוני משתמש, שאליהם ניתן לגשת לאחר מכן ממכשירים אחרים (Mac או iOS) או מפלטפורמות אחרות (כולל אפליקציות אינטרנט, Windows, Android או Mac שאינם נמצאים ב-App Store) באמצעות CloudKit API החדש של אפל מבוסס JavaScript (CloudKit JS) שהוצג בשנה שעברה.

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

CloudKit היא פלטפורמה חשובה מבחינה אסטרטגית עבור אפל. זה בעצם מגדיר קיבולת שרת למפתחים להשתמש בהם - כמעט בחינם - והוא בנה את הכלים לשמירה על אבטחת הנתונים של המשתמשים ועדכניים (כך שאם משתמש מעדכן דברים באפליקציה אחת, אפליקציות במכשיר אחר יקבלו הודעה על לְשַׁנוֹת). זה מעודד מפתחים לבנות אפליקציות שיכולות לעבוד בצורה חלקה על פני מספר מכשירים.

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

בעוד שאפל חוותה הפסקות שירות זמניות מדי פעם - כפי שקרה זה עתהאֶתמוֹל- יש לו את היכולת לטפל במהירות בבעיות ולהחזיר שירותים לאינטרנט בדרכים (ועם משאבים) שאין למפתחים קטנים יותר.

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

חנות אפליקציות CloudKit

אתר האינטרנט של אפל iCloud מוגבל כרגע ליישומי האינטרנט של iCloud משלה (כגון דואר, לוח שנה, תזכורות, הערות ומצא את האייפון שלי), אבל עם העבודה שהיא השקיעה בפיתוח אלה - כמו גם CloudKit - נראה שכן. הנחת היסוד ל-App Store עבור אפליקציות ושירותי אינטרנט.פתיחת מסגרות הפיתוח שבה השתמשה ליצירת iWork ויישומים מבוססי נתונים אחרים שלה כמו Notes, אפל יכולה לאפשר למפתחי צד שלישי לארח את יישומי האינטרנט שלהם ב-iCloud

על ידי פתיחת מסגרות הפיתוח שבהן השתמשה ליצירת iWork ויישומים מבוססי נתונים אחרים שלה כמו Notes (שיש לו לקוח אינטרנט המבוסס על CloudKit JS), זה יכול לאפשר למפתחי צד שלישי לארח את יישומי האינטרנט שלהם ב-iCloud, ולספק למשתמשים דפדפן גישה לנתוני iCloud שלהם.

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

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

תכונה נוספת שחסרה כרגע ב-CloudKit היא היכולת להזרים נתונים, כמו וידאו. בעוד שניתן לאחסן וידאו ב-CloudKit, כדי להפעיל אותו המשתמש צריך להוריד אותו תחילה. היכולת לאחסן מדיה גדולה ולהזרים רק את החלק שנצפה בו (תכונת ליבה של HTTP Live Streaming של אפל) תפתח את הערך של CloudKit לשימושים רחבים יותר, מה שעשוי להפוך אותו לשימושי למפתחים ב-Apple TV.

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

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

בכיוון השני, כדי שמשתמשים יוכלו להיכנס לאתר או לשירות אינטרנט של מפתחים (כולל שירותים רבים ב-Apple TV) הם צריכים להגדיר חשבון עבור כל אחד מהם.לְצַפְצֵףופייסבוקלספק שירותי OAuth כדי לספק התחברות אוניברסלית עבור סוגים אלה של בקשות, אך Apple ID יכול לספק דרך חלקה יותר להתחבר, מבלי לחשוף את ההיסטוריה של המשתמש של אינטראקציות או אנשי קשר במדיה חברתית. שימוש ב-Apple ID יחייב שהמשתמשים יפעילו את iCloud, אבל זה גם ייתן להם תמריץ נוסף להפעיל אותו בטלפון שלהם.

התחברות של Digits tvOS של Twitter

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

ה-WWDC של החודש הבא יספק גם מידע נוסף של אפלמק,Apple WatchוiOS, וApple TVפלטפורמות. ספר לנו מה אתה חושב על העתיד של iCloud ו-CloudKit בתגובות למטה.