C代码重构心得

591 阅读1分钟

先简单罗列以下,以后再细化。

  • 1 取一个好的名字。不管是变量还是函数。
  • 2 函数单一。如果一个函数过长。那一定是这个函数干的事情太多。不单一职责。
  • 3 先写测试用例再重构(重要)
  • 4 将一些关联性较强的数据用结构体将它们组合起来
  • 5 将一些结构体中数据关联性不强的解耦出来
  • 6 重复函数提重
  • 7 源文件不超大
  • 8 函数深度不要超过4
  • 9 用面向对象的思想重构函数。C语言是面向过程的语言。这里并不是说要实现C语言的面向对象。而是利用面向对象的思想。比如,我有一个功能,为了不将自己的数据暴露给外部。可以将这些功能相关的函数用一个结构体封装。里面用函数指针,将各个对外接口暴露。但是我们具体的实现不暴露。比如头文件中放置对外接口的声明,以及一些public的数据结构。而将private数据和内部函数放到.c中。
  • 10 重构是一个持续的动作。
  • 11 重构的代码满足Clean Code。(比如变量小驼峰,函数大坨峰。消除魔鬼数字)