编程的核心在于抽象

    抽象是软件体系结构的灵魂。一个“优秀”的软件体系,必然是抽象层次恰到好处的结构。软件需要抽象,就如同书籍需要目录和章节一样;又好似茂盛的树木需要树干和枝丫。任何具备面向抽象编程意味的动作,都使软件体系朝质变迈出实实在在的一步,虽然不见得一定是变好。
    面向过程语言与面向对象语言最大的区别就是,对抽象的支持不一样。两者都可以抽象,只是后者容易多了,它专为抽象而生。
    但最重要的是,作为一个使用面向对象语言的程序员,要有这个意识,知道自己使用的这些特性有什么意义,会起到什么作用。只有意识到自己在做什么,才能有针对性地把它做到更好。
    很难想象完全没有这种意识的程序员能用好任何面向对象的语言。Unix编程艺术上讲要适度的抽象,但在到达这个层次之前,请先弄清楚面向对象编程的本质含义。

你可能感兴趣的:(编程)