美文网首页
Processing从入门到精通

Processing从入门到精通

作者: 求愚 | 来源:发表于2019-09-15 21:44 被阅读0次

    历时半年时间,把 Daniel Shiffman 的 《The nature of code》 通读2遍,第一遍快速浏览,第二遍编码实操,极大了提升了自己实际问题代码抽象化的能力,遂做此小结。

    为什么要学Processing

    Processing是一款所编即所得的软件,使用语言是Java,软件内置各种图像工具,可以很快的编码出图像类的交互形态,非常合适新手入门代码,或编码展示交互原型。

    可以学到什么

    1.伪码的逻辑性

    不同语言有不同的语法,但其背后的逻辑是相通的。因此编码前,注重锻炼自己的伪码思考能力。当伪码逻辑顺畅后,编码只是将逻辑语言转化成代码语言。碰到问题,先从伪码思考逻辑,能极大的提高自己的实际问题代码抽象化的能力。

    2.面向对象编程思想

    面向对象编程思想概念本身学起来不难。将某个任务抽象成几个对象,对象有其自身的属性,对象间通过方法发生交互。难点在于如何抽象对象这一步,抽象的好,代码逻辑清晰,复杂度小。抽象的差,逻辑冗余,复杂度高。这一点在于多实操,多实践能打通脑回路中的闭塞模块。

    3.死磕BUG的毅力

    古人云:“写代码一半的时间都在写BUG,剩下的一半是在修BUG”。笔者深以为然。当伪码逻辑整理通顺后,自信流畅的书写完代码,按下Run键,满心期待着跑通效果,一堆 Error 让你怀疑人生。没有选择,挨个Debug,直至跑通。人生何尝不是如此呢,道理皆知,实操问题频出,不死磕,便不能克服这个难点,咬咬牙,Print error。

    学习成果展示

    1.随机漫步

    结合随机函数形成随机漫步的效果

    2.向量

    结合向量熟悉平面中位置,速度,加速度的二维属性

    3.力

    利用物理学基础原理模拟物体在现实世界中的运动

    4.波形

    结合弧度制,sin,cos,实现波形效果

    5.粒子

    结合继承和多态,实现粒子效果

    6.自动代理

    确定目标情况下,感知外界环境,做出判断

    7.固定进化

    根据固定规律进行迭代进化

    8.递归

    结合递归,进行规则图形的绘制

    9.随机进化

    根据优胜劣汰进化算法进行迭代进化

    10.神经网络

    通过测试集训练算法

    展望

    人工智能相关的技术不断前进着,作为技术迭代的见证者,还是要利用业余时间多关注相关领域的知识。希望下一次能跟大家分享学习 Android 或 Fullter 的感受。

    附件

    1.The nature of code 下载地址(提取码:6yqw)

    2.Github 笔者代码地址

    相关文章

      网友评论

          本文标题:Processing从入门到精通

          本文链接:https://www.haomeiwen.com/subject/aystuctx.html