登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 聯絡我們  | 運費計算  | 幫助中心 |  加入書簽
會員登入 新註冊 | 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類閱讀雜誌 香港/國際用戶
最新/最熱/最齊全的簡體書網 品種:超過100萬種書,正品正价,放心網購,悭钱省心 送貨:速遞 / EMS,時效:出貨後2-3日

2024年08月出版新書

2024年07月出版新書

2024年06月出版新書

2024年05月出版新書

2024年04月出版新書

2024年03月出版新書

2024年02月出版新書

2024年01月出版新書

2023年12月出版新書

2023年11月出版新書

2023年10月出版新書

2023年09月出版新書

2023年08月出版新書

2023年07月出版新書

『簡體書』Scratch底层架构源码分析

書城自編碼: 3572699
分類: 簡體書→大陸圖書→計算機/網絡程序設計
作者: 孟灿
國際書號(ISBN): 9787111667704
出版社: 机械工业出版社
出版日期: 2020-11-01

頁數/字數: /
書度/開本: 16开 釘裝: 平装

售價:NT$ 594

我要買

share:

** 我創建的書架 **
未登入.



新書推薦:
人文与社会译丛:我们中的我(承认理论研究)
《 人文与社会译丛:我们中的我(承认理论研究) 》

售價:NT$ 359.0
(守望者·人间世)自我:与齐格蒙特·鲍曼对谈
《 (守望者·人间世)自我:与齐格蒙特·鲍曼对谈 》

售價:NT$ 374.0
白蛇:浮生艺术画集
《 白蛇:浮生艺术画集 》

售價:NT$ 874.0
马拉松名将手记2:每个人都有自己的决战
《 马拉松名将手记2:每个人都有自己的决战 》

售價:NT$ 359.0
大家小书 译馆 骑士:历史与文化
《 大家小书 译馆 骑士:历史与文化 》

售價:NT$ 255.0
没有一种人生是完美的:百岁老人季羡林的人生智慧(读完季羡林,我再也不内耗了)
《 没有一种人生是完美的:百岁老人季羡林的人生智慧(读完季羡林,我再也不内耗了) 》

售價:NT$ 257.0
日耳曼通识译丛:复原力:心理抗逆力
《 日耳曼通识译丛:复原力:心理抗逆力 》

售價:NT$ 155.0
海外中国研究·未竟之业:近代中国的言行表率
《 海外中国研究·未竟之业:近代中国的言行表率 》

售價:NT$ 614.0

編輯推薦:
内容丰富:围绕核心模块,全面、系统、深入地介绍Scratch技术生态的相关知识。
重点突出:围绕代码块、虚拟机、渲染和存储等核心技术,多角度展开讲解。
深入浅出:以简单易懂的语言讲解深层次的架构知识,降低学习难度。
实用性强:针对Scratch开发过程中的常见疑点和难点进行系统性讲解。
內容簡介:
《Scratch底层架构源码分析》从谷歌Blockly技术开始讲起,逐步深入到Scratch的技术生态,对Scratch中的核心技术做了深入分析和源码讲解。通过阅读本书,读者不但可以系统地学习Scratch中的核心技术模块,而且还能深入理解Scratch底层代码的实现和结构设计,为二次开发打下基础。
《Scratch底层架构源码分析》共7章,涵盖的主要内容有Blockly简介、Scratch-blocks源码分析、Scratch-vm源码分析、Scratch-render源码分析、Scratch-storage源码分析、Scratch-gui源码分析,以及Scratch-paint、Scratch-audio和Scratch-parser的简单介绍。
《Scratch底层架构源码分析》适合想了解Scratch语言底层技术架构的开发人员和技术爱好者,尤其是需要做Scratch二次开发的程序员阅读。另外,本书还适合作为相关教学人员和研究人员的参考资料。
關於作者:
孟灿 毕业于北京师范大学,获工学硕士学位。对图形图像处理与模式识别有广泛研究。曾经就职于国内外一线互联网公司,有多年的互联网行业开发和管理经验,工作内容涉及算法、前端和后端等技术领域。2019年入职核桃编程教育公司,从事Scratch少儿编程教学研究和二次开发。
目錄
第1章 开始Scratch之旅 1
1.1 Scratch概述 1
1.1.1 Scratch发展历史 1
1.1.2 Scratch技术生态 2
1.1.3 Scratch使用现状 2
1.1.4 Scratch源码分析的意义 2
1.2 Webpack打包工具简介 3
1.2.1 Webpack的核心概念 3
1.3 NPM包管理工具简介 4
1.3.1 NPM的组成 4
1.3.2 NPM的使用场景 4
1.4 小结 5
第2章 Scratch-blocks:积木块源码分析 6
2.1 Scratch-blocks概述 6
2.1.1 Blockly技术简介 6
2.1.2 Scratch-blocks与Blockly之间的关系 8
2.1.3 Scratch-blocks的作用 9
2.1.4 Scratch-blocks的分类 9
2.2 Scratch-blocks代码结构与流程 9
2.2.1 Scratch-blocks代码结构 10
2.2.2 Scratch-blocks代码流程 12
2.3 Scratch-blocks核心代码分析 14
2.3.1 blockly_uncompressed_vertical.js:垂直方向的非压缩打包文件 14
2.3.2 options.js:配置工作区 17
2.3.3 inject.js:将Scratch-blocks注入页面 19
2.3.4 workspace模块:工作区 28
2.3.5 toolbox.js:工具箱 34
2.3.6 Flyout模块:工具箱中的托盘 38
2.3.7 xml.js:XML读写器 46
2.3.8 event模块:各模块之间的通信 54
2.3.9 Field模块:代码块上的域 63
2.3.10 blockly.js:Blockly的核心JS库 75
2.3.11 connection模块:代码块之间的连接 81
2.3.12 input.js:代码块上的输入 94
2.3.13 mutator.js:代码块的变形器 97
2.3.14 extensions.js:代码块的扩展 102
2.3.15 block.js:定义一个代码块 105
2.4 小结 120
第3章 Scratch-vm:虚拟机源码分析 121
3.1 Scratch-vm概述 121
3.1.1 Scratch-vm的职责 121
3.2 Scratch-vm代码结构与流程 122
3.2.1 Scratch-vm代码结构 122
3.2.2 Scratch-vm代码流程 123
3.3 Scratch-vm核心代码分析 129
3.3.1 virtual-machine.js:最外层的API定义 129
3.3.2 blocks模块:代码块原语的实现 138
3.3.3 dispatch模块:消息派发系统 151
3.3.4 engine模块:虚拟机的引擎 155
3.3.5 serialization模块:序列化与反序列化 188
3.3.6 sprite模块:精灵的渲染 196
3.4 小结 199
第4章 Scratch-render:渲染引擎源码分析 200
4.1 Scratch-render渲染技术概述 200
4.1.1 WebGL概述 200
4.1.2 canvas概述 201
4.1.3 twgl.js概述 201
4.1.4 Scratch-render概述 201
4.2 Scratch-render代码结构与流程 202
4.2.1 Scratch-render代码结构 202
4.2.2 Scratch-render代码流程 203
4.3 Scratch-render核心代码分析 211
4.3.1 twgl.js关键函数介绍 212
4.3.2 RenderWebGL.js:渲染引擎最外层API的定义 219
4.4 小结 227
第5章 Scratch-storage:资源存储源码分析 228
5.1 Scratch-storage概述 228
5.1.1 什么是Scratch-storage 228
5.1.2 Scratch-storage的主要内容 229
5.2 Scratch-storage代码结构与流程 229
5.2.1 Scratch-storage代码结构 229
5.2.2 Scratch-storage代码流程 230
5.3 Scratch-storage核心代码分析 239
5.3.1 ProxyTool模块:网络代理工具 239
5.3.2 FetchTool模块:基于Fetch的网络工具 240
5.3.3 NetsTool模块:基于Nets的网络工具 241
5.3.4 FetchWorkerTool模块:基于任务的网络工具 241
5.4 小结 245
第6章 Scratch-gui:图形化界面源码分析 246
6.1 Scratch-gui概述 246
6.1.1 Scratch-gui所处的位置 246
6.1.2 Scratch-gui的主要内容 247
6.2 React技术栈概述 247
6.2.1 什么是React 247
6.2.2 React关键技术 248
6.2.3 什么是Redux 249
6.2.4 react-redux介绍 249
6.3 Scratch-gui代码结构与流程 250
6.3.1 Scratch-gui代码结构 250
6.3.2 Scratch-gui代码流程 251
6.4 Scratch-gui核心代码分析 261
6.5 小结 275
第7章 Scratch生态其他项目 276
7.1 Scratch-paint:绘图编辑器 276
7.1.1 Scratch-paint目录结构 276
7.1.2 Scratch-paint使用方法 277
7.2 Scratch-audio:音频引擎 279
7.2.1 Scratch-audio目录结构 280
7.2.2 Scratch-audio在Scratch-gui中的使用 280
7.3 Scratch-parser:解析验证工具 283
7.3.1 Scratch-parser目录结构 283
7.3.2 Scratch-parser在Scratch-vm中的使用 283
7.4 小结 284
內容試閱
截至目前,全球已经有超过150个国家和地区的人在使用Scratch。Scratch被翻译成了40多种语言。作为一种可拖曳、图形化的编程语言,它已经深入人心。
Scratch不仅是一个学习工具,从更加广泛的意义上来说也是教育的一部分。国内外目前正在掀起一波Scratch教学和研究的热潮。就国内而言,基于Scratch的少儿编程教育发展得已经非常成熟,许多公司和科研机构纷纷进入该领域,并推出了自己的产品和研究成果,此外,基于Scratch的论文、图书、论坛、会议及竞赛也非常多。
在这样的大环境下,Scratch技术开发人员越来越受到相关教学和培训机构的青睐,就业市场方面对Scratch技术人才的需求量也在逐年增加。可以说,Scratch技术人员必将是未来的一大人才缺口,因此掌握Scratch技术对于社会和个人而言都具有非常重要的意义。
笔者是在2018年开始接触Scratch技术的。刚开始笔者还只是停留在Scratch语言的使用层面,并没有深入了解其内部的实现原理。2019年,笔者真正开始参与Scratch技术开发工作,当时有幸加入了一家名为核桃编程的少儿编程教育公司,基于Scratch开源项目做二次开发,推出了相关的编程教育产品。
在从事Scratch开发工作期间,笔者被其强大的功能深深地吸引,决心要深入理解它的实现原理。但是在实践过程中,笔者发现国内已经出版的图书都是介绍Scratch如何使用的,还没有一本是介绍Scratch语言的底层架构技术与实现的,而且互联网上几乎没有相关资料,想要深入学习,只有阅读Scratch的底层实现源码这一个途径。另外,Scratch的底层源码注释也很不完善,阅读门槛很高。于是笔者就有了编写一本介绍Scratch底层源码图书的想法,希望给后来者提供一点帮助,让他们尽量少走一些弯路。
《Scratch底层架构源码分析》特色
《Scratch底层架构源码分析》从Scratch底层源码讲起,首先对源码进行结构和流程上的梳理,然后深入每个模块,详细地讲解核心概念,并对其实现原理做深入分析,读者只要具备前端开发的相关知识就可以很轻松地理解和掌握本书内容。本书具有以下三大特色:
挑选Scratch生态最核心的内容进行深入剖析,同时尽可能覆盖主要知识点,避免知识盲区。
讲解深入浅出,对一个大的知识模块先从宏观上进行概括性描述,再逐步深入分析,减少跳跃性,以方便读者学习。
具有非常强的实用性,能让读者深入理解Scratch生态的底层技术,并针对不同的业务场景对Scratch进行二次开发。
《Scratch底层架构源码分析》内容
《Scratch底层架构源码分析》内容涵盖Scratch技术生态中的核心技术点,如Scratch代码块、Scratch虚拟机、Scratch渲染引擎、Scratch存储模块和Scratch用户界面等。各章内容简单介绍如下:
第1章对Scratch进行概述,并简要介绍项目中用到的两个重要工具Webpack和NPM。
第2章详细介绍积木块Scratch-blocks,并对其源码进行详细分析。
第3章主要介绍虚拟机Scratch-vm的相关技术。
第4章深入剖析渲染引擎Scratch-render。
第5章详细介绍Scratch的存储技术Scratch-storage。
第6章详细介绍Scratch的图形化界面Scratch-gui。
第7章主要介绍Scratch生态中一些非核心但非常重要的技术,包括绘图编辑器Scratch- paint、音频引擎Scratch-audio及解析验证工具Scratch-parser。
《Scratch底层架构源码分析》读者对象
Scratch技术开发人员;
Scratch技术研究人员;
游戏引擎开发人员;
想扩充自己技术栈的前端开发人员;
其他对少儿编程有兴趣的人员。
源码下载地址
《Scratch底层架构源码分析》涉及的Scratch源码下载地址如下:
Blockly:https:github.comgoogleblockly;
Scratch-blocks:https:github.comLLKscratch-blocks;
Scratch-vm:https:github.comLLKscratch-vm;
Scratch-render:https:github.comLLKscratch-render;
Scratch-storage:https:github.comLLKscratch-storage;
Scratch-gui:https:github.comLLKscratch-gui;
Scratch-paint:https:github.comLLKscratch-paint;
Scratch-audio:https:github.comLLKscratch-audio;
Scratch-parser:https:github.comLLKscratch-parser。
售后支持
限于作者水平,加之写作时间有限,书中可能存在一些疏漏和不当之处,敬请各位读者指正。读者阅读本书时若有疑问,可以通过以下方式反馈。
E-mail:hzbook2017@163.com

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 海外用户
megBook.com.tw
Copyright (C) 2013 - 2024 (香港)大書城有限公司 All Rights Reserved.