5G将至,App的未来,是JavaScript还是Native ?

herionliu 2019-07-01

5G将至,App的未来,是JavaScript还是Native ?

前段时间,看了阿里云云栖社区发布的文章 开发跨平台app推荐React Native还是flutter? 阿里云云栖社区文章
今天又看到了2019年前端框架对比

思考了很久,决定发出这篇文章,跟大家共同探讨

说说几种常见的APP开发模式
  • Native App

    传统的原生APP开发模式,有IOS和AOS两大系统,需要各自语言开发各自APP。
    优点:性能和体验都是最好的
    缺点:开发和发布成本高
    举个栗子:网易管家APP (Tab1,Tab2)
    应用技术:Swift,OC,JAVA

  • WebApp
    移动端的网站,常被称为H5应用,说白了就是特定运行在移动端浏览器上的网站应用。一般泛指 SPA(Single Page
    Application)模式开发出的网站,与MPA(Multi-page Application,再后面做介绍)对应。
    优点:开发和发布成本最低
    缺点:性能和体验不能讲是最差的,但也受到浏览器处理能力的限制,多次下载同样会占用用户一定的流量
    举个栗子:网易管家APP(Tab3)
    应用技术:ReactJS,RegularJS等
  • Hybrid App
    混合模式移动应用,介于web-app、native-app这两者之间的app,兼具“Native App良好交互体验的优势”和“Web App跨平台
    开发的优势”(百度百科解释)
    主要的原理是,由Native通过JSBridge等方法提供统一的API,然后用HTML+CSS实现界面,JS来写逻辑,调用API,最终的页
    面在webview中显示,这种模式下,Android、iOS的API一般有一致性,Hybrid App所有有跨平台效果。
    优点:开发和发布都比较方便,效率介于Native App、Web App之间
    缺点:学习范围较广,需要原生配合
    举个栗子:网易云音乐,我爱我家App
    应用技术:PhoneGap,AppCan,Wex5
  • React Native App
    Facebook发现Hybrid App存在很多缺陷和不足,于是发起开源的一套新的APP开发方案RN App。。使用JSX语言写原生界面,
    js通过JSBridge调用原生API渲染UI交互通信。
    优点:效率体验接近Native App,发布和开发成本低于Native App
    缺点:学习有一定成本,且文档较少,免不了踩坑
    举个栗子:Facebook、youtube、discord、QQ、百度等等
  • WEEX App
    阿里巴巴开发团队在RN的成功案例上,重新设计出的一套开发模式,站在了巨人肩膀上并有淘宝团队项目做养料,广受关注,
    2016年4月正式开源,并在v2.0版本官方支持Vue.js,与RN分庭抗礼。
    优点:开发效率和体验上跟RN不相上下,并且跨平台性更强
    缺点:刚刚起步,社区没有RN活跃
    举个栗子:淘宝、天猫、饿了么等
  • Flutter 咸鱼正在使用 , 而且他们也推荐大家尝试新技术 来自谷歌,不过貌似国内岗位少,有人说写这个35岁后可以出国。(我等将信将疑)

    原文链接


但是好像PWA这个技术被遗忘了,我个人觉得这是一个非常不错的技术,强大的service worker ,当然现在百度的LAVASVUEPWA支持也很好,希望能继续深入下去。 LAVAS(基于 Vue.js 的 PWA 解决方案帮助开发者快速搭建 PWA 应用,解决接入 PWA 的各种问题)
  • PWA的介绍:

    • 可靠 - 即使在不稳定的网络环境下,也能瞬间加载并展现
    • 体验 - 快速响应,并且有平滑的动画响应用户的操作
    • 粘性 - 像设备上的原生应用,具有沉浸式的用户体验,用户可以添加到桌面
    • 渐进式 - 适用于所有浏览器,因为它是以渐进式增强作为宗旨开发的
    • 连接无关性 - 能够借助 Service Worker 在离线或者网络较差的情况下正常访问
    • 类似应用 - 由于是在 App Shell 模型基础上开发,因为应具有 Native App 的交互和导航,给用户 Native App 的体验
    • 持续更新 - 始终是最新的,无版本和更新问题
    • 安全 - 通过 HTTPS 协议提供服务,防止窥探和确保内容不被篡改
    • 可索引 - 应用清单文件和 Service Worker 可以让搜索引擎索引到,从而将其识别为『应用』
    • 粘性 - 通过推送离线通知等,可以让用户回流
    • 可安装 - 用户可以添加常用的 webapp 到桌面,免去去应用商店下载的麻烦
    • 可链接 - 通过链接即可分享内容,无需下载安装
    • PWA 是对站点体验的一个飞跃式的提升,可以在移动设备上的 Chrome(version > 52) 访问 天气 PWA 体验一下。
5G即将到来,不知道你对APP的未来是怎样看待的? 会是全部走服务端渲染吗? 显然不可能,很想听听大家的见解。

但是这些是可以肯定是:

  • 1、重视和提升用户体验
    手机APP开发只有提高用户体验,才可能得到用户的喜爱与欢迎。并且面对应用市场APP逐渐饱和的环境,若是再不重视和真正提高用户的体验,就很有可能遭到用户抛弃,被市场淘汰。因此未来手机APP的开发要与时俱进,专注给用户带来个性化的体验、安全的保障等。
  • 2、简约风格的设计
    产品设计上应保持整洁简约,给用户第一眼的感觉要是舒适、清新的。因此未来手机APP设计上要走简约风格,在配色上注重简约和质感,给用户带来良好的视觉感受。还可以通过将图片和字体适量加大,以丰富页面的层次,呈现给用户一种惊喜和视觉上的画面感。简洁明了,层次清楚,这样用户才能在小小的屏幕中发现自己需要的内容(可以参考微信)
  • 3、重视社交元素
    互联网时代,很多网购平台为了发挥对产品的用户凝聚力,提高用户粘性,会在APP添加社交功能。通过添加社交元素,吸引更多用户的下载使用,并且重视社交元素还能提高产品自身的魅力,从而更受用户的欢迎(搞社区化,情怀,参考网易云音乐和抖音)。
最近也是在不断尝试PWA,希望各位路过的小哥哥小姐姐们都发表下自己的看法。

相关推荐