Bootstrap

谈谈C++软件开发实习生在项目中踩过的坑

        本文将由小庞分享在公司做项目时踩的坑。虽然很基础,但是也是需要多多注意的,因为细节这玩意,是长期养成的,得引起重视。

        1.代码行为规范问题。虽然说这个东西大家都不会太强调,但是遇到一个好导师的导师会指定你,告诉你那些代码的行为规范需要注意,毕竟不是你一个人写的代码,是整个团队开发的,不可能说到后面开发完了找一个问题,找半天,最后定位到自己写的屎山代码里,发现大佬看不懂,你自己也看不懂了。当然有人会说,这玩意叫防御性编程代码,但是哥们,你连你自己都给防住啦!        

        项目中应该注意的点,比如你是中间插入进来的,团队中的人都使用 "helloWorld" 这种驼峰式命名变量,但是你写的代码就是 "hello_world" 下划线命名变量。虽然说是正确的,但是还是建议亲亲这边根据团队的习惯来编写代码吧。也算是能不能快速融入团队中去的能力啦!还有一点是和小白说的:变量命名尽量使用有意义的名称,当然不是说一个int a, int b;这种是没意义的。还是得遵守团队的编码规范,使用英文命名,它直接影响到代码的可读性、可维护性和可理解性。

        2.模块化。通过将程序划分为多个相互独立的模块,每个模块负责一个清晰定义的功能,使得代码结构更加清晰,易于理解,提高代码的可读性。

        模块之间的低耦合性使得修改或更新单个模块时,对其他模块的影响降到最低,从而简化了维护工作,提高代码的可维护性。

         模块化的设计使得相同的代码块可以在不同的项目或同一项目的不同部分中重复使用,提高了开发效率,提高代码的可重用性。
        在大型项目中,模块化可以使得编译过程更加高效,因为只需要重新编译发生变化的模块,而不是整个项目,提高编译效率。

        3.封装。简单点就是给你的代码穿一身衣服,什么衣服----校服。

        一眼就能懂你代码写的是要表达什么意思,把变量像学生一样保护起来。封装数据和操作数据的函数在类中,对外只提高接口,隐藏类的内部实现细节,防止外部直接访问和修改数据,从而提高了数据的安全性。

        下面还有一些其他需要注意的地方:

        4.模块化时避免全局名字空间的污染:使用命名空间来组织代码,避免不同模块之间的名字冲突。
        5.合理设计模块间的接口:确保模块间的接口清晰、明确,避免过度依赖或耦合。
        6.封装时合理使用访问控制符:在C++中,使用public、private和protected访问控制符来控制类成员的访问权限,以保护类的内部状态。
        7.注意封装与继承的关系:封装是面向对象编程的基础,而继承是实现代码重用的重要手段。在设计类时,要合理考虑继承关系,避免过度继承或不必要的继承。
        8.避免在构造函数、析构函数和赋值运算符中使用多态:因为这些方法可能会在对象还未完全构造完成或已经销毁时被调用,导致程序出现错误。
        9.在多重继承时避免命名冲突:使用虚继承来处理多重继承中的命名冲突问题。
        10.尽量缩小虚函数的范围:只在必要时将函数声明为虚函数,因为虚函数表的维护和查询需要额外的内存和时间成本。

;