Reductionism and Holism in Programming 归约与整体哲学方法在程序设计中的应用

来源:互联网 发布:arta软件 编辑:程序博客网 时间:2024/05/18 11:49
        对于一般的程序可以用两种方法去理解。逐句分析,那么是从程序的第个独立的层面上理解程序,这是归约的方法。我们还可以从更全局的角度分析一个程序,主要 考虑它作为一个整体是如何工作的,这种整体的角度使人可以从另一个角度分析程序,这对成功的程序设计来说至关重要。
        归 约论(reductionism)是一种哲学方法。它认为只有理解一个事物的第一个组成部分后才能更好地理解该事物。整体论(holism)正好与之相 反,它认为整体并非每一部分的简单叠加。在学习编写程序时,必须学会从这两种角度分析程序。若只注意大的方面,则不能理解解决问题需要的工具。若过分关注 细节,则会只见树木不见森林。
        在学习程序设计时,最好的方法是交替使用这两种视角。整体论有助于从整体上把握程序的作用,使程序员对程序设计过程 的直觉更加敏锐,并能够从较高的层面研究程序,说:“我理解这个程序是干什么的。”另一方面,在实际写程序时,刚需要适当采用归约法,以了解程序是怎样结 合在一起的。


注:本文几乎完全节选自《C语言的科学和艺术》一书第22页 Rosberts,E.s. 著 翁惠玉等译 -北京:机械工业出版社,2005.3 书名原文:The Art and Science of C:A Library-Based Intoduction to Computer Science (ISBN 7-111-15971-3)
本文之所以没有在题目中标明转载,意在希望读者将主要注意力放在文章的主旨。