更多>>
当前位置 > 新闻咨询网络学堂
微信第三方开发框架平台CEO解析小程序

小程序的官方开发文档已经公布,不少开发者已经做过相关评审,本文将从一个微信资深第三开发者的角度,深度解析微信小程序开发。


一个通用技术同时开发IOS和安卓APP


通过一个通用的技术同时开发IOS和安卓两个版本APP,一直就是开发者们努力的方向,我们梳理业内相关的开发方式:


1. Web APP: 将Native APP仅仅作为一个浏览器使用,里面跑在线或者离线的HTML代码,H5代码占比超过90%。


2.Hybrid APP:用一个Hybrid框架(如:wex5、bootstrap、cordova等)来做bridge制作APP,APP中包含了Native代码,程序的底层框架、核心逻辑、界面框架用Native来完成,业务逻辑用H5完成,H5代码占比在40%—80%左右。


3.混编APP:部分业务也开始使用Native,H5代码占比继续下降,达到20%—40%左右,例如Ctrip,Alipay。


4.React Native APP:使用页面动态化框架开发,可以让Native通过执行动态化的脚本(可以本地也可以下发),但渲染出Native的界面和逻辑。最出名的框架就是Facebook的React Native了。


从今天看来,这四种方式仍是各有特点,开发团队可根据项目的应用场景,开发周期、开发成本灵活选择。

腾讯在这方面也有考量,希望能够通过一个通用技术,解决开发团队需要同时开发IOS和安卓APP的问题,小程序就是这个背景下诞生的产物


小程序的技术实现


在一个通用技术,即可完成IOS和安卓APP开发理念的支撑下,微信推出了小程序,这是一套相对封闭的技术体系。让开发者能在微信中开发出接近原生体验的APP,只需要一次开发就能在IOS和安卓运行。下图将说明公众平台小程序是怎么实现的。


blob.png


小程序的技术解析


微信小程序为开发者提供了一系列工具方便开发者,编程、调试、上传,从开发来分析:


编程语言:用于开发小程序的语言是微信定制的编程语言,这个语言和前端开发从业人员掌握的js、css、html、json并没有太大区别,甚至微信定制的编程语言更加规范和清晰。南宁网站建设


小程序存放机制:上传到微信服务端的小程序工程包估计会在服务端进行一次预编译,转换成可以在微信客户端运行的语言,打成一个运行包。估计预编译出的运行语言应该尽可能的兼容了HTML5标准,如果小程序没有调用微信私有的组件和API,那么小程序理论上在浏览器上也是可以打开的。如果小程序调用了微信私有组件和API,那在微信以外的环境访问估计就会显示不支持了。每个微信小程序都有一个类似666.appservice.open.weixin.qq.com格式的URL地址,通过这个URL地址(加参数)应该就能访问到小程序。每个小程序应该也都有一个微信服务端(微信开放平台)的微容器对小程序可以使用的云端资源进行监控和管理。


小程序下载机制:用户首次使用小程序时,微信客户端会从服务端下载小程序运营行包,下载的过程成会很快,用户不需要等待很长时间。因为开发者上传的小程序体积是受限制的,必须在1MB以内。


系统对接机制:小程序可以通过x.request接口发起https请求实现对接原有系统。如果原有系统不支持https协议,就需要对原系统服务器重新配置支持。南宁系统开发


数据机制:传输的数据是不经过微信服务端中转的,开发者不用十分担心太多数据被微信拿到,微信只是起到通信协议中进行几次握手建立连接的作用。而开发者能从微信中获得更多的数据,比如用户信息、位置、传播关系链等。


审核机制:如果每次开发者更新小程序,微信都要审核的话,微信运营成本会很大,因此很有可能会将这部分成本转嫁给开发者,估计小程序的开发者帐号和iOS的开发者帐号一样,都是要收费。


小程序的产品形态


小程序在微信中的产品形态是怎样的?分享到聊天窗口的小程序可能是这个样子的。


blob.png


说其实访问小程序就是访问一个标准的url地址,所以小程序理论上是可以在微信中任意传播的!

可以想象下述场景,微信小程序可以转发到群,转给朋友、添加收藏、配置到公众号菜单,转到朋友圈,这个传播能力和订阅号的逻辑十分像。

可以预见的是,小程序的传播链是类似订阅号的传播链,拥有大量社群、个人粉丝的从业人员,其小程序更能推广更为迅速。


小程序的优点


小程序的优势太多了,就重点说几个吧。


提高开发效率:小程序大幅度提高了移动应用的开发效率,实现同样的功能,以前开发APP需要两周,小程序开发只需要两天,对于传统企业想实现业务的互联网化,小程序绝对是首选。以腾讯云为例,拿到首批内测资格后,不到一周已经开发出4个案例,同时有针对性的提出腾讯云+小程序的解决方案,进一步提高小程序开发效率,详见www.qcloud.com。


安全性更高:小程序的网络请求必须使用http,同时必须通过微信审核后才能上线,可信度和安全性更高。之前公众号内容被微信封了之后,内容还是可以通过url在微信外传播,但小程序完全部署在微信控制的服务端,如果被封了将完全不可用。


体验更好:小程序开发情况来看,是支持切换到后台运行的,能解决公众号里,用户中断操作从深层页面跳出后,还要重新操作很多步才能进入之前使用页面的问题。同时微信官方也制定了小程序设计指南,新开页面深度不能超过5层,保障了用户的使用体验。


获客成本低:微信有着移动互联网最大的用户流量,苹果各种机型的用户加起来不到4亿,而微信的用户超过了8亿,有着巨大的流量。借助微信开展的业务,能基于数据分析后的用户,精准投放广告,更容易获客。


小程序开发的缺点


开发扩展性受限:小程序开发有一套私有的技术规范,所以开发扩展性上是受限制的,复杂的界面和控件,还需要微信官方支持。


开发工具不完善:部分微信自定义语言的文档说明还缺失(Tab控件说明缺失);文档和代码没有导航;开发工具中预览界面自适应有问题等。


最后我们还收集了各种开源的小程序案例,放在git上请自行参考取用。

http://git.oschina.net/uctoo/Wechat-applet


关闭

其他产品服务中心

  • 天祺科技高端网站定制开发品牌 手机APP开发 平台商城建设

关于我们

关于我们 公司动态 应用服务 建议反馈 网站地图

电话
7x24小时咨询热线
0771-6796911
南宁网站建设

官方公众号
扫一扫轻松体验

  • 0771-6796911