微信小程序学习笔记(一)
一、 开发者注册
- 微信公众平台账号注册
登陆微信公众平台,使用邮箱注册微信公众平台账号(类别为小程序)。 - AppID申请
每一个微信小程序都需要一个唯一的AppID作为标识,在程序正式上线发布前也可以使用测试ID来学习和开发测试版本。
二、 项目建立和发布
-
部署开发工具
小程序的开发依赖于微信官方发布的IDE微信web开发者工具。支持Windows 7以上的Windows系统和Mac OS系统。
小程序的开发需要使用微信账号登陆,即需要联网使用 -
新建项目
新建项目可以选择小程序、小游戏、或代码片段。前两种都比较好理解,代码片段是指的可以通过线上分享的小型项目。也可以通过把部分代码做成代码片段方便地分享给其他人。 -
功能测试、调试
参照官方文档和一些web的经验简单测试了诸如显示图文,设置标签页,修改页面样式之类的内容。更复杂的功能计划等进一步学习前端技术后再实现。
微信小程序IDE的调试器和大多数web调试器功能基本一样。此外,开启了调试模式的小程序可以使用Vconsole功能,在真机上查看 console API 输出的日志内容和额外的调试信息,需要在点击屏幕右上角的按钮打开的菜单里选择「打开调试」,然后查看相关的日志。
微信小程序编译后可以实时地观察页面,使用预览功能可以编译并发送到微信的手机客户端进行实机预览。
真机调试功能可以把小程序发送到移动端,并在开发工具中进行实时调试。
测试好的代码可以使用工具—>上传功能上传到微信平台。
三、 小程序的结构
- 文件和逻辑结构
微信提供了自己的一套框架,包括使用.wxml和.wxss文件构建的视图层。和使用.js的逻辑层。并提供了在视图层和逻辑层之间通信的系统。
- 和常规Web前端开发的若干区别
1、 在微信的框架内语言语法和结构有一些不同。但和web前端开发很相似。
2、 小程序的官方框架提供丰富的API可以很方便的实现很多功能,提供了逻辑层和视图层之间传输事件和数据的系统,可以让开发者专注于内容和逻辑。但是也有不少限制。
3、 尽管技术上微信小程序的开发很像web的前端开发,但思路上微信小程序更偏向于一个APP而不是网页。
四、 一些体会
1.前期主要做了两项工作。分别是做了一些调查来了解小程序(小游戏)可以做什么,制作小程序(小游戏)需要什么能力。
某种意义上来说小程序相当于腾讯定制版的依托于微信平台存在的html5。最初诞生时是相对于微信公众号而言更偏应用的所谓“应用号”,后来更名为小程序,又增加了小游戏的功能。从技术上来说和web前端开发很像,但是理念上更侧重于APP。其实类似的产品不只小程序一个,目前比较有名的UC、百度、阿里、谷歌都有类似的产品。不过目前来看因为微信的社交属性加成,目前微信小程序是中国同类产品中发展的最好的一个。
2、小程序在功能属性上更适合为低频、刚需类的需求来服务。因为通常这类服务从用户角度看一般装一个APP用的不多,删了不行,放着又占存储空间,而且安卓平台还有很多应用在苹果系统上老老实实,一到安卓上就变得比谁都流氓,想方设法留在用户的内存中,最终造成机器卡顿,资源浪费,给用户带来很多困扰。从开发者的角度看,对于一个产品开发者往往要做两套(安卓和IOS)APP让用户安装,微信小程序的出现解决了这种市场痛点。技术上来说html5能做的,小程序大多都能做,比如做个购物平台,企业展示,小工具之类的,不过更多的还是基于已有的业务把小程序作为信息接口提供服务,比如顺丰速运、外卖订餐、生活缴费这种既有服务的拓展。
另一方便微信是一个相对封闭的生态圈,对小程序的分享、使用都有一些限制,比如只能使用微信自家的微信支付,禁止外部链接等等。
3、在得出以上结论以后我考虑自己的情况认为自己目前并没有现有的的商业服务可以提供,服务类的路并不容易,但是建一个简单的服务平台也是一种可以考虑的选项,比如根据自己学校没有官方BBS,最多人使用的百度贴吧又不够好用,一个轻量级的信息交流平台会是一个有前景的产品。再或者小工具类,天气啊,播放器啊,记事本之类的也是一种选择。游戏的开发通常需要较长的周期,而且游戏很大程度上更依赖设计、美术,而非开发技术,也不是很适合我目前的情况。
4、对于开发小程序需要的能力,至少需要基础的前端开发能力,能配合框架做出可用的页面,为此需要加强学习html + js + css,来加深对微信小程序的理解。相关后端支持也是一款线上小程序所必须的。