乐趣区

5G将至App的未来会是这里面的哪一种

前段时间,看了 阿里云云栖社区 发布的文章 开发跨平台 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,希望各位路过的小哥哥小姐姐们都发表下自己的看法。

退出移动版