开发小程序,也许你并不需要第三方小程序框架 - 新闻资讯 - 云南小程序开发|云南软件开发|云南网站建设-昆明葵宇信息科技有限公司

159-8711-8523

云南网建设/小程序开发/软件开发

知识

不管是网站,软件还是小程序,都要直接或间接能为您产生价值,我们在追求其视觉表现的同时,更侧重于功能的便捷,营销的便利,运营的高效,让网站成为营销工具,让软件能切实提升企业内部管理水平和效率。优秀的程序为后期升级提供便捷的支持!

您当前位置>首页 » 新闻资讯 » 小程序相关 >

开发小程序,也许你并不需要第三方小程序框架

发表时间:2020-10-19

发布人:葵宇科技

浏览次数:34

这里说的去除小程序框架其实并不严谨,因为小程序本身也算是一个框架,而且是一个功能更加完善的框架系统。在前端的概念中,我们一般说一个框架是指一个用来帮助开发者构建用户界面的框架,而小程序框架本身不仅仅包含了UI层的功能,还提供了API能力、服务端的能力,所以说小程序框架本身是一个比常规的前端框架更完善的东西,或者说是一个完善的构建应用系统。本文中所说的原生小程序与小程序框架的对比,均指与第三方小程序框架的对比。

在小程序的世界里,原生小程序框架已经足够好,它就是那把给你雕刻小而美应用的雕刻刀,而不必要去寻找一把屠龙刀。

1、框架的取舍

最近Vue作者尤大关于框架设计平衡的分享中也提到了框架的取舍问题。

当我们去构建一个复杂的前端应用的时候,如果没有工具,而是使用原生JavaScript去开发的话,那只会花费更多的时间。对小程序来说,原生小程序框架就是我们的工具,它足以用来构建一个复杂的小程序应用。

然而web应用的开发环境是否也适用于小程序开发呢?

小程序框架在小程序生态发展的初期的确起到了很大的促进作用,然而随着小程序原生框架的不断完善,这些小程序框架的作用已经不再具备优势。

框架的确给前端带来了生产力的提高,也带动了前端界生态的发展。所以在小程序出现之后,一股框架之风也很快的出现,微信小程序刚推出之后,就出现了两个比较出名的小程序开发框架,wepy、mpvue。

这两个框架都带着一个共同的出发点,那就是将前端框架的开发体验移植到小程序开发中,从语法层做了改动,使用用户可以采用类似 Vue.js 风格的语法去开发微信小程序。

这些小程序框架初期主要做的是对小程序原生开发体验的增强,随着小程序生态的发展,又增加了跨端开发能力的支持。然而我们框架的引入真的增强了开发体验吗?我们是否真的需要跨端能力?是否需要通过引入框架的形式来实现跨端支持?

答案是否定的,引入框架对于小程序开发来说只会带来更多的问题。

2、原生小程序 VS Web 框架

如下是原生小程序与Web框架功能的对比情况,可以看到 Web 框架具备的能力,原生小程序也具备。

小程序出现的时候 Web 框架已经发展的比较成熟,所以可以简单猜测小程序的框架借鉴了许多 Web 框架的特性,这也是为什么小程序开发方式与前端开发方式如此接近的原因。

功能对比

在开发前端应用的时候,Vue和React技术栈是比较流行的两种类型,而对于选择什么样的生态工具时,许多开发者并不确定选择什么样的技术栈,所以一般都会选择Vue全家桶和React全家桶。

原生小程序框架从能力上就考虑了小程序场景所需的技术栈,这也是笔者推崇原生小程序开发方式的原因,如果你对你当前构建的应用场景需要什么样的技术栈特别清晰,那么就用原生的好了,因为原生小程序框架就是基于小程序场景开发的。选择什么样的技术栈,提供什么样的框架能力,这应该是小程序平台团队去思考的问题。

3、原生小程序的优势

从上面的功能层级对比我们可以发现,原生小程序与框架相比,功能是非常接近的,简单来说就是同一个物种,只不过是花猫、白猫的区别。那么除此之外,原生小程序还有哪些优势呢?

稳定安全可靠

原生小程序由专业的小程序团队维护更新,这是社区开源项目无法比拟的。即使是热门的开源项目也难保不会出现停滞更新维护的情况,也许有一天你就发现代码中的坑就得你自己的修复。

原生小程序还处于快速发展的阶段,每过一段时间就会发布新功能,如果使用原生小程序开发的话就可以及时的享用,而如果依赖于三方框架的话,只得依赖于框架作者更新之后才能使用。

作为一个开发人员,有时候选择一个什么样的框架是很难的,如果你想正确的选择框架,就得必须要了解框架所做的一些内部权衡,你必须知道这个框架朝着哪个方向发展,并且知道它与你构建的东西是否一致。而对于小程序来说,上述的问题其实不存在,小程序框架就是小程序平台团队为你量身打造的。

想了解更多小程序框架可以查看如下三个框架:

WePY让小程序支持组件化开发的框架WePY框架在开发过程中参考了 Vue等现有框架的一些语法风格和功能特性,对原生小程序的开发模式进行了再次封装,更贴近于MVVM架构模式, 并支持ES6/7的一些新特性。mpvue是一个使用Vue.js开发小程序的前端框架,目前支持 微信小程序、百度智能小程序,头条小程序和支付宝小程序。框架基于 Vue.js,修改了的运行时框架runtime和代码编译器compiler实现,使其可运行在小程序环境中,从而为小程序开发引入了Vue.js开发体验。Taro是一套遵循React语法规范的多端开发解决方案。使用Taro,我们可以只书写一套代码,再通过 Taro的编译工具,将源代码分别编译出可以在不同端(微信/百度/支付宝/字节跳动/QQ小程序、快应用、H5、React-Native 等)运行的代码。

4、小程序跨端需求

继微信小程序推出后,阿里,百度,头条也推出了自己的小程序平台,这就给小程序开发者带来一个问题,是每个平台开发一套还是寻求代码复用的技术方案。

其实跨端方案很多,现有的小程序框架大多都内置了跨端能力支持,对于跨端支持能力要求并不是特别高的团队,也可以搭建自己的跨端方案,因为这些小程序框架都很类似,所以说搭建一套针对特定场景的跨端方案也变得可行。除此之外,目前市面上还有一些第三方提供的小程序工具支持一个后台支持多端小程序,比如有赞、APPx应用魔方等。

当然每个人的具体需求和喜好选择不同,并不能一概而论。这里只是分享的个人使用感受,供大家参考讨论,有不同的意见欢迎留言讨论哦!

相关案例查看更多