分析一套源代码的代码规范和风格并讨论如何改进优化代码

结合工程实践选题相关的一套源代码,根据其编程语言或项目特色,分析其在源代码目录结构、文件名/类名/函数名/变量名等命名、接口定义规范和单元测试组织形式等方面的作法和特色;git

个人工程实践题目是 低功耗高可靠文件系统的设计与实现,本项目基于ESP32嵌入式开发平台,设计与实现低功耗、高可靠的文件系统。乐鑫为用户提供完整的软、硬件资源,进行 ESP32 硬件设备的开发。其中,乐鑫的软件开发环境 ESP-IDF 旨在协助用户快速开发物联网 (IoT) 应用,可知足用户对 Wi-Fi、蓝牙、低功耗等方面的要求。所以能够从github上ESP-IDF中直接下载ESP32 使用的 API(软件库和源码)。其主要使用的语言为c语言。但因为是嵌入式开发,所以还须要编写不少的配置文件以及引入官方提供的SDK进行开发。以下图所示:github

 

 

 

 

根据上图能够看到components、docs、examples、make、tools五个文件夹,对它们的介绍以下所示:编程

components:ESP-IDF的核心组件编程语言

docs:ESP-IDF相关文档函数

examples:ESP-IDF提供的示例程序,包括众多外设、Wi-Fi、蓝牙等demo工具

make:EPS-IDF工程管理目录单元测试

tools:ESP-IDF提供的工具集测试

esp-idf里面有一个名字example的文件夹,里面有不少乐鑫例程,可经过里面例程入门esp32,以hello_world为例:优化

 

 

 

 

文件名、类名、函数名、变量名等命名
本项目的各类命名均十分符合命名的规范,单词中间用_分隔,不管是函数名仍是变量名、类名、文件名都是用下划线将英语简写链接起来,便于咱们知道含义。

接口定义规范设计

 在C语言中,或者说全部的编程语言中,接口就是Application Programming Interface(API)的中文说法,即一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工做机制的细节。在C语言中,接口就是函数。本项目的接口定义十分规范。
 

列举哪些作法有悖于“代码的简洁、清晰、无歧义”的基本原则,及如何进一步优化改进;

不少同窗在入门编程时,有一些很很差的习惯,最突出的就是命名。命名要遵循简洁明了的原则,令人一看就能明白这个变量或者函数是什么意思。在经历屡次练习以后 ,相信必定会有所改进的。

总结同类编程语言或项目在代码规范和风格的通常要求。

 

注释:程序中必须有清晰的注释;每一个函数(除main函数外)都要注释功能说明;代码中要有适当的注释说明代码的做用。

缩进:用空格和Tab都可,可是二者不要混用

标识符命名:标识符由字母(A-Z,a-z)、数字(0-9)、下划线“_”组成,而且首字符不能是数字,但能够是字母或者下划线,例如正确的标识符:abc,a1,prog_to;

                      不能把C语言关键字做为用户标识符,例如if ,for, while等

其余:左大括号“{”后和右大括号前“}”均不可出现代码;每行只能写一条代码;常数应定义为宏、枚举或常量;

相关文章
相关标签/搜索