小程序上线后,有人说“前端开发的春天”来了。小程序的语法与前端语言非常相似,前端开发者可以快速进入。虽然前端开发的难度降低了,但小程序对后端的要求并没有降低,反而提出了更高的要求。微信官方为小程序提供哪些后端技术支持?有什么局限和不足?小程序开发者应该如何应对?
1月18日晚8点,巴克云创始人、小应用云架构师、前迅雷总工程师刘志聪将在CSDN学院与开发者见面,在线分享小程序开发背景,为大家展示小程序。开发关键技术点,通过真实案例教大家掌握小程序开发中的关键环节。
在正式分享之前,我们有幸采访了刘志聪,请他谈谈小程序后端开发中的诸多局限和最常遇到的问题,同时也会带来一些建议给开发商。
Buck 创始人、小应用云架构师、原迅雷总工程师刘志聪
受访者介绍:
刘志聪,巴克云创始人,小应用云架构师,前迅雷总工程师。在迅雷,他设计并开发了多款迅雷核心产品。他是多领域的技术专家,也是BOLT接口引擎的发明者。
CSDN:首先请自我介绍一下,您目前专注于哪些技术领域。
刘志聪:大家好,我在2007年到2016年上半年担任迅雷总工程师。他是迅雷多个PC核心产品的架构师,设计了Bolt接口引擎来重塑迅雷的小程序JS框架,无法使用对象开发技术栈。近年来,他一直负责迅雷的基础研发部门。主要工作是迅雷基础核心系统(包括P2P、云存储、数据挖掘等)的研发,推动黑科技的研究和落地。
五年前开始思考分布式系统领域的一些基本问题,已经形成了一些理论。我将通过基础概念的创新,开创分布式系统的新开发模式,降低复杂系统的开发门槛,提高开发效率。为了把这个新理论付诸实践,几个月前我建立了“巴克云”,并将通过PaaS向所有开发者介绍这个新理论。
CSDN:对于想要小规模发展的公司和组织,应该如何入手,有哪些注意事项?
刘志聪:腾讯在9月底发布小程序后,我们调整公司方向为“PaaS支持小程序”。所以我们对小程序还是有一些研究的。
前几天的微信公众课上,张小龙已经把小程序的所有关键问题都讲的很清楚了,所以对于最近想玩小程序的团队,我的第一个建议是“跟风”,慎重多读几遍张小龙的演讲原文,更好地了解微信团队对小程序的未来规划。
我的第二个建议是“像傻子一样聪明”,简而言之,就是要把握原则,独立思考。毕竟在这个时间点上,还没有人拥有小程序完整的产品周期体验,大家都在探索。因此,独立思考并相信自己的判断非常重要。从小程序的设计目标来看,微信希望大家回归“提高效率、提升体验、以用户价值为核心”的初衷。
第三个建议是如何开始。微信倡导“更多企业将服务变成小程序,提供给所有微信用户”。也就是说,小程序作为现有服务的有力补充。没必要全力以赴,派个小团队以小程序的方式快速完成一个小功能就好。至于如何做热门小程序,我觉得这是一个新平台上的产品创新问题,整个行业在这个阶段的经验很少。那么我的建议是,让团队中对小程序感兴趣的工程师,最近可以将30%-40%的工作时间分配给自由发挥,公司应该提供一些其他的资源来支持他们。这样一来,就算打不中,
CSDN:有人说小程序“简单但不简单”。虽然提供了简单的功能和接口,但对后端的要求更高。您对此有何看法?
刘志聪:“轻前端,重后端”应该是现代互联网系统设计的常识。在条件允许的情况下,逻辑尽量往后放,不仅方便修改,还能提高前端的加载速度和性能,提升用户体验。官方直接对小程序进行了一些限制。比如一个小程序打包后,最大只有1MB,实际上保证了所有小程序的加载时间。这也算是逼着大家往正确的方向走。
小程序对后端的“高要求”直接体现在协议支持上。目前小程序只支持协议和WSS协议,在安全性方面是一个高起点。这两个协议过去不被认为是主流的应用协议,实际上有实践经验的开发和系统运维相对较少,这也造成了小程序后端开发不太好做的现状。
CSDN:能否简单介绍一下小程序的通信架构?
刘志聪:刚才我已经概述了小程序在协议支持方面的局限性。在实际开发中,如果使用小程序的通信框架,会发现更多的限制。坦白说,我觉得有些限制不是很合理。相信如果有更多的人反馈,小程序团队会及时做出调整。但现阶段,理解小程序通信架构的核心是理解这些局限。由于篇幅所限,我将简单列出,不做进一步分析。
小程序的JS框架不能使用对象第三方开发平台小程序好用吗,所以很多传统的JS库无法使用。