Windows 8: איך יישום מטרו
תוכן עניינים:
- הממשק של אפליקציית מטרו: סרגלי הכלים והניווט
- מעבר לתצוגת מסך מלא
- The Metro Application Execution Model
- החסרונות: יותר מגבלות מיישומים מסורתיים
- Special Windows 8 In Depth
Windows 8 מציגה סוג חדש של יישומים, יישומים בסגנון Metro או Modern UI לפי השמות העדכניים ביותר של Microsoft. הם לא יישומים שאנחנו רגילים אליהם, לפחות לא במחשב. לכן, בפרק זה של הספיישל שלנו אנחנו הולכים להתעמק באיך היא אפליקציית מטרו וכיצד היא פועלת.
הממשק של אפליקציית מטרו: סרגלי הכלים והניווט
Internet Explorer Metro מיישם את סרגל הניווט התחתון והעליון.הקונספט המרכזי מאחורי מטרו הוא שהדבר החשוב ביותר הוא התוכן.מסיבה זו, ב-Windows 8 לאפליקציות יהיו די מעט פקדים בממשק, שיתמקדו בהצגת טקסט, וידאו, תמונות או כל דבר אחר. עם זאת, אנחנו עדיין צריכים את הפקדים, אנחנו לא יכולים להסתובב לעשות הכל עם מחוות. מסיבה זו, ליישומי Metro יש רכיבי ממשק משותפים מסוימים שעוזרים לנו לבצע משימות מסוימות: העיקרי שבהם הוא סרגל האפליקציות או סרגל הכלים.
סרגל זה מכיל את כל הפקודות שאנו יכולים להשתמש בהן בכל אחד ממסכי היישומים, והדבר החשוב ביותר בו (וההבדל העיקרי לזה של Windows Phone) הוא שהוא קונטקסטואלי, הוא הוא מסתגל למה שאנחנו עושים .
סרגל האפליקציות מוסתר כאשר אנו משתמשים באפליקציה והוא לא יופיע עד שנחלק מתחתית המסך. הסיבה? בדרך כלל אנחנו לא צריכים את הפקודות שיש, וזה פחות מעצבן אם זה מוסתר ומוציא רק כשצריך.
עם זאת, יש כמה מצבים שבהם אנחנו כן צריכים את החתך הזה. לדוגמה, כאשר אנו בוחרים מספר אלמנטים, הדבר הכי סביר הוא שנרצה לעשות איתם משהו: למחוק אותם, להוסיף אותם לתיקיה... לכן, כאשר בוחרים מספר אלמנטים, מופיע אוטומטית הסרגל התחתון, אשר יהיו הכפתורים שאתה צריך.
אפליקציית החדשות משתמשת בסרגל העליון כדי לנווט בין חלקים.אפליקציות יכולות לשלב גם סרגל ניווט עליון , המופיע כאשר מחליקים מהחלק העליון של המסך. סרגל זה מאפשר לנו לעבור למקטעים השונים של האפליקציה או לחזור אחורה אם לאפליקציה יש מערכת ניווט ליניארית.
לא כל היישומים מיישמים אותו באותו אופן: למשל, ב-Internet Explorer הוא משמש לנווט בין כרטיסיות, בחנות שלו כדי לעבור לקטעים השונים... מיקרוסופט לא כופה נפוץ עיצוב, אבל הוא מזמין שמטרת הבר הזה היא תמיד לעבור בין החלקים השונים של אפליקציה.
מעבר לתצוגת מסך מלא
Metro מביאה גם שינוי קונספט בכל הנוגע לאופן שבו אפליקציות מופיעות על המסך. כשאנחנו עובדים איתם בצורה רגילה הם יהיו מקסימליים, אבל יש לנו אפשרויות אחרות בעת ביצוען. לדוגמה, נוכל להדביק את האפליקציות לצד המסך, ותופסות רק שליש מהשטח.
זכור שזה לא רק שינוי גודל אלא גם הצגת דברים בצורה שונה ממה שהם מוצגים במסך מלא, והמפתח הוא זה שצריך ליישם את הממשק המתאים ביותר למצב הזה.
"מצד שני, אנחנו יכולים גם להריץ אפליקציות מטרו דרך הצ&39;ארמס. בוא נגיד שאנחנו צופים בחדשות ואנחנו רוצים לשתף אותה. באמצעות כפתור השיתוף בסרגל הימני נוכל לבחור אפליקציה שתפעיל דיאלוג>"
זה גם ההבדל עם יישומי שולחן עבודה. ב-Windows 7, כדי לשתף מאפליקציה אחת לאחרת אנו גוררים ושחררים (או מעתיקים והדבקים); שיטה גסה למדי מנקודת מבטו של המפתח. ב-Windows 8 זו המערכת שמאפשרת לאפליקציות לתקשר ביניהן, ובכך פותחת את הדלתות לאינטראקציות עשירות יותר.
מצד שני, מיקרוסופט סימנה הבדלים עם מערכות ניידות וטאבלטים אחרים. העובדה שיש כמה אפליקציות על המסך, למרות היותה קונספט כל כך פשוט, היא משהו שלא אנדרואיד ולא iOS עשו, וזה ממש שימושי כשיש לנו טאבלט עם מסך מספיק. זה אחד היתרונות של ווינדוס 8 בהיותה מערכת שמגיעה משולחן העבודה ולא מהנייד.
The Metro Application Execution Model
כשפותחים אפליקציה מטרו בפעם הראשונה, בוודאי העובדה שאין לה כפתור סגירה משכה את תשומת לבכם. זה משהו אופייני יותר לאפליקציה סלולרית מאשר אפליקציית Windows רגילה. אולי גם שמתם לב שכשהאפליקציה לא על המסך היא לא עושה כלום, היא נשארת קפואה.
הבדלים אלה נותנים לנו את שלושת המצבים האפשריים של אפליקציית מטרו: פועל, מושעה ועוצר (Not Running). כאשר אנו מפעילים את האפליקציה לראשונה, היא עוברת למצב ריצה שבו אנו יכולים לקיים איתה אינטראקציה. אם נעבור לאפליקציה אחרת, המצב הופך להיות מושעה: Windows שומר את מצב האפליקציה בזיכרון אבל משהה את כל התהליכים שפועלים בו .
"בכל פעם שאתה רואה מסך התנעה>זה אחד הדברים החשובים ביותר: בעוד שאפליקציה רגילה עדיין תפעל בצורה ממוזערת, אפליקציית Metro לא. יש לזה כמה יתרונות, בעיקר צריכת CPU נמוכה יותר; אבל גם לא נוח: אנחנו לא יכולים לתת לתהליך לרוץ ברקע והאפליקציה לא יכולה להתקשר אלינו> "כל עוד היישום מושעה ויש זיכרון, Windows ימשיך לשמור את מצבו. כאשר תחזור אליו על ידי שינוי יישומים או לחיצה על הסמל שלו שוב, הוא יופעל מחדש וישחזר את מצבו הקודם. אם, לעומת זאת, אין מספיק זיכרון RAM, ווינדוס יסגור את האפליקציה לחלוטין. כאשר תפעיל אותו שוב, הוא לא ישחזר את מצבו באופן אוטומטי ויפעל מההתחלה, אלא אם המפתח תכנת אותו לשמור נתוני שחזור בעת הכיבוי.
כפי שניתן לראות, זהו דגם אופייני יותר לנייד מאשר למחשב, והוא כרוך גם בשינוי מנטליות בשימוש ביישומים אלו.אין צורך להרוג יישומי מטרו כאשר יש לך אפליקציות רבות במחשב כי המערכת כבר עושה זאת אוטומטית.
"אנחנו גם לא צריכים לדאוג לגבי סגירת אפליקציה כשנסיים להשתמש בה. ראשית, מכיוון שמנקודת המבט שלנו יישום מושעה אינו פוגע במשאבי המערכת, אין שום דבר רע בלהשאיר אותו שם. ושנית, כי אנחנו אפילו לא יכולים לעשות את זה: אין סוג של אפשרות לצאת, אפילו לא לחיצה רציפה על כפתור החזרה כמו ב-Windows Phone."
החסרונות: יותר מגבלות מיישומים מסורתיים
חנות Windows מאלצת אפליקציות Metro לעמוד בדרישות מסוימות של אפליקציה: הפרה אחת והן ידחו את האפליקציה.כפי שאמרתי קודם, יישומי מטרו מביאים הרבה מושגים מעניינים לנייד. למרבה הצער, הם מגיעים גם עם מגבלות שמפתחים צריכים לעמוד בהן, לפעמים בגלל שה-WinRT API לא נותן להם ברירה, ולפעמים בגלל שהם לא יקבלו אפליקציות בחנות Windows Phone.
הראשון הוא אופן הפצת האפליקציות. הם חייבים להיות כלולים בחבילת היישום, הם לא יכולים להוריד רכיבי הפעלה נוספים כדי לעבוד. זה אומר שאין שימוש במסגרות כמו Java, ויישומים עם מספר רכיבים בינאריים (לדוגמה, הפצת LaTeX) צריכות להצליח לחבר הכל יחד בחבילה אחת, מבלי להוריד שום דבר לחלל המשתמש.
יש לנו גם הגבלות טכניות יותר על גישה לממשקי API של מערכת ברמה נמוכה. לדוגמה, לא ניתן להשתמש ב-Sockets, מה ששובר את התאימות עם ספריות קיימות רבות, וגם מונע יצירת יישומים מורכבים יותר המשדרים נתונים דרך הרשת.
Metro גם אוכפת את העובדה שיישומים מבודדים זה מזה. זה מונע יצירת מפעילי יישומים, לא ניתן לשנות את התכונות של יישומי מטרו, והם לא יכולים לתקשר אחד עם השני בדרך אחרת מלבד שיתוף קבצים... זה סוגר הרבה אפשרויות ביחס למה שיש לנו על שולחן העבודה.
וכל זה יחד עם ההגבלות שמיקרוסופט מחילה על חנות Windows: תוכן שעלול להעליב חלק, יישומי אבטחה שניתן לזהות כתוכנות זדוניות... אם יימצא משהו בתהליך הבדיקה שמפר את הכללים, האפליקציה תידחה ולא תגיע למשתמשים עד לתיקון הבאגים.
הגבלות אלו תומכות ברעיון שיישומי Metro לא ישמשו לעבודה רצינית במחשב. באופן אישי, אני לא לגמרי מסכים (עם אפליקציית מטרו אפשר ליצור עיצוב UML לאפליקציה מורכבת, למשל), אבל זה נכון שהם לא הולכים להיות אפליקציות עם אפשרויות רבות כמו שולחן העבודה .
מצד שני, מכיוון שמדובר באפליקציות פשוטות יותר ועם פונקציות סגורות יותר, יהיה הרבה יותר קל למשתמשים להשתמש בהן. עיקר העניין הוא למצוא איזון בין ממשק והתנהגויות משותפים לבין החופש שניתן למפתחים, ולדעתי מיקרוסופט הצליחה למצוא את הנקודה המתוקה עם אפליקציות המטרו.