C&C++   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了【C/C++】面相对象开发之封装大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

封装继承多态是面向对象程序开发的基础概念。是实现面向对象的基本要素。

封装

程序开发,最核心价值,是数据。
程序其实是读取数据,操作数据,保存数据等一系列操作。
那么经过良好组织过的数据,将使编程事半功倍。

高内聚,低耦合

说到数据,经常挂在嘴边的,就是这句高内聚,低耦合了。
这并不是绝对规则。高和低是程度副词。我们要尽量高内聚,尽量低耦合。
对于初学者,这一句话,可能就懵了。不同的人,有不同的评价标准。那么什么样算是高,什么样算是低呢?

1. 一个数据只让一个对象进行管理。

避免公开的全局变量。如果一个数据开放程度过大。就难保不会有人想要偷懒,直接读取/设置。
当管理这个数据的人过多,那么想要对这个数据进行升级、优化,会大概率导致其他模块被迫修改。
不符合面向对象开发的价值观。

2. 同样的数据不在多处进行管理。

如果一个程序里面,有多个地方保存了同一个数据,例如当前是不是白天“isDay1”,"isDay2"。
那么当有开发新的功能时,有的人用了变量1,有的人用了变量2。很容易出现数据不一致的情况。
一定要逼着再开发第三个程序段,用于保证isDay1和isDay2保持同步?那岂不是自己给自己添堵!
所以,同样的数据,不要在多个地方进行管理。

3. 能通过其他数据计算出来的数据,不要重复保存。

在程序开发中,经常还会出现一种情况。那就是可以通过计算出来的数据,还要再拿一个变量进行保存。

class DayNightControl
{
    bool isDay;      // 当前是否是白天
    bool isNight;    // 当前是否是黑夜(这个数据就是重复)
}

当前是否是晚上,可以通过!isDay获得,那么就不要再重复记录isNight。这是一个一眼就能看出问题的例子。
还有很多隐藏的情况。

例如:某个控件是否显示。显示条件可能由A,B,C三个条件控制。本可以通过A&&B&&C进行计算得出。此时额外增加一个visible变量,就会给后续的程序维护造成麻烦。

大佬总结

以上是大佬教程为你收集整理的【C/C++】面相对象开发之封装全部内容,希望文章能够帮你解决【C/C++】面相对象开发之封装所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: