Processing编程学习指南(原书第2版)

Processing编程学习指南(原书第2版) pdf epub mobi txt 电子书 下载 2026

☆☆☆☆☆
出版者:机械工业出版社 作者:[美]丹尼尔希夫曼(Daniel Shiffman) 出品人: 页数:409 译者:李存 出版时间:2017-3-1 价格:99.00元 装帧:平装 isbn号码:9787111558675 丛书系列:计算机科学丛书
图书标签
  • 编程
  • Processing
  • 计算机
  • 艺术
  • 计算机科学
  • coding
  • Programming
  • 英文原版
  • Processing
  • 编程
  • 学习
  • 指南
  • 计算机
  • 图形学
  • 编程语言
  • 初学者
  • 视觉
  • 算法
想要找书就要到 小哈图书下载中心
立刻按 ctrl+D 收藏本页
你会得到大惊喜!!

具体描述

在视觉化界面中学习电脑编程的基本原理!

本书介绍了编程的基本原理,涵盖了创建最前沿的图形应用程序(例如互动艺术、实时视频处理和数据可视化)所需要的基础知识。作为一本实验风格的手册,本书精心挑选了部分高级技术进行详尽解释,可以让图形和网页设计师、艺术家及平面设计师快速熟悉Processing编程环境。

从算法设计到数据可视化,从计算机视觉到3D图形,在有趣的互动视觉媒体和创意编程的背景之下,本书对面向对象的编程进行了彻底的阐述。此外,读者可以从本书的配套网站(www.learningprocessing.com)下载本书所有的源代码、章节练习以及如下的简短教程:

基础知识(学习Processing中的简单图形和坐标系统)

RGB颜色(学习数位色彩的基础知识)

Eclipse中的Processing(Java开发者在IDE中编写Processing代码)

第三方库文件(如何安装第三方Processing库文件)

本书主要特色包括

对编程经验零要求。本书适用于真正的编程初学者!

循序渐进的案例、详尽的解释、习题、示例代码,实现学习曲线的最优化。

Processing的快速上手指南。Processing免费且开源,是那些昂贵、令人生畏的编程语言的最佳替代者。

《Processing编程学习指南(原书第2版)》是一本引人入胜的编程入门书籍,它为艺术家、设计师、学生以及任何对将创意想法转化为动态视觉作品感兴趣的人提供了一个绝佳的学习平台。这本书并非直接教授枯燥的代码语法,而是巧妙地将编程概念融入到引人入胜的视觉艺术和交互设计实践中。 全书以Processing这一开源编程语言为核心,它专为图形和交互设计而生,语法简洁易学,能够让你快速上手,将抽象的编程逻辑转化为直观的视觉效果。本书将带你从零开始,逐步探索Processing的强大功能。你将学习如何绘制基本的形状,如点、线、矩形和圆形,并理解如何通过颜色、填充和描边来赋予它们生命。 随着学习的深入,你将接触到更复杂的图形绘制技术,包括路径、曲线以及对像素级别的操控。本书会详细讲解如何利用坐标系、变换(如平移、旋转、缩放)来构建更加精妙的视觉结构,并深入探讨如何利用随机数和算法来创造出意想不到的艺术效果,例如分形图案、粒子系统和动态纹理。 除了静态图形的绘制,本书更着重于交互性。你将学习如何捕捉用户的输入,例如鼠标的移动、点击以及键盘的按键,并根据这些输入来实时改变屏幕上的视觉元素,从而创造出具有响应性的艺术装置和交互式应用。本书会引导你理解事件驱动编程模型,让你能够构建出能够与用户进行实时互动的作品。 《Processing编程学习指南(原书第2版)》不仅仅是一本技术手册,更是一本启发创意的指南。书中提供了大量精心设计的示例代码,这些示例不仅能够帮助你理解抽象的编程概念,更能激发你的创作灵感。你将学会如何将数学原理、物理规律以及对自然现象的观察融入到你的编程作品中,例如模拟流体运动、重力效果以及光影变化。 书中还探讨了更高级的主题,包括动画的原理和实现,如何创建流畅的视觉过渡和动态叙事。你将学习到如何处理图像,包括加载、显示、以及利用图像进行更复杂的视觉处理,例如滤镜和像素操作。此外,书中还会触及到音频的处理,让你能够为你的作品增添听觉的维度,实现视听一体的艺术体验。 本书的作者深谙教学之道,他们用清晰易懂的语言,配以大量的插图和代码片段,将复杂的编程概念分解为易于理解的步骤。每一章都建立在前一章的基础上,让你能够循序渐进地掌握Processing的精髓。书中还鼓励读者进行实践和探索,通过修改示例代码,尝试自己的创意,从而真正地将编程能力内化。 无论你是初次接触编程,还是希望将编程技能应用于艺术创作,抑或是想为你的设计项目增添动态元素,这本书都将是你宝贵的伙伴。它将为你打开一个全新的创意大门,让你能够以前所未有的方式表达你的想法,创造出令人惊叹的视觉作品。本书的目标是让你不仅仅学会编写代码,更是学会用代码来“看见”和“创造”。

作者简介

作者:丹尼尔·希夫曼

(Daniel Shiffman)

纽约大学Tisch艺术学院助理艺术教授,他在耶鲁大学获得了数学与哲学学士学位和交互通信的硕士学位。多年来,他一直用Processing这门艺术家友好型开源语言开发教程、教学示例和代码库,拥有丰富的算法和应用教学经验。此外,还著有《代码本色》(Nature of Code)。

译者:李存

荷兰埃因霍芬理工大学工业设计学院交互设计品质组(Designing Quality in Interaction)博士研究员。在江南大学设计学院攻读硕士学位期间曾赴意大利米兰理工大学设计学院学习。在国内外设计比赛中获奖20余次;在国内外重要期刊及国际学术会议上发表相关学术论文5篇;合编设计相关书籍2本;主持和参与过包括意大利杜卡迪、荷兰飞利浦、美的、苏州博物馆、威成花器等公司的多项产品设计和交互设计项目;6项作品曾在包括荷兰设计周在内的国内外展览中展出;个人和作品曾被视觉同盟、《艺术与设计》和《创意与设计》等媒体报导。

目录信息

出版者的话
译者序
致谢
前言
第一节课 开始
第1章 像素2
1.1 坐标纸2
1.2 绘制基本图形3
1.3 灰度模式7
1.4 RGB颜色9
1.5 颜色透明度10
1.6 自定义颜色取值范围11
第2章 Processing13
2.1 让Processing来拯救你13
2.2 如何下载Processing14
2.3 Processing应用程序14
2.4 速写本15
2.5 Processing中的代码16
2.6 错误提示18
2.7 Processing参考文档20
2.8 “运行”按钮21
2.9 你的第一个草图22
第3章 交互24
3.1 程序的运行流程24
3.2 我们的好朋友:setup()和draw()25
3.3 跟随鼠标移动27
3.4 鼠标点击和键盘操作30
第一节课的项目33
第二节课 你所需要知道的一切
第4章 变量36
4.1 什么是变量36
4.2 变量的声明和初始化37
4.3 使用变量39
4.4 多种变量42
4.5 系统变量43
4.6 随机:多样化为生活增加趣味性44
4.7 使用变量来创建Zoog46
4.8 坐标平移48
第5章 条件语句50
5.1 布尔表达式50
5.2 条件语句:if、else、else if51
5.3 草图中的条件语句54
5.4 逻辑运算符56
5.5 多个鼠标翻转效果的实现58
5.6 布尔变量59
5.7 弹力球62
5.8 物理学基础66
第6章 循环69
6.1 什么是迭代69
6.2 while循环:你唯一真正需要的循环71
6.3 “退出”条件73
6.4 for循环75
6.5 局域变量与全局变量77
6.6 draw()循环内部的循环80
6.7 长出胳膊的Zoog82
第二节课的项目84
第三节课 结构化
第7章 函数86
7.1 将代码分解86
7.2 用户自定义函数87
7.3 定义函数88
7.4 简单的模块化89
7.5 实参91
7.6 传递副本95
7.7 返回类型97
7.8 重新整理Zoog100
第8章 对象103
8.1 掌握面向对象编程103
8.2 使用对象104
8.3 编写饼干模具的程序105
8.4 使用一个对象的具体步骤107
8.5 使用标签进行组合109
8.6 构造函数参数112
8.7 对象也是数据类型115
8.8 面向对象的Zoog116
第三节课的项目119
第四节课 重复性
第9章 数组122
9.1 数组的作用122
9.2 数组是什么124
9.3 声明和创建数组125
9.4 初始化数组126
9.5 数组运算127
9.6 简单的数组示例:蛇129
9.7 对象数组131
9.8 交互式对象133
9.9 Processing的数组函数136
9.10 1001个Zoog137
第四节课的项目139
第五节课 融会贯通
第10章 算法142
10.1 我们现在在哪里?我们将要去哪里142
10.2 算法:跟着你自己的节奏跳舞143
10.3 从概念到部分144
10.4 第1部分:雨水采集器145
10.5 第2部分:相交147
10.6 第3部分:计时器152
10.7 第4部分:雨滴154
10.8 整合157
10.9 为下一步做好准备164
第五节课的项目165
第11章 调试166
11.1 建议1:休息一下166
11.2 建议2:让另外一个人参与进来166
11.3 建议3:简化167
11.4 建议4:println()是你的朋友168
第12章 库171
12.1 库概述171
12.2 内置库172
12.3 第三方库172
12.4 手动安装库173
第六节课 你周围的世界
第13章 数学176
13.1 数学和编程176
13.2 模数177
13.3 随机数178
13.4 概率回顾179
13.5 代码中的事件概率179
13.6 Perlin噪声181
13.7 map()函数184
13.8 角度185
13.9 三角学186
13.10 振荡188
13.11 递归190
13.12 二维数组193
第14章 三维平移和旋转198
14.1 z坐标轴198
14.2 P3D究竟是什么202
14.3 顶点形状203
14.4 自定义三维图形205
14.5 简单的旋转207
14.6 围绕不同的轴旋转209
14.7 scale()函数211
14.8 pushMatrix()和popMatrix()函数212
14.9 用Processing模拟太阳系218
14.10 PShape类220
第六节课的项目222
第七节课 显微镜下的像素
第15章 图像224
15.1 图像入门224
15.2 图像的动画效果226
15.3 我的第一个图像处理滤镜228
15.4 图像数组229
15.5 像素,像素,更多的像素231
15.6 图像处理简介235
15.7 另外一个图像处理滤镜:制作属于你自己的tint()函数236
15.8 写入另外一个PImage对象的像素237
15.9 第二阶段:像素组处理239
15.10 具有创意的可视化242
第16章 视频244
16.1 视频直播244
16.2 已录制的视频249
16.3 软件镜像251
16.4 视频作为传感器和计算机视觉256
16.5 背景消除260
16.6 运动检测263
16.7 计算机视觉库266
第七节课的项目267
第八节课 外面的世界
第17章 文本270
17.1 字符串从哪来270
17.2 什么是字符串271
17.3 显示文字273
17.4 文字的动态效果275
17.5 文字马赛克278
17.6 旋转文字280
17.7 按字符逐一显示文字281
第18章 数据输入286
18.1 字符串的操作286
18.2 拆分和组合288
18.3 处理数据290
18.4 处理文本文件291
18.5 表格数据293
18.6 非标准化格式的数据297
18.7 文本分析302
18.8 XML305
18.9 使用Processing的XML类307
18.10 JSON312
18.11 JSONObject和JSONArray315
18.12 线程318
18.13 API320
第19章 数据流323
19.1 网络通信323
19.2 创建服务器324
19.3 创建客户端327
19.4 广播329
19.5 多用户通信,第1部分:服务器331
19.6 多用户通信,第2部分:客户端333
19.7 多用户通信,第3部分:组合335
19.8 串行通信336
19.9 使用信号交换的串行通信338
19.10 使用字符串的串行通信339
第八节课的项目342
第九节课 制造噪音
第20章 声音344
20.1 基础的声音播放344
20.2 关于声音播放的更多内容348
20.3 声音合成350
20.4 声音分析353
20.5 声音阈值355
20.6 频谱分析358
第21章 导出361
21.1 导出至Web361
21.2 独立的应用程序362
21.3 高分辨PDF文件363
21.4 图像和saveFrame()367
21.5 录制视频367
第九节课的项目370
第十节课 超越Processing
第22章 高级的面向对象编程372
22.1 封装372
22.2 继承374
22.3 一个继承的示例:图形378
22.4 多态性381
22.5 重载384
第23章 Java386
23.1 揭开Processing魔法386
23.2 如果不使用Processing,代码看上去会是什么样子387
23.3 探索Java API389
23.4 其他有用的Java类:ArrayList390
23.5 其他有用的Java类:Rectangle396
23.6 异常(错误)处理398
23.7 Processing之外的Java400
附录A 常见错误402
· · · · · · (收起)

读后感

☆☆☆☆☆

大部分是基本的语法和程序逻辑。 加上个别Processing特定的语法和全局函数。 当参考还可以。  

☆☆☆☆☆

这本英文的看着烦,前几天刚入手这本书《Processing互动编程艺术》http://book.douban.com/subject/6517501 浅显易懂,适合想入门的同学。 ...  

☆☆☆☆☆

比《爱上processing》介绍的内容更深入一些。 看完以后还对java略有了点儿好感~ 读后感在这里: http://zeng.li/processing/2012/12/13/mosaic3d/  

☆☆☆☆☆

大部分是基本的语法和程序逻辑。 加上个别Processing特定的语法和全局函数。 当参考还可以。  

☆☆☆☆☆

比《爱上processing》介绍的内容更深入一些。 看完以后还对java略有了点儿好感~ 读后感在这里: http://zeng.li/processing/2012/12/13/mosaic3d/  

用户评价

☆☆☆☆☆

不得不说,这本书的实用性和系统性给我留下了深刻的印象。作为一名在设计领域摸爬滚打多年的从业者,我一直渴望能将自己的创意通过更具动态和互动性的方式呈现出来。过去,我尝试过一些现成的设计软件,但总觉得它们在表达上有所局限。这本书的出现,彻底改变了我的看法。它不仅仅是一本教你如何写代码的书,更是一本教会你如何用代码“思考”和“创造”的书。从如何搭建基本的绘图环境,到如何运用数学知识来生成更复杂的几何图形,再到如何引入时间维度实现动画效果,每一步都衔接得非常自然。我最欣赏的是作者在讲解过程中,始终不忘强调“为什么”。他不仅仅告诉你“怎么做”,更会解释“为什么这么做”,这对于理解编程的底层逻辑至关重要。书中有很多让我眼前一亮的设计,比如如何利用随机性来创造出无限变化的图案,如何通过简单的鼠标交互就能控制图形的动态变化,这些都极大地拓展了我对视觉设计的想象空间。这本书让我明白,编程不再是冰冷的技术,而是可以用来描绘生活、表达情感、甚至引发思考的强大工具。我经常会在工作之余,抽出时间来钻研书中的案例,并将学到的知识应用到我的项目设计中,收效显著。

☆☆☆☆☆

这本书的深度和广度都超出了我的预期。作为一名有着一定编程基础的学习者,我原本以为这本书可能对我来说会有些基础,但事实证明,这本书即使对于有经验的开发者,也依然能提供很多有价值的见解。作者在讲解Processing的各种功能时,不仅仅停留在“如何使用”层面,更深入地探讨了“为什么这么设计”以及“背后的原理是什么”。这对于理解Processing的哲学和设计理念非常有帮助。我特别喜欢书中关于性能优化和高级绘图技术的讨论,这些内容在很多入门级的教程中是很难找到的。它让我能够更深入地理解Processing的底层机制,并学会如何写出更高效、更出色的代码。书中还提供了一些关于与其他技术(如Java、OpenCV等)集成的例子,这为我的项目开发提供了更多的可能性。尽管这本书中的一些概念可能需要一些时间和反复的琢磨才能完全理解,但正是这种深度,使得它成为了一本值得反复阅读和学习的宝贵资源。我会在完成基础部分的学习后,回头再来钻研这些更高级的内容,我相信这会极大地提升我的Processing开发能力。

☆☆☆☆☆

这本书的语言风格非常独特,完全颠覆了我对技术书籍的刻板印象。我以为学习编程会是一件枯燥乏味的事情,充满了晦涩难懂的专业术语。然而,这本书却像一位和蔼可亲的朋友,用最通俗易懂的语言,一步一步地把我领进了Processing的奇妙世界。作者的叙述方式非常生动有趣,时不时会穿插一些轻松的幽默感,让我在学习过程中始终保持着愉悦的心情。我特别喜欢书中那些“小贴士”和“进阶思考”,它们总能在关键时刻点拨我,让我对某个概念有更深入的理解,或者给我一些新的创作灵感。书中的例子也设计得非常巧妙,它们不仅能够清晰地演示技术点,而且本身就充满了艺术的美感。我常常会花很多时间去研究这些示例代码,不仅仅是复制粘贴,而是尝试去理解其中的逻辑,然后在此基础上进行修改和扩展,创造出属于我自己的小作品。这本书的缺点在于,对于一些完全没有接触过任何编程概念的读者来说,可能需要一些额外的耐心去消化。但总的来说,这本书的引导性非常强,只要你愿意投入时间和精力,一定能收获满满。

☆☆☆☆☆

天哪,这本书简直是打开了我对视觉艺术和编程世界的新大门!我一直对互动艺术和动态图形很感兴趣,但又觉得编程听起来遥不可及。直到我翻开这本《Processing编程学习指南》,一切都变得那么清晰有趣。作者用非常直观和接地气的方式,从最基础的“画点、画线”讲起,逐步引导读者进入更复杂的概念,比如颜色混合、动画原理、甚至是一些基础的交互逻辑。我特别喜欢书中丰富的插图和示例代码,它们不是那种枯燥的技术文档,而是充满了创意和启发性。每一次跟着书里的代码敲出一段有趣的图案或者小动画,都让我成就感爆棚。而且,Processing本身的简洁性和可视化特点,让我在学习编程的同时,还能立刻看到自己的成果,这极大地激发了我的学习热情。我曾经尝试过其他一些编程语言,但都觉得门槛太高,学起来很费劲。而Processing,就像是为艺术家和设计师量身定制的编程语言,让技术不再是艺术表达的障碍,反而成了更强大的助推器。这本书的排版也很舒服,字体大小适中,代码块清晰,翻阅起来一点都不累。我还会时不时地回去翻看前面的章节,重新温习一些基础概念,因为很多时候,那些最简单的原理却是构建复杂作品的基石。

☆☆☆☆☆

这本《Processing编程学习指南》对我而言,不仅仅是一本工具书,更像是一个启蒙导师。我一直对程序生成艺术有着浓厚的兴趣,但总是觉得门槛很高,难以入手。这本书就像是为我量身打造的阶梯,让我能够一步步地攀登。它从最基础的变量、函数讲起,然后逐步深入到更复杂的概念,如面向对象编程、数据结构等。让我印象最深刻的是,书中在讲解每一个新概念时,都会结合实际的Processing代码示例,并且会非常细致地解释代码的每一部分是如何工作的,以及它会对最终的视觉效果产生什么样的影响。这让我不再是被动地接受知识,而是主动地去探索和理解。我尤其喜欢书中关于“算法美学”的讨论,它让我意识到,编程不仅仅是实现功能,更是一种创造美的过程。通过算法,我们可以生成出意想不到的、充满惊喜的视觉效果。这本书的结构安排也十分合理,每个章节都有清晰的目标和学习路径,让我能够有条不紊地进行学习。我经常会在学习完一个章节后,尝试着去完成书中提供的练习题,这不仅巩固了我所学的知识,还锻炼了我的问题解决能力。

☆☆☆☆☆

很好的书,特别是第六节及之后,适合所有做cg的人 而且还附了代码链接

☆☆☆☆☆

对不会编程的超友好!

☆☆☆☆☆

如果英文版看得懂还是建议看英文原版,中文版每一章都有一些小错,不借助原版会耽误事,稍微有点失望。 编程的书少一个标点都是错,所以苛刻一点是肯定的。但毕竟还是要感谢有人愿意翻译出来这本经典。

☆☆☆☆☆

可视化入门指南

☆☆☆☆☆

【2017.8 读2/3 补标】诶编程是难以纸上谈兵的,书很好,后半部分较为零散的展示,展现出processing的强大丰富性,但是用不到的话也忘光光,数学的部分需要自我驱动的探索,而前文或许真的是对很多人来说最好的编程入门之一。其实我真的很好奇对于文科生来说,编程式的思考与人文式的写作之间是一个怎样的关系,逻辑/论证/诗/艺术等等这样的交缠一定是很有意思的。