chameleon怎么读发音 【第2017期】如何在滴滴落地 Chameleon( 二 )


chameleon怎么读发音 【第2017期】如何在滴滴落地 Chameleon


文章图片

技术背景
那么什么框架能满足我们的需求呢?
在定义了需求之后,我们需要对后台技术有足够的了解和理解,比如jscore,Native communication,每端的native UI组件,每端的DSL协议。
在对基本技术背景有了一定了解之后,也需要确立发展指导思想。

chameleon怎么读发音 【第2017期】如何在滴滴落地 Chameleon


文章图片

指导思想
基于这些基本的技术背景和MVVM开发模式,用户界面、应用编程接口和DSL协议被统一打包。通过在运行时调整路由和生命周期,可以消除两端之间的差异,真正达到一组代码跨越多个终端的目的。

chameleon怎么读发音 【第2017期】如何在滴滴落地 Chameleon


文章图片

实现——成长的基本目标
在基本技术架构和开发指导思想确立后,我们可以按照以下四个维度进行详细的设计和实现,包括
基础能力:脚手架设计、数据 mock、内置 API/UI 适配核心编译:提供模板编译、运行时适配、路由层统一灵活性设计:各端路由按需配置、自定义工程化配置、多态协议等严谨性:由于各端代码的差异性,为了最大限度的保证稳定性,我们自研了全局变量校验、多态接口校验、代码规范检查等技术架构
语言层:统一一套DSL,模板语法层支持类似Vue的语法和原生小程序语法
内置生态库级:统一各端UI层能力和API接口能力。在统一了这些能力之后,依靠变色龙多态协议的设计,开发者也可以自行开发相应端的一些特殊能力。
框架层:变色龙统一生命周期、数据响应、各端事件系统、布局能力、路由能力、状态管理、大小单元等。
通过上述技术实现,保证了开发者可以通过开发Vue项目的方式,跨web/weex/和各种小程序快速开发应用,大大降低了人工成本,提高了开发效率。

chameleon怎么读发音 【第2017期】如何在滴滴落地 Chameleon


文章图片

编译基础
本文介绍了变色龙框架级编译能力提供的核心功能。
对于变色龙规范下的业务代码,除了适配各端的UI、API、路由、数据响应、风格能力外,我们还提供各种与代码验证和工程相关的能力,包括数据模拟、本地开发、web端跨域能力、代码压缩等。

chameleon怎么读发音 【第2017期】如何在滴滴落地 Chameleon


文章图片

以上主要介绍了变色龙技术架构的设计与实现。接下来,我们将看看变色龙如何基于上述技术架构组织代码
统一DSL
首先。变色龙中的cml文件与。Vue文件。与vue相比,json的配置模板部分支持两种语法,既支持类似Vue的语法,也支持类似applet的语法。无论从Vue还是applet,开发者都可以快速上手,开发部分和Vue基本一致。包括生命周期、数据、道具、计算、手表等,风格单元统一,定义cpx单元为基准,风格适配多端json部分可以用来引入组件

chameleon怎么读发音 【第2017期】如何在滴滴落地 Chameleon


文章图片

模板编译
对于模板部分的编译,我们在框架的编译层支持两套语法,可以由小程序或者Vue的开发者开发,成本几乎为零。
同时,基于Vue的语法扩展了很多小程序不支持的功能,比如统一事件系统,扩展样式语法。它允许开发人员开发一个多终端项目,与开发一个本地Vue项目具有几乎相同的经验。

推荐阅读