9 סיבות שיגרמו לכם להתאהב ב-Sencha Touch, סביבת פיתוח חינמית למובייל

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

 

ipads

הפוסט נכתב על ידי רותם מאירי, סמנכ”ל פיתוח מובייל וצד-לקוח ב-getgems.org, מרצה בסדנא לפיתוח אפליקציות ומנהל מקצועי בסטודיו לפיתוח אפליקציות.

Sencha Touch היא מסגרת פיתוח (framework) עטורת פרסים, חינמית ומבוססת קוד-פתוח, שעשויה להפוך את חווית פיתוח האפליקציה שלכם להרבה יותר קלה, מהירה וזולה. עם 2 מליון מפתחים, 5 מליון הורדות וחצי מליון חברים בפורום התמיכה, מדובר במסגרת הפיתוח הפופולרית ביותר בעולם ה-HTML5. היא מוזכרת באופן תדיר באתרים ובלוגים מקצועיים המכתירים אותה בתור מסגרת הפיתוח הטובה ביותר לאפליקציות, ולא תמצאו רשימת קניות של “סביבות הפיתוח הטובות ביותר למובייל” בלעדיה. אז איך זה שדווקא כאן, בארץ הסטארטאפים והאפליקציות, עדיין לא גילו אותה?

נתחיל בקצת רקע. עולם אפליקציות המובייל נחלק לשניים – אפליקציות ייעודיות (Native), הנכתבות ספציפית עבור פלטפורמה מסויימת תוך שימוש בשפה מסויימת, (כגון Java לאנדרואיד או Objective-C\Swift ל-iOS), ואפליקציות היברידיות (Hybrid), כאלה שנכתבו בסביבות Web סטנדרטיות – HTML5, CSS, JavaScript, ומתאימות לכל המכשירים ומערכות ההפעלה.

הכוונה במאמר זה אינה להכנס להבדלים, היתרונות והחסרונות של כל אחת מהגישות, אבל רק נזכיר בקצרה שהיתרון בגישה ההיברידית הוא שמספיק לפתח את האפליקציה פעם אחת, ולארוז אותה במעטפה “ייעודית” דקה (בעזרת כלים כגון PhoneGap או Apache Cordova) כדי להפיץ אותה בחנויות האפליקציות השונות, בזמן שהגישה ה”ייעודית” מצריכה לפתח את האפליקציה בנפרד עבור כל אחת מהפלטפורמות, אך מציעה ביצועים משופרים (בעיקר באפליקציות “כבדות” מבחינה גרפית) ותמיכה רחבה יותר בחומרה.

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

תמונת מצב זו, ההופכת את הפיתוח ה”היברידי” למשתלם פי 2 עד פי 4 (תלוי במספר הפלטפורמות בהן אתם מעוניינים להפיץ את האפליקציה שלכם), גורמת לכך שסטרטאפים רבים שמעוניינים לבצע “נסיעת מבחן” למוצר שלהם, כמו גם חברות מבוססות שמעוניינות לבחון את כדאיות הפצת אפליקציה חדשה, מעדיפים להתחיל את תהליך הפיתוח בגישה ההיברידית. רבים מהם גם נשארים שם, אם וכאשר מגיעים למסקנה שהגישה ההיברידית מתאימה לאפליקציה שלהם, כפי שהיא יכולה להתאים לכ-90% מהאפליקציות. ההבדל בביצועים, כך הם יגלו, לא תמיד מצדיק את השקעה. אבל כאמור, לא בהשוואה בין שתי הגישות עסקינן.

whysencha_html5

אם וכאשר כבר החלטתם לפתח אפליקציה היברידית בסביבה היברידית, לרוב לא תסתפקו באוסף הטכנולוגיות HTML5/CSS3/JavaScript, אלא תשתמשו בו בתור בסיס לפיתוח ב”מסגרת פיתוח”, שזו הצעתו הצנועה של עבדכם הנאמן לתרגום המושג “Framework”. מסגרות הפיתוח הנפוצות לפיתוח HTML5 למובייל כוללות את AngularJS של גוגל, Ionic, KendoUI, jQuery Mobile וכמובן Sencha Touch.

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

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

האנונימיות היחסית שלTouch Sencha בישראל דיי מפתיעה, בהתחשב בפופולריות העצומה שלה בחו”ל ובעובדה שמדובר במסגרת פיתוח בוגרת, הקיימת כבר 4 שנים בשוק (קצת יותר מ”jQuery Mobile” וקצת פחות מ”Angular”), והיא טכנולוגית-בת של טכנולוגיה ותיקה ומוכרת בהרבה – ExtJS, המשמשת לבניית אתרים ואפליקציות Web לסביבת דסקטופ.

מפתחת הטכנולוגיה, חברת Sencha, הנחשבת ל”אורים והתומים” של פיתוח ב-HTML5 (עם דגש על התמחות בביצועים), קיבלה פרסום בינלאומי נרחב בקרב קהל המפתחים ואנשי הטכנולוגיה כאשר לקחה באופן אישי את הצהרתו של מארק צוקרברג לפיה “HTML5 עדיין לא מוכן“, והוציאה סרטון המדגים את Fastbook – גרסה של אפליקציית פייסבוק מבית Sencha, ומוכיחה שהם יודעים לבנות את האפליקציה של פייסבוק יותר טוב מפייסבוק.

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

whysencha_cross-browser

1. ביצועים, ביצועים, ביצועים

Sencha Touch מטשטשת את הגבולות בין אפליקציות היברידיות לאפליקציות Native. ניתן לראות אותה מנצחת במבחן השוואת ביצועים מול JQuery Mobile, זוכה בהשוואה מול 5 מסגרות פיתוח מתחרות, ואפילו מגיעה לביצועים קרובים מאד לאפליקצית Native iOS.

2. הדרך הקצרה מרעיון לאפליקציה

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

3. תאימות מלאה

Sencha Touch מתאימה באופן מלא לכל סוגי המכשירים ומערכות ההפעלה הפופולריות – החל מאנדרואיד ו-iOS הברורות מאליהן, ועד Windows Mobile ו-Surface המיקרוסופטיות, BlackBerry ואפילו מערכת ההפעלה Tizen מבוססת הקוד הפתוח.

אפליקציות מבוססות Sencha Touch הינן רספונסיביות לחלוטין, ויעבדו היטב בכל גודל ותצורת מסך. ניתן אף להשתמש בהן בתור אתר web מבוסס Mobile.

על תאימות Sencha Touch לפלטפורמות השונות ניתן לקרוא כאן.

4. ממשק משתמש עשיר, הניתן להרחבה ולהתאמה

למרות שמושג ה”מחלקה” (class) ב-JavaScript לא לגמרי מוגדר באופן דומה לנעשה בשפות אחרות, ב-Sencha Touch, המבוססת על JavaScript, הגדירו אותו מחדש. משמעות הדבר היא שכל רכיב ממשק (או כל רכיב אחר לצורך העניין, לדוגמא רכיב גישה למסד נתונים) הוא למעשה מחלקה.

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

בנוסף, ניתן להשתמש ב”תבניות תצוגה” (Layouts) שונות המתאימות למסכים עם צרכים שונים, או לספק תמיכה ב-deep linking ו-history – מה שאומר ניתן לחזור בקלות למסך הקודם בעזרת כפתור “Back” במכשיר או ליצור קישור למסך פנימי בתוך האפליקציה.

ערכות הנושא (Themes) של Sencha Touch מציעות מראה אחיד בשלל סגנונות כולל סגנון iOS. כל ערכת נושא ניתנת להתאמה מלאה, וניתן להתאים את ערכת הנושא למערכת ההפעלה עליה האפליקציה מופעלת.

ניתן לראות חלק קטן ממבחר רכיבי ממשק המשתמש העשירים של Sencha Touch כאן.

5. פתרון אפליקטיבי שלם

רבות ממסגרות הפיתוח בסביבת HTML5 מציעות בעיקר רכיבי ממשק ועיצוב, אך אינן מטפלות בעניינים ש”מאחורי הקלעים”, כגון גישה למסדי נתונים, שרתים ומקורות מידע מרוחקים. טיפול בתכונות אלה גוזל לרוב זמן (ותקציב) רב מצוות הפיתוח. Sencha Touch מציעה רכיבים מוכנים המבצעים רבות ממשימות אלה בקלות ופשטות יחסית, וחוסכים זמן יקר.

עוד על גישה למקורות נתונים ב-Sencha Touch כאן. סיבות נוספות להשתמש ברכיבי התוכנה של Sencha Touch כאן.

6. אריזת Native קלה

אפליקציות Sencha Touch ניתנות לאריזה במגוון כלים (חלקם מבית Sencha) במעטפת “ייעודית” (Native), לקראת הפצתן בחנויות האפליקציה השונות. אף אחד לא צריך לדעת שמדובר באפליקציית HTML5, ואנחנו לא נספר.

7. ארכיטקטורת MVC

פיתוח אפליקציות עשירות יכול לעיתים להיות משימה מורכבת. לשם כך קיימות שיטות ומוסכמות המכונות “design patterns” הבאות להקל ולהגדיר את תהליך הפיתוח בצורה יותר “נכונה”. Sencha Touch הנה מסגרת פיתוח מבוססת MVC, עם הפרדה בין רכיבי מודלים (model), בקרים (controllers) ורכיבי תצוגה (views).

8. דוקומנטציה ותמיכה מלאה

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

בנוסף, חצי מליון משתמשים בפורום התמיכה יבטיחו מענה מהיר יחסית ל(כמעט) כל שאלה שתפרסמו שם. מומלץ להעלות את הקוד שלהם ל- Sencha Fiddle לפני שאתם שואלים שאלה, כדי להבטיח מענה מהיר ומקצועי ואם כל זה לא עזר, ניתן לרכוש תמיכה בתשלום ומהנדס תמיכה של Sencha ישמח לעזור לכם לפתור את הבעיה.

9. אחרון ומאד חביב: זה חינם

Sencha Touch מוצעת להורדה ולשימוש בחינם, גם לשימוש מסחרי. ניתן להשתמש ברישוי לפרויקטים של קוד פתוח ויש גם חבילות מלאות הכוללות תמיכה. חלק מהרכיבים המתקדמים כגון Sencha Grid, כמו גם כלי הפיתוח ב-GUI “Sencha Architect” מצריכים רישוי נפרד.

הכתבה בחסות הסדנא לפיתוח אפליקציות

הסדנא לפיתוח אפליקציות היא הקורס הראשון בישראל לפיתוח אפליקציות בסביבת Sencha Touch. בסדנא נרכשים הידע, הכישורים והכלים המעשיים הדרושים לפיתוח אפליקציות בתוך 5 חודשים בלבד. הסדנא היא סדנא מעשית וייחודית המועברות בשיתוף סטודיו 6B לעיצוב, וכוללת חומרי לימוד מקוריים ובעברית שפותחו במיוחד עבור הסדנא. לנרשמים בחודש נובמבר תינתן הטבה משמעותית בעלות הסדנא, ובנוסף - מחשב נייד במתנה לכל נרשם, שיהווה את כלי הפיתוח העיקרי בתרגולי הכתה והבית, בזמן הלימודים ואחריהם.בוגרי הקורס המצטיינים יוכלו להשתלב בעבודה בפיתוח ב"סטודיו לפיתוח אפליקציות" הצמוד לסדנא - מיזם שנועד לחבר בין יזמים המעוניינים לפתח אפליקציות ברמה הגבוהה ביותר לבין צוותים של בוגרים מצטיינים תחת ליווי מקצועי צמוד של צוות הסדנא.הסטודיו מציע זמן פיתוח קצר, מוצר איכותי ועלויות פיתוח מופחתות הודות לשימוש בטכנולוגיות המתקדמות בשוק.לפרטים נוספים על הסדנא והסטודיו: info@tmw.co.il או 03-6855405.

Avatar

כתב אורח

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

הגב

10 תגובות על "9 סיבות שיגרמו לכם להתאהב ב-Sencha Touch, סביבת פיתוח חינמית למובייל"

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

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

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

רק Xamarin מגיעה לביצועים באמת טובים! מול אפשרות של UI Customization עבור כל פלטפורמה. (UX מושלם לכל יוזר)

אבי
Guest

עם ניסיון של פיתוח 2 אפליקציות על בסיס סנשה אני יכול להעיד שזאת סביבה גרועה, מיושנת, ועם ביצועים פח.
אני מאמין דווקא שהחברה האלה יביאו איתם בשורה חדשה ומרעננת:
https://github.com/angular/material

טל גלייכר
Guest

ממליץ בחום להסתכל על Famo.us לכל מי שמחפש ביצועים.
למי שמחפש UI Framework out of the box – ממליץ בחום על IonicFramework.
http://www.airpair.com/ionic-framework/posts/hybrid-apps-ionic-famous-f7-onsen

פיני
Guest

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

אלעד סופר
Guest

תסלחו לי, אבל המאמר מלא ב”אי דיוקים” כשהעיקרי שבהם הוא שסנצ’ה הוא פופולארי בעולם… הוא ממש לא, הוא הרבה פחות פופולארי מ-ionic \ cordova \ phonegap שהן מאוד פופולאריות – גם בארץ.

אחד שיודע
Guest

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

מפתח ווב
Guest

אם מדברים על אי דיוקים
cordova ו – phonegap הם לא סביבות פיתוח. הם כלים לאריזת האפליקציה אחרי הפיתוח. לדוגמא אפשר לפתח בסנצה או בסביבה אחרת ואז לארוז בקורדובה. אז תכיר את התחום לפני שאתה מגיב ומעביר ביקורת.

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

אלעד
Guest

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

אלחי
Guest

הביצועים גרועים, מתאים ל אפליקציות קטנות עם כמות קטנה של Data ועיצוב פשוט.
ממליץ על AngularJs עם Phonegap

לא הייתי ממליץ עליה לאוייבים שלי..
Guest
לא הייתי ממליץ עליה לאוייבים שלי..

מתוך נסיון עם ext.js Sencha זו אחת הסביבות המתוסבכות והאיטיות יותר לפיתוח. איומה ככל שזה נוגע לcustomization ומסובכת בכל צעד וצעד שעושים בה.

לברוח כמו מאש…

מחפשים crossplarform? תשתמשו ב Qt הסביבה היחידה שאשכרה כותבת לnative בכל os ובחינם. רוצים html? תסבלו..

ובכל זאת אם בhtml עסקנן polymer.js מבית גוגל ניראית הכי אינטיליגנטית ותגובתית מכל מה שיצא לי לראות. יש גם עורך ויזואלי מגניב שכמעט ולא קיים לאף סביבה אחרת.

wpDiscuz

תגיות לכתבה: