יישום ה Windows Phone 7 הראשון שלי

2 במאי 2010

אין תגובות

זה לא חכמה לדבר על הפוטנציאל העיסקי של  Windows Phone 7 ועל תהליכי הפיתוח של יישום ל Windows Phone 7, מבלי ללכלך קצת את הידיים. אז הורדתי את ה CTP החינמי שלו והתחלתי לשחק.

אני תמיד נוהג להתקין מערכות CTP על מכונות וירטואליות, אז ניסיתי, ה Virtual PC עבד נוראאאאאאא לאאאאאאאט. ובשניה שעשיתי Run ליישום הראשון שלי, הוא קרס עםן מסך כחול וקוד 12. זו פעם ראשונה שנתקלתי במסך כחול קוד 12, ומסתבר שזה Trap בלתי צפוי בגרעין מערכת ההפעלה. חקרתי קצת את ה Dump והגעתי למסקנה שזה חסר סיכוי, ועברתי ל Plan B.

למי שלא יודע יש חברה קטנה ובלתי ידועה, שמייצרת מוצר שדומה קצת ביכולות שלו ל Virtual PC 2007. ואני לא מתכוון ל Virtual Box של אורקל, אלא למשהו פחות מוכר, ה workstation של VmWare.

הסיבה שישי לי בכלל עותק (בתשלום) של המוצר הזה, נובעת מבעיה קטנה שהתעוררה לי עם מערכות ההפעלה של מיקרוסופט. אני עושה המון הדגמות ומחקרים כחלק מעבודתי השוטפת. לצורך זה אני משתמש המון במכונות וירטואליות. ה Windows Server 2008 R2 עובד רק בגירסת 64 ביט. מצד שני, למרבה ההפתעה, ה Virtual PC 2007, וגם הדגם המודרני יותר שלו עבור Windows 7, אינם תומכים במערכות הפעלה של 64 ביט. מה שאומר שכדי להריץ על מכונה וירטואלית, את Windows Server 2008 R2, אני צריך ללכת למתחרה. מה שנקרא יופי נחמה.

אז ניסיתי להתקין את סביבת הפיתוח על ה"עותק בתשלום של המוצר הדומה", התקנתי אותה על מכונה וירטואלית עם Windows 7 64 Bit, עם שני יע"מים (אה, כן, שכחתי לגמרי, במוצר המתחרה גם ניתן להגדיר יותר מיע"מ אחד, קלאסי להדגמות של Parallel) ולמרבה ההפתעה לא קיבלתי מסך כחול אבל זה עדיין רץ נוראא לאאט (כמות האלפים היא פרופורציונאלית לביצועים).

הסיבה לכך שהכל רץ לאט על מכונות וירטואליות, זה בגלל שגם הסימולטור של ה Windows Phone 7 וגם שאר סביבת הפיתוח, משתמשים המון ב GPU על מנת לייצר גרפיקה איכותית. ל Virtual PC אין בכלל תמיכה ב GPU ול VmWare Workstation יש קצת והם מדברים על תמיכה טובה יותר ב GPU בגירסא 7 החדשה שאותה ולא הספקתי לבדוק עדיין. בכל מקרה, מסקנה ראשונה מכל הנסיונות האלה, אם אתה רוצה לפתח יישום של Windows Phone 7 על מכונה וירטואלית, לפחות בשלב הנוכחי של טכנולוגית הוירטואליזציה השולחנית, תשכח מזה.

אז עברתי ל Plan C. התקנתי התקנה נקיה של Windows 7 64 bit על מכונת הנסיונות המשנית שלי (זו עם ה 4 יע"מים) ועליה התקנתי את מערכת הפיתוח, והכל רץ במהירות סבירה.

אז לאחר שהכל עבד, התחלתי קודם כל בחקירת ה Windows Phone 7. כמובן שאין לי מכשיר אמיתי, אפילו להחזיק ביד אחד כזה, החברה של מיקרוסופט R&D, סרבו לתת לי ב Think Next 2010. אבל יש אמולטור. אז הפעלתי את האמולטור סתם ככה (יש לו אוסף פרמטרי הפעלה מרשים, אבל זה בפוסט אחר איל"ז). הישום היחידי שיש שם מהיצרן הוא ה IE. אז כמובן שגלשתי לראות איך אני נראה על ה Windows Pone 7, אז אני נראה ככה:

wp7ie

אני לא יודע אם מישהו שם לב, אבל משהו לא בסדר פה עם העברית, הכל יוצא הפוך. זה נראה לי מוזר כי הרי בהכרזה אמרו במפורש שיש תמיכה מלאה ב RTL. אז הלכתי לפרמטרים של הטלפון ובדקתי איזה Locals נתמכים. מצאתי אזבקיסטן ואפילו את זמביה, ומה לא מצאתי (תנחשו) לא עברית ולא ערבית ולא אף שפה אחרת שתומכת ב RTL. טוב, אז מי שרוצה לפתח משהו בעברית, יצטרך לחכות (אי"ה) לגירסא הבאה של האמולטור.

טוב אז לא התיאשתי ועשיתי את ה Hello World הרגיל, וזה עבד בלי בעיות במכה ראשונה והנה ההוכחה:

wp7firstapp

יש לי עוד הרבה מה לספר לכם על פיתוח ב Windows Phone 7, זו מערכת מאד מענינת מבחינת יכולות. והשילוב של SilverLight ו XNA Game Studio וכמה צעצועים נוספים (Expression Blend חינמי). הופכים את הפיתוח ל Windows Phone 7 לנושא שדורש לימוד. לא בגלל שהוא קשה, אלא בגלל שמרוב אפשרויות, הבחירה של האפשרות הנכונה, המתאימה, והטובה ביותר, ממגוון האפשרויות הרחב, הופכת להיות החלק החשוב יותר התהליך.

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

הוסף תגובה
facebook linkedin twitter email

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *