微信小程序 | 小程序开发

news2025/1/11 7:52:23

🖥️ 微信小程序专栏:小程序开发 初级知识
🧑‍💼 个人简介:一个不甘平庸的平凡人🍬

✨ 个人主页:CoderHing的个人主页

🍀 格言: ☀️ 路漫漫其修远兮,吾将上下而求索☀️

👉 你的一键三连是我更新的最大动力❤️


目录

一、认识小程序开发

什么是小程序?

各个平台小程序的时间线:

各个平台为什么都需要支持小程序?

二、小程序开发选择

小程序由谁来开发

三、小程序开发前准备

开发小程序的技术选型

uni-app 和 taro

需掌握的预备知识

注册账号 - 申请AppID

下载小程序开发工具

使用VSCode开发

创建小程序项目

开发工具的解析

四、小程序目录的结构

项目目录结构

阅读官方文档

五、小程序的开发体验

小程序开发体验

六、小程序MVVM架构


一、认识小程序开发

什么是小程序?

        小程序(Mini Program)是一种不需要下载安装即可使用的应用,它实现了“触手可及”的梦想

使用起来方便快捷,用完即走

        事实上,目前小程序在我们生活中已经随处可见(特别是这次疫情的推动,不管是什么岗位、什么年龄阶段的人,到哪都需要打开健康码)

最初我们提到小程序时,往往指的是 微信小程序:

        但是目前小程序技术本身已经被各个平台所实现和支持;

那么目前常见的小程序有哪些呢?

微信小程序、支付宝小程序、淘宝小程序、抖音小程序、头条小程序、QQ小程序、美团小程序等

各个平台小程序的时间线:

各个平台小程序大概的发布时间线:
2017年1月 微信小程序上线,依附于微信App;
2018年7月 百度小程序上线,依附于百度App;
2018年9月 支付宝程序线,依附于支付宝App;
2018年10月 抖音小程序上线,依附于抖音App;
2018年11月 头条小程序上线,依附于头条App;
2019年5月 QQ小程序上线,依附于QQApp;
2019年10月 美团小程序上线,依附于美团App;

各个平台为什么都需要支持小程序?

你有,我也得有

        大厂竞争格局中一个重要的一环。

小程序作为介于H5页面和App之间的一项技术,它有自身很大的优势;

        体验比传统H5页面要好很多;

        相当于传统的App,使用起来更加方便,不需要在应用商店中下载安装,甚至注册登录等麻烦的操作

小程序可以间接的动态为App添加新功能

        传统的App更新需要先打包,上架到应用商店之后需要通过审核(App Store);

        小程序可以在App不更新的情况下,动态为自己的应用添加新的功能需求

目前 这么多小程序的竞争格局中,哪一个是使用最广泛的呢?

        显示是微信小程序,目前支付宝、抖音小程序也或多或少有人在使用;

        其实我们透过小程序看本质,他们本身还是应用和平台之间的竞争,有最大流量入口的平台,对应的小程序也是用户更多一些

        目前在公司开发小程序主要开发的还是微信小程序,其他平台的小程序往往是平台本身的一些公司或者顺手开发的

所以一定要重点学习 微信小程序的开发

二、小程序开发选择

小程序由谁来开发

我们确定一下小程序的定位是怎么样的

        介于原生App和手机H5页面之间的一个产品定位。

那么,由此我们也会产生一个疑惑:小程序是由谁来开发呢

        难道搞出一个《小程序开发工程师》

        由谁开发事实上是由它的技术特点所决定的,比如微信小程序WXML、WXSS、JavaScript;

        它更接近于我们前端的开发技术栈,所以小程序都是由我们前端来开发

也就是说呢,你想要成为一个前端工程师或者找一份前端的工作,小程序是你必须学会的。

三、小程序开发前准备

开发小程序的技术选型

原生小程序开发:

        微信小程序:(浏览器直接搜索 微信小程序)

                主要技术包括 : WXML WXSS Js

        支付宝小程序:(浏览器直接搜索 支付宝小程序)

                主要技术包括:AXML ACSS Js

选择框架开发小程序:

        Mpvue:

                Mpvue是一个使用Vue开发小程序的前端框架,也是 支持 微信小程序、百度智能小程序,头条小程序 和 支付宝小程序;
该框架在2018年之后就不再维护和更新了,所以目前已经被放弃;

        Wepy:

                WePY是由腾讯开源的,一款让小程序支持组件化开发的框架,通过预编译的手段让开发者可以选择自己喜欢的开发风格去开发小程序。

                该框架目前维护的也较少,在前两年还有挺多的项目在使用,不推荐使用;

uni-app 和 taro

Uni-app:

        由DCloud团队开发和维护;

        uni-app是一个 使用Vue开发 所有前端应用的框架,开发者编写一套代码,可发布到IOS 安卓 Web(响应式) 及各种小程序 快应用等 多个平台

        uni-app目前是很多公司的技术选型,特别是希望适配移动端App的公司;

Taro:

        由京东团队开发和维护;

        taro 是一个开放式 跨端 跨框架 解决方案,支持使用 React/Vue/Nerv 等框架来开发 微信 / 京东 / 百度 / 支付宝 / 字节跳动 / QQ / 飞书 小程序 / H5 / RN 等应用

        taro因为本身支持React、Vue的选择,给了我们更加灵活的选择空间

        特别是在Taro3.x之后,支持Vue3、React Hook写法

uni-app和taro开发原生App

        无论是适配原生小程序还是原生App,都有较多的适配问题,所以还需要多了解原生的一些开发知识

        产品使用体验整体相较于原生App差很多

        也有其他的技术选项来开发原生App:ReactNative、Flutter;

需掌握的预备知识

小程序的核心技术主要是三个:

        页面布局: WXML 类似 HTML

        页面样式 WXSS 几乎就是CSS(某些不支持,某些增强,基本一致)

        页面脚本 JavaScript + WXS(WeixinScript)

 

如果你之前已经掌握了Vue或者React等框架开发,那么学习小程序是更简单的

        因为里面的核心思想都是一致的(比如组件化开发 数据响应式 mustache语法 事件绑定等等)

注册账号 - 申请AppID

注册账号:申请AppID

        接入流程: (百度 微信小程序)

 

 

下载小程序开发工具

小程序的开发工具:

        微信开发者工具: 官方提供的开发工具,必须下载,安装

        VSCode:很多人比较习惯使用它来编写代码

微信开发者工具下载:(百度)

 

使用VSCode开发

推荐插件:

 

创建小程序项目

 

开发工具的解析

 

四、小程序目录的结构

项目目录结构

 

阅读官方文档

 

五、小程序的开发体验

小程序开发体验

小程序开发初体验

        1 数据绑定

        2 列表渲染

        3 事件监听

 

六、小程序MVVM架构

Vue的MVVM和小程序MVVM对比

 

 

MVVM为什么好用?

        DOM Listeners: ViewModel层可以将DOM的监听绑定到Model层

        Data Bindings: ViewModel层可以将数据的变量, 响应式的反应到View层

MVVM架构将我们从 命令式编程 转移到 声明式编程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/25106.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

51单片机学习笔记2 仿真器的使用及STC89Cxx简介

51单片机学习笔记2 仿真器的使用及STC89Cxx简介)一、连接步骤1. 硬件连接2. 安装软件驱动3. 检查是否安装成功二、仿真步骤1. 打开一个51工程2. 选择仿真设备3. Settings设置4. Utilities设置5. 点击仿真三、连接开发板四、STC89Cxx单片机简介1. 单片机2. 51单片机3…

红黑树的插入与验证——附图详解

文章目录红黑树性质红黑树的插入前言寻找插入位置情况 1.0情况 1.1情况 1.2情况 1.3情况 2.0情况 2.1情况 2.2情况 2.3完整代码红黑树的检验验证代码和用例红黑树 上篇文章我们说到 AVL 树在新增 / 减少结点的时候会进行旋转以保持 AVL 树的高度平衡, 但是实际上在需要 频繁加…

【构建ML驱动的应用程序】第 2 章 :制定计划

🔎大家好,我是Sonhhxg_柒,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🔎 📝个人主页-Sonhhxg_柒的博客_CSDN博客 📃 🎁欢迎各位→点赞…

【线程】多线程安全

考点,线程同步有哪些操作: 一、概念 如果一个函数能被多个线程同时调用且不发生竞态条件,则成为它是线程安全,也叫可重入函数。通俗地说就是多线程程序无论调度顺序怎么样都可以得到正确的结果,运行时程序不出错。可重…

2023年浙大MBA项目的后备考阶段三大策略:你永远要相信光的力量

有些人,走着走着就掉队了。距离今年的管理类联考还有一个月时间,一切看似终成定局,但实际上仍有很大转圜空间。对浙大MBA的准考生来说,走到目前这一步,剩下的一个月时间务必要坚持走完,而且要更加的勇敢和底…

SDN功能实现(四)--- 实现自定义action(1)修改OVS源码<队列去重(内核态实现)>

实现功能:设计一个新的action,实现在冗余链路中的数据包去重 一:在内核级定义OVS action (一)在datapath/linux/compat/include/linux/openvswitch.h中添加: enum ovs_action_attr {/* ... *//** after…

SparkStreaming

sparkstreaming 1.批处理与流处理 spark本身作为引擎时是批处理,从信息源全部读取数据,然后一批一批处理数据。处理sparkSQL等之后再存入hdfs。 sparkstreaming是实时引擎,在一个窗口时间内(比如1s)积攒数据&#x…

Spring IOC源码:实例化前的准备工作

前言 上篇文章我们讲解了IOC比较重要的后置处理器注册方法,本篇文章讲解实例化前的准备工作,包括国际化、多播器创建、监听器注册等节点。 正文 进入refresh方法中,可以看到在正式实例化初始化方法前,还有4个方法: …

Day09--小程序API的Promise化

1.基于回调函数的异步API的缺点 ************************************************************************************************************** 2.啥子是API Promise化呢? *****************************************************************************…

【Java八股文总结】之MyBatisPlus

文章目录MybatisPlus一、MyBatis Plus介绍1、Mybatis 和 Mybatis Plus 的区别Q:MyBatis的优缺点Q:MyBatis Plus的优点Q:MyBatis-Plus中的lambda表达式?Q:MyBatis中的动态标签有哪些?2、MyBatis Plus常用注解…

ZYNQ之FPGA学习----RAM IP核使用实验

1 RAM IP核介绍 RAM 的英文全称是 Random Access Memory, 即随机存取存储器, 它可以随时把数据写入任一指定地址的存储单元,也可以随时从任一指定地址中读出数据,其读写速度由时钟频率决定 Xilinx 7 系列器件具有嵌入式存储器结…

【OpenCV 例程 300篇】248. 特征描述之HOG描述符

『youcans 的 OpenCV 例程300篇 - 总目录』 【youcans 的 OpenCV 例程 300篇】248. 特征描述之HOG描述符 1. 方向梯度直方图 方向梯度直方图(Histogram of Oriented Gradient, HOG)使用梯度方向的分布作为特征来构造描述符,应用非常广泛。 梯…

07-HTTPS双向认证及Java案例

1.双向认证流程 客户端发起建立HTTPS连接请求,将SSL协议版本的信息发送给服务端;服务器端将本机的公钥证书(server.crt)发送给客户端;客户端读取公钥证书(server.crt),取出了服务端公…

wordpress的手工迁移

我的场景 将某个在阿里云服务器(windows操作系统)上apache容器下的wordpress服务迁移到另一个linux主机上的apache上。 迁移要点 1、迁移源主机下的wordpress文件夹,在apache容器下的htdocs文件夹中 2、迁移数据库 3、根据目标&#xff0…

表弟大学毕业要学前端,我给他制定了一份亲属自学计划

表弟也终于到了马上要大学毕业的时间,然后听说我在做前端开发工作,就想着能不能和我一起搞一搞。 我说这又不是小时候一起去地里抓兔子,说走就一起走,拿上工具一起走了,这得学啊。看着表弟期待的眼神,他问了…

Scientific Reports|比较转录组分析揭示了杀菌剂氰烯菌酯对尖孢镰刀菌的抗性调控机制和杀菌活性

TITLE:Comparative transcriptome analysis reveals the resistance regulation mechanism and fungicidal activity of the fungicide phenamacril in Fusarium oxysporum 译名:比较转录组分析揭示了杀菌剂氰烯菌酯对尖孢镰刀菌的抗性调控机制和杀菌活性…

Java代码审计——文件操作漏洞

目录 (一)、 文件操作漏洞简介 (二) 、漏洞发现与修复案例 2.1 文件包含漏洞 2.2 文件上传漏洞 (三) 文件下载/读取漏洞 (四).文件写入漏洞 (五&…

Arcgis建筑面shp由DSM和DEM获取高度拉伸并可视化

效果 1、准备数据 DEM、DSM数据精度尽量高一些 1)DEM 2)DSM 3)建筑shp 所有数据坐标统一,而且加载后位置能对上,DEM和DSM具有相同的像元大小 2、准备数据前的一些操作 1)矢量shp裁剪

C#实现最大公约数和最小公倍数

最大公约数: 最大公因数,也称最大公约数、最大公因子,指两个或多个整数共有约数中最大的一个。a,b的最大公约数记为(a,b),同样的,a,b,c的最大公约…

net.sf.json.JSONObject 类的日常使用,非阿里巴巴的JSONObject,附上作者的jsonDemo

文章目录Json介绍作者的Demo项目地址常见的转化使用测试json的添加属性,打印bean与json互转deepBean与json互转list与json互转map与json互转demo所用到的实体类StudentGrade个人使用的依赖常用方法其他参考文档Json介绍 1、JSONObject只是一种数据结构,可…