Symbian? Yes we can

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

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

הגדולה מכולן

שלוש מערכות ההפעלה המובילות את שוק המכשירים החכמים הן iOS, Android ו-Symbian. ובפוסט זה אעסוק במערכת סימביאן המותקנת בין היתר במכשירים רבים הנפוצים הישראל בין היתר מתוצרת נוקיה וסוני-אריקסון. סימביאן (על כל גווניה) מותקנת נכון להיום על כ-390 מיליון טלפונים סלולריים ברחבי העולם. מבחינת יישומים, חנות OVI של נוקיה כוללת כ-6,000 אפליקציות, המורדות סך הכל כ-1.7 מיליון פעמים בכל יום.

ברור, אם כן, שהאפשרויות למפתחים ובעלי עסקים אדירות. מצד אחד חנות מקוונת לממכר אפליקציות, הנמצאת כיום בתחילת דרכה ולכן מספר האפליקציות יחסית קטן ומצד שני לקוחות הצמאים לאפליקציות ומורידים את המעט שיש בהמוניהם. כשמשווים לחנות של אפל הכוללת פי 30 יותר אפליקציות למספר מכשירים קטן בהרבה (כ-60 מיליון) ניכר היכן נקבל את החשיפה המהירה ביותר לעסק או ליישום שלנו.

סימביאן הוא שם כולל למספר גדול של סדרות וגרסאות שונות של מערכת ההפעלה, שעברה גלגולים רבים מאז תחילת דרכה בשנות ה-80. כיום שתי הסדרות המרכזיות של סימביאן (S60 ו-S40) אוחדו תחת השם Symbian^1, על גירסה 2 דילגו ובקרוב יצא הטלפון הראשון מגירסא Symbian^3 – ה-N8. סימביאן מציעה מגוון מאוד רחב של טכנולוגיות פיתוח כדי שכולם ירגישו בבית.

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

סביבות הפיתוח

QT Framework

QT (מבוטא קיוט) היא Cross Platform Framework לפיתוח אפליקציות, וקיימת מאמצע שנות ה-90 עבור מערכות ההפעלה חלונות, לינוקס ומק. בשנת 2009 רכשה נוקיה את החברה השוודית Trolltech המפתחת את QT והחלה בהסבת הטכנולוגיה לשימוש על מכשיריה הניידים.

QT מספקת רכיבי ++C לפיתוח הכוללים רכיבי ממשק משתמש, תקשורת, בסיסי נתונים, ו-WS/XML. בנוסף, על מכשירים ניידים נוקיה בנתה תוספת הנקראת Qt Mobility Pack, המאפשרת גישה לכל הרכיבים של הטלפון (כולל אנשי קשר, לוח שנה, הודעות, שיחות, שירותי מיקום ועוד). חובבי המשחקים בינינו מקבלים תמיכה מלאה ב OpenGL ES 1.1 ובגרסאות מתקדמות גם ES 2.0. אפליקציית QT שכתבנו לסימביאן ניתן לקמפל ללא שינוי קוד גם על מכשירי Windows Mobile, Maemo ו MeeGo.

בצד השלילי של הטכנולוגיה, צריך לשים לב שהספריות הדורשות הפעלה של אפליקציית QT לא מותקנות מראש היום על אף מכשיר נוקיה. המכשיר הראשון שהולך לכלול ספריות אלו הוא ה N8 שעדיין לא יצא, ומכשירי ה-MeeGo שעדיין לא יצאו. זה אומר שאפליקציית QT על מכשיר קיים מחייבת התקנה של ספריות הבסיס של QT (מדובר בספריות בגודל כ-10 מ”ב), על כל מכשיר קצה. בשביל להתמודד עם הבעייה ולעודד מפתחים, נוקיה פיתחה רכיב המכונה Qt Smart Installer. הרכיב בודק אם הספריות מותקנות, ובמידה ולא מבקש מהמשתמש רשות להתקין אותן באופן אוטומטי לפני הפעלת היישום.

  • הפצה: אפליקציות QT ניתנות להפצה ב-OVI Store של נוקיה לאחר הליך של חתימה
  • יתרונות: קל ללמידה, אינטגרציה חזקה עם מערכת ההפעלה, ניתן לשלב עם קוד סימביאן קיים, Cross Platform
  • חסרונות: דורש התקנת קבצי ספריות של QT על כל מכשיר קצה
  • מתי נבחר QT: הבחירה ב QT נכונה כאשר אנו רוצים לשדר חדשנות על חשבון פשטות התקנה למשתמשים, או כאשר רוצים להרים ממשק משתמש במהירות. ה-UI ב-QT נראה טוב, הפיתוח מהיר וקל, וניתן גם לייצר Services (ללא UI)

הנחת עבודה כיום בעת כתיבת אפליקציית QT היא שקהל היעד הוא מאמצים מוקדמים ולא הקהל הרחב.

Web Runtime

זו היא כנראה הטכנולוגיה הקלה ביותר לפיתוח אפליקציות סימביאן כיום. נוקיה, לאחר שהבינה כי דפדפן האינטרנט מהווה זירת פעילות חמה, חיזקה את הדפדפן ביכולות Javascript המאפשרות אינטגרציה עם כל רכיבי מערכת ההפעלה, והוסיפה אפשרות להתקנה לוקאלית של אפליקציות Web. התוצאה היא סביבת הרצה המאפשרת פיתוח בשפות פיתוח מוכרות (Javascript, HTML, CSS) מחד, ומאידך גישה מלאה למכשיר הסלולאר (כולל אנשי קשר, הודעות, שיחות, שירותי מיקום ועוד).

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

רכיבי Web לא דורשים חתימה, ולכן אין כל עלות נלווית ליצירתם. אם פתחתם חשבון OVI בעלות 50 אירו לשנה, תוכלו להפיץ כמה רכיבים כאלה שתרצו, ללא צורך בהליך מיוחד.

  • הפצה: ניתן להפיץ דרך חנות OVI ללא צורך בחתימה מיוחדת
  • יתרונות: התממשקות עם שירותי Web קיימים, שימוש ב-Javascript, מהירות הפיתוח, פיתוח רכיבים למסך הבית
  • חסרונות: לא מומלץ לכתוב אפליקציות low-level, מאחר ולא כל ממשקי ההתקנים (Device APIs) זמינים ב-Javascript (ניתן לפתור תוך שימוש ב-APIBridge), לא ניתן לכתוב יישומי שירות (Services, כלומר ללא ממשק משתמש)
  • מתי נבחר WRT: התאימות הגבוהה עם המכשירים, חוסר הצורך בחתימה והכתיבה המהירה בעזרת javascript הופכים טכנולוגיה זו לבחירה ראשונה עבורי לפיתוח אפליקציות מוכוונות ממשק משתמש. הטכנולוגיה עובדת טוב על טלפונים מגרסה 3.2 והלאה, ואינה דורשת התקנת ספריות נוספות

WRT היא בחירה טובה לאפליקציות שלא צריכות לרוץ ברקע או שמבוססות על שירותי רשת קיימים.

++Symbian C

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

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

תהליך החתימה של ישומי ++C תלוי במידת ההרשאות שהאפליקציה דורשת (שזה נקבע לפי איזה APIs אנחנו משתמשים). במקרים פשוטים הבדיקה והחתימה עולות כ-15 אירו ליישום, אך אם בפיתוח אפליקציות מורכבות יותר (הכוללות ניהול רשת או ניהול דיסקים) חשקה נפשכם, תאלצו להיפרד מ-150 אירו עבור בדיקה יסודית של האפליקציה במרכז בדיקות מורשה של נוקיה.

  • הפצה: ניתן להפיץ לאחר חתימה דרך חנות OVI
  • יתרונות: Low Level APIs, אפשרויות פיתוח לא מוגבלות
  • חסרונות: זמן פיתוח ארוך, ועקומת למידה מורכבת (מתכנת שלא מכיר את הטכנולוגיה יכול להשקיע גם 2-3 חודשים עד שיראה תוצאות, ועד שנה עד לשליטה מלאה)
  • מתי נבחר ++C: מומלץ לבחור באפשרות זו כאשר אין ברירה. אם מדובר בהתממשקות קרובה למערכת ההפעלה, או פיתוח הדורש תאימות מלאה לכל סוגי המכשירים

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

סיכום

שלוש טכנולוגיות פיתוח נוספות שלא אעסוק בהן כאן הן: Python, J2ME ו-Flash Light. ניתן לקרוא ולהעמיק עליהן באתר הפיתוח בפורום נוקיה.

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

אז למה אנחנו מחכים?

אם תרצו ללמוד עוד, הנה כמה קישורים שימושיים:

ינון פרק

מפתח יישומי צד-לקוח בטכנולוגיות Web ו Mobile. כותב ומלמד קורסים לחברות תוכנה ואונליין באתר ToCode

הגב

7 תגובות על "Symbian? Yes we can"

avatar
Photo and Image Files
 
 
 
Audio and Video Files
 
 
 
Other File Types
 
 
 

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

סידור לפי:   חדש | ישן | הכי מדורגים
רומה
Guest

תיקון קטן – מערכות S40 לא עובדות על סימביאן. לכן על S40 לא ניתן לפתח לא ב QT ולא ב SYMBIAN C++.

רותם
Guest

מקווה שתמשיך לפרסם עוד הרבה כאלו!

אבי
Guest

כתבה מעולה

אבי
Guest

אתה יכול לפרסם את הטוויטר שלך?

ינון
Guest

הי,
תודה על התגובות.
אשמח לראותכם בטוויטר @ynonp

אורי
Guest

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

מיכל
Guest

אחלה כתבה!
וגם האפליקציה לאיפון ממש מגניבה…

wpDiscuz

תגיות לכתבה: