五千年(敝帚自珍)

主题:【整理】关于编程改革 -- 代码ABC

共:💬53 🌺271
全看分页树展 · 主题 跟帖
家园 现在一个新的思路是Visual programming

也不算是什么新思想,著名的Labview就是这方面的代表,但是对于大量的缺乏长期逻辑训练的“码农”来说,管理大量代码与复杂逻辑的一个有效方式显然是通过图形界面,因为人类的大脑天生对图形的感知程度高于文字,尤其是中国人(中文字体)。

这方面目前有一两家startup现在在做这方面的工作。而在股票程序化方面,类似的工具其实更早就出现了。但是对于比较特殊的软件,文字编程则仍然是不可缺的。

编程的一个主要困难,并离不开人类(用计算机编程),是因为人类的思考习惯与计算机不同,编程本质就是把人类的思考转化为计算机使用的语言,其实就是翻译,其中最大的困难是思考方式的转变,既人类的思考方式与计算机的思考方式是有很大不同的。所有计算机高级程序语言的发明都是为了使计算机语言更接近与人类的语言和思考方式而产生的,因此使用起来越方便的语言或界面,效率上的损失则越大。

因此计算机工程其实需要解决的一个最大问题,是如何能够更好的把人类思考转化为计算机的思考,所谓需求管理的重要性与日剧增,就是说的这个问题,否则人想要的是一回事,计算机运算出来的是另一回事,其中就是“翻译”出的问题。

图形编程也好,专用语言也好,都是为了从不同角度简化这个翻译工作的复杂度,也是目前编程这个工作暂时还没有被计算机本身代替的主要原因。一旦有办法把人类的需求有效的传递给计算机,如何编程,设计,开发,这些其实反倒都是计算机可以自己做的,关键是做什么东西这个目的问题计算机自己无法解决,必须要从人类那里来,从而带来了整个编程问题的困难性,其实就是个如何让计算机了解人类需求的问题,许多动态语言的出现也是高级语言向需求方向靠拢的一种尝试,这个图形编程也是个不错的尝试,也曾经有过比如UML那样的需要人类向计算机方向靠拢的需求建模,但是都没有从根本上减轻人类的劳动,更主要的是没有完美的准确无误的解决这个需求翻译的工作,也许要等到人工智能发展出比较好的语义能力后才可能实现。

全看分页树展 · 主题 跟帖


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河