Native Apps VS Hybrid Apps:关于永无止境辩论的一些思考

我们到过那里:浏览一个应用程序时会想到“到底是谁做的?”,因为用户体验非常糟糕,并且永远需要执行任何操作。

为什么这样说呢? 因为在我们深入研究到底要坚持原生应用还是混合应用开发之前,绝对值得一提的是,无论采取哪种方式,应用用户都希望获得 无缝体验。 正如我们SFL团队不只一次看到的那样,这是任何开发路线中最重要的方面,并且如果无法实现出色的性能,那么就本机与混合问题进行辩论是没有用的。 为什么? 只需查看以下统计信息:

如果您的客户不属于那些不太在乎其移动用户体验的用户的5%,那么您确实必须尽一切努力使其与众不同。

有关本机和混合应用程序的一些重要内容

从某种意义上说,可以将本机应用程序与定制的设计师服装进行比较。 它适合正确的方式,只是……感觉正确。 它是专门为移动操作系统开发的应用程序(如iOS的Objective-C或Swift或Android的Java。 每个操作系统都有严格的生态系统,技术和用户体验准则,该应用程序严格遵守这些准则。 因此,该应用程序使用户感到熟悉并快速运行。

为什么“感觉正确”很重要? 因为用户已经直观地知道如何在应用程序中导航。 当购买新的移动设备时,该用户会花费大量时间来习惯其导航,并且它永远不会没有挫败感。 本机应用程序使用户有机会从习惯于应用程序导航的新麻烦中解脱出来。 本机应用程序的另一个优点是,它们可以访问设备的内置功能(例如GPS,联系人,相机等)。

现在,回到混合应用程序。 这些是单独的网站,恰好与本机应用程序打包在一起。 乍一看很难区分混合应用程序,因为它们通常具有本机应用程序的初始外观。

有两种构建混合应用程序的方法。 最常见的一种可能是使用HTML,JavaScript和CSS等网络技术。 这种方法归结为构建在本地运行的单页应用程序(SPA),并增强了JavaScript功能以访问移动本机功能。 PhoneGap,Cordova和Ionic都以这种方式运行。 这种方法的缺点是性能会受到很大影响。

另一个常见的方法是提供一个框架,用于开发应用程序,然后通过映射到特定于平台的元素并用特定于平台的实现方式替换特定于本机的元素来针对不同的平台进行编译。 从性能的角度来看,这种方法要好得多。 React Native和Xamarin使用这种方法。

混合应用程序开发的使用很吸引人,因为它大大减少了上市时间和开发成本-一段代码解决了多个设备生态系统。 它也不需要单个生态系统的丰富知识,并且可以由技能水平相当有限的开发人员来执行。 但是,另一方面,这些应用程序在功能上受到限制,因为并非每个电话功能都映射到框架中。 想象一下,如果您的应用在Android和iOS上看起来一样。 这样或那样,这将不会以最佳方式影响用户体验。

资源

那么,为什么是本地人呢? 为什么要混合动力?

为了理解这一点,有必要了解以下内容:建立移动应用程序的决定是由以下两种动机之一推动的:您要么想赶上您的竞争对手之一,要么有了一个全新的想法,那就是没人能拥有曾经想过。

无论出于何种原因,客户端通常都希望在昨天准备好应用程序。 但是,这种匆忙通常意味着在应用程序质量上有很多妥协,并且有很大的压力要比您准备好更快地做出决策。

因此,在决定采用本机方法还是混合方法时,请记住以下几点:

  1. 本机应用程序性能更好,具有更好的用户体验和更高的安全性。 如果您有足够的资金并且时间限制不那么严格,则最好坚持使用本机应用程序。
  2. 如果您想大幅缩短产品上市时间和开发工作,则混合应用程序可能会帮您解决问题。

一切都与经验有关

无论您选择使用本机方法还是混合方法,都要牢记的重要一点是用户体验。 智能手机的使用已经超过了桌面访问应用程序和上网的范围,因此无缝体验是唯一可以确保您的移动设备不会对您造成不利影响的事情。

应用程序的性能及其用户体验会因选择的开发框架而有很大差异。 不用说,从两个角度来看,本机开发方法都是无与伦比的。 它更快,更可靠,这对于安全性至关重要的多个领域的应用尤其重要。

这些统计数据显示最终应用程序的性能对最终用户如何重要:

无缝的用户体验应该解决所有问题,并在导航,适应性和布局,交互性,动画,版式,颜色,应用程序内行为等方面带来无与伦比的体验。 仅通过本机方法才能完全实现这一点。

对于混合应用程序,吸引人的是一次构建它,然后在多个平台上发布它。 这些应用程序与平台无关,但是通常意味着要牺牲功能和UI,因为您必须主要适应Android和iOS,并且易于构建。 第二,缩短上市时间,第三,维持一个代码库。

考虑采用哪种方法的另一个因素是公司的内部动态和发布周期。 您对应用程序开发的策略是什么? 您是否运行采用敏捷方法进行移动开发的程序(即,尝试以短而频繁的时间间隔发布可运行的软件),还是喜欢瀑布式方法(即,周转时间为几个月)?

发布周期和本机VS混合方法

计划发布的频率也是要考虑的关键因素。 用户讨厌频繁的更新,并且如果您必须每2周推送一次新版本的应用程序,请记住,并非所有用户都会自动安装更新。

在混合应用程序中,更新过程非常顺利。 如果内部页面有更新,则用户将立即看到它并可以对其进行操作。

对于本机应用程序,通常对于选择此选项的大多数用户自动进行更新。 但是对于那些不这样做的人,这意味着他们必须每次手动更新。 如果更新非常频繁,这可能会令人讨厌卸载最终应用程序。

因此,请确保也注意更新的频率。

外卖

关于本机与混合方法的争论没有一个“正确”或“错误”的答案:它取决于您的资源,时间,更新频率,并且在很大程度上取决于您为最终用户考虑的体验。

关于这个作者:

Arthur Baghdasaryan是一位高级iOS开发人员,对生活,学习和分享经验有着无限的热情。

聊聊吧!