作者cppOrz (cppOrz)
看板C_and_CPP
标题Re: [问题] c++中关於物件导向
时间Fri Nov 18 03:10:52 2005
※ 引述《Spiritwind (xd)》之铭言:
: 有哪位大大能帮忙说明一下,继承与多型如何协助程式的再应用吗??
: 上教授的课,完全听不懂这一段....
能够协助程式码复用的关键在於:抽象化
继承和多型就是属於 OO 的抽象化机制,所以它们当然能够协助程式
码的复用。
软体 IC(组件),一直是编程的最高理想之一。硬体组件之所以能够
达成其复用性,在於「规格」的明确化。可复用的软体组件当然也遵循
这种「针对介面设计」的思维。而继承和多型(还有更重要的封装),
都是达成针对介面设计的基本方法。
不过实际上,「如何」达成复用,并不是几句话就能解释得了。
编程是为了解决实际的问题,必须先了解问题的流程、结构和演算法,
才能转换为程式码。
「问题」之间,若有所关联,则「解法」,也会有相似的套路。
解决的问题愈多面向、愈广泛,就能对「解法」的抽象性质,有更深
入的体会。
早就有所谓 Design Patterns(DPs)这种东西,讲白一点,就是专门
在研究各种问题的适当「解法」。
不过,对学习(编程)而言,真正要加强的是认识问题和解决问题的
能力,你解决过的问题愈多,对问题的了解愈清楚深入,那些惯用的
套路和解法,自然就如遇知己,深得我心;再去学所谓「解法」,也
是水到渠成之事。反之,程式码没写过几行,交个小作业问题都一大
堆,就跑去学 OO, DP,当然不是说不可以,但并不是每个人都适合
从「抽象理论」入手的。(觉得雾煞煞,就代表基础还要再加强)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.120.214.120
1F:→ renderer:推 11/18 08:43
2F:推 hichcock:推 11/18 11:20
3F:→ hardcover:推 11/18 12:03