梦断代码4 : 程序--艺术?

高德纳的丛书名叫《计算机编程艺术(The Art of Computer Programming)-- 而不是《计算机编程科学( The Science of Computer Programming)》。 他在1984年获得图灵奖时发表感言说,“计算机编程是门艺术”。

程序作为人们思想的结晶,我们不仅要求它可以工作,可以产生正确的结果。我们同时要求它的结构清晰,语法高效,结果美观,能体现出创作者卓越的思想。这一切跟艺术家创作艺术品何其相似。您也许认为这样比喻不恰当,您无法从程序中看到任何美感。

这可能是因为大部分人还是看不懂程序,但即使这样,一些伟大的程序还是能让您看到它与众不同的美,高德纳的TeXLinux,以及其他很多软件都会再它本身的功能之外给人很多思想。

而代码中的美则更多体现在它的思想、结构等方面,一个完美实现的快速排序,一个简洁明快的接口,一个抽象良好的类,一个简洁完善的逻辑,都能给我们以美的享受。

或许我们不会绘画,不会乐器,但是我们可以寻求程序之美,它的美在被我们感叹的同时,还能帮助用户达成他们的需求。

 

最后Piet Hein的诗歌描述了我们最求艺术的道路:

 

通往智慧之路?—— 嗯,一马平川

几句话就能说清:

又错

又再错

但更少

更少了

更少了

posted @   ustc_msra_ase  阅读(253)  评论(3编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述
点击右上角即可分享
微信分享提示