跨平台开发技术的演进之路
经过十多年的发展,移动互联网应用程序开发过程中,app开发者遇到了手机屏幕碎片化、系统版本分散、厂商定制泛滥等各种开发适配痛点,这些痛点都是因为将大量精力投入到不同平台的实现中,并解决了各种兼容性适配问题,导致项目周期长、成本上升,这与企业要求app快速实现低成本、按时上线的要求相矛盾。
跨平台技术就是在这一过程中产生和发展的。
跨平台技术消除了不同平台之间的差异,开发者可以一次性编写代码,同时开发性能更高、体验更好的Android/iOS双平台应用程序。在传app开发模式下,需要4个人每天的工作,现在只需要1个人就可以完成,不仅大大降低了企业的开发成本,还可以保证项目如期上线。同样是跨平台技术,它具有开发效率高,体验和性能不输于原生的特点,使它在今天仍然具有强大的生命力,不断为企业输出价值。市场上的主流app产品,或多或少都是采用跨平台的技术架构来开发的,可以说跨平台技术的历史几乎和移动互联网本身一样悠久。
现在跨平台技术和生态已经趋于稳定,企业和开发人员已经形成了对跨平台技术的共识,并在各种商业场景中大量应用。与此同时,跨平台技术的发展主要有两个方向:
混合方向
也就是说,HTML5+Native混合,也就是我们常说的混合开发:通过HTML5快速实现app的UI布局,业务逻辑,以及在开发过程中HTML5不能实现或体验差的功能,都需要借助Native模块来实现。
整个app引擎模式都是基于Webview架构,对前端开发者很友好,这与前端庞大的JavaScript生态圈相去甚远,后者不需要学习新技术就可以开发app。这个方向代表的是Cordova,AppMobi,Ionic等技术。
中间语言(DSL)编译方向
DSL编译方向:开发过程需要用特定的语法来编写app程序代码,代码通过编译环境作为Android/iOS原生app程序进行编译。开发人员不需要学习Android和iOS的原生技术,也不需要学习复杂的开发语言,比如Java,Object-C,C/C++。
与Webview不同,该模式的app引擎使用VirtualMachine,如V8/JSCore引擎,通过JS-Runtime实现更复杂的代码逻辑,以满足交互处理、通信和状态管理的需求,同时扩展和完善JS/Native的通信机制,封装更好的组件和系统能力等等,从而实现完全的原生渲染。这一方向同时延续了前端开发系统,同时也最大限度地保证了渲染性能,代表技术有ReactNative、Weex。
APICloud新产品前沿资讯
随着跨平台开发技术的发展,APICloud正如这个快速变化的时代一样,其发展从未停歇;到2020年,APICloudDeepEngine将在多年的深耕之后重磅发布一个全新的3.0版本,该版本可以同时支持“混合开发”和“中间语言编译”两种模式,允许开发者自由选择使用同一APP中的任何一种进行开发。
全新的DeepEngine采用全转换原则,将Javascript编译成NativeAPI,为APP提供完整的原生体验和性能。
APICloud是国内低代码开发平台的先驱,同时也是效率革命的探索者,它基于云原生、DevOps、混合开发等功能的集成,从移动开发发展到低代码开发平台,致力于为不同行业提供应用程序定制和企业数字化服务。