פיתוח אפליקציות היברידיות

פיתוח אפליקציות היברידיות

מהי "אפליקציה היברידית"?לפני שנתאר את המושג נבקש לתקוף קודם כל את מרחב הבעיה שאותה אפליקציה היברידית יכולה לפתור. באופן מסורתי עולם האפליקציות הסלולריות מתחלק לשניים:
אפליקציות אינטרנט סלולרי\מובייל (Mobile Web App) - אתרי אינטרנט דינאמיים שהותאמו לתצוגה בפורמט מתקדם של HTML למכשירים סלולריים לדוגמא xHtml ו- HTML5.
אפליקציות מסורתיות (לעיתים נקראות גם NATIVE) - אפליקציות המפותחות על גבי מערכות זמן ריצה שונות. ובשפות מגוונות בהתאם לסוג הפלטפורמה כגון אנדרואיד עם שפת ג'אווה (JAVA) או C\C++, אייפון עם שפת Objective-C ו- Windows Phone עם C# .Net.
ללא ספק אפליקציות ה- NATIVE עולות הן בביצועים, הן בחוויות המשתמש והן במראה על אפליקציית WEB, ויתרה מכך יש אפליקציות שאין אפשרות אחרת אלא לפתח אותן כ- NATIVE למשל אפליקציות משחקים כגון Angry Birds. החיסרון הבולט בשיטה זו, פיתוח NATIVE מצריך ידע ומיומנות וכן במרבית המקרים זמן רב יותר לביצוע. אם נרחיק מעט לכיוון משחקים מבוססי רשתות חברתיות במרבית המקרים היתרון של אפליקציית ה- NATIVE מתגמד. חלק ניכר מזמננו (בעבודה וגם בבית) נמצא את עצמנו בודקים מייל, משוטטים באתרי חדשות, מדיה, רשתות חברתיות, בנקים רשויות ומה לא?
שירותים רבים עוברים בימים אלו מאינטרנט מסורתי בדפדפני מחשב שולחני לאינטרנט בפורמטים החדשים המותאמים לסמארטפונים וטאבלטים. העולם הזה הולך ומתכנס לתוך הכיס שלכם והמגמה דיי ברורה. בד בבד מתגלה גם הצורך בתכונות נוספות שקיימות בכל סמארטפון למשל מיקום, מצלמה, רמקול, שטח אחסון ועוד שזה כבר פותח מרחב חדש של אפשרויות.
כאן ממש מתחילה דילמה האם לפתח ב- NATIVE? ב- WEB? בעד אפליקציית Mobile Web App: אין צורך לפתח באופן ספיציפי עבור iPhone או Android או כל פלטפורמת Mobileמקצרת מאוד את זמני הפיתוח עד 70% במקרים קיצונייםקלה לתחזוקהמרבית אפליקציות המובייל הארגוניות לא דורשות פירוטכניקה עוצמתיתכך שניתן לפתח Mobile Web App שיתנהג כמו אפליקציה לכל דבר, וכותבים אותו פעם אחת בלבדניתנת לעדכון באופן אוטומטי על גבי השרת (בעוד אפליקציית NATIVE מחייבת עדכון על המכשיר)מאפשרת שימור של ה"בינה העיסקית" (Business Logic) ומתאימה ובנויה מראש למודלים של שירותמאפשרת הצגה אולטימטיבית ומותאמת ביותר של תכנים על ידי שימוש בדפדפן של המכשירמותאמת למגוון רחב יותר של מכשירים ולא דורשת פיתוח מיוחד אלא התאמות קלות נגד אפליקציית Mobile Web App:לא עובדת כשאין אינטרנטלא תמיד מאפשרת גישה לחומרה של הטאבלט או הסמארטפון, כמו למשל שימוש ב- Bluetooth, במנועי תלת ממד כגון OpenGL, שליטה ובקרה מתקדמת על אודיו ועודלא תמיד מתאפשרים זמני התגובה ראויים לשימוש
מה עושים כשיש דילמה כזאת?התשובה הברורה במקרים כאלו היא אפליקציה היברידית למובייל, שילוב מתוחכם של 2 הגישות, מצד אחד שימוש בתכונות הגרפיות והגמישות האדירה שיכול לספק דפדפן אינטרנט (כן גם בסמארטפון), ומצד שני, שילוב יכולות שרק אפליקציית NATIVE יכולה לספק.
חשוב לציין כי אפליקציית מובייל היברידית היא בראש ובראשונה אפליקציית NATIVE Mobile app.
אותה אפליקציה משמשת כמעין "אינקובטור" לדפדפן שמוטמע בתוכה והתקשורת בין האפליקציה לבין הדפדפן מתבססת על גשר בין הדפדפן לבין אפליקציית ה- NATIVE, נקרא לה מעתה אפליקציית הבסיס - BASE.
איך זה מתבצע בתכלס? זה כבר תלוי במכשיר שאתו אתם עובדים, אך העיקרון הוא זה תמיד זהה: הדפדפן מתקשר עם ה- BASE דרך ממשק Javascript שמצוי בכל דפדפן.
אם נלך צעד אחד קדימה נבין שאפשר גם להטמיע יותר מדפדפן אחד ב"אינקובטור" הזה,
כמו גם להוסיף מעליהם טקסטורות, כפתורים ואפילו לשנות את ההתנהגות והתוכן שלהם עלפי מיקום, זמן וכל פרמטר שרק נרצה. וכל זה כמובן, מתאפשר תוך שליטה מלאה על התנהגות האפליקצית דרך שרת WEB.
ונשאיר קצת מקום לדימיון שלכם שיעשה את שלו...
איפה מתחילים?יש היום מספר פלטפורמות מוכנות בשוק כגון sencha touce, phonegap, jQueryMobile ועוד, ללא ספק ניתן להגיע לתוצאות דיי מהירות עם הפלטפורמות הללו, במספר שבועות קטן,
לרוב כדאי להסתפק בהן רק בשלבים בסיסיים או כהוכחות יכולת מאחר ויש מחיר לשימוש בהן:הביצועים לא מזהיריםבדרך כלל הפלטפורמות מתאימות למוצרים בסיסיים ומרחב הגמישות לא גדולכשיש צורך בשינויים או מעקפים של בעיות בפלטפורמות הללו החיים הופכים לסיוטבאגים הדרך נכונה היא בבסיס טוב.ע"מ לפתח HYBRID יש צורך בידע לא מועט גם ב- NATIVE, הקלק כאן לפרטים נוספים אודות פיתוח אפליקציות היברידיות למובייל: צור קשר

הכותב: Ofer Davidyan, מייסד ומנכ"ל החברה
לעופר 16 שנות נסיון במחקר ופיתוח, מהן 14 שנים בתעשיית הסלולאר והאפליקציות.
כל הזכויות שמורות לחברת אינפורמיישן גייטס בע"מ הקלק כאן לצפייה בכתבה אודות פיתוח אפליקציות במהדורה המרכזית, חדשות 2תגיותפיתוח אפליקציה | בניית אפליקציה | פיתוח אפליקציות | בניית אפליקציות | פיתוח תוכנה | פיתוח יישומונים | פיתוח יישומון | קורס פיתוח אפליקציות למובייל | אפליקציות למובייל | iOS | iPhone | Android | אנדרואיד | בלאקברי | Windows Phone | Windows Mobile | Bada | QNX | תוכנות למובייל | אפליקציה היברידית | Native App | Mobile Web App | בית תוכנה | סלולר | סלולרי | סלולרית | פיתוח תוכנה | אפיון תוכנה | ניתוח תוכנה |

ראה מאמרים נוספים

Gemini_Generated_Image_6972o16972o16972.png

לבנות מערכת לעסק עם AI או עם חברת פיתוח?

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

ראה עוד
news-card-ai-buzz.png

Vibe Coding:
מתי זה מספיק, ומתי זה נגמר בכתיבה מחדש

מה באמת קורה כשאפליקציה שנבנתה עם AI מגיעה לפרודקשן — מה מצאנו כשפתחנו כאלה, ומתי vibe coding דווקא כן הבחירה הנכונה.

ראה עוד
Rav-Kav smart ticketing console and card validation inside a bus

מערכת כירטוס חכם - רב-קו וניהול משמרות נהגים

תיק פרויקט של iGATES למערכת כירטוס רב-קו וניהול משמרות נהגים לאוטובוסים: אפיון, UI/UX, Windows CE מותאם, בדיקות אינטגרציה ואישורים במשך כארבע שנים.

ראה עוד
Article card image

פיתוח Custom ROM ו-Android Internals: מתי צריך לרדת לעומק Stack

מתי באמת צריך Custom ROM, איך בונים AOSP מותאם, ולמה Android Internals זו אחת הדיסציפלינות הנדירות ביותר בישראל. iGates עם 15 שנות ניסיון ו-R&D עבור Consensio Cyber Security.

ראה עוד