得益于会react,会点jQuery,也会点vue,研究了一下小程序,发现这东西有好处也有坏处。
小程序出来这么久,我才开始第一次接触它,一点也不觉得学习的晚,因为在我做了第一个小程序项目之后,发现这玩意没什么难度,以后别再拿会做个小程序就出去装逼了啊!
也许每个开发者都听说说小程序开发速度快,产出高,经过我自己的尝试,发现了几个关键点。
1、小程序有专门的开发工具:微信开发者工具
这套开发工具集成了小程序所需要的开发环境,好处就是不需要像开发react或者vue一样绞尽脑汁的配置webpack环境。缺点就是这个开发工具不是那么好用,写记事本的感觉。
2、小程序有一套官方的基础demo,下载修改即可使用:官方的基础demo
我一开始不知道如何搭建小程序的项目,然后找到了这个demo,下载源码到本地,直接可以使用,不知道有没有cli。之后开发者需要把源代码的路由删掉,保留首页路由,然后进行开发。
3、前面2步对于新手来说只需要几个小时就能完成,如果你有经验了,几分钟就能完成并且做开发了。
4、小程序有一套自己的组件库:小程序组件库
组件库给人的好处是可以满足没有设计师的开发者的开发需求,虽然我感觉这些组件写的不怎么好用,对于不追求的人来说够用了。
5、小程序有一套API:小程序API
相比于组件库,我觉得API才是小程序最大的贡献,借助了微信APP为载体的优势,封装了很多好用的API,十八般武艺样样精通,而且文档写的很不错。
小程序再好,也有它的缺点。
1、小程序框架不容易理解
它的项目结构到没什么问题,问题在于文件名的重写,css => wxss,HTML => wxml,很别扭啊,因为我是个非常喜欢原生开发的程序员,一时难以接受这种奇葩的文件,第一眼看到wxss我还在想这东西是不是防止跨站攻击的玩意。
2、配置文件过多,学习比较费劲
到处都是json文件,看得挺难受。
3、js写的别扭
有个全局的App({}),还有个单个页面的Page({}),你说你是vue吗?写起来的感觉又不是。看得this.setData({}),你说你是react吗?也不像啊。咦,好像有点jQuery的影子,wx.API用起来挺像jQuery,但又不全是。像原生吗?不像,所有API都是用面向对象的方法封装的,如果是函数式编程,写起来和原生js可以很好的衔接。
对于这个集合了4大天王高科技,但又没有copy完全的东西,如果没有四大天王的一点基础,写起js还是挺费劲的,好在我全都有所了解,接受这些知识变得不那么难。
4、wxss没什么可说的,说说wxml,有人说像react-native,有人说像vue,有人说像angular,要我说,看到这玩意,我都怀疑自己学的html是不是没用了。
5、小程序还修改了很多原生的方法,比如事件函数,统一采用bind-event的写法。难受想哭,小程序好的地方在于有详细的文档描述了这些变化,坏的地方在于破坏了原生开发者的习惯。
6、忘掉过去,才能学会小程序。
不是看别人写的教程博客,而是看官方文档,因为文档写的很清晰,所以我觉得写篇教程还不如写篇开发心得更有作用。
如果你还没玩过小程序,那么打开官方文档的大门,按照官方教程模拟一遍,哦,你会发现它是如此的简单(项目搭建、环境配置),之后就是考验谁的js功底牛逼了。