共计 924 个字符,预计需要花费 3 分钟才能阅读完成。
长期以来,人们认为原生利用 (native Application) 是网站挪动和桌面版本的良好辅助。这意味着开发人员必须保护至多四个不同的零碎:iOS 和 Android 的挪动应用程序,以及别离用于挪动设施和桌面设施的 Web 应用程序。这就是 Hybris 多年前的样子。咱们有一个独自的文件夹用于挪动模板、桌面模板和一个用于创立 iOS 和 Android 应用程序的 SDK。
起初,挪动和桌面版本合并为一个响应式网站,可能针对不同的设施类型和屏幕分辨率出现不同的网站。这将不同代码库的数量从四个缩小到三个。随着工夫的推移,许多应用程序被废除或过期,因为同步所有这些产品的老本太高。
装置新利用对很多人来说是一个挑战,装置数量太少,而让它们与网页版同步的老本很高。最终,只有大型电子商店能力提供实用于 Android 和 iOS 的独立 native 利用。
依据 Comscore 的数据,只管用户花在挪动利用上的工夫比花在浏览器上的工夫更多,但一半的美国智能手机用户每月下载利用的次数为零。
因而,咱们发现原生利用在反对和开发方面过于简单和低廉。这就是为什么越来越多的开发人员应用跨平台开发工具开发原生应用程序,例如 PhoneGap、Apache Cordova、React Native、Xamarin 或 Flutter.
曾几何时,人们普遍认为,原生应用程序比 javascript 开发的挪动利用运行速度快得多。
当 WebAssembly 发表时,越来越多的开发者正在从新扫视这一观点。
WebAssembly 使代码的执行速度简直与运行本机机器代码一样快,并且它被构想为补充 JavaScript 以减速 Web 应用程序的性能要害局部,并在当前反对应用 JavaScript 以外的语言进行 Web 开发。要害片段能够用 C/C++ 重写,并应用 Emscripten 转换为 Javascript。一些计算量大的组件当初能够在设施上执行,而不是在服务器上执行。
一个很好的例子是 AutoCAD Online。对于电子商务网站的挪动版本,当然不须要这样的性能。然而,AR/VR 和音视频解决可能会扭转这一场面。例如,Tensorflow.js 容许开发人员在 Javascript 中应用机器学习算法,即便其设施未处于 online 状态。