C++的封装(十四):《设计模式》这本书

很多C++学习者学到对C++语言有一定自信后,会去读一下《设计模式》这本书。希望能够提升自己的设计水平。

据我所知,围绕C++语言出了很多书。因为正好赶上泡沫经济时代。大家一拥而上,自己半懂不懂就出书,抢着出书收割读者,出了很多有很大问题的C++学习指导书籍。读者如果不加思考的接受,很容易出问题,再也无法学精通了。甚至不少读者读书到经历了"从入门到放弃"的尴尬境地。但《设计模式》这本书还是有点内容,可以看一看。但我建议只看他的代码,而不是文字。因为代码比较忠实,它不会吹嘘,也不会撒谎。读过我前面文章的读者,应该都有能力阅读它的代码,遇到疑惑,再参考一下文字即可。

虽然我不反对读这本书,也提醒下不要抱太高的希望。因为希望越大失望越大。这本书虽然用《设计模式》来命名,它的重点是讲述在类型分界线外,类之间的勾连技巧,这些技巧虽然最后也归入设计的范畴,毕竟已经属于枝节了。设计的重点难道不是功能、性能、高效的数据结构么,这些应该早已在类的内部实现了,而不是出现在类边界了。

所以《设计模式》讲的这些模式,最终还是归集到封装这个主题。这些在类边界的勾连代码,往往比较狡狯,把垃圾代码收集到一个肮脏的角落,然后集中力量对付。这是它的价值所在。初学者尝试练习编程,写的内容往往很单薄,而过度套用设计模式封装了又封装,导致代码充满了肮脏的垃圾代码,而真正的程序逻辑反而被淹没。变成从一开始就培养坏习惯了。所以适度封装是必须要认真对待的问题。

相关推荐
青瓦梦滋4 小时前
C++的IO流与STL的空间配置器
开发语言·c++
鱼很腾apoc6 小时前
【学习篇】第20期 超详解 C++ 多态:从语法规则到底层原理
java·c语言·开发语言·c++·学习·算法·青少年编程
不吃土豆的马铃薯7 小时前
4.SGI STL 二级空间配置器 allocate 与_S_refill 源码解析
c语言·开发语言·c++·dreamweaver·内存池
fufu03117 小时前
vscode配置C/C++环境,用GDB调试简单程序分享
开发语言·c++
nnsix8 小时前
设计模式 - 模板方法模式 笔记
笔记·设计模式·模板方法模式
水云桐程序员9 小时前
C++变量的概念及用法
开发语言·c++
水饺编程9 小时前
第5章,[Win32 章节] :几种典型的颜色
c语言·c++·windows·visual studio
Larry_Yanan10 小时前
QML面试常见问题(一)QML中组件呈现方式的方法有哪些
开发语言·c++·qt·ui·面试
杨校10 小时前
杨校老师课堂之C++的位运算应用专项训练
开发语言·c++
j7~10 小时前
【MYSQL】在Centos7和ubuntu22.04环境下安装
数据库·c++·mysql·ubuntu·centos