第 1 章 微信小程序与云开发从入门到实践从零开始做小程序——开发认识微信小程序
小北的参考工具书
-
小程序开发的图书并不少,这本书仍然值得你拥有!
首先,这是一本全栈小程序开发教程,循序渐进,由浅入深,介绍了小程序开发你想了解的方方面面,包括近其小程序开发的各种新技术应用。
其次,本书的讲解非常通俗易懂,看得懂,学得会,如果你是程序开发小白,只要按着本书的路线学习,多加操练,相信你很快从小白变身为开发高手。
适应面广,本书不仅适合入门,也可以进阶提升,如果你是有一定开发经验的程序员,本书提供的难度较高的商城项目,讲解了小程序开发的前后端技术,该项目几乎接近于商业项目,可以大大提升你统筹项目的能力。
为使读者能够很快掌握小程序的开发技能,本书除提供了大项目,各章还适时提供了小案例,读者可以边学边练,轻松掌握开发技巧。
最后,本书丰富的资源也很难得,比如,74集视频教程由作者亲授,视频教程还额外介绍了新闻客户端,读书社区的开发开发,扩充了本书的内容,本书提供的源代码,也可以帮助读者上机练习。
总之,这是一本集专业性、先进性、实用性为一体的小程序开发的好书,不走弯路,才能很快达成目标,期待你能从本书得到预期的收获。
从零开始做小程序
一、开发认识微信小程序
1.1小程序的发展史
2016年9月21日,微信小程序正式开启内测,在内测期间,各种目光和评论都集中在微信小程序这个新兴的应用平台上,等待观望其后续的发展。
2017年1月9日,第一批小程序正式上线,用户可以在微信上体验各种各样小程序提供的服务。小程序的热度达到最高,各种褒贬随之而来。
2017年12月28日,微信开放了小游戏功能,并且通过“跳一跳”再次引爆热点。
2018年1月18日,微信提供了小程序侵权的投诉渠道,平台规范性更加完善。
2018年1月25日,小程序开放与移动端APP互相跳转与交互的功能。 2018年3月,小程序广告组件启动内测,开发者应用变现的能力增强。
2018年7月13日,小程序支持收藏,用户可以将喜欢的小程序直接添加到“我的小程序”中。
2018年8月10日,小程序后台数据分析工具进一步升级,运营人员可以在小程序后台看到更多用户数据。
1.1.1优质小程序示例
1.2小程序的适用场景
不需要下载安装,第一次使用门槛极低。
节省流量、节省安装时间、不占用桌面。
体验仅次于原生应用,但要比网页应用好很多。
小程序平台更统一,操作流程更统一,更容易上手使用。 对于开发者来说,极大的降低开发成本,并且可以忽略平台差异。 是否需要紧密结合线下,如果需要,小程序非常合适。
业务逻辑是否足够简单,小程序有体积限制,无法承载过于负责的业务。
业务逻辑是否即用即走型,小程序不会占用桌面,因此相较于移动端应用,不利于做连续性强的业务。
是否要可以借助微信用户群,如果你的业务场景不和微信用户体系相抵触,那么使用小程序非常合适,会使得你的业务非常容易推广。
1.2.1小程序设计建议微信小程序设计指南 | 微信开放文档 (qq.com)
https://developers.weixin.qq.com/miniprogram/design/
小程序的特点之一就是高效,因此在设计界面时,应尽量的减少冗余信息,将当前界面最核心、最主要的功能展示出来。同时,一个界面中也不要有多个核心功能点,这样会使重点分散,为用户的使用带来困惑。
小程序更适用于即用即走的功能性应用,因此在设计时,每一步流程要环环相扣,明确的指引用户一步一步的完成业务场景。切勿在某个业务流程中间穿插其他的业务或需要用户操作的行为,打断用户当前的使用流程是非常糟糕的。
小程序在设计时,要考虑用户的前进与返回,页面导航结构要清晰,让用户明确的知道下一步或上一步的场景。同时,也要进行好异常的处理,程序在使用过程中,免不了会有异常发生,要注意捕获与处理,必要时将异常的原因告知用户。
由于小程序是微信平台内的平台,在设计时,其配色方案要和微信本身的风格保持一致,过大的色差会使用户产生不适。
例如下拉刷新与上拉加载功能组件,耗时任务的等到组件、功能按钮选择框、弹窗、提示框、输入框等等组件应尽量与微信保持一致,在字体和文本风格颜色的选择上也应尽量与微信保持一致,这样可以给用户带来舒适的体验性。
二、准备工作
2.1注册小程序开发账号
https://mp.weixin.qq.com/cgi-bin/registermidpage
微信公众平台 (qq.com)https://mp.weixin.qq.com/下拉找到小程序图标点击去:
前往注册:
邮箱激活:
点击链接激活:
个人信息登记:(注册范围有5种:个人、企业、政府、媒体和其他组织)
前往小程序:
2.2小程序后台功能
成员管理 反馈管理 统计功能 高级功能
2.3下载和配置小程序开发工具
微信开发者工具下载地址与更新日志 | 微信开放文档 (qq.com)https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html
2.4发布小程序体验版与上架小程序
三、小程序版的HelloWorld程序
3.1创建一个小程序项目
其中,项目名称是项目的名字,小北这里命名为Hello World!,目录选项用来设置项目所存放的磁盘位置,AppID 需要填入前面申请到的小程序账号中配给的AppID,这里也可以使用测试号的AppID,需要注意,测试号并不支持云开发,但这并不影响我们的学习。申请测试号 | 微信开放文档微信开发者平台文档https://developers.weixin.qq.com/miniprogram/dev/devtools/sandbox.html
(小北的是:gh_85e1cb8fd838)
开发模式可选小程序或插件,这里选择小程序。
(目前,小程序的开发语言除了可以使用JavaScript 外,也支持TypeScript,对于CSS样式表来说,小程序框架也支持使用Less或Sass,如果读者对TypeScript、Less 和 Sass 不太熟悉也没有关系,只使用JavaScript 和 CSS 也可以开发出完整的小程序应用。)
最后,可以选择一个模板,微信开发者工具会根据模板的不同生成不同的基础代码,这里选择基础模板即可。
3.2成果展示:
相关文章:

第 1 章 微信小程序与云开发从入门到实践从零开始做小程序——开发认识微信小程序
小北的参考工具书 小程序开发的图书并不少,这本书仍然值得你拥有! 首先,这是一本全栈小程序开发教程,循序渐进,由浅入深,介绍了小程序开发你想了解的方方面面,包括近其小程序开发的各种新技术应…...

数据隐私安全趋势
在当今社交媒体和开源开发的世界中,共享似乎已成为社会常态。毕竟,我们都被教导分享就是关怀。这不仅适用于个人,也适用于公司:无论是有意在社交媒体帐户和公司网站上,还是无意中通过员工的行为,公司可能会…...

学习磁盘管理
文章目录 一、磁盘接口类型二、磁盘设备的命名三、fdisk分区四、自动挂载五、扩容swap六、GPT分区七、逻辑卷管理八、磁盘配额九、RAID十、软硬链接 一、磁盘接口类型 IDE、SATA、SCSI、SAS、FC(光纤通道) IDE, 该接口是并口。SATA, 该接口是串口。SCS…...

C语言从入门到精通(一) - C语言开发神器CLion
clion安装配置 下载安装 下载 安装 运行clion clion设置 配置快捷键 配置快捷键为eclipse模式 [可以选择自己喜欢的快捷键模式] 添加cygwin编译器 下载cygwin Cygwin Installation Cygwin是一个在windows平台上运行的类UNIX模拟环境,是Cygnus Solutions公司开发的…...

【办公类-16-10-02】“2023下学期 6个中班 自主游戏观察记录(python 排班表系列)
背景需求: 已经制作了本学期的中4班自主游戏观察记录表 【办公类-16-10-01】“2023下学期 中4班 自主游戏观察记录(python 排班表系列)-CSDN博客文章浏览阅读398次,点赞10次,收藏3次。【办公类-16-10-01】“2023下学…...
SpringBooot之RestTemplate接口返回多层泛型导致java.util.LinkedHashMap cannot be cast to异常
统一泛型返回对象 Data public class Res<T> implements Serializable {private static final long serialVersionUID 6558796578827818466L;private Integer code; //状态码private String msg; //返回消息private T data; //数据 }data里包裹的泛型对象假设是DZPJ D…...
【新三板年报文本分析】第二辑:从pdf链接的列表中批量下载年报文件
第一辑中已经获取了新三板年报的pdf链接,使用request库进行批量下载。 send_headers为requests的headers,不需要做变动。 在for循环中读取每一行数据的链接数据,创建一个空pdf,将链接指向的pdf文件写入空pdf文件。 for循环内容…...

Jessibuca 插件播放直播流视频
jessibuca官网:http://jessibuca.monibuca.com/player.html git地址:https://gitee.com/huangz2350_admin/jessibuca#https://gitee.com/link?targethttp%3A%2F%2Fjessibuca.monibuca.com%2F 项目需要的文件 1.播放组件 <template ><div i…...

【Docker】03 容器操作
文章目录 一、流转图二、基本操作2.1 查看本地容器进程2.2 启动容器2.2.1 交互式启动容器2.2.2 后台启动容器 2.3 进入容器2.4 停止启动重启容器2.5 退出容器2.6 删除容器2.7 提交容器(打包成镜像)2.8 拷贝文件2.8.1 拷贝容器内文件到宿主机2.8.2 拷贝宿…...

【HarmonyOS】鸿蒙开发之Stage模型-基本概念——第4.1章
Stage模型-基本概念 名词解释 AbilityStage:应用组件的“舞台“ UIAbility:包含UI界面的应用组件,是系统调度的基本单元 WindowStage:组件内窗口的“舞台“ Window:用来绘制UI页面的窗口 HAP:Harmony Ability Package(鸿蒙能力类型的包) HSP:Harmony Sh…...

什么是芯片委外管理系统? 及其主要作用
随着半导体产业的飞速发展,芯片制造企业面临着日益复杂的生产和管理挑战。为了应对这些挑战,许多企业选择将部分生产环节委托给外部厂商进行,这种合作模式被称为“委外加工”。而为了有效地管理和协调这一合作模式,便诞生了“芯片…...
【实战-08】 flink自定义Map中的变量的行为
场景 自定义Map或者别的算子的时候,有时候需要定义一些类变量,在flink内部高并发的情况下需要正确理解这些变量的行为 代码 package com.pg.function;import org.apache.flink.api.common.functions.MapFunction; import org.apache.flink.api.common…...

Docker Volume
"Ice in my vein" Docker Volume(存储卷) 什么是存储卷? 存储卷就是: “将宿主机的本地文件系统中存在的某个目录,与容器内部的文件系统上的某一目录建立绑定关系”。 存储卷与容器本身的联合文件系统? 在宿主机上的这个与容器形成绑定关系…...

开源计算机视觉库OpenCV常用的API介绍
阅读本文之前请参阅-----开源计算机视觉库OpenCV详细介绍 OpenCV(开源计算机视觉库)是一个跨平台的计算机视觉和机器学习软件库,它提供了大量的API(应用程序编程接口),用于处理图像和视频分析、对象检测、面…...

pytorch -- torch.nn下的常用损失函数
1.基础 loss function损失函数:预测输出与实际输出 差距 越小越好 - 计算实际输出和目标之间的差距 - 为我们更新输出提供依据(反向传播) 1. L1 torch.nn.L1Loss(size_averageNone, reduceNone, reduction‘mean’) 2. 平方差(…...

daydayEXP: 支持自定义Poc文件的图形化漏洞利用工具
daydayEXP: 支持自定义Poc文件的图形化漏洞利用工具 基于java fx写的一款支持加载自定义poc文件的、可扩展的的图形化渗透测试框架。支持批量漏洞扫描、漏洞利用、结果导出等功能。 使用 经过测试,项目可在jdk8环境下正常使用。jdk11因为缺少一些必要的组件,所以jdk11版本工…...

无法访问云服务器上部署的Docker容器(二)
说明:记录一次使用公网IP 接口地址无法访问阿里云服务接口的问题; 描述 最近,我使用Docker部署了jeecg-boot项目,部署过程都没有问题,也没有错误信息。部署完成后,通过下面的地址访问后端Swagger接口文档…...

在Pycharm中运行Django项目如何指定运行的端口
方法步骤: 打开 PyCharm,选择你的 Django 项目。在菜单栏中,选择 “Run” -> “Edit Configurations...”。在打开的 “Run/Debug Configurations” 对话框中,选择你的 Django server 配置(如果没有,你…...
Android将 ViewBinding封装到BaseActivity基类中(Java版)
在Android中使用Java语言将ViewBinding封装到基类中,操作步骤如下: 1、在项目的build.gradle文件中启用了ViewBinding,添加以下代码: android {...buildFeatures {viewBinding true} } 2、创建一个名为“BaseActivity”的基类&…...

JSP实现数据传递与保存(一)
一、Web开发步骤 1.1两类模式 后端——————前端 先有前端,前端用的时候直接调用 后端已实现注册接口,接口名为doRegister.jsp 前端此时: 前端的form表单中的action提交地址就只能填doRegister.jsp,即: <f…...
挑战杯推荐项目
“人工智能”创意赛 - 智能艺术创作助手:借助大模型技术,开发能根据用户输入的主题、风格等要求,生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用,帮助艺术家和创意爱好者激发创意、提高创作效率。 - 个性化梦境…...
C++.OpenGL (14/64)多光源(Multiple Lights)
多光源(Multiple Lights) 多光源渲染技术概览 #mermaid-svg-3L5e5gGn76TNh7Lq {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3L5e5gGn76TNh7Lq .error-icon{fill:#552222;}#mermaid-svg-3L5e5gGn76TNh7Lq .erro…...

Mysql中select查询语句的执行过程
目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...
比较数据迁移后MySQL数据库和OceanBase数据仓库中的表
设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...
【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)
LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 题目描述解题思路Java代码 题目描述 题目链接:LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...
【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案
目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后,迭代器会失效,因为顺序迭代器在内存中是连续存储的,元素删除后,后续元素会前移。 但一些场景中,我们又需要在执行删除操作…...
Python 训练营打卡 Day 47
注意力热力图可视化 在day 46代码的基础上,对比不同卷积层热力图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pypl…...
高防服务器价格高原因分析
高防服务器的价格较高,主要是由于其特殊的防御机制、硬件配置、运营维护等多方面的综合成本。以下从技术、资源和服务三个维度详细解析高防服务器昂贵的原因: 一、硬件与技术投入 大带宽需求 DDoS攻击通过占用大量带宽资源瘫痪目标服务器,因此…...

《信号与系统》第 6 章 信号与系统的时域和频域特性
目录 6.0 引言 6.1 傅里叶变换的模和相位表示 6.2 线性时不变系统频率响应的模和相位表示 6.2.1 线性与非线性相位 6.2.2 群时延 6.2.3 对数模和相位图 6.3 理想频率选择性滤波器的时域特性 6.4 非理想滤波器的时域和频域特性讨论 6.5 一阶与二阶连续时间系统 6.5.1 …...

java高级——高阶函数、如何定义一个函数式接口类似stream流的filter
java高级——高阶函数、stream流 前情提要文章介绍一、函数伊始1.1 合格的函数1.2 有形的函数2. 函数对象2.1 函数对象——行为参数化2.2 函数对象——延迟执行 二、 函数编程语法1. 函数对象表现形式1.1 Lambda表达式1.2 方法引用(Math::max) 2 函数接口…...