具体描述
微信小程序是一种最新的App替代品,其定位是在微信公众号的生态链中,使用微信本身作为应用平台,无须更新和下载,开箱即用。《微信小程序开发零基础入门》由浅入深、循序渐进,使零基础的读者能够熟练掌握使用微信开发小程序应用。
《微信小程序开发零基础入门》分为8章,第1~2章是关于小程序的应用场景和小程序本身的介绍,包括小程序涉及的技术和IDE开发环境的使用。第3章是HTML 5、CSS 3、JavaScript的语法介绍,然后引申出小程序使用的WXSS、WXML、JavaScript的相关语法。第4章是小程序开发组件的介绍,每个组件都配备了上手示例,帮助读者加深印象。第5章是一个完整的小程序项目的开发步骤。第6章是调用微信API的介绍,对常见API提供了示例编码和分析。第7章是一个完整的项目,包括前、后端,通过项目实战让读者上手真正的小程序开发。第8章是对小程序最新API(蓝牙、卡券)等的补充。
《微信小程序开发零基础入门》内容精练、重点突出、实例丰富,是面向广大程序员的编程入门参考书,也是学习小程序开发入门的最佳实践,同时也非常适合大中专院校师生自学,从而掌握最新技术,拓宽知识体系。
作者简介
目录信息
1.1 初识微信小程序开发 1
1.1.1 什么是微信公众号 1
1.1.2 什么是微信小程序 3
1.1.3 微信小程序的应用领域 4
1.1.4 怎样学好微信小程序 5
1.1.5 微信小程序的前景 6
1.2 小程序开发需要的技术 8
1.2.1 JavaScript技术 8
1.2.2 CSS技术 9
1.2.3 HTML(XML)技术 10
1.3 小程序开发所使用的技术 11
1.3.1 开发文件结构 12
1.3.2 配置程序 12
1.3.3 逻辑层 16
1.3.4 WXML 20
1.3.5 WXSS 25
1.4 搭建小程序开发环境 27
1.4.1 IDE下载 27
1.4.2 Windows系统的IDE安装 29
1.5 上手实践:第一个Hello WX程序 31
1.6 小程序新能力 34
1.6.1 个人开发者申请小程序 35
1.6.2 小程序的基本信息管理 37
1.6.3 已有公众号绑定小程序 40
1.6.4 小程序的分享和跳转新模式 41
1.7 小结 43
1.8 实践与练习 43
2 熟悉小程序开发工具 44
2.1 熟悉微信开发者工具 44
2.1.1 微信开发IDE简介 44
2.1.2 IDE调试窗口 45
2.1.3 小程序的测试与重启 49
2.1.4 小程序的调试 50
2.1.5 小程序的控制台 53
2.1.6 IDE项目窗口 55
2.1.7 项目的关闭与新建 56
2.1.8 IDE项目编辑窗口 57
2.2 小结 59
2.3 实践与练习 59
3 小程序开发基础 60
3.1 HTML入门 60
3.1.1 HTML简介 60
3.1.2 HTML的用途与结构 61
3.2 HTML基础 62
3.2.1 HTML语法基础 62
3.2.2 HTML元素 63
3.2.3 HTML属性 77
3.2.4 WXML与HTML 78
3.3 CSS入门 79
3.4 CSS基础 79
3.4.1 CSS基础语法 80
3.4.2 CSS样式 82
3.4.3 CSS框模型 95
3.4.4 CSS定位 101
3.4.5 CSS与WXSS 106
3.5 JavaScript入门 106
3.5.1 JavaScript简介 106
3.5.2 JavaScript前景 107
3.6 JavaScript基础 108
3.6.1 JavaScript注释 108
3.6.2 JavaScript变量 108
3.6.3 JavaScript数据类型 112
3.6.4 JavaScript对象 118
3.6.5 JavaScript函数 122
3.6.6 JavaScript运算符 127
3.6.7 JavaScript逻辑控制语句 128
3.7 小结 142
3.8 实践与练习 143
4 小程序开发组件 144
4.1 视图组件 144
4.1.1 视图容器(view)组件 144
4.1.2 可滚动视图区域(scroll-view) 147
4.1.3 滑动界面(swiper) 147
4.2 基础内容 149
4.2.1 小图标(icon) 149
4.2.2 文本组件(text) 150
4.2.3 进度条组件(progress) 152
4.3 表单组件 153
4.3.1 按钮组件(button) 153
4.3.2 多选择框(checkbox) 156
4.3.3 表单form 159
4.3.4 输入框组件(input) 160
4.3.5 label元素 163
4.3.6 滚动选择器picker 163
4.3.7 单选控制器(radio) 166
4.3.8 滑动选择器(slider) 168
4.3.9 开关选择器(switch) 170
4.3.10 文本框控件(textarea) 172
4.4 导航 174
4.5 媒体组件 176
4.5.1 音频组件(audio) 177
4.5.2 上手实践:音乐播放器 177
4.5.3 图片控件(image) 180
4.5.4 上手实践:相册 180
4.5.5 视频控件(video) 184
4.5.6 上手实践:带弹幕的视频播放器 184
4.6 地图 187
4.6.1 地图 187
4.6.2 上手实践:微信中的腾讯地图定位 188
4.7 画布 189
4.7.1 画布控件(canvas) 190
4.7.2 上手实践:使用canvas实现画布的绘制 190
4.8 小结 192
4.9 实践与练习 192
5 项目实战1——日记本 193
5.1 需求分析 193
5.1.1 需求确定 193
5.1.2 功能确定 194
5.1.3 系统设计 194
5.1.4 原型设计 197
5.2 具体编码 199
5.2.1 项目初始化 199
5.2.2 测试环境搭建 201
5.2.3 用户系统编码 203
5.2.4 日记系统编码 218
5.3 小结 233
5.4 实践与练习 235
6 微信提供的API解析 236
6.1 网络 236
6.1.1 发起请求 236
6.1.2 上传与下载 238
6.1.3 WebSocket 240
6.2 媒体 243
6.2.1 图片 243
6.2.2 录音 245
6.2.3 语音控制 246
6.2.4 音乐控制 248
6.2.5 视频控制 252
6.2.6 上手实践:获取本地视频和播放控制 254
6.3 文件 256
6.4 数据缓存 260
6.5 位置 264
6.5.1 获取位置 264
6.5.2 查看位置 265
6.5.3 地图组件控制 266
6.5.4 上手实践:地图控制和查看 267
6.6 设备 269
6.6.1 系统信息 269
6.6.2 网络状态 271
6.6.3 重力感应 271
6.6.4 罗盘 272
6.6.5 拨打电话 272
6.6.6 扫码 272
6.6.7 上手实践:获取所有手机信息和网络状态 273
6.7 界面 274
6.7.1 交互反馈 274
6.7.2 设置导航条 277
6.7.3 导航 278
6.7.4 动画 280
6.7.5 下拉刷新 284
6.7.6 上手实践:带有控制的动画 285
6.8 绘图 287
6.8.1 在canvas上画图 289
6.8.2 canvas坐标系 290
6.8.3 渐变 291
6.8.4 上手实践:使用canvas绘制笑脸 294
6.9 开放接口 296
6.9.1 登录 296
6.9.2 用户信息 301
6.9.3 微信支付 302
6.9.4 模板消息 303
6.9.5 客服消息 307
6.9.6 分享 315
6.9.7 获取二维码 316
6.10 小结 316
6.11 实践与练习 317
7 项目实战2——在线阅读 318
7.1 项目准备工作 318
7.1.1 项目需求分析 318
7.1.2 项目系统设计 319
7.1.3 设计1:用户模块 319
7.1.4 设计2:小说阅读模块 321
7.1.5 项目使用到的技术 321
7.2 项目服务器端编码 322
7.2.1 服务器端介绍 322
7.2.2 Laravel框架的安装与配置 322
7.2.3 服务器功能路由划分 324
7.2.4 服务器数据库搭建 325
7.2.5 服务器的配置 327
7.2.6 服务器的项目结构 328
7.2.7 服务器端登录页面的代码实现 328
7.2.8 服务器端管理主页的代码实现 330
7.2.9 服务器端管理用户的代码实现 332
7.2.10 小程序的接口文档 332
7.2.11 后台管理页面搭建 339
7.2.12 服务器端的测试 347
7.3 项目微信小程序端编码 352
7.3.1 微信小程序页面设计 353
7.3.2 搭建微信小程序项目 353
7.3.3 微信小程序“首页”菜单的代码实现 355
7.3.4 微信小程序“用户历史”菜单的代码实现 357
7.3.5 微信小程序“用户注册”页面的代码实现 361
7.3.6 微信小程序“小说阅读”页面的代码实现 367
7.4 小结 371
7.5 实践与练习 371
8 小程序新增API 372
8.1 蓝牙API 372
8.1.1 获取蓝牙适配器 372
8.1.2 关闭蓝牙模块 374
8.1.3 获取本机蓝牙状态 375
8.1.4 搜索蓝牙设备 377
8.1.5 上手实践:蓝牙管理器 386
8.2 其他新增API 389
8.2.1 获取收货地址 390
8.2.2 打开小程序设置界面 391
8.2.3 操作剪贴板 392
8.2.4 支持微信卡券 393
8.2.5 监听网络变化 395
8.3 ES 6的支持 396
8.4 小结 398
8.5 实践与练习 398
· · · · · · (收起)
读后感
大多数的内容发布类App都是属于可以被小程序所代替的,因为微信小程序是一种轻度的云端应用。所以的所以呢,学小程序开发成了我们大学生的开发第一课,不学不行,为了找工作,为了一口饭。本书很简单很入门,而且有很多网页的基础,连微信网页开发都学了,值得推荐。值得推荐。...
大多数的内容发布类App都是属于可以被小程序所代替的,因为微信小程序是一种轻度的云端应用。所以的所以呢,学小程序开发成了我们大学生的开发第一课,不学不行,为了找工作,为了一口饭。本书很简单很入门,而且有很多网页的基础,连微信网页开发都学了,值得推荐。值得推荐。...
大多数的内容发布类App都是属于可以被小程序所代替的,因为微信小程序是一种轻度的云端应用。所以的所以呢,学小程序开发成了我们大学生的开发第一课,不学不行,为了找工作,为了一口饭。本书很简单很入门,而且有很多网页的基础,连微信网页开发都学了,值得推荐。值得推荐。...
大多数的内容发布类App都是属于可以被小程序所代替的,因为微信小程序是一种轻度的云端应用。所以的所以呢,学小程序开发成了我们大学生的开发第一课,不学不行,为了找工作,为了一口饭。本书很简单很入门,而且有很多网页的基础,连微信网页开发都学了,值得推荐。值得推荐。...
大多数的内容发布类App都是属于可以被小程序所代替的,因为微信小程序是一种轻度的云端应用。所以的所以呢,学小程序开发成了我们大学生的开发第一课,不学不行,为了找工作,为了一口饭。本书很简单很入门,而且有很多网页的基础,连微信网页开发都学了,值得推荐。值得推荐。...
用户评价
这本书的排版设计在某些关键章节的处理上,让我感觉有些许疏漏。例如,当涉及到复杂的事件处理函数和异步API调用(比如`wx.request`)时,代码块的展示方式有时候显得过于密集,缺乏足够的留白或者关键语句的高亮提示。在调试过程中,我发现自己经常需要对照着书本和IDE来回跳跃,去确认一个变量的作用域或者一个回调函数的正确嵌套位置。如果能对关键的API参数、返回值进行表格化处理,或者用不同的颜色标记出Promise链中的关键节点,阅读体验会大大提升。另外,书中对于调试工具的介绍篇幅相对较短,而实际上,对于新手而言,如何有效地利用开发者工具进行日志查看、数据监听和性能分析,往往是决定学习进度的关键。这本书似乎默认读者已经对主流的调试流程有所了解,因此在“如何排查错误”这一环节的实战指导略显单薄。我希望能看到更多关于“遇到这个报错信息时,你应该去检查代码的哪一部分”的经验性总结,而不是仅仅停留在“代码应该这样写”的规范层面。这种工具层面的深度挖掘,对于快速建立开发信心至关重要。
这本书的装帧设计着实让人眼前一亮,那种简洁中透着精致的质感,让人在书店的第一眼就被吸引住了。内页的纸张选择也挺不错,触感温润,长时间阅读下来眼睛也不容易感到疲劳。不过,说实话,当我真正翻开目录的时候,心里还是稍微有点忐忑的。我原本期待看到一些非常直观、手把手教你从零开始搭建第一个“Hello World”级别小程序的流程图或者清晰的截图步骤。毕竟是“零基础入门”,我设想的应该是那种可以像菜谱一样严格遵循、一步不落地操作就能看到成果的引导。这本书的开篇部分,虽然文字流畅,对小程序生态的宏观介绍确实很到位,把背景知识铺陈得非常扎实,对于理解小程序存在的价值和大致结构很有帮助。但是,对于一个真正从未接触过任何代码,甚至对前端概念都陌生的读者来说,它在“实操”的衔接点上似乎略显跳跃。我花了好大力气才把前几章那些关于开发环境搭建的理论知识消化完,心里总觉得像是站在了攀登一座大山的脚下,虽然知道山很高很美,但真正迈出第一步的那个“支点”在哪里,似乎还需要自己多琢磨一下。整体感觉,它更像是一位经验丰富的老师在给你做导览,指明了方向,但具体怎么迈开那双“新手之脚”,可能还需要读者自己去摸索那个最合适的姿势。
我花了整整一个周末的时间,试图跟随这本书的指引搭建起一个能跑起来的最小化项目,坦白讲,过程中的“卡点”比我想象的要多。这本书的理论深度是毋庸置疑的,它对WXML和WXSS的解耦设计理念阐述得极其透彻,甚至深入到了数据绑定机制的底层逻辑。对于已经有些许前端基础,想深入理解小程序运行原理的读者来说,这绝对是一本宝典。然而,对于我这种连“组件化”是何物都感到陌生的纯小白来说,书中的一些高级特性,比如自定义组件的生命周期回调,虽然讲解得逻辑严密,但缺乏那种“你只需要复制粘贴这段代码,它就能工作”的即时满足感。我最希望看到的是,在讲解完一个概念后,能立即附带一个小型、可立即运行的Demo,最好是那种可以直接复制到IDE里,刷新就能看到效果的片段。书中很多地方需要读者自行去整合前几章学到的知识点来构建新的功能模块,这要求读者具备一定的归纳和演绎能力,这对于“零基础”的定位来说,似乎要求稍高了一点。总的来说,这本书像是为那些已经会骑自行车的人,讲解如何改装和优化他们的自行车,而不是教一个从未坐过车的人如何找到平衡点。
这本书的语言风格是偏向学术性的,逻辑推导严谨,用词精准,这在专业书籍中是优点。但是,在尝试用它来激发学习热情方面,略显不足。它像是一位严谨的工程师在讲解蓝图,而非一位热情的导师在带领徒弟入门。例如,在讲解模板语法时,对于插值表达式的各种边界情况分析得头头是道,但缺少一些生动的小例子来展示:“如果你想在界面上显示一个用户的昵称,并且在昵称为空时显示‘游客’,你应该怎么写?”这种贴近用户场景的描述会更有代入感。我期待的“零基础入门”不仅仅是技术概念的入门,更应该是对整个开发心流的入门。这本书更多地侧重于“技术栈是什么”,而对于“我如何用它来构建一个令我兴奋的产品雏形”的引导相对较弱。这使得读者在学习过程中,需要自己投入额外的精力去寻找那些能够点燃动力的外部激励,否则很容易在概念的海洋中感到枯燥。总而言之,它提供了坚实的地基,但激发人去盖起高楼的火花,还需要读者自己去点燃。
读完关于数据存储和本地缓存的那一部分,我有一种强烈的感受,那就是作者在力求全面性,但却牺牲了学习的节奏感。他详尽地介绍了`wx.setStorageSync`和`wx.getStorageInfoSync`等所有同步和异步的接口,并且细致地对比了它们在应用场景中的优劣势,这一点非常专业。然而,对于一个初学者,过早地接触到所有细枝末节,反而容易造成信息过载,让人不知道该优先掌握哪一个。我更倾向于先学会如何使用最常用、最简单的存储方式(比如简单的键值对读写),然后在一个独立的小项目中应用它,建立起对“数据持久化”这一概念的直观认知。这本书的叙述方式更像是“工具手册”,把所有功能点都罗列出来,等你用到时再来查阅。这对于经验丰富的人来说是高效的,但对于需要建立心智模型的初学者来说,这种“先全景后细节”的布局,使得初期的学习路径显得有些迷茫和曲折。如果能有一个贯穿全书的、逐步迭代升级的实战案例,让读者在实现不同功能时自然而然地引入新的API,学习曲线可能会平缓许多。
这个缩进简直不能忍
内容很全面(但受时间限制,却不够全面了),内容都是点到为止。不是很喜欢,倒也符合零基础入门。。但是敢不敢更深入一点。。?
内容很全面(但受时间限制,却不够全面了),内容都是点到为止。不是很喜欢,倒也符合零基础入门。。但是敢不敢更深入一点。。?
一般吧。只有font end的东西
一般吧。只有font end的东西