程序设计语言的诞生和发展在人类历史发展的长河中并不长,但语言却已在人类社会广泛传播发展多年了。
开始的时候程序设计更偏向于抽象的数学,人们用纸带标注0和1给早期计算机传递机器指令。直到现在机器仍然采用二进制进行编码。接着汇编语言,高级语言陆续出现,计算机的使用慢慢更多偏向于沟通和交流,通过计算机程序去指挥计算机解决问题。
现在我们学习到的高级语言则逐渐靠近语文或英语这一类自然语言的学习。
编程语言在逐渐剔除和业务逻辑无关的语法,从而让开发者更多地关注在业务逻辑自身上,而不是机器怎么执行这些逻辑上。简单的总结,可以理解成:现代语言的发展趋势是:编程的主要任务越来越多的是告诉机器要做什么(what),而不是怎么做(how)。——《编程语言的发展趋势:从没有分号,到DSL》
人与人的沟通是A告诉B,A说B听,或者A写B读,这里的AB可能不只是一个人,就像一段成熟的代码往往是很多人反复修正调试的结果一样。
人与机器的沟通呢?人输入指令,计算机执行指令,有的需要把执行的结果输出。
输入,执行,(输出)
这个就是人能够通过计算机程序设计语言与机器沟通的基础,将来随着物联网时代的到来,不只是人和机器,机器与机器也能通过计算机语言进行沟通了。有的科学家还在研究脑机接口,如果将来可能出现的更高效的沟通方式。
到了那个时候,很有可能,我们在互联网上搜索的不是文字,图片,或者是视频,而是搜索一个一个,不同人,不同经历下的脑信号。——《物联网?车联网?我们直接聊聊脑联网》
很多时候我们在学习计算机程序设计的时候会迷茫于多种不同的语言,语法,版本。事实上,这些不过是不同的工具而已,应用这些来解决问题才是我们需要获得的关键能力。好比小时候我们学写字学认字,但只有通过多年的应用和写作才能对文字有更深入的理解。人与人沟通如此,与机器也是如此。未来已来,你准备好了吗?