读书人

编程的核心取决于抽象

发布时间: 2013-01-06 15:44:47 作者: rapoo

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

抽象只是一个优秀软件的原则一,还有很多原则。 2 楼 mqlfly2008 5 小时前 抽象方式的不同,确实导致了面向对象和面向过程的不通。 3 楼 hyj1254 3 小时前 luhfly 写道好吧,抽象。
很多人,我见过很多人,没事就抽象。抽象到系统抽筋。

抽象只是一个优秀软件的原则一,还有很多原则。
写这篇文章出来我就是打算被踩的,深入思考而又不同的观点永远只有少数人赞同。不恰当的抽象确实是对面向对象特性的滥用,这点Unix编程艺术也有提及,这是对个人功底的考验,另当别论。从构建软件体系的角度来讲,抽象是核心的一环,面向过程显然支持不足,面向对象是为此而诞生。各编程原则借此也更容易得到实现。

读书人网 >编程

热点推荐