在 2013 年之前,需要高性能且原生体验的移动应用,只能用原生技术开发。当时,熟悉 HTML 和 JavaScript 的 Web 开发者,与原生开发者会去不同的咖啡馆,逛不同的服装店。**Web 开发者渴望融入其中,也能创建移动应用**,就像那些酷炫的原生开发者一样,但他们不愿学习 xCode、Eclipse、Objective-C 或 Java。
Apache Cordova 在 2013 年之前就已存在多年,它极大地帮助 Web 开发者,用混合开发的方式,窥探了移动开发的世界,体验了移动开发的酷炫生活。JavaScript 开发者无不欢欣鼓舞,因为他们终于可以喝到自己咖啡馆里没有的特殊拿铁了。然而,这种兴奋是短暂的。
尽管 Web 开发者现在可以使用混合应用创建并发布到应用商店,但由于混合应用运行在WebView 中,实际上就是用原生外壳包装的 Web 应用,因此开发者可以肆无忌惮地创建出让任何原生开发者都避之不及的“怪物”。
在 2013 年之前的年代,大多数混合应用都笨拙、不稳定,而且由于缺乏原生体验,使用起来比原生应用更困难。
2013 年之后,Ionic 框架 出现,它统一了混合开发方式。得益于 Ionic,它建立在 Apache Cordova 之上,混合移动应用开发已经发展成熟到一定程度,以至于一些混合应用几乎无法与原生应用区分开来。Ionic 规范了我们这些疯狂的 Web 开发者,限制了我们的奇思妙想,以保持外观和体验的一致性,更好地匹配原生环境,提高感知性能。这就像保龄球比赛中有了护栏,成功近在咫尺!
快进到 2018 年。 iOS 和 Android 是移动世界的两大赢家,它们一直在竞争,试图在可用性、性能、动画速度和外形方面领先一步或两步(尽管我认为最后一个目标值得商榷)。虽然原生开发者只需将新的 API 添加到他们的工具库中,但混合开发者却落后了。Cordova 和 Ionic 无法跟上原生框架底层不断变化的步伐,并支持所有不断发展的新原生用户体验和范式。虽然 Ionic 开发者过去几年感觉自己足够酷,可以与原生开发者并驾齐驱,但这种感觉正在逐渐消失,因为使用最新的 SDK 和 API 变得越来越困难。
这就是像 NativeScript 这样的新框架诞生的原因,它们正在迅速普及。为什么?因为 NativeScript 不会在原生世界和你的代码之间添加多层抽象。你实际上可以编写 JavaScript 代码,直接与原生 API 交互。框架本身从一开始就被设计成允许访问所有原生 SKD 和 API,因此,不仅框架 UI 组件是用这种技术编写的,而且以前是 Web 开发者的那些开发者现在也可以成为原生开发者,仍然可以用 JavaScript 编写代码。是的,他们可以去同一个咖啡馆,买同样的酷炫服装,因为他们就是原生开发者,只是使用 JavaScript 而已。
那么,如果 Cordova 开发者不想落后,如果他们想要访问所有原生 API,但仍然使用自己的技能,例如 JavaScript、TypeScript 和 CSS,他们该怎么办?Cordova 开发者该如何提升职业生涯,并跟上最新的原生趋势?不妨从一个免费的入门课程开始,了解如何立即快速地将你的 Cordova 技能应用到使用 NativeScript 创建完全原生应用中。
这个课程,将 Cordova 应用升级到 NativeScript,是免费的,现在已经发布在 NativeScripting.com 上。Cordova 和 NativeScript 插件大师 Eddy Verbruggen 和我一起推出了这个课程。在这个课程中,我们将向你展示如何将 Cordova 应用的不同部分转换为 NativeScript 等效部分。它比你想象的要容易,而且结果令人满意。最终,你将获得一个真正原生应用,而你使用的是你现有的技能,比如 JavaScript 和 CSS。一些代码甚至可以不修改就直接迁移。
NativeScripting 是一个视频课程库,已经存在大约一年了。数千名 Web 开发者、Angular 开发者以及 Cordova 和 Ionic 开发者都注册了那里提供的在线视频课程。Paul Halliday、Nathan Walker、Sean Perkins 以及 Eddy Verbruggen 等行业顶尖的开发者都在 NativeScripting 上贡献了课程,他们等待着教你 NativeScript 的初级到高级主题。
总之,虽然未来肯定需要维护旧的 Cordova 应用,但移动世界不会等我们。新的原生 UI 技术正在迅速超越混合开发的局限性。不断学习更新,你就可以去那些酷炫的咖啡馆了。