我是如何从0到1开发小程序的
需声明的是,在开发小程序前,我已有一定的后端编程经验。考虑到大部分同学没有编程基础,我选择谈一谈这个题目——我是如何从0到1开发小程序的。好让想自行开发小程序的同学明白从开发到上线大概是怎样的一个流程,大致流程如下:
- 做什么
- 做成什么样
- 怎么做
做什么
我是应创业朋友之邀,帮他做一款管理智能门锁的小程序。无论你是自己做还是帮别人做,最重要的一件事是——搞清楚做什么。
你应该梳理清楚自己的小程序包含哪些模块、每个模块具备什么样的功能,把这些整理成思维导图或者文档。
做成什么样
从呈现形式来讲,小程序就是一个又一个的页面,在这一步,你需要把上一步的「做什么」转变成一副又一副的界面草图。
如果你会一些专业的UI绘图工具,可以用这些工具会好草图;如果你不会,没关系,手绘也可以。
除了绘图,这一步很重要的一点是把页面与页面之间跳转的行为搞清楚。举个例子:你必须绘图时同时绘好线,将点击某个按钮跳转到另外一个界面的跳转行为标注清楚。
这一步是为后面的具体编码打基础,也是至关重要。
怎么做
总的来讲,最难的还是这一步,大概可以分为以下几个小步骤。
1.跑起来
作为入门,先照着小程序官网的简易教程做一遍,这样你便——
- 注册了小程序账户;
- 安装了开发工具;
- 发布了属于自己的第一个小程序。
这仅仅是一个简单的入门,它能让你快速获得成就感,但它也是有缺陷的,它只展现了一部分。小程序其实可以类别网页,它只是一个呈现在众人眼前的「外表」,业界内称前端。而「外表」下的「内在」——小程序所呈现的数据需要有另外一个部分去支撑,业界内称后端,可以简单理解它是负责数据逻辑和后台控制逻辑的。至此,引出了另外一个入门小程序——三木聊天室,它是包含了前后端的,按照指引运行起来吧!
2.利其器
所谓工欲善其事必先利其器。这里的「器」包括以下最少必要知识。前端部分是:
- HTML(百度搜:HTML基础教程)
- CSS(百度搜:CSS基础教程)
- JavaScript(百度搜:JavaScript基础教程)
后端部分,我的建议是:
- Node.js(百度搜:Node.js基础教程)
言下之意是,后端其实有很多开发语言,之所以建议Node.js,是因为它其实是JavaScript语言的一个子集,这可以节省很多学习成本。
以上知识储备,目的是让你掌握「语法」,你可以大概浏览一遍,边学习边查看上一步部署到小程序开发工具的项目的源码,看看能看懂多少。没有看懂也无需气馁,善用搜索引擎,慢慢积累即可。我也没有看懂全部代码,但不影响我开发小程序,因为我更专注的是如何去「用这些例子代码」。
会一些「语法」,并不代表你会「流利的说」。你还需要通读小程序官网的所有文章,了解小程序具备哪些能力(业界内称API)可调用。小程序官网有一个「小程序示例」(微信小程序搜索此名称),展现了官网几乎所有的API,建议边看官方文档,边用手机去玩「小程序示例」的相应示例。
这个「小程序示例」在GitHub上有一个拷贝,最近一次更新时间是一年前,虽然不是最新版,但它揭示了「小程序示例」部分功能实现,同样是非常好的工具和素材,把它导入到你的开发工具里面看一看吧!
3.撸起袖子干
有了前面的储备,在第一步导入的「三木聊天室」的基础上,去改造和发挥吧!把你前面所设计的草图一页一页实现出来。总之,善用搜索引擎,遇到问题先仔细阅读官网文档(相比百度搜索到的博客,这更权威)。
4.更进一步
对于第一步运行的「三木聊天室」的后端代码,其实是运行在腾讯云提供的免费测试或生产环境中的,如果你想将部署到自己的服务器以获取更高的灵活性,这需要一定的Linux基础知识,可参考这篇文章。
还有一点便是,如果对小程序的美感有要求,最好还是能请专业的设计师设计。
短短一篇分享很难真正带你入门,纯属抛砖引玉。如果你真有决心要学,可以找一些付费课程系统的进行学习,我常用的App「极客时间」上面便有相应付费教程,有兴趣可以了解一下。