2017-04-21 13 views
6

एक कॉलेज प्रोजेक्ट के लिए, मेरा समूह एंड्रॉइड के लिए क्लाउड मैसेजिंग ऐप बनाने की योजना बना रहा था। शुरुआत में हमने हाइब्रिड ऐप बनाने के लिए आयनिक फ्रेमवर्क और फोनगैप का अध्ययन और उपयोग करके विकास शुरू किया।क्या हाइब्रिड मोबाइल ऐप्स आमतौर पर तकनीक उद्योग में डेवलपर्स द्वारा मूल ऐप्स से कम मानते हैं?

हमने जो कुछ भी पढ़ा और सीखा है उसके आधार पर हाइब्रिड ऐप विकास के साथ हमें वेब प्रौद्योगिकियों (एचटीएमएल, सीएसएस जावास्क्रिप्ट) के साथ कोड करने की इजाजत मिलती है, जिसे हम मूल ऐप बनाने से बहुत कम समय में परिचित थे । इसमें बहुत ही मामूली tweaking के साथ कई प्लेटफार्मों पर चलने का प्लस था।

लेकिन जैसे ही हम आगे बढ़े, हमें हमारे कई सहयोगियों और क्षेत्र के लोगों से कुछ अजीब प्रतिक्रिया मिली, जो सभी ने एक बात की ओर इशारा किया; हाइब्रिड ऐप्स के बारे में एक सामान्य अविश्वास और संदिग्धता।

आखिरकार हमने अन्य कारणों से इस प्रतिक्रिया के कारण मूल ऐप के लिए जाने का फैसला किया लेकिन यह हमेशा हमें परेशान करता था कि लोग इस तरह क्यों महसूस करते थे।

उत्तर

2

हां, सामान्य भावना यह है कि हाइब्रिड ऐप्स मूल ऐप्स से कम हैं। इस वेब प्रौद्योगिकियों के साथ अधिक परिचित डेवलपर्स के लिए निराशा हो सकती है, वहीं यह अच्छे कारण के लिए आता है: हालांकि इस तरह cordova-plugin-statusbar के रूप में प्लगइन्स मौजूद हैं, वहाँ सीमाओं के साथ बातचीत और देशी जोड़ तोड़ कर रहे हैं:

  1. असमर्थता देशी घटकों के साथ बातचीत करने वेब प्रौद्योगिकियों का उपयोग कर घटक। एक महान (और निराशाजनक) मुद्दा जिसे मैं व्यक्तिगत रूप से चलाता हूं, कुंजीपटल एनिमेटेड के रूप में कीबोर्ड के शीर्ष पर इनपुट करने में असमर्थता है। यह तब तक एक गैर-ऊतक की तरह लगता है जब तक कि आप किसी ऐप को न देख सकें जहां यह एक आवश्यक विशेषता है जैसे कि स्लैक जैसे चैट ऐप में।
  2. 300ms देरी: हालांकि आधुनिक ब्राउज़र phase this out से शुरू हो रहे हैं, हाइब्रिड ऐप्स पर मौजूद दूसरी देरी का अंश ऐप को धीमा और गैर-मूल महसूस करता है। यह समस्या एक कारक से कम हो रही है क्योंकि अधिक उपयोगकर्ता FastClick.js जैसे वर्कअराउंड को अपनाते हैं और कुछ ढांचे जैसे Ionic डिफ़ॉल्ट रूप से इसे खत्म करते हैं।
  3. शत्रुओं का सही (प्रकार) है: जबकि हाइब्रिड ऐप विकास एक लंबा सफर तय किया गया है, फिर भी मामूली ग्लिच और लगी फ़ंक्शन हैं जो मूल एप में मौजूद नहीं हैं। स्क्रीन संक्रमण, ऐप स्विचिंग, और बैटरी लाइफ अभी भी बग्स के प्रकट होने के लिए आम क्षेत्र हैं और संभवतः कुछ समय के लिए होगा, भले ही वे कम और कम ध्यान देने योग्य हो जाएं।
  4. कुछ महान मूल समाधान हैं: ऐप्पल के Swift जैसी नई भाषाओं के साथ यह मूल भाषा में कोड करना आसान हो रहा है। ऐसा कहा जा रहा है कि React Native जैसे उपकरण मूल और हाइब्रिड के बीच एक ग्रे क्षेत्र में आते हैं जिससे डेवलपर्स को जावास्क्रिप्ट जैसी अनुकूल तकनीकों में कोड करने की अनुमति मिलती है लेकिन मूल कोड में संकलित किया जाता है।

कहानी का नैतिक यह है कि यह वास्तव में निर्भर करता है कि आपके विशिष्ट उपयोग के मामले में क्या महत्वपूर्ण है। हाइब्रिड ऐप्स एक व्यवहार्य विकल्प बन गए हैं और अब शर्मनाक साइड शो नहीं हैं। इसके विपरीत, मूल यूएक्स के साथ बातचीत करने के अभी भी मामूली पहलू हैं जो मूल ऐप को छोड़कर अभी तक संभव नहीं हैं।

कुल मिलाकर, मैं आपकी परियोजना को मैपिंग करने और यह निर्धारित करने की सलाह देता हूं कि आपके ऐप को मूल ऐप के किसी भी लाभ की आवश्यकता है या नहीं। Ionic View ऐप जैसे टूल के साथ अपने ऐप का मूल मॉकअप और एक असली डिवाइस पर परीक्षण करना आसान है चाहे हाइब्रिड ऐप आपके लिए काम करेगा या नहीं।

+0

हाइब्रिड और मूल के बीच चयन करते समय हमें अंगूठे का सामान्य नियम था; अगर हम ऐप को बहुत हार्डवेयर निर्भर और क्लाइंट भारी बनाने की योजना बनाते हैं तो हमें निश्चित रूप से मूल के लिए जाना चाहिए। अन्यथा यदि यह सिर्फ एक ऐप है जहां डेटा को सर्वर से पुनर्प्राप्त किया जाता है और इसे प्रदर्शित किया जाता है तो यह हाइब्रिड हो सकता है। हालांकि इस मामले में, यह एक वेब ऐप से बहुत अलग नहीं है। – nuwanjaya

+2

महान जवाब! पुन 1: सब कुछ के लिए एक प्लगइन है। और यदि कोई नहीं है तो बस इसे बनाओ। उदाहरण के लिए मैंने इसे स्लैक इनपुटबार के लिए बनाया है: https://github.com/EddyVerbruggen/cordova-plugin-native-keyboard (यह वास्तव में SlackVC लाइब्रेरी का उपयोग करता है!) –

+0

@EddyVerbruggen धन्यवाद! मैं इस परियोजना के लिए इस सप्ताह अपनी प्लगइन देख रहा था। अच्छा काम करते रहो! – makinbacon

संबंधित मुद्दे