返回首页
苏宁会员
购物车 0
易付宝
手机苏宁

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

  • 服务承诺: 正品保障
  • 公司名称:
  • 所 在 地:
本店所有商品

  • 套装 正版 移动应用开发技术丛书 共2册 微信小游戏开发 前端篇 后端篇 李艺
  • 新商品上架
    • 作者: 无著
    • 出版社: 图书其它
    • 出版时间:2023年1月第1版第1次印刷
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    江莱图书专营店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

    商品分类

    商品参数
    • 作者: 无著
    • 出版社:图书其它
    • 出版时间:2023年1月第1版第1次印刷
    • 装帧:套装
    • ISBN:9780881724340
    • 版权提供:图书其它


    商品名称:

    微信小游戏开发套装全2册 前端篇+后端篇(微信小游戏开发:前端篇+微信小游戏开发:后端篇)

    作 者:

    李艺著

    市 场 价:

    238.00元

    ISBN 号:

    978-7-111-71683-9、978-7-111-72102-4

    出版日期:

    2023年1月第1版第1次印刷

    开 本:

    186mm×240mm 1/16

    出 版 社:

    机械工业出版社

    微信小游戏开发.前端篇

    第一篇 潜龙勿用

    第1章 创建小游戏项目 2

    第1课 创建项目 2

    了解小游戏的双线程运行机制 2

    注册开发者账号 4

    安装微信开发者工具 5

    创建第一个小游戏项目 6

    项目测试:本地预览与手机预览 7

    基于文件监听实现自动预览 8

    了解小游戏示例项目的项目结构 11

    小游戏如何调试代码 13

    拓展:如何安装、配置 Node.js和

    babel-node 17

    了解面向对象编程有关的基本

    概念 18

    本课小结 20

    第2课 微信小游戏是如何运行的 21

    创建画布 21

    拓展:如何给变量命名 22

    如何绘制矩形 23

    拓展:如何理解小游戏的全局变量及

    作用域 24

    如何清空画布 25

    如何绘制网络图片 25

    如何在小游戏中实现动画 28

    如何实现人机交互 29

    拓展:如何理解局部变量 30

    拓展:了解微信小游戏的API

    风格 31

    本课小结 32

    第二篇 见龙在田

    第2章 编写一个简单的HTML5

    小游戏:打造游戏界面 34

    第3课 绘制游戏标题 35

    安装与配置Visual Studio Code 35

    学习使用HTML标记,开始绘制游戏标题 36

    拓展:如何使用const 关键字 39

    拓展:如何给代码添加注释 40

    如何改变字体、字号和颜色 40

    拓展:在font-family中要使用中文字体的英文名称 42

    如何给文本添加文本样式 42

    如何在绘制文本中使用渐变色 44

    如何让文本居中绘制 46

    拓展:为什么要在代码中使用

    常量 48

    本课小结 48

    第4课 绘制挡板 48

    如何在画布上绘制直线 48

    拓展:JS的8个基本数据类型,如何进行类型判断 50

    给画布添加一个浅色背景 53

    如何加厚挡板 54

    拓展:JS中的数值类型、布尔类型是如何进行类型转换的 55

    如何给挡板添加圆角、阴影效果 56

    使用路径填充和矩形绘制挡板 58

    如何使用颜色渐变对象和图像填充材质绘制挡板 60

    拓展:什么是区块作用域 65

    拓展:了解数字类型,警惕0.1 + 0.2不等于0.3 66

    拓展:如何批量声明变量、常量 67

    本课小结 67

    第5课 绘制小球 68

    如何使用弧线绘制圆形 68

    如何使用arc方法直接绘制圆形 70

    本课小结 71

    第6课 绘制分界线 71

    分别通过lineTo和渐变色绘制

    分界线 71

    拓展:CSS 颜色值有哪些格式 73

    使用函数绘制间隔效果 75

    拓展:如何定义和使用函数 77

    使用循环绘制分界线 81

    拓展:使用比较运算符、if控制语句

    和算术运算符 84

    拓展:JS的5种循环控制语句 86

    将函数当作变量使用 87

    拓展:如何理解JS的作用域链与

    闭包 90

    拓展:如何使用集合对象 Map 与

     Set 92

    本课小结 95

    第3章 编写一个简单的HTML5小游戏:完成交互功能 96

    第7课 实现动画:让小球动起来 96

    使用定时器实现动画 96

    拓展:如何理解JS的异步执行

    机制 98

    拓展:了解13种复合赋值运算符 99

    完成动画的关键:清屏 99

    如何实现小球与屏幕的碰撞

    检测 103

    拓展:复习使用if else if 语句 105

    使用 requestAnimationFrame改进动画流畅度 106

    本课小结 108

    第8课 监听用户事件:让挡板动

    起来 108

    绘制左挡板 108

    使右挡板可以上下自主移动 110

    改用函数绘制挡板 111

    监听用户输入,使用鼠标(或触摸)

    事件操控左挡板 112

    实现挡板与球的碰撞检测 114

    拓展:如何使用逻辑运算符 115

    统计分数 116

    拓展:复习批量声明变量,可以将

    逗号放在前面 117

    在游戏结束时添加反馈 118

    拓展:加号与模板字符串 120

    本课小结 121

    第9课 实现游戏的重启功能 122

    绘制重新开始游戏的文本提示 122

    理解HTML5的事件模型,监听单击

    事件实现重启功能 123

    拓展:如何使用removeEvent---

    Listener 127

    本课小结 128

    第10课 控制游戏音效:添加单击

    音效和背景音乐 128

    如何使用<audio>标签播放声音 128

    如何使用JS代码播放声音 132

    给项目添加背景音乐 133

    使用图片材质绘制背景音乐按钮 134

    使用离屏画布绘制背景音乐按钮 136

    使用drawImage绘制背景音乐

    按钮 138

    监听背景音乐按钮的单击事件 139

    拓展:如何使用条件运算符 140

    本课小结 141

    第4章 移植及优化 142

    第11课 移植准备工作 143

    创建代码片段与改写项目 143

    拓展:在小游戏中如何获取屏幕

    尺寸 144

    拓展:关于代码自动提示 146

    本课小结 146

    第12课 移植音频和事件 146

    处理getElementById is not a function

    错误 146

    播放音频:处理Audio is not defined

    错误 148

    处理Audio错误:canPlayType is not 

    a function 150

    处理currentTime错误:currentTime

    是只读属性 151

    挡板绘制:处理Image is not defined

    错误 152

    拓展:复习条件运算符和短路评估

    表达式 153

    准备移植事件监听,认识小游戏的

    触摸事件 154

    拓展:targetTouches、touches和changedTouches的区别 156

    改写click事件与mousemove

    事件 157

    拓展:关于小游戏的运行环境 161

    本课小结 161

    第13课 移植文本与图像 161

    处理标题文本不显示的问题 162

    拓展:实现渐变、阴影效果的替代

    方案 167

    解决左挡板移动到底部不显示的

    问题 167

    使背景音乐循环播放 168

    优化分数文本、挡板、小球与背景

    音乐按钮的参数 170

    拓展:如何在测试时静音 173

    本课小结 173

    第5章 移植后对小游戏进行平台

    功能优化 174

    第14课 绘制微信用户头像 174

    小游戏有哪些授权范围 174

    不能直接查询“用户信息”的授权

    情况 175

    使用 UserInfoButton 176

    拓展:为什么要使用全等运算符

    而不是等号运算符 180

    绘制用户头像 181

    拓展:学习使用箭头函数及判定

    this对象 182

    主动销毁按钮 194

    控制头像大小,让左挡板默认

    展示 195

    主动查询用户授权 196

    拓展:如何在测试中清理缓存 200

    本课小结 200

    第15课 添加游戏反馈 201

    添加Toast提示 201

    在提示窗口中自定义icon 202

    使用模态弹窗 204

    拓展:游戏渲染的帧率可以

    修改吗 206

    本课小结 207

    第16课 添加超时限制 208

    限制游戏30s结束 208

    拓展:复习定时器的使用 209

    让游戏支持重启 215

    及时清除定时器 216

    本课小结 217

    第三篇 龙战于野

    第6章 模块化重构一:准备重构 220

    第17课 梳理游戏逻辑 221

    在小游戏中如何使用全局变量 221

    拓展:作用域与使用let关键字实现

    批量变量声明 222

    整理代码,将变量与常量放在文件

    顶部 223

    梳理游戏逻辑,明确6个周期

    函数 227

    添加start函数 228

    添加end函数 228

    添加init函数 230

    添加loop函数 232

    及时移除事件监听 234

    本课小结 236

    第18课 JS如何创建对象及如何实现

    模块化 236

    使用原型继承对象 237

    使用构造函数创建对象 238

    拓展:理解__proto__与prototype

    属性 239

    拓展:如何理解原型及原型链 242

    基于原型链实现万能的类型检测方法instanceOf 244

    使用class关键字创建类对象 245

    使用CommonJS规范 246

    使用ES Module规范 247

    拓展:对比CommonJS规范和ES Module规范的差异 248

    本课小结 251

    第7章 模块化重构二:重构背景音乐、小球和挡板 252

    第19课 创建背景音乐模块 252

    开始创建背景音乐模块 252

    拓展:重新认识class和函数调用中的this 258

    拓展:认清JS的内存管理 261

    拓展:了解代码的优化评判标准 263

    改进复用性和易用性:将数据参数化,设置参数的默认值 263

    改进封装性:将内部成员私有化 266

    优化图片渲染:由多次加载改为

    加载一次 268

    改进封装性:添加getter 269

    对易用性的改进:直接导出单例 271

    本课小结 272

    第20课 创建小球模块 272

    开始创建小球模块 272

    使用跨文件常量 274

    拓展:使用defineProperty将变量改为常量 275

    创建Ball类 276

    本课小结 282

    第21课 创建挡板模块 282

    开始创建Panel类 282

    使用继承实现左、右挡板 291

    拓展:复习JS实现继承的方式 297

    拓展:复习类型检测操作符

    typeof与instanceof的不同 300

    本课小结 301

    第8章 模块化重构三:重构记分板、

    背景、页面和游戏对象 303

    第22课 创建记分板模块 303

    实现两个记分板类 303

    拓展:复习ES Module的导出与

    导入 312

    使用工具方法drawText 313

    隐藏分数变量 314

    本课小结 316

    第23课 创建游戏背景对象和游戏

    对象 316

    创建背景对象 317

    为创建游戏对象做准备 320

    让音频管理者接管单击音效 321

    实现游戏对象Game类 323

    拓展:复习使用bind改变this

    对象 331

    本课小结 332

    第24课 创建页面对象 332

    创建游戏结束页面 333

    创建游戏主页对象 338

    本课小结 347

    第25课 重构游戏对象 347

    一个文件只定义一个类 347

    为Game类添加#currentPage

    变量 352

    解决30s超时限制不起作用的

    问题 356

    移除#gameIsOver变量 359

    本课小结 359

    第9章 面向对象重构一:重构游戏

    对象等 361

    第26课 设计模式重构一:单例模式、观察者模式和组合模式 362

    将Game类改写为单例模式 362

    在Game类上应用观察者模式 364

    使用组合模式改写用户记分板

    模块 370

    本课小结 381

    第27课 设计模式重构二:模板方法

    模式、职责链模式和简单工

    厂模式 381

    在页面对象中启用模板方法模式 382

    使用职责链模式改写单击音效

    实现 386

    使用简单工厂模式改写turnToPage

    方法 391

    本课小结 396

    第10章 面向对象重构二:页面对象

    和分界线的绘制 397

    第28课 设计模式重构三:工厂方法

    模式和抽象工厂模式 397

    使用工厂方法模式创建Page页面

    对象 397

    使用抽象工厂模式封装页面对象的

    创建过程 400

    本课小结 403

    第29课 设计模式重构四:建造者模式、命令模式和原型模式 403

    使用建造者模式构建页面对象 404

    拓展:如何理解建造者模式、抽象工厂模式与模板方法模式 408

    使用命令模式绘制分界线 408

    使用原型模式复制对象 412

    拓展:JS如何实现浅复制与深

    复制 416

    本课小结 419

    第30课 设计模式重构五:复合

    命令模式、迭代器模式

    和享元模式 419

    使用复合命令模式重构

    GameOverPage 419

    使用迭代器模式改造复合命令

    实现 426

    使用享元模式改写分界线绘制 432

    本课小结 438

    第11章 面向对象重构三:重构音频

    管理等 439

    第31课 设计模式重构六:适配器

    模式、桥接模式和装饰

    模式 439

    使用适配器模式改造音频管理者 439

    使用桥接模式重构碰撞检测 447

    使用装饰模式重构挡板的渲染

    方式 462

    本课小结 467

    第32课 设计模式重构七:访问者

    模式和策略模式 467

    使用访问者模式优化碰撞检测 467

    使用策略模式扩展右挡板的移动

    算法 471

    拓展:关于25个设计模式的补充

    说明 474

    本课小结 476

    附录 思考与练习参考答案 477



    微信小游戏开发.后端篇

    序一

    序二

    前言

    第1章 本地功能:本地存储与

    LBS定位1

    第1课 读写本地缓存1

    创建数据服务单例,实现本地数据

    读取2

    拓展:使用Storage面板管理本地

    缓存数据4

    面向Promise编程:异步转同步5

    如何清除本地缓存12

    本课小结13

    第2课 使用FileSystemManager读写

    本地文件13

    读写本地文件,实现数据服务模块14

    面向Promise编程:避免使用try catch17

    本课小结20

    第3课 使用腾讯位置服务显示用户

    城市20

    使用腾讯位置服务21

    拓展:小心隐藏字符错误27

    解决回调函数简写引发的错误28

    使用异步转同步技巧重写LBSManager29

    本课小结30

    第2章 本地功能:优化游戏体验

    与性能31

    第4课 优化游戏体验:添加背景图片

    和顶级UI层31

    添加适配不同机型的背景图片31

    使用有限字符的自定义字体35

    在左挡板失误时振动37

    监听并处理背景音乐的意外暂停39

    使用一个暂停按钮,控制游戏的暂停

    与恢复41

    解决游戏暂停后定时器不暂停的问题47

    添加游戏顶级UI层,实现退出功能51

    本课小结58

    第5课 优化游戏性能:监听全局错误,

    记录错误日志59

    监听全局错误,使用外观模式记录

    错误日志59

    允许打开设置页面,用户自己管理

    授权66

    拓展:关于小游戏UI层结构的说明68

    主动垃圾回收68

    拓展:如何控制屏幕亮度69

    本课小结70

    第3章 本地功能:添加排行榜和

    广告71

    第6课 添加好友排行榜,为社交

    营销助力71

    实现一个游戏内玩家排行榜71

    实现好友中心玩家排行榜82

    开启游戏圈:从小游戏中进入游戏圈83

    开启客服会话:在小游戏中打开客服

    窗口86

    开启用户意见反馈通道87

    添加防沉迷机制88

    本课小结91

    第7课 添加广告92

    添加Banner广告92

    添加视频激励式广告93

    本课小结94

    第4章 云开发:创建与使用云函数96

    第8课 创建第一个云函数97

    配置云开发98

    开通云环境99

    在云数据库中创建集合101

    认识云函数102

    创建云函数103

    本课小结105

    第9课 调试和调用云函数106

    云端测试106

    本地调试109

    调用云函数111

    本课小结112

    第5章 云开发:使用云数据库113

    第10课 在小游戏端直接操作云

    数据库113

    在小游戏中初始化云环境113

    直接操作云数据库集合114

    拓展:了解云数据库中的字段类型118

    本课小结120

    第11课 用两种方式实现分页查询120

    使用分页查询方法121

    使用聚合查询方法123

    使用循环的方式清空小数据集合126

    拓展:为查询字段添加索引,提升

    执行效率127

    拓展:了解集合的权限控制128

    本课小结129

    第12课 用户如何操作自己创建的数据:

    查询与更新129

    查询用户自己添加的历史数据130

    在调试区测试云函数133

    使用原子操作,更新用户自己创建

    的数据133

    拓展:关于数据库操作符和数据库

    聚合操作符136

    拓展:使用云文件ID137

    本课小结138

    第6章 后端:用Node.js实现接口

    及处理客服消息139

    第13课 准备MySQL数据库141

    安装MySQL数据库与数据库管理

    工具141

    创建数据库实例142

    创建数据表history143

    拓展:了解常用的MySQL数据类型146

    本课小结149

    第14课 实现history的3个RESTful 

    API(Node.js版本)149

    启动模板项目149

    熟悉node-koa2项目模板结构150

    拓展:了解RESTful API设计规范160

    实现history的3个接口(Node.js

    版本)162

    拓展:学习9种HTTP请求方法166

    本课小结167

    第15课 在小游戏端调用Node.js接口167

    实现后台接口管理者模块,调用

    history的3个接口167

    扩展新方法getOpenid,注意保持

    新旧代码的兼容性171

    小游戏与小程序接口不一定一致174

    使用外观模式实现统一的存储服务

    管理者178

    本课小结181

    第16课 在服务器端接收和处理客服

    消息(Node.js版本)181

    使用内网穿透工具frp181

    在小游戏后台启用与配置消息推送187

    实现消息推送接口(Node.js版本)188

    拓展:如何使用Linux指令查杀、

    重启程序192

    拓展:如何在Windows系统上运行

    Linux指令193

    本课小结196

    第7章 后端:用Node.js和Go

    实现管理后台197

    第17课 实现导航与登录功能

    (Node.js版本)197

    创建数据表account198

    拓展:互联网鉴权方式简介199

    实现登录200

    添加历史记录页面211

    个人开发者使用小微商户实现支付215

    本课小结227

    第18课 使用Go语言实现后端程序228

    使用go_iris项目模板228

    实现history的3个接口230

    使用curl测试接口235

    接收和处理客服消息237

    实现登录功能240

    实现历史记录页面,分角色权限渲染

    功能247

    拓展:如何让Go语言下载模块快

    一些250

    本课小结250


    《微信小游戏开发:前端篇》

    “微信小游戏开发”系列图书包含本书和《微信小游戏开发:后端篇》,融汇了腾讯云TVP李艺多年来的一线项目研发和教学经验。本书*大的特点是基于一个精心设计的PBL实战项目,以模拟项目迭代重构的方式,循序渐进地介绍前端所有的知识点和技能,包括但不限于计算机网络通信基础、JS编程语言、面向对象的软件设计思想和设计模式、模块化编程思想、小游戏开发技巧等。为了方便读者学习,随书还附有相应的完整源码。

    《微信小游戏开发:后端篇》

    “微信小游戏开发”系列图书包含《微信小游戏开发:前端篇》和本书,融合了腾讯云TVP李艺多年来的一线项目研发和教学经验。本书在前端篇的基础上,继续讲解微信小游戏开发后端部分的内容,主要包括本地功能开发、云开发实践、后端程序编写等,最终让读者掌握微信小游戏全栈开发的知识体系与核心技能,并完成一个精心设计的实际项目。本书随附完整的项目源码,以方便读者学习和实践。

    李艺

    腾讯云TVP,有近 20 年互联网软件研发经验,参与研发的音视频直播软件产品曾在腾讯QQ上线,有数千万人使用;一汽大众等企业内训讲师,北京协同创新研究院人工智能项目技术负责人。他是国内早期闪客之一,曾自定义课件标准并完成全平台教育课件产品研发,被Adobe官方选为中国社区管理员。业余喜欢写作,创建微信公众号和视频号“艺述论”,用以分享技术教程,是微信学堂“小程序性能优化实践”和极客时间“微信小程序全栈开发实战”的专栏作者,著有《小程序从0到1:微信全栈工程师一本通》等书。

    1
    • 商品详情
    • 内容简介

    售后保障

    最近浏览

    猜你喜欢

    该商品在当前城市正在进行 促销

    注:参加抢购将不再享受其他优惠活动

    x
    您已成功将商品加入收藏夹

    查看我的收藏夹

    确定

    非常抱歉,您前期未参加预订活动,
    无法支付尾款哦!

    关闭

    抱歉,您暂无任性付资格

    此时为正式期SUPER会员专享抢购期,普通会员暂不可抢购