智能小程序开发解决方案

3,626 阅读5分钟

今天主要分析了解小程序开发生态解决的方案,尤其技术分级解决的方案,和开发工具链。

小程序开发流程总览

第一,如果有自己的小程序可以通过迁移工具一键转换成智能小程序。第二,使用第三方框架,应用层的架构上面,接入我们的三方框架。开发者在开发调试之后,在开发工具上没有问题,再在手机上进行预览,测试没有问题,就可以发布到后台,就可以被百度想换的数组之类的进行调起下载,可以进行web、H5的浏览。今天重点讲解接入。

技术分级解决方案

当我们要接入百度开发小程序的时候,会面临一个技术水平的问题。那么会面临两者情况,从零开发,或者已有微信小程序。如果没有开发过小程序,就从零开发,可以选择使用原生开发,或者应用层框架开发。

没有开发过小程序,从零开发

原生开发

原生开发,就是使用百度的这一套智能小程序进行开发,分为视图层和逻辑层。我们的视图层类似H5语言,不是用的HTML,而是在SWAN文件,还有标记语言和H5是不一样的。如果开发原生的小程序,需要参照我们的标签,原生工具上都有,也可以自定义标签、绑定事件、控制流、属性及表达式都有。逻辑层定义了一套自己的生命周期,主要是在页面内层,如何转场、切换,都会调用生命周期,这和WEB不一样。这是我们自己的声明周期和事件响应,基本的包括数据管理、数据驱动,很传统的方式,上手成本很低。

应用层框架开发

应用层框架接入,跨平台永远是软件开发永恒的主题。而跨平台的解决方案,想在百度小程序上跑,又想在微信小程序上跑,又想在WEB上面,或者其他平台等,有没有解决方案呢?可以使用框架层的源码,进行编译之后,能跑在各自的平台上面。现在出名的框架分别是Taro、Mpvue、WePY,非常活跃并不停迭代,也和这三方框架进行合作,不断开发优化小程序。

WePY框架五大特点是更符合现有的MVVM框架开发模式,类VUE,省去学习小程序语法的时间;组件化开发,支持组件的循环、嵌套、组件Props传值、组件通信、自定义事件、第三方组件;NPM包管理,支持NPM资源,处理NPM资源的依赖;支持ESNext规范,提升开发体验,拥抱开发者;细节性能优化,setData性能优化(脏检测),事件传参、编译器(babel、Ts、Less、Sass)、Mixin。

Mpvue框架的四大特点是彻底的组件化开发,使用Vup.js组件机制开发小程序,实现小程序和H5的组件复用;完整的Vue开发体验,Vue的组件规范、Vuex的实现;基于Mpvue小程序,可以转为H5 ,基于Vue开发的H5也可以转为小程序;NPM包管理。

Taro框架的四大特点是React风格,降低小程序开发学习成本;JSX处理,采用JSX作为模板,相比字符串模板,更自由、自然、更具表现力,不依赖字符串模板语法糖,也能完成复杂处理;数去驱动思想的相似,小程序的数据模板更新思想和实现机制,与React相似;React的跨端解决方案,可以给Taro后期多端开发带来很大的便利。

如果你开发过微信小程序

分级接入方案——迁移工具

使用迁移工具进行分级接入,输入微信小程序性的代码,输入微信小程序的名字,可以达到80%的迁移量,但是比如登录需要处理下。迁移工具可以实现代码的搬迁,视图转换,转换log,语法变换等,并可以进行二级开发,意味着是两个版本。即从迁移的时间节点开始,有两套版本进行修改和维护。

百度智能小程序原生开发+wx2swan迁移工具的原生开发、Taro框架、Mpvue框架、和WePY框架三种框架,从不同的维度进行对比,语法规范、样式规范、组件化、跨小程序平台、多端复用、自动构建、上手成本、数据流管理,没有优劣之分,只有适不适用。所以根据自己的需要,比如技术栈、框架,进行选择各自适合自己的架构。

从零开发有两个选择,就是原生开发和框架开发;已有微信小程序也有两个选择,原生微信开发和框架开发。

开发工具链

开发工具有编辑器、模拟器、调试器,还有远程调试、搬家工具、编译工具、预览。模拟器的作用是真机仿真、多平台切换、忘了限制模拟、大小自调节。编辑器的作用是代码自动补全、代码高亮、多文件类型支持。调试器的作用是Swan节点样式调试,Console输入输出调试,Sources代码断点调试,Network网络抓包调试,Storages编辑展现调试,AppData编辑展现调试,Sensors罗盘重力感应调试。远程调试的作用是真机运行,PC远程调试,快速定位问题。编译工具的特点是支持CMD/AMD/自定义模式编译,还有支持热编译。

最后,百度·智能小程序,期待你的加入。