编程和音乐有什么关系,音乐和言语的共同之处

编程和音乐

许多 高手都是会把编程比成工程建筑,例如构架、策略模式,基本上是用的建筑物的语言表达,其实我我觉得编程和音乐也是非常相近的。例如近期在时断时续在看一本《代码大全》,里面对于提升源代码易读性的变量界定,提及了变量的“跨距”,这实际上 就特别像音乐中的“音程”。

从简单视角而言:胡写的程序流程跑不起來或都是bug,乱弹的音符则惹人烦心灵。编程和音乐都是有对应的基本原理支撑点,两者都多多少少依靠一些数学思想方法。

从专业的视角比照,在网上检索了下,好像都还没写这些的,那大叔就简易归纳一下二者互通的位置吧。

下边由杰出的作家chenqionghe让你简易对比一下,are you ok ?

音符

例如四分音符、二分音符、全音符、八分音符、十六分音符、三十二分音符

基本定律便是二进制,编程语言表达便是靠二进制玩的,这别说了吧。举个事例:int32 int64 float32 float64

休止符

休止符和音符一样也是根据二进制的,四分休止符、二分休止符、全休止符、八分休止符、十六分休止符、三十二分休止符

这就相近编程语言表达中的:break、sleep、return

音名

例如有:C D E F G A B1 2 3 4 5 6 7

这基本上就可以了解成语言表达中的变量,变量被机构变成程序流程,各种各样音被机构变成音乐。

音程

例如多次音程,便是包括了好多个音

编码有一个相近的定义:跨距(span):考量一个变量的不一样引入点的挨近水平,即2个引入点中间相距的个数。例如

a=1b=2c=3d = a b c

在这里段编码里,a变量的跨距是4,因为它最初引入和完毕引入占有了4行。

音质

尽管多少、长度、高低能够 都一样,可是由不一样音乐演奏的音质不一样,例如有:电子琴、大提琴、琵笆、二胡、大提琴这些编程一样,最后出现的全是样的結果,但能够 是由不一样的语言表达写的,例如有:C、GO、Java、Python、PHP、JavaScript这些

不断

音乐含有的N种不断,基本上就可以了解变成编程中的循环系统了:for、do-while、whie

跳音/重音/轻音等

那样的独特解决,就可以了解成编程中的if了碰到等同于 if 碰到这一音符或是句子,独特实际操作

if a == ''.'': 跳音if b == ''>'' 重音 if c == ''<'' 轻音

小标题

能够 解释成涵数

乐曲

能够 解释成涵数中启用了N身高涵数

例如这里有三小标题,一个小标题能够 解释成下边涵数的一个方式

def sea():a()b()c()

曲子

能够 解释成一个程序流程的类,或是一个包。

和旋、联弹、交响乐等

多种多样音与此同时传出、多种多样传统乐器与此同时弹奏,基本上就可以了解成编程中的高并发、并行处理了。例如各种各样编程语言表达,例如在我们应用APP或网页页面,实行一整套步骤的使用时,身后是N种编程语言表达的相互合作下实现的,这并不恰好是类似交响音乐中各种各样打击乐器的融合吗。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-BlogPHP 1.7.3

 Theme By 优美尚品

每日搜寻全球各个角落的热点新闻,锁定小童说事网,多一点惊喜与感动!