C++ 继承主要是为了提供统一接口,复用作用要尽量避免?这个说法对吗?

今天给大家分享的是一位粉丝的提问,C++ 继承主要是为了提供统一接口,复用作用要尽量避免?这个说法对吗?

接下来把粉丝的具体提问和我的回复分享给大家,希望也能给一些类似情况的小伙伴一些启发和帮助。

同学提问:

C++ 继承主要是为了提供统一接口,复用作用要尽量避免?这个说法对吗?

Yt回答:

这个说法没有看出哪个地方不妥,其实C++的继承,你继承A这个类,你会在A的类里面实现A的一些抽象方法,当然你也可以继承B这个类,你B里面有一些方法,自然而然你会发现后面C就继承了A和B两个的功能,其实它起到了一定扩展复用的功能,这个说法是没有问题的。相反来说我认为大家各位你不要去研究这个理论,它没有任何意义,因为理论这个东西,现在你比如说在没有代码基础上面你去研究这个理论,后面有无穷无尽的理论给你,但是你会发现你干不了。你就比如你看了这个计算机网络,从物理层、数据链路层、网络层、传输层以及包括到应用层。应用层分为会话层、表示层、应用层,也就构建了7层ISO模型。比如你了解这个东西之后,比如后面你去做开发的时候,你会发现你要了解这个东西吗?你包括很多干Java的,以及包括这种做业务开发的,包括Python、Go这种业务语言开发的,那你会发现它需要了解什么物理层、数据链路层、网络层吗?它压根不需要。Java已经封装好了,直接过来之后就是哪个IO有数据可读,你只要知道这个IO里面有数据就可以了。就连同TCP三次握手,四次挥手,滑动窗口都不需要知道,因为虚拟机已经给你封装好了,你读这个数据它就是对的,所以这个过程你如果真的站在一种编码的角度,你不要去研究太多的理论。

记住一句话:show me your code,就是展示你的代码,这样我认为它是最具有说服力的。即使你理论再通,即使很多概念你都能理解,你会发现你描述的很多东西就跟那个臭学究一样,就是你研究的都是很多这种臭八股文,然后来说又臭又长,而且研究的很多是一种意识形态之争,就是一种思维之争。你说你去讲这个对还是不对,你说对吧,它肯定这个汉字表述它是没有问题的。大家很多对于理论的描述,你只要看完之后它没什么问题就ok了。如果你去深究它,你就会发现你仔细去了解,那这个复用是什么意思呢?那你比如说这里提到的避免,比如尽量提供统一的接口又是什么意思?你能不能举出一个反例,你就发现有些犟种出来了,我要举出一个反例出来,好像这个东西又不是。如果你站在这个角度你是学不好的,至少说站在一种开发,作为一个工程师的角度你肯定是学不好的。看书也是这样的,只要你一眼看过去它没有问题,站在你的角度上面,你看没有什么问题,基本上就ok了,就是这个理论你记住它对这个事情的描述就可以了。

因为很多书籍上面表述,这里也得给大家讲一下。很多书籍上面表述,特别是计算机的很多经典书籍,它的原作不是汉语,是通过英语再翻译成汉语,然后这时我们再去看,你就会发现它情况不一样。从英文翻译到中文,然后我们再去看这个中文的时候,你会发现它很多原始的意思,它已经变了,就连同很多时候在描述同步异步的时候,你会发现很多时候这个东西异步,什么是同步等等这一系列的,你发现它很多东西就会有些概念。包括很多人epoll是异步的,也很多朋友epoll是同步的,那epoll到底是同步还是异步的,你发现这个好像描述不清楚,你发现epoll它一个东西它怎么可能是同步,同步和异步它是用来描述两者之间关系的。我跟大家讲这个点什么意思呢?就是所说的英文翻译到中文,你再去理解这个概念的时候,我认为它是没什么意义。它对于你来说,对于我们读者去看的时候,你只要肉眼可见扫描出来它没什么太大漏洞就ok了,记住它去描述就可以了。因为这里面后面还有其他人可能写的书籍,他也会有不同的理解。对于这个东西而言,你不用去跟别人去争论,比如这个东西行还是不行,或者这种纯理论上的研究,我跟大家讲一点意义都没有,反而显得你很浅薄。你可以争执什么?你比如你这个产品功能怎么做,你的产品怎么做更加优化。如果你在这里语言层面去僵持的话,这位朋友你应该工作不会太久,所以你还会有这种僵持。如果随着你的年限越久,你会发现无所谓,什么语言你管它,只要能搞定问题,搞定产品,能够使自己快速搞定产品,这个就可以了。

最后:

  1. 别抠理论:概念争论没意义,书上没大问题就行了
  2. 多写代码:写几个项目(如游戏角色系统)比研究概念强百倍
  3. 工程师思维:能解决问题就行,语言是工具,别钻牛角尖

计算机相关专业就业求职/学习路线/offer选择/职业规划建议

(学习就业困惑?我们来为你答疑解惑!)免费** **必回

#职业规划##计算机#
计算机就业职业规划辅导 文章被收录于专栏

解决计算机相关专业就业/面试/技术提升等问题解答(投稿必回)

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务